From de23cde390b5c29455ed79ccb1666c1d5f7e2fe0 Mon Sep 17 00:00:00 2001 From: "dropbox-sdk-updater[bot]" <306210582+dropbox-sdk-updater[bot]@users.noreply.github.com> Date: Wed, 29 Jul 2026 15:04:18 +0000 Subject: [PATCH] Automated Spec Update f1b5fa6f96526401bfee0a90171bd5bd19678062 Co-authored-by: dropbox-spec-updater[bot] <306253022+dropbox-spec-updater[bot]@users.noreply.github.com> 0508ca45302aba8fc7b2968813ffebe38d2c21a2 Co-authored-by: Claude Opus 4.6 aa7bd7a402565927065bcd39dd489808eadd69ff d461e039e9ebfb374a726b28e289f87c58315830 Co-authored-by: Claude Opus 4.6 735a331613b476c6ed0670c8746075315eb6905e c6ab6b6b4feda087241fa377e5d14a84cd3c7092 Use AWS Secrets Manager + GitHub App installation tokens instead of a classic personal access token. Scoped to dropbox-sdk-python initially. 4a5fa1405ff0b7b5b388eedbbc02a72dd7956ff4 Group all GitHub Actions updates into one PR 7e5f66814d44d53f76b30049068bfb1ca27a0799 This updates the spec dispatch workflow to use `peter-evans/repository-dispatch@v4` instead of the older v1 action. The workflow still dispatches the same `spec_update` event to the existing downstream repositories, but now explicitly disables default `GITHUB_TOKEN` permissions because remote dispatches are authenticated with `SPEC_UPDATE_TOKEN`. This also sets `fail-fast: false` for the repository matrix so one failed downstream dispatch does not cancel the remaining dispatch attempts, and adds a small `client-payload` containing the source repository, ref, and commit SHA for downstream workflows that want to inspect where the spec update came from. 66971685d041dd6ea3acabdcfcf6dc77d09cfe40 Change Notes: common Namespace - Add InternalOnly annotation files Namespace - Update ThumbnailSize union to mark w3200h2400 as @common.InternalOnly - Update ThumbnailArg struct to mark quality as @common.InternalOnly - Update ThumbnailV2Arg struct to mark quality as @common.InternalOnly riviera Namespace - Add get_metadata_async, get_metadata_async/check routes - Add GetMetadataArgs, ApiExifGpsMetadata, ApiExifMetadata, ApiMediaStream, ApiMediaMetadata, ApiPdfMetadata, ApiOfficeMetadata, GetMetadataResult, GetMetadataAsyncError structs - Add OfficeFileType, MetadataType, MetadataExtractionApiV2Error, GetMetadataAsyncCheckResult unions - Update ContentApiV2Error union to include not_found_error, is_a_folder_error - Update MarkdownConversionApiV2Error union to include not_found_error, is_a_folder_error - Update Comments sharing Namespace - Update AddFileMemberArgs struct to mark fp_sealed_result as @common.InternalOnly - Update AddFolderMemberArg struct to mark fp_sealed_result as @common.InternalOnly team Namespace - Update TeamFolderCreateError union to include folder_count_limit_exceeded team_log Namespace - Add MediaHubFileDownloadedDetails, MediaHubProjectTeamAddDetails, MediaHubProjectTeamDeleteDetails, MediaHubProjectTeamRoleChangedDetails, MediaHubSharedLinkAudienceChangedDetails, MediaHubSharedLinkCreatedDetails, MediaHubSharedLinkDownloadSettingChangedDetails, MediaHubSharedLinkRevokedDetails, MediaHubAddingPeoplePolicyChangedDetails, MediaHubDownloadPolicyChangedDetails, MediaHubLinkSharingPolicyChangedDetails, MultiTeamIdentityPolicyChangedDetails, MediaHubFileDownloadedType, MediaHubProjectTeamAddType, MediaHubProjectTeamDeleteType, MediaHubProjectTeamRoleChangedType, MediaHubSharedLinkAudienceChangedType, MediaHubSharedLinkCreatedType, MediaHubSharedLinkDownloadSettingChangedType, MediaHubSharedLinkRevokedType, MediaHubAddingPeoplePolicyChangedType, MediaHubDownloadPolicyChangedType, MediaHubLinkSharingPolicyChangedType, MultiTeamIdentityPolicyChangedType structs - Add MediaHubAddingPeoplePolicy, MediaHubDownloadPolicy, MediaHubLinkSharingPolicy, MediaHubProjectRole, MediaHubSharedLinkAudience, MediaHubSharedLinkDownloadSetting, MediaHubSharedLinkTargetType, MultiTeamIdentityPolicy unions - Update EventDetails union to include the new Media Hub and multi-team identity detail variants b5f7dddcebcebbf009cdb0cb5e679909a041014e Change Notes: files Namespace: Update search:2 route to remove app auth Update search/continue:2 route to remove app auth Update FileMetadata struct to include is_restorable Update DeletedMetadata struct to include is_restorable Update ListFolderArg struct to include include_restorable_info Update ListRevisionsArg struct to include include_restorable_info sharing Namespace: Update get_shared_links route deprecation notice (retirement October 2026) team_log Namespace: Update TeamFolderSpaceCapsType union to include hard Update EventCategory union to include protect Add ProtectInternalDomainsChangedDetails struct Add ProtectInternalDomainsChangedType struct Update EventDetails union to include protect_internal_domains_changed_details Update EventType union to include protect_internal_domains_changed Update EventTypeArg union to include protect_internal_domains_changed Update Examples Remove rialto Namespace a4fc0169eda7dc981facd4208ebc7b66a4db00ee Change Notes: account Namespace: Add delete_profile_photo route Add DeleteProfilePhotoArg, DeleteProfilePhotoResult structs Add DeleteProfilePhotoError union riviera Namespace: Add get_markdown_async, get_markdown_async/check routes Add GetMarkdownArgs, GetMarkdownResult, GetMarkdownAsyncError structs Add MarkdownConversionApiV2Error, GetMarkdownAsyncCheckResult unions sharing Namespace: Add update_file_policy route Add UpdateFilePolicyArg struct Add UpdateFilePolicyError union files Namespace: Update Comments files, sharing, team, team_log Namespaces: Add @common.Deprecated field annotations 6c68656caafdff65a30943fe186a1800b9f35bbc Change Notes: account Namespace: - Add get_photo route - Add PhotoSourceArg, SetProfilePhotoArg, SetProfilePhotoError structs auth Namespace: - Add token/from_oauth1, token/revoke routes - Add AccessError, AuthError, InvalidAccountTypeError, RateLimitError structs/unions check Namespace: - Update app/check and user/check routes to return EchoError instead of Void common Namespace: - Add DropboxDuration struct file_properties Namespace: - Remove properties/remove, properties/template/get, properties/template/list routes - Update Comments file_requests Namespace: - Update Comments files Namespace: - Add upload_session/append_batch route - Remove properties/remove, properties/template/get, properties/template/list routes - Update Comments paper Namespace: - Add docs/get_metadata route - Update Comments riviera Namespace: - Add riviera Namespace - Add get_transcript_async, get_transcript_async/check routes sharing Namespace: - Add relinquish_access route - Add ShareFolderErrorV2, SharePathErrorV2, SharedLinkMetadataError unions - Update Comments team Namespace: - Add members/delete_former_member_files, team_folder/restore routes - Remove properties/template/list, properties/template/update routes - Update Comments team_log Namespace: - Add ~200 new event detail structs and unions - Update Comments team_policies Namespace: - Add DefaultLinkExpirationDaysPolicy, EnforceLinkPasswordPolicy, SharedLinkDefaultPermissionsPolicy, TopLevelContentPolicy unions users Namespace: - Update Comments users_common Namespace: - Update Comments Co-authored-by: Claude Opus 4.6 --- .../Shared/Generated/Account.swift | 368 + .../Shared/Generated/AccountId.swift | 10 + .../Shared/Generated/AccountRoutes.swift | 69 +- .../AppAuthReconnectionHelpers.swift | 9 + .../Shared/Generated/Async.swift | 2 +- .../SwiftyDropbox/Shared/Generated/Auth.swift | 114 + .../Shared/Generated/AuthAppAuthRoutes.swift | 8 +- .../SwiftyDropbox/Shared/Generated/Base.swift | 3 + .../Shared/Generated/BaseApp.swift | 3 + .../Shared/Generated/Check.swift | 57 +- .../Shared/Generated/CheckAppAuthRoutes.swift | 4 +- .../Shared/Generated/CheckRoutes.swift | 4 +- .../Shared/Generated/Common.swift | 66 +- .../Shared/Generated/Contacts.swift | 7 +- .../Shared/Generated/ContactsRoutes.swift | 6 +- .../Generated/DropboxAppBaseRequestBox.swift | 3 + .../Generated/DropboxBaseRequestBox.swift | 6 + .../Shared/Generated/FileProperties.swift | 36 +- .../Generated/FilePropertiesRoutes.swift | 83 +- .../Shared/Generated/FileRequests.swift | 91 +- .../Shared/Generated/FileRequestsRoutes.swift | 37 +- .../Shared/Generated/Files.swift | 976 +- .../Shared/Generated/FilesAppAuthRoutes.swift | 57 +- .../Shared/Generated/FilesRoutes.swift | 949 +- .../Shared/Generated/Paper.swift | 282 +- .../Shared/Generated/PaperRoutes.swift | 147 +- .../Generated/ReconnectionHelpers.swift | 18 + .../Shared/Generated/Riviera.swift | 2154 + .../Generated/RivieraAppAuthRoutes.swift | 159 + .../Shared/Generated/RivieraRoutes.swift | 159 + .../Shared/Generated/Sharing.swift | 1519 +- .../Generated/SharingAppAuthRoutes.swift | 57 +- .../Shared/Generated/SharingRoutes.swift | 421 +- .../SwiftyDropbox/Shared/Generated/Team.swift | 1741 +- .../Shared/Generated/TeamLog.swift | 87057 +++++++++------- .../Shared/Generated/TeamLogRoutes.swift | 6 +- .../Shared/Generated/TeamPolicies.swift | 386 +- .../Shared/Generated/TeamRoutes.swift | 634 +- .../Shared/Generated/Users.swift | 171 +- .../Shared/Generated/UsersRoutes.swift | 14 +- .../Shared/Generated/DBXAccount.swift | 279 + .../Shared/Generated/DBXAccountId.swift | 11 + .../Shared/Generated/DBXAccountRoutes.swift | 284 +- .../Shared/Generated/DBXAsync.swift | 2 +- .../Shared/Generated/DBXAuth.swift | 119 + .../Generated/DBXAuthAppAuthRoutes.swift | 2 +- .../Shared/Generated/DBXBase.swift | 4 + .../Shared/Generated/DBXBaseApp.swift | 4 + .../Shared/Generated/DBXCheck.swift | 52 + .../Generated/DBXCheckAppAuthRoutes.swift | 27 +- .../Shared/Generated/DBXCheckRoutes.swift | 27 +- .../Shared/Generated/DBXCommon.swift | 41 +- .../DBXDropboxAppBaseRequestBox.swift | 3 + .../Generated/DBXDropboxBaseRequestBox.swift | 6 + .../Shared/Generated/DBXFileProperties.swift | 15 +- .../Generated/DBXFilePropertiesRoutes.swift | 51 +- .../Shared/Generated/DBXFileRequests.swift | 128 +- .../Generated/DBXFileRequestsRoutes.swift | 37 +- .../Shared/Generated/DBXFiles.swift | 994 +- .../Generated/DBXFilesAppAuthRoutes.swift | 80 +- .../Shared/Generated/DBXFilesRoutes.swift | 1310 +- .../Shared/Generated/DBXOpenidRoutes.swift | 2 +- .../Shared/Generated/DBXPaper.swift | 200 +- .../Shared/Generated/DBXPaperRoutes.swift | 126 +- .../Shared/Generated/DBXRiviera.swift | 2078 + .../Generated/DBXRivieraAppAuthRoutes.swift | 201 + .../Shared/Generated/DBXRivieraRoutes.swift | 570 + .../Shared/Generated/DBXSharing.swift | 2050 +- .../Generated/DBXSharingAppAuthRoutes.swift | 70 +- .../Shared/Generated/DBXSharingRoutes.swift | 479 +- .../Shared/Generated/DBXTeam.swift | 2035 +- .../Shared/Generated/DBXTeamLog.swift | 48631 ++++++--- .../Shared/Generated/DBXTeamLogRoutes.swift | 4 +- .../Shared/Generated/DBXTeamPolicies.swift | 482 +- .../Shared/Generated/DBXTeamRoutes.swift | 769 +- .../Shared/Generated/DBXUsers.swift | 214 +- .../Shared/Generated/DBXUsersRoutes.swift | 12 +- spec | 2 +- stone | 2 +- swiftformat_linux.zip | Bin 0 -> 24172705 bytes 80 files changed, 102893 insertions(+), 56403 deletions(-) create mode 100644 Source/SwiftyDropbox/Shared/Generated/AccountId.swift create mode 100644 Source/SwiftyDropbox/Shared/Generated/Riviera.swift create mode 100644 Source/SwiftyDropbox/Shared/Generated/RivieraAppAuthRoutes.swift create mode 100644 Source/SwiftyDropbox/Shared/Generated/RivieraRoutes.swift create mode 100644 Source/SwiftyDropboxObjC/Shared/Generated/DBXAccountId.swift create mode 100644 Source/SwiftyDropboxObjC/Shared/Generated/DBXRiviera.swift create mode 100644 Source/SwiftyDropboxObjC/Shared/Generated/DBXRivieraAppAuthRoutes.swift create mode 100644 Source/SwiftyDropboxObjC/Shared/Generated/DBXRivieraRoutes.swift create mode 100644 swiftformat_linux.zip diff --git a/Source/SwiftyDropbox/Shared/Generated/Account.swift b/Source/SwiftyDropbox/Shared/Generated/Account.swift index ef80d2f5..c26b3770 100644 --- a/Source/SwiftyDropbox/Shared/Generated/Account.swift +++ b/Source/SwiftyDropbox/Shared/Generated/Account.swift @@ -8,6 +8,285 @@ import Foundation /// Datatypes and serializers for the account namespace public class Account { + /// The AccountPhotoGetArg struct + public class AccountPhotoGetArg: CustomStringConvertible, JSONRepresentable { + /// Encoded ID of the user. Must start either with 'dbid:' or 'dbaphid:'. + public let dbxAccountId: String + /// A string representing the size of the photo. + public let size: String + /// True if the photo should be cropped and false otherwise. + public let circleCrop: Bool + /// True if we expect account photo to exist. + public let expectAccountPhoto: Bool + public init(dbxAccountId: String, size: String, circleCrop: Bool, expectAccountPhoto: Bool) { + stringValidator()(dbxAccountId) + self.dbxAccountId = dbxAccountId + stringValidator()(size) + self.size = size + self.circleCrop = circleCrop + self.expectAccountPhoto = expectAccountPhoto + } + + func json() throws -> JSON { + try AccountPhotoGetArgSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try AccountPhotoGetArgSerializer().serialize(self)))" + } catch { + return "Failed to generate description for AccountPhotoGetArg: \(error)" + } + } + } + + public class AccountPhotoGetArgSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: AccountPhotoGetArg) throws -> JSON { + let output = [ + "dbx_account_id": try Serialization._StringSerializer.serialize(value.dbxAccountId), + "size": try Serialization._StringSerializer.serialize(value.size), + "circle_crop": try Serialization._BoolSerializer.serialize(value.circleCrop), + "expect_account_photo": try Serialization._BoolSerializer.serialize(value.expectAccountPhoto), + ] + return .dictionary(output) + } + + public func deserialize(_ json: JSON) throws -> AccountPhotoGetArg { + switch json { + case .dictionary(let dict): + let dbxAccountId = try Serialization._StringSerializer.deserialize(dict["dbx_account_id"] ?? .null) + let size = try Serialization._StringSerializer.deserialize(dict["size"] ?? .null) + let circleCrop = try Serialization._BoolSerializer.deserialize(dict["circle_crop"] ?? .null) + let expectAccountPhoto = try Serialization._BoolSerializer.deserialize(dict["expect_account_photo"] ?? .null) + return AccountPhotoGetArg(dbxAccountId: dbxAccountId, size: size, circleCrop: circleCrop, expectAccountPhoto: expectAccountPhoto) + default: + throw JSONSerializerError.deserializeError(type: AccountPhotoGetArg.self, json: json) + } + } + } + + /// The AccountPhotoGetError union + public enum AccountPhotoGetError: CustomStringConvertible, JSONRepresentable { + /// Indicates infrastructural failure. + case thumbnailError(Account.ThumbnailError) + /// Account photo is missing (but we did not expect it to exist). + case accountPhotoMissing + /// Account photo was expected to exist, but it's missing. + case expectedAccountPhotoMissing + /// An unspecified error. + case other + + func json() throws -> JSON { + try AccountPhotoGetErrorSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try AccountPhotoGetErrorSerializer().serialize(self)))" + } catch { + return "Failed to generate description for AccountPhotoGetError: \(error)" + } + } + } + + public class AccountPhotoGetErrorSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: AccountPhotoGetError) throws -> JSON { + switch value { + case .thumbnailError(let arg): + var d = try ["thumbnail_error": Account.ThumbnailErrorSerializer().serialize(arg)] + d[".tag"] = .str("thumbnail_error") + return .dictionary(d) + case .accountPhotoMissing: + var d = [String: JSON]() + d[".tag"] = .str("account_photo_missing") + return .dictionary(d) + case .expectedAccountPhotoMissing: + var d = [String: JSON]() + d[".tag"] = .str("expected_account_photo_missing") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + + public func deserialize(_ json: JSON) throws -> AccountPhotoGetError { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "thumbnail_error": + let v = try Account.ThumbnailErrorSerializer().deserialize(d["thumbnail_error"] ?? .null) + return AccountPhotoGetError.thumbnailError(v) + case "account_photo_missing": + return AccountPhotoGetError.accountPhotoMissing + case "expected_account_photo_missing": + return AccountPhotoGetError.expectedAccountPhotoMissing + case "other": + return AccountPhotoGetError.other + default: + return AccountPhotoGetError.other + } + default: + throw JSONSerializerError.deserializeError(type: AccountPhotoGetError.self, json: json) + } + } + } + + /// The AccountPhotoGetResult struct + public class AccountPhotoGetResult: CustomStringConvertible, JSONRepresentable { + /// The data returned by get_photo. + public let contentType: String + public init(contentType: String) { + stringValidator()(contentType) + self.contentType = contentType + } + + func json() throws -> JSON { + try AccountPhotoGetResultSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try AccountPhotoGetResultSerializer().serialize(self)))" + } catch { + return "Failed to generate description for AccountPhotoGetResult: \(error)" + } + } + } + + public class AccountPhotoGetResultSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: AccountPhotoGetResult) throws -> JSON { + let output = [ + "content_type": try Serialization._StringSerializer.serialize(value.contentType), + ] + return .dictionary(output) + } + + public func deserialize(_ json: JSON) throws -> AccountPhotoGetResult { + switch json { + case .dictionary(let dict): + let contentType = try Serialization._StringSerializer.deserialize(dict["content_type"] ?? .null) + return AccountPhotoGetResult(contentType: contentType) + default: + throw JSONSerializerError.deserializeError(type: AccountPhotoGetResult.self, json: json) + } + } + } + + /// This struct is empty. The comment here is intentionally emitted to avoid indentation issues with Stone. + public class DeleteProfilePhotoArg: CustomStringConvertible, JSONRepresentable { + func json() throws -> JSON { + try DeleteProfilePhotoArgSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try DeleteProfilePhotoArgSerializer().serialize(self)))" + } catch { + return "Failed to generate description for DeleteProfilePhotoArg: \(error)" + } + } + } + + public class DeleteProfilePhotoArgSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: DeleteProfilePhotoArg) throws -> JSON { + let output = [String: JSON]() + return .dictionary(output) + } + + public func deserialize(_ json: JSON) throws -> DeleteProfilePhotoArg { + switch json { + case .dictionary: + return DeleteProfilePhotoArg() + default: + throw JSONSerializerError.deserializeError(type: DeleteProfilePhotoArg.self, json: json) + } + } + } + + /// This union is empty. The comment here is intentionally emitted to avoid indentation issues with Stone. + public enum DeleteProfilePhotoError: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case other + + func json() throws -> JSON { + try DeleteProfilePhotoErrorSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try DeleteProfilePhotoErrorSerializer().serialize(self)))" + } catch { + return "Failed to generate description for DeleteProfilePhotoError: \(error)" + } + } + } + + public class DeleteProfilePhotoErrorSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: DeleteProfilePhotoError) throws -> JSON { + switch value { + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + + public func deserialize(_ json: JSON) throws -> DeleteProfilePhotoError { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "other": + return DeleteProfilePhotoError.other + default: + return DeleteProfilePhotoError.other + } + default: + throw JSONSerializerError.deserializeError(type: DeleteProfilePhotoError.self, json: json) + } + } + } + + /// This struct is empty. The comment here is intentionally emitted to avoid indentation issues with Stone. + public class DeleteProfilePhotoResult: CustomStringConvertible, JSONRepresentable { + func json() throws -> JSON { + try DeleteProfilePhotoResultSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try DeleteProfilePhotoResultSerializer().serialize(self)))" + } catch { + return "Failed to generate description for DeleteProfilePhotoResult: \(error)" + } + } + } + + public class DeleteProfilePhotoResultSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: DeleteProfilePhotoResult) throws -> JSON { + let output = [String: JSON]() + return .dictionary(output) + } + + public func deserialize(_ json: JSON) throws -> DeleteProfilePhotoResult { + switch json { + case .dictionary: + return DeleteProfilePhotoResult() + default: + throw JSONSerializerError.deserializeError(type: DeleteProfilePhotoResult.self, json: json) + } + } + } + /// The PhotoSourceArg union public enum PhotoSourceArg: CustomStringConvertible, JSONRepresentable { /// Image data in base64-encoded bytes. @@ -230,8 +509,97 @@ public class Account { } } + /// The ThumbnailError union + public enum ThumbnailError: CustomStringConvertible, JSONRepresentable { + /// Indicates permanent infrastructural failure. + case permanentFailure + /// Indicates temporary infrastructural failure. + case temporaryFailure + /// An unspecified error. + case other + + func json() throws -> JSON { + try ThumbnailErrorSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try ThumbnailErrorSerializer().serialize(self)))" + } catch { + return "Failed to generate description for ThumbnailError: \(error)" + } + } + } + + public class ThumbnailErrorSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: ThumbnailError) throws -> JSON { + switch value { + case .permanentFailure: + var d = [String: JSON]() + d[".tag"] = .str("permanent_failure") + return .dictionary(d) + case .temporaryFailure: + var d = [String: JSON]() + d[".tag"] = .str("temporary_failure") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + + public func deserialize(_ json: JSON) throws -> ThumbnailError { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "permanent_failure": + return ThumbnailError.permanentFailure + case "temporary_failure": + return ThumbnailError.temporaryFailure + case "other": + return ThumbnailError.other + default: + return ThumbnailError.other + } + default: + throw JSONSerializerError.deserializeError(type: ThumbnailError.self, json: json) + } + } + } + /// Stone Route Objects + static let deleteProfilePhoto = Route( + name: "delete_profile_photo", + version: 1, + namespace: "account", + deprecated: false, + argSerializer: Account.DeleteProfilePhotoArgSerializer(), + responseSerializer: Account.DeleteProfilePhotoResultSerializer(), + errorSerializer: Account.DeleteProfilePhotoErrorSerializer(), + attributes: RouteAttributes( + auth: [.user], + host: .api, + style: .rpc + ) + ) + static let getPhoto = Route( + name: "get_photo", + version: 1, + namespace: "account", + deprecated: false, + argSerializer: Account.AccountPhotoGetArgSerializer(), + responseSerializer: Account.AccountPhotoGetResultSerializer(), + errorSerializer: Account.AccountPhotoGetErrorSerializer(), + attributes: RouteAttributes( + auth: [.user], + host: .content, + style: .download + ) + ) static let setProfilePhoto = Route( name: "set_profile_photo", version: 1, diff --git a/Source/SwiftyDropbox/Shared/Generated/AccountId.swift b/Source/SwiftyDropbox/Shared/Generated/AccountId.swift new file mode 100644 index 00000000..25dfcda9 --- /dev/null +++ b/Source/SwiftyDropbox/Shared/Generated/AccountId.swift @@ -0,0 +1,10 @@ +/// +/// Copyright (c) 2016 Dropbox, Inc. All rights reserved. +/// +/// Auto-generated by Stone, do not modify. +/// + +import Foundation + +/// Datatypes and serializers for the account_id namespace +public class AccountId {} diff --git a/Source/SwiftyDropbox/Shared/Generated/AccountRoutes.swift b/Source/SwiftyDropbox/Shared/Generated/AccountRoutes.swift index 65e65283..c1f22a24 100644 --- a/Source/SwiftyDropbox/Shared/Generated/AccountRoutes.swift +++ b/Source/SwiftyDropbox/Shared/Generated/AccountRoutes.swift @@ -14,6 +14,67 @@ public class AccountRoutes: DropboxTransportClientOwning { self.client = client } + /// Deletes the current user's profile photo. + /// + /// - scope: account_info.write + /// + /// + /// - returns: Through the response callback, the caller will receive a `Account.DeleteProfilePhotoResult` object on + /// success or a `Account.DeleteProfilePhotoError` object on failure. + @discardableResult public func deleteProfilePhoto() -> RpcRequest { + let route = Account.deleteProfilePhoto + let serverArgs = Account.DeleteProfilePhotoArg() + return client.request(route, serverArgs: serverArgs) + } + + /// This lovely endpoint gets the account photo of a given user. + /// + /// - scope: account_info.read + /// + /// - parameter dbxAccountId: Encoded ID of the user. Must start either with 'dbid:' or 'dbaphid:'. + /// - parameter size: A string representing the size of the photo. + /// - parameter circleCrop: True if the photo should be cropped and false otherwise. + /// - parameter expectAccountPhoto: True if we expect account photo to exist. + /// - parameter overwrite: A boolean to set behavior in the event of a naming conflict. `True` will overwrite + /// conflicting file at destination. `False` will take no action (but if left unhandled in destination closure, + /// an NSError will be thrown). + /// - parameter destination: The location to write the download to. + /// + /// - returns: Through the response callback, the caller will receive a `Account.AccountPhotoGetResult` object on + /// success or a `Account.AccountPhotoGetError` object on failure. + @discardableResult public func getPhoto( + dbxAccountId: String, + size: String, + circleCrop: Bool, + expectAccountPhoto: Bool, + overwrite: Bool = false, + destination: URL + ) -> DownloadRequestFile { + let route = Account.getPhoto + let serverArgs = Account.AccountPhotoGetArg(dbxAccountId: dbxAccountId, size: size, circleCrop: circleCrop, expectAccountPhoto: expectAccountPhoto) + return client.request(route, serverArgs: serverArgs, overwrite: overwrite, destination: destination) + } + + /// This lovely endpoint gets the account photo of a given user. + /// + /// - scope: account_info.read + /// + /// - parameter dbxAccountId: Encoded ID of the user. Must start either with 'dbid:' or 'dbaphid:'. + /// - parameter size: A string representing the size of the photo. + /// - parameter circleCrop: True if the photo should be cropped and false otherwise. + /// - parameter expectAccountPhoto: True if we expect account photo to exist. + /// + /// - returns: Through the response callback, the caller will receive a `Account.AccountPhotoGetResult` object on + /// success or a `Account.AccountPhotoGetError` object on failure. + @discardableResult public func getPhoto(dbxAccountId: String, size: String, circleCrop: Bool, expectAccountPhoto: Bool) -> DownloadRequestMemory< + Account.AccountPhotoGetResultSerializer, + Account.AccountPhotoGetErrorSerializer + > { + let route = Account.getPhoto + let serverArgs = Account.AccountPhotoGetArg(dbxAccountId: dbxAccountId, size: size, circleCrop: circleCrop, expectAccountPhoto: expectAccountPhoto) + return client.request(route, serverArgs: serverArgs) + } + /// Sets a user's profile photo. /// /// - scope: account_info.write @@ -22,10 +83,10 @@ public class AccountRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Account.SetProfilePhotoResult` object on /// success or a `Account.SetProfilePhotoError` object on failure. - @discardableResult public func setProfilePhoto( - photo: Account - .PhotoSourceArg - ) -> RpcRequest { + @discardableResult public func setProfilePhoto(photo: Account.PhotoSourceArg) -> RpcRequest< + Account.SetProfilePhotoResultSerializer, + Account.SetProfilePhotoErrorSerializer + > { let route = Account.setProfilePhoto let serverArgs = Account.SetProfilePhotoArg(photo: photo) return client.request(route, serverArgs: serverArgs) diff --git a/Source/SwiftyDropbox/Shared/Generated/AppAuthReconnectionHelpers.swift b/Source/SwiftyDropbox/Shared/Generated/AppAuthReconnectionHelpers.swift index 05048a21..d1b5b435 100644 --- a/Source/SwiftyDropbox/Shared/Generated/AppAuthReconnectionHelpers.swift +++ b/Source/SwiftyDropbox/Shared/Generated/AppAuthReconnectionHelpers.swift @@ -21,6 +21,15 @@ enum AppAuthReconnectionHelpers: ReconnectionHelpersShared { client: client ) ) + case "sharing/get_shared_link_file": + return .sharing_getSharedLinkFile( + rebuildRequest( + apiRequest: apiRequest, + info: info, + route: Sharing.getSharedLinkFile, + client: client + ) + ) default: throw ReconnectionErrorKind.missingReconnectionCase } diff --git a/Source/SwiftyDropbox/Shared/Generated/Async.swift b/Source/SwiftyDropbox/Shared/Generated/Async.swift index 104a5a87..6900f853 100644 --- a/Source/SwiftyDropbox/Shared/Generated/Async.swift +++ b/Source/SwiftyDropbox/Shared/Generated/Async.swift @@ -157,7 +157,7 @@ public class Async { /// Result returned by methods that poll for the status of an asynchronous job. Unions that extend this union should /// add a 'complete' field with a type of the information returned upon job completion. See PollEmptyResult for - /// an example. + /// an example public enum PollResultBase: CustomStringConvertible, JSONRepresentable { /// The asynchronous job is still in progress. case inProgress diff --git a/Source/SwiftyDropbox/Shared/Generated/Auth.swift b/Source/SwiftyDropbox/Shared/Generated/Auth.swift index 0a368008..d9a48af8 100644 --- a/Source/SwiftyDropbox/Shared/Generated/Auth.swift +++ b/Source/SwiftyDropbox/Shared/Generated/Auth.swift @@ -14,6 +14,10 @@ public class Auth { case invalidAccountType(Auth.InvalidAccountTypeError) /// Current account cannot access Paper. case paperAccessDenied(Auth.PaperAccessError) + /// Team doesn't have permission to access. + case teamAccessDenied + /// Caller does not have permission to access the resource. + case noPermission(Auth.NoPermissionError) /// An unspecified error. case other @@ -42,6 +46,14 @@ public class Auth { var d = try ["paper_access_denied": Auth.PaperAccessErrorSerializer().serialize(arg)] d[".tag"] = .str("paper_access_denied") return .dictionary(d) + case .teamAccessDenied: + var d = [String: JSON]() + d[".tag"] = .str("team_access_denied") + return .dictionary(d) + case .noPermission(let arg): + var d = try ["no_permission": Auth.NoPermissionErrorSerializer().serialize(arg)] + d[".tag"] = .str("no_permission") + return .dictionary(d) case .other: var d = [String: JSON]() d[".tag"] = .str("other") @@ -60,6 +72,11 @@ public class Auth { case "paper_access_denied": let v = try Auth.PaperAccessErrorSerializer().deserialize(d["paper_access_denied"] ?? .null) return AccessError.paperAccessDenied(v) + case "team_access_denied": + return AccessError.teamAccessDenied + case "no_permission": + let v = try Auth.NoPermissionErrorSerializer().deserialize(d["no_permission"] ?? .null) + return AccessError.noPermission(v) case "other": return AccessError.other default: @@ -234,6 +251,61 @@ public class Auth { } } + /// The NoPermissionError union + public enum NoPermissionError: CustomStringConvertible, JSONRepresentable { + /// Current caller does not have permission to access the account information for one or more of the specified + /// account IDs. + case unauthorizedAccountIdUsage(Auth.UnauthorizedAccountIdUsageError) + /// An unspecified error. + case other + + func json() throws -> JSON { + try NoPermissionErrorSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try NoPermissionErrorSerializer().serialize(self)))" + } catch { + return "Failed to generate description for NoPermissionError: \(error)" + } + } + } + + public class NoPermissionErrorSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: NoPermissionError) throws -> JSON { + switch value { + case .unauthorizedAccountIdUsage(let arg): + var d = try Serialization.getFields(Auth.UnauthorizedAccountIdUsageErrorSerializer().serialize(arg)) + d[".tag"] = .str("unauthorized_account_id_usage") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + + public func deserialize(_ json: JSON) throws -> NoPermissionError { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "unauthorized_account_id_usage": + let v = try Auth.UnauthorizedAccountIdUsageErrorSerializer().deserialize(json) + return NoPermissionError.unauthorizedAccountIdUsage(v) + case "other": + return NoPermissionError.other + default: + return NoPermissionError.other + } + default: + throw JSONSerializerError.deserializeError(type: NoPermissionError.self, json: json) + } + } + } + /// The PaperAccessError union public enum PaperAccessError: CustomStringConvertible, JSONRepresentable { /// Paper is disabled. @@ -596,6 +668,48 @@ public class Auth { } } + /// The UnauthorizedAccountIdUsageError struct + public class UnauthorizedAccountIdUsageError: CustomStringConvertible, JSONRepresentable { + /// The account IDs that the caller does not have permission to use. + public let unauthorizedAccountIds: [String] + public init(unauthorizedAccountIds: [String]) { + arrayValidator(itemValidator: stringValidator())(unauthorizedAccountIds) + self.unauthorizedAccountIds = unauthorizedAccountIds + } + + func json() throws -> JSON { + try UnauthorizedAccountIdUsageErrorSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try UnauthorizedAccountIdUsageErrorSerializer().serialize(self)))" + } catch { + return "Failed to generate description for UnauthorizedAccountIdUsageError: \(error)" + } + } + } + + public class UnauthorizedAccountIdUsageErrorSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: UnauthorizedAccountIdUsageError) throws -> JSON { + let output = [ + "unauthorized_account_ids": try ArraySerializer(Serialization._StringSerializer).serialize(value.unauthorizedAccountIds), + ] + return .dictionary(output) + } + + public func deserialize(_ json: JSON) throws -> UnauthorizedAccountIdUsageError { + switch json { + case .dictionary(let dict): + let unauthorizedAccountIds = try ArraySerializer(Serialization._StringSerializer).deserialize(dict["unauthorized_account_ids"] ?? .null) + return UnauthorizedAccountIdUsageError(unauthorizedAccountIds: unauthorizedAccountIds) + default: + throw JSONSerializerError.deserializeError(type: UnauthorizedAccountIdUsageError.self, json: json) + } + } + } + /// Stone Route Objects static let tokenFromOauth1 = Route( diff --git a/Source/SwiftyDropbox/Shared/Generated/AuthAppAuthRoutes.swift b/Source/SwiftyDropbox/Shared/Generated/AuthAppAuthRoutes.swift index 31cbe8f1..383baa69 100644 --- a/Source/SwiftyDropbox/Shared/Generated/AuthAppAuthRoutes.swift +++ b/Source/SwiftyDropbox/Shared/Generated/AuthAppAuthRoutes.swift @@ -22,10 +22,10 @@ public class AuthAppAuthRoutes: DropboxTransportClientOwning { /// - returns: Through the response callback, the caller will receive a `Auth.TokenFromOAuth1Result` object on /// success or a `Auth.TokenFromOAuth1Error` object on failure. @available(*, unavailable, message: "tokenFromOauth1 is deprecated.") - @discardableResult public func tokenFromOauth1( - oauth1Token: String, - oauth1TokenSecret: String - ) -> RpcRequest { + @discardableResult public func tokenFromOauth1(oauth1Token: String, oauth1TokenSecret: String) -> RpcRequest< + Auth.TokenFromOAuth1ResultSerializer, + Auth.TokenFromOAuth1ErrorSerializer + > { let route = Auth.tokenFromOauth1 let serverArgs = Auth.TokenFromOAuth1Arg(oauth1Token: oauth1Token, oauth1TokenSecret: oauth1TokenSecret) return client.request(route, serverArgs: serverArgs) diff --git a/Source/SwiftyDropbox/Shared/Generated/Base.swift b/Source/SwiftyDropbox/Shared/Generated/Base.swift index 4fe26b57..abac1089 100644 --- a/Source/SwiftyDropbox/Shared/Generated/Base.swift +++ b/Source/SwiftyDropbox/Shared/Generated/Base.swift @@ -27,6 +27,8 @@ public class DropboxBase: DropboxTransportClientOwning { public var openid: OpenidRoutes! /// Routes within the paper namespace. See PaperRoutes for details. public var paper: PaperRoutes! + /// Routes within the riviera namespace. See RivieraRoutes for details. + public var riviera: RivieraRoutes! /// Routes within the sharing namespace. See SharingRoutes for details. public var sharing: SharingRoutes! /// Routes within the teamLog namespace. See TeamLogRoutes for details. @@ -46,6 +48,7 @@ public class DropboxBase: DropboxTransportClientOwning { self.files = FilesRoutes(client: client) self.openid = OpenidRoutes(client: client) self.paper = PaperRoutes(client: client) + self.riviera = RivieraRoutes(client: client) self.sharing = SharingRoutes(client: client) self.teamLog = TeamLogRoutes(client: client) self.users = UsersRoutes(client: client) diff --git a/Source/SwiftyDropbox/Shared/Generated/BaseApp.swift b/Source/SwiftyDropbox/Shared/Generated/BaseApp.swift index 3172d341..b02efbae 100644 --- a/Source/SwiftyDropbox/Shared/Generated/BaseApp.swift +++ b/Source/SwiftyDropbox/Shared/Generated/BaseApp.swift @@ -15,6 +15,8 @@ public class DropboxAppBase: DropboxTransportClientOwning { public var check: CheckAppAuthRoutes! /// Routes within the files namespace. See FilesAppAuthRoutes for details. public var files: FilesAppAuthRoutes! + /// Routes within the riviera namespace. See RivieraAppAuthRoutes for details. + public var riviera: RivieraAppAuthRoutes! /// Routes within the sharing namespace. See SharingAppAuthRoutes for details. public var sharing: SharingAppAuthRoutes! @@ -24,6 +26,7 @@ public class DropboxAppBase: DropboxTransportClientOwning { self.auth = AuthAppAuthRoutes(client: client) self.check = CheckAppAuthRoutes(client: client) self.files = FilesAppAuthRoutes(client: client) + self.riviera = RivieraAppAuthRoutes(client: client) self.sharing = SharingAppAuthRoutes(client: client) } } diff --git a/Source/SwiftyDropbox/Shared/Generated/Check.swift b/Source/SwiftyDropbox/Shared/Generated/Check.swift index 675395f1..91420e26 100644 --- a/Source/SwiftyDropbox/Shared/Generated/Check.swift +++ b/Source/SwiftyDropbox/Shared/Generated/Check.swift @@ -50,6 +50,59 @@ public class Check { } } + /// EchoError contains the error returned from the Dropbox servers. + public enum EchoError: CustomStringConvertible, JSONRepresentable { + /// The request was successful. + case userRequested + /// An unspecified error. + case other + + func json() throws -> JSON { + try EchoErrorSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try EchoErrorSerializer().serialize(self)))" + } catch { + return "Failed to generate description for EchoError: \(error)" + } + } + } + + public class EchoErrorSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: EchoError) throws -> JSON { + switch value { + case .userRequested: + var d = [String: JSON]() + d[".tag"] = .str("user_requested") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + + public func deserialize(_ json: JSON) throws -> EchoError { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "user_requested": + return EchoError.userRequested + case "other": + return EchoError.other + default: + return EchoError.other + } + default: + throw JSONSerializerError.deserializeError(type: EchoError.self, json: json) + } + } + } + /// EchoResult contains the result returned from the Dropbox servers. public class EchoResult: CustomStringConvertible, JSONRepresentable { /// If everything worked correctly, this would be the same as query. @@ -101,7 +154,7 @@ public class Check { deprecated: false, argSerializer: Check.EchoArgSerializer(), responseSerializer: Check.EchoResultSerializer(), - errorSerializer: Serialization._VoidSerializer, + errorSerializer: Check.EchoErrorSerializer(), attributes: RouteAttributes( auth: [.app], host: .api, @@ -115,7 +168,7 @@ public class Check { deprecated: false, argSerializer: Check.EchoArgSerializer(), responseSerializer: Check.EchoResultSerializer(), - errorSerializer: Serialization._VoidSerializer, + errorSerializer: Check.EchoErrorSerializer(), attributes: RouteAttributes( auth: [.user], host: .api, diff --git a/Source/SwiftyDropbox/Shared/Generated/CheckAppAuthRoutes.swift b/Source/SwiftyDropbox/Shared/Generated/CheckAppAuthRoutes.swift index 34120906..55fc0054 100644 --- a/Source/SwiftyDropbox/Shared/Generated/CheckAppAuthRoutes.swift +++ b/Source/SwiftyDropbox/Shared/Generated/CheckAppAuthRoutes.swift @@ -22,8 +22,8 @@ public class CheckAppAuthRoutes: DropboxTransportClientOwning { /// - parameter query: The string that you'd like to be echoed back to you. /// /// - returns: Through the response callback, the caller will receive a `Check.EchoResult` object on success or a - /// `Void` object on failure. - @discardableResult public func app(query: String = "") -> RpcRequest { + /// `Check.EchoError` object on failure. + @discardableResult public func app(query: String = "") -> RpcRequest { let route = Check.app let serverArgs = Check.EchoArg(query: query) return client.request(route, serverArgs: serverArgs) diff --git a/Source/SwiftyDropbox/Shared/Generated/CheckRoutes.swift b/Source/SwiftyDropbox/Shared/Generated/CheckRoutes.swift index b87f4641..dea5b00a 100644 --- a/Source/SwiftyDropbox/Shared/Generated/CheckRoutes.swift +++ b/Source/SwiftyDropbox/Shared/Generated/CheckRoutes.swift @@ -24,8 +24,8 @@ public class CheckRoutes: DropboxTransportClientOwning { /// - parameter query: The string that you'd like to be echoed back to you. /// /// - returns: Through the response callback, the caller will receive a `Check.EchoResult` object on success or a - /// `Void` object on failure. - @discardableResult public func user(query: String = "") -> RpcRequest { + /// `Check.EchoError` object on failure. + @discardableResult public func user(query: String = "") -> RpcRequest { let route = Check.user let serverArgs = Check.EchoArg(query: query) return client.request(route, serverArgs: serverArgs) diff --git a/Source/SwiftyDropbox/Shared/Generated/Common.swift b/Source/SwiftyDropbox/Shared/Generated/Common.swift index acf05742..ad5d2683 100644 --- a/Source/SwiftyDropbox/Shared/Generated/Common.swift +++ b/Source/SwiftyDropbox/Shared/Generated/Common.swift @@ -8,6 +8,54 @@ import Foundation /// Datatypes and serializers for the common namespace public class Common { + /// The DropboxDuration struct + public class DropboxDuration: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let seconds: Int64 + /// (no description) + public let nanos: Int32 + public init(seconds: Int64, nanos: Int32) { + comparableValidator()(seconds) + self.seconds = seconds + comparableValidator()(nanos) + self.nanos = nanos + } + + func json() throws -> JSON { + try DropboxDurationSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try DropboxDurationSerializer().serialize(self)))" + } catch { + return "Failed to generate description for DropboxDuration: \(error)" + } + } + } + + public class DropboxDurationSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: DropboxDuration) throws -> JSON { + let output = [ + "seconds": try Serialization._Int64Serializer.serialize(value.seconds), + "nanos": try Serialization._Int32Serializer.serialize(value.nanos), + ] + return .dictionary(output) + } + + public func deserialize(_ json: JSON) throws -> DropboxDuration { + switch json { + case .dictionary(let dict): + let seconds = try Serialization._Int64Serializer.deserialize(dict["seconds"] ?? .null) + let nanos = try Serialization._Int32Serializer.deserialize(dict["nanos"] ?? .null) + return DropboxDuration(seconds: seconds, nanos: nanos) + default: + throw JSONSerializerError.deserializeError(type: DropboxDuration.self, json: json) + } + } + } + /// The PathRoot union public enum PathRoot: CustomStringConvertible, JSONRepresentable { /// Paths are relative to the authenticating user's home namespace, whether or not that user belongs to a team. @@ -86,7 +134,7 @@ public class Common { /// The root namespace id in Dropbox-API-Path-Root header is not valid. The value of this error is the user's /// latest root info. case invalidRoot(Common.RootInfo) - /// You don't have permission to access the namespace id in Dropbox-API-Path-Root header. + /// You don't have permission to access the namespace id in Dropbox-API-Path-Root header. case noPermission /// An unspecified error. case other @@ -147,8 +195,8 @@ public class Common { /// Information about current user's root. public class RootInfo: CustomStringConvertible, JSONRepresentable { /// The namespace ID for user's root namespace. It will be the namespace ID of the shared team root if the user - /// is member of a team with a separate team root. Otherwise it will be same as homeNamespaceId in - /// RootInfo. + /// is member of a team with a separate team root, or the user root if user is member of a team with + /// separate distinct roots for users. Otherwise it will be the same as homeNamespaceId in RootInfo. public let rootNamespaceId: String /// The namespace ID for user's home namespace. public let homeNamespaceId: String @@ -262,6 +310,14 @@ public class Common { /// Root info when user is not member of a team or the user is a member of a team and the team does not have a /// separate root namespace. public class UserRootInfo: Common.RootInfo { + /// The path for user's home directory under the distinct user root. + public let homePath: String? + public init(rootNamespaceId: String, homeNamespaceId: String, homePath: String? = nil) { + nullableValidator(stringValidator())(homePath) + self.homePath = homePath + super.init(rootNamespaceId: rootNamespaceId, homeNamespaceId: homeNamespaceId) + } + public override var description: String { do { return "\(SerializeUtil.prepareJSONForSerialization(try UserRootInfoSerializer().serialize(self)))" @@ -277,6 +333,7 @@ public class Common { let output = [ "root_namespace_id": try Serialization._StringSerializer.serialize(value.rootNamespaceId), "home_namespace_id": try Serialization._StringSerializer.serialize(value.homeNamespaceId), + "home_path": try NullableSerializer(Serialization._StringSerializer).serialize(value.homePath), ] return .dictionary(output) } @@ -286,7 +343,8 @@ public class Common { case .dictionary(let dict): let rootNamespaceId = try Serialization._StringSerializer.deserialize(dict["root_namespace_id"] ?? .null) let homeNamespaceId = try Serialization._StringSerializer.deserialize(dict["home_namespace_id"] ?? .null) - return UserRootInfo(rootNamespaceId: rootNamespaceId, homeNamespaceId: homeNamespaceId) + let homePath = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["home_path"] ?? .null) + return UserRootInfo(rootNamespaceId: rootNamespaceId, homeNamespaceId: homeNamespaceId, homePath: homePath) default: throw JSONSerializerError.deserializeError(type: UserRootInfo.self, json: json) } diff --git a/Source/SwiftyDropbox/Shared/Generated/Contacts.swift b/Source/SwiftyDropbox/Shared/Generated/Contacts.swift index 8dc2cd33..a29d889b 100644 --- a/Source/SwiftyDropbox/Shared/Generated/Contacts.swift +++ b/Source/SwiftyDropbox/Shared/Generated/Contacts.swift @@ -13,10 +13,9 @@ public class Contacts { /// List of manually added contacts to be deleted. public let emailAddresses: [String] public init(emailAddresses: [String]) { - arrayValidator(itemValidator: stringValidator( - maxLength: 255, - pattern: "^['#&A-Za-z0-9._%+-]+@[A-Za-z0-9-][A-Za-z0-9.-]*\\.[A-Za-z]{2,15}$" - ))(emailAddresses) + arrayValidator(itemValidator: stringValidator(maxLength: 255, pattern: "^['#&A-Za-z0-9._%+-]+@[A-Za-z0-9-][A-Za-z0-9.-]*\\.[A-Za-z]{2,15}$"))( + emailAddresses + ) self.emailAddresses = emailAddresses } diff --git a/Source/SwiftyDropbox/Shared/Generated/ContactsRoutes.swift b/Source/SwiftyDropbox/Shared/Generated/ContactsRoutes.swift index 8491123a..8932a912 100644 --- a/Source/SwiftyDropbox/Shared/Generated/ContactsRoutes.swift +++ b/Source/SwiftyDropbox/Shared/Generated/ContactsRoutes.swift @@ -35,8 +35,10 @@ public class ContactsRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Void` object on success or a /// `Contacts.DeleteManualContactsError` object on failure. - @discardableResult public func deleteManualContactsBatch(emailAddresses: [String]) - -> RpcRequest { + @discardableResult public func deleteManualContactsBatch(emailAddresses: [String]) -> RpcRequest< + VoidSerializer, + Contacts.DeleteManualContactsErrorSerializer + > { let route = Contacts.deleteManualContactsBatch let serverArgs = Contacts.DeleteManualContactsArg(emailAddresses: emailAddresses) return client.request(route, serverArgs: serverArgs) diff --git a/Source/SwiftyDropbox/Shared/Generated/DropboxAppBaseRequestBox.swift b/Source/SwiftyDropbox/Shared/Generated/DropboxAppBaseRequestBox.swift index baabd57b..58b547fd 100644 --- a/Source/SwiftyDropbox/Shared/Generated/DropboxAppBaseRequestBox.swift +++ b/Source/SwiftyDropbox/Shared/Generated/DropboxAppBaseRequestBox.swift @@ -9,11 +9,14 @@ import Foundation /// Allows for heterogenous collections of typed requests public enum DropboxAppBaseRequestBox: CustomStringConvertible { case files_getThumbnailV2(DownloadRequestFile) + case sharing_getSharedLinkFile(DownloadRequestFile) public var description: String { switch self { case .files_getThumbnailV2: return "files/get_thumbnail_v2" + case .sharing_getSharedLinkFile: + return "sharing/get_shared_link_file" } } } \ No newline at end of file diff --git a/Source/SwiftyDropbox/Shared/Generated/DropboxBaseRequestBox.swift b/Source/SwiftyDropbox/Shared/Generated/DropboxBaseRequestBox.swift index f84e958e..d77a19c4 100644 --- a/Source/SwiftyDropbox/Shared/Generated/DropboxBaseRequestBox.swift +++ b/Source/SwiftyDropbox/Shared/Generated/DropboxBaseRequestBox.swift @@ -8,6 +8,7 @@ import Foundation /// Allows for heterogenous collections of typed requests public enum DropboxBaseRequestBox: CustomStringConvertible { + case account_getPhoto(DownloadRequestFile) case files_alphaUpload(UploadRequest) case files_download(DownloadRequestFile) case files_downloadZip(DownloadRequestFile) @@ -20,6 +21,7 @@ public enum DropboxBaseRequestBox: CustomStringConvertible { case files_upload(UploadRequest) case files_uploadSessionAppend(UploadRequest) case files_uploadSessionAppendV2(UploadRequest) + case files_uploadSessionAppendBatch(UploadRequest) case files_uploadSessionFinish(UploadRequest) case files_uploadSessionStart(UploadRequest) case paper_docsCreate(UploadRequest) @@ -29,6 +31,8 @@ public enum DropboxBaseRequestBox: CustomStringConvertible { public var description: String { switch self { + case .account_getPhoto: + return "account/get_photo" case .files_alphaUpload: return "files/alpha/upload" case .files_download: @@ -53,6 +57,8 @@ public enum DropboxBaseRequestBox: CustomStringConvertible { return "files/upload_session/append" case .files_uploadSessionAppendV2: return "files/upload_session/append_v2" + case .files_uploadSessionAppendBatch: + return "files/upload_session/append_batch" case .files_uploadSessionFinish: return "files/upload_session/finish" case .files_uploadSessionStart: diff --git a/Source/SwiftyDropbox/Shared/Generated/FileProperties.swift b/Source/SwiftyDropbox/Shared/Generated/FileProperties.swift index f3c55212..f0bef772 100644 --- a/Source/SwiftyDropbox/Shared/Generated/FileProperties.swift +++ b/Source/SwiftyDropbox/Shared/Generated/FileProperties.swift @@ -12,7 +12,7 @@ public class FileProperties { public class AddPropertiesArg: CustomStringConvertible, JSONRepresentable { /// A unique identifier for the file or folder. public let path: String - /// The property groups which are to be added to a Dropbox file. No two groups in the input should refer to the + /// The property groups which are to be added to a Dropbox file. No two groups in the input should refer to the /// same template. public let propertyGroups: [FileProperties.PropertyGroup] public init(path: String, propertyGroups: [FileProperties.PropertyGroup]) { @@ -952,7 +952,7 @@ public class FileProperties { public class OverwritePropertyGroupArg: CustomStringConvertible, JSONRepresentable { /// A unique identifier for the file or folder. public let path: String - /// The property groups "snapshot" updates to force apply. No two groups in the input should refer to the same + /// The property groups "snapshot" updates to force apply. No two groups in the input should refer to the same /// template. public let propertyGroups: [FileProperties.PropertyGroup] public init(path: String, propertyGroups: [FileProperties.PropertyGroup]) { @@ -1034,8 +1034,9 @@ public class FileProperties { switch json { case .dictionary(let dict): let queries = try ArraySerializer(FileProperties.PropertiesSearchQuerySerializer()).deserialize(dict["queries"] ?? .null) - let templateFilter = try FileProperties.TemplateFilterSerializer() - .deserialize(dict["template_filter"] ?? FileProperties.TemplateFilterSerializer().serialize(.filterNone)) + let templateFilter = try FileProperties.TemplateFilterSerializer().deserialize( + dict["template_filter"] ?? FileProperties.TemplateFilterSerializer().serialize(.filterNone) + ) return PropertiesSearchArg(queries: queries, templateFilter: templateFilter) default: throw JSONSerializerError.deserializeError(type: PropertiesSearchArg.self, json: json) @@ -1348,8 +1349,9 @@ public class FileProperties { case .dictionary(let dict): let query = try Serialization._StringSerializer.deserialize(dict["query"] ?? .null) let mode = try FileProperties.PropertiesSearchModeSerializer().deserialize(dict["mode"] ?? .null) - let logicalOperator = try FileProperties.LogicalOperatorSerializer() - .deserialize(dict["logical_operator"] ?? FileProperties.LogicalOperatorSerializer().serialize(.orOperator)) + let logicalOperator = try FileProperties.LogicalOperatorSerializer().deserialize( + dict["logical_operator"] ?? FileProperties.LogicalOperatorSerializer().serialize(.orOperator) + ) return PropertiesSearchQuery(query: query, mode: mode, logicalOperator: logicalOperator) default: throw JSONSerializerError.deserializeError(type: PropertiesSearchQuery.self, json: json) @@ -1460,8 +1462,7 @@ public class FileProperties { public let name: String /// Description of the property field. Property field descriptions can be up to 1024 bytes. public let description_: String - /// Data type of the value of this property field. This type will be enforced upon property creation and - /// modifications. + /// (no description) public let type: FileProperties.PropertyType public init(name: String, description_: String, type: FileProperties.PropertyType) { stringValidator()(name) @@ -1557,12 +1558,12 @@ public class FileProperties { } } - /// The PropertyGroupUpdate struct + /// Property routes public class PropertyGroupUpdate: CustomStringConvertible, JSONRepresentable { /// A unique identifier for a property template. public let templateId: String /// Property fields to update. If the property field already exists, it is updated. If the property field - /// doesn't exist, the property group is added. + /// doesn't exist, it will be created as long as the property group already exists. public let addOrUpdateFields: [FileProperties.PropertyField]? /// Property fields to remove (by name), provided they exist. public let removeFields: [String]? @@ -1602,8 +1603,9 @@ public class FileProperties { switch json { case .dictionary(let dict): let templateId = try Serialization._StringSerializer.deserialize(dict["template_id"] ?? .null) - let addOrUpdateFields = try NullableSerializer(ArraySerializer(FileProperties.PropertyFieldSerializer())) - .deserialize(dict["add_or_update_fields"] ?? .null) + let addOrUpdateFields = try NullableSerializer(ArraySerializer(FileProperties.PropertyFieldSerializer())).deserialize( + dict["add_or_update_fields"] ?? .null + ) let removeFields = try NullableSerializer(ArraySerializer(Serialization._StringSerializer)).deserialize(dict["remove_fields"] ?? .null) return PropertyGroupUpdate(templateId: templateId, addOrUpdateFields: addOrUpdateFields, removeFields: removeFields) default: @@ -2059,8 +2061,9 @@ public class FileProperties { switch json { case .dictionary(let dict): let path = try Serialization._StringSerializer.deserialize(dict["path"] ?? .null) - let updatePropertyGroups = try ArraySerializer(FileProperties.PropertyGroupUpdateSerializer()) - .deserialize(dict["update_property_groups"] ?? .null) + let updatePropertyGroups = try ArraySerializer(FileProperties.PropertyGroupUpdateSerializer()).deserialize( + dict["update_property_groups"] ?? .null + ) return UpdatePropertiesArg(path: path, updatePropertyGroups: updatePropertyGroups) default: throw JSONSerializerError.deserializeError(type: UpdatePropertiesArg.self, json: json) @@ -2232,8 +2235,9 @@ public class FileProperties { let templateId = try Serialization._StringSerializer.deserialize(dict["template_id"] ?? .null) let name = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["name"] ?? .null) let description_ = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["description"] ?? .null) - let addFields = try NullableSerializer(ArraySerializer(FileProperties.PropertyFieldTemplateSerializer())) - .deserialize(dict["add_fields"] ?? .null) + let addFields = try NullableSerializer(ArraySerializer(FileProperties.PropertyFieldTemplateSerializer())).deserialize( + dict["add_fields"] ?? .null + ) return UpdateTemplateArg(templateId: templateId, name: name, description_: description_, addFields: addFields) default: throw JSONSerializerError.deserializeError(type: UpdateTemplateArg.self, json: json) diff --git a/Source/SwiftyDropbox/Shared/Generated/FilePropertiesRoutes.swift b/Source/SwiftyDropbox/Shared/Generated/FilePropertiesRoutes.swift index 47132f70..d6bf722f 100644 --- a/Source/SwiftyDropbox/Shared/Generated/FilePropertiesRoutes.swift +++ b/Source/SwiftyDropbox/Shared/Generated/FilePropertiesRoutes.swift @@ -20,14 +20,14 @@ public class FilePropertiesRoutes: DropboxTransportClientOwning { /// /// - parameter path: A unique identifier for the file or folder. /// - parameter propertyGroups: The property groups which are to be added to a Dropbox file. No two groups in the - /// input should refer to the same template. + /// input should refer to the same template. /// /// - returns: Through the response callback, the caller will receive a `Void` object on success or a /// `FileProperties.AddPropertiesError` object on failure. - @discardableResult public func propertiesAdd( - path: String, - propertyGroups: [FileProperties.PropertyGroup] - ) -> RpcRequest { + @discardableResult public func propertiesAdd(path: String, propertyGroups: [FileProperties.PropertyGroup]) -> RpcRequest< + VoidSerializer, + FileProperties.AddPropertiesErrorSerializer + > { let route = FileProperties.propertiesAdd let serverArgs = FileProperties.AddPropertiesArg(path: path, propertyGroups: propertyGroups) return client.request(route, serverArgs: serverArgs) @@ -42,14 +42,14 @@ public class FilePropertiesRoutes: DropboxTransportClientOwning { /// /// - parameter path: A unique identifier for the file or folder. /// - parameter propertyGroups: The property groups "snapshot" updates to force apply. No two groups in the input - /// should refer to the same template. + /// should refer to the same template. /// /// - returns: Through the response callback, the caller will receive a `Void` object on success or a /// `FileProperties.InvalidPropertyGroupError` object on failure. - @discardableResult public func propertiesOverwrite( - path: String, - propertyGroups: [FileProperties.PropertyGroup] - ) -> RpcRequest { + @discardableResult public func propertiesOverwrite(path: String, propertyGroups: [FileProperties.PropertyGroup]) -> RpcRequest< + VoidSerializer, + FileProperties.InvalidPropertyGroupErrorSerializer + > { let route = FileProperties.propertiesOverwrite let serverArgs = FileProperties.OverwritePropertyGroupArg(path: path, propertyGroups: propertyGroups) return client.request(route, serverArgs: serverArgs) @@ -67,10 +67,10 @@ public class FilePropertiesRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Void` object on success or a /// `FileProperties.RemovePropertiesError` object on failure. - @discardableResult public func propertiesRemove( - path: String, - propertyTemplateIds: [String] - ) -> RpcRequest { + @discardableResult public func propertiesRemove(path: String, propertyTemplateIds: [String]) -> RpcRequest< + VoidSerializer, + FileProperties.RemovePropertiesErrorSerializer + > { let route = FileProperties.propertiesRemove let serverArgs = FileProperties.RemovePropertiesArg(path: path, propertyTemplateIds: propertyTemplateIds) return client.request(route, serverArgs: serverArgs) @@ -85,11 +85,10 @@ public class FilePropertiesRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `FileProperties.PropertiesSearchResult` /// object on success or a `FileProperties.PropertiesSearchError` object on failure. - @discardableResult public func propertiesSearch( - queries: [FileProperties.PropertiesSearchQuery], - templateFilter: FileProperties - .TemplateFilter = .filterNone - ) -> RpcRequest { + @discardableResult public func propertiesSearch(queries: [FileProperties.PropertiesSearchQuery], templateFilter: FileProperties.TemplateFilter = .filterNone) -> RpcRequest< + FileProperties.PropertiesSearchResultSerializer, + FileProperties.PropertiesSearchErrorSerializer + > { let route = FileProperties.propertiesSearch let serverArgs = FileProperties.PropertiesSearchArg(queries: queries, templateFilter: templateFilter) return client.request(route, serverArgs: serverArgs) @@ -103,8 +102,10 @@ public class FilePropertiesRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `FileProperties.PropertiesSearchResult` /// object on success or a `FileProperties.PropertiesSearchContinueError` object on failure. - @discardableResult public func propertiesSearchContinue(cursor: String) - -> RpcRequest { + @discardableResult public func propertiesSearchContinue(cursor: String) -> RpcRequest< + FileProperties.PropertiesSearchResultSerializer, + FileProperties.PropertiesSearchContinueErrorSerializer + > { let route = FileProperties.propertiesSearchContinue let serverArgs = FileProperties.PropertiesSearchContinueArg(cursor: cursor) return client.request(route, serverArgs: serverArgs) @@ -122,10 +123,10 @@ public class FilePropertiesRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Void` object on success or a /// `FileProperties.UpdatePropertiesError` object on failure. - @discardableResult public func propertiesUpdate( - path: String, - updatePropertyGroups: [FileProperties.PropertyGroupUpdate] - ) -> RpcRequest { + @discardableResult public func propertiesUpdate(path: String, updatePropertyGroups: [FileProperties.PropertyGroupUpdate]) -> RpcRequest< + VoidSerializer, + FileProperties.UpdatePropertiesErrorSerializer + > { let route = FileProperties.propertiesUpdate let serverArgs = FileProperties.UpdatePropertiesArg(path: path, updatePropertyGroups: updatePropertyGroups) return client.request(route, serverArgs: serverArgs) @@ -139,12 +140,10 @@ public class FilePropertiesRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `FileProperties.AddTemplateResult` object on /// success or a `FileProperties.ModifyTemplateError` object on failure. - @discardableResult public func templatesAddForTeam( - name: String, - description_: String, - fields: [FileProperties.PropertyFieldTemplate] - ) - -> RpcRequest { + @discardableResult public func templatesAddForTeam(name: String, description_: String, fields: [FileProperties.PropertyFieldTemplate]) -> RpcRequest< + FileProperties.AddTemplateResultSerializer, + FileProperties.ModifyTemplateErrorSerializer + > { let route = FileProperties.templatesAddForTeam let serverArgs = FileProperties.AddTemplateArg(name: name, description_: description_, fields: fields) return client.request(route, serverArgs: serverArgs) @@ -158,12 +157,10 @@ public class FilePropertiesRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `FileProperties.AddTemplateResult` object on /// success or a `FileProperties.ModifyTemplateError` object on failure. - @discardableResult public func templatesAddForUser( - name: String, - description_: String, - fields: [FileProperties.PropertyFieldTemplate] - ) - -> RpcRequest { + @discardableResult public func templatesAddForUser(name: String, description_: String, fields: [FileProperties.PropertyFieldTemplate]) -> RpcRequest< + FileProperties.AddTemplateResultSerializer, + FileProperties.ModifyTemplateErrorSerializer + > { let route = FileProperties.templatesAddForUser let serverArgs = FileProperties.AddTemplateArg(name: name, description_: description_, fields: fields) return client.request(route, serverArgs: serverArgs) @@ -178,8 +175,10 @@ public class FilePropertiesRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `FileProperties.GetTemplateResult` object on /// success or a `FileProperties.TemplateError` object on failure. - @discardableResult public func templatesGetForTeam(templateId: String) - -> RpcRequest { + @discardableResult public func templatesGetForTeam(templateId: String) -> RpcRequest< + FileProperties.GetTemplateResultSerializer, + FileProperties.TemplateErrorSerializer + > { let route = FileProperties.templatesGetForTeam let serverArgs = FileProperties.GetTemplateArg(templateId: templateId) return client.request(route, serverArgs: serverArgs) @@ -194,8 +193,10 @@ public class FilePropertiesRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `FileProperties.GetTemplateResult` object on /// success or a `FileProperties.TemplateError` object on failure. - @discardableResult public func templatesGetForUser(templateId: String) - -> RpcRequest { + @discardableResult public func templatesGetForUser(templateId: String) -> RpcRequest< + FileProperties.GetTemplateResultSerializer, + FileProperties.TemplateErrorSerializer + > { let route = FileProperties.templatesGetForUser let serverArgs = FileProperties.GetTemplateArg(templateId: templateId) return client.request(route, serverArgs: serverArgs) diff --git a/Source/SwiftyDropbox/Shared/Generated/FileRequests.swift b/Source/SwiftyDropbox/Shared/Generated/FileRequests.swift index 719f0498..7ab7c410 100644 --- a/Source/SwiftyDropbox/Shared/Generated/FileRequests.swift +++ b/Source/SwiftyDropbox/Shared/Generated/FileRequests.swift @@ -170,7 +170,16 @@ public class FileRequests { public let open: Bool /// A description of the file request. public let description_: String? - public init(title: String, destination: String, deadline: FileRequests.FileRequestDeadline? = nil, open: Bool = true, description_: String? = nil) { + /// If this request was created from video project, its id. + public let videoProjectId: String? + public init( + title: String, + destination: String, + deadline: FileRequests.FileRequestDeadline? = nil, + open: Bool = true, + description_: String? = nil, + videoProjectId: String? = nil + ) { stringValidator(minLength: 1)(title) self.title = title stringValidator(pattern: "/(.|[\\r\\n])*")(destination) @@ -179,6 +188,8 @@ public class FileRequests { self.open = open nullableValidator(stringValidator())(description_) self.description_ = description_ + nullableValidator(stringValidator())(videoProjectId) + self.videoProjectId = videoProjectId } func json() throws -> JSON { @@ -203,6 +214,7 @@ public class FileRequests { "deadline": try NullableSerializer(FileRequests.FileRequestDeadlineSerializer()).serialize(value.deadline), "open": try Serialization._BoolSerializer.serialize(value.open), "description": try NullableSerializer(Serialization._StringSerializer).serialize(value.description_), + "video_project_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.videoProjectId), ] return .dictionary(output) } @@ -215,7 +227,15 @@ public class FileRequests { let deadline = try NullableSerializer(FileRequests.FileRequestDeadlineSerializer()).deserialize(dict["deadline"] ?? .null) let open = try Serialization._BoolSerializer.deserialize(dict["open"] ?? .number(1)) let description_ = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["description"] ?? .null) - return CreateFileRequestArgs(title: title, destination: destination, deadline: deadline, open: open, description_: description_) + let videoProjectId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["video_project_id"] ?? .null) + return CreateFileRequestArgs( + title: title, + destination: destination, + deadline: deadline, + open: open, + description_: description_, + videoProjectId: videoProjectId + ) default: throw JSONSerializerError.deserializeError(type: CreateFileRequestArgs.self, json: json) } @@ -243,6 +263,8 @@ public class FileRequests { /// There was an error validating the request. For example, the title was invalid, or there were disallowed /// characters in the destination path. case validationError + /// This user doesn't have permission to edit files in a destination folder + case noWritePermission func json() throws -> JSON { try FileRequestErrorSerializer().serialize(self) @@ -293,6 +315,10 @@ public class FileRequests { var d = [String: JSON]() d[".tag"] = .str("validation_error") return .dictionary(d) + case .noWritePermission: + var d = [String: JSON]() + d[".tag"] = .str("no_write_permission") + return .dictionary(d) } } @@ -317,6 +343,8 @@ public class FileRequests { return FileRequestError.emailUnverified case "validation_error": return FileRequestError.validationError + case "no_write_permission": + return FileRequestError.noWritePermission default: throw JSONSerializerError.unknownTag(type: FileRequestError.self, json: json, tag: tag) } @@ -347,6 +375,8 @@ public class FileRequests { /// There was an error validating the request. For example, the title was invalid, or there were disallowed /// characters in the destination path. case validationError + /// This user doesn't have permission to edit files in a destination folder + case noWritePermission /// File requests are not available on the specified folder. case invalidLocation /// The user has reached the rate limit for creating file requests. The limit is currently 4000 file requests @@ -402,6 +432,10 @@ public class FileRequests { var d = [String: JSON]() d[".tag"] = .str("validation_error") return .dictionary(d) + case .noWritePermission: + var d = [String: JSON]() + d[".tag"] = .str("no_write_permission") + return .dictionary(d) case .invalidLocation: var d = [String: JSON]() d[".tag"] = .str("invalid_location") @@ -434,6 +468,8 @@ public class FileRequests { return CreateFileRequestError.emailUnverified case "validation_error": return CreateFileRequestError.validationError + case "no_write_permission": + return CreateFileRequestError.noWritePermission case "invalid_location": return CreateFileRequestError.invalidLocation case "rate_limit": @@ -468,6 +504,8 @@ public class FileRequests { /// There was an error validating the request. For example, the title was invalid, or there were disallowed /// characters in the destination path. case validationError + /// This user doesn't have permission to edit files in a destination folder + case noWritePermission func json() throws -> JSON { try DeleteAllClosedFileRequestsErrorSerializer().serialize(self) @@ -518,6 +556,10 @@ public class FileRequests { var d = [String: JSON]() d[".tag"] = .str("validation_error") return .dictionary(d) + case .noWritePermission: + var d = [String: JSON]() + d[".tag"] = .str("no_write_permission") + return .dictionary(d) } } @@ -542,6 +584,8 @@ public class FileRequests { return DeleteAllClosedFileRequestsError.emailUnverified case "validation_error": return DeleteAllClosedFileRequestsError.validationError + case "no_write_permission": + return DeleteAllClosedFileRequestsError.noWritePermission default: throw JSONSerializerError.unknownTag(type: DeleteAllClosedFileRequestsError.self, json: json, tag: tag) } @@ -655,6 +699,8 @@ public class FileRequests { /// There was an error validating the request. For example, the title was invalid, or there were disallowed /// characters in the destination path. case validationError + /// This user doesn't have permission to edit files in a destination folder + case noWritePermission /// One or more file requests currently open. case fileRequestOpen @@ -707,6 +753,10 @@ public class FileRequests { var d = [String: JSON]() d[".tag"] = .str("validation_error") return .dictionary(d) + case .noWritePermission: + var d = [String: JSON]() + d[".tag"] = .str("no_write_permission") + return .dictionary(d) case .fileRequestOpen: var d = [String: JSON]() d[".tag"] = .str("file_request_open") @@ -735,6 +785,8 @@ public class FileRequests { return DeleteFileRequestError.emailUnverified case "validation_error": return DeleteFileRequestError.validationError + case "no_write_permission": + return DeleteFileRequestError.noWritePermission case "file_request_open": return DeleteFileRequestError.fileRequestOpen default: @@ -809,6 +861,8 @@ public class FileRequests { public let fileCount: Int64 /// A description of the file request. public let description_: String? + /// If this request was created from video project, its id. + public let videoProjectId: String? public init( id: String, url: String, @@ -818,7 +872,8 @@ public class FileRequests { fileCount: Int64, destination: String? = nil, deadline: FileRequests.FileRequestDeadline? = nil, - description_: String? = nil + description_: String? = nil, + videoProjectId: String? = nil ) { stringValidator(minLength: 1, pattern: "[-_0-9a-zA-Z]+")(id) self.id = id @@ -835,6 +890,8 @@ public class FileRequests { self.fileCount = fileCount nullableValidator(stringValidator())(description_) self.description_ = description_ + nullableValidator(stringValidator())(videoProjectId) + self.videoProjectId = videoProjectId } func json() throws -> JSON { @@ -863,6 +920,7 @@ public class FileRequests { "destination": try NullableSerializer(Serialization._StringSerializer).serialize(value.destination), "deadline": try NullableSerializer(FileRequests.FileRequestDeadlineSerializer()).serialize(value.deadline), "description": try NullableSerializer(Serialization._StringSerializer).serialize(value.description_), + "video_project_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.videoProjectId), ] return .dictionary(output) } @@ -879,6 +937,7 @@ public class FileRequests { let destination = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["destination"] ?? .null) let deadline = try NullableSerializer(FileRequests.FileRequestDeadlineSerializer()).deserialize(dict["deadline"] ?? .null) let description_ = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["description"] ?? .null) + let videoProjectId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["video_project_id"] ?? .null) return FileRequest( id: id, url: url, @@ -888,7 +947,8 @@ public class FileRequests { fileCount: fileCount, destination: destination, deadline: deadline, - description_: description_ + description_: description_, + videoProjectId: videoProjectId ) default: throw JSONSerializerError.deserializeError(type: FileRequest.self, json: json) @@ -900,7 +960,7 @@ public class FileRequests { public class FileRequestDeadline: CustomStringConvertible, JSONRepresentable { /// The deadline for this file request. public let deadline: Date - /// If set, allow uploads after the deadline has passed. These uploads will be marked overdue. + /// If set, allow uploads after the deadline has passed. These uploads will be marked overdue. public let allowLateUploads: FileRequests.GracePeriod? public init(deadline: Date, allowLateUploads: FileRequests.GracePeriod? = nil) { self.deadline = deadline @@ -1005,6 +1065,8 @@ public class FileRequests { /// There was an error validating the request. For example, the title was invalid, or there were disallowed /// characters in the destination path. case validationError + /// This user doesn't have permission to edit files in a destination folder + case noWritePermission func json() throws -> JSON { try GetFileRequestErrorSerializer().serialize(self) @@ -1055,6 +1117,10 @@ public class FileRequests { var d = [String: JSON]() d[".tag"] = .str("validation_error") return .dictionary(d) + case .noWritePermission: + var d = [String: JSON]() + d[".tag"] = .str("no_write_permission") + return .dictionary(d) } } @@ -1079,6 +1145,8 @@ public class FileRequests { return GetFileRequestError.emailUnverified case "validation_error": return GetFileRequestError.validationError + case "no_write_permission": + return GetFileRequestError.noWritePermission default: throw JSONSerializerError.unknownTag(type: GetFileRequestError.self, json: json, tag: tag) } @@ -1535,8 +1603,9 @@ public class FileRequests { let id = try Serialization._StringSerializer.deserialize(dict["id"] ?? .null) let title = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["title"] ?? .null) let destination = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["destination"] ?? .null) - let deadline = try FileRequests.UpdateFileRequestDeadlineSerializer() - .deserialize(dict["deadline"] ?? FileRequests.UpdateFileRequestDeadlineSerializer().serialize(.noUpdate)) + let deadline = try FileRequests.UpdateFileRequestDeadlineSerializer().deserialize( + dict["deadline"] ?? FileRequests.UpdateFileRequestDeadlineSerializer().serialize(.noUpdate) + ) let open = try NullableSerializer(Serialization._BoolSerializer).deserialize(dict["open"] ?? .null) let description_ = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["description"] ?? .null) return UpdateFileRequestArgs(id: id, title: title, destination: destination, deadline: deadline, open: open, description_: description_) @@ -1629,6 +1698,8 @@ public class FileRequests { /// There was an error validating the request. For example, the title was invalid, or there were disallowed /// characters in the destination path. case validationError + /// This user doesn't have permission to edit files in a destination folder + case noWritePermission func json() throws -> JSON { try UpdateFileRequestErrorSerializer().serialize(self) @@ -1679,6 +1750,10 @@ public class FileRequests { var d = [String: JSON]() d[".tag"] = .str("validation_error") return .dictionary(d) + case .noWritePermission: + var d = [String: JSON]() + d[".tag"] = .str("no_write_permission") + return .dictionary(d) } } @@ -1703,6 +1778,8 @@ public class FileRequests { return UpdateFileRequestError.emailUnverified case "validation_error": return UpdateFileRequestError.validationError + case "no_write_permission": + return UpdateFileRequestError.noWritePermission default: throw JSONSerializerError.unknownTag(type: UpdateFileRequestError.self, json: json, tag: tag) } diff --git a/Source/SwiftyDropbox/Shared/Generated/FileRequestsRoutes.swift b/Source/SwiftyDropbox/Shared/Generated/FileRequestsRoutes.swift index 03b662f2..5cd7a6ab 100644 --- a/Source/SwiftyDropbox/Shared/Generated/FileRequestsRoutes.swift +++ b/Source/SwiftyDropbox/Shared/Generated/FileRequestsRoutes.swift @@ -38,6 +38,7 @@ public class FileRequestsRoutes: DropboxTransportClientOwning { /// - parameter open: Whether or not the file request should be open. If the file request is closed, it will not /// accept any file submissions, but it can be opened later. /// - parameter description_: A description of the file request. + /// - parameter videoProjectId: If this request was created from video project, its id. /// /// - returns: Through the response callback, the caller will receive a `FileRequests.FileRequest` object on success /// or a `FileRequests.CreateFileRequestError` object on failure. @@ -46,10 +47,18 @@ public class FileRequestsRoutes: DropboxTransportClientOwning { destination: String, deadline: FileRequests.FileRequestDeadline? = nil, open: Bool = true, - description_: String? = nil + description_: String? = nil, + videoProjectId: String? = nil ) -> RpcRequest { let route = FileRequests.create - let serverArgs = FileRequests.CreateFileRequestArgs(title: title, destination: destination, deadline: deadline, open: open, description_: description_) + let serverArgs = FileRequests.CreateFileRequestArgs( + title: title, + destination: destination, + deadline: deadline, + open: open, + description_: description_, + videoProjectId: videoProjectId + ) return client.request(route, serverArgs: serverArgs) } @@ -61,8 +70,10 @@ public class FileRequestsRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `FileRequests.DeleteFileRequestsResult` /// object on success or a `FileRequests.DeleteFileRequestError` object on failure. - @discardableResult public func delete(ids: [String]) - -> RpcRequest { + @discardableResult public func delete(ids: [String]) -> RpcRequest< + FileRequests.DeleteFileRequestsResultSerializer, + FileRequests.DeleteFileRequestErrorSerializer + > { let route = FileRequests.delete let serverArgs = FileRequests.DeleteFileRequestArgs(ids: ids) return client.request(route, serverArgs: serverArgs) @@ -76,8 +87,10 @@ public class FileRequestsRoutes: DropboxTransportClientOwning { /// - returns: Through the response callback, the caller will receive a /// `FileRequests.DeleteAllClosedFileRequestsResult` object on success or a /// `FileRequests.DeleteAllClosedFileRequestsError` object on failure. - @discardableResult public func deleteAllClosed() - -> RpcRequest { + @discardableResult public func deleteAllClosed() -> RpcRequest< + FileRequests.DeleteAllClosedFileRequestsResultSerializer, + FileRequests.DeleteAllClosedFileRequestsErrorSerializer + > { let route = FileRequests.deleteAllClosed return client.request(route) } @@ -118,8 +131,10 @@ public class FileRequestsRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `FileRequests.ListFileRequestsV2Result` /// object on success or a `FileRequests.ListFileRequestsError` object on failure. - @discardableResult public func listV2(limit: UInt64 = 1_000) - -> RpcRequest { + @discardableResult public func listV2(limit: UInt64 = 1_000) -> RpcRequest< + FileRequests.ListFileRequestsV2ResultSerializer, + FileRequests.ListFileRequestsErrorSerializer + > { let route = FileRequests.listV2 let serverArgs = FileRequests.ListFileRequestsArg(limit: limit) return client.request(route, serverArgs: serverArgs) @@ -134,8 +149,10 @@ public class FileRequestsRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `FileRequests.ListFileRequestsV2Result` /// object on success or a `FileRequests.ListFileRequestsContinueError` object on failure. - @discardableResult public func listContinue(cursor: String) - -> RpcRequest { + @discardableResult public func listContinue(cursor: String) -> RpcRequest< + FileRequests.ListFileRequestsV2ResultSerializer, + FileRequests.ListFileRequestsContinueErrorSerializer + > { let route = FileRequests.listContinue let serverArgs = FileRequests.ListFileRequestsContinueArg(cursor: cursor) return client.request(route, serverArgs: serverArgs) diff --git a/Source/SwiftyDropbox/Shared/Generated/Files.swift b/Source/SwiftyDropbox/Shared/Generated/Files.swift index a3b6b9f3..4ef20dc5 100644 --- a/Source/SwiftyDropbox/Shared/Generated/Files.swift +++ b/Source/SwiftyDropbox/Shared/Generated/Files.swift @@ -181,7 +181,7 @@ public class Files { /// If true, DeletedMetadata will be returned for deleted file or folder, otherwise notFound in LookupError will /// be returned. public let includeDeleted: Bool - /// If true, the results will include a flag for each file indicating whether or not that file has any explicit + /// If true, the results will include a flag for each file indicating whether or not that file has any explicit /// members. public let includeHasExplicitSharedMembers: Bool /// If set to a valid list of template IDs, propertyGroups in FileMetadata is set if there exists property data @@ -194,7 +194,7 @@ public class Files { includeHasExplicitSharedMembers: Bool = false, includePropertyGroups: FileProperties.TemplateFilterBase? = nil ) { - stringValidator(pattern: "(/(.|[\\r\\n])*|id:.*)|(rev:[0-9a-f]{9,})|(ns:[0-9]+(/.*)?)")(path) + stringValidator(pattern: "(/(.|[\\r\\n])*|id:.*)|(rev:[0-9a-f]{9,})|(ns:[0-9]+(/(.|[\\r\\n])*)?)")(path) self.path = path self.includeMediaInfo = includeMediaInfo self.includeDeleted = includeDeleted @@ -234,10 +234,10 @@ public class Files { let path = try Serialization._StringSerializer.deserialize(dict["path"] ?? .null) let includeMediaInfo = try Serialization._BoolSerializer.deserialize(dict["include_media_info"] ?? .number(0)) let includeDeleted = try Serialization._BoolSerializer.deserialize(dict["include_deleted"] ?? .number(0)) - let includeHasExplicitSharedMembers = try Serialization._BoolSerializer - .deserialize(dict["include_has_explicit_shared_members"] ?? .number(0)) - let includePropertyGroups = try NullableSerializer(FileProperties.TemplateFilterBaseSerializer()) - .deserialize(dict["include_property_groups"] ?? .null) + let includeHasExplicitSharedMembers = try Serialization._BoolSerializer.deserialize(dict["include_has_explicit_shared_members"] ?? .number(0)) + let includePropertyGroups = try NullableSerializer(FileProperties.TemplateFilterBaseSerializer()).deserialize( + dict["include_property_groups"] ?? .null + ) return GetMetadataArg( path: path, includeMediaInfo: includeMediaInfo, @@ -253,8 +253,8 @@ public class Files { /// The AlphaGetMetadataArg struct public class AlphaGetMetadataArg: Files.GetMetadataArg { - /// If set to a valid list of template IDs, propertyGroups in FileMetadata is set for files with custom - /// properties. + /// Field is deprecated. If set to a valid list of template IDs, propertyGroups in FileMetadata is set for files + /// with custom properties. public let includePropertyTemplates: [String]? public init( path: String, @@ -293,8 +293,7 @@ public class Files { "include_deleted": try Serialization._BoolSerializer.serialize(value.includeDeleted), "include_has_explicit_shared_members": try Serialization._BoolSerializer.serialize(value.includeHasExplicitSharedMembers), "include_property_groups": try NullableSerializer(FileProperties.TemplateFilterBaseSerializer()).serialize(value.includePropertyGroups), - "include_property_templates": try NullableSerializer(ArraySerializer(Serialization._StringSerializer)) - .serialize(value.includePropertyTemplates), + "include_property_templates": try NullableSerializer(ArraySerializer(Serialization._StringSerializer)).serialize(value.includePropertyTemplates), ] return .dictionary(output) } @@ -305,12 +304,13 @@ public class Files { let path = try Serialization._StringSerializer.deserialize(dict["path"] ?? .null) let includeMediaInfo = try Serialization._BoolSerializer.deserialize(dict["include_media_info"] ?? .number(0)) let includeDeleted = try Serialization._BoolSerializer.deserialize(dict["include_deleted"] ?? .number(0)) - let includeHasExplicitSharedMembers = try Serialization._BoolSerializer - .deserialize(dict["include_has_explicit_shared_members"] ?? .number(0)) - let includePropertyGroups = try NullableSerializer(FileProperties.TemplateFilterBaseSerializer()) - .deserialize(dict["include_property_groups"] ?? .null) - let includePropertyTemplates = try NullableSerializer(ArraySerializer(Serialization._StringSerializer)) - .deserialize(dict["include_property_templates"] ?? .null) + let includeHasExplicitSharedMembers = try Serialization._BoolSerializer.deserialize(dict["include_has_explicit_shared_members"] ?? .number(0)) + let includePropertyGroups = try NullableSerializer(FileProperties.TemplateFilterBaseSerializer()).deserialize( + dict["include_property_groups"] ?? .null + ) + let includePropertyTemplates = try NullableSerializer(ArraySerializer(Serialization._StringSerializer)).deserialize( + dict["include_property_templates"] ?? .null + ) return AlphaGetMetadataArg( path: path, includeMediaInfo: includeMediaInfo, @@ -459,7 +459,7 @@ public class Files { propertyGroups: [FileProperties.PropertyGroup]? = nil, strictConflict: Bool = false ) { - stringValidator(pattern: "(/(.|[\\r\\n])*)|(ns:[0-9]+(/.*)?)|(id:.*)")(path) + stringValidator(pattern: "(/(.|[\\r\\n])*)|(ns:[0-9]+(/(.|[\\r\\n])*)?)|(id:.*)")(path) self.path = path self.mode = mode self.autorename = autorename @@ -505,8 +505,9 @@ public class Files { let autorename = try Serialization._BoolSerializer.deserialize(dict["autorename"] ?? .number(0)) let clientModified = try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).deserialize(dict["client_modified"] ?? .null) let mute = try Serialization._BoolSerializer.deserialize(dict["mute"] ?? .number(0)) - let propertyGroups = try NullableSerializer(ArraySerializer(FileProperties.PropertyGroupSerializer())) - .deserialize(dict["property_groups"] ?? .null) + let propertyGroups = try NullableSerializer(ArraySerializer(FileProperties.PropertyGroupSerializer())).deserialize( + dict["property_groups"] ?? .null + ) let strictConflict = try Serialization._BoolSerializer.deserialize(dict["strict_conflict"] ?? .number(0)) return CommitInfo( path: path, @@ -624,7 +625,7 @@ public class Files { /// If there's a conflict, have the Dropbox server try to autorename the folder to avoid the conflict. public let autorename: Bool public init(path: String, autorename: Bool = false) { - stringValidator(pattern: "(/(.|[\\r\\n])*)|(ns:[0-9]+(/.*)?)")(path) + stringValidator(pattern: "(/(.|[\\r\\n])*)|(ns:[0-9]+(/(.|[\\r\\n])*)?)")(path) self.path = path self.autorename = autorename } @@ -674,7 +675,7 @@ public class Files { /// Whether to force the create to happen asynchronously. public let forceAsync: Bool public init(paths: [String], autorename: Bool = false, forceAsync: Bool = false) { - arrayValidator(maxItems: 10_000, itemValidator: stringValidator(pattern: "(/(.|[\\r\\n])*)|(ns:[0-9]+(/.*)?)"))(paths) + arrayValidator(maxItems: 10_000, itemValidator: stringValidator(pattern: "(/(.|[\\r\\n])*)|(ns:[0-9]+(/(.|[\\r\\n])*)?)"))(paths) self.paths = paths self.autorename = autorename self.forceAsync = forceAsync @@ -905,7 +906,7 @@ public class Files { } } - /// The FileOpsResult struct + /// Result for File Operations public class FileOpsResult: CustomStringConvertible, JSONRepresentable { func json() throws -> JSON { try FileOpsResultSerializer().serialize(self) @@ -1218,7 +1219,7 @@ public class Files { /// a folder. public let parentRev: String? public init(path: String, parentRev: String? = nil) { - stringValidator(pattern: "(/(.|[\\r\\n])*)|(ns:[0-9]+(/.*)?)|(id:.*)")(path) + stringValidator(pattern: "(/(.|[\\r\\n])*)|(ns:[0-9]+(/(.|[\\r\\n])*)?)|(id:.*)")(path) self.path = path nullableValidator(stringValidator(minLength: 9, pattern: "[0-9a-f]+"))(parentRev) self.parentRev = parentRev @@ -1302,8 +1303,8 @@ public class Files { /// The DeleteBatchError union public enum DeleteBatchError: CustomStringConvertible, JSONRepresentable { - /// Use tooManyWriteOperations in DeleteError. deleteBatch now provides smaller granularity about which entry - /// has failed because of this. + /// Field is deprecated. Use tooManyWriteOperations in DeleteError. deleteBatch now provides smaller granularity + /// about which entry has failed because of this. case tooManyWriteOperations /// An unspecified error. case other @@ -1754,7 +1755,8 @@ public class Files { /// won't be returned by listFolderContinue. This field will be null if the file or folder is not /// mounted. public let pathDisplay: String? - /// Please use parentSharedFolderId in FileSharingInfo or parentSharedFolderId in FolderSharingInfo instead. + /// Field is deprecated. Please use parentSharedFolderId in FileSharingInfo or parentSharedFolderId in + /// FolderSharingInfo instead. public let parentSharedFolderId: String? /// The preview URL of the file. public let previewUrl: String? @@ -1838,6 +1840,20 @@ public class Files { /// Indicates that there used to be a file or folder at this path, but it no longer exists. public class DeletedMetadata: Files.Metadata { + /// If present, indicates whether this deleted entry can be restored. + public let isRestorable: Bool? + public init( + name: String, + pathLower: String? = nil, + pathDisplay: String? = nil, + parentSharedFolderId: String? = nil, + previewUrl: String? = nil, + isRestorable: Bool? = nil + ) { + self.isRestorable = isRestorable + super.init(name: name, pathLower: pathLower, pathDisplay: pathDisplay, parentSharedFolderId: parentSharedFolderId, previewUrl: previewUrl) + } + public override var description: String { do { return "\(SerializeUtil.prepareJSONForSerialization(try DeletedMetadataSerializer().serialize(self)))" @@ -1856,6 +1872,7 @@ public class Files { "path_display": try NullableSerializer(Serialization._StringSerializer).serialize(value.pathDisplay), "parent_shared_folder_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.parentSharedFolderId), "preview_url": try NullableSerializer(Serialization._StringSerializer).serialize(value.previewUrl), + "is_restorable": try NullableSerializer(Serialization._BoolSerializer).serialize(value.isRestorable), ] return .dictionary(output) } @@ -1868,12 +1885,14 @@ public class Files { let pathDisplay = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["path_display"] ?? .null) let parentSharedFolderId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["parent_shared_folder_id"] ?? .null) let previewUrl = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["preview_url"] ?? .null) + let isRestorable = try NullableSerializer(Serialization._BoolSerializer).deserialize(dict["is_restorable"] ?? .null) return DeletedMetadata( name: name, pathLower: pathLower, pathDisplay: pathDisplay, parentSharedFolderId: parentSharedFolderId, - previewUrl: previewUrl + previewUrl: previewUrl, + isRestorable: isRestorable ) default: throw JSONSerializerError.deserializeError(type: DeletedMetadata.self, json: json) @@ -1933,10 +1952,10 @@ public class Files { public class DownloadArg: CustomStringConvertible, JSONRepresentable { /// The path of the file to download. public let path: String - /// Please specify revision in path instead. + /// Field is deprecated. Please specify revision in path instead. public let rev: String? public init(path: String, rev: String? = nil) { - stringValidator(pattern: "(/(.|[\\r\\n])*|id:.*)|(rev:[0-9a-f]{9,})|(ns:[0-9]+(/.*)?)")(path) + stringValidator(pattern: "(/(.|[\\r\\n])*|id:.*)|(rev:[0-9a-f]{9,})|(ns:[0-9]+(/(.|[\\r\\n])*)?)")(path) self.path = path nullableValidator(stringValidator(minLength: 9, pattern: "[0-9a-f]+"))(rev) self.rev = rev @@ -2044,7 +2063,7 @@ public class Files { /// The path of the folder to download. public let path: String public init(path: String) { - stringValidator(pattern: "(/(.|[\\r\\n])*|id:.*)|(rev:[0-9a-f]{9,})|(ns:[0-9]+(/.*)?)")(path) + stringValidator(pattern: "(/(.|[\\r\\n])*|id:.*)|(rev:[0-9a-f]{9,})|(ns:[0-9]+(/(.|[\\r\\n])*)?)")(path) self.path = path } @@ -2201,7 +2220,7 @@ public class Files { /// export_as in file metadata) will be used. public let exportFormat: String? public init(path: String, exportFormat: String? = nil) { - stringValidator(pattern: "(/(.|[\\r\\n])*|id:.*)|(rev:[0-9a-f]{9,})|(ns:[0-9]+(/.*)?)")(path) + stringValidator(pattern: "(/(.|[\\r\\n])*|id:.*)|(rev:[0-9a-f]{9,})|(ns:[0-9]+(/(.|[\\r\\n])*)?)")(path) self.path = path nullableValidator(stringValidator())(exportFormat) self.exportFormat = exportFormat @@ -2756,12 +2775,7 @@ public class Files { let lockholderName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["lockholder_name"] ?? .null) let lockholderAccountId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["lockholder_account_id"] ?? .null) let created = try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).deserialize(dict["created"] ?? .null) - return FileLockMetadata( - isLockholder: isLockholder, - lockholderName: lockholderName, - lockholderAccountId: lockholderAccountId, - created: created - ) + return FileLockMetadata(isLockholder: isLockholder, lockholderName: lockholderName, lockholderAccountId: lockholderAccountId, created: created) default: throw JSONSerializerError.deserializeError(type: FileLockMetadata.self, json: json) } @@ -2798,16 +2812,18 @@ public class Files { public let exportInfo: Files.ExportInfo? /// Additional information if the file has custom properties with the property template specified. public let propertyGroups: [FileProperties.PropertyGroup]? - /// This flag will only be present if include_has_explicit_shared_members is true in listFolder or getMetadata. - /// If this flag is present, it will be true if this file has any explicit shared members. This is - /// different from sharing_info in that this could be true in the case where a file has explicit - /// members but is not contained within a shared folder. + /// This flag will only be present if include_has_explicit_shared_members is true in listFolder or getMetadata. + /// If this flag is present, it will be true if this file has any explicit shared members. This is + /// different from sharing_info in that this could be true in the case where a file has explicit members + /// but is not contained within a shared folder. public let hasExplicitSharedMembers: Bool? /// A hash of the file content. This field can be used to verify data integrity. For more information see our /// Content hash https://www.dropbox.com/developers/reference/content-hash page. public let contentHash: String? /// If present, the metadata associated with the file's current lock. public let fileLockInfo: Files.FileLockMetadata? + /// If present, indicates whether this file revision can be restored. + public let isRestorable: Bool? public init( name: String, id: String, @@ -2827,7 +2843,8 @@ public class Files { propertyGroups: [FileProperties.PropertyGroup]? = nil, hasExplicitSharedMembers: Bool? = nil, contentHash: String? = nil, - fileLockInfo: Files.FileLockMetadata? = nil + fileLockInfo: Files.FileLockMetadata? = nil, + isRestorable: Bool? = nil ) { stringValidator(minLength: 1)(id) self.id = id @@ -2847,6 +2864,7 @@ public class Files { nullableValidator(stringValidator(minLength: 64, maxLength: 64))(contentHash) self.contentHash = contentHash self.fileLockInfo = fileLockInfo + self.isRestorable = isRestorable super.init(name: name, pathLower: pathLower, pathDisplay: pathDisplay, parentSharedFolderId: parentSharedFolderId, previewUrl: previewUrl) } @@ -2882,6 +2900,7 @@ public class Files { "has_explicit_shared_members": try NullableSerializer(Serialization._BoolSerializer).serialize(value.hasExplicitSharedMembers), "content_hash": try NullableSerializer(Serialization._StringSerializer).serialize(value.contentHash), "file_lock_info": try NullableSerializer(Files.FileLockMetadataSerializer()).serialize(value.fileLockInfo), + "is_restorable": try NullableSerializer(Serialization._BoolSerializer).serialize(value.isRestorable), ] return .dictionary(output) } @@ -2904,12 +2923,13 @@ public class Files { let sharingInfo = try NullableSerializer(Files.FileSharingInfoSerializer()).deserialize(dict["sharing_info"] ?? .null) let isDownloadable = try Serialization._BoolSerializer.deserialize(dict["is_downloadable"] ?? .number(1)) let exportInfo = try NullableSerializer(Files.ExportInfoSerializer()).deserialize(dict["export_info"] ?? .null) - let propertyGroups = try NullableSerializer(ArraySerializer(FileProperties.PropertyGroupSerializer())) - .deserialize(dict["property_groups"] ?? .null) - let hasExplicitSharedMembers = try NullableSerializer(Serialization._BoolSerializer) - .deserialize(dict["has_explicit_shared_members"] ?? .null) + let propertyGroups = try NullableSerializer(ArraySerializer(FileProperties.PropertyGroupSerializer())).deserialize( + dict["property_groups"] ?? .null + ) + let hasExplicitSharedMembers = try NullableSerializer(Serialization._BoolSerializer).deserialize(dict["has_explicit_shared_members"] ?? .null) let contentHash = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["content_hash"] ?? .null) let fileLockInfo = try NullableSerializer(Files.FileLockMetadataSerializer()).deserialize(dict["file_lock_info"] ?? .null) + let isRestorable = try NullableSerializer(Serialization._BoolSerializer).deserialize(dict["is_restorable"] ?? .null) return FileMetadata( name: name, id: id, @@ -2929,7 +2949,8 @@ public class Files { propertyGroups: propertyGroups, hasExplicitSharedMembers: hasExplicitSharedMembers, contentHash: contentHash, - fileLockInfo: fileLockInfo + fileLockInfo: fileLockInfo, + isRestorable: isRestorable ) default: throw JSONSerializerError.deserializeError(type: FileMetadata.self, json: json) @@ -3090,7 +3111,7 @@ public class Files { public class FolderMetadata: Files.Metadata { /// A unique identifier for the folder. public let id: String - /// Please use sharingInfo instead. + /// Field is deprecated. Please use sharingInfo instead. public let sharedFolderId: String? /// Set if the folder is contained in a shared folder or is a shared folder mount point. public let sharingInfo: Files.FolderSharingInfo? @@ -3155,8 +3176,9 @@ public class Files { let previewUrl = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["preview_url"] ?? .null) let sharedFolderId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["shared_folder_id"] ?? .null) let sharingInfo = try NullableSerializer(Files.FolderSharingInfoSerializer()).deserialize(dict["sharing_info"] ?? .null) - let propertyGroups = try NullableSerializer(ArraySerializer(FileProperties.PropertyGroupSerializer())) - .deserialize(dict["property_groups"] ?? .null) + let propertyGroups = try NullableSerializer(ArraySerializer(FileProperties.PropertyGroupSerializer())).deserialize( + dict["property_groups"] ?? .null + ) return FolderMetadata( name: name, id: id, @@ -3244,7 +3266,7 @@ public class Files { /// The path to the file or folder you want to get a copy reference to. public let path: String public init(path: String) { - stringValidator(pattern: "(/(.|[\\r\\n])*|id:.*)|(rev:[0-9a-f]{9,})|(ns:[0-9]+(/.*)?)")(path) + stringValidator(pattern: "(/(.|[\\r\\n])*|id:.*)|(rev:[0-9a-f]{9,})|(ns:[0-9]+(/(.|[\\r\\n])*)?)")(path) self.path = path } @@ -3476,7 +3498,7 @@ public class Files { /// The path to the file you want a temporary link to. public let path: String public init(path: String) { - stringValidator(pattern: "(/(.|[\\r\\n])*|id:.*)|(rev:[0-9a-f]{9,})|(ns:[0-9]+(/.*)?)")(path) + stringValidator(pattern: "(/(.|[\\r\\n])*|id:.*)|(rev:[0-9a-f]{9,})|(ns:[0-9]+(/(.|[\\r\\n])*)?)")(path) self.path = path } @@ -3646,8 +3668,8 @@ public class Files { /// Contains the path and other optional modifiers for the future upload commit. Equivalent to the parameters /// provided to upload. public let commitInfo: Files.CommitInfo - /// How long before this link expires, in seconds. Attempting to start an upload with this link longer than - /// this period of time after link creation will result in an error. + /// How long before this link expires, in seconds. Attempting to start an upload with this link longer than this + /// period of time after link creation will result in an error. public let duration: Double public init(commitInfo: Files.CommitInfo, duration: Double = 14_400.0) { self.commitInfo = commitInfo @@ -4146,14 +4168,17 @@ public class Files { /// A unique identifier for the file. public let path: String /// If true, the list folder operation will be applied recursively to all subfolders and the response will - /// contain contents of all subfolders. + /// contain contents of all subfolders. In some cases, setting recursive in ListFolderArg to true may + /// lead to performance issues or errors, especially when traversing folder structures with a large + /// number of items. A workaround for such cases is to set recursive in ListFolderArg to false and + /// traverse subfolders one at a time. public let recursive: Bool - /// If true, mediaInfo in FileMetadata is set for photo and video. This parameter will no longer have an effect - /// starting December 2, 2019. + /// Field is deprecated. If true, mediaInfo in FileMetadata is set for photo and video. This parameter will no + /// longer have an effect starting December 2, 2019. public let includeMediaInfo: Bool /// If true, the results will include entries for files and folders that used to exist but were deleted. public let includeDeleted: Bool - /// If true, the results will include a flag for each file indicating whether or not that file has any explicit + /// If true, the results will include a flag for each file indicating whether or not that file has any explicit /// members. public let includeHasExplicitSharedMembers: Bool /// If true, the results will include entries under mounted folders which includes app folder, shared folder and @@ -4171,6 +4196,8 @@ public class Files { public let includePropertyGroups: FileProperties.TemplateFilterBase? /// If true, include files that are not downloadable, i.e. Google Docs. public let includeNonDownloadableFiles: Bool + /// If true, each returned deleted entry will include whether that entry can be restored. + public let includeRestorableInfo: Bool public init( path: String, recursive: Bool = false, @@ -4181,9 +4208,10 @@ public class Files { limit: UInt32? = nil, sharedLink: Files.SharedLink? = nil, includePropertyGroups: FileProperties.TemplateFilterBase? = nil, - includeNonDownloadableFiles: Bool = true + includeNonDownloadableFiles: Bool = true, + includeRestorableInfo: Bool = false ) { - stringValidator(pattern: "(/(.|[\\r\\n])*)?|id:.*|(ns:[0-9]+(/.*)?)")(path) + stringValidator(pattern: "(/(.|[\\r\\n])*)?|id:.*|(ns:[0-9]+(/(.|[\\r\\n])*)?)")(path) self.path = path self.recursive = recursive self.includeMediaInfo = includeMediaInfo @@ -4195,6 +4223,7 @@ public class Files { self.sharedLink = sharedLink self.includePropertyGroups = includePropertyGroups self.includeNonDownloadableFiles = includeNonDownloadableFiles + self.includeRestorableInfo = includeRestorableInfo } func json() throws -> JSON { @@ -4224,6 +4253,7 @@ public class Files { "shared_link": try NullableSerializer(Files.SharedLinkSerializer()).serialize(value.sharedLink), "include_property_groups": try NullableSerializer(FileProperties.TemplateFilterBaseSerializer()).serialize(value.includePropertyGroups), "include_non_downloadable_files": try Serialization._BoolSerializer.serialize(value.includeNonDownloadableFiles), + "include_restorable_info": try Serialization._BoolSerializer.serialize(value.includeRestorableInfo), ] return .dictionary(output) } @@ -4235,14 +4265,15 @@ public class Files { let recursive = try Serialization._BoolSerializer.deserialize(dict["recursive"] ?? .number(0)) let includeMediaInfo = try Serialization._BoolSerializer.deserialize(dict["include_media_info"] ?? .number(0)) let includeDeleted = try Serialization._BoolSerializer.deserialize(dict["include_deleted"] ?? .number(0)) - let includeHasExplicitSharedMembers = try Serialization._BoolSerializer - .deserialize(dict["include_has_explicit_shared_members"] ?? .number(0)) + let includeHasExplicitSharedMembers = try Serialization._BoolSerializer.deserialize(dict["include_has_explicit_shared_members"] ?? .number(0)) let includeMountedFolders = try Serialization._BoolSerializer.deserialize(dict["include_mounted_folders"] ?? .number(1)) let limit = try NullableSerializer(Serialization._UInt32Serializer).deserialize(dict["limit"] ?? .null) let sharedLink = try NullableSerializer(Files.SharedLinkSerializer()).deserialize(dict["shared_link"] ?? .null) - let includePropertyGroups = try NullableSerializer(FileProperties.TemplateFilterBaseSerializer()) - .deserialize(dict["include_property_groups"] ?? .null) + let includePropertyGroups = try NullableSerializer(FileProperties.TemplateFilterBaseSerializer()).deserialize( + dict["include_property_groups"] ?? .null + ) let includeNonDownloadableFiles = try Serialization._BoolSerializer.deserialize(dict["include_non_downloadable_files"] ?? .number(1)) + let includeRestorableInfo = try Serialization._BoolSerializer.deserialize(dict["include_restorable_info"] ?? .number(0)) return ListFolderArg( path: path, recursive: recursive, @@ -4253,7 +4284,8 @@ public class Files { limit: limit, sharedLink: sharedLink, includePropertyGroups: includePropertyGroups, - includeNonDownloadableFiles: includeNonDownloadableFiles + includeNonDownloadableFiles: includeNonDownloadableFiles, + includeRestorableInfo: includeRestorableInfo ) default: throw JSONSerializerError.deserializeError(type: ListFolderArg.self, json: json) @@ -4681,12 +4713,21 @@ public class Files { public let mode: Files.ListRevisionsMode /// The maximum number of revision entries returned. public let limit: UInt64 - public init(path: String, mode: Files.ListRevisionsMode = .path, limit: UInt64 = 10) { - stringValidator(pattern: "/(.|[\\r\\n])*|id:.*|(ns:[0-9]+(/.*)?)")(path) + /// If set, ListRevisions will only return revisions prior to before_rev. Can be set using the last revision + /// from a previous call to list_revisions to fetch the next page of revisions. Only supported in path + /// mode. + public let beforeRev: String? + /// If true, each returned revision will include whether that revision can be restored. + public let includeRestorableInfo: Bool + public init(path: String, mode: Files.ListRevisionsMode = .path, limit: UInt64 = 10, beforeRev: String? = nil, includeRestorableInfo: Bool = false) { + stringValidator(pattern: "/(.|[\\r\\n])*|id:.*|(ns:[0-9]+(/(.|[\\r\\n])*)?)")(path) self.path = path self.mode = mode comparableValidator(minValue: 1, maxValue: 100)(limit) self.limit = limit + nullableValidator(stringValidator(minLength: 9, pattern: "[0-9a-f]+"))(beforeRev) + self.beforeRev = beforeRev + self.includeRestorableInfo = includeRestorableInfo } func json() throws -> JSON { @@ -4709,6 +4750,8 @@ public class Files { "path": try Serialization._StringSerializer.serialize(value.path), "mode": try Files.ListRevisionsModeSerializer().serialize(value.mode), "limit": try Serialization._UInt64Serializer.serialize(value.limit), + "before_rev": try NullableSerializer(Serialization._StringSerializer).serialize(value.beforeRev), + "include_restorable_info": try Serialization._BoolSerializer.serialize(value.includeRestorableInfo), ] return .dictionary(output) } @@ -4719,7 +4762,9 @@ public class Files { let path = try Serialization._StringSerializer.deserialize(dict["path"] ?? .null) let mode = try Files.ListRevisionsModeSerializer().deserialize(dict["mode"] ?? Files.ListRevisionsModeSerializer().serialize(.path)) let limit = try Serialization._UInt64Serializer.deserialize(dict["limit"] ?? .number(10)) - return ListRevisionsArg(path: path, mode: mode, limit: limit) + let beforeRev = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["before_rev"] ?? .null) + let includeRestorableInfo = try Serialization._BoolSerializer.deserialize(dict["include_restorable_info"] ?? .number(0)) + return ListRevisionsArg(path: path, mode: mode, limit: limit, beforeRev: beforeRev, includeRestorableInfo: includeRestorableInfo) default: throw JSONSerializerError.deserializeError(type: ListRevisionsArg.self, json: json) } @@ -4730,6 +4775,10 @@ public class Files { public enum ListRevisionsError: CustomStringConvertible, JSONRepresentable { /// An unspecified error. case path(Files.LookupError) + /// The revision in before_rev is invalid. + case invalidBeforeRev + /// The before_rev argument is only supported in path mode. + case beforeRevNotSupported /// An unspecified error. case other @@ -4754,6 +4803,14 @@ public class Files { var d = try ["path": Files.LookupErrorSerializer().serialize(arg)] d[".tag"] = .str("path") return .dictionary(d) + case .invalidBeforeRev: + var d = [String: JSON]() + d[".tag"] = .str("invalid_before_rev") + return .dictionary(d) + case .beforeRevNotSupported: + var d = [String: JSON]() + d[".tag"] = .str("before_rev_not_supported") + return .dictionary(d) case .other: var d = [String: JSON]() d[".tag"] = .str("other") @@ -4769,6 +4826,10 @@ public class Files { case "path": let v = try Files.LookupErrorSerializer().deserialize(d["path"] ?? .null) return ListRevisionsError.path(v) + case "invalid_before_rev": + return ListRevisionsError.invalidBeforeRev + case "before_rev_not_supported": + return ListRevisionsError.beforeRevNotSupported case "other": return ListRevisionsError.other default: @@ -4844,16 +4905,21 @@ public class Files { /// The ListRevisionsResult struct public class ListRevisionsResult: CustomStringConvertible, JSONRepresentable { - /// If the file identified by the latest revision in the response is either deleted or moved. + /// If the file identified by the latest revision in the response is either deleted or moved. If before_rev is + /// set, this refers to the latest revision of the file older than before_rev. public let isDeleted: Bool /// The time of deletion if the file was deleted. public let serverDeleted: Date? /// The revisions for the file. Only revisions that are not deleted will show up here. public let entries: [Files.FileMetadata] - public init(isDeleted: Bool, entries: [Files.FileMetadata], serverDeleted: Date? = nil) { + /// If true, then there are more entries available. Call list_revisions again with before_rev equal to the + /// revision of the last returned entry to retrieve the rest. + public let hasMore: Bool + public init(isDeleted: Bool, entries: [Files.FileMetadata], hasMore: Bool, serverDeleted: Date? = nil) { self.isDeleted = isDeleted self.serverDeleted = serverDeleted self.entries = entries + self.hasMore = hasMore } func json() throws -> JSON { @@ -4875,6 +4941,7 @@ public class Files { let output = [ "is_deleted": try Serialization._BoolSerializer.serialize(value.isDeleted), "entries": try ArraySerializer(Files.FileMetadataSerializer()).serialize(value.entries), + "has_more": try Serialization._BoolSerializer.serialize(value.hasMore), "server_deleted": try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).serialize(value.serverDeleted), ] return .dictionary(output) @@ -4885,8 +4952,9 @@ public class Files { case .dictionary(let dict): let isDeleted = try Serialization._BoolSerializer.deserialize(dict["is_deleted"] ?? .null) let entries = try ArraySerializer(Files.FileMetadataSerializer()).deserialize(dict["entries"] ?? .null) + let hasMore = try Serialization._BoolSerializer.deserialize(dict["has_more"] ?? .null) let serverDeleted = try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).deserialize(dict["server_deleted"] ?? .null) - return ListRevisionsResult(isDeleted: isDeleted, entries: entries, serverDeleted: serverDeleted) + return ListRevisionsResult(isDeleted: isDeleted, entries: entries, hasMore: hasMore, serverDeleted: serverDeleted) default: throw JSONSerializerError.deserializeError(type: ListRevisionsResult.self, json: json) } @@ -4939,7 +5007,7 @@ public class Files { /// Path in the user's Dropbox to a file. public let path: String public init(path: String) { - stringValidator(pattern: "(/(.|[\\r\\n])*)|(ns:[0-9]+(/.*)?)|(id:.*)")(path) + stringValidator(pattern: "(/(.|[\\r\\n])*)|(ns:[0-9]+(/(.|[\\r\\n])*)?)|(id:.*)")(path) self.path = path } @@ -5173,7 +5241,7 @@ public class Files { public class LockFileResult: CustomStringConvertible, JSONRepresentable { /// Metadata of the file. public let metadata: Files.Metadata - /// The file lock state after the operation. + /// Field is deprecated. The file lock state after the operation. public let lock: Files.FileLock public init(metadata: Files.Metadata, lock: Files.FileLock) { self.metadata = metadata @@ -5379,7 +5447,8 @@ public class Files { public enum MediaInfo: CustomStringConvertible, JSONRepresentable { /// Indicate the photo/video is still under processing and metadata is not available yet. case pending - /// The metadata for the photo/video. + /// The metadata for the photo/video. Uses MediaMetadataAbstract to preserve photo/video subtypes (e.g. + /// VideoMetadata.duration). case metadata(Files.MediaMetadata) func json() throws -> JSON { @@ -6197,7 +6266,7 @@ public class Files { /// revision of the doc or error revision_mismatch will be returned. public let paperRevision: Int64? public init(path: String, importFormat: Files.ImportFormat, docUpdatePolicy: Files.PaperDocUpdatePolicy, paperRevision: Int64? = nil) { - stringValidator(pattern: "(/(.|[\\r\\n])*)|(ns:[0-9]+(/.*)?)|(id:.*)")(path) + stringValidator(pattern: "(/(.|[\\r\\n])*)|(ns:[0-9]+(/(.|[\\r\\n])*)?)|(id:.*)")(path) self.path = path self.importFormat = importFormat self.docUpdatePolicy = docUpdatePolicy @@ -6546,10 +6615,10 @@ public class Files { public class PreviewArg: CustomStringConvertible, JSONRepresentable { /// The path of the file to preview. public let path: String - /// Please specify revision in path instead. + /// Field is deprecated. Please specify revision in path instead. public let rev: String? public init(path: String, rev: String? = nil) { - stringValidator(pattern: "(/(.|[\\r\\n])*|id:.*)|(rev:[0-9a-f]{9,})|(ns:[0-9]+(/.*)?)")(path) + stringValidator(pattern: "(/(.|[\\r\\n])*|id:.*)|(rev:[0-9a-f]{9,})|(ns:[0-9]+(/(.|[\\r\\n])*)?)")(path) self.path = path nullableValidator(stringValidator(minLength: 9, pattern: "[0-9a-f]+"))(rev) self.rev = rev @@ -6594,7 +6663,7 @@ public class Files { public enum PreviewError: CustomStringConvertible, JSONRepresentable { /// An error occurs when downloading metadata for the file. case path(Files.LookupError) - /// This preview generation is still in progress and the file is not ready for preview yet. + /// This preview generation is still in progress and the file is not ready for preview yet. case inProgress /// The file extension is not supported preview generation. case unsupportedExtension @@ -6715,9 +6784,9 @@ public class Files { /// Path in the user's Dropbox that is the destination. public let toPath: String public init(fromPath: String, toPath: String) { - stringValidator(pattern: "(/(.|[\\r\\n])*)|(ns:[0-9]+(/.*)?)|(id:.*)")(fromPath) + stringValidator(pattern: "(/(.|[\\r\\n])*)|(ns:[0-9]+(/(.|[\\r\\n])*)?)|(id:.*)")(fromPath) self.fromPath = fromPath - stringValidator(pattern: "(/(.|[\\r\\n])*)|(ns:[0-9]+(/.*)?)|(id:.*)")(toPath) + stringValidator(pattern: "(/(.|[\\r\\n])*)|(ns:[0-9]+(/(.|[\\r\\n])*)?)|(id:.*)")(toPath) self.toPath = toPath } @@ -6758,7 +6827,7 @@ public class Files { /// The RelocationArg struct public class RelocationArg: Files.RelocationPath { - /// This flag has no effect. + /// Field is deprecated. This flag has no effect. public let allowSharedFolder: Bool /// If there's a conflict, have the Dropbox server try to autorename the file to avoid the conflict. public let autorename: Bool @@ -6817,7 +6886,7 @@ public class Files { /// The RelocationBatchArg struct public class RelocationBatchArg: Files.RelocationBatchArgBase { - /// This flag has no effect. + /// Field is deprecated. This flag has no effect. public let allowSharedFolder: Bool /// Allow moves by owner even if it would result in an ownership transfer for the content being moved. This does /// not apply to copies. @@ -7850,7 +7919,7 @@ public class Files { /// The revision to restore. public let rev: String public init(path: String, rev: String) { - stringValidator(pattern: "(/(.|[\\r\\n])*)|(ns:[0-9]+(/.*)?)")(path) + stringValidator(pattern: "(/(.|[\\r\\n])*)|(ns:[0-9]+(/(.|[\\r\\n])*)?)")(path) self.path = path stringValidator(minLength: 9, pattern: "[0-9a-f]+")(rev) self.rev = rev @@ -8198,8 +8267,8 @@ public class Files { public enum SaveUrlError: CustomStringConvertible, JSONRepresentable { /// An unspecified error. case path(Files.WriteError) - /// Failed downloading the given URL. The URL may be password-protected and the password provided was - /// incorrect, or the link may be disabled. + /// Failed downloading the given URL. The URL may be password-protected and the password provided was incorrect, + /// or the link may be disabled. case downloadFailed /// The given URL is invalid. case invalidUrl @@ -8408,7 +8477,7 @@ public class Files { /// only available for Dropbox Business accounts. public let mode: Files.SearchMode public init(path: String, query: String, start: UInt64 = 0, maxResults: UInt64 = 100, mode: Files.SearchMode = .filename) { - stringValidator(pattern: "(/(.|[\\r\\n])*)?|id:.*|(ns:[0-9]+(/.*)?)")(path) + stringValidator(pattern: "(/(.|[\\r\\n])*)?|id:.*|(ns:[0-9]+(/(.|[\\r\\n])*)?)")(path) self.path = path stringValidator(maxLength: 1_000)(query) self.query = query @@ -8689,6 +8758,8 @@ public class Files { case filenameAndContent /// This item was matched on image content. case imageContent + /// This item was matched based on its metadata. + case metadata /// An unspecified error. case other @@ -8725,6 +8796,10 @@ public class Files { var d = [String: JSON]() d[".tag"] = .str("image_content") return .dictionary(d) + case .metadata: + var d = [String: JSON]() + d[".tag"] = .str("metadata") + return .dictionary(d) case .other: var d = [String: JSON]() d[".tag"] = .str("other") @@ -8745,6 +8820,8 @@ public class Files { return SearchMatchTypeV2.filenameAndContent case "image_content": return SearchMatchTypeV2.imageContent + case "metadata": + return SearchMatchTypeV2.metadata case "other": return SearchMatchTypeV2.other default: @@ -8896,7 +8973,7 @@ public class Files { fileCategories: [Files.FileCategory]? = nil, accountId: String? = nil ) { - nullableValidator(stringValidator(pattern: "(/(.|[\\r\\n])*)?|id:.*|(ns:[0-9]+(/.*)?)"))(path) + nullableValidator(stringValidator(pattern: "(/(.|[\\r\\n])*)?|id:.*|(ns:[0-9]+(/(.|[\\r\\n])*)?)"))(path) self.path = path comparableValidator(minValue: 1, maxValue: 1_000)(maxResults) self.maxResults = maxResults @@ -9088,14 +9165,9 @@ public class Files { public let options: Files.SearchOptions? /// Options for search results match fields. public let matchFieldOptions: Files.SearchMatchFieldOptions? - /// Deprecated and moved this option to SearchMatchFieldOptions. + /// Field is deprecated. Deprecated and moved this option to SearchMatchFieldOptions. public let includeHighlights: Bool? - public init( - query: String, - options: Files.SearchOptions? = nil, - matchFieldOptions: Files.SearchMatchFieldOptions? = nil, - includeHighlights: Bool? = nil - ) { + public init(query: String, options: Files.SearchOptions? = nil, matchFieldOptions: Files.SearchMatchFieldOptions? = nil, includeHighlights: Bool? = nil) { stringValidator(maxLength: 1_000)(query) self.query = query self.options = options @@ -9292,7 +9364,7 @@ public class Files { public let url: String /// The path corresponding to a file in a shared link to a folder. Required for shared links to folders. public let path: String? - /// Password for the shared link. Required for password-protected shared links to files unless it can be read + /// Password for the shared link. Required for password-protected shared links to files unless it can be read /// from a cookie. public let password: String? public init(url: String, path: String? = nil, password: String? = nil) { @@ -9697,19 +9769,33 @@ public class Files { public class ThumbnailArg: CustomStringConvertible, JSONRepresentable { /// The path to the image file you want to thumbnail. public let path: String - /// The format for the thumbnail image, jpeg (default) or png. For images that are photos, jpeg should be - /// preferred, while png is better for screenshots and digital arts. + /// The format for the thumbnail image, jpeg (default), png, or webp. For images that are photos, jpeg should be + /// preferred, while png is better for screenshots and digital arts, and web for compression. public let format: Files.ThumbnailFormat /// The size for the thumbnail image. public let size: Files.ThumbnailSize /// How to resize and crop the image to achieve the desired size. public let mode: Files.ThumbnailMode - public init(path: String, format: Files.ThumbnailFormat = .jpeg, size: Files.ThumbnailSize = .w64h64, mode: Files.ThumbnailMode = .strict) { - stringValidator(pattern: "(/(.|[\\r\\n])*|id:.*)|(rev:[0-9a-f]{9,})|(ns:[0-9]+(/.*)?)")(path) + /// Field is only returned for "internal" callers. Quality of the thumbnail image. + public let quality: Files.ThumbnailQuality + /// Normally, mediaInfo in FileMetadata is set for photo and video. When this flag is true, mediaInfo in + /// FileMetadata is not populated. This improves latency for use cases where `media_info` is not needed. + public let excludeMediaInfo: Bool? + public init( + path: String, + format: Files.ThumbnailFormat = .jpeg, + size: Files.ThumbnailSize = .w64h64, + mode: Files.ThumbnailMode = .strict, + quality: Files.ThumbnailQuality = .quality80, + excludeMediaInfo: Bool? = nil + ) { + stringValidator(pattern: "(/(.|[\\r\\n])*|id:.*)|(rev:[0-9a-f]{9,})|(ns:[0-9]+(/(.|[\\r\\n])*)?)")(path) self.path = path self.format = format self.size = size self.mode = mode + self.quality = quality + self.excludeMediaInfo = excludeMediaInfo } func json() throws -> JSON { @@ -9733,6 +9819,8 @@ public class Files { "format": try Files.ThumbnailFormatSerializer().serialize(value.format), "size": try Files.ThumbnailSizeSerializer().serialize(value.size), "mode": try Files.ThumbnailModeSerializer().serialize(value.mode), + "quality": try Files.ThumbnailQualitySerializer().serialize(value.quality), + "exclude_media_info": try NullableSerializer(Serialization._BoolSerializer).serialize(value.excludeMediaInfo), ] return .dictionary(output) } @@ -9744,7 +9832,9 @@ public class Files { let format = try Files.ThumbnailFormatSerializer().deserialize(dict["format"] ?? Files.ThumbnailFormatSerializer().serialize(.jpeg)) let size = try Files.ThumbnailSizeSerializer().deserialize(dict["size"] ?? Files.ThumbnailSizeSerializer().serialize(.w64h64)) let mode = try Files.ThumbnailModeSerializer().deserialize(dict["mode"] ?? Files.ThumbnailModeSerializer().serialize(.strict)) - return ThumbnailArg(path: path, format: format, size: size, mode: mode) + let quality = try Files.ThumbnailQualitySerializer().deserialize(dict["quality"] ?? Files.ThumbnailQualitySerializer().serialize(.quality80)) + let excludeMediaInfo = try NullableSerializer(Serialization._BoolSerializer).deserialize(dict["exclude_media_info"] ?? .null) + return ThumbnailArg(path: path, format: format, size: size, mode: mode, quality: quality, excludeMediaInfo: excludeMediaInfo) default: throw JSONSerializerError.deserializeError(type: ThumbnailArg.self, json: json) } @@ -9759,6 +9849,8 @@ public class Files { case unsupportedExtension /// The image cannot be converted to a thumbnail. case unsupportedImage + /// Encrypted content cannot be converted to a thumbnail. + case encryptedContent /// An error occurs during thumbnail conversion. case conversionError @@ -9791,6 +9883,10 @@ public class Files { var d = [String: JSON]() d[".tag"] = .str("unsupported_image") return .dictionary(d) + case .encryptedContent: + var d = [String: JSON]() + d[".tag"] = .str("encrypted_content") + return .dictionary(d) case .conversionError: var d = [String: JSON]() d[".tag"] = .str("conversion_error") @@ -9810,6 +9906,8 @@ public class Files { return ThumbnailError.unsupportedExtension case "unsupported_image": return ThumbnailError.unsupportedImage + case "encrypted_content": + return ThumbnailError.encryptedContent case "conversion_error": return ThumbnailError.conversionError default: @@ -9827,6 +9925,8 @@ public class Files { case jpeg /// An unspecified error. case png + /// An unspecified error. + case webp func json() throws -> JSON { try ThumbnailFormatSerializer().serialize(self) @@ -9853,6 +9953,10 @@ public class Files { var d = [String: JSON]() d[".tag"] = .str("png") return .dictionary(d) + case .webp: + var d = [String: JSON]() + d[".tag"] = .str("webp") + return .dictionary(d) } } @@ -9865,6 +9969,8 @@ public class Files { return ThumbnailFormat.jpeg case "png": return ThumbnailFormat.png + case "webp": + return ThumbnailFormat.webp default: throw JSONSerializerError.unknownTag(type: ThumbnailFormat.self, json: json, tag: tag) } @@ -9882,6 +9988,8 @@ public class Files { case bestfit /// Scale down the image to completely cover the given size or its transpose. case fitoneBestfit + /// Don't resize the image at all. + case original func json() throws -> JSON { try ThumbnailModeSerializer().serialize(self) @@ -9912,6 +10020,10 @@ public class Files { var d = [String: JSON]() d[".tag"] = .str("fitone_bestfit") return .dictionary(d) + case .original: + var d = [String: JSON]() + d[".tag"] = .str("original") + return .dictionary(d) } } @@ -9926,6 +10038,8 @@ public class Files { return ThumbnailMode.bestfit case "fitone_bestfit": return ThumbnailMode.fitoneBestfit + case "original": + return ThumbnailMode.original default: throw JSONSerializerError.unknownTag(type: ThumbnailMode.self, json: json, tag: tag) } @@ -9935,6 +10049,59 @@ public class Files { } } + /// The ThumbnailQuality union + public enum ThumbnailQuality: CustomStringConvertible, JSONRepresentable { + /// default thumbnail quality. + case quality80 + /// high thumbnail quality. + case quality90 + + func json() throws -> JSON { + try ThumbnailQualitySerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try ThumbnailQualitySerializer().serialize(self)))" + } catch { + return "Failed to generate description for ThumbnailQuality: \(error)" + } + } + } + + public class ThumbnailQualitySerializer: JSONSerializer { + public init() {} + public func serialize(_ value: ThumbnailQuality) throws -> JSON { + switch value { + case .quality80: + var d = [String: JSON]() + d[".tag"] = .str("quality_80") + return .dictionary(d) + case .quality90: + var d = [String: JSON]() + d[".tag"] = .str("quality_90") + return .dictionary(d) + } + } + + public func deserialize(_ json: JSON) throws -> ThumbnailQuality { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "quality_80": + return ThumbnailQuality.quality80 + case "quality_90": + return ThumbnailQuality.quality90 + default: + throw JSONSerializerError.unknownTag(type: ThumbnailQuality.self, json: json, tag: tag) + } + default: + throw JSONSerializerError.deserializeError(type: ThumbnailQuality.self, json: json) + } + } + } + /// The ThumbnailSize union public enum ThumbnailSize: CustomStringConvertible, JSONRepresentable { /// 32 by 32 px. @@ -9955,6 +10122,8 @@ public class Files { case w1024h768 /// 2048 by 1536 px. case w2048h1536 + /// Field is only returned for "internal" callers. 3200 by 2400 px. + case w3200h2400 func json() throws -> JSON { try ThumbnailSizeSerializer().serialize(self) @@ -10009,6 +10178,10 @@ public class Files { var d = [String: JSON]() d[".tag"] = .str("w2048h1536") return .dictionary(d) + case .w3200h2400: + var d = [String: JSON]() + d[".tag"] = .str("w3200h2400") + return .dictionary(d) } } @@ -10035,6 +10208,8 @@ public class Files { return ThumbnailSize.w1024h768 case "w2048h1536": return ThumbnailSize.w2048h1536 + case "w3200h2400": + return ThumbnailSize.w3200h2400 default: throw JSONSerializerError.unknownTag(type: ThumbnailSize.self, json: json, tag: tag) } @@ -10049,23 +10224,32 @@ public class Files { /// Information specifying which file to preview. This could be a path to a file, a shared link pointing to a /// file, or a shared link pointing to a folder, with a relative path. public let resource: Files.PathOrLink - /// The format for the thumbnail image, jpeg (default) or png. For images that are photos, jpeg should be - /// preferred, while png is better for screenshots and digital arts. + /// The format for the thumbnail image, jpeg (default), png, or webp. For images that are photos, jpeg should be + /// preferred, while png is better for screenshots and digital arts, and web for compression. public let format: Files.ThumbnailFormat /// The size for the thumbnail image. public let size: Files.ThumbnailSize /// How to resize and crop the image to achieve the desired size. public let mode: Files.ThumbnailMode + /// Field is only returned for "internal" callers. Quality of the thumbnail image. + public let quality: Files.ThumbnailQuality + /// Normally, mediaInfo in FileMetadata is set for photo and video. When this flag is true, mediaInfo in + /// FileMetadata is not populated. This improves latency for use cases where `media_info` is not needed. + public let excludeMediaInfo: Bool? public init( resource: Files.PathOrLink, format: Files.ThumbnailFormat = .jpeg, size: Files.ThumbnailSize = .w64h64, - mode: Files.ThumbnailMode = .strict + mode: Files.ThumbnailMode = .strict, + quality: Files.ThumbnailQuality = .quality80, + excludeMediaInfo: Bool? = nil ) { self.resource = resource self.format = format self.size = size self.mode = mode + self.quality = quality + self.excludeMediaInfo = excludeMediaInfo } func json() throws -> JSON { @@ -10089,6 +10273,8 @@ public class Files { "format": try Files.ThumbnailFormatSerializer().serialize(value.format), "size": try Files.ThumbnailSizeSerializer().serialize(value.size), "mode": try Files.ThumbnailModeSerializer().serialize(value.mode), + "quality": try Files.ThumbnailQualitySerializer().serialize(value.quality), + "exclude_media_info": try NullableSerializer(Serialization._BoolSerializer).serialize(value.excludeMediaInfo), ] return .dictionary(output) } @@ -10100,7 +10286,9 @@ public class Files { let format = try Files.ThumbnailFormatSerializer().deserialize(dict["format"] ?? Files.ThumbnailFormatSerializer().serialize(.jpeg)) let size = try Files.ThumbnailSizeSerializer().deserialize(dict["size"] ?? Files.ThumbnailSizeSerializer().serialize(.w64h64)) let mode = try Files.ThumbnailModeSerializer().deserialize(dict["mode"] ?? Files.ThumbnailModeSerializer().serialize(.strict)) - return ThumbnailV2Arg(resource: resource, format: format, size: size, mode: mode) + let quality = try Files.ThumbnailQualitySerializer().deserialize(dict["quality"] ?? Files.ThumbnailQualitySerializer().serialize(.quality80)) + let excludeMediaInfo = try NullableSerializer(Serialization._BoolSerializer).deserialize(dict["exclude_media_info"] ?? .null) + return ThumbnailV2Arg(resource: resource, format: format, size: size, mode: mode, quality: quality, excludeMediaInfo: excludeMediaInfo) default: throw JSONSerializerError.deserializeError(type: ThumbnailV2Arg.self, json: json) } @@ -10115,6 +10303,8 @@ public class Files { case unsupportedExtension /// The image cannot be converted to a thumbnail. case unsupportedImage + /// Encrypted content cannot be converted to a thumbnail. + case encryptedContent /// An error occurred during thumbnail conversion. case conversionError /// Access to this shared link is forbidden. @@ -10153,6 +10343,10 @@ public class Files { var d = [String: JSON]() d[".tag"] = .str("unsupported_image") return .dictionary(d) + case .encryptedContent: + var d = [String: JSON]() + d[".tag"] = .str("encrypted_content") + return .dictionary(d) case .conversionError: var d = [String: JSON]() d[".tag"] = .str("conversion_error") @@ -10184,6 +10378,8 @@ public class Files { return ThumbnailV2Error.unsupportedExtension case "unsupported_image": return ThumbnailV2Error.unsupportedImage + case "encrypted_content": + return ThumbnailV2Error.encryptedContent case "conversion_error": return ThumbnailV2Error.conversionError case "access_denied": @@ -10206,7 +10402,7 @@ public class Files { /// Path in the user's Dropbox to a file. public let path: String public init(path: String) { - stringValidator(pattern: "(/(.|[\\r\\n])*)|(ns:[0-9]+(/.*)?)|(id:.*)")(path) + stringValidator(pattern: "(/(.|[\\r\\n])*)|(ns:[0-9]+(/(.|[\\r\\n])*)?)|(id:.*)")(path) self.path = path } @@ -10347,8 +10543,9 @@ public class Files { let autorename = try Serialization._BoolSerializer.deserialize(dict["autorename"] ?? .number(0)) let clientModified = try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).deserialize(dict["client_modified"] ?? .null) let mute = try Serialization._BoolSerializer.deserialize(dict["mute"] ?? .number(0)) - let propertyGroups = try NullableSerializer(ArraySerializer(FileProperties.PropertyGroupSerializer())) - .deserialize(dict["property_groups"] ?? .null) + let propertyGroups = try NullableSerializer(ArraySerializer(FileProperties.PropertyGroupSerializer())).deserialize( + dict["property_groups"] ?? .null + ) let strictConflict = try Serialization._BoolSerializer.deserialize(dict["strict_conflict"] ?? .number(0)) let contentHash = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["content_hash"] ?? .null) return UploadArg( @@ -10373,10 +10570,12 @@ public class Files { case path(Files.UploadWriteFailed) /// The supplied property group is invalid. The file has uploaded without property groups. case propertiesError(FileProperties.InvalidPropertyGroupError) - /// The request payload must be at most 150 MB. + /// The request payload must be at most 150 MiB. case payloadTooLarge /// The content received by the Dropbox server in this call does not match the provided content hash. case contentHashMismatch + /// The file is required to be encrypted, which is not supported in our public API. + case encryptionNotSupported /// An unspecified error. case other @@ -10413,6 +10612,10 @@ public class Files { var d = [String: JSON]() d[".tag"] = .str("content_hash_mismatch") return .dictionary(d) + case .encryptionNotSupported: + var d = [String: JSON]() + d[".tag"] = .str("encryption_not_supported") + return .dictionary(d) case .other: var d = [String: JSON]() d[".tag"] = .str("other") @@ -10435,6 +10638,8 @@ public class Files { return UploadError.payloadTooLarge case "content_hash_mismatch": return UploadError.contentHashMismatch + case "encryption_not_supported": + return UploadError.encryptionNotSupported case "other": return UploadError.other default: @@ -10501,8 +10706,112 @@ public class Files { } } - /// The UploadSessionLookupError union - public enum UploadSessionLookupError: CustomStringConvertible, JSONRepresentable { + /// The UploadSessionAppendBatchArg struct + public class UploadSessionAppendBatchArg: CustomStringConvertible, JSONRepresentable { + /// Append information for each file in the batch. + public let entries: [Files.UploadSessionAppendBatchArgEntry] + /// A hash of the entire request body which is all the concatenated pieces of file content that were uploaded in + /// this call. If provided and the uploaded content does not match this hash, an error will be returned. + /// For more information see our Content hash https://www.dropbox.com/developers/reference/content-hash + /// page. + public let contentHash: String? + public init(entries: [Files.UploadSessionAppendBatchArgEntry], contentHash: String? = nil) { + self.entries = entries + nullableValidator(stringValidator(minLength: 64, maxLength: 64))(contentHash) + self.contentHash = contentHash + } + + func json() throws -> JSON { + try UploadSessionAppendBatchArgSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try UploadSessionAppendBatchArgSerializer().serialize(self)))" + } catch { + return "Failed to generate description for UploadSessionAppendBatchArg: \(error)" + } + } + } + + public class UploadSessionAppendBatchArgSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: UploadSessionAppendBatchArg) throws -> JSON { + let output = [ + "entries": try ArraySerializer(Files.UploadSessionAppendBatchArgEntrySerializer()).serialize(value.entries), + "content_hash": try NullableSerializer(Serialization._StringSerializer).serialize(value.contentHash), + ] + return .dictionary(output) + } + + public func deserialize(_ json: JSON) throws -> UploadSessionAppendBatchArg { + switch json { + case .dictionary(let dict): + let entries = try ArraySerializer(Files.UploadSessionAppendBatchArgEntrySerializer()).deserialize(dict["entries"] ?? .null) + let contentHash = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["content_hash"] ?? .null) + return UploadSessionAppendBatchArg(entries: entries, contentHash: contentHash) + default: + throw JSONSerializerError.deserializeError(type: UploadSessionAppendBatchArg.self, json: json) + } + } + } + + /// The UploadSessionAppendBatchArgEntry struct + public class UploadSessionAppendBatchArgEntry: CustomStringConvertible, JSONRepresentable { + /// Contains the upload session ID and the offset. + public let cursor: Files.UploadSessionCursor + /// Length in bytes of the data that should be appended for this session. Used to split the batched upload data + /// for multiple upload sessions. + public let length: UInt64 + /// If true, the current session will be closed, at which point you won't be able to call + /// uploadSessionAppendBatch anymore with the current session. + public let close: Bool + public init(cursor: Files.UploadSessionCursor, length: UInt64, close: Bool = false) { + self.cursor = cursor + comparableValidator()(length) + self.length = length + self.close = close + } + + func json() throws -> JSON { + try UploadSessionAppendBatchArgEntrySerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try UploadSessionAppendBatchArgEntrySerializer().serialize(self)))" + } catch { + return "Failed to generate description for UploadSessionAppendBatchArgEntry: \(error)" + } + } + } + + public class UploadSessionAppendBatchArgEntrySerializer: JSONSerializer { + public init() {} + public func serialize(_ value: UploadSessionAppendBatchArgEntry) throws -> JSON { + let output = [ + "cursor": try Files.UploadSessionCursorSerializer().serialize(value.cursor), + "length": try Serialization._UInt64Serializer.serialize(value.length), + "close": try Serialization._BoolSerializer.serialize(value.close), + ] + return .dictionary(output) + } + + public func deserialize(_ json: JSON) throws -> UploadSessionAppendBatchArgEntry { + switch json { + case .dictionary(let dict): + let cursor = try Files.UploadSessionCursorSerializer().deserialize(dict["cursor"] ?? .null) + let length = try Serialization._UInt64Serializer.deserialize(dict["length"] ?? .null) + let close = try Serialization._BoolSerializer.deserialize(dict["close"] ?? .number(0)) + return UploadSessionAppendBatchArgEntry(cursor: cursor, length: length, close: close) + default: + throw JSONSerializerError.deserializeError(type: UploadSessionAppendBatchArgEntry.self, json: json) + } + } + } + + /// The UploadSessionAppendBatchEntryError union + public enum UploadSessionAppendBatchEntryError: CustomStringConvertible, JSONRepresentable { /// The upload session ID was not found or has expired. Upload sessions are valid for 7 days. case notFound /// The specified offset was incorrect. See the value for the correct offset. This error may occur when a @@ -10511,36 +10820,32 @@ public class Files { case incorrectOffset(Files.UploadSessionOffsetError) /// You are attempting to append data to an upload session that has already been closed (i.e. committed). case closed - /// The session must be closed before calling upload_session/finish_batch. - case notClosed - /// You can not append to the upload session because the size of a file should not reach the max file size limit - /// (i.e. 350GB). + /// You can not append to the upload session because the size of a file should not exceed the max file size + /// limit (i.e. 2^41 - 2^22 or 2,199,019,061,248 bytes). case tooLarge - /// For concurrent upload sessions, offset needs to be multiple of 4194304 bytes. + /// For concurrent upload sessions, offset needs to be multiple of 2^22 (4,194,304) bytes. case concurrentSessionInvalidOffset - /// For concurrent upload sessions, only chunks with size multiple of 4194304 bytes can be uploaded. + /// For concurrent upload sessions, only chunks with size multiple of 2^22 (4,194,304) bytes can be uploaded. case concurrentSessionInvalidDataSize - /// The request payload must be at most 150 MB. - case payloadTooLarge /// An unspecified error. case other func json() throws -> JSON { - try UploadSessionLookupErrorSerializer().serialize(self) + try UploadSessionAppendBatchEntryErrorSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try UploadSessionLookupErrorSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try UploadSessionAppendBatchEntryErrorSerializer().serialize(self)))" } catch { - return "Failed to generate description for UploadSessionLookupError: \(error)" + return "Failed to generate description for UploadSessionAppendBatchEntryError: \(error)" } } } - public class UploadSessionLookupErrorSerializer: JSONSerializer { + public class UploadSessionAppendBatchEntryErrorSerializer: JSONSerializer { public init() {} - public func serialize(_ value: UploadSessionLookupError) throws -> JSON { + public func serialize(_ value: UploadSessionAppendBatchEntryError) throws -> JSON { switch value { case .notFound: var d = [String: JSON]() @@ -10554,10 +10859,6 @@ public class Files { var d = [String: JSON]() d[".tag"] = .str("closed") return .dictionary(d) - case .notClosed: - var d = [String: JSON]() - d[".tag"] = .str("not_closed") - return .dictionary(d) case .tooLarge: var d = [String: JSON]() d[".tag"] = .str("too_large") @@ -10570,10 +10871,6 @@ public class Files { var d = [String: JSON]() d[".tag"] = .str("concurrent_session_invalid_data_size") return .dictionary(d) - case .payloadTooLarge: - var d = [String: JSON]() - d[".tag"] = .str("payload_too_large") - return .dictionary(d) case .other: var d = [String: JSON]() d[".tag"] = .str("other") @@ -10581,35 +10878,197 @@ public class Files { } } - public func deserialize(_ json: JSON) throws -> UploadSessionLookupError { + public func deserialize(_ json: JSON) throws -> UploadSessionAppendBatchEntryError { switch json { case .dictionary(let d): let tag = try Serialization.getTag(d) switch tag { case "not_found": - return UploadSessionLookupError.notFound + return UploadSessionAppendBatchEntryError.notFound case "incorrect_offset": let v = try Files.UploadSessionOffsetErrorSerializer().deserialize(json) - return UploadSessionLookupError.incorrectOffset(v) + return UploadSessionAppendBatchEntryError.incorrectOffset(v) case "closed": - return UploadSessionLookupError.closed - case "not_closed": - return UploadSessionLookupError.notClosed + return UploadSessionAppendBatchEntryError.closed case "too_large": - return UploadSessionLookupError.tooLarge + return UploadSessionAppendBatchEntryError.tooLarge case "concurrent_session_invalid_offset": - return UploadSessionLookupError.concurrentSessionInvalidOffset + return UploadSessionAppendBatchEntryError.concurrentSessionInvalidOffset case "concurrent_session_invalid_data_size": - return UploadSessionLookupError.concurrentSessionInvalidDataSize + return UploadSessionAppendBatchEntryError.concurrentSessionInvalidDataSize + case "other": + return UploadSessionAppendBatchEntryError.other + default: + return UploadSessionAppendBatchEntryError.other + } + default: + throw JSONSerializerError.deserializeError(type: UploadSessionAppendBatchEntryError.self, json: json) + } + } + } + + /// The UploadSessionAppendBatchError union + public enum UploadSessionAppendBatchError: CustomStringConvertible, JSONRepresentable { + /// The request payload must be at most 150 MiB. + case payloadTooLarge + /// The content received by the Dropbox server in this call does not match the provided content hash. + case contentHashMismatch + /// The total length of the content received by the Dropbox server in this call does not match the total of the + /// provided lengths in the batch arguments. + case lengthMismatch + /// An unspecified error. + case other + + func json() throws -> JSON { + try UploadSessionAppendBatchErrorSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try UploadSessionAppendBatchErrorSerializer().serialize(self)))" + } catch { + return "Failed to generate description for UploadSessionAppendBatchError: \(error)" + } + } + } + + public class UploadSessionAppendBatchErrorSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: UploadSessionAppendBatchError) throws -> JSON { + switch value { + case .payloadTooLarge: + var d = [String: JSON]() + d[".tag"] = .str("payload_too_large") + return .dictionary(d) + case .contentHashMismatch: + var d = [String: JSON]() + d[".tag"] = .str("content_hash_mismatch") + return .dictionary(d) + case .lengthMismatch: + var d = [String: JSON]() + d[".tag"] = .str("length_mismatch") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + + public func deserialize(_ json: JSON) throws -> UploadSessionAppendBatchError { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { case "payload_too_large": - return UploadSessionLookupError.payloadTooLarge + return UploadSessionAppendBatchError.payloadTooLarge + case "content_hash_mismatch": + return UploadSessionAppendBatchError.contentHashMismatch + case "length_mismatch": + return UploadSessionAppendBatchError.lengthMismatch case "other": - return UploadSessionLookupError.other + return UploadSessionAppendBatchError.other default: - return UploadSessionLookupError.other + return UploadSessionAppendBatchError.other } default: - throw JSONSerializerError.deserializeError(type: UploadSessionLookupError.self, json: json) + throw JSONSerializerError.deserializeError(type: UploadSessionAppendBatchError.self, json: json) + } + } + } + + /// The UploadSessionAppendBatchResult struct + public class UploadSessionAppendBatchResult: CustomStringConvertible, JSONRepresentable { + /// Each entry in entries in UploadSessionAppendBatchArg will appear at the same position inside entries in + /// UploadSessionAppendBatchResult. + public let entries: [Files.UploadSessionAppendBatchResultEntry] + public init(entries: [Files.UploadSessionAppendBatchResultEntry]) { + self.entries = entries + } + + func json() throws -> JSON { + try UploadSessionAppendBatchResultSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try UploadSessionAppendBatchResultSerializer().serialize(self)))" + } catch { + return "Failed to generate description for UploadSessionAppendBatchResult: \(error)" + } + } + } + + public class UploadSessionAppendBatchResultSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: UploadSessionAppendBatchResult) throws -> JSON { + let output = [ + "entries": try ArraySerializer(Files.UploadSessionAppendBatchResultEntrySerializer()).serialize(value.entries), + ] + return .dictionary(output) + } + + public func deserialize(_ json: JSON) throws -> UploadSessionAppendBatchResult { + switch json { + case .dictionary(let dict): + let entries = try ArraySerializer(Files.UploadSessionAppendBatchResultEntrySerializer()).deserialize(dict["entries"] ?? .null) + return UploadSessionAppendBatchResult(entries: entries) + default: + throw JSONSerializerError.deserializeError(type: UploadSessionAppendBatchResult.self, json: json) + } + } + } + + /// The UploadSessionAppendBatchResultEntry union + public enum UploadSessionAppendBatchResultEntry: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case success + /// An unspecified error. + case failure(Files.UploadSessionAppendBatchEntryError) + + func json() throws -> JSON { + try UploadSessionAppendBatchResultEntrySerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try UploadSessionAppendBatchResultEntrySerializer().serialize(self)))" + } catch { + return "Failed to generate description for UploadSessionAppendBatchResultEntry: \(error)" + } + } + } + + public class UploadSessionAppendBatchResultEntrySerializer: JSONSerializer { + public init() {} + public func serialize(_ value: UploadSessionAppendBatchResultEntry) throws -> JSON { + switch value { + case .success: + var d = [String: JSON]() + d[".tag"] = .str("success") + return .dictionary(d) + case .failure(let arg): + var d = try ["failure": Files.UploadSessionAppendBatchEntryErrorSerializer().serialize(arg)] + d[".tag"] = .str("failure") + return .dictionary(d) + } + } + + public func deserialize(_ json: JSON) throws -> UploadSessionAppendBatchResultEntry { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "success": + return UploadSessionAppendBatchResultEntry.success + case "failure": + let v = try Files.UploadSessionAppendBatchEntryErrorSerializer().deserialize(d["failure"] ?? .null) + return UploadSessionAppendBatchResultEntry.failure(v) + default: + throw JSONSerializerError.unknownTag(type: UploadSessionAppendBatchResultEntry.self, json: json, tag: tag) + } + default: + throw JSONSerializerError.deserializeError(type: UploadSessionAppendBatchResultEntry.self, json: json) } } } @@ -10624,21 +11083,19 @@ public class Files { case incorrectOffset(Files.UploadSessionOffsetError) /// You are attempting to append data to an upload session that has already been closed (i.e. committed). case closed - /// The session must be closed before calling upload_session/finish_batch. - case notClosed - /// You can not append to the upload session because the size of a file should not reach the max file size limit - /// (i.e. 350GB). + /// You can not append to the upload session because the size of a file should not exceed the max file size + /// limit (i.e. 2^41 - 2^22 or 2,199,019,061,248 bytes). case tooLarge - /// For concurrent upload sessions, offset needs to be multiple of 4194304 bytes. + /// For concurrent upload sessions, offset needs to be multiple of 2^22 (4,194,304) bytes. case concurrentSessionInvalidOffset - /// For concurrent upload sessions, only chunks with size multiple of 4194304 bytes can be uploaded. + /// For concurrent upload sessions, only chunks with size multiple of 2^22 (4,194,304) bytes can be uploaded. case concurrentSessionInvalidDataSize - /// The request payload must be at most 150 MB. + /// The request payload must be at most 150 MiB. case payloadTooLarge - /// An unspecified error. - case other /// The content received by the Dropbox server in this call does not match the provided content hash. case contentHashMismatch + /// An unspecified error. + case other func json() throws -> JSON { try UploadSessionAppendErrorSerializer().serialize(self) @@ -10669,10 +11126,6 @@ public class Files { var d = [String: JSON]() d[".tag"] = .str("closed") return .dictionary(d) - case .notClosed: - var d = [String: JSON]() - d[".tag"] = .str("not_closed") - return .dictionary(d) case .tooLarge: var d = [String: JSON]() d[".tag"] = .str("too_large") @@ -10689,14 +11142,14 @@ public class Files { var d = [String: JSON]() d[".tag"] = .str("payload_too_large") return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) case .contentHashMismatch: var d = [String: JSON]() d[".tag"] = .str("content_hash_mismatch") return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) } } @@ -10712,8 +11165,6 @@ public class Files { return UploadSessionAppendError.incorrectOffset(v) case "closed": return UploadSessionAppendError.closed - case "not_closed": - return UploadSessionAppendError.notClosed case "too_large": return UploadSessionAppendError.tooLarge case "concurrent_session_invalid_offset": @@ -10722,12 +11173,12 @@ public class Files { return UploadSessionAppendError.concurrentSessionInvalidDataSize case "payload_too_large": return UploadSessionAppendError.payloadTooLarge - case "other": - return UploadSessionAppendError.other case "content_hash_mismatch": return UploadSessionAppendError.contentHashMismatch + case "other": + return UploadSessionAppendError.other default: - throw JSONSerializerError.unknownTag(type: UploadSessionAppendError.self, json: json, tag: tag) + return UploadSessionAppendError.other } default: throw JSONSerializerError.deserializeError(type: UploadSessionAppendError.self, json: json) @@ -11104,8 +11555,8 @@ public class Files { case path(Files.WriteError) /// The supplied property group is invalid. The file has uploaded without property groups. case propertiesError(FileProperties.InvalidPropertyGroupError) - /// The batch request commits files into too many different shared folders. Please limit your batch request to - /// files contained in a single shared folder. + /// Field is deprecated. The batch request commits files into too many different shared folders. Please limit + /// your batch request to files contained in a single shared folder. case tooManySharedFolderTargets /// There are too many write operations happening in the user's Dropbox. You should retry uploading this file. case tooManyWriteOperations @@ -11115,10 +11566,12 @@ public class Files { case concurrentSessionNotClosed /// Not all pieces of data were uploaded before trying to finish the session. case concurrentSessionMissingData - /// The request payload must be at most 150 MB. + /// The request payload must be at most 150 MiB. case payloadTooLarge /// The content received by the Dropbox server in this call does not match the provided content hash. case contentHashMismatch + /// The file is required to be encrypted, which is not supported in our public API. + case encryptionNotSupported /// An unspecified error. case other @@ -11179,6 +11632,10 @@ public class Files { var d = [String: JSON]() d[".tag"] = .str("content_hash_mismatch") return .dictionary(d) + case .encryptionNotSupported: + var d = [String: JSON]() + d[".tag"] = .str("encryption_not_supported") + return .dictionary(d) case .other: var d = [String: JSON]() d[".tag"] = .str("other") @@ -11214,6 +11671,8 @@ public class Files { return UploadSessionFinishError.payloadTooLarge case "content_hash_mismatch": return UploadSessionFinishError.contentHashMismatch + case "encryption_not_supported": + return UploadSessionFinishError.encryptionNotSupported case "other": return UploadSessionFinishError.other default: @@ -11225,6 +11684,119 @@ public class Files { } } + /// The UploadSessionLookupError union + public enum UploadSessionLookupError: CustomStringConvertible, JSONRepresentable { + /// The upload session ID was not found or has expired. Upload sessions are valid for 7 days. + case notFound + /// The specified offset was incorrect. See the value for the correct offset. This error may occur when a + /// previous request was received and processed successfully but the client did not receive the + /// response, e.g. due to a network error. + case incorrectOffset(Files.UploadSessionOffsetError) + /// You are attempting to append data to an upload session that has already been closed (i.e. committed). + case closed + /// The session must be closed before calling upload_session/finish_batch. + case notClosed + /// You can not append to the upload session because the size of a file should not exceed the max file size + /// limit (i.e. 2^41 - 2^22 or 2,199,019,061,248 bytes). + case tooLarge + /// For concurrent upload sessions, offset needs to be multiple of 2^22 (4,194,304) bytes. + case concurrentSessionInvalidOffset + /// For concurrent upload sessions, only chunks with size multiple of 2^22 (4,194,304) bytes can be uploaded. + case concurrentSessionInvalidDataSize + /// The request payload must be at most 150 MiB. + case payloadTooLarge + /// An unspecified error. + case other + + func json() throws -> JSON { + try UploadSessionLookupErrorSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try UploadSessionLookupErrorSerializer().serialize(self)))" + } catch { + return "Failed to generate description for UploadSessionLookupError: \(error)" + } + } + } + + public class UploadSessionLookupErrorSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: UploadSessionLookupError) throws -> JSON { + switch value { + case .notFound: + var d = [String: JSON]() + d[".tag"] = .str("not_found") + return .dictionary(d) + case .incorrectOffset(let arg): + var d = try Serialization.getFields(Files.UploadSessionOffsetErrorSerializer().serialize(arg)) + d[".tag"] = .str("incorrect_offset") + return .dictionary(d) + case .closed: + var d = [String: JSON]() + d[".tag"] = .str("closed") + return .dictionary(d) + case .notClosed: + var d = [String: JSON]() + d[".tag"] = .str("not_closed") + return .dictionary(d) + case .tooLarge: + var d = [String: JSON]() + d[".tag"] = .str("too_large") + return .dictionary(d) + case .concurrentSessionInvalidOffset: + var d = [String: JSON]() + d[".tag"] = .str("concurrent_session_invalid_offset") + return .dictionary(d) + case .concurrentSessionInvalidDataSize: + var d = [String: JSON]() + d[".tag"] = .str("concurrent_session_invalid_data_size") + return .dictionary(d) + case .payloadTooLarge: + var d = [String: JSON]() + d[".tag"] = .str("payload_too_large") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + + public func deserialize(_ json: JSON) throws -> UploadSessionLookupError { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "not_found": + return UploadSessionLookupError.notFound + case "incorrect_offset": + let v = try Files.UploadSessionOffsetErrorSerializer().deserialize(json) + return UploadSessionLookupError.incorrectOffset(v) + case "closed": + return UploadSessionLookupError.closed + case "not_closed": + return UploadSessionLookupError.notClosed + case "too_large": + return UploadSessionLookupError.tooLarge + case "concurrent_session_invalid_offset": + return UploadSessionLookupError.concurrentSessionInvalidOffset + case "concurrent_session_invalid_data_size": + return UploadSessionLookupError.concurrentSessionInvalidDataSize + case "payload_too_large": + return UploadSessionLookupError.payloadTooLarge + case "other": + return UploadSessionLookupError.other + default: + return UploadSessionLookupError.other + } + default: + throw JSONSerializerError.deserializeError(type: UploadSessionLookupError.self, json: json) + } + } + } + /// The UploadSessionOffsetError struct public class UploadSessionOffsetError: CustomStringConvertible, JSONRepresentable { /// The offset up to which data has been collected. @@ -11418,7 +11990,7 @@ public class Files { case concurrentSessionDataNotAllowed /// Can not start a closed concurrent upload session. case concurrentSessionCloseNotAllowed - /// The request payload must be at most 150 MB. + /// The request payload must be at most 150 MiB. case payloadTooLarge /// The content received by the Dropbox server in this call does not match the provided content hash. case contentHashMismatch @@ -11816,6 +12388,8 @@ public class Files { case operationSuppressed /// There are too many write operations in user's Dropbox. Please retry this request. case tooManyWriteOperations + /// The user doesn't have permission to perform the action due to restrictions set by a team administrator + case accessRestricted /// An unspecified error. case other @@ -11868,6 +12442,10 @@ public class Files { var d = [String: JSON]() d[".tag"] = .str("too_many_write_operations") return .dictionary(d) + case .accessRestricted: + var d = [String: JSON]() + d[".tag"] = .str("access_restricted") + return .dictionary(d) case .other: var d = [String: JSON]() d[".tag"] = .str("other") @@ -11898,6 +12476,8 @@ public class Files { return WriteError.operationSuppressed case "too_many_write_operations": return WriteError.tooManyWriteOperations + case "access_restricted": + return WriteError.accessRestricted case "other": return WriteError.other default: @@ -12628,48 +13208,6 @@ public class Files { style: .rpc ) ) - static let propertiesRemove = Route( - name: "properties/remove", - version: 1, - namespace: "files", - deprecated: true, - argSerializer: FileProperties.RemovePropertiesArgSerializer(), - responseSerializer: Serialization._VoidSerializer, - errorSerializer: FileProperties.RemovePropertiesErrorSerializer(), - attributes: RouteAttributes( - auth: [.user], - host: .api, - style: .rpc - ) - ) - static let propertiesTemplateGet = Route( - name: "properties/template/get", - version: 1, - namespace: "files", - deprecated: true, - argSerializer: FileProperties.GetTemplateArgSerializer(), - responseSerializer: FileProperties.GetTemplateResultSerializer(), - errorSerializer: FileProperties.TemplateErrorSerializer(), - attributes: RouteAttributes( - auth: [.user], - host: .api, - style: .rpc - ) - ) - static let propertiesTemplateList = Route( - name: "properties/template/list", - version: 1, - namespace: "files", - deprecated: true, - argSerializer: Serialization._VoidSerializer, - responseSerializer: FileProperties.ListTemplateResultSerializer(), - errorSerializer: FileProperties.TemplateErrorSerializer(), - attributes: RouteAttributes( - auth: [.user], - host: .api, - style: .rpc - ) - ) static let propertiesUpdate = Route( name: "properties/update", version: 1, @@ -12866,6 +13404,20 @@ public class Files { style: .upload ) ) + static let uploadSessionAppendBatch = Route( + name: "upload_session/append_batch", + version: 1, + namespace: "files", + deprecated: false, + argSerializer: Files.UploadSessionAppendBatchArgSerializer(), + responseSerializer: Files.UploadSessionAppendBatchResultSerializer(), + errorSerializer: Files.UploadSessionAppendBatchErrorSerializer(), + attributes: RouteAttributes( + auth: [.user], + host: .content, + style: .upload + ) + ) static let uploadSessionFinish = Route( name: "upload_session/finish", version: 1, diff --git a/Source/SwiftyDropbox/Shared/Generated/FilesAppAuthRoutes.swift b/Source/SwiftyDropbox/Shared/Generated/FilesAppAuthRoutes.swift index aa6c9350..9bb662f4 100644 --- a/Source/SwiftyDropbox/Shared/Generated/FilesAppAuthRoutes.swift +++ b/Source/SwiftyDropbox/Shared/Generated/FilesAppAuthRoutes.swift @@ -22,10 +22,15 @@ public class FilesAppAuthRoutes: DropboxTransportClientOwning { /// /// - parameter resource: Information specifying which file to preview. This could be a path to a file, a shared /// link pointing to a file, or a shared link pointing to a folder, with a relative path. - /// - parameter format: The format for the thumbnail image, jpeg (default) or png. For images that are photos, jpeg - /// should be preferred, while png is better for screenshots and digital arts. + /// - parameter format: The format for the thumbnail image, jpeg (default), png, or webp. For images that are + /// photos, jpeg should be preferred, while png is better for screenshots and digital arts, and web for + /// compression. /// - parameter size: The size for the thumbnail image. /// - parameter mode: How to resize and crop the image to achieve the desired size. + /// - parameter quality: Field is only returned for "internal" callers. Quality of the thumbnail image. + /// - parameter excludeMediaInfo: Normally, mediaInfo in FileMetadata is set for photo and video. When this flag is + /// true, mediaInfo in FileMetadata is not populated. This improves latency for use cases where `media_info` is + /// not needed. /// - parameter overwrite: A boolean to set behavior in the event of a naming conflict. `True` will overwrite /// conflicting file at destination. `False` will take no action (but if left unhandled in destination closure, /// an NSError will be thrown). @@ -38,11 +43,13 @@ public class FilesAppAuthRoutes: DropboxTransportClientOwning { format: Files.ThumbnailFormat = .jpeg, size: Files.ThumbnailSize = .w64h64, mode: Files.ThumbnailMode = .strict, + quality: Files.ThumbnailQuality = .quality80, + excludeMediaInfo: Bool? = nil, overwrite: Bool = false, destination: URL ) -> DownloadRequestFile { let route = Files.getThumbnailV2 - let serverArgs = Files.ThumbnailV2Arg(resource: resource, format: format, size: size, mode: mode) + let serverArgs = Files.ThumbnailV2Arg(resource: resource, format: format, size: size, mode: mode, quality: quality, excludeMediaInfo: excludeMediaInfo) return client.request(route, serverArgs: serverArgs, overwrite: overwrite, destination: destination) } @@ -54,10 +61,15 @@ public class FilesAppAuthRoutes: DropboxTransportClientOwning { /// /// - parameter resource: Information specifying which file to preview. This could be a path to a file, a shared /// link pointing to a file, or a shared link pointing to a folder, with a relative path. - /// - parameter format: The format for the thumbnail image, jpeg (default) or png. For images that are photos, jpeg - /// should be preferred, while png is better for screenshots and digital arts. + /// - parameter format: The format for the thumbnail image, jpeg (default), png, or webp. For images that are + /// photos, jpeg should be preferred, while png is better for screenshots and digital arts, and web for + /// compression. /// - parameter size: The size for the thumbnail image. /// - parameter mode: How to resize and crop the image to achieve the desired size. + /// - parameter quality: Field is only returned for "internal" callers. Quality of the thumbnail image. + /// - parameter excludeMediaInfo: Normally, mediaInfo in FileMetadata is set for photo and video. When this flag is + /// true, mediaInfo in FileMetadata is not populated. This improves latency for use cases where `media_info` is + /// not needed. /// /// - returns: Through the response callback, the caller will receive a `Files.PreviewResult` object on success or a /// `Files.ThumbnailV2Error` object on failure. @@ -65,24 +77,26 @@ public class FilesAppAuthRoutes: DropboxTransportClientOwning { resource: Files.PathOrLink, format: Files.ThumbnailFormat = .jpeg, size: Files.ThumbnailSize = .w64h64, - mode: Files.ThumbnailMode = .strict + mode: Files.ThumbnailMode = .strict, + quality: Files.ThumbnailQuality = .quality80, + excludeMediaInfo: Bool? = nil ) -> DownloadRequestMemory { let route = Files.getThumbnailV2 - let serverArgs = Files.ThumbnailV2Arg(resource: resource, format: format, size: size, mode: mode) + let serverArgs = Files.ThumbnailV2Arg(resource: resource, format: format, size: size, mode: mode, quality: quality, excludeMediaInfo: excludeMediaInfo) return client.request(route, serverArgs: serverArgs) } /// Starts returning the contents of a folder. If the result's hasMore in ListFolderResult field is true, call - /// listFolderContinue with the returned cursor in ListFolderResult to retrieve more entries. If you're using - /// recursive in ListFolderArg set to true to keep a local cache of the contents of a Dropbox account, iterate + /// listFolderContinue with the returned ListFolderResult.cursor to retrieve more entries. If you're using + /// ListFolderArg.recursive set to true to keep a local cache of the contents of a Dropbox account, iterate /// through each entry in order and process them as follows to keep your local state in sync: For each /// FileMetadata, store the new entry at the given path in your local state. If the required parent folders /// don't exist yet, create them. If there's already something else at the given path, replace it and remove all /// its children. For each FolderMetadata, store the new entry at the given path in your local state. If the /// required parent folders don't exist yet, create them. If there's already something else at the given path, - /// replace it but leave the children as they are. Check the new entry's readOnly in FolderSharingInfo and set - /// all its children's read-only statuses to match. For each DeletedMetadata, if your local state has something - /// at the given path, remove it and all its children. If there's nothing at the given path, ignore this entry. + /// replace it but leave the children as they are. Check the new entry's FolderSharingInfo.read_only and set all + /// its children's read-only statuses to match. For each DeletedMetadata, if your local state has something at + /// the given path, remove it and all its children. If there's nothing at the given path, ignore this entry. /// Note: auth.RateLimitError may be returned if multiple listFolder or listFolderContinue calls with same /// parameters are made simultaneously by same API app for same user. If your app implements retry logic, please /// hold off the retry until the previous request finishes. @@ -91,13 +105,16 @@ public class FilesAppAuthRoutes: DropboxTransportClientOwning { /// /// - parameter path: A unique identifier for the file. /// - parameter recursive: If true, the list folder operation will be applied recursively to all subfolders and the - /// response will contain contents of all subfolders. - /// - parameter includeMediaInfo: If true, mediaInfo in FileMetadata is set for photo and video. This parameter will - /// no longer have an effect starting December 2, 2019. + /// response will contain contents of all subfolders. In some cases, setting recursive in ListFolderArg to true + /// may lead to performance issues or errors, especially when traversing folder structures with a large number + /// of items. A workaround for such cases is to set recursive in ListFolderArg to false and traverse subfolders + /// one at a time. + /// - parameter includeMediaInfo: Field is deprecated. If true, mediaInfo in FileMetadata is set for photo and + /// video. This parameter will no longer have an effect starting December 2, 2019. /// - parameter includeDeleted: If true, the results will include entries for files and folders that used to exist /// but were deleted. /// - parameter includeHasExplicitSharedMembers: If true, the results will include a flag for each file indicating - /// whether or not that file has any explicit members. + /// whether or not that file has any explicit members. /// - parameter includeMountedFolders: If true, the results will include entries under mounted folders which /// includes app folder, shared folder and team folder. /// - parameter limit: The maximum number of results to return per request. Note: This is an approximate number and @@ -108,6 +125,8 @@ public class FilesAppAuthRoutes: DropboxTransportClientOwning { /// - parameter includePropertyGroups: If set to a valid list of template IDs, propertyGroups in FileMetadata is set /// if there exists property data associated with the file and each of the listed templates. /// - parameter includeNonDownloadableFiles: If true, include files that are not downloadable, i.e. Google Docs. + /// - parameter includeRestorableInfo: If true, each returned deleted entry will include whether that entry can be + /// restored. /// /// - returns: Through the response callback, the caller will receive a `Files.ListFolderResult` object on success /// or a `Files.ListFolderError` object on failure. @@ -121,7 +140,8 @@ public class FilesAppAuthRoutes: DropboxTransportClientOwning { limit: UInt32? = nil, sharedLink: Files.SharedLink? = nil, includePropertyGroups: FileProperties.TemplateFilterBase? = nil, - includeNonDownloadableFiles: Bool = true + includeNonDownloadableFiles: Bool = true, + includeRestorableInfo: Bool = false ) -> RpcRequest { let route = Files.listFolder let serverArgs = Files.ListFolderArg( @@ -134,7 +154,8 @@ public class FilesAppAuthRoutes: DropboxTransportClientOwning { limit: limit, sharedLink: sharedLink, includePropertyGroups: includePropertyGroups, - includeNonDownloadableFiles: includeNonDownloadableFiles + includeNonDownloadableFiles: includeNonDownloadableFiles, + includeRestorableInfo: includeRestorableInfo ) return client.request(route, serverArgs: serverArgs) } diff --git a/Source/SwiftyDropbox/Shared/Generated/FilesRoutes.swift b/Source/SwiftyDropbox/Shared/Generated/FilesRoutes.swift index b9822aae..9d089ceb 100644 --- a/Source/SwiftyDropbox/Shared/Generated/FilesRoutes.swift +++ b/Source/SwiftyDropbox/Shared/Generated/FilesRoutes.swift @@ -19,12 +19,12 @@ public class FilesRoutes: DropboxTransportClientOwning { /// /// - scope: files.metadata.read /// - /// - parameter includePropertyTemplates: If set to a valid list of template IDs, propertyGroups in FileMetadata is - /// set for files with custom properties. + /// - parameter includePropertyTemplates: Field is deprecated. If set to a valid list of template IDs, + /// propertyGroups in FileMetadata is set for files with custom properties. /// /// - returns: Through the response callback, the caller will receive a `Files.Metadata` object on success or a /// `Files.AlphaGetMetadataError` object on failure. - @available(*, unavailable, message: "alphaGetMetadata is deprecated. Use getMetadata.") + @available(*, unavailable, message: "alphaGetMetadata is deprecated.") @discardableResult public func alphaGetMetadata( path: String, includeMediaInfo: Bool = false, @@ -46,7 +46,7 @@ public class FilesRoutes: DropboxTransportClientOwning { } /// Create a new file with the contents provided in the request. Note that the behavior of this alpha endpoint is - /// unstable and subject to change. Do not use this to upload a file larger than 150 MB. Instead, create an + /// unstable and subject to change. Do not use this to upload a file larger than 150 MiB. Instead, create an /// upload session with uploadSessionStart. /// /// - scope: files.content.write @@ -58,7 +58,7 @@ public class FilesRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Files.FileMetadata` object on success or a /// `Files.UploadError` object on failure. - @available(*, unavailable, message: "alphaUpload is deprecated. Use upload.") + @available(*, unavailable, message: "alphaUpload is deprecated.") @discardableResult public func alphaUpload( path: String, mode: Files.WriteMode = .add, @@ -85,7 +85,7 @@ public class FilesRoutes: DropboxTransportClientOwning { } /// Create a new file with the contents provided in the request. Note that the behavior of this alpha endpoint is - /// unstable and subject to change. Do not use this to upload a file larger than 150 MB. Instead, create an + /// unstable and subject to change. Do not use this to upload a file larger than 150 MiB. Instead, create an /// upload session with uploadSessionStart. /// /// - scope: files.content.write @@ -97,7 +97,7 @@ public class FilesRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Files.FileMetadata` object on success or a /// `Files.UploadError` object on failure. - @available(*, unavailable, message: "alphaUpload is deprecated. Use upload.") + @available(*, unavailable, message: "alphaUpload is deprecated.") @discardableResult public func alphaUpload( path: String, mode: Files.WriteMode = .add, @@ -124,7 +124,7 @@ public class FilesRoutes: DropboxTransportClientOwning { } /// Create a new file with the contents provided in the request. Note that the behavior of this alpha endpoint is - /// unstable and subject to change. Do not use this to upload a file larger than 150 MB. Instead, create an + /// unstable and subject to change. Do not use this to upload a file larger than 150 MiB. Instead, create an /// upload session with uploadSessionStart. /// /// - scope: files.content.write @@ -136,7 +136,7 @@ public class FilesRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Files.FileMetadata` object on success or a /// `Files.UploadError` object on failure. - @available(*, unavailable, message: "alphaUpload is deprecated. Use upload.") + @available(*, unavailable, message: "alphaUpload is deprecated.") @discardableResult public func alphaUpload( path: String, mode: Files.WriteMode = .add, @@ -167,7 +167,7 @@ public class FilesRoutes: DropboxTransportClientOwning { /// /// - scope: files.content.write /// - /// - parameter allowSharedFolder: This flag has no effect. + /// - parameter allowSharedFolder: Field is deprecated. This flag has no effect. /// - parameter autorename: If there's a conflict, have the Dropbox server try to autorename the file to avoid the /// conflict. /// - parameter allowOwnershipTransfer: Allow moves by owner even if it would result in an ownership transfer for @@ -175,7 +175,7 @@ public class FilesRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Files.Metadata` object on success or a /// `Files.RelocationError` object on failure. - @available(*, unavailable, message: "copy is deprecated. Use copyV2.") + @available(*, unavailable, message: "copy is deprecated.") @discardableResult public func copy( fromPath: String, toPath: String, @@ -199,7 +199,7 @@ public class FilesRoutes: DropboxTransportClientOwning { /// /// - scope: files.content.write /// - /// - parameter allowSharedFolder: This flag has no effect. + /// - parameter allowSharedFolder: Field is deprecated. This flag has no effect. /// - parameter autorename: If there's a conflict, have the Dropbox server try to autorename the file to avoid the /// conflict. /// - parameter allowOwnershipTransfer: Allow moves by owner even if it would result in an ownership transfer for @@ -230,13 +230,13 @@ public class FilesRoutes: DropboxTransportClientOwning { /// /// - scope: files.content.write /// - /// - parameter allowSharedFolder: This flag has no effect. + /// - parameter allowSharedFolder: Field is deprecated. This flag has no effect. /// - parameter allowOwnershipTransfer: Allow moves by owner even if it would result in an ownership transfer for /// the content being moved. This does not apply to copies. /// /// - returns: Through the response callback, the caller will receive a `Files.RelocationBatchLaunch` object on /// success or a `Void` object on failure. - @available(*, unavailable, message: "copyBatch is deprecated. Use copyBatchV2.") + @available(*, unavailable, message: "copyBatch is deprecated.") @discardableResult public func copyBatch( entries: [Files.RelocationPath], autorename: Bool = false, @@ -266,10 +266,10 @@ public class FilesRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Files.RelocationBatchV2Launch` object on /// success or a `Void` object on failure. - @discardableResult public func copyBatchV2( - entries: [Files.RelocationPath], - autorename: Bool = false - ) -> RpcRequest { + @discardableResult public func copyBatchV2(entries: [Files.RelocationPath], autorename: Bool = false) -> RpcRequest< + Files.RelocationBatchV2LaunchSerializer, + VoidSerializer + > { let route = Files.copyBatchV2 let serverArgs = Files.RelocationBatchArgBase(entries: entries, autorename: autorename) return client.request(route, serverArgs: serverArgs) @@ -284,7 +284,7 @@ public class FilesRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Files.RelocationBatchJobStatus` object on /// success or a `Async.PollError` object on failure. - @available(*, unavailable, message: "copyBatchCheck is deprecated. Use copyBatchCheckV2.") + @available(*, unavailable, message: "copyBatchCheck is deprecated.") @discardableResult public func copyBatchCheck(asyncJobId: String) -> RpcRequest { let route = Files.copyBatchCheck let serverArgs = Async.PollArg(asyncJobId: asyncJobId) @@ -330,10 +330,10 @@ public class FilesRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Files.SaveCopyReferenceResult` object on /// success or a `Files.SaveCopyReferenceError` object on failure. - @discardableResult public func copyReferenceSave( - copyReference: String, - path: String - ) -> RpcRequest { + @discardableResult public func copyReferenceSave(copyReference: String, path: String) -> RpcRequest< + Files.SaveCopyReferenceResultSerializer, + Files.SaveCopyReferenceErrorSerializer + > { let route = Files.copyReferenceSave let serverArgs = Files.SaveCopyReferenceArg(copyReference: copyReference, path: path) return client.request(route, serverArgs: serverArgs) @@ -349,11 +349,11 @@ public class FilesRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Files.FolderMetadata` object on success or /// a `Files.CreateFolderError` object on failure. - @available(*, unavailable, message: "createFolder is deprecated. Use createFolderV2.") - @discardableResult public func createFolder( - path: String, - autorename: Bool = false - ) -> RpcRequest { + @available(*, unavailable, message: "createFolder is deprecated.") + @discardableResult public func createFolder(path: String, autorename: Bool = false) -> RpcRequest< + Files.FolderMetadataSerializer, + Files.CreateFolderErrorSerializer + > { let route = Files.createFolder let serverArgs = Files.CreateFolderArg(path: path, autorename: autorename) return client.request(route, serverArgs: serverArgs) @@ -369,10 +369,10 @@ public class FilesRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Files.CreateFolderResult` object on success /// or a `Files.CreateFolderError` object on failure. - @discardableResult public func createFolderV2( - path: String, - autorename: Bool = false - ) -> RpcRequest { + @discardableResult public func createFolderV2(path: String, autorename: Bool = false) -> RpcRequest< + Files.CreateFolderResultSerializer, + Files.CreateFolderErrorSerializer + > { let route = Files.createFolderV2 let serverArgs = Files.CreateFolderArg(path: path, autorename: autorename) return client.request(route, serverArgs: serverArgs) @@ -380,8 +380,8 @@ public class FilesRoutes: DropboxTransportClientOwning { /// Create multiple folders at once. This route is asynchronous for large batches, which returns a job ID /// immediately and runs the create folder batch asynchronously. Otherwise, creates the folders and returns the - /// result synchronously for smaller inputs. You can force asynchronous behaviour by using the forceAsync in - /// CreateFolderBatchArg flag. Use createFolderBatchCheck to check the job status. + /// result synchronously for smaller inputs. You can force asynchronous behaviour by using the + /// CreateFolderBatchArg.force_async flag. Use createFolderBatchCheck to check the job status. /// /// - scope: files.content.write /// @@ -393,11 +393,10 @@ public class FilesRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Files.CreateFolderBatchLaunch` object on /// success or a `Void` object on failure. - @discardableResult public func createFolderBatch( - paths: [String], - autorename: Bool = false, - forceAsync: Bool = false - ) -> RpcRequest { + @discardableResult public func createFolderBatch(paths: [String], autorename: Bool = false, forceAsync: Bool = false) -> RpcRequest< + Files.CreateFolderBatchLaunchSerializer, + VoidSerializer + > { let route = Files.createFolderBatch let serverArgs = Files.CreateFolderBatchArg(paths: paths, autorename: autorename, forceAsync: forceAsync) return client.request(route, serverArgs: serverArgs) @@ -413,8 +412,10 @@ public class FilesRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Files.CreateFolderBatchJobStatus` object on /// success or a `Async.PollError` object on failure. - @discardableResult public func createFolderBatchCheck(asyncJobId: String) - -> RpcRequest { + @discardableResult public func createFolderBatchCheck(asyncJobId: String) -> RpcRequest< + Files.CreateFolderBatchJobStatusSerializer, + Async.PollErrorSerializer + > { let route = Files.createFolderBatchCheck let serverArgs = Async.PollArg(asyncJobId: asyncJobId) return client.request(route, serverArgs: serverArgs) @@ -433,7 +434,7 @@ public class FilesRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Files.Metadata` object on success or a /// `Files.DeleteError` object on failure. - @available(*, unavailable, message: "delete is deprecated. Use deleteV2.") + @available(*, unavailable, message: "delete is deprecated.") @discardableResult public func delete(path: String, parentRev: String? = nil) -> RpcRequest { let route = Files.delete let serverArgs = Files.DeleteArg(path: path, parentRev: parentRev) @@ -493,7 +494,7 @@ public class FilesRoutes: DropboxTransportClientOwning { /// - scope: files.content.read /// /// - parameter path: The path of the file to download. - /// - parameter rev: Please specify revision in path instead. + /// - parameter rev: Field is deprecated. Please specify revision in path instead. /// - parameter overwrite: A boolean to set behavior in the event of a naming conflict. `True` will overwrite /// conflicting file at destination. `False` will take no action (but if left unhandled in destination closure, /// an NSError will be thrown). @@ -501,12 +502,10 @@ public class FilesRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Files.FileMetadata` object on success or a /// `Files.DownloadError` object on failure. - @discardableResult public func download( - path: String, - rev: String? = nil, - overwrite: Bool = false, - destination: URL - ) -> DownloadRequestFile { + @discardableResult public func download(path: String, rev: String? = nil, overwrite: Bool = false, destination: URL) -> DownloadRequestFile< + Files.FileMetadataSerializer, + Files.DownloadErrorSerializer + > { let route = Files.download let serverArgs = Files.DownloadArg(path: path, rev: rev) return client.request(route, serverArgs: serverArgs, overwrite: overwrite, destination: destination) @@ -517,14 +516,14 @@ public class FilesRoutes: DropboxTransportClientOwning { /// - scope: files.content.read /// /// - parameter path: The path of the file to download. - /// - parameter rev: Please specify revision in path instead. + /// - parameter rev: Field is deprecated. Please specify revision in path instead. /// /// - returns: Through the response callback, the caller will receive a `Files.FileMetadata` object on success or a /// `Files.DownloadError` object on failure. - @discardableResult public func download( - path: String, - rev: String? = nil - ) -> DownloadRequestMemory { + @discardableResult public func download(path: String, rev: String? = nil) -> DownloadRequestMemory< + Files.FileMetadataSerializer, + Files.DownloadErrorSerializer + > { let route = Files.download let serverArgs = Files.DownloadArg(path: path, rev: rev) return client.request(route, serverArgs: serverArgs) @@ -545,11 +544,10 @@ public class FilesRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Files.DownloadZipResult` object on success /// or a `Files.DownloadZipError` object on failure. - @discardableResult public func downloadZip( - path: String, - overwrite: Bool = false, - destination: URL - ) -> DownloadRequestFile { + @discardableResult public func downloadZip(path: String, overwrite: Bool = false, destination: URL) -> DownloadRequestFile< + Files.DownloadZipResultSerializer, + Files.DownloadZipErrorSerializer + > { let route = Files.downloadZip let serverArgs = Files.DownloadZipArg(path: path) return client.request(route, serverArgs: serverArgs, overwrite: overwrite, destination: destination) @@ -573,7 +571,7 @@ public class FilesRoutes: DropboxTransportClientOwning { } /// Export a file from a user's Dropbox. This route only supports exporting files that cannot be downloaded directly - /// and whose fileMetadata in ExportResult has exportAs in ExportInfo populated. + /// and whose ExportResult.file_metadata has ExportInfo.export_as populated. /// /// - scope: files.content.read /// @@ -588,19 +586,17 @@ public class FilesRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Files.ExportResult` object on success or a /// `Files.ExportError` object on failure. - @discardableResult public func export( - path: String, - exportFormat: String? = nil, - overwrite: Bool = false, - destination: URL - ) -> DownloadRequestFile { + @discardableResult public func export(path: String, exportFormat: String? = nil, overwrite: Bool = false, destination: URL) -> DownloadRequestFile< + Files.ExportResultSerializer, + Files.ExportErrorSerializer + > { let route = Files.export let serverArgs = Files.ExportArg(path: path, exportFormat: exportFormat) return client.request(route, serverArgs: serverArgs, overwrite: overwrite, destination: destination) } /// Export a file from a user's Dropbox. This route only supports exporting files that cannot be downloaded directly - /// and whose fileMetadata in ExportResult has exportAs in ExportInfo populated. + /// and whose ExportResult.file_metadata has ExportInfo.export_as populated. /// /// - scope: files.content.read /// @@ -611,10 +607,10 @@ public class FilesRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Files.ExportResult` object on success or a /// `Files.ExportError` object on failure. - @discardableResult public func export( - path: String, - exportFormat: String? = nil - ) -> DownloadRequestMemory { + @discardableResult public func export(path: String, exportFormat: String? = nil) -> DownloadRequestMemory< + Files.ExportResultSerializer, + Files.ExportErrorSerializer + > { let route = Files.export let serverArgs = Files.ExportArg(path: path, exportFormat: exportFormat) return client.request(route, serverArgs: serverArgs) @@ -629,8 +625,10 @@ public class FilesRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Files.LockFileBatchResult` object on /// success or a `Files.LockFileError` object on failure. - @discardableResult public func getFileLockBatch(entries: [Files.LockFileArg]) - -> RpcRequest { + @discardableResult public func getFileLockBatch(entries: [Files.LockFileArg]) -> RpcRequest< + Files.LockFileBatchResultSerializer, + Files.LockFileErrorSerializer + > { let route = Files.getFileLockBatch let serverArgs = Files.LockFileBatchArg(entries: entries) return client.request(route, serverArgs: serverArgs) @@ -645,7 +643,7 @@ public class FilesRoutes: DropboxTransportClientOwning { /// - parameter includeDeleted: If true, DeletedMetadata will be returned for deleted file or folder, otherwise /// notFound in LookupError will be returned. /// - parameter includeHasExplicitSharedMembers: If true, the results will include a flag for each file indicating - /// whether or not that file has any explicit members. + /// whether or not that file has any explicit members. /// - parameter includePropertyGroups: If set to a valid list of template IDs, propertyGroups in FileMetadata is set /// if there exists property data associated with the file and each of the listed templates. /// @@ -671,13 +669,13 @@ public class FilesRoutes: DropboxTransportClientOwning { /// Get a preview for a file. Currently, PDF previews are generated for files with the following extensions: .ai, /// .doc, .docm, .docx, .eps, .gdoc, .gslides, .odp, .odt, .pps, .ppsm, .ppsx, .ppt, .pptm, .pptx, .rtf. HTML - /// previews are generated for files with the following extensions: .csv, .ods, .xls, .xlsm, .gsheet, .xlsx. - /// Other formats will return an unsupported extension error. + /// previews are generated for .csv, .ods, .xls, .xlsm, .gsheet, .xlsx. Other formats will return an unsupported + /// extension error. /// /// - scope: files.content.read /// /// - parameter path: The path of the file to preview. - /// - parameter rev: Please specify revision in path instead. + /// - parameter rev: Field is deprecated. Please specify revision in path instead. /// - parameter overwrite: A boolean to set behavior in the event of a naming conflict. `True` will overwrite /// conflicting file at destination. `False` will take no action (but if left unhandled in destination closure, /// an NSError will be thrown). @@ -685,12 +683,10 @@ public class FilesRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Files.FileMetadata` object on success or a /// `Files.PreviewError` object on failure. - @discardableResult public func getPreview( - path: String, - rev: String? = nil, - overwrite: Bool = false, - destination: URL - ) -> DownloadRequestFile { + @discardableResult public func getPreview(path: String, rev: String? = nil, overwrite: Bool = false, destination: URL) -> DownloadRequestFile< + Files.FileMetadataSerializer, + Files.PreviewErrorSerializer + > { let route = Files.getPreview let serverArgs = Files.PreviewArg(path: path, rev: rev) return client.request(route, serverArgs: serverArgs, overwrite: overwrite, destination: destination) @@ -698,20 +694,20 @@ public class FilesRoutes: DropboxTransportClientOwning { /// Get a preview for a file. Currently, PDF previews are generated for files with the following extensions: .ai, /// .doc, .docm, .docx, .eps, .gdoc, .gslides, .odp, .odt, .pps, .ppsm, .ppsx, .ppt, .pptm, .pptx, .rtf. HTML - /// previews are generated for files with the following extensions: .csv, .ods, .xls, .xlsm, .gsheet, .xlsx. - /// Other formats will return an unsupported extension error. + /// previews are generated for .csv, .ods, .xls, .xlsm, .gsheet, .xlsx. Other formats will return an unsupported + /// extension error. /// /// - scope: files.content.read /// /// - parameter path: The path of the file to preview. - /// - parameter rev: Please specify revision in path instead. + /// - parameter rev: Field is deprecated. Please specify revision in path instead. /// /// - returns: Through the response callback, the caller will receive a `Files.FileMetadata` object on success or a /// `Files.PreviewError` object on failure. - @discardableResult public func getPreview( - path: String, - rev: String? = nil - ) -> DownloadRequestMemory { + @discardableResult public func getPreview(path: String, rev: String? = nil) -> DownloadRequestMemory< + Files.FileMetadataSerializer, + Files.PreviewErrorSerializer + > { let route = Files.getPreview let serverArgs = Files.PreviewArg(path: path, rev: rev) return client.request(route, serverArgs: serverArgs) @@ -734,37 +730,38 @@ public class FilesRoutes: DropboxTransportClientOwning { } /// Get a one-time use temporary upload link to upload a file to a Dropbox location. This endpoint acts as a - /// delayed upload. The returned temporary upload link may be used to make a POST request with the data to be - /// uploaded. The upload will then be perfomed with the CommitInfo previously provided to getTemporaryUploadLink - /// but evaluated only upon consumption. Hence, errors stemming from invalid CommitInfo with respect to the - /// state of the user's Dropbox will only be communicated at consumption time. Additionally, these errors are - /// surfaced as generic HTTP 409 Conflict responses, potentially hiding issue details. The maximum temporary - /// upload link duration is 4 hours. Upon consumption or expiration, a new link will have to be generated. - /// Multiple links may exist for a specific upload path at any given time. The POST request on the temporary - /// upload link must have its Content-Type set to "application/octet-stream". Example temporary upload link - /// consumption request: curl -X POST https://content.dropboxapi.com/apitul/1/bNi2uIYF51cVBND --header - /// "Content-Type: application/octet-stream" --data-binary @local_file.txt A successful temporary upload link - /// consumption request returns the content hash of the uploaded data in JSON format. Example successful - /// temporary upload link consumption response: {"content-hash": "599d71033d700ac892a0e48fa61b125d2f5994"} An - /// unsuccessful temporary upload link consumption request returns any of the following status codes: HTTP 400 - /// Bad Request: Content-Type is not one of application/octet-stream and text/plain or request is invalid. HTTP - /// 409 Conflict: The temporary upload link does not exist or is currently unavailable, the upload failed, or - /// another error happened. HTTP 410 Gone: The temporary upload link is expired or consumed. Example - /// unsuccessful temporary upload link consumption response: Temporary upload link has been recently consumed. + /// delayed upload(). The returned temporary upload link may be used to make a POST request with the data to be + /// uploaded. The upload will then be perfomed with the CommitInfo previously provided to + /// getTemporaryUploadLink() but evaluated only upon consumption. Hence, errors stemming from invalid CommitInfo + /// with respect to the state of the user's Dropbox will only be communicated at consumption time. Additionally, + /// these errors are surfaced as generic HTTP 409 Conflict responses, potentially hiding issue details. The + /// maximum temporary upload link duration is 4 hours. Upon consumption or expiration, a new link will have to + /// be generated. Multiple links may exist for a specific upload path at any given time. The POST request on + /// the temporary upload link must have its Content-Type set to "application/octet-stream". Example temporary + /// upload link consumption request: curl -X POST https://content.dropboxapi.com/apitul/1/bNi2uIYF51cVBND + /// --header "Content-Type: application/octet-stream" --data-binary @local_file.txt A successful temporary + /// upload link consumption request returns the content hash of the uploaded data in JSON format. Example + /// successful temporary upload link consumption response: {"content-hash": + /// "599d71033d700ac892a0e48fa61b125d2f5994"} An unsuccessful temporary upload link consumption request returns + /// any of the following status codes: HTTP 400 Bad Request: Content-Type is not one of + /// application/octet-stream and text/plain or request is invalid. HTTP 409 Conflict: The temporary upload link + /// does not exist or is currently unavailable, the upload failed, or another error happened. HTTP 410 Gone: The + /// temporary upload link is expired or consumed. Example unsuccessful temporary upload link consumption + /// response: Temporary upload link has been recently consumed. /// /// - scope: files.content.write /// /// - parameter commitInfo: Contains the path and other optional modifiers for the future upload commit. Equivalent /// to the parameters provided to upload. - /// - parameter duration: How long before this link expires, in seconds. Attempting to start an upload with this - /// link longer than this period of time after link creation will result in an error. + /// - parameter duration: How long before this link expires, in seconds. Attempting to start an upload with this + /// link longer than this period of time after link creation will result in an error. /// /// - returns: Through the response callback, the caller will receive a `Files.GetTemporaryUploadLinkResult` object /// on success or a `Void` object on failure. - @discardableResult public func getTemporaryUploadLink( - commitInfo: Files.CommitInfo, - duration: Double = 14_400.0 - ) -> RpcRequest { + @discardableResult public func getTemporaryUploadLink(commitInfo: Files.CommitInfo, duration: Double = 14_400.0) -> RpcRequest< + Files.GetTemporaryUploadLinkResultSerializer, + VoidSerializer + > { let route = Files.getTemporaryUploadLink let serverArgs = Files.GetTemporaryUploadLinkArg(commitInfo: commitInfo, duration: duration) return client.request(route, serverArgs: serverArgs) @@ -777,10 +774,15 @@ public class FilesRoutes: DropboxTransportClientOwning { /// - scope: files.content.read /// /// - parameter path: The path to the image file you want to thumbnail. - /// - parameter format: The format for the thumbnail image, jpeg (default) or png. For images that are photos, jpeg - /// should be preferred, while png is better for screenshots and digital arts. + /// - parameter format: The format for the thumbnail image, jpeg (default), png, or webp. For images that are + /// photos, jpeg should be preferred, while png is better for screenshots and digital arts, and web for + /// compression. /// - parameter size: The size for the thumbnail image. /// - parameter mode: How to resize and crop the image to achieve the desired size. + /// - parameter quality: Field is only returned for "internal" callers. Quality of the thumbnail image. + /// - parameter excludeMediaInfo: Normally, mediaInfo in FileMetadata is set for photo and video. When this flag is + /// true, mediaInfo in FileMetadata is not populated. This improves latency for use cases where `media_info` is + /// not needed. /// - parameter overwrite: A boolean to set behavior in the event of a naming conflict. `True` will overwrite /// conflicting file at destination. `False` will take no action (but if left unhandled in destination closure, /// an NSError will be thrown). @@ -793,11 +795,13 @@ public class FilesRoutes: DropboxTransportClientOwning { format: Files.ThumbnailFormat = .jpeg, size: Files.ThumbnailSize = .w64h64, mode: Files.ThumbnailMode = .strict, + quality: Files.ThumbnailQuality = .quality80, + excludeMediaInfo: Bool? = nil, overwrite: Bool = false, destination: URL ) -> DownloadRequestFile { let route = Files.getThumbnail - let serverArgs = Files.ThumbnailArg(path: path, format: format, size: size, mode: mode) + let serverArgs = Files.ThumbnailArg(path: path, format: format, size: size, mode: mode, quality: quality, excludeMediaInfo: excludeMediaInfo) return client.request(route, serverArgs: serverArgs, overwrite: overwrite, destination: destination) } @@ -808,10 +812,15 @@ public class FilesRoutes: DropboxTransportClientOwning { /// - scope: files.content.read /// /// - parameter path: The path to the image file you want to thumbnail. - /// - parameter format: The format for the thumbnail image, jpeg (default) or png. For images that are photos, jpeg - /// should be preferred, while png is better for screenshots and digital arts. + /// - parameter format: The format for the thumbnail image, jpeg (default), png, or webp. For images that are + /// photos, jpeg should be preferred, while png is better for screenshots and digital arts, and web for + /// compression. /// - parameter size: The size for the thumbnail image. /// - parameter mode: How to resize and crop the image to achieve the desired size. + /// - parameter quality: Field is only returned for "internal" callers. Quality of the thumbnail image. + /// - parameter excludeMediaInfo: Normally, mediaInfo in FileMetadata is set for photo and video. When this flag is + /// true, mediaInfo in FileMetadata is not populated. This improves latency for use cases where `media_info` is + /// not needed. /// /// - returns: Through the response callback, the caller will receive a `Files.FileMetadata` object on success or a /// `Files.ThumbnailError` object on failure. @@ -819,10 +828,12 @@ public class FilesRoutes: DropboxTransportClientOwning { path: String, format: Files.ThumbnailFormat = .jpeg, size: Files.ThumbnailSize = .w64h64, - mode: Files.ThumbnailMode = .strict + mode: Files.ThumbnailMode = .strict, + quality: Files.ThumbnailQuality = .quality80, + excludeMediaInfo: Bool? = nil ) -> DownloadRequestMemory { let route = Files.getThumbnail - let serverArgs = Files.ThumbnailArg(path: path, format: format, size: size, mode: mode) + let serverArgs = Files.ThumbnailArg(path: path, format: format, size: size, mode: mode, quality: quality, excludeMediaInfo: excludeMediaInfo) return client.request(route, serverArgs: serverArgs) } @@ -834,10 +845,15 @@ public class FilesRoutes: DropboxTransportClientOwning { /// /// - parameter resource: Information specifying which file to preview. This could be a path to a file, a shared /// link pointing to a file, or a shared link pointing to a folder, with a relative path. - /// - parameter format: The format for the thumbnail image, jpeg (default) or png. For images that are photos, jpeg - /// should be preferred, while png is better for screenshots and digital arts. + /// - parameter format: The format for the thumbnail image, jpeg (default), png, or webp. For images that are + /// photos, jpeg should be preferred, while png is better for screenshots and digital arts, and web for + /// compression. /// - parameter size: The size for the thumbnail image. /// - parameter mode: How to resize and crop the image to achieve the desired size. + /// - parameter quality: Field is only returned for "internal" callers. Quality of the thumbnail image. + /// - parameter excludeMediaInfo: Normally, mediaInfo in FileMetadata is set for photo and video. When this flag is + /// true, mediaInfo in FileMetadata is not populated. This improves latency for use cases where `media_info` is + /// not needed. /// - parameter overwrite: A boolean to set behavior in the event of a naming conflict. `True` will overwrite /// conflicting file at destination. `False` will take no action (but if left unhandled in destination closure, /// an NSError will be thrown). @@ -850,11 +866,13 @@ public class FilesRoutes: DropboxTransportClientOwning { format: Files.ThumbnailFormat = .jpeg, size: Files.ThumbnailSize = .w64h64, mode: Files.ThumbnailMode = .strict, + quality: Files.ThumbnailQuality = .quality80, + excludeMediaInfo: Bool? = nil, overwrite: Bool = false, destination: URL ) -> DownloadRequestFile { let route = Files.getThumbnailV2 - let serverArgs = Files.ThumbnailV2Arg(resource: resource, format: format, size: size, mode: mode) + let serverArgs = Files.ThumbnailV2Arg(resource: resource, format: format, size: size, mode: mode, quality: quality, excludeMediaInfo: excludeMediaInfo) return client.request(route, serverArgs: serverArgs, overwrite: overwrite, destination: destination) } @@ -866,10 +884,15 @@ public class FilesRoutes: DropboxTransportClientOwning { /// /// - parameter resource: Information specifying which file to preview. This could be a path to a file, a shared /// link pointing to a file, or a shared link pointing to a folder, with a relative path. - /// - parameter format: The format for the thumbnail image, jpeg (default) or png. For images that are photos, jpeg - /// should be preferred, while png is better for screenshots and digital arts. + /// - parameter format: The format for the thumbnail image, jpeg (default), png, or webp. For images that are + /// photos, jpeg should be preferred, while png is better for screenshots and digital arts, and web for + /// compression. /// - parameter size: The size for the thumbnail image. /// - parameter mode: How to resize and crop the image to achieve the desired size. + /// - parameter quality: Field is only returned for "internal" callers. Quality of the thumbnail image. + /// - parameter excludeMediaInfo: Normally, mediaInfo in FileMetadata is set for photo and video. When this flag is + /// true, mediaInfo in FileMetadata is not populated. This improves latency for use cases where `media_info` is + /// not needed. /// /// - returns: Through the response callback, the caller will receive a `Files.PreviewResult` object on success or a /// `Files.ThumbnailV2Error` object on failure. @@ -877,10 +900,12 @@ public class FilesRoutes: DropboxTransportClientOwning { resource: Files.PathOrLink, format: Files.ThumbnailFormat = .jpeg, size: Files.ThumbnailSize = .w64h64, - mode: Files.ThumbnailMode = .strict + mode: Files.ThumbnailMode = .strict, + quality: Files.ThumbnailQuality = .quality80, + excludeMediaInfo: Bool? = nil ) -> DownloadRequestMemory { let route = Files.getThumbnailV2 - let serverArgs = Files.ThumbnailV2Arg(resource: resource, format: format, size: size, mode: mode) + let serverArgs = Files.ThumbnailV2Arg(resource: resource, format: format, size: size, mode: mode, quality: quality, excludeMediaInfo: excludeMediaInfo) return client.request(route, serverArgs: serverArgs) } @@ -894,24 +919,26 @@ public class FilesRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Files.GetThumbnailBatchResult` object on /// success or a `Files.GetThumbnailBatchError` object on failure. - @discardableResult public func getThumbnailBatch(entries: [Files.ThumbnailArg]) - -> RpcRequest { + @discardableResult public func getThumbnailBatch(entries: [Files.ThumbnailArg]) -> RpcRequest< + Files.GetThumbnailBatchResultSerializer, + Files.GetThumbnailBatchErrorSerializer + > { let route = Files.getThumbnailBatch let serverArgs = Files.GetThumbnailBatchArg(entries: entries) return client.request(route, serverArgs: serverArgs) } /// Starts returning the contents of a folder. If the result's hasMore in ListFolderResult field is true, call - /// listFolderContinue with the returned cursor in ListFolderResult to retrieve more entries. If you're using - /// recursive in ListFolderArg set to true to keep a local cache of the contents of a Dropbox account, iterate + /// listFolderContinue with the returned ListFolderResult.cursor to retrieve more entries. If you're using + /// ListFolderArg.recursive set to true to keep a local cache of the contents of a Dropbox account, iterate /// through each entry in order and process them as follows to keep your local state in sync: For each /// FileMetadata, store the new entry at the given path in your local state. If the required parent folders /// don't exist yet, create them. If there's already something else at the given path, replace it and remove all /// its children. For each FolderMetadata, store the new entry at the given path in your local state. If the /// required parent folders don't exist yet, create them. If there's already something else at the given path, - /// replace it but leave the children as they are. Check the new entry's readOnly in FolderSharingInfo and set - /// all its children's read-only statuses to match. For each DeletedMetadata, if your local state has something - /// at the given path, remove it and all its children. If there's nothing at the given path, ignore this entry. + /// replace it but leave the children as they are. Check the new entry's FolderSharingInfo.read_only and set all + /// its children's read-only statuses to match. For each DeletedMetadata, if your local state has something at + /// the given path, remove it and all its children. If there's nothing at the given path, ignore this entry. /// Note: auth.RateLimitError may be returned if multiple listFolder or listFolderContinue calls with same /// parameters are made simultaneously by same API app for same user. If your app implements retry logic, please /// hold off the retry until the previous request finishes. @@ -920,13 +947,16 @@ public class FilesRoutes: DropboxTransportClientOwning { /// /// - parameter path: A unique identifier for the file. /// - parameter recursive: If true, the list folder operation will be applied recursively to all subfolders and the - /// response will contain contents of all subfolders. - /// - parameter includeMediaInfo: If true, mediaInfo in FileMetadata is set for photo and video. This parameter will - /// no longer have an effect starting December 2, 2019. + /// response will contain contents of all subfolders. In some cases, setting recursive in ListFolderArg to true + /// may lead to performance issues or errors, especially when traversing folder structures with a large number + /// of items. A workaround for such cases is to set recursive in ListFolderArg to false and traverse subfolders + /// one at a time. + /// - parameter includeMediaInfo: Field is deprecated. If true, mediaInfo in FileMetadata is set for photo and + /// video. This parameter will no longer have an effect starting December 2, 2019. /// - parameter includeDeleted: If true, the results will include entries for files and folders that used to exist /// but were deleted. /// - parameter includeHasExplicitSharedMembers: If true, the results will include a flag for each file indicating - /// whether or not that file has any explicit members. + /// whether or not that file has any explicit members. /// - parameter includeMountedFolders: If true, the results will include entries under mounted folders which /// includes app folder, shared folder and team folder. /// - parameter limit: The maximum number of results to return per request. Note: This is an approximate number and @@ -937,6 +967,8 @@ public class FilesRoutes: DropboxTransportClientOwning { /// - parameter includePropertyGroups: If set to a valid list of template IDs, propertyGroups in FileMetadata is set /// if there exists property data associated with the file and each of the listed templates. /// - parameter includeNonDownloadableFiles: If true, include files that are not downloadable, i.e. Google Docs. + /// - parameter includeRestorableInfo: If true, each returned deleted entry will include whether that entry can be + /// restored. /// /// - returns: Through the response callback, the caller will receive a `Files.ListFolderResult` object on success /// or a `Files.ListFolderError` object on failure. @@ -950,7 +982,8 @@ public class FilesRoutes: DropboxTransportClientOwning { limit: UInt32? = nil, sharedLink: Files.SharedLink? = nil, includePropertyGroups: FileProperties.TemplateFilterBase? = nil, - includeNonDownloadableFiles: Bool = true + includeNonDownloadableFiles: Bool = true, + includeRestorableInfo: Bool = false ) -> RpcRequest { let route = Files.listFolder let serverArgs = Files.ListFolderArg( @@ -963,7 +996,8 @@ public class FilesRoutes: DropboxTransportClientOwning { limit: limit, sharedLink: sharedLink, includePropertyGroups: includePropertyGroups, - includeNonDownloadableFiles: includeNonDownloadableFiles + includeNonDownloadableFiles: includeNonDownloadableFiles, + includeRestorableInfo: includeRestorableInfo ) return client.request(route, serverArgs: serverArgs) } @@ -991,13 +1025,16 @@ public class FilesRoutes: DropboxTransportClientOwning { /// /// - parameter path: A unique identifier for the file. /// - parameter recursive: If true, the list folder operation will be applied recursively to all subfolders and the - /// response will contain contents of all subfolders. - /// - parameter includeMediaInfo: If true, mediaInfo in FileMetadata is set for photo and video. This parameter will - /// no longer have an effect starting December 2, 2019. + /// response will contain contents of all subfolders. In some cases, setting recursive in ListFolderArg to true + /// may lead to performance issues or errors, especially when traversing folder structures with a large number + /// of items. A workaround for such cases is to set recursive in ListFolderArg to false and traverse subfolders + /// one at a time. + /// - parameter includeMediaInfo: Field is deprecated. If true, mediaInfo in FileMetadata is set for photo and + /// video. This parameter will no longer have an effect starting December 2, 2019. /// - parameter includeDeleted: If true, the results will include entries for files and folders that used to exist /// but were deleted. /// - parameter includeHasExplicitSharedMembers: If true, the results will include a flag for each file indicating - /// whether or not that file has any explicit members. + /// whether or not that file has any explicit members. /// - parameter includeMountedFolders: If true, the results will include entries under mounted folders which /// includes app folder, shared folder and team folder. /// - parameter limit: The maximum number of results to return per request. Note: This is an approximate number and @@ -1008,6 +1045,8 @@ public class FilesRoutes: DropboxTransportClientOwning { /// - parameter includePropertyGroups: If set to a valid list of template IDs, propertyGroups in FileMetadata is set /// if there exists property data associated with the file and each of the listed templates. /// - parameter includeNonDownloadableFiles: If true, include files that are not downloadable, i.e. Google Docs. + /// - parameter includeRestorableInfo: If true, each returned deleted entry will include whether that entry can be + /// restored. /// /// - returns: Through the response callback, the caller will receive a `Files.ListFolderGetLatestCursorResult` /// object on success or a `Files.ListFolderError` object on failure. @@ -1021,7 +1060,8 @@ public class FilesRoutes: DropboxTransportClientOwning { limit: UInt32? = nil, sharedLink: Files.SharedLink? = nil, includePropertyGroups: FileProperties.TemplateFilterBase? = nil, - includeNonDownloadableFiles: Bool = true + includeNonDownloadableFiles: Bool = true, + includeRestorableInfo: Bool = false ) -> RpcRequest { let route = Files.listFolderGetLatestCursor let serverArgs = Files.ListFolderArg( @@ -1034,16 +1074,15 @@ public class FilesRoutes: DropboxTransportClientOwning { limit: limit, sharedLink: sharedLink, includePropertyGroups: includePropertyGroups, - includeNonDownloadableFiles: includeNonDownloadableFiles + includeNonDownloadableFiles: includeNonDownloadableFiles, + includeRestorableInfo: includeRestorableInfo ) return client.request(route, serverArgs: serverArgs) } /// A longpoll endpoint to wait for changes on an account. In conjunction with listFolderContinue, this call gives /// you a low-latency way to monitor an account for file changes. The connection will block until there are - /// changes available or a timeout occurs. This endpoint is useful mostly for client-side apps. If you're - /// looking for server-side notifications, check out our webhooks documentation - /// https://www.dropbox.com/developers/reference/webhooks. + /// changes available or a timeout occurs. This endpoint is useful mostly for client-side apps. /// /// - scope: files.metadata.read /// @@ -1055,10 +1094,10 @@ public class FilesRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Files.ListFolderLongpollResult` object on /// success or a `Files.ListFolderLongpollError` object on failure. - @discardableResult public func listFolderLongpoll( - cursor: String, - timeout: UInt64 = 30 - ) -> RpcRequest { + @discardableResult public func listFolderLongpoll(cursor: String, timeout: UInt64 = 30) -> RpcRequest< + Files.ListFolderLongpollResultSerializer, + Files.ListFolderLongpollErrorSerializer + > { let route = Files.listFolderLongpoll let serverArgs = Files.ListFolderLongpollArg(cursor: cursor, timeout: timeout) return client.request(route, serverArgs: serverArgs) @@ -1066,9 +1105,9 @@ public class FilesRoutes: DropboxTransportClientOwning { /// Returns revisions for files based on a file path or a file id. The file path or file id is identified from the /// latest file entry at the given file path or id. This end point allows your app to query either by file path - /// or file id by setting the mode parameter appropriately. In the path in ListRevisionsMode (default) mode, all + /// or file id by setting the mode parameter appropriately. In the ListRevisionsMode.path (default) mode, all /// revisions at the same file path as the latest file entry are returned. If revisions with the same file id - /// are desired, then mode must be set to id in ListRevisionsMode. The id in ListRevisionsMode mode is useful to + /// are desired, then mode must be set to ListRevisionsMode.id. The ListRevisionsMode.id mode is useful to /// retrieve revisions for a given file across moves or renames. /// /// - scope: files.metadata.read @@ -1076,16 +1115,23 @@ public class FilesRoutes: DropboxTransportClientOwning { /// - parameter path: The path to the file you want to see the revisions of. /// - parameter mode: Determines the behavior of the API in listing the revisions for a given file path or id. /// - parameter limit: The maximum number of revision entries returned. + /// - parameter beforeRev: If set, ListRevisions will only return revisions prior to before_rev. Can be set using + /// the last revision from a previous call to list_revisions to fetch the next page of revisions. Only supported + /// in path mode. + /// - parameter includeRestorableInfo: If true, each returned revision will include whether that revision can be + /// restored. /// /// - returns: Through the response callback, the caller will receive a `Files.ListRevisionsResult` object on /// success or a `Files.ListRevisionsError` object on failure. @discardableResult public func listRevisions( path: String, mode: Files.ListRevisionsMode = .path, - limit: UInt64 = 10 + limit: UInt64 = 10, + beforeRev: String? = nil, + includeRestorableInfo: Bool = false ) -> RpcRequest { let route = Files.listRevisions - let serverArgs = Files.ListRevisionsArg(path: path, mode: mode, limit: limit) + let serverArgs = Files.ListRevisionsArg(path: path, mode: mode, limit: limit, beforeRev: beforeRev, includeRestorableInfo: includeRestorableInfo) return client.request(route, serverArgs: serverArgs) } @@ -1100,8 +1146,7 @@ public class FilesRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Files.LockFileBatchResult` object on /// success or a `Files.LockFileError` object on failure. - @discardableResult public func lockFileBatch(entries: [Files.LockFileArg]) - -> RpcRequest { + @discardableResult public func lockFileBatch(entries: [Files.LockFileArg]) -> RpcRequest { let route = Files.lockFileBatch let serverArgs = Files.LockFileBatchArg(entries: entries) return client.request(route, serverArgs: serverArgs) @@ -1112,7 +1157,7 @@ public class FilesRoutes: DropboxTransportClientOwning { /// /// - scope: files.content.write /// - /// - parameter allowSharedFolder: This flag has no effect. + /// - parameter allowSharedFolder: Field is deprecated. This flag has no effect. /// - parameter autorename: If there's a conflict, have the Dropbox server try to autorename the file to avoid the /// conflict. /// - parameter allowOwnershipTransfer: Allow moves by owner even if it would result in an ownership transfer for @@ -1120,7 +1165,7 @@ public class FilesRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Files.Metadata` object on success or a /// `Files.RelocationError` object on failure. - @available(*, unavailable, message: "move is deprecated. Use moveV2.") + @available(*, unavailable, message: "move is deprecated.") @discardableResult public func move( fromPath: String, toPath: String, @@ -1144,7 +1189,7 @@ public class FilesRoutes: DropboxTransportClientOwning { /// /// - scope: files.content.write /// - /// - parameter allowSharedFolder: This flag has no effect. + /// - parameter allowSharedFolder: Field is deprecated. This flag has no effect. /// - parameter autorename: If there's a conflict, have the Dropbox server try to autorename the file to avoid the /// conflict. /// - parameter allowOwnershipTransfer: Allow moves by owner even if it would result in an ownership transfer for @@ -1175,13 +1220,13 @@ public class FilesRoutes: DropboxTransportClientOwning { /// /// - scope: files.content.write /// - /// - parameter allowSharedFolder: This flag has no effect. + /// - parameter allowSharedFolder: Field is deprecated. This flag has no effect. /// - parameter allowOwnershipTransfer: Allow moves by owner even if it would result in an ownership transfer for /// the content being moved. This does not apply to copies. /// /// - returns: Through the response callback, the caller will receive a `Files.RelocationBatchLaunch` object on /// success or a `Void` object on failure. - @available(*, unavailable, message: "moveBatch is deprecated. Use moveBatchV2.") + @available(*, unavailable, message: "moveBatch is deprecated.") @discardableResult public func moveBatch( entries: [Files.RelocationPath], autorename: Bool = false, @@ -1211,11 +1256,10 @@ public class FilesRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Files.RelocationBatchV2Launch` object on /// success or a `Void` object on failure. - @discardableResult public func moveBatchV2( - entries: [Files.RelocationPath], - autorename: Bool = false, - allowOwnershipTransfer: Bool = false - ) -> RpcRequest { + @discardableResult public func moveBatchV2(entries: [Files.RelocationPath], autorename: Bool = false, allowOwnershipTransfer: Bool = false) -> RpcRequest< + Files.RelocationBatchV2LaunchSerializer, + VoidSerializer + > { let route = Files.moveBatchV2 let serverArgs = Files.MoveBatchArg(entries: entries, autorename: autorename, allowOwnershipTransfer: allowOwnershipTransfer) return client.request(route, serverArgs: serverArgs) @@ -1230,7 +1274,7 @@ public class FilesRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Files.RelocationBatchJobStatus` object on /// success or a `Async.PollError` object on failure. - @available(*, unavailable, message: "moveBatchCheck is deprecated. Use moveBatchCheckV2.") + @available(*, unavailable, message: "moveBatchCheck is deprecated.") @discardableResult public func moveBatchCheck(asyncJobId: String) -> RpcRequest { let route = Files.moveBatchCheck let serverArgs = Async.PollArg(asyncJobId: asyncJobId) @@ -1263,11 +1307,10 @@ public class FilesRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Files.PaperCreateResult` object on success /// or a `Files.PaperCreateError` object on failure. - @discardableResult public func paperCreate( - path: String, - importFormat: Files.ImportFormat, - input: Data - ) -> UploadRequest { + @discardableResult public func paperCreate(path: String, importFormat: Files.ImportFormat, input: Data) -> UploadRequest< + Files.PaperCreateResultSerializer, + Files.PaperCreateErrorSerializer + > { let route = Files.paperCreate let serverArgs = Files.PaperCreateArg(path: path, importFormat: importFormat) return client.request(route, serverArgs: serverArgs, input: .data(input)) @@ -1284,11 +1327,10 @@ public class FilesRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Files.PaperCreateResult` object on success /// or a `Files.PaperCreateError` object on failure. - @discardableResult public func paperCreate( - path: String, - importFormat: Files.ImportFormat, - input: URL - ) -> UploadRequest { + @discardableResult public func paperCreate(path: String, importFormat: Files.ImportFormat, input: URL) -> UploadRequest< + Files.PaperCreateResultSerializer, + Files.PaperCreateErrorSerializer + > { let route = Files.paperCreate let serverArgs = Files.PaperCreateArg(path: path, importFormat: importFormat) return client.request(route, serverArgs: serverArgs, input: .file(input)) @@ -1305,11 +1347,10 @@ public class FilesRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Files.PaperCreateResult` object on success /// or a `Files.PaperCreateError` object on failure. - @discardableResult public func paperCreate( - path: String, - importFormat: Files.ImportFormat, - input: InputStream - ) -> UploadRequest { + @discardableResult public func paperCreate(path: String, importFormat: Files.ImportFormat, input: InputStream) -> UploadRequest< + Files.PaperCreateResultSerializer, + Files.PaperCreateErrorSerializer + > { let route = Files.paperCreate let serverArgs = Files.PaperCreateArg(path: path, importFormat: importFormat) return client.request(route, serverArgs: serverArgs, input: .stream(input)) @@ -1412,97 +1453,51 @@ public class FilesRoutes: DropboxTransportClientOwning { return client.request(route, serverArgs: serverArgs) } - /// The propertiesAdd route + /// Add property groups to a Dropbox file. See templates/add_for_user or templates/add_for_team to create new + /// templates. /// /// - scope: files.metadata.write /// /// - parameter path: A unique identifier for the file or folder. /// - parameter propertyGroups: The property groups which are to be added to a Dropbox file. No two groups in the - /// input should refer to the same template. + /// input should refer to the same template. /// /// - returns: Through the response callback, the caller will receive a `Void` object on success or a /// `FileProperties.AddPropertiesError` object on failure. @available(*, unavailable, message: "propertiesAdd is deprecated.") - @discardableResult public func propertiesAdd( - path: String, - propertyGroups: [FileProperties.PropertyGroup] - ) -> RpcRequest { + @discardableResult public func propertiesAdd(path: String, propertyGroups: [FileProperties.PropertyGroup]) -> RpcRequest< + VoidSerializer, + FileProperties.AddPropertiesErrorSerializer + > { let route = Files.propertiesAdd let serverArgs = FileProperties.AddPropertiesArg(path: path, propertyGroups: propertyGroups) return client.request(route, serverArgs: serverArgs) } - /// The propertiesOverwrite route + /// Overwrite property groups associated with a file. This endpoint should be used instead of properties/update when + /// property groups are being overwritten rather than updated via a "delta". /// /// - scope: files.metadata.write /// /// - parameter path: A unique identifier for the file or folder. /// - parameter propertyGroups: The property groups "snapshot" updates to force apply. No two groups in the input - /// should refer to the same template. + /// should refer to the same template. /// /// - returns: Through the response callback, the caller will receive a `Void` object on success or a /// `FileProperties.InvalidPropertyGroupError` object on failure. @available(*, unavailable, message: "propertiesOverwrite is deprecated.") - @discardableResult public func propertiesOverwrite( - path: String, - propertyGroups: [FileProperties.PropertyGroup] - ) -> RpcRequest { + @discardableResult public func propertiesOverwrite(path: String, propertyGroups: [FileProperties.PropertyGroup]) -> RpcRequest< + VoidSerializer, + FileProperties.InvalidPropertyGroupErrorSerializer + > { let route = Files.propertiesOverwrite let serverArgs = FileProperties.OverwritePropertyGroupArg(path: path, propertyGroups: propertyGroups) return client.request(route, serverArgs: serverArgs) } - /// The propertiesRemove route - /// - /// - scope: files.metadata.write - /// - /// - parameter path: A unique identifier for the file or folder. - /// - parameter propertyTemplateIds: A list of identifiers for a template created by templatesAddForUser or - /// templatesAddForTeam. - /// - /// - returns: Through the response callback, the caller will receive a `Void` object on success or a - /// `FileProperties.RemovePropertiesError` object on failure. - @available(*, unavailable, message: "propertiesRemove is deprecated.") - @discardableResult public func propertiesRemove( - path: String, - propertyTemplateIds: [String] - ) -> RpcRequest { - let route = Files.propertiesRemove - let serverArgs = FileProperties.RemovePropertiesArg(path: path, propertyTemplateIds: propertyTemplateIds) - return client.request(route, serverArgs: serverArgs) - } - - /// The propertiesTemplateGet route - /// - /// - scope: files.metadata.read - /// - /// - parameter templateId: An identifier for template added by route See templatesAddForUser or - /// templatesAddForTeam. - /// - /// - returns: Through the response callback, the caller will receive a `FileProperties.GetTemplateResult` object on - /// success or a `FileProperties.TemplateError` object on failure. - @available(*, unavailable, message: "propertiesTemplateGet is deprecated.") - @discardableResult public func propertiesTemplateGet(templateId: String) - -> RpcRequest { - let route = Files.propertiesTemplateGet - let serverArgs = FileProperties.GetTemplateArg(templateId: templateId) - return client.request(route, serverArgs: serverArgs) - } - - /// The propertiesTemplateList route - /// - /// - scope: files.metadata.read - /// - /// - /// - returns: Through the response callback, the caller will receive a `FileProperties.ListTemplateResult` object - /// on success or a `FileProperties.TemplateError` object on failure. - @available(*, unavailable, message: "propertiesTemplateList is deprecated.") - @discardableResult public func propertiesTemplateList() -> RpcRequest { - let route = Files.propertiesTemplateList - return client.request(route) - } - - /// The propertiesUpdate route + /// Add, update or remove properties associated with the supplied file and templates. This endpoint should be used + /// instead of properties/overwrite when property groups are being updated via a "delta" instead of overwriting + /// all properties of a file. /// /// - scope: files.metadata.write /// @@ -1512,10 +1507,10 @@ public class FilesRoutes: DropboxTransportClientOwning { /// - returns: Through the response callback, the caller will receive a `Void` object on success or a /// `FileProperties.UpdatePropertiesError` object on failure. @available(*, unavailable, message: "propertiesUpdate is deprecated.") - @discardableResult public func propertiesUpdate( - path: String, - updatePropertyGroups: [FileProperties.PropertyGroupUpdate] - ) -> RpcRequest { + @discardableResult public func propertiesUpdate(path: String, updatePropertyGroups: [FileProperties.PropertyGroupUpdate]) -> RpcRequest< + VoidSerializer, + FileProperties.UpdatePropertiesErrorSerializer + > { let route = Files.propertiesUpdate let serverArgs = FileProperties.UpdatePropertiesArg(path: path, updatePropertyGroups: updatePropertyGroups) return client.request(route, serverArgs: serverArgs) @@ -1537,8 +1532,7 @@ public class FilesRoutes: DropboxTransportClientOwning { } /// Save the data from a specified URL into a file in user's Dropbox. Note that the transfer from the URL must - /// complete within 15 minutes, or the operation will time out and the job will fail. If the given path already - /// exists, the file will be renamed to avoid the conflict (e.g. myfile (1).txt). + /// complete within 15 minutes, or the operation will time out and the job will fail. /// /// - scope: files.content.write /// @@ -1584,14 +1578,11 @@ public class FilesRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Files.SearchResult` object on success or a /// `Files.SearchError` object on failure. - @available(*, unavailable, message: "search is deprecated. Use searchV2.") - @discardableResult public func search( - path: String, - query: String, - start: UInt64 = 0, - maxResults: UInt64 = 100, - mode: Files.SearchMode = .filename - ) -> RpcRequest { + @available(*, unavailable, message: "search is deprecated.") + @discardableResult public func search(path: String, query: String, start: UInt64 = 0, maxResults: UInt64 = 100, mode: Files.SearchMode = .filename) -> RpcRequest< + Files.SearchResultSerializer, + Files.SearchErrorSerializer + > { let route = Files.search let serverArgs = Files.SearchArg(path: path, query: query, start: start, maxResults: maxResults, mode: mode) return client.request(route, serverArgs: serverArgs) @@ -1606,7 +1597,7 @@ public class FilesRoutes: DropboxTransportClientOwning { /// - parameter query: The string to search for. May match across multiple fields based on the request arguments. /// - parameter options: Options for more targeted search results. /// - parameter matchFieldOptions: Options for search results match fields. - /// - parameter includeHighlights: Deprecated and moved this option to SearchMatchFieldOptions. + /// - parameter includeHighlights: Field is deprecated. Deprecated and moved this option to SearchMatchFieldOptions. /// /// - returns: Through the response callback, the caller will receive a `Files.SearchV2Result` object on success or /// a `Files.SearchError` object on failure. @@ -1694,15 +1685,17 @@ public class FilesRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Files.LockFileBatchResult` object on /// success or a `Files.LockFileError` object on failure. - @discardableResult public func unlockFileBatch(entries: [Files.UnlockFileArg]) - -> RpcRequest { + @discardableResult public func unlockFileBatch(entries: [Files.UnlockFileArg]) -> RpcRequest< + Files.LockFileBatchResultSerializer, + Files.LockFileErrorSerializer + > { let route = Files.unlockFileBatch let serverArgs = Files.UnlockFileBatchArg(entries: entries) return client.request(route, serverArgs: serverArgs) } /// Create a new file with the contents provided in the request. Do not use this to upload a file larger than 150 - /// MB. Instead, create an upload session with uploadSessionStart. Calls to this endpoint will count as data + /// MiB. Instead, create an upload session with uploadSessionStart. Calls to this endpoint will count as data /// transport calls for any Dropbox Business teams with a limit on the number of data transport calls allowed /// per month. For more information, see the Data transport limit page /// https://www.dropbox.com/developers/reference/data-transport-limit. @@ -1742,7 +1735,7 @@ public class FilesRoutes: DropboxTransportClientOwning { } /// Create a new file with the contents provided in the request. Do not use this to upload a file larger than 150 - /// MB. Instead, create an upload session with uploadSessionStart. Calls to this endpoint will count as data + /// MiB. Instead, create an upload session with uploadSessionStart. Calls to this endpoint will count as data /// transport calls for any Dropbox Business teams with a limit on the number of data transport calls allowed /// per month. For more information, see the Data transport limit page /// https://www.dropbox.com/developers/reference/data-transport-limit. @@ -1782,7 +1775,7 @@ public class FilesRoutes: DropboxTransportClientOwning { } /// Create a new file with the contents provided in the request. Do not use this to upload a file larger than 150 - /// MB. Instead, create an upload session with uploadSessionStart. Calls to this endpoint will count as data + /// MiB. Instead, create an upload session with uploadSessionStart. Calls to this endpoint will count as data /// transport calls for any Dropbox Business teams with a limit on the number of data transport calls allowed /// per month. For more information, see the Data transport limit page /// https://www.dropbox.com/developers/reference/data-transport-limit. @@ -1821,10 +1814,10 @@ public class FilesRoutes: DropboxTransportClientOwning { return client.request(route, serverArgs: serverArgs, input: .stream(input)) } - /// Append more data to an upload session. A single request should not upload more than 150 MB. The maximum size of - /// a file one can upload to an upload session is 350 GB. Calls to this endpoint will count as data transport - /// calls for any Dropbox Business teams with a limit on the number of data transport calls allowed per month. - /// For more information, see the Data transport limit page + /// Append more data to an upload session. A single request should not upload more than 150 MiB. The maximum size of + /// a file one can upload to an upload session is 2^41 - 2^22 (2,199,019,061,248) bytes. Calls to this endpoint + /// will count as data transport calls for any Dropbox Business teams with a limit on the number of data + /// transport calls allowed per month. For more information, see the Data transport limit page /// https://www.dropbox.com/developers/reference/data-transport-limit. /// /// - scope: files.content.write @@ -1836,21 +1829,20 @@ public class FilesRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Void` object on success or a /// `Files.UploadSessionAppendError` object on failure. - @available(*, unavailable, message: "uploadSessionAppend is deprecated. Use uploadSessionAppendV2.") - @discardableResult public func uploadSessionAppend( - sessionId: String, - offset: UInt64, - input: Data - ) -> UploadRequest { + @available(*, unavailable, message: "uploadSessionAppend is deprecated.") + @discardableResult public func uploadSessionAppend(sessionId: String, offset: UInt64, input: Data) -> UploadRequest< + VoidSerializer, + Files.UploadSessionAppendErrorSerializer + > { let route = Files.uploadSessionAppend let serverArgs = Files.UploadSessionCursor(sessionId: sessionId, offset: offset) return client.request(route, serverArgs: serverArgs, input: .data(input)) } - /// Append more data to an upload session. A single request should not upload more than 150 MB. The maximum size of - /// a file one can upload to an upload session is 350 GB. Calls to this endpoint will count as data transport - /// calls for any Dropbox Business teams with a limit on the number of data transport calls allowed per month. - /// For more information, see the Data transport limit page + /// Append more data to an upload session. A single request should not upload more than 150 MiB. The maximum size of + /// a file one can upload to an upload session is 2^41 - 2^22 (2,199,019,061,248) bytes. Calls to this endpoint + /// will count as data transport calls for any Dropbox Business teams with a limit on the number of data + /// transport calls allowed per month. For more information, see the Data transport limit page /// https://www.dropbox.com/developers/reference/data-transport-limit. /// /// - scope: files.content.write @@ -1862,21 +1854,20 @@ public class FilesRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Void` object on success or a /// `Files.UploadSessionAppendError` object on failure. - @available(*, unavailable, message: "uploadSessionAppend is deprecated. Use uploadSessionAppendV2.") - @discardableResult public func uploadSessionAppend( - sessionId: String, - offset: UInt64, - input: URL - ) -> UploadRequest { + @available(*, unavailable, message: "uploadSessionAppend is deprecated.") + @discardableResult public func uploadSessionAppend(sessionId: String, offset: UInt64, input: URL) -> UploadRequest< + VoidSerializer, + Files.UploadSessionAppendErrorSerializer + > { let route = Files.uploadSessionAppend let serverArgs = Files.UploadSessionCursor(sessionId: sessionId, offset: offset) return client.request(route, serverArgs: serverArgs, input: .file(input)) } - /// Append more data to an upload session. A single request should not upload more than 150 MB. The maximum size of - /// a file one can upload to an upload session is 350 GB. Calls to this endpoint will count as data transport - /// calls for any Dropbox Business teams with a limit on the number of data transport calls allowed per month. - /// For more information, see the Data transport limit page + /// Append more data to an upload session. A single request should not upload more than 150 MiB. The maximum size of + /// a file one can upload to an upload session is 2^41 - 2^22 (2,199,019,061,248) bytes. Calls to this endpoint + /// will count as data transport calls for any Dropbox Business teams with a limit on the number of data + /// transport calls allowed per month. For more information, see the Data transport limit page /// https://www.dropbox.com/developers/reference/data-transport-limit. /// /// - scope: files.content.write @@ -1888,22 +1879,22 @@ public class FilesRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Void` object on success or a /// `Files.UploadSessionAppendError` object on failure. - @available(*, unavailable, message: "uploadSessionAppend is deprecated. Use uploadSessionAppendV2.") - @discardableResult public func uploadSessionAppend( - sessionId: String, - offset: UInt64, - input: InputStream - ) -> UploadRequest { + @available(*, unavailable, message: "uploadSessionAppend is deprecated.") + @discardableResult public func uploadSessionAppend(sessionId: String, offset: UInt64, input: InputStream) -> UploadRequest< + VoidSerializer, + Files.UploadSessionAppendErrorSerializer + > { let route = Files.uploadSessionAppend let serverArgs = Files.UploadSessionCursor(sessionId: sessionId, offset: offset) return client.request(route, serverArgs: serverArgs, input: .stream(input)) } /// Append more data to an upload session. When the parameter close is set, this call will close the session. A - /// single request should not upload more than 150 MB. The maximum size of a file one can upload to an upload - /// session is 350 GB. Calls to this endpoint will count as data transport calls for any Dropbox Business teams - /// with a limit on the number of data transport calls allowed per month. For more information, see the Data - /// transport limit page https://www.dropbox.com/developers/reference/data-transport-limit. + /// single request should not upload more than 150 MiB. The maximum size of a file one can upload to an upload + /// session is 2^41 - 2^22 (2,199,019,061,248) bytes. Calls to this endpoint will count as data transport calls + /// for any Dropbox Business teams with a limit on the number of data transport calls allowed per month. For + /// more information, see the Data transport limit page + /// https://www.dropbox.com/developers/reference/data-transport-limit. /// /// - scope: files.content.write /// @@ -1917,22 +1908,21 @@ public class FilesRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Void` object on success or a /// `Files.UploadSessionAppendError` object on failure. - @discardableResult public func uploadSessionAppendV2( - cursor: Files.UploadSessionCursor, - close: Bool = false, - contentHash: String? = nil, - input: Data - ) -> UploadRequest { + @discardableResult public func uploadSessionAppendV2(cursor: Files.UploadSessionCursor, close: Bool = false, contentHash: String? = nil, input: Data) -> UploadRequest< + VoidSerializer, + Files.UploadSessionAppendErrorSerializer + > { let route = Files.uploadSessionAppendV2 let serverArgs = Files.UploadSessionAppendArg(cursor: cursor, close: close, contentHash: contentHash) return client.request(route, serverArgs: serverArgs, input: .data(input)) } /// Append more data to an upload session. When the parameter close is set, this call will close the session. A - /// single request should not upload more than 150 MB. The maximum size of a file one can upload to an upload - /// session is 350 GB. Calls to this endpoint will count as data transport calls for any Dropbox Business teams - /// with a limit on the number of data transport calls allowed per month. For more information, see the Data - /// transport limit page https://www.dropbox.com/developers/reference/data-transport-limit. + /// single request should not upload more than 150 MiB. The maximum size of a file one can upload to an upload + /// session is 2^41 - 2^22 (2,199,019,061,248) bytes. Calls to this endpoint will count as data transport calls + /// for any Dropbox Business teams with a limit on the number of data transport calls allowed per month. For + /// more information, see the Data transport limit page + /// https://www.dropbox.com/developers/reference/data-transport-limit. /// /// - scope: files.content.write /// @@ -1946,22 +1936,21 @@ public class FilesRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Void` object on success or a /// `Files.UploadSessionAppendError` object on failure. - @discardableResult public func uploadSessionAppendV2( - cursor: Files.UploadSessionCursor, - close: Bool = false, - contentHash: String? = nil, - input: URL - ) -> UploadRequest { + @discardableResult public func uploadSessionAppendV2(cursor: Files.UploadSessionCursor, close: Bool = false, contentHash: String? = nil, input: URL) -> UploadRequest< + VoidSerializer, + Files.UploadSessionAppendErrorSerializer + > { let route = Files.uploadSessionAppendV2 let serverArgs = Files.UploadSessionAppendArg(cursor: cursor, close: close, contentHash: contentHash) return client.request(route, serverArgs: serverArgs, input: .file(input)) } /// Append more data to an upload session. When the parameter close is set, this call will close the session. A - /// single request should not upload more than 150 MB. The maximum size of a file one can upload to an upload - /// session is 350 GB. Calls to this endpoint will count as data transport calls for any Dropbox Business teams - /// with a limit on the number of data transport calls allowed per month. For more information, see the Data - /// transport limit page https://www.dropbox.com/developers/reference/data-transport-limit. + /// single request should not upload more than 150 MiB. The maximum size of a file one can upload to an upload + /// session is 2^41 - 2^22 (2,199,019,061,248) bytes. Calls to this endpoint will count as data transport calls + /// for any Dropbox Business teams with a limit on the number of data transport calls allowed per month. For + /// more information, see the Data transport limit page + /// https://www.dropbox.com/developers/reference/data-transport-limit. /// /// - scope: files.content.write /// @@ -1975,22 +1964,104 @@ public class FilesRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Void` object on success or a /// `Files.UploadSessionAppendError` object on failure. - @discardableResult public func uploadSessionAppendV2( - cursor: Files.UploadSessionCursor, - close: Bool = false, - contentHash: String? = nil, - input: InputStream - ) -> UploadRequest { + @discardableResult public func uploadSessionAppendV2(cursor: Files.UploadSessionCursor, close: Bool = false, contentHash: String? = nil, input: InputStream) -> UploadRequest< + VoidSerializer, + Files.UploadSessionAppendErrorSerializer + > { let route = Files.uploadSessionAppendV2 let serverArgs = Files.UploadSessionAppendArg(cursor: cursor, close: close, contentHash: contentHash) return client.request(route, serverArgs: serverArgs, input: .stream(input)) } + /// Append more data to multiple upload sessions. Each piece of file content to append to each upload session should + /// be concatenated in the request body, in the order delineated by entries in UploadSessionAppendBatchArg and + /// their individual lengths indicated by length in UploadSessionAppendBatchArgEntry. A single request should + /// not upload more than 150 MiB. The maximum size of a file one can upload to an upload session is 2^41 - 2^22 + /// (2,199,019,061,248) bytes. Calls to this endpoint will count as data transport calls for any Dropbox + /// Business teams with a limit on the number of data transport calls allowed per month. For more information, + /// see the Data transport limit page https://www.dropbox.com/developers/reference/data-transport-limit. + /// + /// - scope: files.content.write + /// + /// - parameter entries: Append information for each file in the batch. + /// - parameter contentHash: A hash of the entire request body which is all the concatenated pieces of file content + /// that were uploaded in this call. If provided and the uploaded content does not match this hash, an error + /// will be returned. For more information see our Content hash + /// https://www.dropbox.com/developers/reference/content-hash page. + /// - parameter input: The file to upload, as an Data object. + /// + /// - returns: Through the response callback, the caller will receive a `Files.UploadSessionAppendBatchResult` + /// object on success or a `Files.UploadSessionAppendBatchError` object on failure. + @discardableResult public func uploadSessionAppendBatch(entries: [Files.UploadSessionAppendBatchArgEntry], contentHash: String? = nil, input: Data) -> UploadRequest< + Files.UploadSessionAppendBatchResultSerializer, + Files.UploadSessionAppendBatchErrorSerializer + > { + let route = Files.uploadSessionAppendBatch + let serverArgs = Files.UploadSessionAppendBatchArg(entries: entries, contentHash: contentHash) + return client.request(route, serverArgs: serverArgs, input: .data(input)) + } + + /// Append more data to multiple upload sessions. Each piece of file content to append to each upload session should + /// be concatenated in the request body, in the order delineated by entries in UploadSessionAppendBatchArg and + /// their individual lengths indicated by length in UploadSessionAppendBatchArgEntry. A single request should + /// not upload more than 150 MiB. The maximum size of a file one can upload to an upload session is 2^41 - 2^22 + /// (2,199,019,061,248) bytes. Calls to this endpoint will count as data transport calls for any Dropbox + /// Business teams with a limit on the number of data transport calls allowed per month. For more information, + /// see the Data transport limit page https://www.dropbox.com/developers/reference/data-transport-limit. + /// + /// - scope: files.content.write + /// + /// - parameter entries: Append information for each file in the batch. + /// - parameter contentHash: A hash of the entire request body which is all the concatenated pieces of file content + /// that were uploaded in this call. If provided and the uploaded content does not match this hash, an error + /// will be returned. For more information see our Content hash + /// https://www.dropbox.com/developers/reference/content-hash page. + /// - parameter input: The file to upload, as an URL object. + /// + /// - returns: Through the response callback, the caller will receive a `Files.UploadSessionAppendBatchResult` + /// object on success or a `Files.UploadSessionAppendBatchError` object on failure. + @discardableResult public func uploadSessionAppendBatch(entries: [Files.UploadSessionAppendBatchArgEntry], contentHash: String? = nil, input: URL) -> UploadRequest< + Files.UploadSessionAppendBatchResultSerializer, + Files.UploadSessionAppendBatchErrorSerializer + > { + let route = Files.uploadSessionAppendBatch + let serverArgs = Files.UploadSessionAppendBatchArg(entries: entries, contentHash: contentHash) + return client.request(route, serverArgs: serverArgs, input: .file(input)) + } + + /// Append more data to multiple upload sessions. Each piece of file content to append to each upload session should + /// be concatenated in the request body, in the order delineated by entries in UploadSessionAppendBatchArg and + /// their individual lengths indicated by length in UploadSessionAppendBatchArgEntry. A single request should + /// not upload more than 150 MiB. The maximum size of a file one can upload to an upload session is 2^41 - 2^22 + /// (2,199,019,061,248) bytes. Calls to this endpoint will count as data transport calls for any Dropbox + /// Business teams with a limit on the number of data transport calls allowed per month. For more information, + /// see the Data transport limit page https://www.dropbox.com/developers/reference/data-transport-limit. + /// + /// - scope: files.content.write + /// + /// - parameter entries: Append information for each file in the batch. + /// - parameter contentHash: A hash of the entire request body which is all the concatenated pieces of file content + /// that were uploaded in this call. If provided and the uploaded content does not match this hash, an error + /// will be returned. For more information see our Content hash + /// https://www.dropbox.com/developers/reference/content-hash page. + /// - parameter input: The file to upload, as an InputStream object. + /// + /// - returns: Through the response callback, the caller will receive a `Files.UploadSessionAppendBatchResult` + /// object on success or a `Files.UploadSessionAppendBatchError` object on failure. + @discardableResult public func uploadSessionAppendBatch(entries: [Files.UploadSessionAppendBatchArgEntry], contentHash: String? = nil, input: InputStream) -> UploadRequest< + Files.UploadSessionAppendBatchResultSerializer, + Files.UploadSessionAppendBatchErrorSerializer + > { + let route = Files.uploadSessionAppendBatch + let serverArgs = Files.UploadSessionAppendBatchArg(entries: entries, contentHash: contentHash) + return client.request(route, serverArgs: serverArgs, input: .stream(input)) + } + /// Finish an upload session and save the uploaded data to the given file path. A single request should not upload - /// more than 150 MB. The maximum size of a file one can upload to an upload session is 350 GB. Calls to this - /// endpoint will count as data transport calls for any Dropbox Business teams with a limit on the number of - /// data transport calls allowed per month. For more information, see the Data transport limit page - /// https://www.dropbox.com/developers/reference/data-transport-limit. + /// more than 150 MiB. The maximum size of a file one can upload to an upload session is 2^41 - 2^22 + /// (2,199,019,061,248) bytes. Calls to this endpoint will count as data transport calls for any Dropbox + /// Business teams with a limit on the number of data transport calls allowed per month. For more information, + /// see the Data transport limit page https://www.dropbox.com/developers/reference/data-transport-limit. /// /// - scope: files.content.write /// @@ -2003,22 +2074,20 @@ public class FilesRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Files.FileMetadata` object on success or a /// `Files.UploadSessionFinishError` object on failure. - @discardableResult public func uploadSessionFinish( - cursor: Files.UploadSessionCursor, - commit: Files.CommitInfo, - contentHash: String? = nil, - input: Data - ) -> UploadRequest { + @discardableResult public func uploadSessionFinish(cursor: Files.UploadSessionCursor, commit: Files.CommitInfo, contentHash: String? = nil, input: Data) -> UploadRequest< + Files.FileMetadataSerializer, + Files.UploadSessionFinishErrorSerializer + > { let route = Files.uploadSessionFinish let serverArgs = Files.UploadSessionFinishArg(cursor: cursor, commit: commit, contentHash: contentHash) return client.request(route, serverArgs: serverArgs, input: .data(input)) } /// Finish an upload session and save the uploaded data to the given file path. A single request should not upload - /// more than 150 MB. The maximum size of a file one can upload to an upload session is 350 GB. Calls to this - /// endpoint will count as data transport calls for any Dropbox Business teams with a limit on the number of - /// data transport calls allowed per month. For more information, see the Data transport limit page - /// https://www.dropbox.com/developers/reference/data-transport-limit. + /// more than 150 MiB. The maximum size of a file one can upload to an upload session is 2^41 - 2^22 + /// (2,199,019,061,248) bytes. Calls to this endpoint will count as data transport calls for any Dropbox + /// Business teams with a limit on the number of data transport calls allowed per month. For more information, + /// see the Data transport limit page https://www.dropbox.com/developers/reference/data-transport-limit. /// /// - scope: files.content.write /// @@ -2031,22 +2100,20 @@ public class FilesRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Files.FileMetadata` object on success or a /// `Files.UploadSessionFinishError` object on failure. - @discardableResult public func uploadSessionFinish( - cursor: Files.UploadSessionCursor, - commit: Files.CommitInfo, - contentHash: String? = nil, - input: URL - ) -> UploadRequest { + @discardableResult public func uploadSessionFinish(cursor: Files.UploadSessionCursor, commit: Files.CommitInfo, contentHash: String? = nil, input: URL) -> UploadRequest< + Files.FileMetadataSerializer, + Files.UploadSessionFinishErrorSerializer + > { let route = Files.uploadSessionFinish let serverArgs = Files.UploadSessionFinishArg(cursor: cursor, commit: commit, contentHash: contentHash) return client.request(route, serverArgs: serverArgs, input: .file(input)) } /// Finish an upload session and save the uploaded data to the given file path. A single request should not upload - /// more than 150 MB. The maximum size of a file one can upload to an upload session is 350 GB. Calls to this - /// endpoint will count as data transport calls for any Dropbox Business teams with a limit on the number of - /// data transport calls allowed per month. For more information, see the Data transport limit page - /// https://www.dropbox.com/developers/reference/data-transport-limit. + /// more than 150 MiB. The maximum size of a file one can upload to an upload session is 2^41 - 2^22 + /// (2,199,019,061,248) bytes. Calls to this endpoint will count as data transport calls for any Dropbox + /// Business teams with a limit on the number of data transport calls allowed per month. For more information, + /// see the Data transport limit page https://www.dropbox.com/developers/reference/data-transport-limit. /// /// - scope: files.content.write /// @@ -2075,13 +2142,13 @@ public class FilesRoutes: DropboxTransportClientOwning { /// throughput. Once the file contents have been uploaded, rather than calling uploadSessionFinish, use this /// route to finish all your upload sessions in a single request. close in UploadSessionStartArg or close in /// UploadSessionAppendArg needs to be true for the last uploadSessionStart or uploadSessionAppendV2 call. The - /// maximum size of a file one can upload to an upload session is 350 GB. This route will return a job_id - /// immediately and do the async commit job in background. Use uploadSessionFinishBatchCheck to check the job - /// status. For the same account, this route should be executed serially. That means you should not start the - /// next job before current job finishes. We allow up to 1000 entries in a single request. Calls to this - /// endpoint will count as data transport calls for any Dropbox Business teams with a limit on the number of - /// data transport calls allowed per month. For more information, see the Data transport limit page - /// https://www.dropbox.com/developers/reference/data-transport-limit. + /// maximum size of a file one can upload to an upload session is 2^41 - 2^22 (2,199,019,061,248) bytes. This + /// route will return a job_id immediately and do the async commit job in background. Use + /// uploadSessionFinishBatchCheck to check the job status. For the same account, this route should be executed + /// serially. That means you should not start the next job before current job finishes. We allow up to 1000 + /// entries in a single request. Calls to this endpoint will count as data transport calls for any Dropbox + /// Business teams with a limit on the number of data transport calls allowed per month. For more information, + /// see the Data transport limit page https://www.dropbox.com/developers/reference/data-transport-limit. /// /// - scope: files.content.write /// @@ -2089,9 +2156,11 @@ public class FilesRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Files.UploadSessionFinishBatchLaunch` /// object on success or a `Void` object on failure. - @available(*, unavailable, message: "uploadSessionFinishBatch is deprecated. Use uploadSessionFinishBatchV2.") - @discardableResult public func uploadSessionFinishBatch(entries: [Files.UploadSessionFinishArg]) - -> RpcRequest { + @available(*, unavailable, message: "uploadSessionFinishBatch is deprecated.") + @discardableResult public func uploadSessionFinishBatch(entries: [Files.UploadSessionFinishArg]) -> RpcRequest< + Files.UploadSessionFinishBatchLaunchSerializer, + VoidSerializer + > { let route = Files.uploadSessionFinishBatch let serverArgs = Files.UploadSessionFinishBatchArg(entries: entries) return client.request(route, serverArgs: serverArgs) @@ -2102,10 +2171,10 @@ public class FilesRoutes: DropboxTransportClientOwning { /// throughput. Once the file contents have been uploaded, rather than calling uploadSessionFinish, use this /// route to finish all your upload sessions in a single request. close in UploadSessionStartArg or close in /// UploadSessionAppendArg needs to be true for the last uploadSessionStart or uploadSessionAppendV2 call of - /// each upload session. The maximum size of a file one can upload to an upload session is 350 GB. We allow up - /// to 1000 entries in a single request. Calls to this endpoint will count as data transport calls for any - /// Dropbox Business teams with a limit on the number of data transport calls allowed per month. For more - /// information, see the Data transport limit page + /// each upload session. The maximum size of a file one can upload to an upload session is 2^41 - 2^22 + /// (2,199,019,061,248) bytes. We allow up to 1000 entries in a single request. Calls to this endpoint will + /// count as data transport calls for any Dropbox Business teams with a limit on the number of data transport + /// calls allowed per month. For more information, see the Data transport limit page /// https://www.dropbox.com/developers/reference/data-transport-limit. /// /// - scope: files.content.write @@ -2114,8 +2183,10 @@ public class FilesRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Files.UploadSessionFinishBatchResult` /// object on success or a `Void` object on failure. - @discardableResult public func uploadSessionFinishBatchV2(entries: [Files.UploadSessionFinishArg]) - -> RpcRequest { + @discardableResult public func uploadSessionFinishBatchV2(entries: [Files.UploadSessionFinishArg]) -> RpcRequest< + Files.UploadSessionFinishBatchResultSerializer, + VoidSerializer + > { let route = Files.uploadSessionFinishBatchV2 let serverArgs = Files.UploadSessionFinishBatchArg(entries: entries) return client.request(route, serverArgs: serverArgs) @@ -2131,32 +2202,36 @@ public class FilesRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Files.UploadSessionFinishBatchJobStatus` /// object on success or a `Async.PollError` object on failure. - @discardableResult public func uploadSessionFinishBatchCheck(asyncJobId: String) - -> RpcRequest { + @discardableResult public func uploadSessionFinishBatchCheck(asyncJobId: String) -> RpcRequest< + Files.UploadSessionFinishBatchJobStatusSerializer, + Async.PollErrorSerializer + > { let route = Files.uploadSessionFinishBatchCheck let serverArgs = Async.PollArg(asyncJobId: asyncJobId) return client.request(route, serverArgs: serverArgs) } /// Upload sessions allow you to upload a single file in one or more requests, for example where the size of the - /// file is greater than 150 MB. This call starts a new upload session with the given data. You can then use - /// uploadSessionAppendV2 to add more data and uploadSessionFinish to save all the data to a file in Dropbox. A - /// single request should not upload more than 150 MB. The maximum size of a file one can upload to an upload - /// session is 350 GB. An upload session can be used for a maximum of 7 days. Attempting to use an sessionId in - /// UploadSessionStartResult with uploadSessionAppendV2 or uploadSessionFinish more than 7 days after its - /// creation will return a notFound in UploadSessionLookupError. Calls to this endpoint will count as data - /// transport calls for any Dropbox Business teams with a limit on the number of data transport calls allowed - /// per month. For more information, see the Data transport limit page + /// file is greater than 150 MiB. This call starts a new upload session with the given data. You can then use + /// uploadSessionAppendV2 or uploadSessionAppendBatch to add more data, then uploadSessionFinish or + /// uploadSessionFinishBatchV2 to save all the data to a file in Dropbox. A single request should not upload + /// more than 150 MiB. The maximum size of a file one can upload to an upload session is 2^41 - 2^22 + /// (2,199,019,061,248) bytes. An upload session can be used for a maximum of 7 days. Attempting to use a + /// sessionId in UploadSessionStartResult with uploadSessionAppendV2 or other upload session routes more than 7 + /// days after its creation will return notFound in UploadSessionLookupError. Calls to this endpoint will count + /// as data transport calls for any Dropbox Business teams with a limit on the number of data transport calls + /// allowed per month. For more information, see the Data transport limit page /// https://www.dropbox.com/developers/reference/data-transport-limit. By default, upload sessions require you /// to send content of the file in sequential order via consecutive uploadSessionStart, uploadSessionAppendV2, - /// uploadSessionFinish calls. For better performance, you can instead optionally use a concurrent in - /// UploadSessionType upload session. To start a new concurrent session, set sessionType in - /// UploadSessionStartArg to concurrent in UploadSessionType. After that, you can send file data in concurrent - /// uploadSessionAppendV2 requests. Finally finish the session with uploadSessionFinish. There are couple of - /// constraints with concurrent sessions to make them work. You can not send data with uploadSessionStart or - /// uploadSessionFinish call, only with uploadSessionAppendV2 call. Also data uploaded in uploadSessionAppendV2 - /// call must be multiple of 4194304 bytes (except for last uploadSessionAppendV2 with close in - /// UploadSessionStartArg to true, that may contain any remaining data). + /// and uploadSessionFinish calls (or their batch variants). For better performance, you can optionally set + /// sessionType in UploadSessionStartArg to concurrent in UploadSessionType to start a concurrent upload + /// session. Concurrent upload sessions may upload file data in concurrent uploadSessionAppendV2 requests, with + /// a few caveats. After all of the requests are complete, finish the session with uploadSessionFinish as + /// normal. You can not send data in a uploadSessionStart or uploadSessionFinish call, only with + /// uploadSessionAppendV2 or uploadSessionAppendBatch. Also, the length of the uploaded data in a call to + /// uploadSessionAppendV2 or uploadSessionAppendBatch must be a multiple of 2^22 (4,194,304) bytes, except for + /// the final append request with close in UploadSessionAppendArg or close in UploadSessionAppendBatchArgEntry + /// set to true that may contain any remaining data. /// /// - scope: files.content.write /// @@ -2171,36 +2246,36 @@ public class FilesRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Files.UploadSessionStartResult` object on /// success or a `Files.UploadSessionStartError` object on failure. - @discardableResult public func uploadSessionStart( - close: Bool = false, - sessionType: Files.UploadSessionType? = nil, - contentHash: String? = nil, - input: Data - ) -> UploadRequest { + @discardableResult public func uploadSessionStart(close: Bool = false, sessionType: Files.UploadSessionType? = nil, contentHash: String? = nil, input: Data) -> UploadRequest< + Files.UploadSessionStartResultSerializer, + Files.UploadSessionStartErrorSerializer + > { let route = Files.uploadSessionStart let serverArgs = Files.UploadSessionStartArg(close: close, sessionType: sessionType, contentHash: contentHash) return client.request(route, serverArgs: serverArgs, input: .data(input)) } /// Upload sessions allow you to upload a single file in one or more requests, for example where the size of the - /// file is greater than 150 MB. This call starts a new upload session with the given data. You can then use - /// uploadSessionAppendV2 to add more data and uploadSessionFinish to save all the data to a file in Dropbox. A - /// single request should not upload more than 150 MB. The maximum size of a file one can upload to an upload - /// session is 350 GB. An upload session can be used for a maximum of 7 days. Attempting to use an sessionId in - /// UploadSessionStartResult with uploadSessionAppendV2 or uploadSessionFinish more than 7 days after its - /// creation will return a notFound in UploadSessionLookupError. Calls to this endpoint will count as data - /// transport calls for any Dropbox Business teams with a limit on the number of data transport calls allowed - /// per month. For more information, see the Data transport limit page + /// file is greater than 150 MiB. This call starts a new upload session with the given data. You can then use + /// uploadSessionAppendV2 or uploadSessionAppendBatch to add more data, then uploadSessionFinish or + /// uploadSessionFinishBatchV2 to save all the data to a file in Dropbox. A single request should not upload + /// more than 150 MiB. The maximum size of a file one can upload to an upload session is 2^41 - 2^22 + /// (2,199,019,061,248) bytes. An upload session can be used for a maximum of 7 days. Attempting to use a + /// sessionId in UploadSessionStartResult with uploadSessionAppendV2 or other upload session routes more than 7 + /// days after its creation will return notFound in UploadSessionLookupError. Calls to this endpoint will count + /// as data transport calls for any Dropbox Business teams with a limit on the number of data transport calls + /// allowed per month. For more information, see the Data transport limit page /// https://www.dropbox.com/developers/reference/data-transport-limit. By default, upload sessions require you /// to send content of the file in sequential order via consecutive uploadSessionStart, uploadSessionAppendV2, - /// uploadSessionFinish calls. For better performance, you can instead optionally use a concurrent in - /// UploadSessionType upload session. To start a new concurrent session, set sessionType in - /// UploadSessionStartArg to concurrent in UploadSessionType. After that, you can send file data in concurrent - /// uploadSessionAppendV2 requests. Finally finish the session with uploadSessionFinish. There are couple of - /// constraints with concurrent sessions to make them work. You can not send data with uploadSessionStart or - /// uploadSessionFinish call, only with uploadSessionAppendV2 call. Also data uploaded in uploadSessionAppendV2 - /// call must be multiple of 4194304 bytes (except for last uploadSessionAppendV2 with close in - /// UploadSessionStartArg to true, that may contain any remaining data). + /// and uploadSessionFinish calls (or their batch variants). For better performance, you can optionally set + /// sessionType in UploadSessionStartArg to concurrent in UploadSessionType to start a concurrent upload + /// session. Concurrent upload sessions may upload file data in concurrent uploadSessionAppendV2 requests, with + /// a few caveats. After all of the requests are complete, finish the session with uploadSessionFinish as + /// normal. You can not send data in a uploadSessionStart or uploadSessionFinish call, only with + /// uploadSessionAppendV2 or uploadSessionAppendBatch. Also, the length of the uploaded data in a call to + /// uploadSessionAppendV2 or uploadSessionAppendBatch must be a multiple of 2^22 (4,194,304) bytes, except for + /// the final append request with close in UploadSessionAppendArg or close in UploadSessionAppendBatchArgEntry + /// set to true that may contain any remaining data. /// /// - scope: files.content.write /// @@ -2215,36 +2290,36 @@ public class FilesRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Files.UploadSessionStartResult` object on /// success or a `Files.UploadSessionStartError` object on failure. - @discardableResult public func uploadSessionStart( - close: Bool = false, - sessionType: Files.UploadSessionType? = nil, - contentHash: String? = nil, - input: URL - ) -> UploadRequest { + @discardableResult public func uploadSessionStart(close: Bool = false, sessionType: Files.UploadSessionType? = nil, contentHash: String? = nil, input: URL) -> UploadRequest< + Files.UploadSessionStartResultSerializer, + Files.UploadSessionStartErrorSerializer + > { let route = Files.uploadSessionStart let serverArgs = Files.UploadSessionStartArg(close: close, sessionType: sessionType, contentHash: contentHash) return client.request(route, serverArgs: serverArgs, input: .file(input)) } /// Upload sessions allow you to upload a single file in one or more requests, for example where the size of the - /// file is greater than 150 MB. This call starts a new upload session with the given data. You can then use - /// uploadSessionAppendV2 to add more data and uploadSessionFinish to save all the data to a file in Dropbox. A - /// single request should not upload more than 150 MB. The maximum size of a file one can upload to an upload - /// session is 350 GB. An upload session can be used for a maximum of 7 days. Attempting to use an sessionId in - /// UploadSessionStartResult with uploadSessionAppendV2 or uploadSessionFinish more than 7 days after its - /// creation will return a notFound in UploadSessionLookupError. Calls to this endpoint will count as data - /// transport calls for any Dropbox Business teams with a limit on the number of data transport calls allowed - /// per month. For more information, see the Data transport limit page + /// file is greater than 150 MiB. This call starts a new upload session with the given data. You can then use + /// uploadSessionAppendV2 or uploadSessionAppendBatch to add more data, then uploadSessionFinish or + /// uploadSessionFinishBatchV2 to save all the data to a file in Dropbox. A single request should not upload + /// more than 150 MiB. The maximum size of a file one can upload to an upload session is 2^41 - 2^22 + /// (2,199,019,061,248) bytes. An upload session can be used for a maximum of 7 days. Attempting to use a + /// sessionId in UploadSessionStartResult with uploadSessionAppendV2 or other upload session routes more than 7 + /// days after its creation will return notFound in UploadSessionLookupError. Calls to this endpoint will count + /// as data transport calls for any Dropbox Business teams with a limit on the number of data transport calls + /// allowed per month. For more information, see the Data transport limit page /// https://www.dropbox.com/developers/reference/data-transport-limit. By default, upload sessions require you /// to send content of the file in sequential order via consecutive uploadSessionStart, uploadSessionAppendV2, - /// uploadSessionFinish calls. For better performance, you can instead optionally use a concurrent in - /// UploadSessionType upload session. To start a new concurrent session, set sessionType in - /// UploadSessionStartArg to concurrent in UploadSessionType. After that, you can send file data in concurrent - /// uploadSessionAppendV2 requests. Finally finish the session with uploadSessionFinish. There are couple of - /// constraints with concurrent sessions to make them work. You can not send data with uploadSessionStart or - /// uploadSessionFinish call, only with uploadSessionAppendV2 call. Also data uploaded in uploadSessionAppendV2 - /// call must be multiple of 4194304 bytes (except for last uploadSessionAppendV2 with close in - /// UploadSessionStartArg to true, that may contain any remaining data). + /// and uploadSessionFinish calls (or their batch variants). For better performance, you can optionally set + /// sessionType in UploadSessionStartArg to concurrent in UploadSessionType to start a concurrent upload + /// session. Concurrent upload sessions may upload file data in concurrent uploadSessionAppendV2 requests, with + /// a few caveats. After all of the requests are complete, finish the session with uploadSessionFinish as + /// normal. You can not send data in a uploadSessionStart or uploadSessionFinish call, only with + /// uploadSessionAppendV2 or uploadSessionAppendBatch. Also, the length of the uploaded data in a call to + /// uploadSessionAppendV2 or uploadSessionAppendBatch must be a multiple of 2^22 (4,194,304) bytes, except for + /// the final append request with close in UploadSessionAppendArg or close in UploadSessionAppendBatchArgEntry + /// set to true that may contain any remaining data. /// /// - scope: files.content.write /// @@ -2270,9 +2345,9 @@ public class FilesRoutes: DropboxTransportClientOwning { return client.request(route, serverArgs: serverArgs, input: .stream(input)) } - /// This route starts batch of upload_sessions. Please refer to `upload_session/start` usage. Calls to this endpoint - /// will count as data transport calls for any Dropbox Business teams with a limit on the number of data - /// transport calls allowed per month. For more information, see the Data transport limit page + /// Start a batch of upload sessions. See uploadSessionStart. Calls to this endpoint will count as data transport + /// calls for any Dropbox Business teams with a limit on the number of data transport calls allowed per month. + /// For more information, see the Data transport limit page /// https://www.dropbox.com/developers/reference/data-transport-limit. /// /// - scope: files.content.write @@ -2283,10 +2358,10 @@ public class FilesRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Files.UploadSessionStartBatchResult` object /// on success or a `Void` object on failure. - @discardableResult public func uploadSessionStartBatch( - numSessions: UInt64, - sessionType: Files.UploadSessionType? = nil - ) -> RpcRequest { + @discardableResult public func uploadSessionStartBatch(numSessions: UInt64, sessionType: Files.UploadSessionType? = nil) -> RpcRequest< + Files.UploadSessionStartBatchResultSerializer, + VoidSerializer + > { let route = Files.uploadSessionStartBatch let serverArgs = Files.UploadSessionStartBatchArg(numSessions: numSessions, sessionType: sessionType) return client.request(route, serverArgs: serverArgs) diff --git a/Source/SwiftyDropbox/Shared/Generated/Paper.swift b/Source/SwiftyDropbox/Shared/Generated/Paper.swift index 5f525bf3..505d2d21 100644 --- a/Source/SwiftyDropbox/Shared/Generated/Paper.swift +++ b/Source/SwiftyDropbox/Shared/Generated/Paper.swift @@ -46,8 +46,9 @@ public class Paper { switch json { case .dictionary(let dict): let member = try Sharing.MemberSelectorSerializer().deserialize(dict["member"] ?? .null) - let permissionLevel = try Paper.PaperDocPermissionLevelSerializer() - .deserialize(dict["permission_level"] ?? Paper.PaperDocPermissionLevelSerializer().serialize(.edit)) + let permissionLevel = try Paper.PaperDocPermissionLevelSerializer().deserialize( + dict["permission_level"] ?? Paper.PaperDocPermissionLevelSerializer().serialize(.edit) + ) return AddMember(member: member, permissionLevel: permissionLevel) default: throw JSONSerializerError.deserializeError(type: AddMember.self, json: json) @@ -543,6 +544,8 @@ public class Paper { case html /// The markdown export format. case markdown + /// Doc metadata JSON export format. + case json /// An unspecified error. case other @@ -571,6 +574,10 @@ public class Paper { var d = [String: JSON]() d[".tag"] = .str("markdown") return .dictionary(d) + case .json: + var d = [String: JSON]() + d[".tag"] = .str("json") + return .dictionary(d) case .other: var d = [String: JSON]() d[".tag"] = .str("other") @@ -587,6 +594,8 @@ public class Paper { return ExportFormat.html case "markdown": return ExportFormat.markdown + case "json": + return ExportFormat.json case "other": return ExportFormat.other default: @@ -805,8 +814,9 @@ public class Paper { public func deserialize(_ json: JSON) throws -> FoldersContainingPaperDoc { switch json { case .dictionary(let dict): - let folderSharingPolicyType = try NullableSerializer(Paper.FolderSharingPolicyTypeSerializer()) - .deserialize(dict["folder_sharing_policy_type"] ?? .null) + let folderSharingPolicyType = try NullableSerializer(Paper.FolderSharingPolicyTypeSerializer()).deserialize( + dict["folder_sharing_policy_type"] ?? .null + ) let folders = try NullableSerializer(ArraySerializer(Paper.FolderSerializer())).deserialize(dict["folders"] ?? .null) return FoldersContainingPaperDoc(folderSharingPolicyType: folderSharingPolicyType, folders: folders) default: @@ -815,6 +825,54 @@ public class Paper { } } + /// Argument for retrieving Paper doc metadata. Accepts either a legacy Paper doc ID or a Cloud Doc file ID. + public class GetDocMetadataArg: CustomStringConvertible, JSONRepresentable { + /// Legacy Paper doc identifier. + public let docId: String? + /// Dropbox file ID for Cloud Docs (post-PiFS migration). + public let fileId: String? + public init(docId: String? = nil, fileId: String? = nil) { + nullableValidator(stringValidator())(docId) + self.docId = docId + nullableValidator(stringValidator(minLength: 4, pattern: "id:.+"))(fileId) + self.fileId = fileId + } + + func json() throws -> JSON { + try GetDocMetadataArgSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try GetDocMetadataArgSerializer().serialize(self)))" + } catch { + return "Failed to generate description for GetDocMetadataArg: \(error)" + } + } + } + + public class GetDocMetadataArgSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: GetDocMetadataArg) throws -> JSON { + let output = [ + "doc_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.docId), + "file_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.fileId), + ] + return .dictionary(output) + } + + public func deserialize(_ json: JSON) throws -> GetDocMetadataArg { + switch json { + case .dictionary(let dict): + let docId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["doc_id"] ?? .null) + let fileId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["file_id"] ?? .null) + return GetDocMetadataArg(docId: docId, fileId: fileId) + default: + throw JSONSerializerError.deserializeError(type: GetDocMetadataArg.self, json: json) + } + } + } + /// The import format of the incoming data. public enum ImportFormat: CustomStringConvertible, JSONRepresentable { /// The provided data is interpreted as standard HTML. @@ -997,17 +1055,21 @@ public class Paper { /// Size limit per batch. The maximum number of docs that can be retrieved per batch is 1000. Higher value /// results in invalid arguments error. public let limit: Int32 + /// Do not return results beyond this date. Behavior depends on sort order. + public let stopAtDate: Date? public init( filterBy: Paper.ListPaperDocsFilterBy = .docsAccessed, sortBy: Paper.ListPaperDocsSortBy = .accessed, sortOrder: Paper.ListPaperDocsSortOrder = .ascending, - limit: Int32 = 1_000 + limit: Int32 = 1_000, + stopAtDate: Date? = nil ) { self.filterBy = filterBy self.sortBy = sortBy self.sortOrder = sortOrder comparableValidator(minValue: 1, maxValue: 1_000)(limit) self.limit = limit + self.stopAtDate = stopAtDate } func json() throws -> JSON { @@ -1031,6 +1093,7 @@ public class Paper { "sort_by": try Paper.ListPaperDocsSortBySerializer().serialize(value.sortBy), "sort_order": try Paper.ListPaperDocsSortOrderSerializer().serialize(value.sortOrder), "limit": try Serialization._Int32Serializer.serialize(value.limit), + "stop_at_date": try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).serialize(value.stopAtDate), ] return .dictionary(output) } @@ -1038,14 +1101,16 @@ public class Paper { public func deserialize(_ json: JSON) throws -> ListPaperDocsArgs { switch json { case .dictionary(let dict): - let filterBy = try Paper.ListPaperDocsFilterBySerializer() - .deserialize(dict["filter_by"] ?? Paper.ListPaperDocsFilterBySerializer().serialize(.docsAccessed)) - let sortBy = try Paper.ListPaperDocsSortBySerializer() - .deserialize(dict["sort_by"] ?? Paper.ListPaperDocsSortBySerializer().serialize(.accessed)) - let sortOrder = try Paper.ListPaperDocsSortOrderSerializer() - .deserialize(dict["sort_order"] ?? Paper.ListPaperDocsSortOrderSerializer().serialize(.ascending)) + let filterBy = try Paper.ListPaperDocsFilterBySerializer().deserialize( + dict["filter_by"] ?? Paper.ListPaperDocsFilterBySerializer().serialize(.docsAccessed) + ) + let sortBy = try Paper.ListPaperDocsSortBySerializer().deserialize(dict["sort_by"] ?? Paper.ListPaperDocsSortBySerializer().serialize(.accessed)) + let sortOrder = try Paper.ListPaperDocsSortOrderSerializer().deserialize( + dict["sort_order"] ?? Paper.ListPaperDocsSortOrderSerializer().serialize(.ascending) + ) let limit = try Serialization._Int32Serializer.deserialize(dict["limit"] ?? .number(1_000)) - return ListPaperDocsArgs(filterBy: filterBy, sortBy: sortBy, sortOrder: sortOrder, limit: limit) + let stopAtDate = try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).deserialize(dict["stop_at_date"] ?? .null) + return ListPaperDocsArgs(filterBy: filterBy, sortBy: sortBy, sortOrder: sortOrder, limit: limit, stopAtDate: stopAtDate) default: throw JSONSerializerError.deserializeError(type: ListPaperDocsArgs.self, json: json) } @@ -1594,8 +1659,9 @@ public class Paper { case .dictionary(let dict): let docId = try Serialization._StringSerializer.deserialize(dict["doc_id"] ?? .null) let limit = try Serialization._Int32Serializer.deserialize(dict["limit"] ?? .number(1_000)) - let filterBy = try Paper.UserOnPaperDocFilterSerializer() - .deserialize(dict["filter_by"] ?? Paper.UserOnPaperDocFilterSerializer().serialize(.shared)) + let filterBy = try Paper.UserOnPaperDocFilterSerializer().deserialize( + dict["filter_by"] ?? Paper.UserOnPaperDocFilterSerializer().serialize(.shared) + ) return ListUsersOnPaperDocArgs(docId: docId, limit: limit, filterBy: filterBy) default: throw JSONSerializerError.deserializeError(type: ListUsersOnPaperDocArgs.self, json: json) @@ -1986,8 +2052,13 @@ public class Paper { public class PaperDocExport: Paper.RefPaperDoc { /// (no description) public let exportFormat: Paper.ExportFormat - public init(docId: String, exportFormat: Paper.ExportFormat) { + /// When true, export includes comment threads (e.g. markdown footnotes). When false or omitted, body only. + /// Other formats may adopt this later; currently only markdown uses it. Plain bool (not optional): + /// protoc-gen-godbx does not support proto3 optional yet. + public let includeComments: Bool + public init(docId: String, exportFormat: Paper.ExportFormat, includeComments: Bool = false) { self.exportFormat = exportFormat + self.includeComments = includeComments super.init(docId: docId) } @@ -2006,6 +2077,7 @@ public class Paper { let output = [ "doc_id": try Serialization._StringSerializer.serialize(value.docId), "export_format": try Paper.ExportFormatSerializer().serialize(value.exportFormat), + "include_comments": try Serialization._BoolSerializer.serialize(value.includeComments), ] return .dictionary(output) } @@ -2015,7 +2087,8 @@ public class Paper { case .dictionary(let dict): let docId = try Serialization._StringSerializer.deserialize(dict["doc_id"] ?? .null) let exportFormat = try Paper.ExportFormatSerializer().deserialize(dict["export_format"] ?? .null) - return PaperDocExport(docId: docId, exportFormat: exportFormat) + let includeComments = try Serialization._BoolSerializer.deserialize(dict["include_comments"] ?? .number(0)) + return PaperDocExport(docId: docId, exportFormat: exportFormat, includeComments: includeComments) default: throw JSONSerializerError.deserializeError(type: PaperDocExport.self, json: json) } @@ -2082,6 +2155,105 @@ public class Paper { } } + /// Metadata returned by docs/get_metadata. + public class PaperDocGetMetadataResult: CustomStringConvertible, JSONRepresentable { + /// The Paper doc ID. + public let docId: String + /// The Paper doc owner's email address. + public let owner: String + /// The Paper doc title. + public let title: String + /// The Paper doc creation date. + public let createdDate: Date + /// The Paper doc status. + public let status: Paper.PaperDocStatus + /// The Paper doc revision. Simply an ever increasing number. + public let revision: Int64 + /// The date when the Paper doc was last edited. + public let lastUpdatedDate: Date + /// The email address of the last editor of the Paper doc. + public let lastEditor: String + public init( + docId: String, + owner: String, + title: String, + createdDate: Date, + status: Paper.PaperDocStatus, + revision: Int64, + lastUpdatedDate: Date, + lastEditor: String + ) { + stringValidator()(docId) + self.docId = docId + stringValidator()(owner) + self.owner = owner + stringValidator()(title) + self.title = title + self.createdDate = createdDate + self.status = status + comparableValidator()(revision) + self.revision = revision + self.lastUpdatedDate = lastUpdatedDate + stringValidator()(lastEditor) + self.lastEditor = lastEditor + } + + func json() throws -> JSON { + try PaperDocGetMetadataResultSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocGetMetadataResultSerializer().serialize(self)))" + } catch { + return "Failed to generate description for PaperDocGetMetadataResult: \(error)" + } + } + } + + public class PaperDocGetMetadataResultSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: PaperDocGetMetadataResult) throws -> JSON { + let output = [ + "doc_id": try Serialization._StringSerializer.serialize(value.docId), + "owner": try Serialization._StringSerializer.serialize(value.owner), + "title": try Serialization._StringSerializer.serialize(value.title), + "created_date": try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").serialize(value.createdDate), + "status": try Paper.PaperDocStatusSerializer().serialize(value.status), + "revision": try Serialization._Int64Serializer.serialize(value.revision), + "last_updated_date": try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").serialize(value.lastUpdatedDate), + "last_editor": try Serialization._StringSerializer.serialize(value.lastEditor), + ] + return .dictionary(output) + } + + public func deserialize(_ json: JSON) throws -> PaperDocGetMetadataResult { + switch json { + case .dictionary(let dict): + let docId = try Serialization._StringSerializer.deserialize(dict["doc_id"] ?? .null) + let owner = try Serialization._StringSerializer.deserialize(dict["owner"] ?? .null) + let title = try Serialization._StringSerializer.deserialize(dict["title"] ?? .null) + let createdDate = try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").deserialize(dict["created_date"] ?? .null) + let status = try Paper.PaperDocStatusSerializer().deserialize(dict["status"] ?? .null) + let revision = try Serialization._Int64Serializer.deserialize(dict["revision"] ?? .null) + let lastUpdatedDate = try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").deserialize(dict["last_updated_date"] ?? .null) + let lastEditor = try Serialization._StringSerializer.deserialize(dict["last_editor"] ?? .null) + return PaperDocGetMetadataResult( + docId: docId, + owner: owner, + title: title, + createdDate: createdDate, + status: status, + revision: revision, + lastUpdatedDate: lastUpdatedDate, + lastEditor: lastEditor + ) + default: + throw JSONSerializerError.deserializeError(type: PaperDocGetMetadataResult.self, json: json) + } + } + } + /// The PaperDocPermissionLevel union public enum PaperDocPermissionLevel: CustomStringConvertible, JSONRepresentable { /// User will be granted edit permissions. @@ -2183,6 +2355,67 @@ public class Paper { } } + /// The status of a Paper doc. + public enum PaperDocStatus: CustomStringConvertible, JSONRepresentable { + /// The Paper doc is active. + case active + /// The Paper doc is deleted. + case deleted + /// An unspecified error. + case other + + func json() throws -> JSON { + try PaperDocStatusSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocStatusSerializer().serialize(self)))" + } catch { + return "Failed to generate description for PaperDocStatus: \(error)" + } + } + } + + public class PaperDocStatusSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: PaperDocStatus) throws -> JSON { + switch value { + case .active: + var d = [String: JSON]() + d[".tag"] = .str("active") + return .dictionary(d) + case .deleted: + var d = [String: JSON]() + d[".tag"] = .str("deleted") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + + public func deserialize(_ json: JSON) throws -> PaperDocStatus { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "active": + return PaperDocStatus.active + case "deleted": + return PaperDocStatus.deleted + case "other": + return PaperDocStatus.other + default: + return PaperDocStatus.other + } + default: + throw JSONSerializerError.deserializeError(type: PaperDocStatus.self, json: json) + } + } + } + /// The PaperDocUpdateArgs struct public class PaperDocUpdateArgs: Paper.RefPaperDoc { /// The policy used for the current update call. @@ -2664,8 +2897,7 @@ public class Paper { public func deserialize(_ json: JSON) throws -> SharingPolicy { switch json { case .dictionary(let dict): - let publicSharingPolicy = try NullableSerializer(Paper.SharingPublicPolicyTypeSerializer()) - .deserialize(dict["public_sharing_policy"] ?? .null) + let publicSharingPolicy = try NullableSerializer(Paper.SharingPublicPolicyTypeSerializer()).deserialize(dict["public_sharing_policy"] ?? .null) let teamSharingPolicy = try NullableSerializer(Paper.SharingTeamPolicyTypeSerializer()).deserialize(dict["team_sharing_policy"] ?? .null) return SharingPolicy(publicSharingPolicy: publicSharingPolicy, teamSharingPolicy: teamSharingPolicy) default: @@ -2998,6 +3230,20 @@ public class Paper { style: .rpc ) ) + static let docsGetMetadata = Route( + name: "docs/get_metadata", + version: 1, + namespace: "paper", + deprecated: false, + argSerializer: Paper.GetDocMetadataArgSerializer(), + responseSerializer: Paper.PaperDocGetMetadataResultSerializer(), + errorSerializer: Paper.DocLookupErrorSerializer(), + attributes: RouteAttributes( + auth: [.user], + host: .api, + style: .rpc + ) + ) static let docsList = Route( name: "docs/list", version: 1, diff --git a/Source/SwiftyDropbox/Shared/Generated/PaperRoutes.swift b/Source/SwiftyDropbox/Shared/Generated/PaperRoutes.swift index f582edee..1709b6d7 100644 --- a/Source/SwiftyDropbox/Shared/Generated/PaperRoutes.swift +++ b/Source/SwiftyDropbox/Shared/Generated/PaperRoutes.swift @@ -50,11 +50,10 @@ public class PaperRoutes: DropboxTransportClientOwning { /// - returns: Through the response callback, the caller will receive a `Paper.PaperDocCreateUpdateResult` object on /// success or a `Paper.PaperDocCreateError` object on failure. @available(*, unavailable, message: "docsCreate is deprecated.") - @discardableResult public func docsCreate( - importFormat: Paper.ImportFormat, - parentFolderId: String? = nil, - input: Data - ) -> UploadRequest { + @discardableResult public func docsCreate(importFormat: Paper.ImportFormat, parentFolderId: String? = nil, input: Data) -> UploadRequest< + Paper.PaperDocCreateUpdateResultSerializer, + Paper.PaperDocCreateErrorSerializer + > { let route = Paper.docsCreate let serverArgs = Paper.PaperDocCreateArgs(importFormat: importFormat, parentFolderId: parentFolderId) return client.request(route, serverArgs: serverArgs, input: .data(input)) @@ -76,11 +75,10 @@ public class PaperRoutes: DropboxTransportClientOwning { /// - returns: Through the response callback, the caller will receive a `Paper.PaperDocCreateUpdateResult` object on /// success or a `Paper.PaperDocCreateError` object on failure. @available(*, unavailable, message: "docsCreate is deprecated.") - @discardableResult public func docsCreate( - importFormat: Paper.ImportFormat, - parentFolderId: String? = nil, - input: URL - ) -> UploadRequest { + @discardableResult public func docsCreate(importFormat: Paper.ImportFormat, parentFolderId: String? = nil, input: URL) -> UploadRequest< + Paper.PaperDocCreateUpdateResultSerializer, + Paper.PaperDocCreateErrorSerializer + > { let route = Paper.docsCreate let serverArgs = Paper.PaperDocCreateArgs(importFormat: importFormat, parentFolderId: parentFolderId) return client.request(route, serverArgs: serverArgs, input: .file(input)) @@ -102,11 +100,10 @@ public class PaperRoutes: DropboxTransportClientOwning { /// - returns: Through the response callback, the caller will receive a `Paper.PaperDocCreateUpdateResult` object on /// success or a `Paper.PaperDocCreateError` object on failure. @available(*, unavailable, message: "docsCreate is deprecated.") - @discardableResult public func docsCreate( - importFormat: Paper.ImportFormat, - parentFolderId: String? = nil, - input: InputStream - ) -> UploadRequest { + @discardableResult public func docsCreate(importFormat: Paper.ImportFormat, parentFolderId: String? = nil, input: InputStream) -> UploadRequest< + Paper.PaperDocCreateUpdateResultSerializer, + Paper.PaperDocCreateErrorSerializer + > { let route = Paper.docsCreate let serverArgs = Paper.PaperDocCreateArgs(importFormat: importFormat, parentFolderId: parentFolderId) return client.request(route, serverArgs: serverArgs, input: .stream(input)) @@ -120,6 +117,9 @@ public class PaperRoutes: DropboxTransportClientOwning { /// /// - scope: files.content.read /// + /// - parameter includeComments: When true, export includes comment threads (e.g. markdown footnotes). When false or + /// omitted, body only. Other formats may adopt this later; currently only markdown uses it. Plain bool (not + /// optional): protoc-gen-godbx does not support proto3 optional yet. /// - parameter overwrite: A boolean to set behavior in the event of a naming conflict. `True` will overwrite /// conflicting file at destination. `False` will take no action (but if left unhandled in destination closure, /// an NSError will be thrown). @@ -131,11 +131,12 @@ public class PaperRoutes: DropboxTransportClientOwning { @discardableResult public func docsDownload( docId: String, exportFormat: Paper.ExportFormat, + includeComments: Bool = false, overwrite: Bool = false, destination: URL ) -> DownloadRequestFile { let route = Paper.docsDownload - let serverArgs = Paper.PaperDocExport(docId: docId, exportFormat: exportFormat) + let serverArgs = Paper.PaperDocExport(docId: docId, exportFormat: exportFormat, includeComments: includeComments) return client.request(route, serverArgs: serverArgs, overwrite: overwrite, destination: destination) } @@ -147,16 +148,19 @@ public class PaperRoutes: DropboxTransportClientOwning { /// /// - scope: files.content.read /// + /// - parameter includeComments: When true, export includes comment threads (e.g. markdown footnotes). When false or + /// omitted, body only. Other formats may adopt this later; currently only markdown uses it. Plain bool (not + /// optional): protoc-gen-godbx does not support proto3 optional yet. /// /// - returns: Through the response callback, the caller will receive a `Paper.PaperDocExportResult` object on /// success or a `Paper.DocLookupError` object on failure. @available(*, unavailable, message: "docsDownload is deprecated.") - @discardableResult public func docsDownload( - docId: String, - exportFormat: Paper.ExportFormat - ) -> DownloadRequestMemory { + @discardableResult public func docsDownload(docId: String, exportFormat: Paper.ExportFormat, includeComments: Bool = false) -> DownloadRequestMemory< + Paper.PaperDocExportResultSerializer, + Paper.DocLookupErrorSerializer + > { let route = Paper.docsDownload - let serverArgs = Paper.PaperDocExport(docId: docId, exportFormat: exportFormat) + let serverArgs = Paper.PaperDocExport(docId: docId, exportFormat: exportFormat, includeComments: includeComments) return client.request(route, serverArgs: serverArgs) } @@ -176,10 +180,10 @@ public class PaperRoutes: DropboxTransportClientOwning { /// - returns: Through the response callback, the caller will receive a `Paper.ListUsersOnFolderResponse` object on /// success or a `Paper.DocLookupError` object on failure. @available(*, unavailable, message: "docsFolderUsersList is deprecated.") - @discardableResult public func docsFolderUsersList( - docId: String, - limit: Int32 = 1_000 - ) -> RpcRequest { + @discardableResult public func docsFolderUsersList(docId: String, limit: Int32 = 1_000) -> RpcRequest< + Paper.ListUsersOnFolderResponseSerializer, + Paper.DocLookupErrorSerializer + > { let route = Paper.docsFolderUsersList let serverArgs = Paper.ListUsersOnFolderArgs(docId: docId, limit: limit) return client.request(route, serverArgs: serverArgs) @@ -199,21 +203,21 @@ public class PaperRoutes: DropboxTransportClientOwning { /// - returns: Through the response callback, the caller will receive a `Paper.ListUsersOnFolderResponse` object on /// success or a `Paper.ListUsersCursorError` object on failure. @available(*, unavailable, message: "docsFolderUsersListContinue is deprecated.") - @discardableResult public func docsFolderUsersListContinue( - docId: String, - cursor: String - ) -> RpcRequest { + @discardableResult public func docsFolderUsersListContinue(docId: String, cursor: String) -> RpcRequest< + Paper.ListUsersOnFolderResponseSerializer, + Paper.ListUsersCursorErrorSerializer + > { let route = Paper.docsFolderUsersListContinue let serverArgs = Paper.ListUsersOnFolderContinueArgs(docId: docId, cursor: cursor) return client.request(route, serverArgs: serverArgs) } - /// Retrieves folder information for the given Paper doc. This includes: - folder sharing policy; permissions for - /// subfolders are set by the top-level folder. - full 'filepath', i.e. the list of folders (both folderId and - /// folderName) from the root folder to the folder directly containing the Paper doc. If the Paper doc is - /// not in any folder (aka unfiled) the response will be empty. Note that this endpoint will continue to work - /// for content created by users on the older version of Paper. To check which version of Paper a user is on, - /// use /users/features/get_values. If the paper_as_files feature is enabled, then the user is running the new + /// Retrieves folder information for the given Paper doc. This includes: - folder sharing policy; permissions for + /// subfolders are set by the top-level folder. - full 'filepath', i.e. the list of folders (both folderId and + /// folderName) from the root folder to the folder directly containing the Paper doc. If the Paper doc is not in + /// any folder (aka unfiled) the response will be empty. Note that this endpoint will continue to work for + /// content created by users on the older version of Paper. To check which version of Paper a user is on, use + /// /users/features/get_values. If the paper_as_files feature is enabled, then the user is running the new /// version of Paper. Refer to the Paper Migration Guide /// https://www.dropbox.com/lp/developers/reference/paper-migration-guide for migration information. /// @@ -230,6 +234,24 @@ public class PaperRoutes: DropboxTransportClientOwning { return client.request(route, serverArgs: serverArgs) } + /// Returns metadata for a Paper doc or Cloud Doc. + /// + /// - scope: files.metadata.read + /// + /// - parameter docId: Legacy Paper doc identifier. + /// - parameter fileId: Dropbox file ID for Cloud Docs (post-PiFS migration). + /// + /// - returns: Through the response callback, the caller will receive a `Paper.PaperDocGetMetadataResult` object on + /// success or a `Paper.DocLookupError` object on failure. + @discardableResult public func docsGetMetadata(docId: String? = nil, fileId: String? = nil) -> RpcRequest< + Paper.PaperDocGetMetadataResultSerializer, + Paper.DocLookupErrorSerializer + > { + let route = Paper.docsGetMetadata + let serverArgs = Paper.GetDocMetadataArg(docId: docId, fileId: fileId) + return client.request(route, serverArgs: serverArgs) + } + /// Return the list of all Paper docs according to the argument specifications. To iterate over through the full /// pagination, pass the cursor to docsListContinue. Note that this endpoint will continue to work for content /// created by users on the older version of Paper. To check which version of Paper a user is on, use @@ -244,6 +266,7 @@ public class PaperRoutes: DropboxTransportClientOwning { /// - parameter sortOrder: Allows user to specify the sort order of the result. /// - parameter limit: Size limit per batch. The maximum number of docs that can be retrieved per batch is 1000. /// Higher value results in invalid arguments error. + /// - parameter stopAtDate: Do not return results beyond this date. Behavior depends on sort order. /// /// - returns: Through the response callback, the caller will receive a `Paper.ListPaperDocsResponse` object on /// success or a `Void` object on failure. @@ -252,10 +275,11 @@ public class PaperRoutes: DropboxTransportClientOwning { filterBy: Paper.ListPaperDocsFilterBy = .docsAccessed, sortBy: Paper.ListPaperDocsSortBy = .accessed, sortOrder: Paper.ListPaperDocsSortOrder = .ascending, - limit: Int32 = 1_000 + limit: Int32 = 1_000, + stopAtDate: Date? = nil ) -> RpcRequest { let route = Paper.docsList - let serverArgs = Paper.ListPaperDocsArgs(filterBy: filterBy, sortBy: sortBy, sortOrder: sortOrder, limit: limit) + let serverArgs = Paper.ListPaperDocsArgs(filterBy: filterBy, sortBy: sortBy, sortOrder: sortOrder, limit: limit, stopAtDate: stopAtDate) return client.request(route, serverArgs: serverArgs) } @@ -332,10 +356,10 @@ public class PaperRoutes: DropboxTransportClientOwning { /// - returns: Through the response callback, the caller will receive a `Void` object on success or a /// `Paper.DocLookupError` object on failure. @available(*, unavailable, message: "docsSharingPolicySet is deprecated.") - @discardableResult public func docsSharingPolicySet( - docId: String, - sharingPolicy: Paper.SharingPolicy - ) -> RpcRequest { + @discardableResult public func docsSharingPolicySet(docId: String, sharingPolicy: Paper.SharingPolicy) -> RpcRequest< + VoidSerializer, + Paper.DocLookupErrorSerializer + > { let route = Paper.docsSharingPolicySet let serverArgs = Paper.PaperDocSharingPolicy(docId: docId, sharingPolicy: sharingPolicy) return client.request(route, serverArgs: serverArgs) @@ -445,12 +469,10 @@ public class PaperRoutes: DropboxTransportClientOwning { /// - returns: Through the response callback, the caller will receive a `Array` /// object on success or a `Paper.DocLookupError` object on failure. @available(*, unavailable, message: "docsUsersAdd is deprecated.") - @discardableResult public func docsUsersAdd( - docId: String, - members: [Paper.AddMember], - customMessage: String? = nil, - quiet: Bool = false - ) -> RpcRequest, Paper.DocLookupErrorSerializer> { + @discardableResult public func docsUsersAdd(docId: String, members: [Paper.AddMember], customMessage: String? = nil, quiet: Bool = false) -> RpcRequest< + ArraySerializer, + Paper.DocLookupErrorSerializer + > { let route = Paper.docsUsersAdd let serverArgs = Paper.AddPaperDocUser(docId: docId, members: members, customMessage: customMessage, quiet: quiet) return client.request(route, serverArgs: serverArgs) @@ -474,11 +496,10 @@ public class PaperRoutes: DropboxTransportClientOwning { /// - returns: Through the response callback, the caller will receive a `Paper.ListUsersOnPaperDocResponse` object /// on success or a `Paper.DocLookupError` object on failure. @available(*, unavailable, message: "docsUsersList is deprecated.") - @discardableResult public func docsUsersList( - docId: String, - limit: Int32 = 1_000, - filterBy: Paper.UserOnPaperDocFilter = .shared - ) -> RpcRequest { + @discardableResult public func docsUsersList(docId: String, limit: Int32 = 1_000, filterBy: Paper.UserOnPaperDocFilter = .shared) -> RpcRequest< + Paper.ListUsersOnPaperDocResponseSerializer, + Paper.DocLookupErrorSerializer + > { let route = Paper.docsUsersList let serverArgs = Paper.ListUsersOnPaperDocArgs(docId: docId, limit: limit, filterBy: filterBy) return client.request(route, serverArgs: serverArgs) @@ -497,10 +518,10 @@ public class PaperRoutes: DropboxTransportClientOwning { /// - returns: Through the response callback, the caller will receive a `Paper.ListUsersOnPaperDocResponse` object /// on success or a `Paper.ListUsersCursorError` object on failure. @available(*, unavailable, message: "docsUsersListContinue is deprecated.") - @discardableResult public func docsUsersListContinue( - docId: String, - cursor: String - ) -> RpcRequest { + @discardableResult public func docsUsersListContinue(docId: String, cursor: String) -> RpcRequest< + Paper.ListUsersOnPaperDocResponseSerializer, + Paper.ListUsersCursorErrorSerializer + > { let route = Paper.docsUsersListContinue let serverArgs = Paper.ListUsersOnPaperDocContinueArgs(docId: docId, cursor: cursor) return client.request(route, serverArgs: serverArgs) @@ -521,10 +542,7 @@ public class PaperRoutes: DropboxTransportClientOwning { /// - returns: Through the response callback, the caller will receive a `Void` object on success or a /// `Paper.DocLookupError` object on failure. @available(*, unavailable, message: "docsUsersRemove is deprecated.") - @discardableResult public func docsUsersRemove( - docId: String, - member: Sharing.MemberSelector - ) -> RpcRequest { + @discardableResult public func docsUsersRemove(docId: String, member: Sharing.MemberSelector) -> RpcRequest { let route = Paper.docsUsersRemove let serverArgs = Paper.RemovePaperDocUser(docId: docId, member: member) return client.request(route, serverArgs: serverArgs) @@ -550,11 +568,10 @@ public class PaperRoutes: DropboxTransportClientOwning { /// - returns: Through the response callback, the caller will receive a `Paper.PaperFolderCreateResult` object on /// success or a `Paper.PaperFolderCreateError` object on failure. @available(*, unavailable, message: "foldersCreate is deprecated.") - @discardableResult public func foldersCreate( - name: String, - parentFolderId: String? = nil, - isTeamFolder: Bool? = nil - ) -> RpcRequest { + @discardableResult public func foldersCreate(name: String, parentFolderId: String? = nil, isTeamFolder: Bool? = nil) -> RpcRequest< + Paper.PaperFolderCreateResultSerializer, + Paper.PaperFolderCreateErrorSerializer + > { let route = Paper.foldersCreate let serverArgs = Paper.PaperFolderCreateArg(name: name, parentFolderId: parentFolderId, isTeamFolder: isTeamFolder) return client.request(route, serverArgs: serverArgs) diff --git a/Source/SwiftyDropbox/Shared/Generated/ReconnectionHelpers.swift b/Source/SwiftyDropbox/Shared/Generated/ReconnectionHelpers.swift index dcc7f27a..48ff6071 100644 --- a/Source/SwiftyDropbox/Shared/Generated/ReconnectionHelpers.swift +++ b/Source/SwiftyDropbox/Shared/Generated/ReconnectionHelpers.swift @@ -12,6 +12,15 @@ enum ReconnectionHelpers: ReconnectionHelpersShared { let info = try persistedRequestInfo(from: apiRequest) switch info.namespaceRouteName { + case "account/get_photo": + return .account_getPhoto( + rebuildRequest( + apiRequest: apiRequest, + info: info, + route: Account.getPhoto, + client: client + ) + ) case "files/alpha/upload": return .files_alphaUpload( rebuildRequest( @@ -120,6 +129,15 @@ enum ReconnectionHelpers: ReconnectionHelpersShared { client: client ) ) + case "files/upload_session/append_batch": + return .files_uploadSessionAppendBatch( + rebuildRequest( + apiRequest: apiRequest, + info: info, + route: Files.uploadSessionAppendBatch, + client: client + ) + ) case "files/upload_session/finish": return .files_uploadSessionFinish( rebuildRequest( diff --git a/Source/SwiftyDropbox/Shared/Generated/Riviera.swift b/Source/SwiftyDropbox/Shared/Generated/Riviera.swift new file mode 100644 index 00000000..0a24301b --- /dev/null +++ b/Source/SwiftyDropbox/Shared/Generated/Riviera.swift @@ -0,0 +1,2154 @@ +/// +/// Copyright (c) 2016 Dropbox, Inc. All rights reserved. +/// +/// Auto-generated by Stone, do not modify. +/// + +import Foundation + +/// Datatypes and serializers for the riviera namespace +public class Riviera { + /// GPS coordinates and related tags extracted from image EXIF data. Fields are populated on a best-effort basis and + /// may be empty when absent from the source file. + public class ApiExifGpsMetadata: CustomStringConvertible, JSONRepresentable { + /// Latitude / longitude in decimal degrees (positive = N/E, negative = S/W). + public let latitude: Float + /// (no description) + public let longitude: Float + /// Altitude in meters, as reported by the source (string to preserve the original representation, which may + /// include a reference direction). + public let altitude: String + /// Timestamp / datestamp of the GPS fix, in the EXIF-provided format. + public let timestamp_: String + /// (no description) + public let datestamp: String + public init(latitude: Float = 0.0, longitude: Float = 0.0, altitude: String = "", timestamp_: String = "", datestamp: String = "") { + comparableValidator()(latitude) + self.latitude = latitude + comparableValidator()(longitude) + self.longitude = longitude + stringValidator()(altitude) + self.altitude = altitude + stringValidator()(timestamp_) + self.timestamp_ = timestamp_ + stringValidator()(datestamp) + self.datestamp = datestamp + } + + func json() throws -> JSON { + try ApiExifGpsMetadataSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try ApiExifGpsMetadataSerializer().serialize(self)))" + } catch { + return "Failed to generate description for ApiExifGpsMetadata: \(error)" + } + } + } + + public class ApiExifGpsMetadataSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: ApiExifGpsMetadata) throws -> JSON { + let output = [ + "latitude": try Serialization._FloatSerializer.serialize(value.latitude), + "longitude": try Serialization._FloatSerializer.serialize(value.longitude), + "altitude": try Serialization._StringSerializer.serialize(value.altitude), + "timestamp": try Serialization._StringSerializer.serialize(value.timestamp_), + "datestamp": try Serialization._StringSerializer.serialize(value.datestamp), + ] + return .dictionary(output) + } + + public func deserialize(_ json: JSON) throws -> ApiExifGpsMetadata { + switch json { + case .dictionary(let dict): + let latitude = try Serialization._FloatSerializer.deserialize(dict["latitude"] ?? .number(0.0)) + let longitude = try Serialization._FloatSerializer.deserialize(dict["longitude"] ?? .number(0.0)) + let altitude = try Serialization._StringSerializer.deserialize(dict["altitude"] ?? .str("")) + let timestamp_ = try Serialization._StringSerializer.deserialize(dict["timestamp"] ?? .str("")) + let datestamp = try Serialization._StringSerializer.deserialize(dict["datestamp"] ?? .str("")) + return ApiExifGpsMetadata(latitude: latitude, longitude: longitude, altitude: altitude, timestamp_: timestamp_, datestamp: datestamp) + default: + throw JSONSerializerError.deserializeError(type: ApiExifGpsMetadata.self, json: json) + } + } + } + + /// Image EXIF metadata. Mirrors the useful subset of the internal `riviera.ExifMetadata` message. Fields are + /// best-effort and may be empty. + public class ApiExifMetadata: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let imageWidth: UInt32 + /// (no description) + public let imageHeight: UInt32 + /// (no description) + public let cameraMake: String + /// (no description) + public let cameraModel: String + /// (no description) + public let lensModel: String + /// Capture time in the EXIF-provided format (local time of the camera). + public let dateTimeOriginal: String + /// Timezone offset for `date_time_original`, e.g. "+09:00". + public let offsetTimeOriginal: String + /// EXIF orientation value (1-8). See the EXIF spec; 1 is the normal upright orientation. + public let orientation: UInt32 + /// fraction in string form, e.g. "1/250" + public let exposureTime: String + /// (no description) + public let apertureValue: Double + /// (no description) + public let isoSpeed: UInt32 + /// e.g. "26.0 mm" + public let focalLength: String + /// (no description) + public let megapixels: Double + /// (no description) + public let artist: String + /// (no description) + public let copyright: String + /// (no description) + public let gpsMetadata: Riviera.ApiExifGpsMetadata? + public init( + imageWidth: UInt32 = 0, + imageHeight: UInt32 = 0, + cameraMake: String = "", + cameraModel: String = "", + lensModel: String = "", + dateTimeOriginal: String = "", + offsetTimeOriginal: String = "", + orientation: UInt32 = 0, + exposureTime: String = "", + apertureValue: Double = 0.0, + isoSpeed: UInt32 = 0, + focalLength: String = "", + megapixels: Double = 0.0, + artist: String = "", + copyright: String = "", + gpsMetadata: Riviera.ApiExifGpsMetadata? = nil + ) { + comparableValidator()(imageWidth) + self.imageWidth = imageWidth + comparableValidator()(imageHeight) + self.imageHeight = imageHeight + stringValidator()(cameraMake) + self.cameraMake = cameraMake + stringValidator()(cameraModel) + self.cameraModel = cameraModel + stringValidator()(lensModel) + self.lensModel = lensModel + stringValidator()(dateTimeOriginal) + self.dateTimeOriginal = dateTimeOriginal + stringValidator()(offsetTimeOriginal) + self.offsetTimeOriginal = offsetTimeOriginal + comparableValidator()(orientation) + self.orientation = orientation + stringValidator()(exposureTime) + self.exposureTime = exposureTime + comparableValidator()(apertureValue) + self.apertureValue = apertureValue + comparableValidator()(isoSpeed) + self.isoSpeed = isoSpeed + stringValidator()(focalLength) + self.focalLength = focalLength + comparableValidator()(megapixels) + self.megapixels = megapixels + stringValidator()(artist) + self.artist = artist + stringValidator()(copyright) + self.copyright = copyright + self.gpsMetadata = gpsMetadata + } + + func json() throws -> JSON { + try ApiExifMetadataSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try ApiExifMetadataSerializer().serialize(self)))" + } catch { + return "Failed to generate description for ApiExifMetadata: \(error)" + } + } + } + + public class ApiExifMetadataSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: ApiExifMetadata) throws -> JSON { + let output = [ + "image_width": try Serialization._UInt32Serializer.serialize(value.imageWidth), + "image_height": try Serialization._UInt32Serializer.serialize(value.imageHeight), + "camera_make": try Serialization._StringSerializer.serialize(value.cameraMake), + "camera_model": try Serialization._StringSerializer.serialize(value.cameraModel), + "lens_model": try Serialization._StringSerializer.serialize(value.lensModel), + "date_time_original": try Serialization._StringSerializer.serialize(value.dateTimeOriginal), + "offset_time_original": try Serialization._StringSerializer.serialize(value.offsetTimeOriginal), + "orientation": try Serialization._UInt32Serializer.serialize(value.orientation), + "exposure_time": try Serialization._StringSerializer.serialize(value.exposureTime), + "aperture_value": try Serialization._DoubleSerializer.serialize(value.apertureValue), + "iso_speed": try Serialization._UInt32Serializer.serialize(value.isoSpeed), + "focal_length": try Serialization._StringSerializer.serialize(value.focalLength), + "megapixels": try Serialization._DoubleSerializer.serialize(value.megapixels), + "artist": try Serialization._StringSerializer.serialize(value.artist), + "copyright": try Serialization._StringSerializer.serialize(value.copyright), + "gps_metadata": try NullableSerializer(Riviera.ApiExifGpsMetadataSerializer()).serialize(value.gpsMetadata), + ] + return .dictionary(output) + } + + public func deserialize(_ json: JSON) throws -> ApiExifMetadata { + switch json { + case .dictionary(let dict): + let imageWidth = try Serialization._UInt32Serializer.deserialize(dict["image_width"] ?? .number(0)) + let imageHeight = try Serialization._UInt32Serializer.deserialize(dict["image_height"] ?? .number(0)) + let cameraMake = try Serialization._StringSerializer.deserialize(dict["camera_make"] ?? .str("")) + let cameraModel = try Serialization._StringSerializer.deserialize(dict["camera_model"] ?? .str("")) + let lensModel = try Serialization._StringSerializer.deserialize(dict["lens_model"] ?? .str("")) + let dateTimeOriginal = try Serialization._StringSerializer.deserialize(dict["date_time_original"] ?? .str("")) + let offsetTimeOriginal = try Serialization._StringSerializer.deserialize(dict["offset_time_original"] ?? .str("")) + let orientation = try Serialization._UInt32Serializer.deserialize(dict["orientation"] ?? .number(0)) + let exposureTime = try Serialization._StringSerializer.deserialize(dict["exposure_time"] ?? .str("")) + let apertureValue = try Serialization._DoubleSerializer.deserialize(dict["aperture_value"] ?? .number(0.0)) + let isoSpeed = try Serialization._UInt32Serializer.deserialize(dict["iso_speed"] ?? .number(0)) + let focalLength = try Serialization._StringSerializer.deserialize(dict["focal_length"] ?? .str("")) + let megapixels = try Serialization._DoubleSerializer.deserialize(dict["megapixels"] ?? .number(0.0)) + let artist = try Serialization._StringSerializer.deserialize(dict["artist"] ?? .str("")) + let copyright = try Serialization._StringSerializer.deserialize(dict["copyright"] ?? .str("")) + let gpsMetadata = try NullableSerializer(Riviera.ApiExifGpsMetadataSerializer()).deserialize(dict["gps_metadata"] ?? .null) + return ApiExifMetadata( + imageWidth: imageWidth, + imageHeight: imageHeight, + cameraMake: cameraMake, + cameraModel: cameraModel, + lensModel: lensModel, + dateTimeOriginal: dateTimeOriginal, + offsetTimeOriginal: offsetTimeOriginal, + orientation: orientation, + exposureTime: exposureTime, + apertureValue: apertureValue, + isoSpeed: isoSpeed, + focalLength: focalLength, + megapixels: megapixels, + artist: artist, + copyright: copyright, + gpsMetadata: gpsMetadata + ) + default: + throw JSONSerializerError.deserializeError(type: ApiExifMetadata.self, json: json) + } + } + } + + /// Audio/video container and per-stream metadata. Mirrors the useful subset of the internal `riviera.MediaMetadata` + /// message. + public class ApiMediaMetadata: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let bitrateBps: UInt64 + /// (no description) + public let durationS: Double + /// Container-level creation time, when present. + public let creationTime: String + /// (no description) + public let streams: [Riviera.ApiMediaStream]? + public init(bitrateBps: UInt64 = 0, durationS: Double = 0.0, creationTime: String = "", streams: [Riviera.ApiMediaStream]? = nil) { + comparableValidator()(bitrateBps) + self.bitrateBps = bitrateBps + comparableValidator()(durationS) + self.durationS = durationS + stringValidator()(creationTime) + self.creationTime = creationTime + self.streams = streams + } + + func json() throws -> JSON { + try ApiMediaMetadataSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try ApiMediaMetadataSerializer().serialize(self)))" + } catch { + return "Failed to generate description for ApiMediaMetadata: \(error)" + } + } + } + + public class ApiMediaMetadataSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: ApiMediaMetadata) throws -> JSON { + let output = [ + "bitrate_bps": try Serialization._UInt64Serializer.serialize(value.bitrateBps), + "duration_s": try Serialization._DoubleSerializer.serialize(value.durationS), + "creation_time": try Serialization._StringSerializer.serialize(value.creationTime), + "streams": try NullableSerializer(ArraySerializer(Riviera.ApiMediaStreamSerializer())).serialize(value.streams), + ] + return .dictionary(output) + } + + public func deserialize(_ json: JSON) throws -> ApiMediaMetadata { + switch json { + case .dictionary(let dict): + let bitrateBps = try Serialization._UInt64Serializer.deserialize(dict["bitrate_bps"] ?? .number(0)) + let durationS = try Serialization._DoubleSerializer.deserialize(dict["duration_s"] ?? .number(0.0)) + let creationTime = try Serialization._StringSerializer.deserialize(dict["creation_time"] ?? .str("")) + let streams = try NullableSerializer(ArraySerializer(Riviera.ApiMediaStreamSerializer())).deserialize(dict["streams"] ?? .null) + return ApiMediaMetadata(bitrateBps: bitrateBps, durationS: durationS, creationTime: creationTime, streams: streams) + default: + throw JSONSerializerError.deserializeError(type: ApiMediaMetadata.self, json: json) + } + } + } + + /// A single audio or video stream within a media file. + public class ApiMediaStream: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let index: UInt32 + /// "audio", "video", etc. + public let codecType: String + /// (no description) + public let codecName: String + /// (no description) + public let bitrateBps: UInt64 + /// (no description) + public let durationS: Double + /// Video-specific fields (zero / empty for audio streams). + public let width: UInt32 + /// (no description) + public let height: UInt32 + /// (no description) + public let framesPerSecond: Double + /// (no description) + public let rotation: Int32 + /// e.g. "16:9" + public let displayAspectRatio: String + /// Audio-specific fields (zero / empty for video streams). + public let channels: UInt32 + /// (no description) + public let channelLayout: String + /// (no description) + public let sampleRateS: UInt64 + /// ISO 639 language code for the stream, when present. + public let languageIso639: String + public init( + index: UInt32 = 0, + codecType: String = "", + codecName: String = "", + bitrateBps: UInt64 = 0, + durationS: Double = 0.0, + width: UInt32 = 0, + height: UInt32 = 0, + framesPerSecond: Double = 0.0, + rotation: Int32 = 0, + displayAspectRatio: String = "", + channels: UInt32 = 0, + channelLayout: String = "", + sampleRateS: UInt64 = 0, + languageIso639: String = "" + ) { + comparableValidator()(index) + self.index = index + stringValidator()(codecType) + self.codecType = codecType + stringValidator()(codecName) + self.codecName = codecName + comparableValidator()(bitrateBps) + self.bitrateBps = bitrateBps + comparableValidator()(durationS) + self.durationS = durationS + comparableValidator()(width) + self.width = width + comparableValidator()(height) + self.height = height + comparableValidator()(framesPerSecond) + self.framesPerSecond = framesPerSecond + comparableValidator()(rotation) + self.rotation = rotation + stringValidator()(displayAspectRatio) + self.displayAspectRatio = displayAspectRatio + comparableValidator()(channels) + self.channels = channels + stringValidator()(channelLayout) + self.channelLayout = channelLayout + comparableValidator()(sampleRateS) + self.sampleRateS = sampleRateS + stringValidator()(languageIso639) + self.languageIso639 = languageIso639 + } + + func json() throws -> JSON { + try ApiMediaStreamSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try ApiMediaStreamSerializer().serialize(self)))" + } catch { + return "Failed to generate description for ApiMediaStream: \(error)" + } + } + } + + public class ApiMediaStreamSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: ApiMediaStream) throws -> JSON { + let output = [ + "index": try Serialization._UInt32Serializer.serialize(value.index), + "codec_type": try Serialization._StringSerializer.serialize(value.codecType), + "codec_name": try Serialization._StringSerializer.serialize(value.codecName), + "bitrate_bps": try Serialization._UInt64Serializer.serialize(value.bitrateBps), + "duration_s": try Serialization._DoubleSerializer.serialize(value.durationS), + "width": try Serialization._UInt32Serializer.serialize(value.width), + "height": try Serialization._UInt32Serializer.serialize(value.height), + "frames_per_second": try Serialization._DoubleSerializer.serialize(value.framesPerSecond), + "rotation": try Serialization._Int32Serializer.serialize(value.rotation), + "display_aspect_ratio": try Serialization._StringSerializer.serialize(value.displayAspectRatio), + "channels": try Serialization._UInt32Serializer.serialize(value.channels), + "channel_layout": try Serialization._StringSerializer.serialize(value.channelLayout), + "sample_rate_s": try Serialization._UInt64Serializer.serialize(value.sampleRateS), + "language_iso_639": try Serialization._StringSerializer.serialize(value.languageIso639), + ] + return .dictionary(output) + } + + public func deserialize(_ json: JSON) throws -> ApiMediaStream { + switch json { + case .dictionary(let dict): + let index = try Serialization._UInt32Serializer.deserialize(dict["index"] ?? .number(0)) + let codecType = try Serialization._StringSerializer.deserialize(dict["codec_type"] ?? .str("")) + let codecName = try Serialization._StringSerializer.deserialize(dict["codec_name"] ?? .str("")) + let bitrateBps = try Serialization._UInt64Serializer.deserialize(dict["bitrate_bps"] ?? .number(0)) + let durationS = try Serialization._DoubleSerializer.deserialize(dict["duration_s"] ?? .number(0.0)) + let width = try Serialization._UInt32Serializer.deserialize(dict["width"] ?? .number(0)) + let height = try Serialization._UInt32Serializer.deserialize(dict["height"] ?? .number(0)) + let framesPerSecond = try Serialization._DoubleSerializer.deserialize(dict["frames_per_second"] ?? .number(0.0)) + let rotation = try Serialization._Int32Serializer.deserialize(dict["rotation"] ?? .number(0)) + let displayAspectRatio = try Serialization._StringSerializer.deserialize(dict["display_aspect_ratio"] ?? .str("")) + let channels = try Serialization._UInt32Serializer.deserialize(dict["channels"] ?? .number(0)) + let channelLayout = try Serialization._StringSerializer.deserialize(dict["channel_layout"] ?? .str("")) + let sampleRateS = try Serialization._UInt64Serializer.deserialize(dict["sample_rate_s"] ?? .number(0)) + let languageIso639 = try Serialization._StringSerializer.deserialize(dict["language_iso_639"] ?? .str("")) + return ApiMediaStream( + index: index, + codecType: codecType, + codecName: codecName, + bitrateBps: bitrateBps, + durationS: durationS, + width: width, + height: height, + framesPerSecond: framesPerSecond, + rotation: rotation, + displayAspectRatio: displayAspectRatio, + channels: channels, + channelLayout: channelLayout, + sampleRateS: sampleRateS, + languageIso639: languageIso639 + ) + default: + throw JSONSerializerError.deserializeError(type: ApiMediaStream.self, json: json) + } + } + } + + /// MS Office document metadata. Mirrors the internal `riviera.OfficeMetadata` message. Some fields apply only to + /// specific document types (e.g. `slides` for PowerPoint, `words`/`pages` for Word). + public class ApiOfficeMetadata: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let fileType: Riviera.OfficeFileType + /// (no description) + public let creator: String + /// (no description) + public let company: String + /// (no description) + public let title: String + /// (no description) + public let subject: String + /// (no description) + public let keywords: String + /// (no description) + public let description_: String + /// (no description) + public let totalEditTimeMinutes: UInt32 + /// Word only. + public let pages: UInt32 + /// (no description) + public let words: UInt32 + /// PowerPoint only. + public let slides: UInt32 + /// (no description) + public let revisionNumber: String + public init( + fileType: Riviera.OfficeFileType = .officeFiletypeUnknown, + creator: String = "", + company: String = "", + title: String = "", + subject: String = "", + keywords: String = "", + description_: String = "", + totalEditTimeMinutes: UInt32 = 0, + pages: UInt32 = 0, + words: UInt32 = 0, + slides: UInt32 = 0, + revisionNumber: String = "" + ) { + self.fileType = fileType + stringValidator()(creator) + self.creator = creator + stringValidator()(company) + self.company = company + stringValidator()(title) + self.title = title + stringValidator()(subject) + self.subject = subject + stringValidator()(keywords) + self.keywords = keywords + stringValidator()(description_) + self.description_ = description_ + comparableValidator()(totalEditTimeMinutes) + self.totalEditTimeMinutes = totalEditTimeMinutes + comparableValidator()(pages) + self.pages = pages + comparableValidator()(words) + self.words = words + comparableValidator()(slides) + self.slides = slides + stringValidator()(revisionNumber) + self.revisionNumber = revisionNumber + } + + func json() throws -> JSON { + try ApiOfficeMetadataSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try ApiOfficeMetadataSerializer().serialize(self)))" + } catch { + return "Failed to generate description for ApiOfficeMetadata: \(error)" + } + } + } + + public class ApiOfficeMetadataSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: ApiOfficeMetadata) throws -> JSON { + let output = [ + "file_type": try Riviera.OfficeFileTypeSerializer().serialize(value.fileType), + "creator": try Serialization._StringSerializer.serialize(value.creator), + "company": try Serialization._StringSerializer.serialize(value.company), + "title": try Serialization._StringSerializer.serialize(value.title), + "subject": try Serialization._StringSerializer.serialize(value.subject), + "keywords": try Serialization._StringSerializer.serialize(value.keywords), + "description": try Serialization._StringSerializer.serialize(value.description_), + "total_edit_time_minutes": try Serialization._UInt32Serializer.serialize(value.totalEditTimeMinutes), + "pages": try Serialization._UInt32Serializer.serialize(value.pages), + "words": try Serialization._UInt32Serializer.serialize(value.words), + "slides": try Serialization._UInt32Serializer.serialize(value.slides), + "revision_number": try Serialization._StringSerializer.serialize(value.revisionNumber), + ] + return .dictionary(output) + } + + public func deserialize(_ json: JSON) throws -> ApiOfficeMetadata { + switch json { + case .dictionary(let dict): + let fileType = try Riviera.OfficeFileTypeSerializer().deserialize( + dict["file_type"] ?? Riviera.OfficeFileTypeSerializer().serialize(.officeFiletypeUnknown) + ) + let creator = try Serialization._StringSerializer.deserialize(dict["creator"] ?? .str("")) + let company = try Serialization._StringSerializer.deserialize(dict["company"] ?? .str("")) + let title = try Serialization._StringSerializer.deserialize(dict["title"] ?? .str("")) + let subject = try Serialization._StringSerializer.deserialize(dict["subject"] ?? .str("")) + let keywords = try Serialization._StringSerializer.deserialize(dict["keywords"] ?? .str("")) + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .str("")) + let totalEditTimeMinutes = try Serialization._UInt32Serializer.deserialize(dict["total_edit_time_minutes"] ?? .number(0)) + let pages = try Serialization._UInt32Serializer.deserialize(dict["pages"] ?? .number(0)) + let words = try Serialization._UInt32Serializer.deserialize(dict["words"] ?? .number(0)) + let slides = try Serialization._UInt32Serializer.deserialize(dict["slides"] ?? .number(0)) + let revisionNumber = try Serialization._StringSerializer.deserialize(dict["revision_number"] ?? .str("")) + return ApiOfficeMetadata( + fileType: fileType, + creator: creator, + company: company, + title: title, + subject: subject, + keywords: keywords, + description_: description_, + totalEditTimeMinutes: totalEditTimeMinutes, + pages: pages, + words: words, + slides: slides, + revisionNumber: revisionNumber + ) + default: + throw JSONSerializerError.deserializeError(type: ApiOfficeMetadata.self, json: json) + } + } + } + + /// PDF document metadata. + public class ApiPdfMetadata: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let pages: UInt32 + /// Width / height of the first page, in PDF points. + public let width: UInt32 + /// (no description) + public let height: UInt32 + public init(pages: UInt32 = 0, width: UInt32 = 0, height: UInt32 = 0) { + comparableValidator()(pages) + self.pages = pages + comparableValidator()(width) + self.width = width + comparableValidator()(height) + self.height = height + } + + func json() throws -> JSON { + try ApiPdfMetadataSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try ApiPdfMetadataSerializer().serialize(self)))" + } catch { + return "Failed to generate description for ApiPdfMetadata: \(error)" + } + } + } + + public class ApiPdfMetadataSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: ApiPdfMetadata) throws -> JSON { + let output = [ + "pages": try Serialization._UInt32Serializer.serialize(value.pages), + "width": try Serialization._UInt32Serializer.serialize(value.width), + "height": try Serialization._UInt32Serializer.serialize(value.height), + ] + return .dictionary(output) + } + + public func deserialize(_ json: JSON) throws -> ApiPdfMetadata { + switch json { + case .dictionary(let dict): + let pages = try Serialization._UInt32Serializer.deserialize(dict["pages"] ?? .number(0)) + let width = try Serialization._UInt32Serializer.deserialize(dict["width"] ?? .number(0)) + let height = try Serialization._UInt32Serializer.deserialize(dict["height"] ?? .number(0)) + return ApiPdfMetadata(pages: pages, width: width, height: height) + default: + throw JSONSerializerError.deserializeError(type: ApiPdfMetadata.self, json: json) + } + } + } + + /// Structured transcript for APIv2 + public class ApiStructuredTranscript: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let segments: [Riviera.ApiTranscriptSegment]? + /// (no description) + public let transcriptLocale: String + public init(segments: [Riviera.ApiTranscriptSegment]? = nil, transcriptLocale: String = "") { + self.segments = segments + stringValidator()(transcriptLocale) + self.transcriptLocale = transcriptLocale + } + + func json() throws -> JSON { + try ApiStructuredTranscriptSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try ApiStructuredTranscriptSerializer().serialize(self)))" + } catch { + return "Failed to generate description for ApiStructuredTranscript: \(error)" + } + } + } + + public class ApiStructuredTranscriptSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: ApiStructuredTranscript) throws -> JSON { + let output = [ + "segments": try NullableSerializer(ArraySerializer(Riviera.ApiTranscriptSegmentSerializer())).serialize(value.segments), + "transcript_locale": try Serialization._StringSerializer.serialize(value.transcriptLocale), + ] + return .dictionary(output) + } + + public func deserialize(_ json: JSON) throws -> ApiStructuredTranscript { + switch json { + case .dictionary(let dict): + let segments = try NullableSerializer(ArraySerializer(Riviera.ApiTranscriptSegmentSerializer())).deserialize(dict["segments"] ?? .null) + let transcriptLocale = try Serialization._StringSerializer.deserialize(dict["transcript_locale"] ?? .str("")) + return ApiStructuredTranscript(segments: segments, transcriptLocale: transcriptLocale) + default: + throw JSONSerializerError.deserializeError(type: ApiStructuredTranscript.self, json: json) + } + } + } + + /// Transcript segment for APIv2 + public class ApiTranscriptSegment: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let text: String + /// (no description) + public let startTime: Double + /// (no description) + public let endTime: Double + public init(text: String = "", startTime: Double = 0.0, endTime: Double = 0.0) { + stringValidator()(text) + self.text = text + comparableValidator()(startTime) + self.startTime = startTime + comparableValidator()(endTime) + self.endTime = endTime + } + + func json() throws -> JSON { + try ApiTranscriptSegmentSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try ApiTranscriptSegmentSerializer().serialize(self)))" + } catch { + return "Failed to generate description for ApiTranscriptSegment: \(error)" + } + } + } + + public class ApiTranscriptSegmentSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: ApiTranscriptSegment) throws -> JSON { + let output = [ + "text": try Serialization._StringSerializer.serialize(value.text), + "start_time": try Serialization._DoubleSerializer.serialize(value.startTime), + "end_time": try Serialization._DoubleSerializer.serialize(value.endTime), + ] + return .dictionary(output) + } + + public func deserialize(_ json: JSON) throws -> ApiTranscriptSegment { + switch json { + case .dictionary(let dict): + let text = try Serialization._StringSerializer.deserialize(dict["text"] ?? .str("")) + let startTime = try Serialization._DoubleSerializer.deserialize(dict["start_time"] ?? .number(0.0)) + let endTime = try Serialization._DoubleSerializer.deserialize(dict["end_time"] ?? .number(0.0)) + return ApiTranscriptSegment(text: text, startTime: startTime, endTime: endTime) + default: + throw JSONSerializerError.deserializeError(type: ApiTranscriptSegment.self, json: json) + } + } + } + + /// Reason a transcript job failed. Returned in the `failed` variant of `GetTranscriptAsyncCheckResult`. This is a + /// semantic error union: the HTTP status of the poll request itself is unaffected (a poll that surfaces a + /// failed job is still a normal successful poll response). Callers should branch on the variant. + public enum ContentApiV2Error: CustomStringConvertible, JSONRepresentable { + /// An unexpected, typically transient, server-side failure. The string is a human-readable message; retrying + /// with backoff may succeed. + case serverError(String) + /// The request could not be processed as supplied (a problem with the caller's input). The string is a + /// human-readable message; retrying the same request will not help. + case userError(String) + /// An unspecified error. + case mediaDurationError(Riviera.MediaDurationError) + /// An unspecified error. + case noAudioError + /// An unspecified error. + case linkDownloadDisabledError + /// An unspecified error. + case sharedLinkPasswordProtected + /// An unspecified error. + case limitExceededError + /// The referenced file does not exist or is not accessible. + case notFoundError + /// The target is a folder, not a file. + case isAFolderError + /// An unspecified error. + case other + + func json() throws -> JSON { + try ContentApiV2ErrorSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try ContentApiV2ErrorSerializer().serialize(self)))" + } catch { + return "Failed to generate description for ContentApiV2Error: \(error)" + } + } + } + + public class ContentApiV2ErrorSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: ContentApiV2Error) throws -> JSON { + switch value { + case .serverError(let arg): + var d = try ["server_error": Serialization._StringSerializer.serialize(arg)] + d[".tag"] = .str("server_error") + return .dictionary(d) + case .userError(let arg): + var d = try ["user_error": Serialization._StringSerializer.serialize(arg)] + d[".tag"] = .str("user_error") + return .dictionary(d) + case .mediaDurationError(let arg): + var d = try Serialization.getFields(Riviera.MediaDurationErrorSerializer().serialize(arg)) + d[".tag"] = .str("media_duration_error") + return .dictionary(d) + case .noAudioError: + var d = [String: JSON]() + d[".tag"] = .str("no_audio_error") + return .dictionary(d) + case .linkDownloadDisabledError: + var d = [String: JSON]() + d[".tag"] = .str("link_download_disabled_error") + return .dictionary(d) + case .sharedLinkPasswordProtected: + var d = [String: JSON]() + d[".tag"] = .str("shared_link_password_protected") + return .dictionary(d) + case .limitExceededError: + var d = [String: JSON]() + d[".tag"] = .str("limit_exceeded_error") + return .dictionary(d) + case .notFoundError: + var d = [String: JSON]() + d[".tag"] = .str("not_found_error") + return .dictionary(d) + case .isAFolderError: + var d = [String: JSON]() + d[".tag"] = .str("is_a_folder_error") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + + public func deserialize(_ json: JSON) throws -> ContentApiV2Error { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "server_error": + let v = try Serialization._StringSerializer.deserialize(d["server_error"] ?? .null) + return ContentApiV2Error.serverError(v) + case "user_error": + let v = try Serialization._StringSerializer.deserialize(d["user_error"] ?? .null) + return ContentApiV2Error.userError(v) + case "media_duration_error": + let v = try Riviera.MediaDurationErrorSerializer().deserialize(json) + return ContentApiV2Error.mediaDurationError(v) + case "no_audio_error": + return ContentApiV2Error.noAudioError + case "link_download_disabled_error": + return ContentApiV2Error.linkDownloadDisabledError + case "shared_link_password_protected": + return ContentApiV2Error.sharedLinkPasswordProtected + case "limit_exceeded_error": + return ContentApiV2Error.limitExceededError + case "not_found_error": + return ContentApiV2Error.notFoundError + case "is_a_folder_error": + return ContentApiV2Error.isAFolderError + case "other": + return ContentApiV2Error.other + default: + return ContentApiV2Error.other + } + default: + throw JSONSerializerError.deserializeError(type: ContentApiV2Error.self, json: json) + } + } + } + + /// The FileIdOrUrl union + public enum FileIdOrUrl: CustomStringConvertible, JSONRepresentable { + /// A Dropbox-issued file id (format: "id:") for a file the authenticated user has access to. + case fileId(String) + /// Either a Dropbox shared link (www.dropbox.com) or an external HTTP or HTTPS URL pointing to a supported + /// file. - Dropbox shared links are resolved internally using the caller's authenticated identity and + /// the link's visibility / download settings. They therefore require an authenticated user context + /// (anonymous `url` requests against Dropbox links are rejected with an `access_error`). Links + /// protected by a password are rejected with `shared_link_password_protected`; links with downloads + /// disabled are rejected with `link_download_disabled_error`. - External URLs are fetched through the + /// backend's egress proxy and must point at a supported file extension. + case url(String) + /// An absolute Dropbox path, e.g. "/folder/example.pdf". + case path(String) + /// An unspecified error. + case other + + func json() throws -> JSON { + try FileIdOrUrlSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileIdOrUrlSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileIdOrUrl: \(error)" + } + } + } + + public class FileIdOrUrlSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: FileIdOrUrl) throws -> JSON { + switch value { + case .fileId(let arg): + var d = try ["file_id": Serialization._StringSerializer.serialize(arg)] + d[".tag"] = .str("file_id") + return .dictionary(d) + case .url(let arg): + var d = try ["url": Serialization._StringSerializer.serialize(arg)] + d[".tag"] = .str("url") + return .dictionary(d) + case .path(let arg): + var d = try ["path": Serialization._StringSerializer.serialize(arg)] + d[".tag"] = .str("path") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + + public func deserialize(_ json: JSON) throws -> FileIdOrUrl { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "file_id": + let v = try Serialization._StringSerializer.deserialize(d["file_id"] ?? .null) + return FileIdOrUrl.fileId(v) + case "url": + let v = try Serialization._StringSerializer.deserialize(d["url"] ?? .null) + return FileIdOrUrl.url(v) + case "path": + let v = try Serialization._StringSerializer.deserialize(d["path"] ?? .null) + return FileIdOrUrl.path(v) + case "other": + return FileIdOrUrl.other + default: + return FileIdOrUrl.other + } + default: + throw JSONSerializerError.deserializeError(type: FileIdOrUrl.self, json: json) + } + } + } + + /// Arguments for the asynchronous `get_markdown_async` route. Exactly one of `file_id`, `path`, or `url` must be + /// supplied via `file_id_or_url` to identify the document to convert to markdown. + public class GetMarkdownArgs: CustomStringConvertible, JSONRepresentable { + /// Identifier of the document to convert. Callers must set exactly one of the `FileIdOrUrl` variants. The + /// referenced file must be a document in a supported format (see the route description for the list); + /// requests against unsupported formats return `unsupported_format_error`. + public let fileIdOrUrl: Riviera.FileIdOrUrl? + /// Enable OCR for PDF documents. Processing is slower when enabled. + public let enableOcr: Bool + /// When true, embed images as base64 data URIs in the markdown output. This can significantly increase output + /// size. + public let embedImages: Bool + public init(fileIdOrUrl: Riviera.FileIdOrUrl? = nil, enableOcr: Bool = false, embedImages: Bool = false) { + self.fileIdOrUrl = fileIdOrUrl + self.enableOcr = enableOcr + self.embedImages = embedImages + } + + func json() throws -> JSON { + try GetMarkdownArgsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try GetMarkdownArgsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for GetMarkdownArgs: \(error)" + } + } + } + + public class GetMarkdownArgsSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: GetMarkdownArgs) throws -> JSON { + let output = [ + "file_id_or_url": try NullableSerializer(Riviera.FileIdOrUrlSerializer()).serialize(value.fileIdOrUrl), + "enable_ocr": try Serialization._BoolSerializer.serialize(value.enableOcr), + "embed_images": try Serialization._BoolSerializer.serialize(value.embedImages), + ] + return .dictionary(output) + } + + public func deserialize(_ json: JSON) throws -> GetMarkdownArgs { + switch json { + case .dictionary(let dict): + let fileIdOrUrl = try NullableSerializer(Riviera.FileIdOrUrlSerializer()).deserialize(dict["file_id_or_url"] ?? .null) + let enableOcr = try Serialization._BoolSerializer.deserialize(dict["enable_ocr"] ?? .number(0)) + let embedImages = try Serialization._BoolSerializer.deserialize(dict["embed_images"] ?? .number(0)) + return GetMarkdownArgs(fileIdOrUrl: fileIdOrUrl, enableOcr: enableOcr, embedImages: embedImages) + default: + throw JSONSerializerError.deserializeError(type: GetMarkdownArgs.self, json: json) + } + } + } + + /// Result type for EventBus async check + public enum GetMarkdownAsyncCheckResult: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case inProgress + /// An unspecified error. + case complete(Riviera.GetMarkdownResult) + /// An unspecified error. + case failed(Riviera.MarkdownConversionApiV2Error) + /// An unspecified error. + case other + + func json() throws -> JSON { + try GetMarkdownAsyncCheckResultSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try GetMarkdownAsyncCheckResultSerializer().serialize(self)))" + } catch { + return "Failed to generate description for GetMarkdownAsyncCheckResult: \(error)" + } + } + } + + public class GetMarkdownAsyncCheckResultSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: GetMarkdownAsyncCheckResult) throws -> JSON { + switch value { + case .inProgress: + var d = [String: JSON]() + d[".tag"] = .str("in_progress") + return .dictionary(d) + case .complete(let arg): + var d = try Serialization.getFields(Riviera.GetMarkdownResultSerializer().serialize(arg)) + d[".tag"] = .str("complete") + return .dictionary(d) + case .failed(let arg): + var d = try ["failed": Riviera.MarkdownConversionApiV2ErrorSerializer().serialize(arg)] + d[".tag"] = .str("failed") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + + public func deserialize(_ json: JSON) throws -> GetMarkdownAsyncCheckResult { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "in_progress": + return GetMarkdownAsyncCheckResult.inProgress + case "complete": + let v = try Riviera.GetMarkdownResultSerializer().deserialize(json) + return GetMarkdownAsyncCheckResult.complete(v) + case "failed": + let v = try Riviera.MarkdownConversionApiV2ErrorSerializer().deserialize(d["failed"] ?? .null) + return GetMarkdownAsyncCheckResult.failed(v) + case "other": + return GetMarkdownAsyncCheckResult.other + default: + return GetMarkdownAsyncCheckResult.other + } + default: + throw JSONSerializerError.deserializeError(type: GetMarkdownAsyncCheckResult.self, json: json) + } + } + } + + /// The GetMarkdownResult struct + public class GetMarkdownResult: CustomStringConvertible, JSONRepresentable { + /// The converted markdown content + public let markdown: String + public init(markdown: String = "") { + stringValidator()(markdown) + self.markdown = markdown + } + + func json() throws -> JSON { + try GetMarkdownResultSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try GetMarkdownResultSerializer().serialize(self)))" + } catch { + return "Failed to generate description for GetMarkdownResult: \(error)" + } + } + } + + public class GetMarkdownResultSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: GetMarkdownResult) throws -> JSON { + let output = [ + "markdown": try Serialization._StringSerializer.serialize(value.markdown), + ] + return .dictionary(output) + } + + public func deserialize(_ json: JSON) throws -> GetMarkdownResult { + switch json { + case .dictionary(let dict): + let markdown = try Serialization._StringSerializer.deserialize(dict["markdown"] ?? .str("")) + return GetMarkdownResult(markdown: markdown) + default: + throw JSONSerializerError.deserializeError(type: GetMarkdownResult.self, json: json) + } + } + } + + /// Arguments for the asynchronous `get_metadata_async` route. Exactly one of `file_id`, `path`, or `url` must be + /// supplied via `file_id_or_url` to identify the file whose metadata should be extracted. + public class GetMetadataArgs: CustomStringConvertible, JSONRepresentable { + /// Identifier of the file to extract metadata from. Callers must set exactly one of the `FileIdOrUrl` variants. + /// The kind of metadata returned is determined by the file type: image files return EXIF metadata, + /// audio/video files return media metadata, PDFs return PDF metadata, and MS Office documents (docx, + /// pptx, xlsx) return Office metadata. See the route description for the supported formats. Requests + /// against unsupported formats return `unsupported_format_error`. + public let fileIdOrUrl: Riviera.FileIdOrUrl? + public init(fileIdOrUrl: Riviera.FileIdOrUrl? = nil) { + self.fileIdOrUrl = fileIdOrUrl + } + + func json() throws -> JSON { + try GetMetadataArgsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try GetMetadataArgsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for GetMetadataArgs: \(error)" + } + } + } + + public class GetMetadataArgsSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: GetMetadataArgs) throws -> JSON { + let output = [ + "file_id_or_url": try NullableSerializer(Riviera.FileIdOrUrlSerializer()).serialize(value.fileIdOrUrl), + ] + return .dictionary(output) + } + + public func deserialize(_ json: JSON) throws -> GetMetadataArgs { + switch json { + case .dictionary(let dict): + let fileIdOrUrl = try NullableSerializer(Riviera.FileIdOrUrlSerializer()).deserialize(dict["file_id_or_url"] ?? .null) + return GetMetadataArgs(fileIdOrUrl: fileIdOrUrl) + default: + throw JSONSerializerError.deserializeError(type: GetMetadataArgs.self, json: json) + } + } + } + + /// Result type for EventBus async check - must end in "CheckResult" + public enum GetMetadataAsyncCheckResult: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case inProgress + /// An unspecified error. + case complete(Riviera.GetMetadataResult) + /// An unspecified error. + case failed(Riviera.MetadataExtractionApiV2Error) + /// An unspecified error. + case other + + func json() throws -> JSON { + try GetMetadataAsyncCheckResultSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try GetMetadataAsyncCheckResultSerializer().serialize(self)))" + } catch { + return "Failed to generate description for GetMetadataAsyncCheckResult: \(error)" + } + } + } + + public class GetMetadataAsyncCheckResultSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: GetMetadataAsyncCheckResult) throws -> JSON { + switch value { + case .inProgress: + var d = [String: JSON]() + d[".tag"] = .str("in_progress") + return .dictionary(d) + case .complete(let arg): + var d = try Serialization.getFields(Riviera.GetMetadataResultSerializer().serialize(arg)) + d[".tag"] = .str("complete") + return .dictionary(d) + case .failed(let arg): + var d = try ["failed": Riviera.MetadataExtractionApiV2ErrorSerializer().serialize(arg)] + d[".tag"] = .str("failed") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + + public func deserialize(_ json: JSON) throws -> GetMetadataAsyncCheckResult { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "in_progress": + return GetMetadataAsyncCheckResult.inProgress + case "complete": + let v = try Riviera.GetMetadataResultSerializer().deserialize(json) + return GetMetadataAsyncCheckResult.complete(v) + case "failed": + let v = try Riviera.MetadataExtractionApiV2ErrorSerializer().deserialize(d["failed"] ?? .null) + return GetMetadataAsyncCheckResult.failed(v) + case "other": + return GetMetadataAsyncCheckResult.other + default: + return GetMetadataAsyncCheckResult.other + } + default: + throw JSONSerializerError.deserializeError(type: GetMetadataAsyncCheckResult.self, json: json) + } + } + } + + /// The GetMetadataResult struct + public class GetMetadataResult: CustomStringConvertible, JSONRepresentable { + /// The kind of metadata that was extracted for the requested file. Callers should read the matching field of + /// the `metadata` oneof. + public let metadataType: Riviera.MetadataType + /// (no description) + public let metadata: Riviera.MetadataUnion? + public init(metadataType: Riviera.MetadataType = .metadataTypeUnknown, metadata: Riviera.MetadataUnion? = nil) { + self.metadataType = metadataType + self.metadata = metadata + } + + func json() throws -> JSON { + try GetMetadataResultSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try GetMetadataResultSerializer().serialize(self)))" + } catch { + return "Failed to generate description for GetMetadataResult: \(error)" + } + } + } + + public class GetMetadataResultSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: GetMetadataResult) throws -> JSON { + let output = [ + "metadata_type": try Riviera.MetadataTypeSerializer().serialize(value.metadataType), + "metadata": try NullableSerializer(Riviera.MetadataUnionSerializer()).serialize(value.metadata), + ] + return .dictionary(output) + } + + public func deserialize(_ json: JSON) throws -> GetMetadataResult { + switch json { + case .dictionary(let dict): + let metadataType = try Riviera.MetadataTypeSerializer().deserialize( + dict["metadata_type"] ?? Riviera.MetadataTypeSerializer().serialize(.metadataTypeUnknown) + ) + let metadata = try NullableSerializer(Riviera.MetadataUnionSerializer()).deserialize(dict["metadata"] ?? .null) + return GetMetadataResult(metadataType: metadataType, metadata: metadata) + default: + throw JSONSerializerError.deserializeError(type: GetMetadataResult.self, json: json) + } + } + } + + /// Arguments for the asynchronous `get_transcript_async` route. Exactly one of `file_id`, `path`, or `url` must be + /// supplied via `file_id_or_url` to identify the audio or video asset to transcribe. + public class GetTranscriptArgs: CustomStringConvertible, JSONRepresentable { + /// Identifier of the media asset to transcribe. Callers must set exactly one of the `FileIdOrUrl` variants. The + /// referenced asset must be an audio or video file in a supported format (see the route description for + /// the list); requests against files with no audio track return a `no_audio_error`. + public let fileIdOrUrl: Riviera.FileIdOrUrl? + /// Granularity of the time offsets returned for each transcript segment. Defaults to `SENTENCE` when the field + /// is omitted. - SENTENCE: one segment per spoken sentence (recommended). - WORD: one segment per word, + /// useful for fine-grained alignment such as captioning or highlight-as-you-listen experiences. + public let timestampLevel: Riviera.TimestampLevel + /// Comma-delimited list of non-lexical filler words to preserve in the transcript output, e.g. `"uh, ah, uhm"`. + /// By default these fillers are stripped. Unrecognized tokens are ignored. Leave empty to use the + /// default filtering behavior. + public let includedSpecialWords: String + /// Optional ISO 639-1 two-letter language code hinting the spoken language of the source audio (e.g. "en", + /// "ja"). When empty, the service auto-detects the language; supplying a hint improves accuracy and + /// latency for short or ambiguous clips. Unsupported languages fall back to auto-detection. + public let audioLanguage: String + public init( + fileIdOrUrl: Riviera.FileIdOrUrl? = nil, + timestampLevel: Riviera.TimestampLevel = .sentence, + includedSpecialWords: String = "", + audioLanguage: String = "" + ) { + self.fileIdOrUrl = fileIdOrUrl + self.timestampLevel = timestampLevel + stringValidator()(includedSpecialWords) + self.includedSpecialWords = includedSpecialWords + stringValidator()(audioLanguage) + self.audioLanguage = audioLanguage + } + + func json() throws -> JSON { + try GetTranscriptArgsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try GetTranscriptArgsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for GetTranscriptArgs: \(error)" + } + } + } + + public class GetTranscriptArgsSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: GetTranscriptArgs) throws -> JSON { + let output = [ + "file_id_or_url": try NullableSerializer(Riviera.FileIdOrUrlSerializer()).serialize(value.fileIdOrUrl), + "timestamp_level": try Riviera.TimestampLevelSerializer().serialize(value.timestampLevel), + "included_special_words": try Serialization._StringSerializer.serialize(value.includedSpecialWords), + "audio_language": try Serialization._StringSerializer.serialize(value.audioLanguage), + ] + return .dictionary(output) + } + + public func deserialize(_ json: JSON) throws -> GetTranscriptArgs { + switch json { + case .dictionary(let dict): + let fileIdOrUrl = try NullableSerializer(Riviera.FileIdOrUrlSerializer()).deserialize(dict["file_id_or_url"] ?? .null) + let timestampLevel = try Riviera.TimestampLevelSerializer().deserialize( + dict["timestamp_level"] ?? Riviera.TimestampLevelSerializer().serialize(.sentence) + ) + let includedSpecialWords = try Serialization._StringSerializer.deserialize(dict["included_special_words"] ?? .str("")) + let audioLanguage = try Serialization._StringSerializer.deserialize(dict["audio_language"] ?? .str("")) + return GetTranscriptArgs( + fileIdOrUrl: fileIdOrUrl, + timestampLevel: timestampLevel, + includedSpecialWords: includedSpecialWords, + audioLanguage: audioLanguage + ) + default: + throw JSONSerializerError.deserializeError(type: GetTranscriptArgs.self, json: json) + } + } + } + + /// Result type for EventBus async check - must end in "CheckResult" + public enum GetTranscriptAsyncCheckResult: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case inProgress + /// An unspecified error. + case complete(Riviera.GetTranscriptResult) + /// An unspecified error. + case failed(Riviera.ContentApiV2Error) + /// An unspecified error. + case other + + func json() throws -> JSON { + try GetTranscriptAsyncCheckResultSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try GetTranscriptAsyncCheckResultSerializer().serialize(self)))" + } catch { + return "Failed to generate description for GetTranscriptAsyncCheckResult: \(error)" + } + } + } + + public class GetTranscriptAsyncCheckResultSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: GetTranscriptAsyncCheckResult) throws -> JSON { + switch value { + case .inProgress: + var d = [String: JSON]() + d[".tag"] = .str("in_progress") + return .dictionary(d) + case .complete(let arg): + var d = try Serialization.getFields(Riviera.GetTranscriptResultSerializer().serialize(arg)) + d[".tag"] = .str("complete") + return .dictionary(d) + case .failed(let arg): + var d = try ["failed": Riviera.ContentApiV2ErrorSerializer().serialize(arg)] + d[".tag"] = .str("failed") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + + public func deserialize(_ json: JSON) throws -> GetTranscriptAsyncCheckResult { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "in_progress": + return GetTranscriptAsyncCheckResult.inProgress + case "complete": + let v = try Riviera.GetTranscriptResultSerializer().deserialize(json) + return GetTranscriptAsyncCheckResult.complete(v) + case "failed": + let v = try Riviera.ContentApiV2ErrorSerializer().deserialize(d["failed"] ?? .null) + return GetTranscriptAsyncCheckResult.failed(v) + case "other": + return GetTranscriptAsyncCheckResult.other + default: + return GetTranscriptAsyncCheckResult.other + } + default: + throw JSONSerializerError.deserializeError(type: GetTranscriptAsyncCheckResult.self, json: json) + } + } + } + + /// The GetTranscriptResult struct + public class GetTranscriptResult: CustomStringConvertible, JSONRepresentable { + /// The structured transcript produced for the requested media asset, with per-segment text, start/end offsets + /// (in seconds from the beginning of the media), and the detected or caller-supplied locale. + public let structuredTranscript: Riviera.ApiStructuredTranscript? + public init(structuredTranscript: Riviera.ApiStructuredTranscript? = nil) { + self.structuredTranscript = structuredTranscript + } + + func json() throws -> JSON { + try GetTranscriptResultSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try GetTranscriptResultSerializer().serialize(self)))" + } catch { + return "Failed to generate description for GetTranscriptResult: \(error)" + } + } + } + + public class GetTranscriptResultSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: GetTranscriptResult) throws -> JSON { + let output = [ + "structured_transcript": try NullableSerializer(Riviera.ApiStructuredTranscriptSerializer()).serialize(value.structuredTranscript), + ] + return .dictionary(output) + } + + public func deserialize(_ json: JSON) throws -> GetTranscriptResult { + switch json { + case .dictionary(let dict): + let structuredTranscript = try NullableSerializer(Riviera.ApiStructuredTranscriptSerializer()).deserialize( + dict["structured_transcript"] ?? .null + ) + return GetTranscriptResult(structuredTranscript: structuredTranscript) + default: + throw JSONSerializerError.deserializeError(type: GetTranscriptResult.self, json: json) + } + } + } + + /// Reason a markdown conversion job failed. Returned in the `failed` variant of `GetMarkdownAsyncCheckResult`. This + /// is a semantic error union: the HTTP status of the poll request itself is unaffected (a poll that surfaces a + /// failed job is still a normal successful poll response). Callers should branch on the variant. + public enum MarkdownConversionApiV2Error: CustomStringConvertible, JSONRepresentable { + /// An unexpected, typically transient, server-side failure. The string is a human-readable message; retrying + /// with backoff may succeed. + case serverError(String) + /// The request could not be processed as supplied (a problem with the caller's input). The string is a + /// human-readable message; retrying the same request will not help. + case userError(String) + /// An unspecified error. + case unsupportedFormatError + /// An unspecified error. + case linkDownloadDisabledError + /// An unspecified error. + case sharedLinkPasswordProtected + /// An unspecified error. + case limitExceededError + /// An unspecified error. + case conversionFailureError + /// The referenced file does not exist or is not accessible. + case notFoundError + /// The target is a folder, not a file. + case isAFolderError + /// An unspecified error. + case other + + func json() throws -> JSON { + try MarkdownConversionApiV2ErrorSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try MarkdownConversionApiV2ErrorSerializer().serialize(self)))" + } catch { + return "Failed to generate description for MarkdownConversionApiV2Error: \(error)" + } + } + } + + public class MarkdownConversionApiV2ErrorSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: MarkdownConversionApiV2Error) throws -> JSON { + switch value { + case .serverError(let arg): + var d = try ["server_error": Serialization._StringSerializer.serialize(arg)] + d[".tag"] = .str("server_error") + return .dictionary(d) + case .userError(let arg): + var d = try ["user_error": Serialization._StringSerializer.serialize(arg)] + d[".tag"] = .str("user_error") + return .dictionary(d) + case .unsupportedFormatError: + var d = [String: JSON]() + d[".tag"] = .str("unsupported_format_error") + return .dictionary(d) + case .linkDownloadDisabledError: + var d = [String: JSON]() + d[".tag"] = .str("link_download_disabled_error") + return .dictionary(d) + case .sharedLinkPasswordProtected: + var d = [String: JSON]() + d[".tag"] = .str("shared_link_password_protected") + return .dictionary(d) + case .limitExceededError: + var d = [String: JSON]() + d[".tag"] = .str("limit_exceeded_error") + return .dictionary(d) + case .conversionFailureError: + var d = [String: JSON]() + d[".tag"] = .str("conversion_failure_error") + return .dictionary(d) + case .notFoundError: + var d = [String: JSON]() + d[".tag"] = .str("not_found_error") + return .dictionary(d) + case .isAFolderError: + var d = [String: JSON]() + d[".tag"] = .str("is_a_folder_error") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + + public func deserialize(_ json: JSON) throws -> MarkdownConversionApiV2Error { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "server_error": + let v = try Serialization._StringSerializer.deserialize(d["server_error"] ?? .null) + return MarkdownConversionApiV2Error.serverError(v) + case "user_error": + let v = try Serialization._StringSerializer.deserialize(d["user_error"] ?? .null) + return MarkdownConversionApiV2Error.userError(v) + case "unsupported_format_error": + return MarkdownConversionApiV2Error.unsupportedFormatError + case "link_download_disabled_error": + return MarkdownConversionApiV2Error.linkDownloadDisabledError + case "shared_link_password_protected": + return MarkdownConversionApiV2Error.sharedLinkPasswordProtected + case "limit_exceeded_error": + return MarkdownConversionApiV2Error.limitExceededError + case "conversion_failure_error": + return MarkdownConversionApiV2Error.conversionFailureError + case "not_found_error": + return MarkdownConversionApiV2Error.notFoundError + case "is_a_folder_error": + return MarkdownConversionApiV2Error.isAFolderError + case "other": + return MarkdownConversionApiV2Error.other + default: + return MarkdownConversionApiV2Error.other + } + default: + throw JSONSerializerError.deserializeError(type: MarkdownConversionApiV2Error.self, json: json) + } + } + } + + /// The MediaDurationError struct + public class MediaDurationError: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let limit: Int32 + public init(limit: Int32 = 0) { + comparableValidator()(limit) + self.limit = limit + } + + func json() throws -> JSON { + try MediaDurationErrorSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try MediaDurationErrorSerializer().serialize(self)))" + } catch { + return "Failed to generate description for MediaDurationError: \(error)" + } + } + } + + public class MediaDurationErrorSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: MediaDurationError) throws -> JSON { + let output = [ + "limit": try Serialization._Int32Serializer.serialize(value.limit), + ] + return .dictionary(output) + } + + public func deserialize(_ json: JSON) throws -> MediaDurationError { + switch json { + case .dictionary(let dict): + let limit = try Serialization._Int32Serializer.deserialize(dict["limit"] ?? .number(0)) + return MediaDurationError(limit: limit) + default: + throw JSONSerializerError.deserializeError(type: MediaDurationError.self, json: json) + } + } + } + + /// Reason a metadata extraction job failed. Returned in the `failed` variant of `GetMetadataAsyncCheckResult`. This + /// is a semantic error union: the HTTP status of the poll request itself is unaffected (a poll that surfaces a + /// failed job is still a normal successful poll response). Callers should branch on the variant. + public enum MetadataExtractionApiV2Error: CustomStringConvertible, JSONRepresentable { + /// An unexpected, typically transient, server-side failure. The string is a human-readable message; retrying + /// with backoff may succeed. + case serverError(String) + /// The request could not be processed as supplied (a problem with the caller's input). The string is a + /// human-readable message; retrying the same request will not help. + case userError(String) + /// An unspecified error. + case unsupportedFormatError + /// An unspecified error. + case linkDownloadDisabledError + /// An unspecified error. + case sharedLinkPasswordProtected + /// An unspecified error. + case limitExceededError + /// An unspecified error. + case conversionFailureError + /// The referenced file does not exist or is not accessible. + case notFoundError + /// The target is a folder, not a file. + case isAFolderError + /// An unspecified error. + case other + + func json() throws -> JSON { + try MetadataExtractionApiV2ErrorSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try MetadataExtractionApiV2ErrorSerializer().serialize(self)))" + } catch { + return "Failed to generate description for MetadataExtractionApiV2Error: \(error)" + } + } + } + + public class MetadataExtractionApiV2ErrorSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: MetadataExtractionApiV2Error) throws -> JSON { + switch value { + case .serverError(let arg): + var d = try ["server_error": Serialization._StringSerializer.serialize(arg)] + d[".tag"] = .str("server_error") + return .dictionary(d) + case .userError(let arg): + var d = try ["user_error": Serialization._StringSerializer.serialize(arg)] + d[".tag"] = .str("user_error") + return .dictionary(d) + case .unsupportedFormatError: + var d = [String: JSON]() + d[".tag"] = .str("unsupported_format_error") + return .dictionary(d) + case .linkDownloadDisabledError: + var d = [String: JSON]() + d[".tag"] = .str("link_download_disabled_error") + return .dictionary(d) + case .sharedLinkPasswordProtected: + var d = [String: JSON]() + d[".tag"] = .str("shared_link_password_protected") + return .dictionary(d) + case .limitExceededError: + var d = [String: JSON]() + d[".tag"] = .str("limit_exceeded_error") + return .dictionary(d) + case .conversionFailureError: + var d = [String: JSON]() + d[".tag"] = .str("conversion_failure_error") + return .dictionary(d) + case .notFoundError: + var d = [String: JSON]() + d[".tag"] = .str("not_found_error") + return .dictionary(d) + case .isAFolderError: + var d = [String: JSON]() + d[".tag"] = .str("is_a_folder_error") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + + public func deserialize(_ json: JSON) throws -> MetadataExtractionApiV2Error { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "server_error": + let v = try Serialization._StringSerializer.deserialize(d["server_error"] ?? .null) + return MetadataExtractionApiV2Error.serverError(v) + case "user_error": + let v = try Serialization._StringSerializer.deserialize(d["user_error"] ?? .null) + return MetadataExtractionApiV2Error.userError(v) + case "unsupported_format_error": + return MetadataExtractionApiV2Error.unsupportedFormatError + case "link_download_disabled_error": + return MetadataExtractionApiV2Error.linkDownloadDisabledError + case "shared_link_password_protected": + return MetadataExtractionApiV2Error.sharedLinkPasswordProtected + case "limit_exceeded_error": + return MetadataExtractionApiV2Error.limitExceededError + case "conversion_failure_error": + return MetadataExtractionApiV2Error.conversionFailureError + case "not_found_error": + return MetadataExtractionApiV2Error.notFoundError + case "is_a_folder_error": + return MetadataExtractionApiV2Error.isAFolderError + case "other": + return MetadataExtractionApiV2Error.other + default: + return MetadataExtractionApiV2Error.other + } + default: + throw JSONSerializerError.deserializeError(type: MetadataExtractionApiV2Error.self, json: json) + } + } + } + + /// Which metadata variant is populated in a `GetMetadataResult`, derived from the file type. + public enum MetadataType: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case metadataTypeUnknown + /// An unspecified error. + case metadataTypeExif + /// An unspecified error. + case metadataTypeMedia + /// An unspecified error. + case metadataTypePdf + /// An unspecified error. + case metadataTypeOffice + /// An unspecified error. + case other + + func json() throws -> JSON { + try MetadataTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try MetadataTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for MetadataType: \(error)" + } + } + } + + public class MetadataTypeSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: MetadataType) throws -> JSON { + switch value { + case .metadataTypeUnknown: + var d = [String: JSON]() + d[".tag"] = .str("metadata_type_unknown") + return .dictionary(d) + case .metadataTypeExif: + var d = [String: JSON]() + d[".tag"] = .str("metadata_type_exif") + return .dictionary(d) + case .metadataTypeMedia: + var d = [String: JSON]() + d[".tag"] = .str("metadata_type_media") + return .dictionary(d) + case .metadataTypePdf: + var d = [String: JSON]() + d[".tag"] = .str("metadata_type_pdf") + return .dictionary(d) + case .metadataTypeOffice: + var d = [String: JSON]() + d[".tag"] = .str("metadata_type_office") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + + public func deserialize(_ json: JSON) throws -> MetadataType { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "metadata_type_unknown": + return MetadataType.metadataTypeUnknown + case "metadata_type_exif": + return MetadataType.metadataTypeExif + case "metadata_type_media": + return MetadataType.metadataTypeMedia + case "metadata_type_pdf": + return MetadataType.metadataTypePdf + case "metadata_type_office": + return MetadataType.metadataTypeOffice + case "other": + return MetadataType.other + default: + return MetadataType.other + } + default: + throw JSONSerializerError.deserializeError(type: MetadataType.self, json: json) + } + } + } + + /// The kind of MS Office document that produced an `ApiOfficeMetadata` result. + public enum OfficeFileType: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case officeFiletypeUnknown + /// An unspecified error. + case officeFiletypeWord + /// An unspecified error. + case officeFiletypePowerpoint + /// An unspecified error. + case officeFiletypeExcel + /// An unspecified error. + case other + + func json() throws -> JSON { + try OfficeFileTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try OfficeFileTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for OfficeFileType: \(error)" + } + } + } + + public class OfficeFileTypeSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: OfficeFileType) throws -> JSON { + switch value { + case .officeFiletypeUnknown: + var d = [String: JSON]() + d[".tag"] = .str("office_filetype_unknown") + return .dictionary(d) + case .officeFiletypeWord: + var d = [String: JSON]() + d[".tag"] = .str("office_filetype_word") + return .dictionary(d) + case .officeFiletypePowerpoint: + var d = [String: JSON]() + d[".tag"] = .str("office_filetype_powerpoint") + return .dictionary(d) + case .officeFiletypeExcel: + var d = [String: JSON]() + d[".tag"] = .str("office_filetype_excel") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + + public func deserialize(_ json: JSON) throws -> OfficeFileType { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "office_filetype_unknown": + return OfficeFileType.officeFiletypeUnknown + case "office_filetype_word": + return OfficeFileType.officeFiletypeWord + case "office_filetype_powerpoint": + return OfficeFileType.officeFiletypePowerpoint + case "office_filetype_excel": + return OfficeFileType.officeFiletypeExcel + case "other": + return OfficeFileType.other + default: + return OfficeFileType.other + } + default: + throw JSONSerializerError.deserializeError(type: OfficeFileType.self, json: json) + } + } + } + + /// The TimestampLevel union + public enum TimestampLevel: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case sentence + /// An unspecified error. + case word + /// An unspecified error. + case other + + func json() throws -> JSON { + try TimestampLevelSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try TimestampLevelSerializer().serialize(self)))" + } catch { + return "Failed to generate description for TimestampLevel: \(error)" + } + } + } + + public class TimestampLevelSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: TimestampLevel) throws -> JSON { + switch value { + case .sentence: + var d = [String: JSON]() + d[".tag"] = .str("sentence") + return .dictionary(d) + case .word: + var d = [String: JSON]() + d[".tag"] = .str("word") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + + public func deserialize(_ json: JSON) throws -> TimestampLevel { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "sentence": + return TimestampLevel.sentence + case "word": + return TimestampLevel.word + case "other": + return TimestampLevel.other + default: + return TimestampLevel.other + } + default: + throw JSONSerializerError.deserializeError(type: TimestampLevel.self, json: json) + } + } + } + + /// Exactly one variant is populated, corresponding to `metadata_type`. + public enum MetadataUnion: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case exif(Riviera.ApiExifMetadata) + /// An unspecified error. + case media(Riviera.ApiMediaMetadata) + /// An unspecified error. + case pdf(Riviera.ApiPdfMetadata) + /// An unspecified error. + case office(Riviera.ApiOfficeMetadata) + /// An unspecified error. + case other + + func json() throws -> JSON { + try MetadataUnionSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try MetadataUnionSerializer().serialize(self)))" + } catch { + return "Failed to generate description for MetadataUnion: \(error)" + } + } + } + + public class MetadataUnionSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: MetadataUnion) throws -> JSON { + switch value { + case .exif(let arg): + var d = try Serialization.getFields(Riviera.ApiExifMetadataSerializer().serialize(arg)) + d[".tag"] = .str("exif") + return .dictionary(d) + case .media(let arg): + var d = try Serialization.getFields(Riviera.ApiMediaMetadataSerializer().serialize(arg)) + d[".tag"] = .str("media") + return .dictionary(d) + case .pdf(let arg): + var d = try Serialization.getFields(Riviera.ApiPdfMetadataSerializer().serialize(arg)) + d[".tag"] = .str("pdf") + return .dictionary(d) + case .office(let arg): + var d = try Serialization.getFields(Riviera.ApiOfficeMetadataSerializer().serialize(arg)) + d[".tag"] = .str("office") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + + public func deserialize(_ json: JSON) throws -> MetadataUnion { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "exif": + let v = try Riviera.ApiExifMetadataSerializer().deserialize(json) + return MetadataUnion.exif(v) + case "media": + let v = try Riviera.ApiMediaMetadataSerializer().deserialize(json) + return MetadataUnion.media(v) + case "pdf": + let v = try Riviera.ApiPdfMetadataSerializer().deserialize(json) + return MetadataUnion.pdf(v) + case "office": + let v = try Riviera.ApiOfficeMetadataSerializer().deserialize(json) + return MetadataUnion.office(v) + case "other": + return MetadataUnion.other + default: + return MetadataUnion.other + } + default: + throw JSONSerializerError.deserializeError(type: MetadataUnion.self, json: json) + } + } + } + + /// Stone Route Objects + + static let getMarkdownAsync = Route( + name: "get_markdown_async", + version: 1, + namespace: "riviera", + deprecated: false, + argSerializer: Riviera.GetMarkdownArgsSerializer(), + responseSerializer: Async.LaunchResultBaseSerializer(), + errorSerializer: Serialization._VoidSerializer, + attributes: RouteAttributes( + auth: [.app, .user], + host: .api, + style: .rpc + ) + ) + static let getMarkdownAsyncCheck = Route( + name: "get_markdown_async/check", + version: 1, + namespace: "riviera", + deprecated: false, + argSerializer: Async.PollArgSerializer(), + responseSerializer: Riviera.GetMarkdownAsyncCheckResultSerializer(), + errorSerializer: Async.PollErrorSerializer(), + attributes: RouteAttributes( + auth: [.app, .user], + host: .api, + style: .rpc + ) + ) + static let getMetadataAsync = Route( + name: "get_metadata_async", + version: 1, + namespace: "riviera", + deprecated: false, + argSerializer: Riviera.GetMetadataArgsSerializer(), + responseSerializer: Async.LaunchResultBaseSerializer(), + errorSerializer: Serialization._VoidSerializer, + attributes: RouteAttributes( + auth: [.app, .user], + host: .api, + style: .rpc + ) + ) + static let getMetadataAsyncCheck = Route( + name: "get_metadata_async/check", + version: 1, + namespace: "riviera", + deprecated: false, + argSerializer: Async.PollArgSerializer(), + responseSerializer: Riviera.GetMetadataAsyncCheckResultSerializer(), + errorSerializer: Async.PollErrorSerializer(), + attributes: RouteAttributes( + auth: [.app, .user], + host: .api, + style: .rpc + ) + ) + static let getTranscriptAsync = Route( + name: "get_transcript_async", + version: 1, + namespace: "riviera", + deprecated: false, + argSerializer: Riviera.GetTranscriptArgsSerializer(), + responseSerializer: Async.LaunchResultBaseSerializer(), + errorSerializer: Serialization._VoidSerializer, + attributes: RouteAttributes( + auth: [.app, .user], + host: .api, + style: .rpc + ) + ) + static let getTranscriptAsyncCheck = Route( + name: "get_transcript_async/check", + version: 1, + namespace: "riviera", + deprecated: false, + argSerializer: Async.PollArgSerializer(), + responseSerializer: Riviera.GetTranscriptAsyncCheckResultSerializer(), + errorSerializer: Async.PollErrorSerializer(), + attributes: RouteAttributes( + auth: [.app, .user], + host: .api, + style: .rpc + ) + ) +} diff --git a/Source/SwiftyDropbox/Shared/Generated/RivieraAppAuthRoutes.swift b/Source/SwiftyDropbox/Shared/Generated/RivieraAppAuthRoutes.swift new file mode 100644 index 00000000..5f9a16bc --- /dev/null +++ b/Source/SwiftyDropbox/Shared/Generated/RivieraAppAuthRoutes.swift @@ -0,0 +1,159 @@ +/// +/// Copyright (c) 2016 Dropbox, Inc. All rights reserved. +/// +/// Auto-generated by Stone, do not modify. +/// + +import Foundation + +/// Routes for the rivieraAppAuth namespace +/// For Objective-C compatible routes see DBRivieraRoutes +public class RivieraAppAuthRoutes: DropboxTransportClientOwning { + public let client: DropboxTransportClient + required init(client: DropboxTransportClient) { + self.client = client + } + + /// Asynchronous document-to-markdown conversion for supported file formats. Supported formats: .binder, .docx, + /// .html, .paper, .papert, .pptx, .xlsx, .gsheet, .ods, .pdf. Unsupported formats return an + /// `unsupported_format_error`. Size limit: the source file must be at most 50 MB. Larger files are rejected. + /// + /// - scope: files.content.read + /// + /// - parameter fileIdOrUrl: Identifier of the document to convert. Callers must set exactly one of the + /// `FileIdOrUrl` variants. The referenced file must be a document in a supported format (see the route + /// description for the list); requests against unsupported formats return `unsupported_format_error`. + /// - parameter enableOcr: Enable OCR for PDF documents. Processing is slower when enabled. + /// - parameter embedImages: When true, embed images as base64 data URIs in the markdown output. This can + /// significantly increase output size. + /// + /// - returns: Through the response callback, the caller will receive a `Async.LaunchResultBase` object on success + /// or a `Void` object on failure. + @discardableResult public func getMarkdownAsync(fileIdOrUrl: Riviera.FileIdOrUrl? = nil, enableOcr: Bool = false, embedImages: Bool = false) -> RpcRequest< + Async.LaunchResultBaseSerializer, + VoidSerializer + > { + let route = Riviera.getMarkdownAsync + let serverArgs = Riviera.GetMarkdownArgs(fileIdOrUrl: fileIdOrUrl, enableOcr: enableOcr, embedImages: embedImages) + return client.request(route, serverArgs: serverArgs) + } + + /// Returns the status or result of specified get_markdown_async task. + /// + /// - scope: files.content.read + /// + /// - parameter asyncJobId: Id of the asynchronous job. This is the value of a response returned from the method + /// that launched the job. + /// + /// - returns: Through the response callback, the caller will receive a `Riviera.GetMarkdownAsyncCheckResult` object + /// on success or a `Async.PollError` object on failure. + @discardableResult public func getMarkdownAsyncCheck(asyncJobId: String) -> RpcRequest< + Riviera.GetMarkdownAsyncCheckResultSerializer, + Async.PollErrorSerializer + > { + let route = Riviera.getMarkdownAsyncCheck + let serverArgs = Async.PollArg(asyncJobId: asyncJobId) + return client.request(route, serverArgs: serverArgs) + } + + /// Asynchronous file metadata extraction for supported file formats. The kind of metadata returned depends on the + /// file type: - Image (EXIF) formats: .3fr, .arw, .avif, .bmp, .cr2, .cr3, .crw, .dcr, .dcs, .dng, .erf, .gif, + /// .heic, .j2c, .j2k, .jp2, .jpc, .jpeg, .jpf, .jpg, .jpg2, .jpm, .jpx, .kdc, .mef, .mos, .mrw, .nef, .nrw, + /// .orf, .pef, .png, .ppm, .r3d, .raf, .rw2, .rwl, .sr2, .tga, .tif, .tiff, .wbmp, .web, .webp, .x3f. - + /// Audio/video (media) formats: .aac, .aif, .aiff, .flac, .m4a, .m4r, .mp3, .oga, .ogg, .wav, .wma, .3gp, + /// .3gpp, .3gpp2, .asf, .avi, .dv, .flv, .m2t, .m2ts, .m4v, .mkv, .mov, .mp4, .mpeg, .mpg, .mts, .mxf, + /// .oggtheora, .ogv, .rm, .ts, .vob, .webm, .wmv. - PDF format: .pdf. - MS Office formats: .docx, .pptx, .xlsx. + /// Unsupported formats return an `unsupported_format_error`. + /// + /// - scope: files.content.read + /// + /// - parameter fileIdOrUrl: Identifier of the file to extract metadata from. Callers must set exactly one of the + /// `FileIdOrUrl` variants. The kind of metadata returned is determined by the file type: image files return + /// EXIF metadata, audio/video files return media metadata, PDFs return PDF metadata, and MS Office documents + /// (docx, pptx, xlsx) return Office metadata. See the route description for the supported formats. Requests + /// against unsupported formats return `unsupported_format_error`. + /// + /// - returns: Through the response callback, the caller will receive a `Async.LaunchResultBase` object on success + /// or a `Void` object on failure. + @discardableResult public func getMetadataAsync(fileIdOrUrl: Riviera.FileIdOrUrl? = nil) -> RpcRequest { + let route = Riviera.getMetadataAsync + let serverArgs = Riviera.GetMetadataArgs(fileIdOrUrl: fileIdOrUrl) + return client.request(route, serverArgs: serverArgs) + } + + /// Returns the status or result of specified get_metadata_async task. + /// + /// - scope: files.content.read + /// + /// - parameter asyncJobId: Id of the asynchronous job. This is the value of a response returned from the method + /// that launched the job. + /// + /// - returns: Through the response callback, the caller will receive a `Riviera.GetMetadataAsyncCheckResult` object + /// on success or a `Async.PollError` object on failure. + @discardableResult public func getMetadataAsyncCheck(asyncJobId: String) -> RpcRequest< + Riviera.GetMetadataAsyncCheckResultSerializer, + Async.PollErrorSerializer + > { + let route = Riviera.getMetadataAsyncCheck + let serverArgs = Async.PollArg(asyncJobId: asyncJobId) + return client.request(route, serverArgs: serverArgs) + } + + /// Asynchronous transcript generation for audio and video files. Supported audio formats: .aac, .aif, .aiff, .flac, + /// .m4a, .m4r, .mp3, .oga, .ogg, .wav, .wma. Supported video formats: .3gp, .3gpp, .3gpp2, .asf, .avi, .dv, + /// .flv, .m2t, .m2ts, .m4v, .mkv, .mov, .mp4, .mpeg, .mpg, .mts, .mxf, .oggtheora, .ogv, .rm, .ts, .vob, .webm, + /// .wmv. Unsupported formats return an `unsupported_format_error`. Size limits: the source file must be at most + /// 10 GB and its audio track at most 1 hour in duration. Files exceeding these limits are rejected. + /// + /// - scope: files.content.read + /// + /// - parameter fileIdOrUrl: Identifier of the media asset to transcribe. Callers must set exactly one of the + /// `FileIdOrUrl` variants. The referenced asset must be an audio or video file in a supported format (see the + /// route description for the list); requests against files with no audio track return a `no_audio_error`. + /// - parameter timestampLevel: Granularity of the time offsets returned for each transcript segment. Defaults to + /// `SENTENCE` when the field is omitted. - SENTENCE: one segment per spoken sentence (recommended). - WORD: one + /// segment per word, useful for fine-grained alignment such as captioning or highlight-as-you-listen + /// experiences. + /// - parameter includedSpecialWords: Comma-delimited list of non-lexical filler words to preserve in the transcript + /// output, e.g. `"uh, ah, uhm"`. By default these fillers are stripped. Unrecognized tokens are ignored. Leave + /// empty to use the default filtering behavior. + /// - parameter audioLanguage: Optional ISO 639-1 two-letter language code hinting the spoken language of the source + /// audio (e.g. "en", "ja"). When empty, the service auto-detects the language; supplying a hint improves + /// accuracy and latency for short or ambiguous clips. Unsupported languages fall back to auto-detection. + /// + /// - returns: Through the response callback, the caller will receive a `Async.LaunchResultBase` object on success + /// or a `Void` object on failure. + @discardableResult public func getTranscriptAsync( + fileIdOrUrl: Riviera.FileIdOrUrl? = nil, + timestampLevel: Riviera.TimestampLevel = .sentence, + includedSpecialWords: String = "", + audioLanguage: String = "" + ) -> RpcRequest { + let route = Riviera.getTranscriptAsync + let serverArgs = Riviera.GetTranscriptArgs( + fileIdOrUrl: fileIdOrUrl, + timestampLevel: timestampLevel, + includedSpecialWords: includedSpecialWords, + audioLanguage: audioLanguage + ) + return client.request(route, serverArgs: serverArgs) + } + + /// Returns the status or result of specified get_transcript_async task. + /// + /// - scope: files.content.read + /// + /// - parameter asyncJobId: Id of the asynchronous job. This is the value of a response returned from the method + /// that launched the job. + /// + /// - returns: Through the response callback, the caller will receive a `Riviera.GetTranscriptAsyncCheckResult` + /// object on success or a `Async.PollError` object on failure. + @discardableResult public func getTranscriptAsyncCheck(asyncJobId: String) -> RpcRequest< + Riviera.GetTranscriptAsyncCheckResultSerializer, + Async.PollErrorSerializer + > { + let route = Riviera.getTranscriptAsyncCheck + let serverArgs = Async.PollArg(asyncJobId: asyncJobId) + return client.request(route, serverArgs: serverArgs) + } +} diff --git a/Source/SwiftyDropbox/Shared/Generated/RivieraRoutes.swift b/Source/SwiftyDropbox/Shared/Generated/RivieraRoutes.swift new file mode 100644 index 00000000..086be160 --- /dev/null +++ b/Source/SwiftyDropbox/Shared/Generated/RivieraRoutes.swift @@ -0,0 +1,159 @@ +/// +/// Copyright (c) 2016 Dropbox, Inc. All rights reserved. +/// +/// Auto-generated by Stone, do not modify. +/// + +import Foundation + +/// Routes for the riviera namespace +/// For Objective-C compatible routes see DBRivieraRoutes +public class RivieraRoutes: DropboxTransportClientOwning { + public let client: DropboxTransportClient + required init(client: DropboxTransportClient) { + self.client = client + } + + /// Asynchronous document-to-markdown conversion for supported file formats. Supported formats: .binder, .docx, + /// .html, .paper, .papert, .pptx, .xlsx, .gsheet, .ods, .pdf. Unsupported formats return an + /// `unsupported_format_error`. Size limit: the source file must be at most 50 MB. Larger files are rejected. + /// + /// - scope: files.content.read + /// + /// - parameter fileIdOrUrl: Identifier of the document to convert. Callers must set exactly one of the + /// `FileIdOrUrl` variants. The referenced file must be a document in a supported format (see the route + /// description for the list); requests against unsupported formats return `unsupported_format_error`. + /// - parameter enableOcr: Enable OCR for PDF documents. Processing is slower when enabled. + /// - parameter embedImages: When true, embed images as base64 data URIs in the markdown output. This can + /// significantly increase output size. + /// + /// - returns: Through the response callback, the caller will receive a `Async.LaunchResultBase` object on success + /// or a `Void` object on failure. + @discardableResult public func getMarkdownAsync(fileIdOrUrl: Riviera.FileIdOrUrl? = nil, enableOcr: Bool = false, embedImages: Bool = false) -> RpcRequest< + Async.LaunchResultBaseSerializer, + VoidSerializer + > { + let route = Riviera.getMarkdownAsync + let serverArgs = Riviera.GetMarkdownArgs(fileIdOrUrl: fileIdOrUrl, enableOcr: enableOcr, embedImages: embedImages) + return client.request(route, serverArgs: serverArgs) + } + + /// Returns the status or result of specified get_markdown_async task. + /// + /// - scope: files.content.read + /// + /// - parameter asyncJobId: Id of the asynchronous job. This is the value of a response returned from the method + /// that launched the job. + /// + /// - returns: Through the response callback, the caller will receive a `Riviera.GetMarkdownAsyncCheckResult` object + /// on success or a `Async.PollError` object on failure. + @discardableResult public func getMarkdownAsyncCheck(asyncJobId: String) -> RpcRequest< + Riviera.GetMarkdownAsyncCheckResultSerializer, + Async.PollErrorSerializer + > { + let route = Riviera.getMarkdownAsyncCheck + let serverArgs = Async.PollArg(asyncJobId: asyncJobId) + return client.request(route, serverArgs: serverArgs) + } + + /// Asynchronous file metadata extraction for supported file formats. The kind of metadata returned depends on the + /// file type: - Image (EXIF) formats: .3fr, .arw, .avif, .bmp, .cr2, .cr3, .crw, .dcr, .dcs, .dng, .erf, .gif, + /// .heic, .j2c, .j2k, .jp2, .jpc, .jpeg, .jpf, .jpg, .jpg2, .jpm, .jpx, .kdc, .mef, .mos, .mrw, .nef, .nrw, + /// .orf, .pef, .png, .ppm, .r3d, .raf, .rw2, .rwl, .sr2, .tga, .tif, .tiff, .wbmp, .web, .webp, .x3f. - + /// Audio/video (media) formats: .aac, .aif, .aiff, .flac, .m4a, .m4r, .mp3, .oga, .ogg, .wav, .wma, .3gp, + /// .3gpp, .3gpp2, .asf, .avi, .dv, .flv, .m2t, .m2ts, .m4v, .mkv, .mov, .mp4, .mpeg, .mpg, .mts, .mxf, + /// .oggtheora, .ogv, .rm, .ts, .vob, .webm, .wmv. - PDF format: .pdf. - MS Office formats: .docx, .pptx, .xlsx. + /// Unsupported formats return an `unsupported_format_error`. + /// + /// - scope: files.content.read + /// + /// - parameter fileIdOrUrl: Identifier of the file to extract metadata from. Callers must set exactly one of the + /// `FileIdOrUrl` variants. The kind of metadata returned is determined by the file type: image files return + /// EXIF metadata, audio/video files return media metadata, PDFs return PDF metadata, and MS Office documents + /// (docx, pptx, xlsx) return Office metadata. See the route description for the supported formats. Requests + /// against unsupported formats return `unsupported_format_error`. + /// + /// - returns: Through the response callback, the caller will receive a `Async.LaunchResultBase` object on success + /// or a `Void` object on failure. + @discardableResult public func getMetadataAsync(fileIdOrUrl: Riviera.FileIdOrUrl? = nil) -> RpcRequest { + let route = Riviera.getMetadataAsync + let serverArgs = Riviera.GetMetadataArgs(fileIdOrUrl: fileIdOrUrl) + return client.request(route, serverArgs: serverArgs) + } + + /// Returns the status or result of specified get_metadata_async task. + /// + /// - scope: files.content.read + /// + /// - parameter asyncJobId: Id of the asynchronous job. This is the value of a response returned from the method + /// that launched the job. + /// + /// - returns: Through the response callback, the caller will receive a `Riviera.GetMetadataAsyncCheckResult` object + /// on success or a `Async.PollError` object on failure. + @discardableResult public func getMetadataAsyncCheck(asyncJobId: String) -> RpcRequest< + Riviera.GetMetadataAsyncCheckResultSerializer, + Async.PollErrorSerializer + > { + let route = Riviera.getMetadataAsyncCheck + let serverArgs = Async.PollArg(asyncJobId: asyncJobId) + return client.request(route, serverArgs: serverArgs) + } + + /// Asynchronous transcript generation for audio and video files. Supported audio formats: .aac, .aif, .aiff, .flac, + /// .m4a, .m4r, .mp3, .oga, .ogg, .wav, .wma. Supported video formats: .3gp, .3gpp, .3gpp2, .asf, .avi, .dv, + /// .flv, .m2t, .m2ts, .m4v, .mkv, .mov, .mp4, .mpeg, .mpg, .mts, .mxf, .oggtheora, .ogv, .rm, .ts, .vob, .webm, + /// .wmv. Unsupported formats return an `unsupported_format_error`. Size limits: the source file must be at most + /// 10 GB and its audio track at most 1 hour in duration. Files exceeding these limits are rejected. + /// + /// - scope: files.content.read + /// + /// - parameter fileIdOrUrl: Identifier of the media asset to transcribe. Callers must set exactly one of the + /// `FileIdOrUrl` variants. The referenced asset must be an audio or video file in a supported format (see the + /// route description for the list); requests against files with no audio track return a `no_audio_error`. + /// - parameter timestampLevel: Granularity of the time offsets returned for each transcript segment. Defaults to + /// `SENTENCE` when the field is omitted. - SENTENCE: one segment per spoken sentence (recommended). - WORD: one + /// segment per word, useful for fine-grained alignment such as captioning or highlight-as-you-listen + /// experiences. + /// - parameter includedSpecialWords: Comma-delimited list of non-lexical filler words to preserve in the transcript + /// output, e.g. `"uh, ah, uhm"`. By default these fillers are stripped. Unrecognized tokens are ignored. Leave + /// empty to use the default filtering behavior. + /// - parameter audioLanguage: Optional ISO 639-1 two-letter language code hinting the spoken language of the source + /// audio (e.g. "en", "ja"). When empty, the service auto-detects the language; supplying a hint improves + /// accuracy and latency for short or ambiguous clips. Unsupported languages fall back to auto-detection. + /// + /// - returns: Through the response callback, the caller will receive a `Async.LaunchResultBase` object on success + /// or a `Void` object on failure. + @discardableResult public func getTranscriptAsync( + fileIdOrUrl: Riviera.FileIdOrUrl? = nil, + timestampLevel: Riviera.TimestampLevel = .sentence, + includedSpecialWords: String = "", + audioLanguage: String = "" + ) -> RpcRequest { + let route = Riviera.getTranscriptAsync + let serverArgs = Riviera.GetTranscriptArgs( + fileIdOrUrl: fileIdOrUrl, + timestampLevel: timestampLevel, + includedSpecialWords: includedSpecialWords, + audioLanguage: audioLanguage + ) + return client.request(route, serverArgs: serverArgs) + } + + /// Returns the status or result of specified get_transcript_async task. + /// + /// - scope: files.content.read + /// + /// - parameter asyncJobId: Id of the asynchronous job. This is the value of a response returned from the method + /// that launched the job. + /// + /// - returns: Through the response callback, the caller will receive a `Riviera.GetTranscriptAsyncCheckResult` + /// object on success or a `Async.PollError` object on failure. + @discardableResult public func getTranscriptAsyncCheck(asyncJobId: String) -> RpcRequest< + Riviera.GetTranscriptAsyncCheckResultSerializer, + Async.PollErrorSerializer + > { + let route = Riviera.getTranscriptAsyncCheck + let serverArgs = Async.PollArg(asyncJobId: asyncJobId) + return client.request(route, serverArgs: serverArgs) + } +} diff --git a/Source/SwiftyDropbox/Shared/Generated/Sharing.swift b/Source/SwiftyDropbox/Shared/Generated/Sharing.swift index 352fdde7..c4bc2ff3 100644 --- a/Source/SwiftyDropbox/Shared/Generated/Sharing.swift +++ b/Source/SwiftyDropbox/Shared/Generated/Sharing.swift @@ -239,16 +239,19 @@ public class Sharing { /// Whether added members should be notified via email and device notifications of their invitation. public let quiet: Bool /// AccessLevel union object, describing what access level we want to give new members. - public let accessLevel: Sharing.AccessLevel - /// If the custom message should be added as a comment on the file. + public let accessLevel: Sharing.AccessLevel? + /// If the custom message should be added as a comment on the file. Only meant for Paper files. public let addMessageAsComment: Bool + /// Field is only returned for "internal" callers. The FingerprintJS Sealed Client Result value + public let fpSealedResult: String? public init( file: String, members: [Sharing.MemberSelector], customMessage: String? = nil, quiet: Bool = false, - accessLevel: Sharing.AccessLevel = .viewer, - addMessageAsComment: Bool = false + accessLevel: Sharing.AccessLevel? = nil, + addMessageAsComment: Bool = false, + fpSealedResult: String? = nil ) { stringValidator(minLength: 1, pattern: "((/|id:).*|nspath:[0-9]+:.*)|ns:[0-9]+(/.*)?")(file) self.file = file @@ -258,6 +261,8 @@ public class Sharing { self.quiet = quiet self.accessLevel = accessLevel self.addMessageAsComment = addMessageAsComment + nullableValidator(stringValidator())(fpSealedResult) + self.fpSealedResult = fpSealedResult } func json() throws -> JSON { @@ -281,8 +286,9 @@ public class Sharing { "members": try ArraySerializer(Sharing.MemberSelectorSerializer()).serialize(value.members), "custom_message": try NullableSerializer(Serialization._StringSerializer).serialize(value.customMessage), "quiet": try Serialization._BoolSerializer.serialize(value.quiet), - "access_level": try Sharing.AccessLevelSerializer().serialize(value.accessLevel), + "access_level": try NullableSerializer(Sharing.AccessLevelSerializer()).serialize(value.accessLevel), "add_message_as_comment": try Serialization._BoolSerializer.serialize(value.addMessageAsComment), + "fp_sealed_result": try NullableSerializer(Serialization._StringSerializer).serialize(value.fpSealedResult), ] return .dictionary(output) } @@ -294,16 +300,17 @@ public class Sharing { let members = try ArraySerializer(Sharing.MemberSelectorSerializer()).deserialize(dict["members"] ?? .null) let customMessage = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["custom_message"] ?? .null) let quiet = try Serialization._BoolSerializer.deserialize(dict["quiet"] ?? .number(0)) - let accessLevel = try Sharing.AccessLevelSerializer() - .deserialize(dict["access_level"] ?? Sharing.AccessLevelSerializer().serialize(.viewer)) + let accessLevel = try NullableSerializer(Sharing.AccessLevelSerializer()).deserialize(dict["access_level"] ?? .null) let addMessageAsComment = try Serialization._BoolSerializer.deserialize(dict["add_message_as_comment"] ?? .number(0)) + let fpSealedResult = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["fp_sealed_result"] ?? .null) return AddFileMemberArgs( file: file, members: members, customMessage: customMessage, quiet: quiet, accessLevel: accessLevel, - addMessageAsComment: addMessageAsComment + addMessageAsComment: addMessageAsComment, + fpSealedResult: fpSealedResult ) default: throw JSONSerializerError.deserializeError(type: AddFileMemberArgs.self, json: json) @@ -321,6 +328,8 @@ public class Sharing { case rateLimit /// The custom message did not pass comment permissions checks. case invalidComment + /// The current user has been banned for abuse reasons. + case bannedMember /// An unspecified error. case other @@ -357,6 +366,10 @@ public class Sharing { var d = [String: JSON]() d[".tag"] = .str("invalid_comment") return .dictionary(d) + case .bannedMember: + var d = [String: JSON]() + d[".tag"] = .str("banned_member") + return .dictionary(d) case .other: var d = [String: JSON]() d[".tag"] = .str("other") @@ -379,6 +392,8 @@ public class Sharing { return AddFileMemberError.rateLimit case "invalid_comment": return AddFileMemberError.invalidComment + case "banned_member": + return AddFileMemberError.bannedMember case "other": return AddFileMemberError.other default: @@ -400,13 +415,17 @@ public class Sharing { public let quiet: Bool /// Optional message to display to added members in their invitation. public let customMessage: String? - public init(sharedFolderId: String, members: [Sharing.AddMember], quiet: Bool = false, customMessage: String? = nil) { + /// Field is only returned for "internal" callers. The FingerprintJS Sealed Client Result value + public let fpSealedResult: String? + public init(sharedFolderId: String, members: [Sharing.AddMember], quiet: Bool = false, customMessage: String? = nil, fpSealedResult: String? = nil) { stringValidator(pattern: "[-_0-9a-zA-Z:]+")(sharedFolderId) self.sharedFolderId = sharedFolderId self.members = members self.quiet = quiet nullableValidator(stringValidator(minLength: 1))(customMessage) self.customMessage = customMessage + nullableValidator(stringValidator())(fpSealedResult) + self.fpSealedResult = fpSealedResult } func json() throws -> JSON { @@ -430,6 +449,7 @@ public class Sharing { "members": try ArraySerializer(Sharing.AddMemberSerializer()).serialize(value.members), "quiet": try Serialization._BoolSerializer.serialize(value.quiet), "custom_message": try NullableSerializer(Serialization._StringSerializer).serialize(value.customMessage), + "fp_sealed_result": try NullableSerializer(Serialization._StringSerializer).serialize(value.fpSealedResult), ] return .dictionary(output) } @@ -441,7 +461,14 @@ public class Sharing { let members = try ArraySerializer(Sharing.AddMemberSerializer()).deserialize(dict["members"] ?? .null) let quiet = try Serialization._BoolSerializer.deserialize(dict["quiet"] ?? .number(0)) let customMessage = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["custom_message"] ?? .null) - return AddFolderMemberArg(sharedFolderId: sharedFolderId, members: members, quiet: quiet, customMessage: customMessage) + let fpSealedResult = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["fp_sealed_result"] ?? .null) + return AddFolderMemberArg( + sharedFolderId: sharedFolderId, + members: members, + quiet: quiet, + customMessage: customMessage, + fpSealedResult: fpSealedResult + ) default: throw JSONSerializerError.deserializeError(type: AddFolderMemberArg.self, json: json) } @@ -476,7 +503,7 @@ public class Sharing { case teamFolder /// The current user does not have permission to perform this action. case noPermission - /// Invalid shared folder error will be returned as an access_error. + /// Field is deprecated. Invalid shared folder error will be returned as an access_error. case invalidSharedFolder /// An unspecified error. case other @@ -608,8 +635,8 @@ public class Sharing { /// The member to add to the shared folder. public let member: Sharing.MemberSelector /// The access level to grant member to the shared folder. owner in AccessLevel is disallowed. - public let accessLevel: Sharing.AccessLevel - public init(member: Sharing.MemberSelector, accessLevel: Sharing.AccessLevel = .viewer) { + public let accessLevel: Sharing.AccessLevel? + public init(member: Sharing.MemberSelector, accessLevel: Sharing.AccessLevel? = nil) { self.member = member self.accessLevel = accessLevel } @@ -632,7 +659,7 @@ public class Sharing { public func serialize(_ value: AddMember) throws -> JSON { let output = [ "member": try Sharing.MemberSelectorSerializer().serialize(value.member), - "access_level": try Sharing.AccessLevelSerializer().serialize(value.accessLevel), + "access_level": try NullableSerializer(Sharing.AccessLevelSerializer()).serialize(value.accessLevel), ] return .dictionary(output) } @@ -641,8 +668,7 @@ public class Sharing { switch json { case .dictionary(let dict): let member = try Sharing.MemberSelectorSerializer().deserialize(dict["member"] ?? .null) - let accessLevel = try Sharing.AccessLevelSerializer() - .deserialize(dict["access_level"] ?? Sharing.AccessLevelSerializer().serialize(.viewer)) + let accessLevel = try NullableSerializer(Sharing.AccessLevelSerializer()).deserialize(dict["access_level"] ?? .null) return AddMember(member: member, accessLevel: accessLevel) default: throw JSONSerializerError.deserializeError(type: AddMember.self, json: json) @@ -658,6 +684,8 @@ public class Sharing { case invalidDropboxId(String) /// The value is the e-email address that is malformed. case invalidEmail(String) + /// Provided group is invalid. + case invalidGroup /// The value is the ID of the Dropbox user with an unverified email address. Invite unverified users by email /// address instead of by their Dropbox ID. case unverifiedDropboxId(String) @@ -697,6 +725,10 @@ public class Sharing { var d = try ["invalid_email": Serialization._StringSerializer.serialize(arg)] d[".tag"] = .str("invalid_email") return .dictionary(d) + case .invalidGroup: + var d = [String: JSON]() + d[".tag"] = .str("invalid_group") + return .dictionary(d) case .unverifiedDropboxId(let arg): var d = try ["unverified_dropbox_id": Serialization._StringSerializer.serialize(arg)] d[".tag"] = .str("unverified_dropbox_id") @@ -729,6 +761,8 @@ public class Sharing { case "invalid_email": let v = try Serialization._StringSerializer.deserialize(d["invalid_email"] ?? .null) return AddMemberSelectorError.invalidEmail(v) + case "invalid_group": + return AddMemberSelectorError.invalidGroup case "unverified_dropbox_id": let v = try Serialization._StringSerializer.deserialize(d["unverified_dropbox_id"] ?? .null) return AddMemberSelectorError.unverifiedDropboxId(v) @@ -1162,6 +1196,67 @@ public class Sharing { } } + /// Enumerates acceptable values for team's ChangeLinkExpirationPolicy setting. + public enum ChangeLinkExpirationPolicy: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case allowed + /// An unspecified error. + case notAllowed + /// An unspecified error. + case other + + func json() throws -> JSON { + try ChangeLinkExpirationPolicySerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try ChangeLinkExpirationPolicySerializer().serialize(self)))" + } catch { + return "Failed to generate description for ChangeLinkExpirationPolicy: \(error)" + } + } + } + + public class ChangeLinkExpirationPolicySerializer: JSONSerializer { + public init() {} + public func serialize(_ value: ChangeLinkExpirationPolicy) throws -> JSON { + switch value { + case .allowed: + var d = [String: JSON]() + d[".tag"] = .str("allowed") + return .dictionary(d) + case .notAllowed: + var d = [String: JSON]() + d[".tag"] = .str("not_allowed") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + + public func deserialize(_ json: JSON) throws -> ChangeLinkExpirationPolicy { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "allowed": + return ChangeLinkExpirationPolicy.allowed + case "not_allowed": + return ChangeLinkExpirationPolicy.notAllowed + case "other": + return ChangeLinkExpirationPolicy.other + default: + return ChangeLinkExpirationPolicy.other + } + default: + throw JSONSerializerError.deserializeError(type: ChangeLinkExpirationPolicy.self, json: json) + } + } + } + /// Metadata for a shared link. This can be either a PathLinkMetadata or CollectionLinkMetadata. public class LinkMetadata: CustomStringConvertible, JSONRepresentable { /// URL of the shared link. @@ -1275,7 +1370,7 @@ public class Sharing { public class CreateSharedLinkArg: CustomStringConvertible, JSONRepresentable { /// The path to share. public let path: String - /// (no description) + /// Field is deprecated. None public let shortUrl: Bool /// If it's okay to share a path that does not yet exist, set this to either file in PendingUploadMode or folder /// in PendingUploadMode to indicate whether to assume it's a file or folder. @@ -1385,7 +1480,7 @@ public class Sharing { /// The requested settings for the newly created shared link. public let settings: Sharing.SharedLinkSettings? public init(path: String, settings: Sharing.SharedLinkSettings? = nil) { - stringValidator(pattern: "(/(.|[\\r\\n])*|id:.*)|(rev:[0-9a-f]{9,})|(ns:[0-9]+(/.*)?)")(path) + stringValidator(pattern: "(/(.|[\\r\\n])*|id:.*)|(rev:[0-9a-f]{9,})|(ns:[0-9]+(/(.|[\\r\\n])*)?)")(path) self.path = path self.settings = settings } @@ -1432,15 +1527,22 @@ public class Sharing { /// This user's email address is not verified. This functionality is only available on accounts with a verified /// email address. Users can verify their email address here https://www.dropbox.com/help/317. case emailNotVerified - /// The shared link already exists. You can call listSharedLinks to get the existing link, or use the provided - /// metadata if it is returned. + /// The shared link already exists. You can call listSharedLinks to get the existing link, or use the provided + /// metadata if it is returned. Existing link metadata will not be returned if custom settings were + /// specified in the request that could make the existing link incompatible with the requested settings. case sharedLinkAlreadyExists(Sharing.SharedLinkAlreadyExistsMetadata?) /// There is an error with the given settings. case settingsError(Sharing.SharedLinkSettingsError) - /// The user is not allowed to create a shared link to the specified file. For example, this can occur if the - /// file is restricted or if the user's links are banned + /// The user is not allowed to create a shared link to the specified file. For example, this can occur if the + /// file is restricted or if the user's links are banned /// https://help.dropbox.com/files-folders/share/banned-links. case accessDenied + /// The current user has been banned https://help.dropbox.com/files-folders/share/banned-links for abuse + /// reasons. + case bannedMember + /// Your Dropbox folder will have too many shared folders after the operation. + /// https://help.dropbox.com/share/shared-folder-faq#Is-there-a-limit-to-the-number-of-shared-folders-I-can-create + case tooManySharedFolders func json() throws -> JSON { try CreateSharedLinkWithSettingsErrorSerializer().serialize(self) @@ -1479,6 +1581,14 @@ public class Sharing { var d = [String: JSON]() d[".tag"] = .str("access_denied") return .dictionary(d) + case .bannedMember: + var d = [String: JSON]() + d[".tag"] = .str("banned_member") + return .dictionary(d) + case .tooManySharedFolders: + var d = [String: JSON]() + d[".tag"] = .str("too_many_shared_folders") + return .dictionary(d) } } @@ -1493,14 +1603,17 @@ public class Sharing { case "email_not_verified": return CreateSharedLinkWithSettingsError.emailNotVerified case "shared_link_already_exists": - let v = try NullableSerializer(Sharing.SharedLinkAlreadyExistsMetadataSerializer()) - .deserialize(d["shared_link_already_exists"] ?? .null) + let v = try NullableSerializer(Sharing.SharedLinkAlreadyExistsMetadataSerializer()).deserialize(d["shared_link_already_exists"] ?? .null) return CreateSharedLinkWithSettingsError.sharedLinkAlreadyExists(v) case "settings_error": let v = try Sharing.SharedLinkSettingsErrorSerializer().deserialize(d["settings_error"] ?? .null) return CreateSharedLinkWithSettingsError.settingsError(v) case "access_denied": return CreateSharedLinkWithSettingsError.accessDenied + case "banned_member": + return CreateSharedLinkWithSettingsError.bannedMember + case "too_many_shared_folders": + return CreateSharedLinkWithSettingsError.tooManySharedFolders default: throw JSONSerializerError.unknownTag(type: CreateSharedLinkWithSettingsError.self, json: json, tag: tag) } @@ -1522,7 +1635,7 @@ public class Sharing { public let audienceRestrictingSharedFolder: Sharing.AudienceRestrictingSharedFolder? /// The current audience of the link. public let currentAudience: Sharing.LinkAudience - /// Whether the link has an expiry set on it. A link with an expiry will have its audience changed to members + /// Whether the link has an expiry set on it. A link with an expiry will have its audience changed to members /// when the expiry is reached. public let expiry: Date? /// A list of permissions for actions you can perform on the link. @@ -1569,8 +1682,9 @@ public class Sharing { "link_permissions": try ArraySerializer(Sharing.LinkPermissionSerializer()).serialize(value.linkPermissions), "password_protected": try Serialization._BoolSerializer.serialize(value.passwordProtected), "access_level": try NullableSerializer(Sharing.AccessLevelSerializer()).serialize(value.accessLevel), - "audience_restricting_shared_folder": try NullableSerializer(Sharing.AudienceRestrictingSharedFolderSerializer()) - .serialize(value.audienceRestrictingSharedFolder), + "audience_restricting_shared_folder": try NullableSerializer(Sharing.AudienceRestrictingSharedFolderSerializer()).serialize( + value.audienceRestrictingSharedFolder + ), "expiry": try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).serialize(value.expiry), ] return .dictionary(output) @@ -1584,8 +1698,9 @@ public class Sharing { let linkPermissions = try ArraySerializer(Sharing.LinkPermissionSerializer()).deserialize(dict["link_permissions"] ?? .null) let passwordProtected = try Serialization._BoolSerializer.deserialize(dict["password_protected"] ?? .null) let accessLevel = try NullableSerializer(Sharing.AccessLevelSerializer()).deserialize(dict["access_level"] ?? .null) - let audienceRestrictingSharedFolder = try NullableSerializer(Sharing.AudienceRestrictingSharedFolderSerializer()) - .deserialize(dict["audience_restricting_shared_folder"] ?? .null) + let audienceRestrictingSharedFolder = try NullableSerializer(Sharing.AudienceRestrictingSharedFolderSerializer()).deserialize( + dict["audience_restricting_shared_folder"] ?? .null + ) let expiry = try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).deserialize(dict["expiry"] ?? .null) return SharedContentLinkMetadataBase( audienceOptions: audienceOptions, @@ -1623,8 +1738,9 @@ public class Sharing { "link_permissions": try ArraySerializer(Sharing.LinkPermissionSerializer()).serialize(value.linkPermissions), "password_protected": try Serialization._BoolSerializer.serialize(value.passwordProtected), "access_level": try NullableSerializer(Sharing.AccessLevelSerializer()).serialize(value.accessLevel), - "audience_restricting_shared_folder": try NullableSerializer(Sharing.AudienceRestrictingSharedFolderSerializer()) - .serialize(value.audienceRestrictingSharedFolder), + "audience_restricting_shared_folder": try NullableSerializer(Sharing.AudienceRestrictingSharedFolderSerializer()).serialize( + value.audienceRestrictingSharedFolder + ), "expiry": try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).serialize(value.expiry), ] return .dictionary(output) @@ -1638,8 +1754,9 @@ public class Sharing { let linkPermissions = try ArraySerializer(Sharing.LinkPermissionSerializer()).deserialize(dict["link_permissions"] ?? .null) let passwordProtected = try Serialization._BoolSerializer.deserialize(dict["password_protected"] ?? .null) let accessLevel = try NullableSerializer(Sharing.AccessLevelSerializer()).deserialize(dict["access_level"] ?? .null) - let audienceRestrictingSharedFolder = try NullableSerializer(Sharing.AudienceRestrictingSharedFolderSerializer()) - .deserialize(dict["audience_restricting_shared_folder"] ?? .null) + let audienceRestrictingSharedFolder = try NullableSerializer(Sharing.AudienceRestrictingSharedFolderSerializer()).deserialize( + dict["audience_restricting_shared_folder"] ?? .null + ) let expiry = try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).deserialize(dict["expiry"] ?? .null) return ExpectedSharedContentLinkMetadata( audienceOptions: audienceOptions, @@ -1674,9 +1791,9 @@ public class Sharing { case unshare /// Relinquish one's own membership to the file. case relinquishMembership - /// Use create_view_link and create_edit_link instead. + /// Field is deprecated. Use create_view_link and create_edit_link instead. case shareLink - /// Use create_view_link and create_edit_link instead. + /// Field is deprecated. Use create_view_link and create_edit_link instead. case createLink /// Create a shared link to a file that only allows users to view the content. case createViewLink @@ -1880,12 +1997,13 @@ public class Sharing { /// Expiration time, if set. By default the link won't expire. public let expires: Date? /// The lowercased full path in the user's Dropbox. This always starts with a slash. This field will only be - /// present only if the linked file is in the authenticated user's dropbox. + /// present only if the linked file is in the authenticated user's dropbox and the user is the owner of + /// the link. public let pathLower: String? /// The link's access permissions. public let linkPermissions: Sharing.LinkPermissions - /// The team membership information of the link's owner. This field will only be present if the link's owner - /// is a team member. + /// The team membership information of the link's owner. This field will only be present if the link's owner is + /// a team member. public let teamMemberInfo: Sharing.TeamMemberInfo? /// The team information of the content's owner. This field will only be present if the content's owner is a /// team member and the content's owner team is different from the link's owner team. @@ -2296,8 +2414,9 @@ public class Sharing { let member = try Sharing.MemberSelectorSerializer().deserialize(dict["member"] ?? .null) let result = try Sharing.FileMemberActionIndividualResultSerializer().deserialize(dict["result"] ?? .null) let sckeySha1 = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["sckey_sha1"] ?? .null) - let invitationSignature = try NullableSerializer(ArraySerializer(Serialization._StringSerializer)) - .deserialize(dict["invitation_signature"] ?? .null) + let invitationSignature = try NullableSerializer(ArraySerializer(Serialization._StringSerializer)).deserialize( + dict["invitation_signature"] ?? .null + ) return FileMemberActionResult(member: member, result: result, sckeySha1: sckeySha1, invitationSignature: invitationSignature) default: throw JSONSerializerError.deserializeError(type: FileMemberActionResult.self, json: json) @@ -2443,10 +2562,14 @@ public class Sharing { case unshare /// Keep a copy of the contents upon leaving or being kicked from the folder. case leaveACopy - /// Use create_link instead. + /// Field is deprecated. Use create_view_link and create_edit_link instead. case shareLink - /// Create a shared link for folder. + /// Field is deprecated. Use create_view_link and create_edit_link instead. case createLink + /// Create a shared link that only allows users to view the content. + case createViewLink + /// Create a shared link that allows users to edit the content. + case createEditLink /// Set whether the folder inherits permissions from its parent. case setAccessInheritance /// An unspecified error. @@ -2521,6 +2644,14 @@ public class Sharing { var d = [String: JSON]() d[".tag"] = .str("create_link") return .dictionary(d) + case .createViewLink: + var d = [String: JSON]() + d[".tag"] = .str("create_view_link") + return .dictionary(d) + case .createEditLink: + var d = [String: JSON]() + d[".tag"] = .str("create_edit_link") + return .dictionary(d) case .setAccessInheritance: var d = [String: JSON]() d[".tag"] = .str("set_access_inheritance") @@ -2563,6 +2694,10 @@ public class Sharing { return FolderAction.shareLink case "create_link": return FolderAction.createLink + case "create_view_link": + return FolderAction.createViewLink + case "create_edit_link": + return FolderAction.createEditLink case "set_access_inheritance": return FolderAction.setAccessInheritance case "other": @@ -2763,8 +2898,8 @@ public class Sharing { public class GetFileMetadataArg: CustomStringConvertible, JSONRepresentable { /// The file to query. public let file: String - /// A list of `FileAction`s corresponding to `FilePermission`s that should appear in the response's permissions - /// in SharedFileMetadata field describing the actions the authenticated user can perform on the file. + /// A list of `FileAction`s corresponding to `FilePermission`s that should appear in the response's permissions + /// in SharedFileMetadata field describing the actions the authenticated user can perform on the file. public let actions: [Sharing.FileAction]? public init(file: String, actions: [Sharing.FileAction]? = nil) { stringValidator(minLength: 1, pattern: "((/|id:).*|nspath:[0-9]+:.*)|ns:[0-9]+(/.*)?")(file) @@ -2811,8 +2946,8 @@ public class Sharing { public class GetFileMetadataBatchArg: CustomStringConvertible, JSONRepresentable { /// The files to query. public let files: [String] - /// A list of `FileAction`s corresponding to `FilePermission`s that should appear in the response's permissions - /// in SharedFileMetadata field describing the actions the authenticated user can perform on the file. + /// A list of `FileAction`s corresponding to `FilePermission`s that should appear in the response's permissions + /// in SharedFileMetadata field describing the actions the authenticated user can perform on the file. public let actions: [Sharing.FileAction]? public init(files: [String], actions: [Sharing.FileAction]? = nil) { arrayValidator(maxItems: 100, itemValidator: stringValidator(minLength: 1, pattern: "((/|id:).*|nspath:[0-9]+:.*)|ns:[0-9]+(/.*)?"))(files) @@ -3032,8 +3167,8 @@ public class Sharing { public class GetMetadataArgs: CustomStringConvertible, JSONRepresentable { /// The ID for the shared folder. public let sharedFolderId: String - /// A list of `FolderAction`s corresponding to `FolderPermission`s that should appear in the response's - /// permissions in SharedFolderMetadata field describing the actions the authenticated user can perform + /// A list of `FolderAction`s corresponding to `FolderPermission`s that should appear in the response's + /// permissions in SharedFolderMetadata field describing the actions the authenticated user can perform /// on the folder. public let actions: [Sharing.FolderAction]? public init(sharedFolderId: String, actions: [Sharing.FolderAction]? = nil) { @@ -3085,6 +3220,8 @@ public class Sharing { case sharedLinkAccessDenied /// This type of link is not supported; use files instead. case unsupportedLinkType + /// Private shared links do not support `path` or `link_password` parameter fields. + case unsupportedParameterField /// An unspecified error. case other @@ -3117,6 +3254,10 @@ public class Sharing { var d = [String: JSON]() d[".tag"] = .str("unsupported_link_type") return .dictionary(d) + case .unsupportedParameterField: + var d = [String: JSON]() + d[".tag"] = .str("unsupported_parameter_field") + return .dictionary(d) case .other: var d = [String: JSON]() d[".tag"] = .str("other") @@ -3135,6 +3276,8 @@ public class Sharing { return SharedLinkError.sharedLinkAccessDenied case "unsupported_link_type": return SharedLinkError.unsupportedLinkType + case "unsupported_parameter_field": + return SharedLinkError.unsupportedParameterField case "other": return SharedLinkError.other default: @@ -3154,6 +3297,8 @@ public class Sharing { case sharedLinkAccessDenied /// This type of link is not supported; use files instead. case unsupportedLinkType + /// Private shared links do not support `path` or `link_password` parameter fields. + case unsupportedParameterField /// An unspecified error. case other /// Directories cannot be retrieved by this endpoint. @@ -3188,6 +3333,10 @@ public class Sharing { var d = [String: JSON]() d[".tag"] = .str("unsupported_link_type") return .dictionary(d) + case .unsupportedParameterField: + var d = [String: JSON]() + d[".tag"] = .str("unsupported_parameter_field") + return .dictionary(d) case .other: var d = [String: JSON]() d[".tag"] = .str("other") @@ -3210,6 +3359,8 @@ public class Sharing { return GetSharedLinkFileError.sharedLinkAccessDenied case "unsupported_link_type": return GetSharedLinkFileError.unsupportedLinkType + case "unsupported_parameter_field": + return GetSharedLinkFileError.unsupportedParameterField case "other": return GetSharedLinkFileError.other case "shared_link_is_directory": @@ -3415,10 +3566,10 @@ public class Sharing { } } - /// The information about a group. Groups is a way to manage a list of users who need same access permission to the + /// The information about a group. Groups is a way to manage a list of users who need same access permission to the /// shared folder. public class GroupInfo: TeamCommon.GroupSummary { - /// The type of group. + /// Field is deprecated. The type of group. public let groupType: TeamCommon.GroupType /// If the current user is a member of the group. public let isMember: Bool @@ -3513,9 +3664,9 @@ public class Sharing { /// The permissions that requesting user has on this member. The set of permissions corresponds to the /// MemberActions in the request. public let permissions: [Sharing.MemberPermission]? - /// Never set. + /// Field is deprecated. Never set. public let initials: String? - /// True if the member has access from a parent folder. + /// True if the member has access on a parent folder. public let isInherited: Bool public init(accessType: Sharing.AccessLevel, permissions: [Sharing.MemberPermission]? = nil, initials: String? = nil, isInherited: Bool = false) { self.accessType = accessType @@ -4136,10 +4287,10 @@ public class Sharing { /// additional rights to the user. Members of the content who use this link can only access the content /// with their pre-existing access rights. case noOne - /// Use `require_password` instead. A link-specific password is required to access the link. Login is not - /// required. + /// Field is deprecated. Use `require_password` instead. A link-specific password is required to access the + /// link. Login is not required. case password - /// Link is accessible only by members of the content. + /// Field is deprecated. Link is accessible only by members of the content. case members /// An unspecified error. case other @@ -4446,8 +4597,7 @@ public class Sharing { case .dictionary(let dict): let audience = try Sharing.LinkAudienceSerializer().deserialize(dict["audience"] ?? .null) let allowed = try Serialization._BoolSerializer.deserialize(dict["allowed"] ?? .null) - let disallowedReason = try NullableSerializer(Sharing.LinkAudienceDisallowedReasonSerializer()) - .deserialize(dict["disallowed_reason"] ?? .null) + let disallowedReason = try NullableSerializer(Sharing.LinkAudienceDisallowedReasonSerializer()).deserialize(dict["disallowed_reason"] ?? .null) return LinkAudienceOption(audience: audience, allowed: allowed, disallowedReason: disallowedReason) default: throw JSONSerializerError.deserializeError(type: LinkAudienceOption.self, json: json) @@ -4670,9 +4820,10 @@ public class Sharing { /// Whether the user can disallow downloads via the link. This refers to the ability to impose a no-download /// restriction on the link. public let canDisallowDownload: Bool - /// Whether comments are enabled for the linked file. This takes the team commenting policy into account. + /// Field is deprecated. Whether comments are enabled for the linked file. This takes the team commenting policy + /// into account. public let allowComments: Bool - /// Whether the team has disabled commenting globally. + /// Field is deprecated. Whether the team has disabled commenting globally. public let teamRestrictsComments: Bool /// A list of link audience options the user might be able to set as the new audience. public let audienceOptions: [Sharing.LinkAudienceOption]? @@ -4684,6 +4835,21 @@ public class Sharing { public let requirePassword: Bool? /// Whether the user can use extended sharing controls, based on their account type. public let canUseExtendedSharingControls: Bool? + /// Whether a user can save the content to their Dropbox account. + public let canSync: Bool? + /// Whether the user can request access to the content. + public let canRequestAccess: Bool? + /// Whether the updated externally available shared link must have password set. Not provided if the link is not + /// team owned. + public let enforceSharedLinkPasswordPolicy: TeamPolicies.EnforceLinkPasswordPolicy? + /// Existing owning team's policy for default number of days from today to link's expiration. Not provided if + /// the link is not team owned. + public let daysToExpirePolicy: TeamPolicies.DefaultLinkExpirationDaysPolicy? + /// When owning team's policy changeSharedLinkExpirationPolicy is notAllowed in ChangeLinkExpirationPolicy, the + /// updated externally available shared link expiration value cannot be less strict than + /// daysToExpirePolicy. In this case daysToExpirePolicy is expected to be different from `none`. Not + /// provided if the link is not team owned. + public let changeSharedLinkExpirationPolicy: Sharing.ChangeLinkExpirationPolicy? public init( canRevoke: Bool, visibilityPolicies: [Sharing.VisibilityPolicy], @@ -4703,7 +4869,12 @@ public class Sharing { canSetPassword: Bool? = nil, canRemovePassword: Bool? = nil, requirePassword: Bool? = nil, - canUseExtendedSharingControls: Bool? = nil + canUseExtendedSharingControls: Bool? = nil, + canSync: Bool? = nil, + canRequestAccess: Bool? = nil, + enforceSharedLinkPasswordPolicy: TeamPolicies.EnforceLinkPasswordPolicy? = nil, + daysToExpirePolicy: TeamPolicies.DefaultLinkExpirationDaysPolicy? = nil, + changeSharedLinkExpirationPolicy: Sharing.ChangeLinkExpirationPolicy? = nil ) { self.resolvedVisibility = resolvedVisibility self.requestedVisibility = requestedVisibility @@ -4724,6 +4895,11 @@ public class Sharing { self.canRemovePassword = canRemovePassword self.requirePassword = requirePassword self.canUseExtendedSharingControls = canUseExtendedSharingControls + self.canSync = canSync + self.canRequestAccess = canRequestAccess + self.enforceSharedLinkPasswordPolicy = enforceSharedLinkPasswordPolicy + self.daysToExpirePolicy = daysToExpirePolicy + self.changeSharedLinkExpirationPolicy = changeSharedLinkExpirationPolicy } func json() throws -> JSON { @@ -4762,6 +4938,15 @@ public class Sharing { "can_remove_password": try NullableSerializer(Serialization._BoolSerializer).serialize(value.canRemovePassword), "require_password": try NullableSerializer(Serialization._BoolSerializer).serialize(value.requirePassword), "can_use_extended_sharing_controls": try NullableSerializer(Serialization._BoolSerializer).serialize(value.canUseExtendedSharingControls), + "can_sync": try NullableSerializer(Serialization._BoolSerializer).serialize(value.canSync), + "can_request_access": try NullableSerializer(Serialization._BoolSerializer).serialize(value.canRequestAccess), + "enforce_shared_link_password_policy": try NullableSerializer(TeamPolicies.EnforceLinkPasswordPolicySerializer()).serialize( + value.enforceSharedLinkPasswordPolicy + ), + "days_to_expire_policy": try NullableSerializer(TeamPolicies.DefaultLinkExpirationDaysPolicySerializer()).serialize(value.daysToExpirePolicy), + "change_shared_link_expiration_policy": try NullableSerializer(Sharing.ChangeLinkExpirationPolicySerializer()).serialize( + value.changeSharedLinkExpirationPolicy + ), ] return .dictionary(output) } @@ -4780,17 +4965,31 @@ public class Sharing { let teamRestrictsComments = try Serialization._BoolSerializer.deserialize(dict["team_restricts_comments"] ?? .null) let resolvedVisibility = try NullableSerializer(Sharing.ResolvedVisibilitySerializer()).deserialize(dict["resolved_visibility"] ?? .null) let requestedVisibility = try NullableSerializer(Sharing.RequestedVisibilitySerializer()).deserialize(dict["requested_visibility"] ?? .null) - let revokeFailureReason = try NullableSerializer(Sharing.SharedLinkAccessFailureReasonSerializer()) - .deserialize(dict["revoke_failure_reason"] ?? .null) + let revokeFailureReason = try NullableSerializer(Sharing.SharedLinkAccessFailureReasonSerializer()).deserialize( + dict["revoke_failure_reason"] ?? .null + ) let effectiveAudience = try NullableSerializer(Sharing.LinkAudienceSerializer()).deserialize(dict["effective_audience"] ?? .null) let linkAccessLevel = try NullableSerializer(Sharing.LinkAccessLevelSerializer()).deserialize(dict["link_access_level"] ?? .null) - let audienceOptions = try NullableSerializer(ArraySerializer(Sharing.LinkAudienceOptionSerializer())) - .deserialize(dict["audience_options"] ?? .null) + let audienceOptions = try NullableSerializer(ArraySerializer(Sharing.LinkAudienceOptionSerializer())).deserialize( + dict["audience_options"] ?? .null + ) let canSetPassword = try NullableSerializer(Serialization._BoolSerializer).deserialize(dict["can_set_password"] ?? .null) let canRemovePassword = try NullableSerializer(Serialization._BoolSerializer).deserialize(dict["can_remove_password"] ?? .null) let requirePassword = try NullableSerializer(Serialization._BoolSerializer).deserialize(dict["require_password"] ?? .null) - let canUseExtendedSharingControls = try NullableSerializer(Serialization._BoolSerializer) - .deserialize(dict["can_use_extended_sharing_controls"] ?? .null) + let canUseExtendedSharingControls = try NullableSerializer(Serialization._BoolSerializer).deserialize( + dict["can_use_extended_sharing_controls"] ?? .null + ) + let canSync = try NullableSerializer(Serialization._BoolSerializer).deserialize(dict["can_sync"] ?? .null) + let canRequestAccess = try NullableSerializer(Serialization._BoolSerializer).deserialize(dict["can_request_access"] ?? .null) + let enforceSharedLinkPasswordPolicy = try NullableSerializer(TeamPolicies.EnforceLinkPasswordPolicySerializer()).deserialize( + dict["enforce_shared_link_password_policy"] ?? .null + ) + let daysToExpirePolicy = try NullableSerializer(TeamPolicies.DefaultLinkExpirationDaysPolicySerializer()).deserialize( + dict["days_to_expire_policy"] ?? .null + ) + let changeSharedLinkExpirationPolicy = try NullableSerializer(Sharing.ChangeLinkExpirationPolicySerializer()).deserialize( + dict["change_shared_link_expiration_policy"] ?? .null + ) return LinkPermissions( canRevoke: canRevoke, visibilityPolicies: visibilityPolicies, @@ -4810,7 +5009,12 @@ public class Sharing { canSetPassword: canSetPassword, canRemovePassword: canRemovePassword, requirePassword: requirePassword, - canUseExtendedSharingControls: canUseExtendedSharingControls + canUseExtendedSharingControls: canUseExtendedSharingControls, + canSync: canSync, + canRequestAccess: canRequestAccess, + enforceSharedLinkPasswordPolicy: enforceSharedLinkPasswordPolicy, + daysToExpirePolicy: daysToExpirePolicy, + changeSharedLinkExpirationPolicy: changeSharedLinkExpirationPolicy ) default: throw JSONSerializerError.deserializeError(type: LinkPermissions.self, json: json) @@ -4941,12 +5145,12 @@ public class Sharing { public class ListFileMembersBatchArg: CustomStringConvertible, JSONRepresentable { /// Files for which to return members. public let files: [String] - /// Number of members to return max per query. Defaults to 10 if no limit is specified. + /// Number of members to return max per query. Defaults to 1000 if no limit is specified. public let limit: UInt32 - public init(files: [String], limit: UInt32 = 10) { + public init(files: [String], limit: UInt32 = 1_000) { arrayValidator(maxItems: 100, itemValidator: stringValidator(minLength: 1, pattern: "((/|id:).*|nspath:[0-9]+:.*)|ns:[0-9]+(/.*)?"))(files) self.files = files - comparableValidator(maxValue: 20)(limit) + comparableValidator(maxValue: 3_000)(limit) self.limit = limit } @@ -4977,7 +5181,7 @@ public class Sharing { switch json { case .dictionary(let dict): let files = try ArraySerializer(Serialization._StringSerializer).deserialize(dict["files"] ?? .null) - let limit = try Serialization._UInt32Serializer.deserialize(dict["limit"] ?? .number(10)) + let limit = try Serialization._UInt32Serializer.deserialize(dict["limit"] ?? .number(1_000)) return ListFileMembersBatchArg(files: files, limit: limit) default: throw JSONSerializerError.deserializeError(type: ListFileMembersBatchArg.self, json: json) @@ -5322,8 +5526,8 @@ public class Sharing { public class ListFilesArg: CustomStringConvertible, JSONRepresentable { /// Number of files to return max per query. Defaults to 100 if no limit is specified. public let limit: UInt32 - /// A list of `FileAction`s corresponding to `FilePermission`s that should appear in the response's permissions - /// in SharedFileMetadata field describing the actions the authenticated user can perform on the file. + /// A list of `FileAction`s corresponding to `FilePermission`s that should appear in the response's permissions + /// in SharedFileMetadata field describing the actions the authenticated user can perform on the file. public let actions: [Sharing.FileAction]? public init(limit: UInt32 = 100, actions: [Sharing.FileAction]? = nil) { comparableValidator(minValue: 1, maxValue: 300)(limit) @@ -5567,11 +5771,17 @@ public class Sharing { /// The ListFolderMembersArgs struct public class ListFolderMembersArgs: Sharing.ListFolderMembersCursorArg { - /// The ID for the shared folder. + /// The ID for the shared folder. When path is provided, the folder ID will be extracted from the path instead. public let sharedFolderId: String - public init(sharedFolderId: String, actions: [Sharing.MemberAction]? = nil, limit: UInt32 = 1_000) { + /// Optional path to get inherited members. When omitted, uses shared_folder_id to return direct members. When + /// provided, extracts folder ID from this path and returns users who have access through parent shared + /// folder. + public let path: String? + public init(sharedFolderId: String, actions: [Sharing.MemberAction]? = nil, limit: UInt32 = 1_000, path: String? = nil) { stringValidator(pattern: "[-_0-9a-zA-Z:]+")(sharedFolderId) self.sharedFolderId = sharedFolderId + nullableValidator(stringValidator())(path) + self.path = path super.init(actions: actions, limit: limit) } @@ -5591,6 +5801,7 @@ public class Sharing { "shared_folder_id": try Serialization._StringSerializer.serialize(value.sharedFolderId), "actions": try NullableSerializer(ArraySerializer(Sharing.MemberActionSerializer())).serialize(value.actions), "limit": try Serialization._UInt32Serializer.serialize(value.limit), + "path": try NullableSerializer(Serialization._StringSerializer).serialize(value.path), ] return .dictionary(output) } @@ -5601,7 +5812,8 @@ public class Sharing { let sharedFolderId = try Serialization._StringSerializer.deserialize(dict["shared_folder_id"] ?? .null) let actions = try NullableSerializer(ArraySerializer(Sharing.MemberActionSerializer())).deserialize(dict["actions"] ?? .null) let limit = try Serialization._UInt32Serializer.deserialize(dict["limit"] ?? .number(1_000)) - return ListFolderMembersArgs(sharedFolderId: sharedFolderId, actions: actions, limit: limit) + let path = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["path"] ?? .null) + return ListFolderMembersArgs(sharedFolderId: sharedFolderId, actions: actions, limit: limit, path: path) default: throw JSONSerializerError.deserializeError(type: ListFolderMembersArgs.self, json: json) } @@ -5716,8 +5928,8 @@ public class Sharing { public class ListFoldersArgs: CustomStringConvertible, JSONRepresentable { /// The maximum number of results to return per request. public let limit: UInt32 - /// A list of `FolderAction`s corresponding to `FolderPermission`s that should appear in the response's - /// permissions in SharedFolderMetadata field describing the actions the authenticated user can perform + /// A list of `FolderAction`s corresponding to `FolderPermission`s that should appear in the response's + /// permissions in SharedFolderMetadata field describing the actions the authenticated user can perform /// on the folder. public let actions: [Sharing.FolderAction]? public init(limit: UInt32 = 1_000, actions: [Sharing.FolderAction]? = nil) { @@ -5915,7 +6127,7 @@ public class Sharing { /// See listSharedLinks description. public let directOnly: Bool? public init(path: String? = nil, cursor: String? = nil, directOnly: Bool? = nil) { - nullableValidator(stringValidator(pattern: "(/(.|[\\r\\n])*|id:.*)|(rev:[0-9a-f]{9,})|(ns:[0-9]+(/.*)?)"))(path) + nullableValidator(stringValidator(pattern: "(/(.|[\\r\\n])*|id:.*)|(rev:[0-9a-f]{9,})|(ns:[0-9]+(/(.|[\\r\\n])*)?)"))(path) self.path = path nullableValidator(stringValidator())(cursor) self.cursor = cursor @@ -6120,8 +6332,9 @@ public class Sharing { case .dictionary(let dict): let accessLevel = try NullableSerializer(Sharing.AccessLevelSerializer()).deserialize(dict["access_level"] ?? .null) let warning = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["warning"] ?? .null) - let accessDetails = try NullableSerializer(ArraySerializer(Sharing.ParentFolderAccessInfoSerializer())) - .deserialize(dict["access_details"] ?? .null) + let accessDetails = try NullableSerializer(ArraySerializer(Sharing.ParentFolderAccessInfoSerializer())).deserialize( + dict["access_details"] ?? .null + ) return MemberAccessLevelResult(accessLevel: accessLevel, warning: warning, accessDetails: accessDetails) default: throw JSONSerializerError.deserializeError(type: MemberAccessLevelResult.self, json: json) @@ -6279,6 +6492,8 @@ public class Sharing { case team /// Anyone can become a member. case anyone + /// Only a teammate and approved people can become a member. + case teamAndApproved /// An unspecified error. case other @@ -6307,6 +6522,10 @@ public class Sharing { var d = [String: JSON]() d[".tag"] = .str("anyone") return .dictionary(d) + case .teamAndApproved: + var d = [String: JSON]() + d[".tag"] = .str("team_and_approved") + return .dictionary(d) case .other: var d = [String: JSON]() d[".tag"] = .str("other") @@ -6323,6 +6542,8 @@ public class Sharing { return MemberPolicy.team case "anyone": return MemberPolicy.anyone + case "team_and_approved": + return MemberPolicy.teamAndApproved case "other": return MemberPolicy.other default: @@ -6457,6 +6678,8 @@ public class Sharing { case sharedLinkAccessDenied /// This type of link is not supported; use files instead. case unsupportedLinkType + /// Private shared links do not support `path` or `link_password` parameter fields. + case unsupportedParameterField /// An unspecified error. case other /// There is an error with the given settings. @@ -6494,6 +6717,10 @@ public class Sharing { var d = [String: JSON]() d[".tag"] = .str("unsupported_link_type") return .dictionary(d) + case .unsupportedParameterField: + var d = [String: JSON]() + d[".tag"] = .str("unsupported_parameter_field") + return .dictionary(d) case .other: var d = [String: JSON]() d[".tag"] = .str("other") @@ -6520,6 +6747,8 @@ public class Sharing { return ModifySharedLinkSettingsError.sharedLinkAccessDenied case "unsupported_link_type": return ModifySharedLinkSettingsError.unsupportedLinkType + case "unsupported_parameter_field": + return ModifySharedLinkSettingsError.unsupportedParameterField case "other": return ModifySharedLinkSettingsError.other case "settings_error": @@ -6593,6 +6822,9 @@ public class Sharing { /// The shared folder is not mountable. One example where this can occur is when the shared folder belongs /// within a team folder in the user's Dropbox. case notMountable + /// The shared folder is not mountable by directly call APIs, instead the automounter is responsible for + /// mounting it. + case mustAutomount /// An unspecified error. case other @@ -6637,6 +6869,10 @@ public class Sharing { var d = [String: JSON]() d[".tag"] = .str("not_mountable") return .dictionary(d) + case .mustAutomount: + var d = [String: JSON]() + d[".tag"] = .str("must_automount") + return .dictionary(d) case .other: var d = [String: JSON]() d[".tag"] = .str("other") @@ -6663,6 +6899,8 @@ public class Sharing { return MountFolderError.noPermission case "not_mountable": return MountFolderError.notMountable + case "must_automount": + return MountFolderError.mustAutomount case "other": return MountFolderError.other default: @@ -6997,6 +7235,177 @@ public class Sharing { } } + /// Removes all self-removable access from a file or folder. For folders: always relinquishes without keeping a + /// local copy (leave_a_copy=false behavior). If you need control over keeping folder contents, use the + /// relinquish_folder_membership endpoint instead. + public class RelinquishAccessArg: CustomStringConvertible, JSONRepresentable { + /// The id for the file or folder. + public let fileId: String + public init(fileId: String) { + stringValidator()(fileId) + self.fileId = fileId + } + + func json() throws -> JSON { + try RelinquishAccessArgSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try RelinquishAccessArgSerializer().serialize(self)))" + } catch { + return "Failed to generate description for RelinquishAccessArg: \(error)" + } + } + } + + public class RelinquishAccessArgSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: RelinquishAccessArg) throws -> JSON { + let output = [ + "file_id": try Serialization._StringSerializer.serialize(value.fileId), + ] + return .dictionary(output) + } + + public func deserialize(_ json: JSON) throws -> RelinquishAccessArg { + switch json { + case .dictionary(let dict): + let fileId = try Serialization._StringSerializer.deserialize(dict["file_id"] ?? .null) + return RelinquishAccessArg(fileId: fileId) + default: + throw JSONSerializerError.deserializeError(type: RelinquishAccessArg.self, json: json) + } + } + } + + /// Error result for the relinquish_access endpoint. + public enum RelinquishAccessError: CustomStringConvertible, JSONRepresentable { + /// File or folder not found or has been deleted. + case invalidFileId + /// Caller's email address is not verified. + case emailUnverified + /// User is the owner of the file/folder. + case owner + /// User has only non-removable access — inherited from a parent folder or via group membership. Either way, + /// relinquish_access cannot remove the caller's access from this surface; the caller must take action + /// on the source of the access (e.g. leave the parent shared folder, or be removed from the group). + case noExplicitAccess + /// Team folder restrictions apply. + case teamFolder + /// Caller does not have permission to perform this action. Generic fallback. + case noPermission + /// An unspecified error. + case other + + func json() throws -> JSON { + try RelinquishAccessErrorSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try RelinquishAccessErrorSerializer().serialize(self)))" + } catch { + return "Failed to generate description for RelinquishAccessError: \(error)" + } + } + } + + public class RelinquishAccessErrorSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: RelinquishAccessError) throws -> JSON { + switch value { + case .invalidFileId: + var d = [String: JSON]() + d[".tag"] = .str("invalid_file_id") + return .dictionary(d) + case .emailUnverified: + var d = [String: JSON]() + d[".tag"] = .str("email_unverified") + return .dictionary(d) + case .owner: + var d = [String: JSON]() + d[".tag"] = .str("owner") + return .dictionary(d) + case .noExplicitAccess: + var d = [String: JSON]() + d[".tag"] = .str("no_explicit_access") + return .dictionary(d) + case .teamFolder: + var d = [String: JSON]() + d[".tag"] = .str("team_folder") + return .dictionary(d) + case .noPermission: + var d = [String: JSON]() + d[".tag"] = .str("no_permission") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + + public func deserialize(_ json: JSON) throws -> RelinquishAccessError { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "invalid_file_id": + return RelinquishAccessError.invalidFileId + case "email_unverified": + return RelinquishAccessError.emailUnverified + case "owner": + return RelinquishAccessError.owner + case "no_explicit_access": + return RelinquishAccessError.noExplicitAccess + case "team_folder": + return RelinquishAccessError.teamFolder + case "no_permission": + return RelinquishAccessError.noPermission + case "other": + return RelinquishAccessError.other + default: + return RelinquishAccessError.other + } + default: + throw JSONSerializerError.deserializeError(type: RelinquishAccessError.self, json: json) + } + } + } + + /// Returns an empty response for the relinquish_access endpoint. + public class RelinquishAccessResult: CustomStringConvertible, JSONRepresentable { + func json() throws -> JSON { + try RelinquishAccessResultSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try RelinquishAccessResultSerializer().serialize(self)))" + } catch { + return "Failed to generate description for RelinquishAccessResult: \(error)" + } + } + } + + public class RelinquishAccessResultSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: RelinquishAccessResult) throws -> JSON { + let output = [String: JSON]() + return .dictionary(output) + } + + public func deserialize(_ json: JSON) throws -> RelinquishAccessResult { + switch json { + case .dictionary: + return RelinquishAccessResult() + default: + throw JSONSerializerError.deserializeError(type: RelinquishAccessResult.self, json: json) + } + } + } + /// The RelinquishFileMembershipArg struct public class RelinquishFileMembershipArg: CustomStringConvertible, JSONRepresentable { /// The path or id for the file. @@ -7735,6 +8144,8 @@ public class Sharing { case sharedLinkAccessDenied /// This type of link is not supported; use files instead. case unsupportedLinkType + /// Private shared links do not support `path` or `link_password` parameter fields. + case unsupportedParameterField /// An unspecified error. case other /// Shared link is malformed. @@ -7769,6 +8180,10 @@ public class Sharing { var d = [String: JSON]() d[".tag"] = .str("unsupported_link_type") return .dictionary(d) + case .unsupportedParameterField: + var d = [String: JSON]() + d[".tag"] = .str("unsupported_parameter_field") + return .dictionary(d) case .other: var d = [String: JSON]() d[".tag"] = .str("other") @@ -7791,6 +8206,8 @@ public class Sharing { return RevokeSharedLinkError.sharedLinkAccessDenied case "unsupported_link_type": return RevokeSharedLinkError.unsupportedLinkType + case "unsupported_parameter_field": + return RevokeSharedLinkError.unsupportedParameterField case "other": return RevokeSharedLinkError.other case "shared_link_malformed": @@ -7843,8 +8260,9 @@ public class Sharing { switch json { case .dictionary(let dict): let sharedFolderId = try Serialization._StringSerializer.deserialize(dict["shared_folder_id"] ?? .null) - let accessInheritance = try Sharing.AccessInheritanceSerializer() - .deserialize(dict["access_inheritance"] ?? Sharing.AccessInheritanceSerializer().serialize(.inherit)) + let accessInheritance = try Sharing.AccessInheritanceSerializer().deserialize( + dict["access_inheritance"] ?? Sharing.AccessInheritanceSerializer().serialize(.inherit) + ) return SetAccessInheritanceArg(sharedFolderId: sharedFolderId, accessInheritance: accessInheritance) default: throw JSONSerializerError.deserializeError(type: SetAccessInheritanceArg.self, json: json) @@ -7943,7 +8361,7 @@ public class Sharing { self.aclUpdatePolicy = aclUpdatePolicy self.forceAsync = forceAsync self.memberPolicy = memberPolicy - stringValidator(pattern: "(/(.|[\\r\\n])*)|(ns:[0-9]+(/.*)?)|(id:.*)")(path) + stringValidator(pattern: "(/(.|[\\r\\n])*)|(ns:[0-9]+(/(.|[\\r\\n])*)?)|(id:.*)")(path) self.path = path self.sharedLinkPolicy = sharedLinkPolicy self.viewerInfoPolicy = viewerInfoPolicy @@ -7987,8 +8405,9 @@ public class Sharing { let memberPolicy = try NullableSerializer(Sharing.MemberPolicySerializer()).deserialize(dict["member_policy"] ?? .null) let sharedLinkPolicy = try NullableSerializer(Sharing.SharedLinkPolicySerializer()).deserialize(dict["shared_link_policy"] ?? .null) let viewerInfoPolicy = try NullableSerializer(Sharing.ViewerInfoPolicySerializer()).deserialize(dict["viewer_info_policy"] ?? .null) - let accessInheritance = try Sharing.AccessInheritanceSerializer() - .deserialize(dict["access_inheritance"] ?? Sharing.AccessInheritanceSerializer().serialize(.inherit)) + let accessInheritance = try Sharing.AccessInheritanceSerializer().deserialize( + dict["access_inheritance"] ?? Sharing.AccessInheritanceSerializer().serialize(.inherit) + ) return ShareFolderArgBase( path: path, aclUpdatePolicy: aclUpdatePolicy, @@ -8006,8 +8425,8 @@ public class Sharing { /// The ShareFolderArg struct public class ShareFolderArg: Sharing.ShareFolderArgBase { - /// A list of `FolderAction`s corresponding to `FolderPermission`s that should appear in the response's - /// permissions in SharedFolderMetadata field describing the actions the authenticated user can perform + /// A list of `FolderAction`s corresponding to `FolderPermission`s that should appear in the response's + /// permissions in SharedFolderMetadata field describing the actions the authenticated user can perform /// on the folder. public let actions: [Sharing.FolderAction]? /// Settings on the link for this folder. @@ -8071,8 +8490,9 @@ public class Sharing { let memberPolicy = try NullableSerializer(Sharing.MemberPolicySerializer()).deserialize(dict["member_policy"] ?? .null) let sharedLinkPolicy = try NullableSerializer(Sharing.SharedLinkPolicySerializer()).deserialize(dict["shared_link_policy"] ?? .null) let viewerInfoPolicy = try NullableSerializer(Sharing.ViewerInfoPolicySerializer()).deserialize(dict["viewer_info_policy"] ?? .null) - let accessInheritance = try Sharing.AccessInheritanceSerializer() - .deserialize(dict["access_inheritance"] ?? Sharing.AccessInheritanceSerializer().serialize(.inherit)) + let accessInheritance = try Sharing.AccessInheritanceSerializer().deserialize( + dict["access_inheritance"] ?? Sharing.AccessInheritanceSerializer().serialize(.inherit) + ) let actions = try NullableSerializer(ArraySerializer(Sharing.FolderActionSerializer())).deserialize(dict["actions"] ?? .null) let linkSettings = try NullableSerializer(Sharing.LinkSettingsSerializer()).deserialize(dict["link_settings"] ?? .null) return ShareFolderArg( @@ -8099,7 +8519,7 @@ public class Sharing { case emailUnverified /// path in ShareFolderArg is invalid. case badPath(Sharing.SharePathError) - /// Team policy is more restrictive than memberPolicy in ShareFolderArg. + /// Team policy or group sharing settings are more restrictive than memberPolicy in ShareFolderArg. case teamPolicyDisallowsMemberPolicy /// The current user's account is not allowed to select the specified sharedLinkPolicy in ShareFolderArg. case disallowedSharedLinkPolicy @@ -8178,7 +8598,7 @@ public class Sharing { case emailUnverified /// path in ShareFolderArg is invalid. case badPath(Sharing.SharePathError) - /// Team policy is more restrictive than memberPolicy in ShareFolderArg. + /// Team policy or group sharing settings are more restrictive than memberPolicy in ShareFolderArg. case teamPolicyDisallowsMemberPolicy /// The current user's account is not allowed to select the specified sharedLinkPolicy in ShareFolderArg. case disallowedSharedLinkPolicy @@ -8258,39 +8678,187 @@ public class Sharing { } } - /// The ShareFolderJobStatus union - public enum ShareFolderJobStatus: CustomStringConvertible, JSONRepresentable { - /// The asynchronous job is still in progress. - case inProgress - /// The share job has finished. The value is the metadata for the folder. - case complete(Sharing.SharedFolderMetadata) + /// The ShareFolderErrorBaseV2 union + public enum ShareFolderErrorBaseV2: CustomStringConvertible, JSONRepresentable { + /// This user's email address is not verified. This functionality is only available on accounts with a verified + /// email address. Users can verify their email address here https://www.dropbox.com/help/317. + case emailUnverified + /// Team policy or group sharing settings are more restrictive than memberPolicy in ShareFolderArg. + case teamPolicyDisallowsMemberPolicy + /// The current user's account is not allowed to select the specified sharedLinkPolicy in ShareFolderArg. + case disallowedSharedLinkPolicy /// An unspecified error. - case failed(Sharing.ShareFolderError) + case other func json() throws -> JSON { - try ShareFolderJobStatusSerializer().serialize(self) + try ShareFolderErrorBaseV2Serializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShareFolderJobStatusSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShareFolderErrorBaseV2Serializer().serialize(self)))" } catch { - return "Failed to generate description for ShareFolderJobStatus: \(error)" + return "Failed to generate description for ShareFolderErrorBaseV2: \(error)" } } } - public class ShareFolderJobStatusSerializer: JSONSerializer { + public class ShareFolderErrorBaseV2Serializer: JSONSerializer { public init() {} - public func serialize(_ value: ShareFolderJobStatus) throws -> JSON { + public func serialize(_ value: ShareFolderErrorBaseV2) throws -> JSON { switch value { - case .inProgress: + case .emailUnverified: var d = [String: JSON]() - d[".tag"] = .str("in_progress") - return .dictionary(d) - case .complete(let arg): - var d = try Serialization.getFields(Sharing.SharedFolderMetadataSerializer().serialize(arg)) - d[".tag"] = .str("complete") + d[".tag"] = .str("email_unverified") + return .dictionary(d) + case .teamPolicyDisallowsMemberPolicy: + var d = [String: JSON]() + d[".tag"] = .str("team_policy_disallows_member_policy") + return .dictionary(d) + case .disallowedSharedLinkPolicy: + var d = [String: JSON]() + d[".tag"] = .str("disallowed_shared_link_policy") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + + public func deserialize(_ json: JSON) throws -> ShareFolderErrorBaseV2 { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "email_unverified": + return ShareFolderErrorBaseV2.emailUnverified + case "team_policy_disallows_member_policy": + return ShareFolderErrorBaseV2.teamPolicyDisallowsMemberPolicy + case "disallowed_shared_link_policy": + return ShareFolderErrorBaseV2.disallowedSharedLinkPolicy + case "other": + return ShareFolderErrorBaseV2.other + default: + return ShareFolderErrorBaseV2.other + } + default: + throw JSONSerializerError.deserializeError(type: ShareFolderErrorBaseV2.self, json: json) + } + } + } + + /// The ShareFolderErrorV2 union + public enum ShareFolderErrorV2: CustomStringConvertible, JSONRepresentable { + /// This user's email address is not verified. This functionality is only available on accounts with a verified + /// email address. Users can verify their email address here https://www.dropbox.com/help/317. + case emailUnverified + /// Team policy or group sharing settings are more restrictive than memberPolicy in ShareFolderArg. + case teamPolicyDisallowsMemberPolicy + /// The current user's account is not allowed to select the specified sharedLinkPolicy in ShareFolderArg. + case disallowedSharedLinkPolicy + /// An unspecified error. + case other + /// The current user does not have permission to perform this action. + case noPermission + + func json() throws -> JSON { + try ShareFolderErrorV2Serializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try ShareFolderErrorV2Serializer().serialize(self)))" + } catch { + return "Failed to generate description for ShareFolderErrorV2: \(error)" + } + } + } + + public class ShareFolderErrorV2Serializer: JSONSerializer { + public init() {} + public func serialize(_ value: ShareFolderErrorV2) throws -> JSON { + switch value { + case .emailUnverified: + var d = [String: JSON]() + d[".tag"] = .str("email_unverified") + return .dictionary(d) + case .teamPolicyDisallowsMemberPolicy: + var d = [String: JSON]() + d[".tag"] = .str("team_policy_disallows_member_policy") + return .dictionary(d) + case .disallowedSharedLinkPolicy: + var d = [String: JSON]() + d[".tag"] = .str("disallowed_shared_link_policy") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + case .noPermission: + var d = [String: JSON]() + d[".tag"] = .str("no_permission") + return .dictionary(d) + } + } + + public func deserialize(_ json: JSON) throws -> ShareFolderErrorV2 { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "email_unverified": + return ShareFolderErrorV2.emailUnverified + case "team_policy_disallows_member_policy": + return ShareFolderErrorV2.teamPolicyDisallowsMemberPolicy + case "disallowed_shared_link_policy": + return ShareFolderErrorV2.disallowedSharedLinkPolicy + case "other": + return ShareFolderErrorV2.other + case "no_permission": + return ShareFolderErrorV2.noPermission + default: + throw JSONSerializerError.unknownTag(type: ShareFolderErrorV2.self, json: json, tag: tag) + } + default: + throw JSONSerializerError.deserializeError(type: ShareFolderErrorV2.self, json: json) + } + } + } + + /// The ShareFolderJobStatus union + public enum ShareFolderJobStatus: CustomStringConvertible, JSONRepresentable { + /// The asynchronous job is still in progress. + case inProgress + /// The share job has finished. The value is the metadata for the folder. + case complete(Sharing.SharedFolderMetadata) + /// An unspecified error. + case failed(Sharing.ShareFolderError) + + func json() throws -> JSON { + try ShareFolderJobStatusSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try ShareFolderJobStatusSerializer().serialize(self)))" + } catch { + return "Failed to generate description for ShareFolderJobStatus: \(error)" + } + } + } + + public class ShareFolderJobStatusSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: ShareFolderJobStatus) throws -> JSON { + switch value { + case .inProgress: + var d = [String: JSON]() + d[".tag"] = .str("in_progress") + return .dictionary(d) + case .complete(let arg): + var d = try Serialization.getFields(Sharing.SharedFolderMetadataSerializer().serialize(arg)) + d[".tag"] = .str("complete") return .dictionary(d) case .failed(let arg): var d = try ["failed": Sharing.ShareFolderErrorSerializer().serialize(arg)] @@ -8367,26 +8935,356 @@ public class Sharing { return ShareFolderLaunch.asyncJobId(v) case "complete": let v = try Sharing.SharedFolderMetadataSerializer().deserialize(json) - return ShareFolderLaunch.complete(v) + return ShareFolderLaunch.complete(v) + default: + throw JSONSerializerError.unknownTag(type: ShareFolderLaunch.self, json: json, tag: tag) + } + default: + throw JSONSerializerError.deserializeError(type: ShareFolderLaunch.self, json: json) + } + } + } + + /// The SharePathError union + public enum SharePathError: CustomStringConvertible, JSONRepresentable { + /// A file is at the specified path. + case isFile + /// We do not support sharing a folder inside a shared folder. + case insideSharedFolder + /// We do not support shared folders that contain shared folders. + case containsSharedFolder + /// We do not support shared folders that contain app folders. + case containsAppFolder + /// We do not support shared folders that contain team folders. + case containsTeamFolder + /// We do not support sharing an app folder. + case isAppFolder + /// We do not support sharing a folder inside an app folder. + case insideAppFolder + /// A public folder can't be shared this way. Use a public link instead. + case isPublicFolder + /// A folder inside a public folder can't be shared this way. Use a public link instead. + case insidePublicFolder + /// Folder is already shared. Contains metadata about the existing shared folder. + case alreadyShared(Sharing.SharedFolderMetadata) + /// Path is not valid. + case invalidPath + /// We do not support sharing a Mac OS X package. + case isOsxPackage + /// We do not support sharing a folder inside a Mac OS X package. + case insideOsxPackage + /// We do not support sharing the Vault folder. + case isVault + /// We do not support sharing a folder inside a locked Vault. + case isVaultLocked + /// We do not support sharing the Family folder. + case isFamily + /// An unspecified error. + case other + + func json() throws -> JSON { + try SharePathErrorSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try SharePathErrorSerializer().serialize(self)))" + } catch { + return "Failed to generate description for SharePathError: \(error)" + } + } + } + + public class SharePathErrorSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: SharePathError) throws -> JSON { + switch value { + case .isFile: + var d = [String: JSON]() + d[".tag"] = .str("is_file") + return .dictionary(d) + case .insideSharedFolder: + var d = [String: JSON]() + d[".tag"] = .str("inside_shared_folder") + return .dictionary(d) + case .containsSharedFolder: + var d = [String: JSON]() + d[".tag"] = .str("contains_shared_folder") + return .dictionary(d) + case .containsAppFolder: + var d = [String: JSON]() + d[".tag"] = .str("contains_app_folder") + return .dictionary(d) + case .containsTeamFolder: + var d = [String: JSON]() + d[".tag"] = .str("contains_team_folder") + return .dictionary(d) + case .isAppFolder: + var d = [String: JSON]() + d[".tag"] = .str("is_app_folder") + return .dictionary(d) + case .insideAppFolder: + var d = [String: JSON]() + d[".tag"] = .str("inside_app_folder") + return .dictionary(d) + case .isPublicFolder: + var d = [String: JSON]() + d[".tag"] = .str("is_public_folder") + return .dictionary(d) + case .insidePublicFolder: + var d = [String: JSON]() + d[".tag"] = .str("inside_public_folder") + return .dictionary(d) + case .alreadyShared(let arg): + var d = try Serialization.getFields(Sharing.SharedFolderMetadataSerializer().serialize(arg)) + d[".tag"] = .str("already_shared") + return .dictionary(d) + case .invalidPath: + var d = [String: JSON]() + d[".tag"] = .str("invalid_path") + return .dictionary(d) + case .isOsxPackage: + var d = [String: JSON]() + d[".tag"] = .str("is_osx_package") + return .dictionary(d) + case .insideOsxPackage: + var d = [String: JSON]() + d[".tag"] = .str("inside_osx_package") + return .dictionary(d) + case .isVault: + var d = [String: JSON]() + d[".tag"] = .str("is_vault") + return .dictionary(d) + case .isVaultLocked: + var d = [String: JSON]() + d[".tag"] = .str("is_vault_locked") + return .dictionary(d) + case .isFamily: + var d = [String: JSON]() + d[".tag"] = .str("is_family") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + + public func deserialize(_ json: JSON) throws -> SharePathError { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "is_file": + return SharePathError.isFile + case "inside_shared_folder": + return SharePathError.insideSharedFolder + case "contains_shared_folder": + return SharePathError.containsSharedFolder + case "contains_app_folder": + return SharePathError.containsAppFolder + case "contains_team_folder": + return SharePathError.containsTeamFolder + case "is_app_folder": + return SharePathError.isAppFolder + case "inside_app_folder": + return SharePathError.insideAppFolder + case "is_public_folder": + return SharePathError.isPublicFolder + case "inside_public_folder": + return SharePathError.insidePublicFolder + case "already_shared": + let v = try Sharing.SharedFolderMetadataSerializer().deserialize(json) + return SharePathError.alreadyShared(v) + case "invalid_path": + return SharePathError.invalidPath + case "is_osx_package": + return SharePathError.isOsxPackage + case "inside_osx_package": + return SharePathError.insideOsxPackage + case "is_vault": + return SharePathError.isVault + case "is_vault_locked": + return SharePathError.isVaultLocked + case "is_family": + return SharePathError.isFamily + case "other": + return SharePathError.other + default: + return SharePathError.other + } + default: + throw JSONSerializerError.deserializeError(type: SharePathError.self, json: json) + } + } + } + + /// The SharePathErrorBaseV2 union + public enum SharePathErrorBaseV2: CustomStringConvertible, JSONRepresentable { + /// A file is at the specified path. + case isFile + /// We do not support sharing a folder inside a shared folder. + case insideSharedFolder + /// We do not support shared folders that contain shared folders. + case containsSharedFolder + /// We do not support shared folders that contain team folders. + case containsTeamFolder + /// We do not support sharing an app folder. + case isAppFolder + /// We do not support sharing a folder inside an app folder. + case insideAppFolder + /// A public folder can't be shared this way. Use a public link instead. + case isPublicFolder + /// A folder inside a public folder can't be shared this way. Use a public link instead. + case insidePublicFolder + /// Folder is already shared. Contains metadata about the existing shared folder. + case alreadyShared(Sharing.SharedFolderMetadata) + /// Path is not valid. + case invalidPath + /// We do not support sharing a Mac OS X package. + case isOsxPackage + /// We do not support sharing a folder inside a Mac OS X package. + case insideOsxPackage + /// We do not support sharing the Vault folder. + case isVault + /// We do not support sharing a folder inside a locked Vault. + case isVaultLocked + /// An unspecified error. + case other + + func json() throws -> JSON { + try SharePathErrorBaseV2Serializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try SharePathErrorBaseV2Serializer().serialize(self)))" + } catch { + return "Failed to generate description for SharePathErrorBaseV2: \(error)" + } + } + } + + public class SharePathErrorBaseV2Serializer: JSONSerializer { + public init() {} + public func serialize(_ value: SharePathErrorBaseV2) throws -> JSON { + switch value { + case .isFile: + var d = [String: JSON]() + d[".tag"] = .str("is_file") + return .dictionary(d) + case .insideSharedFolder: + var d = [String: JSON]() + d[".tag"] = .str("inside_shared_folder") + return .dictionary(d) + case .containsSharedFolder: + var d = [String: JSON]() + d[".tag"] = .str("contains_shared_folder") + return .dictionary(d) + case .containsTeamFolder: + var d = [String: JSON]() + d[".tag"] = .str("contains_team_folder") + return .dictionary(d) + case .isAppFolder: + var d = [String: JSON]() + d[".tag"] = .str("is_app_folder") + return .dictionary(d) + case .insideAppFolder: + var d = [String: JSON]() + d[".tag"] = .str("inside_app_folder") + return .dictionary(d) + case .isPublicFolder: + var d = [String: JSON]() + d[".tag"] = .str("is_public_folder") + return .dictionary(d) + case .insidePublicFolder: + var d = [String: JSON]() + d[".tag"] = .str("inside_public_folder") + return .dictionary(d) + case .alreadyShared(let arg): + var d = try Serialization.getFields(Sharing.SharedFolderMetadataSerializer().serialize(arg)) + d[".tag"] = .str("already_shared") + return .dictionary(d) + case .invalidPath: + var d = [String: JSON]() + d[".tag"] = .str("invalid_path") + return .dictionary(d) + case .isOsxPackage: + var d = [String: JSON]() + d[".tag"] = .str("is_osx_package") + return .dictionary(d) + case .insideOsxPackage: + var d = [String: JSON]() + d[".tag"] = .str("inside_osx_package") + return .dictionary(d) + case .isVault: + var d = [String: JSON]() + d[".tag"] = .str("is_vault") + return .dictionary(d) + case .isVaultLocked: + var d = [String: JSON]() + d[".tag"] = .str("is_vault_locked") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + + public func deserialize(_ json: JSON) throws -> SharePathErrorBaseV2 { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "is_file": + return SharePathErrorBaseV2.isFile + case "inside_shared_folder": + return SharePathErrorBaseV2.insideSharedFolder + case "contains_shared_folder": + return SharePathErrorBaseV2.containsSharedFolder + case "contains_team_folder": + return SharePathErrorBaseV2.containsTeamFolder + case "is_app_folder": + return SharePathErrorBaseV2.isAppFolder + case "inside_app_folder": + return SharePathErrorBaseV2.insideAppFolder + case "is_public_folder": + return SharePathErrorBaseV2.isPublicFolder + case "inside_public_folder": + return SharePathErrorBaseV2.insidePublicFolder + case "already_shared": + let v = try Sharing.SharedFolderMetadataSerializer().deserialize(json) + return SharePathErrorBaseV2.alreadyShared(v) + case "invalid_path": + return SharePathErrorBaseV2.invalidPath + case "is_osx_package": + return SharePathErrorBaseV2.isOsxPackage + case "inside_osx_package": + return SharePathErrorBaseV2.insideOsxPackage + case "is_vault": + return SharePathErrorBaseV2.isVault + case "is_vault_locked": + return SharePathErrorBaseV2.isVaultLocked + case "other": + return SharePathErrorBaseV2.other default: - throw JSONSerializerError.unknownTag(type: ShareFolderLaunch.self, json: json, tag: tag) + return SharePathErrorBaseV2.other } default: - throw JSONSerializerError.deserializeError(type: ShareFolderLaunch.self, json: json) + throw JSONSerializerError.deserializeError(type: SharePathErrorBaseV2.self, json: json) } } } - /// The SharePathError union - public enum SharePathError: CustomStringConvertible, JSONRepresentable { + /// The SharePathErrorV2 union + public enum SharePathErrorV2: CustomStringConvertible, JSONRepresentable { /// A file is at the specified path. case isFile /// We do not support sharing a folder inside a shared folder. case insideSharedFolder /// We do not support shared folders that contain shared folders. case containsSharedFolder - /// We do not support shared folders that contain app folders. - case containsAppFolder /// We do not support shared folders that contain team folders. case containsTeamFolder /// We do not support sharing an app folder. @@ -8409,27 +9307,29 @@ public class Sharing { case isVault /// We do not support sharing a folder inside a locked Vault. case isVaultLocked - /// We do not support sharing the Family folder. - case isFamily /// An unspecified error. case other + /// We do not support sharing the Family folder. + case isFamily + /// We do not support shared folders that contain app folders. + case containsAppFolder func json() throws -> JSON { - try SharePathErrorSerializer().serialize(self) + try SharePathErrorV2Serializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharePathErrorSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharePathErrorV2Serializer().serialize(self)))" } catch { - return "Failed to generate description for SharePathError: \(error)" + return "Failed to generate description for SharePathErrorV2: \(error)" } } } - public class SharePathErrorSerializer: JSONSerializer { + public class SharePathErrorV2Serializer: JSONSerializer { public init() {} - public func serialize(_ value: SharePathError) throws -> JSON { + public func serialize(_ value: SharePathErrorV2) throws -> JSON { switch value { case .isFile: var d = [String: JSON]() @@ -8443,10 +9343,6 @@ public class Sharing { var d = [String: JSON]() d[".tag"] = .str("contains_shared_folder") return .dictionary(d) - case .containsAppFolder: - var d = [String: JSON]() - d[".tag"] = .str("contains_app_folder") - return .dictionary(d) case .containsTeamFolder: var d = [String: JSON]() d[".tag"] = .str("contains_team_folder") @@ -8491,62 +9387,66 @@ public class Sharing { var d = [String: JSON]() d[".tag"] = .str("is_vault_locked") return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) case .isFamily: var d = [String: JSON]() d[".tag"] = .str("is_family") return .dictionary(d) - case .other: + case .containsAppFolder: var d = [String: JSON]() - d[".tag"] = .str("other") + d[".tag"] = .str("contains_app_folder") return .dictionary(d) } } - public func deserialize(_ json: JSON) throws -> SharePathError { + public func deserialize(_ json: JSON) throws -> SharePathErrorV2 { switch json { case .dictionary(let d): let tag = try Serialization.getTag(d) switch tag { case "is_file": - return SharePathError.isFile + return SharePathErrorV2.isFile case "inside_shared_folder": - return SharePathError.insideSharedFolder + return SharePathErrorV2.insideSharedFolder case "contains_shared_folder": - return SharePathError.containsSharedFolder - case "contains_app_folder": - return SharePathError.containsAppFolder + return SharePathErrorV2.containsSharedFolder case "contains_team_folder": - return SharePathError.containsTeamFolder + return SharePathErrorV2.containsTeamFolder case "is_app_folder": - return SharePathError.isAppFolder + return SharePathErrorV2.isAppFolder case "inside_app_folder": - return SharePathError.insideAppFolder + return SharePathErrorV2.insideAppFolder case "is_public_folder": - return SharePathError.isPublicFolder + return SharePathErrorV2.isPublicFolder case "inside_public_folder": - return SharePathError.insidePublicFolder + return SharePathErrorV2.insidePublicFolder case "already_shared": let v = try Sharing.SharedFolderMetadataSerializer().deserialize(json) - return SharePathError.alreadyShared(v) + return SharePathErrorV2.alreadyShared(v) case "invalid_path": - return SharePathError.invalidPath + return SharePathErrorV2.invalidPath case "is_osx_package": - return SharePathError.isOsxPackage + return SharePathErrorV2.isOsxPackage case "inside_osx_package": - return SharePathError.insideOsxPackage + return SharePathErrorV2.insideOsxPackage case "is_vault": - return SharePathError.isVault + return SharePathErrorV2.isVault case "is_vault_locked": - return SharePathError.isVaultLocked - case "is_family": - return SharePathError.isFamily + return SharePathErrorV2.isVaultLocked case "other": - return SharePathError.other + return SharePathErrorV2.other + case "is_family": + return SharePathErrorV2.isFamily + case "contains_app_folder": + return SharePathErrorV2.containsAppFolder default: - return SharePathError.other + throw JSONSerializerError.unknownTag(type: SharePathErrorV2.self, json: json, tag: tag) } default: - throw JSONSerializerError.deserializeError(type: SharePathError.self, json: json) + throw JSONSerializerError.deserializeError(type: SharePathErrorV2.self, json: json) } } } @@ -8602,8 +9502,9 @@ public class Sharing { "password_protected": try Serialization._BoolSerializer.serialize(value.passwordProtected), "url": try Serialization._StringSerializer.serialize(value.url), "access_level": try NullableSerializer(Sharing.AccessLevelSerializer()).serialize(value.accessLevel), - "audience_restricting_shared_folder": try NullableSerializer(Sharing.AudienceRestrictingSharedFolderSerializer()) - .serialize(value.audienceRestrictingSharedFolder), + "audience_restricting_shared_folder": try NullableSerializer(Sharing.AudienceRestrictingSharedFolderSerializer()).serialize( + value.audienceRestrictingSharedFolder + ), "expiry": try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).serialize(value.expiry), "audience_exceptions": try NullableSerializer(Sharing.AudienceExceptionsSerializer()).serialize(value.audienceExceptions), ] @@ -8619,8 +9520,9 @@ public class Sharing { let passwordProtected = try Serialization._BoolSerializer.deserialize(dict["password_protected"] ?? .null) let url = try Serialization._StringSerializer.deserialize(dict["url"] ?? .null) let accessLevel = try NullableSerializer(Sharing.AccessLevelSerializer()).deserialize(dict["access_level"] ?? .null) - let audienceRestrictingSharedFolder = try NullableSerializer(Sharing.AudienceRestrictingSharedFolderSerializer()) - .deserialize(dict["audience_restricting_shared_folder"] ?? .null) + let audienceRestrictingSharedFolder = try NullableSerializer(Sharing.AudienceRestrictingSharedFolderSerializer()).deserialize( + dict["audience_restricting_shared_folder"] ?? .null + ) let expiry = try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).deserialize(dict["expiry"] ?? .null) let audienceExceptions = try NullableSerializer(Sharing.AudienceExceptionsSerializer()).deserialize(dict["audience_exceptions"] ?? .null) return SharedContentLinkMetadata( @@ -8825,11 +9727,13 @@ public class Sharing { let policy = try Sharing.FolderPolicySerializer().deserialize(dict["policy"] ?? .null) let previewUrl = try Serialization._StringSerializer.deserialize(dict["preview_url"] ?? .null) let accessType = try NullableSerializer(Sharing.AccessLevelSerializer()).deserialize(dict["access_type"] ?? .null) - let expectedLinkMetadata = try NullableSerializer(Sharing.ExpectedSharedContentLinkMetadataSerializer()) - .deserialize(dict["expected_link_metadata"] ?? .null) + let expectedLinkMetadata = try NullableSerializer(Sharing.ExpectedSharedContentLinkMetadataSerializer()).deserialize( + dict["expected_link_metadata"] ?? .null + ) let linkMetadata = try NullableSerializer(Sharing.SharedContentLinkMetadataSerializer()).deserialize(dict["link_metadata"] ?? .null) - let ownerDisplayNames = try NullableSerializer(ArraySerializer(Serialization._StringSerializer)) - .deserialize(dict["owner_display_names"] ?? .null) + let ownerDisplayNames = try NullableSerializer(ArraySerializer(Serialization._StringSerializer)).deserialize( + dict["owner_display_names"] ?? .null + ) let ownerTeam = try NullableSerializer(Users.TeamSerializer()).deserialize(dict["owner_team"] ?? .null) let parentSharedFolderId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["parent_shared_folder_id"] ?? .null) let pathDisplay = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["path_display"] ?? .null) @@ -8866,7 +9770,7 @@ public class Sharing { case notAMember /// The user does not exist or their account is disabled. case invalidMember - /// Never set. + /// Field is deprecated. Never set. case emailUnverified /// The shared folder is unmounted. case unmounted @@ -9024,12 +9928,7 @@ public class Sharing { /// Present if there are additional shared folder members that have not been returned yet. Pass the cursor into /// listFolderMembersContinue to list additional members. public let cursor: String? - public init( - users: [Sharing.UserMembershipInfo], - groups: [Sharing.GroupMembershipInfo], - invitees: [Sharing.InviteeMembershipInfo], - cursor: String? = nil - ) { + public init(users: [Sharing.UserMembershipInfo], groups: [Sharing.GroupMembershipInfo], invitees: [Sharing.InviteeMembershipInfo], cursor: String? = nil) { self.users = users self.groups = groups self.invitees = invitees @@ -9161,8 +10060,9 @@ public class Sharing { let accessType = try Sharing.AccessLevelSerializer().deserialize(dict["access_type"] ?? .null) let isInsideTeamFolder = try Serialization._BoolSerializer.deserialize(dict["is_inside_team_folder"] ?? .null) let isTeamFolder = try Serialization._BoolSerializer.deserialize(dict["is_team_folder"] ?? .null) - let ownerDisplayNames = try NullableSerializer(ArraySerializer(Serialization._StringSerializer)) - .deserialize(dict["owner_display_names"] ?? .null) + let ownerDisplayNames = try NullableSerializer(ArraySerializer(Serialization._StringSerializer)).deserialize( + dict["owner_display_names"] ?? .null + ) let ownerTeam = try NullableSerializer(Users.TeamSerializer()).deserialize(dict["owner_team"] ?? .null) let parentSharedFolderId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["parent_shared_folder_id"] ?? .null) let pathDisplay = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["path_display"] ?? .null) @@ -9205,6 +10105,8 @@ public class Sharing { public let timeInvited: Date /// Whether the folder inherits its members from its parent. public let accessInheritance: Sharing.AccessInheritance + /// The ID of the content. + public let folderId: String? public init( accessType: Sharing.AccessLevel, isInsideTeamFolder: Bool, @@ -9222,7 +10124,8 @@ public class Sharing { parentFolderName: String? = nil, linkMetadata: Sharing.SharedContentLinkMetadata? = nil, permissions: [Sharing.FolderPermission]? = nil, - accessInheritance: Sharing.AccessInheritance = .inherit + accessInheritance: Sharing.AccessInheritance = .inherit, + folderId: String? = nil ) { self.linkMetadata = linkMetadata stringValidator()(name) @@ -9235,6 +10138,8 @@ public class Sharing { self.sharedFolderId = sharedFolderId self.timeInvited = timeInvited self.accessInheritance = accessInheritance + nullableValidator(stringValidator(minLength: 4, pattern: "id:.+"))(folderId) + self.folderId = folderId super.init( accessType: accessType, isInsideTeamFolder: isInsideTeamFolder, @@ -9278,6 +10183,7 @@ public class Sharing { "link_metadata": try NullableSerializer(Sharing.SharedContentLinkMetadataSerializer()).serialize(value.linkMetadata), "permissions": try NullableSerializer(ArraySerializer(Sharing.FolderPermissionSerializer())).serialize(value.permissions), "access_inheritance": try Sharing.AccessInheritanceSerializer().serialize(value.accessInheritance), + "folder_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.folderId), ] return .dictionary(output) } @@ -9293,8 +10199,9 @@ public class Sharing { let previewUrl = try Serialization._StringSerializer.deserialize(dict["preview_url"] ?? .null) let sharedFolderId = try Serialization._StringSerializer.deserialize(dict["shared_folder_id"] ?? .null) let timeInvited = try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").deserialize(dict["time_invited"] ?? .null) - let ownerDisplayNames = try NullableSerializer(ArraySerializer(Serialization._StringSerializer)) - .deserialize(dict["owner_display_names"] ?? .null) + let ownerDisplayNames = try NullableSerializer(ArraySerializer(Serialization._StringSerializer)).deserialize( + dict["owner_display_names"] ?? .null + ) let ownerTeam = try NullableSerializer(Users.TeamSerializer()).deserialize(dict["owner_team"] ?? .null) let parentSharedFolderId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["parent_shared_folder_id"] ?? .null) let pathDisplay = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["path_display"] ?? .null) @@ -9302,8 +10209,10 @@ public class Sharing { let parentFolderName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["parent_folder_name"] ?? .null) let linkMetadata = try NullableSerializer(Sharing.SharedContentLinkMetadataSerializer()).deserialize(dict["link_metadata"] ?? .null) let permissions = try NullableSerializer(ArraySerializer(Sharing.FolderPermissionSerializer())).deserialize(dict["permissions"] ?? .null) - let accessInheritance = try Sharing.AccessInheritanceSerializer() - .deserialize(dict["access_inheritance"] ?? Sharing.AccessInheritanceSerializer().serialize(.inherit)) + let accessInheritance = try Sharing.AccessInheritanceSerializer().deserialize( + dict["access_inheritance"] ?? Sharing.AccessInheritanceSerializer().serialize(.inherit) + ) + let folderId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["folder_id"] ?? .null) return SharedFolderMetadata( accessType: accessType, isInsideTeamFolder: isInsideTeamFolder, @@ -9321,7 +10230,8 @@ public class Sharing { parentFolderName: parentFolderName, linkMetadata: linkMetadata, permissions: permissions, - accessInheritance: accessInheritance + accessInheritance: accessInheritance, + folderId: folderId ) default: throw JSONSerializerError.deserializeError(type: SharedFolderMetadata.self, json: json) @@ -9469,11 +10379,88 @@ public class Sharing { } } + /// The potential errors for a call to get_shared_link_metadata. + public enum SharedLinkMetadataError: CustomStringConvertible, JSONRepresentable { + /// The shared link wasn't found. + case sharedLinkNotFound + /// The caller is not allowed to access this shared link. + case sharedLinkAccessDenied + /// This type of link is not supported; use files instead. + case unsupportedLinkType + /// Private shared links do not support `path` or `link_password` parameter fields. + case unsupportedParameterField + /// An unspecified error. + case other + + func json() throws -> JSON { + try SharedLinkMetadataErrorSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkMetadataErrorSerializer().serialize(self)))" + } catch { + return "Failed to generate description for SharedLinkMetadataError: \(error)" + } + } + } + + public class SharedLinkMetadataErrorSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: SharedLinkMetadataError) throws -> JSON { + switch value { + case .sharedLinkNotFound: + var d = [String: JSON]() + d[".tag"] = .str("shared_link_not_found") + return .dictionary(d) + case .sharedLinkAccessDenied: + var d = [String: JSON]() + d[".tag"] = .str("shared_link_access_denied") + return .dictionary(d) + case .unsupportedLinkType: + var d = [String: JSON]() + d[".tag"] = .str("unsupported_link_type") + return .dictionary(d) + case .unsupportedParameterField: + var d = [String: JSON]() + d[".tag"] = .str("unsupported_parameter_field") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + + public func deserialize(_ json: JSON) throws -> SharedLinkMetadataError { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "shared_link_not_found": + return SharedLinkMetadataError.sharedLinkNotFound + case "shared_link_access_denied": + return SharedLinkMetadataError.sharedLinkAccessDenied + case "unsupported_link_type": + return SharedLinkMetadataError.unsupportedLinkType + case "unsupported_parameter_field": + return SharedLinkMetadataError.unsupportedParameterField + case "other": + return SharedLinkMetadataError.other + default: + throw JSONSerializerError.unknownTag(type: SharedLinkMetadataError.self, json: json, tag: tag) + } + default: + throw JSONSerializerError.deserializeError(type: SharedLinkMetadataError.self, json: json) + } + } + } + /// Who can view shared links in this folder. public enum SharedLinkPolicy: CustomStringConvertible, JSONRepresentable { /// Links can be shared with anyone. case anyone - /// Links can be shared with anyone on the same team as the owner. + /// Field is deprecated. Links can be shared with anyone on the same team as the owner. case team /// Links can only be shared among members of the shared folder. case members @@ -9549,12 +10536,12 @@ public class Sharing { /// The new audience who can benefit from the access level specified by the link's access level specified in the /// `link_access_level` field of `LinkPermissions`. This is used in conjunction with team policies and /// shared folder policies to determine the final effective audience type in the `effective_audience` - /// field of `LinkPermissions. + /// field of `LinkPermissions`. public let audience: Sharing.LinkAudience? /// Requested access level you want the audience to gain from this link. Note, modifying access level for an /// existing link is not supported. public let access: Sharing.RequestedLinkAccessLevel? - /// Use audience instead. The requested access for this shared link. + /// Field is deprecated. Use audience instead. The requested access for this shared link. public let requestedVisibility: Sharing.RequestedVisibility? /// Boolean flag to allow or not download capabilities for shared links. public let allowDownload: Bool? @@ -10429,6 +11416,139 @@ public class Sharing { } } + /// Arguments for updateFilePolicy. + public class UpdateFilePolicyArg: CustomStringConvertible, JSONRepresentable { + /// File that we are changing the policy for. + public let file: String + /// A list of `FileAction`s corresponding to `FilePermission`s that should appear in the response's permissions + /// in SharedFileMetadata field describing the actions the authenticated user can perform on the file. + public let actions: [Sharing.FileAction]? + /// Field is deprecated. Settings on the link for the file. + public let linkSettings: Sharing.LinkSettings? + /// The presence and seen state policy on the file. + public let viewerInfoPolicy: Sharing.ViewerInfoPolicy? + public init( + file: String, + actions: [Sharing.FileAction]? = nil, + linkSettings: Sharing.LinkSettings? = nil, + viewerInfoPolicy: Sharing.ViewerInfoPolicy? = nil + ) { + stringValidator(minLength: 1, pattern: "((/|id:).*|nspath:[0-9]+:.*)|ns:[0-9]+(/.*)?")(file) + self.file = file + self.actions = actions + self.linkSettings = linkSettings + self.viewerInfoPolicy = viewerInfoPolicy + } + + func json() throws -> JSON { + try UpdateFilePolicyArgSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try UpdateFilePolicyArgSerializer().serialize(self)))" + } catch { + return "Failed to generate description for UpdateFilePolicyArg: \(error)" + } + } + } + + public class UpdateFilePolicyArgSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: UpdateFilePolicyArg) throws -> JSON { + let output = [ + "file": try Serialization._StringSerializer.serialize(value.file), + "actions": try NullableSerializer(ArraySerializer(Sharing.FileActionSerializer())).serialize(value.actions), + "link_settings": try NullableSerializer(Sharing.LinkSettingsSerializer()).serialize(value.linkSettings), + "viewer_info_policy": try NullableSerializer(Sharing.ViewerInfoPolicySerializer()).serialize(value.viewerInfoPolicy), + ] + return .dictionary(output) + } + + public func deserialize(_ json: JSON) throws -> UpdateFilePolicyArg { + switch json { + case .dictionary(let dict): + let file = try Serialization._StringSerializer.deserialize(dict["file"] ?? .null) + let actions = try NullableSerializer(ArraySerializer(Sharing.FileActionSerializer())).deserialize(dict["actions"] ?? .null) + let linkSettings = try NullableSerializer(Sharing.LinkSettingsSerializer()).deserialize(dict["link_settings"] ?? .null) + let viewerInfoPolicy = try NullableSerializer(Sharing.ViewerInfoPolicySerializer()).deserialize(dict["viewer_info_policy"] ?? .null) + return UpdateFilePolicyArg(file: file, actions: actions, linkSettings: linkSettings, viewerInfoPolicy: viewerInfoPolicy) + default: + throw JSONSerializerError.deserializeError(type: UpdateFilePolicyArg.self, json: json) + } + } + } + + /// Error result for updateFilePolicy. + public enum UpdateFilePolicyError: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case accessError(Sharing.SharingFileAccessError) + /// The file settings are invalid. + case invalidFileSettings + /// The current user does not have permission to perform this action. + case noPermission + /// An unspecified error. + case other + + func json() throws -> JSON { + try UpdateFilePolicyErrorSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try UpdateFilePolicyErrorSerializer().serialize(self)))" + } catch { + return "Failed to generate description for UpdateFilePolicyError: \(error)" + } + } + } + + public class UpdateFilePolicyErrorSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: UpdateFilePolicyError) throws -> JSON { + switch value { + case .accessError(let arg): + var d = try ["access_error": Sharing.SharingFileAccessErrorSerializer().serialize(arg)] + d[".tag"] = .str("access_error") + return .dictionary(d) + case .invalidFileSettings: + var d = [String: JSON]() + d[".tag"] = .str("invalid_file_settings") + return .dictionary(d) + case .noPermission: + var d = [String: JSON]() + d[".tag"] = .str("no_permission") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + + public func deserialize(_ json: JSON) throws -> UpdateFilePolicyError { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "access_error": + let v = try Sharing.SharingFileAccessErrorSerializer().deserialize(d["access_error"] ?? .null) + return UpdateFilePolicyError.accessError(v) + case "invalid_file_settings": + return UpdateFilePolicyError.invalidFileSettings + case "no_permission": + return UpdateFilePolicyError.noPermission + case "other": + return UpdateFilePolicyError.other + default: + return UpdateFilePolicyError.other + } + default: + throw JSONSerializerError.deserializeError(type: UpdateFilePolicyError.self, json: json) + } + } + } + /// The UpdateFolderMemberArg struct public class UpdateFolderMemberArg: CustomStringConvertible, JSONRepresentable { /// The ID for the shared folder. @@ -10587,8 +11707,8 @@ public class Sharing { public let sharedLinkPolicy: Sharing.SharedLinkPolicy? /// Settings on the link for this folder. public let linkSettings: Sharing.LinkSettings? - /// A list of `FolderAction`s corresponding to `FolderPermission`s that should appear in the response's - /// permissions in SharedFolderMetadata field describing the actions the authenticated user can perform + /// A list of `FolderAction`s corresponding to `FolderPermission`s that should appear in the response's + /// permissions in SharedFolderMetadata field describing the actions the authenticated user can perform /// on the folder. public let actions: [Sharing.FolderAction]? public init( @@ -10669,7 +11789,7 @@ public class Sharing { case accessError(Sharing.SharedFolderAccessError) /// memberPolicy in UpdateFolderPolicyArg was set even though user is not on a team. case notOnTeam - /// Team policy is more restrictive than memberPolicy in ShareFolderArg. + /// Team policy or group sharing settings are more restrictive than memberPolicy in ShareFolderArg. case teamPolicyDisallowsMemberPolicy /// The current account is not allowed to select the specified sharedLinkPolicy in ShareFolderArg. case disallowedSharedLinkPolicy @@ -11147,8 +12267,9 @@ public class Sharing { let policy = try Sharing.RequestedVisibilitySerializer().deserialize(dict["policy"] ?? .null) let resolvedPolicy = try Sharing.AlphaResolvedVisibilitySerializer().deserialize(dict["resolved_policy"] ?? .null) let allowed = try Serialization._BoolSerializer.deserialize(dict["allowed"] ?? .null) - let disallowedReason = try NullableSerializer(Sharing.VisibilityPolicyDisallowedReasonSerializer()) - .deserialize(dict["disallowed_reason"] ?? .null) + let disallowedReason = try NullableSerializer(Sharing.VisibilityPolicyDisallowedReasonSerializer()).deserialize( + dict["disallowed_reason"] ?? .null + ) return VisibilityPolicy(policy: policy, resolvedPolicy: resolvedPolicy, allowed: allowed, disallowedReason: disallowedReason) default: throw JSONSerializerError.deserializeError(type: VisibilityPolicy.self, json: json) @@ -11307,7 +12428,7 @@ public class Sharing { responseSerializer: Sharing.SharedLinkMetadataSerializer(), errorSerializer: Sharing.GetSharedLinkFileErrorSerializer(), attributes: RouteAttributes( - auth: [.user], + auth: [.app, .user], host: .content, style: .download ) @@ -11319,7 +12440,7 @@ public class Sharing { deprecated: false, argSerializer: Sharing.GetSharedLinkMetadataArgSerializer(), responseSerializer: Sharing.SharedLinkMetadataSerializer(), - errorSerializer: Sharing.SharedLinkErrorSerializer(), + errorSerializer: Sharing.SharedLinkMetadataErrorSerializer(), attributes: RouteAttributes( auth: [.app, .user], host: .api, @@ -11536,6 +12657,20 @@ public class Sharing { style: .rpc ) ) + static let relinquishAccess = Route( + name: "relinquish_access", + version: 1, + namespace: "sharing", + deprecated: false, + argSerializer: Sharing.RelinquishAccessArgSerializer(), + responseSerializer: Sharing.RelinquishAccessResultSerializer(), + errorSerializer: Sharing.RelinquishAccessErrorSerializer(), + attributes: RouteAttributes( + auth: [.user], + host: .api, + style: .rpc + ) + ) static let relinquishFileMembership = Route( name: "relinquish_file_membership", version: 1, @@ -11718,6 +12853,20 @@ public class Sharing { style: .rpc ) ) + static let updateFilePolicy = Route( + name: "update_file_policy", + version: 1, + namespace: "sharing", + deprecated: false, + argSerializer: Sharing.UpdateFilePolicyArgSerializer(), + responseSerializer: Sharing.SharedFileMetadataSerializer(), + errorSerializer: Sharing.UpdateFilePolicyErrorSerializer(), + attributes: RouteAttributes( + auth: [.user], + host: .api, + style: .rpc + ) + ) static let updateFolderMember = Route( name: "update_folder_member", version: 1, diff --git a/Source/SwiftyDropbox/Shared/Generated/SharingAppAuthRoutes.swift b/Source/SwiftyDropbox/Shared/Generated/SharingAppAuthRoutes.swift index 6464ca85..1d9fd070 100644 --- a/Source/SwiftyDropbox/Shared/Generated/SharingAppAuthRoutes.swift +++ b/Source/SwiftyDropbox/Shared/Generated/SharingAppAuthRoutes.swift @@ -14,6 +14,52 @@ public class SharingAppAuthRoutes: DropboxTransportClientOwning { self.client = client } + /// Download the shared link's file from a user's Dropbox. This is a download-style endpoint that returns the file + /// content. + /// + /// - scope: sharing.read + /// + /// - parameter url: URL of the shared link. + /// - parameter path: If the shared link is to a folder, this parameter can be used to retrieve the metadata for a + /// specific file or sub-folder in this folder. A relative path should be used. + /// - parameter linkPassword: If the shared link has a password, this parameter can be used. + /// - parameter overwrite: A boolean to set behavior in the event of a naming conflict. `True` will overwrite + /// conflicting file at destination. `False` will take no action (but if left unhandled in destination closure, + /// an NSError will be thrown). + /// - parameter destination: The location to write the download to. + /// + /// - returns: Through the response callback, the caller will receive a `Sharing.SharedLinkMetadata` object on + /// success or a `Sharing.GetSharedLinkFileError` object on failure. + @discardableResult public func getSharedLinkFile(url: String, path: String? = nil, linkPassword: String? = nil, overwrite: Bool = false, destination: URL) -> DownloadRequestFile< + Sharing.SharedLinkMetadataSerializer, + Sharing.GetSharedLinkFileErrorSerializer + > { + let route = Sharing.getSharedLinkFile + let serverArgs = Sharing.GetSharedLinkMetadataArg(url: url, path: path, linkPassword: linkPassword) + return client.request(route, serverArgs: serverArgs, overwrite: overwrite, destination: destination) + } + + /// Download the shared link's file from a user's Dropbox. This is a download-style endpoint that returns the file + /// content. + /// + /// - scope: sharing.read + /// + /// - parameter url: URL of the shared link. + /// - parameter path: If the shared link is to a folder, this parameter can be used to retrieve the metadata for a + /// specific file or sub-folder in this folder. A relative path should be used. + /// - parameter linkPassword: If the shared link has a password, this parameter can be used. + /// + /// - returns: Through the response callback, the caller will receive a `Sharing.SharedLinkMetadata` object on + /// success or a `Sharing.GetSharedLinkFileError` object on failure. + @discardableResult public func getSharedLinkFile(url: String, path: String? = nil, linkPassword: String? = nil) -> DownloadRequestMemory< + Sharing.SharedLinkMetadataSerializer, + Sharing.GetSharedLinkFileErrorSerializer + > { + let route = Sharing.getSharedLinkFile + let serverArgs = Sharing.GetSharedLinkMetadataArg(url: url, path: path, linkPassword: linkPassword) + return client.request(route, serverArgs: serverArgs) + } + /// Get the shared link's metadata. /// /// - scope: sharing.read @@ -24,12 +70,11 @@ public class SharingAppAuthRoutes: DropboxTransportClientOwning { /// - parameter linkPassword: If the shared link has a password, this parameter can be used. /// /// - returns: Through the response callback, the caller will receive a `Sharing.SharedLinkMetadata` object on - /// success or a `Sharing.SharedLinkError` object on failure. - @discardableResult public func getSharedLinkMetadata( - url: String, - path: String? = nil, - linkPassword: String? = nil - ) -> RpcRequest { + /// success or a `Sharing.SharedLinkMetadataError` object on failure. + @discardableResult public func getSharedLinkMetadata(url: String, path: String? = nil, linkPassword: String? = nil) -> RpcRequest< + Sharing.SharedLinkMetadataSerializer, + Sharing.SharedLinkMetadataErrorSerializer + > { let route = Sharing.getSharedLinkMetadata let serverArgs = Sharing.GetSharedLinkMetadataArg(url: url, path: path, linkPassword: linkPassword) return client.request(route, serverArgs: serverArgs) diff --git a/Source/SwiftyDropbox/Shared/Generated/SharingRoutes.swift b/Source/SwiftyDropbox/Shared/Generated/SharingRoutes.swift index edf81ea3..480a2171 100644 --- a/Source/SwiftyDropbox/Shared/Generated/SharingRoutes.swift +++ b/Source/SwiftyDropbox/Shared/Generated/SharingRoutes.swift @@ -25,7 +25,10 @@ public class SharingRoutes: DropboxTransportClientOwning { /// - parameter quiet: Whether added members should be notified via email and device notifications of their /// invitation. /// - parameter accessLevel: AccessLevel union object, describing what access level we want to give new members. - /// - parameter addMessageAsComment: If the custom message should be added as a comment on the file. + /// - parameter addMessageAsComment: If the custom message should be added as a comment on the file. Only meant for + /// Paper files. + /// - parameter fpSealedResult: Field is only returned for "internal" callers. The FingerprintJS Sealed Client + /// Result value /// /// - returns: Through the response callback, the caller will receive a `Array` /// object on success or a `Sharing.AddFileMemberError` object on failure. @@ -34,8 +37,9 @@ public class SharingRoutes: DropboxTransportClientOwning { members: [Sharing.MemberSelector], customMessage: String? = nil, quiet: Bool = false, - accessLevel: Sharing.AccessLevel = .viewer, - addMessageAsComment: Bool = false + accessLevel: Sharing.AccessLevel? = nil, + addMessageAsComment: Bool = false, + fpSealedResult: String? = nil ) -> RpcRequest, Sharing.AddFileMemberErrorSerializer> { let route = Sharing.addFileMember let serverArgs = Sharing.AddFileMemberArgs( @@ -44,7 +48,8 @@ public class SharingRoutes: DropboxTransportClientOwning { customMessage: customMessage, quiet: quiet, accessLevel: accessLevel, - addMessageAsComment: addMessageAsComment + addMessageAsComment: addMessageAsComment, + fpSealedResult: fpSealedResult ) return client.request(route, serverArgs: serverArgs) } @@ -60,6 +65,8 @@ public class SharingRoutes: DropboxTransportClientOwning { /// folder. /// - parameter quiet: Whether added members should be notified via email and device notifications of their invite. /// - parameter customMessage: Optional message to display to added members in their invitation. + /// - parameter fpSealedResult: Field is only returned for "internal" callers. The FingerprintJS Sealed Client + /// Result value /// /// - returns: Through the response callback, the caller will receive a `Void` object on success or a /// `Sharing.AddFolderMemberError` object on failure. @@ -67,10 +74,17 @@ public class SharingRoutes: DropboxTransportClientOwning { sharedFolderId: String, members: [Sharing.AddMember], quiet: Bool = false, - customMessage: String? = nil + customMessage: String? = nil, + fpSealedResult: String? = nil ) -> RpcRequest { let route = Sharing.addFolderMember - let serverArgs = Sharing.AddFolderMemberArg(sharedFolderId: sharedFolderId, members: members, quiet: quiet, customMessage: customMessage) + let serverArgs = Sharing.AddFolderMemberArg( + sharedFolderId: sharedFolderId, + members: members, + quiet: quiet, + customMessage: customMessage, + fpSealedResult: fpSealedResult + ) return client.request(route, serverArgs: serverArgs) } @@ -98,8 +112,10 @@ public class SharingRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Sharing.RemoveMemberJobStatus` object on /// success or a `Async.PollError` object on failure. - @discardableResult public func checkRemoveMemberJobStatus(asyncJobId: String) - -> RpcRequest { + @discardableResult public func checkRemoveMemberJobStatus(asyncJobId: String) -> RpcRequest< + Sharing.RemoveMemberJobStatusSerializer, + Async.PollErrorSerializer + > { let route = Sharing.checkRemoveMemberJobStatus let serverArgs = Async.PollArg(asyncJobId: asyncJobId) return client.request(route, serverArgs: serverArgs) @@ -123,30 +139,31 @@ public class SharingRoutes: DropboxTransportClientOwning { /// Create a shared link. If a shared link already exists for the given path, that link is returned. Previously, it /// was technically possible to break a shared link by moving or renaming the corresponding file or folder. In /// the future, this will no longer be the case, so your app shouldn't rely on this behavior. Instead, if your - /// app needs to revoke a shared link, use revokeSharedLink. + /// app needs to revoke a shared link, use revoke_shared_link. DEPRECATED: Use create_shared_link_with_settings + /// instead. /// /// - scope: sharing.write /// /// - parameter path: The path to share. + /// - parameter shortUrl: Field is deprecated. None /// - parameter pendingUpload: If it's okay to share a path that does not yet exist, set this to either file in /// PendingUploadMode or folder in PendingUploadMode to indicate whether to assume it's a file or folder. /// /// - returns: Through the response callback, the caller will receive a `Sharing.PathLinkMetadata` object on success /// or a `Sharing.CreateSharedLinkError` object on failure. - @available(*, unavailable, message: "createSharedLink is deprecated. Use createSharedLinkWithSettings.") - @discardableResult public func createSharedLink( - path: String, - shortUrl: Bool = false, - pendingUpload: Sharing.PendingUploadMode? = nil - ) -> RpcRequest { + @available(*, unavailable, message: "createSharedLink is deprecated.") + @discardableResult public func createSharedLink(path: String, shortUrl: Bool = false, pendingUpload: Sharing.PendingUploadMode? = nil) -> RpcRequest< + Sharing.PathLinkMetadataSerializer, + Sharing.CreateSharedLinkErrorSerializer + > { let route = Sharing.createSharedLink let serverArgs = Sharing.CreateSharedLinkArg(path: path, shortUrl: shortUrl, pendingUpload: pendingUpload) return client.request(route, serverArgs: serverArgs) } - /// Create a shared link with custom settings. If no settings are given then the default visibility is public_ in - /// RequestedVisibility (The resolved visibility, though, may depend on other aspects such as team and shared - /// folder settings). + /// Create a shared link with custom settings. If no settings are given then the default visibility is + /// RequestedVisibility.public (The resolved visibility, though, may depend on other aspects such as team and + /// shared folder settings). /// /// - scope: sharing.write /// @@ -155,10 +172,10 @@ public class SharingRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Sharing.SharedLinkMetadata` object on /// success or a `Sharing.CreateSharedLinkWithSettingsError` object on failure. - @discardableResult public func createSharedLinkWithSettings( - path: String, - settings: Sharing.SharedLinkSettings? = nil - ) -> RpcRequest { + @discardableResult public func createSharedLinkWithSettings(path: String, settings: Sharing.SharedLinkSettings? = nil) -> RpcRequest< + Sharing.SharedLinkMetadataSerializer, + Sharing.CreateSharedLinkWithSettingsErrorSerializer + > { let route = Sharing.createSharedLinkWithSettings let serverArgs = Sharing.CreateSharedLinkWithSettingsArg(path: path, settings: settings) return client.request(route, serverArgs: serverArgs) @@ -170,15 +187,15 @@ public class SharingRoutes: DropboxTransportClientOwning { /// /// - parameter file: The file to query. /// - parameter actions: A list of `FileAction`s corresponding to `FilePermission`s that should appear in the - /// response's permissions in SharedFileMetadata field describing the actions the authenticated user can - /// perform on the file. + /// response's permissions in SharedFileMetadata field describing the actions the authenticated user can perform + /// on the file. /// /// - returns: Through the response callback, the caller will receive a `Sharing.SharedFileMetadata` object on /// success or a `Sharing.GetFileMetadataError` object on failure. - @discardableResult public func getFileMetadata( - file: String, - actions: [Sharing.FileAction]? = nil - ) -> RpcRequest { + @discardableResult public func getFileMetadata(file: String, actions: [Sharing.FileAction]? = nil) -> RpcRequest< + Sharing.SharedFileMetadataSerializer, + Sharing.GetFileMetadataErrorSerializer + > { let route = Sharing.getFileMetadata let serverArgs = Sharing.GetFileMetadataArg(file: file, actions: actions) return client.request(route, serverArgs: serverArgs) @@ -190,15 +207,15 @@ public class SharingRoutes: DropboxTransportClientOwning { /// /// - parameter files: The files to query. /// - parameter actions: A list of `FileAction`s corresponding to `FilePermission`s that should appear in the - /// response's permissions in SharedFileMetadata field describing the actions the authenticated user can - /// perform on the file. + /// response's permissions in SharedFileMetadata field describing the actions the authenticated user can perform + /// on the file. /// /// - returns: Through the response callback, the caller will receive a `Array` /// object on success or a `Sharing.SharingUserError` object on failure. - @discardableResult public func getFileMetadataBatch( - files: [String], - actions: [Sharing.FileAction]? = nil - ) -> RpcRequest, Sharing.SharingUserErrorSerializer> { + @discardableResult public func getFileMetadataBatch(files: [String], actions: [Sharing.FileAction]? = nil) -> RpcRequest< + ArraySerializer, + Sharing.SharingUserErrorSerializer + > { let route = Sharing.getFileMetadataBatch let serverArgs = Sharing.GetFileMetadataBatchArg(files: files, actions: actions) return client.request(route, serverArgs: serverArgs) @@ -210,21 +227,22 @@ public class SharingRoutes: DropboxTransportClientOwning { /// /// - parameter sharedFolderId: The ID for the shared folder. /// - parameter actions: A list of `FolderAction`s corresponding to `FolderPermission`s that should appear in the - /// response's permissions in SharedFolderMetadata field describing the actions the authenticated user can + /// response's permissions in SharedFolderMetadata field describing the actions the authenticated user can /// perform on the folder. /// /// - returns: Through the response callback, the caller will receive a `Sharing.SharedFolderMetadata` object on /// success or a `Sharing.SharedFolderAccessError` object on failure. - @discardableResult public func getFolderMetadata( - sharedFolderId: String, - actions: [Sharing.FolderAction]? = nil - ) -> RpcRequest { + @discardableResult public func getFolderMetadata(sharedFolderId: String, actions: [Sharing.FolderAction]? = nil) -> RpcRequest< + Sharing.SharedFolderMetadataSerializer, + Sharing.SharedFolderAccessErrorSerializer + > { let route = Sharing.getFolderMetadata let serverArgs = Sharing.GetMetadataArgs(sharedFolderId: sharedFolderId, actions: actions) return client.request(route, serverArgs: serverArgs) } - /// Download the shared link's file from a user's Dropbox. + /// Download the shared link's file from a user's Dropbox. This is a download-style endpoint that returns the file + /// content. /// /// - scope: sharing.read /// @@ -239,19 +257,17 @@ public class SharingRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Sharing.SharedLinkMetadata` object on /// success or a `Sharing.GetSharedLinkFileError` object on failure. - @discardableResult public func getSharedLinkFile( - url: String, - path: String? = nil, - linkPassword: String? = nil, - overwrite: Bool = false, - destination: URL - ) -> DownloadRequestFile { + @discardableResult public func getSharedLinkFile(url: String, path: String? = nil, linkPassword: String? = nil, overwrite: Bool = false, destination: URL) -> DownloadRequestFile< + Sharing.SharedLinkMetadataSerializer, + Sharing.GetSharedLinkFileErrorSerializer + > { let route = Sharing.getSharedLinkFile let serverArgs = Sharing.GetSharedLinkMetadataArg(url: url, path: path, linkPassword: linkPassword) return client.request(route, serverArgs: serverArgs, overwrite: overwrite, destination: destination) } - /// Download the shared link's file from a user's Dropbox. + /// Download the shared link's file from a user's Dropbox. This is a download-style endpoint that returns the file + /// content. /// /// - scope: sharing.read /// @@ -262,11 +278,10 @@ public class SharingRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Sharing.SharedLinkMetadata` object on /// success or a `Sharing.GetSharedLinkFileError` object on failure. - @discardableResult public func getSharedLinkFile( - url: String, - path: String? = nil, - linkPassword: String? = nil - ) -> DownloadRequestMemory { + @discardableResult public func getSharedLinkFile(url: String, path: String? = nil, linkPassword: String? = nil) -> DownloadRequestMemory< + Sharing.SharedLinkMetadataSerializer, + Sharing.GetSharedLinkFileErrorSerializer + > { let route = Sharing.getSharedLinkFile let serverArgs = Sharing.GetSharedLinkMetadataArg(url: url, path: path, linkPassword: linkPassword) return client.request(route, serverArgs: serverArgs) @@ -282,21 +297,21 @@ public class SharingRoutes: DropboxTransportClientOwning { /// - parameter linkPassword: If the shared link has a password, this parameter can be used. /// /// - returns: Through the response callback, the caller will receive a `Sharing.SharedLinkMetadata` object on - /// success or a `Sharing.SharedLinkError` object on failure. - @discardableResult public func getSharedLinkMetadata( - url: String, - path: String? = nil, - linkPassword: String? = nil - ) -> RpcRequest { + /// success or a `Sharing.SharedLinkMetadataError` object on failure. + @discardableResult public func getSharedLinkMetadata(url: String, path: String? = nil, linkPassword: String? = nil) -> RpcRequest< + Sharing.SharedLinkMetadataSerializer, + Sharing.SharedLinkMetadataErrorSerializer + > { let route = Sharing.getSharedLinkMetadata let serverArgs = Sharing.GetSharedLinkMetadataArg(url: url, path: path, linkPassword: linkPassword) return client.request(route, serverArgs: serverArgs) } - /// Returns a list of LinkMetadata objects for this user, including collection links. If no path is given, returns a - /// list of all shared links for the current user, including collection links, up to a maximum of 1000 links. If - /// a non-empty path is given, returns a list of all shared links that allow access to the given path. - /// Collection links are never returned in this case. + /// DEPRECATED: Use list_shared_links instead. This endpoint will be retired in October 2026. Returns a list of + /// LinkMetadata objects for this user, including collection links. If no path is given, returns a list of all + /// shared links for the current user, including collection links, up to a maximum of 1000 links. If a non-empty + /// path is given, returns a list of all shared links that allow access to the given path. Collection links are + /// never returned in this case. /// /// - scope: sharing.read /// @@ -304,9 +319,11 @@ public class SharingRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Sharing.GetSharedLinksResult` object on /// success or a `Sharing.GetSharedLinksError` object on failure. - @available(*, unavailable, message: "getSharedLinks is deprecated. Use listSharedLinks.") - @discardableResult public func getSharedLinks(path: String? = nil) - -> RpcRequest { + @available(*, unavailable, message: "getSharedLinks is deprecated.") + @discardableResult public func getSharedLinks(path: String? = nil) -> RpcRequest< + Sharing.GetSharedLinksResultSerializer, + Sharing.GetSharedLinksErrorSerializer + > { let route = Sharing.getSharedLinks let serverArgs = Sharing.GetSharedLinksArg(path: path) return client.request(route, serverArgs: serverArgs) @@ -323,12 +340,10 @@ public class SharingRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Sharing.SharedFileMembers` object on /// success or a `Sharing.ListFileMembersError` object on failure. - @discardableResult public func listFileMembers( - file: String, - actions: [Sharing.MemberAction]? = nil, - includeInherited: Bool = true, - limit: UInt32 = 100 - ) -> RpcRequest { + @discardableResult public func listFileMembers(file: String, actions: [Sharing.MemberAction]? = nil, includeInherited: Bool = true, limit: UInt32 = 100) -> RpcRequest< + Sharing.SharedFileMembersSerializer, + Sharing.ListFileMembersErrorSerializer + > { let route = Sharing.listFileMembers let serverArgs = Sharing.ListFileMembersArg(file: file, actions: actions, includeInherited: includeInherited, limit: limit) return client.request(route, serverArgs: serverArgs) @@ -342,14 +357,14 @@ public class SharingRoutes: DropboxTransportClientOwning { /// - scope: sharing.read /// /// - parameter files: Files for which to return members. - /// - parameter limit: Number of members to return max per query. Defaults to 10 if no limit is specified. + /// - parameter limit: Number of members to return max per query. Defaults to 1000 if no limit is specified. /// /// - returns: Through the response callback, the caller will receive a `Array` /// object on success or a `Sharing.SharingUserError` object on failure. - @discardableResult public func listFileMembersBatch( - files: [String], - limit: UInt32 = 10 - ) -> RpcRequest, Sharing.SharingUserErrorSerializer> { + @discardableResult public func listFileMembersBatch(files: [String], limit: UInt32 = 1_000) -> RpcRequest< + ArraySerializer, + Sharing.SharingUserErrorSerializer + > { let route = Sharing.listFileMembersBatch let serverArgs = Sharing.ListFileMembersBatchArg(files: files, limit: limit) return client.request(route, serverArgs: serverArgs) @@ -365,8 +380,10 @@ public class SharingRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Sharing.SharedFileMembers` object on /// success or a `Sharing.ListFileMembersContinueError` object on failure. - @discardableResult public func listFileMembersContinue(cursor: String) - -> RpcRequest { + @discardableResult public func listFileMembersContinue(cursor: String) -> RpcRequest< + Sharing.SharedFileMembersSerializer, + Sharing.ListFileMembersContinueErrorSerializer + > { let route = Sharing.listFileMembersContinue let serverArgs = Sharing.ListFileMembersContinueArg(cursor: cursor) return client.request(route, serverArgs: serverArgs) @@ -376,17 +393,20 @@ public class SharingRoutes: DropboxTransportClientOwning { /// /// - scope: sharing.read /// - /// - parameter sharedFolderId: The ID for the shared folder. + /// - parameter sharedFolderId: The ID for the shared folder. When path is provided, the folder ID will be extracted + /// from the path instead. + /// - parameter path: Optional path to get inherited members. When omitted, uses shared_folder_id to return direct + /// members. When provided, extracts folder ID from this path and returns users who have access through parent + /// shared folder. /// /// - returns: Through the response callback, the caller will receive a `Sharing.SharedFolderMembers` object on /// success or a `Sharing.SharedFolderAccessError` object on failure. - @discardableResult public func listFolderMembers( - sharedFolderId: String, - actions: [Sharing.MemberAction]? = nil, - limit: UInt32 = 1_000 - ) -> RpcRequest { + @discardableResult public func listFolderMembers(sharedFolderId: String, actions: [Sharing.MemberAction]? = nil, limit: UInt32 = 1_000, path: String? = nil) -> RpcRequest< + Sharing.SharedFolderMembersSerializer, + Sharing.SharedFolderAccessErrorSerializer + > { let route = Sharing.listFolderMembers - let serverArgs = Sharing.ListFolderMembersArgs(sharedFolderId: sharedFolderId, actions: actions, limit: limit) + let serverArgs = Sharing.ListFolderMembersArgs(sharedFolderId: sharedFolderId, actions: actions, limit: limit, path: path) return client.request(route, serverArgs: serverArgs) } @@ -398,8 +418,10 @@ public class SharingRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Sharing.SharedFolderMembers` object on /// success or a `Sharing.ListFolderMembersContinueError` object on failure. - @discardableResult public func listFolderMembersContinue(cursor: String) - -> RpcRequest { + @discardableResult public func listFolderMembersContinue(cursor: String) -> RpcRequest< + Sharing.SharedFolderMembersSerializer, + Sharing.ListFolderMembersContinueErrorSerializer + > { let route = Sharing.listFolderMembersContinue let serverArgs = Sharing.ListFolderMembersContinueArg(cursor: cursor) return client.request(route, serverArgs: serverArgs) @@ -411,15 +433,15 @@ public class SharingRoutes: DropboxTransportClientOwning { /// /// - parameter limit: The maximum number of results to return per request. /// - parameter actions: A list of `FolderAction`s corresponding to `FolderPermission`s that should appear in the - /// response's permissions in SharedFolderMetadata field describing the actions the authenticated user can + /// response's permissions in SharedFolderMetadata field describing the actions the authenticated user can /// perform on the folder. /// /// - returns: Through the response callback, the caller will receive a `Sharing.ListFoldersResult` object on /// success or a `Void` object on failure. - @discardableResult public func listFolders( - limit: UInt32 = 1_000, - actions: [Sharing.FolderAction]? = nil - ) -> RpcRequest { + @discardableResult public func listFolders(limit: UInt32 = 1_000, actions: [Sharing.FolderAction]? = nil) -> RpcRequest< + Sharing.ListFoldersResultSerializer, + VoidSerializer + > { let route = Sharing.listFolders let serverArgs = Sharing.ListFoldersArgs(limit: limit, actions: actions) return client.request(route, serverArgs: serverArgs) @@ -434,8 +456,10 @@ public class SharingRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Sharing.ListFoldersResult` object on /// success or a `Sharing.ListFoldersContinueError` object on failure. - @discardableResult public func listFoldersContinue(cursor: String) - -> RpcRequest { + @discardableResult public func listFoldersContinue(cursor: String) -> RpcRequest< + Sharing.ListFoldersResultSerializer, + Sharing.ListFoldersContinueErrorSerializer + > { let route = Sharing.listFoldersContinue let serverArgs = Sharing.ListFoldersContinueArg(cursor: cursor) return client.request(route, serverArgs: serverArgs) @@ -447,15 +471,15 @@ public class SharingRoutes: DropboxTransportClientOwning { /// /// - parameter limit: The maximum number of results to return per request. /// - parameter actions: A list of `FolderAction`s corresponding to `FolderPermission`s that should appear in the - /// response's permissions in SharedFolderMetadata field describing the actions the authenticated user can + /// response's permissions in SharedFolderMetadata field describing the actions the authenticated user can /// perform on the folder. /// /// - returns: Through the response callback, the caller will receive a `Sharing.ListFoldersResult` object on /// success or a `Void` object on failure. - @discardableResult public func listMountableFolders( - limit: UInt32 = 1_000, - actions: [Sharing.FolderAction]? = nil - ) -> RpcRequest { + @discardableResult public func listMountableFolders(limit: UInt32 = 1_000, actions: [Sharing.FolderAction]? = nil) -> RpcRequest< + Sharing.ListFoldersResultSerializer, + VoidSerializer + > { let route = Sharing.listMountableFolders let serverArgs = Sharing.ListFoldersArgs(limit: limit, actions: actions) return client.request(route, serverArgs: serverArgs) @@ -470,29 +494,30 @@ public class SharingRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Sharing.ListFoldersResult` object on /// success or a `Sharing.ListFoldersContinueError` object on failure. - @discardableResult public func listMountableFoldersContinue(cursor: String) - -> RpcRequest { + @discardableResult public func listMountableFoldersContinue(cursor: String) -> RpcRequest< + Sharing.ListFoldersResultSerializer, + Sharing.ListFoldersContinueErrorSerializer + > { let route = Sharing.listMountableFoldersContinue let serverArgs = Sharing.ListFoldersContinueArg(cursor: cursor) return client.request(route, serverArgs: serverArgs) } - /// Returns a list of all files shared with current user. Does not include files the user has received via shared - /// folders, and does not include unclaimed invitations. + /// Returns a list of all files shared with current user. /// /// - scope: sharing.read /// /// - parameter limit: Number of files to return max per query. Defaults to 100 if no limit is specified. /// - parameter actions: A list of `FileAction`s corresponding to `FilePermission`s that should appear in the - /// response's permissions in SharedFileMetadata field describing the actions the authenticated user can - /// perform on the file. + /// response's permissions in SharedFileMetadata field describing the actions the authenticated user can perform + /// on the file. /// /// - returns: Through the response callback, the caller will receive a `Sharing.ListFilesResult` object on success /// or a `Sharing.SharingUserError` object on failure. - @discardableResult public func listReceivedFiles( - limit: UInt32 = 100, - actions: [Sharing.FileAction]? = nil - ) -> RpcRequest { + @discardableResult public func listReceivedFiles(limit: UInt32 = 100, actions: [Sharing.FileAction]? = nil) -> RpcRequest< + Sharing.ListFilesResultSerializer, + Sharing.SharingUserErrorSerializer + > { let route = Sharing.listReceivedFiles let serverArgs = Sharing.ListFilesArg(limit: limit, actions: actions) return client.request(route, serverArgs: serverArgs) @@ -506,8 +531,10 @@ public class SharingRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Sharing.ListFilesResult` object on success /// or a `Sharing.ListFilesContinueError` object on failure. - @discardableResult public func listReceivedFilesContinue(cursor: String) - -> RpcRequest { + @discardableResult public func listReceivedFilesContinue(cursor: String) -> RpcRequest< + Sharing.ListFilesResultSerializer, + Sharing.ListFilesContinueErrorSerializer + > { let route = Sharing.listReceivedFilesContinue let serverArgs = Sharing.ListFilesContinueArg(cursor: cursor) return client.request(route, serverArgs: serverArgs) @@ -515,11 +542,10 @@ public class SharingRoutes: DropboxTransportClientOwning { /// List shared links of this user. If no path is given, returns a list of all shared links for the current user. /// For members of business teams using team space and member folders, returns all shared links in the team - /// member's home folder unless the team space ID is specified in the request header. For more information, - /// refer to the Namespace Guide https://www.dropbox.com/developers/reference/namespace-guide. If a non-empty - /// path is given, returns a list of all shared links that allow access to the given path - direct links to the - /// given path and links to parent folders of the given path. Links to parent folders can be suppressed by - /// setting direct_only to true. + /// member's home folder unless the team space ID is specified in the request header. If a non-empty path is + /// given, returns a list of all shared links that allow access to the given path - direct links to the given + /// path and links to parent folders of the given path. Links to parent folders can be suppressed by setting + /// direct_only to true. /// /// - scope: sharing.read /// @@ -529,20 +555,19 @@ public class SharingRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Sharing.ListSharedLinksResult` object on /// success or a `Sharing.ListSharedLinksError` object on failure. - @discardableResult public func listSharedLinks( - path: String? = nil, - cursor: String? = nil, - directOnly: Bool? = nil - ) -> RpcRequest { + @discardableResult public func listSharedLinks(path: String? = nil, cursor: String? = nil, directOnly: Bool? = nil) -> RpcRequest< + Sharing.ListSharedLinksResultSerializer, + Sharing.ListSharedLinksErrorSerializer + > { let route = Sharing.listSharedLinks let serverArgs = Sharing.ListSharedLinksArg(path: path, cursor: cursor, directOnly: directOnly) return client.request(route, serverArgs: serverArgs) } /// Modify the shared link's settings. If the requested visibility conflict with the shared links policy of the team - /// or the shared folder (in case the linked file is part of a shared folder) then the resolvedVisibility in - /// LinkPermissions of the returned SharedLinkMetadata will reflect the actual visibility of the shared link and - /// the requestedVisibility in LinkPermissions will reflect the requested visibility. + /// or the shared folder (in case the linked file is part of a shared folder) then the + /// LinkPermissions.resolved_visibility of the returned SharedLinkMetadata will reflect the actual visibility of + /// the shared link and the LinkPermissions.requested_visibility will reflect the requested visibility. /// /// - scope: sharing.write /// @@ -552,11 +577,10 @@ public class SharingRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Sharing.SharedLinkMetadata` object on /// success or a `Sharing.ModifySharedLinkSettingsError` object on failure. - @discardableResult public func modifySharedLinkSettings( - url: String, - settings: Sharing.SharedLinkSettings, - removeExpiration: Bool = false - ) -> RpcRequest { + @discardableResult public func modifySharedLinkSettings(url: String, settings: Sharing.SharedLinkSettings, removeExpiration: Bool = false) -> RpcRequest< + Sharing.SharedLinkMetadataSerializer, + Sharing.ModifySharedLinkSettingsErrorSerializer + > { let route = Sharing.modifySharedLinkSettings let serverArgs = Sharing.ModifySharedLinkSettingsArgs(url: url, settings: settings, removeExpiration: removeExpiration) return client.request(route, serverArgs: serverArgs) @@ -571,15 +595,31 @@ public class SharingRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Sharing.SharedFolderMetadata` object on /// success or a `Sharing.MountFolderError` object on failure. - @discardableResult public func mountFolder(sharedFolderId: String) - -> RpcRequest { + @discardableResult public func mountFolder(sharedFolderId: String) -> RpcRequest { let route = Sharing.mountFolder let serverArgs = Sharing.MountFolderArg(sharedFolderId: sharedFolderId) return client.request(route, serverArgs: serverArgs) } - /// The current user relinquishes their membership in the designated file. Note that the current user may still have - /// inherited access to this file through the parent folder. + /// Removes all self-removable access from a file or folder for the current user. Best-effort and idempotent: + /// attempts to drop link-visitor associations and explicit ACL membership. + /// + /// - scope: private:sharing.write + /// + /// - parameter fileId: The id for the file or folder. + /// + /// - returns: Through the response callback, the caller will receive a `Sharing.RelinquishAccessResult` object on + /// success or a `Sharing.RelinquishAccessError` object on failure. + @discardableResult public func relinquishAccess(fileId: String) -> RpcRequest< + Sharing.RelinquishAccessResultSerializer, + Sharing.RelinquishAccessErrorSerializer + > { + let route = Sharing.relinquishAccess + let serverArgs = Sharing.RelinquishAccessArg(fileId: fileId) + return client.request(route, serverArgs: serverArgs) + } + + /// The current user relinquishes their membership in the designated file. /// /// - scope: sharing.write /// @@ -605,10 +645,10 @@ public class SharingRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Async.LaunchEmptyResult` object on success /// or a `Sharing.RelinquishFolderMembershipError` object on failure. - @discardableResult public func relinquishFolderMembership( - sharedFolderId: String, - leaveACopy: Bool = false - ) -> RpcRequest { + @discardableResult public func relinquishFolderMembership(sharedFolderId: String, leaveACopy: Bool = false) -> RpcRequest< + Async.LaunchEmptyResultSerializer, + Sharing.RelinquishFolderMembershipErrorSerializer + > { let route = Sharing.relinquishFolderMembership let serverArgs = Sharing.RelinquishFolderMembershipArg(sharedFolderId: sharedFolderId, leaveACopy: leaveACopy) return client.request(route, serverArgs: serverArgs) @@ -624,11 +664,11 @@ public class SharingRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Sharing.FileMemberActionIndividualResult` /// object on success or a `Sharing.RemoveFileMemberError` object on failure. - @available(*, unavailable, message: "removeFileMember is deprecated. Use removeFileMember2.") - @discardableResult public func removeFileMember( - file: String, - member: Sharing.MemberSelector - ) -> RpcRequest { + @available(*, unavailable, message: "removeFileMember is deprecated.") + @discardableResult public func removeFileMember(file: String, member: Sharing.MemberSelector) -> RpcRequest< + Sharing.FileMemberActionIndividualResultSerializer, + Sharing.RemoveFileMemberErrorSerializer + > { let route = Sharing.removeFileMember let serverArgs = Sharing.RemoveFileMemberArg(file: file, member: member) return client.request(route, serverArgs: serverArgs) @@ -644,10 +684,10 @@ public class SharingRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Sharing.FileMemberRemoveActionResult` /// object on success or a `Sharing.RemoveFileMemberError` object on failure. - @discardableResult public func removeFileMember2( - file: String, - member: Sharing.MemberSelector - ) -> RpcRequest { + @discardableResult public func removeFileMember2(file: String, member: Sharing.MemberSelector) -> RpcRequest< + Sharing.FileMemberRemoveActionResultSerializer, + Sharing.RemoveFileMemberErrorSerializer + > { let route = Sharing.removeFileMember2 let serverArgs = Sharing.RemoveFileMemberArg(file: file, member: member) return client.request(route, serverArgs: serverArgs) @@ -665,11 +705,10 @@ public class SharingRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Async.LaunchResultBase` object on success /// or a `Sharing.RemoveFolderMemberError` object on failure. - @discardableResult public func removeFolderMember( - sharedFolderId: String, - member: Sharing.MemberSelector, - leaveACopy: Bool - ) -> RpcRequest { + @discardableResult public func removeFolderMember(sharedFolderId: String, member: Sharing.MemberSelector, leaveACopy: Bool) -> RpcRequest< + Async.LaunchResultBaseSerializer, + Sharing.RemoveFolderMemberErrorSerializer + > { let route = Sharing.removeFolderMember let serverArgs = Sharing.RemoveFolderMemberArg(sharedFolderId: sharedFolderId, member: member, leaveACopy: leaveACopy) return client.request(route, serverArgs: serverArgs) @@ -677,7 +716,7 @@ public class SharingRoutes: DropboxTransportClientOwning { /// Revoke a shared link. Note that even after revoking a shared link to a file, the file may be accessible if there /// are shared links leading to any of the file parent folders. To list all shared links that enable access to a - /// specific file, you can use the listSharedLinks with the file as the path in ListSharedLinksArg argument. + /// specific file, you can use the list_shared_links with the file as the ListSharedLinksArg.path argument. /// /// - scope: sharing.write /// @@ -702,11 +741,10 @@ public class SharingRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Sharing.ShareFolderLaunch` object on /// success or a `Sharing.SetAccessInheritanceError` object on failure. - @discardableResult public func setAccessInheritance( - sharedFolderId: String, - accessInheritance: Sharing - .AccessInheritance = .inherit - ) -> RpcRequest { + @discardableResult public func setAccessInheritance(sharedFolderId: String, accessInheritance: Sharing.AccessInheritance = .inherit) -> RpcRequest< + Sharing.ShareFolderLaunchSerializer, + Sharing.SetAccessInheritanceErrorSerializer + > { let route = Sharing.setAccessInheritance let serverArgs = Sharing.SetAccessInheritanceArg(sharedFolderId: sharedFolderId, accessInheritance: accessInheritance) return client.request(route, serverArgs: serverArgs) @@ -720,7 +758,7 @@ public class SharingRoutes: DropboxTransportClientOwning { /// - scope: sharing.write /// /// - parameter actions: A list of `FolderAction`s corresponding to `FolderPermission`s that should appear in the - /// response's permissions in SharedFolderMetadata field describing the actions the authenticated user can + /// response's permissions in SharedFolderMetadata field describing the actions the authenticated user can /// perform on the folder. /// - parameter linkSettings: Settings on the link for this folder. /// @@ -762,10 +800,10 @@ public class SharingRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Void` object on success or a /// `Sharing.TransferFolderError` object on failure. - @discardableResult public func transferFolder( - sharedFolderId: String, - toDropboxId: String - ) -> RpcRequest { + @discardableResult public func transferFolder(sharedFolderId: String, toDropboxId: String) -> RpcRequest< + VoidSerializer, + Sharing.TransferFolderErrorSerializer + > { let route = Sharing.transferFolder let serverArgs = Sharing.TransferFolderArg(sharedFolderId: sharedFolderId, toDropboxId: toDropboxId) return client.request(route, serverArgs: serverArgs) @@ -799,8 +837,9 @@ public class SharingRoutes: DropboxTransportClientOwning { return client.request(route, serverArgs: serverArgs) } - /// Allows a shared folder owner to unshare the folder. You'll need to call checkJobStatus to determine if the - /// action has completed successfully. + /// Allows a shared folder owner to unshare the folder. Unshare will not work in following cases: The shared folder + /// contains shared folders OR the shared folder is inside another shared folder. You'll need to call + /// checkJobStatus to determine if the action has completed successfully. /// /// - scope: sharing.write /// @@ -811,10 +850,10 @@ public class SharingRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Async.LaunchEmptyResult` object on success /// or a `Sharing.UnshareFolderError` object on failure. - @discardableResult public func unshareFolder( - sharedFolderId: String, - leaveACopy: Bool = false - ) -> RpcRequest { + @discardableResult public func unshareFolder(sharedFolderId: String, leaveACopy: Bool = false) -> RpcRequest< + Async.LaunchEmptyResultSerializer, + Sharing.UnshareFolderErrorSerializer + > { let route = Sharing.unshareFolder let serverArgs = Sharing.UnshareFolderArg(sharedFolderId: sharedFolderId, leaveACopy: leaveACopy) return client.request(route, serverArgs: serverArgs) @@ -830,16 +869,39 @@ public class SharingRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Sharing.MemberAccessLevelResult` object on /// success or a `Sharing.FileMemberActionError` object on failure. - @discardableResult public func updateFileMember( - file: String, - member: Sharing.MemberSelector, - accessLevel: Sharing.AccessLevel - ) -> RpcRequest { + @discardableResult public func updateFileMember(file: String, member: Sharing.MemberSelector, accessLevel: Sharing.AccessLevel) -> RpcRequest< + Sharing.MemberAccessLevelResultSerializer, + Sharing.FileMemberActionErrorSerializer + > { let route = Sharing.updateFileMember let serverArgs = Sharing.UpdateFileMemberArgs(file: file, member: member, accessLevel: accessLevel) return client.request(route, serverArgs: serverArgs) } + /// Update the viewer info policy of a file. + /// + /// - scope: sharing.write + /// + /// - parameter file: File that we are changing the policy for. + /// - parameter actions: A list of `FileAction`s corresponding to `FilePermission`s that should appear in the + /// response's permissions in SharedFileMetadata field describing the actions the authenticated user can perform + /// on the file. + /// - parameter linkSettings: Field is deprecated. Settings on the link for the file. + /// - parameter viewerInfoPolicy: The presence and seen state policy on the file. + /// + /// - returns: Through the response callback, the caller will receive a `Sharing.SharedFileMetadata` object on + /// success or a `Sharing.UpdateFilePolicyError` object on failure. + @discardableResult public func updateFilePolicy( + file: String, + actions: [Sharing.FileAction]? = nil, + linkSettings: Sharing.LinkSettings? = nil, + viewerInfoPolicy: Sharing.ViewerInfoPolicy? = nil + ) -> RpcRequest { + let route = Sharing.updateFilePolicy + let serverArgs = Sharing.UpdateFilePolicyArg(file: file, actions: actions, linkSettings: linkSettings, viewerInfoPolicy: viewerInfoPolicy) + return client.request(route, serverArgs: serverArgs) + } + /// Allows an owner or editor of a shared folder to update another member's permissions. /// /// - scope: sharing.write @@ -851,11 +913,10 @@ public class SharingRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Sharing.MemberAccessLevelResult` object on /// success or a `Sharing.UpdateFolderMemberError` object on failure. - @discardableResult public func updateFolderMember( - sharedFolderId: String, - member: Sharing.MemberSelector, - accessLevel: Sharing.AccessLevel - ) -> RpcRequest { + @discardableResult public func updateFolderMember(sharedFolderId: String, member: Sharing.MemberSelector, accessLevel: Sharing.AccessLevel) -> RpcRequest< + Sharing.MemberAccessLevelResultSerializer, + Sharing.UpdateFolderMemberErrorSerializer + > { let route = Sharing.updateFolderMember let serverArgs = Sharing.UpdateFolderMemberArg(sharedFolderId: sharedFolderId, member: member, accessLevel: accessLevel) return client.request(route, serverArgs: serverArgs) @@ -875,7 +936,7 @@ public class SharingRoutes: DropboxTransportClientOwning { /// The current user must be on a team to set this policy to members in SharedLinkPolicy. /// - parameter linkSettings: Settings on the link for this folder. /// - parameter actions: A list of `FolderAction`s corresponding to `FolderPermission`s that should appear in the - /// response's permissions in SharedFolderMetadata field describing the actions the authenticated user can + /// response's permissions in SharedFolderMetadata field describing the actions the authenticated user can /// perform on the folder. /// /// - returns: Through the response callback, the caller will receive a `Sharing.SharedFolderMetadata` object on diff --git a/Source/SwiftyDropbox/Shared/Generated/Team.swift b/Source/SwiftyDropbox/Shared/Generated/Team.swift index 9565d7bc..42d04a35 100644 --- a/Source/SwiftyDropbox/Shared/Generated/Team.swift +++ b/Source/SwiftyDropbox/Shared/Generated/Team.swift @@ -172,7 +172,7 @@ public class Team { case alreadyOwnedByUser(String) /// User already has the maximum number of secondary emails allowed. case reachedLimit(String) - /// A transient error occurred. Please try again later. + /// Field is deprecated. A transient error occurred. Please try again later. case transientError(String) /// An error occurred due to conflicting updates. Please try again later. case tooManyUpdates(String) @@ -683,6 +683,828 @@ public class Team { } } + /// Launches one action-specific bulk suspend job. + public class BulkSuspendArg: CustomStringConvertible, JSONRepresentable { + /// Must contain between 1 and 500 targets. The launch handler also rejects duplicate client item IDs and + /// duplicate member selectors. + public let members: [Team.BulkSuspendMemberTarget] + public init(members: [Team.BulkSuspendMemberTarget]) { + self.members = members + } + + func json() throws -> JSON { + try BulkSuspendArgSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try BulkSuspendArgSerializer().serialize(self)))" + } catch { + return "Failed to generate description for BulkSuspendArg: \(error)" + } + } + } + + public class BulkSuspendArgSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: BulkSuspendArg) throws -> JSON { + let output = [ + "members": try ArraySerializer(Team.BulkSuspendMemberTargetSerializer()).serialize(value.members), + ] + return .dictionary(output) + } + + public func deserialize(_ json: JSON) throws -> BulkSuspendArg { + switch json { + case .dictionary(let dict): + let members = try ArraySerializer(Team.BulkSuspendMemberTargetSerializer()).deserialize(dict["members"] ?? .null) + return BulkSuspendArg(members: members) + default: + throw JSONSerializerError.deserializeError(type: BulkSuspendArg.self, json: json) + } + } + } + + /// The BulkSuspendComplete struct + public class BulkSuspendComplete: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let requested: Int64 + /// (no description) + public let suspended: Int64 + /// (no description) + public let failed: Int64 + /// (no description) + public let unknown: Int64 + /// (no description) + public let reportDelivery: Team.BulkSuspendReportDeliveryStatus + public init(requested: Int64, suspended: Int64, failed: Int64, unknown: Int64, reportDelivery: Team.BulkSuspendReportDeliveryStatus) { + comparableValidator()(requested) + self.requested = requested + comparableValidator()(suspended) + self.suspended = suspended + comparableValidator()(failed) + self.failed = failed + comparableValidator()(unknown) + self.unknown = unknown + self.reportDelivery = reportDelivery + } + + func json() throws -> JSON { + try BulkSuspendCompleteSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try BulkSuspendCompleteSerializer().serialize(self)))" + } catch { + return "Failed to generate description for BulkSuspendComplete: \(error)" + } + } + } + + public class BulkSuspendCompleteSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: BulkSuspendComplete) throws -> JSON { + let output = [ + "requested": try Serialization._Int64Serializer.serialize(value.requested), + "suspended": try Serialization._Int64Serializer.serialize(value.suspended), + "failed": try Serialization._Int64Serializer.serialize(value.failed), + "unknown": try Serialization._Int64Serializer.serialize(value.unknown), + "report_delivery": try Team.BulkSuspendReportDeliveryStatusSerializer().serialize(value.reportDelivery), + ] + return .dictionary(output) + } + + public func deserialize(_ json: JSON) throws -> BulkSuspendComplete { + switch json { + case .dictionary(let dict): + let requested = try Serialization._Int64Serializer.deserialize(dict["requested"] ?? .null) + let suspended = try Serialization._Int64Serializer.deserialize(dict["suspended"] ?? .null) + let failed = try Serialization._Int64Serializer.deserialize(dict["failed"] ?? .null) + let unknown = try Serialization._Int64Serializer.deserialize(dict["unknown"] ?? .null) + let reportDelivery = try Team.BulkSuspendReportDeliveryStatusSerializer().deserialize(dict["report_delivery"] ?? .null) + return BulkSuspendComplete(requested: requested, suspended: suspended, failed: failed, unknown: unknown, reportDelivery: reportDelivery) + default: + throw JSONSerializerError.deserializeError(type: BulkSuspendComplete.self, json: json) + } + } + } + + /// A typed launch rejection. Authorization failures continue to use the API v2 authentication/permission error + /// surface. + public enum BulkSuspendError: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case invalidRequest + /// An unspecified error. + case tooManyMembers + /// An unspecified error. + case duplicateClientItemId + /// An unspecified error. + case duplicateTeamMemberId + /// An unspecified error. + case actingAdmin + /// An unspecified error. + case lastAdmin + /// An unspecified error. + case other + + func json() throws -> JSON { + try BulkSuspendErrorSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try BulkSuspendErrorSerializer().serialize(self)))" + } catch { + return "Failed to generate description for BulkSuspendError: \(error)" + } + } + } + + public class BulkSuspendErrorSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: BulkSuspendError) throws -> JSON { + switch value { + case .invalidRequest: + var d = [String: JSON]() + d[".tag"] = .str("invalid_request") + return .dictionary(d) + case .tooManyMembers: + var d = [String: JSON]() + d[".tag"] = .str("too_many_members") + return .dictionary(d) + case .duplicateClientItemId: + var d = [String: JSON]() + d[".tag"] = .str("duplicate_client_item_id") + return .dictionary(d) + case .duplicateTeamMemberId: + var d = [String: JSON]() + d[".tag"] = .str("duplicate_team_member_id") + return .dictionary(d) + case .actingAdmin: + var d = [String: JSON]() + d[".tag"] = .str("acting_admin") + return .dictionary(d) + case .lastAdmin: + var d = [String: JSON]() + d[".tag"] = .str("last_admin") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + + public func deserialize(_ json: JSON) throws -> BulkSuspendError { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "invalid_request": + return BulkSuspendError.invalidRequest + case "too_many_members": + return BulkSuspendError.tooManyMembers + case "duplicate_client_item_id": + return BulkSuspendError.duplicateClientItemId + case "duplicate_team_member_id": + return BulkSuspendError.duplicateTeamMemberId + case "acting_admin": + return BulkSuspendError.actingAdmin + case "last_admin": + return BulkSuspendError.lastAdmin + case "other": + return BulkSuspendError.other + default: + return BulkSuspendError.other + } + default: + throw JSONSerializerError.deserializeError(type: BulkSuspendError.self, json: json) + } + } + } + + /// Coarse job state. Live row progress and report contents are intentionally omitted; callers receive row details + /// in the terminal email report. + public enum BulkSuspendJobStatus: CustomStringConvertible, JSONRepresentable { + /// The asynchronous job is still in progress. + case inProgress + /// An unspecified error. + case complete(Team.BulkSuspendComplete) + /// An unspecified error. + case failed(Team.BulkSuspendTaskFailure) + /// An unspecified error. + case other + + func json() throws -> JSON { + try BulkSuspendJobStatusSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try BulkSuspendJobStatusSerializer().serialize(self)))" + } catch { + return "Failed to generate description for BulkSuspendJobStatus: \(error)" + } + } + } + + public class BulkSuspendJobStatusSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: BulkSuspendJobStatus) throws -> JSON { + switch value { + case .inProgress: + var d = [String: JSON]() + d[".tag"] = .str("in_progress") + return .dictionary(d) + case .complete(let arg): + var d = try Serialization.getFields(Team.BulkSuspendCompleteSerializer().serialize(arg)) + d[".tag"] = .str("complete") + return .dictionary(d) + case .failed(let arg): + var d = try ["failed": Team.BulkSuspendTaskFailureSerializer().serialize(arg)] + d[".tag"] = .str("failed") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + + public func deserialize(_ json: JSON) throws -> BulkSuspendJobStatus { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "in_progress": + return BulkSuspendJobStatus.inProgress + case "complete": + let v = try Team.BulkSuspendCompleteSerializer().deserialize(json) + return BulkSuspendJobStatus.complete(v) + case "failed": + let v = try Team.BulkSuspendTaskFailureSerializer().deserialize(d["failed"] ?? .null) + return BulkSuspendJobStatus.failed(v) + case "other": + return BulkSuspendJobStatus.other + default: + return BulkSuspendJobStatus.other + } + default: + throw JSONSerializerError.deserializeError(type: BulkSuspendJobStatus.self, json: json) + } + } + } + + /// One member selected for suspension. The opaque client item ID correlates the eventual report row with the + /// caller's input without sending CSV data. + public class BulkSuspendMemberTarget: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let clientItemId: String + /// (no description) + public let suspendArg: Team.MembersDeactivateArg + public init(clientItemId: String, suspendArg: Team.MembersDeactivateArg) { + stringValidator()(clientItemId) + self.clientItemId = clientItemId + self.suspendArg = suspendArg + } + + func json() throws -> JSON { + try BulkSuspendMemberTargetSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try BulkSuspendMemberTargetSerializer().serialize(self)))" + } catch { + return "Failed to generate description for BulkSuspendMemberTarget: \(error)" + } + } + } + + public class BulkSuspendMemberTargetSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: BulkSuspendMemberTarget) throws -> JSON { + let output = [ + "client_item_id": try Serialization._StringSerializer.serialize(value.clientItemId), + "suspend_arg": try Team.MembersDeactivateArgSerializer().serialize(value.suspendArg), + ] + return .dictionary(output) + } + + public func deserialize(_ json: JSON) throws -> BulkSuspendMemberTarget { + switch json { + case .dictionary(let dict): + let clientItemId = try Serialization._StringSerializer.deserialize(dict["client_item_id"] ?? .null) + let suspendArg = try Team.MembersDeactivateArgSerializer().deserialize(dict["suspend_arg"] ?? .null) + return BulkSuspendMemberTarget(clientItemId: clientItemId, suspendArg: suspendArg) + default: + throw JSONSerializerError.deserializeError(type: BulkSuspendMemberTarget.self, json: json) + } + } + } + + /// The BulkSuspendReportDeliveryStatus union + public enum BulkSuspendReportDeliveryStatus: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case bulkSuspendReportDeliveryStatusUnspecified + /// An unspecified error. + case bulkSuspendReportDeliveryStatusPending + /// An unspecified error. + case bulkSuspendReportDeliveryStatusDelivered + /// An unspecified error. + case bulkSuspendReportDeliveryStatusFailed + /// An unspecified error. + case other + + func json() throws -> JSON { + try BulkSuspendReportDeliveryStatusSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try BulkSuspendReportDeliveryStatusSerializer().serialize(self)))" + } catch { + return "Failed to generate description for BulkSuspendReportDeliveryStatus: \(error)" + } + } + } + + public class BulkSuspendReportDeliveryStatusSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: BulkSuspendReportDeliveryStatus) throws -> JSON { + switch value { + case .bulkSuspendReportDeliveryStatusUnspecified: + var d = [String: JSON]() + d[".tag"] = .str("bulk_suspend_report_delivery_status_unspecified") + return .dictionary(d) + case .bulkSuspendReportDeliveryStatusPending: + var d = [String: JSON]() + d[".tag"] = .str("bulk_suspend_report_delivery_status_pending") + return .dictionary(d) + case .bulkSuspendReportDeliveryStatusDelivered: + var d = [String: JSON]() + d[".tag"] = .str("bulk_suspend_report_delivery_status_delivered") + return .dictionary(d) + case .bulkSuspendReportDeliveryStatusFailed: + var d = [String: JSON]() + d[".tag"] = .str("bulk_suspend_report_delivery_status_failed") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + + public func deserialize(_ json: JSON) throws -> BulkSuspendReportDeliveryStatus { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "bulk_suspend_report_delivery_status_unspecified": + return BulkSuspendReportDeliveryStatus.bulkSuspendReportDeliveryStatusUnspecified + case "bulk_suspend_report_delivery_status_pending": + return BulkSuspendReportDeliveryStatus.bulkSuspendReportDeliveryStatusPending + case "bulk_suspend_report_delivery_status_delivered": + return BulkSuspendReportDeliveryStatus.bulkSuspendReportDeliveryStatusDelivered + case "bulk_suspend_report_delivery_status_failed": + return BulkSuspendReportDeliveryStatus.bulkSuspendReportDeliveryStatusFailed + case "other": + return BulkSuspendReportDeliveryStatus.other + default: + return BulkSuspendReportDeliveryStatus.other + } + default: + throw JSONSerializerError.deserializeError(type: BulkSuspendReportDeliveryStatus.self, json: json) + } + } + } + + /// Error that can be returned whenever a struct derived from UserSelectorArg is used. + public enum UserSelectorError: CustomStringConvertible, JSONRepresentable { + /// No matching user found. The provided team_member_id, email, or external_id does not exist on this team. + case userNotFound + + func json() throws -> JSON { + try UserSelectorErrorSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try UserSelectorErrorSerializer().serialize(self)))" + } catch { + return "Failed to generate description for UserSelectorError: \(error)" + } + } + } + + public class UserSelectorErrorSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: UserSelectorError) throws -> JSON { + switch value { + case .userNotFound: + var d = [String: JSON]() + d[".tag"] = .str("user_not_found") + return .dictionary(d) + } + } + + public func deserialize(_ json: JSON) throws -> UserSelectorError { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "user_not_found": + return UserSelectorError.userNotFound + default: + throw JSONSerializerError.unknownTag(type: UserSelectorError.self, json: json, tag: tag) + } + default: + throw JSONSerializerError.deserializeError(type: UserSelectorError.self, json: json) + } + } + } + + /// The MembersDeactivateError union + public enum MembersDeactivateError: CustomStringConvertible, JSONRepresentable { + /// No matching user found. The provided team_member_id, email, or external_id does not exist on this team. + case userNotFound + /// The user is not a member of the team. + case userNotInTeam + /// An unspecified error. + case other + + func json() throws -> JSON { + try MembersDeactivateErrorSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try MembersDeactivateErrorSerializer().serialize(self)))" + } catch { + return "Failed to generate description for MembersDeactivateError: \(error)" + } + } + } + + public class MembersDeactivateErrorSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: MembersDeactivateError) throws -> JSON { + switch value { + case .userNotFound: + var d = [String: JSON]() + d[".tag"] = .str("user_not_found") + return .dictionary(d) + case .userNotInTeam: + var d = [String: JSON]() + d[".tag"] = .str("user_not_in_team") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + + public func deserialize(_ json: JSON) throws -> MembersDeactivateError { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "user_not_found": + return MembersDeactivateError.userNotFound + case "user_not_in_team": + return MembersDeactivateError.userNotInTeam + case "other": + return MembersDeactivateError.other + default: + return MembersDeactivateError.other + } + default: + throw JSONSerializerError.deserializeError(type: MembersDeactivateError.self, json: json) + } + } + } + + /// The MembersSuspendError union + public enum MembersSuspendError: CustomStringConvertible, JSONRepresentable { + /// No matching user found. The provided team_member_id, email, or external_id does not exist on this team. + case userNotFound + /// The user is not a member of the team. + case userNotInTeam + /// An unspecified error. + case other + /// The user is not active, so it cannot be suspended. + case suspendInactiveUser + /// The user is the last admin of the team, so it cannot be suspended. + case suspendLastAdmin + /// Team is full. The organization has no available licenses. + case teamLicenseLimit + + func json() throws -> JSON { + try MembersSuspendErrorSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try MembersSuspendErrorSerializer().serialize(self)))" + } catch { + return "Failed to generate description for MembersSuspendError: \(error)" + } + } + } + + public class MembersSuspendErrorSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: MembersSuspendError) throws -> JSON { + switch value { + case .userNotFound: + var d = [String: JSON]() + d[".tag"] = .str("user_not_found") + return .dictionary(d) + case .userNotInTeam: + var d = [String: JSON]() + d[".tag"] = .str("user_not_in_team") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + case .suspendInactiveUser: + var d = [String: JSON]() + d[".tag"] = .str("suspend_inactive_user") + return .dictionary(d) + case .suspendLastAdmin: + var d = [String: JSON]() + d[".tag"] = .str("suspend_last_admin") + return .dictionary(d) + case .teamLicenseLimit: + var d = [String: JSON]() + d[".tag"] = .str("team_license_limit") + return .dictionary(d) + } + } + + public func deserialize(_ json: JSON) throws -> MembersSuspendError { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "user_not_found": + return MembersSuspendError.userNotFound + case "user_not_in_team": + return MembersSuspendError.userNotInTeam + case "other": + return MembersSuspendError.other + case "suspend_inactive_user": + return MembersSuspendError.suspendInactiveUser + case "suspend_last_admin": + return MembersSuspendError.suspendLastAdmin + case "team_license_limit": + return MembersSuspendError.teamLicenseLimit + default: + throw JSONSerializerError.unknownTag(type: MembersSuspendError.self, json: json, tag: tag) + } + default: + throw JSONSerializerError.deserializeError(type: MembersSuspendError.self, json: json) + } + } + } + + /// Stable machine-readable reasons used by the terminal row report. + public enum BulkSuspendRowFailure: CustomStringConvertible, JSONRepresentable { + /// No matching user found. The provided team_member_id, email, or external_id does not exist on this team. + case userNotFound + /// The user is not a member of the team. + case userNotInTeam + /// An unspecified error. + case other + /// The user is not active, so it cannot be suspended. + case suspendInactiveUser + /// The user is the last admin of the team, so it cannot be suspended. + case suspendLastAdmin + /// Team is full. The organization has no available licenses. + case teamLicenseLimit + /// An unspecified error. + case protectedActingAdmin + /// An unspecified error. + case permissionChanged + /// An unspecified error. + case suspendFailed + + func json() throws -> JSON { + try BulkSuspendRowFailureSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try BulkSuspendRowFailureSerializer().serialize(self)))" + } catch { + return "Failed to generate description for BulkSuspendRowFailure: \(error)" + } + } + } + + public class BulkSuspendRowFailureSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: BulkSuspendRowFailure) throws -> JSON { + switch value { + case .userNotFound: + var d = [String: JSON]() + d[".tag"] = .str("user_not_found") + return .dictionary(d) + case .userNotInTeam: + var d = [String: JSON]() + d[".tag"] = .str("user_not_in_team") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + case .suspendInactiveUser: + var d = [String: JSON]() + d[".tag"] = .str("suspend_inactive_user") + return .dictionary(d) + case .suspendLastAdmin: + var d = [String: JSON]() + d[".tag"] = .str("suspend_last_admin") + return .dictionary(d) + case .teamLicenseLimit: + var d = [String: JSON]() + d[".tag"] = .str("team_license_limit") + return .dictionary(d) + case .protectedActingAdmin: + var d = [String: JSON]() + d[".tag"] = .str("protected_acting_admin") + return .dictionary(d) + case .permissionChanged: + var d = [String: JSON]() + d[".tag"] = .str("permission_changed") + return .dictionary(d) + case .suspendFailed: + var d = [String: JSON]() + d[".tag"] = .str("suspend_failed") + return .dictionary(d) + } + } + + public func deserialize(_ json: JSON) throws -> BulkSuspendRowFailure { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "user_not_found": + return BulkSuspendRowFailure.userNotFound + case "user_not_in_team": + return BulkSuspendRowFailure.userNotInTeam + case "other": + return BulkSuspendRowFailure.other + case "suspend_inactive_user": + return BulkSuspendRowFailure.suspendInactiveUser + case "suspend_last_admin": + return BulkSuspendRowFailure.suspendLastAdmin + case "team_license_limit": + return BulkSuspendRowFailure.teamLicenseLimit + case "protected_acting_admin": + return BulkSuspendRowFailure.protectedActingAdmin + case "permission_changed": + return BulkSuspendRowFailure.permissionChanged + case "suspend_failed": + return BulkSuspendRowFailure.suspendFailed + default: + throw JSONSerializerError.unknownTag(type: BulkSuspendRowFailure.self, json: json, tag: tag) + } + default: + throw JSONSerializerError.deserializeError(type: BulkSuspendRowFailure.self, json: json) + } + } + } + + /// The terminal outcome for one requested member. Row outcomes are delivered in the report rather than embedded in + /// the status response. + public enum BulkSuspendRowOutcome: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case suspended + /// An unspecified error. + case failed(Team.BulkSuspendRowFailure) + /// An unspecified error. + case unknown + /// An unspecified error. + case other + + func json() throws -> JSON { + try BulkSuspendRowOutcomeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try BulkSuspendRowOutcomeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for BulkSuspendRowOutcome: \(error)" + } + } + } + + public class BulkSuspendRowOutcomeSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: BulkSuspendRowOutcome) throws -> JSON { + switch value { + case .suspended: + var d = [String: JSON]() + d[".tag"] = .str("suspended") + return .dictionary(d) + case .failed(let arg): + var d = try ["failed": Team.BulkSuspendRowFailureSerializer().serialize(arg)] + d[".tag"] = .str("failed") + return .dictionary(d) + case .unknown: + var d = [String: JSON]() + d[".tag"] = .str("unknown") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + + public func deserialize(_ json: JSON) throws -> BulkSuspendRowOutcome { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "suspended": + return BulkSuspendRowOutcome.suspended + case "failed": + let v = try Team.BulkSuspendRowFailureSerializer().deserialize(d["failed"] ?? .null) + return BulkSuspendRowOutcome.failed(v) + case "unknown": + return BulkSuspendRowOutcome.unknown + case "other": + return BulkSuspendRowOutcome.other + default: + return BulkSuspendRowOutcome.other + } + default: + throw JSONSerializerError.deserializeError(type: BulkSuspendRowOutcome.self, json: json) + } + } + } + + /// The BulkSuspendTaskFailure union + public enum BulkSuspendTaskFailure: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case unusableResult + /// An unspecified error. + case other + + func json() throws -> JSON { + try BulkSuspendTaskFailureSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try BulkSuspendTaskFailureSerializer().serialize(self)))" + } catch { + return "Failed to generate description for BulkSuspendTaskFailure: \(error)" + } + } + } + + public class BulkSuspendTaskFailureSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: BulkSuspendTaskFailure) throws -> JSON { + switch value { + case .unusableResult: + var d = [String: JSON]() + d[".tag"] = .str("unusable_result") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + + public func deserialize(_ json: JSON) throws -> BulkSuspendTaskFailure { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "unusable_result": + return BulkSuspendTaskFailure.unusableResult + case "other": + return BulkSuspendTaskFailure.other + default: + return BulkSuspendTaskFailure.other + } + default: + throw JSONSerializerError.deserializeError(type: BulkSuspendTaskFailure.self, json: json) + } + } + } + /// Error returned when getting member custom quota. public enum CustomQuotaError: CustomStringConvertible, JSONRepresentable { /// A maximum of 1000 users can be set for a single call. @@ -842,7 +1664,7 @@ public class Team { /// Input arguments that can be provided for most reports. public class DateRange: CustomStringConvertible, JSONRepresentable { - /// Optional starting date (inclusive). If start_date is None or too long ago, this field will be set to 6 + /// Optional starting date (inclusive). If start_date is None or too long ago, this field will be set to 6 /// months ago. public let startDate: Date? /// Optional ending date (exclusive). @@ -1311,7 +2133,7 @@ public class Team { public let ios: [UInt64?] /// Array of number of linked android devices with activity. public let android: [UInt64?] - /// Array of number of other linked devices (blackberry, windows phone, etc) with activity. + /// Array of number of other linked devices (blackberry, windows phone, etc) with activity. public let other: [UInt64?] /// Array of total number of linked clients with activity. public let total: [UInt64?] @@ -1827,6 +2649,8 @@ public class Team { case hasTeamFileEvents /// Does this team have team selective sync enabled. case hasTeamSelectiveSync + /// Does this team have team member folder. + case hasDistinctMemberHomes /// An unspecified error. case other @@ -1863,6 +2687,10 @@ public class Team { var d = [String: JSON]() d[".tag"] = .str("has_team_selective_sync") return .dictionary(d) + case .hasDistinctMemberHomes: + var d = [String: JSON]() + d[".tag"] = .str("has_distinct_member_homes") + return .dictionary(d) case .other: var d = [String: JSON]() d[".tag"] = .str("other") @@ -1883,6 +2711,8 @@ public class Team { return Feature.hasTeamFileEvents case "has_team_selective_sync": return Feature.hasTeamSelectiveSync + case "has_distinct_member_homes": + return Feature.hasDistinctMemberHomes case "other": return Feature.other default: @@ -1906,6 +2736,8 @@ public class Team { /// An unspecified error. case hasTeamSelectiveSync(Team.HasTeamSelectiveSyncValue) /// An unspecified error. + case hasDistinctMemberHomes(Team.HasDistinctMemberHomesValue) + /// An unspecified error. case other func json() throws -> JSON { @@ -1941,6 +2773,10 @@ public class Team { var d = try ["has_team_selective_sync": Team.HasTeamSelectiveSyncValueSerializer().serialize(arg)] d[".tag"] = .str("has_team_selective_sync") return .dictionary(d) + case .hasDistinctMemberHomes(let arg): + var d = try ["has_distinct_member_homes": Team.HasDistinctMemberHomesValueSerializer().serialize(arg)] + d[".tag"] = .str("has_distinct_member_homes") + return .dictionary(d) case .other: var d = [String: JSON]() d[".tag"] = .str("other") @@ -1965,6 +2801,9 @@ public class Team { case "has_team_selective_sync": let v = try Team.HasTeamSelectiveSyncValueSerializer().deserialize(d["has_team_selective_sync"] ?? .null) return FeatureValue.hasTeamSelectiveSync(v) + case "has_distinct_member_homes": + let v = try Team.HasDistinctMemberHomesValueSerializer().deserialize(d["has_distinct_member_homes"] ?? .null) + return FeatureValue.hasDistinctMemberHomes(v) case "other": return FeatureValue.other default: @@ -2211,19 +3050,19 @@ public class Team { "active_users_28_day": try ArraySerializer(NullableSerializer(Serialization._UInt64Serializer)).serialize(value.activeUsers28Day), "active_users_7_day": try ArraySerializer(NullableSerializer(Serialization._UInt64Serializer)).serialize(value.activeUsers7Day), "active_users_1_day": try ArraySerializer(NullableSerializer(Serialization._UInt64Serializer)).serialize(value.activeUsers1Day), - "active_shared_folders_28_day": try ArraySerializer(NullableSerializer(Serialization._UInt64Serializer)) - .serialize(value.activeSharedFolders28Day), - "active_shared_folders_7_day": try ArraySerializer(NullableSerializer(Serialization._UInt64Serializer)) - .serialize(value.activeSharedFolders7Day), - "active_shared_folders_1_day": try ArraySerializer(NullableSerializer(Serialization._UInt64Serializer)) - .serialize(value.activeSharedFolders1Day), + "active_shared_folders_28_day": try ArraySerializer(NullableSerializer(Serialization._UInt64Serializer)).serialize( + value.activeSharedFolders28Day + ), + "active_shared_folders_7_day": try ArraySerializer(NullableSerializer(Serialization._UInt64Serializer)).serialize(value.activeSharedFolders7Day), + "active_shared_folders_1_day": try ArraySerializer(NullableSerializer(Serialization._UInt64Serializer)).serialize(value.activeSharedFolders1Day), "shared_links_created": try ArraySerializer(NullableSerializer(Serialization._UInt64Serializer)).serialize(value.sharedLinksCreated), - "shared_links_viewed_by_team": try ArraySerializer(NullableSerializer(Serialization._UInt64Serializer)) - .serialize(value.sharedLinksViewedByTeam), - "shared_links_viewed_by_outside_user": try ArraySerializer(NullableSerializer(Serialization._UInt64Serializer)) - .serialize(value.sharedLinksViewedByOutsideUser), - "shared_links_viewed_by_not_logged_in": try ArraySerializer(NullableSerializer(Serialization._UInt64Serializer)) - .serialize(value.sharedLinksViewedByNotLoggedIn), + "shared_links_viewed_by_team": try ArraySerializer(NullableSerializer(Serialization._UInt64Serializer)).serialize(value.sharedLinksViewedByTeam), + "shared_links_viewed_by_outside_user": try ArraySerializer(NullableSerializer(Serialization._UInt64Serializer)).serialize( + value.sharedLinksViewedByOutsideUser + ), + "shared_links_viewed_by_not_logged_in": try ArraySerializer(NullableSerializer(Serialization._UInt64Serializer)).serialize( + value.sharedLinksViewedByNotLoggedIn + ), "shared_links_viewed_total": try ArraySerializer(NullableSerializer(Serialization._UInt64Serializer)).serialize(value.sharedLinksViewedTotal), ] return .dictionary(output) @@ -2236,28 +3075,33 @@ public class Team { let adds = try ArraySerializer(NullableSerializer(Serialization._UInt64Serializer)).deserialize(dict["adds"] ?? .null) let edits = try ArraySerializer(NullableSerializer(Serialization._UInt64Serializer)).deserialize(dict["edits"] ?? .null) let deletes = try ArraySerializer(NullableSerializer(Serialization._UInt64Serializer)).deserialize(dict["deletes"] ?? .null) - let activeUsers28Day = try ArraySerializer(NullableSerializer(Serialization._UInt64Serializer)) - .deserialize(dict["active_users_28_day"] ?? .null) - let activeUsers7Day = try ArraySerializer(NullableSerializer(Serialization._UInt64Serializer)) - .deserialize(dict["active_users_7_day"] ?? .null) - let activeUsers1Day = try ArraySerializer(NullableSerializer(Serialization._UInt64Serializer)) - .deserialize(dict["active_users_1_day"] ?? .null) - let activeSharedFolders28Day = try ArraySerializer(NullableSerializer(Serialization._UInt64Serializer)) - .deserialize(dict["active_shared_folders_28_day"] ?? .null) - let activeSharedFolders7Day = try ArraySerializer(NullableSerializer(Serialization._UInt64Serializer)) - .deserialize(dict["active_shared_folders_7_day"] ?? .null) - let activeSharedFolders1Day = try ArraySerializer(NullableSerializer(Serialization._UInt64Serializer)) - .deserialize(dict["active_shared_folders_1_day"] ?? .null) - let sharedLinksCreated = try ArraySerializer(NullableSerializer(Serialization._UInt64Serializer)) - .deserialize(dict["shared_links_created"] ?? .null) - let sharedLinksViewedByTeam = try ArraySerializer(NullableSerializer(Serialization._UInt64Serializer)) - .deserialize(dict["shared_links_viewed_by_team"] ?? .null) - let sharedLinksViewedByOutsideUser = try ArraySerializer(NullableSerializer(Serialization._UInt64Serializer)) - .deserialize(dict["shared_links_viewed_by_outside_user"] ?? .null) - let sharedLinksViewedByNotLoggedIn = try ArraySerializer(NullableSerializer(Serialization._UInt64Serializer)) - .deserialize(dict["shared_links_viewed_by_not_logged_in"] ?? .null) - let sharedLinksViewedTotal = try ArraySerializer(NullableSerializer(Serialization._UInt64Serializer)) - .deserialize(dict["shared_links_viewed_total"] ?? .null) + let activeUsers28Day = try ArraySerializer(NullableSerializer(Serialization._UInt64Serializer)).deserialize(dict["active_users_28_day"] ?? .null) + let activeUsers7Day = try ArraySerializer(NullableSerializer(Serialization._UInt64Serializer)).deserialize(dict["active_users_7_day"] ?? .null) + let activeUsers1Day = try ArraySerializer(NullableSerializer(Serialization._UInt64Serializer)).deserialize(dict["active_users_1_day"] ?? .null) + let activeSharedFolders28Day = try ArraySerializer(NullableSerializer(Serialization._UInt64Serializer)).deserialize( + dict["active_shared_folders_28_day"] ?? .null + ) + let activeSharedFolders7Day = try ArraySerializer(NullableSerializer(Serialization._UInt64Serializer)).deserialize( + dict["active_shared_folders_7_day"] ?? .null + ) + let activeSharedFolders1Day = try ArraySerializer(NullableSerializer(Serialization._UInt64Serializer)).deserialize( + dict["active_shared_folders_1_day"] ?? .null + ) + let sharedLinksCreated = try ArraySerializer(NullableSerializer(Serialization._UInt64Serializer)).deserialize( + dict["shared_links_created"] ?? .null + ) + let sharedLinksViewedByTeam = try ArraySerializer(NullableSerializer(Serialization._UInt64Serializer)).deserialize( + dict["shared_links_viewed_by_team"] ?? .null + ) + let sharedLinksViewedByOutsideUser = try ArraySerializer(NullableSerializer(Serialization._UInt64Serializer)).deserialize( + dict["shared_links_viewed_by_outside_user"] ?? .null + ) + let sharedLinksViewedByNotLoggedIn = try ArraySerializer(NullableSerializer(Serialization._UInt64Serializer)).deserialize( + dict["shared_links_viewed_by_not_logged_in"] ?? .null + ) + let sharedLinksViewedTotal = try ArraySerializer(NullableSerializer(Serialization._UInt64Serializer)).deserialize( + dict["shared_links_viewed_total"] ?? .null + ) return GetActivityReport( startDate: startDate, adds: adds, @@ -2397,8 +3241,7 @@ public class Team { let teamSize = try ArraySerializer(NullableSerializer(Serialization._UInt64Serializer)).deserialize(dict["team_size"] ?? .null) let pendingInvites = try ArraySerializer(NullableSerializer(Serialization._UInt64Serializer)).deserialize(dict["pending_invites"] ?? .null) let membersJoined = try ArraySerializer(NullableSerializer(Serialization._UInt64Serializer)).deserialize(dict["members_joined"] ?? .null) - let suspendedMembers = try ArraySerializer(NullableSerializer(Serialization._UInt64Serializer)) - .deserialize(dict["suspended_members"] ?? .null) + let suspendedMembers = try ArraySerializer(NullableSerializer(Serialization._UInt64Serializer)).deserialize(dict["suspended_members"] ?? .null) let licenses = try ArraySerializer(NullableSerializer(Serialization._UInt64Serializer)).deserialize(dict["licenses"] ?? .null) return GetMembershipReport( startDate: startDate, @@ -2604,8 +3447,7 @@ public class Team { let groupName = try Serialization._StringSerializer.deserialize(dict["group_name"] ?? .null) let addCreatorAsOwner = try Serialization._BoolSerializer.deserialize(dict["add_creator_as_owner"] ?? .number(0)) let groupExternalId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["group_external_id"] ?? .null) - let groupManagementType = try NullableSerializer(TeamCommon.GroupManagementTypeSerializer()) - .deserialize(dict["group_management_type"] ?? .null) + let groupManagementType = try NullableSerializer(TeamCommon.GroupManagementTypeSerializer()).deserialize(dict["group_management_type"] ?? .null) return GroupCreateArg( groupName: groupName, addCreatorAsOwner: addCreatorAsOwner, @@ -3195,8 +4037,8 @@ public class Team { /// The IncludeMembersArg struct public class IncludeMembersArg: CustomStringConvertible, JSONRepresentable { - /// Whether to return the list of members in the group. Note that the default value will cause all the group - /// members to be returned in the response. This may take a long time for large groups. + /// Whether to return the list of members in the group. Note that the default value will cause all the group + /// members to be returned in the response. This may take a long time for large groups. public let returnMembers: Bool public init(returnMembers: Bool = true) { self.returnMembers = returnMembers @@ -3384,8 +4226,7 @@ public class Team { case "user_must_be_active_to_be_owner": return GroupMembersAddError.userMustBeActiveToBeOwner case "user_cannot_be_manager_of_company_managed_group": - let v = try ArraySerializer(Serialization._StringSerializer) - .deserialize(d["user_cannot_be_manager_of_company_managed_group"] ?? .null) + let v = try ArraySerializer(Serialization._StringSerializer).deserialize(d["user_cannot_be_manager_of_company_managed_group"] ?? .null) return GroupMembersAddError.userCannotBeManagerOfCompanyManagedGroup(v) default: throw JSONSerializerError.unknownTag(type: GroupMembersAddError.self, json: json, tag: tag) @@ -3400,9 +4241,9 @@ public class Team { public class GroupMembersChangeResult: CustomStringConvertible, JSONRepresentable { /// The group info after member change operation has been performed. public let groupInfo: Team.GroupFullInfo - /// For legacy purposes async_job_id will always return one space ' '. Formerly, it was an ID that was used to - /// obtain the status of granting/revoking group-owned resources. It's no longer necessary because the - /// async processing now happens automatically. + /// Field is deprecated. For legacy purposes async_job_id will always return one space ' '. Formerly, it was an + /// ID that was used to obtain the status of granting/revoking group-owned resources. It's no longer + /// necessary because the async processing now happens automatically. public let asyncJobId: String public init(groupInfo: Team.GroupFullInfo, asyncJobId: String) { self.groupInfo = groupInfo @@ -3705,8 +4546,8 @@ public class Team { public class GroupMembersSetAccessTypeArg: Team.GroupMemberSelector { /// New group access type the user will have. public let accessType: Team.GroupAccessType - /// Whether to return the list of members in the group. Note that the default value will cause all the group - /// members to be returned in the response. This may take a long time for large groups. + /// Whether to return the list of members in the group. Note that the default value will cause all the group + /// members to be returned in the response. This may take a long time for large groups. public let returnMembers: Bool public init(group: Team.GroupSelector, user: Team.UserSelectorArg, accessType: Team.GroupAccessType, returnMembers: Bool = true) { self.accessType = accessType @@ -3860,8 +4701,9 @@ public class Team { let returnMembers = try Serialization._BoolSerializer.deserialize(dict["return_members"] ?? .number(1)) let newGroupName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["new_group_name"] ?? .null) let newGroupExternalId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["new_group_external_id"] ?? .null) - let newGroupManagementType = try NullableSerializer(TeamCommon.GroupManagementTypeSerializer()) - .deserialize(dict["new_group_management_type"] ?? .null) + let newGroupManagementType = try NullableSerializer(TeamCommon.GroupManagementTypeSerializer()).deserialize( + dict["new_group_management_type"] ?? .null + ) return GroupUpdateArgs( group: group, returnMembers: returnMembers, @@ -4579,6 +5421,60 @@ public class Team { } } + /// The value for hasDistinctMemberHomes in Feature. + public enum HasDistinctMemberHomesValue: CustomStringConvertible, JSONRepresentable { + /// Does this team have distinct team member homes. + case hasDistinctMemberHomes(Bool) + /// An unspecified error. + case other + + func json() throws -> JSON { + try HasDistinctMemberHomesValueSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try HasDistinctMemberHomesValueSerializer().serialize(self)))" + } catch { + return "Failed to generate description for HasDistinctMemberHomesValue: \(error)" + } + } + } + + public class HasDistinctMemberHomesValueSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: HasDistinctMemberHomesValue) throws -> JSON { + switch value { + case .hasDistinctMemberHomes(let arg): + var d = try ["has_distinct_member_homes": Serialization._BoolSerializer.serialize(arg)] + d[".tag"] = .str("has_distinct_member_homes") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + + public func deserialize(_ json: JSON) throws -> HasDistinctMemberHomesValue { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "has_distinct_member_homes": + let v = try Serialization._BoolSerializer.deserialize(d["has_distinct_member_homes"] ?? .null) + return HasDistinctMemberHomesValue.hasDistinctMemberHomes(v) + case "other": + return HasDistinctMemberHomesValue.other + default: + return HasDistinctMemberHomesValue.other + } + default: + throw JSONSerializerError.deserializeError(type: HasDistinctMemberHomesValue.self, json: json) + } + } + } + /// The value for hasTeamFileEvents in Feature. public enum HasTeamFileEventsValue: CustomStringConvertible, JSONRepresentable { /// Does this team have file events. @@ -6460,8 +7356,7 @@ public class Team { public func serialize(_ value: ListMemberDevicesResult) throws -> JSON { let output = [ "active_web_sessions": try NullableSerializer(ArraySerializer(Team.ActiveWebSessionSerializer())).serialize(value.activeWebSessions), - "desktop_client_sessions": try NullableSerializer(ArraySerializer(Team.DesktopClientSessionSerializer())) - .serialize(value.desktopClientSessions), + "desktop_client_sessions": try NullableSerializer(ArraySerializer(Team.DesktopClientSessionSerializer())).serialize(value.desktopClientSessions), "mobile_client_sessions": try NullableSerializer(ArraySerializer(Team.MobileClientSessionSerializer())).serialize(value.mobileClientSessions), ] return .dictionary(output) @@ -6470,12 +7365,15 @@ public class Team { public func deserialize(_ json: JSON) throws -> ListMemberDevicesResult { switch json { case .dictionary(let dict): - let activeWebSessions = try NullableSerializer(ArraySerializer(Team.ActiveWebSessionSerializer())) - .deserialize(dict["active_web_sessions"] ?? .null) - let desktopClientSessions = try NullableSerializer(ArraySerializer(Team.DesktopClientSessionSerializer())) - .deserialize(dict["desktop_client_sessions"] ?? .null) - let mobileClientSessions = try NullableSerializer(ArraySerializer(Team.MobileClientSessionSerializer())) - .deserialize(dict["mobile_client_sessions"] ?? .null) + let activeWebSessions = try NullableSerializer(ArraySerializer(Team.ActiveWebSessionSerializer())).deserialize( + dict["active_web_sessions"] ?? .null + ) + let desktopClientSessions = try NullableSerializer(ArraySerializer(Team.DesktopClientSessionSerializer())).deserialize( + dict["desktop_client_sessions"] ?? .null + ) + let mobileClientSessions = try NullableSerializer(ArraySerializer(Team.MobileClientSessionSerializer())).deserialize( + dict["mobile_client_sessions"] ?? .null + ) return ListMemberDevicesResult( activeWebSessions: activeWebSessions, desktopClientSessions: desktopClientSessions, @@ -7206,9 +8104,9 @@ public class Team { ) { stringValidator(maxLength: 255, pattern: "^['#&A-Za-z0-9._%+-]+@[A-Za-z0-9-][A-Za-z0-9.-]*\\.[A-Za-z]{2,15}$")(memberEmail) self.memberEmail = memberEmail - nullableValidator(stringValidator(maxLength: 100, pattern: "[^/:?*<>\"|]*"))(memberGivenName) + nullableValidator(stringValidator(maxLength: 50, pattern: "[^/:?*<>\"|]*"))(memberGivenName) self.memberGivenName = memberGivenName - nullableValidator(stringValidator(maxLength: 100, pattern: "[^/:?*<>\"|]*"))(memberSurname) + nullableValidator(stringValidator(maxLength: 50, pattern: "[^/:?*<>\"|]*"))(memberSurname) self.memberSurname = memberSurname nullableValidator(stringValidator(maxLength: 64))(memberExternalId) self.memberExternalId = memberExternalId @@ -7901,10 +8799,8 @@ public class Team { case .dictionary(let dict): let teamMemberId = try Serialization._StringSerializer.deserialize(dict["team_member_id"] ?? .null) let webSessions = try NullableSerializer(ArraySerializer(Team.ActiveWebSessionSerializer())).deserialize(dict["web_sessions"] ?? .null) - let desktopClients = try NullableSerializer(ArraySerializer(Team.DesktopClientSessionSerializer())) - .deserialize(dict["desktop_clients"] ?? .null) - let mobileClients = try NullableSerializer(ArraySerializer(Team.MobileClientSessionSerializer())) - .deserialize(dict["mobile_clients"] ?? .null) + let desktopClients = try NullableSerializer(ArraySerializer(Team.DesktopClientSessionSerializer())).deserialize(dict["desktop_clients"] ?? .null) + let mobileClients = try NullableSerializer(ArraySerializer(Team.MobileClientSessionSerializer())).deserialize(dict["mobile_clients"] ?? .null) return MemberDevices(teamMemberId: teamMemberId, webSessions: webSessions, desktopClients: desktopClients, mobileClients: mobileClients) default: throw JSONSerializerError.deserializeError(type: MemberDevices.self, json: json) @@ -8083,8 +8979,9 @@ public class Team { let membershipType = try Team.TeamMembershipTypeSerializer().deserialize(dict["membership_type"] ?? .null) let externalId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["external_id"] ?? .null) let accountId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["account_id"] ?? .null) - let secondaryEmails = try NullableSerializer(ArraySerializer(SecondaryEmails.SecondaryEmailSerializer())) - .deserialize(dict["secondary_emails"] ?? .null) + let secondaryEmails = try NullableSerializer(ArraySerializer(SecondaryEmails.SecondaryEmailSerializer())).deserialize( + dict["secondary_emails"] ?? .null + ) let invitedOn = try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).deserialize(dict["invited_on"] ?? .null) let joinedOn = try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).deserialize(dict["joined_on"] ?? .null) let suspendedOn = try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).deserialize(dict["suspended_on"] ?? .null) @@ -8114,51 +9011,6 @@ public class Team { } } - /// Error that can be returned whenever a struct derived from UserSelectorArg is used. - public enum UserSelectorError: CustomStringConvertible, JSONRepresentable { - /// No matching user found. The provided team_member_id, email, or external_id does not exist on this team. - case userNotFound - - func json() throws -> JSON { - try UserSelectorErrorSerializer().serialize(self) - } - - public var description: String { - do { - return "\(SerializeUtil.prepareJSONForSerialization(try UserSelectorErrorSerializer().serialize(self)))" - } catch { - return "Failed to generate description for UserSelectorError: \(error)" - } - } - } - - public class UserSelectorErrorSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: UserSelectorError) throws -> JSON { - switch value { - case .userNotFound: - var d = [String: JSON]() - d[".tag"] = .str("user_not_found") - return .dictionary(d) - } - } - - public func deserialize(_ json: JSON) throws -> UserSelectorError { - switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "user_not_found": - return UserSelectorError.userNotFound - default: - throw JSONSerializerError.unknownTag(type: UserSelectorError.self, json: json, tag: tag) - } - default: - throw JSONSerializerError.deserializeError(type: UserSelectorError.self, json: json) - } - } - } - /// The MemberSelectorError union public enum MemberSelectorError: CustomStringConvertible, JSONRepresentable { /// No matching user found. The provided team_member_id, email, or external_id does not exist on this team. @@ -8715,31 +9567,37 @@ public class Team { } } - /// The MembersDeactivateError union - public enum MembersDeactivateError: CustomStringConvertible, JSONRepresentable { + /// The MembersPermanentlyDeleteFilesError union + public enum MembersPermanentlyDeleteFilesError: CustomStringConvertible, JSONRepresentable { /// No matching user found. The provided team_member_id, email, or external_id does not exist on this team. case userNotFound /// The user is not a member of the team. case userNotInTeam /// An unspecified error. case other + /// Cannot permanently delete files while it's being transferred. + case transferInProgress + /// Cannot permanently delete files that have already been transferred. + case alreadyTransferred + /// Cannot permanently delete files that have already been transferred or deleted. + case alreadyTransferredOrDeleted func json() throws -> JSON { - try MembersDeactivateErrorSerializer().serialize(self) + try MembersPermanentlyDeleteFilesErrorSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MembersDeactivateErrorSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MembersPermanentlyDeleteFilesErrorSerializer().serialize(self)))" } catch { - return "Failed to generate description for MembersDeactivateError: \(error)" + return "Failed to generate description for MembersPermanentlyDeleteFilesError: \(error)" } } } - public class MembersDeactivateErrorSerializer: JSONSerializer { + public class MembersPermanentlyDeleteFilesErrorSerializer: JSONSerializer { public init() {} - public func serialize(_ value: MembersDeactivateError) throws -> JSON { + public func serialize(_ value: MembersPermanentlyDeleteFilesError) throws -> JSON { switch value { case .userNotFound: var d = [String: JSON]() @@ -8753,25 +9611,136 @@ public class Team { var d = [String: JSON]() d[".tag"] = .str("other") return .dictionary(d) + case .transferInProgress: + var d = [String: JSON]() + d[".tag"] = .str("transfer_in_progress") + return .dictionary(d) + case .alreadyTransferred: + var d = [String: JSON]() + d[".tag"] = .str("already_transferred") + return .dictionary(d) + case .alreadyTransferredOrDeleted: + var d = [String: JSON]() + d[".tag"] = .str("already_transferred_or_deleted") + return .dictionary(d) } } - public func deserialize(_ json: JSON) throws -> MembersDeactivateError { + public func deserialize(_ json: JSON) throws -> MembersPermanentlyDeleteFilesError { switch json { case .dictionary(let d): let tag = try Serialization.getTag(d) switch tag { case "user_not_found": - return MembersDeactivateError.userNotFound + return MembersPermanentlyDeleteFilesError.userNotFound case "user_not_in_team": - return MembersDeactivateError.userNotInTeam + return MembersPermanentlyDeleteFilesError.userNotInTeam case "other": - return MembersDeactivateError.other + return MembersPermanentlyDeleteFilesError.other + case "transfer_in_progress": + return MembersPermanentlyDeleteFilesError.transferInProgress + case "already_transferred": + return MembersPermanentlyDeleteFilesError.alreadyTransferred + case "already_transferred_or_deleted": + return MembersPermanentlyDeleteFilesError.alreadyTransferredOrDeleted default: - return MembersDeactivateError.other + throw JSONSerializerError.unknownTag(type: MembersPermanentlyDeleteFilesError.self, json: json, tag: tag) } default: - throw JSONSerializerError.deserializeError(type: MembersDeactivateError.self, json: json) + throw JSONSerializerError.deserializeError(type: MembersPermanentlyDeleteFilesError.self, json: json) + } + } + } + + /// The MembersDeleteFormerMemberFilesError union + public enum MembersDeleteFormerMemberFilesError: CustomStringConvertible, JSONRepresentable { + /// No matching user found. The provided team_member_id, email, or external_id does not exist on this team. + case userNotFound + /// The user is not a member of the team. + case userNotInTeam + /// An unspecified error. + case other + /// Cannot permanently delete files while it's being transferred. + case transferInProgress + /// Cannot permanently delete files that have already been transferred. + case alreadyTransferred + /// Cannot permanently delete files that have already been transferred or deleted. + case alreadyTransferredOrDeleted + /// User has not been removed from the team. + case userNotRemoved + + func json() throws -> JSON { + try MembersDeleteFormerMemberFilesErrorSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try MembersDeleteFormerMemberFilesErrorSerializer().serialize(self)))" + } catch { + return "Failed to generate description for MembersDeleteFormerMemberFilesError: \(error)" + } + } + } + + public class MembersDeleteFormerMemberFilesErrorSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: MembersDeleteFormerMemberFilesError) throws -> JSON { + switch value { + case .userNotFound: + var d = [String: JSON]() + d[".tag"] = .str("user_not_found") + return .dictionary(d) + case .userNotInTeam: + var d = [String: JSON]() + d[".tag"] = .str("user_not_in_team") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + case .transferInProgress: + var d = [String: JSON]() + d[".tag"] = .str("transfer_in_progress") + return .dictionary(d) + case .alreadyTransferred: + var d = [String: JSON]() + d[".tag"] = .str("already_transferred") + return .dictionary(d) + case .alreadyTransferredOrDeleted: + var d = [String: JSON]() + d[".tag"] = .str("already_transferred_or_deleted") + return .dictionary(d) + case .userNotRemoved: + var d = [String: JSON]() + d[".tag"] = .str("user_not_removed") + return .dictionary(d) + } + } + + public func deserialize(_ json: JSON) throws -> MembersDeleteFormerMemberFilesError { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "user_not_found": + return MembersDeleteFormerMemberFilesError.userNotFound + case "user_not_in_team": + return MembersDeleteFormerMemberFilesError.userNotInTeam + case "other": + return MembersDeleteFormerMemberFilesError.other + case "transfer_in_progress": + return MembersDeleteFormerMemberFilesError.transferInProgress + case "already_transferred": + return MembersDeleteFormerMemberFilesError.alreadyTransferred + case "already_transferred_or_deleted": + return MembersDeleteFormerMemberFilesError.alreadyTransferredOrDeleted + case "user_not_removed": + return MembersDeleteFormerMemberFilesError.userNotRemoved + default: + throw JSONSerializerError.unknownTag(type: MembersDeleteFormerMemberFilesError.self, json: json, tag: tag) + } + default: + throw JSONSerializerError.deserializeError(type: MembersDeleteFormerMemberFilesError.self, json: json) } } } @@ -8881,7 +9850,48 @@ public class Team { return MembersDeleteProfilePhotoError.other } default: - throw JSONSerializerError.deserializeError(type: MembersDeleteProfilePhotoError.self, json: json) + throw JSONSerializerError.deserializeError(type: MembersDeleteProfilePhotoError.self, json: json) + } + } + } + + /// Exactly one of team_member_id, email, or external_id must be provided to identify a former team member. + public class MembersFormerMemberArg: CustomStringConvertible, JSONRepresentable { + /// Identity of user whose files will be permanently deleted. + public let user: Team.UserSelectorArg + public init(user: Team.UserSelectorArg) { + self.user = user + } + + func json() throws -> JSON { + try MembersFormerMemberArgSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try MembersFormerMemberArgSerializer().serialize(self)))" + } catch { + return "Failed to generate description for MembersFormerMemberArg: \(error)" + } + } + } + + public class MembersFormerMemberArgSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: MembersFormerMemberArg) throws -> JSON { + let output = [ + "user": try Team.UserSelectorArgSerializer().serialize(value.user), + ] + return .dictionary(output) + } + + public func deserialize(_ json: JSON) throws -> MembersFormerMemberArg { + switch json { + case .dictionary(let dict): + let user = try Team.UserSelectorArgSerializer().deserialize(dict["user"] ?? .null) + return MembersFormerMemberArg(user: user) + default: + throw JSONSerializerError.deserializeError(type: MembersFormerMemberArg.self, json: json) } } } @@ -9732,7 +10742,7 @@ public class Team { /// argument was provided, then this argument must be provided as well. public let transferAdminId: Team.UserSelectorArg? /// Downgrade the member to a Basic account. The user will retain the email address associated with their - /// Dropbox account and data in their account that is not restricted to team members. In order to keep + /// Dropbox account and data in their account that is not restricted to team members. In order to keep /// the account the argument wipeData should be set to false. public let keepAccount: Bool /// If provided, allows removed users to keep access to Dropbox folders (not Dropbox Paper folders) already @@ -9740,18 +10750,23 @@ public class Team { /// will not retain access to folders that do not allow external sharing. In order to keep the sharing /// relationships, the arguments wipeData should be set to false and keepAccount should be set to true. public let retainTeamShares: Bool + /// Permanently delete the data in the deleted member's account. After permanent deletion, the data is no longer + /// available to be transferred to a different user. + public let permanentlyDeleteFiles: Bool public init( user: Team.UserSelectorArg, wipeData: Bool = true, transferDestId: Team.UserSelectorArg? = nil, transferAdminId: Team.UserSelectorArg? = nil, keepAccount: Bool = false, - retainTeamShares: Bool = false + retainTeamShares: Bool = false, + permanentlyDeleteFiles: Bool = false ) { self.transferDestId = transferDestId self.transferAdminId = transferAdminId self.keepAccount = keepAccount self.retainTeamShares = retainTeamShares + self.permanentlyDeleteFiles = permanentlyDeleteFiles super.init(user: user, wipeData: wipeData) } @@ -9774,6 +10789,7 @@ public class Team { "transfer_admin_id": try NullableSerializer(Team.UserSelectorArgSerializer()).serialize(value.transferAdminId), "keep_account": try Serialization._BoolSerializer.serialize(value.keepAccount), "retain_team_shares": try Serialization._BoolSerializer.serialize(value.retainTeamShares), + "permanently_delete_files": try Serialization._BoolSerializer.serialize(value.permanentlyDeleteFiles), ] return .dictionary(output) } @@ -9787,13 +10803,15 @@ public class Team { let transferAdminId = try NullableSerializer(Team.UserSelectorArgSerializer()).deserialize(dict["transfer_admin_id"] ?? .null) let keepAccount = try Serialization._BoolSerializer.deserialize(dict["keep_account"] ?? .number(0)) let retainTeamShares = try Serialization._BoolSerializer.deserialize(dict["retain_team_shares"] ?? .number(0)) + let permanentlyDeleteFiles = try Serialization._BoolSerializer.deserialize(dict["permanently_delete_files"] ?? .number(0)) return MembersRemoveArg( user: user, wipeData: wipeData, transferDestId: transferDestId, transferAdminId: transferAdminId, keepAccount: keepAccount, - retainTeamShares: retainTeamShares + retainTeamShares: retainTeamShares, + permanentlyDeleteFiles: permanentlyDeleteFiles ) default: throw JSONSerializerError.deserializeError(type: MembersRemoveArg.self, json: json) @@ -9809,6 +10827,12 @@ public class Team { case userNotInTeam /// An unspecified error. case other + /// Cannot permanently delete files while it's being transferred. + case transferInProgress + /// Cannot permanently delete files that have already been transferred. + case alreadyTransferred + /// Cannot permanently delete files that have already been transferred or deleted. + case alreadyTransferredOrDeleted /// Expected removed user and transfer_dest user to be different. case removedAndTransferDestShouldDiffer /// Expected removed user and transfer_admin user to be different. @@ -9857,6 +10881,18 @@ public class Team { var d = [String: JSON]() d[".tag"] = .str("other") return .dictionary(d) + case .transferInProgress: + var d = [String: JSON]() + d[".tag"] = .str("transfer_in_progress") + return .dictionary(d) + case .alreadyTransferred: + var d = [String: JSON]() + d[".tag"] = .str("already_transferred") + return .dictionary(d) + case .alreadyTransferredOrDeleted: + var d = [String: JSON]() + d[".tag"] = .str("already_transferred_or_deleted") + return .dictionary(d) case .removedAndTransferDestShouldDiffer: var d = [String: JSON]() d[".tag"] = .str("removed_and_transfer_dest_should_differ") @@ -9907,6 +10943,12 @@ public class Team { return MembersTransferFilesError.userNotInTeam case "other": return MembersTransferFilesError.other + case "transfer_in_progress": + return MembersTransferFilesError.transferInProgress + case "already_transferred": + return MembersTransferFilesError.alreadyTransferred + case "already_transferred_or_deleted": + return MembersTransferFilesError.alreadyTransferredOrDeleted case "removed_and_transfer_dest_should_differ": return MembersTransferFilesError.removedAndTransferDestShouldDiffer case "removed_and_transfer_admin_should_differ": @@ -9942,6 +10984,12 @@ public class Team { case userNotInTeam /// An unspecified error. case other + /// Cannot permanently delete files while it's being transferred. + case transferInProgress + /// Cannot permanently delete files that have already been transferred. + case alreadyTransferred + /// Cannot permanently delete files that have already been transferred or deleted. + case alreadyTransferredOrDeleted /// Expected removed user and transfer_dest user to be different. case removedAndTransferDestShouldDiffer /// Expected removed user and transfer_admin user to be different. @@ -9967,6 +11015,9 @@ public class Team { /// Cannot keep account and delete the data at the same time. To keep the account the argument wipe_data should /// be set to false. case cannotKeepAccountAndDeleteData + /// Cannot keep account and permanently delete the data at the same time. To keep the account the argument + /// permanently_delete_files should be set to false. + case cannotKeepAccountAndPermanentlyDelete /// The email address of the user is too long to be disabled. case emailAddressTooLongToBeDisabled /// Cannot keep account of an invited user. @@ -9988,6 +11039,11 @@ public class Team { /// To convert this member to a Basic account, they'll first need to sign in to Dropbox and agree to the terms /// of service. case cannotKeepAccountRequiredToSignTos + /// Cannot permanently delete files and transfer the data to another user at the same time. + case cannotPermanentlyDeleteAndTransfer + /// This user is the active destination of an in-progress file transfer. Wait for the transfer to complete + /// before removing this member. + case memberIsTransferDestination func json() throws -> JSON { try MembersRemoveErrorSerializer().serialize(self) @@ -10018,6 +11074,18 @@ public class Team { var d = [String: JSON]() d[".tag"] = .str("other") return .dictionary(d) + case .transferInProgress: + var d = [String: JSON]() + d[".tag"] = .str("transfer_in_progress") + return .dictionary(d) + case .alreadyTransferred: + var d = [String: JSON]() + d[".tag"] = .str("already_transferred") + return .dictionary(d) + case .alreadyTransferredOrDeleted: + var d = [String: JSON]() + d[".tag"] = .str("already_transferred_or_deleted") + return .dictionary(d) case .removedAndTransferDestShouldDiffer: var d = [String: JSON]() d[".tag"] = .str("removed_and_transfer_dest_should_differ") @@ -10066,6 +11134,10 @@ public class Team { var d = [String: JSON]() d[".tag"] = .str("cannot_keep_account_and_delete_data") return .dictionary(d) + case .cannotKeepAccountAndPermanentlyDelete: + var d = [String: JSON]() + d[".tag"] = .str("cannot_keep_account_and_permanently_delete") + return .dictionary(d) case .emailAddressTooLongToBeDisabled: var d = [String: JSON]() d[".tag"] = .str("email_address_too_long_to_be_disabled") @@ -10098,6 +11170,14 @@ public class Team { var d = [String: JSON]() d[".tag"] = .str("cannot_keep_account_required_to_sign_tos") return .dictionary(d) + case .cannotPermanentlyDeleteAndTransfer: + var d = [String: JSON]() + d[".tag"] = .str("cannot_permanently_delete_and_transfer") + return .dictionary(d) + case .memberIsTransferDestination: + var d = [String: JSON]() + d[".tag"] = .str("member_is_transfer_destination") + return .dictionary(d) } } @@ -10112,6 +11192,12 @@ public class Team { return MembersRemoveError.userNotInTeam case "other": return MembersRemoveError.other + case "transfer_in_progress": + return MembersRemoveError.transferInProgress + case "already_transferred": + return MembersRemoveError.alreadyTransferred + case "already_transferred_or_deleted": + return MembersRemoveError.alreadyTransferredOrDeleted case "removed_and_transfer_dest_should_differ": return MembersRemoveError.removedAndTransferDestShouldDiffer case "removed_and_transfer_admin_should_differ": @@ -10136,6 +11222,8 @@ public class Team { return MembersRemoveError.cannotKeepAccountAndTransfer case "cannot_keep_account_and_delete_data": return MembersRemoveError.cannotKeepAccountAndDeleteData + case "cannot_keep_account_and_permanently_delete": + return MembersRemoveError.cannotKeepAccountAndPermanentlyDelete case "email_address_too_long_to_be_disabled": return MembersRemoveError.emailAddressTooLongToBeDisabled case "cannot_keep_invited_user_account": @@ -10152,6 +11240,10 @@ public class Team { return MembersRemoveError.cannotKeepAccountUnderLegalHold case "cannot_keep_account_required_to_sign_tos": return MembersRemoveError.cannotKeepAccountRequiredToSignTos + case "cannot_permanently_delete_and_transfer": + return MembersRemoveError.cannotPermanentlyDeleteAndTransfer + case "member_is_transfer_destination": + return MembersRemoveError.memberIsTransferDestination default: throw JSONSerializerError.unknownTag(type: MembersRemoveError.self, json: json, tag: tag) } @@ -10611,9 +11703,9 @@ public class Team { self.newEmail = newEmail nullableValidator(stringValidator(maxLength: 64))(newExternalId) self.newExternalId = newExternalId - nullableValidator(stringValidator(maxLength: 100, pattern: "[^/:?*<>\"|]*"))(newGivenName) + nullableValidator(stringValidator(maxLength: 50, pattern: "[^/:?*<>\"|]*"))(newGivenName) self.newGivenName = newGivenName - nullableValidator(stringValidator(maxLength: 100, pattern: "[^/:?*<>\"|]*"))(newSurname) + nullableValidator(stringValidator(maxLength: 50, pattern: "[^/:?*<>\"|]*"))(newSurname) self.newSurname = newSurname nullableValidator(stringValidator())(newPersistentId) self.newPersistentId = newPersistentId @@ -10657,8 +11749,7 @@ public class Team { let newGivenName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["new_given_name"] ?? .null) let newSurname = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["new_surname"] ?? .null) let newPersistentId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["new_persistent_id"] ?? .null) - let newIsDirectoryRestricted = try NullableSerializer(Serialization._BoolSerializer) - .deserialize(dict["new_is_directory_restricted"] ?? .null) + let newIsDirectoryRestricted = try NullableSerializer(Serialization._BoolSerializer).deserialize(dict["new_is_directory_restricted"] ?? .null) return MembersSetProfileArg( user: user, newEmail: newEmail, @@ -10932,91 +12023,6 @@ public class Team { } } - /// The MembersSuspendError union - public enum MembersSuspendError: CustomStringConvertible, JSONRepresentable { - /// No matching user found. The provided team_member_id, email, or external_id does not exist on this team. - case userNotFound - /// The user is not a member of the team. - case userNotInTeam - /// An unspecified error. - case other - /// The user is not active, so it cannot be suspended. - case suspendInactiveUser - /// The user is the last admin of the team, so it cannot be suspended. - case suspendLastAdmin - /// Team is full. The organization has no available licenses. - case teamLicenseLimit - - func json() throws -> JSON { - try MembersSuspendErrorSerializer().serialize(self) - } - - public var description: String { - do { - return "\(SerializeUtil.prepareJSONForSerialization(try MembersSuspendErrorSerializer().serialize(self)))" - } catch { - return "Failed to generate description for MembersSuspendError: \(error)" - } - } - } - - public class MembersSuspendErrorSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MembersSuspendError) throws -> JSON { - switch value { - case .userNotFound: - var d = [String: JSON]() - d[".tag"] = .str("user_not_found") - return .dictionary(d) - case .userNotInTeam: - var d = [String: JSON]() - d[".tag"] = .str("user_not_in_team") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) - case .suspendInactiveUser: - var d = [String: JSON]() - d[".tag"] = .str("suspend_inactive_user") - return .dictionary(d) - case .suspendLastAdmin: - var d = [String: JSON]() - d[".tag"] = .str("suspend_last_admin") - return .dictionary(d) - case .teamLicenseLimit: - var d = [String: JSON]() - d[".tag"] = .str("team_license_limit") - return .dictionary(d) - } - } - - public func deserialize(_ json: JSON) throws -> MembersSuspendError { - switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "user_not_found": - return MembersSuspendError.userNotFound - case "user_not_in_team": - return MembersSuspendError.userNotInTeam - case "other": - return MembersSuspendError.other - case "suspend_inactive_user": - return MembersSuspendError.suspendInactiveUser - case "suspend_last_admin": - return MembersSuspendError.suspendLastAdmin - case "team_license_limit": - return MembersSuspendError.teamLicenseLimit - default: - throw JSONSerializerError.unknownTag(type: MembersSuspendError.self, json: json, tag: tag) - } - default: - throw JSONSerializerError.deserializeError(type: MembersSuspendError.self, json: json) - } - } - } - /// The MembersTransferFormerMembersFilesError union public enum MembersTransferFormerMembersFilesError: CustomStringConvertible, JSONRepresentable { /// No matching user found. The provided team_member_id, email, or external_id does not exist on this team. @@ -11025,6 +12031,12 @@ public class Team { case userNotInTeam /// An unspecified error. case other + /// Cannot permanently delete files while it's being transferred. + case transferInProgress + /// Cannot permanently delete files that have already been transferred. + case alreadyTransferred + /// Cannot permanently delete files that have already been transferred or deleted. + case alreadyTransferredOrDeleted /// Expected removed user and transfer_dest user to be different. case removedAndTransferDestShouldDiffer /// Expected removed user and transfer_admin user to be different. @@ -11081,6 +12093,18 @@ public class Team { var d = [String: JSON]() d[".tag"] = .str("other") return .dictionary(d) + case .transferInProgress: + var d = [String: JSON]() + d[".tag"] = .str("transfer_in_progress") + return .dictionary(d) + case .alreadyTransferred: + var d = [String: JSON]() + d[".tag"] = .str("already_transferred") + return .dictionary(d) + case .alreadyTransferredOrDeleted: + var d = [String: JSON]() + d[".tag"] = .str("already_transferred_or_deleted") + return .dictionary(d) case .removedAndTransferDestShouldDiffer: var d = [String: JSON]() d[".tag"] = .str("removed_and_transfer_dest_should_differ") @@ -11147,6 +12171,12 @@ public class Team { return MembersTransferFormerMembersFilesError.userNotInTeam case "other": return MembersTransferFormerMembersFilesError.other + case "transfer_in_progress": + return MembersTransferFormerMembersFilesError.transferInProgress + case "already_transferred": + return MembersTransferFormerMembersFilesError.alreadyTransferred + case "already_transferred_or_deleted": + return MembersTransferFormerMembersFilesError.alreadyTransferredOrDeleted case "removed_and_transfer_dest_should_differ": return MembersTransferFormerMembersFilesError.removedAndTransferDestShouldDiffer case "removed_and_transfer_admin_should_differ": @@ -11490,7 +12520,9 @@ public class Team { /// If this is a team member or app folder, the ID of the owning team member. Otherwise, this field is not /// present. public let teamMemberId: String? - public init(name: String, namespaceId: String, namespaceType: Team.NamespaceType, teamMemberId: String? = nil) { + /// The quota limit in bytes for this namespace tree. Only applicable to team folders. + public let quotaLimit: Int64 + public init(name: String, namespaceId: String, namespaceType: Team.NamespaceType, teamMemberId: String? = nil, quotaLimit: Int64 = 0) { stringValidator()(name) self.name = name stringValidator(pattern: "[-_0-9a-zA-Z:]+")(namespaceId) @@ -11498,6 +12530,8 @@ public class Team { self.namespaceType = namespaceType nullableValidator(stringValidator())(teamMemberId) self.teamMemberId = teamMemberId + comparableValidator()(quotaLimit) + self.quotaLimit = quotaLimit } func json() throws -> JSON { @@ -11521,6 +12555,7 @@ public class Team { "namespace_id": try Serialization._StringSerializer.serialize(value.namespaceId), "namespace_type": try Team.NamespaceTypeSerializer().serialize(value.namespaceType), "team_member_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.teamMemberId), + "quota_limit": try Serialization._Int64Serializer.serialize(value.quotaLimit), ] return .dictionary(output) } @@ -11532,7 +12567,8 @@ public class Team { let namespaceId = try Serialization._StringSerializer.deserialize(dict["namespace_id"] ?? .null) let namespaceType = try Team.NamespaceTypeSerializer().deserialize(dict["namespace_type"] ?? .null) let teamMemberId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["team_member_id"] ?? .null) - return NamespaceMetadata(name: name, namespaceId: namespaceId, namespaceType: namespaceType, teamMemberId: teamMemberId) + let quotaLimit = try Serialization._Int64Serializer.deserialize(dict["quota_limit"] ?? .number(0)) + return NamespaceMetadata(name: name, namespaceId: namespaceId, namespaceType: namespaceType, teamMemberId: teamMemberId, quotaLimit: quotaLimit) default: throw JSONSerializerError.deserializeError(type: NamespaceMetadata.self, json: json) } @@ -11549,6 +12585,8 @@ public class Team { case teamFolder /// Team member's home folder. case teamMemberFolder + /// Team member's root folder. + case teamMemberRoot /// An unspecified error. case other @@ -11585,6 +12623,10 @@ public class Team { var d = [String: JSON]() d[".tag"] = .str("team_member_folder") return .dictionary(d) + case .teamMemberRoot: + var d = [String: JSON]() + d[".tag"] = .str("team_member_root") + return .dictionary(d) case .other: var d = [String: JSON]() d[".tag"] = .str("other") @@ -11605,6 +12647,8 @@ public class Team { return NamespaceType.teamFolder case "team_member_folder": return NamespaceType.teamMemberFolder + case "team_member_root": + return NamespaceType.teamMemberRoot case "other": return NamespaceType.other default: @@ -12107,8 +13151,7 @@ public class Team { public func deserialize(_ json: JSON) throws -> RevokeDeviceSessionBatchResult { switch json { case .dictionary(let dict): - let revokeDevicesStatus = try ArraySerializer(Team.RevokeDeviceSessionStatusSerializer()) - .deserialize(dict["revoke_devices_status"] ?? .null) + let revokeDevicesStatus = try ArraySerializer(Team.RevokeDeviceSessionStatusSerializer()).deserialize(dict["revoke_devices_status"] ?? .null) return RevokeDeviceSessionBatchResult(revokeDevicesStatus: revokeDevicesStatus) default: throw JSONSerializerError.deserializeError(type: RevokeDeviceSessionBatchResult.self, json: json) @@ -12229,8 +13272,8 @@ public class Team { public let appId: String /// The unique id of the member owning the device. public let teamMemberId: String - /// This flag is not longer supported, the application dedicated folder (in case the application uses one) will - /// be kept. + /// Field is deprecated. This flag is not longer supported, the application dedicated folder (in case the + /// application uses one) will be kept. public let keepAppFolder: Bool public init(appId: String, teamMemberId: String, keepAppFolder: Bool = true) { stringValidator()(appId) @@ -12396,8 +13439,7 @@ public class Team { public func deserialize(_ json: JSON) throws -> RevokeLinkedAppBatchResult { switch json { case .dictionary(let dict): - let revokeLinkedAppStatus = try ArraySerializer(Team.RevokeLinkedAppStatusSerializer()) - .deserialize(dict["revoke_linked_app_status"] ?? .null) + let revokeLinkedAppStatus = try ArraySerializer(Team.RevokeLinkedAppStatusSerializer()).deserialize(dict["revoke_linked_app_status"] ?? .null) return RevokeLinkedAppBatchResult(revokeLinkedAppStatus: revokeLinkedAppStatus) default: throw JSONSerializerError.deserializeError(type: RevokeLinkedAppBatchResult.self, json: json) @@ -13312,6 +14354,8 @@ public class Team { case teamSharedDropboxError(Team.TeamFolderTeamSharedDropboxError) /// An unspecified error. case other + /// The team has reached the maximum number of team folders allowed by its plan. + case folderCountLimitExceeded func json() throws -> JSON { try TeamFolderActivateErrorSerializer().serialize(self) @@ -13346,6 +14390,10 @@ public class Team { var d = [String: JSON]() d[".tag"] = .str("other") return .dictionary(d) + case .folderCountLimitExceeded: + var d = [String: JSON]() + d[".tag"] = .str("folder_count_limit_exceeded") + return .dictionary(d) } } @@ -13365,6 +14413,8 @@ public class Team { return TeamFolderActivateError.teamSharedDropboxError(v) case "other": return TeamFolderActivateError.other + case "folder_count_limit_exceeded": + return TeamFolderActivateError.folderCountLimitExceeded default: throw JSONSerializerError.unknownTag(type: TeamFolderActivateError.self, json: json, tag: tag) } @@ -13704,6 +14754,8 @@ public class Team { case folderNameReserved /// An error occurred setting the sync settings. case syncSettingsError(Files.SyncSettingsError) + /// The team has reached the maximum number of team folders allowed by its plan. + case folderCountLimitExceeded /// An unspecified error. case other @@ -13740,6 +14792,10 @@ public class Team { var d = try ["sync_settings_error": Files.SyncSettingsErrorSerializer().serialize(arg)] d[".tag"] = .str("sync_settings_error") return .dictionary(d) + case .folderCountLimitExceeded: + var d = [String: JSON]() + d[".tag"] = .str("folder_count_limit_exceeded") + return .dictionary(d) case .other: var d = [String: JSON]() d[".tag"] = .str("other") @@ -13761,6 +14817,8 @@ public class Team { case "sync_settings_error": let v = try Files.SyncSettingsErrorSerializer().deserialize(d["sync_settings_error"] ?? .null) return TeamFolderCreateError.syncSettingsError(v) + case "folder_count_limit_exceeded": + return TeamFolderCreateError.folderCountLimitExceeded case "other": return TeamFolderCreateError.other default: @@ -14183,13 +15241,16 @@ public class Team { public let syncSetting: Files.SyncSetting /// Sync settings applied to contents of this team folder. public let contentSyncSettings: [Files.ContentSyncSetting] + /// The quota limit in bytes for this team folder namespace tree. + public let quotaLimit: Int64 public init( teamFolderId: String, name: String, status: Team.TeamFolderStatus, isTeamSharedDropbox: Bool, syncSetting: Files.SyncSetting, - contentSyncSettings: [Files.ContentSyncSetting] + contentSyncSettings: [Files.ContentSyncSetting], + quotaLimit: Int64 = 0 ) { stringValidator(pattern: "[-_0-9a-zA-Z:]+")(teamFolderId) self.teamFolderId = teamFolderId @@ -14199,6 +15260,8 @@ public class Team { self.isTeamSharedDropbox = isTeamSharedDropbox self.syncSetting = syncSetting self.contentSyncSettings = contentSyncSettings + comparableValidator()(quotaLimit) + self.quotaLimit = quotaLimit } func json() throws -> JSON { @@ -14224,6 +15287,7 @@ public class Team { "is_team_shared_dropbox": try Serialization._BoolSerializer.serialize(value.isTeamSharedDropbox), "sync_setting": try Files.SyncSettingSerializer().serialize(value.syncSetting), "content_sync_settings": try ArraySerializer(Files.ContentSyncSettingSerializer()).serialize(value.contentSyncSettings), + "quota_limit": try Serialization._Int64Serializer.serialize(value.quotaLimit), ] return .dictionary(output) } @@ -14237,13 +15301,15 @@ public class Team { let isTeamSharedDropbox = try Serialization._BoolSerializer.deserialize(dict["is_team_shared_dropbox"] ?? .null) let syncSetting = try Files.SyncSettingSerializer().deserialize(dict["sync_setting"] ?? .null) let contentSyncSettings = try ArraySerializer(Files.ContentSyncSettingSerializer()).deserialize(dict["content_sync_settings"] ?? .null) + let quotaLimit = try Serialization._Int64Serializer.deserialize(dict["quota_limit"] ?? .number(0)) return TeamFolderMetadata( teamFolderId: teamFolderId, name: name, status: status, isTeamSharedDropbox: isTeamSharedDropbox, syncSetting: syncSetting, - contentSyncSettings: contentSyncSettings + contentSyncSettings: contentSyncSettings, + quotaLimit: quotaLimit ) default: throw JSONSerializerError.deserializeError(type: TeamFolderMetadata.self, json: json) @@ -14460,14 +15526,97 @@ public class Team { } } + /// The TeamFolderRestoreError union + public enum TeamFolderRestoreError: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case accessError(Team.TeamFolderAccessError) + /// An unspecified error. + case statusError(Team.TeamFolderInvalidStatusError) + /// An unspecified error. + case teamSharedDropboxError(Team.TeamFolderTeamSharedDropboxError) + /// An unspecified error. + case other + /// The team has reached the maximum number of team folders allowed by its plan. + case folderCountLimitExceeded + + func json() throws -> JSON { + try TeamFolderRestoreErrorSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try TeamFolderRestoreErrorSerializer().serialize(self)))" + } catch { + return "Failed to generate description for TeamFolderRestoreError: \(error)" + } + } + } + + public class TeamFolderRestoreErrorSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: TeamFolderRestoreError) throws -> JSON { + switch value { + case .accessError(let arg): + var d = try ["access_error": Team.TeamFolderAccessErrorSerializer().serialize(arg)] + d[".tag"] = .str("access_error") + return .dictionary(d) + case .statusError(let arg): + var d = try ["status_error": Team.TeamFolderInvalidStatusErrorSerializer().serialize(arg)] + d[".tag"] = .str("status_error") + return .dictionary(d) + case .teamSharedDropboxError(let arg): + var d = try ["team_shared_dropbox_error": Team.TeamFolderTeamSharedDropboxErrorSerializer().serialize(arg)] + d[".tag"] = .str("team_shared_dropbox_error") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + case .folderCountLimitExceeded: + var d = [String: JSON]() + d[".tag"] = .str("folder_count_limit_exceeded") + return .dictionary(d) + } + } + + public func deserialize(_ json: JSON) throws -> TeamFolderRestoreError { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "access_error": + let v = try Team.TeamFolderAccessErrorSerializer().deserialize(d["access_error"] ?? .null) + return TeamFolderRestoreError.accessError(v) + case "status_error": + let v = try Team.TeamFolderInvalidStatusErrorSerializer().deserialize(d["status_error"] ?? .null) + return TeamFolderRestoreError.statusError(v) + case "team_shared_dropbox_error": + let v = try Team.TeamFolderTeamSharedDropboxErrorSerializer().deserialize(d["team_shared_dropbox_error"] ?? .null) + return TeamFolderRestoreError.teamSharedDropboxError(v) + case "other": + return TeamFolderRestoreError.other + case "folder_count_limit_exceeded": + return TeamFolderRestoreError.folderCountLimitExceeded + default: + throw JSONSerializerError.unknownTag(type: TeamFolderRestoreError.self, json: json, tag: tag) + } + default: + throw JSONSerializerError.deserializeError(type: TeamFolderRestoreError.self, json: json) + } + } + } + /// The TeamFolderStatus union public enum TeamFolderStatus: CustomStringConvertible, JSONRepresentable { /// The team folder and sub-folders are available to all members. case active - /// The team folder is not accessible outside of the team folder manager. + /// The team folder is archived and is not accessible outside of the team folder manager. case archived - /// The team folder is not accessible outside of the team folder manager. + /// The team folder is in the process of being archived and is not accessible outside of the team folder + /// manager. case archiveInProgress + /// The team folder is unmounted and can be restored. + case inactive /// An unspecified error. case other @@ -14500,6 +15649,10 @@ public class Team { var d = [String: JSON]() d[".tag"] = .str("archive_in_progress") return .dictionary(d) + case .inactive: + var d = [String: JSON]() + d[".tag"] = .str("inactive") + return .dictionary(d) case .other: var d = [String: JSON]() d[".tag"] = .str("other") @@ -14518,6 +15671,8 @@ public class Team { return TeamFolderStatus.archived case "archive_in_progress": return TeamFolderStatus.archiveInProgress + case "inactive": + return TeamFolderStatus.inactive case "other": return TeamFolderStatus.other default: @@ -14620,8 +15775,9 @@ public class Team { case .dictionary(let dict): let teamFolderId = try Serialization._StringSerializer.deserialize(dict["team_folder_id"] ?? .null) let syncSetting = try NullableSerializer(Files.SyncSettingArgSerializer()).deserialize(dict["sync_setting"] ?? .null) - let contentSyncSettings = try NullableSerializer(ArraySerializer(Files.ContentSyncSettingArgSerializer())) - .deserialize(dict["content_sync_settings"] ?? .null) + let contentSyncSettings = try NullableSerializer(ArraySerializer(Files.ContentSyncSettingArgSerializer())).deserialize( + dict["content_sync_settings"] ?? .null + ) return TeamFolderUpdateSyncSettingsArg(teamFolderId: teamFolderId, syncSetting: syncSetting, contentSyncSettings: contentSyncSettings) default: throw JSONSerializerError.deserializeError(type: TeamFolderUpdateSyncSettingsArg.self, json: json) @@ -14932,8 +16088,10 @@ public class Team { public class TeamMemberProfile: Team.MemberProfile { /// List of group IDs of groups that the user belongs to. public let groups: [String] - /// The namespace id of the user's root folder. + /// The namespace id of the user's member folder. public let memberFolderId: String + /// The namespace id of the user's root folder. + public let rootFolderId: String public init( teamMemberId: String, email: String, @@ -14943,6 +16101,7 @@ public class Team { membershipType: Team.TeamMembershipType, groups: [String], memberFolderId: String, + rootFolderId: String, externalId: String? = nil, accountId: String? = nil, secondaryEmails: [SecondaryEmails.SecondaryEmail]? = nil, @@ -14957,6 +16116,8 @@ public class Team { self.groups = groups stringValidator(pattern: "[-_0-9a-zA-Z:]+")(memberFolderId) self.memberFolderId = memberFolderId + stringValidator(pattern: "[-_0-9a-zA-Z:]+")(rootFolderId) + self.rootFolderId = rootFolderId super.init( teamMemberId: teamMemberId, email: email, @@ -14997,6 +16158,7 @@ public class Team { "membership_type": try Team.TeamMembershipTypeSerializer().serialize(value.membershipType), "groups": try ArraySerializer(Serialization._StringSerializer).serialize(value.groups), "member_folder_id": try Serialization._StringSerializer.serialize(value.memberFolderId), + "root_folder_id": try Serialization._StringSerializer.serialize(value.rootFolderId), "external_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.externalId), "account_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.accountId), "secondary_emails": try NullableSerializer(ArraySerializer(SecondaryEmails.SecondaryEmailSerializer())).serialize(value.secondaryEmails), @@ -15021,10 +16183,12 @@ public class Team { let membershipType = try Team.TeamMembershipTypeSerializer().deserialize(dict["membership_type"] ?? .null) let groups = try ArraySerializer(Serialization._StringSerializer).deserialize(dict["groups"] ?? .null) let memberFolderId = try Serialization._StringSerializer.deserialize(dict["member_folder_id"] ?? .null) + let rootFolderId = try Serialization._StringSerializer.deserialize(dict["root_folder_id"] ?? .null) let externalId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["external_id"] ?? .null) let accountId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["account_id"] ?? .null) - let secondaryEmails = try NullableSerializer(ArraySerializer(SecondaryEmails.SecondaryEmailSerializer())) - .deserialize(dict["secondary_emails"] ?? .null) + let secondaryEmails = try NullableSerializer(ArraySerializer(SecondaryEmails.SecondaryEmailSerializer())).deserialize( + dict["secondary_emails"] ?? .null + ) let invitedOn = try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).deserialize(dict["invited_on"] ?? .null) let joinedOn = try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).deserialize(dict["joined_on"] ?? .null) let suspendedOn = try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).deserialize(dict["suspended_on"] ?? .null) @@ -15040,6 +16204,7 @@ public class Team { membershipType: membershipType, groups: groups, memberFolderId: memberFolderId, + rootFolderId: rootFolderId, externalId: externalId, accountId: accountId, secondaryEmails: secondaryEmails, @@ -15187,7 +16352,8 @@ public class Team { public enum TeamMembershipType: CustomStringConvertible, JSONRepresentable { /// User uses a license and has full access to team resources like the shared quota. case full - /// User does not have access to the shared quota and team admins have restricted administrative control. + /// Field is deprecated. User does not have access to the shared quota and team admins have restricted + /// administrative control. case limited func json() throws -> JSON { @@ -15238,7 +16404,7 @@ public class Team { /// The TeamNamespacesListArg struct public class TeamNamespacesListArg: CustomStringConvertible, JSONRepresentable { - /// Specifying a value here has no effect. + /// Field is deprecated. Specifying a value here has no effect. public let limit: UInt32 public init(limit: UInt32 = 1_000) { comparableValidator(minValue: 1, maxValue: 1_000)(limit) @@ -15662,7 +16828,7 @@ public class Team { /// The value for uploadApiRateLimit in Feature. public enum UploadApiRateLimitValue: CustomStringConvertible, JSONRepresentable { - /// This team has unlimited upload API quota. So far both server version account and legacy account type have + /// This team has unlimited upload API quota. So far both server version account and legacy account type have /// unlimited monthly upload api quota. case unlimited /// The number of upload API calls allowed per month. @@ -15814,7 +16980,7 @@ public class Team { public let quotaGb: UInt32 public init(user: Team.UserSelectorArg, quotaGb: UInt32) { self.user = user - comparableValidator(minValue: 15)(quotaGb) + comparableValidator(minValue: 2)(quotaGb) self.quotaGb = quotaGb } @@ -15853,7 +17019,7 @@ public class Team { } } - /// User and their custom quota in GB (1 TB = 1024 GB). No quota returns if the user has no custom quota set. + /// User and their custom quota in GB (1 TB = 1024 GB). No quota returns if the user has no custom quota set. public class UserCustomQuotaResult: CustomStringConvertible, JSONRepresentable { /// (no description) public let user: Team.UserSelectorArg @@ -15861,7 +17027,7 @@ public class Team { public let quotaGb: UInt32? public init(user: Team.UserSelectorArg, quotaGb: UInt32? = nil) { self.user = user - nullableValidator(comparableValidator(minValue: 15))(quotaGb) + nullableValidator(comparableValidator(minValue: 2))(quotaGb) self.quotaGb = quotaGb } @@ -16130,10 +17296,9 @@ public class Team { public let secondaryEmails: [String] public init(user: Team.UserSelectorArg, secondaryEmails: [String]) { self.user = user - arrayValidator(itemValidator: stringValidator( - maxLength: 255, - pattern: "^['#&A-Za-z0-9._%+-]+@[A-Za-z0-9-][A-Za-z0-9.-]*\\.[A-Za-z]{2,15}$" - ))(secondaryEmails) + arrayValidator(itemValidator: stringValidator(maxLength: 255, pattern: "^['#&A-Za-z0-9._%+-]+@[A-Za-z0-9-][A-Za-z0-9.-]*\\.[A-Za-z]{2,15}$"))( + secondaryEmails + ) self.secondaryEmails = secondaryEmails } @@ -16936,6 +18101,48 @@ public class Team { style: .rpc ) ) + static let membersBulkSuspend = Route( + name: "members/bulk_suspend", + version: 1, + namespace: "team", + deprecated: false, + argSerializer: Team.BulkSuspendArgSerializer(), + responseSerializer: Async.LaunchResultBaseSerializer(), + errorSerializer: Team.BulkSuspendErrorSerializer(), + attributes: RouteAttributes( + auth: [.team], + host: .api, + style: .rpc + ) + ) + static let membersBulkSuspendJobStatusCheck = Route( + name: "members/bulk_suspend/job_status/check", + version: 1, + namespace: "team", + deprecated: false, + argSerializer: Async.PollArgSerializer(), + responseSerializer: Team.BulkSuspendJobStatusSerializer(), + errorSerializer: Async.PollErrorSerializer(), + attributes: RouteAttributes( + auth: [.team], + host: .api, + style: .rpc + ) + ) + static let membersDeleteFormerMemberFiles = Route( + name: "members/delete_former_member_files", + version: 1, + namespace: "team", + deprecated: false, + argSerializer: Team.MembersFormerMemberArgSerializer(), + responseSerializer: Serialization._VoidSerializer, + errorSerializer: Team.MembersDeleteFormerMemberFilesErrorSerializer(), + attributes: RouteAttributes( + auth: [.team], + host: .api, + style: .rpc + ) + ) static let membersDeleteProfilePhoto = Route( name: "members/delete_profile_photo", version: 1, @@ -17356,34 +18563,6 @@ public class Team { style: .rpc ) ) - static let propertiesTemplateList = Route( - name: "properties/template/list", - version: 1, - namespace: "team", - deprecated: true, - argSerializer: Serialization._VoidSerializer, - responseSerializer: FileProperties.ListTemplateResultSerializer(), - errorSerializer: FileProperties.TemplateErrorSerializer(), - attributes: RouteAttributes( - auth: [.team], - host: .api, - style: .rpc - ) - ) - static let propertiesTemplateUpdate = Route( - name: "properties/template/update", - version: 1, - namespace: "team", - deprecated: true, - argSerializer: FileProperties.UpdateTemplateArgSerializer(), - responseSerializer: FileProperties.UpdateTemplateResultSerializer(), - errorSerializer: FileProperties.ModifyTemplateErrorSerializer(), - attributes: RouteAttributes( - auth: [.team], - host: .api, - style: .rpc - ) - ) static let reportsGetActivity = Route( name: "reports/get_activity", version: 1, @@ -17622,6 +18801,20 @@ public class Team { style: .rpc ) ) + static let teamFolderRestore = Route( + name: "team_folder/restore", + version: 1, + namespace: "team", + deprecated: false, + argSerializer: Team.TeamFolderIdArgSerializer(), + responseSerializer: Team.TeamFolderMetadataSerializer(), + errorSerializer: Team.TeamFolderRestoreErrorSerializer(), + attributes: RouteAttributes( + auth: [.team], + host: .api, + style: .rpc + ) + ) static let teamFolderUpdateSyncSettings = Route( name: "team_folder/update_sync_settings", version: 1, diff --git a/Source/SwiftyDropbox/Shared/Generated/TeamLog.swift b/Source/SwiftyDropbox/Shared/Generated/TeamLog.swift index afa2dd05..2b0000bf 100644 --- a/Source/SwiftyDropbox/Shared/Generated/TeamLog.swift +++ b/Source/SwiftyDropbox/Shared/Generated/TeamLog.swift @@ -37,72 +37,70 @@ public class TeamLog { } } } - public class AccessMethodLogInfoSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: AccessMethodLogInfo) throws -> JSON { switch value { - case .adminConsole(let arg): - var d = try Serialization.getFields(TeamLog.WebSessionLogInfoSerializer().serialize(arg)) - d[".tag"] = .str("admin_console") - return .dictionary(d) - case .api(let arg): - var d = try Serialization.getFields(TeamLog.ApiSessionLogInfoSerializer().serialize(arg)) - d[".tag"] = .str("api") - return .dictionary(d) - case .contentManager(let arg): - var d = try Serialization.getFields(TeamLog.WebSessionLogInfoSerializer().serialize(arg)) - d[".tag"] = .str("content_manager") - return .dictionary(d) - case .endUser(let arg): - var d = try ["end_user": TeamLog.SessionLogInfoSerializer().serialize(arg)] - d[".tag"] = .str("end_user") - return .dictionary(d) - case .enterpriseConsole(let arg): - var d = try Serialization.getFields(TeamLog.WebSessionLogInfoSerializer().serialize(arg)) - d[".tag"] = .str("enterprise_console") - return .dictionary(d) - case .signInAs(let arg): - var d = try Serialization.getFields(TeamLog.WebSessionLogInfoSerializer().serialize(arg)) - d[".tag"] = .str("sign_in_as") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) + case .adminConsole(let arg): + var d = try Serialization.getFields(TeamLog.WebSessionLogInfoSerializer().serialize(arg)) + d[".tag"] = .str("admin_console") + return .dictionary(d) + case .api(let arg): + var d = try Serialization.getFields(TeamLog.ApiSessionLogInfoSerializer().serialize(arg)) + d[".tag"] = .str("api") + return .dictionary(d) + case .contentManager(let arg): + var d = try Serialization.getFields(TeamLog.WebSessionLogInfoSerializer().serialize(arg)) + d[".tag"] = .str("content_manager") + return .dictionary(d) + case .endUser(let arg): + var d = try ["end_user": TeamLog.SessionLogInfoSerializer().serialize(arg)] + d[".tag"] = .str("end_user") + return .dictionary(d) + case .enterpriseConsole(let arg): + var d = try Serialization.getFields(TeamLog.WebSessionLogInfoSerializer().serialize(arg)) + d[".tag"] = .str("enterprise_console") + return .dictionary(d) + case .signInAs(let arg): + var d = try Serialization.getFields(TeamLog.WebSessionLogInfoSerializer().serialize(arg)) + d[".tag"] = .str("sign_in_as") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) } } - public func deserialize(_ json: JSON) throws -> AccessMethodLogInfo { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "admin_console": - let v = try TeamLog.WebSessionLogInfoSerializer().deserialize(json) - return AccessMethodLogInfo.adminConsole(v) - case "api": - let v = try TeamLog.ApiSessionLogInfoSerializer().deserialize(json) - return AccessMethodLogInfo.api(v) - case "content_manager": - let v = try TeamLog.WebSessionLogInfoSerializer().deserialize(json) - return AccessMethodLogInfo.contentManager(v) - case "end_user": - let v = try TeamLog.SessionLogInfoSerializer().deserialize(d["end_user"] ?? .null) - return AccessMethodLogInfo.endUser(v) - case "enterprise_console": - let v = try TeamLog.WebSessionLogInfoSerializer().deserialize(json) - return AccessMethodLogInfo.enterpriseConsole(v) - case "sign_in_as": - let v = try TeamLog.WebSessionLogInfoSerializer().deserialize(json) - return AccessMethodLogInfo.signInAs(v) - case "other": - return AccessMethodLogInfo.other - default: - return AccessMethodLogInfo.other - } - default: - throw JSONSerializerError.deserializeError(type: AccessMethodLogInfo.self, json: json) + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "admin_console": + let v = try TeamLog.WebSessionLogInfoSerializer().deserialize(json) + return AccessMethodLogInfo.adminConsole(v) + case "api": + let v = try TeamLog.ApiSessionLogInfoSerializer().deserialize(json) + return AccessMethodLogInfo.api(v) + case "content_manager": + let v = try TeamLog.WebSessionLogInfoSerializer().deserialize(json) + return AccessMethodLogInfo.contentManager(v) + case "end_user": + let v = try TeamLog.SessionLogInfoSerializer().deserialize(d["end_user"] ?? .null) + return AccessMethodLogInfo.endUser(v) + case "enterprise_console": + let v = try TeamLog.WebSessionLogInfoSerializer().deserialize(json) + return AccessMethodLogInfo.enterpriseConsole(v) + case "sign_in_as": + let v = try TeamLog.WebSessionLogInfoSerializer().deserialize(json) + return AccessMethodLogInfo.signInAs(v) + case "other": + return AccessMethodLogInfo.other + default: + return AccessMethodLogInfo.other + } + default: + throw JSONSerializerError.deserializeError(type: AccessMethodLogInfo.self, json: json) } } } @@ -128,42 +126,40 @@ public class TeamLog { } } } - public class AccountCaptureAvailabilitySerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: AccountCaptureAvailability) throws -> JSON { switch value { - case .available: - var d = [String: JSON]() - d[".tag"] = .str("available") - return .dictionary(d) - case .unavailable: - var d = [String: JSON]() - d[".tag"] = .str("unavailable") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) + case .available: + var d = [String: JSON]() + d[".tag"] = .str("available") + return .dictionary(d) + case .unavailable: + var d = [String: JSON]() + d[".tag"] = .str("unavailable") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) } } - public func deserialize(_ json: JSON) throws -> AccountCaptureAvailability { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "available": - return AccountCaptureAvailability.available - case "unavailable": - return AccountCaptureAvailability.unavailable - case "other": - return AccountCaptureAvailability.other + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "available": + return AccountCaptureAvailability.available + case "unavailable": + return AccountCaptureAvailability.unavailable + case "other": + return AccountCaptureAvailability.other + default: + return AccountCaptureAvailability.other + } default: - return AccountCaptureAvailability.other - } - default: - throw JSONSerializerError.deserializeError(type: AccountCaptureAvailability.self, json: json) + throw JSONSerializerError.deserializeError(type: AccountCaptureAvailability.self, json: json) } } } @@ -191,25 +187,23 @@ public class TeamLog { } } } - public class AccountCaptureChangeAvailabilityDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: AccountCaptureChangeAvailabilityDetails) throws -> JSON { let output = [ - "new_value": try TeamLog.AccountCaptureAvailabilitySerializer().serialize(value.newValue), - "previous_value": try NullableSerializer(TeamLog.AccountCaptureAvailabilitySerializer()).serialize(value.previousValue), + "new_value": try TeamLog.AccountCaptureAvailabilitySerializer().serialize(value.newValue), + "previous_value": try NullableSerializer(TeamLog.AccountCaptureAvailabilitySerializer()).serialize(value.previousValue), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> AccountCaptureChangeAvailabilityDetails { switch json { - case .dictionary(let dict): - let newValue = try TeamLog.AccountCaptureAvailabilitySerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try NullableSerializer(TeamLog.AccountCaptureAvailabilitySerializer()).deserialize(dict["previous_value"] ?? .null) - return AccountCaptureChangeAvailabilityDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: AccountCaptureChangeAvailabilityDetails.self, json: json) + case .dictionary(let dict): + let newValue = try TeamLog.AccountCaptureAvailabilitySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try NullableSerializer(TeamLog.AccountCaptureAvailabilitySerializer()).deserialize(dict["previous_value"] ?? .null) + return AccountCaptureChangeAvailabilityDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: AccountCaptureChangeAvailabilityDetails.self, json: json) } } } @@ -235,23 +229,21 @@ public class TeamLog { } } } - public class AccountCaptureChangeAvailabilityTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: AccountCaptureChangeAvailabilityType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> AccountCaptureChangeAvailabilityType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return AccountCaptureChangeAvailabilityType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: AccountCaptureChangeAvailabilityType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return AccountCaptureChangeAvailabilityType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: AccountCaptureChangeAvailabilityType.self, json: json) } } } @@ -279,25 +271,23 @@ public class TeamLog { } } } - public class AccountCaptureChangePolicyDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: AccountCaptureChangePolicyDetails) throws -> JSON { let output = [ - "new_value": try TeamLog.AccountCapturePolicySerializer().serialize(value.newValue), - "previous_value": try NullableSerializer(TeamLog.AccountCapturePolicySerializer()).serialize(value.previousValue), + "new_value": try TeamLog.AccountCapturePolicySerializer().serialize(value.newValue), + "previous_value": try NullableSerializer(TeamLog.AccountCapturePolicySerializer()).serialize(value.previousValue), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> AccountCaptureChangePolicyDetails { switch json { - case .dictionary(let dict): - let newValue = try TeamLog.AccountCapturePolicySerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try NullableSerializer(TeamLog.AccountCapturePolicySerializer()).deserialize(dict["previous_value"] ?? .null) - return AccountCaptureChangePolicyDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: AccountCaptureChangePolicyDetails.self, json: json) + case .dictionary(let dict): + let newValue = try TeamLog.AccountCapturePolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try NullableSerializer(TeamLog.AccountCapturePolicySerializer()).deserialize(dict["previous_value"] ?? .null) + return AccountCaptureChangePolicyDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: AccountCaptureChangePolicyDetails.self, json: json) } } } @@ -323,23 +313,21 @@ public class TeamLog { } } } - public class AccountCaptureChangePolicyTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: AccountCaptureChangePolicyType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> AccountCaptureChangePolicyType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return AccountCaptureChangePolicyType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: AccountCaptureChangePolicyType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return AccountCaptureChangePolicyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: AccountCaptureChangePolicyType.self, json: json) } } } @@ -365,23 +353,21 @@ public class TeamLog { } } } - public class AccountCaptureMigrateAccountDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: AccountCaptureMigrateAccountDetails) throws -> JSON { let output = [ - "domain_name": try Serialization._StringSerializer.serialize(value.domainName), + "domain_name": try Serialization._StringSerializer.serialize(value.domainName), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> AccountCaptureMigrateAccountDetails { switch json { - case .dictionary(let dict): - let domainName = try Serialization._StringSerializer.deserialize(dict["domain_name"] ?? .null) - return AccountCaptureMigrateAccountDetails(domainName: domainName) - default: - throw JSONSerializerError.deserializeError(type: AccountCaptureMigrateAccountDetails.self, json: json) + case .dictionary(let dict): + let domainName = try Serialization._StringSerializer.deserialize(dict["domain_name"] ?? .null) + return AccountCaptureMigrateAccountDetails(domainName: domainName) + default: + throw JSONSerializerError.deserializeError(type: AccountCaptureMigrateAccountDetails.self, json: json) } } } @@ -407,23 +393,21 @@ public class TeamLog { } } } - public class AccountCaptureMigrateAccountTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: AccountCaptureMigrateAccountType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> AccountCaptureMigrateAccountType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return AccountCaptureMigrateAccountType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: AccountCaptureMigrateAccountType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return AccountCaptureMigrateAccountType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: AccountCaptureMigrateAccountType.self, json: json) } } } @@ -452,26 +436,23 @@ public class TeamLog { } } } - public class AccountCaptureNotificationEmailsSentDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: AccountCaptureNotificationEmailsSentDetails) throws -> JSON { let output = [ - "domain_name": try Serialization._StringSerializer.serialize(value.domainName), - "notification_type": try NullableSerializer(TeamLog.AccountCaptureNotificationTypeSerializer()).serialize(value.notificationType), + "domain_name": try Serialization._StringSerializer.serialize(value.domainName), + "notification_type": try NullableSerializer(TeamLog.AccountCaptureNotificationTypeSerializer()).serialize(value.notificationType), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> AccountCaptureNotificationEmailsSentDetails { switch json { - case .dictionary(let dict): - let domainName = try Serialization._StringSerializer.deserialize(dict["domain_name"] ?? .null) - let notificationType = try NullableSerializer(TeamLog.AccountCaptureNotificationTypeSerializer()) - .deserialize(dict["notification_type"] ?? .null) - return AccountCaptureNotificationEmailsSentDetails(domainName: domainName, notificationType: notificationType) - default: - throw JSONSerializerError.deserializeError(type: AccountCaptureNotificationEmailsSentDetails.self, json: json) + case .dictionary(let dict): + let domainName = try Serialization._StringSerializer.deserialize(dict["domain_name"] ?? .null) + let notificationType = try NullableSerializer(TeamLog.AccountCaptureNotificationTypeSerializer()).deserialize(dict["notification_type"] ?? .null) + return AccountCaptureNotificationEmailsSentDetails(domainName: domainName, notificationType: notificationType) + default: + throw JSONSerializerError.deserializeError(type: AccountCaptureNotificationEmailsSentDetails.self, json: json) } } } @@ -497,23 +478,21 @@ public class TeamLog { } } } - public class AccountCaptureNotificationEmailsSentTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: AccountCaptureNotificationEmailsSentType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> AccountCaptureNotificationEmailsSentType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return AccountCaptureNotificationEmailsSentType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: AccountCaptureNotificationEmailsSentType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return AccountCaptureNotificationEmailsSentType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: AccountCaptureNotificationEmailsSentType.self, json: json) } } } @@ -539,42 +518,40 @@ public class TeamLog { } } } - public class AccountCaptureNotificationTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: AccountCaptureNotificationType) throws -> JSON { switch value { - case .actionableNotification: - var d = [String: JSON]() - d[".tag"] = .str("actionable_notification") - return .dictionary(d) - case .proactiveWarningNotification: - var d = [String: JSON]() - d[".tag"] = .str("proactive_warning_notification") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) + case .actionableNotification: + var d = [String: JSON]() + d[".tag"] = .str("actionable_notification") + return .dictionary(d) + case .proactiveWarningNotification: + var d = [String: JSON]() + d[".tag"] = .str("proactive_warning_notification") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) } } - public func deserialize(_ json: JSON) throws -> AccountCaptureNotificationType { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "actionable_notification": - return AccountCaptureNotificationType.actionableNotification - case "proactive_warning_notification": - return AccountCaptureNotificationType.proactiveWarningNotification - case "other": - return AccountCaptureNotificationType.other + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "actionable_notification": + return AccountCaptureNotificationType.actionableNotification + case "proactive_warning_notification": + return AccountCaptureNotificationType.proactiveWarningNotification + case "other": + return AccountCaptureNotificationType.other + default: + return AccountCaptureNotificationType.other + } default: - return AccountCaptureNotificationType.other - } - default: - throw JSONSerializerError.deserializeError(type: AccountCaptureNotificationType.self, json: json) + throw JSONSerializerError.deserializeError(type: AccountCaptureNotificationType.self, json: json) } } } @@ -588,8 +565,6 @@ public class TeamLog { /// An unspecified error. case invitedUsers /// An unspecified error. - case preventPersonalCreation - /// An unspecified error. case other func json() throws -> JSON { @@ -604,54 +579,46 @@ public class TeamLog { } } } - public class AccountCapturePolicySerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: AccountCapturePolicy) throws -> JSON { switch value { - case .allUsers: - var d = [String: JSON]() - d[".tag"] = .str("all_users") - return .dictionary(d) - case .disabled: - var d = [String: JSON]() - d[".tag"] = .str("disabled") - return .dictionary(d) - case .invitedUsers: - var d = [String: JSON]() - d[".tag"] = .str("invited_users") - return .dictionary(d) - case .preventPersonalCreation: - var d = [String: JSON]() - d[".tag"] = .str("prevent_personal_creation") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) + case .allUsers: + var d = [String: JSON]() + d[".tag"] = .str("all_users") + return .dictionary(d) + case .disabled: + var d = [String: JSON]() + d[".tag"] = .str("disabled") + return .dictionary(d) + case .invitedUsers: + var d = [String: JSON]() + d[".tag"] = .str("invited_users") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) } } - public func deserialize(_ json: JSON) throws -> AccountCapturePolicy { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "all_users": - return AccountCapturePolicy.allUsers - case "disabled": - return AccountCapturePolicy.disabled - case "invited_users": - return AccountCapturePolicy.invitedUsers - case "prevent_personal_creation": - return AccountCapturePolicy.preventPersonalCreation - case "other": - return AccountCapturePolicy.other + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "all_users": + return AccountCapturePolicy.allUsers + case "disabled": + return AccountCapturePolicy.disabled + case "invited_users": + return AccountCapturePolicy.invitedUsers + case "other": + return AccountCapturePolicy.other + default: + return AccountCapturePolicy.other + } default: - return AccountCapturePolicy.other - } - default: - throw JSONSerializerError.deserializeError(type: AccountCapturePolicy.self, json: json) + throw JSONSerializerError.deserializeError(type: AccountCapturePolicy.self, json: json) } } } @@ -677,23 +644,21 @@ public class TeamLog { } } } - public class AccountCaptureRelinquishAccountDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: AccountCaptureRelinquishAccountDetails) throws -> JSON { let output = [ - "domain_name": try Serialization._StringSerializer.serialize(value.domainName), + "domain_name": try Serialization._StringSerializer.serialize(value.domainName), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> AccountCaptureRelinquishAccountDetails { switch json { - case .dictionary(let dict): - let domainName = try Serialization._StringSerializer.deserialize(dict["domain_name"] ?? .null) - return AccountCaptureRelinquishAccountDetails(domainName: domainName) - default: - throw JSONSerializerError.deserializeError(type: AccountCaptureRelinquishAccountDetails.self, json: json) + case .dictionary(let dict): + let domainName = try Serialization._StringSerializer.deserialize(dict["domain_name"] ?? .null) + return AccountCaptureRelinquishAccountDetails(domainName: domainName) + default: + throw JSONSerializerError.deserializeError(type: AccountCaptureRelinquishAccountDetails.self, json: json) } } } @@ -719,23 +684,21 @@ public class TeamLog { } } } - public class AccountCaptureRelinquishAccountTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: AccountCaptureRelinquishAccountType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> AccountCaptureRelinquishAccountType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return AccountCaptureRelinquishAccountType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: AccountCaptureRelinquishAccountType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return AccountCaptureRelinquishAccountType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: AccountCaptureRelinquishAccountType.self, json: json) } } } @@ -763,25 +726,23 @@ public class TeamLog { } } } - public class AccountLockOrUnlockedDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: AccountLockOrUnlockedDetails) throws -> JSON { let output = [ - "previous_value": try TeamLog.AccountStateSerializer().serialize(value.previousValue), - "new_value": try TeamLog.AccountStateSerializer().serialize(value.newValue), + "previous_value": try TeamLog.AccountStateSerializer().serialize(value.previousValue), + "new_value": try TeamLog.AccountStateSerializer().serialize(value.newValue), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> AccountLockOrUnlockedDetails { switch json { - case .dictionary(let dict): - let previousValue = try TeamLog.AccountStateSerializer().deserialize(dict["previous_value"] ?? .null) - let newValue = try TeamLog.AccountStateSerializer().deserialize(dict["new_value"] ?? .null) - return AccountLockOrUnlockedDetails(previousValue: previousValue, newValue: newValue) - default: - throw JSONSerializerError.deserializeError(type: AccountLockOrUnlockedDetails.self, json: json) + case .dictionary(let dict): + let previousValue = try TeamLog.AccountStateSerializer().deserialize(dict["previous_value"] ?? .null) + let newValue = try TeamLog.AccountStateSerializer().deserialize(dict["new_value"] ?? .null) + return AccountLockOrUnlockedDetails(previousValue: previousValue, newValue: newValue) + default: + throw JSONSerializerError.deserializeError(type: AccountLockOrUnlockedDetails.self, json: json) } } } @@ -807,23 +768,21 @@ public class TeamLog { } } } - public class AccountLockOrUnlockedTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: AccountLockOrUnlockedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> AccountLockOrUnlockedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return AccountLockOrUnlockedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: AccountLockOrUnlockedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return AccountLockOrUnlockedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: AccountLockOrUnlockedType.self, json: json) } } } @@ -849,42 +808,40 @@ public class TeamLog { } } } - public class AccountStateSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: AccountState) throws -> JSON { switch value { - case .locked: - var d = [String: JSON]() - d[".tag"] = .str("locked") - return .dictionary(d) - case .unlocked: - var d = [String: JSON]() - d[".tag"] = .str("unlocked") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) + case .locked: + var d = [String: JSON]() + d[".tag"] = .str("locked") + return .dictionary(d) + case .unlocked: + var d = [String: JSON]() + d[".tag"] = .str("unlocked") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) } } - public func deserialize(_ json: JSON) throws -> AccountState { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "locked": - return AccountState.locked - case "unlocked": - return AccountState.unlocked - case "other": - return AccountState.other + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "locked": + return AccountState.locked + case "unlocked": + return AccountState.unlocked + case "other": + return AccountState.other + default: + return AccountState.other + } default: - return AccountState.other - } - default: - throw JSONSerializerError.deserializeError(type: AccountState.self, json: json) + throw JSONSerializerError.deserializeError(type: AccountState.self, json: json) } } } @@ -893,7 +850,7 @@ public class TeamLog { public enum ActionDetails: CustomStringConvertible, JSONRepresentable { /// Define how the user was removed from the team. case removeAction(TeamLog.MemberRemoveActionType) - /// Additional information relevant when someone is invited to the team. + /// Additional information relevant when someone is invited to the team case teamInviteDetails(TeamLog.TeamInviteDetails) /// Additional information relevant when a new member joins the team. case teamJoinDetails(TeamLog.JoinTeamDetails) @@ -912,51 +869,49 @@ public class TeamLog { } } } - public class ActionDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: ActionDetails) throws -> JSON { switch value { - case .removeAction(let arg): - var d = try ["remove_action": TeamLog.MemberRemoveActionTypeSerializer().serialize(arg)] - d[".tag"] = .str("remove_action") - return .dictionary(d) - case .teamInviteDetails(let arg): - var d = try Serialization.getFields(TeamLog.TeamInviteDetailsSerializer().serialize(arg)) - d[".tag"] = .str("team_invite_details") - return .dictionary(d) - case .teamJoinDetails(let arg): - var d = try Serialization.getFields(TeamLog.JoinTeamDetailsSerializer().serialize(arg)) - d[".tag"] = .str("team_join_details") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) + case .removeAction(let arg): + var d = try ["remove_action": TeamLog.MemberRemoveActionTypeSerializer().serialize(arg)] + d[".tag"] = .str("remove_action") + return .dictionary(d) + case .teamInviteDetails(let arg): + var d = try Serialization.getFields(TeamLog.TeamInviteDetailsSerializer().serialize(arg)) + d[".tag"] = .str("team_invite_details") + return .dictionary(d) + case .teamJoinDetails(let arg): + var d = try Serialization.getFields(TeamLog.JoinTeamDetailsSerializer().serialize(arg)) + d[".tag"] = .str("team_join_details") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) } } - public func deserialize(_ json: JSON) throws -> ActionDetails { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "remove_action": - let v = try TeamLog.MemberRemoveActionTypeSerializer().deserialize(d["remove_action"] ?? .null) - return ActionDetails.removeAction(v) - case "team_invite_details": - let v = try TeamLog.TeamInviteDetailsSerializer().deserialize(json) - return ActionDetails.teamInviteDetails(v) - case "team_join_details": - let v = try TeamLog.JoinTeamDetailsSerializer().deserialize(json) - return ActionDetails.teamJoinDetails(v) - case "other": - return ActionDetails.other + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "remove_action": + let v = try TeamLog.MemberRemoveActionTypeSerializer().deserialize(d["remove_action"] ?? .null) + return ActionDetails.removeAction(v) + case "team_invite_details": + let v = try TeamLog.TeamInviteDetailsSerializer().deserialize(json) + return ActionDetails.teamInviteDetails(v) + case "team_join_details": + let v = try TeamLog.JoinTeamDetailsSerializer().deserialize(json) + return ActionDetails.teamJoinDetails(v) + case "other": + return ActionDetails.other + default: + return ActionDetails.other + } default: - return ActionDetails.other - } - default: - throw JSONSerializerError.deserializeError(type: ActionDetails.self, json: json) + throw JSONSerializerError.deserializeError(type: ActionDetails.self, json: json) } } } @@ -990,70 +945,276 @@ public class TeamLog { } } } - public class ActorLogInfoSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: ActorLogInfo) throws -> JSON { switch value { - case .admin(let arg): - var d = try ["admin": TeamLog.UserLogInfoSerializer().serialize(arg)] - d[".tag"] = .str("admin") - return .dictionary(d) - case .anonymous: - var d = [String: JSON]() - d[".tag"] = .str("anonymous") - return .dictionary(d) - case .app(let arg): - var d = try ["app": TeamLog.AppLogInfoSerializer().serialize(arg)] - d[".tag"] = .str("app") - return .dictionary(d) - case .dropbox: - var d = [String: JSON]() - d[".tag"] = .str("dropbox") - return .dictionary(d) - case .reseller(let arg): - var d = try Serialization.getFields(TeamLog.ResellerLogInfoSerializer().serialize(arg)) - d[".tag"] = .str("reseller") - return .dictionary(d) - case .user(let arg): - var d = try ["user": TeamLog.UserLogInfoSerializer().serialize(arg)] - d[".tag"] = .str("user") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) + case .admin(let arg): + var d = try ["admin": TeamLog.UserLogInfoSerializer().serialize(arg)] + d[".tag"] = .str("admin") + return .dictionary(d) + case .anonymous: + var d = [String: JSON]() + d[".tag"] = .str("anonymous") + return .dictionary(d) + case .app(let arg): + var d = try ["app": TeamLog.AppLogInfoSerializer().serialize(arg)] + d[".tag"] = .str("app") + return .dictionary(d) + case .dropbox: + var d = [String: JSON]() + d[".tag"] = .str("dropbox") + return .dictionary(d) + case .reseller(let arg): + var d = try Serialization.getFields(TeamLog.ResellerLogInfoSerializer().serialize(arg)) + d[".tag"] = .str("reseller") + return .dictionary(d) + case .user(let arg): + var d = try ["user": TeamLog.UserLogInfoSerializer().serialize(arg)] + d[".tag"] = .str("user") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) } } - public func deserialize(_ json: JSON) throws -> ActorLogInfo { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "admin": - let v = try TeamLog.UserLogInfoSerializer().deserialize(d["admin"] ?? .null) - return ActorLogInfo.admin(v) - case "anonymous": - return ActorLogInfo.anonymous - case "app": - let v = try TeamLog.AppLogInfoSerializer().deserialize(d["app"] ?? .null) - return ActorLogInfo.app(v) - case "dropbox": - return ActorLogInfo.dropbox - case "reseller": - let v = try TeamLog.ResellerLogInfoSerializer().deserialize(json) - return ActorLogInfo.reseller(v) - case "user": - let v = try TeamLog.UserLogInfoSerializer().deserialize(d["user"] ?? .null) - return ActorLogInfo.user(v) - case "other": - return ActorLogInfo.other - default: - return ActorLogInfo.other - } - default: - throw JSONSerializerError.deserializeError(type: ActorLogInfo.self, json: json) + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "admin": + let v = try TeamLog.UserLogInfoSerializer().deserialize(d["admin"] ?? .null) + return ActorLogInfo.admin(v) + case "anonymous": + return ActorLogInfo.anonymous + case "app": + let v = try TeamLog.AppLogInfoSerializer().deserialize(d["app"] ?? .null) + return ActorLogInfo.app(v) + case "dropbox": + return ActorLogInfo.dropbox + case "reseller": + let v = try TeamLog.ResellerLogInfoSerializer().deserialize(json) + return ActorLogInfo.reseller(v) + case "user": + let v = try TeamLog.UserLogInfoSerializer().deserialize(d["user"] ?? .null) + return ActorLogInfo.user(v) + case "other": + return ActorLogInfo.other + default: + return ActorLogInfo.other + } + default: + throw JSONSerializerError.deserializeError(type: ActorLogInfo.self, json: json) + } + } + } + + /// Add-on Assigned. + public class AddonAssignedDetails: CustomStringConvertible, JSONRepresentable { + /// User's name. + public let userName: TeamLog.UserNameLogInfo + /// Add-on name. + public let addonName: TeamLog.AddonLogInfo + public init(userName: TeamLog.UserNameLogInfo, addonName: TeamLog.AddonLogInfo) { + self.userName = userName + self.addonName = addonName + } + + func json() throws -> JSON { + try AddonAssignedDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try AddonAssignedDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for AddonAssignedDetails: \(error)" + } + } + } + public class AddonAssignedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: AddonAssignedDetails) throws -> JSON { + let output = [ + "user_name": try TeamLog.UserNameLogInfoSerializer().serialize(value.userName), + "addon_name": try TeamLog.AddonLogInfoSerializer().serialize(value.addonName), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> AddonAssignedDetails { + switch json { + case .dictionary(let dict): + let userName = try TeamLog.UserNameLogInfoSerializer().deserialize(dict["user_name"] ?? .null) + let addonName = try TeamLog.AddonLogInfoSerializer().deserialize(dict["addon_name"] ?? .null) + return AddonAssignedDetails(userName: userName, addonName: addonName) + default: + throw JSONSerializerError.deserializeError(type: AddonAssignedDetails.self, json: json) + } + } + } + + /// The AddonAssignedType struct + public class AddonAssignedType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try AddonAssignedTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try AddonAssignedTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for AddonAssignedType: \(error)" + } + } + } + public class AddonAssignedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: AddonAssignedType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> AddonAssignedType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return AddonAssignedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: AddonAssignedType.self, json: json) + } + } + } + + /// Add-on logged information + public class AddonLogInfo: CustomStringConvertible, JSONRepresentable { + /// Add-on name. + public let addonName: String + public init(addonName: String) { + stringValidator()(addonName) + self.addonName = addonName + } + + func json() throws -> JSON { + try AddonLogInfoSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try AddonLogInfoSerializer().serialize(self)))" + } catch { + return "Failed to generate description for AddonLogInfo: \(error)" + } + } + } + public class AddonLogInfoSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: AddonLogInfo) throws -> JSON { + let output = [ + "addon_name": try Serialization._StringSerializer.serialize(value.addonName), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> AddonLogInfo { + switch json { + case .dictionary(let dict): + let addonName = try Serialization._StringSerializer.deserialize(dict["addon_name"] ?? .null) + return AddonLogInfo(addonName: addonName) + default: + throw JSONSerializerError.deserializeError(type: AddonLogInfo.self, json: json) + } + } + } + + /// Add-on Removed. + public class AddonRemovedDetails: CustomStringConvertible, JSONRepresentable { + /// User's name. + public let userName: TeamLog.UserNameLogInfo + /// Add-on name. + public let addonName: TeamLog.AddonLogInfo + public init(userName: TeamLog.UserNameLogInfo, addonName: TeamLog.AddonLogInfo) { + self.userName = userName + self.addonName = addonName + } + + func json() throws -> JSON { + try AddonRemovedDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try AddonRemovedDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for AddonRemovedDetails: \(error)" + } + } + } + public class AddonRemovedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: AddonRemovedDetails) throws -> JSON { + let output = [ + "user_name": try TeamLog.UserNameLogInfoSerializer().serialize(value.userName), + "addon_name": try TeamLog.AddonLogInfoSerializer().serialize(value.addonName), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> AddonRemovedDetails { + switch json { + case .dictionary(let dict): + let userName = try TeamLog.UserNameLogInfoSerializer().deserialize(dict["user_name"] ?? .null) + let addonName = try TeamLog.AddonLogInfoSerializer().deserialize(dict["addon_name"] ?? .null) + return AddonRemovedDetails(userName: userName, addonName: addonName) + default: + throw JSONSerializerError.deserializeError(type: AddonRemovedDetails.self, json: json) + } + } + } + + /// The AddonRemovedType struct + public class AddonRemovedType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try AddonRemovedTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try AddonRemovedTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for AddonRemovedType: \(error)" + } + } + } + public class AddonRemovedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: AddonRemovedType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> AddonRemovedType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return AddonRemovedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: AddonRemovedType.self, json: json) } } } @@ -1089,72 +1250,70 @@ public class TeamLog { } } } - public class AdminAlertCategoryEnumSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: AdminAlertCategoryEnum) throws -> JSON { switch value { - case .accountTakeover: - var d = [String: JSON]() - d[".tag"] = .str("account_takeover") - return .dictionary(d) - case .dataLossProtection: - var d = [String: JSON]() - d[".tag"] = .str("data_loss_protection") - return .dictionary(d) - case .informationGovernance: - var d = [String: JSON]() - d[".tag"] = .str("information_governance") - return .dictionary(d) - case .malwareSharing: - var d = [String: JSON]() - d[".tag"] = .str("malware_sharing") - return .dictionary(d) - case .massiveFileOperation: - var d = [String: JSON]() - d[".tag"] = .str("massive_file_operation") - return .dictionary(d) - case .na: - var d = [String: JSON]() - d[".tag"] = .str("na") - return .dictionary(d) - case .threatManagement: - var d = [String: JSON]() - d[".tag"] = .str("threat_management") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) + case .accountTakeover: + var d = [String: JSON]() + d[".tag"] = .str("account_takeover") + return .dictionary(d) + case .dataLossProtection: + var d = [String: JSON]() + d[".tag"] = .str("data_loss_protection") + return .dictionary(d) + case .informationGovernance: + var d = [String: JSON]() + d[".tag"] = .str("information_governance") + return .dictionary(d) + case .malwareSharing: + var d = [String: JSON]() + d[".tag"] = .str("malware_sharing") + return .dictionary(d) + case .massiveFileOperation: + var d = [String: JSON]() + d[".tag"] = .str("massive_file_operation") + return .dictionary(d) + case .na: + var d = [String: JSON]() + d[".tag"] = .str("na") + return .dictionary(d) + case .threatManagement: + var d = [String: JSON]() + d[".tag"] = .str("threat_management") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) } } - public func deserialize(_ json: JSON) throws -> AdminAlertCategoryEnum { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "account_takeover": - return AdminAlertCategoryEnum.accountTakeover - case "data_loss_protection": - return AdminAlertCategoryEnum.dataLossProtection - case "information_governance": - return AdminAlertCategoryEnum.informationGovernance - case "malware_sharing": - return AdminAlertCategoryEnum.malwareSharing - case "massive_file_operation": - return AdminAlertCategoryEnum.massiveFileOperation - case "na": - return AdminAlertCategoryEnum.na - case "threat_management": - return AdminAlertCategoryEnum.threatManagement - case "other": - return AdminAlertCategoryEnum.other - default: - return AdminAlertCategoryEnum.other - } - default: - throw JSONSerializerError.deserializeError(type: AdminAlertCategoryEnum.self, json: json) + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "account_takeover": + return AdminAlertCategoryEnum.accountTakeover + case "data_loss_protection": + return AdminAlertCategoryEnum.dataLossProtection + case "information_governance": + return AdminAlertCategoryEnum.informationGovernance + case "malware_sharing": + return AdminAlertCategoryEnum.malwareSharing + case "massive_file_operation": + return AdminAlertCategoryEnum.massiveFileOperation + case "na": + return AdminAlertCategoryEnum.na + case "threat_management": + return AdminAlertCategoryEnum.threatManagement + case "other": + return AdminAlertCategoryEnum.other + default: + return AdminAlertCategoryEnum.other + } + default: + throw JSONSerializerError.deserializeError(type: AdminAlertCategoryEnum.self, json: json) } } } @@ -1186,60 +1345,58 @@ public class TeamLog { } } } - public class AdminAlertGeneralStateEnumSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: AdminAlertGeneralStateEnum) throws -> JSON { switch value { - case .active: - var d = [String: JSON]() - d[".tag"] = .str("active") - return .dictionary(d) - case .dismissed: - var d = [String: JSON]() - d[".tag"] = .str("dismissed") - return .dictionary(d) - case .inProgress: - var d = [String: JSON]() - d[".tag"] = .str("in_progress") - return .dictionary(d) - case .na: - var d = [String: JSON]() - d[".tag"] = .str("na") - return .dictionary(d) - case .resolved: - var d = [String: JSON]() - d[".tag"] = .str("resolved") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) + case .active: + var d = [String: JSON]() + d[".tag"] = .str("active") + return .dictionary(d) + case .dismissed: + var d = [String: JSON]() + d[".tag"] = .str("dismissed") + return .dictionary(d) + case .inProgress: + var d = [String: JSON]() + d[".tag"] = .str("in_progress") + return .dictionary(d) + case .na: + var d = [String: JSON]() + d[".tag"] = .str("na") + return .dictionary(d) + case .resolved: + var d = [String: JSON]() + d[".tag"] = .str("resolved") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) } } - public func deserialize(_ json: JSON) throws -> AdminAlertGeneralStateEnum { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "active": - return AdminAlertGeneralStateEnum.active - case "dismissed": - return AdminAlertGeneralStateEnum.dismissed - case "in_progress": - return AdminAlertGeneralStateEnum.inProgress - case "na": - return AdminAlertGeneralStateEnum.na - case "resolved": - return AdminAlertGeneralStateEnum.resolved - case "other": - return AdminAlertGeneralStateEnum.other + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "active": + return AdminAlertGeneralStateEnum.active + case "dismissed": + return AdminAlertGeneralStateEnum.dismissed + case "in_progress": + return AdminAlertGeneralStateEnum.inProgress + case "na": + return AdminAlertGeneralStateEnum.na + case "resolved": + return AdminAlertGeneralStateEnum.resolved + case "other": + return AdminAlertGeneralStateEnum.other + default: + return AdminAlertGeneralStateEnum.other + } default: - return AdminAlertGeneralStateEnum.other - } - default: - throw JSONSerializerError.deserializeError(type: AdminAlertGeneralStateEnum.self, json: json) + throw JSONSerializerError.deserializeError(type: AdminAlertGeneralStateEnum.self, json: json) } } } @@ -1271,60 +1428,58 @@ public class TeamLog { } } } - public class AdminAlertSeverityEnumSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: AdminAlertSeverityEnum) throws -> JSON { switch value { - case .high: - var d = [String: JSON]() - d[".tag"] = .str("high") - return .dictionary(d) - case .info: - var d = [String: JSON]() - d[".tag"] = .str("info") - return .dictionary(d) - case .low: - var d = [String: JSON]() - d[".tag"] = .str("low") - return .dictionary(d) - case .medium: - var d = [String: JSON]() - d[".tag"] = .str("medium") - return .dictionary(d) - case .na: - var d = [String: JSON]() - d[".tag"] = .str("na") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) + case .high: + var d = [String: JSON]() + d[".tag"] = .str("high") + return .dictionary(d) + case .info: + var d = [String: JSON]() + d[".tag"] = .str("info") + return .dictionary(d) + case .low: + var d = [String: JSON]() + d[".tag"] = .str("low") + return .dictionary(d) + case .medium: + var d = [String: JSON]() + d[".tag"] = .str("medium") + return .dictionary(d) + case .na: + var d = [String: JSON]() + d[".tag"] = .str("na") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) } } - public func deserialize(_ json: JSON) throws -> AdminAlertSeverityEnum { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "high": - return AdminAlertSeverityEnum.high - case "info": - return AdminAlertSeverityEnum.info - case "low": - return AdminAlertSeverityEnum.low - case "medium": - return AdminAlertSeverityEnum.medium - case "na": - return AdminAlertSeverityEnum.na - case "other": - return AdminAlertSeverityEnum.other + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "high": + return AdminAlertSeverityEnum.high + case "info": + return AdminAlertSeverityEnum.info + case "low": + return AdminAlertSeverityEnum.low + case "medium": + return AdminAlertSeverityEnum.medium + case "na": + return AdminAlertSeverityEnum.na + case "other": + return AdminAlertSeverityEnum.other + default: + return AdminAlertSeverityEnum.other + } default: - return AdminAlertSeverityEnum.other - } - default: - throw JSONSerializerError.deserializeError(type: AdminAlertSeverityEnum.self, json: json) + throw JSONSerializerError.deserializeError(type: AdminAlertSeverityEnum.self, json: json) } } } @@ -1341,13 +1496,9 @@ public class TeamLog { public let text: String? /// Excluded file extensions. public let excludedFileExtensions: String? - public init( - alertState: TeamLog.AdminAlertingAlertStatePolicy? = nil, - sensitivityLevel: TeamLog.AdminAlertingAlertSensitivity? = nil, - recipientsSettings: TeamLog.RecipientsConfiguration? = nil, - text: String? = nil, - excludedFileExtensions: String? = nil - ) { + /// Malware exclusion list state. + public let malwareExclusionState: TeamLog.MalwareExclusionState? + public init(alertState: TeamLog.AdminAlertingAlertStatePolicy? = nil, sensitivityLevel: TeamLog.AdminAlertingAlertSensitivity? = nil, recipientsSettings: TeamLog.RecipientsConfiguration? = nil, text: String? = nil, excludedFileExtensions: String? = nil, malwareExclusionState: TeamLog.MalwareExclusionState? = nil) { self.alertState = alertState self.sensitivityLevel = sensitivityLevel self.recipientsSettings = recipientsSettings @@ -1355,6 +1506,7 @@ public class TeamLog { self.text = text nullableValidator(stringValidator())(excludedFileExtensions) self.excludedFileExtensions = excludedFileExtensions + self.malwareExclusionState = malwareExclusionState } func json() throws -> JSON { @@ -1369,39 +1521,31 @@ public class TeamLog { } } } - public class AdminAlertingAlertConfigurationSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: AdminAlertingAlertConfiguration) throws -> JSON { let output = [ - "alert_state": try NullableSerializer(TeamLog.AdminAlertingAlertStatePolicySerializer()).serialize(value.alertState), - "sensitivity_level": try NullableSerializer(TeamLog.AdminAlertingAlertSensitivitySerializer()).serialize(value.sensitivityLevel), - "recipients_settings": try NullableSerializer(TeamLog.RecipientsConfigurationSerializer()).serialize(value.recipientsSettings), - "text": try NullableSerializer(Serialization._StringSerializer).serialize(value.text), - "excluded_file_extensions": try NullableSerializer(Serialization._StringSerializer).serialize(value.excludedFileExtensions), + "alert_state": try NullableSerializer(TeamLog.AdminAlertingAlertStatePolicySerializer()).serialize(value.alertState), + "sensitivity_level": try NullableSerializer(TeamLog.AdminAlertingAlertSensitivitySerializer()).serialize(value.sensitivityLevel), + "recipients_settings": try NullableSerializer(TeamLog.RecipientsConfigurationSerializer()).serialize(value.recipientsSettings), + "text": try NullableSerializer(Serialization._StringSerializer).serialize(value.text), + "excluded_file_extensions": try NullableSerializer(Serialization._StringSerializer).serialize(value.excludedFileExtensions), + "malware_exclusion_state": try NullableSerializer(TeamLog.MalwareExclusionStateSerializer()).serialize(value.malwareExclusionState), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> AdminAlertingAlertConfiguration { switch json { - case .dictionary(let dict): - let alertState = try NullableSerializer(TeamLog.AdminAlertingAlertStatePolicySerializer()).deserialize(dict["alert_state"] ?? .null) - let sensitivityLevel = try NullableSerializer(TeamLog.AdminAlertingAlertSensitivitySerializer()) - .deserialize(dict["sensitivity_level"] ?? .null) - let recipientsSettings = try NullableSerializer(TeamLog.RecipientsConfigurationSerializer()) - .deserialize(dict["recipients_settings"] ?? .null) - let text = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["text"] ?? .null) - let excludedFileExtensions = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["excluded_file_extensions"] ?? .null) - return AdminAlertingAlertConfiguration( - alertState: alertState, - sensitivityLevel: sensitivityLevel, - recipientsSettings: recipientsSettings, - text: text, - excludedFileExtensions: excludedFileExtensions - ) - default: - throw JSONSerializerError.deserializeError(type: AdminAlertingAlertConfiguration.self, json: json) + case .dictionary(let dict): + let alertState = try NullableSerializer(TeamLog.AdminAlertingAlertStatePolicySerializer()).deserialize(dict["alert_state"] ?? .null) + let sensitivityLevel = try NullableSerializer(TeamLog.AdminAlertingAlertSensitivitySerializer()).deserialize(dict["sensitivity_level"] ?? .null) + let recipientsSettings = try NullableSerializer(TeamLog.RecipientsConfigurationSerializer()).deserialize(dict["recipients_settings"] ?? .null) + let text = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["text"] ?? .null) + let excludedFileExtensions = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["excluded_file_extensions"] ?? .null) + let malwareExclusionState = try NullableSerializer(TeamLog.MalwareExclusionStateSerializer()).deserialize(dict["malware_exclusion_state"] ?? .null) + return AdminAlertingAlertConfiguration(alertState: alertState, sensitivityLevel: sensitivityLevel, recipientsSettings: recipientsSettings, text: text, excludedFileExtensions: excludedFileExtensions, malwareExclusionState: malwareExclusionState) + default: + throw JSONSerializerError.deserializeError(type: AdminAlertingAlertConfiguration.self, json: json) } } } @@ -1435,66 +1579,64 @@ public class TeamLog { } } } - public class AdminAlertingAlertSensitivitySerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: AdminAlertingAlertSensitivity) throws -> JSON { switch value { - case .high: - var d = [String: JSON]() - d[".tag"] = .str("high") - return .dictionary(d) - case .highest: - var d = [String: JSON]() - d[".tag"] = .str("highest") - return .dictionary(d) - case .invalid: - var d = [String: JSON]() - d[".tag"] = .str("invalid") - return .dictionary(d) - case .low: - var d = [String: JSON]() - d[".tag"] = .str("low") - return .dictionary(d) - case .lowest: - var d = [String: JSON]() - d[".tag"] = .str("lowest") - return .dictionary(d) - case .medium: - var d = [String: JSON]() - d[".tag"] = .str("medium") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) + case .high: + var d = [String: JSON]() + d[".tag"] = .str("high") + return .dictionary(d) + case .highest: + var d = [String: JSON]() + d[".tag"] = .str("highest") + return .dictionary(d) + case .invalid: + var d = [String: JSON]() + d[".tag"] = .str("invalid") + return .dictionary(d) + case .low: + var d = [String: JSON]() + d[".tag"] = .str("low") + return .dictionary(d) + case .lowest: + var d = [String: JSON]() + d[".tag"] = .str("lowest") + return .dictionary(d) + case .medium: + var d = [String: JSON]() + d[".tag"] = .str("medium") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) } } - public func deserialize(_ json: JSON) throws -> AdminAlertingAlertSensitivity { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "high": - return AdminAlertingAlertSensitivity.high - case "highest": - return AdminAlertingAlertSensitivity.highest - case "invalid": - return AdminAlertingAlertSensitivity.invalid - case "low": - return AdminAlertingAlertSensitivity.low - case "lowest": - return AdminAlertingAlertSensitivity.lowest - case "medium": - return AdminAlertingAlertSensitivity.medium - case "other": - return AdminAlertingAlertSensitivity.other + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "high": + return AdminAlertingAlertSensitivity.high + case "highest": + return AdminAlertingAlertSensitivity.highest + case "invalid": + return AdminAlertingAlertSensitivity.invalid + case "low": + return AdminAlertingAlertSensitivity.low + case "lowest": + return AdminAlertingAlertSensitivity.lowest + case "medium": + return AdminAlertingAlertSensitivity.medium + case "other": + return AdminAlertingAlertSensitivity.other + default: + return AdminAlertingAlertSensitivity.other + } default: - return AdminAlertingAlertSensitivity.other - } - default: - throw JSONSerializerError.deserializeError(type: AdminAlertingAlertSensitivity.self, json: json) + throw JSONSerializerError.deserializeError(type: AdminAlertingAlertSensitivity.self, json: json) } } } @@ -1513,14 +1655,7 @@ public class TeamLog { public let previousValue: TeamLog.AdminAlertGeneralStateEnum /// Alert state after the change. public let newValue: TeamLog.AdminAlertGeneralStateEnum - public init( - alertName: String, - alertSeverity: TeamLog.AdminAlertSeverityEnum, - alertCategory: TeamLog.AdminAlertCategoryEnum, - alertInstanceId: String, - previousValue: TeamLog.AdminAlertGeneralStateEnum, - newValue: TeamLog.AdminAlertGeneralStateEnum - ) { + public init(alertName: String, alertSeverity: TeamLog.AdminAlertSeverityEnum, alertCategory: TeamLog.AdminAlertCategoryEnum, alertInstanceId: String, previousValue: TeamLog.AdminAlertGeneralStateEnum, newValue: TeamLog.AdminAlertGeneralStateEnum) { stringValidator()(alertName) self.alertName = alertName self.alertSeverity = alertSeverity @@ -1543,40 +1678,31 @@ public class TeamLog { } } } - public class AdminAlertingAlertStateChangedDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: AdminAlertingAlertStateChangedDetails) throws -> JSON { let output = [ - "alert_name": try Serialization._StringSerializer.serialize(value.alertName), - "alert_severity": try TeamLog.AdminAlertSeverityEnumSerializer().serialize(value.alertSeverity), - "alert_category": try TeamLog.AdminAlertCategoryEnumSerializer().serialize(value.alertCategory), - "alert_instance_id": try Serialization._StringSerializer.serialize(value.alertInstanceId), - "previous_value": try TeamLog.AdminAlertGeneralStateEnumSerializer().serialize(value.previousValue), - "new_value": try TeamLog.AdminAlertGeneralStateEnumSerializer().serialize(value.newValue), + "alert_name": try Serialization._StringSerializer.serialize(value.alertName), + "alert_severity": try TeamLog.AdminAlertSeverityEnumSerializer().serialize(value.alertSeverity), + "alert_category": try TeamLog.AdminAlertCategoryEnumSerializer().serialize(value.alertCategory), + "alert_instance_id": try Serialization._StringSerializer.serialize(value.alertInstanceId), + "previous_value": try TeamLog.AdminAlertGeneralStateEnumSerializer().serialize(value.previousValue), + "new_value": try TeamLog.AdminAlertGeneralStateEnumSerializer().serialize(value.newValue), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> AdminAlertingAlertStateChangedDetails { switch json { - case .dictionary(let dict): - let alertName = try Serialization._StringSerializer.deserialize(dict["alert_name"] ?? .null) - let alertSeverity = try TeamLog.AdminAlertSeverityEnumSerializer().deserialize(dict["alert_severity"] ?? .null) - let alertCategory = try TeamLog.AdminAlertCategoryEnumSerializer().deserialize(dict["alert_category"] ?? .null) - let alertInstanceId = try Serialization._StringSerializer.deserialize(dict["alert_instance_id"] ?? .null) - let previousValue = try TeamLog.AdminAlertGeneralStateEnumSerializer().deserialize(dict["previous_value"] ?? .null) - let newValue = try TeamLog.AdminAlertGeneralStateEnumSerializer().deserialize(dict["new_value"] ?? .null) - return AdminAlertingAlertStateChangedDetails( - alertName: alertName, - alertSeverity: alertSeverity, - alertCategory: alertCategory, - alertInstanceId: alertInstanceId, - previousValue: previousValue, - newValue: newValue - ) - default: - throw JSONSerializerError.deserializeError(type: AdminAlertingAlertStateChangedDetails.self, json: json) + case .dictionary(let dict): + let alertName = try Serialization._StringSerializer.deserialize(dict["alert_name"] ?? .null) + let alertSeverity = try TeamLog.AdminAlertSeverityEnumSerializer().deserialize(dict["alert_severity"] ?? .null) + let alertCategory = try TeamLog.AdminAlertCategoryEnumSerializer().deserialize(dict["alert_category"] ?? .null) + let alertInstanceId = try Serialization._StringSerializer.deserialize(dict["alert_instance_id"] ?? .null) + let previousValue = try TeamLog.AdminAlertGeneralStateEnumSerializer().deserialize(dict["previous_value"] ?? .null) + let newValue = try TeamLog.AdminAlertGeneralStateEnumSerializer().deserialize(dict["new_value"] ?? .null) + return AdminAlertingAlertStateChangedDetails(alertName: alertName, alertSeverity: alertSeverity, alertCategory: alertCategory, alertInstanceId: alertInstanceId, previousValue: previousValue, newValue: newValue) + default: + throw JSONSerializerError.deserializeError(type: AdminAlertingAlertStateChangedDetails.self, json: json) } } } @@ -1602,23 +1728,21 @@ public class TeamLog { } } } - public class AdminAlertingAlertStateChangedTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: AdminAlertingAlertStateChangedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> AdminAlertingAlertStateChangedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return AdminAlertingAlertStateChangedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: AdminAlertingAlertStateChangedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return AdminAlertingAlertStateChangedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: AdminAlertingAlertStateChangedType.self, json: json) } } } @@ -1644,42 +1768,40 @@ public class TeamLog { } } } - public class AdminAlertingAlertStatePolicySerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: AdminAlertingAlertStatePolicy) throws -> JSON { switch value { - case .off: - var d = [String: JSON]() - d[".tag"] = .str("off") - return .dictionary(d) - case .on: - var d = [String: JSON]() - d[".tag"] = .str("on") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) + case .off: + var d = [String: JSON]() + d[".tag"] = .str("off") + return .dictionary(d) + case .on: + var d = [String: JSON]() + d[".tag"] = .str("on") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) } } - public func deserialize(_ json: JSON) throws -> AdminAlertingAlertStatePolicy { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "off": - return AdminAlertingAlertStatePolicy.off - case "on": - return AdminAlertingAlertStatePolicy.on - case "other": - return AdminAlertingAlertStatePolicy.other + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "off": + return AdminAlertingAlertStatePolicy.off + case "on": + return AdminAlertingAlertStatePolicy.on + case "other": + return AdminAlertingAlertStatePolicy.other + default: + return AdminAlertingAlertStatePolicy.other + } default: - return AdminAlertingAlertStatePolicy.other - } - default: - throw JSONSerializerError.deserializeError(type: AdminAlertingAlertStatePolicy.self, json: json) + throw JSONSerializerError.deserializeError(type: AdminAlertingAlertStatePolicy.self, json: json) } } } @@ -1711,31 +1833,25 @@ public class TeamLog { } } } - public class AdminAlertingChangedAlertConfigDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: AdminAlertingChangedAlertConfigDetails) throws -> JSON { let output = [ - "alert_name": try Serialization._StringSerializer.serialize(value.alertName), - "previous_alert_config": try TeamLog.AdminAlertingAlertConfigurationSerializer().serialize(value.previousAlertConfig), - "new_alert_config": try TeamLog.AdminAlertingAlertConfigurationSerializer().serialize(value.newAlertConfig), + "alert_name": try Serialization._StringSerializer.serialize(value.alertName), + "previous_alert_config": try TeamLog.AdminAlertingAlertConfigurationSerializer().serialize(value.previousAlertConfig), + "new_alert_config": try TeamLog.AdminAlertingAlertConfigurationSerializer().serialize(value.newAlertConfig), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> AdminAlertingChangedAlertConfigDetails { switch json { - case .dictionary(let dict): - let alertName = try Serialization._StringSerializer.deserialize(dict["alert_name"] ?? .null) - let previousAlertConfig = try TeamLog.AdminAlertingAlertConfigurationSerializer().deserialize(dict["previous_alert_config"] ?? .null) - let newAlertConfig = try TeamLog.AdminAlertingAlertConfigurationSerializer().deserialize(dict["new_alert_config"] ?? .null) - return AdminAlertingChangedAlertConfigDetails( - alertName: alertName, - previousAlertConfig: previousAlertConfig, - newAlertConfig: newAlertConfig - ) - default: - throw JSONSerializerError.deserializeError(type: AdminAlertingChangedAlertConfigDetails.self, json: json) + case .dictionary(let dict): + let alertName = try Serialization._StringSerializer.deserialize(dict["alert_name"] ?? .null) + let previousAlertConfig = try TeamLog.AdminAlertingAlertConfigurationSerializer().deserialize(dict["previous_alert_config"] ?? .null) + let newAlertConfig = try TeamLog.AdminAlertingAlertConfigurationSerializer().deserialize(dict["new_alert_config"] ?? .null) + return AdminAlertingChangedAlertConfigDetails(alertName: alertName, previousAlertConfig: previousAlertConfig, newAlertConfig: newAlertConfig) + default: + throw JSONSerializerError.deserializeError(type: AdminAlertingChangedAlertConfigDetails.self, json: json) } } } @@ -1761,23 +1877,21 @@ public class TeamLog { } } } - public class AdminAlertingChangedAlertConfigTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: AdminAlertingChangedAlertConfigType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> AdminAlertingChangedAlertConfigType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return AdminAlertingChangedAlertConfigType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: AdminAlertingChangedAlertConfigType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return AdminAlertingChangedAlertConfigType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: AdminAlertingChangedAlertConfigType.self, json: json) } } } @@ -1813,34 +1927,27 @@ public class TeamLog { } } } - public class AdminAlertingTriggeredAlertDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: AdminAlertingTriggeredAlertDetails) throws -> JSON { let output = [ - "alert_name": try Serialization._StringSerializer.serialize(value.alertName), - "alert_severity": try TeamLog.AdminAlertSeverityEnumSerializer().serialize(value.alertSeverity), - "alert_category": try TeamLog.AdminAlertCategoryEnumSerializer().serialize(value.alertCategory), - "alert_instance_id": try Serialization._StringSerializer.serialize(value.alertInstanceId), + "alert_name": try Serialization._StringSerializer.serialize(value.alertName), + "alert_severity": try TeamLog.AdminAlertSeverityEnumSerializer().serialize(value.alertSeverity), + "alert_category": try TeamLog.AdminAlertCategoryEnumSerializer().serialize(value.alertCategory), + "alert_instance_id": try Serialization._StringSerializer.serialize(value.alertInstanceId), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> AdminAlertingTriggeredAlertDetails { switch json { - case .dictionary(let dict): - let alertName = try Serialization._StringSerializer.deserialize(dict["alert_name"] ?? .null) - let alertSeverity = try TeamLog.AdminAlertSeverityEnumSerializer().deserialize(dict["alert_severity"] ?? .null) - let alertCategory = try TeamLog.AdminAlertCategoryEnumSerializer().deserialize(dict["alert_category"] ?? .null) - let alertInstanceId = try Serialization._StringSerializer.deserialize(dict["alert_instance_id"] ?? .null) - return AdminAlertingTriggeredAlertDetails( - alertName: alertName, - alertSeverity: alertSeverity, - alertCategory: alertCategory, - alertInstanceId: alertInstanceId - ) - default: - throw JSONSerializerError.deserializeError(type: AdminAlertingTriggeredAlertDetails.self, json: json) + case .dictionary(let dict): + let alertName = try Serialization._StringSerializer.deserialize(dict["alert_name"] ?? .null) + let alertSeverity = try TeamLog.AdminAlertSeverityEnumSerializer().deserialize(dict["alert_severity"] ?? .null) + let alertCategory = try TeamLog.AdminAlertCategoryEnumSerializer().deserialize(dict["alert_category"] ?? .null) + let alertInstanceId = try Serialization._StringSerializer.deserialize(dict["alert_instance_id"] ?? .null) + return AdminAlertingTriggeredAlertDetails(alertName: alertName, alertSeverity: alertSeverity, alertCategory: alertCategory, alertInstanceId: alertInstanceId) + default: + throw JSONSerializerError.deserializeError(type: AdminAlertingTriggeredAlertDetails.self, json: json) } } } @@ -1866,23 +1973,21 @@ public class TeamLog { } } } - public class AdminAlertingTriggeredAlertTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: AdminAlertingTriggeredAlertType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> AdminAlertingTriggeredAlertType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return AdminAlertingTriggeredAlertType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: AdminAlertingTriggeredAlertType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return AdminAlertingTriggeredAlertType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: AdminAlertingTriggeredAlertType.self, json: json) } } } @@ -1908,42 +2013,40 @@ public class TeamLog { } } } - public class AdminConsoleAppPermissionSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: AdminConsoleAppPermission) throws -> JSON { switch value { - case .defaultForListedApps: - var d = [String: JSON]() - d[".tag"] = .str("default_for_listed_apps") - return .dictionary(d) - case .defaultForUnlistedApps: - var d = [String: JSON]() - d[".tag"] = .str("default_for_unlisted_apps") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) + case .defaultForListedApps: + var d = [String: JSON]() + d[".tag"] = .str("default_for_listed_apps") + return .dictionary(d) + case .defaultForUnlistedApps: + var d = [String: JSON]() + d[".tag"] = .str("default_for_unlisted_apps") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) } } - public func deserialize(_ json: JSON) throws -> AdminConsoleAppPermission { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "default_for_listed_apps": - return AdminConsoleAppPermission.defaultForListedApps - case "default_for_unlisted_apps": - return AdminConsoleAppPermission.defaultForUnlistedApps - case "other": - return AdminConsoleAppPermission.other + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "default_for_listed_apps": + return AdminConsoleAppPermission.defaultForListedApps + case "default_for_unlisted_apps": + return AdminConsoleAppPermission.defaultForUnlistedApps + case "other": + return AdminConsoleAppPermission.other + default: + return AdminConsoleAppPermission.other + } default: - return AdminConsoleAppPermission.other - } - default: - throw JSONSerializerError.deserializeError(type: AdminConsoleAppPermission.self, json: json) + throw JSONSerializerError.deserializeError(type: AdminConsoleAppPermission.self, json: json) } } } @@ -1971,48 +2074,46 @@ public class TeamLog { } } } - public class AdminConsoleAppPolicySerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: AdminConsoleAppPolicy) throws -> JSON { switch value { - case .allow: - var d = [String: JSON]() - d[".tag"] = .str("allow") - return .dictionary(d) - case .block: - var d = [String: JSON]() - d[".tag"] = .str("block") - return .dictionary(d) - case .default_: - var d = [String: JSON]() - d[".tag"] = .str("default") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) + case .allow: + var d = [String: JSON]() + d[".tag"] = .str("allow") + return .dictionary(d) + case .block: + var d = [String: JSON]() + d[".tag"] = .str("block") + return .dictionary(d) + case .default_: + var d = [String: JSON]() + d[".tag"] = .str("default") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) } } - public func deserialize(_ json: JSON) throws -> AdminConsoleAppPolicy { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "allow": - return AdminConsoleAppPolicy.allow - case "block": - return AdminConsoleAppPolicy.block - case "default": - return AdminConsoleAppPolicy.default_ - case "other": - return AdminConsoleAppPolicy.other + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "allow": + return AdminConsoleAppPolicy.allow + case "block": + return AdminConsoleAppPolicy.block + case "default": + return AdminConsoleAppPolicy.default_ + case "other": + return AdminConsoleAppPolicy.other + default: + return AdminConsoleAppPolicy.other + } default: - return AdminConsoleAppPolicy.other - } - default: - throw JSONSerializerError.deserializeError(type: AdminConsoleAppPolicy.self, json: json) + throw JSONSerializerError.deserializeError(type: AdminConsoleAppPolicy.self, json: json) } } } @@ -2040,25 +2141,23 @@ public class TeamLog { } } } - public class AdminEmailRemindersChangedDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: AdminEmailRemindersChangedDetails) throws -> JSON { let output = [ - "new_value": try TeamLog.AdminEmailRemindersPolicySerializer().serialize(value.newValue), - "previous_value": try TeamLog.AdminEmailRemindersPolicySerializer().serialize(value.previousValue), + "new_value": try TeamLog.AdminEmailRemindersPolicySerializer().serialize(value.newValue), + "previous_value": try TeamLog.AdminEmailRemindersPolicySerializer().serialize(value.previousValue), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> AdminEmailRemindersChangedDetails { switch json { - case .dictionary(let dict): - let newValue = try TeamLog.AdminEmailRemindersPolicySerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try TeamLog.AdminEmailRemindersPolicySerializer().deserialize(dict["previous_value"] ?? .null) - return AdminEmailRemindersChangedDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: AdminEmailRemindersChangedDetails.self, json: json) + case .dictionary(let dict): + let newValue = try TeamLog.AdminEmailRemindersPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try TeamLog.AdminEmailRemindersPolicySerializer().deserialize(dict["previous_value"] ?? .null) + return AdminEmailRemindersChangedDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: AdminEmailRemindersChangedDetails.self, json: json) } } } @@ -2084,23 +2183,21 @@ public class TeamLog { } } } - public class AdminEmailRemindersChangedTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: AdminEmailRemindersChangedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> AdminEmailRemindersChangedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return AdminEmailRemindersChangedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: AdminEmailRemindersChangedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return AdminEmailRemindersChangedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: AdminEmailRemindersChangedType.self, json: json) } } } @@ -2128,48 +2225,46 @@ public class TeamLog { } } } - public class AdminEmailRemindersPolicySerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: AdminEmailRemindersPolicy) throws -> JSON { switch value { - case .default_: - var d = [String: JSON]() - d[".tag"] = .str("default") - return .dictionary(d) - case .disabled: - var d = [String: JSON]() - d[".tag"] = .str("disabled") - return .dictionary(d) - case .enabled: - var d = [String: JSON]() - d[".tag"] = .str("enabled") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) + case .default_: + var d = [String: JSON]() + d[".tag"] = .str("default") + return .dictionary(d) + case .disabled: + var d = [String: JSON]() + d[".tag"] = .str("disabled") + return .dictionary(d) + case .enabled: + var d = [String: JSON]() + d[".tag"] = .str("enabled") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) } } - public func deserialize(_ json: JSON) throws -> AdminEmailRemindersPolicy { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "default": - return AdminEmailRemindersPolicy.default_ - case "disabled": - return AdminEmailRemindersPolicy.disabled - case "enabled": - return AdminEmailRemindersPolicy.enabled - case "other": - return AdminEmailRemindersPolicy.other + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "default": + return AdminEmailRemindersPolicy.default_ + case "disabled": + return AdminEmailRemindersPolicy.disabled + case "enabled": + return AdminEmailRemindersPolicy.enabled + case "other": + return AdminEmailRemindersPolicy.other + default: + return AdminEmailRemindersPolicy.other + } default: - return AdminEmailRemindersPolicy.other - } - default: - throw JSONSerializerError.deserializeError(type: AdminEmailRemindersPolicy.self, json: json) + throw JSONSerializerError.deserializeError(type: AdminEmailRemindersPolicy.self, json: json) } } } @@ -2183,6 +2278,10 @@ public class TeamLog { /// An unspecified error. case contentAdmin /// An unspecified error. + case deprecatedFreemiumTeamMember + /// An unspecified error. + case freemiumTeamCreator + /// An unspecified error. case limitedAdmin /// An unspecified error. case memberOnly @@ -2211,90 +2310,259 @@ public class TeamLog { } } } - public class AdminRoleSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: AdminRole) throws -> JSON { switch value { - case .billingAdmin: - var d = [String: JSON]() - d[".tag"] = .str("billing_admin") - return .dictionary(d) - case .complianceAdmin: - var d = [String: JSON]() - d[".tag"] = .str("compliance_admin") - return .dictionary(d) - case .contentAdmin: - var d = [String: JSON]() - d[".tag"] = .str("content_admin") - return .dictionary(d) - case .limitedAdmin: - var d = [String: JSON]() - d[".tag"] = .str("limited_admin") - return .dictionary(d) - case .memberOnly: - var d = [String: JSON]() - d[".tag"] = .str("member_only") - return .dictionary(d) - case .reportingAdmin: - var d = [String: JSON]() - d[".tag"] = .str("reporting_admin") - return .dictionary(d) - case .securityAdmin: - var d = [String: JSON]() - d[".tag"] = .str("security_admin") - return .dictionary(d) - case .supportAdmin: - var d = [String: JSON]() - d[".tag"] = .str("support_admin") - return .dictionary(d) - case .teamAdmin: - var d = [String: JSON]() - d[".tag"] = .str("team_admin") - return .dictionary(d) - case .userManagementAdmin: - var d = [String: JSON]() - d[".tag"] = .str("user_management_admin") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) + case .billingAdmin: + var d = [String: JSON]() + d[".tag"] = .str("billing_admin") + return .dictionary(d) + case .complianceAdmin: + var d = [String: JSON]() + d[".tag"] = .str("compliance_admin") + return .dictionary(d) + case .contentAdmin: + var d = [String: JSON]() + d[".tag"] = .str("content_admin") + return .dictionary(d) + case .deprecatedFreemiumTeamMember: + var d = [String: JSON]() + d[".tag"] = .str("deprecated_freemium_team_member") + return .dictionary(d) + case .freemiumTeamCreator: + var d = [String: JSON]() + d[".tag"] = .str("freemium_team_creator") + return .dictionary(d) + case .limitedAdmin: + var d = [String: JSON]() + d[".tag"] = .str("limited_admin") + return .dictionary(d) + case .memberOnly: + var d = [String: JSON]() + d[".tag"] = .str("member_only") + return .dictionary(d) + case .reportingAdmin: + var d = [String: JSON]() + d[".tag"] = .str("reporting_admin") + return .dictionary(d) + case .securityAdmin: + var d = [String: JSON]() + d[".tag"] = .str("security_admin") + return .dictionary(d) + case .supportAdmin: + var d = [String: JSON]() + d[".tag"] = .str("support_admin") + return .dictionary(d) + case .teamAdmin: + var d = [String: JSON]() + d[".tag"] = .str("team_admin") + return .dictionary(d) + case .userManagementAdmin: + var d = [String: JSON]() + d[".tag"] = .str("user_management_admin") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) } } - public func deserialize(_ json: JSON) throws -> AdminRole { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "billing_admin": - return AdminRole.billingAdmin - case "compliance_admin": - return AdminRole.complianceAdmin - case "content_admin": - return AdminRole.contentAdmin - case "limited_admin": - return AdminRole.limitedAdmin - case "member_only": - return AdminRole.memberOnly - case "reporting_admin": - return AdminRole.reportingAdmin - case "security_admin": - return AdminRole.securityAdmin - case "support_admin": - return AdminRole.supportAdmin - case "team_admin": - return AdminRole.teamAdmin - case "user_management_admin": - return AdminRole.userManagementAdmin - case "other": - return AdminRole.other - default: - return AdminRole.other - } - default: - throw JSONSerializerError.deserializeError(type: AdminRole.self, json: json) + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "billing_admin": + return AdminRole.billingAdmin + case "compliance_admin": + return AdminRole.complianceAdmin + case "content_admin": + return AdminRole.contentAdmin + case "deprecated_freemium_team_member": + return AdminRole.deprecatedFreemiumTeamMember + case "freemium_team_creator": + return AdminRole.freemiumTeamCreator + case "limited_admin": + return AdminRole.limitedAdmin + case "member_only": + return AdminRole.memberOnly + case "reporting_admin": + return AdminRole.reportingAdmin + case "security_admin": + return AdminRole.securityAdmin + case "support_admin": + return AdminRole.supportAdmin + case "team_admin": + return AdminRole.teamAdmin + case "user_management_admin": + return AdminRole.userManagementAdmin + case "other": + return AdminRole.other + default: + return AdminRole.other + } + default: + throw JSONSerializerError.deserializeError(type: AdminRole.self, json: json) + } + } + } + + /// Policy for deciding whether team users can use third party AI services + public enum AiThirdPartySharingDropboxBasePolicy: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case adminsOnly + /// An unspecified error. + case default_ + /// An unspecified error. + case disabled + /// An unspecified error. + case enabled + /// An unspecified error. + case other + + func json() throws -> JSON { + try AiThirdPartySharingDropboxBasePolicySerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try AiThirdPartySharingDropboxBasePolicySerializer().serialize(self)))" + } catch { + return "Failed to generate description for AiThirdPartySharingDropboxBasePolicy: \(error)" + } + } + } + public class AiThirdPartySharingDropboxBasePolicySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: AiThirdPartySharingDropboxBasePolicy) throws -> JSON { + switch value { + case .adminsOnly: + var d = [String: JSON]() + d[".tag"] = .str("admins_only") + return .dictionary(d) + case .default_: + var d = [String: JSON]() + d[".tag"] = .str("default") + return .dictionary(d) + case .disabled: + var d = [String: JSON]() + d[".tag"] = .str("disabled") + return .dictionary(d) + case .enabled: + var d = [String: JSON]() + d[".tag"] = .str("enabled") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> AiThirdPartySharingDropboxBasePolicy { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "admins_only": + return AiThirdPartySharingDropboxBasePolicy.adminsOnly + case "default": + return AiThirdPartySharingDropboxBasePolicy.default_ + case "disabled": + return AiThirdPartySharingDropboxBasePolicy.disabled + case "enabled": + return AiThirdPartySharingDropboxBasePolicy.enabled + case "other": + return AiThirdPartySharingDropboxBasePolicy.other + default: + return AiThirdPartySharingDropboxBasePolicy.other + } + default: + throw JSONSerializerError.deserializeError(type: AiThirdPartySharingDropboxBasePolicy.self, json: json) + } + } + } + + /// Changed AI third party sharing policy for team. + public class AiThirdPartySharingDropboxBasePolicyChangedDetails: CustomStringConvertible, JSONRepresentable { + /// To. + public let newValue: TeamLog.AiThirdPartySharingDropboxBasePolicy + /// From. + public let previousValue: TeamLog.AiThirdPartySharingDropboxBasePolicy + public init(newValue: TeamLog.AiThirdPartySharingDropboxBasePolicy, previousValue: TeamLog.AiThirdPartySharingDropboxBasePolicy) { + self.newValue = newValue + self.previousValue = previousValue + } + + func json() throws -> JSON { + try AiThirdPartySharingDropboxBasePolicyChangedDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try AiThirdPartySharingDropboxBasePolicyChangedDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for AiThirdPartySharingDropboxBasePolicyChangedDetails: \(error)" + } + } + } + public class AiThirdPartySharingDropboxBasePolicyChangedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: AiThirdPartySharingDropboxBasePolicyChangedDetails) throws -> JSON { + let output = [ + "new_value": try TeamLog.AiThirdPartySharingDropboxBasePolicySerializer().serialize(value.newValue), + "previous_value": try TeamLog.AiThirdPartySharingDropboxBasePolicySerializer().serialize(value.previousValue), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> AiThirdPartySharingDropboxBasePolicyChangedDetails { + switch json { + case .dictionary(let dict): + let newValue = try TeamLog.AiThirdPartySharingDropboxBasePolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try TeamLog.AiThirdPartySharingDropboxBasePolicySerializer().deserialize(dict["previous_value"] ?? .null) + return AiThirdPartySharingDropboxBasePolicyChangedDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: AiThirdPartySharingDropboxBasePolicyChangedDetails.self, json: json) + } + } + } + + /// The AiThirdPartySharingDropboxBasePolicyChangedType struct + public class AiThirdPartySharingDropboxBasePolicyChangedType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try AiThirdPartySharingDropboxBasePolicyChangedTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try AiThirdPartySharingDropboxBasePolicyChangedTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for AiThirdPartySharingDropboxBasePolicyChangedType: \(error)" + } + } + } + public class AiThirdPartySharingDropboxBasePolicyChangedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: AiThirdPartySharingDropboxBasePolicyChangedType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> AiThirdPartySharingDropboxBasePolicyChangedType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return AiThirdPartySharingDropboxBasePolicyChangedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: AiThirdPartySharingDropboxBasePolicyChangedType.self, json: json) } } } @@ -2324,60 +2592,59 @@ public class TeamLog { } } } - public class AlertRecipientsSettingTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: AlertRecipientsSettingType) throws -> JSON { switch value { - case .customList: - var d = [String: JSON]() - d[".tag"] = .str("custom_list") - return .dictionary(d) - case .invalid: - var d = [String: JSON]() - d[".tag"] = .str("invalid") - return .dictionary(d) - case .none: - var d = [String: JSON]() - d[".tag"] = .str("none") - return .dictionary(d) - case .teamAdmins: - var d = [String: JSON]() - d[".tag"] = .str("team_admins") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) + case .customList: + var d = [String: JSON]() + d[".tag"] = .str("custom_list") + return .dictionary(d) + case .invalid: + var d = [String: JSON]() + d[".tag"] = .str("invalid") + return .dictionary(d) + case .none: + var d = [String: JSON]() + d[".tag"] = .str("none") + return .dictionary(d) + case .teamAdmins: + var d = [String: JSON]() + d[".tag"] = .str("team_admins") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) } } - public func deserialize(_ json: JSON) throws -> AlertRecipientsSettingType { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "custom_list": - return AlertRecipientsSettingType.customList - case "invalid": - return AlertRecipientsSettingType.invalid - case "none": - return AlertRecipientsSettingType.none - case "team_admins": - return AlertRecipientsSettingType.teamAdmins - case "other": - return AlertRecipientsSettingType.other + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "custom_list": + return AlertRecipientsSettingType.customList + case "invalid": + return AlertRecipientsSettingType.invalid + case "none": + return AlertRecipientsSettingType.none + case "team_admins": + return AlertRecipientsSettingType.teamAdmins + case "other": + return AlertRecipientsSettingType.other + default: + return AlertRecipientsSettingType.other + } default: - return AlertRecipientsSettingType.other - } - default: - throw JSONSerializerError.deserializeError(type: AlertRecipientsSettingType.self, json: json) + throw JSONSerializerError.deserializeError(type: AlertRecipientsSettingType.self, json: json) } } } /// Disabled downloads. public class AllowDownloadDisabledDetails: CustomStringConvertible, JSONRepresentable { + func json() throws -> JSON { try AllowDownloadDisabledDetailsSerializer().serialize(self) } @@ -2390,20 +2657,18 @@ public class TeamLog { } } } - public class AllowDownloadDisabledDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: AllowDownloadDisabledDetails) throws -> JSON { let output = [String: JSON]() return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> AllowDownloadDisabledDetails { switch json { - case .dictionary: - return AllowDownloadDisabledDetails() - default: - throw JSONSerializerError.deserializeError(type: AllowDownloadDisabledDetails.self, json: json) + case .dictionary(_): + return AllowDownloadDisabledDetails() + default: + throw JSONSerializerError.deserializeError(type: AllowDownloadDisabledDetails.self, json: json) } } } @@ -2429,29 +2694,28 @@ public class TeamLog { } } } - public class AllowDownloadDisabledTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: AllowDownloadDisabledType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> AllowDownloadDisabledType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return AllowDownloadDisabledType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: AllowDownloadDisabledType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return AllowDownloadDisabledType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: AllowDownloadDisabledType.self, json: json) } } } /// Enabled downloads. public class AllowDownloadEnabledDetails: CustomStringConvertible, JSONRepresentable { + func json() throws -> JSON { try AllowDownloadEnabledDetailsSerializer().serialize(self) } @@ -2464,20 +2728,18 @@ public class TeamLog { } } } - public class AllowDownloadEnabledDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: AllowDownloadEnabledDetails) throws -> JSON { let output = [String: JSON]() return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> AllowDownloadEnabledDetails { switch json { - case .dictionary: - return AllowDownloadEnabledDetails() - default: - throw JSONSerializerError.deserializeError(type: AllowDownloadEnabledDetails.self, json: json) + case .dictionary(_): + return AllowDownloadEnabledDetails() + default: + throw JSONSerializerError.deserializeError(type: AllowDownloadEnabledDetails.self, json: json) } } } @@ -2503,23 +2765,21 @@ public class TeamLog { } } } - public class AllowDownloadEnabledTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: AllowDownloadEnabledType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> AllowDownloadEnabledType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return AllowDownloadEnabledType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: AllowDownloadEnabledType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return AllowDownloadEnabledType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: AllowDownloadEnabledType.self, json: json) } } } @@ -2545,23 +2805,21 @@ public class TeamLog { } } } - public class ApiSessionLogInfoSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: ApiSessionLogInfo) throws -> JSON { let output = [ - "request_id": try Serialization._StringSerializer.serialize(value.requestId), + "request_id": try Serialization._StringSerializer.serialize(value.requestId), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> ApiSessionLogInfo { switch json { - case .dictionary(let dict): - let requestId = try Serialization._StringSerializer.deserialize(dict["request_id"] ?? .null) - return ApiSessionLogInfo(requestId: requestId) - default: - throw JSONSerializerError.deserializeError(type: ApiSessionLogInfo.self, json: json) + case .dictionary(let dict): + let requestId = try Serialization._StringSerializer.deserialize(dict["request_id"] ?? .null) + return ApiSessionLogInfo(requestId: requestId) + default: + throw JSONSerializerError.deserializeError(type: ApiSessionLogInfo.self, json: json) } } } @@ -2586,23 +2844,21 @@ public class TeamLog { } } } - public class AppBlockedByPermissionsDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: AppBlockedByPermissionsDetails) throws -> JSON { let output = [ - "app_info": try TeamLog.AppLogInfoSerializer().serialize(value.appInfo), + "app_info": try TeamLog.AppLogInfoSerializer().serialize(value.appInfo), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> AppBlockedByPermissionsDetails { switch json { - case .dictionary(let dict): - let appInfo = try TeamLog.AppLogInfoSerializer().deserialize(dict["app_info"] ?? .null) - return AppBlockedByPermissionsDetails(appInfo: appInfo) - default: - throw JSONSerializerError.deserializeError(type: AppBlockedByPermissionsDetails.self, json: json) + case .dictionary(let dict): + let appInfo = try TeamLog.AppLogInfoSerializer().deserialize(dict["app_info"] ?? .null) + return AppBlockedByPermissionsDetails(appInfo: appInfo) + default: + throw JSONSerializerError.deserializeError(type: AppBlockedByPermissionsDetails.self, json: json) } } } @@ -2628,23 +2884,21 @@ public class TeamLog { } } } - public class AppBlockedByPermissionsTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: AppBlockedByPermissionsType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> AppBlockedByPermissionsType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return AppBlockedByPermissionsType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: AppBlockedByPermissionsType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return AppBlockedByPermissionsType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: AppBlockedByPermissionsType.self, json: json) } } } @@ -2669,23 +2923,21 @@ public class TeamLog { } } } - public class AppLinkTeamDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: AppLinkTeamDetails) throws -> JSON { let output = [ - "app_info": try TeamLog.AppLogInfoSerializer().serialize(value.appInfo), + "app_info": try TeamLog.AppLogInfoSerializer().serialize(value.appInfo), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> AppLinkTeamDetails { switch json { - case .dictionary(let dict): - let appInfo = try TeamLog.AppLogInfoSerializer().deserialize(dict["app_info"] ?? .null) - return AppLinkTeamDetails(appInfo: appInfo) - default: - throw JSONSerializerError.deserializeError(type: AppLinkTeamDetails.self, json: json) + case .dictionary(let dict): + let appInfo = try TeamLog.AppLogInfoSerializer().deserialize(dict["app_info"] ?? .null) + return AppLinkTeamDetails(appInfo: appInfo) + default: + throw JSONSerializerError.deserializeError(type: AppLinkTeamDetails.self, json: json) } } } @@ -2711,23 +2963,21 @@ public class TeamLog { } } } - public class AppLinkTeamTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: AppLinkTeamType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> AppLinkTeamType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return AppLinkTeamType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: AppLinkTeamType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return AppLinkTeamType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: AppLinkTeamType.self, json: json) } } } @@ -2752,23 +3002,21 @@ public class TeamLog { } } } - public class AppLinkUserDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: AppLinkUserDetails) throws -> JSON { let output = [ - "app_info": try TeamLog.AppLogInfoSerializer().serialize(value.appInfo), + "app_info": try TeamLog.AppLogInfoSerializer().serialize(value.appInfo), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> AppLinkUserDetails { switch json { - case .dictionary(let dict): - let appInfo = try TeamLog.AppLogInfoSerializer().deserialize(dict["app_info"] ?? .null) - return AppLinkUserDetails(appInfo: appInfo) - default: - throw JSONSerializerError.deserializeError(type: AppLinkUserDetails.self, json: json) + case .dictionary(let dict): + let appInfo = try TeamLog.AppLogInfoSerializer().deserialize(dict["app_info"] ?? .null) + return AppLinkUserDetails(appInfo: appInfo) + default: + throw JSONSerializerError.deserializeError(type: AppLinkUserDetails.self, json: json) } } } @@ -2794,23 +3042,21 @@ public class TeamLog { } } } - public class AppLinkUserTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: AppLinkUserType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> AppLinkUserType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return AppLinkUserType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: AppLinkUserType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return AppLinkUserType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: AppLinkUserType.self, json: json) } } } @@ -2840,54 +3086,52 @@ public class TeamLog { } } } - public class AppLogInfoSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: AppLogInfo) throws -> JSON { var output = [ - "app_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.appId), - "display_name": try NullableSerializer(Serialization._StringSerializer).serialize(value.displayName), + "app_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.appId), + "display_name": try NullableSerializer(Serialization._StringSerializer).serialize(value.displayName), ] switch value { - case let userOrTeamLinkedApp as TeamLog.UserOrTeamLinkedAppLogInfo: - for (k, v) in try Serialization.getFields(TeamLog.UserOrTeamLinkedAppLogInfoSerializer().serialize(userOrTeamLinkedApp)) { - output[k] = v - } - output[".tag"] = .str("user_or_team_linked_app") - case let userLinkedApp as TeamLog.UserLinkedAppLogInfo: - for (k, v) in try Serialization.getFields(TeamLog.UserLinkedAppLogInfoSerializer().serialize(userLinkedApp)) { - output[k] = v - } - output[".tag"] = .str("user_linked_app") - case let teamLinkedApp as TeamLog.TeamLinkedAppLogInfo: - for (k, v) in try Serialization.getFields(TeamLog.TeamLinkedAppLogInfoSerializer().serialize(teamLinkedApp)) { - output[k] = v - } - output[".tag"] = .str("team_linked_app") - default: - throw JSONSerializerError.unexpectedSubtype(type: AppLogInfo.self, subtype: value) + case let teamLinkedApp as TeamLog.TeamLinkedAppLogInfo: + for (k, v) in try Serialization.getFields(TeamLog.TeamLinkedAppLogInfoSerializer().serialize(teamLinkedApp)) { + output[k] = v + } + output[".tag"] = .str("team_linked_app") + case let userLinkedApp as TeamLog.UserLinkedAppLogInfo: + for (k, v) in try Serialization.getFields(TeamLog.UserLinkedAppLogInfoSerializer().serialize(userLinkedApp)) { + output[k] = v + } + output[".tag"] = .str("user_linked_app") + case let userOrTeamLinkedApp as TeamLog.UserOrTeamLinkedAppLogInfo: + for (k, v) in try Serialization.getFields(TeamLog.UserOrTeamLinkedAppLogInfoSerializer().serialize(userOrTeamLinkedApp)) { + output[k] = v + } + output[".tag"] = .str("user_or_team_linked_app") + default: + throw JSONSerializerError.unexpectedSubtype(type: AppLogInfo.self, subtype: value) } return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> AppLogInfo { switch json { - case .dictionary(let dict): - let tag = try Serialization.getTag(dict) - switch tag { - case "user_or_team_linked_app": - return try TeamLog.UserOrTeamLinkedAppLogInfoSerializer().deserialize(json) - case "user_linked_app": - return try TeamLog.UserLinkedAppLogInfoSerializer().deserialize(json) - case "team_linked_app": - return try TeamLog.TeamLinkedAppLogInfoSerializer().deserialize(json) + case .dictionary(let dict): + let tag = try Serialization.getTag(dict) + switch tag { + case "team_linked_app": + return try TeamLog.TeamLinkedAppLogInfoSerializer().deserialize(json) + case "user_linked_app": + return try TeamLog.UserLinkedAppLogInfoSerializer().deserialize(json) + case "user_or_team_linked_app": + return try TeamLog.UserOrTeamLinkedAppLogInfoSerializer().deserialize(json) + default: + let appId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["app_id"] ?? .null) + let displayName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["display_name"] ?? .null) + return AppLogInfo(appId: appId, displayName: displayName) + } default: - let appId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["app_id"] ?? .null) - let displayName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["display_name"] ?? .null) - return AppLogInfo(appId: appId, displayName: displayName) - } - default: - throw JSONSerializerError.deserializeError(type: AppLogInfo.self, json: json) + throw JSONSerializerError.deserializeError(type: AppLogInfo.self, json: json) } } } @@ -2902,12 +3146,7 @@ public class TeamLog { public let previousValue: TeamLog.AdminConsoleAppPolicy /// New policy. public let newValue: TeamLog.AdminConsoleAppPolicy - public init( - previousValue: TeamLog.AdminConsoleAppPolicy, - newValue: TeamLog.AdminConsoleAppPolicy, - appName: String? = nil, - permission: TeamLog.AdminConsoleAppPermission? = nil - ) { + public init(previousValue: TeamLog.AdminConsoleAppPolicy, newValue: TeamLog.AdminConsoleAppPolicy, appName: String? = nil, permission: TeamLog.AdminConsoleAppPermission? = nil) { nullableValidator(stringValidator())(appName) self.appName = appName self.permission = permission @@ -2927,29 +3166,27 @@ public class TeamLog { } } } - public class AppPermissionsChangedDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: AppPermissionsChangedDetails) throws -> JSON { let output = [ - "previous_value": try TeamLog.AdminConsoleAppPolicySerializer().serialize(value.previousValue), - "new_value": try TeamLog.AdminConsoleAppPolicySerializer().serialize(value.newValue), - "app_name": try NullableSerializer(Serialization._StringSerializer).serialize(value.appName), - "permission": try NullableSerializer(TeamLog.AdminConsoleAppPermissionSerializer()).serialize(value.permission), + "previous_value": try TeamLog.AdminConsoleAppPolicySerializer().serialize(value.previousValue), + "new_value": try TeamLog.AdminConsoleAppPolicySerializer().serialize(value.newValue), + "app_name": try NullableSerializer(Serialization._StringSerializer).serialize(value.appName), + "permission": try NullableSerializer(TeamLog.AdminConsoleAppPermissionSerializer()).serialize(value.permission), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> AppPermissionsChangedDetails { switch json { - case .dictionary(let dict): - let previousValue = try TeamLog.AdminConsoleAppPolicySerializer().deserialize(dict["previous_value"] ?? .null) - let newValue = try TeamLog.AdminConsoleAppPolicySerializer().deserialize(dict["new_value"] ?? .null) - let appName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["app_name"] ?? .null) - let permission = try NullableSerializer(TeamLog.AdminConsoleAppPermissionSerializer()).deserialize(dict["permission"] ?? .null) - return AppPermissionsChangedDetails(previousValue: previousValue, newValue: newValue, appName: appName, permission: permission) - default: - throw JSONSerializerError.deserializeError(type: AppPermissionsChangedDetails.self, json: json) + case .dictionary(let dict): + let previousValue = try TeamLog.AdminConsoleAppPolicySerializer().deserialize(dict["previous_value"] ?? .null) + let newValue = try TeamLog.AdminConsoleAppPolicySerializer().deserialize(dict["new_value"] ?? .null) + let appName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["app_name"] ?? .null) + let permission = try NullableSerializer(TeamLog.AdminConsoleAppPermissionSerializer()).deserialize(dict["permission"] ?? .null) + return AppPermissionsChangedDetails(previousValue: previousValue, newValue: newValue, appName: appName, permission: permission) + default: + throw JSONSerializerError.deserializeError(type: AppPermissionsChangedDetails.self, json: json) } } } @@ -2975,23 +3212,21 @@ public class TeamLog { } } } - public class AppPermissionsChangedTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: AppPermissionsChangedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> AppPermissionsChangedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return AppPermissionsChangedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: AppPermissionsChangedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return AppPermissionsChangedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: AppPermissionsChangedType.self, json: json) } } } @@ -3016,23 +3251,21 @@ public class TeamLog { } } } - public class AppUnlinkTeamDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: AppUnlinkTeamDetails) throws -> JSON { let output = [ - "app_info": try TeamLog.AppLogInfoSerializer().serialize(value.appInfo), + "app_info": try TeamLog.AppLogInfoSerializer().serialize(value.appInfo), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> AppUnlinkTeamDetails { switch json { - case .dictionary(let dict): - let appInfo = try TeamLog.AppLogInfoSerializer().deserialize(dict["app_info"] ?? .null) - return AppUnlinkTeamDetails(appInfo: appInfo) - default: - throw JSONSerializerError.deserializeError(type: AppUnlinkTeamDetails.self, json: json) + case .dictionary(let dict): + let appInfo = try TeamLog.AppLogInfoSerializer().deserialize(dict["app_info"] ?? .null) + return AppUnlinkTeamDetails(appInfo: appInfo) + default: + throw JSONSerializerError.deserializeError(type: AppUnlinkTeamDetails.self, json: json) } } } @@ -3058,23 +3291,21 @@ public class TeamLog { } } } - public class AppUnlinkTeamTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: AppUnlinkTeamType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> AppUnlinkTeamType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return AppUnlinkTeamType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: AppUnlinkTeamType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return AppUnlinkTeamType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: AppUnlinkTeamType.self, json: json) } } } @@ -3099,23 +3330,21 @@ public class TeamLog { } } } - public class AppUnlinkUserDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: AppUnlinkUserDetails) throws -> JSON { let output = [ - "app_info": try TeamLog.AppLogInfoSerializer().serialize(value.appInfo), + "app_info": try TeamLog.AppLogInfoSerializer().serialize(value.appInfo), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> AppUnlinkUserDetails { switch json { - case .dictionary(let dict): - let appInfo = try TeamLog.AppLogInfoSerializer().deserialize(dict["app_info"] ?? .null) - return AppUnlinkUserDetails(appInfo: appInfo) - default: - throw JSONSerializerError.deserializeError(type: AppUnlinkUserDetails.self, json: json) + case .dictionary(let dict): + let appInfo = try TeamLog.AppLogInfoSerializer().deserialize(dict["app_info"] ?? .null) + return AppUnlinkUserDetails(appInfo: appInfo) + default: + throw JSONSerializerError.deserializeError(type: AppUnlinkUserDetails.self, json: json) } } } @@ -3141,29 +3370,179 @@ public class TeamLog { } } } - public class AppUnlinkUserTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: AppUnlinkUserType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> AppUnlinkUserType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return AppUnlinkUserType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: AppUnlinkUserType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return AppUnlinkUserType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: AppUnlinkUserType.self, json: json) + } + } + } + + /// Enabled/disabled Apple login for team. + public class AppleLoginChangePolicyDetails: CustomStringConvertible, JSONRepresentable { + /// New Apple login policy. + public let newValue: TeamLog.AppleLoginPolicy + /// Previous Apple login policy. Might be missing due to historical data gap. + public let previousValue: TeamLog.AppleLoginPolicy? + public init(newValue: TeamLog.AppleLoginPolicy, previousValue: TeamLog.AppleLoginPolicy? = nil) { + self.newValue = newValue + self.previousValue = previousValue + } + + func json() throws -> JSON { + try AppleLoginChangePolicyDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try AppleLoginChangePolicyDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for AppleLoginChangePolicyDetails: \(error)" + } + } + } + public class AppleLoginChangePolicyDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: AppleLoginChangePolicyDetails) throws -> JSON { + let output = [ + "new_value": try TeamLog.AppleLoginPolicySerializer().serialize(value.newValue), + "previous_value": try NullableSerializer(TeamLog.AppleLoginPolicySerializer()).serialize(value.previousValue), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> AppleLoginChangePolicyDetails { + switch json { + case .dictionary(let dict): + let newValue = try TeamLog.AppleLoginPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try NullableSerializer(TeamLog.AppleLoginPolicySerializer()).deserialize(dict["previous_value"] ?? .null) + return AppleLoginChangePolicyDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: AppleLoginChangePolicyDetails.self, json: json) + } + } + } + + /// The AppleLoginChangePolicyType struct + public class AppleLoginChangePolicyType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try AppleLoginChangePolicyTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try AppleLoginChangePolicyTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for AppleLoginChangePolicyType: \(error)" + } + } + } + public class AppleLoginChangePolicyTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: AppleLoginChangePolicyType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> AppleLoginChangePolicyType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return AppleLoginChangePolicyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: AppleLoginChangePolicyType.self, json: json) + } + } + } + + /// Apple login policy + public enum AppleLoginPolicy: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case default_ + /// An unspecified error. + case disabled + /// An unspecified error. + case enabled + /// An unspecified error. + case other + + func json() throws -> JSON { + try AppleLoginPolicySerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try AppleLoginPolicySerializer().serialize(self)))" + } catch { + return "Failed to generate description for AppleLoginPolicy: \(error)" + } + } + } + public class AppleLoginPolicySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: AppleLoginPolicy) throws -> JSON { + switch value { + case .default_: + var d = [String: JSON]() + d[".tag"] = .str("default") + return .dictionary(d) + case .disabled: + var d = [String: JSON]() + d[".tag"] = .str("disabled") + return .dictionary(d) + case .enabled: + var d = [String: JSON]() + d[".tag"] = .str("enabled") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> AppleLoginPolicy { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "default": + return AppleLoginPolicy.default_ + case "disabled": + return AppleLoginPolicy.disabled + case "enabled": + return AppleLoginPolicy.enabled + case "other": + return AppleLoginPolicy.other + default: + return AppleLoginPolicy.other + } + default: + throw JSONSerializerError.deserializeError(type: AppleLoginPolicy.self, json: json) } } } /// Applied naming convention. public class ApplyNamingConventionDetails: CustomStringConvertible, JSONRepresentable { + func json() throws -> JSON { try ApplyNamingConventionDetailsSerializer().serialize(self) } @@ -3176,20 +3555,18 @@ public class TeamLog { } } } - public class ApplyNamingConventionDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: ApplyNamingConventionDetails) throws -> JSON { let output = [String: JSON]() return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> ApplyNamingConventionDetails { switch json { - case .dictionary: - return ApplyNamingConventionDetails() - default: - throw JSONSerializerError.deserializeError(type: ApplyNamingConventionDetails.self, json: json) + case .dictionary(_): + return ApplyNamingConventionDetails() + default: + throw JSONSerializerError.deserializeError(type: ApplyNamingConventionDetails.self, json: json) } } } @@ -3215,23 +3592,21 @@ public class TeamLog { } } } - public class ApplyNamingConventionTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: ApplyNamingConventionType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> ApplyNamingConventionType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return ApplyNamingConventionType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: ApplyNamingConventionType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ApplyNamingConventionType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ApplyNamingConventionType.self, json: json) } } } @@ -3263,71 +3638,70 @@ public class TeamLog { } } } - public class AssetLogInfoSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: AssetLogInfo) throws -> JSON { switch value { - case .file(let arg): - var d = try Serialization.getFields(TeamLog.FileLogInfoSerializer().serialize(arg)) - d[".tag"] = .str("file") - return .dictionary(d) - case .folder(let arg): - var d = try Serialization.getFields(TeamLog.FolderLogInfoSerializer().serialize(arg)) - d[".tag"] = .str("folder") - return .dictionary(d) - case .paperDocument(let arg): - var d = try Serialization.getFields(TeamLog.PaperDocumentLogInfoSerializer().serialize(arg)) - d[".tag"] = .str("paper_document") - return .dictionary(d) - case .paperFolder(let arg): - var d = try Serialization.getFields(TeamLog.PaperFolderLogInfoSerializer().serialize(arg)) - d[".tag"] = .str("paper_folder") - return .dictionary(d) - case .showcaseDocument(let arg): - var d = try Serialization.getFields(TeamLog.ShowcaseDocumentLogInfoSerializer().serialize(arg)) - d[".tag"] = .str("showcase_document") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) + case .file(let arg): + var d = try Serialization.getFields(TeamLog.FileLogInfoSerializer().serialize(arg)) + d[".tag"] = .str("file") + return .dictionary(d) + case .folder(let arg): + var d = try Serialization.getFields(TeamLog.FolderLogInfoSerializer().serialize(arg)) + d[".tag"] = .str("folder") + return .dictionary(d) + case .paperDocument(let arg): + var d = try Serialization.getFields(TeamLog.PaperDocumentLogInfoSerializer().serialize(arg)) + d[".tag"] = .str("paper_document") + return .dictionary(d) + case .paperFolder(let arg): + var d = try Serialization.getFields(TeamLog.PaperFolderLogInfoSerializer().serialize(arg)) + d[".tag"] = .str("paper_folder") + return .dictionary(d) + case .showcaseDocument(let arg): + var d = try Serialization.getFields(TeamLog.ShowcaseDocumentLogInfoSerializer().serialize(arg)) + d[".tag"] = .str("showcase_document") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) } } - public func deserialize(_ json: JSON) throws -> AssetLogInfo { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "file": - let v = try TeamLog.FileLogInfoSerializer().deserialize(json) - return AssetLogInfo.file(v) - case "folder": - let v = try TeamLog.FolderLogInfoSerializer().deserialize(json) - return AssetLogInfo.folder(v) - case "paper_document": - let v = try TeamLog.PaperDocumentLogInfoSerializer().deserialize(json) - return AssetLogInfo.paperDocument(v) - case "paper_folder": - let v = try TeamLog.PaperFolderLogInfoSerializer().deserialize(json) - return AssetLogInfo.paperFolder(v) - case "showcase_document": - let v = try TeamLog.ShowcaseDocumentLogInfoSerializer().deserialize(json) - return AssetLogInfo.showcaseDocument(v) - case "other": - return AssetLogInfo.other - default: - return AssetLogInfo.other - } - default: - throw JSONSerializerError.deserializeError(type: AssetLogInfo.self, json: json) + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "file": + let v = try TeamLog.FileLogInfoSerializer().deserialize(json) + return AssetLogInfo.file(v) + case "folder": + let v = try TeamLog.FolderLogInfoSerializer().deserialize(json) + return AssetLogInfo.folder(v) + case "paper_document": + let v = try TeamLog.PaperDocumentLogInfoSerializer().deserialize(json) + return AssetLogInfo.paperDocument(v) + case "paper_folder": + let v = try TeamLog.PaperFolderLogInfoSerializer().deserialize(json) + return AssetLogInfo.paperFolder(v) + case "showcase_document": + let v = try TeamLog.ShowcaseDocumentLogInfoSerializer().deserialize(json) + return AssetLogInfo.showcaseDocument(v) + case "other": + return AssetLogInfo.other + default: + return AssetLogInfo.other + } + default: + throw JSONSerializerError.deserializeError(type: AssetLogInfo.self, json: json) } } } /// Invited members to activate Backup. public class BackupAdminInvitationSentDetails: CustomStringConvertible, JSONRepresentable { + func json() throws -> JSON { try BackupAdminInvitationSentDetailsSerializer().serialize(self) } @@ -3340,20 +3714,18 @@ public class TeamLog { } } } - public class BackupAdminInvitationSentDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: BackupAdminInvitationSentDetails) throws -> JSON { let output = [String: JSON]() return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> BackupAdminInvitationSentDetails { switch json { - case .dictionary: - return BackupAdminInvitationSentDetails() - default: - throw JSONSerializerError.deserializeError(type: BackupAdminInvitationSentDetails.self, json: json) + case .dictionary(_): + return BackupAdminInvitationSentDetails() + default: + throw JSONSerializerError.deserializeError(type: BackupAdminInvitationSentDetails.self, json: json) } } } @@ -3379,29 +3751,28 @@ public class TeamLog { } } } - public class BackupAdminInvitationSentTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: BackupAdminInvitationSentType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> BackupAdminInvitationSentType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return BackupAdminInvitationSentType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: BackupAdminInvitationSentType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return BackupAdminInvitationSentType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: BackupAdminInvitationSentType.self, json: json) } } } /// Opened Backup invite. public class BackupInvitationOpenedDetails: CustomStringConvertible, JSONRepresentable { + func json() throws -> JSON { try BackupInvitationOpenedDetailsSerializer().serialize(self) } @@ -3414,20 +3785,18 @@ public class TeamLog { } } } - public class BackupInvitationOpenedDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: BackupInvitationOpenedDetails) throws -> JSON { let output = [String: JSON]() return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> BackupInvitationOpenedDetails { switch json { - case .dictionary: - return BackupInvitationOpenedDetails() - default: - throw JSONSerializerError.deserializeError(type: BackupInvitationOpenedDetails.self, json: json) + case .dictionary(_): + return BackupInvitationOpenedDetails() + default: + throw JSONSerializerError.deserializeError(type: BackupInvitationOpenedDetails.self, json: json) } } } @@ -3453,23 +3822,21 @@ public class TeamLog { } } } - public class BackupInvitationOpenedTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: BackupInvitationOpenedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> BackupInvitationOpenedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return BackupInvitationOpenedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: BackupInvitationOpenedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return BackupInvitationOpenedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: BackupInvitationOpenedType.self, json: json) } } } @@ -3495,42 +3862,40 @@ public class TeamLog { } } } - public class BackupStatusSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: BackupStatus) throws -> JSON { switch value { - case .disabled: - var d = [String: JSON]() - d[".tag"] = .str("disabled") - return .dictionary(d) - case .enabled: - var d = [String: JSON]() - d[".tag"] = .str("enabled") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) + case .disabled: + var d = [String: JSON]() + d[".tag"] = .str("disabled") + return .dictionary(d) + case .enabled: + var d = [String: JSON]() + d[".tag"] = .str("enabled") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) } } - public func deserialize(_ json: JSON) throws -> BackupStatus { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "disabled": - return BackupStatus.disabled - case "enabled": - return BackupStatus.enabled - case "other": - return BackupStatus.other + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "disabled": + return BackupStatus.disabled + case "enabled": + return BackupStatus.enabled + case "other": + return BackupStatus.other + default: + return BackupStatus.other + } default: - return BackupStatus.other - } - default: - throw JSONSerializerError.deserializeError(type: BackupStatus.self, json: json) + throw JSONSerializerError.deserializeError(type: BackupStatus.self, json: json) } } } @@ -3564,27 +3929,25 @@ public class TeamLog { } } } - public class BinderAddPageDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: BinderAddPageDetails) throws -> JSON { let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), - "doc_title": try Serialization._StringSerializer.serialize(value.docTitle), - "binder_item_name": try Serialization._StringSerializer.serialize(value.binderItemName), + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + "doc_title": try Serialization._StringSerializer.serialize(value.docTitle), + "binder_item_name": try Serialization._StringSerializer.serialize(value.binderItemName), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> BinderAddPageDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - let docTitle = try Serialization._StringSerializer.deserialize(dict["doc_title"] ?? .null) - let binderItemName = try Serialization._StringSerializer.deserialize(dict["binder_item_name"] ?? .null) - return BinderAddPageDetails(eventUuid: eventUuid, docTitle: docTitle, binderItemName: binderItemName) - default: - throw JSONSerializerError.deserializeError(type: BinderAddPageDetails.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + let docTitle = try Serialization._StringSerializer.deserialize(dict["doc_title"] ?? .null) + let binderItemName = try Serialization._StringSerializer.deserialize(dict["binder_item_name"] ?? .null) + return BinderAddPageDetails(eventUuid: eventUuid, docTitle: docTitle, binderItemName: binderItemName) + default: + throw JSONSerializerError.deserializeError(type: BinderAddPageDetails.self, json: json) } } } @@ -3610,23 +3973,21 @@ public class TeamLog { } } } - public class BinderAddPageTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: BinderAddPageType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> BinderAddPageType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return BinderAddPageType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: BinderAddPageType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return BinderAddPageType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: BinderAddPageType.self, json: json) } } } @@ -3660,27 +4021,25 @@ public class TeamLog { } } } - public class BinderAddSectionDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: BinderAddSectionDetails) throws -> JSON { let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), - "doc_title": try Serialization._StringSerializer.serialize(value.docTitle), - "binder_item_name": try Serialization._StringSerializer.serialize(value.binderItemName), + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + "doc_title": try Serialization._StringSerializer.serialize(value.docTitle), + "binder_item_name": try Serialization._StringSerializer.serialize(value.binderItemName), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> BinderAddSectionDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - let docTitle = try Serialization._StringSerializer.deserialize(dict["doc_title"] ?? .null) - let binderItemName = try Serialization._StringSerializer.deserialize(dict["binder_item_name"] ?? .null) - return BinderAddSectionDetails(eventUuid: eventUuid, docTitle: docTitle, binderItemName: binderItemName) - default: - throw JSONSerializerError.deserializeError(type: BinderAddSectionDetails.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + let docTitle = try Serialization._StringSerializer.deserialize(dict["doc_title"] ?? .null) + let binderItemName = try Serialization._StringSerializer.deserialize(dict["binder_item_name"] ?? .null) + return BinderAddSectionDetails(eventUuid: eventUuid, docTitle: docTitle, binderItemName: binderItemName) + default: + throw JSONSerializerError.deserializeError(type: BinderAddSectionDetails.self, json: json) } } } @@ -3706,23 +4065,21 @@ public class TeamLog { } } } - public class BinderAddSectionTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: BinderAddSectionType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> BinderAddSectionType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return BinderAddSectionType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: BinderAddSectionType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return BinderAddSectionType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: BinderAddSectionType.self, json: json) } } } @@ -3756,27 +4113,25 @@ public class TeamLog { } } } - public class BinderRemovePageDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: BinderRemovePageDetails) throws -> JSON { let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), - "doc_title": try Serialization._StringSerializer.serialize(value.docTitle), - "binder_item_name": try Serialization._StringSerializer.serialize(value.binderItemName), + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + "doc_title": try Serialization._StringSerializer.serialize(value.docTitle), + "binder_item_name": try Serialization._StringSerializer.serialize(value.binderItemName), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> BinderRemovePageDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - let docTitle = try Serialization._StringSerializer.deserialize(dict["doc_title"] ?? .null) - let binderItemName = try Serialization._StringSerializer.deserialize(dict["binder_item_name"] ?? .null) - return BinderRemovePageDetails(eventUuid: eventUuid, docTitle: docTitle, binderItemName: binderItemName) - default: - throw JSONSerializerError.deserializeError(type: BinderRemovePageDetails.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + let docTitle = try Serialization._StringSerializer.deserialize(dict["doc_title"] ?? .null) + let binderItemName = try Serialization._StringSerializer.deserialize(dict["binder_item_name"] ?? .null) + return BinderRemovePageDetails(eventUuid: eventUuid, docTitle: docTitle, binderItemName: binderItemName) + default: + throw JSONSerializerError.deserializeError(type: BinderRemovePageDetails.self, json: json) } } } @@ -3802,23 +4157,21 @@ public class TeamLog { } } } - public class BinderRemovePageTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: BinderRemovePageType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> BinderRemovePageType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return BinderRemovePageType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: BinderRemovePageType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return BinderRemovePageType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: BinderRemovePageType.self, json: json) } } } @@ -3852,27 +4205,25 @@ public class TeamLog { } } } - public class BinderRemoveSectionDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: BinderRemoveSectionDetails) throws -> JSON { let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), - "doc_title": try Serialization._StringSerializer.serialize(value.docTitle), - "binder_item_name": try Serialization._StringSerializer.serialize(value.binderItemName), + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + "doc_title": try Serialization._StringSerializer.serialize(value.docTitle), + "binder_item_name": try Serialization._StringSerializer.serialize(value.binderItemName), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> BinderRemoveSectionDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - let docTitle = try Serialization._StringSerializer.deserialize(dict["doc_title"] ?? .null) - let binderItemName = try Serialization._StringSerializer.deserialize(dict["binder_item_name"] ?? .null) - return BinderRemoveSectionDetails(eventUuid: eventUuid, docTitle: docTitle, binderItemName: binderItemName) - default: - throw JSONSerializerError.deserializeError(type: BinderRemoveSectionDetails.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + let docTitle = try Serialization._StringSerializer.deserialize(dict["doc_title"] ?? .null) + let binderItemName = try Serialization._StringSerializer.deserialize(dict["binder_item_name"] ?? .null) + return BinderRemoveSectionDetails(eventUuid: eventUuid, docTitle: docTitle, binderItemName: binderItemName) + default: + throw JSONSerializerError.deserializeError(type: BinderRemoveSectionDetails.self, json: json) } } } @@ -3898,23 +4249,21 @@ public class TeamLog { } } } - public class BinderRemoveSectionTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: BinderRemoveSectionType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> BinderRemoveSectionType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return BinderRemoveSectionType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: BinderRemoveSectionType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return BinderRemoveSectionType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: BinderRemoveSectionType.self, json: json) } } } @@ -3952,34 +4301,27 @@ public class TeamLog { } } } - public class BinderRenamePageDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: BinderRenamePageDetails) throws -> JSON { let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), - "doc_title": try Serialization._StringSerializer.serialize(value.docTitle), - "binder_item_name": try Serialization._StringSerializer.serialize(value.binderItemName), - "previous_binder_item_name": try NullableSerializer(Serialization._StringSerializer).serialize(value.previousBinderItemName), + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + "doc_title": try Serialization._StringSerializer.serialize(value.docTitle), + "binder_item_name": try Serialization._StringSerializer.serialize(value.binderItemName), + "previous_binder_item_name": try NullableSerializer(Serialization._StringSerializer).serialize(value.previousBinderItemName), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> BinderRenamePageDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - let docTitle = try Serialization._StringSerializer.deserialize(dict["doc_title"] ?? .null) - let binderItemName = try Serialization._StringSerializer.deserialize(dict["binder_item_name"] ?? .null) - let previousBinderItemName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["previous_binder_item_name"] ?? .null) - return BinderRenamePageDetails( - eventUuid: eventUuid, - docTitle: docTitle, - binderItemName: binderItemName, - previousBinderItemName: previousBinderItemName - ) - default: - throw JSONSerializerError.deserializeError(type: BinderRenamePageDetails.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + let docTitle = try Serialization._StringSerializer.deserialize(dict["doc_title"] ?? .null) + let binderItemName = try Serialization._StringSerializer.deserialize(dict["binder_item_name"] ?? .null) + let previousBinderItemName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["previous_binder_item_name"] ?? .null) + return BinderRenamePageDetails(eventUuid: eventUuid, docTitle: docTitle, binderItemName: binderItemName, previousBinderItemName: previousBinderItemName) + default: + throw JSONSerializerError.deserializeError(type: BinderRenamePageDetails.self, json: json) } } } @@ -4005,23 +4347,21 @@ public class TeamLog { } } } - public class BinderRenamePageTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: BinderRenamePageType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> BinderRenamePageType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return BinderRenamePageType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: BinderRenamePageType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return BinderRenamePageType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: BinderRenamePageType.self, json: json) } } } @@ -4059,34 +4399,27 @@ public class TeamLog { } } } - public class BinderRenameSectionDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: BinderRenameSectionDetails) throws -> JSON { let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), - "doc_title": try Serialization._StringSerializer.serialize(value.docTitle), - "binder_item_name": try Serialization._StringSerializer.serialize(value.binderItemName), - "previous_binder_item_name": try NullableSerializer(Serialization._StringSerializer).serialize(value.previousBinderItemName), + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + "doc_title": try Serialization._StringSerializer.serialize(value.docTitle), + "binder_item_name": try Serialization._StringSerializer.serialize(value.binderItemName), + "previous_binder_item_name": try NullableSerializer(Serialization._StringSerializer).serialize(value.previousBinderItemName), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> BinderRenameSectionDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - let docTitle = try Serialization._StringSerializer.deserialize(dict["doc_title"] ?? .null) - let binderItemName = try Serialization._StringSerializer.deserialize(dict["binder_item_name"] ?? .null) - let previousBinderItemName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["previous_binder_item_name"] ?? .null) - return BinderRenameSectionDetails( - eventUuid: eventUuid, - docTitle: docTitle, - binderItemName: binderItemName, - previousBinderItemName: previousBinderItemName - ) - default: - throw JSONSerializerError.deserializeError(type: BinderRenameSectionDetails.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + let docTitle = try Serialization._StringSerializer.deserialize(dict["doc_title"] ?? .null) + let binderItemName = try Serialization._StringSerializer.deserialize(dict["binder_item_name"] ?? .null) + let previousBinderItemName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["previous_binder_item_name"] ?? .null) + return BinderRenameSectionDetails(eventUuid: eventUuid, docTitle: docTitle, binderItemName: binderItemName, previousBinderItemName: previousBinderItemName) + default: + throw JSONSerializerError.deserializeError(type: BinderRenameSectionDetails.self, json: json) } } } @@ -4112,23 +4445,21 @@ public class TeamLog { } } } - public class BinderRenameSectionTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: BinderRenameSectionType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> BinderRenameSectionType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return BinderRenameSectionType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: BinderRenameSectionType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return BinderRenameSectionType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: BinderRenameSectionType.self, json: json) } } } @@ -4162,27 +4493,25 @@ public class TeamLog { } } } - public class BinderReorderPageDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: BinderReorderPageDetails) throws -> JSON { let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), - "doc_title": try Serialization._StringSerializer.serialize(value.docTitle), - "binder_item_name": try Serialization._StringSerializer.serialize(value.binderItemName), + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + "doc_title": try Serialization._StringSerializer.serialize(value.docTitle), + "binder_item_name": try Serialization._StringSerializer.serialize(value.binderItemName), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> BinderReorderPageDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - let docTitle = try Serialization._StringSerializer.deserialize(dict["doc_title"] ?? .null) - let binderItemName = try Serialization._StringSerializer.deserialize(dict["binder_item_name"] ?? .null) - return BinderReorderPageDetails(eventUuid: eventUuid, docTitle: docTitle, binderItemName: binderItemName) - default: - throw JSONSerializerError.deserializeError(type: BinderReorderPageDetails.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + let docTitle = try Serialization._StringSerializer.deserialize(dict["doc_title"] ?? .null) + let binderItemName = try Serialization._StringSerializer.deserialize(dict["binder_item_name"] ?? .null) + return BinderReorderPageDetails(eventUuid: eventUuid, docTitle: docTitle, binderItemName: binderItemName) + default: + throw JSONSerializerError.deserializeError(type: BinderReorderPageDetails.self, json: json) } } } @@ -4208,23 +4537,21 @@ public class TeamLog { } } } - public class BinderReorderPageTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: BinderReorderPageType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> BinderReorderPageType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return BinderReorderPageType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: BinderReorderPageType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return BinderReorderPageType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: BinderReorderPageType.self, json: json) } } } @@ -4258,27 +4585,25 @@ public class TeamLog { } } } - public class BinderReorderSectionDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: BinderReorderSectionDetails) throws -> JSON { let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), - "doc_title": try Serialization._StringSerializer.serialize(value.docTitle), - "binder_item_name": try Serialization._StringSerializer.serialize(value.binderItemName), + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + "doc_title": try Serialization._StringSerializer.serialize(value.docTitle), + "binder_item_name": try Serialization._StringSerializer.serialize(value.binderItemName), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> BinderReorderSectionDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - let docTitle = try Serialization._StringSerializer.deserialize(dict["doc_title"] ?? .null) - let binderItemName = try Serialization._StringSerializer.deserialize(dict["binder_item_name"] ?? .null) - return BinderReorderSectionDetails(eventUuid: eventUuid, docTitle: docTitle, binderItemName: binderItemName) - default: - throw JSONSerializerError.deserializeError(type: BinderReorderSectionDetails.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + let docTitle = try Serialization._StringSerializer.deserialize(dict["doc_title"] ?? .null) + let binderItemName = try Serialization._StringSerializer.deserialize(dict["binder_item_name"] ?? .null) + return BinderReorderSectionDetails(eventUuid: eventUuid, docTitle: docTitle, binderItemName: binderItemName) + default: + throw JSONSerializerError.deserializeError(type: BinderReorderSectionDetails.self, json: json) } } } @@ -4304,23 +4629,21 @@ public class TeamLog { } } } - public class BinderReorderSectionTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: BinderReorderSectionType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> BinderReorderSectionType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return BinderReorderSectionType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: BinderReorderSectionType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return BinderReorderSectionType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: BinderReorderSectionType.self, json: json) } } } @@ -4346,42 +4669,40 @@ public class TeamLog { } } } - public class CameraUploadsPolicySerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: CameraUploadsPolicy) throws -> JSON { switch value { - case .disabled: - var d = [String: JSON]() - d[".tag"] = .str("disabled") - return .dictionary(d) - case .enabled: - var d = [String: JSON]() - d[".tag"] = .str("enabled") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) + case .disabled: + var d = [String: JSON]() + d[".tag"] = .str("disabled") + return .dictionary(d) + case .enabled: + var d = [String: JSON]() + d[".tag"] = .str("enabled") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) } } - public func deserialize(_ json: JSON) throws -> CameraUploadsPolicy { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "disabled": - return CameraUploadsPolicy.disabled - case "enabled": - return CameraUploadsPolicy.enabled - case "other": - return CameraUploadsPolicy.other + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "disabled": + return CameraUploadsPolicy.disabled + case "enabled": + return CameraUploadsPolicy.enabled + case "other": + return CameraUploadsPolicy.other + default: + return CameraUploadsPolicy.other + } default: - return CameraUploadsPolicy.other - } - default: - throw JSONSerializerError.deserializeError(type: CameraUploadsPolicy.self, json: json) + throw JSONSerializerError.deserializeError(type: CameraUploadsPolicy.self, json: json) } } } @@ -4409,25 +4730,23 @@ public class TeamLog { } } } - public class CameraUploadsPolicyChangedDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: CameraUploadsPolicyChangedDetails) throws -> JSON { let output = [ - "new_value": try TeamLog.CameraUploadsPolicySerializer().serialize(value.newValue), - "previous_value": try TeamLog.CameraUploadsPolicySerializer().serialize(value.previousValue), + "new_value": try TeamLog.CameraUploadsPolicySerializer().serialize(value.newValue), + "previous_value": try TeamLog.CameraUploadsPolicySerializer().serialize(value.previousValue), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> CameraUploadsPolicyChangedDetails { switch json { - case .dictionary(let dict): - let newValue = try TeamLog.CameraUploadsPolicySerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try TeamLog.CameraUploadsPolicySerializer().deserialize(dict["previous_value"] ?? .null) - return CameraUploadsPolicyChangedDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: CameraUploadsPolicyChangedDetails.self, json: json) + case .dictionary(let dict): + let newValue = try TeamLog.CameraUploadsPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try TeamLog.CameraUploadsPolicySerializer().deserialize(dict["previous_value"] ?? .null) + return CameraUploadsPolicyChangedDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: CameraUploadsPolicyChangedDetails.self, json: json) } } } @@ -4453,23 +4772,164 @@ public class TeamLog { } } } - public class CameraUploadsPolicyChangedTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: CameraUploadsPolicyChangedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> CameraUploadsPolicyChangedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return CameraUploadsPolicyChangedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: CameraUploadsPolicyChangedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return CameraUploadsPolicyChangedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: CameraUploadsPolicyChangedType.self, json: json) + } + } + } + + /// Policy for deciding whether team users have access to the Capture team space + public enum CaptureTeamSpacePolicy: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case disabled + /// An unspecified error. + case enabled + /// An unspecified error. + case other + + func json() throws -> JSON { + try CaptureTeamSpacePolicySerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try CaptureTeamSpacePolicySerializer().serialize(self)))" + } catch { + return "Failed to generate description for CaptureTeamSpacePolicy: \(error)" + } + } + } + public class CaptureTeamSpacePolicySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: CaptureTeamSpacePolicy) throws -> JSON { + switch value { + case .disabled: + var d = [String: JSON]() + d[".tag"] = .str("disabled") + return .dictionary(d) + case .enabled: + var d = [String: JSON]() + d[".tag"] = .str("enabled") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> CaptureTeamSpacePolicy { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "disabled": + return CaptureTeamSpacePolicy.disabled + case "enabled": + return CaptureTeamSpacePolicy.enabled + case "other": + return CaptureTeamSpacePolicy.other + default: + return CaptureTeamSpacePolicy.other + } + default: + throw JSONSerializerError.deserializeError(type: CaptureTeamSpacePolicy.self, json: json) + } + } + } + + /// Changed Capture team space policy for team. + public class CaptureTeamSpacePolicyChangedDetails: CustomStringConvertible, JSONRepresentable { + /// To. + public let newValue: TeamLog.CaptureTeamSpacePolicy + /// From. + public let previousValue: TeamLog.CaptureTeamSpacePolicy + public init(newValue: TeamLog.CaptureTeamSpacePolicy, previousValue: TeamLog.CaptureTeamSpacePolicy) { + self.newValue = newValue + self.previousValue = previousValue + } + + func json() throws -> JSON { + try CaptureTeamSpacePolicyChangedDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try CaptureTeamSpacePolicyChangedDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for CaptureTeamSpacePolicyChangedDetails: \(error)" + } + } + } + public class CaptureTeamSpacePolicyChangedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: CaptureTeamSpacePolicyChangedDetails) throws -> JSON { + let output = [ + "new_value": try TeamLog.CaptureTeamSpacePolicySerializer().serialize(value.newValue), + "previous_value": try TeamLog.CaptureTeamSpacePolicySerializer().serialize(value.previousValue), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> CaptureTeamSpacePolicyChangedDetails { + switch json { + case .dictionary(let dict): + let newValue = try TeamLog.CaptureTeamSpacePolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try TeamLog.CaptureTeamSpacePolicySerializer().deserialize(dict["previous_value"] ?? .null) + return CaptureTeamSpacePolicyChangedDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: CaptureTeamSpacePolicyChangedDetails.self, json: json) + } + } + } + + /// The CaptureTeamSpacePolicyChangedType struct + public class CaptureTeamSpacePolicyChangedType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try CaptureTeamSpacePolicyChangedTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try CaptureTeamSpacePolicyChangedTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for CaptureTeamSpacePolicyChangedType: \(error)" + } + } + } + public class CaptureTeamSpacePolicyChangedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: CaptureTeamSpacePolicyChangedType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> CaptureTeamSpacePolicyChangedType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return CaptureTeamSpacePolicyChangedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: CaptureTeamSpacePolicyChangedType.self, json: json) } } } @@ -4497,48 +4957,46 @@ public class TeamLog { } } } - public class CaptureTranscriptPolicySerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: CaptureTranscriptPolicy) throws -> JSON { switch value { - case .default_: - var d = [String: JSON]() - d[".tag"] = .str("default") - return .dictionary(d) - case .disabled: - var d = [String: JSON]() - d[".tag"] = .str("disabled") - return .dictionary(d) - case .enabled: - var d = [String: JSON]() - d[".tag"] = .str("enabled") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) + case .default_: + var d = [String: JSON]() + d[".tag"] = .str("default") + return .dictionary(d) + case .disabled: + var d = [String: JSON]() + d[".tag"] = .str("disabled") + return .dictionary(d) + case .enabled: + var d = [String: JSON]() + d[".tag"] = .str("enabled") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) } } - public func deserialize(_ json: JSON) throws -> CaptureTranscriptPolicy { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "default": - return CaptureTranscriptPolicy.default_ - case "disabled": - return CaptureTranscriptPolicy.disabled - case "enabled": - return CaptureTranscriptPolicy.enabled - case "other": - return CaptureTranscriptPolicy.other + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "default": + return CaptureTranscriptPolicy.default_ + case "disabled": + return CaptureTranscriptPolicy.disabled + case "enabled": + return CaptureTranscriptPolicy.enabled + case "other": + return CaptureTranscriptPolicy.other + default: + return CaptureTranscriptPolicy.other + } default: - return CaptureTranscriptPolicy.other - } - default: - throw JSONSerializerError.deserializeError(type: CaptureTranscriptPolicy.self, json: json) + throw JSONSerializerError.deserializeError(type: CaptureTranscriptPolicy.self, json: json) } } } @@ -4566,25 +5024,23 @@ public class TeamLog { } } } - public class CaptureTranscriptPolicyChangedDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: CaptureTranscriptPolicyChangedDetails) throws -> JSON { let output = [ - "new_value": try TeamLog.CaptureTranscriptPolicySerializer().serialize(value.newValue), - "previous_value": try TeamLog.CaptureTranscriptPolicySerializer().serialize(value.previousValue), + "new_value": try TeamLog.CaptureTranscriptPolicySerializer().serialize(value.newValue), + "previous_value": try TeamLog.CaptureTranscriptPolicySerializer().serialize(value.previousValue), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> CaptureTranscriptPolicyChangedDetails { switch json { - case .dictionary(let dict): - let newValue = try TeamLog.CaptureTranscriptPolicySerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try TeamLog.CaptureTranscriptPolicySerializer().deserialize(dict["previous_value"] ?? .null) - return CaptureTranscriptPolicyChangedDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: CaptureTranscriptPolicyChangedDetails.self, json: json) + case .dictionary(let dict): + let newValue = try TeamLog.CaptureTranscriptPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try TeamLog.CaptureTranscriptPolicySerializer().deserialize(dict["previous_value"] ?? .null) + return CaptureTranscriptPolicyChangedDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: CaptureTranscriptPolicyChangedDetails.self, json: json) } } } @@ -4610,23 +5066,21 @@ public class TeamLog { } } } - public class CaptureTranscriptPolicyChangedTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: CaptureTranscriptPolicyChangedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> CaptureTranscriptPolicyChangedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return CaptureTranscriptPolicyChangedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: CaptureTranscriptPolicyChangedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return CaptureTranscriptPolicyChangedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: CaptureTranscriptPolicyChangedType.self, json: json) } } } @@ -4647,15 +5101,7 @@ public class TeamLog { public let sha1Fingerprint: String /// Certificate common name. public let commonName: String? - public init( - subject: String, - issuer: String, - issueDate: String, - expirationDate: String, - serialNumber: String, - sha1Fingerprint: String, - commonName: String? = nil - ) { + public init(subject: String, issuer: String, issueDate: String, expirationDate: String, serialNumber: String, sha1Fingerprint: String, commonName: String? = nil) { stringValidator()(subject) self.subject = subject stringValidator()(issuer) @@ -4684,43 +5130,33 @@ public class TeamLog { } } } - public class CertificateSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: Certificate) throws -> JSON { let output = [ - "subject": try Serialization._StringSerializer.serialize(value.subject), - "issuer": try Serialization._StringSerializer.serialize(value.issuer), - "issue_date": try Serialization._StringSerializer.serialize(value.issueDate), - "expiration_date": try Serialization._StringSerializer.serialize(value.expirationDate), - "serial_number": try Serialization._StringSerializer.serialize(value.serialNumber), - "sha1_fingerprint": try Serialization._StringSerializer.serialize(value.sha1Fingerprint), - "common_name": try NullableSerializer(Serialization._StringSerializer).serialize(value.commonName), + "subject": try Serialization._StringSerializer.serialize(value.subject), + "issuer": try Serialization._StringSerializer.serialize(value.issuer), + "issue_date": try Serialization._StringSerializer.serialize(value.issueDate), + "expiration_date": try Serialization._StringSerializer.serialize(value.expirationDate), + "serial_number": try Serialization._StringSerializer.serialize(value.serialNumber), + "sha1_fingerprint": try Serialization._StringSerializer.serialize(value.sha1Fingerprint), + "common_name": try NullableSerializer(Serialization._StringSerializer).serialize(value.commonName), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> Certificate { switch json { - case .dictionary(let dict): - let subject = try Serialization._StringSerializer.deserialize(dict["subject"] ?? .null) - let issuer = try Serialization._StringSerializer.deserialize(dict["issuer"] ?? .null) - let issueDate = try Serialization._StringSerializer.deserialize(dict["issue_date"] ?? .null) - let expirationDate = try Serialization._StringSerializer.deserialize(dict["expiration_date"] ?? .null) - let serialNumber = try Serialization._StringSerializer.deserialize(dict["serial_number"] ?? .null) - let sha1Fingerprint = try Serialization._StringSerializer.deserialize(dict["sha1_fingerprint"] ?? .null) - let commonName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["common_name"] ?? .null) - return Certificate( - subject: subject, - issuer: issuer, - issueDate: issueDate, - expirationDate: expirationDate, - serialNumber: serialNumber, - sha1Fingerprint: sha1Fingerprint, - commonName: commonName - ) - default: - throw JSONSerializerError.deserializeError(type: Certificate.self, json: json) + case .dictionary(let dict): + let subject = try Serialization._StringSerializer.deserialize(dict["subject"] ?? .null) + let issuer = try Serialization._StringSerializer.deserialize(dict["issuer"] ?? .null) + let issueDate = try Serialization._StringSerializer.deserialize(dict["issue_date"] ?? .null) + let expirationDate = try Serialization._StringSerializer.deserialize(dict["expiration_date"] ?? .null) + let serialNumber = try Serialization._StringSerializer.deserialize(dict["serial_number"] ?? .null) + let sha1Fingerprint = try Serialization._StringSerializer.deserialize(dict["sha1_fingerprint"] ?? .null) + let commonName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["common_name"] ?? .null) + return Certificate(subject: subject, issuer: issuer, issueDate: issueDate, expirationDate: expirationDate, serialNumber: serialNumber, sha1Fingerprint: sha1Fingerprint, commonName: commonName) + default: + throw JSONSerializerError.deserializeError(type: Certificate.self, json: json) } } } @@ -4747,42 +5183,40 @@ public class TeamLog { } } } - public class ChangeLinkExpirationPolicySerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: ChangeLinkExpirationPolicy) throws -> JSON { switch value { - case .allowed: - var d = [String: JSON]() - d[".tag"] = .str("allowed") - return .dictionary(d) - case .notAllowed: - var d = [String: JSON]() - d[".tag"] = .str("not_allowed") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) + case .allowed: + var d = [String: JSON]() + d[".tag"] = .str("allowed") + return .dictionary(d) + case .notAllowed: + var d = [String: JSON]() + d[".tag"] = .str("not_allowed") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) } } - public func deserialize(_ json: JSON) throws -> ChangeLinkExpirationPolicy { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "allowed": - return ChangeLinkExpirationPolicy.allowed - case "not_allowed": - return ChangeLinkExpirationPolicy.notAllowed - case "other": - return ChangeLinkExpirationPolicy.other + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "allowed": + return ChangeLinkExpirationPolicy.allowed + case "not_allowed": + return ChangeLinkExpirationPolicy.notAllowed + case "other": + return ChangeLinkExpirationPolicy.other + default: + return ChangeLinkExpirationPolicy.other + } default: - return ChangeLinkExpirationPolicy.other - } - default: - throw JSONSerializerError.deserializeError(type: ChangeLinkExpirationPolicy.self, json: json) + throw JSONSerializerError.deserializeError(type: ChangeLinkExpirationPolicy.self, json: json) } } } @@ -4814,27 +5248,25 @@ public class TeamLog { } } } - public class ChangedEnterpriseAdminRoleDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: ChangedEnterpriseAdminRoleDetails) throws -> JSON { let output = [ - "previous_value": try TeamLog.FedAdminRoleSerializer().serialize(value.previousValue), - "new_value": try TeamLog.FedAdminRoleSerializer().serialize(value.newValue), - "team_name": try Serialization._StringSerializer.serialize(value.teamName), + "previous_value": try TeamLog.FedAdminRoleSerializer().serialize(value.previousValue), + "new_value": try TeamLog.FedAdminRoleSerializer().serialize(value.newValue), + "team_name": try Serialization._StringSerializer.serialize(value.teamName), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> ChangedEnterpriseAdminRoleDetails { switch json { - case .dictionary(let dict): - let previousValue = try TeamLog.FedAdminRoleSerializer().deserialize(dict["previous_value"] ?? .null) - let newValue = try TeamLog.FedAdminRoleSerializer().deserialize(dict["new_value"] ?? .null) - let teamName = try Serialization._StringSerializer.deserialize(dict["team_name"] ?? .null) - return ChangedEnterpriseAdminRoleDetails(previousValue: previousValue, newValue: newValue, teamName: teamName) - default: - throw JSONSerializerError.deserializeError(type: ChangedEnterpriseAdminRoleDetails.self, json: json) + case .dictionary(let dict): + let previousValue = try TeamLog.FedAdminRoleSerializer().deserialize(dict["previous_value"] ?? .null) + let newValue = try TeamLog.FedAdminRoleSerializer().deserialize(dict["new_value"] ?? .null) + let teamName = try Serialization._StringSerializer.deserialize(dict["team_name"] ?? .null) + return ChangedEnterpriseAdminRoleDetails(previousValue: previousValue, newValue: newValue, teamName: teamName) + default: + throw JSONSerializerError.deserializeError(type: ChangedEnterpriseAdminRoleDetails.self, json: json) } } } @@ -4860,23 +5292,21 @@ public class TeamLog { } } } - public class ChangedEnterpriseAdminRoleTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: ChangedEnterpriseAdminRoleType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> ChangedEnterpriseAdminRoleType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return ChangedEnterpriseAdminRoleType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: ChangedEnterpriseAdminRoleType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ChangedEnterpriseAdminRoleType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ChangedEnterpriseAdminRoleType.self, json: json) } } } @@ -4891,12 +5321,7 @@ public class TeamLog { public let previousValue: TeamLog.TrustedTeamsRequestState /// New request state. public let newValue: TeamLog.TrustedTeamsRequestState - public init( - action: TeamLog.FedHandshakeAction, - additionalInfo: TeamLog.FederationStatusChangeAdditionalInfo, - previousValue: TeamLog.TrustedTeamsRequestState, - newValue: TeamLog.TrustedTeamsRequestState - ) { + public init(action: TeamLog.FedHandshakeAction, additionalInfo: TeamLog.FederationStatusChangeAdditionalInfo, previousValue: TeamLog.TrustedTeamsRequestState, newValue: TeamLog.TrustedTeamsRequestState) { self.action = action self.additionalInfo = additionalInfo self.previousValue = previousValue @@ -4915,34 +5340,27 @@ public class TeamLog { } } } - public class ChangedEnterpriseConnectedTeamStatusDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: ChangedEnterpriseConnectedTeamStatusDetails) throws -> JSON { let output = [ - "action": try TeamLog.FedHandshakeActionSerializer().serialize(value.action), - "additional_info": try TeamLog.FederationStatusChangeAdditionalInfoSerializer().serialize(value.additionalInfo), - "previous_value": try TeamLog.TrustedTeamsRequestStateSerializer().serialize(value.previousValue), - "new_value": try TeamLog.TrustedTeamsRequestStateSerializer().serialize(value.newValue), + "action": try TeamLog.FedHandshakeActionSerializer().serialize(value.action), + "additional_info": try TeamLog.FederationStatusChangeAdditionalInfoSerializer().serialize(value.additionalInfo), + "previous_value": try TeamLog.TrustedTeamsRequestStateSerializer().serialize(value.previousValue), + "new_value": try TeamLog.TrustedTeamsRequestStateSerializer().serialize(value.newValue), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> ChangedEnterpriseConnectedTeamStatusDetails { switch json { - case .dictionary(let dict): - let action = try TeamLog.FedHandshakeActionSerializer().deserialize(dict["action"] ?? .null) - let additionalInfo = try TeamLog.FederationStatusChangeAdditionalInfoSerializer().deserialize(dict["additional_info"] ?? .null) - let previousValue = try TeamLog.TrustedTeamsRequestStateSerializer().deserialize(dict["previous_value"] ?? .null) - let newValue = try TeamLog.TrustedTeamsRequestStateSerializer().deserialize(dict["new_value"] ?? .null) - return ChangedEnterpriseConnectedTeamStatusDetails( - action: action, - additionalInfo: additionalInfo, - previousValue: previousValue, - newValue: newValue - ) - default: - throw JSONSerializerError.deserializeError(type: ChangedEnterpriseConnectedTeamStatusDetails.self, json: json) + case .dictionary(let dict): + let action = try TeamLog.FedHandshakeActionSerializer().deserialize(dict["action"] ?? .null) + let additionalInfo = try TeamLog.FederationStatusChangeAdditionalInfoSerializer().deserialize(dict["additional_info"] ?? .null) + let previousValue = try TeamLog.TrustedTeamsRequestStateSerializer().deserialize(dict["previous_value"] ?? .null) + let newValue = try TeamLog.TrustedTeamsRequestStateSerializer().deserialize(dict["new_value"] ?? .null) + return ChangedEnterpriseConnectedTeamStatusDetails(action: action, additionalInfo: additionalInfo, previousValue: previousValue, newValue: newValue) + default: + throw JSONSerializerError.deserializeError(type: ChangedEnterpriseConnectedTeamStatusDetails.self, json: json) } } } @@ -4968,23 +5386,21 @@ public class TeamLog { } } } - public class ChangedEnterpriseConnectedTeamStatusTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: ChangedEnterpriseConnectedTeamStatusType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> ChangedEnterpriseConnectedTeamStatusType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return ChangedEnterpriseConnectedTeamStatusType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: ChangedEnterpriseConnectedTeamStatusType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ChangedEnterpriseConnectedTeamStatusType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ChangedEnterpriseConnectedTeamStatusType.self, json: json) } } } @@ -4997,11 +5413,7 @@ public class TeamLog { public let newValue: TeamLog.ClassificationPolicyEnumWrapper /// Policy type. public let classificationType: TeamLog.ClassificationType - public init( - previousValue: TeamLog.ClassificationPolicyEnumWrapper, - newValue: TeamLog.ClassificationPolicyEnumWrapper, - classificationType: TeamLog.ClassificationType - ) { + public init(previousValue: TeamLog.ClassificationPolicyEnumWrapper, newValue: TeamLog.ClassificationPolicyEnumWrapper, classificationType: TeamLog.ClassificationType) { self.previousValue = previousValue self.newValue = newValue self.classificationType = classificationType @@ -5019,27 +5431,25 @@ public class TeamLog { } } } - public class ClassificationChangePolicyDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: ClassificationChangePolicyDetails) throws -> JSON { let output = [ - "previous_value": try TeamLog.ClassificationPolicyEnumWrapperSerializer().serialize(value.previousValue), - "new_value": try TeamLog.ClassificationPolicyEnumWrapperSerializer().serialize(value.newValue), - "classification_type": try TeamLog.ClassificationTypeSerializer().serialize(value.classificationType), + "previous_value": try TeamLog.ClassificationPolicyEnumWrapperSerializer().serialize(value.previousValue), + "new_value": try TeamLog.ClassificationPolicyEnumWrapperSerializer().serialize(value.newValue), + "classification_type": try TeamLog.ClassificationTypeSerializer().serialize(value.classificationType), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> ClassificationChangePolicyDetails { switch json { - case .dictionary(let dict): - let previousValue = try TeamLog.ClassificationPolicyEnumWrapperSerializer().deserialize(dict["previous_value"] ?? .null) - let newValue = try TeamLog.ClassificationPolicyEnumWrapperSerializer().deserialize(dict["new_value"] ?? .null) - let classificationType = try TeamLog.ClassificationTypeSerializer().deserialize(dict["classification_type"] ?? .null) - return ClassificationChangePolicyDetails(previousValue: previousValue, newValue: newValue, classificationType: classificationType) - default: - throw JSONSerializerError.deserializeError(type: ClassificationChangePolicyDetails.self, json: json) + case .dictionary(let dict): + let previousValue = try TeamLog.ClassificationPolicyEnumWrapperSerializer().deserialize(dict["previous_value"] ?? .null) + let newValue = try TeamLog.ClassificationPolicyEnumWrapperSerializer().deserialize(dict["new_value"] ?? .null) + let classificationType = try TeamLog.ClassificationTypeSerializer().deserialize(dict["classification_type"] ?? .null) + return ClassificationChangePolicyDetails(previousValue: previousValue, newValue: newValue, classificationType: classificationType) + default: + throw JSONSerializerError.deserializeError(type: ClassificationChangePolicyDetails.self, json: json) } } } @@ -5065,29 +5475,28 @@ public class TeamLog { } } } - public class ClassificationChangePolicyTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: ClassificationChangePolicyType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> ClassificationChangePolicyType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return ClassificationChangePolicyType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: ClassificationChangePolicyType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ClassificationChangePolicyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ClassificationChangePolicyType.self, json: json) } } } /// Created Classification report. public class ClassificationCreateReportDetails: CustomStringConvertible, JSONRepresentable { + func json() throws -> JSON { try ClassificationCreateReportDetailsSerializer().serialize(self) } @@ -5100,20 +5509,18 @@ public class TeamLog { } } } - public class ClassificationCreateReportDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: ClassificationCreateReportDetails) throws -> JSON { let output = [String: JSON]() return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> ClassificationCreateReportDetails { switch json { - case .dictionary: - return ClassificationCreateReportDetails() - default: - throw JSONSerializerError.deserializeError(type: ClassificationCreateReportDetails.self, json: json) + case .dictionary(_): + return ClassificationCreateReportDetails() + default: + throw JSONSerializerError.deserializeError(type: ClassificationCreateReportDetails.self, json: json) } } } @@ -5138,23 +5545,21 @@ public class TeamLog { } } } - public class ClassificationCreateReportFailDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: ClassificationCreateReportFailDetails) throws -> JSON { let output = [ - "failure_reason": try Team.TeamReportFailureReasonSerializer().serialize(value.failureReason), + "failure_reason": try Team.TeamReportFailureReasonSerializer().serialize(value.failureReason), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> ClassificationCreateReportFailDetails { switch json { - case .dictionary(let dict): - let failureReason = try Team.TeamReportFailureReasonSerializer().deserialize(dict["failure_reason"] ?? .null) - return ClassificationCreateReportFailDetails(failureReason: failureReason) - default: - throw JSONSerializerError.deserializeError(type: ClassificationCreateReportFailDetails.self, json: json) + case .dictionary(let dict): + let failureReason = try Team.TeamReportFailureReasonSerializer().deserialize(dict["failure_reason"] ?? .null) + return ClassificationCreateReportFailDetails(failureReason: failureReason) + default: + throw JSONSerializerError.deserializeError(type: ClassificationCreateReportFailDetails.self, json: json) } } } @@ -5180,23 +5585,21 @@ public class TeamLog { } } } - public class ClassificationCreateReportFailTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: ClassificationCreateReportFailType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> ClassificationCreateReportFailType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return ClassificationCreateReportFailType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: ClassificationCreateReportFailType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ClassificationCreateReportFailType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ClassificationCreateReportFailType.self, json: json) } } } @@ -5222,23 +5625,21 @@ public class TeamLog { } } } - public class ClassificationCreateReportTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: ClassificationCreateReportType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> ClassificationCreateReportType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return ClassificationCreateReportType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: ClassificationCreateReportType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ClassificationCreateReportType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ClassificationCreateReportType.self, json: json) } } } @@ -5268,54 +5669,52 @@ public class TeamLog { } } } - public class ClassificationPolicyEnumWrapperSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: ClassificationPolicyEnumWrapper) throws -> JSON { switch value { - case .disabled: - var d = [String: JSON]() - d[".tag"] = .str("disabled") - return .dictionary(d) - case .enabled: - var d = [String: JSON]() - d[".tag"] = .str("enabled") - return .dictionary(d) - case .memberAndTeamFolders: - var d = [String: JSON]() - d[".tag"] = .str("member_and_team_folders") - return .dictionary(d) - case .teamFolders: - var d = [String: JSON]() - d[".tag"] = .str("team_folders") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) + case .disabled: + var d = [String: JSON]() + d[".tag"] = .str("disabled") + return .dictionary(d) + case .enabled: + var d = [String: JSON]() + d[".tag"] = .str("enabled") + return .dictionary(d) + case .memberAndTeamFolders: + var d = [String: JSON]() + d[".tag"] = .str("member_and_team_folders") + return .dictionary(d) + case .teamFolders: + var d = [String: JSON]() + d[".tag"] = .str("team_folders") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) } } - public func deserialize(_ json: JSON) throws -> ClassificationPolicyEnumWrapper { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "disabled": - return ClassificationPolicyEnumWrapper.disabled - case "enabled": - return ClassificationPolicyEnumWrapper.enabled - case "member_and_team_folders": - return ClassificationPolicyEnumWrapper.memberAndTeamFolders - case "team_folders": - return ClassificationPolicyEnumWrapper.teamFolders - case "other": - return ClassificationPolicyEnumWrapper.other + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "disabled": + return ClassificationPolicyEnumWrapper.disabled + case "enabled": + return ClassificationPolicyEnumWrapper.enabled + case "member_and_team_folders": + return ClassificationPolicyEnumWrapper.memberAndTeamFolders + case "team_folders": + return ClassificationPolicyEnumWrapper.teamFolders + case "other": + return ClassificationPolicyEnumWrapper.other + default: + return ClassificationPolicyEnumWrapper.other + } default: - return ClassificationPolicyEnumWrapper.other - } - default: - throw JSONSerializerError.deserializeError(type: ClassificationPolicyEnumWrapper.self, json: json) + throw JSONSerializerError.deserializeError(type: ClassificationPolicyEnumWrapper.self, json: json) } } } @@ -5341,42 +5740,40 @@ public class TeamLog { } } } - public class ClassificationTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: ClassificationType) throws -> JSON { switch value { - case .personalInformation: - var d = [String: JSON]() - d[".tag"] = .str("personal_information") - return .dictionary(d) - case .pii: - var d = [String: JSON]() - d[".tag"] = .str("pii") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) + case .personalInformation: + var d = [String: JSON]() + d[".tag"] = .str("personal_information") + return .dictionary(d) + case .pii: + var d = [String: JSON]() + d[".tag"] = .str("pii") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) } } - public func deserialize(_ json: JSON) throws -> ClassificationType { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "personal_information": - return ClassificationType.personalInformation - case "pii": - return ClassificationType.pii - case "other": - return ClassificationType.other + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "personal_information": + return ClassificationType.personalInformation + case "pii": + return ClassificationType.pii + case "other": + return ClassificationType.other + default: + return ClassificationType.other + } default: - return ClassificationType.other - } - default: - throw JSONSerializerError.deserializeError(type: ClassificationType.self, json: json) + throw JSONSerializerError.deserializeError(type: ClassificationType.self, json: json) } } } @@ -5402,23 +5799,21 @@ public class TeamLog { } } } - public class CollectionShareDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: CollectionShareDetails) throws -> JSON { let output = [ - "album_name": try Serialization._StringSerializer.serialize(value.albumName), + "album_name": try Serialization._StringSerializer.serialize(value.albumName), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> CollectionShareDetails { switch json { - case .dictionary(let dict): - let albumName = try Serialization._StringSerializer.deserialize(dict["album_name"] ?? .null) - return CollectionShareDetails(albumName: albumName) - default: - throw JSONSerializerError.deserializeError(type: CollectionShareDetails.self, json: json) + case .dictionary(let dict): + let albumName = try Serialization._StringSerializer.deserialize(dict["album_name"] ?? .null) + return CollectionShareDetails(albumName: albumName) + default: + throw JSONSerializerError.deserializeError(type: CollectionShareDetails.self, json: json) } } } @@ -5444,23 +5839,21 @@ public class TeamLog { } } } - public class CollectionShareTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: CollectionShareType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> CollectionShareType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return CollectionShareType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: CollectionShareType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return CollectionShareType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: CollectionShareType.self, json: json) } } } @@ -5488,48 +5881,46 @@ public class TeamLog { } } } - public class ComputerBackupPolicySerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: ComputerBackupPolicy) throws -> JSON { switch value { - case .default_: - var d = [String: JSON]() - d[".tag"] = .str("default") - return .dictionary(d) - case .disabled: - var d = [String: JSON]() - d[".tag"] = .str("disabled") - return .dictionary(d) - case .enabled: - var d = [String: JSON]() - d[".tag"] = .str("enabled") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) + case .default_: + var d = [String: JSON]() + d[".tag"] = .str("default") + return .dictionary(d) + case .disabled: + var d = [String: JSON]() + d[".tag"] = .str("disabled") + return .dictionary(d) + case .enabled: + var d = [String: JSON]() + d[".tag"] = .str("enabled") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) } } - public func deserialize(_ json: JSON) throws -> ComputerBackupPolicy { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "default": - return ComputerBackupPolicy.default_ - case "disabled": - return ComputerBackupPolicy.disabled - case "enabled": - return ComputerBackupPolicy.enabled - case "other": - return ComputerBackupPolicy.other + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "default": + return ComputerBackupPolicy.default_ + case "disabled": + return ComputerBackupPolicy.disabled + case "enabled": + return ComputerBackupPolicy.enabled + case "other": + return ComputerBackupPolicy.other + default: + return ComputerBackupPolicy.other + } default: - return ComputerBackupPolicy.other - } - default: - throw JSONSerializerError.deserializeError(type: ComputerBackupPolicy.self, json: json) + throw JSONSerializerError.deserializeError(type: ComputerBackupPolicy.self, json: json) } } } @@ -5557,25 +5948,23 @@ public class TeamLog { } } } - public class ComputerBackupPolicyChangedDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: ComputerBackupPolicyChangedDetails) throws -> JSON { let output = [ - "new_value": try TeamLog.ComputerBackupPolicySerializer().serialize(value.newValue), - "previous_value": try TeamLog.ComputerBackupPolicySerializer().serialize(value.previousValue), + "new_value": try TeamLog.ComputerBackupPolicySerializer().serialize(value.newValue), + "previous_value": try TeamLog.ComputerBackupPolicySerializer().serialize(value.previousValue), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> ComputerBackupPolicyChangedDetails { switch json { - case .dictionary(let dict): - let newValue = try TeamLog.ComputerBackupPolicySerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try TeamLog.ComputerBackupPolicySerializer().deserialize(dict["previous_value"] ?? .null) - return ComputerBackupPolicyChangedDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: ComputerBackupPolicyChangedDetails.self, json: json) + case .dictionary(let dict): + let newValue = try TeamLog.ComputerBackupPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try TeamLog.ComputerBackupPolicySerializer().deserialize(dict["previous_value"] ?? .null) + return ComputerBackupPolicyChangedDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: ComputerBackupPolicyChangedDetails.self, json: json) } } } @@ -5601,23 +5990,21 @@ public class TeamLog { } } } - public class ComputerBackupPolicyChangedTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: ComputerBackupPolicyChangedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> ComputerBackupPolicyChangedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return ComputerBackupPolicyChangedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: ComputerBackupPolicyChangedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ComputerBackupPolicyChangedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ComputerBackupPolicyChangedType.self, json: json) } } } @@ -5643,23 +6030,21 @@ public class TeamLog { } } } - public class ConnectedTeamNameSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: ConnectedTeamName) throws -> JSON { let output = [ - "team": try Serialization._StringSerializer.serialize(value.team), + "team": try Serialization._StringSerializer.serialize(value.team), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> ConnectedTeamName { switch json { - case .dictionary(let dict): - let team = try Serialization._StringSerializer.deserialize(dict["team"] ?? .null) - return ConnectedTeamName(team: team) - default: - throw JSONSerializerError.deserializeError(type: ConnectedTeamName.self, json: json) + case .dictionary(let dict): + let team = try Serialization._StringSerializer.deserialize(dict["team"] ?? .null) + return ConnectedTeamName(team: team) + default: + throw JSONSerializerError.deserializeError(type: ConnectedTeamName.self, json: json) } } } @@ -5689,25 +6074,23 @@ public class TeamLog { } } } - public class ContentAdministrationPolicyChangedDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: ContentAdministrationPolicyChangedDetails) throws -> JSON { let output = [ - "new_value": try Serialization._StringSerializer.serialize(value.newValue), - "previous_value": try Serialization._StringSerializer.serialize(value.previousValue), + "new_value": try Serialization._StringSerializer.serialize(value.newValue), + "previous_value": try Serialization._StringSerializer.serialize(value.previousValue), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> ContentAdministrationPolicyChangedDetails { switch json { - case .dictionary(let dict): - let newValue = try Serialization._StringSerializer.deserialize(dict["new_value"] ?? .null) - let previousValue = try Serialization._StringSerializer.deserialize(dict["previous_value"] ?? .null) - return ContentAdministrationPolicyChangedDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: ContentAdministrationPolicyChangedDetails.self, json: json) + case .dictionary(let dict): + let newValue = try Serialization._StringSerializer.deserialize(dict["new_value"] ?? .null) + let previousValue = try Serialization._StringSerializer.deserialize(dict["previous_value"] ?? .null) + return ContentAdministrationPolicyChangedDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: ContentAdministrationPolicyChangedDetails.self, json: json) } } } @@ -5733,23 +6116,184 @@ public class TeamLog { } } } - public class ContentAdministrationPolicyChangedTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: ContentAdministrationPolicyChangedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> ContentAdministrationPolicyChangedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return ContentAdministrationPolicyChangedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: ContentAdministrationPolicyChangedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ContentAdministrationPolicyChangedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ContentAdministrationPolicyChangedType.self, json: json) + } + } + } + + /// Changed content deletion protection policy for team. + public class ContentDeletionProtectionChangePolicyDetails: CustomStringConvertible, JSONRepresentable { + /// New content deletion protection policy. + public let newValue: TeamLog.ContentDeletionProtectionPolicy + /// New threshold value in bytes (only present when new policy is on_above_threshold). + public let newThresholdBytes: UInt64? + /// Previous content deletion protection policy. Might be missing due to historical data gap. + public let previousValue: TeamLog.ContentDeletionProtectionPolicy? + /// Previous threshold value in bytes (only present when previous policy was on_above_threshold). + public let previousThresholdBytes: UInt64? + public init(newValue: TeamLog.ContentDeletionProtectionPolicy, newThresholdBytes: UInt64? = nil, previousValue: TeamLog.ContentDeletionProtectionPolicy? = nil, previousThresholdBytes: UInt64? = nil) { + self.newValue = newValue + nullableValidator(comparableValidator())(newThresholdBytes) + self.newThresholdBytes = newThresholdBytes + self.previousValue = previousValue + nullableValidator(comparableValidator())(previousThresholdBytes) + self.previousThresholdBytes = previousThresholdBytes + } + + func json() throws -> JSON { + try ContentDeletionProtectionChangePolicyDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try ContentDeletionProtectionChangePolicyDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for ContentDeletionProtectionChangePolicyDetails: \(error)" + } + } + } + public class ContentDeletionProtectionChangePolicyDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ContentDeletionProtectionChangePolicyDetails) throws -> JSON { + let output = [ + "new_value": try TeamLog.ContentDeletionProtectionPolicySerializer().serialize(value.newValue), + "new_threshold_bytes": try NullableSerializer(Serialization._UInt64Serializer).serialize(value.newThresholdBytes), + "previous_value": try NullableSerializer(TeamLog.ContentDeletionProtectionPolicySerializer()).serialize(value.previousValue), + "previous_threshold_bytes": try NullableSerializer(Serialization._UInt64Serializer).serialize(value.previousThresholdBytes), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> ContentDeletionProtectionChangePolicyDetails { + switch json { + case .dictionary(let dict): + let newValue = try TeamLog.ContentDeletionProtectionPolicySerializer().deserialize(dict["new_value"] ?? .null) + let newThresholdBytes = try NullableSerializer(Serialization._UInt64Serializer).deserialize(dict["new_threshold_bytes"] ?? .null) + let previousValue = try NullableSerializer(TeamLog.ContentDeletionProtectionPolicySerializer()).deserialize(dict["previous_value"] ?? .null) + let previousThresholdBytes = try NullableSerializer(Serialization._UInt64Serializer).deserialize(dict["previous_threshold_bytes"] ?? .null) + return ContentDeletionProtectionChangePolicyDetails(newValue: newValue, newThresholdBytes: newThresholdBytes, previousValue: previousValue, previousThresholdBytes: previousThresholdBytes) + default: + throw JSONSerializerError.deserializeError(type: ContentDeletionProtectionChangePolicyDetails.self, json: json) + } + } + } + + /// The ContentDeletionProtectionChangePolicyType struct + public class ContentDeletionProtectionChangePolicyType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try ContentDeletionProtectionChangePolicyTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try ContentDeletionProtectionChangePolicyTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for ContentDeletionProtectionChangePolicyType: \(error)" + } + } + } + public class ContentDeletionProtectionChangePolicyTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ContentDeletionProtectionChangePolicyType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> ContentDeletionProtectionChangePolicyType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ContentDeletionProtectionChangePolicyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ContentDeletionProtectionChangePolicyType.self, json: json) + } + } + } + + /// Content deletion protection policy + public enum ContentDeletionProtectionPolicy: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case off + /// An unspecified error. + case onAboveThreshold + /// An unspecified error. + case onAllFiles + /// An unspecified error. + case other + + func json() throws -> JSON { + try ContentDeletionProtectionPolicySerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try ContentDeletionProtectionPolicySerializer().serialize(self)))" + } catch { + return "Failed to generate description for ContentDeletionProtectionPolicy: \(error)" + } + } + } + public class ContentDeletionProtectionPolicySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ContentDeletionProtectionPolicy) throws -> JSON { + switch value { + case .off: + var d = [String: JSON]() + d[".tag"] = .str("off") + return .dictionary(d) + case .onAboveThreshold: + var d = [String: JSON]() + d[".tag"] = .str("on_above_threshold") + return .dictionary(d) + case .onAllFiles: + var d = [String: JSON]() + d[".tag"] = .str("on_all_files") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> ContentDeletionProtectionPolicy { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "off": + return ContentDeletionProtectionPolicy.off + case "on_above_threshold": + return ContentDeletionProtectionPolicy.onAboveThreshold + case "on_all_files": + return ContentDeletionProtectionPolicy.onAllFiles + case "other": + return ContentDeletionProtectionPolicy.other + default: + return ContentDeletionProtectionPolicy.other + } + default: + throw JSONSerializerError.deserializeError(type: ContentDeletionProtectionPolicy.self, json: json) } } } @@ -5775,42 +6319,40 @@ public class TeamLog { } } } - public class ContentPermanentDeletePolicySerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: ContentPermanentDeletePolicy) throws -> JSON { switch value { - case .disabled: - var d = [String: JSON]() - d[".tag"] = .str("disabled") - return .dictionary(d) - case .enabled: - var d = [String: JSON]() - d[".tag"] = .str("enabled") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) + case .disabled: + var d = [String: JSON]() + d[".tag"] = .str("disabled") + return .dictionary(d) + case .enabled: + var d = [String: JSON]() + d[".tag"] = .str("enabled") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) } } - public func deserialize(_ json: JSON) throws -> ContentPermanentDeletePolicy { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "disabled": - return ContentPermanentDeletePolicy.disabled - case "enabled": - return ContentPermanentDeletePolicy.enabled - case "other": - return ContentPermanentDeletePolicy.other + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "disabled": + return ContentPermanentDeletePolicy.disabled + case "enabled": + return ContentPermanentDeletePolicy.enabled + case "other": + return ContentPermanentDeletePolicy.other + default: + return ContentPermanentDeletePolicy.other + } default: - return ContentPermanentDeletePolicy.other - } - default: - throw JSONSerializerError.deserializeError(type: ContentPermanentDeletePolicy.self, json: json) + throw JSONSerializerError.deserializeError(type: ContentPermanentDeletePolicy.self, json: json) } } } @@ -5844,76 +6386,75 @@ public class TeamLog { } } } - public class ContextLogInfoSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: ContextLogInfo) throws -> JSON { switch value { - case .anonymous: - var d = [String: JSON]() - d[".tag"] = .str("anonymous") - return .dictionary(d) - case .nonTeamMember(let arg): - var d = try Serialization.getFields(TeamLog.NonTeamMemberLogInfoSerializer().serialize(arg)) - d[".tag"] = .str("non_team_member") - return .dictionary(d) - case .organizationTeam(let arg): - var d = try Serialization.getFields(TeamLog.TeamLogInfoSerializer().serialize(arg)) - d[".tag"] = .str("organization_team") - return .dictionary(d) - case .team: - var d = [String: JSON]() - d[".tag"] = .str("team") - return .dictionary(d) - case .teamMember(let arg): - var d = try Serialization.getFields(TeamLog.TeamMemberLogInfoSerializer().serialize(arg)) - d[".tag"] = .str("team_member") - return .dictionary(d) - case .trustedNonTeamMember(let arg): - var d = try Serialization.getFields(TeamLog.TrustedNonTeamMemberLogInfoSerializer().serialize(arg)) - d[".tag"] = .str("trusted_non_team_member") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) + case .anonymous: + var d = [String: JSON]() + d[".tag"] = .str("anonymous") + return .dictionary(d) + case .nonTeamMember(let arg): + var d = try Serialization.getFields(TeamLog.NonTeamMemberLogInfoSerializer().serialize(arg)) + d[".tag"] = .str("non_team_member") + return .dictionary(d) + case .organizationTeam(let arg): + var d = try Serialization.getFields(TeamLog.TeamLogInfoSerializer().serialize(arg)) + d[".tag"] = .str("organization_team") + return .dictionary(d) + case .team: + var d = [String: JSON]() + d[".tag"] = .str("team") + return .dictionary(d) + case .teamMember(let arg): + var d = try Serialization.getFields(TeamLog.TeamMemberLogInfoSerializer().serialize(arg)) + d[".tag"] = .str("team_member") + return .dictionary(d) + case .trustedNonTeamMember(let arg): + var d = try Serialization.getFields(TeamLog.TrustedNonTeamMemberLogInfoSerializer().serialize(arg)) + d[".tag"] = .str("trusted_non_team_member") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) } } - public func deserialize(_ json: JSON) throws -> ContextLogInfo { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "anonymous": - return ContextLogInfo.anonymous - case "non_team_member": - let v = try TeamLog.NonTeamMemberLogInfoSerializer().deserialize(json) - return ContextLogInfo.nonTeamMember(v) - case "organization_team": - let v = try TeamLog.TeamLogInfoSerializer().deserialize(json) - return ContextLogInfo.organizationTeam(v) - case "team": - return ContextLogInfo.team - case "team_member": - let v = try TeamLog.TeamMemberLogInfoSerializer().deserialize(json) - return ContextLogInfo.teamMember(v) - case "trusted_non_team_member": - let v = try TeamLog.TrustedNonTeamMemberLogInfoSerializer().deserialize(json) - return ContextLogInfo.trustedNonTeamMember(v) - case "other": - return ContextLogInfo.other - default: - return ContextLogInfo.other - } - default: - throw JSONSerializerError.deserializeError(type: ContextLogInfo.self, json: json) + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "anonymous": + return ContextLogInfo.anonymous + case "non_team_member": + let v = try TeamLog.NonTeamMemberLogInfoSerializer().deserialize(json) + return ContextLogInfo.nonTeamMember(v) + case "organization_team": + let v = try TeamLog.TeamLogInfoSerializer().deserialize(json) + return ContextLogInfo.organizationTeam(v) + case "team": + return ContextLogInfo.team + case "team_member": + let v = try TeamLog.TeamMemberLogInfoSerializer().deserialize(json) + return ContextLogInfo.teamMember(v) + case "trusted_non_team_member": + let v = try TeamLog.TrustedNonTeamMemberLogInfoSerializer().deserialize(json) + return ContextLogInfo.trustedNonTeamMember(v) + case "other": + return ContextLogInfo.other + default: + return ContextLogInfo.other + } + default: + throw JSONSerializerError.deserializeError(type: ContextLogInfo.self, json: json) } } } /// Created folders. public class CreateFolderDetails: CustomStringConvertible, JSONRepresentable { + func json() throws -> JSON { try CreateFolderDetailsSerializer().serialize(self) } @@ -5926,20 +6467,18 @@ public class TeamLog { } } } - public class CreateFolderDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: CreateFolderDetails) throws -> JSON { let output = [String: JSON]() return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> CreateFolderDetails { switch json { - case .dictionary: - return CreateFolderDetails() - default: - throw JSONSerializerError.deserializeError(type: CreateFolderDetails.self, json: json) + case .dictionary(_): + return CreateFolderDetails() + default: + throw JSONSerializerError.deserializeError(type: CreateFolderDetails.self, json: json) } } } @@ -5965,23 +6504,21 @@ public class TeamLog { } } } - public class CreateFolderTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: CreateFolderType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> CreateFolderType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return CreateFolderType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: CreateFolderType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return CreateFolderType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: CreateFolderType.self, json: json) } } } @@ -6011,25 +6548,23 @@ public class TeamLog { } } } - public class CreateTeamInviteLinkDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: CreateTeamInviteLinkDetails) throws -> JSON { let output = [ - "link_url": try Serialization._StringSerializer.serialize(value.linkUrl), - "expiry_date": try Serialization._StringSerializer.serialize(value.expiryDate), + "link_url": try Serialization._StringSerializer.serialize(value.linkUrl), + "expiry_date": try Serialization._StringSerializer.serialize(value.expiryDate), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> CreateTeamInviteLinkDetails { switch json { - case .dictionary(let dict): - let linkUrl = try Serialization._StringSerializer.deserialize(dict["link_url"] ?? .null) - let expiryDate = try Serialization._StringSerializer.deserialize(dict["expiry_date"] ?? .null) - return CreateTeamInviteLinkDetails(linkUrl: linkUrl, expiryDate: expiryDate) - default: - throw JSONSerializerError.deserializeError(type: CreateTeamInviteLinkDetails.self, json: json) + case .dictionary(let dict): + let linkUrl = try Serialization._StringSerializer.deserialize(dict["link_url"] ?? .null) + let expiryDate = try Serialization._StringSerializer.deserialize(dict["expiry_date"] ?? .null) + return CreateTeamInviteLinkDetails(linkUrl: linkUrl, expiryDate: expiryDate) + default: + throw JSONSerializerError.deserializeError(type: CreateTeamInviteLinkDetails.self, json: json) } } } @@ -6055,75 +6590,84 @@ public class TeamLog { } } } - public class CreateTeamInviteLinkTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: CreateTeamInviteLinkType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> CreateTeamInviteLinkType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return CreateTeamInviteLinkType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: CreateTeamInviteLinkType.self, json: json) - } - } - } - - /// Set restrictions on data center locations where team data resides. - public class DataPlacementRestrictionChangePolicyDetails: CustomStringConvertible, JSONRepresentable { - /// Previous placement restriction. - public let previousValue: TeamLog.PlacementRestriction - /// New placement restriction. - public let newValue: TeamLog.PlacementRestriction - public init(previousValue: TeamLog.PlacementRestriction, newValue: TeamLog.PlacementRestriction) { - self.previousValue = previousValue - self.newValue = newValue + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return CreateTeamInviteLinkType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: CreateTeamInviteLinkType.self, json: json) + } + } + } + + /// Added a comment to a stack. + public class DashAddedCommentToStackDetails: CustomStringConvertible, JSONRepresentable { + /// The name of the stack where the comment exists. + public let stackName: String + /// The name of the stack item that the comment is tied to. + public let stackItemName: String + /// The text of the comment. + public let commentText: String + /// The type of stack backend. + public let stackType: TeamLog.DashStackType? + public init(stackName: String, stackItemName: String, commentText: String, stackType: TeamLog.DashStackType? = nil) { + stringValidator()(stackName) + self.stackName = stackName + stringValidator()(stackItemName) + self.stackItemName = stackItemName + stringValidator()(commentText) + self.commentText = commentText + self.stackType = stackType } func json() throws -> JSON { - try DataPlacementRestrictionChangePolicyDetailsSerializer().serialize(self) + try DashAddedCommentToStackDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DataPlacementRestrictionChangePolicyDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashAddedCommentToStackDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for DataPlacementRestrictionChangePolicyDetails: \(error)" + return "Failed to generate description for DashAddedCommentToStackDetails: \(error)" } } } - - public class DataPlacementRestrictionChangePolicyDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DataPlacementRestrictionChangePolicyDetails) throws -> JSON { + public class DashAddedCommentToStackDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashAddedCommentToStackDetails) throws -> JSON { let output = [ - "previous_value": try TeamLog.PlacementRestrictionSerializer().serialize(value.previousValue), - "new_value": try TeamLog.PlacementRestrictionSerializer().serialize(value.newValue), + "stack_name": try Serialization._StringSerializer.serialize(value.stackName), + "stack_item_name": try Serialization._StringSerializer.serialize(value.stackItemName), + "comment_text": try Serialization._StringSerializer.serialize(value.commentText), + "stack_type": try NullableSerializer(TeamLog.DashStackTypeSerializer()).serialize(value.stackType), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DataPlacementRestrictionChangePolicyDetails { + public func deserialize(_ json: JSON) throws -> DashAddedCommentToStackDetails { switch json { - case .dictionary(let dict): - let previousValue = try TeamLog.PlacementRestrictionSerializer().deserialize(dict["previous_value"] ?? .null) - let newValue = try TeamLog.PlacementRestrictionSerializer().deserialize(dict["new_value"] ?? .null) - return DataPlacementRestrictionChangePolicyDetails(previousValue: previousValue, newValue: newValue) - default: - throw JSONSerializerError.deserializeError(type: DataPlacementRestrictionChangePolicyDetails.self, json: json) + case .dictionary(let dict): + let stackName = try Serialization._StringSerializer.deserialize(dict["stack_name"] ?? .null) + let stackItemName = try Serialization._StringSerializer.deserialize(dict["stack_item_name"] ?? .null) + let commentText = try Serialization._StringSerializer.deserialize(dict["comment_text"] ?? .null) + let stackType = try NullableSerializer(TeamLog.DashStackTypeSerializer()).deserialize(dict["stack_type"] ?? .null) + return DashAddedCommentToStackDetails(stackName: stackName, stackItemName: stackItemName, commentText: commentText, stackType: stackType) + default: + throw JSONSerializerError.deserializeError(type: DashAddedCommentToStackDetails.self, json: json) } } } - /// The DataPlacementRestrictionChangePolicyType struct - public class DataPlacementRestrictionChangePolicyType: CustomStringConvertible, JSONRepresentable { + /// The DashAddedCommentToStackType struct + public class DashAddedCommentToStackType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -6132,81 +6676,83 @@ public class TeamLog { } func json() throws -> JSON { - try DataPlacementRestrictionChangePolicyTypeSerializer().serialize(self) + try DashAddedCommentToStackTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DataPlacementRestrictionChangePolicyTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashAddedCommentToStackTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for DataPlacementRestrictionChangePolicyType: \(error)" + return "Failed to generate description for DashAddedCommentToStackType: \(error)" } } } - - public class DataPlacementRestrictionChangePolicyTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DataPlacementRestrictionChangePolicyType) throws -> JSON { + public class DashAddedCommentToStackTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashAddedCommentToStackType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DataPlacementRestrictionChangePolicyType { + public func deserialize(_ json: JSON) throws -> DashAddedCommentToStackType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return DataPlacementRestrictionChangePolicyType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: DataPlacementRestrictionChangePolicyType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DashAddedCommentToStackType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DashAddedCommentToStackType.self, json: json) } } } - /// Completed restrictions on data center locations where team data resides. - public class DataPlacementRestrictionSatisfyPolicyDetails: CustomStringConvertible, JSONRepresentable { - /// Placement restriction. - public let placementRestriction: TeamLog.PlacementRestriction - public init(placementRestriction: TeamLog.PlacementRestriction) { - self.placementRestriction = placementRestriction + /// Connected to a user connector. + public class DashAddedConnectorDetails: CustomStringConvertible, JSONRepresentable { + /// The name of the Connector. + public let connectorName: String + /// The status of the Connector. + public let connectorStatus: TeamLog.DashConnectorStatus + public init(connectorName: String, connectorStatus: TeamLog.DashConnectorStatus) { + stringValidator()(connectorName) + self.connectorName = connectorName + self.connectorStatus = connectorStatus } func json() throws -> JSON { - try DataPlacementRestrictionSatisfyPolicyDetailsSerializer().serialize(self) + try DashAddedConnectorDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DataPlacementRestrictionSatisfyPolicyDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashAddedConnectorDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for DataPlacementRestrictionSatisfyPolicyDetails: \(error)" + return "Failed to generate description for DashAddedConnectorDetails: \(error)" } } } - - public class DataPlacementRestrictionSatisfyPolicyDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DataPlacementRestrictionSatisfyPolicyDetails) throws -> JSON { + public class DashAddedConnectorDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashAddedConnectorDetails) throws -> JSON { let output = [ - "placement_restriction": try TeamLog.PlacementRestrictionSerializer().serialize(value.placementRestriction), + "connector_name": try Serialization._StringSerializer.serialize(value.connectorName), + "connector_status": try TeamLog.DashConnectorStatusSerializer().serialize(value.connectorStatus), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DataPlacementRestrictionSatisfyPolicyDetails { + public func deserialize(_ json: JSON) throws -> DashAddedConnectorDetails { switch json { - case .dictionary(let dict): - let placementRestriction = try TeamLog.PlacementRestrictionSerializer().deserialize(dict["placement_restriction"] ?? .null) - return DataPlacementRestrictionSatisfyPolicyDetails(placementRestriction: placementRestriction) - default: - throw JSONSerializerError.deserializeError(type: DataPlacementRestrictionSatisfyPolicyDetails.self, json: json) + case .dictionary(let dict): + let connectorName = try Serialization._StringSerializer.deserialize(dict["connector_name"] ?? .null) + let connectorStatus = try TeamLog.DashConnectorStatusSerializer().deserialize(dict["connector_status"] ?? .null) + return DashAddedConnectorDetails(connectorName: connectorName, connectorStatus: connectorStatus) + default: + throw JSONSerializerError.deserializeError(type: DashAddedConnectorDetails.self, json: json) } } } - /// The DataPlacementRestrictionSatisfyPolicyType struct - public class DataPlacementRestrictionSatisfyPolicyType: CustomStringConvertible, JSONRepresentable { + /// The DashAddedConnectorType struct + public class DashAddedConnectorType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -6215,72 +6761,89 @@ public class TeamLog { } func json() throws -> JSON { - try DataPlacementRestrictionSatisfyPolicyTypeSerializer().serialize(self) + try DashAddedConnectorTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DataPlacementRestrictionSatisfyPolicyTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashAddedConnectorTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for DataPlacementRestrictionSatisfyPolicyType: \(error)" + return "Failed to generate description for DashAddedConnectorType: \(error)" } } } - - public class DataPlacementRestrictionSatisfyPolicyTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DataPlacementRestrictionSatisfyPolicyType) throws -> JSON { + public class DashAddedConnectorTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashAddedConnectorType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DataPlacementRestrictionSatisfyPolicyType { + public func deserialize(_ json: JSON) throws -> DashAddedConnectorType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return DataPlacementRestrictionSatisfyPolicyType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: DataPlacementRestrictionSatisfyPolicyType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DashAddedConnectorType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DashAddedConnectorType.self, json: json) } } } - /// Requested data residency migration for team data. - public class DataResidencyMigrationRequestSuccessfulDetails: CustomStringConvertible, JSONRepresentable { + /// Added a link to a stack. + public class DashAddedLinkToStackDetails: CustomStringConvertible, JSONRepresentable { + /// The name of the stack. + public let stackName: String + /// The link to the item in the stack. + public let stackItemLink: String + /// The type of stack backend. + public let stackType: TeamLog.DashStackType? + public init(stackName: String, stackItemLink: String, stackType: TeamLog.DashStackType? = nil) { + stringValidator()(stackName) + self.stackName = stackName + stringValidator()(stackItemLink) + self.stackItemLink = stackItemLink + self.stackType = stackType + } + func json() throws -> JSON { - try DataResidencyMigrationRequestSuccessfulDetailsSerializer().serialize(self) + try DashAddedLinkToStackDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DataResidencyMigrationRequestSuccessfulDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashAddedLinkToStackDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for DataResidencyMigrationRequestSuccessfulDetails: \(error)" + return "Failed to generate description for DashAddedLinkToStackDetails: \(error)" } } } - - public class DataResidencyMigrationRequestSuccessfulDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DataResidencyMigrationRequestSuccessfulDetails) throws -> JSON { - let output = [String: JSON]() + public class DashAddedLinkToStackDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashAddedLinkToStackDetails) throws -> JSON { + let output = [ + "stack_name": try Serialization._StringSerializer.serialize(value.stackName), + "stack_item_link": try Serialization._StringSerializer.serialize(value.stackItemLink), + "stack_type": try NullableSerializer(TeamLog.DashStackTypeSerializer()).serialize(value.stackType), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DataResidencyMigrationRequestSuccessfulDetails { + public func deserialize(_ json: JSON) throws -> DashAddedLinkToStackDetails { switch json { - case .dictionary: - return DataResidencyMigrationRequestSuccessfulDetails() - default: - throw JSONSerializerError.deserializeError(type: DataResidencyMigrationRequestSuccessfulDetails.self, json: json) + case .dictionary(let dict): + let stackName = try Serialization._StringSerializer.deserialize(dict["stack_name"] ?? .null) + let stackItemLink = try Serialization._StringSerializer.deserialize(dict["stack_item_link"] ?? .null) + let stackType = try NullableSerializer(TeamLog.DashStackTypeSerializer()).deserialize(dict["stack_type"] ?? .null) + return DashAddedLinkToStackDetails(stackName: stackName, stackItemLink: stackItemLink, stackType: stackType) + default: + throw JSONSerializerError.deserializeError(type: DashAddedLinkToStackDetails.self, json: json) } } } - /// The DataResidencyMigrationRequestSuccessfulType struct - public class DataResidencyMigrationRequestSuccessfulType: CustomStringConvertible, JSONRepresentable { + /// The DashAddedLinkToStackType struct + public class DashAddedLinkToStackType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -6289,72 +6852,78 @@ public class TeamLog { } func json() throws -> JSON { - try DataResidencyMigrationRequestSuccessfulTypeSerializer().serialize(self) + try DashAddedLinkToStackTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DataResidencyMigrationRequestSuccessfulTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashAddedLinkToStackTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for DataResidencyMigrationRequestSuccessfulType: \(error)" + return "Failed to generate description for DashAddedLinkToStackType: \(error)" } } } - - public class DataResidencyMigrationRequestSuccessfulTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DataResidencyMigrationRequestSuccessfulType) throws -> JSON { + public class DashAddedLinkToStackTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashAddedLinkToStackType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DataResidencyMigrationRequestSuccessfulType { + public func deserialize(_ json: JSON) throws -> DashAddedLinkToStackType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return DataResidencyMigrationRequestSuccessfulType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: DataResidencyMigrationRequestSuccessfulType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DashAddedLinkToStackType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DashAddedLinkToStackType.self, json: json) } } } - /// Request for data residency migration for team data has failed. - public class DataResidencyMigrationRequestUnsuccessfulDetails: CustomStringConvertible, JSONRepresentable { + /// Admin added an email domain to the team allowlist. + public class DashAddedTeamEmailDomainAllowlistDetails: CustomStringConvertible, JSONRepresentable { + /// The email domain that gets added/removed from the team allowlist. + public let emailDomain: String + public init(emailDomain: String) { + stringValidator()(emailDomain) + self.emailDomain = emailDomain + } + func json() throws -> JSON { - try DataResidencyMigrationRequestUnsuccessfulDetailsSerializer().serialize(self) + try DashAddedTeamEmailDomainAllowlistDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DataResidencyMigrationRequestUnsuccessfulDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashAddedTeamEmailDomainAllowlistDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for DataResidencyMigrationRequestUnsuccessfulDetails: \(error)" + return "Failed to generate description for DashAddedTeamEmailDomainAllowlistDetails: \(error)" } } } - - public class DataResidencyMigrationRequestUnsuccessfulDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DataResidencyMigrationRequestUnsuccessfulDetails) throws -> JSON { - let output = [String: JSON]() + public class DashAddedTeamEmailDomainAllowlistDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashAddedTeamEmailDomainAllowlistDetails) throws -> JSON { + let output = [ + "email_domain": try Serialization._StringSerializer.serialize(value.emailDomain), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DataResidencyMigrationRequestUnsuccessfulDetails { + public func deserialize(_ json: JSON) throws -> DashAddedTeamEmailDomainAllowlistDetails { switch json { - case .dictionary: - return DataResidencyMigrationRequestUnsuccessfulDetails() - default: - throw JSONSerializerError.deserializeError(type: DataResidencyMigrationRequestUnsuccessfulDetails.self, json: json) + case .dictionary(let dict): + let emailDomain = try Serialization._StringSerializer.deserialize(dict["email_domain"] ?? .null) + return DashAddedTeamEmailDomainAllowlistDetails(emailDomain: emailDomain) + default: + throw JSONSerializerError.deserializeError(type: DashAddedTeamEmailDomainAllowlistDetails.self, json: json) } } } - /// The DataResidencyMigrationRequestUnsuccessfulType struct - public class DataResidencyMigrationRequestUnsuccessfulType: CustomStringConvertible, JSONRepresentable { + /// The DashAddedTeamEmailDomainAllowlistType struct + public class DashAddedTeamEmailDomainAllowlistType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -6363,191 +6932,83 @@ public class TeamLog { } func json() throws -> JSON { - try DataResidencyMigrationRequestUnsuccessfulTypeSerializer().serialize(self) + try DashAddedTeamEmailDomainAllowlistTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DataResidencyMigrationRequestUnsuccessfulTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashAddedTeamEmailDomainAllowlistTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for DataResidencyMigrationRequestUnsuccessfulType: \(error)" + return "Failed to generate description for DashAddedTeamEmailDomainAllowlistType: \(error)" } } } - - public class DataResidencyMigrationRequestUnsuccessfulTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DataResidencyMigrationRequestUnsuccessfulType) throws -> JSON { + public class DashAddedTeamEmailDomainAllowlistTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashAddedTeamEmailDomainAllowlistType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DataResidencyMigrationRequestUnsuccessfulType { - switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return DataResidencyMigrationRequestUnsuccessfulType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: DataResidencyMigrationRequestUnsuccessfulType.self, json: json) - } - } - } - - /// Policy for the default number of days until an externally shared link expires - public enum DefaultLinkExpirationDaysPolicy: CustomStringConvertible, JSONRepresentable { - /// An unspecified error. - case day1 - /// An unspecified error. - case day180 - /// An unspecified error. - case day3 - /// An unspecified error. - case day30 - /// An unspecified error. - case day7 - /// An unspecified error. - case day90 - /// An unspecified error. - case none - /// An unspecified error. - case year1 - /// An unspecified error. - case other - - func json() throws -> JSON { - try DefaultLinkExpirationDaysPolicySerializer().serialize(self) - } - - public var description: String { - do { - return "\(SerializeUtil.prepareJSONForSerialization(try DefaultLinkExpirationDaysPolicySerializer().serialize(self)))" - } catch { - return "Failed to generate description for DefaultLinkExpirationDaysPolicy: \(error)" - } - } - } - - public class DefaultLinkExpirationDaysPolicySerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DefaultLinkExpirationDaysPolicy) throws -> JSON { - switch value { - case .day1: - var d = [String: JSON]() - d[".tag"] = .str("day_1") - return .dictionary(d) - case .day180: - var d = [String: JSON]() - d[".tag"] = .str("day_180") - return .dictionary(d) - case .day3: - var d = [String: JSON]() - d[".tag"] = .str("day_3") - return .dictionary(d) - case .day30: - var d = [String: JSON]() - d[".tag"] = .str("day_30") - return .dictionary(d) - case .day7: - var d = [String: JSON]() - d[".tag"] = .str("day_7") - return .dictionary(d) - case .day90: - var d = [String: JSON]() - d[".tag"] = .str("day_90") - return .dictionary(d) - case .none: - var d = [String: JSON]() - d[".tag"] = .str("none") - return .dictionary(d) - case .year1: - var d = [String: JSON]() - d[".tag"] = .str("year_1") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) - } - } - - public func deserialize(_ json: JSON) throws -> DefaultLinkExpirationDaysPolicy { + public func deserialize(_ json: JSON) throws -> DashAddedTeamEmailDomainAllowlistType { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "day_1": - return DefaultLinkExpirationDaysPolicy.day1 - case "day_180": - return DefaultLinkExpirationDaysPolicy.day180 - case "day_3": - return DefaultLinkExpirationDaysPolicy.day3 - case "day_30": - return DefaultLinkExpirationDaysPolicy.day30 - case "day_7": - return DefaultLinkExpirationDaysPolicy.day7 - case "day_90": - return DefaultLinkExpirationDaysPolicy.day90 - case "none": - return DefaultLinkExpirationDaysPolicy.none - case "year_1": - return DefaultLinkExpirationDaysPolicy.year1 - case "other": - return DefaultLinkExpirationDaysPolicy.other - default: - return DefaultLinkExpirationDaysPolicy.other - } - default: - throw JSONSerializerError.deserializeError(type: DefaultLinkExpirationDaysPolicy.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DashAddedTeamEmailDomainAllowlistType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DashAddedTeamEmailDomainAllowlistType.self, json: json) } } } - /// Deleted team invite link. - public class DeleteTeamInviteLinkDetails: CustomStringConvertible, JSONRepresentable { - /// The invite link url that was deleted. - public let linkUrl: String - public init(linkUrl: String) { - stringValidator()(linkUrl) - self.linkUrl = linkUrl + /// Admin added an admin connector. + public class DashAdminAddedOrgWideConnectorDetails: CustomStringConvertible, JSONRepresentable { + /// The name of the Connector. + public let connectorName: String + /// The status of the Connector. + public let connectorStatus: TeamLog.DashConnectorStatus + public init(connectorName: String, connectorStatus: TeamLog.DashConnectorStatus) { + stringValidator()(connectorName) + self.connectorName = connectorName + self.connectorStatus = connectorStatus } func json() throws -> JSON { - try DeleteTeamInviteLinkDetailsSerializer().serialize(self) + try DashAdminAddedOrgWideConnectorDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DeleteTeamInviteLinkDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashAdminAddedOrgWideConnectorDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for DeleteTeamInviteLinkDetails: \(error)" + return "Failed to generate description for DashAdminAddedOrgWideConnectorDetails: \(error)" } } } - - public class DeleteTeamInviteLinkDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DeleteTeamInviteLinkDetails) throws -> JSON { + public class DashAdminAddedOrgWideConnectorDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashAdminAddedOrgWideConnectorDetails) throws -> JSON { let output = [ - "link_url": try Serialization._StringSerializer.serialize(value.linkUrl), + "connector_name": try Serialization._StringSerializer.serialize(value.connectorName), + "connector_status": try TeamLog.DashConnectorStatusSerializer().serialize(value.connectorStatus), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DeleteTeamInviteLinkDetails { + public func deserialize(_ json: JSON) throws -> DashAdminAddedOrgWideConnectorDetails { switch json { - case .dictionary(let dict): - let linkUrl = try Serialization._StringSerializer.deserialize(dict["link_url"] ?? .null) - return DeleteTeamInviteLinkDetails(linkUrl: linkUrl) - default: - throw JSONSerializerError.deserializeError(type: DeleteTeamInviteLinkDetails.self, json: json) + case .dictionary(let dict): + let connectorName = try Serialization._StringSerializer.deserialize(dict["connector_name"] ?? .null) + let connectorStatus = try TeamLog.DashConnectorStatusSerializer().deserialize(dict["connector_status"] ?? .null) + return DashAdminAddedOrgWideConnectorDetails(connectorName: connectorName, connectorStatus: connectorStatus) + default: + throw JSONSerializerError.deserializeError(type: DashAdminAddedOrgWideConnectorDetails.self, json: json) } } } - /// The DeleteTeamInviteLinkType struct - public class DeleteTeamInviteLinkType: CustomStringConvertible, JSONRepresentable { + /// The DashAdminAddedOrgWideConnectorType struct + public class DashAdminAddedOrgWideConnectorType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -6556,354 +7017,253 @@ public class TeamLog { } func json() throws -> JSON { - try DeleteTeamInviteLinkTypeSerializer().serialize(self) + try DashAdminAddedOrgWideConnectorTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DeleteTeamInviteLinkTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashAdminAddedOrgWideConnectorTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for DeleteTeamInviteLinkType: \(error)" + return "Failed to generate description for DashAdminAddedOrgWideConnectorType: \(error)" } } } - - public class DeleteTeamInviteLinkTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DeleteTeamInviteLinkType) throws -> JSON { + public class DashAdminAddedOrgWideConnectorTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashAdminAddedOrgWideConnectorType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DeleteTeamInviteLinkType { + public func deserialize(_ json: JSON) throws -> DashAdminAddedOrgWideConnectorType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return DeleteTeamInviteLinkType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: DeleteTeamInviteLinkType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DashAdminAddedOrgWideConnectorType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DashAdminAddedOrgWideConnectorType.self, json: json) } } } - /// Device's session logged information. - public class DeviceSessionLogInfo: CustomStringConvertible, JSONRepresentable { - /// The IP address of the last activity from this session. - public let ipAddress: String? - /// The time this session was created. - public let created: Date? - /// The time of the last activity from this session. - public let updated: Date? - public init(ipAddress: String? = nil, created: Date? = nil, updated: Date? = nil) { - nullableValidator(stringValidator())(ipAddress) - self.ipAddress = ipAddress - self.created = created - self.updated = updated + /// Admin disabled a user connector. + public class DashAdminDisabledConnectorDetails: CustomStringConvertible, JSONRepresentable { + /// The name of the Connector. + public let connectorName: String + /// The status of the Connector. + public let connectorStatus: TeamLog.DashConnectorStatus? + public init(connectorName: String, connectorStatus: TeamLog.DashConnectorStatus? = nil) { + stringValidator()(connectorName) + self.connectorName = connectorName + self.connectorStatus = connectorStatus } func json() throws -> JSON { - try DeviceSessionLogInfoSerializer().serialize(self) + try DashAdminDisabledConnectorDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DeviceSessionLogInfoSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashAdminDisabledConnectorDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for DeviceSessionLogInfo: \(error)" + return "Failed to generate description for DashAdminDisabledConnectorDetails: \(error)" } } } - - public class DeviceSessionLogInfoSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DeviceSessionLogInfo) throws -> JSON { - var output = [ - "ip_address": try NullableSerializer(Serialization._StringSerializer).serialize(value.ipAddress), - "created": try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).serialize(value.created), - "updated": try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).serialize(value.updated), + public class DashAdminDisabledConnectorDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashAdminDisabledConnectorDetails) throws -> JSON { + let output = [ + "connector_name": try Serialization._StringSerializer.serialize(value.connectorName), + "connector_status": try NullableSerializer(TeamLog.DashConnectorStatusSerializer()).serialize(value.connectorStatus), ] - switch value { - case let desktopDeviceSession as TeamLog.DesktopDeviceSessionLogInfo: - for (k, v) in try Serialization.getFields(TeamLog.DesktopDeviceSessionLogInfoSerializer().serialize(desktopDeviceSession)) { - output[k] = v - } - output[".tag"] = .str("desktop_device_session") - case let mobileDeviceSession as TeamLog.MobileDeviceSessionLogInfo: - for (k, v) in try Serialization.getFields(TeamLog.MobileDeviceSessionLogInfoSerializer().serialize(mobileDeviceSession)) { - output[k] = v - } - output[".tag"] = .str("mobile_device_session") - case let webDeviceSession as TeamLog.WebDeviceSessionLogInfo: - for (k, v) in try Serialization.getFields(TeamLog.WebDeviceSessionLogInfoSerializer().serialize(webDeviceSession)) { - output[k] = v - } - output[".tag"] = .str("web_device_session") - case let legacyDeviceSession as TeamLog.LegacyDeviceSessionLogInfo: - for (k, v) in try Serialization.getFields(TeamLog.LegacyDeviceSessionLogInfoSerializer().serialize(legacyDeviceSession)) { - output[k] = v - } - output[".tag"] = .str("legacy_device_session") - default: - throw JSONSerializerError.unexpectedSubtype(type: DeviceSessionLogInfo.self, subtype: value) - } return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DeviceSessionLogInfo { + public func deserialize(_ json: JSON) throws -> DashAdminDisabledConnectorDetails { switch json { - case .dictionary(let dict): - let tag = try Serialization.getTag(dict) - switch tag { - case "desktop_device_session": - return try TeamLog.DesktopDeviceSessionLogInfoSerializer().deserialize(json) - case "mobile_device_session": - return try TeamLog.MobileDeviceSessionLogInfoSerializer().deserialize(json) - case "web_device_session": - return try TeamLog.WebDeviceSessionLogInfoSerializer().deserialize(json) - case "legacy_device_session": - return try TeamLog.LegacyDeviceSessionLogInfoSerializer().deserialize(json) + case .dictionary(let dict): + let connectorName = try Serialization._StringSerializer.deserialize(dict["connector_name"] ?? .null) + let connectorStatus = try NullableSerializer(TeamLog.DashConnectorStatusSerializer()).deserialize(dict["connector_status"] ?? .null) + return DashAdminDisabledConnectorDetails(connectorName: connectorName, connectorStatus: connectorStatus) default: - let ipAddress = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["ip_address"] ?? .null) - let created = try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).deserialize(dict["created"] ?? .null) - let updated = try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).deserialize(dict["updated"] ?? .null) - return DeviceSessionLogInfo(ipAddress: ipAddress, created: created, updated: updated) - } - default: - throw JSONSerializerError.deserializeError(type: DeviceSessionLogInfo.self, json: json) + throw JSONSerializerError.deserializeError(type: DashAdminDisabledConnectorDetails.self, json: json) } } } - /// Information about linked Dropbox desktop client sessions - public class DesktopDeviceSessionLogInfo: TeamLog.DeviceSessionLogInfo { - /// Desktop session unique id. - public let sessionInfo: TeamLog.DesktopSessionLogInfo? - /// Name of the hosting desktop. - public let hostName: String - /// The Dropbox desktop client type. - public let clientType: Team.DesktopPlatform - /// The Dropbox client version. - public let clientVersion: String? - /// Information on the hosting platform. - public let platform: String - /// Whether itu2019s possible to delete all of the account files upon unlinking. - public let isDeleteOnUnlinkSupported: Bool - public init( - hostName: String, - clientType: Team.DesktopPlatform, - platform: String, - isDeleteOnUnlinkSupported: Bool, - ipAddress: String? = nil, - created: Date? = nil, - updated: Date? = nil, - sessionInfo: TeamLog.DesktopSessionLogInfo? = nil, - clientVersion: String? = nil - ) { - self.sessionInfo = sessionInfo - stringValidator()(hostName) - self.hostName = hostName - self.clientType = clientType - nullableValidator(stringValidator())(clientVersion) - self.clientVersion = clientVersion - stringValidator()(platform) - self.platform = platform - self.isDeleteOnUnlinkSupported = isDeleteOnUnlinkSupported - super.init(ipAddress: ipAddress, created: created, updated: updated) + /// The DashAdminDisabledConnectorType struct + public class DashAdminDisabledConnectorType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ } - public override var description: String { + func json() throws -> JSON { + try DashAdminDisabledConnectorTypeSerializer().serialize(self) + } + + public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DesktopDeviceSessionLogInfoSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashAdminDisabledConnectorTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for DesktopDeviceSessionLogInfo: \(error)" + return "Failed to generate description for DashAdminDisabledConnectorType: \(error)" } } } - - public class DesktopDeviceSessionLogInfoSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DesktopDeviceSessionLogInfo) throws -> JSON { + public class DashAdminDisabledConnectorTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashAdminDisabledConnectorType) throws -> JSON { let output = [ - "host_name": try Serialization._StringSerializer.serialize(value.hostName), - "client_type": try Team.DesktopPlatformSerializer().serialize(value.clientType), - "platform": try Serialization._StringSerializer.serialize(value.platform), - "is_delete_on_unlink_supported": try Serialization._BoolSerializer.serialize(value.isDeleteOnUnlinkSupported), - "ip_address": try NullableSerializer(Serialization._StringSerializer).serialize(value.ipAddress), - "created": try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).serialize(value.created), - "updated": try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).serialize(value.updated), - "session_info": try NullableSerializer(TeamLog.DesktopSessionLogInfoSerializer()).serialize(value.sessionInfo), - "client_version": try NullableSerializer(Serialization._StringSerializer).serialize(value.clientVersion), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DesktopDeviceSessionLogInfo { + public func deserialize(_ json: JSON) throws -> DashAdminDisabledConnectorType { switch json { - case .dictionary(let dict): - let hostName = try Serialization._StringSerializer.deserialize(dict["host_name"] ?? .null) - let clientType = try Team.DesktopPlatformSerializer().deserialize(dict["client_type"] ?? .null) - let platform = try Serialization._StringSerializer.deserialize(dict["platform"] ?? .null) - let isDeleteOnUnlinkSupported = try Serialization._BoolSerializer.deserialize(dict["is_delete_on_unlink_supported"] ?? .null) - let ipAddress = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["ip_address"] ?? .null) - let created = try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).deserialize(dict["created"] ?? .null) - let updated = try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).deserialize(dict["updated"] ?? .null) - let sessionInfo = try NullableSerializer(TeamLog.DesktopSessionLogInfoSerializer()).deserialize(dict["session_info"] ?? .null) - let clientVersion = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["client_version"] ?? .null) - return DesktopDeviceSessionLogInfo( - hostName: hostName, - clientType: clientType, - platform: platform, - isDeleteOnUnlinkSupported: isDeleteOnUnlinkSupported, - ipAddress: ipAddress, - created: created, - updated: updated, - sessionInfo: sessionInfo, - clientVersion: clientVersion - ) - default: - throw JSONSerializerError.deserializeError(type: DesktopDeviceSessionLogInfo.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DashAdminDisabledConnectorType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DashAdminDisabledConnectorType.self, json: json) } } } - /// Session's logged information. - public class SessionLogInfo: CustomStringConvertible, JSONRepresentable { - /// Session ID. - public let sessionId: String? - public init(sessionId: String? = nil) { - nullableValidator(stringValidator())(sessionId) - self.sessionId = sessionId + /// Admin enabled a user connector. + public class DashAdminEnabledConnectorDetails: CustomStringConvertible, JSONRepresentable { + /// The name of the Connector. + public let connectorName: String + /// The status of the Connector. + public let connectorStatus: TeamLog.DashConnectorStatus? + public init(connectorName: String, connectorStatus: TeamLog.DashConnectorStatus? = nil) { + stringValidator()(connectorName) + self.connectorName = connectorName + self.connectorStatus = connectorStatus } func json() throws -> JSON { - try SessionLogInfoSerializer().serialize(self) + try DashAdminEnabledConnectorDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SessionLogInfoSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashAdminEnabledConnectorDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SessionLogInfo: \(error)" + return "Failed to generate description for DashAdminEnabledConnectorDetails: \(error)" } } } - - public class SessionLogInfoSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SessionLogInfo) throws -> JSON { - var output = [ - "session_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.sessionId), + public class DashAdminEnabledConnectorDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashAdminEnabledConnectorDetails) throws -> JSON { + let output = [ + "connector_name": try Serialization._StringSerializer.serialize(value.connectorName), + "connector_status": try NullableSerializer(TeamLog.DashConnectorStatusSerializer()).serialize(value.connectorStatus), ] - switch value { - case let web as TeamLog.WebSessionLogInfo: - for (k, v) in try Serialization.getFields(TeamLog.WebSessionLogInfoSerializer().serialize(web)) { - output[k] = v - } - output[".tag"] = .str("web") - case let desktop as TeamLog.DesktopSessionLogInfo: - for (k, v) in try Serialization.getFields(TeamLog.DesktopSessionLogInfoSerializer().serialize(desktop)) { - output[k] = v - } - output[".tag"] = .str("desktop") - case let mobile as TeamLog.MobileSessionLogInfo: - for (k, v) in try Serialization.getFields(TeamLog.MobileSessionLogInfoSerializer().serialize(mobile)) { - output[k] = v - } - output[".tag"] = .str("mobile") - default: - throw JSONSerializerError.unexpectedSubtype(type: SessionLogInfo.self, subtype: value) - } return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SessionLogInfo { + public func deserialize(_ json: JSON) throws -> DashAdminEnabledConnectorDetails { switch json { - case .dictionary(let dict): - let tag = try Serialization.getTag(dict) - switch tag { - case "web": - return try TeamLog.WebSessionLogInfoSerializer().deserialize(json) - case "desktop": - return try TeamLog.DesktopSessionLogInfoSerializer().deserialize(json) - case "mobile": - return try TeamLog.MobileSessionLogInfoSerializer().deserialize(json) + case .dictionary(let dict): + let connectorName = try Serialization._StringSerializer.deserialize(dict["connector_name"] ?? .null) + let connectorStatus = try NullableSerializer(TeamLog.DashConnectorStatusSerializer()).deserialize(dict["connector_status"] ?? .null) + return DashAdminEnabledConnectorDetails(connectorName: connectorName, connectorStatus: connectorStatus) default: - let sessionId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["session_id"] ?? .null) - return SessionLogInfo(sessionId: sessionId) - } - default: - throw JSONSerializerError.deserializeError(type: SessionLogInfo.self, json: json) + throw JSONSerializerError.deserializeError(type: DashAdminEnabledConnectorDetails.self, json: json) } } } - /// Desktop session. - public class DesktopSessionLogInfo: TeamLog.SessionLogInfo { - public override var description: String { + /// The DashAdminEnabledConnectorType struct + public class DashAdminEnabledConnectorType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try DashAdminEnabledConnectorTypeSerializer().serialize(self) + } + + public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DesktopSessionLogInfoSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashAdminEnabledConnectorTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for DesktopSessionLogInfo: \(error)" + return "Failed to generate description for DashAdminEnabledConnectorType: \(error)" } } } - - public class DesktopSessionLogInfoSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DesktopSessionLogInfo) throws -> JSON { + public class DashAdminEnabledConnectorTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashAdminEnabledConnectorType) throws -> JSON { let output = [ - "session_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.sessionId), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DesktopSessionLogInfo { + public func deserialize(_ json: JSON) throws -> DashAdminEnabledConnectorType { switch json { - case .dictionary(let dict): - let sessionId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["session_id"] ?? .null) - return DesktopSessionLogInfo(sessionId: sessionId) - default: - throw JSONSerializerError.deserializeError(type: DesktopSessionLogInfo.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DashAdminEnabledConnectorType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DashAdminEnabledConnectorType.self, json: json) } } } - /// Added members to device approvals exception list. - public class DeviceApprovalsAddExceptionDetails: CustomStringConvertible, JSONRepresentable { + /// Admin removed an admin connector. + public class DashAdminRemovedOrgWideConnectorDetails: CustomStringConvertible, JSONRepresentable { + /// The name of the Connector. + public let connectorName: String + /// The status of the Connector. + public let connectorStatus: TeamLog.DashConnectorStatus + public init(connectorName: String, connectorStatus: TeamLog.DashConnectorStatus) { + stringValidator()(connectorName) + self.connectorName = connectorName + self.connectorStatus = connectorStatus + } + func json() throws -> JSON { - try DeviceApprovalsAddExceptionDetailsSerializer().serialize(self) + try DashAdminRemovedOrgWideConnectorDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DeviceApprovalsAddExceptionDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashAdminRemovedOrgWideConnectorDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for DeviceApprovalsAddExceptionDetails: \(error)" + return "Failed to generate description for DashAdminRemovedOrgWideConnectorDetails: \(error)" } } } - - public class DeviceApprovalsAddExceptionDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DeviceApprovalsAddExceptionDetails) throws -> JSON { - let output = [String: JSON]() + public class DashAdminRemovedOrgWideConnectorDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashAdminRemovedOrgWideConnectorDetails) throws -> JSON { + let output = [ + "connector_name": try Serialization._StringSerializer.serialize(value.connectorName), + "connector_status": try TeamLog.DashConnectorStatusSerializer().serialize(value.connectorStatus), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DeviceApprovalsAddExceptionDetails { + public func deserialize(_ json: JSON) throws -> DashAdminRemovedOrgWideConnectorDetails { switch json { - case .dictionary: - return DeviceApprovalsAddExceptionDetails() - default: - throw JSONSerializerError.deserializeError(type: DeviceApprovalsAddExceptionDetails.self, json: json) + case .dictionary(let dict): + let connectorName = try Serialization._StringSerializer.deserialize(dict["connector_name"] ?? .null) + let connectorStatus = try TeamLog.DashConnectorStatusSerializer().deserialize(dict["connector_status"] ?? .null) + return DashAdminRemovedOrgWideConnectorDetails(connectorName: connectorName, connectorStatus: connectorStatus) + default: + throw JSONSerializerError.deserializeError(type: DashAdminRemovedOrgWideConnectorDetails.self, json: json) } } } - /// The DeviceApprovalsAddExceptionType struct - public class DeviceApprovalsAddExceptionType: CustomStringConvertible, JSONRepresentable { + /// The DashAdminRemovedOrgWideConnectorType struct + public class DashAdminRemovedOrgWideConnectorType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -6912,86 +7272,83 @@ public class TeamLog { } func json() throws -> JSON { - try DeviceApprovalsAddExceptionTypeSerializer().serialize(self) + try DashAdminRemovedOrgWideConnectorTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DeviceApprovalsAddExceptionTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashAdminRemovedOrgWideConnectorTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for DeviceApprovalsAddExceptionType: \(error)" + return "Failed to generate description for DashAdminRemovedOrgWideConnectorType: \(error)" } } } - - public class DeviceApprovalsAddExceptionTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DeviceApprovalsAddExceptionType) throws -> JSON { + public class DashAdminRemovedOrgWideConnectorTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashAdminRemovedOrgWideConnectorType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DeviceApprovalsAddExceptionType { + public func deserialize(_ json: JSON) throws -> DashAdminRemovedOrgWideConnectorType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return DeviceApprovalsAddExceptionType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: DeviceApprovalsAddExceptionType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DashAdminRemovedOrgWideConnectorType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DashAdminRemovedOrgWideConnectorType.self, json: json) } } } - /// Set/removed limit on number of computers member can link to team Dropbox account. - public class DeviceApprovalsChangeDesktopPolicyDetails: CustomStringConvertible, JSONRepresentable { - /// New desktop device approvals policy. Might be missing due to historical data gap. - public let newValue: TeamLog.DeviceApprovalsPolicy? - /// Previous desktop device approvals policy. Might be missing due to historical data gap. - public let previousValue: TeamLog.DeviceApprovalsPolicy? - public init(newValue: TeamLog.DeviceApprovalsPolicy? = nil, previousValue: TeamLog.DeviceApprovalsPolicy? = nil) { - self.newValue = newValue - self.previousValue = previousValue + /// Archived a stack. + public class DashArchivedStackDetails: CustomStringConvertible, JSONRepresentable { + /// The name of the stack. + public let stackName: String + /// The type of stack backend. + public let stackType: TeamLog.DashStackType? + public init(stackName: String, stackType: TeamLog.DashStackType? = nil) { + stringValidator()(stackName) + self.stackName = stackName + self.stackType = stackType } func json() throws -> JSON { - try DeviceApprovalsChangeDesktopPolicyDetailsSerializer().serialize(self) + try DashArchivedStackDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DeviceApprovalsChangeDesktopPolicyDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashArchivedStackDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for DeviceApprovalsChangeDesktopPolicyDetails: \(error)" + return "Failed to generate description for DashArchivedStackDetails: \(error)" } } } - - public class DeviceApprovalsChangeDesktopPolicyDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DeviceApprovalsChangeDesktopPolicyDetails) throws -> JSON { + public class DashArchivedStackDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashArchivedStackDetails) throws -> JSON { let output = [ - "new_value": try NullableSerializer(TeamLog.DeviceApprovalsPolicySerializer()).serialize(value.newValue), - "previous_value": try NullableSerializer(TeamLog.DeviceApprovalsPolicySerializer()).serialize(value.previousValue), + "stack_name": try Serialization._StringSerializer.serialize(value.stackName), + "stack_type": try NullableSerializer(TeamLog.DashStackTypeSerializer()).serialize(value.stackType), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DeviceApprovalsChangeDesktopPolicyDetails { + public func deserialize(_ json: JSON) throws -> DashArchivedStackDetails { switch json { - case .dictionary(let dict): - let newValue = try NullableSerializer(TeamLog.DeviceApprovalsPolicySerializer()).deserialize(dict["new_value"] ?? .null) - let previousValue = try NullableSerializer(TeamLog.DeviceApprovalsPolicySerializer()).deserialize(dict["previous_value"] ?? .null) - return DeviceApprovalsChangeDesktopPolicyDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: DeviceApprovalsChangeDesktopPolicyDetails.self, json: json) + case .dictionary(let dict): + let stackName = try Serialization._StringSerializer.deserialize(dict["stack_name"] ?? .null) + let stackType = try NullableSerializer(TeamLog.DashStackTypeSerializer()).deserialize(dict["stack_type"] ?? .null) + return DashArchivedStackDetails(stackName: stackName, stackType: stackType) + default: + throw JSONSerializerError.deserializeError(type: DashArchivedStackDetails.self, json: json) } } } - /// The DeviceApprovalsChangeDesktopPolicyType struct - public class DeviceApprovalsChangeDesktopPolicyType: CustomStringConvertible, JSONRepresentable { + /// The DashArchivedStackType struct + public class DashArchivedStackType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -7000,86 +7357,83 @@ public class TeamLog { } func json() throws -> JSON { - try DeviceApprovalsChangeDesktopPolicyTypeSerializer().serialize(self) + try DashArchivedStackTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DeviceApprovalsChangeDesktopPolicyTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashArchivedStackTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for DeviceApprovalsChangeDesktopPolicyType: \(error)" + return "Failed to generate description for DashArchivedStackType: \(error)" } } } - - public class DeviceApprovalsChangeDesktopPolicyTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DeviceApprovalsChangeDesktopPolicyType) throws -> JSON { + public class DashArchivedStackTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashArchivedStackType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DeviceApprovalsChangeDesktopPolicyType { + public func deserialize(_ json: JSON) throws -> DashArchivedStackType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return DeviceApprovalsChangeDesktopPolicyType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: DeviceApprovalsChangeDesktopPolicyType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DashArchivedStackType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DashArchivedStackType.self, json: json) } } } - /// Set/removed limit on number of mobile devices member can link to team Dropbox account. - public class DeviceApprovalsChangeMobilePolicyDetails: CustomStringConvertible, JSONRepresentable { - /// New mobile device approvals policy. Might be missing due to historical data gap. - public let newValue: TeamLog.DeviceApprovalsPolicy? - /// Previous mobile device approvals policy. Might be missing due to historical data gap. - public let previousValue: TeamLog.DeviceApprovalsPolicy? - public init(newValue: TeamLog.DeviceApprovalsPolicy? = nil, previousValue: TeamLog.DeviceApprovalsPolicy? = nil) { - self.newValue = newValue - self.previousValue = previousValue + /// Changed the audience of a shared link to a stack. + public class DashChangedAudienceOfSharedLinkToStackDetails: CustomStringConvertible, JSONRepresentable { + /// The name of the stack. + public let stackName: String + /// The type of stack backend. + public let stackType: TeamLog.DashStackType? + public init(stackName: String, stackType: TeamLog.DashStackType? = nil) { + stringValidator()(stackName) + self.stackName = stackName + self.stackType = stackType } func json() throws -> JSON { - try DeviceApprovalsChangeMobilePolicyDetailsSerializer().serialize(self) + try DashChangedAudienceOfSharedLinkToStackDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DeviceApprovalsChangeMobilePolicyDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashChangedAudienceOfSharedLinkToStackDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for DeviceApprovalsChangeMobilePolicyDetails: \(error)" + return "Failed to generate description for DashChangedAudienceOfSharedLinkToStackDetails: \(error)" } } } - - public class DeviceApprovalsChangeMobilePolicyDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DeviceApprovalsChangeMobilePolicyDetails) throws -> JSON { + public class DashChangedAudienceOfSharedLinkToStackDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashChangedAudienceOfSharedLinkToStackDetails) throws -> JSON { let output = [ - "new_value": try NullableSerializer(TeamLog.DeviceApprovalsPolicySerializer()).serialize(value.newValue), - "previous_value": try NullableSerializer(TeamLog.DeviceApprovalsPolicySerializer()).serialize(value.previousValue), + "stack_name": try Serialization._StringSerializer.serialize(value.stackName), + "stack_type": try NullableSerializer(TeamLog.DashStackTypeSerializer()).serialize(value.stackType), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DeviceApprovalsChangeMobilePolicyDetails { + public func deserialize(_ json: JSON) throws -> DashChangedAudienceOfSharedLinkToStackDetails { switch json { - case .dictionary(let dict): - let newValue = try NullableSerializer(TeamLog.DeviceApprovalsPolicySerializer()).deserialize(dict["new_value"] ?? .null) - let previousValue = try NullableSerializer(TeamLog.DeviceApprovalsPolicySerializer()).deserialize(dict["previous_value"] ?? .null) - return DeviceApprovalsChangeMobilePolicyDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: DeviceApprovalsChangeMobilePolicyDetails.self, json: json) + case .dictionary(let dict): + let stackName = try Serialization._StringSerializer.deserialize(dict["stack_name"] ?? .null) + let stackType = try NullableSerializer(TeamLog.DashStackTypeSerializer()).deserialize(dict["stack_type"] ?? .null) + return DashChangedAudienceOfSharedLinkToStackDetails(stackName: stackName, stackType: stackType) + default: + throw JSONSerializerError.deserializeError(type: DashChangedAudienceOfSharedLinkToStackDetails.self, json: json) } } } - /// The DeviceApprovalsChangeMobilePolicyType struct - public class DeviceApprovalsChangeMobilePolicyType: CustomStringConvertible, JSONRepresentable { + /// The DashChangedAudienceOfSharedLinkToStackType struct + public class DashChangedAudienceOfSharedLinkToStackType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -7088,86 +7442,95 @@ public class TeamLog { } func json() throws -> JSON { - try DeviceApprovalsChangeMobilePolicyTypeSerializer().serialize(self) + try DashChangedAudienceOfSharedLinkToStackTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DeviceApprovalsChangeMobilePolicyTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashChangedAudienceOfSharedLinkToStackTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for DeviceApprovalsChangeMobilePolicyType: \(error)" + return "Failed to generate description for DashChangedAudienceOfSharedLinkToStackType: \(error)" } } } - - public class DeviceApprovalsChangeMobilePolicyTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DeviceApprovalsChangeMobilePolicyType) throws -> JSON { + public class DashChangedAudienceOfSharedLinkToStackTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashChangedAudienceOfSharedLinkToStackType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DeviceApprovalsChangeMobilePolicyType { + public func deserialize(_ json: JSON) throws -> DashChangedAudienceOfSharedLinkToStackType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return DeviceApprovalsChangeMobilePolicyType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: DeviceApprovalsChangeMobilePolicyType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DashChangedAudienceOfSharedLinkToStackType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DashChangedAudienceOfSharedLinkToStackType.self, json: json) } } } - /// Changed device approvals setting when member is over limit. - public class DeviceApprovalsChangeOverageActionDetails: CustomStringConvertible, JSONRepresentable { - /// New over the limits policy. Might be missing due to historical data gap. - public let newValue: TeamPolicies.RolloutMethod? - /// Previous over the limit policy. Might be missing due to historical data gap. - public let previousValue: TeamPolicies.RolloutMethod? - public init(newValue: TeamPolicies.RolloutMethod? = nil, previousValue: TeamPolicies.RolloutMethod? = nil) { - self.newValue = newValue - self.previousValue = previousValue + /// Cloned stack. + public class DashClonedStackDetails: CustomStringConvertible, JSONRepresentable { + /// The name of the stack. + public let stackName: String + /// Email of the actor. + public let actorEmail: String + /// New cloned stack name. + public let newClonedStackName: String + /// The type of stack backend. + public let stackType: TeamLog.DashStackType? + public init(stackName: String, actorEmail: String, newClonedStackName: String, stackType: TeamLog.DashStackType? = nil) { + stringValidator()(stackName) + self.stackName = stackName + stringValidator()(actorEmail) + self.actorEmail = actorEmail + stringValidator()(newClonedStackName) + self.newClonedStackName = newClonedStackName + self.stackType = stackType } func json() throws -> JSON { - try DeviceApprovalsChangeOverageActionDetailsSerializer().serialize(self) + try DashClonedStackDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DeviceApprovalsChangeOverageActionDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashClonedStackDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for DeviceApprovalsChangeOverageActionDetails: \(error)" + return "Failed to generate description for DashClonedStackDetails: \(error)" } } } - - public class DeviceApprovalsChangeOverageActionDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DeviceApprovalsChangeOverageActionDetails) throws -> JSON { + public class DashClonedStackDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashClonedStackDetails) throws -> JSON { let output = [ - "new_value": try NullableSerializer(TeamPolicies.RolloutMethodSerializer()).serialize(value.newValue), - "previous_value": try NullableSerializer(TeamPolicies.RolloutMethodSerializer()).serialize(value.previousValue), + "stack_name": try Serialization._StringSerializer.serialize(value.stackName), + "actor_email": try Serialization._StringSerializer.serialize(value.actorEmail), + "new_cloned_stack_name": try Serialization._StringSerializer.serialize(value.newClonedStackName), + "stack_type": try NullableSerializer(TeamLog.DashStackTypeSerializer()).serialize(value.stackType), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DeviceApprovalsChangeOverageActionDetails { + public func deserialize(_ json: JSON) throws -> DashClonedStackDetails { switch json { - case .dictionary(let dict): - let newValue = try NullableSerializer(TeamPolicies.RolloutMethodSerializer()).deserialize(dict["new_value"] ?? .null) - let previousValue = try NullableSerializer(TeamPolicies.RolloutMethodSerializer()).deserialize(dict["previous_value"] ?? .null) - return DeviceApprovalsChangeOverageActionDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: DeviceApprovalsChangeOverageActionDetails.self, json: json) + case .dictionary(let dict): + let stackName = try Serialization._StringSerializer.deserialize(dict["stack_name"] ?? .null) + let actorEmail = try Serialization._StringSerializer.deserialize(dict["actor_email"] ?? .null) + let newClonedStackName = try Serialization._StringSerializer.deserialize(dict["new_cloned_stack_name"] ?? .null) + let stackType = try NullableSerializer(TeamLog.DashStackTypeSerializer()).deserialize(dict["stack_type"] ?? .null) + return DashClonedStackDetails(stackName: stackName, actorEmail: actorEmail, newClonedStackName: newClonedStackName, stackType: stackType) + default: + throw JSONSerializerError.deserializeError(type: DashClonedStackDetails.self, json: json) } } } - /// The DeviceApprovalsChangeOverageActionType struct - public class DeviceApprovalsChangeOverageActionType: CustomStringConvertible, JSONRepresentable { + /// The DashClonedStackType struct + public class DashClonedStackType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -7176,221 +7539,234 @@ public class TeamLog { } func json() throws -> JSON { - try DeviceApprovalsChangeOverageActionTypeSerializer().serialize(self) + try DashClonedStackTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DeviceApprovalsChangeOverageActionTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashClonedStackTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for DeviceApprovalsChangeOverageActionType: \(error)" + return "Failed to generate description for DashClonedStackType: \(error)" } } } - - public class DeviceApprovalsChangeOverageActionTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DeviceApprovalsChangeOverageActionType) throws -> JSON { + public class DashClonedStackTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashClonedStackType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DeviceApprovalsChangeOverageActionType { + public func deserialize(_ json: JSON) throws -> DashClonedStackType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return DeviceApprovalsChangeOverageActionType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: DeviceApprovalsChangeOverageActionType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DashClonedStackType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DashClonedStackType.self, json: json) } } } - /// Changed device approvals setting when member unlinks approved device. - public class DeviceApprovalsChangeUnlinkActionDetails: CustomStringConvertible, JSONRepresentable { - /// New device unlink policy. Might be missing due to historical data gap. - public let newValue: TeamLog.DeviceUnlinkPolicy? - /// Previous device unlink policy. Might be missing due to historical data gap. - public let previousValue: TeamLog.DeviceUnlinkPolicy? - public init(newValue: TeamLog.DeviceUnlinkPolicy? = nil, previousValue: TeamLog.DeviceUnlinkPolicy? = nil) { - self.newValue = newValue - self.previousValue = previousValue - } + /// The status of the Connector + public enum DashConnectorStatus: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case fail + /// An unspecified error. + case success + /// An unspecified error. + case other func json() throws -> JSON { - try DeviceApprovalsChangeUnlinkActionDetailsSerializer().serialize(self) + try DashConnectorStatusSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DeviceApprovalsChangeUnlinkActionDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashConnectorStatusSerializer().serialize(self)))" } catch { - return "Failed to generate description for DeviceApprovalsChangeUnlinkActionDetails: \(error)" + return "Failed to generate description for DashConnectorStatus: \(error)" } } } - - public class DeviceApprovalsChangeUnlinkActionDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DeviceApprovalsChangeUnlinkActionDetails) throws -> JSON { - let output = [ - "new_value": try NullableSerializer(TeamLog.DeviceUnlinkPolicySerializer()).serialize(value.newValue), - "previous_value": try NullableSerializer(TeamLog.DeviceUnlinkPolicySerializer()).serialize(value.previousValue), - ] - return .dictionary(output) - } - - public func deserialize(_ json: JSON) throws -> DeviceApprovalsChangeUnlinkActionDetails { - switch json { - case .dictionary(let dict): - let newValue = try NullableSerializer(TeamLog.DeviceUnlinkPolicySerializer()).deserialize(dict["new_value"] ?? .null) - let previousValue = try NullableSerializer(TeamLog.DeviceUnlinkPolicySerializer()).deserialize(dict["previous_value"] ?? .null) - return DeviceApprovalsChangeUnlinkActionDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: DeviceApprovalsChangeUnlinkActionDetails.self, json: json) + public class DashConnectorStatusSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashConnectorStatus) throws -> JSON { + switch value { + case .fail: + var d = [String: JSON]() + d[".tag"] = .str("fail") + return .dictionary(d) + case .success: + var d = [String: JSON]() + d[".tag"] = .str("success") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> DashConnectorStatus { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "fail": + return DashConnectorStatus.fail + case "success": + return DashConnectorStatus.success + case "other": + return DashConnectorStatus.other + default: + return DashConnectorStatus.other + } + default: + throw JSONSerializerError.deserializeError(type: DashConnectorStatus.self, json: json) } } } - /// The DeviceApprovalsChangeUnlinkActionType struct - public class DeviceApprovalsChangeUnlinkActionType: CustomStringConvertible, JSONRepresentable { - /// (no description) - public let description_: String - public init(description_: String) { - stringValidator()(description_) - self.description_ = description_ + /// Called a tool on a connector. + public class DashConnectorToolsCallDetails: CustomStringConvertible, JSONRepresentable { + /// The name of the connector. + public let connectorName: String + /// The name of the tool that was called. + public let toolName: String + /// The surface from which the tool was called. + public let surface: String? + public init(connectorName: String, toolName: String, surface: String? = nil) { + stringValidator()(connectorName) + self.connectorName = connectorName + stringValidator()(toolName) + self.toolName = toolName + nullableValidator(stringValidator())(surface) + self.surface = surface } func json() throws -> JSON { - try DeviceApprovalsChangeUnlinkActionTypeSerializer().serialize(self) + try DashConnectorToolsCallDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DeviceApprovalsChangeUnlinkActionTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashConnectorToolsCallDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for DeviceApprovalsChangeUnlinkActionType: \(error)" + return "Failed to generate description for DashConnectorToolsCallDetails: \(error)" } } } - - public class DeviceApprovalsChangeUnlinkActionTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DeviceApprovalsChangeUnlinkActionType) throws -> JSON { + public class DashConnectorToolsCallDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashConnectorToolsCallDetails) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "connector_name": try Serialization._StringSerializer.serialize(value.connectorName), + "tool_name": try Serialization._StringSerializer.serialize(value.toolName), + "surface": try NullableSerializer(Serialization._StringSerializer).serialize(value.surface), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DeviceApprovalsChangeUnlinkActionType { + public func deserialize(_ json: JSON) throws -> DashConnectorToolsCallDetails { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return DeviceApprovalsChangeUnlinkActionType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: DeviceApprovalsChangeUnlinkActionType.self, json: json) + case .dictionary(let dict): + let connectorName = try Serialization._StringSerializer.deserialize(dict["connector_name"] ?? .null) + let toolName = try Serialization._StringSerializer.deserialize(dict["tool_name"] ?? .null) + let surface = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["surface"] ?? .null) + return DashConnectorToolsCallDetails(connectorName: connectorName, toolName: toolName, surface: surface) + default: + throw JSONSerializerError.deserializeError(type: DashConnectorToolsCallDetails.self, json: json) } } } - /// The DeviceApprovalsPolicy union - public enum DeviceApprovalsPolicy: CustomStringConvertible, JSONRepresentable { - /// An unspecified error. - case limited - /// An unspecified error. - case unlimited - /// An unspecified error. - case other + /// The DashConnectorToolsCallType struct + public class DashConnectorToolsCallType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } func json() throws -> JSON { - try DeviceApprovalsPolicySerializer().serialize(self) + try DashConnectorToolsCallTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DeviceApprovalsPolicySerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashConnectorToolsCallTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for DeviceApprovalsPolicy: \(error)" + return "Failed to generate description for DashConnectorToolsCallType: \(error)" } } } - - public class DeviceApprovalsPolicySerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DeviceApprovalsPolicy) throws -> JSON { - switch value { - case .limited: - var d = [String: JSON]() - d[".tag"] = .str("limited") - return .dictionary(d) - case .unlimited: - var d = [String: JSON]() - d[".tag"] = .str("unlimited") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) - } + public class DashConnectorToolsCallTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashConnectorToolsCallType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DeviceApprovalsPolicy { + public func deserialize(_ json: JSON) throws -> DashConnectorToolsCallType { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "limited": - return DeviceApprovalsPolicy.limited - case "unlimited": - return DeviceApprovalsPolicy.unlimited - case "other": - return DeviceApprovalsPolicy.other + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DashConnectorToolsCallType(description_: description_) default: - return DeviceApprovalsPolicy.other - } - default: - throw JSONSerializerError.deserializeError(type: DeviceApprovalsPolicy.self, json: json) + throw JSONSerializerError.deserializeError(type: DashConnectorToolsCallType.self, json: json) } } } - /// Removed members from device approvals exception list. - public class DeviceApprovalsRemoveExceptionDetails: CustomStringConvertible, JSONRepresentable { + /// Created a stack. + public class DashCreatedStackDetails: CustomStringConvertible, JSONRepresentable { + /// The name of the stack. + public let stackName: String + /// The type of stack backend. + public let stackType: TeamLog.DashStackType? + public init(stackName: String, stackType: TeamLog.DashStackType? = nil) { + stringValidator()(stackName) + self.stackName = stackName + self.stackType = stackType + } + func json() throws -> JSON { - try DeviceApprovalsRemoveExceptionDetailsSerializer().serialize(self) + try DashCreatedStackDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DeviceApprovalsRemoveExceptionDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashCreatedStackDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for DeviceApprovalsRemoveExceptionDetails: \(error)" + return "Failed to generate description for DashCreatedStackDetails: \(error)" } } } - - public class DeviceApprovalsRemoveExceptionDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DeviceApprovalsRemoveExceptionDetails) throws -> JSON { - let output = [String: JSON]() + public class DashCreatedStackDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashCreatedStackDetails) throws -> JSON { + let output = [ + "stack_name": try Serialization._StringSerializer.serialize(value.stackName), + "stack_type": try NullableSerializer(TeamLog.DashStackTypeSerializer()).serialize(value.stackType), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DeviceApprovalsRemoveExceptionDetails { + public func deserialize(_ json: JSON) throws -> DashCreatedStackDetails { switch json { - case .dictionary: - return DeviceApprovalsRemoveExceptionDetails() - default: - throw JSONSerializerError.deserializeError(type: DeviceApprovalsRemoveExceptionDetails.self, json: json) + case .dictionary(let dict): + let stackName = try Serialization._StringSerializer.deserialize(dict["stack_name"] ?? .null) + let stackType = try NullableSerializer(TeamLog.DashStackTypeSerializer()).deserialize(dict["stack_type"] ?? .null) + return DashCreatedStackDetails(stackName: stackName, stackType: stackType) + default: + throw JSONSerializerError.deserializeError(type: DashCreatedStackDetails.self, json: json) } } } - /// The DeviceApprovalsRemoveExceptionType struct - public class DeviceApprovalsRemoveExceptionType: CustomStringConvertible, JSONRepresentable { + /// The DashCreatedStackType struct + public class DashCreatedStackType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -7399,81 +7775,89 @@ public class TeamLog { } func json() throws -> JSON { - try DeviceApprovalsRemoveExceptionTypeSerializer().serialize(self) + try DashCreatedStackTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DeviceApprovalsRemoveExceptionTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashCreatedStackTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for DeviceApprovalsRemoveExceptionType: \(error)" + return "Failed to generate description for DashCreatedStackType: \(error)" } } } - - public class DeviceApprovalsRemoveExceptionTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DeviceApprovalsRemoveExceptionType) throws -> JSON { + public class DashCreatedStackTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashCreatedStackType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DeviceApprovalsRemoveExceptionType { + public func deserialize(_ json: JSON) throws -> DashCreatedStackType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return DeviceApprovalsRemoveExceptionType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: DeviceApprovalsRemoveExceptionType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DashCreatedStackType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DashCreatedStackType.self, json: json) } } } - /// Changed IP address associated with active desktop session. - public class DeviceChangeIpDesktopDetails: CustomStringConvertible, JSONRepresentable { - /// Device's session logged information. - public let deviceSessionInfo: TeamLog.DeviceSessionLogInfo - public init(deviceSessionInfo: TeamLog.DeviceSessionLogInfo) { - self.deviceSessionInfo = deviceSessionInfo + /// Deleted a comment from a stack. + public class DashDeletedCommentFromStackDetails: CustomStringConvertible, JSONRepresentable { + /// The name of the stack where the comment exists. + public let stackName: String + /// The name of the stack item that the comment is tied to. + public let stackItemName: String + /// The type of stack backend. + public let stackType: TeamLog.DashStackType? + public init(stackName: String, stackItemName: String, stackType: TeamLog.DashStackType? = nil) { + stringValidator()(stackName) + self.stackName = stackName + stringValidator()(stackItemName) + self.stackItemName = stackItemName + self.stackType = stackType } func json() throws -> JSON { - try DeviceChangeIpDesktopDetailsSerializer().serialize(self) + try DashDeletedCommentFromStackDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DeviceChangeIpDesktopDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashDeletedCommentFromStackDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for DeviceChangeIpDesktopDetails: \(error)" + return "Failed to generate description for DashDeletedCommentFromStackDetails: \(error)" } } } - - public class DeviceChangeIpDesktopDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DeviceChangeIpDesktopDetails) throws -> JSON { + public class DashDeletedCommentFromStackDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashDeletedCommentFromStackDetails) throws -> JSON { let output = [ - "device_session_info": try TeamLog.DeviceSessionLogInfoSerializer().serialize(value.deviceSessionInfo), + "stack_name": try Serialization._StringSerializer.serialize(value.stackName), + "stack_item_name": try Serialization._StringSerializer.serialize(value.stackItemName), + "stack_type": try NullableSerializer(TeamLog.DashStackTypeSerializer()).serialize(value.stackType), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DeviceChangeIpDesktopDetails { + public func deserialize(_ json: JSON) throws -> DashDeletedCommentFromStackDetails { switch json { - case .dictionary(let dict): - let deviceSessionInfo = try TeamLog.DeviceSessionLogInfoSerializer().deserialize(dict["device_session_info"] ?? .null) - return DeviceChangeIpDesktopDetails(deviceSessionInfo: deviceSessionInfo) - default: - throw JSONSerializerError.deserializeError(type: DeviceChangeIpDesktopDetails.self, json: json) + case .dictionary(let dict): + let stackName = try Serialization._StringSerializer.deserialize(dict["stack_name"] ?? .null) + let stackItemName = try Serialization._StringSerializer.deserialize(dict["stack_item_name"] ?? .null) + let stackType = try NullableSerializer(TeamLog.DashStackTypeSerializer()).deserialize(dict["stack_type"] ?? .null) + return DashDeletedCommentFromStackDetails(stackName: stackName, stackItemName: stackItemName, stackType: stackType) + default: + throw JSONSerializerError.deserializeError(type: DashDeletedCommentFromStackDetails.self, json: json) } } } - /// The DeviceChangeIpDesktopType struct - public class DeviceChangeIpDesktopType: CustomStringConvertible, JSONRepresentable { + /// The DashDeletedCommentFromStackType struct + public class DashDeletedCommentFromStackType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -7482,81 +7866,83 @@ public class TeamLog { } func json() throws -> JSON { - try DeviceChangeIpDesktopTypeSerializer().serialize(self) + try DashDeletedCommentFromStackTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DeviceChangeIpDesktopTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashDeletedCommentFromStackTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for DeviceChangeIpDesktopType: \(error)" + return "Failed to generate description for DashDeletedCommentFromStackType: \(error)" } } } - - public class DeviceChangeIpDesktopTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DeviceChangeIpDesktopType) throws -> JSON { + public class DashDeletedCommentFromStackTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashDeletedCommentFromStackType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DeviceChangeIpDesktopType { + public func deserialize(_ json: JSON) throws -> DashDeletedCommentFromStackType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return DeviceChangeIpDesktopType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: DeviceChangeIpDesktopType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DashDeletedCommentFromStackType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DashDeletedCommentFromStackType.self, json: json) } } } - /// Changed IP address associated with active mobile session. - public class DeviceChangeIpMobileDetails: CustomStringConvertible, JSONRepresentable { - /// Device's session logged information. - public let deviceSessionInfo: TeamLog.DeviceSessionLogInfo? - public init(deviceSessionInfo: TeamLog.DeviceSessionLogInfo? = nil) { - self.deviceSessionInfo = deviceSessionInfo + /// Deleted a stack. + public class DashDeletedStackDetails: CustomStringConvertible, JSONRepresentable { + /// The name of the stack. + public let stackName: String + /// The type of stack backend. + public let stackType: TeamLog.DashStackType? + public init(stackName: String, stackType: TeamLog.DashStackType? = nil) { + stringValidator()(stackName) + self.stackName = stackName + self.stackType = stackType } func json() throws -> JSON { - try DeviceChangeIpMobileDetailsSerializer().serialize(self) + try DashDeletedStackDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DeviceChangeIpMobileDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashDeletedStackDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for DeviceChangeIpMobileDetails: \(error)" + return "Failed to generate description for DashDeletedStackDetails: \(error)" } } } - - public class DeviceChangeIpMobileDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DeviceChangeIpMobileDetails) throws -> JSON { + public class DashDeletedStackDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashDeletedStackDetails) throws -> JSON { let output = [ - "device_session_info": try NullableSerializer(TeamLog.DeviceSessionLogInfoSerializer()).serialize(value.deviceSessionInfo), + "stack_name": try Serialization._StringSerializer.serialize(value.stackName), + "stack_type": try NullableSerializer(TeamLog.DashStackTypeSerializer()).serialize(value.stackType), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DeviceChangeIpMobileDetails { + public func deserialize(_ json: JSON) throws -> DashDeletedStackDetails { switch json { - case .dictionary(let dict): - let deviceSessionInfo = try NullableSerializer(TeamLog.DeviceSessionLogInfoSerializer()).deserialize(dict["device_session_info"] ?? .null) - return DeviceChangeIpMobileDetails(deviceSessionInfo: deviceSessionInfo) - default: - throw JSONSerializerError.deserializeError(type: DeviceChangeIpMobileDetails.self, json: json) + case .dictionary(let dict): + let stackName = try Serialization._StringSerializer.deserialize(dict["stack_name"] ?? .null) + let stackType = try NullableSerializer(TeamLog.DashStackTypeSerializer()).deserialize(dict["stack_type"] ?? .null) + return DashDeletedStackDetails(stackName: stackName, stackType: stackType) + default: + throw JSONSerializerError.deserializeError(type: DashDeletedStackDetails.self, json: json) } } } - /// The DeviceChangeIpMobileType struct - public class DeviceChangeIpMobileType: CustomStringConvertible, JSONRepresentable { + /// The DashDeletedStackType struct + public class DashDeletedStackType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -7565,82 +7951,95 @@ public class TeamLog { } func json() throws -> JSON { - try DeviceChangeIpMobileTypeSerializer().serialize(self) + try DashDeletedStackTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DeviceChangeIpMobileTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashDeletedStackTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for DeviceChangeIpMobileType: \(error)" + return "Failed to generate description for DashDeletedStackType: \(error)" } } } - - public class DeviceChangeIpMobileTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DeviceChangeIpMobileType) throws -> JSON { + public class DashDeletedStackTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashDeletedStackType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DeviceChangeIpMobileType { + public func deserialize(_ json: JSON) throws -> DashDeletedStackType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return DeviceChangeIpMobileType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: DeviceChangeIpMobileType.self, json: json) - } - } - } - - /// Changed IP address associated with active web session. - public class DeviceChangeIpWebDetails: CustomStringConvertible, JSONRepresentable { - /// Web browser name. - public let userAgent: String - public init(userAgent: String) { - stringValidator()(userAgent) - self.userAgent = userAgent + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DashDeletedStackType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DashDeletedStackType.self, json: json) + } + } + } + + /// Edited a comment in a stack. + public class DashEditedCommentInStackDetails: CustomStringConvertible, JSONRepresentable { + /// The name of the stack where the comment exists. + public let stackName: String + /// The name of the stack item that the comment is tied to. + public let stackItemName: String + /// The text of the comment. + public let commentText: String + /// The type of stack backend. + public let stackType: TeamLog.DashStackType? + public init(stackName: String, stackItemName: String, commentText: String, stackType: TeamLog.DashStackType? = nil) { + stringValidator()(stackName) + self.stackName = stackName + stringValidator()(stackItemName) + self.stackItemName = stackItemName + stringValidator()(commentText) + self.commentText = commentText + self.stackType = stackType } func json() throws -> JSON { - try DeviceChangeIpWebDetailsSerializer().serialize(self) + try DashEditedCommentInStackDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DeviceChangeIpWebDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashEditedCommentInStackDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for DeviceChangeIpWebDetails: \(error)" + return "Failed to generate description for DashEditedCommentInStackDetails: \(error)" } } } - - public class DeviceChangeIpWebDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DeviceChangeIpWebDetails) throws -> JSON { + public class DashEditedCommentInStackDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashEditedCommentInStackDetails) throws -> JSON { let output = [ - "user_agent": try Serialization._StringSerializer.serialize(value.userAgent), + "stack_name": try Serialization._StringSerializer.serialize(value.stackName), + "stack_item_name": try Serialization._StringSerializer.serialize(value.stackItemName), + "comment_text": try Serialization._StringSerializer.serialize(value.commentText), + "stack_type": try NullableSerializer(TeamLog.DashStackTypeSerializer()).serialize(value.stackType), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DeviceChangeIpWebDetails { + public func deserialize(_ json: JSON) throws -> DashEditedCommentInStackDetails { switch json { - case .dictionary(let dict): - let userAgent = try Serialization._StringSerializer.deserialize(dict["user_agent"] ?? .null) - return DeviceChangeIpWebDetails(userAgent: userAgent) - default: - throw JSONSerializerError.deserializeError(type: DeviceChangeIpWebDetails.self, json: json) + case .dictionary(let dict): + let stackName = try Serialization._StringSerializer.deserialize(dict["stack_name"] ?? .null) + let stackItemName = try Serialization._StringSerializer.deserialize(dict["stack_item_name"] ?? .null) + let commentText = try Serialization._StringSerializer.deserialize(dict["comment_text"] ?? .null) + let stackType = try NullableSerializer(TeamLog.DashStackTypeSerializer()).deserialize(dict["stack_type"] ?? .null) + return DashEditedCommentInStackDetails(stackName: stackName, stackItemName: stackItemName, commentText: commentText, stackType: stackType) + default: + throw JSONSerializerError.deserializeError(type: DashEditedCommentInStackDetails.self, json: json) } } } - /// The DeviceChangeIpWebType struct - public class DeviceChangeIpWebType: CustomStringConvertible, JSONRepresentable { + /// The DashEditedCommentInStackType struct + public class DashEditedCommentInStackType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -7649,93 +8048,149 @@ public class TeamLog { } func json() throws -> JSON { - try DeviceChangeIpWebTypeSerializer().serialize(self) + try DashEditedCommentInStackTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DeviceChangeIpWebTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashEditedCommentInStackTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for DeviceChangeIpWebType: \(error)" + return "Failed to generate description for DashEditedCommentInStackType: \(error)" } } } - - public class DeviceChangeIpWebTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DeviceChangeIpWebType) throws -> JSON { + public class DashEditedCommentInStackTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashEditedCommentInStackType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DeviceChangeIpWebType { + public func deserialize(_ json: JSON) throws -> DashEditedCommentInStackType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return DeviceChangeIpWebType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: DeviceChangeIpWebType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DashEditedCommentInStackType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DashEditedCommentInStackType.self, json: json) } } } - /// Failed to delete all files from unlinked device. - public class DeviceDeleteOnUnlinkFailDetails: CustomStringConvertible, JSONRepresentable { - /// Session unique id. - public let sessionInfo: TeamLog.SessionLogInfo? - /// The device name. Might be missing due to historical data gap. - public let displayName: String? - /// The number of times that remote file deletion failed. - public let numFailures: Int64 - public init(numFailures: Int64, sessionInfo: TeamLog.SessionLogInfo? = nil, displayName: String? = nil) { - self.sessionInfo = sessionInfo - nullableValidator(stringValidator())(displayName) - self.displayName = displayName - comparableValidator()(numFailures) - self.numFailures = numFailures - } + /// Policy for deciding whether team users can share Dash content externally + public enum DashExternalSharingPolicy: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case default_ + /// An unspecified error. + case disabled + /// An unspecified error. + case enabled + /// An unspecified error. + case other func json() throws -> JSON { - try DeviceDeleteOnUnlinkFailDetailsSerializer().serialize(self) + try DashExternalSharingPolicySerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DeviceDeleteOnUnlinkFailDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashExternalSharingPolicySerializer().serialize(self)))" } catch { - return "Failed to generate description for DeviceDeleteOnUnlinkFailDetails: \(error)" + return "Failed to generate description for DashExternalSharingPolicy: \(error)" + } + } + } + public class DashExternalSharingPolicySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashExternalSharingPolicy) throws -> JSON { + switch value { + case .default_: + var d = [String: JSON]() + d[".tag"] = .str("default") + return .dictionary(d) + case .disabled: + var d = [String: JSON]() + d[".tag"] = .str("disabled") + return .dictionary(d) + case .enabled: + var d = [String: JSON]() + d[".tag"] = .str("enabled") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> DashExternalSharingPolicy { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "default": + return DashExternalSharingPolicy.default_ + case "disabled": + return DashExternalSharingPolicy.disabled + case "enabled": + return DashExternalSharingPolicy.enabled + case "other": + return DashExternalSharingPolicy.other + default: + return DashExternalSharingPolicy.other + } + default: + throw JSONSerializerError.deserializeError(type: DashExternalSharingPolicy.self, json: json) } } } - public class DeviceDeleteOnUnlinkFailDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DeviceDeleteOnUnlinkFailDetails) throws -> JSON { + /// Changed Dash external sharing policy for team. + public class DashExternalSharingPolicyChangedDetails: CustomStringConvertible, JSONRepresentable { + /// To. + public let newValue: TeamLog.DashExternalSharingPolicy + /// From. + public let previousValue: TeamLog.DashExternalSharingPolicy + public init(newValue: TeamLog.DashExternalSharingPolicy, previousValue: TeamLog.DashExternalSharingPolicy) { + self.newValue = newValue + self.previousValue = previousValue + } + + func json() throws -> JSON { + try DashExternalSharingPolicyChangedDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try DashExternalSharingPolicyChangedDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for DashExternalSharingPolicyChangedDetails: \(error)" + } + } + } + public class DashExternalSharingPolicyChangedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashExternalSharingPolicyChangedDetails) throws -> JSON { let output = [ - "num_failures": try Serialization._Int64Serializer.serialize(value.numFailures), - "session_info": try NullableSerializer(TeamLog.SessionLogInfoSerializer()).serialize(value.sessionInfo), - "display_name": try NullableSerializer(Serialization._StringSerializer).serialize(value.displayName), + "new_value": try TeamLog.DashExternalSharingPolicySerializer().serialize(value.newValue), + "previous_value": try TeamLog.DashExternalSharingPolicySerializer().serialize(value.previousValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DeviceDeleteOnUnlinkFailDetails { + public func deserialize(_ json: JSON) throws -> DashExternalSharingPolicyChangedDetails { switch json { - case .dictionary(let dict): - let numFailures = try Serialization._Int64Serializer.deserialize(dict["num_failures"] ?? .null) - let sessionInfo = try NullableSerializer(TeamLog.SessionLogInfoSerializer()).deserialize(dict["session_info"] ?? .null) - let displayName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["display_name"] ?? .null) - return DeviceDeleteOnUnlinkFailDetails(numFailures: numFailures, sessionInfo: sessionInfo, displayName: displayName) - default: - throw JSONSerializerError.deserializeError(type: DeviceDeleteOnUnlinkFailDetails.self, json: json) + case .dictionary(let dict): + let newValue = try TeamLog.DashExternalSharingPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try TeamLog.DashExternalSharingPolicySerializer().deserialize(dict["previous_value"] ?? .null) + return DashExternalSharingPolicyChangedDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: DashExternalSharingPolicyChangedDetails.self, json: json) } } } - /// The DeviceDeleteOnUnlinkFailType struct - public class DeviceDeleteOnUnlinkFailType: CustomStringConvertible, JSONRepresentable { + /// The DashExternalSharingPolicyChangedType struct + public class DashExternalSharingPolicyChangedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -7744,87 +8199,104 @@ public class TeamLog { } func json() throws -> JSON { - try DeviceDeleteOnUnlinkFailTypeSerializer().serialize(self) + try DashExternalSharingPolicyChangedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DeviceDeleteOnUnlinkFailTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashExternalSharingPolicyChangedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for DeviceDeleteOnUnlinkFailType: \(error)" + return "Failed to generate description for DashExternalSharingPolicyChangedType: \(error)" } } } - - public class DeviceDeleteOnUnlinkFailTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DeviceDeleteOnUnlinkFailType) throws -> JSON { + public class DashExternalSharingPolicyChangedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashExternalSharingPolicyChangedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DeviceDeleteOnUnlinkFailType { + public func deserialize(_ json: JSON) throws -> DashExternalSharingPolicyChangedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return DeviceDeleteOnUnlinkFailType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: DeviceDeleteOnUnlinkFailType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DashExternalSharingPolicyChangedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DashExternalSharingPolicyChangedType.self, json: json) } } } - /// Deleted all files from unlinked device. - public class DeviceDeleteOnUnlinkSuccessDetails: CustomStringConvertible, JSONRepresentable { - /// Session unique id. - public let sessionInfo: TeamLog.SessionLogInfo? - /// The device name. Might be missing due to historical data gap. - public let displayName: String? - public init(sessionInfo: TeamLog.SessionLogInfo? = nil, displayName: String? = nil) { - self.sessionInfo = sessionInfo - nullableValidator(stringValidator())(displayName) - self.displayName = displayName + /// External user opened a stack. + public class DashExternalUserOpenedStackDetails: CustomStringConvertible, JSONRepresentable { + /// The name of the stack. + public let stackName: String + /// The sharing scope of the stack. + public let stackSharingScope: TeamLog.DashStackSharingScope + /// Whether the user was invited to the stack. + public let isInvited: Bool + /// Whether the user has verified their email address. + public let isVerified: Bool + /// The team ID of the stack owner. + public let stackOwnerTeamId: Int64? + /// The type of stack backend. + public let stackType: TeamLog.DashStackType? + public init(stackName: String, stackSharingScope: TeamLog.DashStackSharingScope, isInvited: Bool, isVerified: Bool, stackOwnerTeamId: Int64? = nil, stackType: TeamLog.DashStackType? = nil) { + stringValidator()(stackName) + self.stackName = stackName + self.stackSharingScope = stackSharingScope + self.isInvited = isInvited + self.isVerified = isVerified + nullableValidator(comparableValidator())(stackOwnerTeamId) + self.stackOwnerTeamId = stackOwnerTeamId + self.stackType = stackType } func json() throws -> JSON { - try DeviceDeleteOnUnlinkSuccessDetailsSerializer().serialize(self) + try DashExternalUserOpenedStackDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DeviceDeleteOnUnlinkSuccessDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashExternalUserOpenedStackDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for DeviceDeleteOnUnlinkSuccessDetails: \(error)" + return "Failed to generate description for DashExternalUserOpenedStackDetails: \(error)" } } } - - public class DeviceDeleteOnUnlinkSuccessDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DeviceDeleteOnUnlinkSuccessDetails) throws -> JSON { + public class DashExternalUserOpenedStackDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashExternalUserOpenedStackDetails) throws -> JSON { let output = [ - "session_info": try NullableSerializer(TeamLog.SessionLogInfoSerializer()).serialize(value.sessionInfo), - "display_name": try NullableSerializer(Serialization._StringSerializer).serialize(value.displayName), + "stack_name": try Serialization._StringSerializer.serialize(value.stackName), + "stack_sharing_scope": try TeamLog.DashStackSharingScopeSerializer().serialize(value.stackSharingScope), + "is_invited": try Serialization._BoolSerializer.serialize(value.isInvited), + "is_verified": try Serialization._BoolSerializer.serialize(value.isVerified), + "stack_owner_team_id": try NullableSerializer(Serialization._Int64Serializer).serialize(value.stackOwnerTeamId), + "stack_type": try NullableSerializer(TeamLog.DashStackTypeSerializer()).serialize(value.stackType), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DeviceDeleteOnUnlinkSuccessDetails { + public func deserialize(_ json: JSON) throws -> DashExternalUserOpenedStackDetails { switch json { - case .dictionary(let dict): - let sessionInfo = try NullableSerializer(TeamLog.SessionLogInfoSerializer()).deserialize(dict["session_info"] ?? .null) - let displayName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["display_name"] ?? .null) - return DeviceDeleteOnUnlinkSuccessDetails(sessionInfo: sessionInfo, displayName: displayName) - default: - throw JSONSerializerError.deserializeError(type: DeviceDeleteOnUnlinkSuccessDetails.self, json: json) + case .dictionary(let dict): + let stackName = try Serialization._StringSerializer.deserialize(dict["stack_name"] ?? .null) + let stackSharingScope = try TeamLog.DashStackSharingScopeSerializer().deserialize(dict["stack_sharing_scope"] ?? .null) + let isInvited = try Serialization._BoolSerializer.deserialize(dict["is_invited"] ?? .null) + let isVerified = try Serialization._BoolSerializer.deserialize(dict["is_verified"] ?? .null) + let stackOwnerTeamId = try NullableSerializer(Serialization._Int64Serializer).deserialize(dict["stack_owner_team_id"] ?? .null) + let stackType = try NullableSerializer(TeamLog.DashStackTypeSerializer()).deserialize(dict["stack_type"] ?? .null) + return DashExternalUserOpenedStackDetails(stackName: stackName, stackSharingScope: stackSharingScope, isInvited: isInvited, isVerified: isVerified, stackOwnerTeamId: stackOwnerTeamId, stackType: stackType) + default: + throw JSONSerializerError.deserializeError(type: DashExternalUserOpenedStackDetails.self, json: json) } } } - /// The DeviceDeleteOnUnlinkSuccessType struct - public class DeviceDeleteOnUnlinkSuccessType: CustomStringConvertible, JSONRepresentable { + /// The DashExternalUserOpenedStackType struct + public class DashExternalUserOpenedStackType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -7833,87 +8305,78 @@ public class TeamLog { } func json() throws -> JSON { - try DeviceDeleteOnUnlinkSuccessTypeSerializer().serialize(self) + try DashExternalUserOpenedStackTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DeviceDeleteOnUnlinkSuccessTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashExternalUserOpenedStackTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for DeviceDeleteOnUnlinkSuccessType: \(error)" + return "Failed to generate description for DashExternalUserOpenedStackType: \(error)" } } } - - public class DeviceDeleteOnUnlinkSuccessTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DeviceDeleteOnUnlinkSuccessType) throws -> JSON { + public class DashExternalUserOpenedStackTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashExternalUserOpenedStackType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DeviceDeleteOnUnlinkSuccessType { + public func deserialize(_ json: JSON) throws -> DashExternalUserOpenedStackType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return DeviceDeleteOnUnlinkSuccessType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: DeviceDeleteOnUnlinkSuccessType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DashExternalUserOpenedStackType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DashExternalUserOpenedStackType.self, json: json) } } } - /// Failed to link device. - public class DeviceLinkFailDetails: CustomStringConvertible, JSONRepresentable { - /// IP address. Might be missing due to historical data gap. - public let ipAddress: String? - /// A description of the device used while user approval blocked. - public let deviceType: TeamLog.DeviceType - public init(deviceType: TeamLog.DeviceType, ipAddress: String? = nil) { - nullableValidator(stringValidator())(ipAddress) - self.ipAddress = ipAddress - self.deviceType = deviceType + /// Opened the desktop app for the first time. + public class DashFirstLaunchedDesktopDetails: CustomStringConvertible, JSONRepresentable { + /// The name of the operating system. + public let osName: String + public init(osName: String) { + stringValidator()(osName) + self.osName = osName } func json() throws -> JSON { - try DeviceLinkFailDetailsSerializer().serialize(self) + try DashFirstLaunchedDesktopDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DeviceLinkFailDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashFirstLaunchedDesktopDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for DeviceLinkFailDetails: \(error)" + return "Failed to generate description for DashFirstLaunchedDesktopDetails: \(error)" } } } - - public class DeviceLinkFailDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DeviceLinkFailDetails) throws -> JSON { + public class DashFirstLaunchedDesktopDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashFirstLaunchedDesktopDetails) throws -> JSON { let output = [ - "device_type": try TeamLog.DeviceTypeSerializer().serialize(value.deviceType), - "ip_address": try NullableSerializer(Serialization._StringSerializer).serialize(value.ipAddress), + "os_name": try Serialization._StringSerializer.serialize(value.osName), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DeviceLinkFailDetails { + public func deserialize(_ json: JSON) throws -> DashFirstLaunchedDesktopDetails { switch json { - case .dictionary(let dict): - let deviceType = try TeamLog.DeviceTypeSerializer().deserialize(dict["device_type"] ?? .null) - let ipAddress = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["ip_address"] ?? .null) - return DeviceLinkFailDetails(deviceType: deviceType, ipAddress: ipAddress) - default: - throw JSONSerializerError.deserializeError(type: DeviceLinkFailDetails.self, json: json) + case .dictionary(let dict): + let osName = try Serialization._StringSerializer.deserialize(dict["os_name"] ?? .null) + return DashFirstLaunchedDesktopDetails(osName: osName) + default: + throw JSONSerializerError.deserializeError(type: DashFirstLaunchedDesktopDetails.self, json: json) } } } - /// The DeviceLinkFailType struct - public class DeviceLinkFailType: CustomStringConvertible, JSONRepresentable { + /// The DashFirstLaunchedDesktopType struct + public class DashFirstLaunchedDesktopType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -7922,81 +8385,78 @@ public class TeamLog { } func json() throws -> JSON { - try DeviceLinkFailTypeSerializer().serialize(self) + try DashFirstLaunchedDesktopTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DeviceLinkFailTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashFirstLaunchedDesktopTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for DeviceLinkFailType: \(error)" + return "Failed to generate description for DashFirstLaunchedDesktopType: \(error)" } } } - - public class DeviceLinkFailTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DeviceLinkFailType) throws -> JSON { + public class DashFirstLaunchedDesktopTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashFirstLaunchedDesktopType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DeviceLinkFailType { + public func deserialize(_ json: JSON) throws -> DashFirstLaunchedDesktopType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return DeviceLinkFailType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: DeviceLinkFailType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DashFirstLaunchedDesktopType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DashFirstLaunchedDesktopType.self, json: json) } } } - /// Linked device. - public class DeviceLinkSuccessDetails: CustomStringConvertible, JSONRepresentable { - /// Device's session logged information. - public let deviceSessionInfo: TeamLog.DeviceSessionLogInfo? - public init(deviceSessionInfo: TeamLog.DeviceSessionLogInfo? = nil) { - self.deviceSessionInfo = deviceSessionInfo + /// Opened the extension for the first time. + public class DashFirstLaunchedExtensionDetails: CustomStringConvertible, JSONRepresentable { + /// The name of the web browser. + public let browserName: String + public init(browserName: String) { + stringValidator()(browserName) + self.browserName = browserName } func json() throws -> JSON { - try DeviceLinkSuccessDetailsSerializer().serialize(self) + try DashFirstLaunchedExtensionDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DeviceLinkSuccessDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashFirstLaunchedExtensionDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for DeviceLinkSuccessDetails: \(error)" + return "Failed to generate description for DashFirstLaunchedExtensionDetails: \(error)" } } } - - public class DeviceLinkSuccessDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DeviceLinkSuccessDetails) throws -> JSON { + public class DashFirstLaunchedExtensionDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashFirstLaunchedExtensionDetails) throws -> JSON { let output = [ - "device_session_info": try NullableSerializer(TeamLog.DeviceSessionLogInfoSerializer()).serialize(value.deviceSessionInfo), + "browser_name": try Serialization._StringSerializer.serialize(value.browserName), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DeviceLinkSuccessDetails { + public func deserialize(_ json: JSON) throws -> DashFirstLaunchedExtensionDetails { switch json { - case .dictionary(let dict): - let deviceSessionInfo = try NullableSerializer(TeamLog.DeviceSessionLogInfoSerializer()).deserialize(dict["device_session_info"] ?? .null) - return DeviceLinkSuccessDetails(deviceSessionInfo: deviceSessionInfo) - default: - throw JSONSerializerError.deserializeError(type: DeviceLinkSuccessDetails.self, json: json) + case .dictionary(let dict): + let browserName = try Serialization._StringSerializer.deserialize(dict["browser_name"] ?? .null) + return DashFirstLaunchedExtensionDetails(browserName: browserName) + default: + throw JSONSerializerError.deserializeError(type: DashFirstLaunchedExtensionDetails.self, json: json) } } } - /// The DeviceLinkSuccessType struct - public class DeviceLinkSuccessType: CustomStringConvertible, JSONRepresentable { + /// The DashFirstLaunchedExtensionType struct + public class DashFirstLaunchedExtensionType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -8005,72 +8465,78 @@ public class TeamLog { } func json() throws -> JSON { - try DeviceLinkSuccessTypeSerializer().serialize(self) + try DashFirstLaunchedExtensionTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DeviceLinkSuccessTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashFirstLaunchedExtensionTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for DeviceLinkSuccessType: \(error)" + return "Failed to generate description for DashFirstLaunchedExtensionType: \(error)" } } } - - public class DeviceLinkSuccessTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DeviceLinkSuccessType) throws -> JSON { + public class DashFirstLaunchedExtensionTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashFirstLaunchedExtensionType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DeviceLinkSuccessType { + public func deserialize(_ json: JSON) throws -> DashFirstLaunchedExtensionType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return DeviceLinkSuccessType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: DeviceLinkSuccessType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DashFirstLaunchedExtensionType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DashFirstLaunchedExtensionType.self, json: json) } } } - /// Disabled device management. - public class DeviceManagementDisabledDetails: CustomStringConvertible, JSONRepresentable { + /// Opened the web Start Page for the first time. + public class DashFirstLaunchedWebStartPageDetails: CustomStringConvertible, JSONRepresentable { + /// The name of the web browser. + public let browserName: String + public init(browserName: String) { + stringValidator()(browserName) + self.browserName = browserName + } + func json() throws -> JSON { - try DeviceManagementDisabledDetailsSerializer().serialize(self) + try DashFirstLaunchedWebStartPageDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DeviceManagementDisabledDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashFirstLaunchedWebStartPageDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for DeviceManagementDisabledDetails: \(error)" + return "Failed to generate description for DashFirstLaunchedWebStartPageDetails: \(error)" } } } - - public class DeviceManagementDisabledDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DeviceManagementDisabledDetails) throws -> JSON { - let output = [String: JSON]() + public class DashFirstLaunchedWebStartPageDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashFirstLaunchedWebStartPageDetails) throws -> JSON { + let output = [ + "browser_name": try Serialization._StringSerializer.serialize(value.browserName), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DeviceManagementDisabledDetails { + public func deserialize(_ json: JSON) throws -> DashFirstLaunchedWebStartPageDetails { switch json { - case .dictionary: - return DeviceManagementDisabledDetails() - default: - throw JSONSerializerError.deserializeError(type: DeviceManagementDisabledDetails.self, json: json) + case .dictionary(let dict): + let browserName = try Serialization._StringSerializer.deserialize(dict["browser_name"] ?? .null) + return DashFirstLaunchedWebStartPageDetails(browserName: browserName) + default: + throw JSONSerializerError.deserializeError(type: DashFirstLaunchedWebStartPageDetails.self, json: json) } } } - /// The DeviceManagementDisabledType struct - public class DeviceManagementDisabledType: CustomStringConvertible, JSONRepresentable { + /// The DashFirstLaunchedWebStartPageType struct + public class DashFirstLaunchedWebStartPageType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -8079,72 +8545,83 @@ public class TeamLog { } func json() throws -> JSON { - try DeviceManagementDisabledTypeSerializer().serialize(self) + try DashFirstLaunchedWebStartPageTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DeviceManagementDisabledTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashFirstLaunchedWebStartPageTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for DeviceManagementDisabledType: \(error)" + return "Failed to generate description for DashFirstLaunchedWebStartPageType: \(error)" } } } - - public class DeviceManagementDisabledTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DeviceManagementDisabledType) throws -> JSON { + public class DashFirstLaunchedWebStartPageTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashFirstLaunchedWebStartPageType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DeviceManagementDisabledType { + public func deserialize(_ json: JSON) throws -> DashFirstLaunchedWebStartPageType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return DeviceManagementDisabledType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: DeviceManagementDisabledType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DashFirstLaunchedWebStartPageType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DashFirstLaunchedWebStartPageType.self, json: json) } } } - /// Enabled device management. - public class DeviceManagementEnabledDetails: CustomStringConvertible, JSONRepresentable { + /// Checked access permissions to a stack. + public class DashOpenedSharedLinkToStackDetails: CustomStringConvertible, JSONRepresentable { + /// The name of the stack. + public let stackName: String + /// The type of stack backend. + public let stackType: TeamLog.DashStackType? + public init(stackName: String, stackType: TeamLog.DashStackType? = nil) { + stringValidator()(stackName) + self.stackName = stackName + self.stackType = stackType + } + func json() throws -> JSON { - try DeviceManagementEnabledDetailsSerializer().serialize(self) + try DashOpenedSharedLinkToStackDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DeviceManagementEnabledDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashOpenedSharedLinkToStackDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for DeviceManagementEnabledDetails: \(error)" + return "Failed to generate description for DashOpenedSharedLinkToStackDetails: \(error)" } } } - - public class DeviceManagementEnabledDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DeviceManagementEnabledDetails) throws -> JSON { - let output = [String: JSON]() + public class DashOpenedSharedLinkToStackDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashOpenedSharedLinkToStackDetails) throws -> JSON { + let output = [ + "stack_name": try Serialization._StringSerializer.serialize(value.stackName), + "stack_type": try NullableSerializer(TeamLog.DashStackTypeSerializer()).serialize(value.stackType), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DeviceManagementEnabledDetails { + public func deserialize(_ json: JSON) throws -> DashOpenedSharedLinkToStackDetails { switch json { - case .dictionary: - return DeviceManagementEnabledDetails() - default: - throw JSONSerializerError.deserializeError(type: DeviceManagementEnabledDetails.self, json: json) + case .dictionary(let dict): + let stackName = try Serialization._StringSerializer.deserialize(dict["stack_name"] ?? .null) + let stackType = try NullableSerializer(TeamLog.DashStackTypeSerializer()).deserialize(dict["stack_type"] ?? .null) + return DashOpenedSharedLinkToStackDetails(stackName: stackName, stackType: stackType) + default: + throw JSONSerializerError.deserializeError(type: DashOpenedSharedLinkToStackDetails.self, json: json) } } } - /// The DeviceManagementEnabledType struct - public class DeviceManagementEnabledType: CustomStringConvertible, JSONRepresentable { + /// The DashOpenedSharedLinkToStackType struct + public class DashOpenedSharedLinkToStackType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -8153,95 +8630,83 @@ public class TeamLog { } func json() throws -> JSON { - try DeviceManagementEnabledTypeSerializer().serialize(self) + try DashOpenedSharedLinkToStackTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DeviceManagementEnabledTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashOpenedSharedLinkToStackTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for DeviceManagementEnabledType: \(error)" + return "Failed to generate description for DashOpenedSharedLinkToStackType: \(error)" } } } - - public class DeviceManagementEnabledTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DeviceManagementEnabledType) throws -> JSON { + public class DashOpenedSharedLinkToStackTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashOpenedSharedLinkToStackType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DeviceManagementEnabledType { + public func deserialize(_ json: JSON) throws -> DashOpenedSharedLinkToStackType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return DeviceManagementEnabledType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: DeviceManagementEnabledType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DashOpenedSharedLinkToStackType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DashOpenedSharedLinkToStackType.self, json: json) } } } - /// Enabled/disabled backup for computer. - public class DeviceSyncBackupStatusChangedDetails: CustomStringConvertible, JSONRepresentable { - /// Device's session logged information. - public let desktopDeviceSessionInfo: TeamLog.DesktopDeviceSessionLogInfo - /// Previous status of computer backup on the device. - public let previousValue: TeamLog.BackupStatus - /// Next status of computer backup on the device. - public let newValue: TeamLog.BackupStatus - public init(desktopDeviceSessionInfo: TeamLog.DesktopDeviceSessionLogInfo, previousValue: TeamLog.BackupStatus, newValue: TeamLog.BackupStatus) { - self.desktopDeviceSessionInfo = desktopDeviceSessionInfo - self.previousValue = previousValue - self.newValue = newValue + /// Opened a stack. + public class DashOpenedStackDetails: CustomStringConvertible, JSONRepresentable { + /// The name of the stack. + public let stackName: String + /// The type of stack backend. + public let stackType: TeamLog.DashStackType? + public init(stackName: String, stackType: TeamLog.DashStackType? = nil) { + stringValidator()(stackName) + self.stackName = stackName + self.stackType = stackType } func json() throws -> JSON { - try DeviceSyncBackupStatusChangedDetailsSerializer().serialize(self) + try DashOpenedStackDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DeviceSyncBackupStatusChangedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashOpenedStackDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for DeviceSyncBackupStatusChangedDetails: \(error)" + return "Failed to generate description for DashOpenedStackDetails: \(error)" } } } - - public class DeviceSyncBackupStatusChangedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DeviceSyncBackupStatusChangedDetails) throws -> JSON { + public class DashOpenedStackDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashOpenedStackDetails) throws -> JSON { let output = [ - "desktop_device_session_info": try TeamLog.DesktopDeviceSessionLogInfoSerializer().serialize(value.desktopDeviceSessionInfo), - "previous_value": try TeamLog.BackupStatusSerializer().serialize(value.previousValue), - "new_value": try TeamLog.BackupStatusSerializer().serialize(value.newValue), + "stack_name": try Serialization._StringSerializer.serialize(value.stackName), + "stack_type": try NullableSerializer(TeamLog.DashStackTypeSerializer()).serialize(value.stackType), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DeviceSyncBackupStatusChangedDetails { + public func deserialize(_ json: JSON) throws -> DashOpenedStackDetails { switch json { - case .dictionary(let dict): - let desktopDeviceSessionInfo = try TeamLog.DesktopDeviceSessionLogInfoSerializer().deserialize(dict["desktop_device_session_info"] ?? .null) - let previousValue = try TeamLog.BackupStatusSerializer().deserialize(dict["previous_value"] ?? .null) - let newValue = try TeamLog.BackupStatusSerializer().deserialize(dict["new_value"] ?? .null) - return DeviceSyncBackupStatusChangedDetails( - desktopDeviceSessionInfo: desktopDeviceSessionInfo, - previousValue: previousValue, - newValue: newValue - ) - default: - throw JSONSerializerError.deserializeError(type: DeviceSyncBackupStatusChangedDetails.self, json: json) + case .dictionary(let dict): + let stackName = try Serialization._StringSerializer.deserialize(dict["stack_name"] ?? .null) + let stackType = try NullableSerializer(TeamLog.DashStackTypeSerializer()).deserialize(dict["stack_type"] ?? .null) + return DashOpenedStackDetails(stackName: stackName, stackType: stackType) + default: + throw JSONSerializerError.deserializeError(type: DashOpenedStackDetails.self, json: json) } } } - /// The DeviceSyncBackupStatusChangedType struct - public class DeviceSyncBackupStatusChangedType: CustomStringConvertible, JSONRepresentable { + /// The DashOpenedStackType struct + public class DashOpenedStackType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -8250,214 +8715,136 @@ public class TeamLog { } func json() throws -> JSON { - try DeviceSyncBackupStatusChangedTypeSerializer().serialize(self) + try DashOpenedStackTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DeviceSyncBackupStatusChangedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashOpenedStackTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for DeviceSyncBackupStatusChangedType: \(error)" + return "Failed to generate description for DashOpenedStackType: \(error)" } } } - - public class DeviceSyncBackupStatusChangedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DeviceSyncBackupStatusChangedType) throws -> JSON { + public class DashOpenedStackTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashOpenedStackType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DeviceSyncBackupStatusChangedType { + public func deserialize(_ json: JSON) throws -> DashOpenedStackType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return DeviceSyncBackupStatusChangedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: DeviceSyncBackupStatusChangedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DashOpenedStackType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DashOpenedStackType.self, json: json) } } } - /// The DeviceType union - public enum DeviceType: CustomStringConvertible, JSONRepresentable { + /// The new preview opt-out status + public enum DashPreviewOptOutStatus: CustomStringConvertible, JSONRepresentable { /// An unspecified error. - case desktop + case optedIn /// An unspecified error. - case mobile + case optedOut /// An unspecified error. case other func json() throws -> JSON { - try DeviceTypeSerializer().serialize(self) + try DashPreviewOptOutStatusSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DeviceTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashPreviewOptOutStatusSerializer().serialize(self)))" } catch { - return "Failed to generate description for DeviceType: \(error)" + return "Failed to generate description for DashPreviewOptOutStatus: \(error)" } } } - - public class DeviceTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DeviceType) throws -> JSON { + public class DashPreviewOptOutStatusSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashPreviewOptOutStatus) throws -> JSON { switch value { - case .desktop: - var d = [String: JSON]() - d[".tag"] = .str("desktop") - return .dictionary(d) - case .mobile: - var d = [String: JSON]() - d[".tag"] = .str("mobile") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) - } - } - - public func deserialize(_ json: JSON) throws -> DeviceType { - switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "desktop": - return DeviceType.desktop - case "mobile": - return DeviceType.mobile - case "other": - return DeviceType.other + case .optedIn: + var d = [String: JSON]() + d[".tag"] = .str("opted_in") + return .dictionary(d) + case .optedOut: + var d = [String: JSON]() + d[".tag"] = .str("opted_out") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> DashPreviewOptOutStatus { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "opted_in": + return DashPreviewOptOutStatus.optedIn + case "opted_out": + return DashPreviewOptOutStatus.optedOut + case "other": + return DashPreviewOptOutStatus.other + default: + return DashPreviewOptOutStatus.other + } default: - return DeviceType.other - } - default: - throw JSONSerializerError.deserializeError(type: DeviceType.self, json: json) + throw JSONSerializerError.deserializeError(type: DashPreviewOptOutStatus.self, json: json) } } } - /// Disconnected device. - public class DeviceUnlinkDetails: CustomStringConvertible, JSONRepresentable { - /// Session unique id. - public let sessionInfo: TeamLog.SessionLogInfo? - /// The device name. Might be missing due to historical data gap. - public let displayName: String? - /// True if the user requested to delete data after device unlink, false otherwise. - public let deleteData: Bool - public init(deleteData: Bool, sessionInfo: TeamLog.SessionLogInfo? = nil, displayName: String? = nil) { - self.sessionInfo = sessionInfo - nullableValidator(stringValidator())(displayName) - self.displayName = displayName - self.deleteData = deleteData + /// Changed the preview opt-out status. + public class DashPreviewOptOutStatusChangedDetails: CustomStringConvertible, JSONRepresentable { + /// The new preview opt-out status. + public let optOutStatus: TeamLog.DashPreviewOptOutStatus + public init(optOutStatus: TeamLog.DashPreviewOptOutStatus) { + self.optOutStatus = optOutStatus } func json() throws -> JSON { - try DeviceUnlinkDetailsSerializer().serialize(self) + try DashPreviewOptOutStatusChangedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DeviceUnlinkDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashPreviewOptOutStatusChangedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for DeviceUnlinkDetails: \(error)" + return "Failed to generate description for DashPreviewOptOutStatusChangedDetails: \(error)" } } } - - public class DeviceUnlinkDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DeviceUnlinkDetails) throws -> JSON { + public class DashPreviewOptOutStatusChangedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashPreviewOptOutStatusChangedDetails) throws -> JSON { let output = [ - "delete_data": try Serialization._BoolSerializer.serialize(value.deleteData), - "session_info": try NullableSerializer(TeamLog.SessionLogInfoSerializer()).serialize(value.sessionInfo), - "display_name": try NullableSerializer(Serialization._StringSerializer).serialize(value.displayName), + "opt_out_status": try TeamLog.DashPreviewOptOutStatusSerializer().serialize(value.optOutStatus), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DeviceUnlinkDetails { - switch json { - case .dictionary(let dict): - let deleteData = try Serialization._BoolSerializer.deserialize(dict["delete_data"] ?? .null) - let sessionInfo = try NullableSerializer(TeamLog.SessionLogInfoSerializer()).deserialize(dict["session_info"] ?? .null) - let displayName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["display_name"] ?? .null) - return DeviceUnlinkDetails(deleteData: deleteData, sessionInfo: sessionInfo, displayName: displayName) - default: - throw JSONSerializerError.deserializeError(type: DeviceUnlinkDetails.self, json: json) - } - } - } - - /// The DeviceUnlinkPolicy union - public enum DeviceUnlinkPolicy: CustomStringConvertible, JSONRepresentable { - /// An unspecified error. - case keep - /// An unspecified error. - case remove - /// An unspecified error. - case other - - func json() throws -> JSON { - try DeviceUnlinkPolicySerializer().serialize(self) - } - - public var description: String { - do { - return "\(SerializeUtil.prepareJSONForSerialization(try DeviceUnlinkPolicySerializer().serialize(self)))" - } catch { - return "Failed to generate description for DeviceUnlinkPolicy: \(error)" - } - } - } - - public class DeviceUnlinkPolicySerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DeviceUnlinkPolicy) throws -> JSON { - switch value { - case .keep: - var d = [String: JSON]() - d[".tag"] = .str("keep") - return .dictionary(d) - case .remove: - var d = [String: JSON]() - d[".tag"] = .str("remove") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) - } - } - - public func deserialize(_ json: JSON) throws -> DeviceUnlinkPolicy { + public func deserialize(_ json: JSON) throws -> DashPreviewOptOutStatusChangedDetails { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "keep": - return DeviceUnlinkPolicy.keep - case "remove": - return DeviceUnlinkPolicy.remove - case "other": - return DeviceUnlinkPolicy.other + case .dictionary(let dict): + let optOutStatus = try TeamLog.DashPreviewOptOutStatusSerializer().deserialize(dict["opt_out_status"] ?? .null) + return DashPreviewOptOutStatusChangedDetails(optOutStatus: optOutStatus) default: - return DeviceUnlinkPolicy.other - } - default: - throw JSONSerializerError.deserializeError(type: DeviceUnlinkPolicy.self, json: json) + throw JSONSerializerError.deserializeError(type: DashPreviewOptOutStatusChangedDetails.self, json: json) } } } - /// The DeviceUnlinkType struct - public class DeviceUnlinkType: CustomStringConvertible, JSONRepresentable { + /// The DashPreviewOptOutStatusChangedType struct + public class DashPreviewOptOutStatusChangedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -8466,72 +8853,83 @@ public class TeamLog { } func json() throws -> JSON { - try DeviceUnlinkTypeSerializer().serialize(self) + try DashPreviewOptOutStatusChangedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DeviceUnlinkTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashPreviewOptOutStatusChangedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for DeviceUnlinkType: \(error)" + return "Failed to generate description for DashPreviewOptOutStatusChangedType: \(error)" } } } - - public class DeviceUnlinkTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DeviceUnlinkType) throws -> JSON { + public class DashPreviewOptOutStatusChangedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashPreviewOptOutStatusChangedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DeviceUnlinkType { + public func deserialize(_ json: JSON) throws -> DashPreviewOptOutStatusChangedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return DeviceUnlinkType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: DeviceUnlinkType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DashPreviewOptOutStatusChangedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DashPreviewOptOutStatusChangedType.self, json: json) } } } - /// Added members to directory restrictions list. - public class DirectoryRestrictionsAddMembersDetails: CustomStringConvertible, JSONRepresentable { + /// Disconnected a user connector. + public class DashRemovedConnectorDetails: CustomStringConvertible, JSONRepresentable { + /// The name of the Connector. + public let connectorName: String + /// The status of the Connector. + public let connectorStatus: TeamLog.DashConnectorStatus + public init(connectorName: String, connectorStatus: TeamLog.DashConnectorStatus) { + stringValidator()(connectorName) + self.connectorName = connectorName + self.connectorStatus = connectorStatus + } + func json() throws -> JSON { - try DirectoryRestrictionsAddMembersDetailsSerializer().serialize(self) + try DashRemovedConnectorDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DirectoryRestrictionsAddMembersDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashRemovedConnectorDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for DirectoryRestrictionsAddMembersDetails: \(error)" + return "Failed to generate description for DashRemovedConnectorDetails: \(error)" } } } - - public class DirectoryRestrictionsAddMembersDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DirectoryRestrictionsAddMembersDetails) throws -> JSON { - let output = [String: JSON]() + public class DashRemovedConnectorDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashRemovedConnectorDetails) throws -> JSON { + let output = [ + "connector_name": try Serialization._StringSerializer.serialize(value.connectorName), + "connector_status": try TeamLog.DashConnectorStatusSerializer().serialize(value.connectorStatus), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DirectoryRestrictionsAddMembersDetails { + public func deserialize(_ json: JSON) throws -> DashRemovedConnectorDetails { switch json { - case .dictionary: - return DirectoryRestrictionsAddMembersDetails() - default: - throw JSONSerializerError.deserializeError(type: DirectoryRestrictionsAddMembersDetails.self, json: json) + case .dictionary(let dict): + let connectorName = try Serialization._StringSerializer.deserialize(dict["connector_name"] ?? .null) + let connectorStatus = try TeamLog.DashConnectorStatusSerializer().deserialize(dict["connector_status"] ?? .null) + return DashRemovedConnectorDetails(connectorName: connectorName, connectorStatus: connectorStatus) + default: + throw JSONSerializerError.deserializeError(type: DashRemovedConnectorDetails.self, json: json) } } } - /// The DirectoryRestrictionsAddMembersType struct - public class DirectoryRestrictionsAddMembersType: CustomStringConvertible, JSONRepresentable { + /// The DashRemovedConnectorType struct + public class DashRemovedConnectorType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -8540,72 +8938,89 @@ public class TeamLog { } func json() throws -> JSON { - try DirectoryRestrictionsAddMembersTypeSerializer().serialize(self) + try DashRemovedConnectorTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DirectoryRestrictionsAddMembersTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashRemovedConnectorTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for DirectoryRestrictionsAddMembersType: \(error)" + return "Failed to generate description for DashRemovedConnectorType: \(error)" } } } - - public class DirectoryRestrictionsAddMembersTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DirectoryRestrictionsAddMembersType) throws -> JSON { + public class DashRemovedConnectorTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashRemovedConnectorType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DirectoryRestrictionsAddMembersType { + public func deserialize(_ json: JSON) throws -> DashRemovedConnectorType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return DirectoryRestrictionsAddMembersType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: DirectoryRestrictionsAddMembersType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DashRemovedConnectorType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DashRemovedConnectorType.self, json: json) } } } - /// Removed members from directory restrictions list. - public class DirectoryRestrictionsRemoveMembersDetails: CustomStringConvertible, JSONRepresentable { + /// Removed a link from a stack. + public class DashRemovedLinkFromStackDetails: CustomStringConvertible, JSONRepresentable { + /// The name of the stack. + public let stackName: String + /// The link to the item in the stack. + public let stackItemLink: String + /// The type of stack backend. + public let stackType: TeamLog.DashStackType? + public init(stackName: String, stackItemLink: String, stackType: TeamLog.DashStackType? = nil) { + stringValidator()(stackName) + self.stackName = stackName + stringValidator()(stackItemLink) + self.stackItemLink = stackItemLink + self.stackType = stackType + } + func json() throws -> JSON { - try DirectoryRestrictionsRemoveMembersDetailsSerializer().serialize(self) + try DashRemovedLinkFromStackDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DirectoryRestrictionsRemoveMembersDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashRemovedLinkFromStackDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for DirectoryRestrictionsRemoveMembersDetails: \(error)" + return "Failed to generate description for DashRemovedLinkFromStackDetails: \(error)" } } } - - public class DirectoryRestrictionsRemoveMembersDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DirectoryRestrictionsRemoveMembersDetails) throws -> JSON { - let output = [String: JSON]() + public class DashRemovedLinkFromStackDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashRemovedLinkFromStackDetails) throws -> JSON { + let output = [ + "stack_name": try Serialization._StringSerializer.serialize(value.stackName), + "stack_item_link": try Serialization._StringSerializer.serialize(value.stackItemLink), + "stack_type": try NullableSerializer(TeamLog.DashStackTypeSerializer()).serialize(value.stackType), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DirectoryRestrictionsRemoveMembersDetails { + public func deserialize(_ json: JSON) throws -> DashRemovedLinkFromStackDetails { switch json { - case .dictionary: - return DirectoryRestrictionsRemoveMembersDetails() - default: - throw JSONSerializerError.deserializeError(type: DirectoryRestrictionsRemoveMembersDetails.self, json: json) + case .dictionary(let dict): + let stackName = try Serialization._StringSerializer.deserialize(dict["stack_name"] ?? .null) + let stackItemLink = try Serialization._StringSerializer.deserialize(dict["stack_item_link"] ?? .null) + let stackType = try NullableSerializer(TeamLog.DashStackTypeSerializer()).deserialize(dict["stack_type"] ?? .null) + return DashRemovedLinkFromStackDetails(stackName: stackName, stackItemLink: stackItemLink, stackType: stackType) + default: + throw JSONSerializerError.deserializeError(type: DashRemovedLinkFromStackDetails.self, json: json) } } } - /// The DirectoryRestrictionsRemoveMembersType struct - public class DirectoryRestrictionsRemoveMembersType: CustomStringConvertible, JSONRepresentable { + /// The DashRemovedLinkFromStackType struct + public class DashRemovedLinkFromStackType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -8614,72 +9029,83 @@ public class TeamLog { } func json() throws -> JSON { - try DirectoryRestrictionsRemoveMembersTypeSerializer().serialize(self) + try DashRemovedLinkFromStackTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DirectoryRestrictionsRemoveMembersTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashRemovedLinkFromStackTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for DirectoryRestrictionsRemoveMembersType: \(error)" + return "Failed to generate description for DashRemovedLinkFromStackType: \(error)" } } } - - public class DirectoryRestrictionsRemoveMembersTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DirectoryRestrictionsRemoveMembersType) throws -> JSON { + public class DashRemovedLinkFromStackTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashRemovedLinkFromStackType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DirectoryRestrictionsRemoveMembersType { + public func deserialize(_ json: JSON) throws -> DashRemovedLinkFromStackType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return DirectoryRestrictionsRemoveMembersType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: DirectoryRestrictionsRemoveMembersType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DashRemovedLinkFromStackType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DashRemovedLinkFromStackType.self, json: json) } } } - /// Disabled domain invites. - public class DisabledDomainInvitesDetails: CustomStringConvertible, JSONRepresentable { + /// Removed a shared link to a stack. + public class DashRemovedSharedLinkToStackDetails: CustomStringConvertible, JSONRepresentable { + /// The name of the stack. + public let stackName: String + /// The type of stack backend. + public let stackType: TeamLog.DashStackType? + public init(stackName: String, stackType: TeamLog.DashStackType? = nil) { + stringValidator()(stackName) + self.stackName = stackName + self.stackType = stackType + } + func json() throws -> JSON { - try DisabledDomainInvitesDetailsSerializer().serialize(self) + try DashRemovedSharedLinkToStackDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DisabledDomainInvitesDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashRemovedSharedLinkToStackDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for DisabledDomainInvitesDetails: \(error)" + return "Failed to generate description for DashRemovedSharedLinkToStackDetails: \(error)" } } } - - public class DisabledDomainInvitesDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DisabledDomainInvitesDetails) throws -> JSON { - let output = [String: JSON]() + public class DashRemovedSharedLinkToStackDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashRemovedSharedLinkToStackDetails) throws -> JSON { + let output = [ + "stack_name": try Serialization._StringSerializer.serialize(value.stackName), + "stack_type": try NullableSerializer(TeamLog.DashStackTypeSerializer()).serialize(value.stackType), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DisabledDomainInvitesDetails { + public func deserialize(_ json: JSON) throws -> DashRemovedSharedLinkToStackDetails { switch json { - case .dictionary: - return DisabledDomainInvitesDetails() - default: - throw JSONSerializerError.deserializeError(type: DisabledDomainInvitesDetails.self, json: json) + case .dictionary(let dict): + let stackName = try Serialization._StringSerializer.deserialize(dict["stack_name"] ?? .null) + let stackType = try NullableSerializer(TeamLog.DashStackTypeSerializer()).deserialize(dict["stack_type"] ?? .null) + return DashRemovedSharedLinkToStackDetails(stackName: stackName, stackType: stackType) + default: + throw JSONSerializerError.deserializeError(type: DashRemovedSharedLinkToStackDetails.self, json: json) } } } - /// The DisabledDomainInvitesType struct - public class DisabledDomainInvitesType: CustomStringConvertible, JSONRepresentable { + /// The DashRemovedSharedLinkToStackType struct + public class DashRemovedSharedLinkToStackType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -8688,133 +9114,78 @@ public class TeamLog { } func json() throws -> JSON { - try DisabledDomainInvitesTypeSerializer().serialize(self) + try DashRemovedSharedLinkToStackTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DisabledDomainInvitesTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashRemovedSharedLinkToStackTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for DisabledDomainInvitesType: \(error)" + return "Failed to generate description for DashRemovedSharedLinkToStackType: \(error)" } } } - - public class DisabledDomainInvitesTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DisabledDomainInvitesType) throws -> JSON { + public class DashRemovedSharedLinkToStackTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashRemovedSharedLinkToStackType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DisabledDomainInvitesType { + public func deserialize(_ json: JSON) throws -> DashRemovedSharedLinkToStackType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return DisabledDomainInvitesType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: DisabledDomainInvitesType.self, json: json) - } - } - } - - /// The DispositionActionType union - public enum DispositionActionType: CustomStringConvertible, JSONRepresentable { - /// An unspecified error. - case automaticDelete - /// An unspecified error. - case automaticPermanentlyDelete - /// An unspecified error. - case other - - func json() throws -> JSON { - try DispositionActionTypeSerializer().serialize(self) - } - - public var description: String { - do { - return "\(SerializeUtil.prepareJSONForSerialization(try DispositionActionTypeSerializer().serialize(self)))" - } catch { - return "Failed to generate description for DispositionActionType: \(error)" + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DashRemovedSharedLinkToStackType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DashRemovedSharedLinkToStackType.self, json: json) } } } - public class DispositionActionTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DispositionActionType) throws -> JSON { - switch value { - case .automaticDelete: - var d = [String: JSON]() - d[".tag"] = .str("automatic_delete") - return .dictionary(d) - case .automaticPermanentlyDelete: - var d = [String: JSON]() - d[".tag"] = .str("automatic_permanently_delete") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) - } - } - - public func deserialize(_ json: JSON) throws -> DispositionActionType { - switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "automatic_delete": - return DispositionActionType.automaticDelete - case "automatic_permanently_delete": - return DispositionActionType.automaticPermanentlyDelete - case "other": - return DispositionActionType.other - default: - return DispositionActionType.other - } - default: - throw JSONSerializerError.deserializeError(type: DispositionActionType.self, json: json) - } + /// Admin removed an email domain from the team allowlist. + public class DashRemovedTeamEmailDomainAllowlistDetails: CustomStringConvertible, JSONRepresentable { + /// The email domain that gets added/removed from the team allowlist. + public let emailDomain: String + public init(emailDomain: String) { + stringValidator()(emailDomain) + self.emailDomain = emailDomain } - } - /// Approved user's request to join team. - public class DomainInvitesApproveRequestToJoinTeamDetails: CustomStringConvertible, JSONRepresentable { func json() throws -> JSON { - try DomainInvitesApproveRequestToJoinTeamDetailsSerializer().serialize(self) + try DashRemovedTeamEmailDomainAllowlistDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DomainInvitesApproveRequestToJoinTeamDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashRemovedTeamEmailDomainAllowlistDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for DomainInvitesApproveRequestToJoinTeamDetails: \(error)" + return "Failed to generate description for DashRemovedTeamEmailDomainAllowlistDetails: \(error)" } } } - - public class DomainInvitesApproveRequestToJoinTeamDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DomainInvitesApproveRequestToJoinTeamDetails) throws -> JSON { - let output = [String: JSON]() + public class DashRemovedTeamEmailDomainAllowlistDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashRemovedTeamEmailDomainAllowlistDetails) throws -> JSON { + let output = [ + "email_domain": try Serialization._StringSerializer.serialize(value.emailDomain), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DomainInvitesApproveRequestToJoinTeamDetails { + public func deserialize(_ json: JSON) throws -> DashRemovedTeamEmailDomainAllowlistDetails { switch json { - case .dictionary: - return DomainInvitesApproveRequestToJoinTeamDetails() - default: - throw JSONSerializerError.deserializeError(type: DomainInvitesApproveRequestToJoinTeamDetails.self, json: json) + case .dictionary(let dict): + let emailDomain = try Serialization._StringSerializer.deserialize(dict["email_domain"] ?? .null) + return DashRemovedTeamEmailDomainAllowlistDetails(emailDomain: emailDomain) + default: + throw JSONSerializerError.deserializeError(type: DashRemovedTeamEmailDomainAllowlistDetails.self, json: json) } } } - /// The DomainInvitesApproveRequestToJoinTeamType struct - public class DomainInvitesApproveRequestToJoinTeamType: CustomStringConvertible, JSONRepresentable { + /// The DashRemovedTeamEmailDomainAllowlistType struct + public class DashRemovedTeamEmailDomainAllowlistType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -8823,72 +9194,89 @@ public class TeamLog { } func json() throws -> JSON { - try DomainInvitesApproveRequestToJoinTeamTypeSerializer().serialize(self) + try DashRemovedTeamEmailDomainAllowlistTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DomainInvitesApproveRequestToJoinTeamTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashRemovedTeamEmailDomainAllowlistTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for DomainInvitesApproveRequestToJoinTeamType: \(error)" + return "Failed to generate description for DashRemovedTeamEmailDomainAllowlistType: \(error)" } } } - - public class DomainInvitesApproveRequestToJoinTeamTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DomainInvitesApproveRequestToJoinTeamType) throws -> JSON { + public class DashRemovedTeamEmailDomainAllowlistTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashRemovedTeamEmailDomainAllowlistType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DomainInvitesApproveRequestToJoinTeamType { + public func deserialize(_ json: JSON) throws -> DashRemovedTeamEmailDomainAllowlistType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return DomainInvitesApproveRequestToJoinTeamType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: DomainInvitesApproveRequestToJoinTeamType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DashRemovedTeamEmailDomainAllowlistType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DashRemovedTeamEmailDomainAllowlistType.self, json: json) } } } - /// Declined user's request to join team. - public class DomainInvitesDeclineRequestToJoinTeamDetails: CustomStringConvertible, JSONRepresentable { + /// Renamed a stack. + public class DashRenamedStackDetails: CustomStringConvertible, JSONRepresentable { + /// The old name of the stack. + public let oldName: String + /// The new name of the stack. + public let newName: String + /// The type of stack backend. + public let stackType: TeamLog.DashStackType? + public init(oldName: String, newName: String, stackType: TeamLog.DashStackType? = nil) { + stringValidator()(oldName) + self.oldName = oldName + stringValidator()(newName) + self.newName = newName + self.stackType = stackType + } + func json() throws -> JSON { - try DomainInvitesDeclineRequestToJoinTeamDetailsSerializer().serialize(self) + try DashRenamedStackDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DomainInvitesDeclineRequestToJoinTeamDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashRenamedStackDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for DomainInvitesDeclineRequestToJoinTeamDetails: \(error)" + return "Failed to generate description for DashRenamedStackDetails: \(error)" } } } - - public class DomainInvitesDeclineRequestToJoinTeamDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DomainInvitesDeclineRequestToJoinTeamDetails) throws -> JSON { - let output = [String: JSON]() + public class DashRenamedStackDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashRenamedStackDetails) throws -> JSON { + let output = [ + "old_name": try Serialization._StringSerializer.serialize(value.oldName), + "new_name": try Serialization._StringSerializer.serialize(value.newName), + "stack_type": try NullableSerializer(TeamLog.DashStackTypeSerializer()).serialize(value.stackType), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DomainInvitesDeclineRequestToJoinTeamDetails { + public func deserialize(_ json: JSON) throws -> DashRenamedStackDetails { switch json { - case .dictionary: - return DomainInvitesDeclineRequestToJoinTeamDetails() - default: - throw JSONSerializerError.deserializeError(type: DomainInvitesDeclineRequestToJoinTeamDetails.self, json: json) + case .dictionary(let dict): + let oldName = try Serialization._StringSerializer.deserialize(dict["old_name"] ?? .null) + let newName = try Serialization._StringSerializer.deserialize(dict["new_name"] ?? .null) + let stackType = try NullableSerializer(TeamLog.DashStackTypeSerializer()).deserialize(dict["stack_type"] ?? .null) + return DashRenamedStackDetails(oldName: oldName, newName: newName, stackType: stackType) + default: + throw JSONSerializerError.deserializeError(type: DashRenamedStackDetails.self, json: json) } } } - /// The DomainInvitesDeclineRequestToJoinTeamType struct - public class DomainInvitesDeclineRequestToJoinTeamType: CustomStringConvertible, JSONRepresentable { + /// The DashRenamedStackType struct + public class DashRenamedStackType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -8897,88 +9285,83 @@ public class TeamLog { } func json() throws -> JSON { - try DomainInvitesDeclineRequestToJoinTeamTypeSerializer().serialize(self) + try DashRenamedStackTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DomainInvitesDeclineRequestToJoinTeamTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashRenamedStackTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for DomainInvitesDeclineRequestToJoinTeamType: \(error)" + return "Failed to generate description for DashRenamedStackType: \(error)" } } } - - public class DomainInvitesDeclineRequestToJoinTeamTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DomainInvitesDeclineRequestToJoinTeamType) throws -> JSON { + public class DashRenamedStackTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashRenamedStackType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DomainInvitesDeclineRequestToJoinTeamType { + public func deserialize(_ json: JSON) throws -> DashRenamedStackType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return DomainInvitesDeclineRequestToJoinTeamType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: DomainInvitesDeclineRequestToJoinTeamType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DashRenamedStackType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DashRenamedStackType.self, json: json) } } } - /// Sent domain invites to existing domain accounts. - public class DomainInvitesEmailExistingUsersDetails: CustomStringConvertible, JSONRepresentable { - /// Domain names. - public let domainName: String - /// Number of recipients. - public let numRecipients: UInt64 - public init(domainName: String, numRecipients: UInt64) { - stringValidator()(domainName) - self.domainName = domainName - comparableValidator()(numRecipients) - self.numRecipients = numRecipients + /// Shared a link to a stack. + public class DashSharedLinkToStackDetails: CustomStringConvertible, JSONRepresentable { + /// The name of the stack. + public let stackName: String + /// The type of stack backend. + public let stackType: TeamLog.DashStackType? + public init(stackName: String, stackType: TeamLog.DashStackType? = nil) { + stringValidator()(stackName) + self.stackName = stackName + self.stackType = stackType } func json() throws -> JSON { - try DomainInvitesEmailExistingUsersDetailsSerializer().serialize(self) + try DashSharedLinkToStackDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DomainInvitesEmailExistingUsersDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashSharedLinkToStackDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for DomainInvitesEmailExistingUsersDetails: \(error)" + return "Failed to generate description for DashSharedLinkToStackDetails: \(error)" } } } - - public class DomainInvitesEmailExistingUsersDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DomainInvitesEmailExistingUsersDetails) throws -> JSON { + public class DashSharedLinkToStackDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashSharedLinkToStackDetails) throws -> JSON { let output = [ - "domain_name": try Serialization._StringSerializer.serialize(value.domainName), - "num_recipients": try Serialization._UInt64Serializer.serialize(value.numRecipients), + "stack_name": try Serialization._StringSerializer.serialize(value.stackName), + "stack_type": try NullableSerializer(TeamLog.DashStackTypeSerializer()).serialize(value.stackType), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DomainInvitesEmailExistingUsersDetails { + public func deserialize(_ json: JSON) throws -> DashSharedLinkToStackDetails { switch json { - case .dictionary(let dict): - let domainName = try Serialization._StringSerializer.deserialize(dict["domain_name"] ?? .null) - let numRecipients = try Serialization._UInt64Serializer.deserialize(dict["num_recipients"] ?? .null) - return DomainInvitesEmailExistingUsersDetails(domainName: domainName, numRecipients: numRecipients) - default: - throw JSONSerializerError.deserializeError(type: DomainInvitesEmailExistingUsersDetails.self, json: json) + case .dictionary(let dict): + let stackName = try Serialization._StringSerializer.deserialize(dict["stack_name"] ?? .null) + let stackType = try NullableSerializer(TeamLog.DashStackTypeSerializer()).deserialize(dict["stack_type"] ?? .null) + return DashSharedLinkToStackDetails(stackName: stackName, stackType: stackType) + default: + throw JSONSerializerError.deserializeError(type: DashSharedLinkToStackDetails.self, json: json) } } } - /// The DomainInvitesEmailExistingUsersType struct - public class DomainInvitesEmailExistingUsersType: CustomStringConvertible, JSONRepresentable { + /// The DashSharedLinkToStackType struct + public class DashSharedLinkToStackType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -8987,146 +9370,225 @@ public class TeamLog { } func json() throws -> JSON { - try DomainInvitesEmailExistingUsersTypeSerializer().serialize(self) + try DashSharedLinkToStackTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DomainInvitesEmailExistingUsersTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashSharedLinkToStackTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for DomainInvitesEmailExistingUsersType: \(error)" + return "Failed to generate description for DashSharedLinkToStackType: \(error)" } } } - - public class DomainInvitesEmailExistingUsersTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DomainInvitesEmailExistingUsersType) throws -> JSON { + public class DashSharedLinkToStackTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashSharedLinkToStackType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DomainInvitesEmailExistingUsersType { + public func deserialize(_ json: JSON) throws -> DashSharedLinkToStackType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return DomainInvitesEmailExistingUsersType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: DomainInvitesEmailExistingUsersType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DashSharedLinkToStackType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DashSharedLinkToStackType.self, json: json) } } } - /// Requested to join team. - public class DomainInvitesRequestToJoinTeamDetails: CustomStringConvertible, JSONRepresentable { + /// The stack sharing scope + public enum DashStackSharingScope: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case invited + /// An unspecified error. + case public_ + /// An unspecified error. + case team + /// An unspecified error. + case unknown + /// An unspecified error. + case other + func json() throws -> JSON { - try DomainInvitesRequestToJoinTeamDetailsSerializer().serialize(self) + try DashStackSharingScopeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DomainInvitesRequestToJoinTeamDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashStackSharingScopeSerializer().serialize(self)))" } catch { - return "Failed to generate description for DomainInvitesRequestToJoinTeamDetails: \(error)" + return "Failed to generate description for DashStackSharingScope: \(error)" } } } - - public class DomainInvitesRequestToJoinTeamDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DomainInvitesRequestToJoinTeamDetails) throws -> JSON { - let output = [String: JSON]() - return .dictionary(output) - } - - public func deserialize(_ json: JSON) throws -> DomainInvitesRequestToJoinTeamDetails { - switch json { - case .dictionary: - return DomainInvitesRequestToJoinTeamDetails() - default: - throw JSONSerializerError.deserializeError(type: DomainInvitesRequestToJoinTeamDetails.self, json: json) + public class DashStackSharingScopeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashStackSharingScope) throws -> JSON { + switch value { + case .invited: + var d = [String: JSON]() + d[".tag"] = .str("invited") + return .dictionary(d) + case .public_: + var d = [String: JSON]() + d[".tag"] = .str("public") + return .dictionary(d) + case .team: + var d = [String: JSON]() + d[".tag"] = .str("team") + return .dictionary(d) + case .unknown: + var d = [String: JSON]() + d[".tag"] = .str("unknown") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> DashStackSharingScope { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "invited": + return DashStackSharingScope.invited + case "public": + return DashStackSharingScope.public_ + case "team": + return DashStackSharingScope.team + case "unknown": + return DashStackSharingScope.unknown + case "other": + return DashStackSharingScope.other + default: + return DashStackSharingScope.other + } + default: + throw JSONSerializerError.deserializeError(type: DashStackSharingScope.self, json: json) } } } - /// The DomainInvitesRequestToJoinTeamType struct - public class DomainInvitesRequestToJoinTeamType: CustomStringConvertible, JSONRepresentable { - /// (no description) - public let description_: String - public init(description_: String) { - stringValidator()(description_) - self.description_ = description_ - } + /// The type of stack backend + public enum DashStackType: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case cypress + /// An unspecified error. + case referenceContainer + /// An unspecified error. + case unknown + /// An unspecified error. + case other func json() throws -> JSON { - try DomainInvitesRequestToJoinTeamTypeSerializer().serialize(self) + try DashStackTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DomainInvitesRequestToJoinTeamTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashStackTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for DomainInvitesRequestToJoinTeamType: \(error)" + return "Failed to generate description for DashStackType: \(error)" } } } - - public class DomainInvitesRequestToJoinTeamTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DomainInvitesRequestToJoinTeamType) throws -> JSON { - let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), - ] - return .dictionary(output) - } - - public func deserialize(_ json: JSON) throws -> DomainInvitesRequestToJoinTeamType { - switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return DomainInvitesRequestToJoinTeamType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: DomainInvitesRequestToJoinTeamType.self, json: json) + public class DashStackTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashStackType) throws -> JSON { + switch value { + case .cypress: + var d = [String: JSON]() + d[".tag"] = .str("cypress") + return .dictionary(d) + case .referenceContainer: + var d = [String: JSON]() + d[".tag"] = .str("reference_container") + return .dictionary(d) + case .unknown: + var d = [String: JSON]() + d[".tag"] = .str("unknown") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> DashStackType { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "cypress": + return DashStackType.cypress + case "reference_container": + return DashStackType.referenceContainer + case "unknown": + return DashStackType.unknown + case "other": + return DashStackType.other + default: + return DashStackType.other + } + default: + throw JSONSerializerError.deserializeError(type: DashStackType.self, json: json) } } } - /// Disabled "Automatically invite new users". - public class DomainInvitesSetInviteNewUserPrefToNoDetails: CustomStringConvertible, JSONRepresentable { + /// Unarchived a stack. + public class DashUnarchivedStackDetails: CustomStringConvertible, JSONRepresentable { + /// The name of the stack. + public let stackName: String + /// The type of stack backend. + public let stackType: TeamLog.DashStackType? + public init(stackName: String, stackType: TeamLog.DashStackType? = nil) { + stringValidator()(stackName) + self.stackName = stackName + self.stackType = stackType + } + func json() throws -> JSON { - try DomainInvitesSetInviteNewUserPrefToNoDetailsSerializer().serialize(self) + try DashUnarchivedStackDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DomainInvitesSetInviteNewUserPrefToNoDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashUnarchivedStackDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for DomainInvitesSetInviteNewUserPrefToNoDetails: \(error)" + return "Failed to generate description for DashUnarchivedStackDetails: \(error)" } } } - - public class DomainInvitesSetInviteNewUserPrefToNoDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DomainInvitesSetInviteNewUserPrefToNoDetails) throws -> JSON { - let output = [String: JSON]() + public class DashUnarchivedStackDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashUnarchivedStackDetails) throws -> JSON { + let output = [ + "stack_name": try Serialization._StringSerializer.serialize(value.stackName), + "stack_type": try NullableSerializer(TeamLog.DashStackTypeSerializer()).serialize(value.stackType), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DomainInvitesSetInviteNewUserPrefToNoDetails { + public func deserialize(_ json: JSON) throws -> DashUnarchivedStackDetails { switch json { - case .dictionary: - return DomainInvitesSetInviteNewUserPrefToNoDetails() - default: - throw JSONSerializerError.deserializeError(type: DomainInvitesSetInviteNewUserPrefToNoDetails.self, json: json) + case .dictionary(let dict): + let stackName = try Serialization._StringSerializer.deserialize(dict["stack_name"] ?? .null) + let stackType = try NullableSerializer(TeamLog.DashStackTypeSerializer()).deserialize(dict["stack_type"] ?? .null) + return DashUnarchivedStackDetails(stackName: stackName, stackType: stackType) + default: + throw JSONSerializerError.deserializeError(type: DashUnarchivedStackDetails.self, json: json) } } } - /// The DomainInvitesSetInviteNewUserPrefToNoType struct - public class DomainInvitesSetInviteNewUserPrefToNoType: CustomStringConvertible, JSONRepresentable { + /// The DashUnarchivedStackType struct + public class DashUnarchivedStackType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -9135,72 +9597,83 @@ public class TeamLog { } func json() throws -> JSON { - try DomainInvitesSetInviteNewUserPrefToNoTypeSerializer().serialize(self) + try DashUnarchivedStackTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DomainInvitesSetInviteNewUserPrefToNoTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashUnarchivedStackTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for DomainInvitesSetInviteNewUserPrefToNoType: \(error)" + return "Failed to generate description for DashUnarchivedStackType: \(error)" } } } - - public class DomainInvitesSetInviteNewUserPrefToNoTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DomainInvitesSetInviteNewUserPrefToNoType) throws -> JSON { + public class DashUnarchivedStackTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashUnarchivedStackType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DomainInvitesSetInviteNewUserPrefToNoType { + public func deserialize(_ json: JSON) throws -> DashUnarchivedStackType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return DomainInvitesSetInviteNewUserPrefToNoType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: DomainInvitesSetInviteNewUserPrefToNoType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DashUnarchivedStackType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DashUnarchivedStackType.self, json: json) } } } - /// Enabled "Automatically invite new users". - public class DomainInvitesSetInviteNewUserPrefToYesDetails: CustomStringConvertible, JSONRepresentable { + /// Member viewed a company stack. + public class DashViewedCompanyStackDetails: CustomStringConvertible, JSONRepresentable { + /// The name of the stack. + public let stackName: String + /// The type of stack backend. + public let stackType: TeamLog.DashStackType? + public init(stackName: String, stackType: TeamLog.DashStackType? = nil) { + stringValidator()(stackName) + self.stackName = stackName + self.stackType = stackType + } + func json() throws -> JSON { - try DomainInvitesSetInviteNewUserPrefToYesDetailsSerializer().serialize(self) + try DashViewedCompanyStackDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DomainInvitesSetInviteNewUserPrefToYesDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashViewedCompanyStackDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for DomainInvitesSetInviteNewUserPrefToYesDetails: \(error)" + return "Failed to generate description for DashViewedCompanyStackDetails: \(error)" } } } - - public class DomainInvitesSetInviteNewUserPrefToYesDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DomainInvitesSetInviteNewUserPrefToYesDetails) throws -> JSON { - let output = [String: JSON]() + public class DashViewedCompanyStackDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashViewedCompanyStackDetails) throws -> JSON { + let output = [ + "stack_name": try Serialization._StringSerializer.serialize(value.stackName), + "stack_type": try NullableSerializer(TeamLog.DashStackTypeSerializer()).serialize(value.stackType), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DomainInvitesSetInviteNewUserPrefToYesDetails { + public func deserialize(_ json: JSON) throws -> DashViewedCompanyStackDetails { switch json { - case .dictionary: - return DomainInvitesSetInviteNewUserPrefToYesDetails() - default: - throw JSONSerializerError.deserializeError(type: DomainInvitesSetInviteNewUserPrefToYesDetails.self, json: json) + case .dictionary(let dict): + let stackName = try Serialization._StringSerializer.deserialize(dict["stack_name"] ?? .null) + let stackType = try NullableSerializer(TeamLog.DashStackTypeSerializer()).deserialize(dict["stack_type"] ?? .null) + return DashViewedCompanyStackDetails(stackName: stackName, stackType: stackType) + default: + throw JSONSerializerError.deserializeError(type: DashViewedCompanyStackDetails.self, json: json) } } } - /// The DomainInvitesSetInviteNewUserPrefToYesType struct - public class DomainInvitesSetInviteNewUserPrefToYesType: CustomStringConvertible, JSONRepresentable { + /// The DashViewedCompanyStackType struct + public class DashViewedCompanyStackType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -9209,88 +9682,69 @@ public class TeamLog { } func json() throws -> JSON { - try DomainInvitesSetInviteNewUserPrefToYesTypeSerializer().serialize(self) + try DashViewedCompanyStackTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DomainInvitesSetInviteNewUserPrefToYesTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashViewedCompanyStackTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for DomainInvitesSetInviteNewUserPrefToYesType: \(error)" + return "Failed to generate description for DashViewedCompanyStackType: \(error)" } } } - - public class DomainInvitesSetInviteNewUserPrefToYesTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DomainInvitesSetInviteNewUserPrefToYesType) throws -> JSON { + public class DashViewedCompanyStackTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashViewedCompanyStackType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DomainInvitesSetInviteNewUserPrefToYesType { + public func deserialize(_ json: JSON) throws -> DashViewedCompanyStackType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return DomainInvitesSetInviteNewUserPrefToYesType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: DomainInvitesSetInviteNewUserPrefToYesType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DashViewedCompanyStackType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DashViewedCompanyStackType.self, json: json) } } } - /// Failed to verify team domain. - public class DomainVerificationAddDomainFailDetails: CustomStringConvertible, JSONRepresentable { - /// Domain name. - public let domainName: String - /// Domain name verification method. Might be missing due to historical data gap. - public let verificationMethod: String? - public init(domainName: String, verificationMethod: String? = nil) { - stringValidator()(domainName) - self.domainName = domainName - nullableValidator(stringValidator())(verificationMethod) - self.verificationMethod = verificationMethod - } + /// Admin viewed the external AI activity report. + public class DashViewedExternalAiActivityReportDetails: CustomStringConvertible, JSONRepresentable { func json() throws -> JSON { - try DomainVerificationAddDomainFailDetailsSerializer().serialize(self) + try DashViewedExternalAiActivityReportDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DomainVerificationAddDomainFailDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashViewedExternalAiActivityReportDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for DomainVerificationAddDomainFailDetails: \(error)" + return "Failed to generate description for DashViewedExternalAiActivityReportDetails: \(error)" } } } - - public class DomainVerificationAddDomainFailDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DomainVerificationAddDomainFailDetails) throws -> JSON { - let output = [ - "domain_name": try Serialization._StringSerializer.serialize(value.domainName), - "verification_method": try NullableSerializer(Serialization._StringSerializer).serialize(value.verificationMethod), - ] + public class DashViewedExternalAiActivityReportDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashViewedExternalAiActivityReportDetails) throws -> JSON { + let output = [String: JSON]() return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DomainVerificationAddDomainFailDetails { + public func deserialize(_ json: JSON) throws -> DashViewedExternalAiActivityReportDetails { switch json { - case .dictionary(let dict): - let domainName = try Serialization._StringSerializer.deserialize(dict["domain_name"] ?? .null) - let verificationMethod = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["verification_method"] ?? .null) - return DomainVerificationAddDomainFailDetails(domainName: domainName, verificationMethod: verificationMethod) - default: - throw JSONSerializerError.deserializeError(type: DomainVerificationAddDomainFailDetails.self, json: json) + case .dictionary(_): + return DashViewedExternalAiActivityReportDetails() + default: + throw JSONSerializerError.deserializeError(type: DashViewedExternalAiActivityReportDetails.self, json: json) } } } - /// The DomainVerificationAddDomainFailType struct - public class DomainVerificationAddDomainFailType: CustomStringConvertible, JSONRepresentable { + /// The DashViewedExternalAiActivityReportType struct + public class DashViewedExternalAiActivityReportType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -9299,88 +9753,82 @@ public class TeamLog { } func json() throws -> JSON { - try DomainVerificationAddDomainFailTypeSerializer().serialize(self) + try DashViewedExternalAiActivityReportTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DomainVerificationAddDomainFailTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DashViewedExternalAiActivityReportTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for DomainVerificationAddDomainFailType: \(error)" + return "Failed to generate description for DashViewedExternalAiActivityReportType: \(error)" } } } - - public class DomainVerificationAddDomainFailTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DomainVerificationAddDomainFailType) throws -> JSON { + public class DashViewedExternalAiActivityReportTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DashViewedExternalAiActivityReportType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DomainVerificationAddDomainFailType { + public func deserialize(_ json: JSON) throws -> DashViewedExternalAiActivityReportType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return DomainVerificationAddDomainFailType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: DomainVerificationAddDomainFailType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DashViewedExternalAiActivityReportType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DashViewedExternalAiActivityReportType.self, json: json) } } } - /// Verified team domain. - public class DomainVerificationAddDomainSuccessDetails: CustomStringConvertible, JSONRepresentable { - /// Domain names. - public let domainNames: [String] - /// Domain name verification method. Might be missing due to historical data gap. - public let verificationMethod: String? - public init(domainNames: [String], verificationMethod: String? = nil) { - arrayValidator(itemValidator: stringValidator())(domainNames) - self.domainNames = domainNames - nullableValidator(stringValidator())(verificationMethod) - self.verificationMethod = verificationMethod + /// Set restrictions on data center locations where team data resides. + public class DataPlacementRestrictionChangePolicyDetails: CustomStringConvertible, JSONRepresentable { + /// Previous placement restriction. + public let previousValue: TeamLog.PlacementRestriction + /// New placement restriction. + public let newValue: TeamLog.PlacementRestriction + public init(previousValue: TeamLog.PlacementRestriction, newValue: TeamLog.PlacementRestriction) { + self.previousValue = previousValue + self.newValue = newValue } func json() throws -> JSON { - try DomainVerificationAddDomainSuccessDetailsSerializer().serialize(self) + try DataPlacementRestrictionChangePolicyDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DomainVerificationAddDomainSuccessDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DataPlacementRestrictionChangePolicyDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for DomainVerificationAddDomainSuccessDetails: \(error)" + return "Failed to generate description for DataPlacementRestrictionChangePolicyDetails: \(error)" } } } - - public class DomainVerificationAddDomainSuccessDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DomainVerificationAddDomainSuccessDetails) throws -> JSON { + public class DataPlacementRestrictionChangePolicyDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DataPlacementRestrictionChangePolicyDetails) throws -> JSON { let output = [ - "domain_names": try ArraySerializer(Serialization._StringSerializer).serialize(value.domainNames), - "verification_method": try NullableSerializer(Serialization._StringSerializer).serialize(value.verificationMethod), + "previous_value": try TeamLog.PlacementRestrictionSerializer().serialize(value.previousValue), + "new_value": try TeamLog.PlacementRestrictionSerializer().serialize(value.newValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DomainVerificationAddDomainSuccessDetails { + public func deserialize(_ json: JSON) throws -> DataPlacementRestrictionChangePolicyDetails { switch json { - case .dictionary(let dict): - let domainNames = try ArraySerializer(Serialization._StringSerializer).deserialize(dict["domain_names"] ?? .null) - let verificationMethod = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["verification_method"] ?? .null) - return DomainVerificationAddDomainSuccessDetails(domainNames: domainNames, verificationMethod: verificationMethod) - default: - throw JSONSerializerError.deserializeError(type: DomainVerificationAddDomainSuccessDetails.self, json: json) + case .dictionary(let dict): + let previousValue = try TeamLog.PlacementRestrictionSerializer().deserialize(dict["previous_value"] ?? .null) + let newValue = try TeamLog.PlacementRestrictionSerializer().deserialize(dict["new_value"] ?? .null) + return DataPlacementRestrictionChangePolicyDetails(previousValue: previousValue, newValue: newValue) + default: + throw JSONSerializerError.deserializeError(type: DataPlacementRestrictionChangePolicyDetails.self, json: json) } } } - /// The DomainVerificationAddDomainSuccessType struct - public class DomainVerificationAddDomainSuccessType: CustomStringConvertible, JSONRepresentable { + /// The DataPlacementRestrictionChangePolicyType struct + public class DataPlacementRestrictionChangePolicyType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -9389,82 +9837,77 @@ public class TeamLog { } func json() throws -> JSON { - try DomainVerificationAddDomainSuccessTypeSerializer().serialize(self) + try DataPlacementRestrictionChangePolicyTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DomainVerificationAddDomainSuccessTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DataPlacementRestrictionChangePolicyTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for DomainVerificationAddDomainSuccessType: \(error)" + return "Failed to generate description for DataPlacementRestrictionChangePolicyType: \(error)" } } } - - public class DomainVerificationAddDomainSuccessTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DomainVerificationAddDomainSuccessType) throws -> JSON { + public class DataPlacementRestrictionChangePolicyTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DataPlacementRestrictionChangePolicyType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DomainVerificationAddDomainSuccessType { + public func deserialize(_ json: JSON) throws -> DataPlacementRestrictionChangePolicyType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return DomainVerificationAddDomainSuccessType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: DomainVerificationAddDomainSuccessType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DataPlacementRestrictionChangePolicyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DataPlacementRestrictionChangePolicyType.self, json: json) } } } - /// Removed domain from list of verified team domains. - public class DomainVerificationRemoveDomainDetails: CustomStringConvertible, JSONRepresentable { - /// Domain names. - public let domainNames: [String] - public init(domainNames: [String]) { - arrayValidator(itemValidator: stringValidator())(domainNames) - self.domainNames = domainNames + /// Completed restrictions on data center locations where team data resides. + public class DataPlacementRestrictionSatisfyPolicyDetails: CustomStringConvertible, JSONRepresentable { + /// Placement restriction. + public let placementRestriction: TeamLog.PlacementRestriction + public init(placementRestriction: TeamLog.PlacementRestriction) { + self.placementRestriction = placementRestriction } func json() throws -> JSON { - try DomainVerificationRemoveDomainDetailsSerializer().serialize(self) + try DataPlacementRestrictionSatisfyPolicyDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DomainVerificationRemoveDomainDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DataPlacementRestrictionSatisfyPolicyDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for DomainVerificationRemoveDomainDetails: \(error)" + return "Failed to generate description for DataPlacementRestrictionSatisfyPolicyDetails: \(error)" } } } - - public class DomainVerificationRemoveDomainDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DomainVerificationRemoveDomainDetails) throws -> JSON { + public class DataPlacementRestrictionSatisfyPolicyDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DataPlacementRestrictionSatisfyPolicyDetails) throws -> JSON { let output = [ - "domain_names": try ArraySerializer(Serialization._StringSerializer).serialize(value.domainNames), + "placement_restriction": try TeamLog.PlacementRestrictionSerializer().serialize(value.placementRestriction), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DomainVerificationRemoveDomainDetails { + public func deserialize(_ json: JSON) throws -> DataPlacementRestrictionSatisfyPolicyDetails { switch json { - case .dictionary(let dict): - let domainNames = try ArraySerializer(Serialization._StringSerializer).deserialize(dict["domain_names"] ?? .null) - return DomainVerificationRemoveDomainDetails(domainNames: domainNames) - default: - throw JSONSerializerError.deserializeError(type: DomainVerificationRemoveDomainDetails.self, json: json) + case .dictionary(let dict): + let placementRestriction = try TeamLog.PlacementRestrictionSerializer().deserialize(dict["placement_restriction"] ?? .null) + return DataPlacementRestrictionSatisfyPolicyDetails(placementRestriction: placementRestriction) + default: + throw JSONSerializerError.deserializeError(type: DataPlacementRestrictionSatisfyPolicyDetails.self, json: json) } } } - /// The DomainVerificationRemoveDomainType struct - public class DomainVerificationRemoveDomainType: CustomStringConvertible, JSONRepresentable { + /// The DataPlacementRestrictionSatisfyPolicyType struct + public class DataPlacementRestrictionSatisfyPolicyType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -9473,143 +9916,69 @@ public class TeamLog { } func json() throws -> JSON { - try DomainVerificationRemoveDomainTypeSerializer().serialize(self) + try DataPlacementRestrictionSatisfyPolicyTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DomainVerificationRemoveDomainTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DataPlacementRestrictionSatisfyPolicyTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for DomainVerificationRemoveDomainType: \(error)" + return "Failed to generate description for DataPlacementRestrictionSatisfyPolicyType: \(error)" } } } - - public class DomainVerificationRemoveDomainTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DomainVerificationRemoveDomainType) throws -> JSON { + public class DataPlacementRestrictionSatisfyPolicyTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DataPlacementRestrictionSatisfyPolicyType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DomainVerificationRemoveDomainType { + public func deserialize(_ json: JSON) throws -> DataPlacementRestrictionSatisfyPolicyType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return DomainVerificationRemoveDomainType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: DomainVerificationRemoveDomainType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DataPlacementRestrictionSatisfyPolicyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DataPlacementRestrictionSatisfyPolicyType.self, json: json) } } } - /// Shared content downloads policy - public enum DownloadPolicyType: CustomStringConvertible, JSONRepresentable { - /// An unspecified error. - case allow - /// An unspecified error. - case disallow - /// An unspecified error. - case other + /// Requested data residency migration for team data. + public class DataResidencyMigrationRequestSuccessfulDetails: CustomStringConvertible, JSONRepresentable { func json() throws -> JSON { - try DownloadPolicyTypeSerializer().serialize(self) + try DataResidencyMigrationRequestSuccessfulDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DownloadPolicyTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DataResidencyMigrationRequestSuccessfulDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for DownloadPolicyType: \(error)" + return "Failed to generate description for DataResidencyMigrationRequestSuccessfulDetails: \(error)" } } } - - public class DownloadPolicyTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DownloadPolicyType) throws -> JSON { - switch value { - case .allow: - var d = [String: JSON]() - d[".tag"] = .str("allow") - return .dictionary(d) - case .disallow: - var d = [String: JSON]() - d[".tag"] = .str("disallow") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) - } - } - - public func deserialize(_ json: JSON) throws -> DownloadPolicyType { - switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "allow": - return DownloadPolicyType.allow - case "disallow": - return DownloadPolicyType.disallow - case "other": - return DownloadPolicyType.other - default: - return DownloadPolicyType.other - } - default: - throw JSONSerializerError.deserializeError(type: DownloadPolicyType.self, json: json) - } - } - } - - /// Exported passwords. - public class DropboxPasswordsExportedDetails: CustomStringConvertible, JSONRepresentable { - /// The platform the device runs export. - public let platform: String - public init(platform: String) { - stringValidator()(platform) - self.platform = platform - } - - func json() throws -> JSON { - try DropboxPasswordsExportedDetailsSerializer().serialize(self) - } - - public var description: String { - do { - return "\(SerializeUtil.prepareJSONForSerialization(try DropboxPasswordsExportedDetailsSerializer().serialize(self)))" - } catch { - return "Failed to generate description for DropboxPasswordsExportedDetails: \(error)" - } - } - } - - public class DropboxPasswordsExportedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DropboxPasswordsExportedDetails) throws -> JSON { - let output = [ - "platform": try Serialization._StringSerializer.serialize(value.platform), - ] + public class DataResidencyMigrationRequestSuccessfulDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DataResidencyMigrationRequestSuccessfulDetails) throws -> JSON { + let output = [String: JSON]() return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DropboxPasswordsExportedDetails { + public func deserialize(_ json: JSON) throws -> DataResidencyMigrationRequestSuccessfulDetails { switch json { - case .dictionary(let dict): - let platform = try Serialization._StringSerializer.deserialize(dict["platform"] ?? .null) - return DropboxPasswordsExportedDetails(platform: platform) - default: - throw JSONSerializerError.deserializeError(type: DropboxPasswordsExportedDetails.self, json: json) + case .dictionary(_): + return DataResidencyMigrationRequestSuccessfulDetails() + default: + throw JSONSerializerError.deserializeError(type: DataResidencyMigrationRequestSuccessfulDetails.self, json: json) } } } - /// The DropboxPasswordsExportedType struct - public class DropboxPasswordsExportedType: CustomStringConvertible, JSONRepresentable { + /// The DataResidencyMigrationRequestSuccessfulType struct + public class DataResidencyMigrationRequestSuccessfulType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -9618,87 +9987,69 @@ public class TeamLog { } func json() throws -> JSON { - try DropboxPasswordsExportedTypeSerializer().serialize(self) + try DataResidencyMigrationRequestSuccessfulTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DropboxPasswordsExportedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DataResidencyMigrationRequestSuccessfulTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for DropboxPasswordsExportedType: \(error)" + return "Failed to generate description for DataResidencyMigrationRequestSuccessfulType: \(error)" } } } - - public class DropboxPasswordsExportedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DropboxPasswordsExportedType) throws -> JSON { + public class DataResidencyMigrationRequestSuccessfulTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DataResidencyMigrationRequestSuccessfulType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DropboxPasswordsExportedType { + public func deserialize(_ json: JSON) throws -> DataResidencyMigrationRequestSuccessfulType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return DropboxPasswordsExportedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: DropboxPasswordsExportedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DataResidencyMigrationRequestSuccessfulType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DataResidencyMigrationRequestSuccessfulType.self, json: json) } } } - /// Enrolled new Dropbox Passwords device. - public class DropboxPasswordsNewDeviceEnrolledDetails: CustomStringConvertible, JSONRepresentable { - /// Whether it's a first device enrolled. - public let isFirstDevice: Bool - /// The platform the device is enrolled. - public let platform: String - public init(isFirstDevice: Bool, platform: String) { - self.isFirstDevice = isFirstDevice - stringValidator()(platform) - self.platform = platform - } + /// Request for data residency migration for team data has failed. + public class DataResidencyMigrationRequestUnsuccessfulDetails: CustomStringConvertible, JSONRepresentable { func json() throws -> JSON { - try DropboxPasswordsNewDeviceEnrolledDetailsSerializer().serialize(self) + try DataResidencyMigrationRequestUnsuccessfulDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DropboxPasswordsNewDeviceEnrolledDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DataResidencyMigrationRequestUnsuccessfulDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for DropboxPasswordsNewDeviceEnrolledDetails: \(error)" + return "Failed to generate description for DataResidencyMigrationRequestUnsuccessfulDetails: \(error)" } } } - - public class DropboxPasswordsNewDeviceEnrolledDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DropboxPasswordsNewDeviceEnrolledDetails) throws -> JSON { - let output = [ - "is_first_device": try Serialization._BoolSerializer.serialize(value.isFirstDevice), - "platform": try Serialization._StringSerializer.serialize(value.platform), - ] + public class DataResidencyMigrationRequestUnsuccessfulDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DataResidencyMigrationRequestUnsuccessfulDetails) throws -> JSON { + let output = [String: JSON]() return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DropboxPasswordsNewDeviceEnrolledDetails { + public func deserialize(_ json: JSON) throws -> DataResidencyMigrationRequestUnsuccessfulDetails { switch json { - case .dictionary(let dict): - let isFirstDevice = try Serialization._BoolSerializer.deserialize(dict["is_first_device"] ?? .null) - let platform = try Serialization._StringSerializer.deserialize(dict["platform"] ?? .null) - return DropboxPasswordsNewDeviceEnrolledDetails(isFirstDevice: isFirstDevice, platform: platform) - default: - throw JSONSerializerError.deserializeError(type: DropboxPasswordsNewDeviceEnrolledDetails.self, json: json) + case .dictionary(_): + return DataResidencyMigrationRequestUnsuccessfulDetails() + default: + throw JSONSerializerError.deserializeError(type: DataResidencyMigrationRequestUnsuccessfulDetails.self, json: json) } } } - /// The DropboxPasswordsNewDeviceEnrolledType struct - public class DropboxPasswordsNewDeviceEnrolledType: CustomStringConvertible, JSONRepresentable { + /// The DataResidencyMigrationRequestUnsuccessfulType struct + public class DataResidencyMigrationRequestUnsuccessfulType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -9707,155 +10058,185 @@ public class TeamLog { } func json() throws -> JSON { - try DropboxPasswordsNewDeviceEnrolledTypeSerializer().serialize(self) + try DataResidencyMigrationRequestUnsuccessfulTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DropboxPasswordsNewDeviceEnrolledTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DataResidencyMigrationRequestUnsuccessfulTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for DropboxPasswordsNewDeviceEnrolledType: \(error)" + return "Failed to generate description for DataResidencyMigrationRequestUnsuccessfulType: \(error)" } } } - - public class DropboxPasswordsNewDeviceEnrolledTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DropboxPasswordsNewDeviceEnrolledType) throws -> JSON { + public class DataResidencyMigrationRequestUnsuccessfulTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DataResidencyMigrationRequestUnsuccessfulType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DropboxPasswordsNewDeviceEnrolledType { + public func deserialize(_ json: JSON) throws -> DataResidencyMigrationRequestUnsuccessfulType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return DropboxPasswordsNewDeviceEnrolledType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: DropboxPasswordsNewDeviceEnrolledType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DataResidencyMigrationRequestUnsuccessfulType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DataResidencyMigrationRequestUnsuccessfulType.self, json: json) } } } - /// Policy for deciding whether team users can use Dropbox Passwords - public enum DropboxPasswordsPolicy: CustomStringConvertible, JSONRepresentable { + /// Policy for the default number of days until an externally shared link expires + public enum DefaultLinkExpirationDaysPolicy: CustomStringConvertible, JSONRepresentable { /// An unspecified error. - case default_ + case day1 /// An unspecified error. - case disabled + case day180 /// An unspecified error. - case enabled + case day3 + /// An unspecified error. + case day30 + /// An unspecified error. + case day7 + /// An unspecified error. + case day90 + /// An unspecified error. + case none + /// An unspecified error. + case year1 /// An unspecified error. case other func json() throws -> JSON { - try DropboxPasswordsPolicySerializer().serialize(self) + try DefaultLinkExpirationDaysPolicySerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DropboxPasswordsPolicySerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DefaultLinkExpirationDaysPolicySerializer().serialize(self)))" } catch { - return "Failed to generate description for DropboxPasswordsPolicy: \(error)" + return "Failed to generate description for DefaultLinkExpirationDaysPolicy: \(error)" } } } - - public class DropboxPasswordsPolicySerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DropboxPasswordsPolicy) throws -> JSON { + public class DefaultLinkExpirationDaysPolicySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DefaultLinkExpirationDaysPolicy) throws -> JSON { switch value { - case .default_: - var d = [String: JSON]() - d[".tag"] = .str("default") - return .dictionary(d) - case .disabled: - var d = [String: JSON]() - d[".tag"] = .str("disabled") - return .dictionary(d) - case .enabled: - var d = [String: JSON]() - d[".tag"] = .str("enabled") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) + case .day1: + var d = [String: JSON]() + d[".tag"] = .str("day_1") + return .dictionary(d) + case .day180: + var d = [String: JSON]() + d[".tag"] = .str("day_180") + return .dictionary(d) + case .day3: + var d = [String: JSON]() + d[".tag"] = .str("day_3") + return .dictionary(d) + case .day30: + var d = [String: JSON]() + d[".tag"] = .str("day_30") + return .dictionary(d) + case .day7: + var d = [String: JSON]() + d[".tag"] = .str("day_7") + return .dictionary(d) + case .day90: + var d = [String: JSON]() + d[".tag"] = .str("day_90") + return .dictionary(d) + case .none: + var d = [String: JSON]() + d[".tag"] = .str("none") + return .dictionary(d) + case .year1: + var d = [String: JSON]() + d[".tag"] = .str("year_1") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) } } - - public func deserialize(_ json: JSON) throws -> DropboxPasswordsPolicy { + public func deserialize(_ json: JSON) throws -> DefaultLinkExpirationDaysPolicy { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "default": - return DropboxPasswordsPolicy.default_ - case "disabled": - return DropboxPasswordsPolicy.disabled - case "enabled": - return DropboxPasswordsPolicy.enabled - case "other": - return DropboxPasswordsPolicy.other + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "day_1": + return DefaultLinkExpirationDaysPolicy.day1 + case "day_180": + return DefaultLinkExpirationDaysPolicy.day180 + case "day_3": + return DefaultLinkExpirationDaysPolicy.day3 + case "day_30": + return DefaultLinkExpirationDaysPolicy.day30 + case "day_7": + return DefaultLinkExpirationDaysPolicy.day7 + case "day_90": + return DefaultLinkExpirationDaysPolicy.day90 + case "none": + return DefaultLinkExpirationDaysPolicy.none + case "year_1": + return DefaultLinkExpirationDaysPolicy.year1 + case "other": + return DefaultLinkExpirationDaysPolicy.other + default: + return DefaultLinkExpirationDaysPolicy.other + } default: - return DropboxPasswordsPolicy.other - } - default: - throw JSONSerializerError.deserializeError(type: DropboxPasswordsPolicy.self, json: json) + throw JSONSerializerError.deserializeError(type: DefaultLinkExpirationDaysPolicy.self, json: json) } } } - /// Changed Dropbox Passwords policy for team. - public class DropboxPasswordsPolicyChangedDetails: CustomStringConvertible, JSONRepresentable { - /// To. - public let newValue: TeamLog.DropboxPasswordsPolicy - /// From. - public let previousValue: TeamLog.DropboxPasswordsPolicy - public init(newValue: TeamLog.DropboxPasswordsPolicy, previousValue: TeamLog.DropboxPasswordsPolicy) { - self.newValue = newValue - self.previousValue = previousValue + /// Deleted team invite link. + public class DeleteTeamInviteLinkDetails: CustomStringConvertible, JSONRepresentable { + /// The invite link url that was deleted. + public let linkUrl: String + public init(linkUrl: String) { + stringValidator()(linkUrl) + self.linkUrl = linkUrl } func json() throws -> JSON { - try DropboxPasswordsPolicyChangedDetailsSerializer().serialize(self) + try DeleteTeamInviteLinkDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DropboxPasswordsPolicyChangedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DeleteTeamInviteLinkDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for DropboxPasswordsPolicyChangedDetails: \(error)" + return "Failed to generate description for DeleteTeamInviteLinkDetails: \(error)" } } } - - public class DropboxPasswordsPolicyChangedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DropboxPasswordsPolicyChangedDetails) throws -> JSON { + public class DeleteTeamInviteLinkDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DeleteTeamInviteLinkDetails) throws -> JSON { let output = [ - "new_value": try TeamLog.DropboxPasswordsPolicySerializer().serialize(value.newValue), - "previous_value": try TeamLog.DropboxPasswordsPolicySerializer().serialize(value.previousValue), + "link_url": try Serialization._StringSerializer.serialize(value.linkUrl), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DropboxPasswordsPolicyChangedDetails { + public func deserialize(_ json: JSON) throws -> DeleteTeamInviteLinkDetails { switch json { - case .dictionary(let dict): - let newValue = try TeamLog.DropboxPasswordsPolicySerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try TeamLog.DropboxPasswordsPolicySerializer().deserialize(dict["previous_value"] ?? .null) - return DropboxPasswordsPolicyChangedDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: DropboxPasswordsPolicyChangedDetails.self, json: json) + case .dictionary(let dict): + let linkUrl = try Serialization._StringSerializer.deserialize(dict["link_url"] ?? .null) + return DeleteTeamInviteLinkDetails(linkUrl: linkUrl) + default: + throw JSONSerializerError.deserializeError(type: DeleteTeamInviteLinkDetails.self, json: json) } } } - /// The DropboxPasswordsPolicyChangedType struct - public class DropboxPasswordsPolicyChangedType: CustomStringConvertible, JSONRepresentable { + /// The DeleteTeamInviteLinkType struct + public class DeleteTeamInviteLinkType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -9864,308 +10245,326 @@ public class TeamLog { } func json() throws -> JSON { - try DropboxPasswordsPolicyChangedTypeSerializer().serialize(self) + try DeleteTeamInviteLinkTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DropboxPasswordsPolicyChangedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DeleteTeamInviteLinkTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for DropboxPasswordsPolicyChangedType: \(error)" + return "Failed to generate description for DeleteTeamInviteLinkType: \(error)" } } } - - public class DropboxPasswordsPolicyChangedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DropboxPasswordsPolicyChangedType) throws -> JSON { + public class DeleteTeamInviteLinkTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DeleteTeamInviteLinkType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DropboxPasswordsPolicyChangedType { + public func deserialize(_ json: JSON) throws -> DeleteTeamInviteLinkType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return DropboxPasswordsPolicyChangedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: DropboxPasswordsPolicyChangedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DeleteTeamInviteLinkType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DeleteTeamInviteLinkType.self, json: json) } } } - /// Represents a time duration: unit and amount - public class DurationLogInfo: CustomStringConvertible, JSONRepresentable { - /// Time unit. - public let unit: TeamLog.TimeUnit - /// Amount of time. - public let amount: UInt64 - public init(unit: TeamLog.TimeUnit, amount: UInt64) { - self.unit = unit - comparableValidator()(amount) - self.amount = amount + /// Device's session logged information. + public class DeviceSessionLogInfo: CustomStringConvertible, JSONRepresentable { + /// The IP address of the last activity from this session. + public let ipAddress: String? + /// The time this session was created. + public let created: Date? + /// The time of the last activity from this session. + public let updated: Date? + public init(ipAddress: String? = nil, created: Date? = nil, updated: Date? = nil) { + nullableValidator(stringValidator())(ipAddress) + self.ipAddress = ipAddress + self.created = created + self.updated = updated } func json() throws -> JSON { - try DurationLogInfoSerializer().serialize(self) + try DeviceSessionLogInfoSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try DurationLogInfoSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DeviceSessionLogInfoSerializer().serialize(self)))" } catch { - return "Failed to generate description for DurationLogInfo: \(error)" + return "Failed to generate description for DeviceSessionLogInfo: \(error)" } } } - - public class DurationLogInfoSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: DurationLogInfo) throws -> JSON { - let output = [ - "unit": try TeamLog.TimeUnitSerializer().serialize(value.unit), - "amount": try Serialization._UInt64Serializer.serialize(value.amount), + public class DeviceSessionLogInfoSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DeviceSessionLogInfo) throws -> JSON { + var output = [ + "ip_address": try NullableSerializer(Serialization._StringSerializer).serialize(value.ipAddress), + "created": try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).serialize(value.created), + "updated": try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).serialize(value.updated), ] + switch value { + case let desktopDeviceSession as TeamLog.DesktopDeviceSessionLogInfo: + for (k, v) in try Serialization.getFields(TeamLog.DesktopDeviceSessionLogInfoSerializer().serialize(desktopDeviceSession)) { + output[k] = v + } + output[".tag"] = .str("desktop_device_session") + case let legacyDeviceSession as TeamLog.LegacyDeviceSessionLogInfo: + for (k, v) in try Serialization.getFields(TeamLog.LegacyDeviceSessionLogInfoSerializer().serialize(legacyDeviceSession)) { + output[k] = v + } + output[".tag"] = .str("legacy_device_session") + case let mobileDeviceSession as TeamLog.MobileDeviceSessionLogInfo: + for (k, v) in try Serialization.getFields(TeamLog.MobileDeviceSessionLogInfoSerializer().serialize(mobileDeviceSession)) { + output[k] = v + } + output[".tag"] = .str("mobile_device_session") + case let webDeviceSession as TeamLog.WebDeviceSessionLogInfo: + for (k, v) in try Serialization.getFields(TeamLog.WebDeviceSessionLogInfoSerializer().serialize(webDeviceSession)) { + output[k] = v + } + output[".tag"] = .str("web_device_session") + default: + throw JSONSerializerError.unexpectedSubtype(type: DeviceSessionLogInfo.self, subtype: value) + } return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> DurationLogInfo { + public func deserialize(_ json: JSON) throws -> DeviceSessionLogInfo { switch json { - case .dictionary(let dict): - let unit = try TeamLog.TimeUnitSerializer().deserialize(dict["unit"] ?? .null) - let amount = try Serialization._UInt64Serializer.deserialize(dict["amount"] ?? .null) - return DurationLogInfo(unit: unit, amount: amount) - default: - throw JSONSerializerError.deserializeError(type: DurationLogInfo.self, json: json) + case .dictionary(let dict): + let tag = try Serialization.getTag(dict) + switch tag { + case "desktop_device_session": + return try TeamLog.DesktopDeviceSessionLogInfoSerializer().deserialize(json) + case "legacy_device_session": + return try TeamLog.LegacyDeviceSessionLogInfoSerializer().deserialize(json) + case "mobile_device_session": + return try TeamLog.MobileDeviceSessionLogInfoSerializer().deserialize(json) + case "web_device_session": + return try TeamLog.WebDeviceSessionLogInfoSerializer().deserialize(json) + default: + let ipAddress = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["ip_address"] ?? .null) + let created = try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).deserialize(dict["created"] ?? .null) + let updated = try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).deserialize(dict["updated"] ?? .null) + return DeviceSessionLogInfo(ipAddress: ipAddress, created: created, updated: updated) + } + default: + throw JSONSerializerError.deserializeError(type: DeviceSessionLogInfo.self, json: json) } } } - /// Policy for deciding whether a team can use Email to Dropbox feature - public enum EmailIngestPolicy: CustomStringConvertible, JSONRepresentable { - /// An unspecified error. - case disabled - /// An unspecified error. - case enabled - /// An unspecified error. - case other - - func json() throws -> JSON { - try EmailIngestPolicySerializer().serialize(self) + /// Information about linked Dropbox desktop client sessions + public class DesktopDeviceSessionLogInfo: TeamLog.DeviceSessionLogInfo { + /// Desktop session unique id. + public let sessionInfo: TeamLog.DesktopSessionLogInfo? + /// Name of the hosting desktop. + public let hostName: String + /// The Dropbox desktop client type. + public let clientType: Team.DesktopPlatform + /// The Dropbox client version. + public let clientVersion: String? + /// Information on the hosting platform. + public let platform: String + /// Whether itu2019s possible to delete all of the account files upon unlinking. + public let isDeleteOnUnlinkSupported: Bool + public init(hostName: String, clientType: Team.DesktopPlatform, platform: String, isDeleteOnUnlinkSupported: Bool, ipAddress: String? = nil, created: Date? = nil, updated: Date? = nil, sessionInfo: TeamLog.DesktopSessionLogInfo? = nil, clientVersion: String? = nil) { + self.sessionInfo = sessionInfo + stringValidator()(hostName) + self.hostName = hostName + self.clientType = clientType + nullableValidator(stringValidator())(clientVersion) + self.clientVersion = clientVersion + stringValidator()(platform) + self.platform = platform + self.isDeleteOnUnlinkSupported = isDeleteOnUnlinkSupported + super.init(ipAddress: ipAddress, created: created, updated: updated) } - public var description: String { + + public override var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try EmailIngestPolicySerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DesktopDeviceSessionLogInfoSerializer().serialize(self)))" } catch { - return "Failed to generate description for EmailIngestPolicy: \(error)" + return "Failed to generate description for DesktopDeviceSessionLogInfo: \(error)" } } } - - public class EmailIngestPolicySerializer: JSONSerializer { - public init() {} - public func serialize(_ value: EmailIngestPolicy) throws -> JSON { - switch value { - case .disabled: - var d = [String: JSON]() - d[".tag"] = .str("disabled") - return .dictionary(d) - case .enabled: - var d = [String: JSON]() - d[".tag"] = .str("enabled") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) - } + public class DesktopDeviceSessionLogInfoSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DesktopDeviceSessionLogInfo) throws -> JSON { + let output = [ + "host_name": try Serialization._StringSerializer.serialize(value.hostName), + "client_type": try Team.DesktopPlatformSerializer().serialize(value.clientType), + "platform": try Serialization._StringSerializer.serialize(value.platform), + "is_delete_on_unlink_supported": try Serialization._BoolSerializer.serialize(value.isDeleteOnUnlinkSupported), + "ip_address": try NullableSerializer(Serialization._StringSerializer).serialize(value.ipAddress), + "created": try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).serialize(value.created), + "updated": try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).serialize(value.updated), + "session_info": try NullableSerializer(TeamLog.DesktopSessionLogInfoSerializer()).serialize(value.sessionInfo), + "client_version": try NullableSerializer(Serialization._StringSerializer).serialize(value.clientVersion), + ] + return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> EmailIngestPolicy { + public func deserialize(_ json: JSON) throws -> DesktopDeviceSessionLogInfo { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "disabled": - return EmailIngestPolicy.disabled - case "enabled": - return EmailIngestPolicy.enabled - case "other": - return EmailIngestPolicy.other + case .dictionary(let dict): + let hostName = try Serialization._StringSerializer.deserialize(dict["host_name"] ?? .null) + let clientType = try Team.DesktopPlatformSerializer().deserialize(dict["client_type"] ?? .null) + let platform = try Serialization._StringSerializer.deserialize(dict["platform"] ?? .null) + let isDeleteOnUnlinkSupported = try Serialization._BoolSerializer.deserialize(dict["is_delete_on_unlink_supported"] ?? .null) + let ipAddress = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["ip_address"] ?? .null) + let created = try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).deserialize(dict["created"] ?? .null) + let updated = try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).deserialize(dict["updated"] ?? .null) + let sessionInfo = try NullableSerializer(TeamLog.DesktopSessionLogInfoSerializer()).deserialize(dict["session_info"] ?? .null) + let clientVersion = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["client_version"] ?? .null) + return DesktopDeviceSessionLogInfo(hostName: hostName, clientType: clientType, platform: platform, isDeleteOnUnlinkSupported: isDeleteOnUnlinkSupported, ipAddress: ipAddress, created: created, updated: updated, sessionInfo: sessionInfo, clientVersion: clientVersion) default: - return EmailIngestPolicy.other - } - default: - throw JSONSerializerError.deserializeError(type: EmailIngestPolicy.self, json: json) + throw JSONSerializerError.deserializeError(type: DesktopDeviceSessionLogInfo.self, json: json) } } } - /// Changed email to Dropbox policy for team. - public class EmailIngestPolicyChangedDetails: CustomStringConvertible, JSONRepresentable { - /// To. - public let newValue: TeamLog.EmailIngestPolicy - /// From. - public let previousValue: TeamLog.EmailIngestPolicy - public init(newValue: TeamLog.EmailIngestPolicy, previousValue: TeamLog.EmailIngestPolicy) { - self.newValue = newValue - self.previousValue = previousValue + /// Session's logged information. + public class SessionLogInfo: CustomStringConvertible, JSONRepresentable { + /// Session ID. + public let sessionId: String? + public init(sessionId: String? = nil) { + nullableValidator(stringValidator())(sessionId) + self.sessionId = sessionId } func json() throws -> JSON { - try EmailIngestPolicyChangedDetailsSerializer().serialize(self) + try SessionLogInfoSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try EmailIngestPolicyChangedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SessionLogInfoSerializer().serialize(self)))" } catch { - return "Failed to generate description for EmailIngestPolicyChangedDetails: \(error)" + return "Failed to generate description for SessionLogInfo: \(error)" } } } - - public class EmailIngestPolicyChangedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: EmailIngestPolicyChangedDetails) throws -> JSON { - let output = [ - "new_value": try TeamLog.EmailIngestPolicySerializer().serialize(value.newValue), - "previous_value": try TeamLog.EmailIngestPolicySerializer().serialize(value.previousValue), + public class SessionLogInfoSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SessionLogInfo) throws -> JSON { + var output = [ + "session_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.sessionId), ] + switch value { + case let desktop as TeamLog.DesktopSessionLogInfo: + for (k, v) in try Serialization.getFields(TeamLog.DesktopSessionLogInfoSerializer().serialize(desktop)) { + output[k] = v + } + output[".tag"] = .str("desktop") + case let mobile as TeamLog.MobileSessionLogInfo: + for (k, v) in try Serialization.getFields(TeamLog.MobileSessionLogInfoSerializer().serialize(mobile)) { + output[k] = v + } + output[".tag"] = .str("mobile") + case let web as TeamLog.WebSessionLogInfo: + for (k, v) in try Serialization.getFields(TeamLog.WebSessionLogInfoSerializer().serialize(web)) { + output[k] = v + } + output[".tag"] = .str("web") + default: + throw JSONSerializerError.unexpectedSubtype(type: SessionLogInfo.self, subtype: value) + } return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> EmailIngestPolicyChangedDetails { + public func deserialize(_ json: JSON) throws -> SessionLogInfo { switch json { - case .dictionary(let dict): - let newValue = try TeamLog.EmailIngestPolicySerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try TeamLog.EmailIngestPolicySerializer().deserialize(dict["previous_value"] ?? .null) - return EmailIngestPolicyChangedDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: EmailIngestPolicyChangedDetails.self, json: json) + case .dictionary(let dict): + let tag = try Serialization.getTag(dict) + switch tag { + case "desktop": + return try TeamLog.DesktopSessionLogInfoSerializer().deserialize(json) + case "mobile": + return try TeamLog.MobileSessionLogInfoSerializer().deserialize(json) + case "web": + return try TeamLog.WebSessionLogInfoSerializer().deserialize(json) + default: + let sessionId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["session_id"] ?? .null) + return SessionLogInfo(sessionId: sessionId) + } + default: + throw JSONSerializerError.deserializeError(type: SessionLogInfo.self, json: json) } } } - /// The EmailIngestPolicyChangedType struct - public class EmailIngestPolicyChangedType: CustomStringConvertible, JSONRepresentable { - /// (no description) - public let description_: String - public init(description_: String) { - stringValidator()(description_) - self.description_ = description_ - } + /// Desktop session. + public class DesktopSessionLogInfo: TeamLog.SessionLogInfo { - func json() throws -> JSON { - try EmailIngestPolicyChangedTypeSerializer().serialize(self) - } - public var description: String { + public override var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try EmailIngestPolicyChangedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DesktopSessionLogInfoSerializer().serialize(self)))" } catch { - return "Failed to generate description for EmailIngestPolicyChangedType: \(error)" + return "Failed to generate description for DesktopSessionLogInfo: \(error)" } } } - - public class EmailIngestPolicyChangedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: EmailIngestPolicyChangedType) throws -> JSON { + public class DesktopSessionLogInfoSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DesktopSessionLogInfo) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "session_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.sessionId), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> EmailIngestPolicyChangedType { + public func deserialize(_ json: JSON) throws -> DesktopSessionLogInfo { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return EmailIngestPolicyChangedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: EmailIngestPolicyChangedType.self, json: json) + case .dictionary(let dict): + let sessionId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["session_id"] ?? .null) + return DesktopSessionLogInfo(sessionId: sessionId) + default: + throw JSONSerializerError.deserializeError(type: DesktopSessionLogInfo.self, json: json) } } } - /// Received files via Email to Dropbox. - public class EmailIngestReceiveFileDetails: CustomStringConvertible, JSONRepresentable { - /// Inbox name. - public let inboxName: String - /// Submitted file names. - public let attachmentNames: [String] - /// Subject of the email. - public let subject: String? - /// The name as provided by the submitter. - public let fromName: String? - /// The email as provided by the submitter. - public let fromEmail: String? - public init(inboxName: String, attachmentNames: [String], subject: String? = nil, fromName: String? = nil, fromEmail: String? = nil) { - stringValidator()(inboxName) - self.inboxName = inboxName - arrayValidator(itemValidator: stringValidator())(attachmentNames) - self.attachmentNames = attachmentNames - nullableValidator(stringValidator())(subject) - self.subject = subject - nullableValidator(stringValidator())(fromName) - self.fromName = fromName - nullableValidator(stringValidator(maxLength: 255))(fromEmail) - self.fromEmail = fromEmail - } + /// Added members to device approvals exception list. + public class DeviceApprovalsAddExceptionDetails: CustomStringConvertible, JSONRepresentable { func json() throws -> JSON { - try EmailIngestReceiveFileDetailsSerializer().serialize(self) + try DeviceApprovalsAddExceptionDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try EmailIngestReceiveFileDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DeviceApprovalsAddExceptionDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for EmailIngestReceiveFileDetails: \(error)" + return "Failed to generate description for DeviceApprovalsAddExceptionDetails: \(error)" } } } - - public class EmailIngestReceiveFileDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: EmailIngestReceiveFileDetails) throws -> JSON { - let output = [ - "inbox_name": try Serialization._StringSerializer.serialize(value.inboxName), - "attachment_names": try ArraySerializer(Serialization._StringSerializer).serialize(value.attachmentNames), - "subject": try NullableSerializer(Serialization._StringSerializer).serialize(value.subject), - "from_name": try NullableSerializer(Serialization._StringSerializer).serialize(value.fromName), - "from_email": try NullableSerializer(Serialization._StringSerializer).serialize(value.fromEmail), - ] + public class DeviceApprovalsAddExceptionDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DeviceApprovalsAddExceptionDetails) throws -> JSON { + let output = [String: JSON]() return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> EmailIngestReceiveFileDetails { + public func deserialize(_ json: JSON) throws -> DeviceApprovalsAddExceptionDetails { switch json { - case .dictionary(let dict): - let inboxName = try Serialization._StringSerializer.deserialize(dict["inbox_name"] ?? .null) - let attachmentNames = try ArraySerializer(Serialization._StringSerializer).deserialize(dict["attachment_names"] ?? .null) - let subject = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["subject"] ?? .null) - let fromName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["from_name"] ?? .null) - let fromEmail = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["from_email"] ?? .null) - return EmailIngestReceiveFileDetails( - inboxName: inboxName, - attachmentNames: attachmentNames, - subject: subject, - fromName: fromName, - fromEmail: fromEmail - ) - default: - throw JSONSerializerError.deserializeError(type: EmailIngestReceiveFileDetails.self, json: json) + case .dictionary(_): + return DeviceApprovalsAddExceptionDetails() + default: + throw JSONSerializerError.deserializeError(type: DeviceApprovalsAddExceptionDetails.self, json: json) } } } - /// The EmailIngestReceiveFileType struct - public class EmailIngestReceiveFileType: CustomStringConvertible, JSONRepresentable { + /// The DeviceApprovalsAddExceptionType struct + public class DeviceApprovalsAddExceptionType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -10174,72 +10573,82 @@ public class TeamLog { } func json() throws -> JSON { - try EmailIngestReceiveFileTypeSerializer().serialize(self) + try DeviceApprovalsAddExceptionTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try EmailIngestReceiveFileTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DeviceApprovalsAddExceptionTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for EmailIngestReceiveFileType: \(error)" + return "Failed to generate description for DeviceApprovalsAddExceptionType: \(error)" } } } - - public class EmailIngestReceiveFileTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: EmailIngestReceiveFileType) throws -> JSON { + public class DeviceApprovalsAddExceptionTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DeviceApprovalsAddExceptionType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> EmailIngestReceiveFileType { + public func deserialize(_ json: JSON) throws -> DeviceApprovalsAddExceptionType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return EmailIngestReceiveFileType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: EmailIngestReceiveFileType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DeviceApprovalsAddExceptionType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DeviceApprovalsAddExceptionType.self, json: json) } } } - /// Added members to EMM exception list. - public class EmmAddExceptionDetails: CustomStringConvertible, JSONRepresentable { + /// Set/removed limit on number of computers member can link to team Dropbox account. + public class DeviceApprovalsChangeDesktopPolicyDetails: CustomStringConvertible, JSONRepresentable { + /// New desktop device approvals policy. Might be missing due to historical data gap. + public let newValue: TeamLog.DeviceApprovalsPolicy? + /// Previous desktop device approvals policy. Might be missing due to historical data gap. + public let previousValue: TeamLog.DeviceApprovalsPolicy? + public init(newValue: TeamLog.DeviceApprovalsPolicy? = nil, previousValue: TeamLog.DeviceApprovalsPolicy? = nil) { + self.newValue = newValue + self.previousValue = previousValue + } + func json() throws -> JSON { - try EmmAddExceptionDetailsSerializer().serialize(self) + try DeviceApprovalsChangeDesktopPolicyDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try EmmAddExceptionDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DeviceApprovalsChangeDesktopPolicyDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for EmmAddExceptionDetails: \(error)" + return "Failed to generate description for DeviceApprovalsChangeDesktopPolicyDetails: \(error)" } } } - - public class EmmAddExceptionDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: EmmAddExceptionDetails) throws -> JSON { - let output = [String: JSON]() + public class DeviceApprovalsChangeDesktopPolicyDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DeviceApprovalsChangeDesktopPolicyDetails) throws -> JSON { + let output = [ + "new_value": try NullableSerializer(TeamLog.DeviceApprovalsPolicySerializer()).serialize(value.newValue), + "previous_value": try NullableSerializer(TeamLog.DeviceApprovalsPolicySerializer()).serialize(value.previousValue), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> EmmAddExceptionDetails { + public func deserialize(_ json: JSON) throws -> DeviceApprovalsChangeDesktopPolicyDetails { switch json { - case .dictionary: - return EmmAddExceptionDetails() - default: - throw JSONSerializerError.deserializeError(type: EmmAddExceptionDetails.self, json: json) + case .dictionary(let dict): + let newValue = try NullableSerializer(TeamLog.DeviceApprovalsPolicySerializer()).deserialize(dict["new_value"] ?? .null) + let previousValue = try NullableSerializer(TeamLog.DeviceApprovalsPolicySerializer()).deserialize(dict["previous_value"] ?? .null) + return DeviceApprovalsChangeDesktopPolicyDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: DeviceApprovalsChangeDesktopPolicyDetails.self, json: json) } } } - /// The EmmAddExceptionType struct - public class EmmAddExceptionType: CustomStringConvertible, JSONRepresentable { + /// The DeviceApprovalsChangeDesktopPolicyType struct + public class DeviceApprovalsChangeDesktopPolicyType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -10248,86 +10657,82 @@ public class TeamLog { } func json() throws -> JSON { - try EmmAddExceptionTypeSerializer().serialize(self) + try DeviceApprovalsChangeDesktopPolicyTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try EmmAddExceptionTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DeviceApprovalsChangeDesktopPolicyTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for EmmAddExceptionType: \(error)" + return "Failed to generate description for DeviceApprovalsChangeDesktopPolicyType: \(error)" } } } - - public class EmmAddExceptionTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: EmmAddExceptionType) throws -> JSON { + public class DeviceApprovalsChangeDesktopPolicyTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DeviceApprovalsChangeDesktopPolicyType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> EmmAddExceptionType { + public func deserialize(_ json: JSON) throws -> DeviceApprovalsChangeDesktopPolicyType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return EmmAddExceptionType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: EmmAddExceptionType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DeviceApprovalsChangeDesktopPolicyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DeviceApprovalsChangeDesktopPolicyType.self, json: json) } } } - /// Enabled/disabled enterprise mobility management for members. - public class EmmChangePolicyDetails: CustomStringConvertible, JSONRepresentable { - /// New enterprise mobility management policy. - public let newValue: TeamPolicies.EmmState - /// Previous enterprise mobility management policy. Might be missing due to historical data gap. - public let previousValue: TeamPolicies.EmmState? - public init(newValue: TeamPolicies.EmmState, previousValue: TeamPolicies.EmmState? = nil) { + /// Set/removed limit on number of mobile devices member can link to team Dropbox account. + public class DeviceApprovalsChangeMobilePolicyDetails: CustomStringConvertible, JSONRepresentable { + /// New mobile device approvals policy. Might be missing due to historical data gap. + public let newValue: TeamLog.DeviceApprovalsPolicy? + /// Previous mobile device approvals policy. Might be missing due to historical data gap. + public let previousValue: TeamLog.DeviceApprovalsPolicy? + public init(newValue: TeamLog.DeviceApprovalsPolicy? = nil, previousValue: TeamLog.DeviceApprovalsPolicy? = nil) { self.newValue = newValue self.previousValue = previousValue } func json() throws -> JSON { - try EmmChangePolicyDetailsSerializer().serialize(self) + try DeviceApprovalsChangeMobilePolicyDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try EmmChangePolicyDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DeviceApprovalsChangeMobilePolicyDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for EmmChangePolicyDetails: \(error)" + return "Failed to generate description for DeviceApprovalsChangeMobilePolicyDetails: \(error)" } } } - - public class EmmChangePolicyDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: EmmChangePolicyDetails) throws -> JSON { + public class DeviceApprovalsChangeMobilePolicyDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DeviceApprovalsChangeMobilePolicyDetails) throws -> JSON { let output = [ - "new_value": try TeamPolicies.EmmStateSerializer().serialize(value.newValue), - "previous_value": try NullableSerializer(TeamPolicies.EmmStateSerializer()).serialize(value.previousValue), + "new_value": try NullableSerializer(TeamLog.DeviceApprovalsPolicySerializer()).serialize(value.newValue), + "previous_value": try NullableSerializer(TeamLog.DeviceApprovalsPolicySerializer()).serialize(value.previousValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> EmmChangePolicyDetails { + public func deserialize(_ json: JSON) throws -> DeviceApprovalsChangeMobilePolicyDetails { switch json { - case .dictionary(let dict): - let newValue = try TeamPolicies.EmmStateSerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try NullableSerializer(TeamPolicies.EmmStateSerializer()).deserialize(dict["previous_value"] ?? .null) - return EmmChangePolicyDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: EmmChangePolicyDetails.self, json: json) + case .dictionary(let dict): + let newValue = try NullableSerializer(TeamLog.DeviceApprovalsPolicySerializer()).deserialize(dict["new_value"] ?? .null) + let previousValue = try NullableSerializer(TeamLog.DeviceApprovalsPolicySerializer()).deserialize(dict["previous_value"] ?? .null) + return DeviceApprovalsChangeMobilePolicyDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: DeviceApprovalsChangeMobilePolicyDetails.self, json: json) } } } - /// The EmmChangePolicyType struct - public class EmmChangePolicyType: CustomStringConvertible, JSONRepresentable { + /// The DeviceApprovalsChangeMobilePolicyType struct + public class DeviceApprovalsChangeMobilePolicyType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -10336,72 +10741,82 @@ public class TeamLog { } func json() throws -> JSON { - try EmmChangePolicyTypeSerializer().serialize(self) + try DeviceApprovalsChangeMobilePolicyTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try EmmChangePolicyTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DeviceApprovalsChangeMobilePolicyTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for EmmChangePolicyType: \(error)" + return "Failed to generate description for DeviceApprovalsChangeMobilePolicyType: \(error)" } } } - - public class EmmChangePolicyTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: EmmChangePolicyType) throws -> JSON { - let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + public class DeviceApprovalsChangeMobilePolicyTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DeviceApprovalsChangeMobilePolicyType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> EmmChangePolicyType { + public func deserialize(_ json: JSON) throws -> DeviceApprovalsChangeMobilePolicyType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return EmmChangePolicyType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: EmmChangePolicyType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DeviceApprovalsChangeMobilePolicyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DeviceApprovalsChangeMobilePolicyType.self, json: json) } } } - /// Created EMM-excluded users report. - public class EmmCreateExceptionsReportDetails: CustomStringConvertible, JSONRepresentable { + /// Changed device approvals setting when member is over limit. + public class DeviceApprovalsChangeOverageActionDetails: CustomStringConvertible, JSONRepresentable { + /// New over the limits policy. Might be missing due to historical data gap. + public let newValue: TeamPolicies.RolloutMethod? + /// Previous over the limit policy. Might be missing due to historical data gap. + public let previousValue: TeamPolicies.RolloutMethod? + public init(newValue: TeamPolicies.RolloutMethod? = nil, previousValue: TeamPolicies.RolloutMethod? = nil) { + self.newValue = newValue + self.previousValue = previousValue + } + func json() throws -> JSON { - try EmmCreateExceptionsReportDetailsSerializer().serialize(self) + try DeviceApprovalsChangeOverageActionDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try EmmCreateExceptionsReportDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DeviceApprovalsChangeOverageActionDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for EmmCreateExceptionsReportDetails: \(error)" + return "Failed to generate description for DeviceApprovalsChangeOverageActionDetails: \(error)" } } } - - public class EmmCreateExceptionsReportDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: EmmCreateExceptionsReportDetails) throws -> JSON { - let output = [String: JSON]() + public class DeviceApprovalsChangeOverageActionDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DeviceApprovalsChangeOverageActionDetails) throws -> JSON { + let output = [ + "new_value": try NullableSerializer(TeamPolicies.RolloutMethodSerializer()).serialize(value.newValue), + "previous_value": try NullableSerializer(TeamPolicies.RolloutMethodSerializer()).serialize(value.previousValue), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> EmmCreateExceptionsReportDetails { + public func deserialize(_ json: JSON) throws -> DeviceApprovalsChangeOverageActionDetails { switch json { - case .dictionary: - return EmmCreateExceptionsReportDetails() - default: - throw JSONSerializerError.deserializeError(type: EmmCreateExceptionsReportDetails.self, json: json) + case .dictionary(let dict): + let newValue = try NullableSerializer(TeamPolicies.RolloutMethodSerializer()).deserialize(dict["new_value"] ?? .null) + let previousValue = try NullableSerializer(TeamPolicies.RolloutMethodSerializer()).deserialize(dict["previous_value"] ?? .null) + return DeviceApprovalsChangeOverageActionDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: DeviceApprovalsChangeOverageActionDetails.self, json: json) } } } - /// The EmmCreateExceptionsReportType struct - public class EmmCreateExceptionsReportType: CustomStringConvertible, JSONRepresentable { + /// The DeviceApprovalsChangeOverageActionType struct + public class DeviceApprovalsChangeOverageActionType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -10410,72 +10825,82 @@ public class TeamLog { } func json() throws -> JSON { - try EmmCreateExceptionsReportTypeSerializer().serialize(self) + try DeviceApprovalsChangeOverageActionTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try EmmCreateExceptionsReportTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DeviceApprovalsChangeOverageActionTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for EmmCreateExceptionsReportType: \(error)" + return "Failed to generate description for DeviceApprovalsChangeOverageActionType: \(error)" } } } - - public class EmmCreateExceptionsReportTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: EmmCreateExceptionsReportType) throws -> JSON { + public class DeviceApprovalsChangeOverageActionTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DeviceApprovalsChangeOverageActionType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> EmmCreateExceptionsReportType { + public func deserialize(_ json: JSON) throws -> DeviceApprovalsChangeOverageActionType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return EmmCreateExceptionsReportType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: EmmCreateExceptionsReportType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DeviceApprovalsChangeOverageActionType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DeviceApprovalsChangeOverageActionType.self, json: json) } } } - /// Created EMM mobile app usage report. - public class EmmCreateUsageReportDetails: CustomStringConvertible, JSONRepresentable { + /// Changed device approvals setting when member unlinks approved device. + public class DeviceApprovalsChangeUnlinkActionDetails: CustomStringConvertible, JSONRepresentable { + /// New device unlink policy. Might be missing due to historical data gap. + public let newValue: TeamLog.DeviceUnlinkPolicy? + /// Previous device unlink policy. Might be missing due to historical data gap. + public let previousValue: TeamLog.DeviceUnlinkPolicy? + public init(newValue: TeamLog.DeviceUnlinkPolicy? = nil, previousValue: TeamLog.DeviceUnlinkPolicy? = nil) { + self.newValue = newValue + self.previousValue = previousValue + } + func json() throws -> JSON { - try EmmCreateUsageReportDetailsSerializer().serialize(self) + try DeviceApprovalsChangeUnlinkActionDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try EmmCreateUsageReportDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DeviceApprovalsChangeUnlinkActionDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for EmmCreateUsageReportDetails: \(error)" + return "Failed to generate description for DeviceApprovalsChangeUnlinkActionDetails: \(error)" } } } - - public class EmmCreateUsageReportDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: EmmCreateUsageReportDetails) throws -> JSON { - let output = [String: JSON]() + public class DeviceApprovalsChangeUnlinkActionDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DeviceApprovalsChangeUnlinkActionDetails) throws -> JSON { + let output = [ + "new_value": try NullableSerializer(TeamLog.DeviceUnlinkPolicySerializer()).serialize(value.newValue), + "previous_value": try NullableSerializer(TeamLog.DeviceUnlinkPolicySerializer()).serialize(value.previousValue), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> EmmCreateUsageReportDetails { + public func deserialize(_ json: JSON) throws -> DeviceApprovalsChangeUnlinkActionDetails { switch json { - case .dictionary: - return EmmCreateUsageReportDetails() - default: - throw JSONSerializerError.deserializeError(type: EmmCreateUsageReportDetails.self, json: json) + case .dictionary(let dict): + let newValue = try NullableSerializer(TeamLog.DeviceUnlinkPolicySerializer()).deserialize(dict["new_value"] ?? .null) + let previousValue = try NullableSerializer(TeamLog.DeviceUnlinkPolicySerializer()).deserialize(dict["previous_value"] ?? .null) + return DeviceApprovalsChangeUnlinkActionDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: DeviceApprovalsChangeUnlinkActionDetails.self, json: json) } } } - /// The EmmCreateUsageReportType struct - public class EmmCreateUsageReportType: CustomStringConvertible, JSONRepresentable { + /// The DeviceApprovalsChangeUnlinkActionType struct + public class DeviceApprovalsChangeUnlinkActionType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -10484,81 +10909,128 @@ public class TeamLog { } func json() throws -> JSON { - try EmmCreateUsageReportTypeSerializer().serialize(self) + try DeviceApprovalsChangeUnlinkActionTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try EmmCreateUsageReportTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DeviceApprovalsChangeUnlinkActionTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for EmmCreateUsageReportType: \(error)" + return "Failed to generate description for DeviceApprovalsChangeUnlinkActionType: \(error)" } } } - - public class EmmCreateUsageReportTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: EmmCreateUsageReportType) throws -> JSON { + public class DeviceApprovalsChangeUnlinkActionTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DeviceApprovalsChangeUnlinkActionType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> EmmCreateUsageReportType { + public func deserialize(_ json: JSON) throws -> DeviceApprovalsChangeUnlinkActionType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return EmmCreateUsageReportType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: EmmCreateUsageReportType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DeviceApprovalsChangeUnlinkActionType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DeviceApprovalsChangeUnlinkActionType.self, json: json) } } } - /// Failed to sign in via EMM. - public class EmmErrorDetails: CustomStringConvertible, JSONRepresentable { - /// Error details. - public let errorDetails: TeamLog.FailureDetailsLogInfo - public init(errorDetails: TeamLog.FailureDetailsLogInfo) { - self.errorDetails = errorDetails - } + /// The DeviceApprovalsPolicy union + public enum DeviceApprovalsPolicy: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case limited + /// An unspecified error. + case unlimited + /// An unspecified error. + case other func json() throws -> JSON { - try EmmErrorDetailsSerializer().serialize(self) + try DeviceApprovalsPolicySerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try EmmErrorDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DeviceApprovalsPolicySerializer().serialize(self)))" } catch { - return "Failed to generate description for EmmErrorDetails: \(error)" + return "Failed to generate description for DeviceApprovalsPolicy: \(error)" + } + } + } + public class DeviceApprovalsPolicySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DeviceApprovalsPolicy) throws -> JSON { + switch value { + case .limited: + var d = [String: JSON]() + d[".tag"] = .str("limited") + return .dictionary(d) + case .unlimited: + var d = [String: JSON]() + d[".tag"] = .str("unlimited") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> DeviceApprovalsPolicy { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "limited": + return DeviceApprovalsPolicy.limited + case "unlimited": + return DeviceApprovalsPolicy.unlimited + case "other": + return DeviceApprovalsPolicy.other + default: + return DeviceApprovalsPolicy.other + } + default: + throw JSONSerializerError.deserializeError(type: DeviceApprovalsPolicy.self, json: json) } } } - public class EmmErrorDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: EmmErrorDetails) throws -> JSON { - let output = [ - "error_details": try TeamLog.FailureDetailsLogInfoSerializer().serialize(value.errorDetails), - ] - return .dictionary(output) + /// Removed members from device approvals exception list. + public class DeviceApprovalsRemoveExceptionDetails: CustomStringConvertible, JSONRepresentable { + + func json() throws -> JSON { + try DeviceApprovalsRemoveExceptionDetailsSerializer().serialize(self) } - public func deserialize(_ json: JSON) throws -> EmmErrorDetails { + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try DeviceApprovalsRemoveExceptionDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for DeviceApprovalsRemoveExceptionDetails: \(error)" + } + } + } + public class DeviceApprovalsRemoveExceptionDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DeviceApprovalsRemoveExceptionDetails) throws -> JSON { + let output = [String: JSON]() + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> DeviceApprovalsRemoveExceptionDetails { switch json { - case .dictionary(let dict): - let errorDetails = try TeamLog.FailureDetailsLogInfoSerializer().deserialize(dict["error_details"] ?? .null) - return EmmErrorDetails(errorDetails: errorDetails) - default: - throw JSONSerializerError.deserializeError(type: EmmErrorDetails.self, json: json) + case .dictionary(_): + return DeviceApprovalsRemoveExceptionDetails() + default: + throw JSONSerializerError.deserializeError(type: DeviceApprovalsRemoveExceptionDetails.self, json: json) } } } - /// The EmmErrorType struct - public class EmmErrorType: CustomStringConvertible, JSONRepresentable { + /// The DeviceApprovalsRemoveExceptionType struct + public class DeviceApprovalsRemoveExceptionType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -10567,72 +11039,77 @@ public class TeamLog { } func json() throws -> JSON { - try EmmErrorTypeSerializer().serialize(self) + try DeviceApprovalsRemoveExceptionTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try EmmErrorTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DeviceApprovalsRemoveExceptionTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for EmmErrorType: \(error)" + return "Failed to generate description for DeviceApprovalsRemoveExceptionType: \(error)" } } } - - public class EmmErrorTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: EmmErrorType) throws -> JSON { + public class DeviceApprovalsRemoveExceptionTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DeviceApprovalsRemoveExceptionType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> EmmErrorType { + public func deserialize(_ json: JSON) throws -> DeviceApprovalsRemoveExceptionType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return EmmErrorType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: EmmErrorType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DeviceApprovalsRemoveExceptionType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DeviceApprovalsRemoveExceptionType.self, json: json) } } } - /// Refreshed auth token used for setting up EMM. - public class EmmRefreshAuthTokenDetails: CustomStringConvertible, JSONRepresentable { + /// Changed IP address associated with active desktop session. + public class DeviceChangeIpDesktopDetails: CustomStringConvertible, JSONRepresentable { + /// Device's session logged information. + public let deviceSessionInfo: TeamLog.DeviceSessionLogInfo + public init(deviceSessionInfo: TeamLog.DeviceSessionLogInfo) { + self.deviceSessionInfo = deviceSessionInfo + } + func json() throws -> JSON { - try EmmRefreshAuthTokenDetailsSerializer().serialize(self) + try DeviceChangeIpDesktopDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try EmmRefreshAuthTokenDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DeviceChangeIpDesktopDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for EmmRefreshAuthTokenDetails: \(error)" + return "Failed to generate description for DeviceChangeIpDesktopDetails: \(error)" } } } - - public class EmmRefreshAuthTokenDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: EmmRefreshAuthTokenDetails) throws -> JSON { - let output = [String: JSON]() + public class DeviceChangeIpDesktopDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DeviceChangeIpDesktopDetails) throws -> JSON { + let output = [ + "device_session_info": try TeamLog.DeviceSessionLogInfoSerializer().serialize(value.deviceSessionInfo), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> EmmRefreshAuthTokenDetails { + public func deserialize(_ json: JSON) throws -> DeviceChangeIpDesktopDetails { switch json { - case .dictionary: - return EmmRefreshAuthTokenDetails() - default: - throw JSONSerializerError.deserializeError(type: EmmRefreshAuthTokenDetails.self, json: json) + case .dictionary(let dict): + let deviceSessionInfo = try TeamLog.DeviceSessionLogInfoSerializer().deserialize(dict["device_session_info"] ?? .null) + return DeviceChangeIpDesktopDetails(deviceSessionInfo: deviceSessionInfo) + default: + throw JSONSerializerError.deserializeError(type: DeviceChangeIpDesktopDetails.self, json: json) } } } - /// The EmmRefreshAuthTokenType struct - public class EmmRefreshAuthTokenType: CustomStringConvertible, JSONRepresentable { + /// The DeviceChangeIpDesktopType struct + public class DeviceChangeIpDesktopType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -10641,72 +11118,77 @@ public class TeamLog { } func json() throws -> JSON { - try EmmRefreshAuthTokenTypeSerializer().serialize(self) + try DeviceChangeIpDesktopTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try EmmRefreshAuthTokenTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DeviceChangeIpDesktopTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for EmmRefreshAuthTokenType: \(error)" + return "Failed to generate description for DeviceChangeIpDesktopType: \(error)" } } } - - public class EmmRefreshAuthTokenTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: EmmRefreshAuthTokenType) throws -> JSON { + public class DeviceChangeIpDesktopTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DeviceChangeIpDesktopType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> EmmRefreshAuthTokenType { + public func deserialize(_ json: JSON) throws -> DeviceChangeIpDesktopType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return EmmRefreshAuthTokenType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: EmmRefreshAuthTokenType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DeviceChangeIpDesktopType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DeviceChangeIpDesktopType.self, json: json) } } } - /// Removed members from EMM exception list. - public class EmmRemoveExceptionDetails: CustomStringConvertible, JSONRepresentable { + /// Changed IP address associated with active mobile session. + public class DeviceChangeIpMobileDetails: CustomStringConvertible, JSONRepresentable { + /// Device's session logged information. + public let deviceSessionInfo: TeamLog.DeviceSessionLogInfo? + public init(deviceSessionInfo: TeamLog.DeviceSessionLogInfo? = nil) { + self.deviceSessionInfo = deviceSessionInfo + } + func json() throws -> JSON { - try EmmRemoveExceptionDetailsSerializer().serialize(self) + try DeviceChangeIpMobileDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try EmmRemoveExceptionDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DeviceChangeIpMobileDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for EmmRemoveExceptionDetails: \(error)" + return "Failed to generate description for DeviceChangeIpMobileDetails: \(error)" } } } - - public class EmmRemoveExceptionDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: EmmRemoveExceptionDetails) throws -> JSON { - let output = [String: JSON]() + public class DeviceChangeIpMobileDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DeviceChangeIpMobileDetails) throws -> JSON { + let output = [ + "device_session_info": try NullableSerializer(TeamLog.DeviceSessionLogInfoSerializer()).serialize(value.deviceSessionInfo), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> EmmRemoveExceptionDetails { + public func deserialize(_ json: JSON) throws -> DeviceChangeIpMobileDetails { switch json { - case .dictionary: - return EmmRemoveExceptionDetails() - default: - throw JSONSerializerError.deserializeError(type: EmmRemoveExceptionDetails.self, json: json) + case .dictionary(let dict): + let deviceSessionInfo = try NullableSerializer(TeamLog.DeviceSessionLogInfoSerializer()).deserialize(dict["device_session_info"] ?? .null) + return DeviceChangeIpMobileDetails(deviceSessionInfo: deviceSessionInfo) + default: + throw JSONSerializerError.deserializeError(type: DeviceChangeIpMobileDetails.self, json: json) } } } - /// The EmmRemoveExceptionType struct - public class EmmRemoveExceptionType: CustomStringConvertible, JSONRepresentable { + /// The DeviceChangeIpMobileType struct + public class DeviceChangeIpMobileType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -10715,72 +11197,78 @@ public class TeamLog { } func json() throws -> JSON { - try EmmRemoveExceptionTypeSerializer().serialize(self) + try DeviceChangeIpMobileTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try EmmRemoveExceptionTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DeviceChangeIpMobileTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for EmmRemoveExceptionType: \(error)" + return "Failed to generate description for DeviceChangeIpMobileType: \(error)" } } } - - public class EmmRemoveExceptionTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: EmmRemoveExceptionType) throws -> JSON { + public class DeviceChangeIpMobileTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DeviceChangeIpMobileType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> EmmRemoveExceptionType { + public func deserialize(_ json: JSON) throws -> DeviceChangeIpMobileType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return EmmRemoveExceptionType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: EmmRemoveExceptionType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DeviceChangeIpMobileType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DeviceChangeIpMobileType.self, json: json) } } } - /// Enabled domain invites. - public class EnabledDomainInvitesDetails: CustomStringConvertible, JSONRepresentable { + /// Changed IP address associated with active web session. + public class DeviceChangeIpWebDetails: CustomStringConvertible, JSONRepresentable { + /// Web browser name. + public let userAgent: String + public init(userAgent: String) { + stringValidator()(userAgent) + self.userAgent = userAgent + } + func json() throws -> JSON { - try EnabledDomainInvitesDetailsSerializer().serialize(self) + try DeviceChangeIpWebDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try EnabledDomainInvitesDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DeviceChangeIpWebDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for EnabledDomainInvitesDetails: \(error)" + return "Failed to generate description for DeviceChangeIpWebDetails: \(error)" } } } - - public class EnabledDomainInvitesDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: EnabledDomainInvitesDetails) throws -> JSON { - let output = [String: JSON]() + public class DeviceChangeIpWebDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DeviceChangeIpWebDetails) throws -> JSON { + let output = [ + "user_agent": try Serialization._StringSerializer.serialize(value.userAgent), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> EnabledDomainInvitesDetails { + public func deserialize(_ json: JSON) throws -> DeviceChangeIpWebDetails { switch json { - case .dictionary: - return EnabledDomainInvitesDetails() - default: - throw JSONSerializerError.deserializeError(type: EnabledDomainInvitesDetails.self, json: json) + case .dictionary(let dict): + let userAgent = try Serialization._StringSerializer.deserialize(dict["user_agent"] ?? .null) + return DeviceChangeIpWebDetails(userAgent: userAgent) + default: + throw JSONSerializerError.deserializeError(type: DeviceChangeIpWebDetails.self, json: json) } } } - /// The EnabledDomainInvitesType struct - public class EnabledDomainInvitesType: CustomStringConvertible, JSONRepresentable { + /// The DeviceChangeIpWebType struct + public class DeviceChangeIpWebType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -10789,81 +11277,89 @@ public class TeamLog { } func json() throws -> JSON { - try EnabledDomainInvitesTypeSerializer().serialize(self) + try DeviceChangeIpWebTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try EnabledDomainInvitesTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DeviceChangeIpWebTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for EnabledDomainInvitesType: \(error)" + return "Failed to generate description for DeviceChangeIpWebType: \(error)" } } } - - public class EnabledDomainInvitesTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: EnabledDomainInvitesType) throws -> JSON { + public class DeviceChangeIpWebTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DeviceChangeIpWebType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> EnabledDomainInvitesType { + public func deserialize(_ json: JSON) throws -> DeviceChangeIpWebType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return EnabledDomainInvitesType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: EnabledDomainInvitesType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DeviceChangeIpWebType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DeviceChangeIpWebType.self, json: json) } } } - /// Ended enterprise admin session. - public class EndedEnterpriseAdminSessionDeprecatedDetails: CustomStringConvertible, JSONRepresentable { - /// More information about the organization or team. - public let federationExtraDetails: TeamLog.FedExtraDetails - public init(federationExtraDetails: TeamLog.FedExtraDetails) { - self.federationExtraDetails = federationExtraDetails + /// Failed to delete all files from unlinked device. + public class DeviceDeleteOnUnlinkFailDetails: CustomStringConvertible, JSONRepresentable { + /// Session unique id. + public let sessionInfo: TeamLog.SessionLogInfo? + /// The device name. Might be missing due to historical data gap. + public let displayName: String? + /// The number of times that remote file deletion failed. + public let numFailures: Int64 + public init(numFailures: Int64, sessionInfo: TeamLog.SessionLogInfo? = nil, displayName: String? = nil) { + self.sessionInfo = sessionInfo + nullableValidator(stringValidator())(displayName) + self.displayName = displayName + comparableValidator()(numFailures) + self.numFailures = numFailures } func json() throws -> JSON { - try EndedEnterpriseAdminSessionDeprecatedDetailsSerializer().serialize(self) + try DeviceDeleteOnUnlinkFailDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try EndedEnterpriseAdminSessionDeprecatedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DeviceDeleteOnUnlinkFailDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for EndedEnterpriseAdminSessionDeprecatedDetails: \(error)" + return "Failed to generate description for DeviceDeleteOnUnlinkFailDetails: \(error)" } } } - - public class EndedEnterpriseAdminSessionDeprecatedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: EndedEnterpriseAdminSessionDeprecatedDetails) throws -> JSON { + public class DeviceDeleteOnUnlinkFailDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DeviceDeleteOnUnlinkFailDetails) throws -> JSON { let output = [ - "federation_extra_details": try TeamLog.FedExtraDetailsSerializer().serialize(value.federationExtraDetails), + "num_failures": try Serialization._Int64Serializer.serialize(value.numFailures), + "session_info": try NullableSerializer(TeamLog.SessionLogInfoSerializer()).serialize(value.sessionInfo), + "display_name": try NullableSerializer(Serialization._StringSerializer).serialize(value.displayName), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> EndedEnterpriseAdminSessionDeprecatedDetails { + public func deserialize(_ json: JSON) throws -> DeviceDeleteOnUnlinkFailDetails { switch json { - case .dictionary(let dict): - let federationExtraDetails = try TeamLog.FedExtraDetailsSerializer().deserialize(dict["federation_extra_details"] ?? .null) - return EndedEnterpriseAdminSessionDeprecatedDetails(federationExtraDetails: federationExtraDetails) - default: - throw JSONSerializerError.deserializeError(type: EndedEnterpriseAdminSessionDeprecatedDetails.self, json: json) + case .dictionary(let dict): + let numFailures = try Serialization._Int64Serializer.deserialize(dict["num_failures"] ?? .null) + let sessionInfo = try NullableSerializer(TeamLog.SessionLogInfoSerializer()).deserialize(dict["session_info"] ?? .null) + let displayName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["display_name"] ?? .null) + return DeviceDeleteOnUnlinkFailDetails(numFailures: numFailures, sessionInfo: sessionInfo, displayName: displayName) + default: + throw JSONSerializerError.deserializeError(type: DeviceDeleteOnUnlinkFailDetails.self, json: json) } } } - /// The EndedEnterpriseAdminSessionDeprecatedType struct - public class EndedEnterpriseAdminSessionDeprecatedType: CustomStringConvertible, JSONRepresentable { + /// The DeviceDeleteOnUnlinkFailType struct + public class DeviceDeleteOnUnlinkFailType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -10872,72 +11368,83 @@ public class TeamLog { } func json() throws -> JSON { - try EndedEnterpriseAdminSessionDeprecatedTypeSerializer().serialize(self) + try DeviceDeleteOnUnlinkFailTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try EndedEnterpriseAdminSessionDeprecatedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DeviceDeleteOnUnlinkFailTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for EndedEnterpriseAdminSessionDeprecatedType: \(error)" + return "Failed to generate description for DeviceDeleteOnUnlinkFailType: \(error)" } } } - - public class EndedEnterpriseAdminSessionDeprecatedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: EndedEnterpriseAdminSessionDeprecatedType) throws -> JSON { + public class DeviceDeleteOnUnlinkFailTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DeviceDeleteOnUnlinkFailType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> EndedEnterpriseAdminSessionDeprecatedType { + public func deserialize(_ json: JSON) throws -> DeviceDeleteOnUnlinkFailType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return EndedEnterpriseAdminSessionDeprecatedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: EndedEnterpriseAdminSessionDeprecatedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DeviceDeleteOnUnlinkFailType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DeviceDeleteOnUnlinkFailType.self, json: json) } } } - /// Ended enterprise admin session. - public class EndedEnterpriseAdminSessionDetails: CustomStringConvertible, JSONRepresentable { + /// Deleted all files from unlinked device. + public class DeviceDeleteOnUnlinkSuccessDetails: CustomStringConvertible, JSONRepresentable { + /// Session unique id. + public let sessionInfo: TeamLog.SessionLogInfo? + /// The device name. Might be missing due to historical data gap. + public let displayName: String? + public init(sessionInfo: TeamLog.SessionLogInfo? = nil, displayName: String? = nil) { + self.sessionInfo = sessionInfo + nullableValidator(stringValidator())(displayName) + self.displayName = displayName + } + func json() throws -> JSON { - try EndedEnterpriseAdminSessionDetailsSerializer().serialize(self) + try DeviceDeleteOnUnlinkSuccessDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try EndedEnterpriseAdminSessionDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DeviceDeleteOnUnlinkSuccessDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for EndedEnterpriseAdminSessionDetails: \(error)" + return "Failed to generate description for DeviceDeleteOnUnlinkSuccessDetails: \(error)" } } } - - public class EndedEnterpriseAdminSessionDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: EndedEnterpriseAdminSessionDetails) throws -> JSON { - let output = [String: JSON]() + public class DeviceDeleteOnUnlinkSuccessDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DeviceDeleteOnUnlinkSuccessDetails) throws -> JSON { + let output = [ + "session_info": try NullableSerializer(TeamLog.SessionLogInfoSerializer()).serialize(value.sessionInfo), + "display_name": try NullableSerializer(Serialization._StringSerializer).serialize(value.displayName), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> EndedEnterpriseAdminSessionDetails { + public func deserialize(_ json: JSON) throws -> DeviceDeleteOnUnlinkSuccessDetails { switch json { - case .dictionary: - return EndedEnterpriseAdminSessionDetails() - default: - throw JSONSerializerError.deserializeError(type: EndedEnterpriseAdminSessionDetails.self, json: json) + case .dictionary(let dict): + let sessionInfo = try NullableSerializer(TeamLog.SessionLogInfoSerializer()).deserialize(dict["session_info"] ?? .null) + let displayName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["display_name"] ?? .null) + return DeviceDeleteOnUnlinkSuccessDetails(sessionInfo: sessionInfo, displayName: displayName) + default: + throw JSONSerializerError.deserializeError(type: DeviceDeleteOnUnlinkSuccessDetails.self, json: json) } } } - /// The EndedEnterpriseAdminSessionType struct - public class EndedEnterpriseAdminSessionType: CustomStringConvertible, JSONRepresentable { + /// The DeviceDeleteOnUnlinkSuccessType struct + public class DeviceDeleteOnUnlinkSuccessType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -10946,167 +11453,162 @@ public class TeamLog { } func json() throws -> JSON { - try EndedEnterpriseAdminSessionTypeSerializer().serialize(self) + try DeviceDeleteOnUnlinkSuccessTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try EndedEnterpriseAdminSessionTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DeviceDeleteOnUnlinkSuccessTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for EndedEnterpriseAdminSessionType: \(error)" + return "Failed to generate description for DeviceDeleteOnUnlinkSuccessType: \(error)" } } } - - public class EndedEnterpriseAdminSessionTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: EndedEnterpriseAdminSessionType) throws -> JSON { + public class DeviceDeleteOnUnlinkSuccessTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DeviceDeleteOnUnlinkSuccessType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> EndedEnterpriseAdminSessionType { + public func deserialize(_ json: JSON) throws -> DeviceDeleteOnUnlinkSuccessType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return EndedEnterpriseAdminSessionType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: EndedEnterpriseAdminSessionType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DeviceDeleteOnUnlinkSuccessType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DeviceDeleteOnUnlinkSuccessType.self, json: json) } } } - /// Policy for deciding whether password must be enforced when an externally shared link is updated - public enum EnforceLinkPasswordPolicy: CustomStringConvertible, JSONRepresentable { - /// An unspecified error. - case optional - /// An unspecified error. - case required - /// An unspecified error. - case other + /// Failed to link device. + public class DeviceLinkFailDetails: CustomStringConvertible, JSONRepresentable { + /// IP address. Might be missing due to historical data gap. + public let ipAddress: String? + /// A description of the device used while user approval blocked. + public let deviceType: TeamLog.DeviceType + public init(deviceType: TeamLog.DeviceType, ipAddress: String? = nil) { + nullableValidator(stringValidator())(ipAddress) + self.ipAddress = ipAddress + self.deviceType = deviceType + } func json() throws -> JSON { - try EnforceLinkPasswordPolicySerializer().serialize(self) + try DeviceLinkFailDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try EnforceLinkPasswordPolicySerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DeviceLinkFailDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for EnforceLinkPasswordPolicy: \(error)" + return "Failed to generate description for DeviceLinkFailDetails: \(error)" } } } - - public class EnforceLinkPasswordPolicySerializer: JSONSerializer { - public init() {} - public func serialize(_ value: EnforceLinkPasswordPolicy) throws -> JSON { - switch value { - case .optional: - var d = [String: JSON]() - d[".tag"] = .str("optional") - return .dictionary(d) - case .required: - var d = [String: JSON]() - d[".tag"] = .str("required") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) - } + public class DeviceLinkFailDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DeviceLinkFailDetails) throws -> JSON { + let output = [ + "device_type": try TeamLog.DeviceTypeSerializer().serialize(value.deviceType), + "ip_address": try NullableSerializer(Serialization._StringSerializer).serialize(value.ipAddress), + ] + return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> EnforceLinkPasswordPolicy { + public func deserialize(_ json: JSON) throws -> DeviceLinkFailDetails { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "optional": - return EnforceLinkPasswordPolicy.optional - case "required": - return EnforceLinkPasswordPolicy.required - case "other": - return EnforceLinkPasswordPolicy.other + case .dictionary(let dict): + let deviceType = try TeamLog.DeviceTypeSerializer().deserialize(dict["device_type"] ?? .null) + let ipAddress = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["ip_address"] ?? .null) + return DeviceLinkFailDetails(deviceType: deviceType, ipAddress: ipAddress) default: - return EnforceLinkPasswordPolicy.other - } - default: - throw JSONSerializerError.deserializeError(type: EnforceLinkPasswordPolicy.self, json: json) + throw JSONSerializerError.deserializeError(type: DeviceLinkFailDetails.self, json: json) } } } - /// Changed who can update a setting. - public class EnterpriseSettingsLockingDetails: CustomStringConvertible, JSONRepresentable { - /// The secondary team name. - public let teamName: String - /// Settings page name. - public let settingsPageName: String - /// Previous locked settings page state. - public let previousSettingsPageLockingState: String - /// New locked settings page state. - public let newSettingsPageLockingState: String - public init(teamName: String, settingsPageName: String, previousSettingsPageLockingState: String, newSettingsPageLockingState: String) { - stringValidator()(teamName) - self.teamName = teamName - stringValidator()(settingsPageName) - self.settingsPageName = settingsPageName - stringValidator()(previousSettingsPageLockingState) - self.previousSettingsPageLockingState = previousSettingsPageLockingState - stringValidator()(newSettingsPageLockingState) - self.newSettingsPageLockingState = newSettingsPageLockingState + /// The DeviceLinkFailType struct + public class DeviceLinkFailType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ } func json() throws -> JSON { - try EnterpriseSettingsLockingDetailsSerializer().serialize(self) + try DeviceLinkFailTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try EnterpriseSettingsLockingDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DeviceLinkFailTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for EnterpriseSettingsLockingDetails: \(error)" + return "Failed to generate description for DeviceLinkFailType: \(error)" } } } - - public class EnterpriseSettingsLockingDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: EnterpriseSettingsLockingDetails) throws -> JSON { + public class DeviceLinkFailTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DeviceLinkFailType) throws -> JSON { let output = [ - "team_name": try Serialization._StringSerializer.serialize(value.teamName), - "settings_page_name": try Serialization._StringSerializer.serialize(value.settingsPageName), - "previous_settings_page_locking_state": try Serialization._StringSerializer.serialize(value.previousSettingsPageLockingState), - "new_settings_page_locking_state": try Serialization._StringSerializer.serialize(value.newSettingsPageLockingState), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> EnterpriseSettingsLockingDetails { + public func deserialize(_ json: JSON) throws -> DeviceLinkFailType { switch json { - case .dictionary(let dict): - let teamName = try Serialization._StringSerializer.deserialize(dict["team_name"] ?? .null) - let settingsPageName = try Serialization._StringSerializer.deserialize(dict["settings_page_name"] ?? .null) - let previousSettingsPageLockingState = try Serialization._StringSerializer - .deserialize(dict["previous_settings_page_locking_state"] ?? .null) - let newSettingsPageLockingState = try Serialization._StringSerializer.deserialize(dict["new_settings_page_locking_state"] ?? .null) - return EnterpriseSettingsLockingDetails( - teamName: teamName, - settingsPageName: settingsPageName, - previousSettingsPageLockingState: previousSettingsPageLockingState, - newSettingsPageLockingState: newSettingsPageLockingState - ) - default: - throw JSONSerializerError.deserializeError(type: EnterpriseSettingsLockingDetails.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DeviceLinkFailType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DeviceLinkFailType.self, json: json) } } } - /// The EnterpriseSettingsLockingType struct - public class EnterpriseSettingsLockingType: CustomStringConvertible, JSONRepresentable { + /// Linked device. + public class DeviceLinkSuccessDetails: CustomStringConvertible, JSONRepresentable { + /// Device's session logged information. + public let deviceSessionInfo: TeamLog.DeviceSessionLogInfo? + public init(deviceSessionInfo: TeamLog.DeviceSessionLogInfo? = nil) { + self.deviceSessionInfo = deviceSessionInfo + } + + func json() throws -> JSON { + try DeviceLinkSuccessDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try DeviceLinkSuccessDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for DeviceLinkSuccessDetails: \(error)" + } + } + } + public class DeviceLinkSuccessDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DeviceLinkSuccessDetails) throws -> JSON { + let output = [ + "device_session_info": try NullableSerializer(TeamLog.DeviceSessionLogInfoSerializer()).serialize(value.deviceSessionInfo), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> DeviceLinkSuccessDetails { + switch json { + case .dictionary(let dict): + let deviceSessionInfo = try NullableSerializer(TeamLog.DeviceSessionLogInfoSerializer()).deserialize(dict["device_session_info"] ?? .null) + return DeviceLinkSuccessDetails(deviceSessionInfo: deviceSessionInfo) + default: + throw JSONSerializerError.deserializeError(type: DeviceLinkSuccessDetails.self, json: json) + } + } + } + + /// The DeviceLinkSuccessType struct + public class DeviceLinkSuccessType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -11115,695 +11617,4563 @@ public class TeamLog { } func json() throws -> JSON { - try EnterpriseSettingsLockingTypeSerializer().serialize(self) + try DeviceLinkSuccessTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try EnterpriseSettingsLockingTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DeviceLinkSuccessTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for EnterpriseSettingsLockingType: \(error)" + return "Failed to generate description for DeviceLinkSuccessType: \(error)" + } + } + } + public class DeviceLinkSuccessTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DeviceLinkSuccessType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> DeviceLinkSuccessType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DeviceLinkSuccessType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DeviceLinkSuccessType.self, json: json) } } } - public class EnterpriseSettingsLockingTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: EnterpriseSettingsLockingType) throws -> JSON { + /// Disabled device management. + public class DeviceManagementDisabledDetails: CustomStringConvertible, JSONRepresentable { + + func json() throws -> JSON { + try DeviceManagementDisabledDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try DeviceManagementDisabledDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for DeviceManagementDisabledDetails: \(error)" + } + } + } + public class DeviceManagementDisabledDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DeviceManagementDisabledDetails) throws -> JSON { + let output = [String: JSON]() + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> DeviceManagementDisabledDetails { + switch json { + case .dictionary(_): + return DeviceManagementDisabledDetails() + default: + throw JSONSerializerError.deserializeError(type: DeviceManagementDisabledDetails.self, json: json) + } + } + } + + /// The DeviceManagementDisabledType struct + public class DeviceManagementDisabledType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try DeviceManagementDisabledTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try DeviceManagementDisabledTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for DeviceManagementDisabledType: \(error)" + } + } + } + public class DeviceManagementDisabledTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DeviceManagementDisabledType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } + public func deserialize(_ json: JSON) throws -> DeviceManagementDisabledType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DeviceManagementDisabledType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DeviceManagementDisabledType.self, json: json) + } + } + } - public func deserialize(_ json: JSON) throws -> EnterpriseSettingsLockingType { + /// Enabled device management. + public class DeviceManagementEnabledDetails: CustomStringConvertible, JSONRepresentable { + + func json() throws -> JSON { + try DeviceManagementEnabledDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try DeviceManagementEnabledDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for DeviceManagementEnabledDetails: \(error)" + } + } + } + public class DeviceManagementEnabledDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DeviceManagementEnabledDetails) throws -> JSON { + let output = [String: JSON]() + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> DeviceManagementEnabledDetails { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return EnterpriseSettingsLockingType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: EnterpriseSettingsLockingType.self, json: json) + case .dictionary(_): + return DeviceManagementEnabledDetails() + default: + throw JSONSerializerError.deserializeError(type: DeviceManagementEnabledDetails.self, json: json) } } } - /// Category of events in event audit log. - public enum EventCategory: CustomStringConvertible, JSONRepresentable { - /// Events that involve team related alerts. - case adminAlerting - /// Events that apply to management of linked apps. - case apps - /// Events that have to do with comments on files and Paper documents. - case comments - /// Events that involve data governance actions - case dataGovernance - /// Events that apply to linked devices on mobile, desktop and Web platforms. - case devices - /// Events that involve domain management feature: domain verification, invite enforcement and account capture. - case domains - /// Events that involve encryption. - case encryption - /// Events that have to do with filesystem operations on files and folders: copy, move, delete, etc. - case fileOperations - /// Events that apply to the file requests feature. - case fileRequests - /// Events that involve group management. - case groups - /// Events that involve users signing in to or out of Dropbox. - case logins - /// Events that involve team member management. - case members - /// Events that apply to Dropbox Paper. - case paper - /// Events that involve using, changing or resetting passwords. - case passwords - /// Events that concern generation of admin reports, including team activity and device usage. - case reports - /// Events that apply to all types of sharing and collaboration. - case sharing - /// Events that apply to Dropbox Showcase. - case showcase - /// Events that involve using or configuring single sign-on as well as administrative policies concerning single - /// sign-on. - case sso - /// Events that involve team folder management. - case teamFolders - /// Events that involve a change in team-wide policies. - case teamPolicies - /// Events that involve a change in the team profile. - case teamProfile - /// Events that involve using or configuring two factor authentication as well as administrative policies - /// concerning two factor authentication. - case tfa - /// Events that apply to cross-team trust establishment. - case trustedTeams - /// An unspecified error. - case other + /// The DeviceManagementEnabledType struct + public class DeviceManagementEnabledType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } func json() throws -> JSON { - try EventCategorySerializer().serialize(self) + try DeviceManagementEnabledTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try EventCategorySerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try DeviceManagementEnabledTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for EventCategory: \(error)" + return "Failed to generate description for DeviceManagementEnabledType: \(error)" + } + } + } + public class DeviceManagementEnabledTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DeviceManagementEnabledType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> DeviceManagementEnabledType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DeviceManagementEnabledType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DeviceManagementEnabledType.self, json: json) } } } - public class EventCategorySerializer: JSONSerializer { - public init() {} - public func serialize(_ value: EventCategory) throws -> JSON { - switch value { - case .adminAlerting: - var d = [String: JSON]() - d[".tag"] = .str("admin_alerting") - return .dictionary(d) - case .apps: - var d = [String: JSON]() - d[".tag"] = .str("apps") - return .dictionary(d) - case .comments: - var d = [String: JSON]() - d[".tag"] = .str("comments") - return .dictionary(d) - case .dataGovernance: - var d = [String: JSON]() - d[".tag"] = .str("data_governance") - return .dictionary(d) - case .devices: - var d = [String: JSON]() - d[".tag"] = .str("devices") - return .dictionary(d) - case .domains: - var d = [String: JSON]() - d[".tag"] = .str("domains") - return .dictionary(d) - case .encryption: - var d = [String: JSON]() - d[".tag"] = .str("encryption") - return .dictionary(d) - case .fileOperations: - var d = [String: JSON]() - d[".tag"] = .str("file_operations") - return .dictionary(d) - case .fileRequests: - var d = [String: JSON]() - d[".tag"] = .str("file_requests") - return .dictionary(d) - case .groups: - var d = [String: JSON]() - d[".tag"] = .str("groups") - return .dictionary(d) - case .logins: - var d = [String: JSON]() - d[".tag"] = .str("logins") - return .dictionary(d) - case .members: - var d = [String: JSON]() - d[".tag"] = .str("members") - return .dictionary(d) - case .paper: - var d = [String: JSON]() - d[".tag"] = .str("paper") - return .dictionary(d) - case .passwords: - var d = [String: JSON]() - d[".tag"] = .str("passwords") - return .dictionary(d) - case .reports: - var d = [String: JSON]() - d[".tag"] = .str("reports") - return .dictionary(d) - case .sharing: - var d = [String: JSON]() - d[".tag"] = .str("sharing") - return .dictionary(d) - case .showcase: - var d = [String: JSON]() - d[".tag"] = .str("showcase") - return .dictionary(d) - case .sso: - var d = [String: JSON]() - d[".tag"] = .str("sso") - return .dictionary(d) - case .teamFolders: - var d = [String: JSON]() - d[".tag"] = .str("team_folders") - return .dictionary(d) - case .teamPolicies: - var d = [String: JSON]() - d[".tag"] = .str("team_policies") - return .dictionary(d) - case .teamProfile: - var d = [String: JSON]() - d[".tag"] = .str("team_profile") - return .dictionary(d) - case .tfa: - var d = [String: JSON]() - d[".tag"] = .str("tfa") - return .dictionary(d) - case .trustedTeams: - var d = [String: JSON]() - d[".tag"] = .str("trusted_teams") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) + /// Enabled/disabled backup for computer. + public class DeviceSyncBackupStatusChangedDetails: CustomStringConvertible, JSONRepresentable { + /// Device's session logged information. + public let desktopDeviceSessionInfo: TeamLog.DesktopDeviceSessionLogInfo + /// Previous status of computer backup on the device. + public let previousValue: TeamLog.BackupStatus + /// Next status of computer backup on the device. + public let newValue: TeamLog.BackupStatus + public init(desktopDeviceSessionInfo: TeamLog.DesktopDeviceSessionLogInfo, previousValue: TeamLog.BackupStatus, newValue: TeamLog.BackupStatus) { + self.desktopDeviceSessionInfo = desktopDeviceSessionInfo + self.previousValue = previousValue + self.newValue = newValue + } + + func json() throws -> JSON { + try DeviceSyncBackupStatusChangedDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try DeviceSyncBackupStatusChangedDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for DeviceSyncBackupStatusChangedDetails: \(error)" + } + } + } + public class DeviceSyncBackupStatusChangedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DeviceSyncBackupStatusChangedDetails) throws -> JSON { + let output = [ + "desktop_device_session_info": try TeamLog.DesktopDeviceSessionLogInfoSerializer().serialize(value.desktopDeviceSessionInfo), + "previous_value": try TeamLog.BackupStatusSerializer().serialize(value.previousValue), + "new_value": try TeamLog.BackupStatusSerializer().serialize(value.newValue), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> DeviceSyncBackupStatusChangedDetails { + switch json { + case .dictionary(let dict): + let desktopDeviceSessionInfo = try TeamLog.DesktopDeviceSessionLogInfoSerializer().deserialize(dict["desktop_device_session_info"] ?? .null) + let previousValue = try TeamLog.BackupStatusSerializer().deserialize(dict["previous_value"] ?? .null) + let newValue = try TeamLog.BackupStatusSerializer().deserialize(dict["new_value"] ?? .null) + return DeviceSyncBackupStatusChangedDetails(desktopDeviceSessionInfo: desktopDeviceSessionInfo, previousValue: previousValue, newValue: newValue) + default: + throw JSONSerializerError.deserializeError(type: DeviceSyncBackupStatusChangedDetails.self, json: json) } } + } - public func deserialize(_ json: JSON) throws -> EventCategory { + /// The DeviceSyncBackupStatusChangedType struct + public class DeviceSyncBackupStatusChangedType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try DeviceSyncBackupStatusChangedTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try DeviceSyncBackupStatusChangedTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for DeviceSyncBackupStatusChangedType: \(error)" + } + } + } + public class DeviceSyncBackupStatusChangedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DeviceSyncBackupStatusChangedType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> DeviceSyncBackupStatusChangedType { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "admin_alerting": - return EventCategory.adminAlerting - case "apps": - return EventCategory.apps - case "comments": - return EventCategory.comments - case "data_governance": - return EventCategory.dataGovernance - case "devices": - return EventCategory.devices - case "domains": - return EventCategory.domains - case "encryption": - return EventCategory.encryption - case "file_operations": - return EventCategory.fileOperations - case "file_requests": - return EventCategory.fileRequests - case "groups": - return EventCategory.groups - case "logins": - return EventCategory.logins - case "members": - return EventCategory.members - case "paper": - return EventCategory.paper - case "passwords": - return EventCategory.passwords - case "reports": - return EventCategory.reports - case "sharing": - return EventCategory.sharing - case "showcase": - return EventCategory.showcase - case "sso": - return EventCategory.sso - case "team_folders": - return EventCategory.teamFolders - case "team_policies": - return EventCategory.teamPolicies - case "team_profile": - return EventCategory.teamProfile - case "tfa": - return EventCategory.tfa - case "trusted_teams": - return EventCategory.trustedTeams - case "other": - return EventCategory.other - default: - return EventCategory.other - } - default: - throw JSONSerializerError.deserializeError(type: EventCategory.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DeviceSyncBackupStatusChangedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DeviceSyncBackupStatusChangedType.self, json: json) } } } - /// Additional fields depending on the event type. - public enum EventDetails: CustomStringConvertible, JSONRepresentable { - /// An unspecified error. - case adminAlertingAlertStateChangedDetails(TeamLog.AdminAlertingAlertStateChangedDetails) - /// An unspecified error. - case adminAlertingChangedAlertConfigDetails(TeamLog.AdminAlertingChangedAlertConfigDetails) - /// An unspecified error. - case adminAlertingTriggeredAlertDetails(TeamLog.AdminAlertingTriggeredAlertDetails) - /// An unspecified error. - case ransomwareRestoreProcessCompletedDetails(TeamLog.RansomwareRestoreProcessCompletedDetails) - /// An unspecified error. - case ransomwareRestoreProcessStartedDetails(TeamLog.RansomwareRestoreProcessStartedDetails) - /// An unspecified error. - case appBlockedByPermissionsDetails(TeamLog.AppBlockedByPermissionsDetails) - /// An unspecified error. - case appLinkTeamDetails(TeamLog.AppLinkTeamDetails) - /// An unspecified error. - case appLinkUserDetails(TeamLog.AppLinkUserDetails) - /// An unspecified error. - case appUnlinkTeamDetails(TeamLog.AppUnlinkTeamDetails) - /// An unspecified error. - case appUnlinkUserDetails(TeamLog.AppUnlinkUserDetails) - /// An unspecified error. - case integrationConnectedDetails(TeamLog.IntegrationConnectedDetails) - /// An unspecified error. - case integrationDisconnectedDetails(TeamLog.IntegrationDisconnectedDetails) - /// An unspecified error. - case fileAddCommentDetails(TeamLog.FileAddCommentDetails) - /// An unspecified error. - case fileChangeCommentSubscriptionDetails(TeamLog.FileChangeCommentSubscriptionDetails) - /// An unspecified error. - case fileDeleteCommentDetails(TeamLog.FileDeleteCommentDetails) - /// An unspecified error. - case fileEditCommentDetails(TeamLog.FileEditCommentDetails) - /// An unspecified error. - case fileLikeCommentDetails(TeamLog.FileLikeCommentDetails) - /// An unspecified error. - case fileResolveCommentDetails(TeamLog.FileResolveCommentDetails) - /// An unspecified error. - case fileUnlikeCommentDetails(TeamLog.FileUnlikeCommentDetails) - /// An unspecified error. - case fileUnresolveCommentDetails(TeamLog.FileUnresolveCommentDetails) - /// An unspecified error. - case governancePolicyAddFoldersDetails(TeamLog.GovernancePolicyAddFoldersDetails) - /// An unspecified error. - case governancePolicyAddFolderFailedDetails(TeamLog.GovernancePolicyAddFolderFailedDetails) - /// An unspecified error. - case governancePolicyContentDisposedDetails(TeamLog.GovernancePolicyContentDisposedDetails) - /// An unspecified error. - case governancePolicyCreateDetails(TeamLog.GovernancePolicyCreateDetails) - /// An unspecified error. - case governancePolicyDeleteDetails(TeamLog.GovernancePolicyDeleteDetails) - /// An unspecified error. - case governancePolicyEditDetailsDetails(TeamLog.GovernancePolicyEditDetailsDetails) - /// An unspecified error. - case governancePolicyEditDurationDetails(TeamLog.GovernancePolicyEditDurationDetails) - /// An unspecified error. - case governancePolicyExportCreatedDetails(TeamLog.GovernancePolicyExportCreatedDetails) - /// An unspecified error. - case governancePolicyExportRemovedDetails(TeamLog.GovernancePolicyExportRemovedDetails) - /// An unspecified error. - case governancePolicyRemoveFoldersDetails(TeamLog.GovernancePolicyRemoveFoldersDetails) - /// An unspecified error. - case governancePolicyReportCreatedDetails(TeamLog.GovernancePolicyReportCreatedDetails) - /// An unspecified error. - case governancePolicyZipPartDownloadedDetails(TeamLog.GovernancePolicyZipPartDownloadedDetails) - /// An unspecified error. - case legalHoldsActivateAHoldDetails(TeamLog.LegalHoldsActivateAHoldDetails) - /// An unspecified error. - case legalHoldsAddMembersDetails(TeamLog.LegalHoldsAddMembersDetails) - /// An unspecified error. - case legalHoldsChangeHoldDetailsDetails(TeamLog.LegalHoldsChangeHoldDetailsDetails) - /// An unspecified error. - case legalHoldsChangeHoldNameDetails(TeamLog.LegalHoldsChangeHoldNameDetails) - /// An unspecified error. - case legalHoldsExportAHoldDetails(TeamLog.LegalHoldsExportAHoldDetails) - /// An unspecified error. - case legalHoldsExportCancelledDetails(TeamLog.LegalHoldsExportCancelledDetails) - /// An unspecified error. - case legalHoldsExportDownloadedDetails(TeamLog.LegalHoldsExportDownloadedDetails) - /// An unspecified error. - case legalHoldsExportRemovedDetails(TeamLog.LegalHoldsExportRemovedDetails) - /// An unspecified error. - case legalHoldsReleaseAHoldDetails(TeamLog.LegalHoldsReleaseAHoldDetails) - /// An unspecified error. - case legalHoldsRemoveMembersDetails(TeamLog.LegalHoldsRemoveMembersDetails) - /// An unspecified error. - case legalHoldsReportAHoldDetails(TeamLog.LegalHoldsReportAHoldDetails) - /// An unspecified error. - case deviceChangeIpDesktopDetails(TeamLog.DeviceChangeIpDesktopDetails) - /// An unspecified error. - case deviceChangeIpMobileDetails(TeamLog.DeviceChangeIpMobileDetails) - /// An unspecified error. - case deviceChangeIpWebDetails(TeamLog.DeviceChangeIpWebDetails) - /// An unspecified error. - case deviceDeleteOnUnlinkFailDetails(TeamLog.DeviceDeleteOnUnlinkFailDetails) - /// An unspecified error. - case deviceDeleteOnUnlinkSuccessDetails(TeamLog.DeviceDeleteOnUnlinkSuccessDetails) - /// An unspecified error. - case deviceLinkFailDetails(TeamLog.DeviceLinkFailDetails) - /// An unspecified error. - case deviceLinkSuccessDetails(TeamLog.DeviceLinkSuccessDetails) - /// An unspecified error. - case deviceManagementDisabledDetails(TeamLog.DeviceManagementDisabledDetails) - /// An unspecified error. - case deviceManagementEnabledDetails(TeamLog.DeviceManagementEnabledDetails) - /// An unspecified error. - case deviceSyncBackupStatusChangedDetails(TeamLog.DeviceSyncBackupStatusChangedDetails) - /// An unspecified error. - case deviceUnlinkDetails(TeamLog.DeviceUnlinkDetails) - /// An unspecified error. - case dropboxPasswordsExportedDetails(TeamLog.DropboxPasswordsExportedDetails) - /// An unspecified error. - case dropboxPasswordsNewDeviceEnrolledDetails(TeamLog.DropboxPasswordsNewDeviceEnrolledDetails) - /// An unspecified error. - case emmRefreshAuthTokenDetails(TeamLog.EmmRefreshAuthTokenDetails) - /// An unspecified error. - case externalDriveBackupEligibilityStatusCheckedDetails(TeamLog.ExternalDriveBackupEligibilityStatusCheckedDetails) - /// An unspecified error. - case externalDriveBackupStatusChangedDetails(TeamLog.ExternalDriveBackupStatusChangedDetails) - /// An unspecified error. - case accountCaptureChangeAvailabilityDetails(TeamLog.AccountCaptureChangeAvailabilityDetails) - /// An unspecified error. - case accountCaptureMigrateAccountDetails(TeamLog.AccountCaptureMigrateAccountDetails) - /// An unspecified error. - case accountCaptureNotificationEmailsSentDetails(TeamLog.AccountCaptureNotificationEmailsSentDetails) - /// An unspecified error. - case accountCaptureRelinquishAccountDetails(TeamLog.AccountCaptureRelinquishAccountDetails) - /// An unspecified error. - case disabledDomainInvitesDetails(TeamLog.DisabledDomainInvitesDetails) - /// An unspecified error. - case domainInvitesApproveRequestToJoinTeamDetails(TeamLog.DomainInvitesApproveRequestToJoinTeamDetails) - /// An unspecified error. - case domainInvitesDeclineRequestToJoinTeamDetails(TeamLog.DomainInvitesDeclineRequestToJoinTeamDetails) - /// An unspecified error. - case domainInvitesEmailExistingUsersDetails(TeamLog.DomainInvitesEmailExistingUsersDetails) - /// An unspecified error. - case domainInvitesRequestToJoinTeamDetails(TeamLog.DomainInvitesRequestToJoinTeamDetails) - /// An unspecified error. - case domainInvitesSetInviteNewUserPrefToNoDetails(TeamLog.DomainInvitesSetInviteNewUserPrefToNoDetails) - /// An unspecified error. - case domainInvitesSetInviteNewUserPrefToYesDetails(TeamLog.DomainInvitesSetInviteNewUserPrefToYesDetails) - /// An unspecified error. - case domainVerificationAddDomainFailDetails(TeamLog.DomainVerificationAddDomainFailDetails) - /// An unspecified error. - case domainVerificationAddDomainSuccessDetails(TeamLog.DomainVerificationAddDomainSuccessDetails) - /// An unspecified error. - case domainVerificationRemoveDomainDetails(TeamLog.DomainVerificationRemoveDomainDetails) + /// The DeviceType union + public enum DeviceType: CustomStringConvertible, JSONRepresentable { /// An unspecified error. - case enabledDomainInvitesDetails(TeamLog.EnabledDomainInvitesDetails) + case desktop /// An unspecified error. - case teamEncryptionKeyCancelKeyDeletionDetails(TeamLog.TeamEncryptionKeyCancelKeyDeletionDetails) + case mobile /// An unspecified error. - case teamEncryptionKeyCreateKeyDetails(TeamLog.TeamEncryptionKeyCreateKeyDetails) + case other + + func json() throws -> JSON { + try DeviceTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try DeviceTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for DeviceType: \(error)" + } + } + } + public class DeviceTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DeviceType) throws -> JSON { + switch value { + case .desktop: + var d = [String: JSON]() + d[".tag"] = .str("desktop") + return .dictionary(d) + case .mobile: + var d = [String: JSON]() + d[".tag"] = .str("mobile") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> DeviceType { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "desktop": + return DeviceType.desktop + case "mobile": + return DeviceType.mobile + case "other": + return DeviceType.other + default: + return DeviceType.other + } + default: + throw JSONSerializerError.deserializeError(type: DeviceType.self, json: json) + } + } + } + + /// Disconnected device. + public class DeviceUnlinkDetails: CustomStringConvertible, JSONRepresentable { + /// Session unique id. + public let sessionInfo: TeamLog.SessionLogInfo? + /// The device name. Might be missing due to historical data gap. + public let displayName: String? + /// True if the user requested to delete data after device unlink, false otherwise. + public let deleteData: Bool + public init(deleteData: Bool, sessionInfo: TeamLog.SessionLogInfo? = nil, displayName: String? = nil) { + self.sessionInfo = sessionInfo + nullableValidator(stringValidator())(displayName) + self.displayName = displayName + self.deleteData = deleteData + } + + func json() throws -> JSON { + try DeviceUnlinkDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try DeviceUnlinkDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for DeviceUnlinkDetails: \(error)" + } + } + } + public class DeviceUnlinkDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DeviceUnlinkDetails) throws -> JSON { + let output = [ + "delete_data": try Serialization._BoolSerializer.serialize(value.deleteData), + "session_info": try NullableSerializer(TeamLog.SessionLogInfoSerializer()).serialize(value.sessionInfo), + "display_name": try NullableSerializer(Serialization._StringSerializer).serialize(value.displayName), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> DeviceUnlinkDetails { + switch json { + case .dictionary(let dict): + let deleteData = try Serialization._BoolSerializer.deserialize(dict["delete_data"] ?? .null) + let sessionInfo = try NullableSerializer(TeamLog.SessionLogInfoSerializer()).deserialize(dict["session_info"] ?? .null) + let displayName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["display_name"] ?? .null) + return DeviceUnlinkDetails(deleteData: deleteData, sessionInfo: sessionInfo, displayName: displayName) + default: + throw JSONSerializerError.deserializeError(type: DeviceUnlinkDetails.self, json: json) + } + } + } + + /// The DeviceUnlinkPolicy union + public enum DeviceUnlinkPolicy: CustomStringConvertible, JSONRepresentable { /// An unspecified error. - case teamEncryptionKeyDeleteKeyDetails(TeamLog.TeamEncryptionKeyDeleteKeyDetails) + case keep /// An unspecified error. - case teamEncryptionKeyDisableKeyDetails(TeamLog.TeamEncryptionKeyDisableKeyDetails) + case remove /// An unspecified error. - case teamEncryptionKeyEnableKeyDetails(TeamLog.TeamEncryptionKeyEnableKeyDetails) - /// An unspecified error. - case teamEncryptionKeyRotateKeyDetails(TeamLog.TeamEncryptionKeyRotateKeyDetails) - /// An unspecified error. - case teamEncryptionKeyScheduleKeyDeletionDetails(TeamLog.TeamEncryptionKeyScheduleKeyDeletionDetails) - /// An unspecified error. - case applyNamingConventionDetails(TeamLog.ApplyNamingConventionDetails) - /// An unspecified error. - case createFolderDetails(TeamLog.CreateFolderDetails) - /// An unspecified error. - case fileAddDetails(TeamLog.FileAddDetails) - /// An unspecified error. - case fileAddFromAutomationDetails(TeamLog.FileAddFromAutomationDetails) - /// An unspecified error. - case fileCopyDetails(TeamLog.FileCopyDetails) - /// An unspecified error. - case fileDeleteDetails(TeamLog.FileDeleteDetails) - /// An unspecified error. - case fileDownloadDetails(TeamLog.FileDownloadDetails) - /// An unspecified error. - case fileEditDetails(TeamLog.FileEditDetails) - /// An unspecified error. - case fileGetCopyReferenceDetails(TeamLog.FileGetCopyReferenceDetails) - /// An unspecified error. - case fileLockingLockStatusChangedDetails(TeamLog.FileLockingLockStatusChangedDetails) - /// An unspecified error. - case fileMoveDetails(TeamLog.FileMoveDetails) - /// An unspecified error. - case filePermanentlyDeleteDetails(TeamLog.FilePermanentlyDeleteDetails) - /// An unspecified error. - case filePreviewDetails(TeamLog.FilePreviewDetails) - /// An unspecified error. - case fileRenameDetails(TeamLog.FileRenameDetails) - /// An unspecified error. - case fileRestoreDetails(TeamLog.FileRestoreDetails) - /// An unspecified error. - case fileRevertDetails(TeamLog.FileRevertDetails) - /// An unspecified error. - case fileRollbackChangesDetails(TeamLog.FileRollbackChangesDetails) - /// An unspecified error. - case fileSaveCopyReferenceDetails(TeamLog.FileSaveCopyReferenceDetails) - /// An unspecified error. - case folderOverviewDescriptionChangedDetails(TeamLog.FolderOverviewDescriptionChangedDetails) - /// An unspecified error. - case folderOverviewItemPinnedDetails(TeamLog.FolderOverviewItemPinnedDetails) - /// An unspecified error. - case folderOverviewItemUnpinnedDetails(TeamLog.FolderOverviewItemUnpinnedDetails) - /// An unspecified error. - case objectLabelAddedDetails(TeamLog.ObjectLabelAddedDetails) - /// An unspecified error. - case objectLabelRemovedDetails(TeamLog.ObjectLabelRemovedDetails) - /// An unspecified error. - case objectLabelUpdatedValueDetails(TeamLog.ObjectLabelUpdatedValueDetails) - /// An unspecified error. - case organizeFolderWithTidyDetails(TeamLog.OrganizeFolderWithTidyDetails) - /// An unspecified error. - case replayFileDeleteDetails(TeamLog.ReplayFileDeleteDetails) - /// An unspecified error. - case rewindFolderDetails(TeamLog.RewindFolderDetails) - /// An unspecified error. - case undoNamingConventionDetails(TeamLog.UndoNamingConventionDetails) - /// An unspecified error. - case undoOrganizeFolderWithTidyDetails(TeamLog.UndoOrganizeFolderWithTidyDetails) - /// An unspecified error. - case userTagsAddedDetails(TeamLog.UserTagsAddedDetails) - /// An unspecified error. - case userTagsRemovedDetails(TeamLog.UserTagsRemovedDetails) - /// An unspecified error. - case emailIngestReceiveFileDetails(TeamLog.EmailIngestReceiveFileDetails) - /// An unspecified error. - case fileRequestChangeDetails(TeamLog.FileRequestChangeDetails) - /// An unspecified error. - case fileRequestCloseDetails(TeamLog.FileRequestCloseDetails) - /// An unspecified error. - case fileRequestCreateDetails(TeamLog.FileRequestCreateDetails) - /// An unspecified error. - case fileRequestDeleteDetails(TeamLog.FileRequestDeleteDetails) - /// An unspecified error. - case fileRequestReceiveFileDetails(TeamLog.FileRequestReceiveFileDetails) - /// An unspecified error. - case groupAddExternalIdDetails(TeamLog.GroupAddExternalIdDetails) - /// An unspecified error. - case groupAddMemberDetails(TeamLog.GroupAddMemberDetails) - /// An unspecified error. - case groupChangeExternalIdDetails(TeamLog.GroupChangeExternalIdDetails) - /// An unspecified error. - case groupChangeManagementTypeDetails(TeamLog.GroupChangeManagementTypeDetails) - /// An unspecified error. - case groupChangeMemberRoleDetails(TeamLog.GroupChangeMemberRoleDetails) - /// An unspecified error. - case groupCreateDetails(TeamLog.GroupCreateDetails) - /// An unspecified error. - case groupDeleteDetails(TeamLog.GroupDeleteDetails) - /// An unspecified error. - case groupDescriptionUpdatedDetails(TeamLog.GroupDescriptionUpdatedDetails) - /// An unspecified error. - case groupJoinPolicyUpdatedDetails(TeamLog.GroupJoinPolicyUpdatedDetails) - /// An unspecified error. - case groupMovedDetails(TeamLog.GroupMovedDetails) - /// An unspecified error. - case groupRemoveExternalIdDetails(TeamLog.GroupRemoveExternalIdDetails) - /// An unspecified error. - case groupRemoveMemberDetails(TeamLog.GroupRemoveMemberDetails) - /// An unspecified error. - case groupRenameDetails(TeamLog.GroupRenameDetails) - /// An unspecified error. - case accountLockOrUnlockedDetails(TeamLog.AccountLockOrUnlockedDetails) - /// An unspecified error. - case emmErrorDetails(TeamLog.EmmErrorDetails) - /// An unspecified error. - case guestAdminSignedInViaTrustedTeamsDetails(TeamLog.GuestAdminSignedInViaTrustedTeamsDetails) - /// An unspecified error. - case guestAdminSignedOutViaTrustedTeamsDetails(TeamLog.GuestAdminSignedOutViaTrustedTeamsDetails) - /// An unspecified error. - case loginFailDetails(TeamLog.LoginFailDetails) - /// An unspecified error. - case loginSuccessDetails(TeamLog.LoginSuccessDetails) - /// An unspecified error. - case logoutDetails(TeamLog.LogoutDetails) - /// An unspecified error. - case resellerSupportSessionEndDetails(TeamLog.ResellerSupportSessionEndDetails) - /// An unspecified error. - case resellerSupportSessionStartDetails(TeamLog.ResellerSupportSessionStartDetails) - /// An unspecified error. - case signInAsSessionEndDetails(TeamLog.SignInAsSessionEndDetails) - /// An unspecified error. - case signInAsSessionStartDetails(TeamLog.SignInAsSessionStartDetails) - /// An unspecified error. - case ssoErrorDetails(TeamLog.SsoErrorDetails) - /// An unspecified error. - case backupAdminInvitationSentDetails(TeamLog.BackupAdminInvitationSentDetails) - /// An unspecified error. - case backupInvitationOpenedDetails(TeamLog.BackupInvitationOpenedDetails) - /// An unspecified error. - case createTeamInviteLinkDetails(TeamLog.CreateTeamInviteLinkDetails) - /// An unspecified error. - case deleteTeamInviteLinkDetails(TeamLog.DeleteTeamInviteLinkDetails) - /// An unspecified error. - case memberAddExternalIdDetails(TeamLog.MemberAddExternalIdDetails) - /// An unspecified error. - case memberAddNameDetails(TeamLog.MemberAddNameDetails) - /// An unspecified error. - case memberChangeAdminRoleDetails(TeamLog.MemberChangeAdminRoleDetails) - /// An unspecified error. - case memberChangeEmailDetails(TeamLog.MemberChangeEmailDetails) - /// An unspecified error. - case memberChangeExternalIdDetails(TeamLog.MemberChangeExternalIdDetails) - /// An unspecified error. - case memberChangeMembershipTypeDetails(TeamLog.MemberChangeMembershipTypeDetails) - /// An unspecified error. - case memberChangeNameDetails(TeamLog.MemberChangeNameDetails) - /// An unspecified error. - case memberChangeResellerRoleDetails(TeamLog.MemberChangeResellerRoleDetails) - /// An unspecified error. - case memberChangeStatusDetails(TeamLog.MemberChangeStatusDetails) - /// An unspecified error. - case memberDeleteManualContactsDetails(TeamLog.MemberDeleteManualContactsDetails) - /// An unspecified error. - case memberDeleteProfilePhotoDetails(TeamLog.MemberDeleteProfilePhotoDetails) - /// An unspecified error. - case memberPermanentlyDeleteAccountContentsDetails(TeamLog.MemberPermanentlyDeleteAccountContentsDetails) - /// An unspecified error. - case memberRemoveExternalIdDetails(TeamLog.MemberRemoveExternalIdDetails) - /// An unspecified error. - case memberSetProfilePhotoDetails(TeamLog.MemberSetProfilePhotoDetails) - /// An unspecified error. - case memberSpaceLimitsAddCustomQuotaDetails(TeamLog.MemberSpaceLimitsAddCustomQuotaDetails) - /// An unspecified error. - case memberSpaceLimitsChangeCustomQuotaDetails(TeamLog.MemberSpaceLimitsChangeCustomQuotaDetails) - /// An unspecified error. - case memberSpaceLimitsChangeStatusDetails(TeamLog.MemberSpaceLimitsChangeStatusDetails) - /// An unspecified error. - case memberSpaceLimitsRemoveCustomQuotaDetails(TeamLog.MemberSpaceLimitsRemoveCustomQuotaDetails) - /// An unspecified error. - case memberSuggestDetails(TeamLog.MemberSuggestDetails) - /// An unspecified error. - case memberTransferAccountContentsDetails(TeamLog.MemberTransferAccountContentsDetails) - /// An unspecified error. - case pendingSecondaryEmailAddedDetails(TeamLog.PendingSecondaryEmailAddedDetails) - /// An unspecified error. - case secondaryEmailDeletedDetails(TeamLog.SecondaryEmailDeletedDetails) - /// An unspecified error. - case secondaryEmailVerifiedDetails(TeamLog.SecondaryEmailVerifiedDetails) - /// An unspecified error. - case secondaryMailsPolicyChangedDetails(TeamLog.SecondaryMailsPolicyChangedDetails) - /// An unspecified error. - case binderAddPageDetails(TeamLog.BinderAddPageDetails) - /// An unspecified error. - case binderAddSectionDetails(TeamLog.BinderAddSectionDetails) - /// An unspecified error. - case binderRemovePageDetails(TeamLog.BinderRemovePageDetails) - /// An unspecified error. - case binderRemoveSectionDetails(TeamLog.BinderRemoveSectionDetails) - /// An unspecified error. - case binderRenamePageDetails(TeamLog.BinderRenamePageDetails) - /// An unspecified error. - case binderRenameSectionDetails(TeamLog.BinderRenameSectionDetails) - /// An unspecified error. - case binderReorderPageDetails(TeamLog.BinderReorderPageDetails) - /// An unspecified error. - case binderReorderSectionDetails(TeamLog.BinderReorderSectionDetails) - /// An unspecified error. - case paperContentAddMemberDetails(TeamLog.PaperContentAddMemberDetails) - /// An unspecified error. - case paperContentAddToFolderDetails(TeamLog.PaperContentAddToFolderDetails) - /// An unspecified error. - case paperContentArchiveDetails(TeamLog.PaperContentArchiveDetails) - /// An unspecified error. - case paperContentCreateDetails(TeamLog.PaperContentCreateDetails) - /// An unspecified error. - case paperContentPermanentlyDeleteDetails(TeamLog.PaperContentPermanentlyDeleteDetails) - /// An unspecified error. - case paperContentRemoveFromFolderDetails(TeamLog.PaperContentRemoveFromFolderDetails) - /// An unspecified error. - case paperContentRemoveMemberDetails(TeamLog.PaperContentRemoveMemberDetails) - /// An unspecified error. - case paperContentRenameDetails(TeamLog.PaperContentRenameDetails) - /// An unspecified error. - case paperContentRestoreDetails(TeamLog.PaperContentRestoreDetails) - /// An unspecified error. - case paperDocAddCommentDetails(TeamLog.PaperDocAddCommentDetails) - /// An unspecified error. - case paperDocChangeMemberRoleDetails(TeamLog.PaperDocChangeMemberRoleDetails) - /// An unspecified error. - case paperDocChangeSharingPolicyDetails(TeamLog.PaperDocChangeSharingPolicyDetails) - /// An unspecified error. - case paperDocChangeSubscriptionDetails(TeamLog.PaperDocChangeSubscriptionDetails) - /// An unspecified error. - case paperDocDeletedDetails(TeamLog.PaperDocDeletedDetails) - /// An unspecified error. - case paperDocDeleteCommentDetails(TeamLog.PaperDocDeleteCommentDetails) - /// An unspecified error. - case paperDocDownloadDetails(TeamLog.PaperDocDownloadDetails) - /// An unspecified error. - case paperDocEditDetails(TeamLog.PaperDocEditDetails) - /// An unspecified error. - case paperDocEditCommentDetails(TeamLog.PaperDocEditCommentDetails) - /// An unspecified error. - case paperDocFollowedDetails(TeamLog.PaperDocFollowedDetails) - /// An unspecified error. - case paperDocMentionDetails(TeamLog.PaperDocMentionDetails) - /// An unspecified error. - case paperDocOwnershipChangedDetails(TeamLog.PaperDocOwnershipChangedDetails) - /// An unspecified error. - case paperDocRequestAccessDetails(TeamLog.PaperDocRequestAccessDetails) - /// An unspecified error. - case paperDocResolveCommentDetails(TeamLog.PaperDocResolveCommentDetails) - /// An unspecified error. - case paperDocRevertDetails(TeamLog.PaperDocRevertDetails) - /// An unspecified error. - case paperDocSlackShareDetails(TeamLog.PaperDocSlackShareDetails) - /// An unspecified error. - case paperDocTeamInviteDetails(TeamLog.PaperDocTeamInviteDetails) - /// An unspecified error. - case paperDocTrashedDetails(TeamLog.PaperDocTrashedDetails) - /// An unspecified error. - case paperDocUnresolveCommentDetails(TeamLog.PaperDocUnresolveCommentDetails) - /// An unspecified error. - case paperDocUntrashedDetails(TeamLog.PaperDocUntrashedDetails) - /// An unspecified error. - case paperDocViewDetails(TeamLog.PaperDocViewDetails) - /// An unspecified error. - case paperExternalViewAllowDetails(TeamLog.PaperExternalViewAllowDetails) + case other + + func json() throws -> JSON { + try DeviceUnlinkPolicySerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try DeviceUnlinkPolicySerializer().serialize(self)))" + } catch { + return "Failed to generate description for DeviceUnlinkPolicy: \(error)" + } + } + } + public class DeviceUnlinkPolicySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DeviceUnlinkPolicy) throws -> JSON { + switch value { + case .keep: + var d = [String: JSON]() + d[".tag"] = .str("keep") + return .dictionary(d) + case .remove: + var d = [String: JSON]() + d[".tag"] = .str("remove") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> DeviceUnlinkPolicy { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "keep": + return DeviceUnlinkPolicy.keep + case "remove": + return DeviceUnlinkPolicy.remove + case "other": + return DeviceUnlinkPolicy.other + default: + return DeviceUnlinkPolicy.other + } + default: + throw JSONSerializerError.deserializeError(type: DeviceUnlinkPolicy.self, json: json) + } + } + } + + /// The DeviceUnlinkType struct + public class DeviceUnlinkType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try DeviceUnlinkTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try DeviceUnlinkTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for DeviceUnlinkType: \(error)" + } + } + } + public class DeviceUnlinkTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DeviceUnlinkType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> DeviceUnlinkType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DeviceUnlinkType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DeviceUnlinkType.self, json: json) + } + } + } + + /// Added members to directory restrictions list. + public class DirectoryRestrictionsAddMembersDetails: CustomStringConvertible, JSONRepresentable { + + func json() throws -> JSON { + try DirectoryRestrictionsAddMembersDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try DirectoryRestrictionsAddMembersDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for DirectoryRestrictionsAddMembersDetails: \(error)" + } + } + } + public class DirectoryRestrictionsAddMembersDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DirectoryRestrictionsAddMembersDetails) throws -> JSON { + let output = [String: JSON]() + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> DirectoryRestrictionsAddMembersDetails { + switch json { + case .dictionary(_): + return DirectoryRestrictionsAddMembersDetails() + default: + throw JSONSerializerError.deserializeError(type: DirectoryRestrictionsAddMembersDetails.self, json: json) + } + } + } + + /// The DirectoryRestrictionsAddMembersType struct + public class DirectoryRestrictionsAddMembersType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try DirectoryRestrictionsAddMembersTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try DirectoryRestrictionsAddMembersTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for DirectoryRestrictionsAddMembersType: \(error)" + } + } + } + public class DirectoryRestrictionsAddMembersTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DirectoryRestrictionsAddMembersType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> DirectoryRestrictionsAddMembersType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DirectoryRestrictionsAddMembersType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DirectoryRestrictionsAddMembersType.self, json: json) + } + } + } + + /// Removed members from directory restrictions list. + public class DirectoryRestrictionsRemoveMembersDetails: CustomStringConvertible, JSONRepresentable { + + func json() throws -> JSON { + try DirectoryRestrictionsRemoveMembersDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try DirectoryRestrictionsRemoveMembersDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for DirectoryRestrictionsRemoveMembersDetails: \(error)" + } + } + } + public class DirectoryRestrictionsRemoveMembersDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DirectoryRestrictionsRemoveMembersDetails) throws -> JSON { + let output = [String: JSON]() + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> DirectoryRestrictionsRemoveMembersDetails { + switch json { + case .dictionary(_): + return DirectoryRestrictionsRemoveMembersDetails() + default: + throw JSONSerializerError.deserializeError(type: DirectoryRestrictionsRemoveMembersDetails.self, json: json) + } + } + } + + /// The DirectoryRestrictionsRemoveMembersType struct + public class DirectoryRestrictionsRemoveMembersType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try DirectoryRestrictionsRemoveMembersTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try DirectoryRestrictionsRemoveMembersTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for DirectoryRestrictionsRemoveMembersType: \(error)" + } + } + } + public class DirectoryRestrictionsRemoveMembersTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DirectoryRestrictionsRemoveMembersType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> DirectoryRestrictionsRemoveMembersType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DirectoryRestrictionsRemoveMembersType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DirectoryRestrictionsRemoveMembersType.self, json: json) + } + } + } + + /// Disabled domain invites. + public class DisabledDomainInvitesDetails: CustomStringConvertible, JSONRepresentable { + + func json() throws -> JSON { + try DisabledDomainInvitesDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try DisabledDomainInvitesDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for DisabledDomainInvitesDetails: \(error)" + } + } + } + public class DisabledDomainInvitesDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DisabledDomainInvitesDetails) throws -> JSON { + let output = [String: JSON]() + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> DisabledDomainInvitesDetails { + switch json { + case .dictionary(_): + return DisabledDomainInvitesDetails() + default: + throw JSONSerializerError.deserializeError(type: DisabledDomainInvitesDetails.self, json: json) + } + } + } + + /// The DisabledDomainInvitesType struct + public class DisabledDomainInvitesType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try DisabledDomainInvitesTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try DisabledDomainInvitesTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for DisabledDomainInvitesType: \(error)" + } + } + } + public class DisabledDomainInvitesTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DisabledDomainInvitesType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> DisabledDomainInvitesType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DisabledDomainInvitesType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DisabledDomainInvitesType.self, json: json) + } + } + } + + /// The DispositionActionType union + public enum DispositionActionType: CustomStringConvertible, JSONRepresentable { /// An unspecified error. - case paperExternalViewDefaultTeamDetails(TeamLog.PaperExternalViewDefaultTeamDetails) + case automaticDelete /// An unspecified error. - case paperExternalViewForbidDetails(TeamLog.PaperExternalViewForbidDetails) + case automaticPermanentlyDelete + /// An unspecified error. + case other + + func json() throws -> JSON { + try DispositionActionTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try DispositionActionTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for DispositionActionType: \(error)" + } + } + } + public class DispositionActionTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DispositionActionType) throws -> JSON { + switch value { + case .automaticDelete: + var d = [String: JSON]() + d[".tag"] = .str("automatic_delete") + return .dictionary(d) + case .automaticPermanentlyDelete: + var d = [String: JSON]() + d[".tag"] = .str("automatic_permanently_delete") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> DispositionActionType { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "automatic_delete": + return DispositionActionType.automaticDelete + case "automatic_permanently_delete": + return DispositionActionType.automaticPermanentlyDelete + case "other": + return DispositionActionType.other + default: + return DispositionActionType.other + } + default: + throw JSONSerializerError.deserializeError(type: DispositionActionType.self, json: json) + } + } + } + + /// Approved user's request to join team. + public class DomainInvitesApproveRequestToJoinTeamDetails: CustomStringConvertible, JSONRepresentable { + + func json() throws -> JSON { + try DomainInvitesApproveRequestToJoinTeamDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try DomainInvitesApproveRequestToJoinTeamDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for DomainInvitesApproveRequestToJoinTeamDetails: \(error)" + } + } + } + public class DomainInvitesApproveRequestToJoinTeamDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DomainInvitesApproveRequestToJoinTeamDetails) throws -> JSON { + let output = [String: JSON]() + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> DomainInvitesApproveRequestToJoinTeamDetails { + switch json { + case .dictionary(_): + return DomainInvitesApproveRequestToJoinTeamDetails() + default: + throw JSONSerializerError.deserializeError(type: DomainInvitesApproveRequestToJoinTeamDetails.self, json: json) + } + } + } + + /// The DomainInvitesApproveRequestToJoinTeamType struct + public class DomainInvitesApproveRequestToJoinTeamType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try DomainInvitesApproveRequestToJoinTeamTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try DomainInvitesApproveRequestToJoinTeamTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for DomainInvitesApproveRequestToJoinTeamType: \(error)" + } + } + } + public class DomainInvitesApproveRequestToJoinTeamTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DomainInvitesApproveRequestToJoinTeamType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> DomainInvitesApproveRequestToJoinTeamType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DomainInvitesApproveRequestToJoinTeamType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DomainInvitesApproveRequestToJoinTeamType.self, json: json) + } + } + } + + /// Declined user's request to join team. + public class DomainInvitesDeclineRequestToJoinTeamDetails: CustomStringConvertible, JSONRepresentable { + + func json() throws -> JSON { + try DomainInvitesDeclineRequestToJoinTeamDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try DomainInvitesDeclineRequestToJoinTeamDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for DomainInvitesDeclineRequestToJoinTeamDetails: \(error)" + } + } + } + public class DomainInvitesDeclineRequestToJoinTeamDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DomainInvitesDeclineRequestToJoinTeamDetails) throws -> JSON { + let output = [String: JSON]() + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> DomainInvitesDeclineRequestToJoinTeamDetails { + switch json { + case .dictionary(_): + return DomainInvitesDeclineRequestToJoinTeamDetails() + default: + throw JSONSerializerError.deserializeError(type: DomainInvitesDeclineRequestToJoinTeamDetails.self, json: json) + } + } + } + + /// The DomainInvitesDeclineRequestToJoinTeamType struct + public class DomainInvitesDeclineRequestToJoinTeamType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try DomainInvitesDeclineRequestToJoinTeamTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try DomainInvitesDeclineRequestToJoinTeamTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for DomainInvitesDeclineRequestToJoinTeamType: \(error)" + } + } + } + public class DomainInvitesDeclineRequestToJoinTeamTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DomainInvitesDeclineRequestToJoinTeamType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> DomainInvitesDeclineRequestToJoinTeamType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DomainInvitesDeclineRequestToJoinTeamType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DomainInvitesDeclineRequestToJoinTeamType.self, json: json) + } + } + } + + /// Sent domain invites to existing domain accounts. + public class DomainInvitesEmailExistingUsersDetails: CustomStringConvertible, JSONRepresentable { + /// Domain names. + public let domainName: String + /// Number of recipients. + public let numRecipients: UInt64 + public init(domainName: String, numRecipients: UInt64) { + stringValidator()(domainName) + self.domainName = domainName + comparableValidator()(numRecipients) + self.numRecipients = numRecipients + } + + func json() throws -> JSON { + try DomainInvitesEmailExistingUsersDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try DomainInvitesEmailExistingUsersDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for DomainInvitesEmailExistingUsersDetails: \(error)" + } + } + } + public class DomainInvitesEmailExistingUsersDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DomainInvitesEmailExistingUsersDetails) throws -> JSON { + let output = [ + "domain_name": try Serialization._StringSerializer.serialize(value.domainName), + "num_recipients": try Serialization._UInt64Serializer.serialize(value.numRecipients), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> DomainInvitesEmailExistingUsersDetails { + switch json { + case .dictionary(let dict): + let domainName = try Serialization._StringSerializer.deserialize(dict["domain_name"] ?? .null) + let numRecipients = try Serialization._UInt64Serializer.deserialize(dict["num_recipients"] ?? .null) + return DomainInvitesEmailExistingUsersDetails(domainName: domainName, numRecipients: numRecipients) + default: + throw JSONSerializerError.deserializeError(type: DomainInvitesEmailExistingUsersDetails.self, json: json) + } + } + } + + /// The DomainInvitesEmailExistingUsersType struct + public class DomainInvitesEmailExistingUsersType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try DomainInvitesEmailExistingUsersTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try DomainInvitesEmailExistingUsersTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for DomainInvitesEmailExistingUsersType: \(error)" + } + } + } + public class DomainInvitesEmailExistingUsersTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DomainInvitesEmailExistingUsersType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> DomainInvitesEmailExistingUsersType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DomainInvitesEmailExistingUsersType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DomainInvitesEmailExistingUsersType.self, json: json) + } + } + } + + /// Requested to join team. + public class DomainInvitesRequestToJoinTeamDetails: CustomStringConvertible, JSONRepresentable { + + func json() throws -> JSON { + try DomainInvitesRequestToJoinTeamDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try DomainInvitesRequestToJoinTeamDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for DomainInvitesRequestToJoinTeamDetails: \(error)" + } + } + } + public class DomainInvitesRequestToJoinTeamDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DomainInvitesRequestToJoinTeamDetails) throws -> JSON { + let output = [String: JSON]() + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> DomainInvitesRequestToJoinTeamDetails { + switch json { + case .dictionary(_): + return DomainInvitesRequestToJoinTeamDetails() + default: + throw JSONSerializerError.deserializeError(type: DomainInvitesRequestToJoinTeamDetails.self, json: json) + } + } + } + + /// The DomainInvitesRequestToJoinTeamType struct + public class DomainInvitesRequestToJoinTeamType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try DomainInvitesRequestToJoinTeamTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try DomainInvitesRequestToJoinTeamTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for DomainInvitesRequestToJoinTeamType: \(error)" + } + } + } + public class DomainInvitesRequestToJoinTeamTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DomainInvitesRequestToJoinTeamType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> DomainInvitesRequestToJoinTeamType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DomainInvitesRequestToJoinTeamType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DomainInvitesRequestToJoinTeamType.self, json: json) + } + } + } + + /// Disabled "Automatically invite new users". + public class DomainInvitesSetInviteNewUserPrefToNoDetails: CustomStringConvertible, JSONRepresentable { + + func json() throws -> JSON { + try DomainInvitesSetInviteNewUserPrefToNoDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try DomainInvitesSetInviteNewUserPrefToNoDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for DomainInvitesSetInviteNewUserPrefToNoDetails: \(error)" + } + } + } + public class DomainInvitesSetInviteNewUserPrefToNoDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DomainInvitesSetInviteNewUserPrefToNoDetails) throws -> JSON { + let output = [String: JSON]() + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> DomainInvitesSetInviteNewUserPrefToNoDetails { + switch json { + case .dictionary(_): + return DomainInvitesSetInviteNewUserPrefToNoDetails() + default: + throw JSONSerializerError.deserializeError(type: DomainInvitesSetInviteNewUserPrefToNoDetails.self, json: json) + } + } + } + + /// The DomainInvitesSetInviteNewUserPrefToNoType struct + public class DomainInvitesSetInviteNewUserPrefToNoType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try DomainInvitesSetInviteNewUserPrefToNoTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try DomainInvitesSetInviteNewUserPrefToNoTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for DomainInvitesSetInviteNewUserPrefToNoType: \(error)" + } + } + } + public class DomainInvitesSetInviteNewUserPrefToNoTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DomainInvitesSetInviteNewUserPrefToNoType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> DomainInvitesSetInviteNewUserPrefToNoType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DomainInvitesSetInviteNewUserPrefToNoType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DomainInvitesSetInviteNewUserPrefToNoType.self, json: json) + } + } + } + + /// Enabled "Automatically invite new users". + public class DomainInvitesSetInviteNewUserPrefToYesDetails: CustomStringConvertible, JSONRepresentable { + + func json() throws -> JSON { + try DomainInvitesSetInviteNewUserPrefToYesDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try DomainInvitesSetInviteNewUserPrefToYesDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for DomainInvitesSetInviteNewUserPrefToYesDetails: \(error)" + } + } + } + public class DomainInvitesSetInviteNewUserPrefToYesDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DomainInvitesSetInviteNewUserPrefToYesDetails) throws -> JSON { + let output = [String: JSON]() + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> DomainInvitesSetInviteNewUserPrefToYesDetails { + switch json { + case .dictionary(_): + return DomainInvitesSetInviteNewUserPrefToYesDetails() + default: + throw JSONSerializerError.deserializeError(type: DomainInvitesSetInviteNewUserPrefToYesDetails.self, json: json) + } + } + } + + /// The DomainInvitesSetInviteNewUserPrefToYesType struct + public class DomainInvitesSetInviteNewUserPrefToYesType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try DomainInvitesSetInviteNewUserPrefToYesTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try DomainInvitesSetInviteNewUserPrefToYesTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for DomainInvitesSetInviteNewUserPrefToYesType: \(error)" + } + } + } + public class DomainInvitesSetInviteNewUserPrefToYesTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DomainInvitesSetInviteNewUserPrefToYesType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> DomainInvitesSetInviteNewUserPrefToYesType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DomainInvitesSetInviteNewUserPrefToYesType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DomainInvitesSetInviteNewUserPrefToYesType.self, json: json) + } + } + } + + /// Failed to verify team domain. + public class DomainVerificationAddDomainFailDetails: CustomStringConvertible, JSONRepresentable { + /// Domain name. + public let domainName: String + /// Domain name verification method. Might be missing due to historical data gap. + public let verificationMethod: String? + public init(domainName: String, verificationMethod: String? = nil) { + stringValidator()(domainName) + self.domainName = domainName + nullableValidator(stringValidator())(verificationMethod) + self.verificationMethod = verificationMethod + } + + func json() throws -> JSON { + try DomainVerificationAddDomainFailDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try DomainVerificationAddDomainFailDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for DomainVerificationAddDomainFailDetails: \(error)" + } + } + } + public class DomainVerificationAddDomainFailDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DomainVerificationAddDomainFailDetails) throws -> JSON { + let output = [ + "domain_name": try Serialization._StringSerializer.serialize(value.domainName), + "verification_method": try NullableSerializer(Serialization._StringSerializer).serialize(value.verificationMethod), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> DomainVerificationAddDomainFailDetails { + switch json { + case .dictionary(let dict): + let domainName = try Serialization._StringSerializer.deserialize(dict["domain_name"] ?? .null) + let verificationMethod = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["verification_method"] ?? .null) + return DomainVerificationAddDomainFailDetails(domainName: domainName, verificationMethod: verificationMethod) + default: + throw JSONSerializerError.deserializeError(type: DomainVerificationAddDomainFailDetails.self, json: json) + } + } + } + + /// The DomainVerificationAddDomainFailType struct + public class DomainVerificationAddDomainFailType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try DomainVerificationAddDomainFailTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try DomainVerificationAddDomainFailTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for DomainVerificationAddDomainFailType: \(error)" + } + } + } + public class DomainVerificationAddDomainFailTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DomainVerificationAddDomainFailType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> DomainVerificationAddDomainFailType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DomainVerificationAddDomainFailType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DomainVerificationAddDomainFailType.self, json: json) + } + } + } + + /// Verified team domain. + public class DomainVerificationAddDomainSuccessDetails: CustomStringConvertible, JSONRepresentable { + /// Domain names. + public let domainNames: Array + /// Domain name verification method. Might be missing due to historical data gap. + public let verificationMethod: String? + public init(domainNames: Array, verificationMethod: String? = nil) { + arrayValidator(itemValidator: stringValidator())(domainNames) + self.domainNames = domainNames + nullableValidator(stringValidator())(verificationMethod) + self.verificationMethod = verificationMethod + } + + func json() throws -> JSON { + try DomainVerificationAddDomainSuccessDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try DomainVerificationAddDomainSuccessDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for DomainVerificationAddDomainSuccessDetails: \(error)" + } + } + } + public class DomainVerificationAddDomainSuccessDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DomainVerificationAddDomainSuccessDetails) throws -> JSON { + let output = [ + "domain_names": try ArraySerializer(Serialization._StringSerializer).serialize(value.domainNames), + "verification_method": try NullableSerializer(Serialization._StringSerializer).serialize(value.verificationMethod), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> DomainVerificationAddDomainSuccessDetails { + switch json { + case .dictionary(let dict): + let domainNames = try ArraySerializer(Serialization._StringSerializer).deserialize(dict["domain_names"] ?? .null) + let verificationMethod = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["verification_method"] ?? .null) + return DomainVerificationAddDomainSuccessDetails(domainNames: domainNames, verificationMethod: verificationMethod) + default: + throw JSONSerializerError.deserializeError(type: DomainVerificationAddDomainSuccessDetails.self, json: json) + } + } + } + + /// The DomainVerificationAddDomainSuccessType struct + public class DomainVerificationAddDomainSuccessType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try DomainVerificationAddDomainSuccessTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try DomainVerificationAddDomainSuccessTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for DomainVerificationAddDomainSuccessType: \(error)" + } + } + } + public class DomainVerificationAddDomainSuccessTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DomainVerificationAddDomainSuccessType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> DomainVerificationAddDomainSuccessType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DomainVerificationAddDomainSuccessType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DomainVerificationAddDomainSuccessType.self, json: json) + } + } + } + + /// Removed domain from list of verified team domains. + public class DomainVerificationRemoveDomainDetails: CustomStringConvertible, JSONRepresentable { + /// Domain names. + public let domainNames: Array + public init(domainNames: Array) { + arrayValidator(itemValidator: stringValidator())(domainNames) + self.domainNames = domainNames + } + + func json() throws -> JSON { + try DomainVerificationRemoveDomainDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try DomainVerificationRemoveDomainDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for DomainVerificationRemoveDomainDetails: \(error)" + } + } + } + public class DomainVerificationRemoveDomainDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DomainVerificationRemoveDomainDetails) throws -> JSON { + let output = [ + "domain_names": try ArraySerializer(Serialization._StringSerializer).serialize(value.domainNames), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> DomainVerificationRemoveDomainDetails { + switch json { + case .dictionary(let dict): + let domainNames = try ArraySerializer(Serialization._StringSerializer).deserialize(dict["domain_names"] ?? .null) + return DomainVerificationRemoveDomainDetails(domainNames: domainNames) + default: + throw JSONSerializerError.deserializeError(type: DomainVerificationRemoveDomainDetails.self, json: json) + } + } + } + + /// The DomainVerificationRemoveDomainType struct + public class DomainVerificationRemoveDomainType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try DomainVerificationRemoveDomainTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try DomainVerificationRemoveDomainTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for DomainVerificationRemoveDomainType: \(error)" + } + } + } + public class DomainVerificationRemoveDomainTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DomainVerificationRemoveDomainType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> DomainVerificationRemoveDomainType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DomainVerificationRemoveDomainType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DomainVerificationRemoveDomainType.self, json: json) + } + } + } + + /// Shared content downloads policy + public enum DownloadPolicyType: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case allow + /// An unspecified error. + case disallow + /// An unspecified error. + case other + + func json() throws -> JSON { + try DownloadPolicyTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try DownloadPolicyTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for DownloadPolicyType: \(error)" + } + } + } + public class DownloadPolicyTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DownloadPolicyType) throws -> JSON { + switch value { + case .allow: + var d = [String: JSON]() + d[".tag"] = .str("allow") + return .dictionary(d) + case .disallow: + var d = [String: JSON]() + d[".tag"] = .str("disallow") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> DownloadPolicyType { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "allow": + return DownloadPolicyType.allow + case "disallow": + return DownloadPolicyType.disallow + case "other": + return DownloadPolicyType.other + default: + return DownloadPolicyType.other + } + default: + throw JSONSerializerError.deserializeError(type: DownloadPolicyType.self, json: json) + } + } + } + + /// Exported passwords. + public class DropboxPasswordsExportedDetails: CustomStringConvertible, JSONRepresentable { + /// The platform the device runs export. + public let platform: String + public init(platform: String) { + stringValidator()(platform) + self.platform = platform + } + + func json() throws -> JSON { + try DropboxPasswordsExportedDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try DropboxPasswordsExportedDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for DropboxPasswordsExportedDetails: \(error)" + } + } + } + public class DropboxPasswordsExportedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DropboxPasswordsExportedDetails) throws -> JSON { + let output = [ + "platform": try Serialization._StringSerializer.serialize(value.platform), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> DropboxPasswordsExportedDetails { + switch json { + case .dictionary(let dict): + let platform = try Serialization._StringSerializer.deserialize(dict["platform"] ?? .null) + return DropboxPasswordsExportedDetails(platform: platform) + default: + throw JSONSerializerError.deserializeError(type: DropboxPasswordsExportedDetails.self, json: json) + } + } + } + + /// The DropboxPasswordsExportedType struct + public class DropboxPasswordsExportedType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try DropboxPasswordsExportedTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try DropboxPasswordsExportedTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for DropboxPasswordsExportedType: \(error)" + } + } + } + public class DropboxPasswordsExportedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DropboxPasswordsExportedType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> DropboxPasswordsExportedType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DropboxPasswordsExportedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DropboxPasswordsExportedType.self, json: json) + } + } + } + + /// Enrolled new Dropbox Passwords device. + public class DropboxPasswordsNewDeviceEnrolledDetails: CustomStringConvertible, JSONRepresentable { + /// Whether it's a first device enrolled. + public let isFirstDevice: Bool + /// The platform the device is enrolled. + public let platform: String + public init(isFirstDevice: Bool, platform: String) { + self.isFirstDevice = isFirstDevice + stringValidator()(platform) + self.platform = platform + } + + func json() throws -> JSON { + try DropboxPasswordsNewDeviceEnrolledDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try DropboxPasswordsNewDeviceEnrolledDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for DropboxPasswordsNewDeviceEnrolledDetails: \(error)" + } + } + } + public class DropboxPasswordsNewDeviceEnrolledDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DropboxPasswordsNewDeviceEnrolledDetails) throws -> JSON { + let output = [ + "is_first_device": try Serialization._BoolSerializer.serialize(value.isFirstDevice), + "platform": try Serialization._StringSerializer.serialize(value.platform), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> DropboxPasswordsNewDeviceEnrolledDetails { + switch json { + case .dictionary(let dict): + let isFirstDevice = try Serialization._BoolSerializer.deserialize(dict["is_first_device"] ?? .null) + let platform = try Serialization._StringSerializer.deserialize(dict["platform"] ?? .null) + return DropboxPasswordsNewDeviceEnrolledDetails(isFirstDevice: isFirstDevice, platform: platform) + default: + throw JSONSerializerError.deserializeError(type: DropboxPasswordsNewDeviceEnrolledDetails.self, json: json) + } + } + } + + /// The DropboxPasswordsNewDeviceEnrolledType struct + public class DropboxPasswordsNewDeviceEnrolledType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try DropboxPasswordsNewDeviceEnrolledTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try DropboxPasswordsNewDeviceEnrolledTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for DropboxPasswordsNewDeviceEnrolledType: \(error)" + } + } + } + public class DropboxPasswordsNewDeviceEnrolledTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DropboxPasswordsNewDeviceEnrolledType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> DropboxPasswordsNewDeviceEnrolledType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DropboxPasswordsNewDeviceEnrolledType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DropboxPasswordsNewDeviceEnrolledType.self, json: json) + } + } + } + + /// Policy for deciding whether team users can use Dropbox Passwords + public enum DropboxPasswordsPolicy: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case default_ + /// An unspecified error. + case disabled + /// An unspecified error. + case enabled + /// An unspecified error. + case other + + func json() throws -> JSON { + try DropboxPasswordsPolicySerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try DropboxPasswordsPolicySerializer().serialize(self)))" + } catch { + return "Failed to generate description for DropboxPasswordsPolicy: \(error)" + } + } + } + public class DropboxPasswordsPolicySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DropboxPasswordsPolicy) throws -> JSON { + switch value { + case .default_: + var d = [String: JSON]() + d[".tag"] = .str("default") + return .dictionary(d) + case .disabled: + var d = [String: JSON]() + d[".tag"] = .str("disabled") + return .dictionary(d) + case .enabled: + var d = [String: JSON]() + d[".tag"] = .str("enabled") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> DropboxPasswordsPolicy { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "default": + return DropboxPasswordsPolicy.default_ + case "disabled": + return DropboxPasswordsPolicy.disabled + case "enabled": + return DropboxPasswordsPolicy.enabled + case "other": + return DropboxPasswordsPolicy.other + default: + return DropboxPasswordsPolicy.other + } + default: + throw JSONSerializerError.deserializeError(type: DropboxPasswordsPolicy.self, json: json) + } + } + } + + /// Changed Dropbox Passwords policy for team. + public class DropboxPasswordsPolicyChangedDetails: CustomStringConvertible, JSONRepresentable { + /// To. + public let newValue: TeamLog.DropboxPasswordsPolicy + /// From. + public let previousValue: TeamLog.DropboxPasswordsPolicy + public init(newValue: TeamLog.DropboxPasswordsPolicy, previousValue: TeamLog.DropboxPasswordsPolicy) { + self.newValue = newValue + self.previousValue = previousValue + } + + func json() throws -> JSON { + try DropboxPasswordsPolicyChangedDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try DropboxPasswordsPolicyChangedDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for DropboxPasswordsPolicyChangedDetails: \(error)" + } + } + } + public class DropboxPasswordsPolicyChangedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DropboxPasswordsPolicyChangedDetails) throws -> JSON { + let output = [ + "new_value": try TeamLog.DropboxPasswordsPolicySerializer().serialize(value.newValue), + "previous_value": try TeamLog.DropboxPasswordsPolicySerializer().serialize(value.previousValue), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> DropboxPasswordsPolicyChangedDetails { + switch json { + case .dictionary(let dict): + let newValue = try TeamLog.DropboxPasswordsPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try TeamLog.DropboxPasswordsPolicySerializer().deserialize(dict["previous_value"] ?? .null) + return DropboxPasswordsPolicyChangedDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: DropboxPasswordsPolicyChangedDetails.self, json: json) + } + } + } + + /// The DropboxPasswordsPolicyChangedType struct + public class DropboxPasswordsPolicyChangedType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try DropboxPasswordsPolicyChangedTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try DropboxPasswordsPolicyChangedTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for DropboxPasswordsPolicyChangedType: \(error)" + } + } + } + public class DropboxPasswordsPolicyChangedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DropboxPasswordsPolicyChangedType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> DropboxPasswordsPolicyChangedType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return DropboxPasswordsPolicyChangedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: DropboxPasswordsPolicyChangedType.self, json: json) + } + } + } + + /// Represents a time duration: unit and amount + public class DurationLogInfo: CustomStringConvertible, JSONRepresentable { + /// Time unit. + public let unit: TeamLog.TimeUnit + /// Amount of time. + public let amount: UInt64 + public init(unit: TeamLog.TimeUnit, amount: UInt64) { + self.unit = unit + comparableValidator()(amount) + self.amount = amount + } + + func json() throws -> JSON { + try DurationLogInfoSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try DurationLogInfoSerializer().serialize(self)))" + } catch { + return "Failed to generate description for DurationLogInfo: \(error)" + } + } + } + public class DurationLogInfoSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: DurationLogInfo) throws -> JSON { + let output = [ + "unit": try TeamLog.TimeUnitSerializer().serialize(value.unit), + "amount": try Serialization._UInt64Serializer.serialize(value.amount), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> DurationLogInfo { + switch json { + case .dictionary(let dict): + let unit = try TeamLog.TimeUnitSerializer().deserialize(dict["unit"] ?? .null) + let amount = try Serialization._UInt64Serializer.deserialize(dict["amount"] ?? .null) + return DurationLogInfo(unit: unit, amount: amount) + default: + throw JSONSerializerError.deserializeError(type: DurationLogInfo.self, json: json) + } + } + } + + /// Policy for deciding whether a team can use Email to Dropbox feature + public enum EmailIngestPolicy: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case disabled + /// An unspecified error. + case enabled + /// An unspecified error. + case other + + func json() throws -> JSON { + try EmailIngestPolicySerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try EmailIngestPolicySerializer().serialize(self)))" + } catch { + return "Failed to generate description for EmailIngestPolicy: \(error)" + } + } + } + public class EmailIngestPolicySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: EmailIngestPolicy) throws -> JSON { + switch value { + case .disabled: + var d = [String: JSON]() + d[".tag"] = .str("disabled") + return .dictionary(d) + case .enabled: + var d = [String: JSON]() + d[".tag"] = .str("enabled") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> EmailIngestPolicy { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "disabled": + return EmailIngestPolicy.disabled + case "enabled": + return EmailIngestPolicy.enabled + case "other": + return EmailIngestPolicy.other + default: + return EmailIngestPolicy.other + } + default: + throw JSONSerializerError.deserializeError(type: EmailIngestPolicy.self, json: json) + } + } + } + + /// Changed email to Dropbox policy for team. + public class EmailIngestPolicyChangedDetails: CustomStringConvertible, JSONRepresentable { + /// To. + public let newValue: TeamLog.EmailIngestPolicy + /// From. + public let previousValue: TeamLog.EmailIngestPolicy + public init(newValue: TeamLog.EmailIngestPolicy, previousValue: TeamLog.EmailIngestPolicy) { + self.newValue = newValue + self.previousValue = previousValue + } + + func json() throws -> JSON { + try EmailIngestPolicyChangedDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try EmailIngestPolicyChangedDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for EmailIngestPolicyChangedDetails: \(error)" + } + } + } + public class EmailIngestPolicyChangedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: EmailIngestPolicyChangedDetails) throws -> JSON { + let output = [ + "new_value": try TeamLog.EmailIngestPolicySerializer().serialize(value.newValue), + "previous_value": try TeamLog.EmailIngestPolicySerializer().serialize(value.previousValue), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> EmailIngestPolicyChangedDetails { + switch json { + case .dictionary(let dict): + let newValue = try TeamLog.EmailIngestPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try TeamLog.EmailIngestPolicySerializer().deserialize(dict["previous_value"] ?? .null) + return EmailIngestPolicyChangedDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: EmailIngestPolicyChangedDetails.self, json: json) + } + } + } + + /// The EmailIngestPolicyChangedType struct + public class EmailIngestPolicyChangedType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try EmailIngestPolicyChangedTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try EmailIngestPolicyChangedTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for EmailIngestPolicyChangedType: \(error)" + } + } + } + public class EmailIngestPolicyChangedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: EmailIngestPolicyChangedType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> EmailIngestPolicyChangedType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return EmailIngestPolicyChangedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: EmailIngestPolicyChangedType.self, json: json) + } + } + } + + /// Received files via Email to Dropbox. + public class EmailIngestReceiveFileDetails: CustomStringConvertible, JSONRepresentable { + /// Inbox name. + public let inboxName: String + /// Submitted file names. + public let attachmentNames: Array + /// Subject of the email. + public let subject: String? + /// The name as provided by the submitter. + public let fromName: String? + /// The email as provided by the submitter. + public let fromEmail: String? + public init(inboxName: String, attachmentNames: Array, subject: String? = nil, fromName: String? = nil, fromEmail: String? = nil) { + stringValidator()(inboxName) + self.inboxName = inboxName + arrayValidator(itemValidator: stringValidator())(attachmentNames) + self.attachmentNames = attachmentNames + nullableValidator(stringValidator())(subject) + self.subject = subject + nullableValidator(stringValidator())(fromName) + self.fromName = fromName + nullableValidator(stringValidator(maxLength: 255))(fromEmail) + self.fromEmail = fromEmail + } + + func json() throws -> JSON { + try EmailIngestReceiveFileDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try EmailIngestReceiveFileDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for EmailIngestReceiveFileDetails: \(error)" + } + } + } + public class EmailIngestReceiveFileDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: EmailIngestReceiveFileDetails) throws -> JSON { + let output = [ + "inbox_name": try Serialization._StringSerializer.serialize(value.inboxName), + "attachment_names": try ArraySerializer(Serialization._StringSerializer).serialize(value.attachmentNames), + "subject": try NullableSerializer(Serialization._StringSerializer).serialize(value.subject), + "from_name": try NullableSerializer(Serialization._StringSerializer).serialize(value.fromName), + "from_email": try NullableSerializer(Serialization._StringSerializer).serialize(value.fromEmail), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> EmailIngestReceiveFileDetails { + switch json { + case .dictionary(let dict): + let inboxName = try Serialization._StringSerializer.deserialize(dict["inbox_name"] ?? .null) + let attachmentNames = try ArraySerializer(Serialization._StringSerializer).deserialize(dict["attachment_names"] ?? .null) + let subject = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["subject"] ?? .null) + let fromName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["from_name"] ?? .null) + let fromEmail = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["from_email"] ?? .null) + return EmailIngestReceiveFileDetails(inboxName: inboxName, attachmentNames: attachmentNames, subject: subject, fromName: fromName, fromEmail: fromEmail) + default: + throw JSONSerializerError.deserializeError(type: EmailIngestReceiveFileDetails.self, json: json) + } + } + } + + /// The EmailIngestReceiveFileType struct + public class EmailIngestReceiveFileType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try EmailIngestReceiveFileTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try EmailIngestReceiveFileTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for EmailIngestReceiveFileType: \(error)" + } + } + } + public class EmailIngestReceiveFileTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: EmailIngestReceiveFileType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> EmailIngestReceiveFileType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return EmailIngestReceiveFileType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: EmailIngestReceiveFileType.self, json: json) + } + } + } + + /// Added members to EMM exception list. + public class EmmAddExceptionDetails: CustomStringConvertible, JSONRepresentable { + + func json() throws -> JSON { + try EmmAddExceptionDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try EmmAddExceptionDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for EmmAddExceptionDetails: \(error)" + } + } + } + public class EmmAddExceptionDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: EmmAddExceptionDetails) throws -> JSON { + let output = [String: JSON]() + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> EmmAddExceptionDetails { + switch json { + case .dictionary(_): + return EmmAddExceptionDetails() + default: + throw JSONSerializerError.deserializeError(type: EmmAddExceptionDetails.self, json: json) + } + } + } + + /// The EmmAddExceptionType struct + public class EmmAddExceptionType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try EmmAddExceptionTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try EmmAddExceptionTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for EmmAddExceptionType: \(error)" + } + } + } + public class EmmAddExceptionTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: EmmAddExceptionType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> EmmAddExceptionType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return EmmAddExceptionType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: EmmAddExceptionType.self, json: json) + } + } + } + + /// Enabled/disabled enterprise mobility management for members. + public class EmmChangePolicyDetails: CustomStringConvertible, JSONRepresentable { + /// New enterprise mobility management policy. + public let newValue: TeamPolicies.EmmState + /// Previous enterprise mobility management policy. Might be missing due to historical data gap. + public let previousValue: TeamPolicies.EmmState? + public init(newValue: TeamPolicies.EmmState, previousValue: TeamPolicies.EmmState? = nil) { + self.newValue = newValue + self.previousValue = previousValue + } + + func json() throws -> JSON { + try EmmChangePolicyDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try EmmChangePolicyDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for EmmChangePolicyDetails: \(error)" + } + } + } + public class EmmChangePolicyDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: EmmChangePolicyDetails) throws -> JSON { + let output = [ + "new_value": try TeamPolicies.EmmStateSerializer().serialize(value.newValue), + "previous_value": try NullableSerializer(TeamPolicies.EmmStateSerializer()).serialize(value.previousValue), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> EmmChangePolicyDetails { + switch json { + case .dictionary(let dict): + let newValue = try TeamPolicies.EmmStateSerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try NullableSerializer(TeamPolicies.EmmStateSerializer()).deserialize(dict["previous_value"] ?? .null) + return EmmChangePolicyDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: EmmChangePolicyDetails.self, json: json) + } + } + } + + /// The EmmChangePolicyType struct + public class EmmChangePolicyType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try EmmChangePolicyTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try EmmChangePolicyTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for EmmChangePolicyType: \(error)" + } + } + } + public class EmmChangePolicyTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: EmmChangePolicyType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> EmmChangePolicyType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return EmmChangePolicyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: EmmChangePolicyType.self, json: json) + } + } + } + + /// Created EMM-excluded users report. + public class EmmCreateExceptionsReportDetails: CustomStringConvertible, JSONRepresentable { + + func json() throws -> JSON { + try EmmCreateExceptionsReportDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try EmmCreateExceptionsReportDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for EmmCreateExceptionsReportDetails: \(error)" + } + } + } + public class EmmCreateExceptionsReportDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: EmmCreateExceptionsReportDetails) throws -> JSON { + let output = [String: JSON]() + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> EmmCreateExceptionsReportDetails { + switch json { + case .dictionary(_): + return EmmCreateExceptionsReportDetails() + default: + throw JSONSerializerError.deserializeError(type: EmmCreateExceptionsReportDetails.self, json: json) + } + } + } + + /// The EmmCreateExceptionsReportType struct + public class EmmCreateExceptionsReportType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try EmmCreateExceptionsReportTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try EmmCreateExceptionsReportTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for EmmCreateExceptionsReportType: \(error)" + } + } + } + public class EmmCreateExceptionsReportTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: EmmCreateExceptionsReportType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> EmmCreateExceptionsReportType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return EmmCreateExceptionsReportType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: EmmCreateExceptionsReportType.self, json: json) + } + } + } + + /// Created EMM mobile app usage report. + public class EmmCreateUsageReportDetails: CustomStringConvertible, JSONRepresentable { + + func json() throws -> JSON { + try EmmCreateUsageReportDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try EmmCreateUsageReportDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for EmmCreateUsageReportDetails: \(error)" + } + } + } + public class EmmCreateUsageReportDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: EmmCreateUsageReportDetails) throws -> JSON { + let output = [String: JSON]() + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> EmmCreateUsageReportDetails { + switch json { + case .dictionary(_): + return EmmCreateUsageReportDetails() + default: + throw JSONSerializerError.deserializeError(type: EmmCreateUsageReportDetails.self, json: json) + } + } + } + + /// The EmmCreateUsageReportType struct + public class EmmCreateUsageReportType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try EmmCreateUsageReportTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try EmmCreateUsageReportTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for EmmCreateUsageReportType: \(error)" + } + } + } + public class EmmCreateUsageReportTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: EmmCreateUsageReportType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> EmmCreateUsageReportType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return EmmCreateUsageReportType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: EmmCreateUsageReportType.self, json: json) + } + } + } + + /// Failed to sign in via EMM. + public class EmmErrorDetails: CustomStringConvertible, JSONRepresentable { + /// Error details. + public let errorDetails: TeamLog.FailureDetailsLogInfo + public init(errorDetails: TeamLog.FailureDetailsLogInfo) { + self.errorDetails = errorDetails + } + + func json() throws -> JSON { + try EmmErrorDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try EmmErrorDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for EmmErrorDetails: \(error)" + } + } + } + public class EmmErrorDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: EmmErrorDetails) throws -> JSON { + let output = [ + "error_details": try TeamLog.FailureDetailsLogInfoSerializer().serialize(value.errorDetails), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> EmmErrorDetails { + switch json { + case .dictionary(let dict): + let errorDetails = try TeamLog.FailureDetailsLogInfoSerializer().deserialize(dict["error_details"] ?? .null) + return EmmErrorDetails(errorDetails: errorDetails) + default: + throw JSONSerializerError.deserializeError(type: EmmErrorDetails.self, json: json) + } + } + } + + /// The EmmErrorType struct + public class EmmErrorType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try EmmErrorTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try EmmErrorTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for EmmErrorType: \(error)" + } + } + } + public class EmmErrorTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: EmmErrorType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> EmmErrorType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return EmmErrorType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: EmmErrorType.self, json: json) + } + } + } + + /// Refreshed auth token used for setting up EMM. + public class EmmRefreshAuthTokenDetails: CustomStringConvertible, JSONRepresentable { + + func json() throws -> JSON { + try EmmRefreshAuthTokenDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try EmmRefreshAuthTokenDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for EmmRefreshAuthTokenDetails: \(error)" + } + } + } + public class EmmRefreshAuthTokenDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: EmmRefreshAuthTokenDetails) throws -> JSON { + let output = [String: JSON]() + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> EmmRefreshAuthTokenDetails { + switch json { + case .dictionary(_): + return EmmRefreshAuthTokenDetails() + default: + throw JSONSerializerError.deserializeError(type: EmmRefreshAuthTokenDetails.self, json: json) + } + } + } + + /// The EmmRefreshAuthTokenType struct + public class EmmRefreshAuthTokenType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try EmmRefreshAuthTokenTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try EmmRefreshAuthTokenTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for EmmRefreshAuthTokenType: \(error)" + } + } + } + public class EmmRefreshAuthTokenTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: EmmRefreshAuthTokenType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> EmmRefreshAuthTokenType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return EmmRefreshAuthTokenType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: EmmRefreshAuthTokenType.self, json: json) + } + } + } + + /// Removed members from EMM exception list. + public class EmmRemoveExceptionDetails: CustomStringConvertible, JSONRepresentable { + + func json() throws -> JSON { + try EmmRemoveExceptionDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try EmmRemoveExceptionDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for EmmRemoveExceptionDetails: \(error)" + } + } + } + public class EmmRemoveExceptionDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: EmmRemoveExceptionDetails) throws -> JSON { + let output = [String: JSON]() + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> EmmRemoveExceptionDetails { + switch json { + case .dictionary(_): + return EmmRemoveExceptionDetails() + default: + throw JSONSerializerError.deserializeError(type: EmmRemoveExceptionDetails.self, json: json) + } + } + } + + /// The EmmRemoveExceptionType struct + public class EmmRemoveExceptionType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try EmmRemoveExceptionTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try EmmRemoveExceptionTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for EmmRemoveExceptionType: \(error)" + } + } + } + public class EmmRemoveExceptionTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: EmmRemoveExceptionType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> EmmRemoveExceptionType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return EmmRemoveExceptionType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: EmmRemoveExceptionType.self, json: json) + } + } + } + + /// Enabled domain invites. + public class EnabledDomainInvitesDetails: CustomStringConvertible, JSONRepresentable { + + func json() throws -> JSON { + try EnabledDomainInvitesDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try EnabledDomainInvitesDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for EnabledDomainInvitesDetails: \(error)" + } + } + } + public class EnabledDomainInvitesDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: EnabledDomainInvitesDetails) throws -> JSON { + let output = [String: JSON]() + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> EnabledDomainInvitesDetails { + switch json { + case .dictionary(_): + return EnabledDomainInvitesDetails() + default: + throw JSONSerializerError.deserializeError(type: EnabledDomainInvitesDetails.self, json: json) + } + } + } + + /// The EnabledDomainInvitesType struct + public class EnabledDomainInvitesType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try EnabledDomainInvitesTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try EnabledDomainInvitesTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for EnabledDomainInvitesType: \(error)" + } + } + } + public class EnabledDomainInvitesTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: EnabledDomainInvitesType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> EnabledDomainInvitesType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return EnabledDomainInvitesType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: EnabledDomainInvitesType.self, json: json) + } + } + } + + /// Canceled team key rotation. + public class EncryptedFolderCancelTeamKeyRotationDetails: CustomStringConvertible, JSONRepresentable { + /// Identifier of the team key. + public let teamKeyId: String + public init(teamKeyId: String) { + stringValidator()(teamKeyId) + self.teamKeyId = teamKeyId + } + + func json() throws -> JSON { + try EncryptedFolderCancelTeamKeyRotationDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try EncryptedFolderCancelTeamKeyRotationDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for EncryptedFolderCancelTeamKeyRotationDetails: \(error)" + } + } + } + public class EncryptedFolderCancelTeamKeyRotationDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: EncryptedFolderCancelTeamKeyRotationDetails) throws -> JSON { + let output = [ + "team_key_id": try Serialization._StringSerializer.serialize(value.teamKeyId), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> EncryptedFolderCancelTeamKeyRotationDetails { + switch json { + case .dictionary(let dict): + let teamKeyId = try Serialization._StringSerializer.deserialize(dict["team_key_id"] ?? .null) + return EncryptedFolderCancelTeamKeyRotationDetails(teamKeyId: teamKeyId) + default: + throw JSONSerializerError.deserializeError(type: EncryptedFolderCancelTeamKeyRotationDetails.self, json: json) + } + } + } + + /// The EncryptedFolderCancelTeamKeyRotationType struct + public class EncryptedFolderCancelTeamKeyRotationType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try EncryptedFolderCancelTeamKeyRotationTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try EncryptedFolderCancelTeamKeyRotationTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for EncryptedFolderCancelTeamKeyRotationType: \(error)" + } + } + } + public class EncryptedFolderCancelTeamKeyRotationTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: EncryptedFolderCancelTeamKeyRotationType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> EncryptedFolderCancelTeamKeyRotationType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return EncryptedFolderCancelTeamKeyRotationType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: EncryptedFolderCancelTeamKeyRotationType.self, json: json) + } + } + } + + /// Added recovery key. + public class EncryptedFolderEnrollBackupKeyDetails: CustomStringConvertible, JSONRepresentable { + /// Identifier of the recovery key. + public let backupKeyId: String + public init(backupKeyId: String) { + stringValidator()(backupKeyId) + self.backupKeyId = backupKeyId + } + + func json() throws -> JSON { + try EncryptedFolderEnrollBackupKeyDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try EncryptedFolderEnrollBackupKeyDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for EncryptedFolderEnrollBackupKeyDetails: \(error)" + } + } + } + public class EncryptedFolderEnrollBackupKeyDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: EncryptedFolderEnrollBackupKeyDetails) throws -> JSON { + let output = [ + "backup_key_id": try Serialization._StringSerializer.serialize(value.backupKeyId), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> EncryptedFolderEnrollBackupKeyDetails { + switch json { + case .dictionary(let dict): + let backupKeyId = try Serialization._StringSerializer.deserialize(dict["backup_key_id"] ?? .null) + return EncryptedFolderEnrollBackupKeyDetails(backupKeyId: backupKeyId) + default: + throw JSONSerializerError.deserializeError(type: EncryptedFolderEnrollBackupKeyDetails.self, json: json) + } + } + } + + /// The EncryptedFolderEnrollBackupKeyType struct + public class EncryptedFolderEnrollBackupKeyType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try EncryptedFolderEnrollBackupKeyTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try EncryptedFolderEnrollBackupKeyTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for EncryptedFolderEnrollBackupKeyType: \(error)" + } + } + } + public class EncryptedFolderEnrollBackupKeyTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: EncryptedFolderEnrollBackupKeyType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> EncryptedFolderEnrollBackupKeyType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return EncryptedFolderEnrollBackupKeyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: EncryptedFolderEnrollBackupKeyType.self, json: json) + } + } + } + + /// Enrolled device. + public class EncryptedFolderEnrollClientDetails: CustomStringConvertible, JSONRepresentable { + /// Identifier of the client key. + public let clientKeyId: String + public init(clientKeyId: String) { + stringValidator()(clientKeyId) + self.clientKeyId = clientKeyId + } + + func json() throws -> JSON { + try EncryptedFolderEnrollClientDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try EncryptedFolderEnrollClientDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for EncryptedFolderEnrollClientDetails: \(error)" + } + } + } + public class EncryptedFolderEnrollClientDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: EncryptedFolderEnrollClientDetails) throws -> JSON { + let output = [ + "client_key_id": try Serialization._StringSerializer.serialize(value.clientKeyId), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> EncryptedFolderEnrollClientDetails { + switch json { + case .dictionary(let dict): + let clientKeyId = try Serialization._StringSerializer.deserialize(dict["client_key_id"] ?? .null) + return EncryptedFolderEnrollClientDetails(clientKeyId: clientKeyId) + default: + throw JSONSerializerError.deserializeError(type: EncryptedFolderEnrollClientDetails.self, json: json) + } + } + } + + /// The EncryptedFolderEnrollClientType struct + public class EncryptedFolderEnrollClientType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try EncryptedFolderEnrollClientTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try EncryptedFolderEnrollClientTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for EncryptedFolderEnrollClientType: \(error)" + } + } + } + public class EncryptedFolderEnrollClientTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: EncryptedFolderEnrollClientType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> EncryptedFolderEnrollClientType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return EncryptedFolderEnrollClientType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: EncryptedFolderEnrollClientType.self, json: json) + } + } + } + + /// Activated team folder encryption. + public class EncryptedFolderEnrollTeamDetails: CustomStringConvertible, JSONRepresentable { + + func json() throws -> JSON { + try EncryptedFolderEnrollTeamDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try EncryptedFolderEnrollTeamDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for EncryptedFolderEnrollTeamDetails: \(error)" + } + } + } + public class EncryptedFolderEnrollTeamDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: EncryptedFolderEnrollTeamDetails) throws -> JSON { + let output = [String: JSON]() + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> EncryptedFolderEnrollTeamDetails { + switch json { + case .dictionary(_): + return EncryptedFolderEnrollTeamDetails() + default: + throw JSONSerializerError.deserializeError(type: EncryptedFolderEnrollTeamDetails.self, json: json) + } + } + } + + /// The EncryptedFolderEnrollTeamType struct + public class EncryptedFolderEnrollTeamType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try EncryptedFolderEnrollTeamTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try EncryptedFolderEnrollTeamTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for EncryptedFolderEnrollTeamType: \(error)" + } + } + } + public class EncryptedFolderEnrollTeamTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: EncryptedFolderEnrollTeamType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> EncryptedFolderEnrollTeamType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return EncryptedFolderEnrollTeamType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: EncryptedFolderEnrollTeamType.self, json: json) + } + } + } + + /// Deactivated team folder encryption. + public class EncryptedFolderFinishTeamUnenrollmentDetails: CustomStringConvertible, JSONRepresentable { + + func json() throws -> JSON { + try EncryptedFolderFinishTeamUnenrollmentDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try EncryptedFolderFinishTeamUnenrollmentDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for EncryptedFolderFinishTeamUnenrollmentDetails: \(error)" + } + } + } + public class EncryptedFolderFinishTeamUnenrollmentDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: EncryptedFolderFinishTeamUnenrollmentDetails) throws -> JSON { + let output = [String: JSON]() + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> EncryptedFolderFinishTeamUnenrollmentDetails { + switch json { + case .dictionary(_): + return EncryptedFolderFinishTeamUnenrollmentDetails() + default: + throw JSONSerializerError.deserializeError(type: EncryptedFolderFinishTeamUnenrollmentDetails.self, json: json) + } + } + } + + /// The EncryptedFolderFinishTeamUnenrollmentType struct + public class EncryptedFolderFinishTeamUnenrollmentType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try EncryptedFolderFinishTeamUnenrollmentTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try EncryptedFolderFinishTeamUnenrollmentTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for EncryptedFolderFinishTeamUnenrollmentType: \(error)" + } + } + } + public class EncryptedFolderFinishTeamUnenrollmentTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: EncryptedFolderFinishTeamUnenrollmentType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> EncryptedFolderFinishTeamUnenrollmentType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return EncryptedFolderFinishTeamUnenrollmentType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: EncryptedFolderFinishTeamUnenrollmentType.self, json: json) + } + } + } + + /// Initiated team key rotation. + public class EncryptedFolderInitTeamKeyRotationDetails: CustomStringConvertible, JSONRepresentable { + /// Identifier of the team key. + public let teamKeyId: String + public init(teamKeyId: String) { + stringValidator()(teamKeyId) + self.teamKeyId = teamKeyId + } + + func json() throws -> JSON { + try EncryptedFolderInitTeamKeyRotationDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try EncryptedFolderInitTeamKeyRotationDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for EncryptedFolderInitTeamKeyRotationDetails: \(error)" + } + } + } + public class EncryptedFolderInitTeamKeyRotationDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: EncryptedFolderInitTeamKeyRotationDetails) throws -> JSON { + let output = [ + "team_key_id": try Serialization._StringSerializer.serialize(value.teamKeyId), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> EncryptedFolderInitTeamKeyRotationDetails { + switch json { + case .dictionary(let dict): + let teamKeyId = try Serialization._StringSerializer.deserialize(dict["team_key_id"] ?? .null) + return EncryptedFolderInitTeamKeyRotationDetails(teamKeyId: teamKeyId) + default: + throw JSONSerializerError.deserializeError(type: EncryptedFolderInitTeamKeyRotationDetails.self, json: json) + } + } + } + + /// The EncryptedFolderInitTeamKeyRotationType struct + public class EncryptedFolderInitTeamKeyRotationType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try EncryptedFolderInitTeamKeyRotationTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try EncryptedFolderInitTeamKeyRotationTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for EncryptedFolderInitTeamKeyRotationType: \(error)" + } + } + } + public class EncryptedFolderInitTeamKeyRotationTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: EncryptedFolderInitTeamKeyRotationType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> EncryptedFolderInitTeamKeyRotationType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return EncryptedFolderInitTeamKeyRotationType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: EncryptedFolderInitTeamKeyRotationType.self, json: json) + } + } + } + + /// Initiated deactivation of team folder encryption. + public class EncryptedFolderInitTeamUnenrollmentDetails: CustomStringConvertible, JSONRepresentable { + + func json() throws -> JSON { + try EncryptedFolderInitTeamUnenrollmentDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try EncryptedFolderInitTeamUnenrollmentDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for EncryptedFolderInitTeamUnenrollmentDetails: \(error)" + } + } + } + public class EncryptedFolderInitTeamUnenrollmentDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: EncryptedFolderInitTeamUnenrollmentDetails) throws -> JSON { + let output = [String: JSON]() + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> EncryptedFolderInitTeamUnenrollmentDetails { + switch json { + case .dictionary(_): + return EncryptedFolderInitTeamUnenrollmentDetails() + default: + throw JSONSerializerError.deserializeError(type: EncryptedFolderInitTeamUnenrollmentDetails.self, json: json) + } + } + } + + /// The EncryptedFolderInitTeamUnenrollmentType struct + public class EncryptedFolderInitTeamUnenrollmentType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try EncryptedFolderInitTeamUnenrollmentTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try EncryptedFolderInitTeamUnenrollmentTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for EncryptedFolderInitTeamUnenrollmentType: \(error)" + } + } + } + public class EncryptedFolderInitTeamUnenrollmentTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: EncryptedFolderInitTeamUnenrollmentType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> EncryptedFolderInitTeamUnenrollmentType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return EncryptedFolderInitTeamUnenrollmentType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: EncryptedFolderInitTeamUnenrollmentType.self, json: json) + } + } + } + + /// Removed recovery key. + public class EncryptedFolderRemoveBackupKeyDetails: CustomStringConvertible, JSONRepresentable { + /// Identifier of the recovery key. + public let backupKeyId: String + public init(backupKeyId: String) { + stringValidator()(backupKeyId) + self.backupKeyId = backupKeyId + } + + func json() throws -> JSON { + try EncryptedFolderRemoveBackupKeyDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try EncryptedFolderRemoveBackupKeyDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for EncryptedFolderRemoveBackupKeyDetails: \(error)" + } + } + } + public class EncryptedFolderRemoveBackupKeyDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: EncryptedFolderRemoveBackupKeyDetails) throws -> JSON { + let output = [ + "backup_key_id": try Serialization._StringSerializer.serialize(value.backupKeyId), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> EncryptedFolderRemoveBackupKeyDetails { + switch json { + case .dictionary(let dict): + let backupKeyId = try Serialization._StringSerializer.deserialize(dict["backup_key_id"] ?? .null) + return EncryptedFolderRemoveBackupKeyDetails(backupKeyId: backupKeyId) + default: + throw JSONSerializerError.deserializeError(type: EncryptedFolderRemoveBackupKeyDetails.self, json: json) + } + } + } + + /// The EncryptedFolderRemoveBackupKeyType struct + public class EncryptedFolderRemoveBackupKeyType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try EncryptedFolderRemoveBackupKeyTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try EncryptedFolderRemoveBackupKeyTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for EncryptedFolderRemoveBackupKeyType: \(error)" + } + } + } + public class EncryptedFolderRemoveBackupKeyTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: EncryptedFolderRemoveBackupKeyType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> EncryptedFolderRemoveBackupKeyType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return EncryptedFolderRemoveBackupKeyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: EncryptedFolderRemoveBackupKeyType.self, json: json) + } + } + } + + /// Rotated team key. + public class EncryptedFolderRotateTeamKeyDetails: CustomStringConvertible, JSONRepresentable { + /// Identifier of the team key. + public let teamKeyId: String + public init(teamKeyId: String) { + stringValidator()(teamKeyId) + self.teamKeyId = teamKeyId + } + + func json() throws -> JSON { + try EncryptedFolderRotateTeamKeyDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try EncryptedFolderRotateTeamKeyDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for EncryptedFolderRotateTeamKeyDetails: \(error)" + } + } + } + public class EncryptedFolderRotateTeamKeyDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: EncryptedFolderRotateTeamKeyDetails) throws -> JSON { + let output = [ + "team_key_id": try Serialization._StringSerializer.serialize(value.teamKeyId), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> EncryptedFolderRotateTeamKeyDetails { + switch json { + case .dictionary(let dict): + let teamKeyId = try Serialization._StringSerializer.deserialize(dict["team_key_id"] ?? .null) + return EncryptedFolderRotateTeamKeyDetails(teamKeyId: teamKeyId) + default: + throw JSONSerializerError.deserializeError(type: EncryptedFolderRotateTeamKeyDetails.self, json: json) + } + } + } + + /// The EncryptedFolderRotateTeamKeyType struct + public class EncryptedFolderRotateTeamKeyType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try EncryptedFolderRotateTeamKeyTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try EncryptedFolderRotateTeamKeyTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for EncryptedFolderRotateTeamKeyType: \(error)" + } + } + } + public class EncryptedFolderRotateTeamKeyTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: EncryptedFolderRotateTeamKeyType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> EncryptedFolderRotateTeamKeyType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return EncryptedFolderRotateTeamKeyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: EncryptedFolderRotateTeamKeyType.self, json: json) + } + } + } + + /// Unenrolled device. + public class EncryptedFolderUnenrollClientDetails: CustomStringConvertible, JSONRepresentable { + /// Identifier of the client key. + public let clientKeyId: String + public init(clientKeyId: String) { + stringValidator()(clientKeyId) + self.clientKeyId = clientKeyId + } + + func json() throws -> JSON { + try EncryptedFolderUnenrollClientDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try EncryptedFolderUnenrollClientDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for EncryptedFolderUnenrollClientDetails: \(error)" + } + } + } + public class EncryptedFolderUnenrollClientDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: EncryptedFolderUnenrollClientDetails) throws -> JSON { + let output = [ + "client_key_id": try Serialization._StringSerializer.serialize(value.clientKeyId), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> EncryptedFolderUnenrollClientDetails { + switch json { + case .dictionary(let dict): + let clientKeyId = try Serialization._StringSerializer.deserialize(dict["client_key_id"] ?? .null) + return EncryptedFolderUnenrollClientDetails(clientKeyId: clientKeyId) + default: + throw JSONSerializerError.deserializeError(type: EncryptedFolderUnenrollClientDetails.self, json: json) + } + } + } + + /// The EncryptedFolderUnenrollClientType struct + public class EncryptedFolderUnenrollClientType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try EncryptedFolderUnenrollClientTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try EncryptedFolderUnenrollClientTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for EncryptedFolderUnenrollClientType: \(error)" + } + } + } + public class EncryptedFolderUnenrollClientTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: EncryptedFolderUnenrollClientType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> EncryptedFolderUnenrollClientType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return EncryptedFolderUnenrollClientType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: EncryptedFolderUnenrollClientType.self, json: json) + } + } + } + + /// Ended enterprise admin session. + public class EndedEnterpriseAdminSessionDeprecatedDetails: CustomStringConvertible, JSONRepresentable { + /// More information about the organization or team. + public let federationExtraDetails: TeamLog.FedExtraDetails + public init(federationExtraDetails: TeamLog.FedExtraDetails) { + self.federationExtraDetails = federationExtraDetails + } + + func json() throws -> JSON { + try EndedEnterpriseAdminSessionDeprecatedDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try EndedEnterpriseAdminSessionDeprecatedDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for EndedEnterpriseAdminSessionDeprecatedDetails: \(error)" + } + } + } + public class EndedEnterpriseAdminSessionDeprecatedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: EndedEnterpriseAdminSessionDeprecatedDetails) throws -> JSON { + let output = [ + "federation_extra_details": try TeamLog.FedExtraDetailsSerializer().serialize(value.federationExtraDetails), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> EndedEnterpriseAdminSessionDeprecatedDetails { + switch json { + case .dictionary(let dict): + let federationExtraDetails = try TeamLog.FedExtraDetailsSerializer().deserialize(dict["federation_extra_details"] ?? .null) + return EndedEnterpriseAdminSessionDeprecatedDetails(federationExtraDetails: federationExtraDetails) + default: + throw JSONSerializerError.deserializeError(type: EndedEnterpriseAdminSessionDeprecatedDetails.self, json: json) + } + } + } + + /// The EndedEnterpriseAdminSessionDeprecatedType struct + public class EndedEnterpriseAdminSessionDeprecatedType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try EndedEnterpriseAdminSessionDeprecatedTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try EndedEnterpriseAdminSessionDeprecatedTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for EndedEnterpriseAdminSessionDeprecatedType: \(error)" + } + } + } + public class EndedEnterpriseAdminSessionDeprecatedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: EndedEnterpriseAdminSessionDeprecatedType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> EndedEnterpriseAdminSessionDeprecatedType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return EndedEnterpriseAdminSessionDeprecatedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: EndedEnterpriseAdminSessionDeprecatedType.self, json: json) + } + } + } + + /// Ended enterprise admin session. + public class EndedEnterpriseAdminSessionDetails: CustomStringConvertible, JSONRepresentable { + + func json() throws -> JSON { + try EndedEnterpriseAdminSessionDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try EndedEnterpriseAdminSessionDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for EndedEnterpriseAdminSessionDetails: \(error)" + } + } + } + public class EndedEnterpriseAdminSessionDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: EndedEnterpriseAdminSessionDetails) throws -> JSON { + let output = [String: JSON]() + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> EndedEnterpriseAdminSessionDetails { + switch json { + case .dictionary(_): + return EndedEnterpriseAdminSessionDetails() + default: + throw JSONSerializerError.deserializeError(type: EndedEnterpriseAdminSessionDetails.self, json: json) + } + } + } + + /// The EndedEnterpriseAdminSessionType struct + public class EndedEnterpriseAdminSessionType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try EndedEnterpriseAdminSessionTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try EndedEnterpriseAdminSessionTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for EndedEnterpriseAdminSessionType: \(error)" + } + } + } + public class EndedEnterpriseAdminSessionTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: EndedEnterpriseAdminSessionType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> EndedEnterpriseAdminSessionType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return EndedEnterpriseAdminSessionType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: EndedEnterpriseAdminSessionType.self, json: json) + } + } + } + + /// Policy for deciding whether password must be enforced when an externally shared link is updated + public enum EnforceLinkPasswordPolicy: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case optional + /// An unspecified error. + case required + /// An unspecified error. + case other + + func json() throws -> JSON { + try EnforceLinkPasswordPolicySerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try EnforceLinkPasswordPolicySerializer().serialize(self)))" + } catch { + return "Failed to generate description for EnforceLinkPasswordPolicy: \(error)" + } + } + } + public class EnforceLinkPasswordPolicySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: EnforceLinkPasswordPolicy) throws -> JSON { + switch value { + case .optional: + var d = [String: JSON]() + d[".tag"] = .str("optional") + return .dictionary(d) + case .required: + var d = [String: JSON]() + d[".tag"] = .str("required") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> EnforceLinkPasswordPolicy { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "optional": + return EnforceLinkPasswordPolicy.optional + case "required": + return EnforceLinkPasswordPolicy.required + case "other": + return EnforceLinkPasswordPolicy.other + default: + return EnforceLinkPasswordPolicy.other + } + default: + throw JSONSerializerError.deserializeError(type: EnforceLinkPasswordPolicy.self, json: json) + } + } + } + + /// Changed who can update a setting. + public class EnterpriseSettingsLockingDetails: CustomStringConvertible, JSONRepresentable { + /// The secondary team name. + public let teamName: String + /// Settings page name. + public let settingsPageName: String + /// Previous locked settings page state. + public let previousSettingsPageLockingState: String + /// New locked settings page state. + public let newSettingsPageLockingState: String + public init(teamName: String, settingsPageName: String, previousSettingsPageLockingState: String, newSettingsPageLockingState: String) { + stringValidator()(teamName) + self.teamName = teamName + stringValidator()(settingsPageName) + self.settingsPageName = settingsPageName + stringValidator()(previousSettingsPageLockingState) + self.previousSettingsPageLockingState = previousSettingsPageLockingState + stringValidator()(newSettingsPageLockingState) + self.newSettingsPageLockingState = newSettingsPageLockingState + } + + func json() throws -> JSON { + try EnterpriseSettingsLockingDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try EnterpriseSettingsLockingDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for EnterpriseSettingsLockingDetails: \(error)" + } + } + } + public class EnterpriseSettingsLockingDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: EnterpriseSettingsLockingDetails) throws -> JSON { + let output = [ + "team_name": try Serialization._StringSerializer.serialize(value.teamName), + "settings_page_name": try Serialization._StringSerializer.serialize(value.settingsPageName), + "previous_settings_page_locking_state": try Serialization._StringSerializer.serialize(value.previousSettingsPageLockingState), + "new_settings_page_locking_state": try Serialization._StringSerializer.serialize(value.newSettingsPageLockingState), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> EnterpriseSettingsLockingDetails { + switch json { + case .dictionary(let dict): + let teamName = try Serialization._StringSerializer.deserialize(dict["team_name"] ?? .null) + let settingsPageName = try Serialization._StringSerializer.deserialize(dict["settings_page_name"] ?? .null) + let previousSettingsPageLockingState = try Serialization._StringSerializer.deserialize(dict["previous_settings_page_locking_state"] ?? .null) + let newSettingsPageLockingState = try Serialization._StringSerializer.deserialize(dict["new_settings_page_locking_state"] ?? .null) + return EnterpriseSettingsLockingDetails(teamName: teamName, settingsPageName: settingsPageName, previousSettingsPageLockingState: previousSettingsPageLockingState, newSettingsPageLockingState: newSettingsPageLockingState) + default: + throw JSONSerializerError.deserializeError(type: EnterpriseSettingsLockingDetails.self, json: json) + } + } + } + + /// The EnterpriseSettingsLockingType struct + public class EnterpriseSettingsLockingType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try EnterpriseSettingsLockingTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try EnterpriseSettingsLockingTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for EnterpriseSettingsLockingType: \(error)" + } + } + } + public class EnterpriseSettingsLockingTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: EnterpriseSettingsLockingType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> EnterpriseSettingsLockingType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return EnterpriseSettingsLockingType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: EnterpriseSettingsLockingType.self, json: json) + } + } + } + + /// Category of events in event audit log. + public enum EventCategory: CustomStringConvertible, JSONRepresentable { + /// Events that involve team related alerts. + case adminAlerting + /// Events that apply to management of linked apps. + case apps + /// Events that have to do with comments on files and Paper documents. + case comments + /// Events that apply to Dropbox Dash + case dash + /// Events that involve data governance actions + case dataGovernance + /// Events that apply to linked devices on mobile, desktop and Web platforms. + case devices + /// Events that involve domain management feature: domain verification, invite enforcement and account capture. + case domains + /// Events that involve encryption. + case encryption + /// Events that have to do with filesystem operations on files and folders: copy, move, delete, etc. + case fileOperations + /// Events that apply to the file requests feature. + case fileRequests + /// Events that involve group management. + case groups + /// Events that involve users signing in to or out of Dropbox. + case logins + /// Events that involve team member management. + case members + /// Events that apply to Dropbox Paper. + case paper + /// Events that involve using, changing or resetting passwords. + case passwords + /// Events that apply to Dropbox Protect + case protect + /// Events that concern generation of admin reports, including team activity and device usage. + case reports + /// Events that apply to all types of sharing and collaboration. + case sharing + /// Events that apply to Dropbox Showcase. + case showcase + /// Events that apply to Dropbox Sign + case signatures + /// Events that involve using or configuring single sign-on as well as administrative policies concerning single + /// sign-on. + case sso + /// Events that involve team folder management. + case teamFolders + /// Events that involve a change in team-wide policies. + case teamPolicies + /// Events that involve a change in the team profile. + case teamProfile + /// Events that involve using or configuring two factor authentication as well as administrative policies + /// concerning two factor authentication. + case tfa + /// Events that apply to cross-team trust establishment. + case trustedTeams + /// An unspecified error. + case other + + func json() throws -> JSON { + try EventCategorySerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try EventCategorySerializer().serialize(self)))" + } catch { + return "Failed to generate description for EventCategory: \(error)" + } + } + } + public class EventCategorySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: EventCategory) throws -> JSON { + switch value { + case .adminAlerting: + var d = [String: JSON]() + d[".tag"] = .str("admin_alerting") + return .dictionary(d) + case .apps: + var d = [String: JSON]() + d[".tag"] = .str("apps") + return .dictionary(d) + case .comments: + var d = [String: JSON]() + d[".tag"] = .str("comments") + return .dictionary(d) + case .dash: + var d = [String: JSON]() + d[".tag"] = .str("dash") + return .dictionary(d) + case .dataGovernance: + var d = [String: JSON]() + d[".tag"] = .str("data_governance") + return .dictionary(d) + case .devices: + var d = [String: JSON]() + d[".tag"] = .str("devices") + return .dictionary(d) + case .domains: + var d = [String: JSON]() + d[".tag"] = .str("domains") + return .dictionary(d) + case .encryption: + var d = [String: JSON]() + d[".tag"] = .str("encryption") + return .dictionary(d) + case .fileOperations: + var d = [String: JSON]() + d[".tag"] = .str("file_operations") + return .dictionary(d) + case .fileRequests: + var d = [String: JSON]() + d[".tag"] = .str("file_requests") + return .dictionary(d) + case .groups: + var d = [String: JSON]() + d[".tag"] = .str("groups") + return .dictionary(d) + case .logins: + var d = [String: JSON]() + d[".tag"] = .str("logins") + return .dictionary(d) + case .members: + var d = [String: JSON]() + d[".tag"] = .str("members") + return .dictionary(d) + case .paper: + var d = [String: JSON]() + d[".tag"] = .str("paper") + return .dictionary(d) + case .passwords: + var d = [String: JSON]() + d[".tag"] = .str("passwords") + return .dictionary(d) + case .protect: + var d = [String: JSON]() + d[".tag"] = .str("protect") + return .dictionary(d) + case .reports: + var d = [String: JSON]() + d[".tag"] = .str("reports") + return .dictionary(d) + case .sharing: + var d = [String: JSON]() + d[".tag"] = .str("sharing") + return .dictionary(d) + case .showcase: + var d = [String: JSON]() + d[".tag"] = .str("showcase") + return .dictionary(d) + case .signatures: + var d = [String: JSON]() + d[".tag"] = .str("signatures") + return .dictionary(d) + case .sso: + var d = [String: JSON]() + d[".tag"] = .str("sso") + return .dictionary(d) + case .teamFolders: + var d = [String: JSON]() + d[".tag"] = .str("team_folders") + return .dictionary(d) + case .teamPolicies: + var d = [String: JSON]() + d[".tag"] = .str("team_policies") + return .dictionary(d) + case .teamProfile: + var d = [String: JSON]() + d[".tag"] = .str("team_profile") + return .dictionary(d) + case .tfa: + var d = [String: JSON]() + d[".tag"] = .str("tfa") + return .dictionary(d) + case .trustedTeams: + var d = [String: JSON]() + d[".tag"] = .str("trusted_teams") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> EventCategory { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "admin_alerting": + return EventCategory.adminAlerting + case "apps": + return EventCategory.apps + case "comments": + return EventCategory.comments + case "dash": + return EventCategory.dash + case "data_governance": + return EventCategory.dataGovernance + case "devices": + return EventCategory.devices + case "domains": + return EventCategory.domains + case "encryption": + return EventCategory.encryption + case "file_operations": + return EventCategory.fileOperations + case "file_requests": + return EventCategory.fileRequests + case "groups": + return EventCategory.groups + case "logins": + return EventCategory.logins + case "members": + return EventCategory.members + case "paper": + return EventCategory.paper + case "passwords": + return EventCategory.passwords + case "protect": + return EventCategory.protect + case "reports": + return EventCategory.reports + case "sharing": + return EventCategory.sharing + case "showcase": + return EventCategory.showcase + case "signatures": + return EventCategory.signatures + case "sso": + return EventCategory.sso + case "team_folders": + return EventCategory.teamFolders + case "team_policies": + return EventCategory.teamPolicies + case "team_profile": + return EventCategory.teamProfile + case "tfa": + return EventCategory.tfa + case "trusted_teams": + return EventCategory.trustedTeams + case "other": + return EventCategory.other + default: + return EventCategory.other + } + default: + throw JSONSerializerError.deserializeError(type: EventCategory.self, json: json) + } + } + } + + /// Additional fields depending on the event type. + public enum EventDetails: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case adminAlertingAlertStateChangedDetails(TeamLog.AdminAlertingAlertStateChangedDetails) + /// An unspecified error. + case adminAlertingChangedAlertConfigDetails(TeamLog.AdminAlertingChangedAlertConfigDetails) + /// An unspecified error. + case adminAlertingTriggeredAlertDetails(TeamLog.AdminAlertingTriggeredAlertDetails) + /// An unspecified error. + case ransomwareRestoreProcessCompletedDetails(TeamLog.RansomwareRestoreProcessCompletedDetails) + /// An unspecified error. + case ransomwareRestoreProcessStartedDetails(TeamLog.RansomwareRestoreProcessStartedDetails) + /// An unspecified error. + case appBlockedByPermissionsDetails(TeamLog.AppBlockedByPermissionsDetails) + /// An unspecified error. + case appLinkTeamDetails(TeamLog.AppLinkTeamDetails) + /// An unspecified error. + case appLinkUserDetails(TeamLog.AppLinkUserDetails) + /// An unspecified error. + case appUnlinkTeamDetails(TeamLog.AppUnlinkTeamDetails) + /// An unspecified error. + case appUnlinkUserDetails(TeamLog.AppUnlinkUserDetails) + /// An unspecified error. + case integrationConnectedDetails(TeamLog.IntegrationConnectedDetails) + /// An unspecified error. + case integrationDisconnectedDetails(TeamLog.IntegrationDisconnectedDetails) + /// An unspecified error. + case fileAddCommentDetails(TeamLog.FileAddCommentDetails) + /// An unspecified error. + case fileChangeCommentSubscriptionDetails(TeamLog.FileChangeCommentSubscriptionDetails) + /// An unspecified error. + case fileDeleteCommentDetails(TeamLog.FileDeleteCommentDetails) + /// An unspecified error. + case fileEditCommentDetails(TeamLog.FileEditCommentDetails) + /// An unspecified error. + case fileLikeCommentDetails(TeamLog.FileLikeCommentDetails) + /// An unspecified error. + case fileResolveCommentDetails(TeamLog.FileResolveCommentDetails) + /// An unspecified error. + case fileUnlikeCommentDetails(TeamLog.FileUnlikeCommentDetails) + /// An unspecified error. + case fileUnresolveCommentDetails(TeamLog.FileUnresolveCommentDetails) + /// An unspecified error. + case dashAddedCommentToStackDetails(TeamLog.DashAddedCommentToStackDetails) + /// An unspecified error. + case dashAddedConnectorDetails(TeamLog.DashAddedConnectorDetails) + /// An unspecified error. + case dashAddedLinkToStackDetails(TeamLog.DashAddedLinkToStackDetails) + /// An unspecified error. + case dashAddedTeamEmailDomainAllowlistDetails(TeamLog.DashAddedTeamEmailDomainAllowlistDetails) + /// An unspecified error. + case dashAdminAddedOrgWideConnectorDetails(TeamLog.DashAdminAddedOrgWideConnectorDetails) + /// An unspecified error. + case dashAdminDisabledConnectorDetails(TeamLog.DashAdminDisabledConnectorDetails) + /// An unspecified error. + case dashAdminEnabledConnectorDetails(TeamLog.DashAdminEnabledConnectorDetails) + /// An unspecified error. + case dashAdminRemovedOrgWideConnectorDetails(TeamLog.DashAdminRemovedOrgWideConnectorDetails) + /// An unspecified error. + case dashArchivedStackDetails(TeamLog.DashArchivedStackDetails) + /// An unspecified error. + case dashChangedAudienceOfSharedLinkToStackDetails(TeamLog.DashChangedAudienceOfSharedLinkToStackDetails) + /// An unspecified error. + case dashClonedStackDetails(TeamLog.DashClonedStackDetails) + /// An unspecified error. + case dashConnectorToolsCallDetails(TeamLog.DashConnectorToolsCallDetails) + /// An unspecified error. + case dashCreatedStackDetails(TeamLog.DashCreatedStackDetails) + /// An unspecified error. + case dashDeletedCommentFromStackDetails(TeamLog.DashDeletedCommentFromStackDetails) + /// An unspecified error. + case dashDeletedStackDetails(TeamLog.DashDeletedStackDetails) + /// An unspecified error. + case dashEditedCommentInStackDetails(TeamLog.DashEditedCommentInStackDetails) + /// An unspecified error. + case dashExternalUserOpenedStackDetails(TeamLog.DashExternalUserOpenedStackDetails) + /// An unspecified error. + case dashFirstLaunchedDesktopDetails(TeamLog.DashFirstLaunchedDesktopDetails) + /// An unspecified error. + case dashFirstLaunchedExtensionDetails(TeamLog.DashFirstLaunchedExtensionDetails) + /// An unspecified error. + case dashFirstLaunchedWebStartPageDetails(TeamLog.DashFirstLaunchedWebStartPageDetails) + /// An unspecified error. + case dashOpenedSharedLinkToStackDetails(TeamLog.DashOpenedSharedLinkToStackDetails) + /// An unspecified error. + case dashOpenedStackDetails(TeamLog.DashOpenedStackDetails) + /// An unspecified error. + case dashPreviewOptOutStatusChangedDetails(TeamLog.DashPreviewOptOutStatusChangedDetails) + /// An unspecified error. + case dashRemovedConnectorDetails(TeamLog.DashRemovedConnectorDetails) + /// An unspecified error. + case dashRemovedLinkFromStackDetails(TeamLog.DashRemovedLinkFromStackDetails) + /// An unspecified error. + case dashRemovedSharedLinkToStackDetails(TeamLog.DashRemovedSharedLinkToStackDetails) + /// An unspecified error. + case dashRemovedTeamEmailDomainAllowlistDetails(TeamLog.DashRemovedTeamEmailDomainAllowlistDetails) + /// An unspecified error. + case dashRenamedStackDetails(TeamLog.DashRenamedStackDetails) + /// An unspecified error. + case dashSharedLinkToStackDetails(TeamLog.DashSharedLinkToStackDetails) + /// An unspecified error. + case dashUnarchivedStackDetails(TeamLog.DashUnarchivedStackDetails) + /// An unspecified error. + case dashViewedCompanyStackDetails(TeamLog.DashViewedCompanyStackDetails) + /// An unspecified error. + case dashViewedExternalAiActivityReportDetails(TeamLog.DashViewedExternalAiActivityReportDetails) + /// An unspecified error. + case governancePolicyAddFoldersDetails(TeamLog.GovernancePolicyAddFoldersDetails) + /// An unspecified error. + case governancePolicyAddFolderFailedDetails(TeamLog.GovernancePolicyAddFolderFailedDetails) + /// An unspecified error. + case governancePolicyContentDisposedDetails(TeamLog.GovernancePolicyContentDisposedDetails) + /// An unspecified error. + case governancePolicyCreateDetails(TeamLog.GovernancePolicyCreateDetails) + /// An unspecified error. + case governancePolicyDeleteDetails(TeamLog.GovernancePolicyDeleteDetails) + /// An unspecified error. + case governancePolicyEditDetailsDetails(TeamLog.GovernancePolicyEditDetailsDetails) + /// An unspecified error. + case governancePolicyEditDurationDetails(TeamLog.GovernancePolicyEditDurationDetails) + /// An unspecified error. + case governancePolicyExportCreatedDetails(TeamLog.GovernancePolicyExportCreatedDetails) + /// An unspecified error. + case governancePolicyExportRemovedDetails(TeamLog.GovernancePolicyExportRemovedDetails) + /// An unspecified error. + case governancePolicyRemoveFoldersDetails(TeamLog.GovernancePolicyRemoveFoldersDetails) + /// An unspecified error. + case governancePolicyReportCreatedDetails(TeamLog.GovernancePolicyReportCreatedDetails) + /// An unspecified error. + case governancePolicyZipPartDownloadedDetails(TeamLog.GovernancePolicyZipPartDownloadedDetails) + /// An unspecified error. + case legalHoldsActivateAHoldDetails(TeamLog.LegalHoldsActivateAHoldDetails) + /// An unspecified error. + case legalHoldsAddMembersDetails(TeamLog.LegalHoldsAddMembersDetails) + /// An unspecified error. + case legalHoldsChangeHoldDetailsDetails(TeamLog.LegalHoldsChangeHoldDetailsDetails) + /// An unspecified error. + case legalHoldsChangeHoldNameDetails(TeamLog.LegalHoldsChangeHoldNameDetails) + /// An unspecified error. + case legalHoldsExportAHoldDetails(TeamLog.LegalHoldsExportAHoldDetails) + /// An unspecified error. + case legalHoldsExportCancelledDetails(TeamLog.LegalHoldsExportCancelledDetails) + /// An unspecified error. + case legalHoldsExportDownloadedDetails(TeamLog.LegalHoldsExportDownloadedDetails) + /// An unspecified error. + case legalHoldsExportRemovedDetails(TeamLog.LegalHoldsExportRemovedDetails) + /// An unspecified error. + case legalHoldsReleaseAHoldDetails(TeamLog.LegalHoldsReleaseAHoldDetails) + /// An unspecified error. + case legalHoldsRemoveMembersDetails(TeamLog.LegalHoldsRemoveMembersDetails) + /// An unspecified error. + case legalHoldsReportAHoldDetails(TeamLog.LegalHoldsReportAHoldDetails) + /// An unspecified error. + case deviceChangeIpDesktopDetails(TeamLog.DeviceChangeIpDesktopDetails) + /// An unspecified error. + case deviceChangeIpMobileDetails(TeamLog.DeviceChangeIpMobileDetails) + /// An unspecified error. + case deviceChangeIpWebDetails(TeamLog.DeviceChangeIpWebDetails) + /// An unspecified error. + case deviceDeleteOnUnlinkFailDetails(TeamLog.DeviceDeleteOnUnlinkFailDetails) + /// An unspecified error. + case deviceDeleteOnUnlinkSuccessDetails(TeamLog.DeviceDeleteOnUnlinkSuccessDetails) + /// An unspecified error. + case deviceLinkFailDetails(TeamLog.DeviceLinkFailDetails) + /// An unspecified error. + case deviceLinkSuccessDetails(TeamLog.DeviceLinkSuccessDetails) + /// An unspecified error. + case deviceManagementDisabledDetails(TeamLog.DeviceManagementDisabledDetails) + /// An unspecified error. + case deviceManagementEnabledDetails(TeamLog.DeviceManagementEnabledDetails) + /// An unspecified error. + case deviceSyncBackupStatusChangedDetails(TeamLog.DeviceSyncBackupStatusChangedDetails) + /// An unspecified error. + case deviceUnlinkDetails(TeamLog.DeviceUnlinkDetails) + /// An unspecified error. + case dropboxPasswordsExportedDetails(TeamLog.DropboxPasswordsExportedDetails) + /// An unspecified error. + case dropboxPasswordsNewDeviceEnrolledDetails(TeamLog.DropboxPasswordsNewDeviceEnrolledDetails) + /// An unspecified error. + case emmRefreshAuthTokenDetails(TeamLog.EmmRefreshAuthTokenDetails) + /// An unspecified error. + case externalDriveBackupEligibilityStatusCheckedDetails(TeamLog.ExternalDriveBackupEligibilityStatusCheckedDetails) + /// An unspecified error. + case externalDriveBackupStatusChangedDetails(TeamLog.ExternalDriveBackupStatusChangedDetails) + /// An unspecified error. + case accountCaptureChangeAvailabilityDetails(TeamLog.AccountCaptureChangeAvailabilityDetails) + /// An unspecified error. + case accountCaptureMigrateAccountDetails(TeamLog.AccountCaptureMigrateAccountDetails) + /// An unspecified error. + case accountCaptureNotificationEmailsSentDetails(TeamLog.AccountCaptureNotificationEmailsSentDetails) + /// An unspecified error. + case accountCaptureRelinquishAccountDetails(TeamLog.AccountCaptureRelinquishAccountDetails) + /// An unspecified error. + case disabledDomainInvitesDetails(TeamLog.DisabledDomainInvitesDetails) + /// An unspecified error. + case domainInvitesApproveRequestToJoinTeamDetails(TeamLog.DomainInvitesApproveRequestToJoinTeamDetails) + /// An unspecified error. + case domainInvitesDeclineRequestToJoinTeamDetails(TeamLog.DomainInvitesDeclineRequestToJoinTeamDetails) + /// An unspecified error. + case domainInvitesEmailExistingUsersDetails(TeamLog.DomainInvitesEmailExistingUsersDetails) + /// An unspecified error. + case domainInvitesRequestToJoinTeamDetails(TeamLog.DomainInvitesRequestToJoinTeamDetails) + /// An unspecified error. + case domainInvitesSetInviteNewUserPrefToNoDetails(TeamLog.DomainInvitesSetInviteNewUserPrefToNoDetails) + /// An unspecified error. + case domainInvitesSetInviteNewUserPrefToYesDetails(TeamLog.DomainInvitesSetInviteNewUserPrefToYesDetails) + /// An unspecified error. + case domainVerificationAddDomainFailDetails(TeamLog.DomainVerificationAddDomainFailDetails) + /// An unspecified error. + case domainVerificationAddDomainSuccessDetails(TeamLog.DomainVerificationAddDomainSuccessDetails) + /// An unspecified error. + case domainVerificationRemoveDomainDetails(TeamLog.DomainVerificationRemoveDomainDetails) + /// An unspecified error. + case enabledDomainInvitesDetails(TeamLog.EnabledDomainInvitesDetails) + /// An unspecified error. + case encryptedFolderCancelTeamKeyRotationDetails(TeamLog.EncryptedFolderCancelTeamKeyRotationDetails) + /// An unspecified error. + case encryptedFolderEnrollBackupKeyDetails(TeamLog.EncryptedFolderEnrollBackupKeyDetails) + /// An unspecified error. + case encryptedFolderEnrollClientDetails(TeamLog.EncryptedFolderEnrollClientDetails) + /// An unspecified error. + case encryptedFolderEnrollTeamDetails(TeamLog.EncryptedFolderEnrollTeamDetails) + /// An unspecified error. + case encryptedFolderFinishTeamUnenrollmentDetails(TeamLog.EncryptedFolderFinishTeamUnenrollmentDetails) + /// An unspecified error. + case encryptedFolderInitTeamKeyRotationDetails(TeamLog.EncryptedFolderInitTeamKeyRotationDetails) + /// An unspecified error. + case encryptedFolderInitTeamUnenrollmentDetails(TeamLog.EncryptedFolderInitTeamUnenrollmentDetails) + /// An unspecified error. + case encryptedFolderRemoveBackupKeyDetails(TeamLog.EncryptedFolderRemoveBackupKeyDetails) + /// An unspecified error. + case encryptedFolderRotateTeamKeyDetails(TeamLog.EncryptedFolderRotateTeamKeyDetails) + /// An unspecified error. + case encryptedFolderUnenrollClientDetails(TeamLog.EncryptedFolderUnenrollClientDetails) + /// An unspecified error. + case teamEncryptionKeyActivateKeyDetails(TeamLog.TeamEncryptionKeyActivateKeyDetails) + /// An unspecified error. + case teamEncryptionKeyCancelKeyDeletionDetails(TeamLog.TeamEncryptionKeyCancelKeyDeletionDetails) + /// An unspecified error. + case teamEncryptionKeyCreateKeyDetails(TeamLog.TeamEncryptionKeyCreateKeyDetails) + /// An unspecified error. + case teamEncryptionKeyDeactivateKeyDetails(TeamLog.TeamEncryptionKeyDeactivateKeyDetails) + /// An unspecified error. + case teamEncryptionKeyDeleteKeyDetails(TeamLog.TeamEncryptionKeyDeleteKeyDetails) + /// An unspecified error. + case teamEncryptionKeyDisableKeyDetails(TeamLog.TeamEncryptionKeyDisableKeyDetails) + /// An unspecified error. + case teamEncryptionKeyEnableKeyDetails(TeamLog.TeamEncryptionKeyEnableKeyDetails) + /// An unspecified error. + case teamEncryptionKeyRotateKeyDetails(TeamLog.TeamEncryptionKeyRotateKeyDetails) + /// An unspecified error. + case teamEncryptionKeyScheduleKeyDeletionDetails(TeamLog.TeamEncryptionKeyScheduleKeyDeletionDetails) + /// An unspecified error. + case applyNamingConventionDetails(TeamLog.ApplyNamingConventionDetails) + /// An unspecified error. + case createFolderDetails(TeamLog.CreateFolderDetails) + /// An unspecified error. + case fileAddDetails(TeamLog.FileAddDetails) + /// An unspecified error. + case fileAddFromAutomationDetails(TeamLog.FileAddFromAutomationDetails) + /// An unspecified error. + case fileCopyDetails(TeamLog.FileCopyDetails) + /// An unspecified error. + case fileDeleteDetails(TeamLog.FileDeleteDetails) + /// An unspecified error. + case fileDownloadDetails(TeamLog.FileDownloadDetails) + /// An unspecified error. + case fileEditDetails(TeamLog.FileEditDetails) + /// An unspecified error. + case fileGetCopyReferenceDetails(TeamLog.FileGetCopyReferenceDetails) + /// An unspecified error. + case fileLockingLockStatusChangedDetails(TeamLog.FileLockingLockStatusChangedDetails) + /// An unspecified error. + case fileMoveDetails(TeamLog.FileMoveDetails) + /// An unspecified error. + case filePermanentlyDeleteDetails(TeamLog.FilePermanentlyDeleteDetails) + /// An unspecified error. + case filePreviewDetails(TeamLog.FilePreviewDetails) + /// An unspecified error. + case fileRenameDetails(TeamLog.FileRenameDetails) + /// An unspecified error. + case fileRestoreDetails(TeamLog.FileRestoreDetails) + /// An unspecified error. + case fileRevertDetails(TeamLog.FileRevertDetails) + /// An unspecified error. + case fileRollbackChangesDetails(TeamLog.FileRollbackChangesDetails) + /// An unspecified error. + case fileSaveCopyReferenceDetails(TeamLog.FileSaveCopyReferenceDetails) + /// An unspecified error. + case folderOverviewDescriptionChangedDetails(TeamLog.FolderOverviewDescriptionChangedDetails) + /// An unspecified error. + case folderOverviewItemPinnedDetails(TeamLog.FolderOverviewItemPinnedDetails) + /// An unspecified error. + case folderOverviewItemUnpinnedDetails(TeamLog.FolderOverviewItemUnpinnedDetails) + /// An unspecified error. + case mediaHubFileDownloadedDetails(TeamLog.MediaHubFileDownloadedDetails) + /// An unspecified error. + case objectLabelAddedDetails(TeamLog.ObjectLabelAddedDetails) + /// An unspecified error. + case objectLabelRemovedDetails(TeamLog.ObjectLabelRemovedDetails) + /// An unspecified error. + case objectLabelUpdatedValueDetails(TeamLog.ObjectLabelUpdatedValueDetails) + /// An unspecified error. + case organizeFolderWithTidyDetails(TeamLog.OrganizeFolderWithTidyDetails) + /// An unspecified error. + case replayFileDeleteDetails(TeamLog.ReplayFileDeleteDetails) + /// An unspecified error. + case replayFileDownloadedDetails(TeamLog.ReplayFileDownloadedDetails) + /// An unspecified error. + case replayTeamProjectCreatedDetails(TeamLog.ReplayTeamProjectCreatedDetails) + /// An unspecified error. + case rewindFolderDetails(TeamLog.RewindFolderDetails) + /// An unspecified error. + case undoNamingConventionDetails(TeamLog.UndoNamingConventionDetails) + /// An unspecified error. + case undoOrganizeFolderWithTidyDetails(TeamLog.UndoOrganizeFolderWithTidyDetails) + /// An unspecified error. + case userTagsAddedDetails(TeamLog.UserTagsAddedDetails) + /// An unspecified error. + case userTagsRemovedDetails(TeamLog.UserTagsRemovedDetails) + /// An unspecified error. + case emailIngestReceiveFileDetails(TeamLog.EmailIngestReceiveFileDetails) + /// An unspecified error. + case fileRequestAutoCloseDetails(TeamLog.FileRequestAutoCloseDetails) + /// An unspecified error. + case fileRequestChangeDetails(TeamLog.FileRequestChangeDetails) + /// An unspecified error. + case fileRequestCloseDetails(TeamLog.FileRequestCloseDetails) + /// An unspecified error. + case fileRequestCreateDetails(TeamLog.FileRequestCreateDetails) + /// An unspecified error. + case fileRequestDeleteDetails(TeamLog.FileRequestDeleteDetails) + /// An unspecified error. + case fileRequestReceiveFileDetails(TeamLog.FileRequestReceiveFileDetails) + /// An unspecified error. + case groupAddExternalIdDetails(TeamLog.GroupAddExternalIdDetails) + /// An unspecified error. + case groupAddMemberDetails(TeamLog.GroupAddMemberDetails) + /// An unspecified error. + case groupChangeExternalIdDetails(TeamLog.GroupChangeExternalIdDetails) + /// An unspecified error. + case groupChangeManagementTypeDetails(TeamLog.GroupChangeManagementTypeDetails) + /// An unspecified error. + case groupChangeMemberRoleDetails(TeamLog.GroupChangeMemberRoleDetails) + /// An unspecified error. + case groupCreateDetails(TeamLog.GroupCreateDetails) + /// An unspecified error. + case groupDeleteDetails(TeamLog.GroupDeleteDetails) + /// An unspecified error. + case groupDescriptionUpdatedDetails(TeamLog.GroupDescriptionUpdatedDetails) + /// An unspecified error. + case groupExternalSharingSettingOverrideChangedDetails(TeamLog.GroupExternalSharingSettingOverrideChangedDetails) + /// An unspecified error. + case groupJoinPolicyUpdatedDetails(TeamLog.GroupJoinPolicyUpdatedDetails) + /// An unspecified error. + case groupMovedDetails(TeamLog.GroupMovedDetails) + /// An unspecified error. + case groupRemoveExternalIdDetails(TeamLog.GroupRemoveExternalIdDetails) + /// An unspecified error. + case groupRemoveMemberDetails(TeamLog.GroupRemoveMemberDetails) + /// An unspecified error. + case groupRenameDetails(TeamLog.GroupRenameDetails) + /// An unspecified error. + case accountLockOrUnlockedDetails(TeamLog.AccountLockOrUnlockedDetails) + /// An unspecified error. + case emmErrorDetails(TeamLog.EmmErrorDetails) + /// An unspecified error. + case guestAdminSignedInViaTrustedTeamsDetails(TeamLog.GuestAdminSignedInViaTrustedTeamsDetails) + /// An unspecified error. + case guestAdminSignedOutViaTrustedTeamsDetails(TeamLog.GuestAdminSignedOutViaTrustedTeamsDetails) + /// An unspecified error. + case loginFailDetails(TeamLog.LoginFailDetails) + /// An unspecified error. + case loginSuccessDetails(TeamLog.LoginSuccessDetails) + /// An unspecified error. + case logoutDetails(TeamLog.LogoutDetails) + /// An unspecified error. + case resellerSupportSessionEndDetails(TeamLog.ResellerSupportSessionEndDetails) + /// An unspecified error. + case resellerSupportSessionStartDetails(TeamLog.ResellerSupportSessionStartDetails) + /// An unspecified error. + case signInAsSessionEndDetails(TeamLog.SignInAsSessionEndDetails) + /// An unspecified error. + case signInAsSessionStartDetails(TeamLog.SignInAsSessionStartDetails) + /// An unspecified error. + case ssoErrorDetails(TeamLog.SsoErrorDetails) + /// An unspecified error. + case addonAssignedDetails(TeamLog.AddonAssignedDetails) + /// An unspecified error. + case addonRemovedDetails(TeamLog.AddonRemovedDetails) + /// An unspecified error. + case backupAdminInvitationSentDetails(TeamLog.BackupAdminInvitationSentDetails) + /// An unspecified error. + case backupInvitationOpenedDetails(TeamLog.BackupInvitationOpenedDetails) + /// An unspecified error. + case createTeamInviteLinkDetails(TeamLog.CreateTeamInviteLinkDetails) + /// An unspecified error. + case deleteTeamInviteLinkDetails(TeamLog.DeleteTeamInviteLinkDetails) + /// An unspecified error. + case memberAddExternalIdDetails(TeamLog.MemberAddExternalIdDetails) + /// An unspecified error. + case memberAddNameDetails(TeamLog.MemberAddNameDetails) + /// An unspecified error. + case memberChangeAdminRoleDetails(TeamLog.MemberChangeAdminRoleDetails) + /// An unspecified error. + case memberChangeEmailDetails(TeamLog.MemberChangeEmailDetails) + /// An unspecified error. + case memberChangeExternalIdDetails(TeamLog.MemberChangeExternalIdDetails) + /// An unspecified error. + case memberChangeMembershipTypeDetails(TeamLog.MemberChangeMembershipTypeDetails) + /// An unspecified error. + case memberChangeNameDetails(TeamLog.MemberChangeNameDetails) + /// An unspecified error. + case memberChangeResellerRoleDetails(TeamLog.MemberChangeResellerRoleDetails) + /// An unspecified error. + case memberChangeStatusDetails(TeamLog.MemberChangeStatusDetails) + /// An unspecified error. + case memberDeleteManualContactsDetails(TeamLog.MemberDeleteManualContactsDetails) + /// An unspecified error. + case memberDeleteProfilePhotoDetails(TeamLog.MemberDeleteProfilePhotoDetails) + /// An unspecified error. + case memberFolderContentsAccessedDetails(TeamLog.MemberFolderContentsAccessedDetails) + /// An unspecified error. + case memberPermanentlyDeleteAccountContentsDetails(TeamLog.MemberPermanentlyDeleteAccountContentsDetails) + /// An unspecified error. + case memberRemoveExternalIdDetails(TeamLog.MemberRemoveExternalIdDetails) + /// An unspecified error. + case memberSetProfilePhotoDetails(TeamLog.MemberSetProfilePhotoDetails) + /// An unspecified error. + case memberSpaceLimitsAddCustomQuotaDetails(TeamLog.MemberSpaceLimitsAddCustomQuotaDetails) + /// An unspecified error. + case memberSpaceLimitsChangeCustomQuotaDetails(TeamLog.MemberSpaceLimitsChangeCustomQuotaDetails) + /// An unspecified error. + case memberSpaceLimitsChangeStatusDetails(TeamLog.MemberSpaceLimitsChangeStatusDetails) + /// An unspecified error. + case memberSpaceLimitsRemoveCustomQuotaDetails(TeamLog.MemberSpaceLimitsRemoveCustomQuotaDetails) + /// An unspecified error. + case memberSuggestDetails(TeamLog.MemberSuggestDetails) + /// An unspecified error. + case memberTransferAccountContentsDetails(TeamLog.MemberTransferAccountContentsDetails) + /// An unspecified error. + case pendingSecondaryEmailAddedDetails(TeamLog.PendingSecondaryEmailAddedDetails) + /// An unspecified error. + case productAssignedToMemberDetails(TeamLog.ProductAssignedToMemberDetails) + /// An unspecified error. + case productRemovedFromMemberDetails(TeamLog.ProductRemovedFromMemberDetails) + /// An unspecified error. + case secondaryEmailDeletedDetails(TeamLog.SecondaryEmailDeletedDetails) + /// An unspecified error. + case secondaryEmailVerifiedDetails(TeamLog.SecondaryEmailVerifiedDetails) + /// An unspecified error. + case secondaryMailsPolicyChangedDetails(TeamLog.SecondaryMailsPolicyChangedDetails) + /// An unspecified error. + case binderAddPageDetails(TeamLog.BinderAddPageDetails) + /// An unspecified error. + case binderAddSectionDetails(TeamLog.BinderAddSectionDetails) + /// An unspecified error. + case binderRemovePageDetails(TeamLog.BinderRemovePageDetails) + /// An unspecified error. + case binderRemoveSectionDetails(TeamLog.BinderRemoveSectionDetails) + /// An unspecified error. + case binderRenamePageDetails(TeamLog.BinderRenamePageDetails) + /// An unspecified error. + case binderRenameSectionDetails(TeamLog.BinderRenameSectionDetails) + /// An unspecified error. + case binderReorderPageDetails(TeamLog.BinderReorderPageDetails) + /// An unspecified error. + case binderReorderSectionDetails(TeamLog.BinderReorderSectionDetails) + /// An unspecified error. + case paperContentAddMemberDetails(TeamLog.PaperContentAddMemberDetails) + /// An unspecified error. + case paperContentAddToFolderDetails(TeamLog.PaperContentAddToFolderDetails) + /// An unspecified error. + case paperContentArchiveDetails(TeamLog.PaperContentArchiveDetails) + /// An unspecified error. + case paperContentCreateDetails(TeamLog.PaperContentCreateDetails) + /// An unspecified error. + case paperContentPermanentlyDeleteDetails(TeamLog.PaperContentPermanentlyDeleteDetails) + /// An unspecified error. + case paperContentRemoveFromFolderDetails(TeamLog.PaperContentRemoveFromFolderDetails) + /// An unspecified error. + case paperContentRemoveMemberDetails(TeamLog.PaperContentRemoveMemberDetails) + /// An unspecified error. + case paperContentRenameDetails(TeamLog.PaperContentRenameDetails) + /// An unspecified error. + case paperContentRestoreDetails(TeamLog.PaperContentRestoreDetails) + /// An unspecified error. + case paperDocAddCommentDetails(TeamLog.PaperDocAddCommentDetails) + /// An unspecified error. + case paperDocChangeMemberRoleDetails(TeamLog.PaperDocChangeMemberRoleDetails) + /// An unspecified error. + case paperDocChangeSharingPolicyDetails(TeamLog.PaperDocChangeSharingPolicyDetails) + /// An unspecified error. + case paperDocChangeSubscriptionDetails(TeamLog.PaperDocChangeSubscriptionDetails) + /// An unspecified error. + case paperDocDeletedDetails(TeamLog.PaperDocDeletedDetails) + /// An unspecified error. + case paperDocDeleteCommentDetails(TeamLog.PaperDocDeleteCommentDetails) + /// An unspecified error. + case paperDocDownloadDetails(TeamLog.PaperDocDownloadDetails) + /// An unspecified error. + case paperDocEditDetails(TeamLog.PaperDocEditDetails) + /// An unspecified error. + case paperDocEditCommentDetails(TeamLog.PaperDocEditCommentDetails) + /// An unspecified error. + case paperDocFollowedDetails(TeamLog.PaperDocFollowedDetails) + /// An unspecified error. + case paperDocMentionDetails(TeamLog.PaperDocMentionDetails) + /// An unspecified error. + case paperDocOwnershipChangedDetails(TeamLog.PaperDocOwnershipChangedDetails) + /// An unspecified error. + case paperDocRequestAccessDetails(TeamLog.PaperDocRequestAccessDetails) + /// An unspecified error. + case paperDocResolveCommentDetails(TeamLog.PaperDocResolveCommentDetails) + /// An unspecified error. + case paperDocRevertDetails(TeamLog.PaperDocRevertDetails) + /// An unspecified error. + case paperDocSlackShareDetails(TeamLog.PaperDocSlackShareDetails) + /// An unspecified error. + case paperDocTeamInviteDetails(TeamLog.PaperDocTeamInviteDetails) + /// An unspecified error. + case paperDocTrashedDetails(TeamLog.PaperDocTrashedDetails) + /// An unspecified error. + case paperDocUnresolveCommentDetails(TeamLog.PaperDocUnresolveCommentDetails) + /// An unspecified error. + case paperDocUntrashedDetails(TeamLog.PaperDocUntrashedDetails) + /// An unspecified error. + case paperDocViewDetails(TeamLog.PaperDocViewDetails) + /// An unspecified error. + case paperExternalViewAllowDetails(TeamLog.PaperExternalViewAllowDetails) + /// An unspecified error. + case paperExternalViewDefaultTeamDetails(TeamLog.PaperExternalViewDefaultTeamDetails) + /// An unspecified error. + case paperExternalViewForbidDetails(TeamLog.PaperExternalViewForbidDetails) /// An unspecified error. case paperFolderChangeSubscriptionDetails(TeamLog.PaperFolderChangeSubscriptionDetails) /// An unspecified error. @@ -11827,6 +16197,22 @@ public class TeamLog { /// An unspecified error. case passwordResetAllDetails(TeamLog.PasswordResetAllDetails) /// An unspecified error. + case protectActionAddCollaboratorDetails(TeamLog.ProtectActionAddCollaboratorDetails) + /// An unspecified error. + case protectActionAddLinkDetails(TeamLog.ProtectActionAddLinkDetails) + /// An unspecified error. + case protectActionDeleteDetails(TeamLog.ProtectActionDeleteDetails) + /// An unspecified error. + case protectActionExportDetails(TeamLog.ProtectActionExportDetails) + /// An unspecified error. + case protectActionRemoveCollaboratorDetails(TeamLog.ProtectActionRemoveCollaboratorDetails) + /// An unspecified error. + case protectActionRemoveLinkDetails(TeamLog.ProtectActionRemoveLinkDetails) + /// An unspecified error. + case protectActionStopSharingDetails(TeamLog.ProtectActionStopSharingDetails) + /// An unspecified error. + case protectInternalDomainsChangedDetails(TeamLog.ProtectInternalDomainsChangedDetails) + /// An unspecified error. case classificationCreateReportDetails(TeamLog.ClassificationCreateReportDetails) /// An unspecified error. case classificationCreateReportFailDetails(TeamLog.ClassificationCreateReportFailDetails) @@ -11843,6 +16229,10 @@ public class TeamLog { /// An unspecified error. case externalSharingReportFailedDetails(TeamLog.ExternalSharingReportFailedDetails) /// An unspecified error. + case memberAccessDetailsCreateReportDetails(TeamLog.MemberAccessDetailsCreateReportDetails) + /// An unspecified error. + case memberAccessDetailsCreateReportFailedDetails(TeamLog.MemberAccessDetailsCreateReportFailedDetails) + /// An unspecified error. case noExpirationLinkGenCreateReportDetails(TeamLog.NoExpirationLinkGenCreateReportDetails) /// An unspecified error. case noExpirationLinkGenReportFailedDetails(TeamLog.NoExpirationLinkGenReportFailedDetails) @@ -11865,12 +16255,24 @@ public class TeamLog { /// An unspecified error. case ransomwareAlertCreateReportFailedDetails(TeamLog.RansomwareAlertCreateReportFailedDetails) /// An unspecified error. + case sharedFoldersCreateReportDetails(TeamLog.SharedFoldersCreateReportDetails) + /// An unspecified error. + case sharedFoldersCreateReportFailedDetails(TeamLog.SharedFoldersCreateReportFailedDetails) + /// An unspecified error. case smartSyncCreateAdminPrivilegeReportDetails(TeamLog.SmartSyncCreateAdminPrivilegeReportDetails) /// An unspecified error. case teamActivityCreateReportDetails(TeamLog.TeamActivityCreateReportDetails) /// An unspecified error. case teamActivityCreateReportFailDetails(TeamLog.TeamActivityCreateReportFailDetails) /// An unspecified error. + case teamFoldersCreateReportDetails(TeamLog.TeamFoldersCreateReportDetails) + /// An unspecified error. + case teamFoldersCreateReportFailedDetails(TeamLog.TeamFoldersCreateReportFailedDetails) + /// An unspecified error. + case teamStorageCreateReportDetails(TeamLog.TeamStorageCreateReportDetails) + /// An unspecified error. + case teamStorageCreateReportFailedDetails(TeamLog.TeamStorageCreateReportFailedDetails) + /// An unspecified error. case collectionShareDetails(TeamLog.CollectionShareDetails) /// An unspecified error. case fileTransfersFileAddDetails(TeamLog.FileTransfersFileAddDetails) @@ -11883,6 +16285,20 @@ public class TeamLog { /// An unspecified error. case fileTransfersTransferViewDetails(TeamLog.FileTransfersTransferViewDetails) /// An unspecified error. + case mediaHubProjectTeamAddDetails(TeamLog.MediaHubProjectTeamAddDetails) + /// An unspecified error. + case mediaHubProjectTeamDeleteDetails(TeamLog.MediaHubProjectTeamDeleteDetails) + /// An unspecified error. + case mediaHubProjectTeamRoleChangedDetails(TeamLog.MediaHubProjectTeamRoleChangedDetails) + /// An unspecified error. + case mediaHubSharedLinkAudienceChangedDetails(TeamLog.MediaHubSharedLinkAudienceChangedDetails) + /// An unspecified error. + case mediaHubSharedLinkCreatedDetails(TeamLog.MediaHubSharedLinkCreatedDetails) + /// An unspecified error. + case mediaHubSharedLinkDownloadSettingChangedDetails(TeamLog.MediaHubSharedLinkDownloadSettingChangedDetails) + /// An unspecified error. + case mediaHubSharedLinkRevokedDetails(TeamLog.MediaHubSharedLinkRevokedDetails) + /// An unspecified error. case noteAclInviteOnlyDetails(TeamLog.NoteAclInviteOnlyDetails) /// An unspecified error. case noteAclLinkDetails(TeamLog.NoteAclLinkDetails) @@ -11903,6 +16319,22 @@ public class TeamLog { /// An unspecified error. case replayProjectTeamDeleteDetails(TeamLog.ReplayProjectTeamDeleteDetails) /// An unspecified error. + case sendAndTrackFileAddedDetails(TeamLog.SendAndTrackFileAddedDetails) + /// An unspecified error. + case sendAndTrackFileRenamedDetails(TeamLog.SendAndTrackFileRenamedDetails) + /// An unspecified error. + case sendAndTrackFileUpdatedDetails(TeamLog.SendAndTrackFileUpdatedDetails) + /// An unspecified error. + case sendAndTrackLinkCreatedDetails(TeamLog.SendAndTrackLinkCreatedDetails) + /// An unspecified error. + case sendAndTrackLinkDeletedDetails(TeamLog.SendAndTrackLinkDeletedDetails) + /// An unspecified error. + case sendAndTrackLinkUpdatedDetails(TeamLog.SendAndTrackLinkUpdatedDetails) + /// An unspecified error. + case sendAndTrackLinkViewedDetails(TeamLog.SendAndTrackLinkViewedDetails) + /// An unspecified error. + case sendAndTrackRemovedFileAndAssociatedLinksDetails(TeamLog.SendAndTrackRemovedFileAndAssociatedLinksDetails) + /// An unspecified error. case sfAddGroupDetails(TeamLog.SfAddGroupDetails) /// An unspecified error. case sfAllowNonMembersToViewSharedLinksDetails(TeamLog.SfAllowNonMembersToViewSharedLinksDetails) @@ -12013,6 +16445,8 @@ public class TeamLog { /// An unspecified error. case sharedLinkRemoveExpiryDetails(TeamLog.SharedLinkRemoveExpiryDetails) /// An unspecified error. + case sharedLinkRemoveVisitorDetails(TeamLog.SharedLinkRemoveVisitorDetails) + /// An unspecified error. case sharedLinkSettingsAddExpirationDetails(TeamLog.SharedLinkSettingsAddExpirationDetails) /// An unspecified error. case sharedLinkSettingsAddPasswordDetails(TeamLog.SharedLinkSettingsAddPasswordDetails) @@ -12091,6 +16525,24 @@ public class TeamLog { /// An unspecified error. case showcaseViewDetails(TeamLog.ShowcaseViewDetails) /// An unspecified error. + case signSignatureRequestCanceledDetails(TeamLog.SignSignatureRequestCanceledDetails) + /// An unspecified error. + case signSignatureRequestCompletedDetails(TeamLog.SignSignatureRequestCompletedDetails) + /// An unspecified error. + case signSignatureRequestDeclinedDetails(TeamLog.SignSignatureRequestDeclinedDetails) + /// An unspecified error. + case signSignatureRequestOpenedDetails(TeamLog.SignSignatureRequestOpenedDetails) + /// An unspecified error. + case signSignatureRequestReminderSentDetails(TeamLog.SignSignatureRequestReminderSentDetails) + /// An unspecified error. + case signSignatureRequestSentDetails(TeamLog.SignSignatureRequestSentDetails) + /// An unspecified error. + case signTemplateCreatedDetails(TeamLog.SignTemplateCreatedDetails) + /// An unspecified error. + case signTemplateSharedDetails(TeamLog.SignTemplateSharedDetails) + /// An unspecified error. + case riscSecurityEventDetails(TeamLog.RiscSecurityEventDetails) + /// An unspecified error. case ssoAddCertDetails(TeamLog.SsoAddCertDetails) /// An unspecified error. case ssoAddLoginUrlDetails(TeamLog.SsoAddLoginUrlDetails) @@ -12121,20 +16573,32 @@ public class TeamLog { /// An unspecified error. case teamFolderRenameDetails(TeamLog.TeamFolderRenameDetails) /// An unspecified error. + case teamFolderSpaceLimitsChangeCapsTypeDetails(TeamLog.TeamFolderSpaceLimitsChangeCapsTypeDetails) + /// An unspecified error. + case teamFolderSpaceLimitsChangeLimitDetails(TeamLog.TeamFolderSpaceLimitsChangeLimitDetails) + /// An unspecified error. + case teamFolderSpaceLimitsChangeNotificationTargetDetails(TeamLog.TeamFolderSpaceLimitsChangeNotificationTargetDetails) + /// An unspecified error. case teamSelectiveSyncSettingsChangedDetails(TeamLog.TeamSelectiveSyncSettingsChangedDetails) /// An unspecified error. case accountCaptureChangePolicyDetails(TeamLog.AccountCaptureChangePolicyDetails) /// An unspecified error. case adminEmailRemindersChangedDetails(TeamLog.AdminEmailRemindersChangedDetails) /// An unspecified error. + case aiThirdPartySharingDropboxBasePolicyChangedDetails(TeamLog.AiThirdPartySharingDropboxBasePolicyChangedDetails) + /// An unspecified error. case allowDownloadDisabledDetails(TeamLog.AllowDownloadDisabledDetails) /// An unspecified error. case allowDownloadEnabledDetails(TeamLog.AllowDownloadEnabledDetails) /// An unspecified error. + case appleLoginChangePolicyDetails(TeamLog.AppleLoginChangePolicyDetails) + /// An unspecified error. case appPermissionsChangedDetails(TeamLog.AppPermissionsChangedDetails) /// An unspecified error. case cameraUploadsPolicyChangedDetails(TeamLog.CameraUploadsPolicyChangedDetails) /// An unspecified error. + case captureTeamSpacePolicyChangedDetails(TeamLog.CaptureTeamSpacePolicyChangedDetails) + /// An unspecified error. case captureTranscriptPolicyChangedDetails(TeamLog.CaptureTranscriptPolicyChangedDetails) /// An unspecified error. case classificationChangePolicyDetails(TeamLog.ClassificationChangePolicyDetails) @@ -12143,6 +16607,10 @@ public class TeamLog { /// An unspecified error. case contentAdministrationPolicyChangedDetails(TeamLog.ContentAdministrationPolicyChangedDetails) /// An unspecified error. + case contentDeletionProtectionChangePolicyDetails(TeamLog.ContentDeletionProtectionChangePolicyDetails) + /// An unspecified error. + case dashExternalSharingPolicyChangedDetails(TeamLog.DashExternalSharingPolicyChangedDetails) + /// An unspecified error. case dataPlacementRestrictionChangePolicyDetails(TeamLog.DataPlacementRestrictionChangePolicyDetails) /// An unspecified error. case dataPlacementRestrictionSatisfyPolicyDetails(TeamLog.DataPlacementRestrictionSatisfyPolicyDetails) @@ -12191,6 +16659,8 @@ public class TeamLog { /// An unspecified error. case fileTransfersPolicyChangedDetails(TeamLog.FileTransfersPolicyChangedDetails) /// An unspecified error. + case flexibleFileNamesPolicyChangedDetails(TeamLog.FlexibleFileNamesPolicyChangedDetails) + /// An unspecified error. case folderLinkRestrictionPolicyChangedDetails(TeamLog.FolderLinkRestrictionPolicyChangedDetails) /// An unspecified error. case googleSsoChangePolicyDetails(TeamLog.GoogleSsoChangePolicyDetails) @@ -12201,6 +16671,12 @@ public class TeamLog { /// An unspecified error. case inviteAcceptanceEmailPolicyChangedDetails(TeamLog.InviteAcceptanceEmailPolicyChangedDetails) /// An unspecified error. + case mediaHubAddingPeoplePolicyChangedDetails(TeamLog.MediaHubAddingPeoplePolicyChangedDetails) + /// An unspecified error. + case mediaHubDownloadPolicyChangedDetails(TeamLog.MediaHubDownloadPolicyChangedDetails) + /// An unspecified error. + case mediaHubLinkSharingPolicyChangedDetails(TeamLog.MediaHubLinkSharingPolicyChangedDetails) + /// An unspecified error. case memberRequestsChangePolicyDetails(TeamLog.MemberRequestsChangePolicyDetails) /// An unspecified error. case memberSendInvitePolicyChangedDetails(TeamLog.MemberSendInvitePolicyChangedDetails) @@ -12215,8 +16691,12 @@ public class TeamLog { /// An unspecified error. case memberSuggestionsChangePolicyDetails(TeamLog.MemberSuggestionsChangePolicyDetails) /// An unspecified error. + case microsoftLoginChangePolicyDetails(TeamLog.MicrosoftLoginChangePolicyDetails) + /// An unspecified error. case microsoftOfficeAddinChangePolicyDetails(TeamLog.MicrosoftOfficeAddinChangePolicyDetails) /// An unspecified error. + case multiTeamIdentityPolicyChangedDetails(TeamLog.MultiTeamIdentityPolicyChangedDetails) + /// An unspecified error. case networkControlChangePolicyDetails(TeamLog.NetworkControlChangePolicyDetails) /// An unspecified error. case paperChangeDeploymentPolicyDetails(TeamLog.PaperChangeDeploymentPolicyDetails) @@ -12235,16 +16715,30 @@ public class TeamLog { /// An unspecified error. case paperEnabledUsersGroupRemovalDetails(TeamLog.PaperEnabledUsersGroupRemovalDetails) /// An unspecified error. + case passkeyLoginPolicyChangedDetails(TeamLog.PasskeyLoginPolicyChangedDetails) + /// An unspecified error. case passwordStrengthRequirementsChangePolicyDetails(TeamLog.PasswordStrengthRequirementsChangePolicyDetails) /// An unspecified error. case permanentDeleteChangePolicyDetails(TeamLog.PermanentDeleteChangePolicyDetails) /// An unspecified error. + case previewsAiPolicyChangedDetails(TeamLog.PreviewsAiPolicyChangedDetails) + /// An unspecified error. + case replayAddingPeoplePolicyChangedDetails(TeamLog.ReplayAddingPeoplePolicyChangedDetails) + /// An unspecified error. + case replaySharingPolicyChangedDetails(TeamLog.ReplaySharingPolicyChangedDetails) + /// An unspecified error. case resellerSupportChangePolicyDetails(TeamLog.ResellerSupportChangePolicyDetails) /// An unspecified error. case rewindPolicyChangedDetails(TeamLog.RewindPolicyChangedDetails) /// An unspecified error. + case sendAndTrackPolicyChangedDetails(TeamLog.SendAndTrackPolicyChangedDetails) + /// An unspecified error. + case sendExternalSharingPolicyChangedDetails(TeamLog.SendExternalSharingPolicyChangedDetails) + /// An unspecified error. case sendForSignaturePolicyChangedDetails(TeamLog.SendForSignaturePolicyChangedDetails) /// An unspecified error. + case sharedLinkDefaultPermissionsPolicyChangedDetails(TeamLog.SharedLinkDefaultPermissionsPolicyChangedDetails) + /// An unspecified error. case sharingChangeFolderJoinPolicyDetails(TeamLog.SharingChangeFolderJoinPolicyDetails) /// An unspecified error. case sharingChangeLinkAllowChangeExpirationPolicyDetails(TeamLog.SharingChangeLinkAllowChangeExpirationPolicyDetails) @@ -12263,6 +16757,10 @@ public class TeamLog { /// An unspecified error. case showcaseChangeExternalSharingPolicyDetails(TeamLog.ShowcaseChangeExternalSharingPolicyDetails) /// An unspecified error. + case signExternalSharingPolicyChangedDetails(TeamLog.SignExternalSharingPolicyChangedDetails) + /// An unspecified error. + case signTemplateCreationPermissionChangedDetails(TeamLog.SignTemplateCreationPermissionChangedDetails) + /// An unspecified error. case smarterSmartSyncPolicyChangedDetails(TeamLog.SmarterSmartSyncPolicyChangedDetails) /// An unspecified error. case smartSyncChangePolicyDetails(TeamLog.SmartSyncChangePolicyDetails) @@ -12273,10 +16771,14 @@ public class TeamLog { /// An unspecified error. case ssoChangePolicyDetails(TeamLog.SsoChangePolicyDetails) /// An unspecified error. + case stackCrossTeamAccessPolicyChangedDetails(TeamLog.StackCrossTeamAccessPolicyChangedDetails) + /// An unspecified error. case teamBrandingPolicyChangedDetails(TeamLog.TeamBrandingPolicyChangedDetails) /// An unspecified error. case teamExtensionsPolicyChangedDetails(TeamLog.TeamExtensionsPolicyChangedDetails) /// An unspecified error. + case teamMemberStorageRequestPolicyChangedDetails(TeamLog.TeamMemberStorageRequestPolicyChangedDetails) + /// An unspecified error. case teamSelectiveSyncPolicyChangedDetails(TeamLog.TeamSelectiveSyncPolicyChangedDetails) /// An unspecified error. case teamSharingWhitelistSubjectsChangedDetails(TeamLog.TeamSharingWhitelistSubjectsChangedDetails) @@ -12287,6 +16789,8 @@ public class TeamLog { /// An unspecified error. case tfaRemoveExceptionDetails(TeamLog.TfaRemoveExceptionDetails) /// An unspecified error. + case topLevelContentPolicyChangedDetails(TeamLog.TopLevelContentPolicyChangedDetails) + /// An unspecified error. case twoAccountChangePolicyDetails(TeamLog.TwoAccountChangePolicyDetails) /// An unspecified error. case viewerInfoPolicyChangedDetails(TeamLog.ViewerInfoPolicyChangedDetails) @@ -12323,6 +16827,10 @@ public class TeamLog { /// An unspecified error. case teamProfileRemoveLogoDetails(TeamLog.TeamProfileRemoveLogoDetails) /// An unspecified error. + case passkeyAddDetails(TeamLog.PasskeyAddDetails) + /// An unspecified error. + case passkeyRemoveDetails(TeamLog.PasskeyRemoveDetails) + /// An unspecified error. case tfaAddBackupPhoneDetails(TeamLog.TfaAddBackupPhoneDetails) /// An unspecified error. case tfaAddSecurityKeyDetails(TeamLog.TfaAddSecurityKeyDetails) @@ -12403,3558 +16911,4417 @@ public class TeamLog { } } } - public class EventDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: EventDetails) throws -> JSON { switch value { - case .adminAlertingAlertStateChangedDetails(let arg): - var d = try Serialization.getFields(TeamLog.AdminAlertingAlertStateChangedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("admin_alerting_alert_state_changed_details") - return .dictionary(d) - case .adminAlertingChangedAlertConfigDetails(let arg): - var d = try Serialization.getFields(TeamLog.AdminAlertingChangedAlertConfigDetailsSerializer().serialize(arg)) - d[".tag"] = .str("admin_alerting_changed_alert_config_details") - return .dictionary(d) - case .adminAlertingTriggeredAlertDetails(let arg): - var d = try Serialization.getFields(TeamLog.AdminAlertingTriggeredAlertDetailsSerializer().serialize(arg)) - d[".tag"] = .str("admin_alerting_triggered_alert_details") - return .dictionary(d) - case .ransomwareRestoreProcessCompletedDetails(let arg): - var d = try Serialization.getFields(TeamLog.RansomwareRestoreProcessCompletedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("ransomware_restore_process_completed_details") - return .dictionary(d) - case .ransomwareRestoreProcessStartedDetails(let arg): - var d = try Serialization.getFields(TeamLog.RansomwareRestoreProcessStartedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("ransomware_restore_process_started_details") - return .dictionary(d) - case .appBlockedByPermissionsDetails(let arg): - var d = try Serialization.getFields(TeamLog.AppBlockedByPermissionsDetailsSerializer().serialize(arg)) - d[".tag"] = .str("app_blocked_by_permissions_details") - return .dictionary(d) - case .appLinkTeamDetails(let arg): - var d = try Serialization.getFields(TeamLog.AppLinkTeamDetailsSerializer().serialize(arg)) - d[".tag"] = .str("app_link_team_details") - return .dictionary(d) - case .appLinkUserDetails(let arg): - var d = try Serialization.getFields(TeamLog.AppLinkUserDetailsSerializer().serialize(arg)) - d[".tag"] = .str("app_link_user_details") - return .dictionary(d) - case .appUnlinkTeamDetails(let arg): - var d = try Serialization.getFields(TeamLog.AppUnlinkTeamDetailsSerializer().serialize(arg)) - d[".tag"] = .str("app_unlink_team_details") - return .dictionary(d) - case .appUnlinkUserDetails(let arg): - var d = try Serialization.getFields(TeamLog.AppUnlinkUserDetailsSerializer().serialize(arg)) - d[".tag"] = .str("app_unlink_user_details") - return .dictionary(d) - case .integrationConnectedDetails(let arg): - var d = try Serialization.getFields(TeamLog.IntegrationConnectedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("integration_connected_details") - return .dictionary(d) - case .integrationDisconnectedDetails(let arg): - var d = try Serialization.getFields(TeamLog.IntegrationDisconnectedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("integration_disconnected_details") - return .dictionary(d) - case .fileAddCommentDetails(let arg): - var d = try Serialization.getFields(TeamLog.FileAddCommentDetailsSerializer().serialize(arg)) - d[".tag"] = .str("file_add_comment_details") - return .dictionary(d) - case .fileChangeCommentSubscriptionDetails(let arg): - var d = try Serialization.getFields(TeamLog.FileChangeCommentSubscriptionDetailsSerializer().serialize(arg)) - d[".tag"] = .str("file_change_comment_subscription_details") - return .dictionary(d) - case .fileDeleteCommentDetails(let arg): - var d = try Serialization.getFields(TeamLog.FileDeleteCommentDetailsSerializer().serialize(arg)) - d[".tag"] = .str("file_delete_comment_details") - return .dictionary(d) - case .fileEditCommentDetails(let arg): - var d = try Serialization.getFields(TeamLog.FileEditCommentDetailsSerializer().serialize(arg)) - d[".tag"] = .str("file_edit_comment_details") - return .dictionary(d) - case .fileLikeCommentDetails(let arg): - var d = try Serialization.getFields(TeamLog.FileLikeCommentDetailsSerializer().serialize(arg)) - d[".tag"] = .str("file_like_comment_details") - return .dictionary(d) - case .fileResolveCommentDetails(let arg): - var d = try Serialization.getFields(TeamLog.FileResolveCommentDetailsSerializer().serialize(arg)) - d[".tag"] = .str("file_resolve_comment_details") - return .dictionary(d) - case .fileUnlikeCommentDetails(let arg): - var d = try Serialization.getFields(TeamLog.FileUnlikeCommentDetailsSerializer().serialize(arg)) - d[".tag"] = .str("file_unlike_comment_details") - return .dictionary(d) - case .fileUnresolveCommentDetails(let arg): - var d = try Serialization.getFields(TeamLog.FileUnresolveCommentDetailsSerializer().serialize(arg)) - d[".tag"] = .str("file_unresolve_comment_details") - return .dictionary(d) - case .governancePolicyAddFoldersDetails(let arg): - var d = try Serialization.getFields(TeamLog.GovernancePolicyAddFoldersDetailsSerializer().serialize(arg)) - d[".tag"] = .str("governance_policy_add_folders_details") - return .dictionary(d) - case .governancePolicyAddFolderFailedDetails(let arg): - var d = try Serialization.getFields(TeamLog.GovernancePolicyAddFolderFailedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("governance_policy_add_folder_failed_details") - return .dictionary(d) - case .governancePolicyContentDisposedDetails(let arg): - var d = try Serialization.getFields(TeamLog.GovernancePolicyContentDisposedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("governance_policy_content_disposed_details") - return .dictionary(d) - case .governancePolicyCreateDetails(let arg): - var d = try Serialization.getFields(TeamLog.GovernancePolicyCreateDetailsSerializer().serialize(arg)) - d[".tag"] = .str("governance_policy_create_details") - return .dictionary(d) - case .governancePolicyDeleteDetails(let arg): - var d = try Serialization.getFields(TeamLog.GovernancePolicyDeleteDetailsSerializer().serialize(arg)) - d[".tag"] = .str("governance_policy_delete_details") - return .dictionary(d) - case .governancePolicyEditDetailsDetails(let arg): - var d = try Serialization.getFields(TeamLog.GovernancePolicyEditDetailsDetailsSerializer().serialize(arg)) - d[".tag"] = .str("governance_policy_edit_details_details") - return .dictionary(d) - case .governancePolicyEditDurationDetails(let arg): - var d = try Serialization.getFields(TeamLog.GovernancePolicyEditDurationDetailsSerializer().serialize(arg)) - d[".tag"] = .str("governance_policy_edit_duration_details") - return .dictionary(d) - case .governancePolicyExportCreatedDetails(let arg): - var d = try Serialization.getFields(TeamLog.GovernancePolicyExportCreatedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("governance_policy_export_created_details") - return .dictionary(d) - case .governancePolicyExportRemovedDetails(let arg): - var d = try Serialization.getFields(TeamLog.GovernancePolicyExportRemovedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("governance_policy_export_removed_details") - return .dictionary(d) - case .governancePolicyRemoveFoldersDetails(let arg): - var d = try Serialization.getFields(TeamLog.GovernancePolicyRemoveFoldersDetailsSerializer().serialize(arg)) - d[".tag"] = .str("governance_policy_remove_folders_details") - return .dictionary(d) - case .governancePolicyReportCreatedDetails(let arg): - var d = try Serialization.getFields(TeamLog.GovernancePolicyReportCreatedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("governance_policy_report_created_details") - return .dictionary(d) - case .governancePolicyZipPartDownloadedDetails(let arg): - var d = try Serialization.getFields(TeamLog.GovernancePolicyZipPartDownloadedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("governance_policy_zip_part_downloaded_details") - return .dictionary(d) - case .legalHoldsActivateAHoldDetails(let arg): - var d = try Serialization.getFields(TeamLog.LegalHoldsActivateAHoldDetailsSerializer().serialize(arg)) - d[".tag"] = .str("legal_holds_activate_a_hold_details") - return .dictionary(d) - case .legalHoldsAddMembersDetails(let arg): - var d = try Serialization.getFields(TeamLog.LegalHoldsAddMembersDetailsSerializer().serialize(arg)) - d[".tag"] = .str("legal_holds_add_members_details") - return .dictionary(d) - case .legalHoldsChangeHoldDetailsDetails(let arg): - var d = try Serialization.getFields(TeamLog.LegalHoldsChangeHoldDetailsDetailsSerializer().serialize(arg)) - d[".tag"] = .str("legal_holds_change_hold_details_details") - return .dictionary(d) - case .legalHoldsChangeHoldNameDetails(let arg): - var d = try Serialization.getFields(TeamLog.LegalHoldsChangeHoldNameDetailsSerializer().serialize(arg)) - d[".tag"] = .str("legal_holds_change_hold_name_details") - return .dictionary(d) - case .legalHoldsExportAHoldDetails(let arg): - var d = try Serialization.getFields(TeamLog.LegalHoldsExportAHoldDetailsSerializer().serialize(arg)) - d[".tag"] = .str("legal_holds_export_a_hold_details") - return .dictionary(d) - case .legalHoldsExportCancelledDetails(let arg): - var d = try Serialization.getFields(TeamLog.LegalHoldsExportCancelledDetailsSerializer().serialize(arg)) - d[".tag"] = .str("legal_holds_export_cancelled_details") - return .dictionary(d) - case .legalHoldsExportDownloadedDetails(let arg): - var d = try Serialization.getFields(TeamLog.LegalHoldsExportDownloadedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("legal_holds_export_downloaded_details") - return .dictionary(d) - case .legalHoldsExportRemovedDetails(let arg): - var d = try Serialization.getFields(TeamLog.LegalHoldsExportRemovedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("legal_holds_export_removed_details") - return .dictionary(d) - case .legalHoldsReleaseAHoldDetails(let arg): - var d = try Serialization.getFields(TeamLog.LegalHoldsReleaseAHoldDetailsSerializer().serialize(arg)) - d[".tag"] = .str("legal_holds_release_a_hold_details") - return .dictionary(d) - case .legalHoldsRemoveMembersDetails(let arg): - var d = try Serialization.getFields(TeamLog.LegalHoldsRemoveMembersDetailsSerializer().serialize(arg)) - d[".tag"] = .str("legal_holds_remove_members_details") - return .dictionary(d) - case .legalHoldsReportAHoldDetails(let arg): - var d = try Serialization.getFields(TeamLog.LegalHoldsReportAHoldDetailsSerializer().serialize(arg)) - d[".tag"] = .str("legal_holds_report_a_hold_details") - return .dictionary(d) - case .deviceChangeIpDesktopDetails(let arg): - var d = try Serialization.getFields(TeamLog.DeviceChangeIpDesktopDetailsSerializer().serialize(arg)) - d[".tag"] = .str("device_change_ip_desktop_details") - return .dictionary(d) - case .deviceChangeIpMobileDetails(let arg): - var d = try Serialization.getFields(TeamLog.DeviceChangeIpMobileDetailsSerializer().serialize(arg)) - d[".tag"] = .str("device_change_ip_mobile_details") - return .dictionary(d) - case .deviceChangeIpWebDetails(let arg): - var d = try Serialization.getFields(TeamLog.DeviceChangeIpWebDetailsSerializer().serialize(arg)) - d[".tag"] = .str("device_change_ip_web_details") - return .dictionary(d) - case .deviceDeleteOnUnlinkFailDetails(let arg): - var d = try Serialization.getFields(TeamLog.DeviceDeleteOnUnlinkFailDetailsSerializer().serialize(arg)) - d[".tag"] = .str("device_delete_on_unlink_fail_details") - return .dictionary(d) - case .deviceDeleteOnUnlinkSuccessDetails(let arg): - var d = try Serialization.getFields(TeamLog.DeviceDeleteOnUnlinkSuccessDetailsSerializer().serialize(arg)) - d[".tag"] = .str("device_delete_on_unlink_success_details") - return .dictionary(d) - case .deviceLinkFailDetails(let arg): - var d = try Serialization.getFields(TeamLog.DeviceLinkFailDetailsSerializer().serialize(arg)) - d[".tag"] = .str("device_link_fail_details") - return .dictionary(d) - case .deviceLinkSuccessDetails(let arg): - var d = try Serialization.getFields(TeamLog.DeviceLinkSuccessDetailsSerializer().serialize(arg)) - d[".tag"] = .str("device_link_success_details") - return .dictionary(d) - case .deviceManagementDisabledDetails(let arg): - var d = try Serialization.getFields(TeamLog.DeviceManagementDisabledDetailsSerializer().serialize(arg)) - d[".tag"] = .str("device_management_disabled_details") - return .dictionary(d) - case .deviceManagementEnabledDetails(let arg): - var d = try Serialization.getFields(TeamLog.DeviceManagementEnabledDetailsSerializer().serialize(arg)) - d[".tag"] = .str("device_management_enabled_details") - return .dictionary(d) - case .deviceSyncBackupStatusChangedDetails(let arg): - var d = try Serialization.getFields(TeamLog.DeviceSyncBackupStatusChangedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("device_sync_backup_status_changed_details") - return .dictionary(d) - case .deviceUnlinkDetails(let arg): - var d = try Serialization.getFields(TeamLog.DeviceUnlinkDetailsSerializer().serialize(arg)) - d[".tag"] = .str("device_unlink_details") - return .dictionary(d) - case .dropboxPasswordsExportedDetails(let arg): - var d = try Serialization.getFields(TeamLog.DropboxPasswordsExportedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("dropbox_passwords_exported_details") - return .dictionary(d) - case .dropboxPasswordsNewDeviceEnrolledDetails(let arg): - var d = try Serialization.getFields(TeamLog.DropboxPasswordsNewDeviceEnrolledDetailsSerializer().serialize(arg)) - d[".tag"] = .str("dropbox_passwords_new_device_enrolled_details") - return .dictionary(d) - case .emmRefreshAuthTokenDetails(let arg): - var d = try Serialization.getFields(TeamLog.EmmRefreshAuthTokenDetailsSerializer().serialize(arg)) - d[".tag"] = .str("emm_refresh_auth_token_details") - return .dictionary(d) - case .externalDriveBackupEligibilityStatusCheckedDetails(let arg): - var d = try Serialization.getFields(TeamLog.ExternalDriveBackupEligibilityStatusCheckedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("external_drive_backup_eligibility_status_checked_details") - return .dictionary(d) - case .externalDriveBackupStatusChangedDetails(let arg): - var d = try Serialization.getFields(TeamLog.ExternalDriveBackupStatusChangedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("external_drive_backup_status_changed_details") - return .dictionary(d) - case .accountCaptureChangeAvailabilityDetails(let arg): - var d = try Serialization.getFields(TeamLog.AccountCaptureChangeAvailabilityDetailsSerializer().serialize(arg)) - d[".tag"] = .str("account_capture_change_availability_details") - return .dictionary(d) - case .accountCaptureMigrateAccountDetails(let arg): - var d = try Serialization.getFields(TeamLog.AccountCaptureMigrateAccountDetailsSerializer().serialize(arg)) - d[".tag"] = .str("account_capture_migrate_account_details") - return .dictionary(d) - case .accountCaptureNotificationEmailsSentDetails(let arg): - var d = try Serialization.getFields(TeamLog.AccountCaptureNotificationEmailsSentDetailsSerializer().serialize(arg)) - d[".tag"] = .str("account_capture_notification_emails_sent_details") - return .dictionary(d) - case .accountCaptureRelinquishAccountDetails(let arg): - var d = try Serialization.getFields(TeamLog.AccountCaptureRelinquishAccountDetailsSerializer().serialize(arg)) - d[".tag"] = .str("account_capture_relinquish_account_details") - return .dictionary(d) - case .disabledDomainInvitesDetails(let arg): - var d = try Serialization.getFields(TeamLog.DisabledDomainInvitesDetailsSerializer().serialize(arg)) - d[".tag"] = .str("disabled_domain_invites_details") - return .dictionary(d) - case .domainInvitesApproveRequestToJoinTeamDetails(let arg): - var d = try Serialization.getFields(TeamLog.DomainInvitesApproveRequestToJoinTeamDetailsSerializer().serialize(arg)) - d[".tag"] = .str("domain_invites_approve_request_to_join_team_details") - return .dictionary(d) - case .domainInvitesDeclineRequestToJoinTeamDetails(let arg): - var d = try Serialization.getFields(TeamLog.DomainInvitesDeclineRequestToJoinTeamDetailsSerializer().serialize(arg)) - d[".tag"] = .str("domain_invites_decline_request_to_join_team_details") - return .dictionary(d) - case .domainInvitesEmailExistingUsersDetails(let arg): - var d = try Serialization.getFields(TeamLog.DomainInvitesEmailExistingUsersDetailsSerializer().serialize(arg)) - d[".tag"] = .str("domain_invites_email_existing_users_details") - return .dictionary(d) - case .domainInvitesRequestToJoinTeamDetails(let arg): - var d = try Serialization.getFields(TeamLog.DomainInvitesRequestToJoinTeamDetailsSerializer().serialize(arg)) - d[".tag"] = .str("domain_invites_request_to_join_team_details") - return .dictionary(d) - case .domainInvitesSetInviteNewUserPrefToNoDetails(let arg): - var d = try Serialization.getFields(TeamLog.DomainInvitesSetInviteNewUserPrefToNoDetailsSerializer().serialize(arg)) - d[".tag"] = .str("domain_invites_set_invite_new_user_pref_to_no_details") - return .dictionary(d) - case .domainInvitesSetInviteNewUserPrefToYesDetails(let arg): - var d = try Serialization.getFields(TeamLog.DomainInvitesSetInviteNewUserPrefToYesDetailsSerializer().serialize(arg)) - d[".tag"] = .str("domain_invites_set_invite_new_user_pref_to_yes_details") - return .dictionary(d) - case .domainVerificationAddDomainFailDetails(let arg): - var d = try Serialization.getFields(TeamLog.DomainVerificationAddDomainFailDetailsSerializer().serialize(arg)) - d[".tag"] = .str("domain_verification_add_domain_fail_details") - return .dictionary(d) - case .domainVerificationAddDomainSuccessDetails(let arg): - var d = try Serialization.getFields(TeamLog.DomainVerificationAddDomainSuccessDetailsSerializer().serialize(arg)) - d[".tag"] = .str("domain_verification_add_domain_success_details") - return .dictionary(d) - case .domainVerificationRemoveDomainDetails(let arg): - var d = try Serialization.getFields(TeamLog.DomainVerificationRemoveDomainDetailsSerializer().serialize(arg)) - d[".tag"] = .str("domain_verification_remove_domain_details") - return .dictionary(d) - case .enabledDomainInvitesDetails(let arg): - var d = try Serialization.getFields(TeamLog.EnabledDomainInvitesDetailsSerializer().serialize(arg)) - d[".tag"] = .str("enabled_domain_invites_details") - return .dictionary(d) - case .teamEncryptionKeyCancelKeyDeletionDetails(let arg): - var d = try Serialization.getFields(TeamLog.TeamEncryptionKeyCancelKeyDeletionDetailsSerializer().serialize(arg)) - d[".tag"] = .str("team_encryption_key_cancel_key_deletion_details") - return .dictionary(d) - case .teamEncryptionKeyCreateKeyDetails(let arg): - var d = try Serialization.getFields(TeamLog.TeamEncryptionKeyCreateKeyDetailsSerializer().serialize(arg)) - d[".tag"] = .str("team_encryption_key_create_key_details") - return .dictionary(d) - case .teamEncryptionKeyDeleteKeyDetails(let arg): - var d = try Serialization.getFields(TeamLog.TeamEncryptionKeyDeleteKeyDetailsSerializer().serialize(arg)) - d[".tag"] = .str("team_encryption_key_delete_key_details") - return .dictionary(d) - case .teamEncryptionKeyDisableKeyDetails(let arg): - var d = try Serialization.getFields(TeamLog.TeamEncryptionKeyDisableKeyDetailsSerializer().serialize(arg)) - d[".tag"] = .str("team_encryption_key_disable_key_details") - return .dictionary(d) - case .teamEncryptionKeyEnableKeyDetails(let arg): - var d = try Serialization.getFields(TeamLog.TeamEncryptionKeyEnableKeyDetailsSerializer().serialize(arg)) - d[".tag"] = .str("team_encryption_key_enable_key_details") - return .dictionary(d) - case .teamEncryptionKeyRotateKeyDetails(let arg): - var d = try Serialization.getFields(TeamLog.TeamEncryptionKeyRotateKeyDetailsSerializer().serialize(arg)) - d[".tag"] = .str("team_encryption_key_rotate_key_details") - return .dictionary(d) - case .teamEncryptionKeyScheduleKeyDeletionDetails(let arg): - var d = try Serialization.getFields(TeamLog.TeamEncryptionKeyScheduleKeyDeletionDetailsSerializer().serialize(arg)) - d[".tag"] = .str("team_encryption_key_schedule_key_deletion_details") - return .dictionary(d) - case .applyNamingConventionDetails(let arg): - var d = try Serialization.getFields(TeamLog.ApplyNamingConventionDetailsSerializer().serialize(arg)) - d[".tag"] = .str("apply_naming_convention_details") - return .dictionary(d) - case .createFolderDetails(let arg): - var d = try Serialization.getFields(TeamLog.CreateFolderDetailsSerializer().serialize(arg)) - d[".tag"] = .str("create_folder_details") - return .dictionary(d) - case .fileAddDetails(let arg): - var d = try Serialization.getFields(TeamLog.FileAddDetailsSerializer().serialize(arg)) - d[".tag"] = .str("file_add_details") - return .dictionary(d) - case .fileAddFromAutomationDetails(let arg): - var d = try Serialization.getFields(TeamLog.FileAddFromAutomationDetailsSerializer().serialize(arg)) - d[".tag"] = .str("file_add_from_automation_details") - return .dictionary(d) - case .fileCopyDetails(let arg): - var d = try Serialization.getFields(TeamLog.FileCopyDetailsSerializer().serialize(arg)) - d[".tag"] = .str("file_copy_details") - return .dictionary(d) - case .fileDeleteDetails(let arg): - var d = try Serialization.getFields(TeamLog.FileDeleteDetailsSerializer().serialize(arg)) - d[".tag"] = .str("file_delete_details") - return .dictionary(d) - case .fileDownloadDetails(let arg): - var d = try Serialization.getFields(TeamLog.FileDownloadDetailsSerializer().serialize(arg)) - d[".tag"] = .str("file_download_details") - return .dictionary(d) - case .fileEditDetails(let arg): - var d = try Serialization.getFields(TeamLog.FileEditDetailsSerializer().serialize(arg)) - d[".tag"] = .str("file_edit_details") - return .dictionary(d) - case .fileGetCopyReferenceDetails(let arg): - var d = try Serialization.getFields(TeamLog.FileGetCopyReferenceDetailsSerializer().serialize(arg)) - d[".tag"] = .str("file_get_copy_reference_details") - return .dictionary(d) - case .fileLockingLockStatusChangedDetails(let arg): - var d = try Serialization.getFields(TeamLog.FileLockingLockStatusChangedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("file_locking_lock_status_changed_details") - return .dictionary(d) - case .fileMoveDetails(let arg): - var d = try Serialization.getFields(TeamLog.FileMoveDetailsSerializer().serialize(arg)) - d[".tag"] = .str("file_move_details") - return .dictionary(d) - case .filePermanentlyDeleteDetails(let arg): - var d = try Serialization.getFields(TeamLog.FilePermanentlyDeleteDetailsSerializer().serialize(arg)) - d[".tag"] = .str("file_permanently_delete_details") - return .dictionary(d) - case .filePreviewDetails(let arg): - var d = try Serialization.getFields(TeamLog.FilePreviewDetailsSerializer().serialize(arg)) - d[".tag"] = .str("file_preview_details") - return .dictionary(d) - case .fileRenameDetails(let arg): - var d = try Serialization.getFields(TeamLog.FileRenameDetailsSerializer().serialize(arg)) - d[".tag"] = .str("file_rename_details") - return .dictionary(d) - case .fileRestoreDetails(let arg): - var d = try Serialization.getFields(TeamLog.FileRestoreDetailsSerializer().serialize(arg)) - d[".tag"] = .str("file_restore_details") - return .dictionary(d) - case .fileRevertDetails(let arg): - var d = try Serialization.getFields(TeamLog.FileRevertDetailsSerializer().serialize(arg)) - d[".tag"] = .str("file_revert_details") - return .dictionary(d) - case .fileRollbackChangesDetails(let arg): - var d = try Serialization.getFields(TeamLog.FileRollbackChangesDetailsSerializer().serialize(arg)) - d[".tag"] = .str("file_rollback_changes_details") - return .dictionary(d) - case .fileSaveCopyReferenceDetails(let arg): - var d = try Serialization.getFields(TeamLog.FileSaveCopyReferenceDetailsSerializer().serialize(arg)) - d[".tag"] = .str("file_save_copy_reference_details") - return .dictionary(d) - case .folderOverviewDescriptionChangedDetails(let arg): - var d = try Serialization.getFields(TeamLog.FolderOverviewDescriptionChangedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("folder_overview_description_changed_details") - return .dictionary(d) - case .folderOverviewItemPinnedDetails(let arg): - var d = try Serialization.getFields(TeamLog.FolderOverviewItemPinnedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("folder_overview_item_pinned_details") - return .dictionary(d) - case .folderOverviewItemUnpinnedDetails(let arg): - var d = try Serialization.getFields(TeamLog.FolderOverviewItemUnpinnedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("folder_overview_item_unpinned_details") - return .dictionary(d) - case .objectLabelAddedDetails(let arg): - var d = try Serialization.getFields(TeamLog.ObjectLabelAddedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("object_label_added_details") - return .dictionary(d) - case .objectLabelRemovedDetails(let arg): - var d = try Serialization.getFields(TeamLog.ObjectLabelRemovedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("object_label_removed_details") - return .dictionary(d) - case .objectLabelUpdatedValueDetails(let arg): - var d = try Serialization.getFields(TeamLog.ObjectLabelUpdatedValueDetailsSerializer().serialize(arg)) - d[".tag"] = .str("object_label_updated_value_details") - return .dictionary(d) - case .organizeFolderWithTidyDetails(let arg): - var d = try Serialization.getFields(TeamLog.OrganizeFolderWithTidyDetailsSerializer().serialize(arg)) - d[".tag"] = .str("organize_folder_with_tidy_details") - return .dictionary(d) - case .replayFileDeleteDetails(let arg): - var d = try Serialization.getFields(TeamLog.ReplayFileDeleteDetailsSerializer().serialize(arg)) - d[".tag"] = .str("replay_file_delete_details") - return .dictionary(d) - case .rewindFolderDetails(let arg): - var d = try Serialization.getFields(TeamLog.RewindFolderDetailsSerializer().serialize(arg)) - d[".tag"] = .str("rewind_folder_details") - return .dictionary(d) - case .undoNamingConventionDetails(let arg): - var d = try Serialization.getFields(TeamLog.UndoNamingConventionDetailsSerializer().serialize(arg)) - d[".tag"] = .str("undo_naming_convention_details") - return .dictionary(d) - case .undoOrganizeFolderWithTidyDetails(let arg): - var d = try Serialization.getFields(TeamLog.UndoOrganizeFolderWithTidyDetailsSerializer().serialize(arg)) - d[".tag"] = .str("undo_organize_folder_with_tidy_details") - return .dictionary(d) - case .userTagsAddedDetails(let arg): - var d = try Serialization.getFields(TeamLog.UserTagsAddedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("user_tags_added_details") - return .dictionary(d) - case .userTagsRemovedDetails(let arg): - var d = try Serialization.getFields(TeamLog.UserTagsRemovedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("user_tags_removed_details") - return .dictionary(d) - case .emailIngestReceiveFileDetails(let arg): - var d = try Serialization.getFields(TeamLog.EmailIngestReceiveFileDetailsSerializer().serialize(arg)) - d[".tag"] = .str("email_ingest_receive_file_details") - return .dictionary(d) - case .fileRequestChangeDetails(let arg): - var d = try Serialization.getFields(TeamLog.FileRequestChangeDetailsSerializer().serialize(arg)) - d[".tag"] = .str("file_request_change_details") - return .dictionary(d) - case .fileRequestCloseDetails(let arg): - var d = try Serialization.getFields(TeamLog.FileRequestCloseDetailsSerializer().serialize(arg)) - d[".tag"] = .str("file_request_close_details") - return .dictionary(d) - case .fileRequestCreateDetails(let arg): - var d = try Serialization.getFields(TeamLog.FileRequestCreateDetailsSerializer().serialize(arg)) - d[".tag"] = .str("file_request_create_details") - return .dictionary(d) - case .fileRequestDeleteDetails(let arg): - var d = try Serialization.getFields(TeamLog.FileRequestDeleteDetailsSerializer().serialize(arg)) - d[".tag"] = .str("file_request_delete_details") - return .dictionary(d) - case .fileRequestReceiveFileDetails(let arg): - var d = try Serialization.getFields(TeamLog.FileRequestReceiveFileDetailsSerializer().serialize(arg)) - d[".tag"] = .str("file_request_receive_file_details") - return .dictionary(d) - case .groupAddExternalIdDetails(let arg): - var d = try Serialization.getFields(TeamLog.GroupAddExternalIdDetailsSerializer().serialize(arg)) - d[".tag"] = .str("group_add_external_id_details") - return .dictionary(d) - case .groupAddMemberDetails(let arg): - var d = try Serialization.getFields(TeamLog.GroupAddMemberDetailsSerializer().serialize(arg)) - d[".tag"] = .str("group_add_member_details") - return .dictionary(d) - case .groupChangeExternalIdDetails(let arg): - var d = try Serialization.getFields(TeamLog.GroupChangeExternalIdDetailsSerializer().serialize(arg)) - d[".tag"] = .str("group_change_external_id_details") - return .dictionary(d) - case .groupChangeManagementTypeDetails(let arg): - var d = try Serialization.getFields(TeamLog.GroupChangeManagementTypeDetailsSerializer().serialize(arg)) - d[".tag"] = .str("group_change_management_type_details") - return .dictionary(d) - case .groupChangeMemberRoleDetails(let arg): - var d = try Serialization.getFields(TeamLog.GroupChangeMemberRoleDetailsSerializer().serialize(arg)) - d[".tag"] = .str("group_change_member_role_details") - return .dictionary(d) - case .groupCreateDetails(let arg): - var d = try Serialization.getFields(TeamLog.GroupCreateDetailsSerializer().serialize(arg)) - d[".tag"] = .str("group_create_details") - return .dictionary(d) - case .groupDeleteDetails(let arg): - var d = try Serialization.getFields(TeamLog.GroupDeleteDetailsSerializer().serialize(arg)) - d[".tag"] = .str("group_delete_details") - return .dictionary(d) - case .groupDescriptionUpdatedDetails(let arg): - var d = try Serialization.getFields(TeamLog.GroupDescriptionUpdatedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("group_description_updated_details") - return .dictionary(d) - case .groupJoinPolicyUpdatedDetails(let arg): - var d = try Serialization.getFields(TeamLog.GroupJoinPolicyUpdatedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("group_join_policy_updated_details") - return .dictionary(d) - case .groupMovedDetails(let arg): - var d = try Serialization.getFields(TeamLog.GroupMovedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("group_moved_details") - return .dictionary(d) - case .groupRemoveExternalIdDetails(let arg): - var d = try Serialization.getFields(TeamLog.GroupRemoveExternalIdDetailsSerializer().serialize(arg)) - d[".tag"] = .str("group_remove_external_id_details") - return .dictionary(d) - case .groupRemoveMemberDetails(let arg): - var d = try Serialization.getFields(TeamLog.GroupRemoveMemberDetailsSerializer().serialize(arg)) - d[".tag"] = .str("group_remove_member_details") - return .dictionary(d) - case .groupRenameDetails(let arg): - var d = try Serialization.getFields(TeamLog.GroupRenameDetailsSerializer().serialize(arg)) - d[".tag"] = .str("group_rename_details") - return .dictionary(d) - case .accountLockOrUnlockedDetails(let arg): - var d = try Serialization.getFields(TeamLog.AccountLockOrUnlockedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("account_lock_or_unlocked_details") - return .dictionary(d) - case .emmErrorDetails(let arg): - var d = try Serialization.getFields(TeamLog.EmmErrorDetailsSerializer().serialize(arg)) - d[".tag"] = .str("emm_error_details") - return .dictionary(d) - case .guestAdminSignedInViaTrustedTeamsDetails(let arg): - var d = try Serialization.getFields(TeamLog.GuestAdminSignedInViaTrustedTeamsDetailsSerializer().serialize(arg)) - d[".tag"] = .str("guest_admin_signed_in_via_trusted_teams_details") - return .dictionary(d) - case .guestAdminSignedOutViaTrustedTeamsDetails(let arg): - var d = try Serialization.getFields(TeamLog.GuestAdminSignedOutViaTrustedTeamsDetailsSerializer().serialize(arg)) - d[".tag"] = .str("guest_admin_signed_out_via_trusted_teams_details") - return .dictionary(d) - case .loginFailDetails(let arg): - var d = try Serialization.getFields(TeamLog.LoginFailDetailsSerializer().serialize(arg)) - d[".tag"] = .str("login_fail_details") - return .dictionary(d) - case .loginSuccessDetails(let arg): - var d = try Serialization.getFields(TeamLog.LoginSuccessDetailsSerializer().serialize(arg)) - d[".tag"] = .str("login_success_details") - return .dictionary(d) - case .logoutDetails(let arg): - var d = try Serialization.getFields(TeamLog.LogoutDetailsSerializer().serialize(arg)) - d[".tag"] = .str("logout_details") - return .dictionary(d) - case .resellerSupportSessionEndDetails(let arg): - var d = try Serialization.getFields(TeamLog.ResellerSupportSessionEndDetailsSerializer().serialize(arg)) - d[".tag"] = .str("reseller_support_session_end_details") - return .dictionary(d) - case .resellerSupportSessionStartDetails(let arg): - var d = try Serialization.getFields(TeamLog.ResellerSupportSessionStartDetailsSerializer().serialize(arg)) - d[".tag"] = .str("reseller_support_session_start_details") - return .dictionary(d) - case .signInAsSessionEndDetails(let arg): - var d = try Serialization.getFields(TeamLog.SignInAsSessionEndDetailsSerializer().serialize(arg)) - d[".tag"] = .str("sign_in_as_session_end_details") - return .dictionary(d) - case .signInAsSessionStartDetails(let arg): - var d = try Serialization.getFields(TeamLog.SignInAsSessionStartDetailsSerializer().serialize(arg)) - d[".tag"] = .str("sign_in_as_session_start_details") - return .dictionary(d) - case .ssoErrorDetails(let arg): - var d = try Serialization.getFields(TeamLog.SsoErrorDetailsSerializer().serialize(arg)) - d[".tag"] = .str("sso_error_details") - return .dictionary(d) - case .backupAdminInvitationSentDetails(let arg): - var d = try Serialization.getFields(TeamLog.BackupAdminInvitationSentDetailsSerializer().serialize(arg)) - d[".tag"] = .str("backup_admin_invitation_sent_details") - return .dictionary(d) - case .backupInvitationOpenedDetails(let arg): - var d = try Serialization.getFields(TeamLog.BackupInvitationOpenedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("backup_invitation_opened_details") - return .dictionary(d) - case .createTeamInviteLinkDetails(let arg): - var d = try Serialization.getFields(TeamLog.CreateTeamInviteLinkDetailsSerializer().serialize(arg)) - d[".tag"] = .str("create_team_invite_link_details") - return .dictionary(d) - case .deleteTeamInviteLinkDetails(let arg): - var d = try Serialization.getFields(TeamLog.DeleteTeamInviteLinkDetailsSerializer().serialize(arg)) - d[".tag"] = .str("delete_team_invite_link_details") - return .dictionary(d) - case .memberAddExternalIdDetails(let arg): - var d = try Serialization.getFields(TeamLog.MemberAddExternalIdDetailsSerializer().serialize(arg)) - d[".tag"] = .str("member_add_external_id_details") - return .dictionary(d) - case .memberAddNameDetails(let arg): - var d = try Serialization.getFields(TeamLog.MemberAddNameDetailsSerializer().serialize(arg)) - d[".tag"] = .str("member_add_name_details") - return .dictionary(d) - case .memberChangeAdminRoleDetails(let arg): - var d = try Serialization.getFields(TeamLog.MemberChangeAdminRoleDetailsSerializer().serialize(arg)) - d[".tag"] = .str("member_change_admin_role_details") - return .dictionary(d) - case .memberChangeEmailDetails(let arg): - var d = try Serialization.getFields(TeamLog.MemberChangeEmailDetailsSerializer().serialize(arg)) - d[".tag"] = .str("member_change_email_details") - return .dictionary(d) - case .memberChangeExternalIdDetails(let arg): - var d = try Serialization.getFields(TeamLog.MemberChangeExternalIdDetailsSerializer().serialize(arg)) - d[".tag"] = .str("member_change_external_id_details") - return .dictionary(d) - case .memberChangeMembershipTypeDetails(let arg): - var d = try Serialization.getFields(TeamLog.MemberChangeMembershipTypeDetailsSerializer().serialize(arg)) - d[".tag"] = .str("member_change_membership_type_details") - return .dictionary(d) - case .memberChangeNameDetails(let arg): - var d = try Serialization.getFields(TeamLog.MemberChangeNameDetailsSerializer().serialize(arg)) - d[".tag"] = .str("member_change_name_details") - return .dictionary(d) - case .memberChangeResellerRoleDetails(let arg): - var d = try Serialization.getFields(TeamLog.MemberChangeResellerRoleDetailsSerializer().serialize(arg)) - d[".tag"] = .str("member_change_reseller_role_details") - return .dictionary(d) - case .memberChangeStatusDetails(let arg): - var d = try Serialization.getFields(TeamLog.MemberChangeStatusDetailsSerializer().serialize(arg)) - d[".tag"] = .str("member_change_status_details") - return .dictionary(d) - case .memberDeleteManualContactsDetails(let arg): - var d = try Serialization.getFields(TeamLog.MemberDeleteManualContactsDetailsSerializer().serialize(arg)) - d[".tag"] = .str("member_delete_manual_contacts_details") - return .dictionary(d) - case .memberDeleteProfilePhotoDetails(let arg): - var d = try Serialization.getFields(TeamLog.MemberDeleteProfilePhotoDetailsSerializer().serialize(arg)) - d[".tag"] = .str("member_delete_profile_photo_details") - return .dictionary(d) - case .memberPermanentlyDeleteAccountContentsDetails(let arg): - var d = try Serialization.getFields(TeamLog.MemberPermanentlyDeleteAccountContentsDetailsSerializer().serialize(arg)) - d[".tag"] = .str("member_permanently_delete_account_contents_details") - return .dictionary(d) - case .memberRemoveExternalIdDetails(let arg): - var d = try Serialization.getFields(TeamLog.MemberRemoveExternalIdDetailsSerializer().serialize(arg)) - d[".tag"] = .str("member_remove_external_id_details") - return .dictionary(d) - case .memberSetProfilePhotoDetails(let arg): - var d = try Serialization.getFields(TeamLog.MemberSetProfilePhotoDetailsSerializer().serialize(arg)) - d[".tag"] = .str("member_set_profile_photo_details") - return .dictionary(d) - case .memberSpaceLimitsAddCustomQuotaDetails(let arg): - var d = try Serialization.getFields(TeamLog.MemberSpaceLimitsAddCustomQuotaDetailsSerializer().serialize(arg)) - d[".tag"] = .str("member_space_limits_add_custom_quota_details") - return .dictionary(d) - case .memberSpaceLimitsChangeCustomQuotaDetails(let arg): - var d = try Serialization.getFields(TeamLog.MemberSpaceLimitsChangeCustomQuotaDetailsSerializer().serialize(arg)) - d[".tag"] = .str("member_space_limits_change_custom_quota_details") - return .dictionary(d) - case .memberSpaceLimitsChangeStatusDetails(let arg): - var d = try Serialization.getFields(TeamLog.MemberSpaceLimitsChangeStatusDetailsSerializer().serialize(arg)) - d[".tag"] = .str("member_space_limits_change_status_details") - return .dictionary(d) - case .memberSpaceLimitsRemoveCustomQuotaDetails(let arg): - var d = try Serialization.getFields(TeamLog.MemberSpaceLimitsRemoveCustomQuotaDetailsSerializer().serialize(arg)) - d[".tag"] = .str("member_space_limits_remove_custom_quota_details") - return .dictionary(d) - case .memberSuggestDetails(let arg): - var d = try Serialization.getFields(TeamLog.MemberSuggestDetailsSerializer().serialize(arg)) - d[".tag"] = .str("member_suggest_details") - return .dictionary(d) - case .memberTransferAccountContentsDetails(let arg): - var d = try Serialization.getFields(TeamLog.MemberTransferAccountContentsDetailsSerializer().serialize(arg)) - d[".tag"] = .str("member_transfer_account_contents_details") - return .dictionary(d) - case .pendingSecondaryEmailAddedDetails(let arg): - var d = try Serialization.getFields(TeamLog.PendingSecondaryEmailAddedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("pending_secondary_email_added_details") - return .dictionary(d) - case .secondaryEmailDeletedDetails(let arg): - var d = try Serialization.getFields(TeamLog.SecondaryEmailDeletedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("secondary_email_deleted_details") - return .dictionary(d) - case .secondaryEmailVerifiedDetails(let arg): - var d = try Serialization.getFields(TeamLog.SecondaryEmailVerifiedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("secondary_email_verified_details") - return .dictionary(d) - case .secondaryMailsPolicyChangedDetails(let arg): - var d = try Serialization.getFields(TeamLog.SecondaryMailsPolicyChangedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("secondary_mails_policy_changed_details") - return .dictionary(d) - case .binderAddPageDetails(let arg): - var d = try Serialization.getFields(TeamLog.BinderAddPageDetailsSerializer().serialize(arg)) - d[".tag"] = .str("binder_add_page_details") - return .dictionary(d) - case .binderAddSectionDetails(let arg): - var d = try Serialization.getFields(TeamLog.BinderAddSectionDetailsSerializer().serialize(arg)) - d[".tag"] = .str("binder_add_section_details") - return .dictionary(d) - case .binderRemovePageDetails(let arg): - var d = try Serialization.getFields(TeamLog.BinderRemovePageDetailsSerializer().serialize(arg)) - d[".tag"] = .str("binder_remove_page_details") - return .dictionary(d) - case .binderRemoveSectionDetails(let arg): - var d = try Serialization.getFields(TeamLog.BinderRemoveSectionDetailsSerializer().serialize(arg)) - d[".tag"] = .str("binder_remove_section_details") - return .dictionary(d) - case .binderRenamePageDetails(let arg): - var d = try Serialization.getFields(TeamLog.BinderRenamePageDetailsSerializer().serialize(arg)) - d[".tag"] = .str("binder_rename_page_details") - return .dictionary(d) - case .binderRenameSectionDetails(let arg): - var d = try Serialization.getFields(TeamLog.BinderRenameSectionDetailsSerializer().serialize(arg)) - d[".tag"] = .str("binder_rename_section_details") - return .dictionary(d) - case .binderReorderPageDetails(let arg): - var d = try Serialization.getFields(TeamLog.BinderReorderPageDetailsSerializer().serialize(arg)) - d[".tag"] = .str("binder_reorder_page_details") - return .dictionary(d) - case .binderReorderSectionDetails(let arg): - var d = try Serialization.getFields(TeamLog.BinderReorderSectionDetailsSerializer().serialize(arg)) - d[".tag"] = .str("binder_reorder_section_details") - return .dictionary(d) - case .paperContentAddMemberDetails(let arg): - var d = try Serialization.getFields(TeamLog.PaperContentAddMemberDetailsSerializer().serialize(arg)) - d[".tag"] = .str("paper_content_add_member_details") - return .dictionary(d) - case .paperContentAddToFolderDetails(let arg): - var d = try Serialization.getFields(TeamLog.PaperContentAddToFolderDetailsSerializer().serialize(arg)) - d[".tag"] = .str("paper_content_add_to_folder_details") - return .dictionary(d) - case .paperContentArchiveDetails(let arg): - var d = try Serialization.getFields(TeamLog.PaperContentArchiveDetailsSerializer().serialize(arg)) - d[".tag"] = .str("paper_content_archive_details") - return .dictionary(d) - case .paperContentCreateDetails(let arg): - var d = try Serialization.getFields(TeamLog.PaperContentCreateDetailsSerializer().serialize(arg)) - d[".tag"] = .str("paper_content_create_details") - return .dictionary(d) - case .paperContentPermanentlyDeleteDetails(let arg): - var d = try Serialization.getFields(TeamLog.PaperContentPermanentlyDeleteDetailsSerializer().serialize(arg)) - d[".tag"] = .str("paper_content_permanently_delete_details") - return .dictionary(d) - case .paperContentRemoveFromFolderDetails(let arg): - var d = try Serialization.getFields(TeamLog.PaperContentRemoveFromFolderDetailsSerializer().serialize(arg)) - d[".tag"] = .str("paper_content_remove_from_folder_details") - return .dictionary(d) - case .paperContentRemoveMemberDetails(let arg): - var d = try Serialization.getFields(TeamLog.PaperContentRemoveMemberDetailsSerializer().serialize(arg)) - d[".tag"] = .str("paper_content_remove_member_details") - return .dictionary(d) - case .paperContentRenameDetails(let arg): - var d = try Serialization.getFields(TeamLog.PaperContentRenameDetailsSerializer().serialize(arg)) - d[".tag"] = .str("paper_content_rename_details") - return .dictionary(d) - case .paperContentRestoreDetails(let arg): - var d = try Serialization.getFields(TeamLog.PaperContentRestoreDetailsSerializer().serialize(arg)) - d[".tag"] = .str("paper_content_restore_details") - return .dictionary(d) - case .paperDocAddCommentDetails(let arg): - var d = try Serialization.getFields(TeamLog.PaperDocAddCommentDetailsSerializer().serialize(arg)) - d[".tag"] = .str("paper_doc_add_comment_details") - return .dictionary(d) - case .paperDocChangeMemberRoleDetails(let arg): - var d = try Serialization.getFields(TeamLog.PaperDocChangeMemberRoleDetailsSerializer().serialize(arg)) - d[".tag"] = .str("paper_doc_change_member_role_details") - return .dictionary(d) - case .paperDocChangeSharingPolicyDetails(let arg): - var d = try Serialization.getFields(TeamLog.PaperDocChangeSharingPolicyDetailsSerializer().serialize(arg)) - d[".tag"] = .str("paper_doc_change_sharing_policy_details") - return .dictionary(d) - case .paperDocChangeSubscriptionDetails(let arg): - var d = try Serialization.getFields(TeamLog.PaperDocChangeSubscriptionDetailsSerializer().serialize(arg)) - d[".tag"] = .str("paper_doc_change_subscription_details") - return .dictionary(d) - case .paperDocDeletedDetails(let arg): - var d = try Serialization.getFields(TeamLog.PaperDocDeletedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("paper_doc_deleted_details") - return .dictionary(d) - case .paperDocDeleteCommentDetails(let arg): - var d = try Serialization.getFields(TeamLog.PaperDocDeleteCommentDetailsSerializer().serialize(arg)) - d[".tag"] = .str("paper_doc_delete_comment_details") - return .dictionary(d) - case .paperDocDownloadDetails(let arg): - var d = try Serialization.getFields(TeamLog.PaperDocDownloadDetailsSerializer().serialize(arg)) - d[".tag"] = .str("paper_doc_download_details") - return .dictionary(d) - case .paperDocEditDetails(let arg): - var d = try Serialization.getFields(TeamLog.PaperDocEditDetailsSerializer().serialize(arg)) - d[".tag"] = .str("paper_doc_edit_details") - return .dictionary(d) - case .paperDocEditCommentDetails(let arg): - var d = try Serialization.getFields(TeamLog.PaperDocEditCommentDetailsSerializer().serialize(arg)) - d[".tag"] = .str("paper_doc_edit_comment_details") - return .dictionary(d) - case .paperDocFollowedDetails(let arg): - var d = try Serialization.getFields(TeamLog.PaperDocFollowedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("paper_doc_followed_details") - return .dictionary(d) - case .paperDocMentionDetails(let arg): - var d = try Serialization.getFields(TeamLog.PaperDocMentionDetailsSerializer().serialize(arg)) - d[".tag"] = .str("paper_doc_mention_details") - return .dictionary(d) - case .paperDocOwnershipChangedDetails(let arg): - var d = try Serialization.getFields(TeamLog.PaperDocOwnershipChangedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("paper_doc_ownership_changed_details") - return .dictionary(d) - case .paperDocRequestAccessDetails(let arg): - var d = try Serialization.getFields(TeamLog.PaperDocRequestAccessDetailsSerializer().serialize(arg)) - d[".tag"] = .str("paper_doc_request_access_details") - return .dictionary(d) - case .paperDocResolveCommentDetails(let arg): - var d = try Serialization.getFields(TeamLog.PaperDocResolveCommentDetailsSerializer().serialize(arg)) - d[".tag"] = .str("paper_doc_resolve_comment_details") - return .dictionary(d) - case .paperDocRevertDetails(let arg): - var d = try Serialization.getFields(TeamLog.PaperDocRevertDetailsSerializer().serialize(arg)) - d[".tag"] = .str("paper_doc_revert_details") - return .dictionary(d) - case .paperDocSlackShareDetails(let arg): - var d = try Serialization.getFields(TeamLog.PaperDocSlackShareDetailsSerializer().serialize(arg)) - d[".tag"] = .str("paper_doc_slack_share_details") - return .dictionary(d) - case .paperDocTeamInviteDetails(let arg): - var d = try Serialization.getFields(TeamLog.PaperDocTeamInviteDetailsSerializer().serialize(arg)) - d[".tag"] = .str("paper_doc_team_invite_details") - return .dictionary(d) - case .paperDocTrashedDetails(let arg): - var d = try Serialization.getFields(TeamLog.PaperDocTrashedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("paper_doc_trashed_details") - return .dictionary(d) - case .paperDocUnresolveCommentDetails(let arg): - var d = try Serialization.getFields(TeamLog.PaperDocUnresolveCommentDetailsSerializer().serialize(arg)) - d[".tag"] = .str("paper_doc_unresolve_comment_details") - return .dictionary(d) - case .paperDocUntrashedDetails(let arg): - var d = try Serialization.getFields(TeamLog.PaperDocUntrashedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("paper_doc_untrashed_details") - return .dictionary(d) - case .paperDocViewDetails(let arg): - var d = try Serialization.getFields(TeamLog.PaperDocViewDetailsSerializer().serialize(arg)) - d[".tag"] = .str("paper_doc_view_details") - return .dictionary(d) - case .paperExternalViewAllowDetails(let arg): - var d = try Serialization.getFields(TeamLog.PaperExternalViewAllowDetailsSerializer().serialize(arg)) - d[".tag"] = .str("paper_external_view_allow_details") - return .dictionary(d) - case .paperExternalViewDefaultTeamDetails(let arg): - var d = try Serialization.getFields(TeamLog.PaperExternalViewDefaultTeamDetailsSerializer().serialize(arg)) - d[".tag"] = .str("paper_external_view_default_team_details") - return .dictionary(d) - case .paperExternalViewForbidDetails(let arg): - var d = try Serialization.getFields(TeamLog.PaperExternalViewForbidDetailsSerializer().serialize(arg)) - d[".tag"] = .str("paper_external_view_forbid_details") - return .dictionary(d) - case .paperFolderChangeSubscriptionDetails(let arg): - var d = try Serialization.getFields(TeamLog.PaperFolderChangeSubscriptionDetailsSerializer().serialize(arg)) - d[".tag"] = .str("paper_folder_change_subscription_details") - return .dictionary(d) - case .paperFolderDeletedDetails(let arg): - var d = try Serialization.getFields(TeamLog.PaperFolderDeletedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("paper_folder_deleted_details") - return .dictionary(d) - case .paperFolderFollowedDetails(let arg): - var d = try Serialization.getFields(TeamLog.PaperFolderFollowedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("paper_folder_followed_details") - return .dictionary(d) - case .paperFolderTeamInviteDetails(let arg): - var d = try Serialization.getFields(TeamLog.PaperFolderTeamInviteDetailsSerializer().serialize(arg)) - d[".tag"] = .str("paper_folder_team_invite_details") - return .dictionary(d) - case .paperPublishedLinkChangePermissionDetails(let arg): - var d = try Serialization.getFields(TeamLog.PaperPublishedLinkChangePermissionDetailsSerializer().serialize(arg)) - d[".tag"] = .str("paper_published_link_change_permission_details") - return .dictionary(d) - case .paperPublishedLinkCreateDetails(let arg): - var d = try Serialization.getFields(TeamLog.PaperPublishedLinkCreateDetailsSerializer().serialize(arg)) - d[".tag"] = .str("paper_published_link_create_details") - return .dictionary(d) - case .paperPublishedLinkDisabledDetails(let arg): - var d = try Serialization.getFields(TeamLog.PaperPublishedLinkDisabledDetailsSerializer().serialize(arg)) - d[".tag"] = .str("paper_published_link_disabled_details") - return .dictionary(d) - case .paperPublishedLinkViewDetails(let arg): - var d = try Serialization.getFields(TeamLog.PaperPublishedLinkViewDetailsSerializer().serialize(arg)) - d[".tag"] = .str("paper_published_link_view_details") - return .dictionary(d) - case .passwordChangeDetails(let arg): - var d = try Serialization.getFields(TeamLog.PasswordChangeDetailsSerializer().serialize(arg)) - d[".tag"] = .str("password_change_details") - return .dictionary(d) - case .passwordResetDetails(let arg): - var d = try Serialization.getFields(TeamLog.PasswordResetDetailsSerializer().serialize(arg)) - d[".tag"] = .str("password_reset_details") - return .dictionary(d) - case .passwordResetAllDetails(let arg): - var d = try Serialization.getFields(TeamLog.PasswordResetAllDetailsSerializer().serialize(arg)) - d[".tag"] = .str("password_reset_all_details") - return .dictionary(d) - case .classificationCreateReportDetails(let arg): - var d = try Serialization.getFields(TeamLog.ClassificationCreateReportDetailsSerializer().serialize(arg)) - d[".tag"] = .str("classification_create_report_details") - return .dictionary(d) - case .classificationCreateReportFailDetails(let arg): - var d = try Serialization.getFields(TeamLog.ClassificationCreateReportFailDetailsSerializer().serialize(arg)) - d[".tag"] = .str("classification_create_report_fail_details") - return .dictionary(d) - case .emmCreateExceptionsReportDetails(let arg): - var d = try Serialization.getFields(TeamLog.EmmCreateExceptionsReportDetailsSerializer().serialize(arg)) - d[".tag"] = .str("emm_create_exceptions_report_details") - return .dictionary(d) - case .emmCreateUsageReportDetails(let arg): - var d = try Serialization.getFields(TeamLog.EmmCreateUsageReportDetailsSerializer().serialize(arg)) - d[".tag"] = .str("emm_create_usage_report_details") - return .dictionary(d) - case .exportMembersReportDetails(let arg): - var d = try Serialization.getFields(TeamLog.ExportMembersReportDetailsSerializer().serialize(arg)) - d[".tag"] = .str("export_members_report_details") - return .dictionary(d) - case .exportMembersReportFailDetails(let arg): - var d = try Serialization.getFields(TeamLog.ExportMembersReportFailDetailsSerializer().serialize(arg)) - d[".tag"] = .str("export_members_report_fail_details") - return .dictionary(d) - case .externalSharingCreateReportDetails(let arg): - var d = try Serialization.getFields(TeamLog.ExternalSharingCreateReportDetailsSerializer().serialize(arg)) - d[".tag"] = .str("external_sharing_create_report_details") - return .dictionary(d) - case .externalSharingReportFailedDetails(let arg): - var d = try Serialization.getFields(TeamLog.ExternalSharingReportFailedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("external_sharing_report_failed_details") - return .dictionary(d) - case .noExpirationLinkGenCreateReportDetails(let arg): - var d = try Serialization.getFields(TeamLog.NoExpirationLinkGenCreateReportDetailsSerializer().serialize(arg)) - d[".tag"] = .str("no_expiration_link_gen_create_report_details") - return .dictionary(d) - case .noExpirationLinkGenReportFailedDetails(let arg): - var d = try Serialization.getFields(TeamLog.NoExpirationLinkGenReportFailedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("no_expiration_link_gen_report_failed_details") - return .dictionary(d) - case .noPasswordLinkGenCreateReportDetails(let arg): - var d = try Serialization.getFields(TeamLog.NoPasswordLinkGenCreateReportDetailsSerializer().serialize(arg)) - d[".tag"] = .str("no_password_link_gen_create_report_details") - return .dictionary(d) - case .noPasswordLinkGenReportFailedDetails(let arg): - var d = try Serialization.getFields(TeamLog.NoPasswordLinkGenReportFailedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("no_password_link_gen_report_failed_details") - return .dictionary(d) - case .noPasswordLinkViewCreateReportDetails(let arg): - var d = try Serialization.getFields(TeamLog.NoPasswordLinkViewCreateReportDetailsSerializer().serialize(arg)) - d[".tag"] = .str("no_password_link_view_create_report_details") - return .dictionary(d) - case .noPasswordLinkViewReportFailedDetails(let arg): - var d = try Serialization.getFields(TeamLog.NoPasswordLinkViewReportFailedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("no_password_link_view_report_failed_details") - return .dictionary(d) - case .outdatedLinkViewCreateReportDetails(let arg): - var d = try Serialization.getFields(TeamLog.OutdatedLinkViewCreateReportDetailsSerializer().serialize(arg)) - d[".tag"] = .str("outdated_link_view_create_report_details") - return .dictionary(d) - case .outdatedLinkViewReportFailedDetails(let arg): - var d = try Serialization.getFields(TeamLog.OutdatedLinkViewReportFailedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("outdated_link_view_report_failed_details") - return .dictionary(d) - case .paperAdminExportStartDetails(let arg): - var d = try Serialization.getFields(TeamLog.PaperAdminExportStartDetailsSerializer().serialize(arg)) - d[".tag"] = .str("paper_admin_export_start_details") - return .dictionary(d) - case .ransomwareAlertCreateReportDetails(let arg): - var d = try Serialization.getFields(TeamLog.RansomwareAlertCreateReportDetailsSerializer().serialize(arg)) - d[".tag"] = .str("ransomware_alert_create_report_details") - return .dictionary(d) - case .ransomwareAlertCreateReportFailedDetails(let arg): - var d = try Serialization.getFields(TeamLog.RansomwareAlertCreateReportFailedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("ransomware_alert_create_report_failed_details") - return .dictionary(d) - case .smartSyncCreateAdminPrivilegeReportDetails(let arg): - var d = try Serialization.getFields(TeamLog.SmartSyncCreateAdminPrivilegeReportDetailsSerializer().serialize(arg)) - d[".tag"] = .str("smart_sync_create_admin_privilege_report_details") - return .dictionary(d) - case .teamActivityCreateReportDetails(let arg): - var d = try Serialization.getFields(TeamLog.TeamActivityCreateReportDetailsSerializer().serialize(arg)) - d[".tag"] = .str("team_activity_create_report_details") - return .dictionary(d) - case .teamActivityCreateReportFailDetails(let arg): - var d = try Serialization.getFields(TeamLog.TeamActivityCreateReportFailDetailsSerializer().serialize(arg)) - d[".tag"] = .str("team_activity_create_report_fail_details") - return .dictionary(d) - case .collectionShareDetails(let arg): - var d = try Serialization.getFields(TeamLog.CollectionShareDetailsSerializer().serialize(arg)) - d[".tag"] = .str("collection_share_details") - return .dictionary(d) - case .fileTransfersFileAddDetails(let arg): - var d = try Serialization.getFields(TeamLog.FileTransfersFileAddDetailsSerializer().serialize(arg)) - d[".tag"] = .str("file_transfers_file_add_details") - return .dictionary(d) - case .fileTransfersTransferDeleteDetails(let arg): - var d = try Serialization.getFields(TeamLog.FileTransfersTransferDeleteDetailsSerializer().serialize(arg)) - d[".tag"] = .str("file_transfers_transfer_delete_details") - return .dictionary(d) - case .fileTransfersTransferDownloadDetails(let arg): - var d = try Serialization.getFields(TeamLog.FileTransfersTransferDownloadDetailsSerializer().serialize(arg)) - d[".tag"] = .str("file_transfers_transfer_download_details") - return .dictionary(d) - case .fileTransfersTransferSendDetails(let arg): - var d = try Serialization.getFields(TeamLog.FileTransfersTransferSendDetailsSerializer().serialize(arg)) - d[".tag"] = .str("file_transfers_transfer_send_details") - return .dictionary(d) - case .fileTransfersTransferViewDetails(let arg): - var d = try Serialization.getFields(TeamLog.FileTransfersTransferViewDetailsSerializer().serialize(arg)) - d[".tag"] = .str("file_transfers_transfer_view_details") - return .dictionary(d) - case .noteAclInviteOnlyDetails(let arg): - var d = try Serialization.getFields(TeamLog.NoteAclInviteOnlyDetailsSerializer().serialize(arg)) - d[".tag"] = .str("note_acl_invite_only_details") - return .dictionary(d) - case .noteAclLinkDetails(let arg): - var d = try Serialization.getFields(TeamLog.NoteAclLinkDetailsSerializer().serialize(arg)) - d[".tag"] = .str("note_acl_link_details") - return .dictionary(d) - case .noteAclTeamLinkDetails(let arg): - var d = try Serialization.getFields(TeamLog.NoteAclTeamLinkDetailsSerializer().serialize(arg)) - d[".tag"] = .str("note_acl_team_link_details") - return .dictionary(d) - case .noteSharedDetails(let arg): - var d = try Serialization.getFields(TeamLog.NoteSharedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("note_shared_details") - return .dictionary(d) - case .noteShareReceiveDetails(let arg): - var d = try Serialization.getFields(TeamLog.NoteShareReceiveDetailsSerializer().serialize(arg)) - d[".tag"] = .str("note_share_receive_details") - return .dictionary(d) - case .openNoteSharedDetails(let arg): - var d = try Serialization.getFields(TeamLog.OpenNoteSharedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("open_note_shared_details") - return .dictionary(d) - case .replayFileSharedLinkCreatedDetails(let arg): - var d = try Serialization.getFields(TeamLog.ReplayFileSharedLinkCreatedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("replay_file_shared_link_created_details") - return .dictionary(d) - case .replayFileSharedLinkModifiedDetails(let arg): - var d = try Serialization.getFields(TeamLog.ReplayFileSharedLinkModifiedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("replay_file_shared_link_modified_details") - return .dictionary(d) - case .replayProjectTeamAddDetails(let arg): - var d = try Serialization.getFields(TeamLog.ReplayProjectTeamAddDetailsSerializer().serialize(arg)) - d[".tag"] = .str("replay_project_team_add_details") - return .dictionary(d) - case .replayProjectTeamDeleteDetails(let arg): - var d = try Serialization.getFields(TeamLog.ReplayProjectTeamDeleteDetailsSerializer().serialize(arg)) - d[".tag"] = .str("replay_project_team_delete_details") - return .dictionary(d) - case .sfAddGroupDetails(let arg): - var d = try Serialization.getFields(TeamLog.SfAddGroupDetailsSerializer().serialize(arg)) - d[".tag"] = .str("sf_add_group_details") - return .dictionary(d) - case .sfAllowNonMembersToViewSharedLinksDetails(let arg): - var d = try Serialization.getFields(TeamLog.SfAllowNonMembersToViewSharedLinksDetailsSerializer().serialize(arg)) - d[".tag"] = .str("sf_allow_non_members_to_view_shared_links_details") - return .dictionary(d) - case .sfExternalInviteWarnDetails(let arg): - var d = try Serialization.getFields(TeamLog.SfExternalInviteWarnDetailsSerializer().serialize(arg)) - d[".tag"] = .str("sf_external_invite_warn_details") - return .dictionary(d) - case .sfFbInviteDetails(let arg): - var d = try Serialization.getFields(TeamLog.SfFbInviteDetailsSerializer().serialize(arg)) - d[".tag"] = .str("sf_fb_invite_details") - return .dictionary(d) - case .sfFbInviteChangeRoleDetails(let arg): - var d = try Serialization.getFields(TeamLog.SfFbInviteChangeRoleDetailsSerializer().serialize(arg)) - d[".tag"] = .str("sf_fb_invite_change_role_details") - return .dictionary(d) - case .sfFbUninviteDetails(let arg): - var d = try Serialization.getFields(TeamLog.SfFbUninviteDetailsSerializer().serialize(arg)) - d[".tag"] = .str("sf_fb_uninvite_details") - return .dictionary(d) - case .sfInviteGroupDetails(let arg): - var d = try Serialization.getFields(TeamLog.SfInviteGroupDetailsSerializer().serialize(arg)) - d[".tag"] = .str("sf_invite_group_details") - return .dictionary(d) - case .sfTeamGrantAccessDetails(let arg): - var d = try Serialization.getFields(TeamLog.SfTeamGrantAccessDetailsSerializer().serialize(arg)) - d[".tag"] = .str("sf_team_grant_access_details") - return .dictionary(d) - case .sfTeamInviteDetails(let arg): - var d = try Serialization.getFields(TeamLog.SfTeamInviteDetailsSerializer().serialize(arg)) - d[".tag"] = .str("sf_team_invite_details") - return .dictionary(d) - case .sfTeamInviteChangeRoleDetails(let arg): - var d = try Serialization.getFields(TeamLog.SfTeamInviteChangeRoleDetailsSerializer().serialize(arg)) - d[".tag"] = .str("sf_team_invite_change_role_details") - return .dictionary(d) - case .sfTeamJoinDetails(let arg): - var d = try Serialization.getFields(TeamLog.SfTeamJoinDetailsSerializer().serialize(arg)) - d[".tag"] = .str("sf_team_join_details") - return .dictionary(d) - case .sfTeamJoinFromOobLinkDetails(let arg): - var d = try Serialization.getFields(TeamLog.SfTeamJoinFromOobLinkDetailsSerializer().serialize(arg)) - d[".tag"] = .str("sf_team_join_from_oob_link_details") - return .dictionary(d) - case .sfTeamUninviteDetails(let arg): - var d = try Serialization.getFields(TeamLog.SfTeamUninviteDetailsSerializer().serialize(arg)) - d[".tag"] = .str("sf_team_uninvite_details") - return .dictionary(d) - case .sharedContentAddInviteesDetails(let arg): - var d = try Serialization.getFields(TeamLog.SharedContentAddInviteesDetailsSerializer().serialize(arg)) - d[".tag"] = .str("shared_content_add_invitees_details") - return .dictionary(d) - case .sharedContentAddLinkExpiryDetails(let arg): - var d = try Serialization.getFields(TeamLog.SharedContentAddLinkExpiryDetailsSerializer().serialize(arg)) - d[".tag"] = .str("shared_content_add_link_expiry_details") - return .dictionary(d) - case .sharedContentAddLinkPasswordDetails(let arg): - var d = try Serialization.getFields(TeamLog.SharedContentAddLinkPasswordDetailsSerializer().serialize(arg)) - d[".tag"] = .str("shared_content_add_link_password_details") - return .dictionary(d) - case .sharedContentAddMemberDetails(let arg): - var d = try Serialization.getFields(TeamLog.SharedContentAddMemberDetailsSerializer().serialize(arg)) - d[".tag"] = .str("shared_content_add_member_details") - return .dictionary(d) - case .sharedContentChangeDownloadsPolicyDetails(let arg): - var d = try Serialization.getFields(TeamLog.SharedContentChangeDownloadsPolicyDetailsSerializer().serialize(arg)) - d[".tag"] = .str("shared_content_change_downloads_policy_details") - return .dictionary(d) - case .sharedContentChangeInviteeRoleDetails(let arg): - var d = try Serialization.getFields(TeamLog.SharedContentChangeInviteeRoleDetailsSerializer().serialize(arg)) - d[".tag"] = .str("shared_content_change_invitee_role_details") - return .dictionary(d) - case .sharedContentChangeLinkAudienceDetails(let arg): - var d = try Serialization.getFields(TeamLog.SharedContentChangeLinkAudienceDetailsSerializer().serialize(arg)) - d[".tag"] = .str("shared_content_change_link_audience_details") - return .dictionary(d) - case .sharedContentChangeLinkExpiryDetails(let arg): - var d = try Serialization.getFields(TeamLog.SharedContentChangeLinkExpiryDetailsSerializer().serialize(arg)) - d[".tag"] = .str("shared_content_change_link_expiry_details") - return .dictionary(d) - case .sharedContentChangeLinkPasswordDetails(let arg): - var d = try Serialization.getFields(TeamLog.SharedContentChangeLinkPasswordDetailsSerializer().serialize(arg)) - d[".tag"] = .str("shared_content_change_link_password_details") - return .dictionary(d) - case .sharedContentChangeMemberRoleDetails(let arg): - var d = try Serialization.getFields(TeamLog.SharedContentChangeMemberRoleDetailsSerializer().serialize(arg)) - d[".tag"] = .str("shared_content_change_member_role_details") - return .dictionary(d) - case .sharedContentChangeViewerInfoPolicyDetails(let arg): - var d = try Serialization.getFields(TeamLog.SharedContentChangeViewerInfoPolicyDetailsSerializer().serialize(arg)) - d[".tag"] = .str("shared_content_change_viewer_info_policy_details") - return .dictionary(d) - case .sharedContentClaimInvitationDetails(let arg): - var d = try Serialization.getFields(TeamLog.SharedContentClaimInvitationDetailsSerializer().serialize(arg)) - d[".tag"] = .str("shared_content_claim_invitation_details") - return .dictionary(d) - case .sharedContentCopyDetails(let arg): - var d = try Serialization.getFields(TeamLog.SharedContentCopyDetailsSerializer().serialize(arg)) - d[".tag"] = .str("shared_content_copy_details") - return .dictionary(d) - case .sharedContentDownloadDetails(let arg): - var d = try Serialization.getFields(TeamLog.SharedContentDownloadDetailsSerializer().serialize(arg)) - d[".tag"] = .str("shared_content_download_details") - return .dictionary(d) - case .sharedContentRelinquishMembershipDetails(let arg): - var d = try Serialization.getFields(TeamLog.SharedContentRelinquishMembershipDetailsSerializer().serialize(arg)) - d[".tag"] = .str("shared_content_relinquish_membership_details") - return .dictionary(d) - case .sharedContentRemoveInviteesDetails(let arg): - var d = try Serialization.getFields(TeamLog.SharedContentRemoveInviteesDetailsSerializer().serialize(arg)) - d[".tag"] = .str("shared_content_remove_invitees_details") - return .dictionary(d) - case .sharedContentRemoveLinkExpiryDetails(let arg): - var d = try Serialization.getFields(TeamLog.SharedContentRemoveLinkExpiryDetailsSerializer().serialize(arg)) - d[".tag"] = .str("shared_content_remove_link_expiry_details") - return .dictionary(d) - case .sharedContentRemoveLinkPasswordDetails(let arg): - var d = try Serialization.getFields(TeamLog.SharedContentRemoveLinkPasswordDetailsSerializer().serialize(arg)) - d[".tag"] = .str("shared_content_remove_link_password_details") - return .dictionary(d) - case .sharedContentRemoveMemberDetails(let arg): - var d = try Serialization.getFields(TeamLog.SharedContentRemoveMemberDetailsSerializer().serialize(arg)) - d[".tag"] = .str("shared_content_remove_member_details") - return .dictionary(d) - case .sharedContentRequestAccessDetails(let arg): - var d = try Serialization.getFields(TeamLog.SharedContentRequestAccessDetailsSerializer().serialize(arg)) - d[".tag"] = .str("shared_content_request_access_details") - return .dictionary(d) - case .sharedContentRestoreInviteesDetails(let arg): - var d = try Serialization.getFields(TeamLog.SharedContentRestoreInviteesDetailsSerializer().serialize(arg)) - d[".tag"] = .str("shared_content_restore_invitees_details") - return .dictionary(d) - case .sharedContentRestoreMemberDetails(let arg): - var d = try Serialization.getFields(TeamLog.SharedContentRestoreMemberDetailsSerializer().serialize(arg)) - d[".tag"] = .str("shared_content_restore_member_details") - return .dictionary(d) - case .sharedContentUnshareDetails(let arg): - var d = try Serialization.getFields(TeamLog.SharedContentUnshareDetailsSerializer().serialize(arg)) - d[".tag"] = .str("shared_content_unshare_details") - return .dictionary(d) - case .sharedContentViewDetails(let arg): - var d = try Serialization.getFields(TeamLog.SharedContentViewDetailsSerializer().serialize(arg)) - d[".tag"] = .str("shared_content_view_details") - return .dictionary(d) - case .sharedFolderChangeLinkPolicyDetails(let arg): - var d = try Serialization.getFields(TeamLog.SharedFolderChangeLinkPolicyDetailsSerializer().serialize(arg)) - d[".tag"] = .str("shared_folder_change_link_policy_details") - return .dictionary(d) - case .sharedFolderChangeMembersInheritancePolicyDetails(let arg): - var d = try Serialization.getFields(TeamLog.SharedFolderChangeMembersInheritancePolicyDetailsSerializer().serialize(arg)) - d[".tag"] = .str("shared_folder_change_members_inheritance_policy_details") - return .dictionary(d) - case .sharedFolderChangeMembersManagementPolicyDetails(let arg): - var d = try Serialization.getFields(TeamLog.SharedFolderChangeMembersManagementPolicyDetailsSerializer().serialize(arg)) - d[".tag"] = .str("shared_folder_change_members_management_policy_details") - return .dictionary(d) - case .sharedFolderChangeMembersPolicyDetails(let arg): - var d = try Serialization.getFields(TeamLog.SharedFolderChangeMembersPolicyDetailsSerializer().serialize(arg)) - d[".tag"] = .str("shared_folder_change_members_policy_details") - return .dictionary(d) - case .sharedFolderCreateDetails(let arg): - var d = try Serialization.getFields(TeamLog.SharedFolderCreateDetailsSerializer().serialize(arg)) - d[".tag"] = .str("shared_folder_create_details") - return .dictionary(d) - case .sharedFolderDeclineInvitationDetails(let arg): - var d = try Serialization.getFields(TeamLog.SharedFolderDeclineInvitationDetailsSerializer().serialize(arg)) - d[".tag"] = .str("shared_folder_decline_invitation_details") - return .dictionary(d) - case .sharedFolderMountDetails(let arg): - var d = try Serialization.getFields(TeamLog.SharedFolderMountDetailsSerializer().serialize(arg)) - d[".tag"] = .str("shared_folder_mount_details") - return .dictionary(d) - case .sharedFolderNestDetails(let arg): - var d = try Serialization.getFields(TeamLog.SharedFolderNestDetailsSerializer().serialize(arg)) - d[".tag"] = .str("shared_folder_nest_details") - return .dictionary(d) - case .sharedFolderTransferOwnershipDetails(let arg): - var d = try Serialization.getFields(TeamLog.SharedFolderTransferOwnershipDetailsSerializer().serialize(arg)) - d[".tag"] = .str("shared_folder_transfer_ownership_details") - return .dictionary(d) - case .sharedFolderUnmountDetails(let arg): - var d = try Serialization.getFields(TeamLog.SharedFolderUnmountDetailsSerializer().serialize(arg)) - d[".tag"] = .str("shared_folder_unmount_details") - return .dictionary(d) - case .sharedLinkAddExpiryDetails(let arg): - var d = try Serialization.getFields(TeamLog.SharedLinkAddExpiryDetailsSerializer().serialize(arg)) - d[".tag"] = .str("shared_link_add_expiry_details") - return .dictionary(d) - case .sharedLinkChangeExpiryDetails(let arg): - var d = try Serialization.getFields(TeamLog.SharedLinkChangeExpiryDetailsSerializer().serialize(arg)) - d[".tag"] = .str("shared_link_change_expiry_details") - return .dictionary(d) - case .sharedLinkChangeVisibilityDetails(let arg): - var d = try Serialization.getFields(TeamLog.SharedLinkChangeVisibilityDetailsSerializer().serialize(arg)) - d[".tag"] = .str("shared_link_change_visibility_details") - return .dictionary(d) - case .sharedLinkCopyDetails(let arg): - var d = try Serialization.getFields(TeamLog.SharedLinkCopyDetailsSerializer().serialize(arg)) - d[".tag"] = .str("shared_link_copy_details") - return .dictionary(d) - case .sharedLinkCreateDetails(let arg): - var d = try Serialization.getFields(TeamLog.SharedLinkCreateDetailsSerializer().serialize(arg)) - d[".tag"] = .str("shared_link_create_details") - return .dictionary(d) - case .sharedLinkDisableDetails(let arg): - var d = try Serialization.getFields(TeamLog.SharedLinkDisableDetailsSerializer().serialize(arg)) - d[".tag"] = .str("shared_link_disable_details") - return .dictionary(d) - case .sharedLinkDownloadDetails(let arg): - var d = try Serialization.getFields(TeamLog.SharedLinkDownloadDetailsSerializer().serialize(arg)) - d[".tag"] = .str("shared_link_download_details") - return .dictionary(d) - case .sharedLinkRemoveExpiryDetails(let arg): - var d = try Serialization.getFields(TeamLog.SharedLinkRemoveExpiryDetailsSerializer().serialize(arg)) - d[".tag"] = .str("shared_link_remove_expiry_details") - return .dictionary(d) - case .sharedLinkSettingsAddExpirationDetails(let arg): - var d = try Serialization.getFields(TeamLog.SharedLinkSettingsAddExpirationDetailsSerializer().serialize(arg)) - d[".tag"] = .str("shared_link_settings_add_expiration_details") - return .dictionary(d) - case .sharedLinkSettingsAddPasswordDetails(let arg): - var d = try Serialization.getFields(TeamLog.SharedLinkSettingsAddPasswordDetailsSerializer().serialize(arg)) - d[".tag"] = .str("shared_link_settings_add_password_details") - return .dictionary(d) - case .sharedLinkSettingsAllowDownloadDisabledDetails(let arg): - var d = try Serialization.getFields(TeamLog.SharedLinkSettingsAllowDownloadDisabledDetailsSerializer().serialize(arg)) - d[".tag"] = .str("shared_link_settings_allow_download_disabled_details") - return .dictionary(d) - case .sharedLinkSettingsAllowDownloadEnabledDetails(let arg): - var d = try Serialization.getFields(TeamLog.SharedLinkSettingsAllowDownloadEnabledDetailsSerializer().serialize(arg)) - d[".tag"] = .str("shared_link_settings_allow_download_enabled_details") - return .dictionary(d) - case .sharedLinkSettingsChangeAudienceDetails(let arg): - var d = try Serialization.getFields(TeamLog.SharedLinkSettingsChangeAudienceDetailsSerializer().serialize(arg)) - d[".tag"] = .str("shared_link_settings_change_audience_details") - return .dictionary(d) - case .sharedLinkSettingsChangeExpirationDetails(let arg): - var d = try Serialization.getFields(TeamLog.SharedLinkSettingsChangeExpirationDetailsSerializer().serialize(arg)) - d[".tag"] = .str("shared_link_settings_change_expiration_details") - return .dictionary(d) - case .sharedLinkSettingsChangePasswordDetails(let arg): - var d = try Serialization.getFields(TeamLog.SharedLinkSettingsChangePasswordDetailsSerializer().serialize(arg)) - d[".tag"] = .str("shared_link_settings_change_password_details") - return .dictionary(d) - case .sharedLinkSettingsRemoveExpirationDetails(let arg): - var d = try Serialization.getFields(TeamLog.SharedLinkSettingsRemoveExpirationDetailsSerializer().serialize(arg)) - d[".tag"] = .str("shared_link_settings_remove_expiration_details") - return .dictionary(d) - case .sharedLinkSettingsRemovePasswordDetails(let arg): - var d = try Serialization.getFields(TeamLog.SharedLinkSettingsRemovePasswordDetailsSerializer().serialize(arg)) - d[".tag"] = .str("shared_link_settings_remove_password_details") - return .dictionary(d) - case .sharedLinkShareDetails(let arg): - var d = try Serialization.getFields(TeamLog.SharedLinkShareDetailsSerializer().serialize(arg)) - d[".tag"] = .str("shared_link_share_details") - return .dictionary(d) - case .sharedLinkViewDetails(let arg): - var d = try Serialization.getFields(TeamLog.SharedLinkViewDetailsSerializer().serialize(arg)) - d[".tag"] = .str("shared_link_view_details") - return .dictionary(d) - case .sharedNoteOpenedDetails(let arg): - var d = try Serialization.getFields(TeamLog.SharedNoteOpenedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("shared_note_opened_details") - return .dictionary(d) - case .shmodelDisableDownloadsDetails(let arg): - var d = try Serialization.getFields(TeamLog.ShmodelDisableDownloadsDetailsSerializer().serialize(arg)) - d[".tag"] = .str("shmodel_disable_downloads_details") - return .dictionary(d) - case .shmodelEnableDownloadsDetails(let arg): - var d = try Serialization.getFields(TeamLog.ShmodelEnableDownloadsDetailsSerializer().serialize(arg)) - d[".tag"] = .str("shmodel_enable_downloads_details") - return .dictionary(d) - case .shmodelGroupShareDetails(let arg): - var d = try Serialization.getFields(TeamLog.ShmodelGroupShareDetailsSerializer().serialize(arg)) - d[".tag"] = .str("shmodel_group_share_details") - return .dictionary(d) - case .showcaseAccessGrantedDetails(let arg): - var d = try Serialization.getFields(TeamLog.ShowcaseAccessGrantedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("showcase_access_granted_details") - return .dictionary(d) - case .showcaseAddMemberDetails(let arg): - var d = try Serialization.getFields(TeamLog.ShowcaseAddMemberDetailsSerializer().serialize(arg)) - d[".tag"] = .str("showcase_add_member_details") - return .dictionary(d) - case .showcaseArchivedDetails(let arg): - var d = try Serialization.getFields(TeamLog.ShowcaseArchivedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("showcase_archived_details") - return .dictionary(d) - case .showcaseCreatedDetails(let arg): - var d = try Serialization.getFields(TeamLog.ShowcaseCreatedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("showcase_created_details") - return .dictionary(d) - case .showcaseDeleteCommentDetails(let arg): - var d = try Serialization.getFields(TeamLog.ShowcaseDeleteCommentDetailsSerializer().serialize(arg)) - d[".tag"] = .str("showcase_delete_comment_details") - return .dictionary(d) - case .showcaseEditedDetails(let arg): - var d = try Serialization.getFields(TeamLog.ShowcaseEditedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("showcase_edited_details") - return .dictionary(d) - case .showcaseEditCommentDetails(let arg): - var d = try Serialization.getFields(TeamLog.ShowcaseEditCommentDetailsSerializer().serialize(arg)) - d[".tag"] = .str("showcase_edit_comment_details") - return .dictionary(d) - case .showcaseFileAddedDetails(let arg): - var d = try Serialization.getFields(TeamLog.ShowcaseFileAddedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("showcase_file_added_details") - return .dictionary(d) - case .showcaseFileDownloadDetails(let arg): - var d = try Serialization.getFields(TeamLog.ShowcaseFileDownloadDetailsSerializer().serialize(arg)) - d[".tag"] = .str("showcase_file_download_details") - return .dictionary(d) - case .showcaseFileRemovedDetails(let arg): - var d = try Serialization.getFields(TeamLog.ShowcaseFileRemovedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("showcase_file_removed_details") - return .dictionary(d) - case .showcaseFileViewDetails(let arg): - var d = try Serialization.getFields(TeamLog.ShowcaseFileViewDetailsSerializer().serialize(arg)) - d[".tag"] = .str("showcase_file_view_details") - return .dictionary(d) - case .showcasePermanentlyDeletedDetails(let arg): - var d = try Serialization.getFields(TeamLog.ShowcasePermanentlyDeletedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("showcase_permanently_deleted_details") - return .dictionary(d) - case .showcasePostCommentDetails(let arg): - var d = try Serialization.getFields(TeamLog.ShowcasePostCommentDetailsSerializer().serialize(arg)) - d[".tag"] = .str("showcase_post_comment_details") - return .dictionary(d) - case .showcaseRemoveMemberDetails(let arg): - var d = try Serialization.getFields(TeamLog.ShowcaseRemoveMemberDetailsSerializer().serialize(arg)) - d[".tag"] = .str("showcase_remove_member_details") - return .dictionary(d) - case .showcaseRenamedDetails(let arg): - var d = try Serialization.getFields(TeamLog.ShowcaseRenamedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("showcase_renamed_details") - return .dictionary(d) - case .showcaseRequestAccessDetails(let arg): - var d = try Serialization.getFields(TeamLog.ShowcaseRequestAccessDetailsSerializer().serialize(arg)) - d[".tag"] = .str("showcase_request_access_details") - return .dictionary(d) - case .showcaseResolveCommentDetails(let arg): - var d = try Serialization.getFields(TeamLog.ShowcaseResolveCommentDetailsSerializer().serialize(arg)) - d[".tag"] = .str("showcase_resolve_comment_details") - return .dictionary(d) - case .showcaseRestoredDetails(let arg): - var d = try Serialization.getFields(TeamLog.ShowcaseRestoredDetailsSerializer().serialize(arg)) - d[".tag"] = .str("showcase_restored_details") - return .dictionary(d) - case .showcaseTrashedDetails(let arg): - var d = try Serialization.getFields(TeamLog.ShowcaseTrashedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("showcase_trashed_details") - return .dictionary(d) - case .showcaseTrashedDeprecatedDetails(let arg): - var d = try Serialization.getFields(TeamLog.ShowcaseTrashedDeprecatedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("showcase_trashed_deprecated_details") - return .dictionary(d) - case .showcaseUnresolveCommentDetails(let arg): - var d = try Serialization.getFields(TeamLog.ShowcaseUnresolveCommentDetailsSerializer().serialize(arg)) - d[".tag"] = .str("showcase_unresolve_comment_details") - return .dictionary(d) - case .showcaseUntrashedDetails(let arg): - var d = try Serialization.getFields(TeamLog.ShowcaseUntrashedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("showcase_untrashed_details") - return .dictionary(d) - case .showcaseUntrashedDeprecatedDetails(let arg): - var d = try Serialization.getFields(TeamLog.ShowcaseUntrashedDeprecatedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("showcase_untrashed_deprecated_details") - return .dictionary(d) - case .showcaseViewDetails(let arg): - var d = try Serialization.getFields(TeamLog.ShowcaseViewDetailsSerializer().serialize(arg)) - d[".tag"] = .str("showcase_view_details") - return .dictionary(d) - case .ssoAddCertDetails(let arg): - var d = try Serialization.getFields(TeamLog.SsoAddCertDetailsSerializer().serialize(arg)) - d[".tag"] = .str("sso_add_cert_details") - return .dictionary(d) - case .ssoAddLoginUrlDetails(let arg): - var d = try Serialization.getFields(TeamLog.SsoAddLoginUrlDetailsSerializer().serialize(arg)) - d[".tag"] = .str("sso_add_login_url_details") - return .dictionary(d) - case .ssoAddLogoutUrlDetails(let arg): - var d = try Serialization.getFields(TeamLog.SsoAddLogoutUrlDetailsSerializer().serialize(arg)) - d[".tag"] = .str("sso_add_logout_url_details") - return .dictionary(d) - case .ssoChangeCertDetails(let arg): - var d = try Serialization.getFields(TeamLog.SsoChangeCertDetailsSerializer().serialize(arg)) - d[".tag"] = .str("sso_change_cert_details") - return .dictionary(d) - case .ssoChangeLoginUrlDetails(let arg): - var d = try Serialization.getFields(TeamLog.SsoChangeLoginUrlDetailsSerializer().serialize(arg)) - d[".tag"] = .str("sso_change_login_url_details") - return .dictionary(d) - case .ssoChangeLogoutUrlDetails(let arg): - var d = try Serialization.getFields(TeamLog.SsoChangeLogoutUrlDetailsSerializer().serialize(arg)) - d[".tag"] = .str("sso_change_logout_url_details") - return .dictionary(d) - case .ssoChangeSamlIdentityModeDetails(let arg): - var d = try Serialization.getFields(TeamLog.SsoChangeSamlIdentityModeDetailsSerializer().serialize(arg)) - d[".tag"] = .str("sso_change_saml_identity_mode_details") - return .dictionary(d) - case .ssoRemoveCertDetails(let arg): - var d = try Serialization.getFields(TeamLog.SsoRemoveCertDetailsSerializer().serialize(arg)) - d[".tag"] = .str("sso_remove_cert_details") - return .dictionary(d) - case .ssoRemoveLoginUrlDetails(let arg): - var d = try Serialization.getFields(TeamLog.SsoRemoveLoginUrlDetailsSerializer().serialize(arg)) - d[".tag"] = .str("sso_remove_login_url_details") - return .dictionary(d) - case .ssoRemoveLogoutUrlDetails(let arg): - var d = try Serialization.getFields(TeamLog.SsoRemoveLogoutUrlDetailsSerializer().serialize(arg)) - d[".tag"] = .str("sso_remove_logout_url_details") - return .dictionary(d) - case .teamFolderChangeStatusDetails(let arg): - var d = try Serialization.getFields(TeamLog.TeamFolderChangeStatusDetailsSerializer().serialize(arg)) - d[".tag"] = .str("team_folder_change_status_details") - return .dictionary(d) - case .teamFolderCreateDetails(let arg): - var d = try Serialization.getFields(TeamLog.TeamFolderCreateDetailsSerializer().serialize(arg)) - d[".tag"] = .str("team_folder_create_details") - return .dictionary(d) - case .teamFolderDowngradeDetails(let arg): - var d = try Serialization.getFields(TeamLog.TeamFolderDowngradeDetailsSerializer().serialize(arg)) - d[".tag"] = .str("team_folder_downgrade_details") - return .dictionary(d) - case .teamFolderPermanentlyDeleteDetails(let arg): - var d = try Serialization.getFields(TeamLog.TeamFolderPermanentlyDeleteDetailsSerializer().serialize(arg)) - d[".tag"] = .str("team_folder_permanently_delete_details") - return .dictionary(d) - case .teamFolderRenameDetails(let arg): - var d = try Serialization.getFields(TeamLog.TeamFolderRenameDetailsSerializer().serialize(arg)) - d[".tag"] = .str("team_folder_rename_details") - return .dictionary(d) - case .teamSelectiveSyncSettingsChangedDetails(let arg): - var d = try Serialization.getFields(TeamLog.TeamSelectiveSyncSettingsChangedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("team_selective_sync_settings_changed_details") - return .dictionary(d) - case .accountCaptureChangePolicyDetails(let arg): - var d = try Serialization.getFields(TeamLog.AccountCaptureChangePolicyDetailsSerializer().serialize(arg)) - d[".tag"] = .str("account_capture_change_policy_details") - return .dictionary(d) - case .adminEmailRemindersChangedDetails(let arg): - var d = try Serialization.getFields(TeamLog.AdminEmailRemindersChangedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("admin_email_reminders_changed_details") - return .dictionary(d) - case .allowDownloadDisabledDetails(let arg): - var d = try Serialization.getFields(TeamLog.AllowDownloadDisabledDetailsSerializer().serialize(arg)) - d[".tag"] = .str("allow_download_disabled_details") - return .dictionary(d) - case .allowDownloadEnabledDetails(let arg): - var d = try Serialization.getFields(TeamLog.AllowDownloadEnabledDetailsSerializer().serialize(arg)) - d[".tag"] = .str("allow_download_enabled_details") - return .dictionary(d) - case .appPermissionsChangedDetails(let arg): - var d = try Serialization.getFields(TeamLog.AppPermissionsChangedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("app_permissions_changed_details") - return .dictionary(d) - case .cameraUploadsPolicyChangedDetails(let arg): - var d = try Serialization.getFields(TeamLog.CameraUploadsPolicyChangedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("camera_uploads_policy_changed_details") - return .dictionary(d) - case .captureTranscriptPolicyChangedDetails(let arg): - var d = try Serialization.getFields(TeamLog.CaptureTranscriptPolicyChangedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("capture_transcript_policy_changed_details") - return .dictionary(d) - case .classificationChangePolicyDetails(let arg): - var d = try Serialization.getFields(TeamLog.ClassificationChangePolicyDetailsSerializer().serialize(arg)) - d[".tag"] = .str("classification_change_policy_details") - return .dictionary(d) - case .computerBackupPolicyChangedDetails(let arg): - var d = try Serialization.getFields(TeamLog.ComputerBackupPolicyChangedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("computer_backup_policy_changed_details") - return .dictionary(d) - case .contentAdministrationPolicyChangedDetails(let arg): - var d = try Serialization.getFields(TeamLog.ContentAdministrationPolicyChangedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("content_administration_policy_changed_details") - return .dictionary(d) - case .dataPlacementRestrictionChangePolicyDetails(let arg): - var d = try Serialization.getFields(TeamLog.DataPlacementRestrictionChangePolicyDetailsSerializer().serialize(arg)) - d[".tag"] = .str("data_placement_restriction_change_policy_details") - return .dictionary(d) - case .dataPlacementRestrictionSatisfyPolicyDetails(let arg): - var d = try Serialization.getFields(TeamLog.DataPlacementRestrictionSatisfyPolicyDetailsSerializer().serialize(arg)) - d[".tag"] = .str("data_placement_restriction_satisfy_policy_details") - return .dictionary(d) - case .deviceApprovalsAddExceptionDetails(let arg): - var d = try Serialization.getFields(TeamLog.DeviceApprovalsAddExceptionDetailsSerializer().serialize(arg)) - d[".tag"] = .str("device_approvals_add_exception_details") - return .dictionary(d) - case .deviceApprovalsChangeDesktopPolicyDetails(let arg): - var d = try Serialization.getFields(TeamLog.DeviceApprovalsChangeDesktopPolicyDetailsSerializer().serialize(arg)) - d[".tag"] = .str("device_approvals_change_desktop_policy_details") - return .dictionary(d) - case .deviceApprovalsChangeMobilePolicyDetails(let arg): - var d = try Serialization.getFields(TeamLog.DeviceApprovalsChangeMobilePolicyDetailsSerializer().serialize(arg)) - d[".tag"] = .str("device_approvals_change_mobile_policy_details") - return .dictionary(d) - case .deviceApprovalsChangeOverageActionDetails(let arg): - var d = try Serialization.getFields(TeamLog.DeviceApprovalsChangeOverageActionDetailsSerializer().serialize(arg)) - d[".tag"] = .str("device_approvals_change_overage_action_details") - return .dictionary(d) - case .deviceApprovalsChangeUnlinkActionDetails(let arg): - var d = try Serialization.getFields(TeamLog.DeviceApprovalsChangeUnlinkActionDetailsSerializer().serialize(arg)) - d[".tag"] = .str("device_approvals_change_unlink_action_details") - return .dictionary(d) - case .deviceApprovalsRemoveExceptionDetails(let arg): - var d = try Serialization.getFields(TeamLog.DeviceApprovalsRemoveExceptionDetailsSerializer().serialize(arg)) - d[".tag"] = .str("device_approvals_remove_exception_details") - return .dictionary(d) - case .directoryRestrictionsAddMembersDetails(let arg): - var d = try Serialization.getFields(TeamLog.DirectoryRestrictionsAddMembersDetailsSerializer().serialize(arg)) - d[".tag"] = .str("directory_restrictions_add_members_details") - return .dictionary(d) - case .directoryRestrictionsRemoveMembersDetails(let arg): - var d = try Serialization.getFields(TeamLog.DirectoryRestrictionsRemoveMembersDetailsSerializer().serialize(arg)) - d[".tag"] = .str("directory_restrictions_remove_members_details") - return .dictionary(d) - case .dropboxPasswordsPolicyChangedDetails(let arg): - var d = try Serialization.getFields(TeamLog.DropboxPasswordsPolicyChangedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("dropbox_passwords_policy_changed_details") - return .dictionary(d) - case .emailIngestPolicyChangedDetails(let arg): - var d = try Serialization.getFields(TeamLog.EmailIngestPolicyChangedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("email_ingest_policy_changed_details") - return .dictionary(d) - case .emmAddExceptionDetails(let arg): - var d = try Serialization.getFields(TeamLog.EmmAddExceptionDetailsSerializer().serialize(arg)) - d[".tag"] = .str("emm_add_exception_details") - return .dictionary(d) - case .emmChangePolicyDetails(let arg): - var d = try Serialization.getFields(TeamLog.EmmChangePolicyDetailsSerializer().serialize(arg)) - d[".tag"] = .str("emm_change_policy_details") - return .dictionary(d) - case .emmRemoveExceptionDetails(let arg): - var d = try Serialization.getFields(TeamLog.EmmRemoveExceptionDetailsSerializer().serialize(arg)) - d[".tag"] = .str("emm_remove_exception_details") - return .dictionary(d) - case .extendedVersionHistoryChangePolicyDetails(let arg): - var d = try Serialization.getFields(TeamLog.ExtendedVersionHistoryChangePolicyDetailsSerializer().serialize(arg)) - d[".tag"] = .str("extended_version_history_change_policy_details") - return .dictionary(d) - case .externalDriveBackupPolicyChangedDetails(let arg): - var d = try Serialization.getFields(TeamLog.ExternalDriveBackupPolicyChangedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("external_drive_backup_policy_changed_details") - return .dictionary(d) - case .fileCommentsChangePolicyDetails(let arg): - var d = try Serialization.getFields(TeamLog.FileCommentsChangePolicyDetailsSerializer().serialize(arg)) - d[".tag"] = .str("file_comments_change_policy_details") - return .dictionary(d) - case .fileLockingPolicyChangedDetails(let arg): - var d = try Serialization.getFields(TeamLog.FileLockingPolicyChangedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("file_locking_policy_changed_details") - return .dictionary(d) - case .fileProviderMigrationPolicyChangedDetails(let arg): - var d = try Serialization.getFields(TeamLog.FileProviderMigrationPolicyChangedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("file_provider_migration_policy_changed_details") - return .dictionary(d) - case .fileRequestsChangePolicyDetails(let arg): - var d = try Serialization.getFields(TeamLog.FileRequestsChangePolicyDetailsSerializer().serialize(arg)) - d[".tag"] = .str("file_requests_change_policy_details") - return .dictionary(d) - case .fileRequestsEmailsEnabledDetails(let arg): - var d = try Serialization.getFields(TeamLog.FileRequestsEmailsEnabledDetailsSerializer().serialize(arg)) - d[".tag"] = .str("file_requests_emails_enabled_details") - return .dictionary(d) - case .fileRequestsEmailsRestrictedToTeamOnlyDetails(let arg): - var d = try Serialization.getFields(TeamLog.FileRequestsEmailsRestrictedToTeamOnlyDetailsSerializer().serialize(arg)) - d[".tag"] = .str("file_requests_emails_restricted_to_team_only_details") - return .dictionary(d) - case .fileTransfersPolicyChangedDetails(let arg): - var d = try Serialization.getFields(TeamLog.FileTransfersPolicyChangedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("file_transfers_policy_changed_details") - return .dictionary(d) - case .folderLinkRestrictionPolicyChangedDetails(let arg): - var d = try Serialization.getFields(TeamLog.FolderLinkRestrictionPolicyChangedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("folder_link_restriction_policy_changed_details") - return .dictionary(d) - case .googleSsoChangePolicyDetails(let arg): - var d = try Serialization.getFields(TeamLog.GoogleSsoChangePolicyDetailsSerializer().serialize(arg)) - d[".tag"] = .str("google_sso_change_policy_details") - return .dictionary(d) - case .groupUserManagementChangePolicyDetails(let arg): - var d = try Serialization.getFields(TeamLog.GroupUserManagementChangePolicyDetailsSerializer().serialize(arg)) - d[".tag"] = .str("group_user_management_change_policy_details") - return .dictionary(d) - case .integrationPolicyChangedDetails(let arg): - var d = try Serialization.getFields(TeamLog.IntegrationPolicyChangedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("integration_policy_changed_details") - return .dictionary(d) - case .inviteAcceptanceEmailPolicyChangedDetails(let arg): - var d = try Serialization.getFields(TeamLog.InviteAcceptanceEmailPolicyChangedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("invite_acceptance_email_policy_changed_details") - return .dictionary(d) - case .memberRequestsChangePolicyDetails(let arg): - var d = try Serialization.getFields(TeamLog.MemberRequestsChangePolicyDetailsSerializer().serialize(arg)) - d[".tag"] = .str("member_requests_change_policy_details") - return .dictionary(d) - case .memberSendInvitePolicyChangedDetails(let arg): - var d = try Serialization.getFields(TeamLog.MemberSendInvitePolicyChangedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("member_send_invite_policy_changed_details") - return .dictionary(d) - case .memberSpaceLimitsAddExceptionDetails(let arg): - var d = try Serialization.getFields(TeamLog.MemberSpaceLimitsAddExceptionDetailsSerializer().serialize(arg)) - d[".tag"] = .str("member_space_limits_add_exception_details") - return .dictionary(d) - case .memberSpaceLimitsChangeCapsTypePolicyDetails(let arg): - var d = try Serialization.getFields(TeamLog.MemberSpaceLimitsChangeCapsTypePolicyDetailsSerializer().serialize(arg)) - d[".tag"] = .str("member_space_limits_change_caps_type_policy_details") - return .dictionary(d) - case .memberSpaceLimitsChangePolicyDetails(let arg): - var d = try Serialization.getFields(TeamLog.MemberSpaceLimitsChangePolicyDetailsSerializer().serialize(arg)) - d[".tag"] = .str("member_space_limits_change_policy_details") - return .dictionary(d) - case .memberSpaceLimitsRemoveExceptionDetails(let arg): - var d = try Serialization.getFields(TeamLog.MemberSpaceLimitsRemoveExceptionDetailsSerializer().serialize(arg)) - d[".tag"] = .str("member_space_limits_remove_exception_details") - return .dictionary(d) - case .memberSuggestionsChangePolicyDetails(let arg): - var d = try Serialization.getFields(TeamLog.MemberSuggestionsChangePolicyDetailsSerializer().serialize(arg)) - d[".tag"] = .str("member_suggestions_change_policy_details") - return .dictionary(d) - case .microsoftOfficeAddinChangePolicyDetails(let arg): - var d = try Serialization.getFields(TeamLog.MicrosoftOfficeAddinChangePolicyDetailsSerializer().serialize(arg)) - d[".tag"] = .str("microsoft_office_addin_change_policy_details") - return .dictionary(d) - case .networkControlChangePolicyDetails(let arg): - var d = try Serialization.getFields(TeamLog.NetworkControlChangePolicyDetailsSerializer().serialize(arg)) - d[".tag"] = .str("network_control_change_policy_details") - return .dictionary(d) - case .paperChangeDeploymentPolicyDetails(let arg): - var d = try Serialization.getFields(TeamLog.PaperChangeDeploymentPolicyDetailsSerializer().serialize(arg)) - d[".tag"] = .str("paper_change_deployment_policy_details") - return .dictionary(d) - case .paperChangeMemberLinkPolicyDetails(let arg): - var d = try Serialization.getFields(TeamLog.PaperChangeMemberLinkPolicyDetailsSerializer().serialize(arg)) - d[".tag"] = .str("paper_change_member_link_policy_details") - return .dictionary(d) - case .paperChangeMemberPolicyDetails(let arg): - var d = try Serialization.getFields(TeamLog.PaperChangeMemberPolicyDetailsSerializer().serialize(arg)) - d[".tag"] = .str("paper_change_member_policy_details") - return .dictionary(d) - case .paperChangePolicyDetails(let arg): - var d = try Serialization.getFields(TeamLog.PaperChangePolicyDetailsSerializer().serialize(arg)) - d[".tag"] = .str("paper_change_policy_details") - return .dictionary(d) - case .paperDefaultFolderPolicyChangedDetails(let arg): - var d = try Serialization.getFields(TeamLog.PaperDefaultFolderPolicyChangedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("paper_default_folder_policy_changed_details") - return .dictionary(d) - case .paperDesktopPolicyChangedDetails(let arg): - var d = try Serialization.getFields(TeamLog.PaperDesktopPolicyChangedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("paper_desktop_policy_changed_details") - return .dictionary(d) - case .paperEnabledUsersGroupAdditionDetails(let arg): - var d = try Serialization.getFields(TeamLog.PaperEnabledUsersGroupAdditionDetailsSerializer().serialize(arg)) - d[".tag"] = .str("paper_enabled_users_group_addition_details") - return .dictionary(d) - case .paperEnabledUsersGroupRemovalDetails(let arg): - var d = try Serialization.getFields(TeamLog.PaperEnabledUsersGroupRemovalDetailsSerializer().serialize(arg)) - d[".tag"] = .str("paper_enabled_users_group_removal_details") - return .dictionary(d) - case .passwordStrengthRequirementsChangePolicyDetails(let arg): - var d = try Serialization.getFields(TeamLog.PasswordStrengthRequirementsChangePolicyDetailsSerializer().serialize(arg)) - d[".tag"] = .str("password_strength_requirements_change_policy_details") - return .dictionary(d) - case .permanentDeleteChangePolicyDetails(let arg): - var d = try Serialization.getFields(TeamLog.PermanentDeleteChangePolicyDetailsSerializer().serialize(arg)) - d[".tag"] = .str("permanent_delete_change_policy_details") - return .dictionary(d) - case .resellerSupportChangePolicyDetails(let arg): - var d = try Serialization.getFields(TeamLog.ResellerSupportChangePolicyDetailsSerializer().serialize(arg)) - d[".tag"] = .str("reseller_support_change_policy_details") - return .dictionary(d) - case .rewindPolicyChangedDetails(let arg): - var d = try Serialization.getFields(TeamLog.RewindPolicyChangedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("rewind_policy_changed_details") - return .dictionary(d) - case .sendForSignaturePolicyChangedDetails(let arg): - var d = try Serialization.getFields(TeamLog.SendForSignaturePolicyChangedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("send_for_signature_policy_changed_details") - return .dictionary(d) - case .sharingChangeFolderJoinPolicyDetails(let arg): - var d = try Serialization.getFields(TeamLog.SharingChangeFolderJoinPolicyDetailsSerializer().serialize(arg)) - d[".tag"] = .str("sharing_change_folder_join_policy_details") - return .dictionary(d) - case .sharingChangeLinkAllowChangeExpirationPolicyDetails(let arg): - var d = try Serialization.getFields(TeamLog.SharingChangeLinkAllowChangeExpirationPolicyDetailsSerializer().serialize(arg)) - d[".tag"] = .str("sharing_change_link_allow_change_expiration_policy_details") - return .dictionary(d) - case .sharingChangeLinkDefaultExpirationPolicyDetails(let arg): - var d = try Serialization.getFields(TeamLog.SharingChangeLinkDefaultExpirationPolicyDetailsSerializer().serialize(arg)) - d[".tag"] = .str("sharing_change_link_default_expiration_policy_details") - return .dictionary(d) - case .sharingChangeLinkEnforcePasswordPolicyDetails(let arg): - var d = try Serialization.getFields(TeamLog.SharingChangeLinkEnforcePasswordPolicyDetailsSerializer().serialize(arg)) - d[".tag"] = .str("sharing_change_link_enforce_password_policy_details") - return .dictionary(d) - case .sharingChangeLinkPolicyDetails(let arg): - var d = try Serialization.getFields(TeamLog.SharingChangeLinkPolicyDetailsSerializer().serialize(arg)) - d[".tag"] = .str("sharing_change_link_policy_details") - return .dictionary(d) - case .sharingChangeMemberPolicyDetails(let arg): - var d = try Serialization.getFields(TeamLog.SharingChangeMemberPolicyDetailsSerializer().serialize(arg)) - d[".tag"] = .str("sharing_change_member_policy_details") - return .dictionary(d) - case .showcaseChangeDownloadPolicyDetails(let arg): - var d = try Serialization.getFields(TeamLog.ShowcaseChangeDownloadPolicyDetailsSerializer().serialize(arg)) - d[".tag"] = .str("showcase_change_download_policy_details") - return .dictionary(d) - case .showcaseChangeEnabledPolicyDetails(let arg): - var d = try Serialization.getFields(TeamLog.ShowcaseChangeEnabledPolicyDetailsSerializer().serialize(arg)) - d[".tag"] = .str("showcase_change_enabled_policy_details") - return .dictionary(d) - case .showcaseChangeExternalSharingPolicyDetails(let arg): - var d = try Serialization.getFields(TeamLog.ShowcaseChangeExternalSharingPolicyDetailsSerializer().serialize(arg)) - d[".tag"] = .str("showcase_change_external_sharing_policy_details") - return .dictionary(d) - case .smarterSmartSyncPolicyChangedDetails(let arg): - var d = try Serialization.getFields(TeamLog.SmarterSmartSyncPolicyChangedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("smarter_smart_sync_policy_changed_details") - return .dictionary(d) - case .smartSyncChangePolicyDetails(let arg): - var d = try Serialization.getFields(TeamLog.SmartSyncChangePolicyDetailsSerializer().serialize(arg)) - d[".tag"] = .str("smart_sync_change_policy_details") - return .dictionary(d) - case .smartSyncNotOptOutDetails(let arg): - var d = try Serialization.getFields(TeamLog.SmartSyncNotOptOutDetailsSerializer().serialize(arg)) - d[".tag"] = .str("smart_sync_not_opt_out_details") - return .dictionary(d) - case .smartSyncOptOutDetails(let arg): - var d = try Serialization.getFields(TeamLog.SmartSyncOptOutDetailsSerializer().serialize(arg)) - d[".tag"] = .str("smart_sync_opt_out_details") - return .dictionary(d) - case .ssoChangePolicyDetails(let arg): - var d = try Serialization.getFields(TeamLog.SsoChangePolicyDetailsSerializer().serialize(arg)) - d[".tag"] = .str("sso_change_policy_details") - return .dictionary(d) - case .teamBrandingPolicyChangedDetails(let arg): - var d = try Serialization.getFields(TeamLog.TeamBrandingPolicyChangedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("team_branding_policy_changed_details") - return .dictionary(d) - case .teamExtensionsPolicyChangedDetails(let arg): - var d = try Serialization.getFields(TeamLog.TeamExtensionsPolicyChangedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("team_extensions_policy_changed_details") - return .dictionary(d) - case .teamSelectiveSyncPolicyChangedDetails(let arg): - var d = try Serialization.getFields(TeamLog.TeamSelectiveSyncPolicyChangedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("team_selective_sync_policy_changed_details") - return .dictionary(d) - case .teamSharingWhitelistSubjectsChangedDetails(let arg): - var d = try Serialization.getFields(TeamLog.TeamSharingWhitelistSubjectsChangedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("team_sharing_whitelist_subjects_changed_details") - return .dictionary(d) - case .tfaAddExceptionDetails(let arg): - var d = try Serialization.getFields(TeamLog.TfaAddExceptionDetailsSerializer().serialize(arg)) - d[".tag"] = .str("tfa_add_exception_details") - return .dictionary(d) - case .tfaChangePolicyDetails(let arg): - var d = try Serialization.getFields(TeamLog.TfaChangePolicyDetailsSerializer().serialize(arg)) - d[".tag"] = .str("tfa_change_policy_details") - return .dictionary(d) - case .tfaRemoveExceptionDetails(let arg): - var d = try Serialization.getFields(TeamLog.TfaRemoveExceptionDetailsSerializer().serialize(arg)) - d[".tag"] = .str("tfa_remove_exception_details") - return .dictionary(d) - case .twoAccountChangePolicyDetails(let arg): - var d = try Serialization.getFields(TeamLog.TwoAccountChangePolicyDetailsSerializer().serialize(arg)) - d[".tag"] = .str("two_account_change_policy_details") - return .dictionary(d) - case .viewerInfoPolicyChangedDetails(let arg): - var d = try Serialization.getFields(TeamLog.ViewerInfoPolicyChangedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("viewer_info_policy_changed_details") - return .dictionary(d) - case .watermarkingPolicyChangedDetails(let arg): - var d = try Serialization.getFields(TeamLog.WatermarkingPolicyChangedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("watermarking_policy_changed_details") - return .dictionary(d) - case .webSessionsChangeActiveSessionLimitDetails(let arg): - var d = try Serialization.getFields(TeamLog.WebSessionsChangeActiveSessionLimitDetailsSerializer().serialize(arg)) - d[".tag"] = .str("web_sessions_change_active_session_limit_details") - return .dictionary(d) - case .webSessionsChangeFixedLengthPolicyDetails(let arg): - var d = try Serialization.getFields(TeamLog.WebSessionsChangeFixedLengthPolicyDetailsSerializer().serialize(arg)) - d[".tag"] = .str("web_sessions_change_fixed_length_policy_details") - return .dictionary(d) - case .webSessionsChangeIdleLengthPolicyDetails(let arg): - var d = try Serialization.getFields(TeamLog.WebSessionsChangeIdleLengthPolicyDetailsSerializer().serialize(arg)) - d[".tag"] = .str("web_sessions_change_idle_length_policy_details") - return .dictionary(d) - case .dataResidencyMigrationRequestSuccessfulDetails(let arg): - var d = try Serialization.getFields(TeamLog.DataResidencyMigrationRequestSuccessfulDetailsSerializer().serialize(arg)) - d[".tag"] = .str("data_residency_migration_request_successful_details") - return .dictionary(d) - case .dataResidencyMigrationRequestUnsuccessfulDetails(let arg): - var d = try Serialization.getFields(TeamLog.DataResidencyMigrationRequestUnsuccessfulDetailsSerializer().serialize(arg)) - d[".tag"] = .str("data_residency_migration_request_unsuccessful_details") - return .dictionary(d) - case .teamMergeFromDetails(let arg): - var d = try Serialization.getFields(TeamLog.TeamMergeFromDetailsSerializer().serialize(arg)) - d[".tag"] = .str("team_merge_from_details") - return .dictionary(d) - case .teamMergeToDetails(let arg): - var d = try Serialization.getFields(TeamLog.TeamMergeToDetailsSerializer().serialize(arg)) - d[".tag"] = .str("team_merge_to_details") - return .dictionary(d) - case .teamProfileAddBackgroundDetails(let arg): - var d = try Serialization.getFields(TeamLog.TeamProfileAddBackgroundDetailsSerializer().serialize(arg)) - d[".tag"] = .str("team_profile_add_background_details") - return .dictionary(d) - case .teamProfileAddLogoDetails(let arg): - var d = try Serialization.getFields(TeamLog.TeamProfileAddLogoDetailsSerializer().serialize(arg)) - d[".tag"] = .str("team_profile_add_logo_details") - return .dictionary(d) - case .teamProfileChangeBackgroundDetails(let arg): - var d = try Serialization.getFields(TeamLog.TeamProfileChangeBackgroundDetailsSerializer().serialize(arg)) - d[".tag"] = .str("team_profile_change_background_details") - return .dictionary(d) - case .teamProfileChangeDefaultLanguageDetails(let arg): - var d = try Serialization.getFields(TeamLog.TeamProfileChangeDefaultLanguageDetailsSerializer().serialize(arg)) - d[".tag"] = .str("team_profile_change_default_language_details") - return .dictionary(d) - case .teamProfileChangeLogoDetails(let arg): - var d = try Serialization.getFields(TeamLog.TeamProfileChangeLogoDetailsSerializer().serialize(arg)) - d[".tag"] = .str("team_profile_change_logo_details") - return .dictionary(d) - case .teamProfileChangeNameDetails(let arg): - var d = try Serialization.getFields(TeamLog.TeamProfileChangeNameDetailsSerializer().serialize(arg)) - d[".tag"] = .str("team_profile_change_name_details") - return .dictionary(d) - case .teamProfileRemoveBackgroundDetails(let arg): - var d = try Serialization.getFields(TeamLog.TeamProfileRemoveBackgroundDetailsSerializer().serialize(arg)) - d[".tag"] = .str("team_profile_remove_background_details") - return .dictionary(d) - case .teamProfileRemoveLogoDetails(let arg): - var d = try Serialization.getFields(TeamLog.TeamProfileRemoveLogoDetailsSerializer().serialize(arg)) - d[".tag"] = .str("team_profile_remove_logo_details") - return .dictionary(d) - case .tfaAddBackupPhoneDetails(let arg): - var d = try Serialization.getFields(TeamLog.TfaAddBackupPhoneDetailsSerializer().serialize(arg)) - d[".tag"] = .str("tfa_add_backup_phone_details") - return .dictionary(d) - case .tfaAddSecurityKeyDetails(let arg): - var d = try Serialization.getFields(TeamLog.TfaAddSecurityKeyDetailsSerializer().serialize(arg)) - d[".tag"] = .str("tfa_add_security_key_details") - return .dictionary(d) - case .tfaChangeBackupPhoneDetails(let arg): - var d = try Serialization.getFields(TeamLog.TfaChangeBackupPhoneDetailsSerializer().serialize(arg)) - d[".tag"] = .str("tfa_change_backup_phone_details") - return .dictionary(d) - case .tfaChangeStatusDetails(let arg): - var d = try Serialization.getFields(TeamLog.TfaChangeStatusDetailsSerializer().serialize(arg)) - d[".tag"] = .str("tfa_change_status_details") - return .dictionary(d) - case .tfaRemoveBackupPhoneDetails(let arg): - var d = try Serialization.getFields(TeamLog.TfaRemoveBackupPhoneDetailsSerializer().serialize(arg)) - d[".tag"] = .str("tfa_remove_backup_phone_details") - return .dictionary(d) - case .tfaRemoveSecurityKeyDetails(let arg): - var d = try Serialization.getFields(TeamLog.TfaRemoveSecurityKeyDetailsSerializer().serialize(arg)) - d[".tag"] = .str("tfa_remove_security_key_details") - return .dictionary(d) - case .tfaResetDetails(let arg): - var d = try Serialization.getFields(TeamLog.TfaResetDetailsSerializer().serialize(arg)) - d[".tag"] = .str("tfa_reset_details") - return .dictionary(d) - case .changedEnterpriseAdminRoleDetails(let arg): - var d = try Serialization.getFields(TeamLog.ChangedEnterpriseAdminRoleDetailsSerializer().serialize(arg)) - d[".tag"] = .str("changed_enterprise_admin_role_details") - return .dictionary(d) - case .changedEnterpriseConnectedTeamStatusDetails(let arg): - var d = try Serialization.getFields(TeamLog.ChangedEnterpriseConnectedTeamStatusDetailsSerializer().serialize(arg)) - d[".tag"] = .str("changed_enterprise_connected_team_status_details") - return .dictionary(d) - case .endedEnterpriseAdminSessionDetails(let arg): - var d = try Serialization.getFields(TeamLog.EndedEnterpriseAdminSessionDetailsSerializer().serialize(arg)) - d[".tag"] = .str("ended_enterprise_admin_session_details") - return .dictionary(d) - case .endedEnterpriseAdminSessionDeprecatedDetails(let arg): - var d = try Serialization.getFields(TeamLog.EndedEnterpriseAdminSessionDeprecatedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("ended_enterprise_admin_session_deprecated_details") - return .dictionary(d) - case .enterpriseSettingsLockingDetails(let arg): - var d = try Serialization.getFields(TeamLog.EnterpriseSettingsLockingDetailsSerializer().serialize(arg)) - d[".tag"] = .str("enterprise_settings_locking_details") - return .dictionary(d) - case .guestAdminChangeStatusDetails(let arg): - var d = try Serialization.getFields(TeamLog.GuestAdminChangeStatusDetailsSerializer().serialize(arg)) - d[".tag"] = .str("guest_admin_change_status_details") - return .dictionary(d) - case .startedEnterpriseAdminSessionDetails(let arg): - var d = try Serialization.getFields(TeamLog.StartedEnterpriseAdminSessionDetailsSerializer().serialize(arg)) - d[".tag"] = .str("started_enterprise_admin_session_details") - return .dictionary(d) - case .teamMergeRequestAcceptedDetails(let arg): - var d = try Serialization.getFields(TeamLog.TeamMergeRequestAcceptedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("team_merge_request_accepted_details") - return .dictionary(d) - case .teamMergeRequestAcceptedShownToPrimaryTeamDetails(let arg): - var d = try Serialization.getFields(TeamLog.TeamMergeRequestAcceptedShownToPrimaryTeamDetailsSerializer().serialize(arg)) - d[".tag"] = .str("team_merge_request_accepted_shown_to_primary_team_details") - return .dictionary(d) - case .teamMergeRequestAcceptedShownToSecondaryTeamDetails(let arg): - var d = try Serialization.getFields(TeamLog.TeamMergeRequestAcceptedShownToSecondaryTeamDetailsSerializer().serialize(arg)) - d[".tag"] = .str("team_merge_request_accepted_shown_to_secondary_team_details") - return .dictionary(d) - case .teamMergeRequestAutoCanceledDetails(let arg): - var d = try Serialization.getFields(TeamLog.TeamMergeRequestAutoCanceledDetailsSerializer().serialize(arg)) - d[".tag"] = .str("team_merge_request_auto_canceled_details") - return .dictionary(d) - case .teamMergeRequestCanceledDetails(let arg): - var d = try Serialization.getFields(TeamLog.TeamMergeRequestCanceledDetailsSerializer().serialize(arg)) - d[".tag"] = .str("team_merge_request_canceled_details") - return .dictionary(d) - case .teamMergeRequestCanceledShownToPrimaryTeamDetails(let arg): - var d = try Serialization.getFields(TeamLog.TeamMergeRequestCanceledShownToPrimaryTeamDetailsSerializer().serialize(arg)) - d[".tag"] = .str("team_merge_request_canceled_shown_to_primary_team_details") - return .dictionary(d) - case .teamMergeRequestCanceledShownToSecondaryTeamDetails(let arg): - var d = try Serialization.getFields(TeamLog.TeamMergeRequestCanceledShownToSecondaryTeamDetailsSerializer().serialize(arg)) - d[".tag"] = .str("team_merge_request_canceled_shown_to_secondary_team_details") - return .dictionary(d) - case .teamMergeRequestExpiredDetails(let arg): - var d = try Serialization.getFields(TeamLog.TeamMergeRequestExpiredDetailsSerializer().serialize(arg)) - d[".tag"] = .str("team_merge_request_expired_details") - return .dictionary(d) - case .teamMergeRequestExpiredShownToPrimaryTeamDetails(let arg): - var d = try Serialization.getFields(TeamLog.TeamMergeRequestExpiredShownToPrimaryTeamDetailsSerializer().serialize(arg)) - d[".tag"] = .str("team_merge_request_expired_shown_to_primary_team_details") - return .dictionary(d) - case .teamMergeRequestExpiredShownToSecondaryTeamDetails(let arg): - var d = try Serialization.getFields(TeamLog.TeamMergeRequestExpiredShownToSecondaryTeamDetailsSerializer().serialize(arg)) - d[".tag"] = .str("team_merge_request_expired_shown_to_secondary_team_details") - return .dictionary(d) - case .teamMergeRequestRejectedShownToPrimaryTeamDetails(let arg): - var d = try Serialization.getFields(TeamLog.TeamMergeRequestRejectedShownToPrimaryTeamDetailsSerializer().serialize(arg)) - d[".tag"] = .str("team_merge_request_rejected_shown_to_primary_team_details") - return .dictionary(d) - case .teamMergeRequestRejectedShownToSecondaryTeamDetails(let arg): - var d = try Serialization.getFields(TeamLog.TeamMergeRequestRejectedShownToSecondaryTeamDetailsSerializer().serialize(arg)) - d[".tag"] = .str("team_merge_request_rejected_shown_to_secondary_team_details") - return .dictionary(d) - case .teamMergeRequestReminderDetails(let arg): - var d = try Serialization.getFields(TeamLog.TeamMergeRequestReminderDetailsSerializer().serialize(arg)) - d[".tag"] = .str("team_merge_request_reminder_details") - return .dictionary(d) - case .teamMergeRequestReminderShownToPrimaryTeamDetails(let arg): - var d = try Serialization.getFields(TeamLog.TeamMergeRequestReminderShownToPrimaryTeamDetailsSerializer().serialize(arg)) - d[".tag"] = .str("team_merge_request_reminder_shown_to_primary_team_details") - return .dictionary(d) - case .teamMergeRequestReminderShownToSecondaryTeamDetails(let arg): - var d = try Serialization.getFields(TeamLog.TeamMergeRequestReminderShownToSecondaryTeamDetailsSerializer().serialize(arg)) - d[".tag"] = .str("team_merge_request_reminder_shown_to_secondary_team_details") - return .dictionary(d) - case .teamMergeRequestRevokedDetails(let arg): - var d = try Serialization.getFields(TeamLog.TeamMergeRequestRevokedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("team_merge_request_revoked_details") - return .dictionary(d) - case .teamMergeRequestSentShownToPrimaryTeamDetails(let arg): - var d = try Serialization.getFields(TeamLog.TeamMergeRequestSentShownToPrimaryTeamDetailsSerializer().serialize(arg)) - d[".tag"] = .str("team_merge_request_sent_shown_to_primary_team_details") - return .dictionary(d) - case .teamMergeRequestSentShownToSecondaryTeamDetails(let arg): - var d = try Serialization.getFields(TeamLog.TeamMergeRequestSentShownToSecondaryTeamDetailsSerializer().serialize(arg)) - d[".tag"] = .str("team_merge_request_sent_shown_to_secondary_team_details") - return .dictionary(d) - case .missingDetails(let arg): - var d = try Serialization.getFields(TeamLog.MissingDetailsSerializer().serialize(arg)) - d[".tag"] = .str("missing_details") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) + case .adminAlertingAlertStateChangedDetails(let arg): + var d = try Serialization.getFields(TeamLog.AdminAlertingAlertStateChangedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("admin_alerting_alert_state_changed_details") + return .dictionary(d) + case .adminAlertingChangedAlertConfigDetails(let arg): + var d = try Serialization.getFields(TeamLog.AdminAlertingChangedAlertConfigDetailsSerializer().serialize(arg)) + d[".tag"] = .str("admin_alerting_changed_alert_config_details") + return .dictionary(d) + case .adminAlertingTriggeredAlertDetails(let arg): + var d = try Serialization.getFields(TeamLog.AdminAlertingTriggeredAlertDetailsSerializer().serialize(arg)) + d[".tag"] = .str("admin_alerting_triggered_alert_details") + return .dictionary(d) + case .ransomwareRestoreProcessCompletedDetails(let arg): + var d = try Serialization.getFields(TeamLog.RansomwareRestoreProcessCompletedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("ransomware_restore_process_completed_details") + return .dictionary(d) + case .ransomwareRestoreProcessStartedDetails(let arg): + var d = try Serialization.getFields(TeamLog.RansomwareRestoreProcessStartedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("ransomware_restore_process_started_details") + return .dictionary(d) + case .appBlockedByPermissionsDetails(let arg): + var d = try Serialization.getFields(TeamLog.AppBlockedByPermissionsDetailsSerializer().serialize(arg)) + d[".tag"] = .str("app_blocked_by_permissions_details") + return .dictionary(d) + case .appLinkTeamDetails(let arg): + var d = try Serialization.getFields(TeamLog.AppLinkTeamDetailsSerializer().serialize(arg)) + d[".tag"] = .str("app_link_team_details") + return .dictionary(d) + case .appLinkUserDetails(let arg): + var d = try Serialization.getFields(TeamLog.AppLinkUserDetailsSerializer().serialize(arg)) + d[".tag"] = .str("app_link_user_details") + return .dictionary(d) + case .appUnlinkTeamDetails(let arg): + var d = try Serialization.getFields(TeamLog.AppUnlinkTeamDetailsSerializer().serialize(arg)) + d[".tag"] = .str("app_unlink_team_details") + return .dictionary(d) + case .appUnlinkUserDetails(let arg): + var d = try Serialization.getFields(TeamLog.AppUnlinkUserDetailsSerializer().serialize(arg)) + d[".tag"] = .str("app_unlink_user_details") + return .dictionary(d) + case .integrationConnectedDetails(let arg): + var d = try Serialization.getFields(TeamLog.IntegrationConnectedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("integration_connected_details") + return .dictionary(d) + case .integrationDisconnectedDetails(let arg): + var d = try Serialization.getFields(TeamLog.IntegrationDisconnectedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("integration_disconnected_details") + return .dictionary(d) + case .fileAddCommentDetails(let arg): + var d = try Serialization.getFields(TeamLog.FileAddCommentDetailsSerializer().serialize(arg)) + d[".tag"] = .str("file_add_comment_details") + return .dictionary(d) + case .fileChangeCommentSubscriptionDetails(let arg): + var d = try Serialization.getFields(TeamLog.FileChangeCommentSubscriptionDetailsSerializer().serialize(arg)) + d[".tag"] = .str("file_change_comment_subscription_details") + return .dictionary(d) + case .fileDeleteCommentDetails(let arg): + var d = try Serialization.getFields(TeamLog.FileDeleteCommentDetailsSerializer().serialize(arg)) + d[".tag"] = .str("file_delete_comment_details") + return .dictionary(d) + case .fileEditCommentDetails(let arg): + var d = try Serialization.getFields(TeamLog.FileEditCommentDetailsSerializer().serialize(arg)) + d[".tag"] = .str("file_edit_comment_details") + return .dictionary(d) + case .fileLikeCommentDetails(let arg): + var d = try Serialization.getFields(TeamLog.FileLikeCommentDetailsSerializer().serialize(arg)) + d[".tag"] = .str("file_like_comment_details") + return .dictionary(d) + case .fileResolveCommentDetails(let arg): + var d = try Serialization.getFields(TeamLog.FileResolveCommentDetailsSerializer().serialize(arg)) + d[".tag"] = .str("file_resolve_comment_details") + return .dictionary(d) + case .fileUnlikeCommentDetails(let arg): + var d = try Serialization.getFields(TeamLog.FileUnlikeCommentDetailsSerializer().serialize(arg)) + d[".tag"] = .str("file_unlike_comment_details") + return .dictionary(d) + case .fileUnresolveCommentDetails(let arg): + var d = try Serialization.getFields(TeamLog.FileUnresolveCommentDetailsSerializer().serialize(arg)) + d[".tag"] = .str("file_unresolve_comment_details") + return .dictionary(d) + case .dashAddedCommentToStackDetails(let arg): + var d = try Serialization.getFields(TeamLog.DashAddedCommentToStackDetailsSerializer().serialize(arg)) + d[".tag"] = .str("dash_added_comment_to_stack_details") + return .dictionary(d) + case .dashAddedConnectorDetails(let arg): + var d = try Serialization.getFields(TeamLog.DashAddedConnectorDetailsSerializer().serialize(arg)) + d[".tag"] = .str("dash_added_connector_details") + return .dictionary(d) + case .dashAddedLinkToStackDetails(let arg): + var d = try Serialization.getFields(TeamLog.DashAddedLinkToStackDetailsSerializer().serialize(arg)) + d[".tag"] = .str("dash_added_link_to_stack_details") + return .dictionary(d) + case .dashAddedTeamEmailDomainAllowlistDetails(let arg): + var d = try Serialization.getFields(TeamLog.DashAddedTeamEmailDomainAllowlistDetailsSerializer().serialize(arg)) + d[".tag"] = .str("dash_added_team_email_domain_allowlist_details") + return .dictionary(d) + case .dashAdminAddedOrgWideConnectorDetails(let arg): + var d = try Serialization.getFields(TeamLog.DashAdminAddedOrgWideConnectorDetailsSerializer().serialize(arg)) + d[".tag"] = .str("dash_admin_added_org_wide_connector_details") + return .dictionary(d) + case .dashAdminDisabledConnectorDetails(let arg): + var d = try Serialization.getFields(TeamLog.DashAdminDisabledConnectorDetailsSerializer().serialize(arg)) + d[".tag"] = .str("dash_admin_disabled_connector_details") + return .dictionary(d) + case .dashAdminEnabledConnectorDetails(let arg): + var d = try Serialization.getFields(TeamLog.DashAdminEnabledConnectorDetailsSerializer().serialize(arg)) + d[".tag"] = .str("dash_admin_enabled_connector_details") + return .dictionary(d) + case .dashAdminRemovedOrgWideConnectorDetails(let arg): + var d = try Serialization.getFields(TeamLog.DashAdminRemovedOrgWideConnectorDetailsSerializer().serialize(arg)) + d[".tag"] = .str("dash_admin_removed_org_wide_connector_details") + return .dictionary(d) + case .dashArchivedStackDetails(let arg): + var d = try Serialization.getFields(TeamLog.DashArchivedStackDetailsSerializer().serialize(arg)) + d[".tag"] = .str("dash_archived_stack_details") + return .dictionary(d) + case .dashChangedAudienceOfSharedLinkToStackDetails(let arg): + var d = try Serialization.getFields(TeamLog.DashChangedAudienceOfSharedLinkToStackDetailsSerializer().serialize(arg)) + d[".tag"] = .str("dash_changed_audience_of_shared_link_to_stack_details") + return .dictionary(d) + case .dashClonedStackDetails(let arg): + var d = try Serialization.getFields(TeamLog.DashClonedStackDetailsSerializer().serialize(arg)) + d[".tag"] = .str("dash_cloned_stack_details") + return .dictionary(d) + case .dashConnectorToolsCallDetails(let arg): + var d = try Serialization.getFields(TeamLog.DashConnectorToolsCallDetailsSerializer().serialize(arg)) + d[".tag"] = .str("dash_connector_tools_call_details") + return .dictionary(d) + case .dashCreatedStackDetails(let arg): + var d = try Serialization.getFields(TeamLog.DashCreatedStackDetailsSerializer().serialize(arg)) + d[".tag"] = .str("dash_created_stack_details") + return .dictionary(d) + case .dashDeletedCommentFromStackDetails(let arg): + var d = try Serialization.getFields(TeamLog.DashDeletedCommentFromStackDetailsSerializer().serialize(arg)) + d[".tag"] = .str("dash_deleted_comment_from_stack_details") + return .dictionary(d) + case .dashDeletedStackDetails(let arg): + var d = try Serialization.getFields(TeamLog.DashDeletedStackDetailsSerializer().serialize(arg)) + d[".tag"] = .str("dash_deleted_stack_details") + return .dictionary(d) + case .dashEditedCommentInStackDetails(let arg): + var d = try Serialization.getFields(TeamLog.DashEditedCommentInStackDetailsSerializer().serialize(arg)) + d[".tag"] = .str("dash_edited_comment_in_stack_details") + return .dictionary(d) + case .dashExternalUserOpenedStackDetails(let arg): + var d = try Serialization.getFields(TeamLog.DashExternalUserOpenedStackDetailsSerializer().serialize(arg)) + d[".tag"] = .str("dash_external_user_opened_stack_details") + return .dictionary(d) + case .dashFirstLaunchedDesktopDetails(let arg): + var d = try Serialization.getFields(TeamLog.DashFirstLaunchedDesktopDetailsSerializer().serialize(arg)) + d[".tag"] = .str("dash_first_launched_desktop_details") + return .dictionary(d) + case .dashFirstLaunchedExtensionDetails(let arg): + var d = try Serialization.getFields(TeamLog.DashFirstLaunchedExtensionDetailsSerializer().serialize(arg)) + d[".tag"] = .str("dash_first_launched_extension_details") + return .dictionary(d) + case .dashFirstLaunchedWebStartPageDetails(let arg): + var d = try Serialization.getFields(TeamLog.DashFirstLaunchedWebStartPageDetailsSerializer().serialize(arg)) + d[".tag"] = .str("dash_first_launched_web_start_page_details") + return .dictionary(d) + case .dashOpenedSharedLinkToStackDetails(let arg): + var d = try Serialization.getFields(TeamLog.DashOpenedSharedLinkToStackDetailsSerializer().serialize(arg)) + d[".tag"] = .str("dash_opened_shared_link_to_stack_details") + return .dictionary(d) + case .dashOpenedStackDetails(let arg): + var d = try Serialization.getFields(TeamLog.DashOpenedStackDetailsSerializer().serialize(arg)) + d[".tag"] = .str("dash_opened_stack_details") + return .dictionary(d) + case .dashPreviewOptOutStatusChangedDetails(let arg): + var d = try Serialization.getFields(TeamLog.DashPreviewOptOutStatusChangedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("dash_preview_opt_out_status_changed_details") + return .dictionary(d) + case .dashRemovedConnectorDetails(let arg): + var d = try Serialization.getFields(TeamLog.DashRemovedConnectorDetailsSerializer().serialize(arg)) + d[".tag"] = .str("dash_removed_connector_details") + return .dictionary(d) + case .dashRemovedLinkFromStackDetails(let arg): + var d = try Serialization.getFields(TeamLog.DashRemovedLinkFromStackDetailsSerializer().serialize(arg)) + d[".tag"] = .str("dash_removed_link_from_stack_details") + return .dictionary(d) + case .dashRemovedSharedLinkToStackDetails(let arg): + var d = try Serialization.getFields(TeamLog.DashRemovedSharedLinkToStackDetailsSerializer().serialize(arg)) + d[".tag"] = .str("dash_removed_shared_link_to_stack_details") + return .dictionary(d) + case .dashRemovedTeamEmailDomainAllowlistDetails(let arg): + var d = try Serialization.getFields(TeamLog.DashRemovedTeamEmailDomainAllowlistDetailsSerializer().serialize(arg)) + d[".tag"] = .str("dash_removed_team_email_domain_allowlist_details") + return .dictionary(d) + case .dashRenamedStackDetails(let arg): + var d = try Serialization.getFields(TeamLog.DashRenamedStackDetailsSerializer().serialize(arg)) + d[".tag"] = .str("dash_renamed_stack_details") + return .dictionary(d) + case .dashSharedLinkToStackDetails(let arg): + var d = try Serialization.getFields(TeamLog.DashSharedLinkToStackDetailsSerializer().serialize(arg)) + d[".tag"] = .str("dash_shared_link_to_stack_details") + return .dictionary(d) + case .dashUnarchivedStackDetails(let arg): + var d = try Serialization.getFields(TeamLog.DashUnarchivedStackDetailsSerializer().serialize(arg)) + d[".tag"] = .str("dash_unarchived_stack_details") + return .dictionary(d) + case .dashViewedCompanyStackDetails(let arg): + var d = try Serialization.getFields(TeamLog.DashViewedCompanyStackDetailsSerializer().serialize(arg)) + d[".tag"] = .str("dash_viewed_company_stack_details") + return .dictionary(d) + case .dashViewedExternalAiActivityReportDetails(let arg): + var d = try Serialization.getFields(TeamLog.DashViewedExternalAiActivityReportDetailsSerializer().serialize(arg)) + d[".tag"] = .str("dash_viewed_external_ai_activity_report_details") + return .dictionary(d) + case .governancePolicyAddFoldersDetails(let arg): + var d = try Serialization.getFields(TeamLog.GovernancePolicyAddFoldersDetailsSerializer().serialize(arg)) + d[".tag"] = .str("governance_policy_add_folders_details") + return .dictionary(d) + case .governancePolicyAddFolderFailedDetails(let arg): + var d = try Serialization.getFields(TeamLog.GovernancePolicyAddFolderFailedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("governance_policy_add_folder_failed_details") + return .dictionary(d) + case .governancePolicyContentDisposedDetails(let arg): + var d = try Serialization.getFields(TeamLog.GovernancePolicyContentDisposedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("governance_policy_content_disposed_details") + return .dictionary(d) + case .governancePolicyCreateDetails(let arg): + var d = try Serialization.getFields(TeamLog.GovernancePolicyCreateDetailsSerializer().serialize(arg)) + d[".tag"] = .str("governance_policy_create_details") + return .dictionary(d) + case .governancePolicyDeleteDetails(let arg): + var d = try Serialization.getFields(TeamLog.GovernancePolicyDeleteDetailsSerializer().serialize(arg)) + d[".tag"] = .str("governance_policy_delete_details") + return .dictionary(d) + case .governancePolicyEditDetailsDetails(let arg): + var d = try Serialization.getFields(TeamLog.GovernancePolicyEditDetailsDetailsSerializer().serialize(arg)) + d[".tag"] = .str("governance_policy_edit_details_details") + return .dictionary(d) + case .governancePolicyEditDurationDetails(let arg): + var d = try Serialization.getFields(TeamLog.GovernancePolicyEditDurationDetailsSerializer().serialize(arg)) + d[".tag"] = .str("governance_policy_edit_duration_details") + return .dictionary(d) + case .governancePolicyExportCreatedDetails(let arg): + var d = try Serialization.getFields(TeamLog.GovernancePolicyExportCreatedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("governance_policy_export_created_details") + return .dictionary(d) + case .governancePolicyExportRemovedDetails(let arg): + var d = try Serialization.getFields(TeamLog.GovernancePolicyExportRemovedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("governance_policy_export_removed_details") + return .dictionary(d) + case .governancePolicyRemoveFoldersDetails(let arg): + var d = try Serialization.getFields(TeamLog.GovernancePolicyRemoveFoldersDetailsSerializer().serialize(arg)) + d[".tag"] = .str("governance_policy_remove_folders_details") + return .dictionary(d) + case .governancePolicyReportCreatedDetails(let arg): + var d = try Serialization.getFields(TeamLog.GovernancePolicyReportCreatedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("governance_policy_report_created_details") + return .dictionary(d) + case .governancePolicyZipPartDownloadedDetails(let arg): + var d = try Serialization.getFields(TeamLog.GovernancePolicyZipPartDownloadedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("governance_policy_zip_part_downloaded_details") + return .dictionary(d) + case .legalHoldsActivateAHoldDetails(let arg): + var d = try Serialization.getFields(TeamLog.LegalHoldsActivateAHoldDetailsSerializer().serialize(arg)) + d[".tag"] = .str("legal_holds_activate_a_hold_details") + return .dictionary(d) + case .legalHoldsAddMembersDetails(let arg): + var d = try Serialization.getFields(TeamLog.LegalHoldsAddMembersDetailsSerializer().serialize(arg)) + d[".tag"] = .str("legal_holds_add_members_details") + return .dictionary(d) + case .legalHoldsChangeHoldDetailsDetails(let arg): + var d = try Serialization.getFields(TeamLog.LegalHoldsChangeHoldDetailsDetailsSerializer().serialize(arg)) + d[".tag"] = .str("legal_holds_change_hold_details_details") + return .dictionary(d) + case .legalHoldsChangeHoldNameDetails(let arg): + var d = try Serialization.getFields(TeamLog.LegalHoldsChangeHoldNameDetailsSerializer().serialize(arg)) + d[".tag"] = .str("legal_holds_change_hold_name_details") + return .dictionary(d) + case .legalHoldsExportAHoldDetails(let arg): + var d = try Serialization.getFields(TeamLog.LegalHoldsExportAHoldDetailsSerializer().serialize(arg)) + d[".tag"] = .str("legal_holds_export_a_hold_details") + return .dictionary(d) + case .legalHoldsExportCancelledDetails(let arg): + var d = try Serialization.getFields(TeamLog.LegalHoldsExportCancelledDetailsSerializer().serialize(arg)) + d[".tag"] = .str("legal_holds_export_cancelled_details") + return .dictionary(d) + case .legalHoldsExportDownloadedDetails(let arg): + var d = try Serialization.getFields(TeamLog.LegalHoldsExportDownloadedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("legal_holds_export_downloaded_details") + return .dictionary(d) + case .legalHoldsExportRemovedDetails(let arg): + var d = try Serialization.getFields(TeamLog.LegalHoldsExportRemovedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("legal_holds_export_removed_details") + return .dictionary(d) + case .legalHoldsReleaseAHoldDetails(let arg): + var d = try Serialization.getFields(TeamLog.LegalHoldsReleaseAHoldDetailsSerializer().serialize(arg)) + d[".tag"] = .str("legal_holds_release_a_hold_details") + return .dictionary(d) + case .legalHoldsRemoveMembersDetails(let arg): + var d = try Serialization.getFields(TeamLog.LegalHoldsRemoveMembersDetailsSerializer().serialize(arg)) + d[".tag"] = .str("legal_holds_remove_members_details") + return .dictionary(d) + case .legalHoldsReportAHoldDetails(let arg): + var d = try Serialization.getFields(TeamLog.LegalHoldsReportAHoldDetailsSerializer().serialize(arg)) + d[".tag"] = .str("legal_holds_report_a_hold_details") + return .dictionary(d) + case .deviceChangeIpDesktopDetails(let arg): + var d = try Serialization.getFields(TeamLog.DeviceChangeIpDesktopDetailsSerializer().serialize(arg)) + d[".tag"] = .str("device_change_ip_desktop_details") + return .dictionary(d) + case .deviceChangeIpMobileDetails(let arg): + var d = try Serialization.getFields(TeamLog.DeviceChangeIpMobileDetailsSerializer().serialize(arg)) + d[".tag"] = .str("device_change_ip_mobile_details") + return .dictionary(d) + case .deviceChangeIpWebDetails(let arg): + var d = try Serialization.getFields(TeamLog.DeviceChangeIpWebDetailsSerializer().serialize(arg)) + d[".tag"] = .str("device_change_ip_web_details") + return .dictionary(d) + case .deviceDeleteOnUnlinkFailDetails(let arg): + var d = try Serialization.getFields(TeamLog.DeviceDeleteOnUnlinkFailDetailsSerializer().serialize(arg)) + d[".tag"] = .str("device_delete_on_unlink_fail_details") + return .dictionary(d) + case .deviceDeleteOnUnlinkSuccessDetails(let arg): + var d = try Serialization.getFields(TeamLog.DeviceDeleteOnUnlinkSuccessDetailsSerializer().serialize(arg)) + d[".tag"] = .str("device_delete_on_unlink_success_details") + return .dictionary(d) + case .deviceLinkFailDetails(let arg): + var d = try Serialization.getFields(TeamLog.DeviceLinkFailDetailsSerializer().serialize(arg)) + d[".tag"] = .str("device_link_fail_details") + return .dictionary(d) + case .deviceLinkSuccessDetails(let arg): + var d = try Serialization.getFields(TeamLog.DeviceLinkSuccessDetailsSerializer().serialize(arg)) + d[".tag"] = .str("device_link_success_details") + return .dictionary(d) + case .deviceManagementDisabledDetails(let arg): + var d = try Serialization.getFields(TeamLog.DeviceManagementDisabledDetailsSerializer().serialize(arg)) + d[".tag"] = .str("device_management_disabled_details") + return .dictionary(d) + case .deviceManagementEnabledDetails(let arg): + var d = try Serialization.getFields(TeamLog.DeviceManagementEnabledDetailsSerializer().serialize(arg)) + d[".tag"] = .str("device_management_enabled_details") + return .dictionary(d) + case .deviceSyncBackupStatusChangedDetails(let arg): + var d = try Serialization.getFields(TeamLog.DeviceSyncBackupStatusChangedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("device_sync_backup_status_changed_details") + return .dictionary(d) + case .deviceUnlinkDetails(let arg): + var d = try Serialization.getFields(TeamLog.DeviceUnlinkDetailsSerializer().serialize(arg)) + d[".tag"] = .str("device_unlink_details") + return .dictionary(d) + case .dropboxPasswordsExportedDetails(let arg): + var d = try Serialization.getFields(TeamLog.DropboxPasswordsExportedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("dropbox_passwords_exported_details") + return .dictionary(d) + case .dropboxPasswordsNewDeviceEnrolledDetails(let arg): + var d = try Serialization.getFields(TeamLog.DropboxPasswordsNewDeviceEnrolledDetailsSerializer().serialize(arg)) + d[".tag"] = .str("dropbox_passwords_new_device_enrolled_details") + return .dictionary(d) + case .emmRefreshAuthTokenDetails(let arg): + var d = try Serialization.getFields(TeamLog.EmmRefreshAuthTokenDetailsSerializer().serialize(arg)) + d[".tag"] = .str("emm_refresh_auth_token_details") + return .dictionary(d) + case .externalDriveBackupEligibilityStatusCheckedDetails(let arg): + var d = try Serialization.getFields(TeamLog.ExternalDriveBackupEligibilityStatusCheckedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("external_drive_backup_eligibility_status_checked_details") + return .dictionary(d) + case .externalDriveBackupStatusChangedDetails(let arg): + var d = try Serialization.getFields(TeamLog.ExternalDriveBackupStatusChangedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("external_drive_backup_status_changed_details") + return .dictionary(d) + case .accountCaptureChangeAvailabilityDetails(let arg): + var d = try Serialization.getFields(TeamLog.AccountCaptureChangeAvailabilityDetailsSerializer().serialize(arg)) + d[".tag"] = .str("account_capture_change_availability_details") + return .dictionary(d) + case .accountCaptureMigrateAccountDetails(let arg): + var d = try Serialization.getFields(TeamLog.AccountCaptureMigrateAccountDetailsSerializer().serialize(arg)) + d[".tag"] = .str("account_capture_migrate_account_details") + return .dictionary(d) + case .accountCaptureNotificationEmailsSentDetails(let arg): + var d = try Serialization.getFields(TeamLog.AccountCaptureNotificationEmailsSentDetailsSerializer().serialize(arg)) + d[".tag"] = .str("account_capture_notification_emails_sent_details") + return .dictionary(d) + case .accountCaptureRelinquishAccountDetails(let arg): + var d = try Serialization.getFields(TeamLog.AccountCaptureRelinquishAccountDetailsSerializer().serialize(arg)) + d[".tag"] = .str("account_capture_relinquish_account_details") + return .dictionary(d) + case .disabledDomainInvitesDetails(let arg): + var d = try Serialization.getFields(TeamLog.DisabledDomainInvitesDetailsSerializer().serialize(arg)) + d[".tag"] = .str("disabled_domain_invites_details") + return .dictionary(d) + case .domainInvitesApproveRequestToJoinTeamDetails(let arg): + var d = try Serialization.getFields(TeamLog.DomainInvitesApproveRequestToJoinTeamDetailsSerializer().serialize(arg)) + d[".tag"] = .str("domain_invites_approve_request_to_join_team_details") + return .dictionary(d) + case .domainInvitesDeclineRequestToJoinTeamDetails(let arg): + var d = try Serialization.getFields(TeamLog.DomainInvitesDeclineRequestToJoinTeamDetailsSerializer().serialize(arg)) + d[".tag"] = .str("domain_invites_decline_request_to_join_team_details") + return .dictionary(d) + case .domainInvitesEmailExistingUsersDetails(let arg): + var d = try Serialization.getFields(TeamLog.DomainInvitesEmailExistingUsersDetailsSerializer().serialize(arg)) + d[".tag"] = .str("domain_invites_email_existing_users_details") + return .dictionary(d) + case .domainInvitesRequestToJoinTeamDetails(let arg): + var d = try Serialization.getFields(TeamLog.DomainInvitesRequestToJoinTeamDetailsSerializer().serialize(arg)) + d[".tag"] = .str("domain_invites_request_to_join_team_details") + return .dictionary(d) + case .domainInvitesSetInviteNewUserPrefToNoDetails(let arg): + var d = try Serialization.getFields(TeamLog.DomainInvitesSetInviteNewUserPrefToNoDetailsSerializer().serialize(arg)) + d[".tag"] = .str("domain_invites_set_invite_new_user_pref_to_no_details") + return .dictionary(d) + case .domainInvitesSetInviteNewUserPrefToYesDetails(let arg): + var d = try Serialization.getFields(TeamLog.DomainInvitesSetInviteNewUserPrefToYesDetailsSerializer().serialize(arg)) + d[".tag"] = .str("domain_invites_set_invite_new_user_pref_to_yes_details") + return .dictionary(d) + case .domainVerificationAddDomainFailDetails(let arg): + var d = try Serialization.getFields(TeamLog.DomainVerificationAddDomainFailDetailsSerializer().serialize(arg)) + d[".tag"] = .str("domain_verification_add_domain_fail_details") + return .dictionary(d) + case .domainVerificationAddDomainSuccessDetails(let arg): + var d = try Serialization.getFields(TeamLog.DomainVerificationAddDomainSuccessDetailsSerializer().serialize(arg)) + d[".tag"] = .str("domain_verification_add_domain_success_details") + return .dictionary(d) + case .domainVerificationRemoveDomainDetails(let arg): + var d = try Serialization.getFields(TeamLog.DomainVerificationRemoveDomainDetailsSerializer().serialize(arg)) + d[".tag"] = .str("domain_verification_remove_domain_details") + return .dictionary(d) + case .enabledDomainInvitesDetails(let arg): + var d = try Serialization.getFields(TeamLog.EnabledDomainInvitesDetailsSerializer().serialize(arg)) + d[".tag"] = .str("enabled_domain_invites_details") + return .dictionary(d) + case .encryptedFolderCancelTeamKeyRotationDetails(let arg): + var d = try Serialization.getFields(TeamLog.EncryptedFolderCancelTeamKeyRotationDetailsSerializer().serialize(arg)) + d[".tag"] = .str("encrypted_folder_cancel_team_key_rotation_details") + return .dictionary(d) + case .encryptedFolderEnrollBackupKeyDetails(let arg): + var d = try Serialization.getFields(TeamLog.EncryptedFolderEnrollBackupKeyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("encrypted_folder_enroll_backup_key_details") + return .dictionary(d) + case .encryptedFolderEnrollClientDetails(let arg): + var d = try Serialization.getFields(TeamLog.EncryptedFolderEnrollClientDetailsSerializer().serialize(arg)) + d[".tag"] = .str("encrypted_folder_enroll_client_details") + return .dictionary(d) + case .encryptedFolderEnrollTeamDetails(let arg): + var d = try Serialization.getFields(TeamLog.EncryptedFolderEnrollTeamDetailsSerializer().serialize(arg)) + d[".tag"] = .str("encrypted_folder_enroll_team_details") + return .dictionary(d) + case .encryptedFolderFinishTeamUnenrollmentDetails(let arg): + var d = try Serialization.getFields(TeamLog.EncryptedFolderFinishTeamUnenrollmentDetailsSerializer().serialize(arg)) + d[".tag"] = .str("encrypted_folder_finish_team_unenrollment_details") + return .dictionary(d) + case .encryptedFolderInitTeamKeyRotationDetails(let arg): + var d = try Serialization.getFields(TeamLog.EncryptedFolderInitTeamKeyRotationDetailsSerializer().serialize(arg)) + d[".tag"] = .str("encrypted_folder_init_team_key_rotation_details") + return .dictionary(d) + case .encryptedFolderInitTeamUnenrollmentDetails(let arg): + var d = try Serialization.getFields(TeamLog.EncryptedFolderInitTeamUnenrollmentDetailsSerializer().serialize(arg)) + d[".tag"] = .str("encrypted_folder_init_team_unenrollment_details") + return .dictionary(d) + case .encryptedFolderRemoveBackupKeyDetails(let arg): + var d = try Serialization.getFields(TeamLog.EncryptedFolderRemoveBackupKeyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("encrypted_folder_remove_backup_key_details") + return .dictionary(d) + case .encryptedFolderRotateTeamKeyDetails(let arg): + var d = try Serialization.getFields(TeamLog.EncryptedFolderRotateTeamKeyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("encrypted_folder_rotate_team_key_details") + return .dictionary(d) + case .encryptedFolderUnenrollClientDetails(let arg): + var d = try Serialization.getFields(TeamLog.EncryptedFolderUnenrollClientDetailsSerializer().serialize(arg)) + d[".tag"] = .str("encrypted_folder_unenroll_client_details") + return .dictionary(d) + case .teamEncryptionKeyActivateKeyDetails(let arg): + var d = try Serialization.getFields(TeamLog.TeamEncryptionKeyActivateKeyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("team_encryption_key_activate_key_details") + return .dictionary(d) + case .teamEncryptionKeyCancelKeyDeletionDetails(let arg): + var d = try Serialization.getFields(TeamLog.TeamEncryptionKeyCancelKeyDeletionDetailsSerializer().serialize(arg)) + d[".tag"] = .str("team_encryption_key_cancel_key_deletion_details") + return .dictionary(d) + case .teamEncryptionKeyCreateKeyDetails(let arg): + var d = try Serialization.getFields(TeamLog.TeamEncryptionKeyCreateKeyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("team_encryption_key_create_key_details") + return .dictionary(d) + case .teamEncryptionKeyDeactivateKeyDetails(let arg): + var d = try Serialization.getFields(TeamLog.TeamEncryptionKeyDeactivateKeyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("team_encryption_key_deactivate_key_details") + return .dictionary(d) + case .teamEncryptionKeyDeleteKeyDetails(let arg): + var d = try Serialization.getFields(TeamLog.TeamEncryptionKeyDeleteKeyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("team_encryption_key_delete_key_details") + return .dictionary(d) + case .teamEncryptionKeyDisableKeyDetails(let arg): + var d = try Serialization.getFields(TeamLog.TeamEncryptionKeyDisableKeyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("team_encryption_key_disable_key_details") + return .dictionary(d) + case .teamEncryptionKeyEnableKeyDetails(let arg): + var d = try Serialization.getFields(TeamLog.TeamEncryptionKeyEnableKeyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("team_encryption_key_enable_key_details") + return .dictionary(d) + case .teamEncryptionKeyRotateKeyDetails(let arg): + var d = try Serialization.getFields(TeamLog.TeamEncryptionKeyRotateKeyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("team_encryption_key_rotate_key_details") + return .dictionary(d) + case .teamEncryptionKeyScheduleKeyDeletionDetails(let arg): + var d = try Serialization.getFields(TeamLog.TeamEncryptionKeyScheduleKeyDeletionDetailsSerializer().serialize(arg)) + d[".tag"] = .str("team_encryption_key_schedule_key_deletion_details") + return .dictionary(d) + case .applyNamingConventionDetails(let arg): + var d = try Serialization.getFields(TeamLog.ApplyNamingConventionDetailsSerializer().serialize(arg)) + d[".tag"] = .str("apply_naming_convention_details") + return .dictionary(d) + case .createFolderDetails(let arg): + var d = try Serialization.getFields(TeamLog.CreateFolderDetailsSerializer().serialize(arg)) + d[".tag"] = .str("create_folder_details") + return .dictionary(d) + case .fileAddDetails(let arg): + var d = try Serialization.getFields(TeamLog.FileAddDetailsSerializer().serialize(arg)) + d[".tag"] = .str("file_add_details") + return .dictionary(d) + case .fileAddFromAutomationDetails(let arg): + var d = try Serialization.getFields(TeamLog.FileAddFromAutomationDetailsSerializer().serialize(arg)) + d[".tag"] = .str("file_add_from_automation_details") + return .dictionary(d) + case .fileCopyDetails(let arg): + var d = try Serialization.getFields(TeamLog.FileCopyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("file_copy_details") + return .dictionary(d) + case .fileDeleteDetails(let arg): + var d = try Serialization.getFields(TeamLog.FileDeleteDetailsSerializer().serialize(arg)) + d[".tag"] = .str("file_delete_details") + return .dictionary(d) + case .fileDownloadDetails(let arg): + var d = try Serialization.getFields(TeamLog.FileDownloadDetailsSerializer().serialize(arg)) + d[".tag"] = .str("file_download_details") + return .dictionary(d) + case .fileEditDetails(let arg): + var d = try Serialization.getFields(TeamLog.FileEditDetailsSerializer().serialize(arg)) + d[".tag"] = .str("file_edit_details") + return .dictionary(d) + case .fileGetCopyReferenceDetails(let arg): + var d = try Serialization.getFields(TeamLog.FileGetCopyReferenceDetailsSerializer().serialize(arg)) + d[".tag"] = .str("file_get_copy_reference_details") + return .dictionary(d) + case .fileLockingLockStatusChangedDetails(let arg): + var d = try Serialization.getFields(TeamLog.FileLockingLockStatusChangedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("file_locking_lock_status_changed_details") + return .dictionary(d) + case .fileMoveDetails(let arg): + var d = try Serialization.getFields(TeamLog.FileMoveDetailsSerializer().serialize(arg)) + d[".tag"] = .str("file_move_details") + return .dictionary(d) + case .filePermanentlyDeleteDetails(let arg): + var d = try Serialization.getFields(TeamLog.FilePermanentlyDeleteDetailsSerializer().serialize(arg)) + d[".tag"] = .str("file_permanently_delete_details") + return .dictionary(d) + case .filePreviewDetails(let arg): + var d = try Serialization.getFields(TeamLog.FilePreviewDetailsSerializer().serialize(arg)) + d[".tag"] = .str("file_preview_details") + return .dictionary(d) + case .fileRenameDetails(let arg): + var d = try Serialization.getFields(TeamLog.FileRenameDetailsSerializer().serialize(arg)) + d[".tag"] = .str("file_rename_details") + return .dictionary(d) + case .fileRestoreDetails(let arg): + var d = try Serialization.getFields(TeamLog.FileRestoreDetailsSerializer().serialize(arg)) + d[".tag"] = .str("file_restore_details") + return .dictionary(d) + case .fileRevertDetails(let arg): + var d = try Serialization.getFields(TeamLog.FileRevertDetailsSerializer().serialize(arg)) + d[".tag"] = .str("file_revert_details") + return .dictionary(d) + case .fileRollbackChangesDetails(let arg): + var d = try Serialization.getFields(TeamLog.FileRollbackChangesDetailsSerializer().serialize(arg)) + d[".tag"] = .str("file_rollback_changes_details") + return .dictionary(d) + case .fileSaveCopyReferenceDetails(let arg): + var d = try Serialization.getFields(TeamLog.FileSaveCopyReferenceDetailsSerializer().serialize(arg)) + d[".tag"] = .str("file_save_copy_reference_details") + return .dictionary(d) + case .folderOverviewDescriptionChangedDetails(let arg): + var d = try Serialization.getFields(TeamLog.FolderOverviewDescriptionChangedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("folder_overview_description_changed_details") + return .dictionary(d) + case .folderOverviewItemPinnedDetails(let arg): + var d = try Serialization.getFields(TeamLog.FolderOverviewItemPinnedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("folder_overview_item_pinned_details") + return .dictionary(d) + case .folderOverviewItemUnpinnedDetails(let arg): + var d = try Serialization.getFields(TeamLog.FolderOverviewItemUnpinnedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("folder_overview_item_unpinned_details") + return .dictionary(d) + case .mediaHubFileDownloadedDetails(let arg): + var d = try Serialization.getFields(TeamLog.MediaHubFileDownloadedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("media_hub_file_downloaded_details") + return .dictionary(d) + case .objectLabelAddedDetails(let arg): + var d = try Serialization.getFields(TeamLog.ObjectLabelAddedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("object_label_added_details") + return .dictionary(d) + case .objectLabelRemovedDetails(let arg): + var d = try Serialization.getFields(TeamLog.ObjectLabelRemovedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("object_label_removed_details") + return .dictionary(d) + case .objectLabelUpdatedValueDetails(let arg): + var d = try Serialization.getFields(TeamLog.ObjectLabelUpdatedValueDetailsSerializer().serialize(arg)) + d[".tag"] = .str("object_label_updated_value_details") + return .dictionary(d) + case .organizeFolderWithTidyDetails(let arg): + var d = try Serialization.getFields(TeamLog.OrganizeFolderWithTidyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("organize_folder_with_tidy_details") + return .dictionary(d) + case .replayFileDeleteDetails(let arg): + var d = try Serialization.getFields(TeamLog.ReplayFileDeleteDetailsSerializer().serialize(arg)) + d[".tag"] = .str("replay_file_delete_details") + return .dictionary(d) + case .replayFileDownloadedDetails(let arg): + var d = try Serialization.getFields(TeamLog.ReplayFileDownloadedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("replay_file_downloaded_details") + return .dictionary(d) + case .replayTeamProjectCreatedDetails(let arg): + var d = try Serialization.getFields(TeamLog.ReplayTeamProjectCreatedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("replay_team_project_created_details") + return .dictionary(d) + case .rewindFolderDetails(let arg): + var d = try Serialization.getFields(TeamLog.RewindFolderDetailsSerializer().serialize(arg)) + d[".tag"] = .str("rewind_folder_details") + return .dictionary(d) + case .undoNamingConventionDetails(let arg): + var d = try Serialization.getFields(TeamLog.UndoNamingConventionDetailsSerializer().serialize(arg)) + d[".tag"] = .str("undo_naming_convention_details") + return .dictionary(d) + case .undoOrganizeFolderWithTidyDetails(let arg): + var d = try Serialization.getFields(TeamLog.UndoOrganizeFolderWithTidyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("undo_organize_folder_with_tidy_details") + return .dictionary(d) + case .userTagsAddedDetails(let arg): + var d = try Serialization.getFields(TeamLog.UserTagsAddedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("user_tags_added_details") + return .dictionary(d) + case .userTagsRemovedDetails(let arg): + var d = try Serialization.getFields(TeamLog.UserTagsRemovedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("user_tags_removed_details") + return .dictionary(d) + case .emailIngestReceiveFileDetails(let arg): + var d = try Serialization.getFields(TeamLog.EmailIngestReceiveFileDetailsSerializer().serialize(arg)) + d[".tag"] = .str("email_ingest_receive_file_details") + return .dictionary(d) + case .fileRequestAutoCloseDetails(let arg): + var d = try Serialization.getFields(TeamLog.FileRequestAutoCloseDetailsSerializer().serialize(arg)) + d[".tag"] = .str("file_request_auto_close_details") + return .dictionary(d) + case .fileRequestChangeDetails(let arg): + var d = try Serialization.getFields(TeamLog.FileRequestChangeDetailsSerializer().serialize(arg)) + d[".tag"] = .str("file_request_change_details") + return .dictionary(d) + case .fileRequestCloseDetails(let arg): + var d = try Serialization.getFields(TeamLog.FileRequestCloseDetailsSerializer().serialize(arg)) + d[".tag"] = .str("file_request_close_details") + return .dictionary(d) + case .fileRequestCreateDetails(let arg): + var d = try Serialization.getFields(TeamLog.FileRequestCreateDetailsSerializer().serialize(arg)) + d[".tag"] = .str("file_request_create_details") + return .dictionary(d) + case .fileRequestDeleteDetails(let arg): + var d = try Serialization.getFields(TeamLog.FileRequestDeleteDetailsSerializer().serialize(arg)) + d[".tag"] = .str("file_request_delete_details") + return .dictionary(d) + case .fileRequestReceiveFileDetails(let arg): + var d = try Serialization.getFields(TeamLog.FileRequestReceiveFileDetailsSerializer().serialize(arg)) + d[".tag"] = .str("file_request_receive_file_details") + return .dictionary(d) + case .groupAddExternalIdDetails(let arg): + var d = try Serialization.getFields(TeamLog.GroupAddExternalIdDetailsSerializer().serialize(arg)) + d[".tag"] = .str("group_add_external_id_details") + return .dictionary(d) + case .groupAddMemberDetails(let arg): + var d = try Serialization.getFields(TeamLog.GroupAddMemberDetailsSerializer().serialize(arg)) + d[".tag"] = .str("group_add_member_details") + return .dictionary(d) + case .groupChangeExternalIdDetails(let arg): + var d = try Serialization.getFields(TeamLog.GroupChangeExternalIdDetailsSerializer().serialize(arg)) + d[".tag"] = .str("group_change_external_id_details") + return .dictionary(d) + case .groupChangeManagementTypeDetails(let arg): + var d = try Serialization.getFields(TeamLog.GroupChangeManagementTypeDetailsSerializer().serialize(arg)) + d[".tag"] = .str("group_change_management_type_details") + return .dictionary(d) + case .groupChangeMemberRoleDetails(let arg): + var d = try Serialization.getFields(TeamLog.GroupChangeMemberRoleDetailsSerializer().serialize(arg)) + d[".tag"] = .str("group_change_member_role_details") + return .dictionary(d) + case .groupCreateDetails(let arg): + var d = try Serialization.getFields(TeamLog.GroupCreateDetailsSerializer().serialize(arg)) + d[".tag"] = .str("group_create_details") + return .dictionary(d) + case .groupDeleteDetails(let arg): + var d = try Serialization.getFields(TeamLog.GroupDeleteDetailsSerializer().serialize(arg)) + d[".tag"] = .str("group_delete_details") + return .dictionary(d) + case .groupDescriptionUpdatedDetails(let arg): + var d = try Serialization.getFields(TeamLog.GroupDescriptionUpdatedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("group_description_updated_details") + return .dictionary(d) + case .groupExternalSharingSettingOverrideChangedDetails(let arg): + var d = try Serialization.getFields(TeamLog.GroupExternalSharingSettingOverrideChangedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("group_external_sharing_setting_override_changed_details") + return .dictionary(d) + case .groupJoinPolicyUpdatedDetails(let arg): + var d = try Serialization.getFields(TeamLog.GroupJoinPolicyUpdatedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("group_join_policy_updated_details") + return .dictionary(d) + case .groupMovedDetails(let arg): + var d = try Serialization.getFields(TeamLog.GroupMovedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("group_moved_details") + return .dictionary(d) + case .groupRemoveExternalIdDetails(let arg): + var d = try Serialization.getFields(TeamLog.GroupRemoveExternalIdDetailsSerializer().serialize(arg)) + d[".tag"] = .str("group_remove_external_id_details") + return .dictionary(d) + case .groupRemoveMemberDetails(let arg): + var d = try Serialization.getFields(TeamLog.GroupRemoveMemberDetailsSerializer().serialize(arg)) + d[".tag"] = .str("group_remove_member_details") + return .dictionary(d) + case .groupRenameDetails(let arg): + var d = try Serialization.getFields(TeamLog.GroupRenameDetailsSerializer().serialize(arg)) + d[".tag"] = .str("group_rename_details") + return .dictionary(d) + case .accountLockOrUnlockedDetails(let arg): + var d = try Serialization.getFields(TeamLog.AccountLockOrUnlockedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("account_lock_or_unlocked_details") + return .dictionary(d) + case .emmErrorDetails(let arg): + var d = try Serialization.getFields(TeamLog.EmmErrorDetailsSerializer().serialize(arg)) + d[".tag"] = .str("emm_error_details") + return .dictionary(d) + case .guestAdminSignedInViaTrustedTeamsDetails(let arg): + var d = try Serialization.getFields(TeamLog.GuestAdminSignedInViaTrustedTeamsDetailsSerializer().serialize(arg)) + d[".tag"] = .str("guest_admin_signed_in_via_trusted_teams_details") + return .dictionary(d) + case .guestAdminSignedOutViaTrustedTeamsDetails(let arg): + var d = try Serialization.getFields(TeamLog.GuestAdminSignedOutViaTrustedTeamsDetailsSerializer().serialize(arg)) + d[".tag"] = .str("guest_admin_signed_out_via_trusted_teams_details") + return .dictionary(d) + case .loginFailDetails(let arg): + var d = try Serialization.getFields(TeamLog.LoginFailDetailsSerializer().serialize(arg)) + d[".tag"] = .str("login_fail_details") + return .dictionary(d) + case .loginSuccessDetails(let arg): + var d = try Serialization.getFields(TeamLog.LoginSuccessDetailsSerializer().serialize(arg)) + d[".tag"] = .str("login_success_details") + return .dictionary(d) + case .logoutDetails(let arg): + var d = try Serialization.getFields(TeamLog.LogoutDetailsSerializer().serialize(arg)) + d[".tag"] = .str("logout_details") + return .dictionary(d) + case .resellerSupportSessionEndDetails(let arg): + var d = try Serialization.getFields(TeamLog.ResellerSupportSessionEndDetailsSerializer().serialize(arg)) + d[".tag"] = .str("reseller_support_session_end_details") + return .dictionary(d) + case .resellerSupportSessionStartDetails(let arg): + var d = try Serialization.getFields(TeamLog.ResellerSupportSessionStartDetailsSerializer().serialize(arg)) + d[".tag"] = .str("reseller_support_session_start_details") + return .dictionary(d) + case .signInAsSessionEndDetails(let arg): + var d = try Serialization.getFields(TeamLog.SignInAsSessionEndDetailsSerializer().serialize(arg)) + d[".tag"] = .str("sign_in_as_session_end_details") + return .dictionary(d) + case .signInAsSessionStartDetails(let arg): + var d = try Serialization.getFields(TeamLog.SignInAsSessionStartDetailsSerializer().serialize(arg)) + d[".tag"] = .str("sign_in_as_session_start_details") + return .dictionary(d) + case .ssoErrorDetails(let arg): + var d = try Serialization.getFields(TeamLog.SsoErrorDetailsSerializer().serialize(arg)) + d[".tag"] = .str("sso_error_details") + return .dictionary(d) + case .addonAssignedDetails(let arg): + var d = try Serialization.getFields(TeamLog.AddonAssignedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("addon_assigned_details") + return .dictionary(d) + case .addonRemovedDetails(let arg): + var d = try Serialization.getFields(TeamLog.AddonRemovedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("addon_removed_details") + return .dictionary(d) + case .backupAdminInvitationSentDetails(let arg): + var d = try Serialization.getFields(TeamLog.BackupAdminInvitationSentDetailsSerializer().serialize(arg)) + d[".tag"] = .str("backup_admin_invitation_sent_details") + return .dictionary(d) + case .backupInvitationOpenedDetails(let arg): + var d = try Serialization.getFields(TeamLog.BackupInvitationOpenedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("backup_invitation_opened_details") + return .dictionary(d) + case .createTeamInviteLinkDetails(let arg): + var d = try Serialization.getFields(TeamLog.CreateTeamInviteLinkDetailsSerializer().serialize(arg)) + d[".tag"] = .str("create_team_invite_link_details") + return .dictionary(d) + case .deleteTeamInviteLinkDetails(let arg): + var d = try Serialization.getFields(TeamLog.DeleteTeamInviteLinkDetailsSerializer().serialize(arg)) + d[".tag"] = .str("delete_team_invite_link_details") + return .dictionary(d) + case .memberAddExternalIdDetails(let arg): + var d = try Serialization.getFields(TeamLog.MemberAddExternalIdDetailsSerializer().serialize(arg)) + d[".tag"] = .str("member_add_external_id_details") + return .dictionary(d) + case .memberAddNameDetails(let arg): + var d = try Serialization.getFields(TeamLog.MemberAddNameDetailsSerializer().serialize(arg)) + d[".tag"] = .str("member_add_name_details") + return .dictionary(d) + case .memberChangeAdminRoleDetails(let arg): + var d = try Serialization.getFields(TeamLog.MemberChangeAdminRoleDetailsSerializer().serialize(arg)) + d[".tag"] = .str("member_change_admin_role_details") + return .dictionary(d) + case .memberChangeEmailDetails(let arg): + var d = try Serialization.getFields(TeamLog.MemberChangeEmailDetailsSerializer().serialize(arg)) + d[".tag"] = .str("member_change_email_details") + return .dictionary(d) + case .memberChangeExternalIdDetails(let arg): + var d = try Serialization.getFields(TeamLog.MemberChangeExternalIdDetailsSerializer().serialize(arg)) + d[".tag"] = .str("member_change_external_id_details") + return .dictionary(d) + case .memberChangeMembershipTypeDetails(let arg): + var d = try Serialization.getFields(TeamLog.MemberChangeMembershipTypeDetailsSerializer().serialize(arg)) + d[".tag"] = .str("member_change_membership_type_details") + return .dictionary(d) + case .memberChangeNameDetails(let arg): + var d = try Serialization.getFields(TeamLog.MemberChangeNameDetailsSerializer().serialize(arg)) + d[".tag"] = .str("member_change_name_details") + return .dictionary(d) + case .memberChangeResellerRoleDetails(let arg): + var d = try Serialization.getFields(TeamLog.MemberChangeResellerRoleDetailsSerializer().serialize(arg)) + d[".tag"] = .str("member_change_reseller_role_details") + return .dictionary(d) + case .memberChangeStatusDetails(let arg): + var d = try Serialization.getFields(TeamLog.MemberChangeStatusDetailsSerializer().serialize(arg)) + d[".tag"] = .str("member_change_status_details") + return .dictionary(d) + case .memberDeleteManualContactsDetails(let arg): + var d = try Serialization.getFields(TeamLog.MemberDeleteManualContactsDetailsSerializer().serialize(arg)) + d[".tag"] = .str("member_delete_manual_contacts_details") + return .dictionary(d) + case .memberDeleteProfilePhotoDetails(let arg): + var d = try Serialization.getFields(TeamLog.MemberDeleteProfilePhotoDetailsSerializer().serialize(arg)) + d[".tag"] = .str("member_delete_profile_photo_details") + return .dictionary(d) + case .memberFolderContentsAccessedDetails(let arg): + var d = try Serialization.getFields(TeamLog.MemberFolderContentsAccessedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("member_folder_contents_accessed_details") + return .dictionary(d) + case .memberPermanentlyDeleteAccountContentsDetails(let arg): + var d = try Serialization.getFields(TeamLog.MemberPermanentlyDeleteAccountContentsDetailsSerializer().serialize(arg)) + d[".tag"] = .str("member_permanently_delete_account_contents_details") + return .dictionary(d) + case .memberRemoveExternalIdDetails(let arg): + var d = try Serialization.getFields(TeamLog.MemberRemoveExternalIdDetailsSerializer().serialize(arg)) + d[".tag"] = .str("member_remove_external_id_details") + return .dictionary(d) + case .memberSetProfilePhotoDetails(let arg): + var d = try Serialization.getFields(TeamLog.MemberSetProfilePhotoDetailsSerializer().serialize(arg)) + d[".tag"] = .str("member_set_profile_photo_details") + return .dictionary(d) + case .memberSpaceLimitsAddCustomQuotaDetails(let arg): + var d = try Serialization.getFields(TeamLog.MemberSpaceLimitsAddCustomQuotaDetailsSerializer().serialize(arg)) + d[".tag"] = .str("member_space_limits_add_custom_quota_details") + return .dictionary(d) + case .memberSpaceLimitsChangeCustomQuotaDetails(let arg): + var d = try Serialization.getFields(TeamLog.MemberSpaceLimitsChangeCustomQuotaDetailsSerializer().serialize(arg)) + d[".tag"] = .str("member_space_limits_change_custom_quota_details") + return .dictionary(d) + case .memberSpaceLimitsChangeStatusDetails(let arg): + var d = try Serialization.getFields(TeamLog.MemberSpaceLimitsChangeStatusDetailsSerializer().serialize(arg)) + d[".tag"] = .str("member_space_limits_change_status_details") + return .dictionary(d) + case .memberSpaceLimitsRemoveCustomQuotaDetails(let arg): + var d = try Serialization.getFields(TeamLog.MemberSpaceLimitsRemoveCustomQuotaDetailsSerializer().serialize(arg)) + d[".tag"] = .str("member_space_limits_remove_custom_quota_details") + return .dictionary(d) + case .memberSuggestDetails(let arg): + var d = try Serialization.getFields(TeamLog.MemberSuggestDetailsSerializer().serialize(arg)) + d[".tag"] = .str("member_suggest_details") + return .dictionary(d) + case .memberTransferAccountContentsDetails(let arg): + var d = try Serialization.getFields(TeamLog.MemberTransferAccountContentsDetailsSerializer().serialize(arg)) + d[".tag"] = .str("member_transfer_account_contents_details") + return .dictionary(d) + case .pendingSecondaryEmailAddedDetails(let arg): + var d = try Serialization.getFields(TeamLog.PendingSecondaryEmailAddedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("pending_secondary_email_added_details") + return .dictionary(d) + case .productAssignedToMemberDetails(let arg): + var d = try Serialization.getFields(TeamLog.ProductAssignedToMemberDetailsSerializer().serialize(arg)) + d[".tag"] = .str("product_assigned_to_member_details") + return .dictionary(d) + case .productRemovedFromMemberDetails(let arg): + var d = try Serialization.getFields(TeamLog.ProductRemovedFromMemberDetailsSerializer().serialize(arg)) + d[".tag"] = .str("product_removed_from_member_details") + return .dictionary(d) + case .secondaryEmailDeletedDetails(let arg): + var d = try Serialization.getFields(TeamLog.SecondaryEmailDeletedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("secondary_email_deleted_details") + return .dictionary(d) + case .secondaryEmailVerifiedDetails(let arg): + var d = try Serialization.getFields(TeamLog.SecondaryEmailVerifiedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("secondary_email_verified_details") + return .dictionary(d) + case .secondaryMailsPolicyChangedDetails(let arg): + var d = try Serialization.getFields(TeamLog.SecondaryMailsPolicyChangedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("secondary_mails_policy_changed_details") + return .dictionary(d) + case .binderAddPageDetails(let arg): + var d = try Serialization.getFields(TeamLog.BinderAddPageDetailsSerializer().serialize(arg)) + d[".tag"] = .str("binder_add_page_details") + return .dictionary(d) + case .binderAddSectionDetails(let arg): + var d = try Serialization.getFields(TeamLog.BinderAddSectionDetailsSerializer().serialize(arg)) + d[".tag"] = .str("binder_add_section_details") + return .dictionary(d) + case .binderRemovePageDetails(let arg): + var d = try Serialization.getFields(TeamLog.BinderRemovePageDetailsSerializer().serialize(arg)) + d[".tag"] = .str("binder_remove_page_details") + return .dictionary(d) + case .binderRemoveSectionDetails(let arg): + var d = try Serialization.getFields(TeamLog.BinderRemoveSectionDetailsSerializer().serialize(arg)) + d[".tag"] = .str("binder_remove_section_details") + return .dictionary(d) + case .binderRenamePageDetails(let arg): + var d = try Serialization.getFields(TeamLog.BinderRenamePageDetailsSerializer().serialize(arg)) + d[".tag"] = .str("binder_rename_page_details") + return .dictionary(d) + case .binderRenameSectionDetails(let arg): + var d = try Serialization.getFields(TeamLog.BinderRenameSectionDetailsSerializer().serialize(arg)) + d[".tag"] = .str("binder_rename_section_details") + return .dictionary(d) + case .binderReorderPageDetails(let arg): + var d = try Serialization.getFields(TeamLog.BinderReorderPageDetailsSerializer().serialize(arg)) + d[".tag"] = .str("binder_reorder_page_details") + return .dictionary(d) + case .binderReorderSectionDetails(let arg): + var d = try Serialization.getFields(TeamLog.BinderReorderSectionDetailsSerializer().serialize(arg)) + d[".tag"] = .str("binder_reorder_section_details") + return .dictionary(d) + case .paperContentAddMemberDetails(let arg): + var d = try Serialization.getFields(TeamLog.PaperContentAddMemberDetailsSerializer().serialize(arg)) + d[".tag"] = .str("paper_content_add_member_details") + return .dictionary(d) + case .paperContentAddToFolderDetails(let arg): + var d = try Serialization.getFields(TeamLog.PaperContentAddToFolderDetailsSerializer().serialize(arg)) + d[".tag"] = .str("paper_content_add_to_folder_details") + return .dictionary(d) + case .paperContentArchiveDetails(let arg): + var d = try Serialization.getFields(TeamLog.PaperContentArchiveDetailsSerializer().serialize(arg)) + d[".tag"] = .str("paper_content_archive_details") + return .dictionary(d) + case .paperContentCreateDetails(let arg): + var d = try Serialization.getFields(TeamLog.PaperContentCreateDetailsSerializer().serialize(arg)) + d[".tag"] = .str("paper_content_create_details") + return .dictionary(d) + case .paperContentPermanentlyDeleteDetails(let arg): + var d = try Serialization.getFields(TeamLog.PaperContentPermanentlyDeleteDetailsSerializer().serialize(arg)) + d[".tag"] = .str("paper_content_permanently_delete_details") + return .dictionary(d) + case .paperContentRemoveFromFolderDetails(let arg): + var d = try Serialization.getFields(TeamLog.PaperContentRemoveFromFolderDetailsSerializer().serialize(arg)) + d[".tag"] = .str("paper_content_remove_from_folder_details") + return .dictionary(d) + case .paperContentRemoveMemberDetails(let arg): + var d = try Serialization.getFields(TeamLog.PaperContentRemoveMemberDetailsSerializer().serialize(arg)) + d[".tag"] = .str("paper_content_remove_member_details") + return .dictionary(d) + case .paperContentRenameDetails(let arg): + var d = try Serialization.getFields(TeamLog.PaperContentRenameDetailsSerializer().serialize(arg)) + d[".tag"] = .str("paper_content_rename_details") + return .dictionary(d) + case .paperContentRestoreDetails(let arg): + var d = try Serialization.getFields(TeamLog.PaperContentRestoreDetailsSerializer().serialize(arg)) + d[".tag"] = .str("paper_content_restore_details") + return .dictionary(d) + case .paperDocAddCommentDetails(let arg): + var d = try Serialization.getFields(TeamLog.PaperDocAddCommentDetailsSerializer().serialize(arg)) + d[".tag"] = .str("paper_doc_add_comment_details") + return .dictionary(d) + case .paperDocChangeMemberRoleDetails(let arg): + var d = try Serialization.getFields(TeamLog.PaperDocChangeMemberRoleDetailsSerializer().serialize(arg)) + d[".tag"] = .str("paper_doc_change_member_role_details") + return .dictionary(d) + case .paperDocChangeSharingPolicyDetails(let arg): + var d = try Serialization.getFields(TeamLog.PaperDocChangeSharingPolicyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("paper_doc_change_sharing_policy_details") + return .dictionary(d) + case .paperDocChangeSubscriptionDetails(let arg): + var d = try Serialization.getFields(TeamLog.PaperDocChangeSubscriptionDetailsSerializer().serialize(arg)) + d[".tag"] = .str("paper_doc_change_subscription_details") + return .dictionary(d) + case .paperDocDeletedDetails(let arg): + var d = try Serialization.getFields(TeamLog.PaperDocDeletedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("paper_doc_deleted_details") + return .dictionary(d) + case .paperDocDeleteCommentDetails(let arg): + var d = try Serialization.getFields(TeamLog.PaperDocDeleteCommentDetailsSerializer().serialize(arg)) + d[".tag"] = .str("paper_doc_delete_comment_details") + return .dictionary(d) + case .paperDocDownloadDetails(let arg): + var d = try Serialization.getFields(TeamLog.PaperDocDownloadDetailsSerializer().serialize(arg)) + d[".tag"] = .str("paper_doc_download_details") + return .dictionary(d) + case .paperDocEditDetails(let arg): + var d = try Serialization.getFields(TeamLog.PaperDocEditDetailsSerializer().serialize(arg)) + d[".tag"] = .str("paper_doc_edit_details") + return .dictionary(d) + case .paperDocEditCommentDetails(let arg): + var d = try Serialization.getFields(TeamLog.PaperDocEditCommentDetailsSerializer().serialize(arg)) + d[".tag"] = .str("paper_doc_edit_comment_details") + return .dictionary(d) + case .paperDocFollowedDetails(let arg): + var d = try Serialization.getFields(TeamLog.PaperDocFollowedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("paper_doc_followed_details") + return .dictionary(d) + case .paperDocMentionDetails(let arg): + var d = try Serialization.getFields(TeamLog.PaperDocMentionDetailsSerializer().serialize(arg)) + d[".tag"] = .str("paper_doc_mention_details") + return .dictionary(d) + case .paperDocOwnershipChangedDetails(let arg): + var d = try Serialization.getFields(TeamLog.PaperDocOwnershipChangedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("paper_doc_ownership_changed_details") + return .dictionary(d) + case .paperDocRequestAccessDetails(let arg): + var d = try Serialization.getFields(TeamLog.PaperDocRequestAccessDetailsSerializer().serialize(arg)) + d[".tag"] = .str("paper_doc_request_access_details") + return .dictionary(d) + case .paperDocResolveCommentDetails(let arg): + var d = try Serialization.getFields(TeamLog.PaperDocResolveCommentDetailsSerializer().serialize(arg)) + d[".tag"] = .str("paper_doc_resolve_comment_details") + return .dictionary(d) + case .paperDocRevertDetails(let arg): + var d = try Serialization.getFields(TeamLog.PaperDocRevertDetailsSerializer().serialize(arg)) + d[".tag"] = .str("paper_doc_revert_details") + return .dictionary(d) + case .paperDocSlackShareDetails(let arg): + var d = try Serialization.getFields(TeamLog.PaperDocSlackShareDetailsSerializer().serialize(arg)) + d[".tag"] = .str("paper_doc_slack_share_details") + return .dictionary(d) + case .paperDocTeamInviteDetails(let arg): + var d = try Serialization.getFields(TeamLog.PaperDocTeamInviteDetailsSerializer().serialize(arg)) + d[".tag"] = .str("paper_doc_team_invite_details") + return .dictionary(d) + case .paperDocTrashedDetails(let arg): + var d = try Serialization.getFields(TeamLog.PaperDocTrashedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("paper_doc_trashed_details") + return .dictionary(d) + case .paperDocUnresolveCommentDetails(let arg): + var d = try Serialization.getFields(TeamLog.PaperDocUnresolveCommentDetailsSerializer().serialize(arg)) + d[".tag"] = .str("paper_doc_unresolve_comment_details") + return .dictionary(d) + case .paperDocUntrashedDetails(let arg): + var d = try Serialization.getFields(TeamLog.PaperDocUntrashedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("paper_doc_untrashed_details") + return .dictionary(d) + case .paperDocViewDetails(let arg): + var d = try Serialization.getFields(TeamLog.PaperDocViewDetailsSerializer().serialize(arg)) + d[".tag"] = .str("paper_doc_view_details") + return .dictionary(d) + case .paperExternalViewAllowDetails(let arg): + var d = try Serialization.getFields(TeamLog.PaperExternalViewAllowDetailsSerializer().serialize(arg)) + d[".tag"] = .str("paper_external_view_allow_details") + return .dictionary(d) + case .paperExternalViewDefaultTeamDetails(let arg): + var d = try Serialization.getFields(TeamLog.PaperExternalViewDefaultTeamDetailsSerializer().serialize(arg)) + d[".tag"] = .str("paper_external_view_default_team_details") + return .dictionary(d) + case .paperExternalViewForbidDetails(let arg): + var d = try Serialization.getFields(TeamLog.PaperExternalViewForbidDetailsSerializer().serialize(arg)) + d[".tag"] = .str("paper_external_view_forbid_details") + return .dictionary(d) + case .paperFolderChangeSubscriptionDetails(let arg): + var d = try Serialization.getFields(TeamLog.PaperFolderChangeSubscriptionDetailsSerializer().serialize(arg)) + d[".tag"] = .str("paper_folder_change_subscription_details") + return .dictionary(d) + case .paperFolderDeletedDetails(let arg): + var d = try Serialization.getFields(TeamLog.PaperFolderDeletedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("paper_folder_deleted_details") + return .dictionary(d) + case .paperFolderFollowedDetails(let arg): + var d = try Serialization.getFields(TeamLog.PaperFolderFollowedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("paper_folder_followed_details") + return .dictionary(d) + case .paperFolderTeamInviteDetails(let arg): + var d = try Serialization.getFields(TeamLog.PaperFolderTeamInviteDetailsSerializer().serialize(arg)) + d[".tag"] = .str("paper_folder_team_invite_details") + return .dictionary(d) + case .paperPublishedLinkChangePermissionDetails(let arg): + var d = try Serialization.getFields(TeamLog.PaperPublishedLinkChangePermissionDetailsSerializer().serialize(arg)) + d[".tag"] = .str("paper_published_link_change_permission_details") + return .dictionary(d) + case .paperPublishedLinkCreateDetails(let arg): + var d = try Serialization.getFields(TeamLog.PaperPublishedLinkCreateDetailsSerializer().serialize(arg)) + d[".tag"] = .str("paper_published_link_create_details") + return .dictionary(d) + case .paperPublishedLinkDisabledDetails(let arg): + var d = try Serialization.getFields(TeamLog.PaperPublishedLinkDisabledDetailsSerializer().serialize(arg)) + d[".tag"] = .str("paper_published_link_disabled_details") + return .dictionary(d) + case .paperPublishedLinkViewDetails(let arg): + var d = try Serialization.getFields(TeamLog.PaperPublishedLinkViewDetailsSerializer().serialize(arg)) + d[".tag"] = .str("paper_published_link_view_details") + return .dictionary(d) + case .passwordChangeDetails(let arg): + var d = try Serialization.getFields(TeamLog.PasswordChangeDetailsSerializer().serialize(arg)) + d[".tag"] = .str("password_change_details") + return .dictionary(d) + case .passwordResetDetails(let arg): + var d = try Serialization.getFields(TeamLog.PasswordResetDetailsSerializer().serialize(arg)) + d[".tag"] = .str("password_reset_details") + return .dictionary(d) + case .passwordResetAllDetails(let arg): + var d = try Serialization.getFields(TeamLog.PasswordResetAllDetailsSerializer().serialize(arg)) + d[".tag"] = .str("password_reset_all_details") + return .dictionary(d) + case .protectActionAddCollaboratorDetails(let arg): + var d = try Serialization.getFields(TeamLog.ProtectActionAddCollaboratorDetailsSerializer().serialize(arg)) + d[".tag"] = .str("protect_action_add_collaborator_details") + return .dictionary(d) + case .protectActionAddLinkDetails(let arg): + var d = try Serialization.getFields(TeamLog.ProtectActionAddLinkDetailsSerializer().serialize(arg)) + d[".tag"] = .str("protect_action_add_link_details") + return .dictionary(d) + case .protectActionDeleteDetails(let arg): + var d = try Serialization.getFields(TeamLog.ProtectActionDeleteDetailsSerializer().serialize(arg)) + d[".tag"] = .str("protect_action_delete_details") + return .dictionary(d) + case .protectActionExportDetails(let arg): + var d = try Serialization.getFields(TeamLog.ProtectActionExportDetailsSerializer().serialize(arg)) + d[".tag"] = .str("protect_action_export_details") + return .dictionary(d) + case .protectActionRemoveCollaboratorDetails(let arg): + var d = try Serialization.getFields(TeamLog.ProtectActionRemoveCollaboratorDetailsSerializer().serialize(arg)) + d[".tag"] = .str("protect_action_remove_collaborator_details") + return .dictionary(d) + case .protectActionRemoveLinkDetails(let arg): + var d = try Serialization.getFields(TeamLog.ProtectActionRemoveLinkDetailsSerializer().serialize(arg)) + d[".tag"] = .str("protect_action_remove_link_details") + return .dictionary(d) + case .protectActionStopSharingDetails(let arg): + var d = try Serialization.getFields(TeamLog.ProtectActionStopSharingDetailsSerializer().serialize(arg)) + d[".tag"] = .str("protect_action_stop_sharing_details") + return .dictionary(d) + case .protectInternalDomainsChangedDetails(let arg): + var d = try Serialization.getFields(TeamLog.ProtectInternalDomainsChangedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("protect_internal_domains_changed_details") + return .dictionary(d) + case .classificationCreateReportDetails(let arg): + var d = try Serialization.getFields(TeamLog.ClassificationCreateReportDetailsSerializer().serialize(arg)) + d[".tag"] = .str("classification_create_report_details") + return .dictionary(d) + case .classificationCreateReportFailDetails(let arg): + var d = try Serialization.getFields(TeamLog.ClassificationCreateReportFailDetailsSerializer().serialize(arg)) + d[".tag"] = .str("classification_create_report_fail_details") + return .dictionary(d) + case .emmCreateExceptionsReportDetails(let arg): + var d = try Serialization.getFields(TeamLog.EmmCreateExceptionsReportDetailsSerializer().serialize(arg)) + d[".tag"] = .str("emm_create_exceptions_report_details") + return .dictionary(d) + case .emmCreateUsageReportDetails(let arg): + var d = try Serialization.getFields(TeamLog.EmmCreateUsageReportDetailsSerializer().serialize(arg)) + d[".tag"] = .str("emm_create_usage_report_details") + return .dictionary(d) + case .exportMembersReportDetails(let arg): + var d = try Serialization.getFields(TeamLog.ExportMembersReportDetailsSerializer().serialize(arg)) + d[".tag"] = .str("export_members_report_details") + return .dictionary(d) + case .exportMembersReportFailDetails(let arg): + var d = try Serialization.getFields(TeamLog.ExportMembersReportFailDetailsSerializer().serialize(arg)) + d[".tag"] = .str("export_members_report_fail_details") + return .dictionary(d) + case .externalSharingCreateReportDetails(let arg): + var d = try Serialization.getFields(TeamLog.ExternalSharingCreateReportDetailsSerializer().serialize(arg)) + d[".tag"] = .str("external_sharing_create_report_details") + return .dictionary(d) + case .externalSharingReportFailedDetails(let arg): + var d = try Serialization.getFields(TeamLog.ExternalSharingReportFailedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("external_sharing_report_failed_details") + return .dictionary(d) + case .memberAccessDetailsCreateReportDetails(let arg): + var d = try Serialization.getFields(TeamLog.MemberAccessDetailsCreateReportDetailsSerializer().serialize(arg)) + d[".tag"] = .str("member_access_details_create_report_details") + return .dictionary(d) + case .memberAccessDetailsCreateReportFailedDetails(let arg): + var d = try Serialization.getFields(TeamLog.MemberAccessDetailsCreateReportFailedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("member_access_details_create_report_failed_details") + return .dictionary(d) + case .noExpirationLinkGenCreateReportDetails(let arg): + var d = try Serialization.getFields(TeamLog.NoExpirationLinkGenCreateReportDetailsSerializer().serialize(arg)) + d[".tag"] = .str("no_expiration_link_gen_create_report_details") + return .dictionary(d) + case .noExpirationLinkGenReportFailedDetails(let arg): + var d = try Serialization.getFields(TeamLog.NoExpirationLinkGenReportFailedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("no_expiration_link_gen_report_failed_details") + return .dictionary(d) + case .noPasswordLinkGenCreateReportDetails(let arg): + var d = try Serialization.getFields(TeamLog.NoPasswordLinkGenCreateReportDetailsSerializer().serialize(arg)) + d[".tag"] = .str("no_password_link_gen_create_report_details") + return .dictionary(d) + case .noPasswordLinkGenReportFailedDetails(let arg): + var d = try Serialization.getFields(TeamLog.NoPasswordLinkGenReportFailedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("no_password_link_gen_report_failed_details") + return .dictionary(d) + case .noPasswordLinkViewCreateReportDetails(let arg): + var d = try Serialization.getFields(TeamLog.NoPasswordLinkViewCreateReportDetailsSerializer().serialize(arg)) + d[".tag"] = .str("no_password_link_view_create_report_details") + return .dictionary(d) + case .noPasswordLinkViewReportFailedDetails(let arg): + var d = try Serialization.getFields(TeamLog.NoPasswordLinkViewReportFailedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("no_password_link_view_report_failed_details") + return .dictionary(d) + case .outdatedLinkViewCreateReportDetails(let arg): + var d = try Serialization.getFields(TeamLog.OutdatedLinkViewCreateReportDetailsSerializer().serialize(arg)) + d[".tag"] = .str("outdated_link_view_create_report_details") + return .dictionary(d) + case .outdatedLinkViewReportFailedDetails(let arg): + var d = try Serialization.getFields(TeamLog.OutdatedLinkViewReportFailedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("outdated_link_view_report_failed_details") + return .dictionary(d) + case .paperAdminExportStartDetails(let arg): + var d = try Serialization.getFields(TeamLog.PaperAdminExportStartDetailsSerializer().serialize(arg)) + d[".tag"] = .str("paper_admin_export_start_details") + return .dictionary(d) + case .ransomwareAlertCreateReportDetails(let arg): + var d = try Serialization.getFields(TeamLog.RansomwareAlertCreateReportDetailsSerializer().serialize(arg)) + d[".tag"] = .str("ransomware_alert_create_report_details") + return .dictionary(d) + case .ransomwareAlertCreateReportFailedDetails(let arg): + var d = try Serialization.getFields(TeamLog.RansomwareAlertCreateReportFailedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("ransomware_alert_create_report_failed_details") + return .dictionary(d) + case .sharedFoldersCreateReportDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharedFoldersCreateReportDetailsSerializer().serialize(arg)) + d[".tag"] = .str("shared_folders_create_report_details") + return .dictionary(d) + case .sharedFoldersCreateReportFailedDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharedFoldersCreateReportFailedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("shared_folders_create_report_failed_details") + return .dictionary(d) + case .smartSyncCreateAdminPrivilegeReportDetails(let arg): + var d = try Serialization.getFields(TeamLog.SmartSyncCreateAdminPrivilegeReportDetailsSerializer().serialize(arg)) + d[".tag"] = .str("smart_sync_create_admin_privilege_report_details") + return .dictionary(d) + case .teamActivityCreateReportDetails(let arg): + var d = try Serialization.getFields(TeamLog.TeamActivityCreateReportDetailsSerializer().serialize(arg)) + d[".tag"] = .str("team_activity_create_report_details") + return .dictionary(d) + case .teamActivityCreateReportFailDetails(let arg): + var d = try Serialization.getFields(TeamLog.TeamActivityCreateReportFailDetailsSerializer().serialize(arg)) + d[".tag"] = .str("team_activity_create_report_fail_details") + return .dictionary(d) + case .teamFoldersCreateReportDetails(let arg): + var d = try Serialization.getFields(TeamLog.TeamFoldersCreateReportDetailsSerializer().serialize(arg)) + d[".tag"] = .str("team_folders_create_report_details") + return .dictionary(d) + case .teamFoldersCreateReportFailedDetails(let arg): + var d = try Serialization.getFields(TeamLog.TeamFoldersCreateReportFailedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("team_folders_create_report_failed_details") + return .dictionary(d) + case .teamStorageCreateReportDetails(let arg): + var d = try Serialization.getFields(TeamLog.TeamStorageCreateReportDetailsSerializer().serialize(arg)) + d[".tag"] = .str("team_storage_create_report_details") + return .dictionary(d) + case .teamStorageCreateReportFailedDetails(let arg): + var d = try Serialization.getFields(TeamLog.TeamStorageCreateReportFailedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("team_storage_create_report_failed_details") + return .dictionary(d) + case .collectionShareDetails(let arg): + var d = try Serialization.getFields(TeamLog.CollectionShareDetailsSerializer().serialize(arg)) + d[".tag"] = .str("collection_share_details") + return .dictionary(d) + case .fileTransfersFileAddDetails(let arg): + var d = try Serialization.getFields(TeamLog.FileTransfersFileAddDetailsSerializer().serialize(arg)) + d[".tag"] = .str("file_transfers_file_add_details") + return .dictionary(d) + case .fileTransfersTransferDeleteDetails(let arg): + var d = try Serialization.getFields(TeamLog.FileTransfersTransferDeleteDetailsSerializer().serialize(arg)) + d[".tag"] = .str("file_transfers_transfer_delete_details") + return .dictionary(d) + case .fileTransfersTransferDownloadDetails(let arg): + var d = try Serialization.getFields(TeamLog.FileTransfersTransferDownloadDetailsSerializer().serialize(arg)) + d[".tag"] = .str("file_transfers_transfer_download_details") + return .dictionary(d) + case .fileTransfersTransferSendDetails(let arg): + var d = try Serialization.getFields(TeamLog.FileTransfersTransferSendDetailsSerializer().serialize(arg)) + d[".tag"] = .str("file_transfers_transfer_send_details") + return .dictionary(d) + case .fileTransfersTransferViewDetails(let arg): + var d = try Serialization.getFields(TeamLog.FileTransfersTransferViewDetailsSerializer().serialize(arg)) + d[".tag"] = .str("file_transfers_transfer_view_details") + return .dictionary(d) + case .mediaHubProjectTeamAddDetails(let arg): + var d = try Serialization.getFields(TeamLog.MediaHubProjectTeamAddDetailsSerializer().serialize(arg)) + d[".tag"] = .str("media_hub_project_team_add_details") + return .dictionary(d) + case .mediaHubProjectTeamDeleteDetails(let arg): + var d = try Serialization.getFields(TeamLog.MediaHubProjectTeamDeleteDetailsSerializer().serialize(arg)) + d[".tag"] = .str("media_hub_project_team_delete_details") + return .dictionary(d) + case .mediaHubProjectTeamRoleChangedDetails(let arg): + var d = try Serialization.getFields(TeamLog.MediaHubProjectTeamRoleChangedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("media_hub_project_team_role_changed_details") + return .dictionary(d) + case .mediaHubSharedLinkAudienceChangedDetails(let arg): + var d = try Serialization.getFields(TeamLog.MediaHubSharedLinkAudienceChangedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("media_hub_shared_link_audience_changed_details") + return .dictionary(d) + case .mediaHubSharedLinkCreatedDetails(let arg): + var d = try Serialization.getFields(TeamLog.MediaHubSharedLinkCreatedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("media_hub_shared_link_created_details") + return .dictionary(d) + case .mediaHubSharedLinkDownloadSettingChangedDetails(let arg): + var d = try Serialization.getFields(TeamLog.MediaHubSharedLinkDownloadSettingChangedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("media_hub_shared_link_download_setting_changed_details") + return .dictionary(d) + case .mediaHubSharedLinkRevokedDetails(let arg): + var d = try Serialization.getFields(TeamLog.MediaHubSharedLinkRevokedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("media_hub_shared_link_revoked_details") + return .dictionary(d) + case .noteAclInviteOnlyDetails(let arg): + var d = try Serialization.getFields(TeamLog.NoteAclInviteOnlyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("note_acl_invite_only_details") + return .dictionary(d) + case .noteAclLinkDetails(let arg): + var d = try Serialization.getFields(TeamLog.NoteAclLinkDetailsSerializer().serialize(arg)) + d[".tag"] = .str("note_acl_link_details") + return .dictionary(d) + case .noteAclTeamLinkDetails(let arg): + var d = try Serialization.getFields(TeamLog.NoteAclTeamLinkDetailsSerializer().serialize(arg)) + d[".tag"] = .str("note_acl_team_link_details") + return .dictionary(d) + case .noteSharedDetails(let arg): + var d = try Serialization.getFields(TeamLog.NoteSharedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("note_shared_details") + return .dictionary(d) + case .noteShareReceiveDetails(let arg): + var d = try Serialization.getFields(TeamLog.NoteShareReceiveDetailsSerializer().serialize(arg)) + d[".tag"] = .str("note_share_receive_details") + return .dictionary(d) + case .openNoteSharedDetails(let arg): + var d = try Serialization.getFields(TeamLog.OpenNoteSharedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("open_note_shared_details") + return .dictionary(d) + case .replayFileSharedLinkCreatedDetails(let arg): + var d = try Serialization.getFields(TeamLog.ReplayFileSharedLinkCreatedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("replay_file_shared_link_created_details") + return .dictionary(d) + case .replayFileSharedLinkModifiedDetails(let arg): + var d = try Serialization.getFields(TeamLog.ReplayFileSharedLinkModifiedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("replay_file_shared_link_modified_details") + return .dictionary(d) + case .replayProjectTeamAddDetails(let arg): + var d = try Serialization.getFields(TeamLog.ReplayProjectTeamAddDetailsSerializer().serialize(arg)) + d[".tag"] = .str("replay_project_team_add_details") + return .dictionary(d) + case .replayProjectTeamDeleteDetails(let arg): + var d = try Serialization.getFields(TeamLog.ReplayProjectTeamDeleteDetailsSerializer().serialize(arg)) + d[".tag"] = .str("replay_project_team_delete_details") + return .dictionary(d) + case .sendAndTrackFileAddedDetails(let arg): + var d = try Serialization.getFields(TeamLog.SendAndTrackFileAddedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("send_and_track_file_added_details") + return .dictionary(d) + case .sendAndTrackFileRenamedDetails(let arg): + var d = try Serialization.getFields(TeamLog.SendAndTrackFileRenamedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("send_and_track_file_renamed_details") + return .dictionary(d) + case .sendAndTrackFileUpdatedDetails(let arg): + var d = try Serialization.getFields(TeamLog.SendAndTrackFileUpdatedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("send_and_track_file_updated_details") + return .dictionary(d) + case .sendAndTrackLinkCreatedDetails(let arg): + var d = try Serialization.getFields(TeamLog.SendAndTrackLinkCreatedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("send_and_track_link_created_details") + return .dictionary(d) + case .sendAndTrackLinkDeletedDetails(let arg): + var d = try Serialization.getFields(TeamLog.SendAndTrackLinkDeletedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("send_and_track_link_deleted_details") + return .dictionary(d) + case .sendAndTrackLinkUpdatedDetails(let arg): + var d = try Serialization.getFields(TeamLog.SendAndTrackLinkUpdatedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("send_and_track_link_updated_details") + return .dictionary(d) + case .sendAndTrackLinkViewedDetails(let arg): + var d = try Serialization.getFields(TeamLog.SendAndTrackLinkViewedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("send_and_track_link_viewed_details") + return .dictionary(d) + case .sendAndTrackRemovedFileAndAssociatedLinksDetails(let arg): + var d = try Serialization.getFields(TeamLog.SendAndTrackRemovedFileAndAssociatedLinksDetailsSerializer().serialize(arg)) + d[".tag"] = .str("send_and_track_removed_file_and_associated_links_details") + return .dictionary(d) + case .sfAddGroupDetails(let arg): + var d = try Serialization.getFields(TeamLog.SfAddGroupDetailsSerializer().serialize(arg)) + d[".tag"] = .str("sf_add_group_details") + return .dictionary(d) + case .sfAllowNonMembersToViewSharedLinksDetails(let arg): + var d = try Serialization.getFields(TeamLog.SfAllowNonMembersToViewSharedLinksDetailsSerializer().serialize(arg)) + d[".tag"] = .str("sf_allow_non_members_to_view_shared_links_details") + return .dictionary(d) + case .sfExternalInviteWarnDetails(let arg): + var d = try Serialization.getFields(TeamLog.SfExternalInviteWarnDetailsSerializer().serialize(arg)) + d[".tag"] = .str("sf_external_invite_warn_details") + return .dictionary(d) + case .sfFbInviteDetails(let arg): + var d = try Serialization.getFields(TeamLog.SfFbInviteDetailsSerializer().serialize(arg)) + d[".tag"] = .str("sf_fb_invite_details") + return .dictionary(d) + case .sfFbInviteChangeRoleDetails(let arg): + var d = try Serialization.getFields(TeamLog.SfFbInviteChangeRoleDetailsSerializer().serialize(arg)) + d[".tag"] = .str("sf_fb_invite_change_role_details") + return .dictionary(d) + case .sfFbUninviteDetails(let arg): + var d = try Serialization.getFields(TeamLog.SfFbUninviteDetailsSerializer().serialize(arg)) + d[".tag"] = .str("sf_fb_uninvite_details") + return .dictionary(d) + case .sfInviteGroupDetails(let arg): + var d = try Serialization.getFields(TeamLog.SfInviteGroupDetailsSerializer().serialize(arg)) + d[".tag"] = .str("sf_invite_group_details") + return .dictionary(d) + case .sfTeamGrantAccessDetails(let arg): + var d = try Serialization.getFields(TeamLog.SfTeamGrantAccessDetailsSerializer().serialize(arg)) + d[".tag"] = .str("sf_team_grant_access_details") + return .dictionary(d) + case .sfTeamInviteDetails(let arg): + var d = try Serialization.getFields(TeamLog.SfTeamInviteDetailsSerializer().serialize(arg)) + d[".tag"] = .str("sf_team_invite_details") + return .dictionary(d) + case .sfTeamInviteChangeRoleDetails(let arg): + var d = try Serialization.getFields(TeamLog.SfTeamInviteChangeRoleDetailsSerializer().serialize(arg)) + d[".tag"] = .str("sf_team_invite_change_role_details") + return .dictionary(d) + case .sfTeamJoinDetails(let arg): + var d = try Serialization.getFields(TeamLog.SfTeamJoinDetailsSerializer().serialize(arg)) + d[".tag"] = .str("sf_team_join_details") + return .dictionary(d) + case .sfTeamJoinFromOobLinkDetails(let arg): + var d = try Serialization.getFields(TeamLog.SfTeamJoinFromOobLinkDetailsSerializer().serialize(arg)) + d[".tag"] = .str("sf_team_join_from_oob_link_details") + return .dictionary(d) + case .sfTeamUninviteDetails(let arg): + var d = try Serialization.getFields(TeamLog.SfTeamUninviteDetailsSerializer().serialize(arg)) + d[".tag"] = .str("sf_team_uninvite_details") + return .dictionary(d) + case .sharedContentAddInviteesDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharedContentAddInviteesDetailsSerializer().serialize(arg)) + d[".tag"] = .str("shared_content_add_invitees_details") + return .dictionary(d) + case .sharedContentAddLinkExpiryDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharedContentAddLinkExpiryDetailsSerializer().serialize(arg)) + d[".tag"] = .str("shared_content_add_link_expiry_details") + return .dictionary(d) + case .sharedContentAddLinkPasswordDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharedContentAddLinkPasswordDetailsSerializer().serialize(arg)) + d[".tag"] = .str("shared_content_add_link_password_details") + return .dictionary(d) + case .sharedContentAddMemberDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharedContentAddMemberDetailsSerializer().serialize(arg)) + d[".tag"] = .str("shared_content_add_member_details") + return .dictionary(d) + case .sharedContentChangeDownloadsPolicyDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharedContentChangeDownloadsPolicyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("shared_content_change_downloads_policy_details") + return .dictionary(d) + case .sharedContentChangeInviteeRoleDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharedContentChangeInviteeRoleDetailsSerializer().serialize(arg)) + d[".tag"] = .str("shared_content_change_invitee_role_details") + return .dictionary(d) + case .sharedContentChangeLinkAudienceDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharedContentChangeLinkAudienceDetailsSerializer().serialize(arg)) + d[".tag"] = .str("shared_content_change_link_audience_details") + return .dictionary(d) + case .sharedContentChangeLinkExpiryDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharedContentChangeLinkExpiryDetailsSerializer().serialize(arg)) + d[".tag"] = .str("shared_content_change_link_expiry_details") + return .dictionary(d) + case .sharedContentChangeLinkPasswordDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharedContentChangeLinkPasswordDetailsSerializer().serialize(arg)) + d[".tag"] = .str("shared_content_change_link_password_details") + return .dictionary(d) + case .sharedContentChangeMemberRoleDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharedContentChangeMemberRoleDetailsSerializer().serialize(arg)) + d[".tag"] = .str("shared_content_change_member_role_details") + return .dictionary(d) + case .sharedContentChangeViewerInfoPolicyDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharedContentChangeViewerInfoPolicyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("shared_content_change_viewer_info_policy_details") + return .dictionary(d) + case .sharedContentClaimInvitationDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharedContentClaimInvitationDetailsSerializer().serialize(arg)) + d[".tag"] = .str("shared_content_claim_invitation_details") + return .dictionary(d) + case .sharedContentCopyDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharedContentCopyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("shared_content_copy_details") + return .dictionary(d) + case .sharedContentDownloadDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharedContentDownloadDetailsSerializer().serialize(arg)) + d[".tag"] = .str("shared_content_download_details") + return .dictionary(d) + case .sharedContentRelinquishMembershipDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharedContentRelinquishMembershipDetailsSerializer().serialize(arg)) + d[".tag"] = .str("shared_content_relinquish_membership_details") + return .dictionary(d) + case .sharedContentRemoveInviteesDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharedContentRemoveInviteesDetailsSerializer().serialize(arg)) + d[".tag"] = .str("shared_content_remove_invitees_details") + return .dictionary(d) + case .sharedContentRemoveLinkExpiryDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharedContentRemoveLinkExpiryDetailsSerializer().serialize(arg)) + d[".tag"] = .str("shared_content_remove_link_expiry_details") + return .dictionary(d) + case .sharedContentRemoveLinkPasswordDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharedContentRemoveLinkPasswordDetailsSerializer().serialize(arg)) + d[".tag"] = .str("shared_content_remove_link_password_details") + return .dictionary(d) + case .sharedContentRemoveMemberDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharedContentRemoveMemberDetailsSerializer().serialize(arg)) + d[".tag"] = .str("shared_content_remove_member_details") + return .dictionary(d) + case .sharedContentRequestAccessDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharedContentRequestAccessDetailsSerializer().serialize(arg)) + d[".tag"] = .str("shared_content_request_access_details") + return .dictionary(d) + case .sharedContentRestoreInviteesDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharedContentRestoreInviteesDetailsSerializer().serialize(arg)) + d[".tag"] = .str("shared_content_restore_invitees_details") + return .dictionary(d) + case .sharedContentRestoreMemberDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharedContentRestoreMemberDetailsSerializer().serialize(arg)) + d[".tag"] = .str("shared_content_restore_member_details") + return .dictionary(d) + case .sharedContentUnshareDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharedContentUnshareDetailsSerializer().serialize(arg)) + d[".tag"] = .str("shared_content_unshare_details") + return .dictionary(d) + case .sharedContentViewDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharedContentViewDetailsSerializer().serialize(arg)) + d[".tag"] = .str("shared_content_view_details") + return .dictionary(d) + case .sharedFolderChangeLinkPolicyDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharedFolderChangeLinkPolicyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("shared_folder_change_link_policy_details") + return .dictionary(d) + case .sharedFolderChangeMembersInheritancePolicyDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharedFolderChangeMembersInheritancePolicyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("shared_folder_change_members_inheritance_policy_details") + return .dictionary(d) + case .sharedFolderChangeMembersManagementPolicyDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharedFolderChangeMembersManagementPolicyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("shared_folder_change_members_management_policy_details") + return .dictionary(d) + case .sharedFolderChangeMembersPolicyDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharedFolderChangeMembersPolicyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("shared_folder_change_members_policy_details") + return .dictionary(d) + case .sharedFolderCreateDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharedFolderCreateDetailsSerializer().serialize(arg)) + d[".tag"] = .str("shared_folder_create_details") + return .dictionary(d) + case .sharedFolderDeclineInvitationDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharedFolderDeclineInvitationDetailsSerializer().serialize(arg)) + d[".tag"] = .str("shared_folder_decline_invitation_details") + return .dictionary(d) + case .sharedFolderMountDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharedFolderMountDetailsSerializer().serialize(arg)) + d[".tag"] = .str("shared_folder_mount_details") + return .dictionary(d) + case .sharedFolderNestDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharedFolderNestDetailsSerializer().serialize(arg)) + d[".tag"] = .str("shared_folder_nest_details") + return .dictionary(d) + case .sharedFolderTransferOwnershipDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharedFolderTransferOwnershipDetailsSerializer().serialize(arg)) + d[".tag"] = .str("shared_folder_transfer_ownership_details") + return .dictionary(d) + case .sharedFolderUnmountDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharedFolderUnmountDetailsSerializer().serialize(arg)) + d[".tag"] = .str("shared_folder_unmount_details") + return .dictionary(d) + case .sharedLinkAddExpiryDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharedLinkAddExpiryDetailsSerializer().serialize(arg)) + d[".tag"] = .str("shared_link_add_expiry_details") + return .dictionary(d) + case .sharedLinkChangeExpiryDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharedLinkChangeExpiryDetailsSerializer().serialize(arg)) + d[".tag"] = .str("shared_link_change_expiry_details") + return .dictionary(d) + case .sharedLinkChangeVisibilityDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharedLinkChangeVisibilityDetailsSerializer().serialize(arg)) + d[".tag"] = .str("shared_link_change_visibility_details") + return .dictionary(d) + case .sharedLinkCopyDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharedLinkCopyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("shared_link_copy_details") + return .dictionary(d) + case .sharedLinkCreateDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharedLinkCreateDetailsSerializer().serialize(arg)) + d[".tag"] = .str("shared_link_create_details") + return .dictionary(d) + case .sharedLinkDisableDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharedLinkDisableDetailsSerializer().serialize(arg)) + d[".tag"] = .str("shared_link_disable_details") + return .dictionary(d) + case .sharedLinkDownloadDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharedLinkDownloadDetailsSerializer().serialize(arg)) + d[".tag"] = .str("shared_link_download_details") + return .dictionary(d) + case .sharedLinkRemoveExpiryDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharedLinkRemoveExpiryDetailsSerializer().serialize(arg)) + d[".tag"] = .str("shared_link_remove_expiry_details") + return .dictionary(d) + case .sharedLinkRemoveVisitorDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharedLinkRemoveVisitorDetailsSerializer().serialize(arg)) + d[".tag"] = .str("shared_link_remove_visitor_details") + return .dictionary(d) + case .sharedLinkSettingsAddExpirationDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharedLinkSettingsAddExpirationDetailsSerializer().serialize(arg)) + d[".tag"] = .str("shared_link_settings_add_expiration_details") + return .dictionary(d) + case .sharedLinkSettingsAddPasswordDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharedLinkSettingsAddPasswordDetailsSerializer().serialize(arg)) + d[".tag"] = .str("shared_link_settings_add_password_details") + return .dictionary(d) + case .sharedLinkSettingsAllowDownloadDisabledDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharedLinkSettingsAllowDownloadDisabledDetailsSerializer().serialize(arg)) + d[".tag"] = .str("shared_link_settings_allow_download_disabled_details") + return .dictionary(d) + case .sharedLinkSettingsAllowDownloadEnabledDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharedLinkSettingsAllowDownloadEnabledDetailsSerializer().serialize(arg)) + d[".tag"] = .str("shared_link_settings_allow_download_enabled_details") + return .dictionary(d) + case .sharedLinkSettingsChangeAudienceDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharedLinkSettingsChangeAudienceDetailsSerializer().serialize(arg)) + d[".tag"] = .str("shared_link_settings_change_audience_details") + return .dictionary(d) + case .sharedLinkSettingsChangeExpirationDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharedLinkSettingsChangeExpirationDetailsSerializer().serialize(arg)) + d[".tag"] = .str("shared_link_settings_change_expiration_details") + return .dictionary(d) + case .sharedLinkSettingsChangePasswordDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharedLinkSettingsChangePasswordDetailsSerializer().serialize(arg)) + d[".tag"] = .str("shared_link_settings_change_password_details") + return .dictionary(d) + case .sharedLinkSettingsRemoveExpirationDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharedLinkSettingsRemoveExpirationDetailsSerializer().serialize(arg)) + d[".tag"] = .str("shared_link_settings_remove_expiration_details") + return .dictionary(d) + case .sharedLinkSettingsRemovePasswordDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharedLinkSettingsRemovePasswordDetailsSerializer().serialize(arg)) + d[".tag"] = .str("shared_link_settings_remove_password_details") + return .dictionary(d) + case .sharedLinkShareDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharedLinkShareDetailsSerializer().serialize(arg)) + d[".tag"] = .str("shared_link_share_details") + return .dictionary(d) + case .sharedLinkViewDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharedLinkViewDetailsSerializer().serialize(arg)) + d[".tag"] = .str("shared_link_view_details") + return .dictionary(d) + case .sharedNoteOpenedDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharedNoteOpenedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("shared_note_opened_details") + return .dictionary(d) + case .shmodelDisableDownloadsDetails(let arg): + var d = try Serialization.getFields(TeamLog.ShmodelDisableDownloadsDetailsSerializer().serialize(arg)) + d[".tag"] = .str("shmodel_disable_downloads_details") + return .dictionary(d) + case .shmodelEnableDownloadsDetails(let arg): + var d = try Serialization.getFields(TeamLog.ShmodelEnableDownloadsDetailsSerializer().serialize(arg)) + d[".tag"] = .str("shmodel_enable_downloads_details") + return .dictionary(d) + case .shmodelGroupShareDetails(let arg): + var d = try Serialization.getFields(TeamLog.ShmodelGroupShareDetailsSerializer().serialize(arg)) + d[".tag"] = .str("shmodel_group_share_details") + return .dictionary(d) + case .showcaseAccessGrantedDetails(let arg): + var d = try Serialization.getFields(TeamLog.ShowcaseAccessGrantedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("showcase_access_granted_details") + return .dictionary(d) + case .showcaseAddMemberDetails(let arg): + var d = try Serialization.getFields(TeamLog.ShowcaseAddMemberDetailsSerializer().serialize(arg)) + d[".tag"] = .str("showcase_add_member_details") + return .dictionary(d) + case .showcaseArchivedDetails(let arg): + var d = try Serialization.getFields(TeamLog.ShowcaseArchivedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("showcase_archived_details") + return .dictionary(d) + case .showcaseCreatedDetails(let arg): + var d = try Serialization.getFields(TeamLog.ShowcaseCreatedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("showcase_created_details") + return .dictionary(d) + case .showcaseDeleteCommentDetails(let arg): + var d = try Serialization.getFields(TeamLog.ShowcaseDeleteCommentDetailsSerializer().serialize(arg)) + d[".tag"] = .str("showcase_delete_comment_details") + return .dictionary(d) + case .showcaseEditedDetails(let arg): + var d = try Serialization.getFields(TeamLog.ShowcaseEditedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("showcase_edited_details") + return .dictionary(d) + case .showcaseEditCommentDetails(let arg): + var d = try Serialization.getFields(TeamLog.ShowcaseEditCommentDetailsSerializer().serialize(arg)) + d[".tag"] = .str("showcase_edit_comment_details") + return .dictionary(d) + case .showcaseFileAddedDetails(let arg): + var d = try Serialization.getFields(TeamLog.ShowcaseFileAddedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("showcase_file_added_details") + return .dictionary(d) + case .showcaseFileDownloadDetails(let arg): + var d = try Serialization.getFields(TeamLog.ShowcaseFileDownloadDetailsSerializer().serialize(arg)) + d[".tag"] = .str("showcase_file_download_details") + return .dictionary(d) + case .showcaseFileRemovedDetails(let arg): + var d = try Serialization.getFields(TeamLog.ShowcaseFileRemovedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("showcase_file_removed_details") + return .dictionary(d) + case .showcaseFileViewDetails(let arg): + var d = try Serialization.getFields(TeamLog.ShowcaseFileViewDetailsSerializer().serialize(arg)) + d[".tag"] = .str("showcase_file_view_details") + return .dictionary(d) + case .showcasePermanentlyDeletedDetails(let arg): + var d = try Serialization.getFields(TeamLog.ShowcasePermanentlyDeletedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("showcase_permanently_deleted_details") + return .dictionary(d) + case .showcasePostCommentDetails(let arg): + var d = try Serialization.getFields(TeamLog.ShowcasePostCommentDetailsSerializer().serialize(arg)) + d[".tag"] = .str("showcase_post_comment_details") + return .dictionary(d) + case .showcaseRemoveMemberDetails(let arg): + var d = try Serialization.getFields(TeamLog.ShowcaseRemoveMemberDetailsSerializer().serialize(arg)) + d[".tag"] = .str("showcase_remove_member_details") + return .dictionary(d) + case .showcaseRenamedDetails(let arg): + var d = try Serialization.getFields(TeamLog.ShowcaseRenamedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("showcase_renamed_details") + return .dictionary(d) + case .showcaseRequestAccessDetails(let arg): + var d = try Serialization.getFields(TeamLog.ShowcaseRequestAccessDetailsSerializer().serialize(arg)) + d[".tag"] = .str("showcase_request_access_details") + return .dictionary(d) + case .showcaseResolveCommentDetails(let arg): + var d = try Serialization.getFields(TeamLog.ShowcaseResolveCommentDetailsSerializer().serialize(arg)) + d[".tag"] = .str("showcase_resolve_comment_details") + return .dictionary(d) + case .showcaseRestoredDetails(let arg): + var d = try Serialization.getFields(TeamLog.ShowcaseRestoredDetailsSerializer().serialize(arg)) + d[".tag"] = .str("showcase_restored_details") + return .dictionary(d) + case .showcaseTrashedDetails(let arg): + var d = try Serialization.getFields(TeamLog.ShowcaseTrashedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("showcase_trashed_details") + return .dictionary(d) + case .showcaseTrashedDeprecatedDetails(let arg): + var d = try Serialization.getFields(TeamLog.ShowcaseTrashedDeprecatedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("showcase_trashed_deprecated_details") + return .dictionary(d) + case .showcaseUnresolveCommentDetails(let arg): + var d = try Serialization.getFields(TeamLog.ShowcaseUnresolveCommentDetailsSerializer().serialize(arg)) + d[".tag"] = .str("showcase_unresolve_comment_details") + return .dictionary(d) + case .showcaseUntrashedDetails(let arg): + var d = try Serialization.getFields(TeamLog.ShowcaseUntrashedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("showcase_untrashed_details") + return .dictionary(d) + case .showcaseUntrashedDeprecatedDetails(let arg): + var d = try Serialization.getFields(TeamLog.ShowcaseUntrashedDeprecatedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("showcase_untrashed_deprecated_details") + return .dictionary(d) + case .showcaseViewDetails(let arg): + var d = try Serialization.getFields(TeamLog.ShowcaseViewDetailsSerializer().serialize(arg)) + d[".tag"] = .str("showcase_view_details") + return .dictionary(d) + case .signSignatureRequestCanceledDetails(let arg): + var d = try Serialization.getFields(TeamLog.SignSignatureRequestCanceledDetailsSerializer().serialize(arg)) + d[".tag"] = .str("sign_signature_request_canceled_details") + return .dictionary(d) + case .signSignatureRequestCompletedDetails(let arg): + var d = try Serialization.getFields(TeamLog.SignSignatureRequestCompletedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("sign_signature_request_completed_details") + return .dictionary(d) + case .signSignatureRequestDeclinedDetails(let arg): + var d = try Serialization.getFields(TeamLog.SignSignatureRequestDeclinedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("sign_signature_request_declined_details") + return .dictionary(d) + case .signSignatureRequestOpenedDetails(let arg): + var d = try Serialization.getFields(TeamLog.SignSignatureRequestOpenedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("sign_signature_request_opened_details") + return .dictionary(d) + case .signSignatureRequestReminderSentDetails(let arg): + var d = try Serialization.getFields(TeamLog.SignSignatureRequestReminderSentDetailsSerializer().serialize(arg)) + d[".tag"] = .str("sign_signature_request_reminder_sent_details") + return .dictionary(d) + case .signSignatureRequestSentDetails(let arg): + var d = try Serialization.getFields(TeamLog.SignSignatureRequestSentDetailsSerializer().serialize(arg)) + d[".tag"] = .str("sign_signature_request_sent_details") + return .dictionary(d) + case .signTemplateCreatedDetails(let arg): + var d = try Serialization.getFields(TeamLog.SignTemplateCreatedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("sign_template_created_details") + return .dictionary(d) + case .signTemplateSharedDetails(let arg): + var d = try Serialization.getFields(TeamLog.SignTemplateSharedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("sign_template_shared_details") + return .dictionary(d) + case .riscSecurityEventDetails(let arg): + var d = try Serialization.getFields(TeamLog.RiscSecurityEventDetailsSerializer().serialize(arg)) + d[".tag"] = .str("risc_security_event_details") + return .dictionary(d) + case .ssoAddCertDetails(let arg): + var d = try Serialization.getFields(TeamLog.SsoAddCertDetailsSerializer().serialize(arg)) + d[".tag"] = .str("sso_add_cert_details") + return .dictionary(d) + case .ssoAddLoginUrlDetails(let arg): + var d = try Serialization.getFields(TeamLog.SsoAddLoginUrlDetailsSerializer().serialize(arg)) + d[".tag"] = .str("sso_add_login_url_details") + return .dictionary(d) + case .ssoAddLogoutUrlDetails(let arg): + var d = try Serialization.getFields(TeamLog.SsoAddLogoutUrlDetailsSerializer().serialize(arg)) + d[".tag"] = .str("sso_add_logout_url_details") + return .dictionary(d) + case .ssoChangeCertDetails(let arg): + var d = try Serialization.getFields(TeamLog.SsoChangeCertDetailsSerializer().serialize(arg)) + d[".tag"] = .str("sso_change_cert_details") + return .dictionary(d) + case .ssoChangeLoginUrlDetails(let arg): + var d = try Serialization.getFields(TeamLog.SsoChangeLoginUrlDetailsSerializer().serialize(arg)) + d[".tag"] = .str("sso_change_login_url_details") + return .dictionary(d) + case .ssoChangeLogoutUrlDetails(let arg): + var d = try Serialization.getFields(TeamLog.SsoChangeLogoutUrlDetailsSerializer().serialize(arg)) + d[".tag"] = .str("sso_change_logout_url_details") + return .dictionary(d) + case .ssoChangeSamlIdentityModeDetails(let arg): + var d = try Serialization.getFields(TeamLog.SsoChangeSamlIdentityModeDetailsSerializer().serialize(arg)) + d[".tag"] = .str("sso_change_saml_identity_mode_details") + return .dictionary(d) + case .ssoRemoveCertDetails(let arg): + var d = try Serialization.getFields(TeamLog.SsoRemoveCertDetailsSerializer().serialize(arg)) + d[".tag"] = .str("sso_remove_cert_details") + return .dictionary(d) + case .ssoRemoveLoginUrlDetails(let arg): + var d = try Serialization.getFields(TeamLog.SsoRemoveLoginUrlDetailsSerializer().serialize(arg)) + d[".tag"] = .str("sso_remove_login_url_details") + return .dictionary(d) + case .ssoRemoveLogoutUrlDetails(let arg): + var d = try Serialization.getFields(TeamLog.SsoRemoveLogoutUrlDetailsSerializer().serialize(arg)) + d[".tag"] = .str("sso_remove_logout_url_details") + return .dictionary(d) + case .teamFolderChangeStatusDetails(let arg): + var d = try Serialization.getFields(TeamLog.TeamFolderChangeStatusDetailsSerializer().serialize(arg)) + d[".tag"] = .str("team_folder_change_status_details") + return .dictionary(d) + case .teamFolderCreateDetails(let arg): + var d = try Serialization.getFields(TeamLog.TeamFolderCreateDetailsSerializer().serialize(arg)) + d[".tag"] = .str("team_folder_create_details") + return .dictionary(d) + case .teamFolderDowngradeDetails(let arg): + var d = try Serialization.getFields(TeamLog.TeamFolderDowngradeDetailsSerializer().serialize(arg)) + d[".tag"] = .str("team_folder_downgrade_details") + return .dictionary(d) + case .teamFolderPermanentlyDeleteDetails(let arg): + var d = try Serialization.getFields(TeamLog.TeamFolderPermanentlyDeleteDetailsSerializer().serialize(arg)) + d[".tag"] = .str("team_folder_permanently_delete_details") + return .dictionary(d) + case .teamFolderRenameDetails(let arg): + var d = try Serialization.getFields(TeamLog.TeamFolderRenameDetailsSerializer().serialize(arg)) + d[".tag"] = .str("team_folder_rename_details") + return .dictionary(d) + case .teamFolderSpaceLimitsChangeCapsTypeDetails(let arg): + var d = try Serialization.getFields(TeamLog.TeamFolderSpaceLimitsChangeCapsTypeDetailsSerializer().serialize(arg)) + d[".tag"] = .str("team_folder_space_limits_change_caps_type_details") + return .dictionary(d) + case .teamFolderSpaceLimitsChangeLimitDetails(let arg): + var d = try Serialization.getFields(TeamLog.TeamFolderSpaceLimitsChangeLimitDetailsSerializer().serialize(arg)) + d[".tag"] = .str("team_folder_space_limits_change_limit_details") + return .dictionary(d) + case .teamFolderSpaceLimitsChangeNotificationTargetDetails(let arg): + var d = try Serialization.getFields(TeamLog.TeamFolderSpaceLimitsChangeNotificationTargetDetailsSerializer().serialize(arg)) + d[".tag"] = .str("team_folder_space_limits_change_notification_target_details") + return .dictionary(d) + case .teamSelectiveSyncSettingsChangedDetails(let arg): + var d = try Serialization.getFields(TeamLog.TeamSelectiveSyncSettingsChangedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("team_selective_sync_settings_changed_details") + return .dictionary(d) + case .accountCaptureChangePolicyDetails(let arg): + var d = try Serialization.getFields(TeamLog.AccountCaptureChangePolicyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("account_capture_change_policy_details") + return .dictionary(d) + case .adminEmailRemindersChangedDetails(let arg): + var d = try Serialization.getFields(TeamLog.AdminEmailRemindersChangedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("admin_email_reminders_changed_details") + return .dictionary(d) + case .aiThirdPartySharingDropboxBasePolicyChangedDetails(let arg): + var d = try Serialization.getFields(TeamLog.AiThirdPartySharingDropboxBasePolicyChangedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("ai_third_party_sharing_dropbox_base_policy_changed_details") + return .dictionary(d) + case .allowDownloadDisabledDetails(let arg): + var d = try Serialization.getFields(TeamLog.AllowDownloadDisabledDetailsSerializer().serialize(arg)) + d[".tag"] = .str("allow_download_disabled_details") + return .dictionary(d) + case .allowDownloadEnabledDetails(let arg): + var d = try Serialization.getFields(TeamLog.AllowDownloadEnabledDetailsSerializer().serialize(arg)) + d[".tag"] = .str("allow_download_enabled_details") + return .dictionary(d) + case .appleLoginChangePolicyDetails(let arg): + var d = try Serialization.getFields(TeamLog.AppleLoginChangePolicyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("apple_login_change_policy_details") + return .dictionary(d) + case .appPermissionsChangedDetails(let arg): + var d = try Serialization.getFields(TeamLog.AppPermissionsChangedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("app_permissions_changed_details") + return .dictionary(d) + case .cameraUploadsPolicyChangedDetails(let arg): + var d = try Serialization.getFields(TeamLog.CameraUploadsPolicyChangedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("camera_uploads_policy_changed_details") + return .dictionary(d) + case .captureTeamSpacePolicyChangedDetails(let arg): + var d = try Serialization.getFields(TeamLog.CaptureTeamSpacePolicyChangedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("capture_team_space_policy_changed_details") + return .dictionary(d) + case .captureTranscriptPolicyChangedDetails(let arg): + var d = try Serialization.getFields(TeamLog.CaptureTranscriptPolicyChangedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("capture_transcript_policy_changed_details") + return .dictionary(d) + case .classificationChangePolicyDetails(let arg): + var d = try Serialization.getFields(TeamLog.ClassificationChangePolicyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("classification_change_policy_details") + return .dictionary(d) + case .computerBackupPolicyChangedDetails(let arg): + var d = try Serialization.getFields(TeamLog.ComputerBackupPolicyChangedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("computer_backup_policy_changed_details") + return .dictionary(d) + case .contentAdministrationPolicyChangedDetails(let arg): + var d = try Serialization.getFields(TeamLog.ContentAdministrationPolicyChangedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("content_administration_policy_changed_details") + return .dictionary(d) + case .contentDeletionProtectionChangePolicyDetails(let arg): + var d = try Serialization.getFields(TeamLog.ContentDeletionProtectionChangePolicyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("content_deletion_protection_change_policy_details") + return .dictionary(d) + case .dashExternalSharingPolicyChangedDetails(let arg): + var d = try Serialization.getFields(TeamLog.DashExternalSharingPolicyChangedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("dash_external_sharing_policy_changed_details") + return .dictionary(d) + case .dataPlacementRestrictionChangePolicyDetails(let arg): + var d = try Serialization.getFields(TeamLog.DataPlacementRestrictionChangePolicyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("data_placement_restriction_change_policy_details") + return .dictionary(d) + case .dataPlacementRestrictionSatisfyPolicyDetails(let arg): + var d = try Serialization.getFields(TeamLog.DataPlacementRestrictionSatisfyPolicyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("data_placement_restriction_satisfy_policy_details") + return .dictionary(d) + case .deviceApprovalsAddExceptionDetails(let arg): + var d = try Serialization.getFields(TeamLog.DeviceApprovalsAddExceptionDetailsSerializer().serialize(arg)) + d[".tag"] = .str("device_approvals_add_exception_details") + return .dictionary(d) + case .deviceApprovalsChangeDesktopPolicyDetails(let arg): + var d = try Serialization.getFields(TeamLog.DeviceApprovalsChangeDesktopPolicyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("device_approvals_change_desktop_policy_details") + return .dictionary(d) + case .deviceApprovalsChangeMobilePolicyDetails(let arg): + var d = try Serialization.getFields(TeamLog.DeviceApprovalsChangeMobilePolicyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("device_approvals_change_mobile_policy_details") + return .dictionary(d) + case .deviceApprovalsChangeOverageActionDetails(let arg): + var d = try Serialization.getFields(TeamLog.DeviceApprovalsChangeOverageActionDetailsSerializer().serialize(arg)) + d[".tag"] = .str("device_approvals_change_overage_action_details") + return .dictionary(d) + case .deviceApprovalsChangeUnlinkActionDetails(let arg): + var d = try Serialization.getFields(TeamLog.DeviceApprovalsChangeUnlinkActionDetailsSerializer().serialize(arg)) + d[".tag"] = .str("device_approvals_change_unlink_action_details") + return .dictionary(d) + case .deviceApprovalsRemoveExceptionDetails(let arg): + var d = try Serialization.getFields(TeamLog.DeviceApprovalsRemoveExceptionDetailsSerializer().serialize(arg)) + d[".tag"] = .str("device_approvals_remove_exception_details") + return .dictionary(d) + case .directoryRestrictionsAddMembersDetails(let arg): + var d = try Serialization.getFields(TeamLog.DirectoryRestrictionsAddMembersDetailsSerializer().serialize(arg)) + d[".tag"] = .str("directory_restrictions_add_members_details") + return .dictionary(d) + case .directoryRestrictionsRemoveMembersDetails(let arg): + var d = try Serialization.getFields(TeamLog.DirectoryRestrictionsRemoveMembersDetailsSerializer().serialize(arg)) + d[".tag"] = .str("directory_restrictions_remove_members_details") + return .dictionary(d) + case .dropboxPasswordsPolicyChangedDetails(let arg): + var d = try Serialization.getFields(TeamLog.DropboxPasswordsPolicyChangedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("dropbox_passwords_policy_changed_details") + return .dictionary(d) + case .emailIngestPolicyChangedDetails(let arg): + var d = try Serialization.getFields(TeamLog.EmailIngestPolicyChangedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("email_ingest_policy_changed_details") + return .dictionary(d) + case .emmAddExceptionDetails(let arg): + var d = try Serialization.getFields(TeamLog.EmmAddExceptionDetailsSerializer().serialize(arg)) + d[".tag"] = .str("emm_add_exception_details") + return .dictionary(d) + case .emmChangePolicyDetails(let arg): + var d = try Serialization.getFields(TeamLog.EmmChangePolicyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("emm_change_policy_details") + return .dictionary(d) + case .emmRemoveExceptionDetails(let arg): + var d = try Serialization.getFields(TeamLog.EmmRemoveExceptionDetailsSerializer().serialize(arg)) + d[".tag"] = .str("emm_remove_exception_details") + return .dictionary(d) + case .extendedVersionHistoryChangePolicyDetails(let arg): + var d = try Serialization.getFields(TeamLog.ExtendedVersionHistoryChangePolicyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("extended_version_history_change_policy_details") + return .dictionary(d) + case .externalDriveBackupPolicyChangedDetails(let arg): + var d = try Serialization.getFields(TeamLog.ExternalDriveBackupPolicyChangedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("external_drive_backup_policy_changed_details") + return .dictionary(d) + case .fileCommentsChangePolicyDetails(let arg): + var d = try Serialization.getFields(TeamLog.FileCommentsChangePolicyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("file_comments_change_policy_details") + return .dictionary(d) + case .fileLockingPolicyChangedDetails(let arg): + var d = try Serialization.getFields(TeamLog.FileLockingPolicyChangedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("file_locking_policy_changed_details") + return .dictionary(d) + case .fileProviderMigrationPolicyChangedDetails(let arg): + var d = try Serialization.getFields(TeamLog.FileProviderMigrationPolicyChangedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("file_provider_migration_policy_changed_details") + return .dictionary(d) + case .fileRequestsChangePolicyDetails(let arg): + var d = try Serialization.getFields(TeamLog.FileRequestsChangePolicyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("file_requests_change_policy_details") + return .dictionary(d) + case .fileRequestsEmailsEnabledDetails(let arg): + var d = try Serialization.getFields(TeamLog.FileRequestsEmailsEnabledDetailsSerializer().serialize(arg)) + d[".tag"] = .str("file_requests_emails_enabled_details") + return .dictionary(d) + case .fileRequestsEmailsRestrictedToTeamOnlyDetails(let arg): + var d = try Serialization.getFields(TeamLog.FileRequestsEmailsRestrictedToTeamOnlyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("file_requests_emails_restricted_to_team_only_details") + return .dictionary(d) + case .fileTransfersPolicyChangedDetails(let arg): + var d = try Serialization.getFields(TeamLog.FileTransfersPolicyChangedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("file_transfers_policy_changed_details") + return .dictionary(d) + case .flexibleFileNamesPolicyChangedDetails(let arg): + var d = try Serialization.getFields(TeamLog.FlexibleFileNamesPolicyChangedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("flexible_file_names_policy_changed_details") + return .dictionary(d) + case .folderLinkRestrictionPolicyChangedDetails(let arg): + var d = try Serialization.getFields(TeamLog.FolderLinkRestrictionPolicyChangedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("folder_link_restriction_policy_changed_details") + return .dictionary(d) + case .googleSsoChangePolicyDetails(let arg): + var d = try Serialization.getFields(TeamLog.GoogleSsoChangePolicyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("google_sso_change_policy_details") + return .dictionary(d) + case .groupUserManagementChangePolicyDetails(let arg): + var d = try Serialization.getFields(TeamLog.GroupUserManagementChangePolicyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("group_user_management_change_policy_details") + return .dictionary(d) + case .integrationPolicyChangedDetails(let arg): + var d = try Serialization.getFields(TeamLog.IntegrationPolicyChangedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("integration_policy_changed_details") + return .dictionary(d) + case .inviteAcceptanceEmailPolicyChangedDetails(let arg): + var d = try Serialization.getFields(TeamLog.InviteAcceptanceEmailPolicyChangedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("invite_acceptance_email_policy_changed_details") + return .dictionary(d) + case .mediaHubAddingPeoplePolicyChangedDetails(let arg): + var d = try Serialization.getFields(TeamLog.MediaHubAddingPeoplePolicyChangedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("media_hub_adding_people_policy_changed_details") + return .dictionary(d) + case .mediaHubDownloadPolicyChangedDetails(let arg): + var d = try Serialization.getFields(TeamLog.MediaHubDownloadPolicyChangedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("media_hub_download_policy_changed_details") + return .dictionary(d) + case .mediaHubLinkSharingPolicyChangedDetails(let arg): + var d = try Serialization.getFields(TeamLog.MediaHubLinkSharingPolicyChangedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("media_hub_link_sharing_policy_changed_details") + return .dictionary(d) + case .memberRequestsChangePolicyDetails(let arg): + var d = try Serialization.getFields(TeamLog.MemberRequestsChangePolicyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("member_requests_change_policy_details") + return .dictionary(d) + case .memberSendInvitePolicyChangedDetails(let arg): + var d = try Serialization.getFields(TeamLog.MemberSendInvitePolicyChangedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("member_send_invite_policy_changed_details") + return .dictionary(d) + case .memberSpaceLimitsAddExceptionDetails(let arg): + var d = try Serialization.getFields(TeamLog.MemberSpaceLimitsAddExceptionDetailsSerializer().serialize(arg)) + d[".tag"] = .str("member_space_limits_add_exception_details") + return .dictionary(d) + case .memberSpaceLimitsChangeCapsTypePolicyDetails(let arg): + var d = try Serialization.getFields(TeamLog.MemberSpaceLimitsChangeCapsTypePolicyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("member_space_limits_change_caps_type_policy_details") + return .dictionary(d) + case .memberSpaceLimitsChangePolicyDetails(let arg): + var d = try Serialization.getFields(TeamLog.MemberSpaceLimitsChangePolicyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("member_space_limits_change_policy_details") + return .dictionary(d) + case .memberSpaceLimitsRemoveExceptionDetails(let arg): + var d = try Serialization.getFields(TeamLog.MemberSpaceLimitsRemoveExceptionDetailsSerializer().serialize(arg)) + d[".tag"] = .str("member_space_limits_remove_exception_details") + return .dictionary(d) + case .memberSuggestionsChangePolicyDetails(let arg): + var d = try Serialization.getFields(TeamLog.MemberSuggestionsChangePolicyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("member_suggestions_change_policy_details") + return .dictionary(d) + case .microsoftLoginChangePolicyDetails(let arg): + var d = try Serialization.getFields(TeamLog.MicrosoftLoginChangePolicyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("microsoft_login_change_policy_details") + return .dictionary(d) + case .microsoftOfficeAddinChangePolicyDetails(let arg): + var d = try Serialization.getFields(TeamLog.MicrosoftOfficeAddinChangePolicyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("microsoft_office_addin_change_policy_details") + return .dictionary(d) + case .multiTeamIdentityPolicyChangedDetails(let arg): + var d = try Serialization.getFields(TeamLog.MultiTeamIdentityPolicyChangedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("multi_team_identity_policy_changed_details") + return .dictionary(d) + case .networkControlChangePolicyDetails(let arg): + var d = try Serialization.getFields(TeamLog.NetworkControlChangePolicyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("network_control_change_policy_details") + return .dictionary(d) + case .paperChangeDeploymentPolicyDetails(let arg): + var d = try Serialization.getFields(TeamLog.PaperChangeDeploymentPolicyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("paper_change_deployment_policy_details") + return .dictionary(d) + case .paperChangeMemberLinkPolicyDetails(let arg): + var d = try Serialization.getFields(TeamLog.PaperChangeMemberLinkPolicyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("paper_change_member_link_policy_details") + return .dictionary(d) + case .paperChangeMemberPolicyDetails(let arg): + var d = try Serialization.getFields(TeamLog.PaperChangeMemberPolicyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("paper_change_member_policy_details") + return .dictionary(d) + case .paperChangePolicyDetails(let arg): + var d = try Serialization.getFields(TeamLog.PaperChangePolicyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("paper_change_policy_details") + return .dictionary(d) + case .paperDefaultFolderPolicyChangedDetails(let arg): + var d = try Serialization.getFields(TeamLog.PaperDefaultFolderPolicyChangedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("paper_default_folder_policy_changed_details") + return .dictionary(d) + case .paperDesktopPolicyChangedDetails(let arg): + var d = try Serialization.getFields(TeamLog.PaperDesktopPolicyChangedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("paper_desktop_policy_changed_details") + return .dictionary(d) + case .paperEnabledUsersGroupAdditionDetails(let arg): + var d = try Serialization.getFields(TeamLog.PaperEnabledUsersGroupAdditionDetailsSerializer().serialize(arg)) + d[".tag"] = .str("paper_enabled_users_group_addition_details") + return .dictionary(d) + case .paperEnabledUsersGroupRemovalDetails(let arg): + var d = try Serialization.getFields(TeamLog.PaperEnabledUsersGroupRemovalDetailsSerializer().serialize(arg)) + d[".tag"] = .str("paper_enabled_users_group_removal_details") + return .dictionary(d) + case .passkeyLoginPolicyChangedDetails(let arg): + var d = try Serialization.getFields(TeamLog.PasskeyLoginPolicyChangedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("passkey_login_policy_changed_details") + return .dictionary(d) + case .passwordStrengthRequirementsChangePolicyDetails(let arg): + var d = try Serialization.getFields(TeamLog.PasswordStrengthRequirementsChangePolicyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("password_strength_requirements_change_policy_details") + return .dictionary(d) + case .permanentDeleteChangePolicyDetails(let arg): + var d = try Serialization.getFields(TeamLog.PermanentDeleteChangePolicyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("permanent_delete_change_policy_details") + return .dictionary(d) + case .previewsAiPolicyChangedDetails(let arg): + var d = try Serialization.getFields(TeamLog.PreviewsAiPolicyChangedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("previews_ai_policy_changed_details") + return .dictionary(d) + case .replayAddingPeoplePolicyChangedDetails(let arg): + var d = try Serialization.getFields(TeamLog.ReplayAddingPeoplePolicyChangedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("replay_adding_people_policy_changed_details") + return .dictionary(d) + case .replaySharingPolicyChangedDetails(let arg): + var d = try Serialization.getFields(TeamLog.ReplaySharingPolicyChangedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("replay_sharing_policy_changed_details") + return .dictionary(d) + case .resellerSupportChangePolicyDetails(let arg): + var d = try Serialization.getFields(TeamLog.ResellerSupportChangePolicyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("reseller_support_change_policy_details") + return .dictionary(d) + case .rewindPolicyChangedDetails(let arg): + var d = try Serialization.getFields(TeamLog.RewindPolicyChangedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("rewind_policy_changed_details") + return .dictionary(d) + case .sendAndTrackPolicyChangedDetails(let arg): + var d = try Serialization.getFields(TeamLog.SendAndTrackPolicyChangedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("send_and_track_policy_changed_details") + return .dictionary(d) + case .sendExternalSharingPolicyChangedDetails(let arg): + var d = try Serialization.getFields(TeamLog.SendExternalSharingPolicyChangedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("send_external_sharing_policy_changed_details") + return .dictionary(d) + case .sendForSignaturePolicyChangedDetails(let arg): + var d = try Serialization.getFields(TeamLog.SendForSignaturePolicyChangedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("send_for_signature_policy_changed_details") + return .dictionary(d) + case .sharedLinkDefaultPermissionsPolicyChangedDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharedLinkDefaultPermissionsPolicyChangedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("shared_link_default_permissions_policy_changed_details") + return .dictionary(d) + case .sharingChangeFolderJoinPolicyDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharingChangeFolderJoinPolicyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("sharing_change_folder_join_policy_details") + return .dictionary(d) + case .sharingChangeLinkAllowChangeExpirationPolicyDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharingChangeLinkAllowChangeExpirationPolicyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("sharing_change_link_allow_change_expiration_policy_details") + return .dictionary(d) + case .sharingChangeLinkDefaultExpirationPolicyDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharingChangeLinkDefaultExpirationPolicyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("sharing_change_link_default_expiration_policy_details") + return .dictionary(d) + case .sharingChangeLinkEnforcePasswordPolicyDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharingChangeLinkEnforcePasswordPolicyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("sharing_change_link_enforce_password_policy_details") + return .dictionary(d) + case .sharingChangeLinkPolicyDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharingChangeLinkPolicyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("sharing_change_link_policy_details") + return .dictionary(d) + case .sharingChangeMemberPolicyDetails(let arg): + var d = try Serialization.getFields(TeamLog.SharingChangeMemberPolicyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("sharing_change_member_policy_details") + return .dictionary(d) + case .showcaseChangeDownloadPolicyDetails(let arg): + var d = try Serialization.getFields(TeamLog.ShowcaseChangeDownloadPolicyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("showcase_change_download_policy_details") + return .dictionary(d) + case .showcaseChangeEnabledPolicyDetails(let arg): + var d = try Serialization.getFields(TeamLog.ShowcaseChangeEnabledPolicyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("showcase_change_enabled_policy_details") + return .dictionary(d) + case .showcaseChangeExternalSharingPolicyDetails(let arg): + var d = try Serialization.getFields(TeamLog.ShowcaseChangeExternalSharingPolicyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("showcase_change_external_sharing_policy_details") + return .dictionary(d) + case .signExternalSharingPolicyChangedDetails(let arg): + var d = try Serialization.getFields(TeamLog.SignExternalSharingPolicyChangedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("sign_external_sharing_policy_changed_details") + return .dictionary(d) + case .signTemplateCreationPermissionChangedDetails(let arg): + var d = try Serialization.getFields(TeamLog.SignTemplateCreationPermissionChangedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("sign_template_creation_permission_changed_details") + return .dictionary(d) + case .smarterSmartSyncPolicyChangedDetails(let arg): + var d = try Serialization.getFields(TeamLog.SmarterSmartSyncPolicyChangedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("smarter_smart_sync_policy_changed_details") + return .dictionary(d) + case .smartSyncChangePolicyDetails(let arg): + var d = try Serialization.getFields(TeamLog.SmartSyncChangePolicyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("smart_sync_change_policy_details") + return .dictionary(d) + case .smartSyncNotOptOutDetails(let arg): + var d = try Serialization.getFields(TeamLog.SmartSyncNotOptOutDetailsSerializer().serialize(arg)) + d[".tag"] = .str("smart_sync_not_opt_out_details") + return .dictionary(d) + case .smartSyncOptOutDetails(let arg): + var d = try Serialization.getFields(TeamLog.SmartSyncOptOutDetailsSerializer().serialize(arg)) + d[".tag"] = .str("smart_sync_opt_out_details") + return .dictionary(d) + case .ssoChangePolicyDetails(let arg): + var d = try Serialization.getFields(TeamLog.SsoChangePolicyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("sso_change_policy_details") + return .dictionary(d) + case .stackCrossTeamAccessPolicyChangedDetails(let arg): + var d = try Serialization.getFields(TeamLog.StackCrossTeamAccessPolicyChangedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("stack_cross_team_access_policy_changed_details") + return .dictionary(d) + case .teamBrandingPolicyChangedDetails(let arg): + var d = try Serialization.getFields(TeamLog.TeamBrandingPolicyChangedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("team_branding_policy_changed_details") + return .dictionary(d) + case .teamExtensionsPolicyChangedDetails(let arg): + var d = try Serialization.getFields(TeamLog.TeamExtensionsPolicyChangedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("team_extensions_policy_changed_details") + return .dictionary(d) + case .teamMemberStorageRequestPolicyChangedDetails(let arg): + var d = try Serialization.getFields(TeamLog.TeamMemberStorageRequestPolicyChangedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("team_member_storage_request_policy_changed_details") + return .dictionary(d) + case .teamSelectiveSyncPolicyChangedDetails(let arg): + var d = try Serialization.getFields(TeamLog.TeamSelectiveSyncPolicyChangedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("team_selective_sync_policy_changed_details") + return .dictionary(d) + case .teamSharingWhitelistSubjectsChangedDetails(let arg): + var d = try Serialization.getFields(TeamLog.TeamSharingWhitelistSubjectsChangedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("team_sharing_whitelist_subjects_changed_details") + return .dictionary(d) + case .tfaAddExceptionDetails(let arg): + var d = try Serialization.getFields(TeamLog.TfaAddExceptionDetailsSerializer().serialize(arg)) + d[".tag"] = .str("tfa_add_exception_details") + return .dictionary(d) + case .tfaChangePolicyDetails(let arg): + var d = try Serialization.getFields(TeamLog.TfaChangePolicyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("tfa_change_policy_details") + return .dictionary(d) + case .tfaRemoveExceptionDetails(let arg): + var d = try Serialization.getFields(TeamLog.TfaRemoveExceptionDetailsSerializer().serialize(arg)) + d[".tag"] = .str("tfa_remove_exception_details") + return .dictionary(d) + case .topLevelContentPolicyChangedDetails(let arg): + var d = try Serialization.getFields(TeamLog.TopLevelContentPolicyChangedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("top_level_content_policy_changed_details") + return .dictionary(d) + case .twoAccountChangePolicyDetails(let arg): + var d = try Serialization.getFields(TeamLog.TwoAccountChangePolicyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("two_account_change_policy_details") + return .dictionary(d) + case .viewerInfoPolicyChangedDetails(let arg): + var d = try Serialization.getFields(TeamLog.ViewerInfoPolicyChangedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("viewer_info_policy_changed_details") + return .dictionary(d) + case .watermarkingPolicyChangedDetails(let arg): + var d = try Serialization.getFields(TeamLog.WatermarkingPolicyChangedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("watermarking_policy_changed_details") + return .dictionary(d) + case .webSessionsChangeActiveSessionLimitDetails(let arg): + var d = try Serialization.getFields(TeamLog.WebSessionsChangeActiveSessionLimitDetailsSerializer().serialize(arg)) + d[".tag"] = .str("web_sessions_change_active_session_limit_details") + return .dictionary(d) + case .webSessionsChangeFixedLengthPolicyDetails(let arg): + var d = try Serialization.getFields(TeamLog.WebSessionsChangeFixedLengthPolicyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("web_sessions_change_fixed_length_policy_details") + return .dictionary(d) + case .webSessionsChangeIdleLengthPolicyDetails(let arg): + var d = try Serialization.getFields(TeamLog.WebSessionsChangeIdleLengthPolicyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("web_sessions_change_idle_length_policy_details") + return .dictionary(d) + case .dataResidencyMigrationRequestSuccessfulDetails(let arg): + var d = try Serialization.getFields(TeamLog.DataResidencyMigrationRequestSuccessfulDetailsSerializer().serialize(arg)) + d[".tag"] = .str("data_residency_migration_request_successful_details") + return .dictionary(d) + case .dataResidencyMigrationRequestUnsuccessfulDetails(let arg): + var d = try Serialization.getFields(TeamLog.DataResidencyMigrationRequestUnsuccessfulDetailsSerializer().serialize(arg)) + d[".tag"] = .str("data_residency_migration_request_unsuccessful_details") + return .dictionary(d) + case .teamMergeFromDetails(let arg): + var d = try Serialization.getFields(TeamLog.TeamMergeFromDetailsSerializer().serialize(arg)) + d[".tag"] = .str("team_merge_from_details") + return .dictionary(d) + case .teamMergeToDetails(let arg): + var d = try Serialization.getFields(TeamLog.TeamMergeToDetailsSerializer().serialize(arg)) + d[".tag"] = .str("team_merge_to_details") + return .dictionary(d) + case .teamProfileAddBackgroundDetails(let arg): + var d = try Serialization.getFields(TeamLog.TeamProfileAddBackgroundDetailsSerializer().serialize(arg)) + d[".tag"] = .str("team_profile_add_background_details") + return .dictionary(d) + case .teamProfileAddLogoDetails(let arg): + var d = try Serialization.getFields(TeamLog.TeamProfileAddLogoDetailsSerializer().serialize(arg)) + d[".tag"] = .str("team_profile_add_logo_details") + return .dictionary(d) + case .teamProfileChangeBackgroundDetails(let arg): + var d = try Serialization.getFields(TeamLog.TeamProfileChangeBackgroundDetailsSerializer().serialize(arg)) + d[".tag"] = .str("team_profile_change_background_details") + return .dictionary(d) + case .teamProfileChangeDefaultLanguageDetails(let arg): + var d = try Serialization.getFields(TeamLog.TeamProfileChangeDefaultLanguageDetailsSerializer().serialize(arg)) + d[".tag"] = .str("team_profile_change_default_language_details") + return .dictionary(d) + case .teamProfileChangeLogoDetails(let arg): + var d = try Serialization.getFields(TeamLog.TeamProfileChangeLogoDetailsSerializer().serialize(arg)) + d[".tag"] = .str("team_profile_change_logo_details") + return .dictionary(d) + case .teamProfileChangeNameDetails(let arg): + var d = try Serialization.getFields(TeamLog.TeamProfileChangeNameDetailsSerializer().serialize(arg)) + d[".tag"] = .str("team_profile_change_name_details") + return .dictionary(d) + case .teamProfileRemoveBackgroundDetails(let arg): + var d = try Serialization.getFields(TeamLog.TeamProfileRemoveBackgroundDetailsSerializer().serialize(arg)) + d[".tag"] = .str("team_profile_remove_background_details") + return .dictionary(d) + case .teamProfileRemoveLogoDetails(let arg): + var d = try Serialization.getFields(TeamLog.TeamProfileRemoveLogoDetailsSerializer().serialize(arg)) + d[".tag"] = .str("team_profile_remove_logo_details") + return .dictionary(d) + case .passkeyAddDetails(let arg): + var d = try Serialization.getFields(TeamLog.PasskeyAddDetailsSerializer().serialize(arg)) + d[".tag"] = .str("passkey_add_details") + return .dictionary(d) + case .passkeyRemoveDetails(let arg): + var d = try Serialization.getFields(TeamLog.PasskeyRemoveDetailsSerializer().serialize(arg)) + d[".tag"] = .str("passkey_remove_details") + return .dictionary(d) + case .tfaAddBackupPhoneDetails(let arg): + var d = try Serialization.getFields(TeamLog.TfaAddBackupPhoneDetailsSerializer().serialize(arg)) + d[".tag"] = .str("tfa_add_backup_phone_details") + return .dictionary(d) + case .tfaAddSecurityKeyDetails(let arg): + var d = try Serialization.getFields(TeamLog.TfaAddSecurityKeyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("tfa_add_security_key_details") + return .dictionary(d) + case .tfaChangeBackupPhoneDetails(let arg): + var d = try Serialization.getFields(TeamLog.TfaChangeBackupPhoneDetailsSerializer().serialize(arg)) + d[".tag"] = .str("tfa_change_backup_phone_details") + return .dictionary(d) + case .tfaChangeStatusDetails(let arg): + var d = try Serialization.getFields(TeamLog.TfaChangeStatusDetailsSerializer().serialize(arg)) + d[".tag"] = .str("tfa_change_status_details") + return .dictionary(d) + case .tfaRemoveBackupPhoneDetails(let arg): + var d = try Serialization.getFields(TeamLog.TfaRemoveBackupPhoneDetailsSerializer().serialize(arg)) + d[".tag"] = .str("tfa_remove_backup_phone_details") + return .dictionary(d) + case .tfaRemoveSecurityKeyDetails(let arg): + var d = try Serialization.getFields(TeamLog.TfaRemoveSecurityKeyDetailsSerializer().serialize(arg)) + d[".tag"] = .str("tfa_remove_security_key_details") + return .dictionary(d) + case .tfaResetDetails(let arg): + var d = try Serialization.getFields(TeamLog.TfaResetDetailsSerializer().serialize(arg)) + d[".tag"] = .str("tfa_reset_details") + return .dictionary(d) + case .changedEnterpriseAdminRoleDetails(let arg): + var d = try Serialization.getFields(TeamLog.ChangedEnterpriseAdminRoleDetailsSerializer().serialize(arg)) + d[".tag"] = .str("changed_enterprise_admin_role_details") + return .dictionary(d) + case .changedEnterpriseConnectedTeamStatusDetails(let arg): + var d = try Serialization.getFields(TeamLog.ChangedEnterpriseConnectedTeamStatusDetailsSerializer().serialize(arg)) + d[".tag"] = .str("changed_enterprise_connected_team_status_details") + return .dictionary(d) + case .endedEnterpriseAdminSessionDetails(let arg): + var d = try Serialization.getFields(TeamLog.EndedEnterpriseAdminSessionDetailsSerializer().serialize(arg)) + d[".tag"] = .str("ended_enterprise_admin_session_details") + return .dictionary(d) + case .endedEnterpriseAdminSessionDeprecatedDetails(let arg): + var d = try Serialization.getFields(TeamLog.EndedEnterpriseAdminSessionDeprecatedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("ended_enterprise_admin_session_deprecated_details") + return .dictionary(d) + case .enterpriseSettingsLockingDetails(let arg): + var d = try Serialization.getFields(TeamLog.EnterpriseSettingsLockingDetailsSerializer().serialize(arg)) + d[".tag"] = .str("enterprise_settings_locking_details") + return .dictionary(d) + case .guestAdminChangeStatusDetails(let arg): + var d = try Serialization.getFields(TeamLog.GuestAdminChangeStatusDetailsSerializer().serialize(arg)) + d[".tag"] = .str("guest_admin_change_status_details") + return .dictionary(d) + case .startedEnterpriseAdminSessionDetails(let arg): + var d = try Serialization.getFields(TeamLog.StartedEnterpriseAdminSessionDetailsSerializer().serialize(arg)) + d[".tag"] = .str("started_enterprise_admin_session_details") + return .dictionary(d) + case .teamMergeRequestAcceptedDetails(let arg): + var d = try Serialization.getFields(TeamLog.TeamMergeRequestAcceptedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("team_merge_request_accepted_details") + return .dictionary(d) + case .teamMergeRequestAcceptedShownToPrimaryTeamDetails(let arg): + var d = try Serialization.getFields(TeamLog.TeamMergeRequestAcceptedShownToPrimaryTeamDetailsSerializer().serialize(arg)) + d[".tag"] = .str("team_merge_request_accepted_shown_to_primary_team_details") + return .dictionary(d) + case .teamMergeRequestAcceptedShownToSecondaryTeamDetails(let arg): + var d = try Serialization.getFields(TeamLog.TeamMergeRequestAcceptedShownToSecondaryTeamDetailsSerializer().serialize(arg)) + d[".tag"] = .str("team_merge_request_accepted_shown_to_secondary_team_details") + return .dictionary(d) + case .teamMergeRequestAutoCanceledDetails(let arg): + var d = try Serialization.getFields(TeamLog.TeamMergeRequestAutoCanceledDetailsSerializer().serialize(arg)) + d[".tag"] = .str("team_merge_request_auto_canceled_details") + return .dictionary(d) + case .teamMergeRequestCanceledDetails(let arg): + var d = try Serialization.getFields(TeamLog.TeamMergeRequestCanceledDetailsSerializer().serialize(arg)) + d[".tag"] = .str("team_merge_request_canceled_details") + return .dictionary(d) + case .teamMergeRequestCanceledShownToPrimaryTeamDetails(let arg): + var d = try Serialization.getFields(TeamLog.TeamMergeRequestCanceledShownToPrimaryTeamDetailsSerializer().serialize(arg)) + d[".tag"] = .str("team_merge_request_canceled_shown_to_primary_team_details") + return .dictionary(d) + case .teamMergeRequestCanceledShownToSecondaryTeamDetails(let arg): + var d = try Serialization.getFields(TeamLog.TeamMergeRequestCanceledShownToSecondaryTeamDetailsSerializer().serialize(arg)) + d[".tag"] = .str("team_merge_request_canceled_shown_to_secondary_team_details") + return .dictionary(d) + case .teamMergeRequestExpiredDetails(let arg): + var d = try Serialization.getFields(TeamLog.TeamMergeRequestExpiredDetailsSerializer().serialize(arg)) + d[".tag"] = .str("team_merge_request_expired_details") + return .dictionary(d) + case .teamMergeRequestExpiredShownToPrimaryTeamDetails(let arg): + var d = try Serialization.getFields(TeamLog.TeamMergeRequestExpiredShownToPrimaryTeamDetailsSerializer().serialize(arg)) + d[".tag"] = .str("team_merge_request_expired_shown_to_primary_team_details") + return .dictionary(d) + case .teamMergeRequestExpiredShownToSecondaryTeamDetails(let arg): + var d = try Serialization.getFields(TeamLog.TeamMergeRequestExpiredShownToSecondaryTeamDetailsSerializer().serialize(arg)) + d[".tag"] = .str("team_merge_request_expired_shown_to_secondary_team_details") + return .dictionary(d) + case .teamMergeRequestRejectedShownToPrimaryTeamDetails(let arg): + var d = try Serialization.getFields(TeamLog.TeamMergeRequestRejectedShownToPrimaryTeamDetailsSerializer().serialize(arg)) + d[".tag"] = .str("team_merge_request_rejected_shown_to_primary_team_details") + return .dictionary(d) + case .teamMergeRequestRejectedShownToSecondaryTeamDetails(let arg): + var d = try Serialization.getFields(TeamLog.TeamMergeRequestRejectedShownToSecondaryTeamDetailsSerializer().serialize(arg)) + d[".tag"] = .str("team_merge_request_rejected_shown_to_secondary_team_details") + return .dictionary(d) + case .teamMergeRequestReminderDetails(let arg): + var d = try Serialization.getFields(TeamLog.TeamMergeRequestReminderDetailsSerializer().serialize(arg)) + d[".tag"] = .str("team_merge_request_reminder_details") + return .dictionary(d) + case .teamMergeRequestReminderShownToPrimaryTeamDetails(let arg): + var d = try Serialization.getFields(TeamLog.TeamMergeRequestReminderShownToPrimaryTeamDetailsSerializer().serialize(arg)) + d[".tag"] = .str("team_merge_request_reminder_shown_to_primary_team_details") + return .dictionary(d) + case .teamMergeRequestReminderShownToSecondaryTeamDetails(let arg): + var d = try Serialization.getFields(TeamLog.TeamMergeRequestReminderShownToSecondaryTeamDetailsSerializer().serialize(arg)) + d[".tag"] = .str("team_merge_request_reminder_shown_to_secondary_team_details") + return .dictionary(d) + case .teamMergeRequestRevokedDetails(let arg): + var d = try Serialization.getFields(TeamLog.TeamMergeRequestRevokedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("team_merge_request_revoked_details") + return .dictionary(d) + case .teamMergeRequestSentShownToPrimaryTeamDetails(let arg): + var d = try Serialization.getFields(TeamLog.TeamMergeRequestSentShownToPrimaryTeamDetailsSerializer().serialize(arg)) + d[".tag"] = .str("team_merge_request_sent_shown_to_primary_team_details") + return .dictionary(d) + case .teamMergeRequestSentShownToSecondaryTeamDetails(let arg): + var d = try Serialization.getFields(TeamLog.TeamMergeRequestSentShownToSecondaryTeamDetailsSerializer().serialize(arg)) + d[".tag"] = .str("team_merge_request_sent_shown_to_secondary_team_details") + return .dictionary(d) + case .missingDetails(let arg): + var d = try Serialization.getFields(TeamLog.MissingDetailsSerializer().serialize(arg)) + d[".tag"] = .str("missing_details") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) } } - public func deserialize(_ json: JSON) throws -> EventDetails { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "admin_alerting_alert_state_changed_details": - let v = try TeamLog.AdminAlertingAlertStateChangedDetailsSerializer().deserialize(json) - return EventDetails.adminAlertingAlertStateChangedDetails(v) - case "admin_alerting_changed_alert_config_details": - let v = try TeamLog.AdminAlertingChangedAlertConfigDetailsSerializer().deserialize(json) - return EventDetails.adminAlertingChangedAlertConfigDetails(v) - case "admin_alerting_triggered_alert_details": - let v = try TeamLog.AdminAlertingTriggeredAlertDetailsSerializer().deserialize(json) - return EventDetails.adminAlertingTriggeredAlertDetails(v) - case "ransomware_restore_process_completed_details": - let v = try TeamLog.RansomwareRestoreProcessCompletedDetailsSerializer().deserialize(json) - return EventDetails.ransomwareRestoreProcessCompletedDetails(v) - case "ransomware_restore_process_started_details": - let v = try TeamLog.RansomwareRestoreProcessStartedDetailsSerializer().deserialize(json) - return EventDetails.ransomwareRestoreProcessStartedDetails(v) - case "app_blocked_by_permissions_details": - let v = try TeamLog.AppBlockedByPermissionsDetailsSerializer().deserialize(json) - return EventDetails.appBlockedByPermissionsDetails(v) - case "app_link_team_details": - let v = try TeamLog.AppLinkTeamDetailsSerializer().deserialize(json) - return EventDetails.appLinkTeamDetails(v) - case "app_link_user_details": - let v = try TeamLog.AppLinkUserDetailsSerializer().deserialize(json) - return EventDetails.appLinkUserDetails(v) - case "app_unlink_team_details": - let v = try TeamLog.AppUnlinkTeamDetailsSerializer().deserialize(json) - return EventDetails.appUnlinkTeamDetails(v) - case "app_unlink_user_details": - let v = try TeamLog.AppUnlinkUserDetailsSerializer().deserialize(json) - return EventDetails.appUnlinkUserDetails(v) - case "integration_connected_details": - let v = try TeamLog.IntegrationConnectedDetailsSerializer().deserialize(json) - return EventDetails.integrationConnectedDetails(v) - case "integration_disconnected_details": - let v = try TeamLog.IntegrationDisconnectedDetailsSerializer().deserialize(json) - return EventDetails.integrationDisconnectedDetails(v) - case "file_add_comment_details": - let v = try TeamLog.FileAddCommentDetailsSerializer().deserialize(json) - return EventDetails.fileAddCommentDetails(v) - case "file_change_comment_subscription_details": - let v = try TeamLog.FileChangeCommentSubscriptionDetailsSerializer().deserialize(json) - return EventDetails.fileChangeCommentSubscriptionDetails(v) - case "file_delete_comment_details": - let v = try TeamLog.FileDeleteCommentDetailsSerializer().deserialize(json) - return EventDetails.fileDeleteCommentDetails(v) - case "file_edit_comment_details": - let v = try TeamLog.FileEditCommentDetailsSerializer().deserialize(json) - return EventDetails.fileEditCommentDetails(v) - case "file_like_comment_details": - let v = try TeamLog.FileLikeCommentDetailsSerializer().deserialize(json) - return EventDetails.fileLikeCommentDetails(v) - case "file_resolve_comment_details": - let v = try TeamLog.FileResolveCommentDetailsSerializer().deserialize(json) - return EventDetails.fileResolveCommentDetails(v) - case "file_unlike_comment_details": - let v = try TeamLog.FileUnlikeCommentDetailsSerializer().deserialize(json) - return EventDetails.fileUnlikeCommentDetails(v) - case "file_unresolve_comment_details": - let v = try TeamLog.FileUnresolveCommentDetailsSerializer().deserialize(json) - return EventDetails.fileUnresolveCommentDetails(v) - case "governance_policy_add_folders_details": - let v = try TeamLog.GovernancePolicyAddFoldersDetailsSerializer().deserialize(json) - return EventDetails.governancePolicyAddFoldersDetails(v) - case "governance_policy_add_folder_failed_details": - let v = try TeamLog.GovernancePolicyAddFolderFailedDetailsSerializer().deserialize(json) - return EventDetails.governancePolicyAddFolderFailedDetails(v) - case "governance_policy_content_disposed_details": - let v = try TeamLog.GovernancePolicyContentDisposedDetailsSerializer().deserialize(json) - return EventDetails.governancePolicyContentDisposedDetails(v) - case "governance_policy_create_details": - let v = try TeamLog.GovernancePolicyCreateDetailsSerializer().deserialize(json) - return EventDetails.governancePolicyCreateDetails(v) - case "governance_policy_delete_details": - let v = try TeamLog.GovernancePolicyDeleteDetailsSerializer().deserialize(json) - return EventDetails.governancePolicyDeleteDetails(v) - case "governance_policy_edit_details_details": - let v = try TeamLog.GovernancePolicyEditDetailsDetailsSerializer().deserialize(json) - return EventDetails.governancePolicyEditDetailsDetails(v) - case "governance_policy_edit_duration_details": - let v = try TeamLog.GovernancePolicyEditDurationDetailsSerializer().deserialize(json) - return EventDetails.governancePolicyEditDurationDetails(v) - case "governance_policy_export_created_details": - let v = try TeamLog.GovernancePolicyExportCreatedDetailsSerializer().deserialize(json) - return EventDetails.governancePolicyExportCreatedDetails(v) - case "governance_policy_export_removed_details": - let v = try TeamLog.GovernancePolicyExportRemovedDetailsSerializer().deserialize(json) - return EventDetails.governancePolicyExportRemovedDetails(v) - case "governance_policy_remove_folders_details": - let v = try TeamLog.GovernancePolicyRemoveFoldersDetailsSerializer().deserialize(json) - return EventDetails.governancePolicyRemoveFoldersDetails(v) - case "governance_policy_report_created_details": - let v = try TeamLog.GovernancePolicyReportCreatedDetailsSerializer().deserialize(json) - return EventDetails.governancePolicyReportCreatedDetails(v) - case "governance_policy_zip_part_downloaded_details": - let v = try TeamLog.GovernancePolicyZipPartDownloadedDetailsSerializer().deserialize(json) - return EventDetails.governancePolicyZipPartDownloadedDetails(v) - case "legal_holds_activate_a_hold_details": - let v = try TeamLog.LegalHoldsActivateAHoldDetailsSerializer().deserialize(json) - return EventDetails.legalHoldsActivateAHoldDetails(v) - case "legal_holds_add_members_details": - let v = try TeamLog.LegalHoldsAddMembersDetailsSerializer().deserialize(json) - return EventDetails.legalHoldsAddMembersDetails(v) - case "legal_holds_change_hold_details_details": - let v = try TeamLog.LegalHoldsChangeHoldDetailsDetailsSerializer().deserialize(json) - return EventDetails.legalHoldsChangeHoldDetailsDetails(v) - case "legal_holds_change_hold_name_details": - let v = try TeamLog.LegalHoldsChangeHoldNameDetailsSerializer().deserialize(json) - return EventDetails.legalHoldsChangeHoldNameDetails(v) - case "legal_holds_export_a_hold_details": - let v = try TeamLog.LegalHoldsExportAHoldDetailsSerializer().deserialize(json) - return EventDetails.legalHoldsExportAHoldDetails(v) - case "legal_holds_export_cancelled_details": - let v = try TeamLog.LegalHoldsExportCancelledDetailsSerializer().deserialize(json) - return EventDetails.legalHoldsExportCancelledDetails(v) - case "legal_holds_export_downloaded_details": - let v = try TeamLog.LegalHoldsExportDownloadedDetailsSerializer().deserialize(json) - return EventDetails.legalHoldsExportDownloadedDetails(v) - case "legal_holds_export_removed_details": - let v = try TeamLog.LegalHoldsExportRemovedDetailsSerializer().deserialize(json) - return EventDetails.legalHoldsExportRemovedDetails(v) - case "legal_holds_release_a_hold_details": - let v = try TeamLog.LegalHoldsReleaseAHoldDetailsSerializer().deserialize(json) - return EventDetails.legalHoldsReleaseAHoldDetails(v) - case "legal_holds_remove_members_details": - let v = try TeamLog.LegalHoldsRemoveMembersDetailsSerializer().deserialize(json) - return EventDetails.legalHoldsRemoveMembersDetails(v) - case "legal_holds_report_a_hold_details": - let v = try TeamLog.LegalHoldsReportAHoldDetailsSerializer().deserialize(json) - return EventDetails.legalHoldsReportAHoldDetails(v) - case "device_change_ip_desktop_details": - let v = try TeamLog.DeviceChangeIpDesktopDetailsSerializer().deserialize(json) - return EventDetails.deviceChangeIpDesktopDetails(v) - case "device_change_ip_mobile_details": - let v = try TeamLog.DeviceChangeIpMobileDetailsSerializer().deserialize(json) - return EventDetails.deviceChangeIpMobileDetails(v) - case "device_change_ip_web_details": - let v = try TeamLog.DeviceChangeIpWebDetailsSerializer().deserialize(json) - return EventDetails.deviceChangeIpWebDetails(v) - case "device_delete_on_unlink_fail_details": - let v = try TeamLog.DeviceDeleteOnUnlinkFailDetailsSerializer().deserialize(json) - return EventDetails.deviceDeleteOnUnlinkFailDetails(v) - case "device_delete_on_unlink_success_details": - let v = try TeamLog.DeviceDeleteOnUnlinkSuccessDetailsSerializer().deserialize(json) - return EventDetails.deviceDeleteOnUnlinkSuccessDetails(v) - case "device_link_fail_details": - let v = try TeamLog.DeviceLinkFailDetailsSerializer().deserialize(json) - return EventDetails.deviceLinkFailDetails(v) - case "device_link_success_details": - let v = try TeamLog.DeviceLinkSuccessDetailsSerializer().deserialize(json) - return EventDetails.deviceLinkSuccessDetails(v) - case "device_management_disabled_details": - let v = try TeamLog.DeviceManagementDisabledDetailsSerializer().deserialize(json) - return EventDetails.deviceManagementDisabledDetails(v) - case "device_management_enabled_details": - let v = try TeamLog.DeviceManagementEnabledDetailsSerializer().deserialize(json) - return EventDetails.deviceManagementEnabledDetails(v) - case "device_sync_backup_status_changed_details": - let v = try TeamLog.DeviceSyncBackupStatusChangedDetailsSerializer().deserialize(json) - return EventDetails.deviceSyncBackupStatusChangedDetails(v) - case "device_unlink_details": - let v = try TeamLog.DeviceUnlinkDetailsSerializer().deserialize(json) - return EventDetails.deviceUnlinkDetails(v) - case "dropbox_passwords_exported_details": - let v = try TeamLog.DropboxPasswordsExportedDetailsSerializer().deserialize(json) - return EventDetails.dropboxPasswordsExportedDetails(v) - case "dropbox_passwords_new_device_enrolled_details": - let v = try TeamLog.DropboxPasswordsNewDeviceEnrolledDetailsSerializer().deserialize(json) - return EventDetails.dropboxPasswordsNewDeviceEnrolledDetails(v) - case "emm_refresh_auth_token_details": - let v = try TeamLog.EmmRefreshAuthTokenDetailsSerializer().deserialize(json) - return EventDetails.emmRefreshAuthTokenDetails(v) - case "external_drive_backup_eligibility_status_checked_details": - let v = try TeamLog.ExternalDriveBackupEligibilityStatusCheckedDetailsSerializer().deserialize(json) - return EventDetails.externalDriveBackupEligibilityStatusCheckedDetails(v) - case "external_drive_backup_status_changed_details": - let v = try TeamLog.ExternalDriveBackupStatusChangedDetailsSerializer().deserialize(json) - return EventDetails.externalDriveBackupStatusChangedDetails(v) - case "account_capture_change_availability_details": - let v = try TeamLog.AccountCaptureChangeAvailabilityDetailsSerializer().deserialize(json) - return EventDetails.accountCaptureChangeAvailabilityDetails(v) - case "account_capture_migrate_account_details": - let v = try TeamLog.AccountCaptureMigrateAccountDetailsSerializer().deserialize(json) - return EventDetails.accountCaptureMigrateAccountDetails(v) - case "account_capture_notification_emails_sent_details": - let v = try TeamLog.AccountCaptureNotificationEmailsSentDetailsSerializer().deserialize(json) - return EventDetails.accountCaptureNotificationEmailsSentDetails(v) - case "account_capture_relinquish_account_details": - let v = try TeamLog.AccountCaptureRelinquishAccountDetailsSerializer().deserialize(json) - return EventDetails.accountCaptureRelinquishAccountDetails(v) - case "disabled_domain_invites_details": - let v = try TeamLog.DisabledDomainInvitesDetailsSerializer().deserialize(json) - return EventDetails.disabledDomainInvitesDetails(v) - case "domain_invites_approve_request_to_join_team_details": - let v = try TeamLog.DomainInvitesApproveRequestToJoinTeamDetailsSerializer().deserialize(json) - return EventDetails.domainInvitesApproveRequestToJoinTeamDetails(v) - case "domain_invites_decline_request_to_join_team_details": - let v = try TeamLog.DomainInvitesDeclineRequestToJoinTeamDetailsSerializer().deserialize(json) - return EventDetails.domainInvitesDeclineRequestToJoinTeamDetails(v) - case "domain_invites_email_existing_users_details": - let v = try TeamLog.DomainInvitesEmailExistingUsersDetailsSerializer().deserialize(json) - return EventDetails.domainInvitesEmailExistingUsersDetails(v) - case "domain_invites_request_to_join_team_details": - let v = try TeamLog.DomainInvitesRequestToJoinTeamDetailsSerializer().deserialize(json) - return EventDetails.domainInvitesRequestToJoinTeamDetails(v) - case "domain_invites_set_invite_new_user_pref_to_no_details": - let v = try TeamLog.DomainInvitesSetInviteNewUserPrefToNoDetailsSerializer().deserialize(json) - return EventDetails.domainInvitesSetInviteNewUserPrefToNoDetails(v) - case "domain_invites_set_invite_new_user_pref_to_yes_details": - let v = try TeamLog.DomainInvitesSetInviteNewUserPrefToYesDetailsSerializer().deserialize(json) - return EventDetails.domainInvitesSetInviteNewUserPrefToYesDetails(v) - case "domain_verification_add_domain_fail_details": - let v = try TeamLog.DomainVerificationAddDomainFailDetailsSerializer().deserialize(json) - return EventDetails.domainVerificationAddDomainFailDetails(v) - case "domain_verification_add_domain_success_details": - let v = try TeamLog.DomainVerificationAddDomainSuccessDetailsSerializer().deserialize(json) - return EventDetails.domainVerificationAddDomainSuccessDetails(v) - case "domain_verification_remove_domain_details": - let v = try TeamLog.DomainVerificationRemoveDomainDetailsSerializer().deserialize(json) - return EventDetails.domainVerificationRemoveDomainDetails(v) - case "enabled_domain_invites_details": - let v = try TeamLog.EnabledDomainInvitesDetailsSerializer().deserialize(json) - return EventDetails.enabledDomainInvitesDetails(v) - case "team_encryption_key_cancel_key_deletion_details": - let v = try TeamLog.TeamEncryptionKeyCancelKeyDeletionDetailsSerializer().deserialize(json) - return EventDetails.teamEncryptionKeyCancelKeyDeletionDetails(v) - case "team_encryption_key_create_key_details": - let v = try TeamLog.TeamEncryptionKeyCreateKeyDetailsSerializer().deserialize(json) - return EventDetails.teamEncryptionKeyCreateKeyDetails(v) - case "team_encryption_key_delete_key_details": - let v = try TeamLog.TeamEncryptionKeyDeleteKeyDetailsSerializer().deserialize(json) - return EventDetails.teamEncryptionKeyDeleteKeyDetails(v) - case "team_encryption_key_disable_key_details": - let v = try TeamLog.TeamEncryptionKeyDisableKeyDetailsSerializer().deserialize(json) - return EventDetails.teamEncryptionKeyDisableKeyDetails(v) - case "team_encryption_key_enable_key_details": - let v = try TeamLog.TeamEncryptionKeyEnableKeyDetailsSerializer().deserialize(json) - return EventDetails.teamEncryptionKeyEnableKeyDetails(v) - case "team_encryption_key_rotate_key_details": - let v = try TeamLog.TeamEncryptionKeyRotateKeyDetailsSerializer().deserialize(json) - return EventDetails.teamEncryptionKeyRotateKeyDetails(v) - case "team_encryption_key_schedule_key_deletion_details": - let v = try TeamLog.TeamEncryptionKeyScheduleKeyDeletionDetailsSerializer().deserialize(json) - return EventDetails.teamEncryptionKeyScheduleKeyDeletionDetails(v) - case "apply_naming_convention_details": - let v = try TeamLog.ApplyNamingConventionDetailsSerializer().deserialize(json) - return EventDetails.applyNamingConventionDetails(v) - case "create_folder_details": - let v = try TeamLog.CreateFolderDetailsSerializer().deserialize(json) - return EventDetails.createFolderDetails(v) - case "file_add_details": - let v = try TeamLog.FileAddDetailsSerializer().deserialize(json) - return EventDetails.fileAddDetails(v) - case "file_add_from_automation_details": - let v = try TeamLog.FileAddFromAutomationDetailsSerializer().deserialize(json) - return EventDetails.fileAddFromAutomationDetails(v) - case "file_copy_details": - let v = try TeamLog.FileCopyDetailsSerializer().deserialize(json) - return EventDetails.fileCopyDetails(v) - case "file_delete_details": - let v = try TeamLog.FileDeleteDetailsSerializer().deserialize(json) - return EventDetails.fileDeleteDetails(v) - case "file_download_details": - let v = try TeamLog.FileDownloadDetailsSerializer().deserialize(json) - return EventDetails.fileDownloadDetails(v) - case "file_edit_details": - let v = try TeamLog.FileEditDetailsSerializer().deserialize(json) - return EventDetails.fileEditDetails(v) - case "file_get_copy_reference_details": - let v = try TeamLog.FileGetCopyReferenceDetailsSerializer().deserialize(json) - return EventDetails.fileGetCopyReferenceDetails(v) - case "file_locking_lock_status_changed_details": - let v = try TeamLog.FileLockingLockStatusChangedDetailsSerializer().deserialize(json) - return EventDetails.fileLockingLockStatusChangedDetails(v) - case "file_move_details": - let v = try TeamLog.FileMoveDetailsSerializer().deserialize(json) - return EventDetails.fileMoveDetails(v) - case "file_permanently_delete_details": - let v = try TeamLog.FilePermanentlyDeleteDetailsSerializer().deserialize(json) - return EventDetails.filePermanentlyDeleteDetails(v) - case "file_preview_details": - let v = try TeamLog.FilePreviewDetailsSerializer().deserialize(json) - return EventDetails.filePreviewDetails(v) - case "file_rename_details": - let v = try TeamLog.FileRenameDetailsSerializer().deserialize(json) - return EventDetails.fileRenameDetails(v) - case "file_restore_details": - let v = try TeamLog.FileRestoreDetailsSerializer().deserialize(json) - return EventDetails.fileRestoreDetails(v) - case "file_revert_details": - let v = try TeamLog.FileRevertDetailsSerializer().deserialize(json) - return EventDetails.fileRevertDetails(v) - case "file_rollback_changes_details": - let v = try TeamLog.FileRollbackChangesDetailsSerializer().deserialize(json) - return EventDetails.fileRollbackChangesDetails(v) - case "file_save_copy_reference_details": - let v = try TeamLog.FileSaveCopyReferenceDetailsSerializer().deserialize(json) - return EventDetails.fileSaveCopyReferenceDetails(v) - case "folder_overview_description_changed_details": - let v = try TeamLog.FolderOverviewDescriptionChangedDetailsSerializer().deserialize(json) - return EventDetails.folderOverviewDescriptionChangedDetails(v) - case "folder_overview_item_pinned_details": - let v = try TeamLog.FolderOverviewItemPinnedDetailsSerializer().deserialize(json) - return EventDetails.folderOverviewItemPinnedDetails(v) - case "folder_overview_item_unpinned_details": - let v = try TeamLog.FolderOverviewItemUnpinnedDetailsSerializer().deserialize(json) - return EventDetails.folderOverviewItemUnpinnedDetails(v) - case "object_label_added_details": - let v = try TeamLog.ObjectLabelAddedDetailsSerializer().deserialize(json) - return EventDetails.objectLabelAddedDetails(v) - case "object_label_removed_details": - let v = try TeamLog.ObjectLabelRemovedDetailsSerializer().deserialize(json) - return EventDetails.objectLabelRemovedDetails(v) - case "object_label_updated_value_details": - let v = try TeamLog.ObjectLabelUpdatedValueDetailsSerializer().deserialize(json) - return EventDetails.objectLabelUpdatedValueDetails(v) - case "organize_folder_with_tidy_details": - let v = try TeamLog.OrganizeFolderWithTidyDetailsSerializer().deserialize(json) - return EventDetails.organizeFolderWithTidyDetails(v) - case "replay_file_delete_details": - let v = try TeamLog.ReplayFileDeleteDetailsSerializer().deserialize(json) - return EventDetails.replayFileDeleteDetails(v) - case "rewind_folder_details": - let v = try TeamLog.RewindFolderDetailsSerializer().deserialize(json) - return EventDetails.rewindFolderDetails(v) - case "undo_naming_convention_details": - let v = try TeamLog.UndoNamingConventionDetailsSerializer().deserialize(json) - return EventDetails.undoNamingConventionDetails(v) - case "undo_organize_folder_with_tidy_details": - let v = try TeamLog.UndoOrganizeFolderWithTidyDetailsSerializer().deserialize(json) - return EventDetails.undoOrganizeFolderWithTidyDetails(v) - case "user_tags_added_details": - let v = try TeamLog.UserTagsAddedDetailsSerializer().deserialize(json) - return EventDetails.userTagsAddedDetails(v) - case "user_tags_removed_details": - let v = try TeamLog.UserTagsRemovedDetailsSerializer().deserialize(json) - return EventDetails.userTagsRemovedDetails(v) - case "email_ingest_receive_file_details": - let v = try TeamLog.EmailIngestReceiveFileDetailsSerializer().deserialize(json) - return EventDetails.emailIngestReceiveFileDetails(v) - case "file_request_change_details": - let v = try TeamLog.FileRequestChangeDetailsSerializer().deserialize(json) - return EventDetails.fileRequestChangeDetails(v) - case "file_request_close_details": - let v = try TeamLog.FileRequestCloseDetailsSerializer().deserialize(json) - return EventDetails.fileRequestCloseDetails(v) - case "file_request_create_details": - let v = try TeamLog.FileRequestCreateDetailsSerializer().deserialize(json) - return EventDetails.fileRequestCreateDetails(v) - case "file_request_delete_details": - let v = try TeamLog.FileRequestDeleteDetailsSerializer().deserialize(json) - return EventDetails.fileRequestDeleteDetails(v) - case "file_request_receive_file_details": - let v = try TeamLog.FileRequestReceiveFileDetailsSerializer().deserialize(json) - return EventDetails.fileRequestReceiveFileDetails(v) - case "group_add_external_id_details": - let v = try TeamLog.GroupAddExternalIdDetailsSerializer().deserialize(json) - return EventDetails.groupAddExternalIdDetails(v) - case "group_add_member_details": - let v = try TeamLog.GroupAddMemberDetailsSerializer().deserialize(json) - return EventDetails.groupAddMemberDetails(v) - case "group_change_external_id_details": - let v = try TeamLog.GroupChangeExternalIdDetailsSerializer().deserialize(json) - return EventDetails.groupChangeExternalIdDetails(v) - case "group_change_management_type_details": - let v = try TeamLog.GroupChangeManagementTypeDetailsSerializer().deserialize(json) - return EventDetails.groupChangeManagementTypeDetails(v) - case "group_change_member_role_details": - let v = try TeamLog.GroupChangeMemberRoleDetailsSerializer().deserialize(json) - return EventDetails.groupChangeMemberRoleDetails(v) - case "group_create_details": - let v = try TeamLog.GroupCreateDetailsSerializer().deserialize(json) - return EventDetails.groupCreateDetails(v) - case "group_delete_details": - let v = try TeamLog.GroupDeleteDetailsSerializer().deserialize(json) - return EventDetails.groupDeleteDetails(v) - case "group_description_updated_details": - let v = try TeamLog.GroupDescriptionUpdatedDetailsSerializer().deserialize(json) - return EventDetails.groupDescriptionUpdatedDetails(v) - case "group_join_policy_updated_details": - let v = try TeamLog.GroupJoinPolicyUpdatedDetailsSerializer().deserialize(json) - return EventDetails.groupJoinPolicyUpdatedDetails(v) - case "group_moved_details": - let v = try TeamLog.GroupMovedDetailsSerializer().deserialize(json) - return EventDetails.groupMovedDetails(v) - case "group_remove_external_id_details": - let v = try TeamLog.GroupRemoveExternalIdDetailsSerializer().deserialize(json) - return EventDetails.groupRemoveExternalIdDetails(v) - case "group_remove_member_details": - let v = try TeamLog.GroupRemoveMemberDetailsSerializer().deserialize(json) - return EventDetails.groupRemoveMemberDetails(v) - case "group_rename_details": - let v = try TeamLog.GroupRenameDetailsSerializer().deserialize(json) - return EventDetails.groupRenameDetails(v) - case "account_lock_or_unlocked_details": - let v = try TeamLog.AccountLockOrUnlockedDetailsSerializer().deserialize(json) - return EventDetails.accountLockOrUnlockedDetails(v) - case "emm_error_details": - let v = try TeamLog.EmmErrorDetailsSerializer().deserialize(json) - return EventDetails.emmErrorDetails(v) - case "guest_admin_signed_in_via_trusted_teams_details": - let v = try TeamLog.GuestAdminSignedInViaTrustedTeamsDetailsSerializer().deserialize(json) - return EventDetails.guestAdminSignedInViaTrustedTeamsDetails(v) - case "guest_admin_signed_out_via_trusted_teams_details": - let v = try TeamLog.GuestAdminSignedOutViaTrustedTeamsDetailsSerializer().deserialize(json) - return EventDetails.guestAdminSignedOutViaTrustedTeamsDetails(v) - case "login_fail_details": - let v = try TeamLog.LoginFailDetailsSerializer().deserialize(json) - return EventDetails.loginFailDetails(v) - case "login_success_details": - let v = try TeamLog.LoginSuccessDetailsSerializer().deserialize(json) - return EventDetails.loginSuccessDetails(v) - case "logout_details": - let v = try TeamLog.LogoutDetailsSerializer().deserialize(json) - return EventDetails.logoutDetails(v) - case "reseller_support_session_end_details": - let v = try TeamLog.ResellerSupportSessionEndDetailsSerializer().deserialize(json) - return EventDetails.resellerSupportSessionEndDetails(v) - case "reseller_support_session_start_details": - let v = try TeamLog.ResellerSupportSessionStartDetailsSerializer().deserialize(json) - return EventDetails.resellerSupportSessionStartDetails(v) - case "sign_in_as_session_end_details": - let v = try TeamLog.SignInAsSessionEndDetailsSerializer().deserialize(json) - return EventDetails.signInAsSessionEndDetails(v) - case "sign_in_as_session_start_details": - let v = try TeamLog.SignInAsSessionStartDetailsSerializer().deserialize(json) - return EventDetails.signInAsSessionStartDetails(v) - case "sso_error_details": - let v = try TeamLog.SsoErrorDetailsSerializer().deserialize(json) - return EventDetails.ssoErrorDetails(v) - case "backup_admin_invitation_sent_details": - let v = try TeamLog.BackupAdminInvitationSentDetailsSerializer().deserialize(json) - return EventDetails.backupAdminInvitationSentDetails(v) - case "backup_invitation_opened_details": - let v = try TeamLog.BackupInvitationOpenedDetailsSerializer().deserialize(json) - return EventDetails.backupInvitationOpenedDetails(v) - case "create_team_invite_link_details": - let v = try TeamLog.CreateTeamInviteLinkDetailsSerializer().deserialize(json) - return EventDetails.createTeamInviteLinkDetails(v) - case "delete_team_invite_link_details": - let v = try TeamLog.DeleteTeamInviteLinkDetailsSerializer().deserialize(json) - return EventDetails.deleteTeamInviteLinkDetails(v) - case "member_add_external_id_details": - let v = try TeamLog.MemberAddExternalIdDetailsSerializer().deserialize(json) - return EventDetails.memberAddExternalIdDetails(v) - case "member_add_name_details": - let v = try TeamLog.MemberAddNameDetailsSerializer().deserialize(json) - return EventDetails.memberAddNameDetails(v) - case "member_change_admin_role_details": - let v = try TeamLog.MemberChangeAdminRoleDetailsSerializer().deserialize(json) - return EventDetails.memberChangeAdminRoleDetails(v) - case "member_change_email_details": - let v = try TeamLog.MemberChangeEmailDetailsSerializer().deserialize(json) - return EventDetails.memberChangeEmailDetails(v) - case "member_change_external_id_details": - let v = try TeamLog.MemberChangeExternalIdDetailsSerializer().deserialize(json) - return EventDetails.memberChangeExternalIdDetails(v) - case "member_change_membership_type_details": - let v = try TeamLog.MemberChangeMembershipTypeDetailsSerializer().deserialize(json) - return EventDetails.memberChangeMembershipTypeDetails(v) - case "member_change_name_details": - let v = try TeamLog.MemberChangeNameDetailsSerializer().deserialize(json) - return EventDetails.memberChangeNameDetails(v) - case "member_change_reseller_role_details": - let v = try TeamLog.MemberChangeResellerRoleDetailsSerializer().deserialize(json) - return EventDetails.memberChangeResellerRoleDetails(v) - case "member_change_status_details": - let v = try TeamLog.MemberChangeStatusDetailsSerializer().deserialize(json) - return EventDetails.memberChangeStatusDetails(v) - case "member_delete_manual_contacts_details": - let v = try TeamLog.MemberDeleteManualContactsDetailsSerializer().deserialize(json) - return EventDetails.memberDeleteManualContactsDetails(v) - case "member_delete_profile_photo_details": - let v = try TeamLog.MemberDeleteProfilePhotoDetailsSerializer().deserialize(json) - return EventDetails.memberDeleteProfilePhotoDetails(v) - case "member_permanently_delete_account_contents_details": - let v = try TeamLog.MemberPermanentlyDeleteAccountContentsDetailsSerializer().deserialize(json) - return EventDetails.memberPermanentlyDeleteAccountContentsDetails(v) - case "member_remove_external_id_details": - let v = try TeamLog.MemberRemoveExternalIdDetailsSerializer().deserialize(json) - return EventDetails.memberRemoveExternalIdDetails(v) - case "member_set_profile_photo_details": - let v = try TeamLog.MemberSetProfilePhotoDetailsSerializer().deserialize(json) - return EventDetails.memberSetProfilePhotoDetails(v) - case "member_space_limits_add_custom_quota_details": - let v = try TeamLog.MemberSpaceLimitsAddCustomQuotaDetailsSerializer().deserialize(json) - return EventDetails.memberSpaceLimitsAddCustomQuotaDetails(v) - case "member_space_limits_change_custom_quota_details": - let v = try TeamLog.MemberSpaceLimitsChangeCustomQuotaDetailsSerializer().deserialize(json) - return EventDetails.memberSpaceLimitsChangeCustomQuotaDetails(v) - case "member_space_limits_change_status_details": - let v = try TeamLog.MemberSpaceLimitsChangeStatusDetailsSerializer().deserialize(json) - return EventDetails.memberSpaceLimitsChangeStatusDetails(v) - case "member_space_limits_remove_custom_quota_details": - let v = try TeamLog.MemberSpaceLimitsRemoveCustomQuotaDetailsSerializer().deserialize(json) - return EventDetails.memberSpaceLimitsRemoveCustomQuotaDetails(v) - case "member_suggest_details": - let v = try TeamLog.MemberSuggestDetailsSerializer().deserialize(json) - return EventDetails.memberSuggestDetails(v) - case "member_transfer_account_contents_details": - let v = try TeamLog.MemberTransferAccountContentsDetailsSerializer().deserialize(json) - return EventDetails.memberTransferAccountContentsDetails(v) - case "pending_secondary_email_added_details": - let v = try TeamLog.PendingSecondaryEmailAddedDetailsSerializer().deserialize(json) - return EventDetails.pendingSecondaryEmailAddedDetails(v) - case "secondary_email_deleted_details": - let v = try TeamLog.SecondaryEmailDeletedDetailsSerializer().deserialize(json) - return EventDetails.secondaryEmailDeletedDetails(v) - case "secondary_email_verified_details": - let v = try TeamLog.SecondaryEmailVerifiedDetailsSerializer().deserialize(json) - return EventDetails.secondaryEmailVerifiedDetails(v) - case "secondary_mails_policy_changed_details": - let v = try TeamLog.SecondaryMailsPolicyChangedDetailsSerializer().deserialize(json) - return EventDetails.secondaryMailsPolicyChangedDetails(v) - case "binder_add_page_details": - let v = try TeamLog.BinderAddPageDetailsSerializer().deserialize(json) - return EventDetails.binderAddPageDetails(v) - case "binder_add_section_details": - let v = try TeamLog.BinderAddSectionDetailsSerializer().deserialize(json) - return EventDetails.binderAddSectionDetails(v) - case "binder_remove_page_details": - let v = try TeamLog.BinderRemovePageDetailsSerializer().deserialize(json) - return EventDetails.binderRemovePageDetails(v) - case "binder_remove_section_details": - let v = try TeamLog.BinderRemoveSectionDetailsSerializer().deserialize(json) - return EventDetails.binderRemoveSectionDetails(v) - case "binder_rename_page_details": - let v = try TeamLog.BinderRenamePageDetailsSerializer().deserialize(json) - return EventDetails.binderRenamePageDetails(v) - case "binder_rename_section_details": - let v = try TeamLog.BinderRenameSectionDetailsSerializer().deserialize(json) - return EventDetails.binderRenameSectionDetails(v) - case "binder_reorder_page_details": - let v = try TeamLog.BinderReorderPageDetailsSerializer().deserialize(json) - return EventDetails.binderReorderPageDetails(v) - case "binder_reorder_section_details": - let v = try TeamLog.BinderReorderSectionDetailsSerializer().deserialize(json) - return EventDetails.binderReorderSectionDetails(v) - case "paper_content_add_member_details": - let v = try TeamLog.PaperContentAddMemberDetailsSerializer().deserialize(json) - return EventDetails.paperContentAddMemberDetails(v) - case "paper_content_add_to_folder_details": - let v = try TeamLog.PaperContentAddToFolderDetailsSerializer().deserialize(json) - return EventDetails.paperContentAddToFolderDetails(v) - case "paper_content_archive_details": - let v = try TeamLog.PaperContentArchiveDetailsSerializer().deserialize(json) - return EventDetails.paperContentArchiveDetails(v) - case "paper_content_create_details": - let v = try TeamLog.PaperContentCreateDetailsSerializer().deserialize(json) - return EventDetails.paperContentCreateDetails(v) - case "paper_content_permanently_delete_details": - let v = try TeamLog.PaperContentPermanentlyDeleteDetailsSerializer().deserialize(json) - return EventDetails.paperContentPermanentlyDeleteDetails(v) - case "paper_content_remove_from_folder_details": - let v = try TeamLog.PaperContentRemoveFromFolderDetailsSerializer().deserialize(json) - return EventDetails.paperContentRemoveFromFolderDetails(v) - case "paper_content_remove_member_details": - let v = try TeamLog.PaperContentRemoveMemberDetailsSerializer().deserialize(json) - return EventDetails.paperContentRemoveMemberDetails(v) - case "paper_content_rename_details": - let v = try TeamLog.PaperContentRenameDetailsSerializer().deserialize(json) - return EventDetails.paperContentRenameDetails(v) - case "paper_content_restore_details": - let v = try TeamLog.PaperContentRestoreDetailsSerializer().deserialize(json) - return EventDetails.paperContentRestoreDetails(v) - case "paper_doc_add_comment_details": - let v = try TeamLog.PaperDocAddCommentDetailsSerializer().deserialize(json) - return EventDetails.paperDocAddCommentDetails(v) - case "paper_doc_change_member_role_details": - let v = try TeamLog.PaperDocChangeMemberRoleDetailsSerializer().deserialize(json) - return EventDetails.paperDocChangeMemberRoleDetails(v) - case "paper_doc_change_sharing_policy_details": - let v = try TeamLog.PaperDocChangeSharingPolicyDetailsSerializer().deserialize(json) - return EventDetails.paperDocChangeSharingPolicyDetails(v) - case "paper_doc_change_subscription_details": - let v = try TeamLog.PaperDocChangeSubscriptionDetailsSerializer().deserialize(json) - return EventDetails.paperDocChangeSubscriptionDetails(v) - case "paper_doc_deleted_details": - let v = try TeamLog.PaperDocDeletedDetailsSerializer().deserialize(json) - return EventDetails.paperDocDeletedDetails(v) - case "paper_doc_delete_comment_details": - let v = try TeamLog.PaperDocDeleteCommentDetailsSerializer().deserialize(json) - return EventDetails.paperDocDeleteCommentDetails(v) - case "paper_doc_download_details": - let v = try TeamLog.PaperDocDownloadDetailsSerializer().deserialize(json) - return EventDetails.paperDocDownloadDetails(v) - case "paper_doc_edit_details": - let v = try TeamLog.PaperDocEditDetailsSerializer().deserialize(json) - return EventDetails.paperDocEditDetails(v) - case "paper_doc_edit_comment_details": - let v = try TeamLog.PaperDocEditCommentDetailsSerializer().deserialize(json) - return EventDetails.paperDocEditCommentDetails(v) - case "paper_doc_followed_details": - let v = try TeamLog.PaperDocFollowedDetailsSerializer().deserialize(json) - return EventDetails.paperDocFollowedDetails(v) - case "paper_doc_mention_details": - let v = try TeamLog.PaperDocMentionDetailsSerializer().deserialize(json) - return EventDetails.paperDocMentionDetails(v) - case "paper_doc_ownership_changed_details": - let v = try TeamLog.PaperDocOwnershipChangedDetailsSerializer().deserialize(json) - return EventDetails.paperDocOwnershipChangedDetails(v) - case "paper_doc_request_access_details": - let v = try TeamLog.PaperDocRequestAccessDetailsSerializer().deserialize(json) - return EventDetails.paperDocRequestAccessDetails(v) - case "paper_doc_resolve_comment_details": - let v = try TeamLog.PaperDocResolveCommentDetailsSerializer().deserialize(json) - return EventDetails.paperDocResolveCommentDetails(v) - case "paper_doc_revert_details": - let v = try TeamLog.PaperDocRevertDetailsSerializer().deserialize(json) - return EventDetails.paperDocRevertDetails(v) - case "paper_doc_slack_share_details": - let v = try TeamLog.PaperDocSlackShareDetailsSerializer().deserialize(json) - return EventDetails.paperDocSlackShareDetails(v) - case "paper_doc_team_invite_details": - let v = try TeamLog.PaperDocTeamInviteDetailsSerializer().deserialize(json) - return EventDetails.paperDocTeamInviteDetails(v) - case "paper_doc_trashed_details": - let v = try TeamLog.PaperDocTrashedDetailsSerializer().deserialize(json) - return EventDetails.paperDocTrashedDetails(v) - case "paper_doc_unresolve_comment_details": - let v = try TeamLog.PaperDocUnresolveCommentDetailsSerializer().deserialize(json) - return EventDetails.paperDocUnresolveCommentDetails(v) - case "paper_doc_untrashed_details": - let v = try TeamLog.PaperDocUntrashedDetailsSerializer().deserialize(json) - return EventDetails.paperDocUntrashedDetails(v) - case "paper_doc_view_details": - let v = try TeamLog.PaperDocViewDetailsSerializer().deserialize(json) - return EventDetails.paperDocViewDetails(v) - case "paper_external_view_allow_details": - let v = try TeamLog.PaperExternalViewAllowDetailsSerializer().deserialize(json) - return EventDetails.paperExternalViewAllowDetails(v) - case "paper_external_view_default_team_details": - let v = try TeamLog.PaperExternalViewDefaultTeamDetailsSerializer().deserialize(json) - return EventDetails.paperExternalViewDefaultTeamDetails(v) - case "paper_external_view_forbid_details": - let v = try TeamLog.PaperExternalViewForbidDetailsSerializer().deserialize(json) - return EventDetails.paperExternalViewForbidDetails(v) - case "paper_folder_change_subscription_details": - let v = try TeamLog.PaperFolderChangeSubscriptionDetailsSerializer().deserialize(json) - return EventDetails.paperFolderChangeSubscriptionDetails(v) - case "paper_folder_deleted_details": - let v = try TeamLog.PaperFolderDeletedDetailsSerializer().deserialize(json) - return EventDetails.paperFolderDeletedDetails(v) - case "paper_folder_followed_details": - let v = try TeamLog.PaperFolderFollowedDetailsSerializer().deserialize(json) - return EventDetails.paperFolderFollowedDetails(v) - case "paper_folder_team_invite_details": - let v = try TeamLog.PaperFolderTeamInviteDetailsSerializer().deserialize(json) - return EventDetails.paperFolderTeamInviteDetails(v) - case "paper_published_link_change_permission_details": - let v = try TeamLog.PaperPublishedLinkChangePermissionDetailsSerializer().deserialize(json) - return EventDetails.paperPublishedLinkChangePermissionDetails(v) - case "paper_published_link_create_details": - let v = try TeamLog.PaperPublishedLinkCreateDetailsSerializer().deserialize(json) - return EventDetails.paperPublishedLinkCreateDetails(v) - case "paper_published_link_disabled_details": - let v = try TeamLog.PaperPublishedLinkDisabledDetailsSerializer().deserialize(json) - return EventDetails.paperPublishedLinkDisabledDetails(v) - case "paper_published_link_view_details": - let v = try TeamLog.PaperPublishedLinkViewDetailsSerializer().deserialize(json) - return EventDetails.paperPublishedLinkViewDetails(v) - case "password_change_details": - let v = try TeamLog.PasswordChangeDetailsSerializer().deserialize(json) - return EventDetails.passwordChangeDetails(v) - case "password_reset_details": - let v = try TeamLog.PasswordResetDetailsSerializer().deserialize(json) - return EventDetails.passwordResetDetails(v) - case "password_reset_all_details": - let v = try TeamLog.PasswordResetAllDetailsSerializer().deserialize(json) - return EventDetails.passwordResetAllDetails(v) - case "classification_create_report_details": - let v = try TeamLog.ClassificationCreateReportDetailsSerializer().deserialize(json) - return EventDetails.classificationCreateReportDetails(v) - case "classification_create_report_fail_details": - let v = try TeamLog.ClassificationCreateReportFailDetailsSerializer().deserialize(json) - return EventDetails.classificationCreateReportFailDetails(v) - case "emm_create_exceptions_report_details": - let v = try TeamLog.EmmCreateExceptionsReportDetailsSerializer().deserialize(json) - return EventDetails.emmCreateExceptionsReportDetails(v) - case "emm_create_usage_report_details": - let v = try TeamLog.EmmCreateUsageReportDetailsSerializer().deserialize(json) - return EventDetails.emmCreateUsageReportDetails(v) - case "export_members_report_details": - let v = try TeamLog.ExportMembersReportDetailsSerializer().deserialize(json) - return EventDetails.exportMembersReportDetails(v) - case "export_members_report_fail_details": - let v = try TeamLog.ExportMembersReportFailDetailsSerializer().deserialize(json) - return EventDetails.exportMembersReportFailDetails(v) - case "external_sharing_create_report_details": - let v = try TeamLog.ExternalSharingCreateReportDetailsSerializer().deserialize(json) - return EventDetails.externalSharingCreateReportDetails(v) - case "external_sharing_report_failed_details": - let v = try TeamLog.ExternalSharingReportFailedDetailsSerializer().deserialize(json) - return EventDetails.externalSharingReportFailedDetails(v) - case "no_expiration_link_gen_create_report_details": - let v = try TeamLog.NoExpirationLinkGenCreateReportDetailsSerializer().deserialize(json) - return EventDetails.noExpirationLinkGenCreateReportDetails(v) - case "no_expiration_link_gen_report_failed_details": - let v = try TeamLog.NoExpirationLinkGenReportFailedDetailsSerializer().deserialize(json) - return EventDetails.noExpirationLinkGenReportFailedDetails(v) - case "no_password_link_gen_create_report_details": - let v = try TeamLog.NoPasswordLinkGenCreateReportDetailsSerializer().deserialize(json) - return EventDetails.noPasswordLinkGenCreateReportDetails(v) - case "no_password_link_gen_report_failed_details": - let v = try TeamLog.NoPasswordLinkGenReportFailedDetailsSerializer().deserialize(json) - return EventDetails.noPasswordLinkGenReportFailedDetails(v) - case "no_password_link_view_create_report_details": - let v = try TeamLog.NoPasswordLinkViewCreateReportDetailsSerializer().deserialize(json) - return EventDetails.noPasswordLinkViewCreateReportDetails(v) - case "no_password_link_view_report_failed_details": - let v = try TeamLog.NoPasswordLinkViewReportFailedDetailsSerializer().deserialize(json) - return EventDetails.noPasswordLinkViewReportFailedDetails(v) - case "outdated_link_view_create_report_details": - let v = try TeamLog.OutdatedLinkViewCreateReportDetailsSerializer().deserialize(json) - return EventDetails.outdatedLinkViewCreateReportDetails(v) - case "outdated_link_view_report_failed_details": - let v = try TeamLog.OutdatedLinkViewReportFailedDetailsSerializer().deserialize(json) - return EventDetails.outdatedLinkViewReportFailedDetails(v) - case "paper_admin_export_start_details": - let v = try TeamLog.PaperAdminExportStartDetailsSerializer().deserialize(json) - return EventDetails.paperAdminExportStartDetails(v) - case "ransomware_alert_create_report_details": - let v = try TeamLog.RansomwareAlertCreateReportDetailsSerializer().deserialize(json) - return EventDetails.ransomwareAlertCreateReportDetails(v) - case "ransomware_alert_create_report_failed_details": - let v = try TeamLog.RansomwareAlertCreateReportFailedDetailsSerializer().deserialize(json) - return EventDetails.ransomwareAlertCreateReportFailedDetails(v) - case "smart_sync_create_admin_privilege_report_details": - let v = try TeamLog.SmartSyncCreateAdminPrivilegeReportDetailsSerializer().deserialize(json) - return EventDetails.smartSyncCreateAdminPrivilegeReportDetails(v) - case "team_activity_create_report_details": - let v = try TeamLog.TeamActivityCreateReportDetailsSerializer().deserialize(json) - return EventDetails.teamActivityCreateReportDetails(v) - case "team_activity_create_report_fail_details": - let v = try TeamLog.TeamActivityCreateReportFailDetailsSerializer().deserialize(json) - return EventDetails.teamActivityCreateReportFailDetails(v) - case "collection_share_details": - let v = try TeamLog.CollectionShareDetailsSerializer().deserialize(json) - return EventDetails.collectionShareDetails(v) - case "file_transfers_file_add_details": - let v = try TeamLog.FileTransfersFileAddDetailsSerializer().deserialize(json) - return EventDetails.fileTransfersFileAddDetails(v) - case "file_transfers_transfer_delete_details": - let v = try TeamLog.FileTransfersTransferDeleteDetailsSerializer().deserialize(json) - return EventDetails.fileTransfersTransferDeleteDetails(v) - case "file_transfers_transfer_download_details": - let v = try TeamLog.FileTransfersTransferDownloadDetailsSerializer().deserialize(json) - return EventDetails.fileTransfersTransferDownloadDetails(v) - case "file_transfers_transfer_send_details": - let v = try TeamLog.FileTransfersTransferSendDetailsSerializer().deserialize(json) - return EventDetails.fileTransfersTransferSendDetails(v) - case "file_transfers_transfer_view_details": - let v = try TeamLog.FileTransfersTransferViewDetailsSerializer().deserialize(json) - return EventDetails.fileTransfersTransferViewDetails(v) - case "note_acl_invite_only_details": - let v = try TeamLog.NoteAclInviteOnlyDetailsSerializer().deserialize(json) - return EventDetails.noteAclInviteOnlyDetails(v) - case "note_acl_link_details": - let v = try TeamLog.NoteAclLinkDetailsSerializer().deserialize(json) - return EventDetails.noteAclLinkDetails(v) - case "note_acl_team_link_details": - let v = try TeamLog.NoteAclTeamLinkDetailsSerializer().deserialize(json) - return EventDetails.noteAclTeamLinkDetails(v) - case "note_shared_details": - let v = try TeamLog.NoteSharedDetailsSerializer().deserialize(json) - return EventDetails.noteSharedDetails(v) - case "note_share_receive_details": - let v = try TeamLog.NoteShareReceiveDetailsSerializer().deserialize(json) - return EventDetails.noteShareReceiveDetails(v) - case "open_note_shared_details": - let v = try TeamLog.OpenNoteSharedDetailsSerializer().deserialize(json) - return EventDetails.openNoteSharedDetails(v) - case "replay_file_shared_link_created_details": - let v = try TeamLog.ReplayFileSharedLinkCreatedDetailsSerializer().deserialize(json) - return EventDetails.replayFileSharedLinkCreatedDetails(v) - case "replay_file_shared_link_modified_details": - let v = try TeamLog.ReplayFileSharedLinkModifiedDetailsSerializer().deserialize(json) - return EventDetails.replayFileSharedLinkModifiedDetails(v) - case "replay_project_team_add_details": - let v = try TeamLog.ReplayProjectTeamAddDetailsSerializer().deserialize(json) - return EventDetails.replayProjectTeamAddDetails(v) - case "replay_project_team_delete_details": - let v = try TeamLog.ReplayProjectTeamDeleteDetailsSerializer().deserialize(json) - return EventDetails.replayProjectTeamDeleteDetails(v) - case "sf_add_group_details": - let v = try TeamLog.SfAddGroupDetailsSerializer().deserialize(json) - return EventDetails.sfAddGroupDetails(v) - case "sf_allow_non_members_to_view_shared_links_details": - let v = try TeamLog.SfAllowNonMembersToViewSharedLinksDetailsSerializer().deserialize(json) - return EventDetails.sfAllowNonMembersToViewSharedLinksDetails(v) - case "sf_external_invite_warn_details": - let v = try TeamLog.SfExternalInviteWarnDetailsSerializer().deserialize(json) - return EventDetails.sfExternalInviteWarnDetails(v) - case "sf_fb_invite_details": - let v = try TeamLog.SfFbInviteDetailsSerializer().deserialize(json) - return EventDetails.sfFbInviteDetails(v) - case "sf_fb_invite_change_role_details": - let v = try TeamLog.SfFbInviteChangeRoleDetailsSerializer().deserialize(json) - return EventDetails.sfFbInviteChangeRoleDetails(v) - case "sf_fb_uninvite_details": - let v = try TeamLog.SfFbUninviteDetailsSerializer().deserialize(json) - return EventDetails.sfFbUninviteDetails(v) - case "sf_invite_group_details": - let v = try TeamLog.SfInviteGroupDetailsSerializer().deserialize(json) - return EventDetails.sfInviteGroupDetails(v) - case "sf_team_grant_access_details": - let v = try TeamLog.SfTeamGrantAccessDetailsSerializer().deserialize(json) - return EventDetails.sfTeamGrantAccessDetails(v) - case "sf_team_invite_details": - let v = try TeamLog.SfTeamInviteDetailsSerializer().deserialize(json) - return EventDetails.sfTeamInviteDetails(v) - case "sf_team_invite_change_role_details": - let v = try TeamLog.SfTeamInviteChangeRoleDetailsSerializer().deserialize(json) - return EventDetails.sfTeamInviteChangeRoleDetails(v) - case "sf_team_join_details": - let v = try TeamLog.SfTeamJoinDetailsSerializer().deserialize(json) - return EventDetails.sfTeamJoinDetails(v) - case "sf_team_join_from_oob_link_details": - let v = try TeamLog.SfTeamJoinFromOobLinkDetailsSerializer().deserialize(json) - return EventDetails.sfTeamJoinFromOobLinkDetails(v) - case "sf_team_uninvite_details": - let v = try TeamLog.SfTeamUninviteDetailsSerializer().deserialize(json) - return EventDetails.sfTeamUninviteDetails(v) - case "shared_content_add_invitees_details": - let v = try TeamLog.SharedContentAddInviteesDetailsSerializer().deserialize(json) - return EventDetails.sharedContentAddInviteesDetails(v) - case "shared_content_add_link_expiry_details": - let v = try TeamLog.SharedContentAddLinkExpiryDetailsSerializer().deserialize(json) - return EventDetails.sharedContentAddLinkExpiryDetails(v) - case "shared_content_add_link_password_details": - let v = try TeamLog.SharedContentAddLinkPasswordDetailsSerializer().deserialize(json) - return EventDetails.sharedContentAddLinkPasswordDetails(v) - case "shared_content_add_member_details": - let v = try TeamLog.SharedContentAddMemberDetailsSerializer().deserialize(json) - return EventDetails.sharedContentAddMemberDetails(v) - case "shared_content_change_downloads_policy_details": - let v = try TeamLog.SharedContentChangeDownloadsPolicyDetailsSerializer().deserialize(json) - return EventDetails.sharedContentChangeDownloadsPolicyDetails(v) - case "shared_content_change_invitee_role_details": - let v = try TeamLog.SharedContentChangeInviteeRoleDetailsSerializer().deserialize(json) - return EventDetails.sharedContentChangeInviteeRoleDetails(v) - case "shared_content_change_link_audience_details": - let v = try TeamLog.SharedContentChangeLinkAudienceDetailsSerializer().deserialize(json) - return EventDetails.sharedContentChangeLinkAudienceDetails(v) - case "shared_content_change_link_expiry_details": - let v = try TeamLog.SharedContentChangeLinkExpiryDetailsSerializer().deserialize(json) - return EventDetails.sharedContentChangeLinkExpiryDetails(v) - case "shared_content_change_link_password_details": - let v = try TeamLog.SharedContentChangeLinkPasswordDetailsSerializer().deserialize(json) - return EventDetails.sharedContentChangeLinkPasswordDetails(v) - case "shared_content_change_member_role_details": - let v = try TeamLog.SharedContentChangeMemberRoleDetailsSerializer().deserialize(json) - return EventDetails.sharedContentChangeMemberRoleDetails(v) - case "shared_content_change_viewer_info_policy_details": - let v = try TeamLog.SharedContentChangeViewerInfoPolicyDetailsSerializer().deserialize(json) - return EventDetails.sharedContentChangeViewerInfoPolicyDetails(v) - case "shared_content_claim_invitation_details": - let v = try TeamLog.SharedContentClaimInvitationDetailsSerializer().deserialize(json) - return EventDetails.sharedContentClaimInvitationDetails(v) - case "shared_content_copy_details": - let v = try TeamLog.SharedContentCopyDetailsSerializer().deserialize(json) - return EventDetails.sharedContentCopyDetails(v) - case "shared_content_download_details": - let v = try TeamLog.SharedContentDownloadDetailsSerializer().deserialize(json) - return EventDetails.sharedContentDownloadDetails(v) - case "shared_content_relinquish_membership_details": - let v = try TeamLog.SharedContentRelinquishMembershipDetailsSerializer().deserialize(json) - return EventDetails.sharedContentRelinquishMembershipDetails(v) - case "shared_content_remove_invitees_details": - let v = try TeamLog.SharedContentRemoveInviteesDetailsSerializer().deserialize(json) - return EventDetails.sharedContentRemoveInviteesDetails(v) - case "shared_content_remove_link_expiry_details": - let v = try TeamLog.SharedContentRemoveLinkExpiryDetailsSerializer().deserialize(json) - return EventDetails.sharedContentRemoveLinkExpiryDetails(v) - case "shared_content_remove_link_password_details": - let v = try TeamLog.SharedContentRemoveLinkPasswordDetailsSerializer().deserialize(json) - return EventDetails.sharedContentRemoveLinkPasswordDetails(v) - case "shared_content_remove_member_details": - let v = try TeamLog.SharedContentRemoveMemberDetailsSerializer().deserialize(json) - return EventDetails.sharedContentRemoveMemberDetails(v) - case "shared_content_request_access_details": - let v = try TeamLog.SharedContentRequestAccessDetailsSerializer().deserialize(json) - return EventDetails.sharedContentRequestAccessDetails(v) - case "shared_content_restore_invitees_details": - let v = try TeamLog.SharedContentRestoreInviteesDetailsSerializer().deserialize(json) - return EventDetails.sharedContentRestoreInviteesDetails(v) - case "shared_content_restore_member_details": - let v = try TeamLog.SharedContentRestoreMemberDetailsSerializer().deserialize(json) - return EventDetails.sharedContentRestoreMemberDetails(v) - case "shared_content_unshare_details": - let v = try TeamLog.SharedContentUnshareDetailsSerializer().deserialize(json) - return EventDetails.sharedContentUnshareDetails(v) - case "shared_content_view_details": - let v = try TeamLog.SharedContentViewDetailsSerializer().deserialize(json) - return EventDetails.sharedContentViewDetails(v) - case "shared_folder_change_link_policy_details": - let v = try TeamLog.SharedFolderChangeLinkPolicyDetailsSerializer().deserialize(json) - return EventDetails.sharedFolderChangeLinkPolicyDetails(v) - case "shared_folder_change_members_inheritance_policy_details": - let v = try TeamLog.SharedFolderChangeMembersInheritancePolicyDetailsSerializer().deserialize(json) - return EventDetails.sharedFolderChangeMembersInheritancePolicyDetails(v) - case "shared_folder_change_members_management_policy_details": - let v = try TeamLog.SharedFolderChangeMembersManagementPolicyDetailsSerializer().deserialize(json) - return EventDetails.sharedFolderChangeMembersManagementPolicyDetails(v) - case "shared_folder_change_members_policy_details": - let v = try TeamLog.SharedFolderChangeMembersPolicyDetailsSerializer().deserialize(json) - return EventDetails.sharedFolderChangeMembersPolicyDetails(v) - case "shared_folder_create_details": - let v = try TeamLog.SharedFolderCreateDetailsSerializer().deserialize(json) - return EventDetails.sharedFolderCreateDetails(v) - case "shared_folder_decline_invitation_details": - let v = try TeamLog.SharedFolderDeclineInvitationDetailsSerializer().deserialize(json) - return EventDetails.sharedFolderDeclineInvitationDetails(v) - case "shared_folder_mount_details": - let v = try TeamLog.SharedFolderMountDetailsSerializer().deserialize(json) - return EventDetails.sharedFolderMountDetails(v) - case "shared_folder_nest_details": - let v = try TeamLog.SharedFolderNestDetailsSerializer().deserialize(json) - return EventDetails.sharedFolderNestDetails(v) - case "shared_folder_transfer_ownership_details": - let v = try TeamLog.SharedFolderTransferOwnershipDetailsSerializer().deserialize(json) - return EventDetails.sharedFolderTransferOwnershipDetails(v) - case "shared_folder_unmount_details": - let v = try TeamLog.SharedFolderUnmountDetailsSerializer().deserialize(json) - return EventDetails.sharedFolderUnmountDetails(v) - case "shared_link_add_expiry_details": - let v = try TeamLog.SharedLinkAddExpiryDetailsSerializer().deserialize(json) - return EventDetails.sharedLinkAddExpiryDetails(v) - case "shared_link_change_expiry_details": - let v = try TeamLog.SharedLinkChangeExpiryDetailsSerializer().deserialize(json) - return EventDetails.sharedLinkChangeExpiryDetails(v) - case "shared_link_change_visibility_details": - let v = try TeamLog.SharedLinkChangeVisibilityDetailsSerializer().deserialize(json) - return EventDetails.sharedLinkChangeVisibilityDetails(v) - case "shared_link_copy_details": - let v = try TeamLog.SharedLinkCopyDetailsSerializer().deserialize(json) - return EventDetails.sharedLinkCopyDetails(v) - case "shared_link_create_details": - let v = try TeamLog.SharedLinkCreateDetailsSerializer().deserialize(json) - return EventDetails.sharedLinkCreateDetails(v) - case "shared_link_disable_details": - let v = try TeamLog.SharedLinkDisableDetailsSerializer().deserialize(json) - return EventDetails.sharedLinkDisableDetails(v) - case "shared_link_download_details": - let v = try TeamLog.SharedLinkDownloadDetailsSerializer().deserialize(json) - return EventDetails.sharedLinkDownloadDetails(v) - case "shared_link_remove_expiry_details": - let v = try TeamLog.SharedLinkRemoveExpiryDetailsSerializer().deserialize(json) - return EventDetails.sharedLinkRemoveExpiryDetails(v) - case "shared_link_settings_add_expiration_details": - let v = try TeamLog.SharedLinkSettingsAddExpirationDetailsSerializer().deserialize(json) - return EventDetails.sharedLinkSettingsAddExpirationDetails(v) - case "shared_link_settings_add_password_details": - let v = try TeamLog.SharedLinkSettingsAddPasswordDetailsSerializer().deserialize(json) - return EventDetails.sharedLinkSettingsAddPasswordDetails(v) - case "shared_link_settings_allow_download_disabled_details": - let v = try TeamLog.SharedLinkSettingsAllowDownloadDisabledDetailsSerializer().deserialize(json) - return EventDetails.sharedLinkSettingsAllowDownloadDisabledDetails(v) - case "shared_link_settings_allow_download_enabled_details": - let v = try TeamLog.SharedLinkSettingsAllowDownloadEnabledDetailsSerializer().deserialize(json) - return EventDetails.sharedLinkSettingsAllowDownloadEnabledDetails(v) - case "shared_link_settings_change_audience_details": - let v = try TeamLog.SharedLinkSettingsChangeAudienceDetailsSerializer().deserialize(json) - return EventDetails.sharedLinkSettingsChangeAudienceDetails(v) - case "shared_link_settings_change_expiration_details": - let v = try TeamLog.SharedLinkSettingsChangeExpirationDetailsSerializer().deserialize(json) - return EventDetails.sharedLinkSettingsChangeExpirationDetails(v) - case "shared_link_settings_change_password_details": - let v = try TeamLog.SharedLinkSettingsChangePasswordDetailsSerializer().deserialize(json) - return EventDetails.sharedLinkSettingsChangePasswordDetails(v) - case "shared_link_settings_remove_expiration_details": - let v = try TeamLog.SharedLinkSettingsRemoveExpirationDetailsSerializer().deserialize(json) - return EventDetails.sharedLinkSettingsRemoveExpirationDetails(v) - case "shared_link_settings_remove_password_details": - let v = try TeamLog.SharedLinkSettingsRemovePasswordDetailsSerializer().deserialize(json) - return EventDetails.sharedLinkSettingsRemovePasswordDetails(v) - case "shared_link_share_details": - let v = try TeamLog.SharedLinkShareDetailsSerializer().deserialize(json) - return EventDetails.sharedLinkShareDetails(v) - case "shared_link_view_details": - let v = try TeamLog.SharedLinkViewDetailsSerializer().deserialize(json) - return EventDetails.sharedLinkViewDetails(v) - case "shared_note_opened_details": - let v = try TeamLog.SharedNoteOpenedDetailsSerializer().deserialize(json) - return EventDetails.sharedNoteOpenedDetails(v) - case "shmodel_disable_downloads_details": - let v = try TeamLog.ShmodelDisableDownloadsDetailsSerializer().deserialize(json) - return EventDetails.shmodelDisableDownloadsDetails(v) - case "shmodel_enable_downloads_details": - let v = try TeamLog.ShmodelEnableDownloadsDetailsSerializer().deserialize(json) - return EventDetails.shmodelEnableDownloadsDetails(v) - case "shmodel_group_share_details": - let v = try TeamLog.ShmodelGroupShareDetailsSerializer().deserialize(json) - return EventDetails.shmodelGroupShareDetails(v) - case "showcase_access_granted_details": - let v = try TeamLog.ShowcaseAccessGrantedDetailsSerializer().deserialize(json) - return EventDetails.showcaseAccessGrantedDetails(v) - case "showcase_add_member_details": - let v = try TeamLog.ShowcaseAddMemberDetailsSerializer().deserialize(json) - return EventDetails.showcaseAddMemberDetails(v) - case "showcase_archived_details": - let v = try TeamLog.ShowcaseArchivedDetailsSerializer().deserialize(json) - return EventDetails.showcaseArchivedDetails(v) - case "showcase_created_details": - let v = try TeamLog.ShowcaseCreatedDetailsSerializer().deserialize(json) - return EventDetails.showcaseCreatedDetails(v) - case "showcase_delete_comment_details": - let v = try TeamLog.ShowcaseDeleteCommentDetailsSerializer().deserialize(json) - return EventDetails.showcaseDeleteCommentDetails(v) - case "showcase_edited_details": - let v = try TeamLog.ShowcaseEditedDetailsSerializer().deserialize(json) - return EventDetails.showcaseEditedDetails(v) - case "showcase_edit_comment_details": - let v = try TeamLog.ShowcaseEditCommentDetailsSerializer().deserialize(json) - return EventDetails.showcaseEditCommentDetails(v) - case "showcase_file_added_details": - let v = try TeamLog.ShowcaseFileAddedDetailsSerializer().deserialize(json) - return EventDetails.showcaseFileAddedDetails(v) - case "showcase_file_download_details": - let v = try TeamLog.ShowcaseFileDownloadDetailsSerializer().deserialize(json) - return EventDetails.showcaseFileDownloadDetails(v) - case "showcase_file_removed_details": - let v = try TeamLog.ShowcaseFileRemovedDetailsSerializer().deserialize(json) - return EventDetails.showcaseFileRemovedDetails(v) - case "showcase_file_view_details": - let v = try TeamLog.ShowcaseFileViewDetailsSerializer().deserialize(json) - return EventDetails.showcaseFileViewDetails(v) - case "showcase_permanently_deleted_details": - let v = try TeamLog.ShowcasePermanentlyDeletedDetailsSerializer().deserialize(json) - return EventDetails.showcasePermanentlyDeletedDetails(v) - case "showcase_post_comment_details": - let v = try TeamLog.ShowcasePostCommentDetailsSerializer().deserialize(json) - return EventDetails.showcasePostCommentDetails(v) - case "showcase_remove_member_details": - let v = try TeamLog.ShowcaseRemoveMemberDetailsSerializer().deserialize(json) - return EventDetails.showcaseRemoveMemberDetails(v) - case "showcase_renamed_details": - let v = try TeamLog.ShowcaseRenamedDetailsSerializer().deserialize(json) - return EventDetails.showcaseRenamedDetails(v) - case "showcase_request_access_details": - let v = try TeamLog.ShowcaseRequestAccessDetailsSerializer().deserialize(json) - return EventDetails.showcaseRequestAccessDetails(v) - case "showcase_resolve_comment_details": - let v = try TeamLog.ShowcaseResolveCommentDetailsSerializer().deserialize(json) - return EventDetails.showcaseResolveCommentDetails(v) - case "showcase_restored_details": - let v = try TeamLog.ShowcaseRestoredDetailsSerializer().deserialize(json) - return EventDetails.showcaseRestoredDetails(v) - case "showcase_trashed_details": - let v = try TeamLog.ShowcaseTrashedDetailsSerializer().deserialize(json) - return EventDetails.showcaseTrashedDetails(v) - case "showcase_trashed_deprecated_details": - let v = try TeamLog.ShowcaseTrashedDeprecatedDetailsSerializer().deserialize(json) - return EventDetails.showcaseTrashedDeprecatedDetails(v) - case "showcase_unresolve_comment_details": - let v = try TeamLog.ShowcaseUnresolveCommentDetailsSerializer().deserialize(json) - return EventDetails.showcaseUnresolveCommentDetails(v) - case "showcase_untrashed_details": - let v = try TeamLog.ShowcaseUntrashedDetailsSerializer().deserialize(json) - return EventDetails.showcaseUntrashedDetails(v) - case "showcase_untrashed_deprecated_details": - let v = try TeamLog.ShowcaseUntrashedDeprecatedDetailsSerializer().deserialize(json) - return EventDetails.showcaseUntrashedDeprecatedDetails(v) - case "showcase_view_details": - let v = try TeamLog.ShowcaseViewDetailsSerializer().deserialize(json) - return EventDetails.showcaseViewDetails(v) - case "sso_add_cert_details": - let v = try TeamLog.SsoAddCertDetailsSerializer().deserialize(json) - return EventDetails.ssoAddCertDetails(v) - case "sso_add_login_url_details": - let v = try TeamLog.SsoAddLoginUrlDetailsSerializer().deserialize(json) - return EventDetails.ssoAddLoginUrlDetails(v) - case "sso_add_logout_url_details": - let v = try TeamLog.SsoAddLogoutUrlDetailsSerializer().deserialize(json) - return EventDetails.ssoAddLogoutUrlDetails(v) - case "sso_change_cert_details": - let v = try TeamLog.SsoChangeCertDetailsSerializer().deserialize(json) - return EventDetails.ssoChangeCertDetails(v) - case "sso_change_login_url_details": - let v = try TeamLog.SsoChangeLoginUrlDetailsSerializer().deserialize(json) - return EventDetails.ssoChangeLoginUrlDetails(v) - case "sso_change_logout_url_details": - let v = try TeamLog.SsoChangeLogoutUrlDetailsSerializer().deserialize(json) - return EventDetails.ssoChangeLogoutUrlDetails(v) - case "sso_change_saml_identity_mode_details": - let v = try TeamLog.SsoChangeSamlIdentityModeDetailsSerializer().deserialize(json) - return EventDetails.ssoChangeSamlIdentityModeDetails(v) - case "sso_remove_cert_details": - let v = try TeamLog.SsoRemoveCertDetailsSerializer().deserialize(json) - return EventDetails.ssoRemoveCertDetails(v) - case "sso_remove_login_url_details": - let v = try TeamLog.SsoRemoveLoginUrlDetailsSerializer().deserialize(json) - return EventDetails.ssoRemoveLoginUrlDetails(v) - case "sso_remove_logout_url_details": - let v = try TeamLog.SsoRemoveLogoutUrlDetailsSerializer().deserialize(json) - return EventDetails.ssoRemoveLogoutUrlDetails(v) - case "team_folder_change_status_details": - let v = try TeamLog.TeamFolderChangeStatusDetailsSerializer().deserialize(json) - return EventDetails.teamFolderChangeStatusDetails(v) - case "team_folder_create_details": - let v = try TeamLog.TeamFolderCreateDetailsSerializer().deserialize(json) - return EventDetails.teamFolderCreateDetails(v) - case "team_folder_downgrade_details": - let v = try TeamLog.TeamFolderDowngradeDetailsSerializer().deserialize(json) - return EventDetails.teamFolderDowngradeDetails(v) - case "team_folder_permanently_delete_details": - let v = try TeamLog.TeamFolderPermanentlyDeleteDetailsSerializer().deserialize(json) - return EventDetails.teamFolderPermanentlyDeleteDetails(v) - case "team_folder_rename_details": - let v = try TeamLog.TeamFolderRenameDetailsSerializer().deserialize(json) - return EventDetails.teamFolderRenameDetails(v) - case "team_selective_sync_settings_changed_details": - let v = try TeamLog.TeamSelectiveSyncSettingsChangedDetailsSerializer().deserialize(json) - return EventDetails.teamSelectiveSyncSettingsChangedDetails(v) - case "account_capture_change_policy_details": - let v = try TeamLog.AccountCaptureChangePolicyDetailsSerializer().deserialize(json) - return EventDetails.accountCaptureChangePolicyDetails(v) - case "admin_email_reminders_changed_details": - let v = try TeamLog.AdminEmailRemindersChangedDetailsSerializer().deserialize(json) - return EventDetails.adminEmailRemindersChangedDetails(v) - case "allow_download_disabled_details": - let v = try TeamLog.AllowDownloadDisabledDetailsSerializer().deserialize(json) - return EventDetails.allowDownloadDisabledDetails(v) - case "allow_download_enabled_details": - let v = try TeamLog.AllowDownloadEnabledDetailsSerializer().deserialize(json) - return EventDetails.allowDownloadEnabledDetails(v) - case "app_permissions_changed_details": - let v = try TeamLog.AppPermissionsChangedDetailsSerializer().deserialize(json) - return EventDetails.appPermissionsChangedDetails(v) - case "camera_uploads_policy_changed_details": - let v = try TeamLog.CameraUploadsPolicyChangedDetailsSerializer().deserialize(json) - return EventDetails.cameraUploadsPolicyChangedDetails(v) - case "capture_transcript_policy_changed_details": - let v = try TeamLog.CaptureTranscriptPolicyChangedDetailsSerializer().deserialize(json) - return EventDetails.captureTranscriptPolicyChangedDetails(v) - case "classification_change_policy_details": - let v = try TeamLog.ClassificationChangePolicyDetailsSerializer().deserialize(json) - return EventDetails.classificationChangePolicyDetails(v) - case "computer_backup_policy_changed_details": - let v = try TeamLog.ComputerBackupPolicyChangedDetailsSerializer().deserialize(json) - return EventDetails.computerBackupPolicyChangedDetails(v) - case "content_administration_policy_changed_details": - let v = try TeamLog.ContentAdministrationPolicyChangedDetailsSerializer().deserialize(json) - return EventDetails.contentAdministrationPolicyChangedDetails(v) - case "data_placement_restriction_change_policy_details": - let v = try TeamLog.DataPlacementRestrictionChangePolicyDetailsSerializer().deserialize(json) - return EventDetails.dataPlacementRestrictionChangePolicyDetails(v) - case "data_placement_restriction_satisfy_policy_details": - let v = try TeamLog.DataPlacementRestrictionSatisfyPolicyDetailsSerializer().deserialize(json) - return EventDetails.dataPlacementRestrictionSatisfyPolicyDetails(v) - case "device_approvals_add_exception_details": - let v = try TeamLog.DeviceApprovalsAddExceptionDetailsSerializer().deserialize(json) - return EventDetails.deviceApprovalsAddExceptionDetails(v) - case "device_approvals_change_desktop_policy_details": - let v = try TeamLog.DeviceApprovalsChangeDesktopPolicyDetailsSerializer().deserialize(json) - return EventDetails.deviceApprovalsChangeDesktopPolicyDetails(v) - case "device_approvals_change_mobile_policy_details": - let v = try TeamLog.DeviceApprovalsChangeMobilePolicyDetailsSerializer().deserialize(json) - return EventDetails.deviceApprovalsChangeMobilePolicyDetails(v) - case "device_approvals_change_overage_action_details": - let v = try TeamLog.DeviceApprovalsChangeOverageActionDetailsSerializer().deserialize(json) - return EventDetails.deviceApprovalsChangeOverageActionDetails(v) - case "device_approvals_change_unlink_action_details": - let v = try TeamLog.DeviceApprovalsChangeUnlinkActionDetailsSerializer().deserialize(json) - return EventDetails.deviceApprovalsChangeUnlinkActionDetails(v) - case "device_approvals_remove_exception_details": - let v = try TeamLog.DeviceApprovalsRemoveExceptionDetailsSerializer().deserialize(json) - return EventDetails.deviceApprovalsRemoveExceptionDetails(v) - case "directory_restrictions_add_members_details": - let v = try TeamLog.DirectoryRestrictionsAddMembersDetailsSerializer().deserialize(json) - return EventDetails.directoryRestrictionsAddMembersDetails(v) - case "directory_restrictions_remove_members_details": - let v = try TeamLog.DirectoryRestrictionsRemoveMembersDetailsSerializer().deserialize(json) - return EventDetails.directoryRestrictionsRemoveMembersDetails(v) - case "dropbox_passwords_policy_changed_details": - let v = try TeamLog.DropboxPasswordsPolicyChangedDetailsSerializer().deserialize(json) - return EventDetails.dropboxPasswordsPolicyChangedDetails(v) - case "email_ingest_policy_changed_details": - let v = try TeamLog.EmailIngestPolicyChangedDetailsSerializer().deserialize(json) - return EventDetails.emailIngestPolicyChangedDetails(v) - case "emm_add_exception_details": - let v = try TeamLog.EmmAddExceptionDetailsSerializer().deserialize(json) - return EventDetails.emmAddExceptionDetails(v) - case "emm_change_policy_details": - let v = try TeamLog.EmmChangePolicyDetailsSerializer().deserialize(json) - return EventDetails.emmChangePolicyDetails(v) - case "emm_remove_exception_details": - let v = try TeamLog.EmmRemoveExceptionDetailsSerializer().deserialize(json) - return EventDetails.emmRemoveExceptionDetails(v) - case "extended_version_history_change_policy_details": - let v = try TeamLog.ExtendedVersionHistoryChangePolicyDetailsSerializer().deserialize(json) - return EventDetails.extendedVersionHistoryChangePolicyDetails(v) - case "external_drive_backup_policy_changed_details": - let v = try TeamLog.ExternalDriveBackupPolicyChangedDetailsSerializer().deserialize(json) - return EventDetails.externalDriveBackupPolicyChangedDetails(v) - case "file_comments_change_policy_details": - let v = try TeamLog.FileCommentsChangePolicyDetailsSerializer().deserialize(json) - return EventDetails.fileCommentsChangePolicyDetails(v) - case "file_locking_policy_changed_details": - let v = try TeamLog.FileLockingPolicyChangedDetailsSerializer().deserialize(json) - return EventDetails.fileLockingPolicyChangedDetails(v) - case "file_provider_migration_policy_changed_details": - let v = try TeamLog.FileProviderMigrationPolicyChangedDetailsSerializer().deserialize(json) - return EventDetails.fileProviderMigrationPolicyChangedDetails(v) - case "file_requests_change_policy_details": - let v = try TeamLog.FileRequestsChangePolicyDetailsSerializer().deserialize(json) - return EventDetails.fileRequestsChangePolicyDetails(v) - case "file_requests_emails_enabled_details": - let v = try TeamLog.FileRequestsEmailsEnabledDetailsSerializer().deserialize(json) - return EventDetails.fileRequestsEmailsEnabledDetails(v) - case "file_requests_emails_restricted_to_team_only_details": - let v = try TeamLog.FileRequestsEmailsRestrictedToTeamOnlyDetailsSerializer().deserialize(json) - return EventDetails.fileRequestsEmailsRestrictedToTeamOnlyDetails(v) - case "file_transfers_policy_changed_details": - let v = try TeamLog.FileTransfersPolicyChangedDetailsSerializer().deserialize(json) - return EventDetails.fileTransfersPolicyChangedDetails(v) - case "folder_link_restriction_policy_changed_details": - let v = try TeamLog.FolderLinkRestrictionPolicyChangedDetailsSerializer().deserialize(json) - return EventDetails.folderLinkRestrictionPolicyChangedDetails(v) - case "google_sso_change_policy_details": - let v = try TeamLog.GoogleSsoChangePolicyDetailsSerializer().deserialize(json) - return EventDetails.googleSsoChangePolicyDetails(v) - case "group_user_management_change_policy_details": - let v = try TeamLog.GroupUserManagementChangePolicyDetailsSerializer().deserialize(json) - return EventDetails.groupUserManagementChangePolicyDetails(v) - case "integration_policy_changed_details": - let v = try TeamLog.IntegrationPolicyChangedDetailsSerializer().deserialize(json) - return EventDetails.integrationPolicyChangedDetails(v) - case "invite_acceptance_email_policy_changed_details": - let v = try TeamLog.InviteAcceptanceEmailPolicyChangedDetailsSerializer().deserialize(json) - return EventDetails.inviteAcceptanceEmailPolicyChangedDetails(v) - case "member_requests_change_policy_details": - let v = try TeamLog.MemberRequestsChangePolicyDetailsSerializer().deserialize(json) - return EventDetails.memberRequestsChangePolicyDetails(v) - case "member_send_invite_policy_changed_details": - let v = try TeamLog.MemberSendInvitePolicyChangedDetailsSerializer().deserialize(json) - return EventDetails.memberSendInvitePolicyChangedDetails(v) - case "member_space_limits_add_exception_details": - let v = try TeamLog.MemberSpaceLimitsAddExceptionDetailsSerializer().deserialize(json) - return EventDetails.memberSpaceLimitsAddExceptionDetails(v) - case "member_space_limits_change_caps_type_policy_details": - let v = try TeamLog.MemberSpaceLimitsChangeCapsTypePolicyDetailsSerializer().deserialize(json) - return EventDetails.memberSpaceLimitsChangeCapsTypePolicyDetails(v) - case "member_space_limits_change_policy_details": - let v = try TeamLog.MemberSpaceLimitsChangePolicyDetailsSerializer().deserialize(json) - return EventDetails.memberSpaceLimitsChangePolicyDetails(v) - case "member_space_limits_remove_exception_details": - let v = try TeamLog.MemberSpaceLimitsRemoveExceptionDetailsSerializer().deserialize(json) - return EventDetails.memberSpaceLimitsRemoveExceptionDetails(v) - case "member_suggestions_change_policy_details": - let v = try TeamLog.MemberSuggestionsChangePolicyDetailsSerializer().deserialize(json) - return EventDetails.memberSuggestionsChangePolicyDetails(v) - case "microsoft_office_addin_change_policy_details": - let v = try TeamLog.MicrosoftOfficeAddinChangePolicyDetailsSerializer().deserialize(json) - return EventDetails.microsoftOfficeAddinChangePolicyDetails(v) - case "network_control_change_policy_details": - let v = try TeamLog.NetworkControlChangePolicyDetailsSerializer().deserialize(json) - return EventDetails.networkControlChangePolicyDetails(v) - case "paper_change_deployment_policy_details": - let v = try TeamLog.PaperChangeDeploymentPolicyDetailsSerializer().deserialize(json) - return EventDetails.paperChangeDeploymentPolicyDetails(v) - case "paper_change_member_link_policy_details": - let v = try TeamLog.PaperChangeMemberLinkPolicyDetailsSerializer().deserialize(json) - return EventDetails.paperChangeMemberLinkPolicyDetails(v) - case "paper_change_member_policy_details": - let v = try TeamLog.PaperChangeMemberPolicyDetailsSerializer().deserialize(json) - return EventDetails.paperChangeMemberPolicyDetails(v) - case "paper_change_policy_details": - let v = try TeamLog.PaperChangePolicyDetailsSerializer().deserialize(json) - return EventDetails.paperChangePolicyDetails(v) - case "paper_default_folder_policy_changed_details": - let v = try TeamLog.PaperDefaultFolderPolicyChangedDetailsSerializer().deserialize(json) - return EventDetails.paperDefaultFolderPolicyChangedDetails(v) - case "paper_desktop_policy_changed_details": - let v = try TeamLog.PaperDesktopPolicyChangedDetailsSerializer().deserialize(json) - return EventDetails.paperDesktopPolicyChangedDetails(v) - case "paper_enabled_users_group_addition_details": - let v = try TeamLog.PaperEnabledUsersGroupAdditionDetailsSerializer().deserialize(json) - return EventDetails.paperEnabledUsersGroupAdditionDetails(v) - case "paper_enabled_users_group_removal_details": - let v = try TeamLog.PaperEnabledUsersGroupRemovalDetailsSerializer().deserialize(json) - return EventDetails.paperEnabledUsersGroupRemovalDetails(v) - case "password_strength_requirements_change_policy_details": - let v = try TeamLog.PasswordStrengthRequirementsChangePolicyDetailsSerializer().deserialize(json) - return EventDetails.passwordStrengthRequirementsChangePolicyDetails(v) - case "permanent_delete_change_policy_details": - let v = try TeamLog.PermanentDeleteChangePolicyDetailsSerializer().deserialize(json) - return EventDetails.permanentDeleteChangePolicyDetails(v) - case "reseller_support_change_policy_details": - let v = try TeamLog.ResellerSupportChangePolicyDetailsSerializer().deserialize(json) - return EventDetails.resellerSupportChangePolicyDetails(v) - case "rewind_policy_changed_details": - let v = try TeamLog.RewindPolicyChangedDetailsSerializer().deserialize(json) - return EventDetails.rewindPolicyChangedDetails(v) - case "send_for_signature_policy_changed_details": - let v = try TeamLog.SendForSignaturePolicyChangedDetailsSerializer().deserialize(json) - return EventDetails.sendForSignaturePolicyChangedDetails(v) - case "sharing_change_folder_join_policy_details": - let v = try TeamLog.SharingChangeFolderJoinPolicyDetailsSerializer().deserialize(json) - return EventDetails.sharingChangeFolderJoinPolicyDetails(v) - case "sharing_change_link_allow_change_expiration_policy_details": - let v = try TeamLog.SharingChangeLinkAllowChangeExpirationPolicyDetailsSerializer().deserialize(json) - return EventDetails.sharingChangeLinkAllowChangeExpirationPolicyDetails(v) - case "sharing_change_link_default_expiration_policy_details": - let v = try TeamLog.SharingChangeLinkDefaultExpirationPolicyDetailsSerializer().deserialize(json) - return EventDetails.sharingChangeLinkDefaultExpirationPolicyDetails(v) - case "sharing_change_link_enforce_password_policy_details": - let v = try TeamLog.SharingChangeLinkEnforcePasswordPolicyDetailsSerializer().deserialize(json) - return EventDetails.sharingChangeLinkEnforcePasswordPolicyDetails(v) - case "sharing_change_link_policy_details": - let v = try TeamLog.SharingChangeLinkPolicyDetailsSerializer().deserialize(json) - return EventDetails.sharingChangeLinkPolicyDetails(v) - case "sharing_change_member_policy_details": - let v = try TeamLog.SharingChangeMemberPolicyDetailsSerializer().deserialize(json) - return EventDetails.sharingChangeMemberPolicyDetails(v) - case "showcase_change_download_policy_details": - let v = try TeamLog.ShowcaseChangeDownloadPolicyDetailsSerializer().deserialize(json) - return EventDetails.showcaseChangeDownloadPolicyDetails(v) - case "showcase_change_enabled_policy_details": - let v = try TeamLog.ShowcaseChangeEnabledPolicyDetailsSerializer().deserialize(json) - return EventDetails.showcaseChangeEnabledPolicyDetails(v) - case "showcase_change_external_sharing_policy_details": - let v = try TeamLog.ShowcaseChangeExternalSharingPolicyDetailsSerializer().deserialize(json) - return EventDetails.showcaseChangeExternalSharingPolicyDetails(v) - case "smarter_smart_sync_policy_changed_details": - let v = try TeamLog.SmarterSmartSyncPolicyChangedDetailsSerializer().deserialize(json) - return EventDetails.smarterSmartSyncPolicyChangedDetails(v) - case "smart_sync_change_policy_details": - let v = try TeamLog.SmartSyncChangePolicyDetailsSerializer().deserialize(json) - return EventDetails.smartSyncChangePolicyDetails(v) - case "smart_sync_not_opt_out_details": - let v = try TeamLog.SmartSyncNotOptOutDetailsSerializer().deserialize(json) - return EventDetails.smartSyncNotOptOutDetails(v) - case "smart_sync_opt_out_details": - let v = try TeamLog.SmartSyncOptOutDetailsSerializer().deserialize(json) - return EventDetails.smartSyncOptOutDetails(v) - case "sso_change_policy_details": - let v = try TeamLog.SsoChangePolicyDetailsSerializer().deserialize(json) - return EventDetails.ssoChangePolicyDetails(v) - case "team_branding_policy_changed_details": - let v = try TeamLog.TeamBrandingPolicyChangedDetailsSerializer().deserialize(json) - return EventDetails.teamBrandingPolicyChangedDetails(v) - case "team_extensions_policy_changed_details": - let v = try TeamLog.TeamExtensionsPolicyChangedDetailsSerializer().deserialize(json) - return EventDetails.teamExtensionsPolicyChangedDetails(v) - case "team_selective_sync_policy_changed_details": - let v = try TeamLog.TeamSelectiveSyncPolicyChangedDetailsSerializer().deserialize(json) - return EventDetails.teamSelectiveSyncPolicyChangedDetails(v) - case "team_sharing_whitelist_subjects_changed_details": - let v = try TeamLog.TeamSharingWhitelistSubjectsChangedDetailsSerializer().deserialize(json) - return EventDetails.teamSharingWhitelistSubjectsChangedDetails(v) - case "tfa_add_exception_details": - let v = try TeamLog.TfaAddExceptionDetailsSerializer().deserialize(json) - return EventDetails.tfaAddExceptionDetails(v) - case "tfa_change_policy_details": - let v = try TeamLog.TfaChangePolicyDetailsSerializer().deserialize(json) - return EventDetails.tfaChangePolicyDetails(v) - case "tfa_remove_exception_details": - let v = try TeamLog.TfaRemoveExceptionDetailsSerializer().deserialize(json) - return EventDetails.tfaRemoveExceptionDetails(v) - case "two_account_change_policy_details": - let v = try TeamLog.TwoAccountChangePolicyDetailsSerializer().deserialize(json) - return EventDetails.twoAccountChangePolicyDetails(v) - case "viewer_info_policy_changed_details": - let v = try TeamLog.ViewerInfoPolicyChangedDetailsSerializer().deserialize(json) - return EventDetails.viewerInfoPolicyChangedDetails(v) - case "watermarking_policy_changed_details": - let v = try TeamLog.WatermarkingPolicyChangedDetailsSerializer().deserialize(json) - return EventDetails.watermarkingPolicyChangedDetails(v) - case "web_sessions_change_active_session_limit_details": - let v = try TeamLog.WebSessionsChangeActiveSessionLimitDetailsSerializer().deserialize(json) - return EventDetails.webSessionsChangeActiveSessionLimitDetails(v) - case "web_sessions_change_fixed_length_policy_details": - let v = try TeamLog.WebSessionsChangeFixedLengthPolicyDetailsSerializer().deserialize(json) - return EventDetails.webSessionsChangeFixedLengthPolicyDetails(v) - case "web_sessions_change_idle_length_policy_details": - let v = try TeamLog.WebSessionsChangeIdleLengthPolicyDetailsSerializer().deserialize(json) - return EventDetails.webSessionsChangeIdleLengthPolicyDetails(v) - case "data_residency_migration_request_successful_details": - let v = try TeamLog.DataResidencyMigrationRequestSuccessfulDetailsSerializer().deserialize(json) - return EventDetails.dataResidencyMigrationRequestSuccessfulDetails(v) - case "data_residency_migration_request_unsuccessful_details": - let v = try TeamLog.DataResidencyMigrationRequestUnsuccessfulDetailsSerializer().deserialize(json) - return EventDetails.dataResidencyMigrationRequestUnsuccessfulDetails(v) - case "team_merge_from_details": - let v = try TeamLog.TeamMergeFromDetailsSerializer().deserialize(json) - return EventDetails.teamMergeFromDetails(v) - case "team_merge_to_details": - let v = try TeamLog.TeamMergeToDetailsSerializer().deserialize(json) - return EventDetails.teamMergeToDetails(v) - case "team_profile_add_background_details": - let v = try TeamLog.TeamProfileAddBackgroundDetailsSerializer().deserialize(json) - return EventDetails.teamProfileAddBackgroundDetails(v) - case "team_profile_add_logo_details": - let v = try TeamLog.TeamProfileAddLogoDetailsSerializer().deserialize(json) - return EventDetails.teamProfileAddLogoDetails(v) - case "team_profile_change_background_details": - let v = try TeamLog.TeamProfileChangeBackgroundDetailsSerializer().deserialize(json) - return EventDetails.teamProfileChangeBackgroundDetails(v) - case "team_profile_change_default_language_details": - let v = try TeamLog.TeamProfileChangeDefaultLanguageDetailsSerializer().deserialize(json) - return EventDetails.teamProfileChangeDefaultLanguageDetails(v) - case "team_profile_change_logo_details": - let v = try TeamLog.TeamProfileChangeLogoDetailsSerializer().deserialize(json) - return EventDetails.teamProfileChangeLogoDetails(v) - case "team_profile_change_name_details": - let v = try TeamLog.TeamProfileChangeNameDetailsSerializer().deserialize(json) - return EventDetails.teamProfileChangeNameDetails(v) - case "team_profile_remove_background_details": - let v = try TeamLog.TeamProfileRemoveBackgroundDetailsSerializer().deserialize(json) - return EventDetails.teamProfileRemoveBackgroundDetails(v) - case "team_profile_remove_logo_details": - let v = try TeamLog.TeamProfileRemoveLogoDetailsSerializer().deserialize(json) - return EventDetails.teamProfileRemoveLogoDetails(v) - case "tfa_add_backup_phone_details": - let v = try TeamLog.TfaAddBackupPhoneDetailsSerializer().deserialize(json) - return EventDetails.tfaAddBackupPhoneDetails(v) - case "tfa_add_security_key_details": - let v = try TeamLog.TfaAddSecurityKeyDetailsSerializer().deserialize(json) - return EventDetails.tfaAddSecurityKeyDetails(v) - case "tfa_change_backup_phone_details": - let v = try TeamLog.TfaChangeBackupPhoneDetailsSerializer().deserialize(json) - return EventDetails.tfaChangeBackupPhoneDetails(v) - case "tfa_change_status_details": - let v = try TeamLog.TfaChangeStatusDetailsSerializer().deserialize(json) - return EventDetails.tfaChangeStatusDetails(v) - case "tfa_remove_backup_phone_details": - let v = try TeamLog.TfaRemoveBackupPhoneDetailsSerializer().deserialize(json) - return EventDetails.tfaRemoveBackupPhoneDetails(v) - case "tfa_remove_security_key_details": - let v = try TeamLog.TfaRemoveSecurityKeyDetailsSerializer().deserialize(json) - return EventDetails.tfaRemoveSecurityKeyDetails(v) - case "tfa_reset_details": - let v = try TeamLog.TfaResetDetailsSerializer().deserialize(json) - return EventDetails.tfaResetDetails(v) - case "changed_enterprise_admin_role_details": - let v = try TeamLog.ChangedEnterpriseAdminRoleDetailsSerializer().deserialize(json) - return EventDetails.changedEnterpriseAdminRoleDetails(v) - case "changed_enterprise_connected_team_status_details": - let v = try TeamLog.ChangedEnterpriseConnectedTeamStatusDetailsSerializer().deserialize(json) - return EventDetails.changedEnterpriseConnectedTeamStatusDetails(v) - case "ended_enterprise_admin_session_details": - let v = try TeamLog.EndedEnterpriseAdminSessionDetailsSerializer().deserialize(json) - return EventDetails.endedEnterpriseAdminSessionDetails(v) - case "ended_enterprise_admin_session_deprecated_details": - let v = try TeamLog.EndedEnterpriseAdminSessionDeprecatedDetailsSerializer().deserialize(json) - return EventDetails.endedEnterpriseAdminSessionDeprecatedDetails(v) - case "enterprise_settings_locking_details": - let v = try TeamLog.EnterpriseSettingsLockingDetailsSerializer().deserialize(json) - return EventDetails.enterpriseSettingsLockingDetails(v) - case "guest_admin_change_status_details": - let v = try TeamLog.GuestAdminChangeStatusDetailsSerializer().deserialize(json) - return EventDetails.guestAdminChangeStatusDetails(v) - case "started_enterprise_admin_session_details": - let v = try TeamLog.StartedEnterpriseAdminSessionDetailsSerializer().deserialize(json) - return EventDetails.startedEnterpriseAdminSessionDetails(v) - case "team_merge_request_accepted_details": - let v = try TeamLog.TeamMergeRequestAcceptedDetailsSerializer().deserialize(json) - return EventDetails.teamMergeRequestAcceptedDetails(v) - case "team_merge_request_accepted_shown_to_primary_team_details": - let v = try TeamLog.TeamMergeRequestAcceptedShownToPrimaryTeamDetailsSerializer().deserialize(json) - return EventDetails.teamMergeRequestAcceptedShownToPrimaryTeamDetails(v) - case "team_merge_request_accepted_shown_to_secondary_team_details": - let v = try TeamLog.TeamMergeRequestAcceptedShownToSecondaryTeamDetailsSerializer().deserialize(json) - return EventDetails.teamMergeRequestAcceptedShownToSecondaryTeamDetails(v) - case "team_merge_request_auto_canceled_details": - let v = try TeamLog.TeamMergeRequestAutoCanceledDetailsSerializer().deserialize(json) - return EventDetails.teamMergeRequestAutoCanceledDetails(v) - case "team_merge_request_canceled_details": - let v = try TeamLog.TeamMergeRequestCanceledDetailsSerializer().deserialize(json) - return EventDetails.teamMergeRequestCanceledDetails(v) - case "team_merge_request_canceled_shown_to_primary_team_details": - let v = try TeamLog.TeamMergeRequestCanceledShownToPrimaryTeamDetailsSerializer().deserialize(json) - return EventDetails.teamMergeRequestCanceledShownToPrimaryTeamDetails(v) - case "team_merge_request_canceled_shown_to_secondary_team_details": - let v = try TeamLog.TeamMergeRequestCanceledShownToSecondaryTeamDetailsSerializer().deserialize(json) - return EventDetails.teamMergeRequestCanceledShownToSecondaryTeamDetails(v) - case "team_merge_request_expired_details": - let v = try TeamLog.TeamMergeRequestExpiredDetailsSerializer().deserialize(json) - return EventDetails.teamMergeRequestExpiredDetails(v) - case "team_merge_request_expired_shown_to_primary_team_details": - let v = try TeamLog.TeamMergeRequestExpiredShownToPrimaryTeamDetailsSerializer().deserialize(json) - return EventDetails.teamMergeRequestExpiredShownToPrimaryTeamDetails(v) - case "team_merge_request_expired_shown_to_secondary_team_details": - let v = try TeamLog.TeamMergeRequestExpiredShownToSecondaryTeamDetailsSerializer().deserialize(json) - return EventDetails.teamMergeRequestExpiredShownToSecondaryTeamDetails(v) - case "team_merge_request_rejected_shown_to_primary_team_details": - let v = try TeamLog.TeamMergeRequestRejectedShownToPrimaryTeamDetailsSerializer().deserialize(json) - return EventDetails.teamMergeRequestRejectedShownToPrimaryTeamDetails(v) - case "team_merge_request_rejected_shown_to_secondary_team_details": - let v = try TeamLog.TeamMergeRequestRejectedShownToSecondaryTeamDetailsSerializer().deserialize(json) - return EventDetails.teamMergeRequestRejectedShownToSecondaryTeamDetails(v) - case "team_merge_request_reminder_details": - let v = try TeamLog.TeamMergeRequestReminderDetailsSerializer().deserialize(json) - return EventDetails.teamMergeRequestReminderDetails(v) - case "team_merge_request_reminder_shown_to_primary_team_details": - let v = try TeamLog.TeamMergeRequestReminderShownToPrimaryTeamDetailsSerializer().deserialize(json) - return EventDetails.teamMergeRequestReminderShownToPrimaryTeamDetails(v) - case "team_merge_request_reminder_shown_to_secondary_team_details": - let v = try TeamLog.TeamMergeRequestReminderShownToSecondaryTeamDetailsSerializer().deserialize(json) - return EventDetails.teamMergeRequestReminderShownToSecondaryTeamDetails(v) - case "team_merge_request_revoked_details": - let v = try TeamLog.TeamMergeRequestRevokedDetailsSerializer().deserialize(json) - return EventDetails.teamMergeRequestRevokedDetails(v) - case "team_merge_request_sent_shown_to_primary_team_details": - let v = try TeamLog.TeamMergeRequestSentShownToPrimaryTeamDetailsSerializer().deserialize(json) - return EventDetails.teamMergeRequestSentShownToPrimaryTeamDetails(v) - case "team_merge_request_sent_shown_to_secondary_team_details": - let v = try TeamLog.TeamMergeRequestSentShownToSecondaryTeamDetailsSerializer().deserialize(json) - return EventDetails.teamMergeRequestSentShownToSecondaryTeamDetails(v) - case "missing_details": - let v = try TeamLog.MissingDetailsSerializer().deserialize(json) - return EventDetails.missingDetails(v) - case "other": - return EventDetails.other - default: - return EventDetails.other - } - default: - throw JSONSerializerError.deserializeError(type: EventDetails.self, json: json) + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "admin_alerting_alert_state_changed_details": + let v = try TeamLog.AdminAlertingAlertStateChangedDetailsSerializer().deserialize(json) + return EventDetails.adminAlertingAlertStateChangedDetails(v) + case "admin_alerting_changed_alert_config_details": + let v = try TeamLog.AdminAlertingChangedAlertConfigDetailsSerializer().deserialize(json) + return EventDetails.adminAlertingChangedAlertConfigDetails(v) + case "admin_alerting_triggered_alert_details": + let v = try TeamLog.AdminAlertingTriggeredAlertDetailsSerializer().deserialize(json) + return EventDetails.adminAlertingTriggeredAlertDetails(v) + case "ransomware_restore_process_completed_details": + let v = try TeamLog.RansomwareRestoreProcessCompletedDetailsSerializer().deserialize(json) + return EventDetails.ransomwareRestoreProcessCompletedDetails(v) + case "ransomware_restore_process_started_details": + let v = try TeamLog.RansomwareRestoreProcessStartedDetailsSerializer().deserialize(json) + return EventDetails.ransomwareRestoreProcessStartedDetails(v) + case "app_blocked_by_permissions_details": + let v = try TeamLog.AppBlockedByPermissionsDetailsSerializer().deserialize(json) + return EventDetails.appBlockedByPermissionsDetails(v) + case "app_link_team_details": + let v = try TeamLog.AppLinkTeamDetailsSerializer().deserialize(json) + return EventDetails.appLinkTeamDetails(v) + case "app_link_user_details": + let v = try TeamLog.AppLinkUserDetailsSerializer().deserialize(json) + return EventDetails.appLinkUserDetails(v) + case "app_unlink_team_details": + let v = try TeamLog.AppUnlinkTeamDetailsSerializer().deserialize(json) + return EventDetails.appUnlinkTeamDetails(v) + case "app_unlink_user_details": + let v = try TeamLog.AppUnlinkUserDetailsSerializer().deserialize(json) + return EventDetails.appUnlinkUserDetails(v) + case "integration_connected_details": + let v = try TeamLog.IntegrationConnectedDetailsSerializer().deserialize(json) + return EventDetails.integrationConnectedDetails(v) + case "integration_disconnected_details": + let v = try TeamLog.IntegrationDisconnectedDetailsSerializer().deserialize(json) + return EventDetails.integrationDisconnectedDetails(v) + case "file_add_comment_details": + let v = try TeamLog.FileAddCommentDetailsSerializer().deserialize(json) + return EventDetails.fileAddCommentDetails(v) + case "file_change_comment_subscription_details": + let v = try TeamLog.FileChangeCommentSubscriptionDetailsSerializer().deserialize(json) + return EventDetails.fileChangeCommentSubscriptionDetails(v) + case "file_delete_comment_details": + let v = try TeamLog.FileDeleteCommentDetailsSerializer().deserialize(json) + return EventDetails.fileDeleteCommentDetails(v) + case "file_edit_comment_details": + let v = try TeamLog.FileEditCommentDetailsSerializer().deserialize(json) + return EventDetails.fileEditCommentDetails(v) + case "file_like_comment_details": + let v = try TeamLog.FileLikeCommentDetailsSerializer().deserialize(json) + return EventDetails.fileLikeCommentDetails(v) + case "file_resolve_comment_details": + let v = try TeamLog.FileResolveCommentDetailsSerializer().deserialize(json) + return EventDetails.fileResolveCommentDetails(v) + case "file_unlike_comment_details": + let v = try TeamLog.FileUnlikeCommentDetailsSerializer().deserialize(json) + return EventDetails.fileUnlikeCommentDetails(v) + case "file_unresolve_comment_details": + let v = try TeamLog.FileUnresolveCommentDetailsSerializer().deserialize(json) + return EventDetails.fileUnresolveCommentDetails(v) + case "dash_added_comment_to_stack_details": + let v = try TeamLog.DashAddedCommentToStackDetailsSerializer().deserialize(json) + return EventDetails.dashAddedCommentToStackDetails(v) + case "dash_added_connector_details": + let v = try TeamLog.DashAddedConnectorDetailsSerializer().deserialize(json) + return EventDetails.dashAddedConnectorDetails(v) + case "dash_added_link_to_stack_details": + let v = try TeamLog.DashAddedLinkToStackDetailsSerializer().deserialize(json) + return EventDetails.dashAddedLinkToStackDetails(v) + case "dash_added_team_email_domain_allowlist_details": + let v = try TeamLog.DashAddedTeamEmailDomainAllowlistDetailsSerializer().deserialize(json) + return EventDetails.dashAddedTeamEmailDomainAllowlistDetails(v) + case "dash_admin_added_org_wide_connector_details": + let v = try TeamLog.DashAdminAddedOrgWideConnectorDetailsSerializer().deserialize(json) + return EventDetails.dashAdminAddedOrgWideConnectorDetails(v) + case "dash_admin_disabled_connector_details": + let v = try TeamLog.DashAdminDisabledConnectorDetailsSerializer().deserialize(json) + return EventDetails.dashAdminDisabledConnectorDetails(v) + case "dash_admin_enabled_connector_details": + let v = try TeamLog.DashAdminEnabledConnectorDetailsSerializer().deserialize(json) + return EventDetails.dashAdminEnabledConnectorDetails(v) + case "dash_admin_removed_org_wide_connector_details": + let v = try TeamLog.DashAdminRemovedOrgWideConnectorDetailsSerializer().deserialize(json) + return EventDetails.dashAdminRemovedOrgWideConnectorDetails(v) + case "dash_archived_stack_details": + let v = try TeamLog.DashArchivedStackDetailsSerializer().deserialize(json) + return EventDetails.dashArchivedStackDetails(v) + case "dash_changed_audience_of_shared_link_to_stack_details": + let v = try TeamLog.DashChangedAudienceOfSharedLinkToStackDetailsSerializer().deserialize(json) + return EventDetails.dashChangedAudienceOfSharedLinkToStackDetails(v) + case "dash_cloned_stack_details": + let v = try TeamLog.DashClonedStackDetailsSerializer().deserialize(json) + return EventDetails.dashClonedStackDetails(v) + case "dash_connector_tools_call_details": + let v = try TeamLog.DashConnectorToolsCallDetailsSerializer().deserialize(json) + return EventDetails.dashConnectorToolsCallDetails(v) + case "dash_created_stack_details": + let v = try TeamLog.DashCreatedStackDetailsSerializer().deserialize(json) + return EventDetails.dashCreatedStackDetails(v) + case "dash_deleted_comment_from_stack_details": + let v = try TeamLog.DashDeletedCommentFromStackDetailsSerializer().deserialize(json) + return EventDetails.dashDeletedCommentFromStackDetails(v) + case "dash_deleted_stack_details": + let v = try TeamLog.DashDeletedStackDetailsSerializer().deserialize(json) + return EventDetails.dashDeletedStackDetails(v) + case "dash_edited_comment_in_stack_details": + let v = try TeamLog.DashEditedCommentInStackDetailsSerializer().deserialize(json) + return EventDetails.dashEditedCommentInStackDetails(v) + case "dash_external_user_opened_stack_details": + let v = try TeamLog.DashExternalUserOpenedStackDetailsSerializer().deserialize(json) + return EventDetails.dashExternalUserOpenedStackDetails(v) + case "dash_first_launched_desktop_details": + let v = try TeamLog.DashFirstLaunchedDesktopDetailsSerializer().deserialize(json) + return EventDetails.dashFirstLaunchedDesktopDetails(v) + case "dash_first_launched_extension_details": + let v = try TeamLog.DashFirstLaunchedExtensionDetailsSerializer().deserialize(json) + return EventDetails.dashFirstLaunchedExtensionDetails(v) + case "dash_first_launched_web_start_page_details": + let v = try TeamLog.DashFirstLaunchedWebStartPageDetailsSerializer().deserialize(json) + return EventDetails.dashFirstLaunchedWebStartPageDetails(v) + case "dash_opened_shared_link_to_stack_details": + let v = try TeamLog.DashOpenedSharedLinkToStackDetailsSerializer().deserialize(json) + return EventDetails.dashOpenedSharedLinkToStackDetails(v) + case "dash_opened_stack_details": + let v = try TeamLog.DashOpenedStackDetailsSerializer().deserialize(json) + return EventDetails.dashOpenedStackDetails(v) + case "dash_preview_opt_out_status_changed_details": + let v = try TeamLog.DashPreviewOptOutStatusChangedDetailsSerializer().deserialize(json) + return EventDetails.dashPreviewOptOutStatusChangedDetails(v) + case "dash_removed_connector_details": + let v = try TeamLog.DashRemovedConnectorDetailsSerializer().deserialize(json) + return EventDetails.dashRemovedConnectorDetails(v) + case "dash_removed_link_from_stack_details": + let v = try TeamLog.DashRemovedLinkFromStackDetailsSerializer().deserialize(json) + return EventDetails.dashRemovedLinkFromStackDetails(v) + case "dash_removed_shared_link_to_stack_details": + let v = try TeamLog.DashRemovedSharedLinkToStackDetailsSerializer().deserialize(json) + return EventDetails.dashRemovedSharedLinkToStackDetails(v) + case "dash_removed_team_email_domain_allowlist_details": + let v = try TeamLog.DashRemovedTeamEmailDomainAllowlistDetailsSerializer().deserialize(json) + return EventDetails.dashRemovedTeamEmailDomainAllowlistDetails(v) + case "dash_renamed_stack_details": + let v = try TeamLog.DashRenamedStackDetailsSerializer().deserialize(json) + return EventDetails.dashRenamedStackDetails(v) + case "dash_shared_link_to_stack_details": + let v = try TeamLog.DashSharedLinkToStackDetailsSerializer().deserialize(json) + return EventDetails.dashSharedLinkToStackDetails(v) + case "dash_unarchived_stack_details": + let v = try TeamLog.DashUnarchivedStackDetailsSerializer().deserialize(json) + return EventDetails.dashUnarchivedStackDetails(v) + case "dash_viewed_company_stack_details": + let v = try TeamLog.DashViewedCompanyStackDetailsSerializer().deserialize(json) + return EventDetails.dashViewedCompanyStackDetails(v) + case "dash_viewed_external_ai_activity_report_details": + let v = try TeamLog.DashViewedExternalAiActivityReportDetailsSerializer().deserialize(json) + return EventDetails.dashViewedExternalAiActivityReportDetails(v) + case "governance_policy_add_folders_details": + let v = try TeamLog.GovernancePolicyAddFoldersDetailsSerializer().deserialize(json) + return EventDetails.governancePolicyAddFoldersDetails(v) + case "governance_policy_add_folder_failed_details": + let v = try TeamLog.GovernancePolicyAddFolderFailedDetailsSerializer().deserialize(json) + return EventDetails.governancePolicyAddFolderFailedDetails(v) + case "governance_policy_content_disposed_details": + let v = try TeamLog.GovernancePolicyContentDisposedDetailsSerializer().deserialize(json) + return EventDetails.governancePolicyContentDisposedDetails(v) + case "governance_policy_create_details": + let v = try TeamLog.GovernancePolicyCreateDetailsSerializer().deserialize(json) + return EventDetails.governancePolicyCreateDetails(v) + case "governance_policy_delete_details": + let v = try TeamLog.GovernancePolicyDeleteDetailsSerializer().deserialize(json) + return EventDetails.governancePolicyDeleteDetails(v) + case "governance_policy_edit_details_details": + let v = try TeamLog.GovernancePolicyEditDetailsDetailsSerializer().deserialize(json) + return EventDetails.governancePolicyEditDetailsDetails(v) + case "governance_policy_edit_duration_details": + let v = try TeamLog.GovernancePolicyEditDurationDetailsSerializer().deserialize(json) + return EventDetails.governancePolicyEditDurationDetails(v) + case "governance_policy_export_created_details": + let v = try TeamLog.GovernancePolicyExportCreatedDetailsSerializer().deserialize(json) + return EventDetails.governancePolicyExportCreatedDetails(v) + case "governance_policy_export_removed_details": + let v = try TeamLog.GovernancePolicyExportRemovedDetailsSerializer().deserialize(json) + return EventDetails.governancePolicyExportRemovedDetails(v) + case "governance_policy_remove_folders_details": + let v = try TeamLog.GovernancePolicyRemoveFoldersDetailsSerializer().deserialize(json) + return EventDetails.governancePolicyRemoveFoldersDetails(v) + case "governance_policy_report_created_details": + let v = try TeamLog.GovernancePolicyReportCreatedDetailsSerializer().deserialize(json) + return EventDetails.governancePolicyReportCreatedDetails(v) + case "governance_policy_zip_part_downloaded_details": + let v = try TeamLog.GovernancePolicyZipPartDownloadedDetailsSerializer().deserialize(json) + return EventDetails.governancePolicyZipPartDownloadedDetails(v) + case "legal_holds_activate_a_hold_details": + let v = try TeamLog.LegalHoldsActivateAHoldDetailsSerializer().deserialize(json) + return EventDetails.legalHoldsActivateAHoldDetails(v) + case "legal_holds_add_members_details": + let v = try TeamLog.LegalHoldsAddMembersDetailsSerializer().deserialize(json) + return EventDetails.legalHoldsAddMembersDetails(v) + case "legal_holds_change_hold_details_details": + let v = try TeamLog.LegalHoldsChangeHoldDetailsDetailsSerializer().deserialize(json) + return EventDetails.legalHoldsChangeHoldDetailsDetails(v) + case "legal_holds_change_hold_name_details": + let v = try TeamLog.LegalHoldsChangeHoldNameDetailsSerializer().deserialize(json) + return EventDetails.legalHoldsChangeHoldNameDetails(v) + case "legal_holds_export_a_hold_details": + let v = try TeamLog.LegalHoldsExportAHoldDetailsSerializer().deserialize(json) + return EventDetails.legalHoldsExportAHoldDetails(v) + case "legal_holds_export_cancelled_details": + let v = try TeamLog.LegalHoldsExportCancelledDetailsSerializer().deserialize(json) + return EventDetails.legalHoldsExportCancelledDetails(v) + case "legal_holds_export_downloaded_details": + let v = try TeamLog.LegalHoldsExportDownloadedDetailsSerializer().deserialize(json) + return EventDetails.legalHoldsExportDownloadedDetails(v) + case "legal_holds_export_removed_details": + let v = try TeamLog.LegalHoldsExportRemovedDetailsSerializer().deserialize(json) + return EventDetails.legalHoldsExportRemovedDetails(v) + case "legal_holds_release_a_hold_details": + let v = try TeamLog.LegalHoldsReleaseAHoldDetailsSerializer().deserialize(json) + return EventDetails.legalHoldsReleaseAHoldDetails(v) + case "legal_holds_remove_members_details": + let v = try TeamLog.LegalHoldsRemoveMembersDetailsSerializer().deserialize(json) + return EventDetails.legalHoldsRemoveMembersDetails(v) + case "legal_holds_report_a_hold_details": + let v = try TeamLog.LegalHoldsReportAHoldDetailsSerializer().deserialize(json) + return EventDetails.legalHoldsReportAHoldDetails(v) + case "device_change_ip_desktop_details": + let v = try TeamLog.DeviceChangeIpDesktopDetailsSerializer().deserialize(json) + return EventDetails.deviceChangeIpDesktopDetails(v) + case "device_change_ip_mobile_details": + let v = try TeamLog.DeviceChangeIpMobileDetailsSerializer().deserialize(json) + return EventDetails.deviceChangeIpMobileDetails(v) + case "device_change_ip_web_details": + let v = try TeamLog.DeviceChangeIpWebDetailsSerializer().deserialize(json) + return EventDetails.deviceChangeIpWebDetails(v) + case "device_delete_on_unlink_fail_details": + let v = try TeamLog.DeviceDeleteOnUnlinkFailDetailsSerializer().deserialize(json) + return EventDetails.deviceDeleteOnUnlinkFailDetails(v) + case "device_delete_on_unlink_success_details": + let v = try TeamLog.DeviceDeleteOnUnlinkSuccessDetailsSerializer().deserialize(json) + return EventDetails.deviceDeleteOnUnlinkSuccessDetails(v) + case "device_link_fail_details": + let v = try TeamLog.DeviceLinkFailDetailsSerializer().deserialize(json) + return EventDetails.deviceLinkFailDetails(v) + case "device_link_success_details": + let v = try TeamLog.DeviceLinkSuccessDetailsSerializer().deserialize(json) + return EventDetails.deviceLinkSuccessDetails(v) + case "device_management_disabled_details": + let v = try TeamLog.DeviceManagementDisabledDetailsSerializer().deserialize(json) + return EventDetails.deviceManagementDisabledDetails(v) + case "device_management_enabled_details": + let v = try TeamLog.DeviceManagementEnabledDetailsSerializer().deserialize(json) + return EventDetails.deviceManagementEnabledDetails(v) + case "device_sync_backup_status_changed_details": + let v = try TeamLog.DeviceSyncBackupStatusChangedDetailsSerializer().deserialize(json) + return EventDetails.deviceSyncBackupStatusChangedDetails(v) + case "device_unlink_details": + let v = try TeamLog.DeviceUnlinkDetailsSerializer().deserialize(json) + return EventDetails.deviceUnlinkDetails(v) + case "dropbox_passwords_exported_details": + let v = try TeamLog.DropboxPasswordsExportedDetailsSerializer().deserialize(json) + return EventDetails.dropboxPasswordsExportedDetails(v) + case "dropbox_passwords_new_device_enrolled_details": + let v = try TeamLog.DropboxPasswordsNewDeviceEnrolledDetailsSerializer().deserialize(json) + return EventDetails.dropboxPasswordsNewDeviceEnrolledDetails(v) + case "emm_refresh_auth_token_details": + let v = try TeamLog.EmmRefreshAuthTokenDetailsSerializer().deserialize(json) + return EventDetails.emmRefreshAuthTokenDetails(v) + case "external_drive_backup_eligibility_status_checked_details": + let v = try TeamLog.ExternalDriveBackupEligibilityStatusCheckedDetailsSerializer().deserialize(json) + return EventDetails.externalDriveBackupEligibilityStatusCheckedDetails(v) + case "external_drive_backup_status_changed_details": + let v = try TeamLog.ExternalDriveBackupStatusChangedDetailsSerializer().deserialize(json) + return EventDetails.externalDriveBackupStatusChangedDetails(v) + case "account_capture_change_availability_details": + let v = try TeamLog.AccountCaptureChangeAvailabilityDetailsSerializer().deserialize(json) + return EventDetails.accountCaptureChangeAvailabilityDetails(v) + case "account_capture_migrate_account_details": + let v = try TeamLog.AccountCaptureMigrateAccountDetailsSerializer().deserialize(json) + return EventDetails.accountCaptureMigrateAccountDetails(v) + case "account_capture_notification_emails_sent_details": + let v = try TeamLog.AccountCaptureNotificationEmailsSentDetailsSerializer().deserialize(json) + return EventDetails.accountCaptureNotificationEmailsSentDetails(v) + case "account_capture_relinquish_account_details": + let v = try TeamLog.AccountCaptureRelinquishAccountDetailsSerializer().deserialize(json) + return EventDetails.accountCaptureRelinquishAccountDetails(v) + case "disabled_domain_invites_details": + let v = try TeamLog.DisabledDomainInvitesDetailsSerializer().deserialize(json) + return EventDetails.disabledDomainInvitesDetails(v) + case "domain_invites_approve_request_to_join_team_details": + let v = try TeamLog.DomainInvitesApproveRequestToJoinTeamDetailsSerializer().deserialize(json) + return EventDetails.domainInvitesApproveRequestToJoinTeamDetails(v) + case "domain_invites_decline_request_to_join_team_details": + let v = try TeamLog.DomainInvitesDeclineRequestToJoinTeamDetailsSerializer().deserialize(json) + return EventDetails.domainInvitesDeclineRequestToJoinTeamDetails(v) + case "domain_invites_email_existing_users_details": + let v = try TeamLog.DomainInvitesEmailExistingUsersDetailsSerializer().deserialize(json) + return EventDetails.domainInvitesEmailExistingUsersDetails(v) + case "domain_invites_request_to_join_team_details": + let v = try TeamLog.DomainInvitesRequestToJoinTeamDetailsSerializer().deserialize(json) + return EventDetails.domainInvitesRequestToJoinTeamDetails(v) + case "domain_invites_set_invite_new_user_pref_to_no_details": + let v = try TeamLog.DomainInvitesSetInviteNewUserPrefToNoDetailsSerializer().deserialize(json) + return EventDetails.domainInvitesSetInviteNewUserPrefToNoDetails(v) + case "domain_invites_set_invite_new_user_pref_to_yes_details": + let v = try TeamLog.DomainInvitesSetInviteNewUserPrefToYesDetailsSerializer().deserialize(json) + return EventDetails.domainInvitesSetInviteNewUserPrefToYesDetails(v) + case "domain_verification_add_domain_fail_details": + let v = try TeamLog.DomainVerificationAddDomainFailDetailsSerializer().deserialize(json) + return EventDetails.domainVerificationAddDomainFailDetails(v) + case "domain_verification_add_domain_success_details": + let v = try TeamLog.DomainVerificationAddDomainSuccessDetailsSerializer().deserialize(json) + return EventDetails.domainVerificationAddDomainSuccessDetails(v) + case "domain_verification_remove_domain_details": + let v = try TeamLog.DomainVerificationRemoveDomainDetailsSerializer().deserialize(json) + return EventDetails.domainVerificationRemoveDomainDetails(v) + case "enabled_domain_invites_details": + let v = try TeamLog.EnabledDomainInvitesDetailsSerializer().deserialize(json) + return EventDetails.enabledDomainInvitesDetails(v) + case "encrypted_folder_cancel_team_key_rotation_details": + let v = try TeamLog.EncryptedFolderCancelTeamKeyRotationDetailsSerializer().deserialize(json) + return EventDetails.encryptedFolderCancelTeamKeyRotationDetails(v) + case "encrypted_folder_enroll_backup_key_details": + let v = try TeamLog.EncryptedFolderEnrollBackupKeyDetailsSerializer().deserialize(json) + return EventDetails.encryptedFolderEnrollBackupKeyDetails(v) + case "encrypted_folder_enroll_client_details": + let v = try TeamLog.EncryptedFolderEnrollClientDetailsSerializer().deserialize(json) + return EventDetails.encryptedFolderEnrollClientDetails(v) + case "encrypted_folder_enroll_team_details": + let v = try TeamLog.EncryptedFolderEnrollTeamDetailsSerializer().deserialize(json) + return EventDetails.encryptedFolderEnrollTeamDetails(v) + case "encrypted_folder_finish_team_unenrollment_details": + let v = try TeamLog.EncryptedFolderFinishTeamUnenrollmentDetailsSerializer().deserialize(json) + return EventDetails.encryptedFolderFinishTeamUnenrollmentDetails(v) + case "encrypted_folder_init_team_key_rotation_details": + let v = try TeamLog.EncryptedFolderInitTeamKeyRotationDetailsSerializer().deserialize(json) + return EventDetails.encryptedFolderInitTeamKeyRotationDetails(v) + case "encrypted_folder_init_team_unenrollment_details": + let v = try TeamLog.EncryptedFolderInitTeamUnenrollmentDetailsSerializer().deserialize(json) + return EventDetails.encryptedFolderInitTeamUnenrollmentDetails(v) + case "encrypted_folder_remove_backup_key_details": + let v = try TeamLog.EncryptedFolderRemoveBackupKeyDetailsSerializer().deserialize(json) + return EventDetails.encryptedFolderRemoveBackupKeyDetails(v) + case "encrypted_folder_rotate_team_key_details": + let v = try TeamLog.EncryptedFolderRotateTeamKeyDetailsSerializer().deserialize(json) + return EventDetails.encryptedFolderRotateTeamKeyDetails(v) + case "encrypted_folder_unenroll_client_details": + let v = try TeamLog.EncryptedFolderUnenrollClientDetailsSerializer().deserialize(json) + return EventDetails.encryptedFolderUnenrollClientDetails(v) + case "team_encryption_key_activate_key_details": + let v = try TeamLog.TeamEncryptionKeyActivateKeyDetailsSerializer().deserialize(json) + return EventDetails.teamEncryptionKeyActivateKeyDetails(v) + case "team_encryption_key_cancel_key_deletion_details": + let v = try TeamLog.TeamEncryptionKeyCancelKeyDeletionDetailsSerializer().deserialize(json) + return EventDetails.teamEncryptionKeyCancelKeyDeletionDetails(v) + case "team_encryption_key_create_key_details": + let v = try TeamLog.TeamEncryptionKeyCreateKeyDetailsSerializer().deserialize(json) + return EventDetails.teamEncryptionKeyCreateKeyDetails(v) + case "team_encryption_key_deactivate_key_details": + let v = try TeamLog.TeamEncryptionKeyDeactivateKeyDetailsSerializer().deserialize(json) + return EventDetails.teamEncryptionKeyDeactivateKeyDetails(v) + case "team_encryption_key_delete_key_details": + let v = try TeamLog.TeamEncryptionKeyDeleteKeyDetailsSerializer().deserialize(json) + return EventDetails.teamEncryptionKeyDeleteKeyDetails(v) + case "team_encryption_key_disable_key_details": + let v = try TeamLog.TeamEncryptionKeyDisableKeyDetailsSerializer().deserialize(json) + return EventDetails.teamEncryptionKeyDisableKeyDetails(v) + case "team_encryption_key_enable_key_details": + let v = try TeamLog.TeamEncryptionKeyEnableKeyDetailsSerializer().deserialize(json) + return EventDetails.teamEncryptionKeyEnableKeyDetails(v) + case "team_encryption_key_rotate_key_details": + let v = try TeamLog.TeamEncryptionKeyRotateKeyDetailsSerializer().deserialize(json) + return EventDetails.teamEncryptionKeyRotateKeyDetails(v) + case "team_encryption_key_schedule_key_deletion_details": + let v = try TeamLog.TeamEncryptionKeyScheduleKeyDeletionDetailsSerializer().deserialize(json) + return EventDetails.teamEncryptionKeyScheduleKeyDeletionDetails(v) + case "apply_naming_convention_details": + let v = try TeamLog.ApplyNamingConventionDetailsSerializer().deserialize(json) + return EventDetails.applyNamingConventionDetails(v) + case "create_folder_details": + let v = try TeamLog.CreateFolderDetailsSerializer().deserialize(json) + return EventDetails.createFolderDetails(v) + case "file_add_details": + let v = try TeamLog.FileAddDetailsSerializer().deserialize(json) + return EventDetails.fileAddDetails(v) + case "file_add_from_automation_details": + let v = try TeamLog.FileAddFromAutomationDetailsSerializer().deserialize(json) + return EventDetails.fileAddFromAutomationDetails(v) + case "file_copy_details": + let v = try TeamLog.FileCopyDetailsSerializer().deserialize(json) + return EventDetails.fileCopyDetails(v) + case "file_delete_details": + let v = try TeamLog.FileDeleteDetailsSerializer().deserialize(json) + return EventDetails.fileDeleteDetails(v) + case "file_download_details": + let v = try TeamLog.FileDownloadDetailsSerializer().deserialize(json) + return EventDetails.fileDownloadDetails(v) + case "file_edit_details": + let v = try TeamLog.FileEditDetailsSerializer().deserialize(json) + return EventDetails.fileEditDetails(v) + case "file_get_copy_reference_details": + let v = try TeamLog.FileGetCopyReferenceDetailsSerializer().deserialize(json) + return EventDetails.fileGetCopyReferenceDetails(v) + case "file_locking_lock_status_changed_details": + let v = try TeamLog.FileLockingLockStatusChangedDetailsSerializer().deserialize(json) + return EventDetails.fileLockingLockStatusChangedDetails(v) + case "file_move_details": + let v = try TeamLog.FileMoveDetailsSerializer().deserialize(json) + return EventDetails.fileMoveDetails(v) + case "file_permanently_delete_details": + let v = try TeamLog.FilePermanentlyDeleteDetailsSerializer().deserialize(json) + return EventDetails.filePermanentlyDeleteDetails(v) + case "file_preview_details": + let v = try TeamLog.FilePreviewDetailsSerializer().deserialize(json) + return EventDetails.filePreviewDetails(v) + case "file_rename_details": + let v = try TeamLog.FileRenameDetailsSerializer().deserialize(json) + return EventDetails.fileRenameDetails(v) + case "file_restore_details": + let v = try TeamLog.FileRestoreDetailsSerializer().deserialize(json) + return EventDetails.fileRestoreDetails(v) + case "file_revert_details": + let v = try TeamLog.FileRevertDetailsSerializer().deserialize(json) + return EventDetails.fileRevertDetails(v) + case "file_rollback_changes_details": + let v = try TeamLog.FileRollbackChangesDetailsSerializer().deserialize(json) + return EventDetails.fileRollbackChangesDetails(v) + case "file_save_copy_reference_details": + let v = try TeamLog.FileSaveCopyReferenceDetailsSerializer().deserialize(json) + return EventDetails.fileSaveCopyReferenceDetails(v) + case "folder_overview_description_changed_details": + let v = try TeamLog.FolderOverviewDescriptionChangedDetailsSerializer().deserialize(json) + return EventDetails.folderOverviewDescriptionChangedDetails(v) + case "folder_overview_item_pinned_details": + let v = try TeamLog.FolderOverviewItemPinnedDetailsSerializer().deserialize(json) + return EventDetails.folderOverviewItemPinnedDetails(v) + case "folder_overview_item_unpinned_details": + let v = try TeamLog.FolderOverviewItemUnpinnedDetailsSerializer().deserialize(json) + return EventDetails.folderOverviewItemUnpinnedDetails(v) + case "media_hub_file_downloaded_details": + let v = try TeamLog.MediaHubFileDownloadedDetailsSerializer().deserialize(json) + return EventDetails.mediaHubFileDownloadedDetails(v) + case "object_label_added_details": + let v = try TeamLog.ObjectLabelAddedDetailsSerializer().deserialize(json) + return EventDetails.objectLabelAddedDetails(v) + case "object_label_removed_details": + let v = try TeamLog.ObjectLabelRemovedDetailsSerializer().deserialize(json) + return EventDetails.objectLabelRemovedDetails(v) + case "object_label_updated_value_details": + let v = try TeamLog.ObjectLabelUpdatedValueDetailsSerializer().deserialize(json) + return EventDetails.objectLabelUpdatedValueDetails(v) + case "organize_folder_with_tidy_details": + let v = try TeamLog.OrganizeFolderWithTidyDetailsSerializer().deserialize(json) + return EventDetails.organizeFolderWithTidyDetails(v) + case "replay_file_delete_details": + let v = try TeamLog.ReplayFileDeleteDetailsSerializer().deserialize(json) + return EventDetails.replayFileDeleteDetails(v) + case "replay_file_downloaded_details": + let v = try TeamLog.ReplayFileDownloadedDetailsSerializer().deserialize(json) + return EventDetails.replayFileDownloadedDetails(v) + case "replay_team_project_created_details": + let v = try TeamLog.ReplayTeamProjectCreatedDetailsSerializer().deserialize(json) + return EventDetails.replayTeamProjectCreatedDetails(v) + case "rewind_folder_details": + let v = try TeamLog.RewindFolderDetailsSerializer().deserialize(json) + return EventDetails.rewindFolderDetails(v) + case "undo_naming_convention_details": + let v = try TeamLog.UndoNamingConventionDetailsSerializer().deserialize(json) + return EventDetails.undoNamingConventionDetails(v) + case "undo_organize_folder_with_tidy_details": + let v = try TeamLog.UndoOrganizeFolderWithTidyDetailsSerializer().deserialize(json) + return EventDetails.undoOrganizeFolderWithTidyDetails(v) + case "user_tags_added_details": + let v = try TeamLog.UserTagsAddedDetailsSerializer().deserialize(json) + return EventDetails.userTagsAddedDetails(v) + case "user_tags_removed_details": + let v = try TeamLog.UserTagsRemovedDetailsSerializer().deserialize(json) + return EventDetails.userTagsRemovedDetails(v) + case "email_ingest_receive_file_details": + let v = try TeamLog.EmailIngestReceiveFileDetailsSerializer().deserialize(json) + return EventDetails.emailIngestReceiveFileDetails(v) + case "file_request_auto_close_details": + let v = try TeamLog.FileRequestAutoCloseDetailsSerializer().deserialize(json) + return EventDetails.fileRequestAutoCloseDetails(v) + case "file_request_change_details": + let v = try TeamLog.FileRequestChangeDetailsSerializer().deserialize(json) + return EventDetails.fileRequestChangeDetails(v) + case "file_request_close_details": + let v = try TeamLog.FileRequestCloseDetailsSerializer().deserialize(json) + return EventDetails.fileRequestCloseDetails(v) + case "file_request_create_details": + let v = try TeamLog.FileRequestCreateDetailsSerializer().deserialize(json) + return EventDetails.fileRequestCreateDetails(v) + case "file_request_delete_details": + let v = try TeamLog.FileRequestDeleteDetailsSerializer().deserialize(json) + return EventDetails.fileRequestDeleteDetails(v) + case "file_request_receive_file_details": + let v = try TeamLog.FileRequestReceiveFileDetailsSerializer().deserialize(json) + return EventDetails.fileRequestReceiveFileDetails(v) + case "group_add_external_id_details": + let v = try TeamLog.GroupAddExternalIdDetailsSerializer().deserialize(json) + return EventDetails.groupAddExternalIdDetails(v) + case "group_add_member_details": + let v = try TeamLog.GroupAddMemberDetailsSerializer().deserialize(json) + return EventDetails.groupAddMemberDetails(v) + case "group_change_external_id_details": + let v = try TeamLog.GroupChangeExternalIdDetailsSerializer().deserialize(json) + return EventDetails.groupChangeExternalIdDetails(v) + case "group_change_management_type_details": + let v = try TeamLog.GroupChangeManagementTypeDetailsSerializer().deserialize(json) + return EventDetails.groupChangeManagementTypeDetails(v) + case "group_change_member_role_details": + let v = try TeamLog.GroupChangeMemberRoleDetailsSerializer().deserialize(json) + return EventDetails.groupChangeMemberRoleDetails(v) + case "group_create_details": + let v = try TeamLog.GroupCreateDetailsSerializer().deserialize(json) + return EventDetails.groupCreateDetails(v) + case "group_delete_details": + let v = try TeamLog.GroupDeleteDetailsSerializer().deserialize(json) + return EventDetails.groupDeleteDetails(v) + case "group_description_updated_details": + let v = try TeamLog.GroupDescriptionUpdatedDetailsSerializer().deserialize(json) + return EventDetails.groupDescriptionUpdatedDetails(v) + case "group_external_sharing_setting_override_changed_details": + let v = try TeamLog.GroupExternalSharingSettingOverrideChangedDetailsSerializer().deserialize(json) + return EventDetails.groupExternalSharingSettingOverrideChangedDetails(v) + case "group_join_policy_updated_details": + let v = try TeamLog.GroupJoinPolicyUpdatedDetailsSerializer().deserialize(json) + return EventDetails.groupJoinPolicyUpdatedDetails(v) + case "group_moved_details": + let v = try TeamLog.GroupMovedDetailsSerializer().deserialize(json) + return EventDetails.groupMovedDetails(v) + case "group_remove_external_id_details": + let v = try TeamLog.GroupRemoveExternalIdDetailsSerializer().deserialize(json) + return EventDetails.groupRemoveExternalIdDetails(v) + case "group_remove_member_details": + let v = try TeamLog.GroupRemoveMemberDetailsSerializer().deserialize(json) + return EventDetails.groupRemoveMemberDetails(v) + case "group_rename_details": + let v = try TeamLog.GroupRenameDetailsSerializer().deserialize(json) + return EventDetails.groupRenameDetails(v) + case "account_lock_or_unlocked_details": + let v = try TeamLog.AccountLockOrUnlockedDetailsSerializer().deserialize(json) + return EventDetails.accountLockOrUnlockedDetails(v) + case "emm_error_details": + let v = try TeamLog.EmmErrorDetailsSerializer().deserialize(json) + return EventDetails.emmErrorDetails(v) + case "guest_admin_signed_in_via_trusted_teams_details": + let v = try TeamLog.GuestAdminSignedInViaTrustedTeamsDetailsSerializer().deserialize(json) + return EventDetails.guestAdminSignedInViaTrustedTeamsDetails(v) + case "guest_admin_signed_out_via_trusted_teams_details": + let v = try TeamLog.GuestAdminSignedOutViaTrustedTeamsDetailsSerializer().deserialize(json) + return EventDetails.guestAdminSignedOutViaTrustedTeamsDetails(v) + case "login_fail_details": + let v = try TeamLog.LoginFailDetailsSerializer().deserialize(json) + return EventDetails.loginFailDetails(v) + case "login_success_details": + let v = try TeamLog.LoginSuccessDetailsSerializer().deserialize(json) + return EventDetails.loginSuccessDetails(v) + case "logout_details": + let v = try TeamLog.LogoutDetailsSerializer().deserialize(json) + return EventDetails.logoutDetails(v) + case "reseller_support_session_end_details": + let v = try TeamLog.ResellerSupportSessionEndDetailsSerializer().deserialize(json) + return EventDetails.resellerSupportSessionEndDetails(v) + case "reseller_support_session_start_details": + let v = try TeamLog.ResellerSupportSessionStartDetailsSerializer().deserialize(json) + return EventDetails.resellerSupportSessionStartDetails(v) + case "sign_in_as_session_end_details": + let v = try TeamLog.SignInAsSessionEndDetailsSerializer().deserialize(json) + return EventDetails.signInAsSessionEndDetails(v) + case "sign_in_as_session_start_details": + let v = try TeamLog.SignInAsSessionStartDetailsSerializer().deserialize(json) + return EventDetails.signInAsSessionStartDetails(v) + case "sso_error_details": + let v = try TeamLog.SsoErrorDetailsSerializer().deserialize(json) + return EventDetails.ssoErrorDetails(v) + case "addon_assigned_details": + let v = try TeamLog.AddonAssignedDetailsSerializer().deserialize(json) + return EventDetails.addonAssignedDetails(v) + case "addon_removed_details": + let v = try TeamLog.AddonRemovedDetailsSerializer().deserialize(json) + return EventDetails.addonRemovedDetails(v) + case "backup_admin_invitation_sent_details": + let v = try TeamLog.BackupAdminInvitationSentDetailsSerializer().deserialize(json) + return EventDetails.backupAdminInvitationSentDetails(v) + case "backup_invitation_opened_details": + let v = try TeamLog.BackupInvitationOpenedDetailsSerializer().deserialize(json) + return EventDetails.backupInvitationOpenedDetails(v) + case "create_team_invite_link_details": + let v = try TeamLog.CreateTeamInviteLinkDetailsSerializer().deserialize(json) + return EventDetails.createTeamInviteLinkDetails(v) + case "delete_team_invite_link_details": + let v = try TeamLog.DeleteTeamInviteLinkDetailsSerializer().deserialize(json) + return EventDetails.deleteTeamInviteLinkDetails(v) + case "member_add_external_id_details": + let v = try TeamLog.MemberAddExternalIdDetailsSerializer().deserialize(json) + return EventDetails.memberAddExternalIdDetails(v) + case "member_add_name_details": + let v = try TeamLog.MemberAddNameDetailsSerializer().deserialize(json) + return EventDetails.memberAddNameDetails(v) + case "member_change_admin_role_details": + let v = try TeamLog.MemberChangeAdminRoleDetailsSerializer().deserialize(json) + return EventDetails.memberChangeAdminRoleDetails(v) + case "member_change_email_details": + let v = try TeamLog.MemberChangeEmailDetailsSerializer().deserialize(json) + return EventDetails.memberChangeEmailDetails(v) + case "member_change_external_id_details": + let v = try TeamLog.MemberChangeExternalIdDetailsSerializer().deserialize(json) + return EventDetails.memberChangeExternalIdDetails(v) + case "member_change_membership_type_details": + let v = try TeamLog.MemberChangeMembershipTypeDetailsSerializer().deserialize(json) + return EventDetails.memberChangeMembershipTypeDetails(v) + case "member_change_name_details": + let v = try TeamLog.MemberChangeNameDetailsSerializer().deserialize(json) + return EventDetails.memberChangeNameDetails(v) + case "member_change_reseller_role_details": + let v = try TeamLog.MemberChangeResellerRoleDetailsSerializer().deserialize(json) + return EventDetails.memberChangeResellerRoleDetails(v) + case "member_change_status_details": + let v = try TeamLog.MemberChangeStatusDetailsSerializer().deserialize(json) + return EventDetails.memberChangeStatusDetails(v) + case "member_delete_manual_contacts_details": + let v = try TeamLog.MemberDeleteManualContactsDetailsSerializer().deserialize(json) + return EventDetails.memberDeleteManualContactsDetails(v) + case "member_delete_profile_photo_details": + let v = try TeamLog.MemberDeleteProfilePhotoDetailsSerializer().deserialize(json) + return EventDetails.memberDeleteProfilePhotoDetails(v) + case "member_folder_contents_accessed_details": + let v = try TeamLog.MemberFolderContentsAccessedDetailsSerializer().deserialize(json) + return EventDetails.memberFolderContentsAccessedDetails(v) + case "member_permanently_delete_account_contents_details": + let v = try TeamLog.MemberPermanentlyDeleteAccountContentsDetailsSerializer().deserialize(json) + return EventDetails.memberPermanentlyDeleteAccountContentsDetails(v) + case "member_remove_external_id_details": + let v = try TeamLog.MemberRemoveExternalIdDetailsSerializer().deserialize(json) + return EventDetails.memberRemoveExternalIdDetails(v) + case "member_set_profile_photo_details": + let v = try TeamLog.MemberSetProfilePhotoDetailsSerializer().deserialize(json) + return EventDetails.memberSetProfilePhotoDetails(v) + case "member_space_limits_add_custom_quota_details": + let v = try TeamLog.MemberSpaceLimitsAddCustomQuotaDetailsSerializer().deserialize(json) + return EventDetails.memberSpaceLimitsAddCustomQuotaDetails(v) + case "member_space_limits_change_custom_quota_details": + let v = try TeamLog.MemberSpaceLimitsChangeCustomQuotaDetailsSerializer().deserialize(json) + return EventDetails.memberSpaceLimitsChangeCustomQuotaDetails(v) + case "member_space_limits_change_status_details": + let v = try TeamLog.MemberSpaceLimitsChangeStatusDetailsSerializer().deserialize(json) + return EventDetails.memberSpaceLimitsChangeStatusDetails(v) + case "member_space_limits_remove_custom_quota_details": + let v = try TeamLog.MemberSpaceLimitsRemoveCustomQuotaDetailsSerializer().deserialize(json) + return EventDetails.memberSpaceLimitsRemoveCustomQuotaDetails(v) + case "member_suggest_details": + let v = try TeamLog.MemberSuggestDetailsSerializer().deserialize(json) + return EventDetails.memberSuggestDetails(v) + case "member_transfer_account_contents_details": + let v = try TeamLog.MemberTransferAccountContentsDetailsSerializer().deserialize(json) + return EventDetails.memberTransferAccountContentsDetails(v) + case "pending_secondary_email_added_details": + let v = try TeamLog.PendingSecondaryEmailAddedDetailsSerializer().deserialize(json) + return EventDetails.pendingSecondaryEmailAddedDetails(v) + case "product_assigned_to_member_details": + let v = try TeamLog.ProductAssignedToMemberDetailsSerializer().deserialize(json) + return EventDetails.productAssignedToMemberDetails(v) + case "product_removed_from_member_details": + let v = try TeamLog.ProductRemovedFromMemberDetailsSerializer().deserialize(json) + return EventDetails.productRemovedFromMemberDetails(v) + case "secondary_email_deleted_details": + let v = try TeamLog.SecondaryEmailDeletedDetailsSerializer().deserialize(json) + return EventDetails.secondaryEmailDeletedDetails(v) + case "secondary_email_verified_details": + let v = try TeamLog.SecondaryEmailVerifiedDetailsSerializer().deserialize(json) + return EventDetails.secondaryEmailVerifiedDetails(v) + case "secondary_mails_policy_changed_details": + let v = try TeamLog.SecondaryMailsPolicyChangedDetailsSerializer().deserialize(json) + return EventDetails.secondaryMailsPolicyChangedDetails(v) + case "binder_add_page_details": + let v = try TeamLog.BinderAddPageDetailsSerializer().deserialize(json) + return EventDetails.binderAddPageDetails(v) + case "binder_add_section_details": + let v = try TeamLog.BinderAddSectionDetailsSerializer().deserialize(json) + return EventDetails.binderAddSectionDetails(v) + case "binder_remove_page_details": + let v = try TeamLog.BinderRemovePageDetailsSerializer().deserialize(json) + return EventDetails.binderRemovePageDetails(v) + case "binder_remove_section_details": + let v = try TeamLog.BinderRemoveSectionDetailsSerializer().deserialize(json) + return EventDetails.binderRemoveSectionDetails(v) + case "binder_rename_page_details": + let v = try TeamLog.BinderRenamePageDetailsSerializer().deserialize(json) + return EventDetails.binderRenamePageDetails(v) + case "binder_rename_section_details": + let v = try TeamLog.BinderRenameSectionDetailsSerializer().deserialize(json) + return EventDetails.binderRenameSectionDetails(v) + case "binder_reorder_page_details": + let v = try TeamLog.BinderReorderPageDetailsSerializer().deserialize(json) + return EventDetails.binderReorderPageDetails(v) + case "binder_reorder_section_details": + let v = try TeamLog.BinderReorderSectionDetailsSerializer().deserialize(json) + return EventDetails.binderReorderSectionDetails(v) + case "paper_content_add_member_details": + let v = try TeamLog.PaperContentAddMemberDetailsSerializer().deserialize(json) + return EventDetails.paperContentAddMemberDetails(v) + case "paper_content_add_to_folder_details": + let v = try TeamLog.PaperContentAddToFolderDetailsSerializer().deserialize(json) + return EventDetails.paperContentAddToFolderDetails(v) + case "paper_content_archive_details": + let v = try TeamLog.PaperContentArchiveDetailsSerializer().deserialize(json) + return EventDetails.paperContentArchiveDetails(v) + case "paper_content_create_details": + let v = try TeamLog.PaperContentCreateDetailsSerializer().deserialize(json) + return EventDetails.paperContentCreateDetails(v) + case "paper_content_permanently_delete_details": + let v = try TeamLog.PaperContentPermanentlyDeleteDetailsSerializer().deserialize(json) + return EventDetails.paperContentPermanentlyDeleteDetails(v) + case "paper_content_remove_from_folder_details": + let v = try TeamLog.PaperContentRemoveFromFolderDetailsSerializer().deserialize(json) + return EventDetails.paperContentRemoveFromFolderDetails(v) + case "paper_content_remove_member_details": + let v = try TeamLog.PaperContentRemoveMemberDetailsSerializer().deserialize(json) + return EventDetails.paperContentRemoveMemberDetails(v) + case "paper_content_rename_details": + let v = try TeamLog.PaperContentRenameDetailsSerializer().deserialize(json) + return EventDetails.paperContentRenameDetails(v) + case "paper_content_restore_details": + let v = try TeamLog.PaperContentRestoreDetailsSerializer().deserialize(json) + return EventDetails.paperContentRestoreDetails(v) + case "paper_doc_add_comment_details": + let v = try TeamLog.PaperDocAddCommentDetailsSerializer().deserialize(json) + return EventDetails.paperDocAddCommentDetails(v) + case "paper_doc_change_member_role_details": + let v = try TeamLog.PaperDocChangeMemberRoleDetailsSerializer().deserialize(json) + return EventDetails.paperDocChangeMemberRoleDetails(v) + case "paper_doc_change_sharing_policy_details": + let v = try TeamLog.PaperDocChangeSharingPolicyDetailsSerializer().deserialize(json) + return EventDetails.paperDocChangeSharingPolicyDetails(v) + case "paper_doc_change_subscription_details": + let v = try TeamLog.PaperDocChangeSubscriptionDetailsSerializer().deserialize(json) + return EventDetails.paperDocChangeSubscriptionDetails(v) + case "paper_doc_deleted_details": + let v = try TeamLog.PaperDocDeletedDetailsSerializer().deserialize(json) + return EventDetails.paperDocDeletedDetails(v) + case "paper_doc_delete_comment_details": + let v = try TeamLog.PaperDocDeleteCommentDetailsSerializer().deserialize(json) + return EventDetails.paperDocDeleteCommentDetails(v) + case "paper_doc_download_details": + let v = try TeamLog.PaperDocDownloadDetailsSerializer().deserialize(json) + return EventDetails.paperDocDownloadDetails(v) + case "paper_doc_edit_details": + let v = try TeamLog.PaperDocEditDetailsSerializer().deserialize(json) + return EventDetails.paperDocEditDetails(v) + case "paper_doc_edit_comment_details": + let v = try TeamLog.PaperDocEditCommentDetailsSerializer().deserialize(json) + return EventDetails.paperDocEditCommentDetails(v) + case "paper_doc_followed_details": + let v = try TeamLog.PaperDocFollowedDetailsSerializer().deserialize(json) + return EventDetails.paperDocFollowedDetails(v) + case "paper_doc_mention_details": + let v = try TeamLog.PaperDocMentionDetailsSerializer().deserialize(json) + return EventDetails.paperDocMentionDetails(v) + case "paper_doc_ownership_changed_details": + let v = try TeamLog.PaperDocOwnershipChangedDetailsSerializer().deserialize(json) + return EventDetails.paperDocOwnershipChangedDetails(v) + case "paper_doc_request_access_details": + let v = try TeamLog.PaperDocRequestAccessDetailsSerializer().deserialize(json) + return EventDetails.paperDocRequestAccessDetails(v) + case "paper_doc_resolve_comment_details": + let v = try TeamLog.PaperDocResolveCommentDetailsSerializer().deserialize(json) + return EventDetails.paperDocResolveCommentDetails(v) + case "paper_doc_revert_details": + let v = try TeamLog.PaperDocRevertDetailsSerializer().deserialize(json) + return EventDetails.paperDocRevertDetails(v) + case "paper_doc_slack_share_details": + let v = try TeamLog.PaperDocSlackShareDetailsSerializer().deserialize(json) + return EventDetails.paperDocSlackShareDetails(v) + case "paper_doc_team_invite_details": + let v = try TeamLog.PaperDocTeamInviteDetailsSerializer().deserialize(json) + return EventDetails.paperDocTeamInviteDetails(v) + case "paper_doc_trashed_details": + let v = try TeamLog.PaperDocTrashedDetailsSerializer().deserialize(json) + return EventDetails.paperDocTrashedDetails(v) + case "paper_doc_unresolve_comment_details": + let v = try TeamLog.PaperDocUnresolveCommentDetailsSerializer().deserialize(json) + return EventDetails.paperDocUnresolveCommentDetails(v) + case "paper_doc_untrashed_details": + let v = try TeamLog.PaperDocUntrashedDetailsSerializer().deserialize(json) + return EventDetails.paperDocUntrashedDetails(v) + case "paper_doc_view_details": + let v = try TeamLog.PaperDocViewDetailsSerializer().deserialize(json) + return EventDetails.paperDocViewDetails(v) + case "paper_external_view_allow_details": + let v = try TeamLog.PaperExternalViewAllowDetailsSerializer().deserialize(json) + return EventDetails.paperExternalViewAllowDetails(v) + case "paper_external_view_default_team_details": + let v = try TeamLog.PaperExternalViewDefaultTeamDetailsSerializer().deserialize(json) + return EventDetails.paperExternalViewDefaultTeamDetails(v) + case "paper_external_view_forbid_details": + let v = try TeamLog.PaperExternalViewForbidDetailsSerializer().deserialize(json) + return EventDetails.paperExternalViewForbidDetails(v) + case "paper_folder_change_subscription_details": + let v = try TeamLog.PaperFolderChangeSubscriptionDetailsSerializer().deserialize(json) + return EventDetails.paperFolderChangeSubscriptionDetails(v) + case "paper_folder_deleted_details": + let v = try TeamLog.PaperFolderDeletedDetailsSerializer().deserialize(json) + return EventDetails.paperFolderDeletedDetails(v) + case "paper_folder_followed_details": + let v = try TeamLog.PaperFolderFollowedDetailsSerializer().deserialize(json) + return EventDetails.paperFolderFollowedDetails(v) + case "paper_folder_team_invite_details": + let v = try TeamLog.PaperFolderTeamInviteDetailsSerializer().deserialize(json) + return EventDetails.paperFolderTeamInviteDetails(v) + case "paper_published_link_change_permission_details": + let v = try TeamLog.PaperPublishedLinkChangePermissionDetailsSerializer().deserialize(json) + return EventDetails.paperPublishedLinkChangePermissionDetails(v) + case "paper_published_link_create_details": + let v = try TeamLog.PaperPublishedLinkCreateDetailsSerializer().deserialize(json) + return EventDetails.paperPublishedLinkCreateDetails(v) + case "paper_published_link_disabled_details": + let v = try TeamLog.PaperPublishedLinkDisabledDetailsSerializer().deserialize(json) + return EventDetails.paperPublishedLinkDisabledDetails(v) + case "paper_published_link_view_details": + let v = try TeamLog.PaperPublishedLinkViewDetailsSerializer().deserialize(json) + return EventDetails.paperPublishedLinkViewDetails(v) + case "password_change_details": + let v = try TeamLog.PasswordChangeDetailsSerializer().deserialize(json) + return EventDetails.passwordChangeDetails(v) + case "password_reset_details": + let v = try TeamLog.PasswordResetDetailsSerializer().deserialize(json) + return EventDetails.passwordResetDetails(v) + case "password_reset_all_details": + let v = try TeamLog.PasswordResetAllDetailsSerializer().deserialize(json) + return EventDetails.passwordResetAllDetails(v) + case "protect_action_add_collaborator_details": + let v = try TeamLog.ProtectActionAddCollaboratorDetailsSerializer().deserialize(json) + return EventDetails.protectActionAddCollaboratorDetails(v) + case "protect_action_add_link_details": + let v = try TeamLog.ProtectActionAddLinkDetailsSerializer().deserialize(json) + return EventDetails.protectActionAddLinkDetails(v) + case "protect_action_delete_details": + let v = try TeamLog.ProtectActionDeleteDetailsSerializer().deserialize(json) + return EventDetails.protectActionDeleteDetails(v) + case "protect_action_export_details": + let v = try TeamLog.ProtectActionExportDetailsSerializer().deserialize(json) + return EventDetails.protectActionExportDetails(v) + case "protect_action_remove_collaborator_details": + let v = try TeamLog.ProtectActionRemoveCollaboratorDetailsSerializer().deserialize(json) + return EventDetails.protectActionRemoveCollaboratorDetails(v) + case "protect_action_remove_link_details": + let v = try TeamLog.ProtectActionRemoveLinkDetailsSerializer().deserialize(json) + return EventDetails.protectActionRemoveLinkDetails(v) + case "protect_action_stop_sharing_details": + let v = try TeamLog.ProtectActionStopSharingDetailsSerializer().deserialize(json) + return EventDetails.protectActionStopSharingDetails(v) + case "protect_internal_domains_changed_details": + let v = try TeamLog.ProtectInternalDomainsChangedDetailsSerializer().deserialize(json) + return EventDetails.protectInternalDomainsChangedDetails(v) + case "classification_create_report_details": + let v = try TeamLog.ClassificationCreateReportDetailsSerializer().deserialize(json) + return EventDetails.classificationCreateReportDetails(v) + case "classification_create_report_fail_details": + let v = try TeamLog.ClassificationCreateReportFailDetailsSerializer().deserialize(json) + return EventDetails.classificationCreateReportFailDetails(v) + case "emm_create_exceptions_report_details": + let v = try TeamLog.EmmCreateExceptionsReportDetailsSerializer().deserialize(json) + return EventDetails.emmCreateExceptionsReportDetails(v) + case "emm_create_usage_report_details": + let v = try TeamLog.EmmCreateUsageReportDetailsSerializer().deserialize(json) + return EventDetails.emmCreateUsageReportDetails(v) + case "export_members_report_details": + let v = try TeamLog.ExportMembersReportDetailsSerializer().deserialize(json) + return EventDetails.exportMembersReportDetails(v) + case "export_members_report_fail_details": + let v = try TeamLog.ExportMembersReportFailDetailsSerializer().deserialize(json) + return EventDetails.exportMembersReportFailDetails(v) + case "external_sharing_create_report_details": + let v = try TeamLog.ExternalSharingCreateReportDetailsSerializer().deserialize(json) + return EventDetails.externalSharingCreateReportDetails(v) + case "external_sharing_report_failed_details": + let v = try TeamLog.ExternalSharingReportFailedDetailsSerializer().deserialize(json) + return EventDetails.externalSharingReportFailedDetails(v) + case "member_access_details_create_report_details": + let v = try TeamLog.MemberAccessDetailsCreateReportDetailsSerializer().deserialize(json) + return EventDetails.memberAccessDetailsCreateReportDetails(v) + case "member_access_details_create_report_failed_details": + let v = try TeamLog.MemberAccessDetailsCreateReportFailedDetailsSerializer().deserialize(json) + return EventDetails.memberAccessDetailsCreateReportFailedDetails(v) + case "no_expiration_link_gen_create_report_details": + let v = try TeamLog.NoExpirationLinkGenCreateReportDetailsSerializer().deserialize(json) + return EventDetails.noExpirationLinkGenCreateReportDetails(v) + case "no_expiration_link_gen_report_failed_details": + let v = try TeamLog.NoExpirationLinkGenReportFailedDetailsSerializer().deserialize(json) + return EventDetails.noExpirationLinkGenReportFailedDetails(v) + case "no_password_link_gen_create_report_details": + let v = try TeamLog.NoPasswordLinkGenCreateReportDetailsSerializer().deserialize(json) + return EventDetails.noPasswordLinkGenCreateReportDetails(v) + case "no_password_link_gen_report_failed_details": + let v = try TeamLog.NoPasswordLinkGenReportFailedDetailsSerializer().deserialize(json) + return EventDetails.noPasswordLinkGenReportFailedDetails(v) + case "no_password_link_view_create_report_details": + let v = try TeamLog.NoPasswordLinkViewCreateReportDetailsSerializer().deserialize(json) + return EventDetails.noPasswordLinkViewCreateReportDetails(v) + case "no_password_link_view_report_failed_details": + let v = try TeamLog.NoPasswordLinkViewReportFailedDetailsSerializer().deserialize(json) + return EventDetails.noPasswordLinkViewReportFailedDetails(v) + case "outdated_link_view_create_report_details": + let v = try TeamLog.OutdatedLinkViewCreateReportDetailsSerializer().deserialize(json) + return EventDetails.outdatedLinkViewCreateReportDetails(v) + case "outdated_link_view_report_failed_details": + let v = try TeamLog.OutdatedLinkViewReportFailedDetailsSerializer().deserialize(json) + return EventDetails.outdatedLinkViewReportFailedDetails(v) + case "paper_admin_export_start_details": + let v = try TeamLog.PaperAdminExportStartDetailsSerializer().deserialize(json) + return EventDetails.paperAdminExportStartDetails(v) + case "ransomware_alert_create_report_details": + let v = try TeamLog.RansomwareAlertCreateReportDetailsSerializer().deserialize(json) + return EventDetails.ransomwareAlertCreateReportDetails(v) + case "ransomware_alert_create_report_failed_details": + let v = try TeamLog.RansomwareAlertCreateReportFailedDetailsSerializer().deserialize(json) + return EventDetails.ransomwareAlertCreateReportFailedDetails(v) + case "shared_folders_create_report_details": + let v = try TeamLog.SharedFoldersCreateReportDetailsSerializer().deserialize(json) + return EventDetails.sharedFoldersCreateReportDetails(v) + case "shared_folders_create_report_failed_details": + let v = try TeamLog.SharedFoldersCreateReportFailedDetailsSerializer().deserialize(json) + return EventDetails.sharedFoldersCreateReportFailedDetails(v) + case "smart_sync_create_admin_privilege_report_details": + let v = try TeamLog.SmartSyncCreateAdminPrivilegeReportDetailsSerializer().deserialize(json) + return EventDetails.smartSyncCreateAdminPrivilegeReportDetails(v) + case "team_activity_create_report_details": + let v = try TeamLog.TeamActivityCreateReportDetailsSerializer().deserialize(json) + return EventDetails.teamActivityCreateReportDetails(v) + case "team_activity_create_report_fail_details": + let v = try TeamLog.TeamActivityCreateReportFailDetailsSerializer().deserialize(json) + return EventDetails.teamActivityCreateReportFailDetails(v) + case "team_folders_create_report_details": + let v = try TeamLog.TeamFoldersCreateReportDetailsSerializer().deserialize(json) + return EventDetails.teamFoldersCreateReportDetails(v) + case "team_folders_create_report_failed_details": + let v = try TeamLog.TeamFoldersCreateReportFailedDetailsSerializer().deserialize(json) + return EventDetails.teamFoldersCreateReportFailedDetails(v) + case "team_storage_create_report_details": + let v = try TeamLog.TeamStorageCreateReportDetailsSerializer().deserialize(json) + return EventDetails.teamStorageCreateReportDetails(v) + case "team_storage_create_report_failed_details": + let v = try TeamLog.TeamStorageCreateReportFailedDetailsSerializer().deserialize(json) + return EventDetails.teamStorageCreateReportFailedDetails(v) + case "collection_share_details": + let v = try TeamLog.CollectionShareDetailsSerializer().deserialize(json) + return EventDetails.collectionShareDetails(v) + case "file_transfers_file_add_details": + let v = try TeamLog.FileTransfersFileAddDetailsSerializer().deserialize(json) + return EventDetails.fileTransfersFileAddDetails(v) + case "file_transfers_transfer_delete_details": + let v = try TeamLog.FileTransfersTransferDeleteDetailsSerializer().deserialize(json) + return EventDetails.fileTransfersTransferDeleteDetails(v) + case "file_transfers_transfer_download_details": + let v = try TeamLog.FileTransfersTransferDownloadDetailsSerializer().deserialize(json) + return EventDetails.fileTransfersTransferDownloadDetails(v) + case "file_transfers_transfer_send_details": + let v = try TeamLog.FileTransfersTransferSendDetailsSerializer().deserialize(json) + return EventDetails.fileTransfersTransferSendDetails(v) + case "file_transfers_transfer_view_details": + let v = try TeamLog.FileTransfersTransferViewDetailsSerializer().deserialize(json) + return EventDetails.fileTransfersTransferViewDetails(v) + case "media_hub_project_team_add_details": + let v = try TeamLog.MediaHubProjectTeamAddDetailsSerializer().deserialize(json) + return EventDetails.mediaHubProjectTeamAddDetails(v) + case "media_hub_project_team_delete_details": + let v = try TeamLog.MediaHubProjectTeamDeleteDetailsSerializer().deserialize(json) + return EventDetails.mediaHubProjectTeamDeleteDetails(v) + case "media_hub_project_team_role_changed_details": + let v = try TeamLog.MediaHubProjectTeamRoleChangedDetailsSerializer().deserialize(json) + return EventDetails.mediaHubProjectTeamRoleChangedDetails(v) + case "media_hub_shared_link_audience_changed_details": + let v = try TeamLog.MediaHubSharedLinkAudienceChangedDetailsSerializer().deserialize(json) + return EventDetails.mediaHubSharedLinkAudienceChangedDetails(v) + case "media_hub_shared_link_created_details": + let v = try TeamLog.MediaHubSharedLinkCreatedDetailsSerializer().deserialize(json) + return EventDetails.mediaHubSharedLinkCreatedDetails(v) + case "media_hub_shared_link_download_setting_changed_details": + let v = try TeamLog.MediaHubSharedLinkDownloadSettingChangedDetailsSerializer().deserialize(json) + return EventDetails.mediaHubSharedLinkDownloadSettingChangedDetails(v) + case "media_hub_shared_link_revoked_details": + let v = try TeamLog.MediaHubSharedLinkRevokedDetailsSerializer().deserialize(json) + return EventDetails.mediaHubSharedLinkRevokedDetails(v) + case "note_acl_invite_only_details": + let v = try TeamLog.NoteAclInviteOnlyDetailsSerializer().deserialize(json) + return EventDetails.noteAclInviteOnlyDetails(v) + case "note_acl_link_details": + let v = try TeamLog.NoteAclLinkDetailsSerializer().deserialize(json) + return EventDetails.noteAclLinkDetails(v) + case "note_acl_team_link_details": + let v = try TeamLog.NoteAclTeamLinkDetailsSerializer().deserialize(json) + return EventDetails.noteAclTeamLinkDetails(v) + case "note_shared_details": + let v = try TeamLog.NoteSharedDetailsSerializer().deserialize(json) + return EventDetails.noteSharedDetails(v) + case "note_share_receive_details": + let v = try TeamLog.NoteShareReceiveDetailsSerializer().deserialize(json) + return EventDetails.noteShareReceiveDetails(v) + case "open_note_shared_details": + let v = try TeamLog.OpenNoteSharedDetailsSerializer().deserialize(json) + return EventDetails.openNoteSharedDetails(v) + case "replay_file_shared_link_created_details": + let v = try TeamLog.ReplayFileSharedLinkCreatedDetailsSerializer().deserialize(json) + return EventDetails.replayFileSharedLinkCreatedDetails(v) + case "replay_file_shared_link_modified_details": + let v = try TeamLog.ReplayFileSharedLinkModifiedDetailsSerializer().deserialize(json) + return EventDetails.replayFileSharedLinkModifiedDetails(v) + case "replay_project_team_add_details": + let v = try TeamLog.ReplayProjectTeamAddDetailsSerializer().deserialize(json) + return EventDetails.replayProjectTeamAddDetails(v) + case "replay_project_team_delete_details": + let v = try TeamLog.ReplayProjectTeamDeleteDetailsSerializer().deserialize(json) + return EventDetails.replayProjectTeamDeleteDetails(v) + case "send_and_track_file_added_details": + let v = try TeamLog.SendAndTrackFileAddedDetailsSerializer().deserialize(json) + return EventDetails.sendAndTrackFileAddedDetails(v) + case "send_and_track_file_renamed_details": + let v = try TeamLog.SendAndTrackFileRenamedDetailsSerializer().deserialize(json) + return EventDetails.sendAndTrackFileRenamedDetails(v) + case "send_and_track_file_updated_details": + let v = try TeamLog.SendAndTrackFileUpdatedDetailsSerializer().deserialize(json) + return EventDetails.sendAndTrackFileUpdatedDetails(v) + case "send_and_track_link_created_details": + let v = try TeamLog.SendAndTrackLinkCreatedDetailsSerializer().deserialize(json) + return EventDetails.sendAndTrackLinkCreatedDetails(v) + case "send_and_track_link_deleted_details": + let v = try TeamLog.SendAndTrackLinkDeletedDetailsSerializer().deserialize(json) + return EventDetails.sendAndTrackLinkDeletedDetails(v) + case "send_and_track_link_updated_details": + let v = try TeamLog.SendAndTrackLinkUpdatedDetailsSerializer().deserialize(json) + return EventDetails.sendAndTrackLinkUpdatedDetails(v) + case "send_and_track_link_viewed_details": + let v = try TeamLog.SendAndTrackLinkViewedDetailsSerializer().deserialize(json) + return EventDetails.sendAndTrackLinkViewedDetails(v) + case "send_and_track_removed_file_and_associated_links_details": + let v = try TeamLog.SendAndTrackRemovedFileAndAssociatedLinksDetailsSerializer().deserialize(json) + return EventDetails.sendAndTrackRemovedFileAndAssociatedLinksDetails(v) + case "sf_add_group_details": + let v = try TeamLog.SfAddGroupDetailsSerializer().deserialize(json) + return EventDetails.sfAddGroupDetails(v) + case "sf_allow_non_members_to_view_shared_links_details": + let v = try TeamLog.SfAllowNonMembersToViewSharedLinksDetailsSerializer().deserialize(json) + return EventDetails.sfAllowNonMembersToViewSharedLinksDetails(v) + case "sf_external_invite_warn_details": + let v = try TeamLog.SfExternalInviteWarnDetailsSerializer().deserialize(json) + return EventDetails.sfExternalInviteWarnDetails(v) + case "sf_fb_invite_details": + let v = try TeamLog.SfFbInviteDetailsSerializer().deserialize(json) + return EventDetails.sfFbInviteDetails(v) + case "sf_fb_invite_change_role_details": + let v = try TeamLog.SfFbInviteChangeRoleDetailsSerializer().deserialize(json) + return EventDetails.sfFbInviteChangeRoleDetails(v) + case "sf_fb_uninvite_details": + let v = try TeamLog.SfFbUninviteDetailsSerializer().deserialize(json) + return EventDetails.sfFbUninviteDetails(v) + case "sf_invite_group_details": + let v = try TeamLog.SfInviteGroupDetailsSerializer().deserialize(json) + return EventDetails.sfInviteGroupDetails(v) + case "sf_team_grant_access_details": + let v = try TeamLog.SfTeamGrantAccessDetailsSerializer().deserialize(json) + return EventDetails.sfTeamGrantAccessDetails(v) + case "sf_team_invite_details": + let v = try TeamLog.SfTeamInviteDetailsSerializer().deserialize(json) + return EventDetails.sfTeamInviteDetails(v) + case "sf_team_invite_change_role_details": + let v = try TeamLog.SfTeamInviteChangeRoleDetailsSerializer().deserialize(json) + return EventDetails.sfTeamInviteChangeRoleDetails(v) + case "sf_team_join_details": + let v = try TeamLog.SfTeamJoinDetailsSerializer().deserialize(json) + return EventDetails.sfTeamJoinDetails(v) + case "sf_team_join_from_oob_link_details": + let v = try TeamLog.SfTeamJoinFromOobLinkDetailsSerializer().deserialize(json) + return EventDetails.sfTeamJoinFromOobLinkDetails(v) + case "sf_team_uninvite_details": + let v = try TeamLog.SfTeamUninviteDetailsSerializer().deserialize(json) + return EventDetails.sfTeamUninviteDetails(v) + case "shared_content_add_invitees_details": + let v = try TeamLog.SharedContentAddInviteesDetailsSerializer().deserialize(json) + return EventDetails.sharedContentAddInviteesDetails(v) + case "shared_content_add_link_expiry_details": + let v = try TeamLog.SharedContentAddLinkExpiryDetailsSerializer().deserialize(json) + return EventDetails.sharedContentAddLinkExpiryDetails(v) + case "shared_content_add_link_password_details": + let v = try TeamLog.SharedContentAddLinkPasswordDetailsSerializer().deserialize(json) + return EventDetails.sharedContentAddLinkPasswordDetails(v) + case "shared_content_add_member_details": + let v = try TeamLog.SharedContentAddMemberDetailsSerializer().deserialize(json) + return EventDetails.sharedContentAddMemberDetails(v) + case "shared_content_change_downloads_policy_details": + let v = try TeamLog.SharedContentChangeDownloadsPolicyDetailsSerializer().deserialize(json) + return EventDetails.sharedContentChangeDownloadsPolicyDetails(v) + case "shared_content_change_invitee_role_details": + let v = try TeamLog.SharedContentChangeInviteeRoleDetailsSerializer().deserialize(json) + return EventDetails.sharedContentChangeInviteeRoleDetails(v) + case "shared_content_change_link_audience_details": + let v = try TeamLog.SharedContentChangeLinkAudienceDetailsSerializer().deserialize(json) + return EventDetails.sharedContentChangeLinkAudienceDetails(v) + case "shared_content_change_link_expiry_details": + let v = try TeamLog.SharedContentChangeLinkExpiryDetailsSerializer().deserialize(json) + return EventDetails.sharedContentChangeLinkExpiryDetails(v) + case "shared_content_change_link_password_details": + let v = try TeamLog.SharedContentChangeLinkPasswordDetailsSerializer().deserialize(json) + return EventDetails.sharedContentChangeLinkPasswordDetails(v) + case "shared_content_change_member_role_details": + let v = try TeamLog.SharedContentChangeMemberRoleDetailsSerializer().deserialize(json) + return EventDetails.sharedContentChangeMemberRoleDetails(v) + case "shared_content_change_viewer_info_policy_details": + let v = try TeamLog.SharedContentChangeViewerInfoPolicyDetailsSerializer().deserialize(json) + return EventDetails.sharedContentChangeViewerInfoPolicyDetails(v) + case "shared_content_claim_invitation_details": + let v = try TeamLog.SharedContentClaimInvitationDetailsSerializer().deserialize(json) + return EventDetails.sharedContentClaimInvitationDetails(v) + case "shared_content_copy_details": + let v = try TeamLog.SharedContentCopyDetailsSerializer().deserialize(json) + return EventDetails.sharedContentCopyDetails(v) + case "shared_content_download_details": + let v = try TeamLog.SharedContentDownloadDetailsSerializer().deserialize(json) + return EventDetails.sharedContentDownloadDetails(v) + case "shared_content_relinquish_membership_details": + let v = try TeamLog.SharedContentRelinquishMembershipDetailsSerializer().deserialize(json) + return EventDetails.sharedContentRelinquishMembershipDetails(v) + case "shared_content_remove_invitees_details": + let v = try TeamLog.SharedContentRemoveInviteesDetailsSerializer().deserialize(json) + return EventDetails.sharedContentRemoveInviteesDetails(v) + case "shared_content_remove_link_expiry_details": + let v = try TeamLog.SharedContentRemoveLinkExpiryDetailsSerializer().deserialize(json) + return EventDetails.sharedContentRemoveLinkExpiryDetails(v) + case "shared_content_remove_link_password_details": + let v = try TeamLog.SharedContentRemoveLinkPasswordDetailsSerializer().deserialize(json) + return EventDetails.sharedContentRemoveLinkPasswordDetails(v) + case "shared_content_remove_member_details": + let v = try TeamLog.SharedContentRemoveMemberDetailsSerializer().deserialize(json) + return EventDetails.sharedContentRemoveMemberDetails(v) + case "shared_content_request_access_details": + let v = try TeamLog.SharedContentRequestAccessDetailsSerializer().deserialize(json) + return EventDetails.sharedContentRequestAccessDetails(v) + case "shared_content_restore_invitees_details": + let v = try TeamLog.SharedContentRestoreInviteesDetailsSerializer().deserialize(json) + return EventDetails.sharedContentRestoreInviteesDetails(v) + case "shared_content_restore_member_details": + let v = try TeamLog.SharedContentRestoreMemberDetailsSerializer().deserialize(json) + return EventDetails.sharedContentRestoreMemberDetails(v) + case "shared_content_unshare_details": + let v = try TeamLog.SharedContentUnshareDetailsSerializer().deserialize(json) + return EventDetails.sharedContentUnshareDetails(v) + case "shared_content_view_details": + let v = try TeamLog.SharedContentViewDetailsSerializer().deserialize(json) + return EventDetails.sharedContentViewDetails(v) + case "shared_folder_change_link_policy_details": + let v = try TeamLog.SharedFolderChangeLinkPolicyDetailsSerializer().deserialize(json) + return EventDetails.sharedFolderChangeLinkPolicyDetails(v) + case "shared_folder_change_members_inheritance_policy_details": + let v = try TeamLog.SharedFolderChangeMembersInheritancePolicyDetailsSerializer().deserialize(json) + return EventDetails.sharedFolderChangeMembersInheritancePolicyDetails(v) + case "shared_folder_change_members_management_policy_details": + let v = try TeamLog.SharedFolderChangeMembersManagementPolicyDetailsSerializer().deserialize(json) + return EventDetails.sharedFolderChangeMembersManagementPolicyDetails(v) + case "shared_folder_change_members_policy_details": + let v = try TeamLog.SharedFolderChangeMembersPolicyDetailsSerializer().deserialize(json) + return EventDetails.sharedFolderChangeMembersPolicyDetails(v) + case "shared_folder_create_details": + let v = try TeamLog.SharedFolderCreateDetailsSerializer().deserialize(json) + return EventDetails.sharedFolderCreateDetails(v) + case "shared_folder_decline_invitation_details": + let v = try TeamLog.SharedFolderDeclineInvitationDetailsSerializer().deserialize(json) + return EventDetails.sharedFolderDeclineInvitationDetails(v) + case "shared_folder_mount_details": + let v = try TeamLog.SharedFolderMountDetailsSerializer().deserialize(json) + return EventDetails.sharedFolderMountDetails(v) + case "shared_folder_nest_details": + let v = try TeamLog.SharedFolderNestDetailsSerializer().deserialize(json) + return EventDetails.sharedFolderNestDetails(v) + case "shared_folder_transfer_ownership_details": + let v = try TeamLog.SharedFolderTransferOwnershipDetailsSerializer().deserialize(json) + return EventDetails.sharedFolderTransferOwnershipDetails(v) + case "shared_folder_unmount_details": + let v = try TeamLog.SharedFolderUnmountDetailsSerializer().deserialize(json) + return EventDetails.sharedFolderUnmountDetails(v) + case "shared_link_add_expiry_details": + let v = try TeamLog.SharedLinkAddExpiryDetailsSerializer().deserialize(json) + return EventDetails.sharedLinkAddExpiryDetails(v) + case "shared_link_change_expiry_details": + let v = try TeamLog.SharedLinkChangeExpiryDetailsSerializer().deserialize(json) + return EventDetails.sharedLinkChangeExpiryDetails(v) + case "shared_link_change_visibility_details": + let v = try TeamLog.SharedLinkChangeVisibilityDetailsSerializer().deserialize(json) + return EventDetails.sharedLinkChangeVisibilityDetails(v) + case "shared_link_copy_details": + let v = try TeamLog.SharedLinkCopyDetailsSerializer().deserialize(json) + return EventDetails.sharedLinkCopyDetails(v) + case "shared_link_create_details": + let v = try TeamLog.SharedLinkCreateDetailsSerializer().deserialize(json) + return EventDetails.sharedLinkCreateDetails(v) + case "shared_link_disable_details": + let v = try TeamLog.SharedLinkDisableDetailsSerializer().deserialize(json) + return EventDetails.sharedLinkDisableDetails(v) + case "shared_link_download_details": + let v = try TeamLog.SharedLinkDownloadDetailsSerializer().deserialize(json) + return EventDetails.sharedLinkDownloadDetails(v) + case "shared_link_remove_expiry_details": + let v = try TeamLog.SharedLinkRemoveExpiryDetailsSerializer().deserialize(json) + return EventDetails.sharedLinkRemoveExpiryDetails(v) + case "shared_link_remove_visitor_details": + let v = try TeamLog.SharedLinkRemoveVisitorDetailsSerializer().deserialize(json) + return EventDetails.sharedLinkRemoveVisitorDetails(v) + case "shared_link_settings_add_expiration_details": + let v = try TeamLog.SharedLinkSettingsAddExpirationDetailsSerializer().deserialize(json) + return EventDetails.sharedLinkSettingsAddExpirationDetails(v) + case "shared_link_settings_add_password_details": + let v = try TeamLog.SharedLinkSettingsAddPasswordDetailsSerializer().deserialize(json) + return EventDetails.sharedLinkSettingsAddPasswordDetails(v) + case "shared_link_settings_allow_download_disabled_details": + let v = try TeamLog.SharedLinkSettingsAllowDownloadDisabledDetailsSerializer().deserialize(json) + return EventDetails.sharedLinkSettingsAllowDownloadDisabledDetails(v) + case "shared_link_settings_allow_download_enabled_details": + let v = try TeamLog.SharedLinkSettingsAllowDownloadEnabledDetailsSerializer().deserialize(json) + return EventDetails.sharedLinkSettingsAllowDownloadEnabledDetails(v) + case "shared_link_settings_change_audience_details": + let v = try TeamLog.SharedLinkSettingsChangeAudienceDetailsSerializer().deserialize(json) + return EventDetails.sharedLinkSettingsChangeAudienceDetails(v) + case "shared_link_settings_change_expiration_details": + let v = try TeamLog.SharedLinkSettingsChangeExpirationDetailsSerializer().deserialize(json) + return EventDetails.sharedLinkSettingsChangeExpirationDetails(v) + case "shared_link_settings_change_password_details": + let v = try TeamLog.SharedLinkSettingsChangePasswordDetailsSerializer().deserialize(json) + return EventDetails.sharedLinkSettingsChangePasswordDetails(v) + case "shared_link_settings_remove_expiration_details": + let v = try TeamLog.SharedLinkSettingsRemoveExpirationDetailsSerializer().deserialize(json) + return EventDetails.sharedLinkSettingsRemoveExpirationDetails(v) + case "shared_link_settings_remove_password_details": + let v = try TeamLog.SharedLinkSettingsRemovePasswordDetailsSerializer().deserialize(json) + return EventDetails.sharedLinkSettingsRemovePasswordDetails(v) + case "shared_link_share_details": + let v = try TeamLog.SharedLinkShareDetailsSerializer().deserialize(json) + return EventDetails.sharedLinkShareDetails(v) + case "shared_link_view_details": + let v = try TeamLog.SharedLinkViewDetailsSerializer().deserialize(json) + return EventDetails.sharedLinkViewDetails(v) + case "shared_note_opened_details": + let v = try TeamLog.SharedNoteOpenedDetailsSerializer().deserialize(json) + return EventDetails.sharedNoteOpenedDetails(v) + case "shmodel_disable_downloads_details": + let v = try TeamLog.ShmodelDisableDownloadsDetailsSerializer().deserialize(json) + return EventDetails.shmodelDisableDownloadsDetails(v) + case "shmodel_enable_downloads_details": + let v = try TeamLog.ShmodelEnableDownloadsDetailsSerializer().deserialize(json) + return EventDetails.shmodelEnableDownloadsDetails(v) + case "shmodel_group_share_details": + let v = try TeamLog.ShmodelGroupShareDetailsSerializer().deserialize(json) + return EventDetails.shmodelGroupShareDetails(v) + case "showcase_access_granted_details": + let v = try TeamLog.ShowcaseAccessGrantedDetailsSerializer().deserialize(json) + return EventDetails.showcaseAccessGrantedDetails(v) + case "showcase_add_member_details": + let v = try TeamLog.ShowcaseAddMemberDetailsSerializer().deserialize(json) + return EventDetails.showcaseAddMemberDetails(v) + case "showcase_archived_details": + let v = try TeamLog.ShowcaseArchivedDetailsSerializer().deserialize(json) + return EventDetails.showcaseArchivedDetails(v) + case "showcase_created_details": + let v = try TeamLog.ShowcaseCreatedDetailsSerializer().deserialize(json) + return EventDetails.showcaseCreatedDetails(v) + case "showcase_delete_comment_details": + let v = try TeamLog.ShowcaseDeleteCommentDetailsSerializer().deserialize(json) + return EventDetails.showcaseDeleteCommentDetails(v) + case "showcase_edited_details": + let v = try TeamLog.ShowcaseEditedDetailsSerializer().deserialize(json) + return EventDetails.showcaseEditedDetails(v) + case "showcase_edit_comment_details": + let v = try TeamLog.ShowcaseEditCommentDetailsSerializer().deserialize(json) + return EventDetails.showcaseEditCommentDetails(v) + case "showcase_file_added_details": + let v = try TeamLog.ShowcaseFileAddedDetailsSerializer().deserialize(json) + return EventDetails.showcaseFileAddedDetails(v) + case "showcase_file_download_details": + let v = try TeamLog.ShowcaseFileDownloadDetailsSerializer().deserialize(json) + return EventDetails.showcaseFileDownloadDetails(v) + case "showcase_file_removed_details": + let v = try TeamLog.ShowcaseFileRemovedDetailsSerializer().deserialize(json) + return EventDetails.showcaseFileRemovedDetails(v) + case "showcase_file_view_details": + let v = try TeamLog.ShowcaseFileViewDetailsSerializer().deserialize(json) + return EventDetails.showcaseFileViewDetails(v) + case "showcase_permanently_deleted_details": + let v = try TeamLog.ShowcasePermanentlyDeletedDetailsSerializer().deserialize(json) + return EventDetails.showcasePermanentlyDeletedDetails(v) + case "showcase_post_comment_details": + let v = try TeamLog.ShowcasePostCommentDetailsSerializer().deserialize(json) + return EventDetails.showcasePostCommentDetails(v) + case "showcase_remove_member_details": + let v = try TeamLog.ShowcaseRemoveMemberDetailsSerializer().deserialize(json) + return EventDetails.showcaseRemoveMemberDetails(v) + case "showcase_renamed_details": + let v = try TeamLog.ShowcaseRenamedDetailsSerializer().deserialize(json) + return EventDetails.showcaseRenamedDetails(v) + case "showcase_request_access_details": + let v = try TeamLog.ShowcaseRequestAccessDetailsSerializer().deserialize(json) + return EventDetails.showcaseRequestAccessDetails(v) + case "showcase_resolve_comment_details": + let v = try TeamLog.ShowcaseResolveCommentDetailsSerializer().deserialize(json) + return EventDetails.showcaseResolveCommentDetails(v) + case "showcase_restored_details": + let v = try TeamLog.ShowcaseRestoredDetailsSerializer().deserialize(json) + return EventDetails.showcaseRestoredDetails(v) + case "showcase_trashed_details": + let v = try TeamLog.ShowcaseTrashedDetailsSerializer().deserialize(json) + return EventDetails.showcaseTrashedDetails(v) + case "showcase_trashed_deprecated_details": + let v = try TeamLog.ShowcaseTrashedDeprecatedDetailsSerializer().deserialize(json) + return EventDetails.showcaseTrashedDeprecatedDetails(v) + case "showcase_unresolve_comment_details": + let v = try TeamLog.ShowcaseUnresolveCommentDetailsSerializer().deserialize(json) + return EventDetails.showcaseUnresolveCommentDetails(v) + case "showcase_untrashed_details": + let v = try TeamLog.ShowcaseUntrashedDetailsSerializer().deserialize(json) + return EventDetails.showcaseUntrashedDetails(v) + case "showcase_untrashed_deprecated_details": + let v = try TeamLog.ShowcaseUntrashedDeprecatedDetailsSerializer().deserialize(json) + return EventDetails.showcaseUntrashedDeprecatedDetails(v) + case "showcase_view_details": + let v = try TeamLog.ShowcaseViewDetailsSerializer().deserialize(json) + return EventDetails.showcaseViewDetails(v) + case "sign_signature_request_canceled_details": + let v = try TeamLog.SignSignatureRequestCanceledDetailsSerializer().deserialize(json) + return EventDetails.signSignatureRequestCanceledDetails(v) + case "sign_signature_request_completed_details": + let v = try TeamLog.SignSignatureRequestCompletedDetailsSerializer().deserialize(json) + return EventDetails.signSignatureRequestCompletedDetails(v) + case "sign_signature_request_declined_details": + let v = try TeamLog.SignSignatureRequestDeclinedDetailsSerializer().deserialize(json) + return EventDetails.signSignatureRequestDeclinedDetails(v) + case "sign_signature_request_opened_details": + let v = try TeamLog.SignSignatureRequestOpenedDetailsSerializer().deserialize(json) + return EventDetails.signSignatureRequestOpenedDetails(v) + case "sign_signature_request_reminder_sent_details": + let v = try TeamLog.SignSignatureRequestReminderSentDetailsSerializer().deserialize(json) + return EventDetails.signSignatureRequestReminderSentDetails(v) + case "sign_signature_request_sent_details": + let v = try TeamLog.SignSignatureRequestSentDetailsSerializer().deserialize(json) + return EventDetails.signSignatureRequestSentDetails(v) + case "sign_template_created_details": + let v = try TeamLog.SignTemplateCreatedDetailsSerializer().deserialize(json) + return EventDetails.signTemplateCreatedDetails(v) + case "sign_template_shared_details": + let v = try TeamLog.SignTemplateSharedDetailsSerializer().deserialize(json) + return EventDetails.signTemplateSharedDetails(v) + case "risc_security_event_details": + let v = try TeamLog.RiscSecurityEventDetailsSerializer().deserialize(json) + return EventDetails.riscSecurityEventDetails(v) + case "sso_add_cert_details": + let v = try TeamLog.SsoAddCertDetailsSerializer().deserialize(json) + return EventDetails.ssoAddCertDetails(v) + case "sso_add_login_url_details": + let v = try TeamLog.SsoAddLoginUrlDetailsSerializer().deserialize(json) + return EventDetails.ssoAddLoginUrlDetails(v) + case "sso_add_logout_url_details": + let v = try TeamLog.SsoAddLogoutUrlDetailsSerializer().deserialize(json) + return EventDetails.ssoAddLogoutUrlDetails(v) + case "sso_change_cert_details": + let v = try TeamLog.SsoChangeCertDetailsSerializer().deserialize(json) + return EventDetails.ssoChangeCertDetails(v) + case "sso_change_login_url_details": + let v = try TeamLog.SsoChangeLoginUrlDetailsSerializer().deserialize(json) + return EventDetails.ssoChangeLoginUrlDetails(v) + case "sso_change_logout_url_details": + let v = try TeamLog.SsoChangeLogoutUrlDetailsSerializer().deserialize(json) + return EventDetails.ssoChangeLogoutUrlDetails(v) + case "sso_change_saml_identity_mode_details": + let v = try TeamLog.SsoChangeSamlIdentityModeDetailsSerializer().deserialize(json) + return EventDetails.ssoChangeSamlIdentityModeDetails(v) + case "sso_remove_cert_details": + let v = try TeamLog.SsoRemoveCertDetailsSerializer().deserialize(json) + return EventDetails.ssoRemoveCertDetails(v) + case "sso_remove_login_url_details": + let v = try TeamLog.SsoRemoveLoginUrlDetailsSerializer().deserialize(json) + return EventDetails.ssoRemoveLoginUrlDetails(v) + case "sso_remove_logout_url_details": + let v = try TeamLog.SsoRemoveLogoutUrlDetailsSerializer().deserialize(json) + return EventDetails.ssoRemoveLogoutUrlDetails(v) + case "team_folder_change_status_details": + let v = try TeamLog.TeamFolderChangeStatusDetailsSerializer().deserialize(json) + return EventDetails.teamFolderChangeStatusDetails(v) + case "team_folder_create_details": + let v = try TeamLog.TeamFolderCreateDetailsSerializer().deserialize(json) + return EventDetails.teamFolderCreateDetails(v) + case "team_folder_downgrade_details": + let v = try TeamLog.TeamFolderDowngradeDetailsSerializer().deserialize(json) + return EventDetails.teamFolderDowngradeDetails(v) + case "team_folder_permanently_delete_details": + let v = try TeamLog.TeamFolderPermanentlyDeleteDetailsSerializer().deserialize(json) + return EventDetails.teamFolderPermanentlyDeleteDetails(v) + case "team_folder_rename_details": + let v = try TeamLog.TeamFolderRenameDetailsSerializer().deserialize(json) + return EventDetails.teamFolderRenameDetails(v) + case "team_folder_space_limits_change_caps_type_details": + let v = try TeamLog.TeamFolderSpaceLimitsChangeCapsTypeDetailsSerializer().deserialize(json) + return EventDetails.teamFolderSpaceLimitsChangeCapsTypeDetails(v) + case "team_folder_space_limits_change_limit_details": + let v = try TeamLog.TeamFolderSpaceLimitsChangeLimitDetailsSerializer().deserialize(json) + return EventDetails.teamFolderSpaceLimitsChangeLimitDetails(v) + case "team_folder_space_limits_change_notification_target_details": + let v = try TeamLog.TeamFolderSpaceLimitsChangeNotificationTargetDetailsSerializer().deserialize(json) + return EventDetails.teamFolderSpaceLimitsChangeNotificationTargetDetails(v) + case "team_selective_sync_settings_changed_details": + let v = try TeamLog.TeamSelectiveSyncSettingsChangedDetailsSerializer().deserialize(json) + return EventDetails.teamSelectiveSyncSettingsChangedDetails(v) + case "account_capture_change_policy_details": + let v = try TeamLog.AccountCaptureChangePolicyDetailsSerializer().deserialize(json) + return EventDetails.accountCaptureChangePolicyDetails(v) + case "admin_email_reminders_changed_details": + let v = try TeamLog.AdminEmailRemindersChangedDetailsSerializer().deserialize(json) + return EventDetails.adminEmailRemindersChangedDetails(v) + case "ai_third_party_sharing_dropbox_base_policy_changed_details": + let v = try TeamLog.AiThirdPartySharingDropboxBasePolicyChangedDetailsSerializer().deserialize(json) + return EventDetails.aiThirdPartySharingDropboxBasePolicyChangedDetails(v) + case "allow_download_disabled_details": + let v = try TeamLog.AllowDownloadDisabledDetailsSerializer().deserialize(json) + return EventDetails.allowDownloadDisabledDetails(v) + case "allow_download_enabled_details": + let v = try TeamLog.AllowDownloadEnabledDetailsSerializer().deserialize(json) + return EventDetails.allowDownloadEnabledDetails(v) + case "apple_login_change_policy_details": + let v = try TeamLog.AppleLoginChangePolicyDetailsSerializer().deserialize(json) + return EventDetails.appleLoginChangePolicyDetails(v) + case "app_permissions_changed_details": + let v = try TeamLog.AppPermissionsChangedDetailsSerializer().deserialize(json) + return EventDetails.appPermissionsChangedDetails(v) + case "camera_uploads_policy_changed_details": + let v = try TeamLog.CameraUploadsPolicyChangedDetailsSerializer().deserialize(json) + return EventDetails.cameraUploadsPolicyChangedDetails(v) + case "capture_team_space_policy_changed_details": + let v = try TeamLog.CaptureTeamSpacePolicyChangedDetailsSerializer().deserialize(json) + return EventDetails.captureTeamSpacePolicyChangedDetails(v) + case "capture_transcript_policy_changed_details": + let v = try TeamLog.CaptureTranscriptPolicyChangedDetailsSerializer().deserialize(json) + return EventDetails.captureTranscriptPolicyChangedDetails(v) + case "classification_change_policy_details": + let v = try TeamLog.ClassificationChangePolicyDetailsSerializer().deserialize(json) + return EventDetails.classificationChangePolicyDetails(v) + case "computer_backup_policy_changed_details": + let v = try TeamLog.ComputerBackupPolicyChangedDetailsSerializer().deserialize(json) + return EventDetails.computerBackupPolicyChangedDetails(v) + case "content_administration_policy_changed_details": + let v = try TeamLog.ContentAdministrationPolicyChangedDetailsSerializer().deserialize(json) + return EventDetails.contentAdministrationPolicyChangedDetails(v) + case "content_deletion_protection_change_policy_details": + let v = try TeamLog.ContentDeletionProtectionChangePolicyDetailsSerializer().deserialize(json) + return EventDetails.contentDeletionProtectionChangePolicyDetails(v) + case "dash_external_sharing_policy_changed_details": + let v = try TeamLog.DashExternalSharingPolicyChangedDetailsSerializer().deserialize(json) + return EventDetails.dashExternalSharingPolicyChangedDetails(v) + case "data_placement_restriction_change_policy_details": + let v = try TeamLog.DataPlacementRestrictionChangePolicyDetailsSerializer().deserialize(json) + return EventDetails.dataPlacementRestrictionChangePolicyDetails(v) + case "data_placement_restriction_satisfy_policy_details": + let v = try TeamLog.DataPlacementRestrictionSatisfyPolicyDetailsSerializer().deserialize(json) + return EventDetails.dataPlacementRestrictionSatisfyPolicyDetails(v) + case "device_approvals_add_exception_details": + let v = try TeamLog.DeviceApprovalsAddExceptionDetailsSerializer().deserialize(json) + return EventDetails.deviceApprovalsAddExceptionDetails(v) + case "device_approvals_change_desktop_policy_details": + let v = try TeamLog.DeviceApprovalsChangeDesktopPolicyDetailsSerializer().deserialize(json) + return EventDetails.deviceApprovalsChangeDesktopPolicyDetails(v) + case "device_approvals_change_mobile_policy_details": + let v = try TeamLog.DeviceApprovalsChangeMobilePolicyDetailsSerializer().deserialize(json) + return EventDetails.deviceApprovalsChangeMobilePolicyDetails(v) + case "device_approvals_change_overage_action_details": + let v = try TeamLog.DeviceApprovalsChangeOverageActionDetailsSerializer().deserialize(json) + return EventDetails.deviceApprovalsChangeOverageActionDetails(v) + case "device_approvals_change_unlink_action_details": + let v = try TeamLog.DeviceApprovalsChangeUnlinkActionDetailsSerializer().deserialize(json) + return EventDetails.deviceApprovalsChangeUnlinkActionDetails(v) + case "device_approvals_remove_exception_details": + let v = try TeamLog.DeviceApprovalsRemoveExceptionDetailsSerializer().deserialize(json) + return EventDetails.deviceApprovalsRemoveExceptionDetails(v) + case "directory_restrictions_add_members_details": + let v = try TeamLog.DirectoryRestrictionsAddMembersDetailsSerializer().deserialize(json) + return EventDetails.directoryRestrictionsAddMembersDetails(v) + case "directory_restrictions_remove_members_details": + let v = try TeamLog.DirectoryRestrictionsRemoveMembersDetailsSerializer().deserialize(json) + return EventDetails.directoryRestrictionsRemoveMembersDetails(v) + case "dropbox_passwords_policy_changed_details": + let v = try TeamLog.DropboxPasswordsPolicyChangedDetailsSerializer().deserialize(json) + return EventDetails.dropboxPasswordsPolicyChangedDetails(v) + case "email_ingest_policy_changed_details": + let v = try TeamLog.EmailIngestPolicyChangedDetailsSerializer().deserialize(json) + return EventDetails.emailIngestPolicyChangedDetails(v) + case "emm_add_exception_details": + let v = try TeamLog.EmmAddExceptionDetailsSerializer().deserialize(json) + return EventDetails.emmAddExceptionDetails(v) + case "emm_change_policy_details": + let v = try TeamLog.EmmChangePolicyDetailsSerializer().deserialize(json) + return EventDetails.emmChangePolicyDetails(v) + case "emm_remove_exception_details": + let v = try TeamLog.EmmRemoveExceptionDetailsSerializer().deserialize(json) + return EventDetails.emmRemoveExceptionDetails(v) + case "extended_version_history_change_policy_details": + let v = try TeamLog.ExtendedVersionHistoryChangePolicyDetailsSerializer().deserialize(json) + return EventDetails.extendedVersionHistoryChangePolicyDetails(v) + case "external_drive_backup_policy_changed_details": + let v = try TeamLog.ExternalDriveBackupPolicyChangedDetailsSerializer().deserialize(json) + return EventDetails.externalDriveBackupPolicyChangedDetails(v) + case "file_comments_change_policy_details": + let v = try TeamLog.FileCommentsChangePolicyDetailsSerializer().deserialize(json) + return EventDetails.fileCommentsChangePolicyDetails(v) + case "file_locking_policy_changed_details": + let v = try TeamLog.FileLockingPolicyChangedDetailsSerializer().deserialize(json) + return EventDetails.fileLockingPolicyChangedDetails(v) + case "file_provider_migration_policy_changed_details": + let v = try TeamLog.FileProviderMigrationPolicyChangedDetailsSerializer().deserialize(json) + return EventDetails.fileProviderMigrationPolicyChangedDetails(v) + case "file_requests_change_policy_details": + let v = try TeamLog.FileRequestsChangePolicyDetailsSerializer().deserialize(json) + return EventDetails.fileRequestsChangePolicyDetails(v) + case "file_requests_emails_enabled_details": + let v = try TeamLog.FileRequestsEmailsEnabledDetailsSerializer().deserialize(json) + return EventDetails.fileRequestsEmailsEnabledDetails(v) + case "file_requests_emails_restricted_to_team_only_details": + let v = try TeamLog.FileRequestsEmailsRestrictedToTeamOnlyDetailsSerializer().deserialize(json) + return EventDetails.fileRequestsEmailsRestrictedToTeamOnlyDetails(v) + case "file_transfers_policy_changed_details": + let v = try TeamLog.FileTransfersPolicyChangedDetailsSerializer().deserialize(json) + return EventDetails.fileTransfersPolicyChangedDetails(v) + case "flexible_file_names_policy_changed_details": + let v = try TeamLog.FlexibleFileNamesPolicyChangedDetailsSerializer().deserialize(json) + return EventDetails.flexibleFileNamesPolicyChangedDetails(v) + case "folder_link_restriction_policy_changed_details": + let v = try TeamLog.FolderLinkRestrictionPolicyChangedDetailsSerializer().deserialize(json) + return EventDetails.folderLinkRestrictionPolicyChangedDetails(v) + case "google_sso_change_policy_details": + let v = try TeamLog.GoogleSsoChangePolicyDetailsSerializer().deserialize(json) + return EventDetails.googleSsoChangePolicyDetails(v) + case "group_user_management_change_policy_details": + let v = try TeamLog.GroupUserManagementChangePolicyDetailsSerializer().deserialize(json) + return EventDetails.groupUserManagementChangePolicyDetails(v) + case "integration_policy_changed_details": + let v = try TeamLog.IntegrationPolicyChangedDetailsSerializer().deserialize(json) + return EventDetails.integrationPolicyChangedDetails(v) + case "invite_acceptance_email_policy_changed_details": + let v = try TeamLog.InviteAcceptanceEmailPolicyChangedDetailsSerializer().deserialize(json) + return EventDetails.inviteAcceptanceEmailPolicyChangedDetails(v) + case "media_hub_adding_people_policy_changed_details": + let v = try TeamLog.MediaHubAddingPeoplePolicyChangedDetailsSerializer().deserialize(json) + return EventDetails.mediaHubAddingPeoplePolicyChangedDetails(v) + case "media_hub_download_policy_changed_details": + let v = try TeamLog.MediaHubDownloadPolicyChangedDetailsSerializer().deserialize(json) + return EventDetails.mediaHubDownloadPolicyChangedDetails(v) + case "media_hub_link_sharing_policy_changed_details": + let v = try TeamLog.MediaHubLinkSharingPolicyChangedDetailsSerializer().deserialize(json) + return EventDetails.mediaHubLinkSharingPolicyChangedDetails(v) + case "member_requests_change_policy_details": + let v = try TeamLog.MemberRequestsChangePolicyDetailsSerializer().deserialize(json) + return EventDetails.memberRequestsChangePolicyDetails(v) + case "member_send_invite_policy_changed_details": + let v = try TeamLog.MemberSendInvitePolicyChangedDetailsSerializer().deserialize(json) + return EventDetails.memberSendInvitePolicyChangedDetails(v) + case "member_space_limits_add_exception_details": + let v = try TeamLog.MemberSpaceLimitsAddExceptionDetailsSerializer().deserialize(json) + return EventDetails.memberSpaceLimitsAddExceptionDetails(v) + case "member_space_limits_change_caps_type_policy_details": + let v = try TeamLog.MemberSpaceLimitsChangeCapsTypePolicyDetailsSerializer().deserialize(json) + return EventDetails.memberSpaceLimitsChangeCapsTypePolicyDetails(v) + case "member_space_limits_change_policy_details": + let v = try TeamLog.MemberSpaceLimitsChangePolicyDetailsSerializer().deserialize(json) + return EventDetails.memberSpaceLimitsChangePolicyDetails(v) + case "member_space_limits_remove_exception_details": + let v = try TeamLog.MemberSpaceLimitsRemoveExceptionDetailsSerializer().deserialize(json) + return EventDetails.memberSpaceLimitsRemoveExceptionDetails(v) + case "member_suggestions_change_policy_details": + let v = try TeamLog.MemberSuggestionsChangePolicyDetailsSerializer().deserialize(json) + return EventDetails.memberSuggestionsChangePolicyDetails(v) + case "microsoft_login_change_policy_details": + let v = try TeamLog.MicrosoftLoginChangePolicyDetailsSerializer().deserialize(json) + return EventDetails.microsoftLoginChangePolicyDetails(v) + case "microsoft_office_addin_change_policy_details": + let v = try TeamLog.MicrosoftOfficeAddinChangePolicyDetailsSerializer().deserialize(json) + return EventDetails.microsoftOfficeAddinChangePolicyDetails(v) + case "multi_team_identity_policy_changed_details": + let v = try TeamLog.MultiTeamIdentityPolicyChangedDetailsSerializer().deserialize(json) + return EventDetails.multiTeamIdentityPolicyChangedDetails(v) + case "network_control_change_policy_details": + let v = try TeamLog.NetworkControlChangePolicyDetailsSerializer().deserialize(json) + return EventDetails.networkControlChangePolicyDetails(v) + case "paper_change_deployment_policy_details": + let v = try TeamLog.PaperChangeDeploymentPolicyDetailsSerializer().deserialize(json) + return EventDetails.paperChangeDeploymentPolicyDetails(v) + case "paper_change_member_link_policy_details": + let v = try TeamLog.PaperChangeMemberLinkPolicyDetailsSerializer().deserialize(json) + return EventDetails.paperChangeMemberLinkPolicyDetails(v) + case "paper_change_member_policy_details": + let v = try TeamLog.PaperChangeMemberPolicyDetailsSerializer().deserialize(json) + return EventDetails.paperChangeMemberPolicyDetails(v) + case "paper_change_policy_details": + let v = try TeamLog.PaperChangePolicyDetailsSerializer().deserialize(json) + return EventDetails.paperChangePolicyDetails(v) + case "paper_default_folder_policy_changed_details": + let v = try TeamLog.PaperDefaultFolderPolicyChangedDetailsSerializer().deserialize(json) + return EventDetails.paperDefaultFolderPolicyChangedDetails(v) + case "paper_desktop_policy_changed_details": + let v = try TeamLog.PaperDesktopPolicyChangedDetailsSerializer().deserialize(json) + return EventDetails.paperDesktopPolicyChangedDetails(v) + case "paper_enabled_users_group_addition_details": + let v = try TeamLog.PaperEnabledUsersGroupAdditionDetailsSerializer().deserialize(json) + return EventDetails.paperEnabledUsersGroupAdditionDetails(v) + case "paper_enabled_users_group_removal_details": + let v = try TeamLog.PaperEnabledUsersGroupRemovalDetailsSerializer().deserialize(json) + return EventDetails.paperEnabledUsersGroupRemovalDetails(v) + case "passkey_login_policy_changed_details": + let v = try TeamLog.PasskeyLoginPolicyChangedDetailsSerializer().deserialize(json) + return EventDetails.passkeyLoginPolicyChangedDetails(v) + case "password_strength_requirements_change_policy_details": + let v = try TeamLog.PasswordStrengthRequirementsChangePolicyDetailsSerializer().deserialize(json) + return EventDetails.passwordStrengthRequirementsChangePolicyDetails(v) + case "permanent_delete_change_policy_details": + let v = try TeamLog.PermanentDeleteChangePolicyDetailsSerializer().deserialize(json) + return EventDetails.permanentDeleteChangePolicyDetails(v) + case "previews_ai_policy_changed_details": + let v = try TeamLog.PreviewsAiPolicyChangedDetailsSerializer().deserialize(json) + return EventDetails.previewsAiPolicyChangedDetails(v) + case "replay_adding_people_policy_changed_details": + let v = try TeamLog.ReplayAddingPeoplePolicyChangedDetailsSerializer().deserialize(json) + return EventDetails.replayAddingPeoplePolicyChangedDetails(v) + case "replay_sharing_policy_changed_details": + let v = try TeamLog.ReplaySharingPolicyChangedDetailsSerializer().deserialize(json) + return EventDetails.replaySharingPolicyChangedDetails(v) + case "reseller_support_change_policy_details": + let v = try TeamLog.ResellerSupportChangePolicyDetailsSerializer().deserialize(json) + return EventDetails.resellerSupportChangePolicyDetails(v) + case "rewind_policy_changed_details": + let v = try TeamLog.RewindPolicyChangedDetailsSerializer().deserialize(json) + return EventDetails.rewindPolicyChangedDetails(v) + case "send_and_track_policy_changed_details": + let v = try TeamLog.SendAndTrackPolicyChangedDetailsSerializer().deserialize(json) + return EventDetails.sendAndTrackPolicyChangedDetails(v) + case "send_external_sharing_policy_changed_details": + let v = try TeamLog.SendExternalSharingPolicyChangedDetailsSerializer().deserialize(json) + return EventDetails.sendExternalSharingPolicyChangedDetails(v) + case "send_for_signature_policy_changed_details": + let v = try TeamLog.SendForSignaturePolicyChangedDetailsSerializer().deserialize(json) + return EventDetails.sendForSignaturePolicyChangedDetails(v) + case "shared_link_default_permissions_policy_changed_details": + let v = try TeamLog.SharedLinkDefaultPermissionsPolicyChangedDetailsSerializer().deserialize(json) + return EventDetails.sharedLinkDefaultPermissionsPolicyChangedDetails(v) + case "sharing_change_folder_join_policy_details": + let v = try TeamLog.SharingChangeFolderJoinPolicyDetailsSerializer().deserialize(json) + return EventDetails.sharingChangeFolderJoinPolicyDetails(v) + case "sharing_change_link_allow_change_expiration_policy_details": + let v = try TeamLog.SharingChangeLinkAllowChangeExpirationPolicyDetailsSerializer().deserialize(json) + return EventDetails.sharingChangeLinkAllowChangeExpirationPolicyDetails(v) + case "sharing_change_link_default_expiration_policy_details": + let v = try TeamLog.SharingChangeLinkDefaultExpirationPolicyDetailsSerializer().deserialize(json) + return EventDetails.sharingChangeLinkDefaultExpirationPolicyDetails(v) + case "sharing_change_link_enforce_password_policy_details": + let v = try TeamLog.SharingChangeLinkEnforcePasswordPolicyDetailsSerializer().deserialize(json) + return EventDetails.sharingChangeLinkEnforcePasswordPolicyDetails(v) + case "sharing_change_link_policy_details": + let v = try TeamLog.SharingChangeLinkPolicyDetailsSerializer().deserialize(json) + return EventDetails.sharingChangeLinkPolicyDetails(v) + case "sharing_change_member_policy_details": + let v = try TeamLog.SharingChangeMemberPolicyDetailsSerializer().deserialize(json) + return EventDetails.sharingChangeMemberPolicyDetails(v) + case "showcase_change_download_policy_details": + let v = try TeamLog.ShowcaseChangeDownloadPolicyDetailsSerializer().deserialize(json) + return EventDetails.showcaseChangeDownloadPolicyDetails(v) + case "showcase_change_enabled_policy_details": + let v = try TeamLog.ShowcaseChangeEnabledPolicyDetailsSerializer().deserialize(json) + return EventDetails.showcaseChangeEnabledPolicyDetails(v) + case "showcase_change_external_sharing_policy_details": + let v = try TeamLog.ShowcaseChangeExternalSharingPolicyDetailsSerializer().deserialize(json) + return EventDetails.showcaseChangeExternalSharingPolicyDetails(v) + case "sign_external_sharing_policy_changed_details": + let v = try TeamLog.SignExternalSharingPolicyChangedDetailsSerializer().deserialize(json) + return EventDetails.signExternalSharingPolicyChangedDetails(v) + case "sign_template_creation_permission_changed_details": + let v = try TeamLog.SignTemplateCreationPermissionChangedDetailsSerializer().deserialize(json) + return EventDetails.signTemplateCreationPermissionChangedDetails(v) + case "smarter_smart_sync_policy_changed_details": + let v = try TeamLog.SmarterSmartSyncPolicyChangedDetailsSerializer().deserialize(json) + return EventDetails.smarterSmartSyncPolicyChangedDetails(v) + case "smart_sync_change_policy_details": + let v = try TeamLog.SmartSyncChangePolicyDetailsSerializer().deserialize(json) + return EventDetails.smartSyncChangePolicyDetails(v) + case "smart_sync_not_opt_out_details": + let v = try TeamLog.SmartSyncNotOptOutDetailsSerializer().deserialize(json) + return EventDetails.smartSyncNotOptOutDetails(v) + case "smart_sync_opt_out_details": + let v = try TeamLog.SmartSyncOptOutDetailsSerializer().deserialize(json) + return EventDetails.smartSyncOptOutDetails(v) + case "sso_change_policy_details": + let v = try TeamLog.SsoChangePolicyDetailsSerializer().deserialize(json) + return EventDetails.ssoChangePolicyDetails(v) + case "stack_cross_team_access_policy_changed_details": + let v = try TeamLog.StackCrossTeamAccessPolicyChangedDetailsSerializer().deserialize(json) + return EventDetails.stackCrossTeamAccessPolicyChangedDetails(v) + case "team_branding_policy_changed_details": + let v = try TeamLog.TeamBrandingPolicyChangedDetailsSerializer().deserialize(json) + return EventDetails.teamBrandingPolicyChangedDetails(v) + case "team_extensions_policy_changed_details": + let v = try TeamLog.TeamExtensionsPolicyChangedDetailsSerializer().deserialize(json) + return EventDetails.teamExtensionsPolicyChangedDetails(v) + case "team_member_storage_request_policy_changed_details": + let v = try TeamLog.TeamMemberStorageRequestPolicyChangedDetailsSerializer().deserialize(json) + return EventDetails.teamMemberStorageRequestPolicyChangedDetails(v) + case "team_selective_sync_policy_changed_details": + let v = try TeamLog.TeamSelectiveSyncPolicyChangedDetailsSerializer().deserialize(json) + return EventDetails.teamSelectiveSyncPolicyChangedDetails(v) + case "team_sharing_whitelist_subjects_changed_details": + let v = try TeamLog.TeamSharingWhitelistSubjectsChangedDetailsSerializer().deserialize(json) + return EventDetails.teamSharingWhitelistSubjectsChangedDetails(v) + case "tfa_add_exception_details": + let v = try TeamLog.TfaAddExceptionDetailsSerializer().deserialize(json) + return EventDetails.tfaAddExceptionDetails(v) + case "tfa_change_policy_details": + let v = try TeamLog.TfaChangePolicyDetailsSerializer().deserialize(json) + return EventDetails.tfaChangePolicyDetails(v) + case "tfa_remove_exception_details": + let v = try TeamLog.TfaRemoveExceptionDetailsSerializer().deserialize(json) + return EventDetails.tfaRemoveExceptionDetails(v) + case "top_level_content_policy_changed_details": + let v = try TeamLog.TopLevelContentPolicyChangedDetailsSerializer().deserialize(json) + return EventDetails.topLevelContentPolicyChangedDetails(v) + case "two_account_change_policy_details": + let v = try TeamLog.TwoAccountChangePolicyDetailsSerializer().deserialize(json) + return EventDetails.twoAccountChangePolicyDetails(v) + case "viewer_info_policy_changed_details": + let v = try TeamLog.ViewerInfoPolicyChangedDetailsSerializer().deserialize(json) + return EventDetails.viewerInfoPolicyChangedDetails(v) + case "watermarking_policy_changed_details": + let v = try TeamLog.WatermarkingPolicyChangedDetailsSerializer().deserialize(json) + return EventDetails.watermarkingPolicyChangedDetails(v) + case "web_sessions_change_active_session_limit_details": + let v = try TeamLog.WebSessionsChangeActiveSessionLimitDetailsSerializer().deserialize(json) + return EventDetails.webSessionsChangeActiveSessionLimitDetails(v) + case "web_sessions_change_fixed_length_policy_details": + let v = try TeamLog.WebSessionsChangeFixedLengthPolicyDetailsSerializer().deserialize(json) + return EventDetails.webSessionsChangeFixedLengthPolicyDetails(v) + case "web_sessions_change_idle_length_policy_details": + let v = try TeamLog.WebSessionsChangeIdleLengthPolicyDetailsSerializer().deserialize(json) + return EventDetails.webSessionsChangeIdleLengthPolicyDetails(v) + case "data_residency_migration_request_successful_details": + let v = try TeamLog.DataResidencyMigrationRequestSuccessfulDetailsSerializer().deserialize(json) + return EventDetails.dataResidencyMigrationRequestSuccessfulDetails(v) + case "data_residency_migration_request_unsuccessful_details": + let v = try TeamLog.DataResidencyMigrationRequestUnsuccessfulDetailsSerializer().deserialize(json) + return EventDetails.dataResidencyMigrationRequestUnsuccessfulDetails(v) + case "team_merge_from_details": + let v = try TeamLog.TeamMergeFromDetailsSerializer().deserialize(json) + return EventDetails.teamMergeFromDetails(v) + case "team_merge_to_details": + let v = try TeamLog.TeamMergeToDetailsSerializer().deserialize(json) + return EventDetails.teamMergeToDetails(v) + case "team_profile_add_background_details": + let v = try TeamLog.TeamProfileAddBackgroundDetailsSerializer().deserialize(json) + return EventDetails.teamProfileAddBackgroundDetails(v) + case "team_profile_add_logo_details": + let v = try TeamLog.TeamProfileAddLogoDetailsSerializer().deserialize(json) + return EventDetails.teamProfileAddLogoDetails(v) + case "team_profile_change_background_details": + let v = try TeamLog.TeamProfileChangeBackgroundDetailsSerializer().deserialize(json) + return EventDetails.teamProfileChangeBackgroundDetails(v) + case "team_profile_change_default_language_details": + let v = try TeamLog.TeamProfileChangeDefaultLanguageDetailsSerializer().deserialize(json) + return EventDetails.teamProfileChangeDefaultLanguageDetails(v) + case "team_profile_change_logo_details": + let v = try TeamLog.TeamProfileChangeLogoDetailsSerializer().deserialize(json) + return EventDetails.teamProfileChangeLogoDetails(v) + case "team_profile_change_name_details": + let v = try TeamLog.TeamProfileChangeNameDetailsSerializer().deserialize(json) + return EventDetails.teamProfileChangeNameDetails(v) + case "team_profile_remove_background_details": + let v = try TeamLog.TeamProfileRemoveBackgroundDetailsSerializer().deserialize(json) + return EventDetails.teamProfileRemoveBackgroundDetails(v) + case "team_profile_remove_logo_details": + let v = try TeamLog.TeamProfileRemoveLogoDetailsSerializer().deserialize(json) + return EventDetails.teamProfileRemoveLogoDetails(v) + case "passkey_add_details": + let v = try TeamLog.PasskeyAddDetailsSerializer().deserialize(json) + return EventDetails.passkeyAddDetails(v) + case "passkey_remove_details": + let v = try TeamLog.PasskeyRemoveDetailsSerializer().deserialize(json) + return EventDetails.passkeyRemoveDetails(v) + case "tfa_add_backup_phone_details": + let v = try TeamLog.TfaAddBackupPhoneDetailsSerializer().deserialize(json) + return EventDetails.tfaAddBackupPhoneDetails(v) + case "tfa_add_security_key_details": + let v = try TeamLog.TfaAddSecurityKeyDetailsSerializer().deserialize(json) + return EventDetails.tfaAddSecurityKeyDetails(v) + case "tfa_change_backup_phone_details": + let v = try TeamLog.TfaChangeBackupPhoneDetailsSerializer().deserialize(json) + return EventDetails.tfaChangeBackupPhoneDetails(v) + case "tfa_change_status_details": + let v = try TeamLog.TfaChangeStatusDetailsSerializer().deserialize(json) + return EventDetails.tfaChangeStatusDetails(v) + case "tfa_remove_backup_phone_details": + let v = try TeamLog.TfaRemoveBackupPhoneDetailsSerializer().deserialize(json) + return EventDetails.tfaRemoveBackupPhoneDetails(v) + case "tfa_remove_security_key_details": + let v = try TeamLog.TfaRemoveSecurityKeyDetailsSerializer().deserialize(json) + return EventDetails.tfaRemoveSecurityKeyDetails(v) + case "tfa_reset_details": + let v = try TeamLog.TfaResetDetailsSerializer().deserialize(json) + return EventDetails.tfaResetDetails(v) + case "changed_enterprise_admin_role_details": + let v = try TeamLog.ChangedEnterpriseAdminRoleDetailsSerializer().deserialize(json) + return EventDetails.changedEnterpriseAdminRoleDetails(v) + case "changed_enterprise_connected_team_status_details": + let v = try TeamLog.ChangedEnterpriseConnectedTeamStatusDetailsSerializer().deserialize(json) + return EventDetails.changedEnterpriseConnectedTeamStatusDetails(v) + case "ended_enterprise_admin_session_details": + let v = try TeamLog.EndedEnterpriseAdminSessionDetailsSerializer().deserialize(json) + return EventDetails.endedEnterpriseAdminSessionDetails(v) + case "ended_enterprise_admin_session_deprecated_details": + let v = try TeamLog.EndedEnterpriseAdminSessionDeprecatedDetailsSerializer().deserialize(json) + return EventDetails.endedEnterpriseAdminSessionDeprecatedDetails(v) + case "enterprise_settings_locking_details": + let v = try TeamLog.EnterpriseSettingsLockingDetailsSerializer().deserialize(json) + return EventDetails.enterpriseSettingsLockingDetails(v) + case "guest_admin_change_status_details": + let v = try TeamLog.GuestAdminChangeStatusDetailsSerializer().deserialize(json) + return EventDetails.guestAdminChangeStatusDetails(v) + case "started_enterprise_admin_session_details": + let v = try TeamLog.StartedEnterpriseAdminSessionDetailsSerializer().deserialize(json) + return EventDetails.startedEnterpriseAdminSessionDetails(v) + case "team_merge_request_accepted_details": + let v = try TeamLog.TeamMergeRequestAcceptedDetailsSerializer().deserialize(json) + return EventDetails.teamMergeRequestAcceptedDetails(v) + case "team_merge_request_accepted_shown_to_primary_team_details": + let v = try TeamLog.TeamMergeRequestAcceptedShownToPrimaryTeamDetailsSerializer().deserialize(json) + return EventDetails.teamMergeRequestAcceptedShownToPrimaryTeamDetails(v) + case "team_merge_request_accepted_shown_to_secondary_team_details": + let v = try TeamLog.TeamMergeRequestAcceptedShownToSecondaryTeamDetailsSerializer().deserialize(json) + return EventDetails.teamMergeRequestAcceptedShownToSecondaryTeamDetails(v) + case "team_merge_request_auto_canceled_details": + let v = try TeamLog.TeamMergeRequestAutoCanceledDetailsSerializer().deserialize(json) + return EventDetails.teamMergeRequestAutoCanceledDetails(v) + case "team_merge_request_canceled_details": + let v = try TeamLog.TeamMergeRequestCanceledDetailsSerializer().deserialize(json) + return EventDetails.teamMergeRequestCanceledDetails(v) + case "team_merge_request_canceled_shown_to_primary_team_details": + let v = try TeamLog.TeamMergeRequestCanceledShownToPrimaryTeamDetailsSerializer().deserialize(json) + return EventDetails.teamMergeRequestCanceledShownToPrimaryTeamDetails(v) + case "team_merge_request_canceled_shown_to_secondary_team_details": + let v = try TeamLog.TeamMergeRequestCanceledShownToSecondaryTeamDetailsSerializer().deserialize(json) + return EventDetails.teamMergeRequestCanceledShownToSecondaryTeamDetails(v) + case "team_merge_request_expired_details": + let v = try TeamLog.TeamMergeRequestExpiredDetailsSerializer().deserialize(json) + return EventDetails.teamMergeRequestExpiredDetails(v) + case "team_merge_request_expired_shown_to_primary_team_details": + let v = try TeamLog.TeamMergeRequestExpiredShownToPrimaryTeamDetailsSerializer().deserialize(json) + return EventDetails.teamMergeRequestExpiredShownToPrimaryTeamDetails(v) + case "team_merge_request_expired_shown_to_secondary_team_details": + let v = try TeamLog.TeamMergeRequestExpiredShownToSecondaryTeamDetailsSerializer().deserialize(json) + return EventDetails.teamMergeRequestExpiredShownToSecondaryTeamDetails(v) + case "team_merge_request_rejected_shown_to_primary_team_details": + let v = try TeamLog.TeamMergeRequestRejectedShownToPrimaryTeamDetailsSerializer().deserialize(json) + return EventDetails.teamMergeRequestRejectedShownToPrimaryTeamDetails(v) + case "team_merge_request_rejected_shown_to_secondary_team_details": + let v = try TeamLog.TeamMergeRequestRejectedShownToSecondaryTeamDetailsSerializer().deserialize(json) + return EventDetails.teamMergeRequestRejectedShownToSecondaryTeamDetails(v) + case "team_merge_request_reminder_details": + let v = try TeamLog.TeamMergeRequestReminderDetailsSerializer().deserialize(json) + return EventDetails.teamMergeRequestReminderDetails(v) + case "team_merge_request_reminder_shown_to_primary_team_details": + let v = try TeamLog.TeamMergeRequestReminderShownToPrimaryTeamDetailsSerializer().deserialize(json) + return EventDetails.teamMergeRequestReminderShownToPrimaryTeamDetails(v) + case "team_merge_request_reminder_shown_to_secondary_team_details": + let v = try TeamLog.TeamMergeRequestReminderShownToSecondaryTeamDetailsSerializer().deserialize(json) + return EventDetails.teamMergeRequestReminderShownToSecondaryTeamDetails(v) + case "team_merge_request_revoked_details": + let v = try TeamLog.TeamMergeRequestRevokedDetailsSerializer().deserialize(json) + return EventDetails.teamMergeRequestRevokedDetails(v) + case "team_merge_request_sent_shown_to_primary_team_details": + let v = try TeamLog.TeamMergeRequestSentShownToPrimaryTeamDetailsSerializer().deserialize(json) + return EventDetails.teamMergeRequestSentShownToPrimaryTeamDetails(v) + case "team_merge_request_sent_shown_to_secondary_team_details": + let v = try TeamLog.TeamMergeRequestSentShownToSecondaryTeamDetailsSerializer().deserialize(json) + return EventDetails.teamMergeRequestSentShownToSecondaryTeamDetails(v) + case "missing_details": + let v = try TeamLog.MissingDetailsSerializer().deserialize(json) + return EventDetails.missingDetails(v) + case "other": + return EventDetails.other + default: + return EventDetails.other + } + default: + throw JSONSerializerError.deserializeError(type: EventDetails.self, json: json) } } } @@ -16001,6 +21368,70 @@ public class TeamLog { case fileUnlikeComment(TeamLog.FileUnlikeCommentType) /// (comments) Unresolved file comment case fileUnresolveComment(TeamLog.FileUnresolveCommentType) + /// (dash) Added a comment to a stack + case dashAddedCommentToStack(TeamLog.DashAddedCommentToStackType) + /// (dash) Connected to a user connector + case dashAddedConnector(TeamLog.DashAddedConnectorType) + /// (dash) Added a link to a stack + case dashAddedLinkToStack(TeamLog.DashAddedLinkToStackType) + /// (dash) Admin added an email domain to the team allowlist + case dashAddedTeamEmailDomainAllowlist(TeamLog.DashAddedTeamEmailDomainAllowlistType) + /// (dash) Admin added an admin connector + case dashAdminAddedOrgWideConnector(TeamLog.DashAdminAddedOrgWideConnectorType) + /// (dash) Admin disabled a user connector + case dashAdminDisabledConnector(TeamLog.DashAdminDisabledConnectorType) + /// (dash) Admin enabled a user connector + case dashAdminEnabledConnector(TeamLog.DashAdminEnabledConnectorType) + /// (dash) Admin removed an admin connector + case dashAdminRemovedOrgWideConnector(TeamLog.DashAdminRemovedOrgWideConnectorType) + /// (dash) Archived a stack + case dashArchivedStack(TeamLog.DashArchivedStackType) + /// (dash) Changed the audience of a shared link to a stack + case dashChangedAudienceOfSharedLinkToStack(TeamLog.DashChangedAudienceOfSharedLinkToStackType) + /// (dash) Cloned stack + case dashClonedStack(TeamLog.DashClonedStackType) + /// (dash) Called a tool on a connector + case dashConnectorToolsCall(TeamLog.DashConnectorToolsCallType) + /// (dash) Created a stack + case dashCreatedStack(TeamLog.DashCreatedStackType) + /// (dash) Deleted a comment from a stack + case dashDeletedCommentFromStack(TeamLog.DashDeletedCommentFromStackType) + /// (dash) Deleted a stack + case dashDeletedStack(TeamLog.DashDeletedStackType) + /// (dash) Edited a comment in a stack + case dashEditedCommentInStack(TeamLog.DashEditedCommentInStackType) + /// (dash) External user opened a stack + case dashExternalUserOpenedStack(TeamLog.DashExternalUserOpenedStackType) + /// (dash) Opened the desktop app for the first time + case dashFirstLaunchedDesktop(TeamLog.DashFirstLaunchedDesktopType) + /// (dash) Opened the extension for the first time + case dashFirstLaunchedExtension(TeamLog.DashFirstLaunchedExtensionType) + /// (dash) Opened the web Start Page for the first time + case dashFirstLaunchedWebStartPage(TeamLog.DashFirstLaunchedWebStartPageType) + /// (dash) Checked access permissions to a stack + case dashOpenedSharedLinkToStack(TeamLog.DashOpenedSharedLinkToStackType) + /// (dash) Opened a stack + case dashOpenedStack(TeamLog.DashOpenedStackType) + /// (dash) Changed the preview opt-out status + case dashPreviewOptOutStatusChanged(TeamLog.DashPreviewOptOutStatusChangedType) + /// (dash) Disconnected a user connector + case dashRemovedConnector(TeamLog.DashRemovedConnectorType) + /// (dash) Removed a link from a stack + case dashRemovedLinkFromStack(TeamLog.DashRemovedLinkFromStackType) + /// (dash) Removed a shared link to a stack + case dashRemovedSharedLinkToStack(TeamLog.DashRemovedSharedLinkToStackType) + /// (dash) Admin removed an email domain from the team allowlist + case dashRemovedTeamEmailDomainAllowlist(TeamLog.DashRemovedTeamEmailDomainAllowlistType) + /// (dash) Renamed a stack + case dashRenamedStack(TeamLog.DashRenamedStackType) + /// (dash) Shared a link to a stack + case dashSharedLinkToStack(TeamLog.DashSharedLinkToStackType) + /// (dash) Unarchived a stack + case dashUnarchivedStack(TeamLog.DashUnarchivedStackType) + /// (dash) Member viewed a company stack + case dashViewedCompanyStack(TeamLog.DashViewedCompanyStackType) + /// (dash) Admin viewed the external AI activity report + case dashViewedExternalAiActivityReport(TeamLog.DashViewedExternalAiActivityReportType) /// (data_governance) Added folders to policy case governancePolicyAddFolders(TeamLog.GovernancePolicyAddFoldersType) /// (data_governance) Couldn't add a folder to a policy @@ -16109,10 +21540,34 @@ public class TeamLog { case domainVerificationRemoveDomain(TeamLog.DomainVerificationRemoveDomainType) /// (domains) Enabled domain invites (deprecated, no longer logged) case enabledDomainInvites(TeamLog.EnabledDomainInvitesType) + /// (encryption) Canceled team key rotation + case encryptedFolderCancelTeamKeyRotation(TeamLog.EncryptedFolderCancelTeamKeyRotationType) + /// (encryption) Added recovery key + case encryptedFolderEnrollBackupKey(TeamLog.EncryptedFolderEnrollBackupKeyType) + /// (encryption) Enrolled device + case encryptedFolderEnrollClient(TeamLog.EncryptedFolderEnrollClientType) + /// (encryption) Activated team folder encryption + case encryptedFolderEnrollTeam(TeamLog.EncryptedFolderEnrollTeamType) + /// (encryption) Deactivated team folder encryption + case encryptedFolderFinishTeamUnenrollment(TeamLog.EncryptedFolderFinishTeamUnenrollmentType) + /// (encryption) Initiated team key rotation + case encryptedFolderInitTeamKeyRotation(TeamLog.EncryptedFolderInitTeamKeyRotationType) + /// (encryption) Initiated deactivation of team folder encryption + case encryptedFolderInitTeamUnenrollment(TeamLog.EncryptedFolderInitTeamUnenrollmentType) + /// (encryption) Removed recovery key + case encryptedFolderRemoveBackupKey(TeamLog.EncryptedFolderRemoveBackupKeyType) + /// (encryption) Rotated team key + case encryptedFolderRotateTeamKey(TeamLog.EncryptedFolderRotateTeamKeyType) + /// (encryption) Unenrolled device + case encryptedFolderUnenrollClient(TeamLog.EncryptedFolderUnenrollClientType) + /// (encryption) Activated team encryption key + case teamEncryptionKeyActivateKey(TeamLog.TeamEncryptionKeyActivateKeyType) /// (encryption) Canceled team encryption key deletion case teamEncryptionKeyCancelKeyDeletion(TeamLog.TeamEncryptionKeyCancelKeyDeletionType) /// (encryption) Created team encryption key case teamEncryptionKeyCreateKey(TeamLog.TeamEncryptionKeyCreateKeyType) + /// (encryption) Deactivated team encryption key + case teamEncryptionKeyDeactivateKey(TeamLog.TeamEncryptionKeyDeactivateKeyType) /// (encryption) Deleted team encryption key case teamEncryptionKeyDeleteKey(TeamLog.TeamEncryptionKeyDeleteKeyType) /// (encryption) Disabled team encryption key @@ -16165,6 +21620,8 @@ public class TeamLog { case folderOverviewItemPinned(TeamLog.FolderOverviewItemPinnedType) /// (file_operations) Unpinned item from folder overview case folderOverviewItemUnpinned(TeamLog.FolderOverviewItemUnpinnedType) + /// (file_operations) Downloaded files in Replay + case mediaHubFileDownloaded(TeamLog.MediaHubFileDownloadedType) /// (file_operations) Added a label case objectLabelAdded(TeamLog.ObjectLabelAddedType) /// (file_operations) Removed a label @@ -16175,6 +21632,10 @@ public class TeamLog { case organizeFolderWithTidy(TeamLog.OrganizeFolderWithTidyType) /// (file_operations) Deleted files in Replay case replayFileDelete(TeamLog.ReplayFileDeleteType) + /// (file_operations) Downloaded files in Replay + case replayFileDownloaded(TeamLog.ReplayFileDownloadedType) + /// (file_operations) Created a team project in Replay + case replayTeamProjectCreated(TeamLog.ReplayTeamProjectCreatedType) /// (file_operations) Rewound a folder case rewindFolder(TeamLog.RewindFolderType) /// (file_operations) Reverted naming convention @@ -16187,6 +21648,8 @@ public class TeamLog { case userTagsRemoved(TeamLog.UserTagsRemovedType) /// (file_requests) Received files via Email to Dropbox case emailIngestReceiveFile(TeamLog.EmailIngestReceiveFileType) + /// (file_requests) Auto closed file request + case fileRequestAutoClose(TeamLog.FileRequestAutoCloseType) /// (file_requests) Changed file request case fileRequestChange(TeamLog.FileRequestChangeType) /// (file_requests) Closed file request @@ -16213,6 +21676,8 @@ public class TeamLog { case groupDelete(TeamLog.GroupDeleteType) /// (groups) Updated group (deprecated, no longer logged) case groupDescriptionUpdated(TeamLog.GroupDescriptionUpdatedType) + /// (groups) Changed group's external sharing setting + case groupExternalSharingSettingOverrideChanged(TeamLog.GroupExternalSharingSettingOverrideChangedType) /// (groups) Updated group join policy (deprecated, no longer logged) case groupJoinPolicyUpdated(TeamLog.GroupJoinPolicyUpdatedType) /// (groups) Moved group (deprecated, no longer logged) @@ -16247,6 +21712,10 @@ public class TeamLog { case signInAsSessionStart(TeamLog.SignInAsSessionStartType) /// (logins) Failed to sign in via SSO (deprecated, replaced by 'Failed to sign in') case ssoError(TeamLog.SsoErrorType) + /// (members) Add-on Assigned + case addonAssigned(TeamLog.AddonAssignedType) + /// (members) Add-on Removed + case addonRemoved(TeamLog.AddonRemovedType) /// (members) Invited members to activate Backup case backupAdminInvitationSent(TeamLog.BackupAdminInvitationSentType) /// (members) Opened Backup invite @@ -16277,6 +21746,8 @@ public class TeamLog { case memberDeleteManualContacts(TeamLog.MemberDeleteManualContactsType) /// (members) Deleted team member profile photo case memberDeleteProfilePhoto(TeamLog.MemberDeleteProfilePhotoType) + /// (members) Admin browsed a team member's folder contents + case memberFolderContentsAccessed(TeamLog.MemberFolderContentsAccessedType) /// (members) Permanently deleted contents of deleted team member account case memberPermanentlyDeleteAccountContents(TeamLog.MemberPermanentlyDeleteAccountContentsType) /// (members) Removed the external ID for team member @@ -16297,6 +21768,10 @@ public class TeamLog { case memberTransferAccountContents(TeamLog.MemberTransferAccountContentsType) /// (members) Added pending secondary email case pendingSecondaryEmailAdded(TeamLog.PendingSecondaryEmailAddedType) + /// (members) Product assigned to team member + case productAssignedToMember(TeamLog.ProductAssignedToMemberType) + /// (members) Product removed from team member + case productRemovedFromMember(TeamLog.ProductRemovedFromMemberType) /// (members) Deleted secondary email case secondaryEmailDeleted(TeamLog.SecondaryEmailDeletedType) /// (members) Verified secondary email @@ -16407,6 +21882,22 @@ public class TeamLog { case passwordReset(TeamLog.PasswordResetType) /// (passwords) Reset all team member passwords case passwordResetAll(TeamLog.PasswordResetAllType) + /// (protect) Added collaborators via Dropbox Protect + case protectActionAddCollaborator(TeamLog.ProtectActionAddCollaboratorType) + /// (protect) Added a link via Dropbox Protect + case protectActionAddLink(TeamLog.ProtectActionAddLinkType) + /// (protect) Deleted content via Dropbox Protect + case protectActionDelete(TeamLog.ProtectActionDeleteType) + /// (protect) Exported content via Dropbox Protect + case protectActionExport(TeamLog.ProtectActionExportType) + /// (protect) Removed collaborators via Dropbox Protect + case protectActionRemoveCollaborator(TeamLog.ProtectActionRemoveCollaboratorType) + /// (protect) Removed a link via Dropbox Protect + case protectActionRemoveLink(TeamLog.ProtectActionRemoveLinkType) + /// (protect) Stopped sharing content via Dropbox Protect + case protectActionStopSharing(TeamLog.ProtectActionStopSharingType) + /// (protect) Modified Protect internal domains list + case protectInternalDomainsChanged(TeamLog.ProtectInternalDomainsChangedType) /// (reports) Created Classification report case classificationCreateReport(TeamLog.ClassificationCreateReportType) /// (reports) Couldn't create Classification report @@ -16423,6 +21914,10 @@ public class TeamLog { case externalSharingCreateReport(TeamLog.ExternalSharingCreateReportType) /// (reports) Couldn't create External sharing report case externalSharingReportFailed(TeamLog.ExternalSharingReportFailedType) + /// (reports) Created member access report + case memberAccessDetailsCreateReport(TeamLog.MemberAccessDetailsCreateReportType) + /// (reports) Couldn't generate member access report + case memberAccessDetailsCreateReportFailed(TeamLog.MemberAccessDetailsCreateReportFailedType) /// (reports) Report created: Links created with no expiration case noExpirationLinkGenCreateReport(TeamLog.NoExpirationLinkGenCreateReportType) /// (reports) Couldn't create report: Links created with no expiration @@ -16445,12 +21940,24 @@ public class TeamLog { case ransomwareAlertCreateReport(TeamLog.RansomwareAlertCreateReportType) /// (reports) Couldn't generate ransomware report case ransomwareAlertCreateReportFailed(TeamLog.RansomwareAlertCreateReportFailedType) + /// (reports) Created shared folders report + case sharedFoldersCreateReport(TeamLog.SharedFoldersCreateReportType) + /// (reports) Couldn't generate shared folders report + case sharedFoldersCreateReportFailed(TeamLog.SharedFoldersCreateReportFailedType) /// (reports) Created Smart Sync non-admin devices report case smartSyncCreateAdminPrivilegeReport(TeamLog.SmartSyncCreateAdminPrivilegeReportType) /// (reports) Created team activity report case teamActivityCreateReport(TeamLog.TeamActivityCreateReportType) /// (reports) Couldn't generate team activity report case teamActivityCreateReportFail(TeamLog.TeamActivityCreateReportFailType) + /// (reports) Created team folders report + case teamFoldersCreateReport(TeamLog.TeamFoldersCreateReportType) + /// (reports) Couldn't generate team folders report + case teamFoldersCreateReportFailed(TeamLog.TeamFoldersCreateReportFailedType) + /// (reports) Created team storage report + case teamStorageCreateReport(TeamLog.TeamStorageCreateReportType) + /// (reports) Couldn't generate team storage report + case teamStorageCreateReportFailed(TeamLog.TeamStorageCreateReportFailedType) /// (sharing) Shared album case collectionShare(TeamLog.CollectionShareType) /// (sharing) Transfer files added @@ -16463,6 +21970,20 @@ public class TeamLog { case fileTransfersTransferSend(TeamLog.FileTransfersTransferSendType) /// (sharing) Viewed transfer case fileTransfersTransferView(TeamLog.FileTransfersTransferViewType) + /// (sharing) Added member to Replay project + case mediaHubProjectTeamAdd(TeamLog.MediaHubProjectTeamAddType) + /// (sharing) Removed member from Replay project + case mediaHubProjectTeamDelete(TeamLog.MediaHubProjectTeamDeleteType) + /// (sharing) Changed member role in Replay project + case mediaHubProjectTeamRoleChanged(TeamLog.MediaHubProjectTeamRoleChangedType) + /// (sharing) Changed Replay shared link audience + case mediaHubSharedLinkAudienceChanged(TeamLog.MediaHubSharedLinkAudienceChangedType) + /// (sharing) Created Replay shared link + case mediaHubSharedLinkCreated(TeamLog.MediaHubSharedLinkCreatedType) + /// (sharing) Changed Replay shared link download setting + case mediaHubSharedLinkDownloadSettingChanged(TeamLog.MediaHubSharedLinkDownloadSettingChangedType) + /// (sharing) Revoked Replay shared link + case mediaHubSharedLinkRevoked(TeamLog.MediaHubSharedLinkRevokedType) /// (sharing) Changed Paper doc to invite-only (deprecated, no longer logged) case noteAclInviteOnly(TeamLog.NoteAclInviteOnlyType) /// (sharing) Changed Paper doc to link-accessible (deprecated, no longer logged) @@ -16477,12 +21998,28 @@ public class TeamLog { case openNoteShared(TeamLog.OpenNoteSharedType) /// (sharing) Created shared link in Replay case replayFileSharedLinkCreated(TeamLog.ReplayFileSharedLinkCreatedType) - /// (sharing) Modified shared link in Replay + /// (sharing) Changed shared link in Replay case replayFileSharedLinkModified(TeamLog.ReplayFileSharedLinkModifiedType) /// (sharing) Added member to Replay Project case replayProjectTeamAdd(TeamLog.ReplayProjectTeamAddType) /// (sharing) Removed member from Replay Project case replayProjectTeamDelete(TeamLog.ReplayProjectTeamDeleteType) + /// (sharing) File added to Send and Track + case sendAndTrackFileAdded(TeamLog.SendAndTrackFileAddedType) + /// (sharing) File renamed in Send and Track + case sendAndTrackFileRenamed(TeamLog.SendAndTrackFileRenamedType) + /// (sharing) File updated in Send and Track + case sendAndTrackFileUpdated(TeamLog.SendAndTrackFileUpdatedType) + /// (sharing) Link created in Send and Track + case sendAndTrackLinkCreated(TeamLog.SendAndTrackLinkCreatedType) + /// (sharing) Link deleted in Send and Track + case sendAndTrackLinkDeleted(TeamLog.SendAndTrackLinkDeletedType) + /// (sharing) Send and Track Link Updated + case sendAndTrackLinkUpdated(TeamLog.SendAndTrackLinkUpdatedType) + /// (sharing) Send and Track Link Visited + case sendAndTrackLinkViewed(TeamLog.SendAndTrackLinkViewedType) + /// (sharing) Send and Track file and associated links deleted + case sendAndTrackRemovedFileAndAssociatedLinks(TeamLog.SendAndTrackRemovedFileAndAssociatedLinksType) /// (sharing) Added team to shared folder (deprecated, no longer logged) case sfAddGroup(TeamLog.SfAddGroupType) /// (sharing) Allowed non-collaborators to view links to files in shared folder (deprecated, no longer logged) @@ -16595,6 +22132,8 @@ public class TeamLog { case sharedLinkDownload(TeamLog.SharedLinkDownloadType) /// (sharing) Removed shared link expiration date case sharedLinkRemoveExpiry(TeamLog.SharedLinkRemoveExpiryType) + /// (sharing) Removed link visitor + case sharedLinkRemoveVisitor(TeamLog.SharedLinkRemoveVisitorType) /// (sharing) Added an expiration date to the shared link case sharedLinkSettingsAddExpiration(TeamLog.SharedLinkSettingsAddExpirationType) /// (sharing) Added a password to the shared link @@ -16673,6 +22212,24 @@ public class TeamLog { case showcaseUntrashedDeprecated(TeamLog.ShowcaseUntrashedDeprecatedType) /// (showcase) Viewed showcase case showcaseView(TeamLog.ShowcaseViewType) + /// (signatures) Canceled signature request + case signSignatureRequestCanceled(TeamLog.SignSignatureRequestCanceledType) + /// (signatures) Completed signature request + case signSignatureRequestCompleted(TeamLog.SignSignatureRequestCompletedType) + /// (signatures) Declined signature request + case signSignatureRequestDeclined(TeamLog.SignSignatureRequestDeclinedType) + /// (signatures) Opened signature request + case signSignatureRequestOpened(TeamLog.SignSignatureRequestOpenedType) + /// (signatures) Sent signature request reminder + case signSignatureRequestReminderSent(TeamLog.SignSignatureRequestReminderSentType) + /// (signatures) Sent signature request + case signSignatureRequestSent(TeamLog.SignSignatureRequestSentType) + /// (signatures) Created template + case signTemplateCreated(TeamLog.SignTemplateCreatedType) + /// (signatures) Shared template + case signTemplateShared(TeamLog.SignTemplateSharedType) + /// (sso) RISC security event received from external provider + case riscSecurityEvent(TeamLog.RiscSecurityEventType) /// (sso) Added X.509 certificate for SSO case ssoAddCert(TeamLog.SsoAddCertType) /// (sso) Added sign-in URL for SSO @@ -16703,20 +22260,32 @@ public class TeamLog { case teamFolderPermanentlyDelete(TeamLog.TeamFolderPermanentlyDeleteType) /// (team_folders) Renamed active/archived team folder case teamFolderRename(TeamLog.TeamFolderRenameType) + /// (team_folders) Changed team folder space limit enforcement type + case teamFolderSpaceLimitsChangeCapsType(TeamLog.TeamFolderSpaceLimitsChangeCapsTypeType) + /// (team_folders) Changed team folder space limit + case teamFolderSpaceLimitsChangeLimit(TeamLog.TeamFolderSpaceLimitsChangeLimitType) + /// (team_folders) Changed team folder space limit notification target + case teamFolderSpaceLimitsChangeNotificationTarget(TeamLog.TeamFolderSpaceLimitsChangeNotificationTargetType) /// (team_folders) Changed sync default case teamSelectiveSyncSettingsChanged(TeamLog.TeamSelectiveSyncSettingsChangedType) /// (team_policies) Changed account capture setting on team domain case accountCaptureChangePolicy(TeamLog.AccountCaptureChangePolicyType) /// (team_policies) Changed admin reminder settings for requests to join the team case adminEmailRemindersChanged(TeamLog.AdminEmailRemindersChangedType) + /// (team_policies) Changed AI third party sharing policy for team + case aiThirdPartySharingDropboxBasePolicyChanged(TeamLog.AiThirdPartySharingDropboxBasePolicyChangedType) /// (team_policies) Disabled downloads (deprecated, no longer logged) case allowDownloadDisabled(TeamLog.AllowDownloadDisabledType) /// (team_policies) Enabled downloads (deprecated, no longer logged) case allowDownloadEnabled(TeamLog.AllowDownloadEnabledType) + /// (team_policies) Enabled/disabled Apple login for team + case appleLoginChangePolicy(TeamLog.AppleLoginChangePolicyType) /// (team_policies) Changed app permissions case appPermissionsChanged(TeamLog.AppPermissionsChangedType) /// (team_policies) Changed camera uploads setting for team case cameraUploadsPolicyChanged(TeamLog.CameraUploadsPolicyChangedType) + /// (team_policies) Changed Capture team space policy for team + case captureTeamSpacePolicyChanged(TeamLog.CaptureTeamSpacePolicyChangedType) /// (team_policies) Changed Capture transcription policy for team case captureTranscriptPolicyChanged(TeamLog.CaptureTranscriptPolicyChangedType) /// (team_policies) Changed classification policy for team @@ -16725,6 +22294,10 @@ public class TeamLog { case computerBackupPolicyChanged(TeamLog.ComputerBackupPolicyChangedType) /// (team_policies) Changed content management setting case contentAdministrationPolicyChanged(TeamLog.ContentAdministrationPolicyChangedType) + /// (team_policies) Changed content deletion protection policy for team + case contentDeletionProtectionChangePolicy(TeamLog.ContentDeletionProtectionChangePolicyType) + /// (team_policies) Changed Dash external sharing policy for team + case dashExternalSharingPolicyChanged(TeamLog.DashExternalSharingPolicyChangedType) /// (team_policies) Set restrictions on data center locations where team data resides case dataPlacementRestrictionChangePolicy(TeamLog.DataPlacementRestrictionChangePolicyType) /// (team_policies) Completed restrictions on data center locations where team data resides @@ -16773,6 +22346,8 @@ public class TeamLog { case fileRequestsEmailsRestrictedToTeamOnly(TeamLog.FileRequestsEmailsRestrictedToTeamOnlyType) /// (team_policies) Changed file transfers policy for team case fileTransfersPolicyChanged(TeamLog.FileTransfersPolicyChangedType) + /// (team_policies) Changed flexible file names policy for team + case flexibleFileNamesPolicyChanged(TeamLog.FlexibleFileNamesPolicyChangedType) /// (team_policies) Changed folder link restrictions policy for team case folderLinkRestrictionPolicyChanged(TeamLog.FolderLinkRestrictionPolicyChangedType) /// (team_policies) Enabled/disabled Google single sign-on for team @@ -16783,6 +22358,12 @@ public class TeamLog { case integrationPolicyChanged(TeamLog.IntegrationPolicyChangedType) /// (team_policies) Changed invite accept email policy for team case inviteAcceptanceEmailPolicyChanged(TeamLog.InviteAcceptanceEmailPolicyChangedType) + /// (team_policies) Changed the policy for adding people to Replay content + case mediaHubAddingPeoplePolicyChanged(TeamLog.MediaHubAddingPeoplePolicyChangedType) + /// (team_policies) Changed the policy for downloading Replay content + case mediaHubDownloadPolicyChanged(TeamLog.MediaHubDownloadPolicyChangedType) + /// (team_policies) Changed the policy for sharing Replay content + case mediaHubLinkSharingPolicyChanged(TeamLog.MediaHubLinkSharingPolicyChangedType) /// (team_policies) Changed whether users can find team when not invited case memberRequestsChangePolicy(TeamLog.MemberRequestsChangePolicyType) /// (team_policies) Changed member send invite policy for team @@ -16797,8 +22378,12 @@ public class TeamLog { case memberSpaceLimitsRemoveException(TeamLog.MemberSpaceLimitsRemoveExceptionType) /// (team_policies) Enabled/disabled option for team members to suggest people to add to team case memberSuggestionsChangePolicy(TeamLog.MemberSuggestionsChangePolicyType) + /// (team_policies) Enabled/disabled Microsoft login for team + case microsoftLoginChangePolicy(TeamLog.MicrosoftLoginChangePolicyType) /// (team_policies) Enabled/disabled Microsoft Office add-in case microsoftOfficeAddinChangePolicy(TeamLog.MicrosoftOfficeAddinChangePolicyType) + /// (team_policies) Changed multi-team identity policy for team + case multiTeamIdentityPolicyChanged(TeamLog.MultiTeamIdentityPolicyChangedType) /// (team_policies) Enabled/disabled network control case networkControlChangePolicy(TeamLog.NetworkControlChangePolicyType) /// (team_policies) Changed whether Dropbox Paper, when enabled, is deployed to all members or to specific @@ -16819,16 +22404,30 @@ public class TeamLog { case paperEnabledUsersGroupAddition(TeamLog.PaperEnabledUsersGroupAdditionType) /// (team_policies) Removed users from Paper-enabled users list case paperEnabledUsersGroupRemoval(TeamLog.PaperEnabledUsersGroupRemovalType) + /// (team_policies) Changed passkey login policy for team + case passkeyLoginPolicyChanged(TeamLog.PasskeyLoginPolicyChangedType) /// (team_policies) Changed team password strength requirements case passwordStrengthRequirementsChangePolicy(TeamLog.PasswordStrengthRequirementsChangePolicyType) /// (team_policies) Enabled/disabled ability of team members to permanently delete content case permanentDeleteChangePolicy(TeamLog.PermanentDeleteChangePolicyType) + /// (team_policies) Changed Dropbox AI policy for team + case previewsAiPolicyChanged(TeamLog.PreviewsAiPolicyChangedType) + /// (team_policies) Changed the policy for adding people to Replay content + case replayAddingPeoplePolicyChanged(TeamLog.ReplayAddingPeoplePolicyChangedType) + /// (team_policies) Changed the policy for sharing Replay content + case replaySharingPolicyChanged(TeamLog.ReplaySharingPolicyChangedType) /// (team_policies) Enabled/disabled reseller support case resellerSupportChangePolicy(TeamLog.ResellerSupportChangePolicyType) /// (team_policies) Changed Rewind policy for team case rewindPolicyChanged(TeamLog.RewindPolicyChangedType) + /// (team_policies) Changed “Send and track” policy for team + case sendAndTrackPolicyChanged(TeamLog.SendAndTrackPolicyChangedType) + /// (team_policies) Changed “Send and track” external sharing policy for team + case sendExternalSharingPolicyChanged(TeamLog.SendExternalSharingPolicyChangedType) /// (team_policies) Changed send for signature policy for team case sendForSignaturePolicyChanged(TeamLog.SendForSignaturePolicyChangedType) + /// (team_policies) Changed shared link default permissions policy for team + case sharedLinkDefaultPermissionsPolicyChanged(TeamLog.SharedLinkDefaultPermissionsPolicyChangedType) /// (team_policies) Changed whether team members can join shared folders owned outside team case sharingChangeFolderJoinPolicy(TeamLog.SharingChangeFolderJoinPolicyType) /// (team_policies) Changed the allow remove or change expiration policy for the links shared outside of the @@ -16849,6 +22448,10 @@ public class TeamLog { case showcaseChangeEnabledPolicy(TeamLog.ShowcaseChangeEnabledPolicyType) /// (team_policies) Enabled/disabled sharing Dropbox Showcase externally for team case showcaseChangeExternalSharingPolicy(TeamLog.ShowcaseChangeExternalSharingPolicyType) + /// (team_policies) Changed Signatures external sharing policy for team + case signExternalSharingPolicyChanged(TeamLog.SignExternalSharingPolicyChangedType) + /// (team_policies) Changed template creation permission + case signTemplateCreationPermissionChanged(TeamLog.SignTemplateCreationPermissionChangedType) /// (team_policies) Changed automatic Smart Sync setting for team case smarterSmartSyncPolicyChanged(TeamLog.SmarterSmartSyncPolicyChangedType) /// (team_policies) Changed default Smart Sync setting for team members @@ -16859,20 +22462,26 @@ public class TeamLog { case smartSyncOptOut(TeamLog.SmartSyncOptOutType) /// (team_policies) Changed single sign-on setting for team case ssoChangePolicy(TeamLog.SsoChangePolicyType) + /// (team_policies) Changed cross-team Stack access policy for team + case stackCrossTeamAccessPolicyChanged(TeamLog.StackCrossTeamAccessPolicyChangedType) /// (team_policies) Changed team branding policy for team case teamBrandingPolicyChanged(TeamLog.TeamBrandingPolicyChangedType) /// (team_policies) Changed App Integrations setting for team case teamExtensionsPolicyChanged(TeamLog.TeamExtensionsPolicyChangedType) + /// (team_policies) Changed team member storage request policy for team + case teamMemberStorageRequestPolicyChanged(TeamLog.TeamMemberStorageRequestPolicyChangedType) /// (team_policies) Enabled/disabled Team Selective Sync for team case teamSelectiveSyncPolicyChanged(TeamLog.TeamSelectiveSyncPolicyChangedType) /// (team_policies) Edited the approved list for sharing externally case teamSharingWhitelistSubjectsChanged(TeamLog.TeamSharingWhitelistSubjectsChangedType) /// (team_policies) Added members to two factor authentication exception list case tfaAddException(TeamLog.TfaAddExceptionType) - /// (team_policies) Changed two-step verification setting for team + /// (team_policies) Changed two-factor authentication setting for team case tfaChangePolicy(TeamLog.TfaChangePolicyType) /// (team_policies) Removed members from two factor authentication exception list case tfaRemoveException(TeamLog.TfaRemoveExceptionType) + /// (team_policies) Changed top level content setting for team + case topLevelContentPolicyChanged(TeamLog.TopLevelContentPolicyChangedType) /// (team_policies) Enabled/disabled option for members to link personal Dropbox account and team account to /// same computer case twoAccountChangePolicy(TeamLog.TwoAccountChangePolicyType) @@ -16910,19 +22519,23 @@ public class TeamLog { case teamProfileRemoveBackground(TeamLog.TeamProfileRemoveBackgroundType) /// (team_profile) Removed team logo displayed on shared link headers case teamProfileRemoveLogo(TeamLog.TeamProfileRemoveLogoType) - /// (tfa) Added backup phone for two-step verification + /// (tfa) Added passkey for login + case passkeyAdd(TeamLog.PasskeyAddType) + /// (tfa) Removed passkey for login + case passkeyRemove(TeamLog.PasskeyRemoveType) + /// (tfa) Added backup phone for two-factor authentication case tfaAddBackupPhone(TeamLog.TfaAddBackupPhoneType) - /// (tfa) Added security key for two-step verification + /// (tfa) Added security key for two-factor authentication case tfaAddSecurityKey(TeamLog.TfaAddSecurityKeyType) - /// (tfa) Changed backup phone for two-step verification + /// (tfa) Changed backup phone for two-factor authentication case tfaChangeBackupPhone(TeamLog.TfaChangeBackupPhoneType) - /// (tfa) Enabled/disabled/changed two-step verification setting + /// (tfa) Enabled/disabled/changed two-factor authentication setting case tfaChangeStatus(TeamLog.TfaChangeStatusType) - /// (tfa) Removed backup phone for two-step verification + /// (tfa) Removed backup phone for two-factor authentication case tfaRemoveBackupPhone(TeamLog.TfaRemoveBackupPhoneType) - /// (tfa) Removed security key for two-step verification + /// (tfa) Removed security key for two-factor authentication case tfaRemoveSecurityKey(TeamLog.TfaRemoveSecurityKeyType) - /// (tfa) Reset two-step verification for team member + /// (tfa) Reset two-factor authentication for team member case tfaReset(TeamLog.TfaResetType) /// (trusted_teams) Changed enterprise admin role case changedEnterpriseAdminRole(TeamLog.ChangedEnterpriseAdminRoleType) @@ -16991,3551 +22604,4410 @@ public class TeamLog { } } } - public class EventTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: EventType) throws -> JSON { switch value { - case .adminAlertingAlertStateChanged(let arg): - var d = try Serialization.getFields(TeamLog.AdminAlertingAlertStateChangedTypeSerializer().serialize(arg)) - d[".tag"] = .str("admin_alerting_alert_state_changed") - return .dictionary(d) - case .adminAlertingChangedAlertConfig(let arg): - var d = try Serialization.getFields(TeamLog.AdminAlertingChangedAlertConfigTypeSerializer().serialize(arg)) - d[".tag"] = .str("admin_alerting_changed_alert_config") - return .dictionary(d) - case .adminAlertingTriggeredAlert(let arg): - var d = try Serialization.getFields(TeamLog.AdminAlertingTriggeredAlertTypeSerializer().serialize(arg)) - d[".tag"] = .str("admin_alerting_triggered_alert") - return .dictionary(d) - case .ransomwareRestoreProcessCompleted(let arg): - var d = try Serialization.getFields(TeamLog.RansomwareRestoreProcessCompletedTypeSerializer().serialize(arg)) - d[".tag"] = .str("ransomware_restore_process_completed") - return .dictionary(d) - case .ransomwareRestoreProcessStarted(let arg): - var d = try Serialization.getFields(TeamLog.RansomwareRestoreProcessStartedTypeSerializer().serialize(arg)) - d[".tag"] = .str("ransomware_restore_process_started") - return .dictionary(d) - case .appBlockedByPermissions(let arg): - var d = try Serialization.getFields(TeamLog.AppBlockedByPermissionsTypeSerializer().serialize(arg)) - d[".tag"] = .str("app_blocked_by_permissions") - return .dictionary(d) - case .appLinkTeam(let arg): - var d = try Serialization.getFields(TeamLog.AppLinkTeamTypeSerializer().serialize(arg)) - d[".tag"] = .str("app_link_team") - return .dictionary(d) - case .appLinkUser(let arg): - var d = try Serialization.getFields(TeamLog.AppLinkUserTypeSerializer().serialize(arg)) - d[".tag"] = .str("app_link_user") - return .dictionary(d) - case .appUnlinkTeam(let arg): - var d = try Serialization.getFields(TeamLog.AppUnlinkTeamTypeSerializer().serialize(arg)) - d[".tag"] = .str("app_unlink_team") - return .dictionary(d) - case .appUnlinkUser(let arg): - var d = try Serialization.getFields(TeamLog.AppUnlinkUserTypeSerializer().serialize(arg)) - d[".tag"] = .str("app_unlink_user") - return .dictionary(d) - case .integrationConnected(let arg): - var d = try Serialization.getFields(TeamLog.IntegrationConnectedTypeSerializer().serialize(arg)) - d[".tag"] = .str("integration_connected") - return .dictionary(d) - case .integrationDisconnected(let arg): - var d = try Serialization.getFields(TeamLog.IntegrationDisconnectedTypeSerializer().serialize(arg)) - d[".tag"] = .str("integration_disconnected") - return .dictionary(d) - case .fileAddComment(let arg): - var d = try Serialization.getFields(TeamLog.FileAddCommentTypeSerializer().serialize(arg)) - d[".tag"] = .str("file_add_comment") - return .dictionary(d) - case .fileChangeCommentSubscription(let arg): - var d = try Serialization.getFields(TeamLog.FileChangeCommentSubscriptionTypeSerializer().serialize(arg)) - d[".tag"] = .str("file_change_comment_subscription") - return .dictionary(d) - case .fileDeleteComment(let arg): - var d = try Serialization.getFields(TeamLog.FileDeleteCommentTypeSerializer().serialize(arg)) - d[".tag"] = .str("file_delete_comment") - return .dictionary(d) - case .fileEditComment(let arg): - var d = try Serialization.getFields(TeamLog.FileEditCommentTypeSerializer().serialize(arg)) - d[".tag"] = .str("file_edit_comment") - return .dictionary(d) - case .fileLikeComment(let arg): - var d = try Serialization.getFields(TeamLog.FileLikeCommentTypeSerializer().serialize(arg)) - d[".tag"] = .str("file_like_comment") - return .dictionary(d) - case .fileResolveComment(let arg): - var d = try Serialization.getFields(TeamLog.FileResolveCommentTypeSerializer().serialize(arg)) - d[".tag"] = .str("file_resolve_comment") - return .dictionary(d) - case .fileUnlikeComment(let arg): - var d = try Serialization.getFields(TeamLog.FileUnlikeCommentTypeSerializer().serialize(arg)) - d[".tag"] = .str("file_unlike_comment") - return .dictionary(d) - case .fileUnresolveComment(let arg): - var d = try Serialization.getFields(TeamLog.FileUnresolveCommentTypeSerializer().serialize(arg)) - d[".tag"] = .str("file_unresolve_comment") - return .dictionary(d) - case .governancePolicyAddFolders(let arg): - var d = try Serialization.getFields(TeamLog.GovernancePolicyAddFoldersTypeSerializer().serialize(arg)) - d[".tag"] = .str("governance_policy_add_folders") - return .dictionary(d) - case .governancePolicyAddFolderFailed(let arg): - var d = try Serialization.getFields(TeamLog.GovernancePolicyAddFolderFailedTypeSerializer().serialize(arg)) - d[".tag"] = .str("governance_policy_add_folder_failed") - return .dictionary(d) - case .governancePolicyContentDisposed(let arg): - var d = try Serialization.getFields(TeamLog.GovernancePolicyContentDisposedTypeSerializer().serialize(arg)) - d[".tag"] = .str("governance_policy_content_disposed") - return .dictionary(d) - case .governancePolicyCreate(let arg): - var d = try Serialization.getFields(TeamLog.GovernancePolicyCreateTypeSerializer().serialize(arg)) - d[".tag"] = .str("governance_policy_create") - return .dictionary(d) - case .governancePolicyDelete(let arg): - var d = try Serialization.getFields(TeamLog.GovernancePolicyDeleteTypeSerializer().serialize(arg)) - d[".tag"] = .str("governance_policy_delete") - return .dictionary(d) - case .governancePolicyEditDetails(let arg): - var d = try Serialization.getFields(TeamLog.GovernancePolicyEditDetailsTypeSerializer().serialize(arg)) - d[".tag"] = .str("governance_policy_edit_details") - return .dictionary(d) - case .governancePolicyEditDuration(let arg): - var d = try Serialization.getFields(TeamLog.GovernancePolicyEditDurationTypeSerializer().serialize(arg)) - d[".tag"] = .str("governance_policy_edit_duration") - return .dictionary(d) - case .governancePolicyExportCreated(let arg): - var d = try Serialization.getFields(TeamLog.GovernancePolicyExportCreatedTypeSerializer().serialize(arg)) - d[".tag"] = .str("governance_policy_export_created") - return .dictionary(d) - case .governancePolicyExportRemoved(let arg): - var d = try Serialization.getFields(TeamLog.GovernancePolicyExportRemovedTypeSerializer().serialize(arg)) - d[".tag"] = .str("governance_policy_export_removed") - return .dictionary(d) - case .governancePolicyRemoveFolders(let arg): - var d = try Serialization.getFields(TeamLog.GovernancePolicyRemoveFoldersTypeSerializer().serialize(arg)) - d[".tag"] = .str("governance_policy_remove_folders") - return .dictionary(d) - case .governancePolicyReportCreated(let arg): - var d = try Serialization.getFields(TeamLog.GovernancePolicyReportCreatedTypeSerializer().serialize(arg)) - d[".tag"] = .str("governance_policy_report_created") - return .dictionary(d) - case .governancePolicyZipPartDownloaded(let arg): - var d = try Serialization.getFields(TeamLog.GovernancePolicyZipPartDownloadedTypeSerializer().serialize(arg)) - d[".tag"] = .str("governance_policy_zip_part_downloaded") - return .dictionary(d) - case .legalHoldsActivateAHold(let arg): - var d = try Serialization.getFields(TeamLog.LegalHoldsActivateAHoldTypeSerializer().serialize(arg)) - d[".tag"] = .str("legal_holds_activate_a_hold") - return .dictionary(d) - case .legalHoldsAddMembers(let arg): - var d = try Serialization.getFields(TeamLog.LegalHoldsAddMembersTypeSerializer().serialize(arg)) - d[".tag"] = .str("legal_holds_add_members") - return .dictionary(d) - case .legalHoldsChangeHoldDetails(let arg): - var d = try Serialization.getFields(TeamLog.LegalHoldsChangeHoldDetailsTypeSerializer().serialize(arg)) - d[".tag"] = .str("legal_holds_change_hold_details") - return .dictionary(d) - case .legalHoldsChangeHoldName(let arg): - var d = try Serialization.getFields(TeamLog.LegalHoldsChangeHoldNameTypeSerializer().serialize(arg)) - d[".tag"] = .str("legal_holds_change_hold_name") - return .dictionary(d) - case .legalHoldsExportAHold(let arg): - var d = try Serialization.getFields(TeamLog.LegalHoldsExportAHoldTypeSerializer().serialize(arg)) - d[".tag"] = .str("legal_holds_export_a_hold") - return .dictionary(d) - case .legalHoldsExportCancelled(let arg): - var d = try Serialization.getFields(TeamLog.LegalHoldsExportCancelledTypeSerializer().serialize(arg)) - d[".tag"] = .str("legal_holds_export_cancelled") - return .dictionary(d) - case .legalHoldsExportDownloaded(let arg): - var d = try Serialization.getFields(TeamLog.LegalHoldsExportDownloadedTypeSerializer().serialize(arg)) - d[".tag"] = .str("legal_holds_export_downloaded") - return .dictionary(d) - case .legalHoldsExportRemoved(let arg): - var d = try Serialization.getFields(TeamLog.LegalHoldsExportRemovedTypeSerializer().serialize(arg)) - d[".tag"] = .str("legal_holds_export_removed") - return .dictionary(d) - case .legalHoldsReleaseAHold(let arg): - var d = try Serialization.getFields(TeamLog.LegalHoldsReleaseAHoldTypeSerializer().serialize(arg)) - d[".tag"] = .str("legal_holds_release_a_hold") - return .dictionary(d) - case .legalHoldsRemoveMembers(let arg): - var d = try Serialization.getFields(TeamLog.LegalHoldsRemoveMembersTypeSerializer().serialize(arg)) - d[".tag"] = .str("legal_holds_remove_members") - return .dictionary(d) - case .legalHoldsReportAHold(let arg): - var d = try Serialization.getFields(TeamLog.LegalHoldsReportAHoldTypeSerializer().serialize(arg)) - d[".tag"] = .str("legal_holds_report_a_hold") - return .dictionary(d) - case .deviceChangeIpDesktop(let arg): - var d = try Serialization.getFields(TeamLog.DeviceChangeIpDesktopTypeSerializer().serialize(arg)) - d[".tag"] = .str("device_change_ip_desktop") - return .dictionary(d) - case .deviceChangeIpMobile(let arg): - var d = try Serialization.getFields(TeamLog.DeviceChangeIpMobileTypeSerializer().serialize(arg)) - d[".tag"] = .str("device_change_ip_mobile") - return .dictionary(d) - case .deviceChangeIpWeb(let arg): - var d = try Serialization.getFields(TeamLog.DeviceChangeIpWebTypeSerializer().serialize(arg)) - d[".tag"] = .str("device_change_ip_web") - return .dictionary(d) - case .deviceDeleteOnUnlinkFail(let arg): - var d = try Serialization.getFields(TeamLog.DeviceDeleteOnUnlinkFailTypeSerializer().serialize(arg)) - d[".tag"] = .str("device_delete_on_unlink_fail") - return .dictionary(d) - case .deviceDeleteOnUnlinkSuccess(let arg): - var d = try Serialization.getFields(TeamLog.DeviceDeleteOnUnlinkSuccessTypeSerializer().serialize(arg)) - d[".tag"] = .str("device_delete_on_unlink_success") - return .dictionary(d) - case .deviceLinkFail(let arg): - var d = try Serialization.getFields(TeamLog.DeviceLinkFailTypeSerializer().serialize(arg)) - d[".tag"] = .str("device_link_fail") - return .dictionary(d) - case .deviceLinkSuccess(let arg): - var d = try Serialization.getFields(TeamLog.DeviceLinkSuccessTypeSerializer().serialize(arg)) - d[".tag"] = .str("device_link_success") - return .dictionary(d) - case .deviceManagementDisabled(let arg): - var d = try Serialization.getFields(TeamLog.DeviceManagementDisabledTypeSerializer().serialize(arg)) - d[".tag"] = .str("device_management_disabled") - return .dictionary(d) - case .deviceManagementEnabled(let arg): - var d = try Serialization.getFields(TeamLog.DeviceManagementEnabledTypeSerializer().serialize(arg)) - d[".tag"] = .str("device_management_enabled") - return .dictionary(d) - case .deviceSyncBackupStatusChanged(let arg): - var d = try Serialization.getFields(TeamLog.DeviceSyncBackupStatusChangedTypeSerializer().serialize(arg)) - d[".tag"] = .str("device_sync_backup_status_changed") - return .dictionary(d) - case .deviceUnlink(let arg): - var d = try Serialization.getFields(TeamLog.DeviceUnlinkTypeSerializer().serialize(arg)) - d[".tag"] = .str("device_unlink") - return .dictionary(d) - case .dropboxPasswordsExported(let arg): - var d = try Serialization.getFields(TeamLog.DropboxPasswordsExportedTypeSerializer().serialize(arg)) - d[".tag"] = .str("dropbox_passwords_exported") - return .dictionary(d) - case .dropboxPasswordsNewDeviceEnrolled(let arg): - var d = try Serialization.getFields(TeamLog.DropboxPasswordsNewDeviceEnrolledTypeSerializer().serialize(arg)) - d[".tag"] = .str("dropbox_passwords_new_device_enrolled") - return .dictionary(d) - case .emmRefreshAuthToken(let arg): - var d = try Serialization.getFields(TeamLog.EmmRefreshAuthTokenTypeSerializer().serialize(arg)) - d[".tag"] = .str("emm_refresh_auth_token") - return .dictionary(d) - case .externalDriveBackupEligibilityStatusChecked(let arg): - var d = try Serialization.getFields(TeamLog.ExternalDriveBackupEligibilityStatusCheckedTypeSerializer().serialize(arg)) - d[".tag"] = .str("external_drive_backup_eligibility_status_checked") - return .dictionary(d) - case .externalDriveBackupStatusChanged(let arg): - var d = try Serialization.getFields(TeamLog.ExternalDriveBackupStatusChangedTypeSerializer().serialize(arg)) - d[".tag"] = .str("external_drive_backup_status_changed") - return .dictionary(d) - case .accountCaptureChangeAvailability(let arg): - var d = try Serialization.getFields(TeamLog.AccountCaptureChangeAvailabilityTypeSerializer().serialize(arg)) - d[".tag"] = .str("account_capture_change_availability") - return .dictionary(d) - case .accountCaptureMigrateAccount(let arg): - var d = try Serialization.getFields(TeamLog.AccountCaptureMigrateAccountTypeSerializer().serialize(arg)) - d[".tag"] = .str("account_capture_migrate_account") - return .dictionary(d) - case .accountCaptureNotificationEmailsSent(let arg): - var d = try Serialization.getFields(TeamLog.AccountCaptureNotificationEmailsSentTypeSerializer().serialize(arg)) - d[".tag"] = .str("account_capture_notification_emails_sent") - return .dictionary(d) - case .accountCaptureRelinquishAccount(let arg): - var d = try Serialization.getFields(TeamLog.AccountCaptureRelinquishAccountTypeSerializer().serialize(arg)) - d[".tag"] = .str("account_capture_relinquish_account") - return .dictionary(d) - case .disabledDomainInvites(let arg): - var d = try Serialization.getFields(TeamLog.DisabledDomainInvitesTypeSerializer().serialize(arg)) - d[".tag"] = .str("disabled_domain_invites") - return .dictionary(d) - case .domainInvitesApproveRequestToJoinTeam(let arg): - var d = try Serialization.getFields(TeamLog.DomainInvitesApproveRequestToJoinTeamTypeSerializer().serialize(arg)) - d[".tag"] = .str("domain_invites_approve_request_to_join_team") - return .dictionary(d) - case .domainInvitesDeclineRequestToJoinTeam(let arg): - var d = try Serialization.getFields(TeamLog.DomainInvitesDeclineRequestToJoinTeamTypeSerializer().serialize(arg)) - d[".tag"] = .str("domain_invites_decline_request_to_join_team") - return .dictionary(d) - case .domainInvitesEmailExistingUsers(let arg): - var d = try Serialization.getFields(TeamLog.DomainInvitesEmailExistingUsersTypeSerializer().serialize(arg)) - d[".tag"] = .str("domain_invites_email_existing_users") - return .dictionary(d) - case .domainInvitesRequestToJoinTeam(let arg): - var d = try Serialization.getFields(TeamLog.DomainInvitesRequestToJoinTeamTypeSerializer().serialize(arg)) - d[".tag"] = .str("domain_invites_request_to_join_team") - return .dictionary(d) - case .domainInvitesSetInviteNewUserPrefToNo(let arg): - var d = try Serialization.getFields(TeamLog.DomainInvitesSetInviteNewUserPrefToNoTypeSerializer().serialize(arg)) - d[".tag"] = .str("domain_invites_set_invite_new_user_pref_to_no") - return .dictionary(d) - case .domainInvitesSetInviteNewUserPrefToYes(let arg): - var d = try Serialization.getFields(TeamLog.DomainInvitesSetInviteNewUserPrefToYesTypeSerializer().serialize(arg)) - d[".tag"] = .str("domain_invites_set_invite_new_user_pref_to_yes") - return .dictionary(d) - case .domainVerificationAddDomainFail(let arg): - var d = try Serialization.getFields(TeamLog.DomainVerificationAddDomainFailTypeSerializer().serialize(arg)) - d[".tag"] = .str("domain_verification_add_domain_fail") - return .dictionary(d) - case .domainVerificationAddDomainSuccess(let arg): - var d = try Serialization.getFields(TeamLog.DomainVerificationAddDomainSuccessTypeSerializer().serialize(arg)) - d[".tag"] = .str("domain_verification_add_domain_success") - return .dictionary(d) - case .domainVerificationRemoveDomain(let arg): - var d = try Serialization.getFields(TeamLog.DomainVerificationRemoveDomainTypeSerializer().serialize(arg)) - d[".tag"] = .str("domain_verification_remove_domain") - return .dictionary(d) - case .enabledDomainInvites(let arg): - var d = try Serialization.getFields(TeamLog.EnabledDomainInvitesTypeSerializer().serialize(arg)) - d[".tag"] = .str("enabled_domain_invites") - return .dictionary(d) - case .teamEncryptionKeyCancelKeyDeletion(let arg): - var d = try Serialization.getFields(TeamLog.TeamEncryptionKeyCancelKeyDeletionTypeSerializer().serialize(arg)) - d[".tag"] = .str("team_encryption_key_cancel_key_deletion") - return .dictionary(d) - case .teamEncryptionKeyCreateKey(let arg): - var d = try Serialization.getFields(TeamLog.TeamEncryptionKeyCreateKeyTypeSerializer().serialize(arg)) - d[".tag"] = .str("team_encryption_key_create_key") - return .dictionary(d) - case .teamEncryptionKeyDeleteKey(let arg): - var d = try Serialization.getFields(TeamLog.TeamEncryptionKeyDeleteKeyTypeSerializer().serialize(arg)) - d[".tag"] = .str("team_encryption_key_delete_key") - return .dictionary(d) - case .teamEncryptionKeyDisableKey(let arg): - var d = try Serialization.getFields(TeamLog.TeamEncryptionKeyDisableKeyTypeSerializer().serialize(arg)) - d[".tag"] = .str("team_encryption_key_disable_key") - return .dictionary(d) - case .teamEncryptionKeyEnableKey(let arg): - var d = try Serialization.getFields(TeamLog.TeamEncryptionKeyEnableKeyTypeSerializer().serialize(arg)) - d[".tag"] = .str("team_encryption_key_enable_key") - return .dictionary(d) - case .teamEncryptionKeyRotateKey(let arg): - var d = try Serialization.getFields(TeamLog.TeamEncryptionKeyRotateKeyTypeSerializer().serialize(arg)) - d[".tag"] = .str("team_encryption_key_rotate_key") - return .dictionary(d) - case .teamEncryptionKeyScheduleKeyDeletion(let arg): - var d = try Serialization.getFields(TeamLog.TeamEncryptionKeyScheduleKeyDeletionTypeSerializer().serialize(arg)) - d[".tag"] = .str("team_encryption_key_schedule_key_deletion") - return .dictionary(d) - case .applyNamingConvention(let arg): - var d = try Serialization.getFields(TeamLog.ApplyNamingConventionTypeSerializer().serialize(arg)) - d[".tag"] = .str("apply_naming_convention") - return .dictionary(d) - case .createFolder(let arg): - var d = try Serialization.getFields(TeamLog.CreateFolderTypeSerializer().serialize(arg)) - d[".tag"] = .str("create_folder") - return .dictionary(d) - case .fileAdd(let arg): - var d = try Serialization.getFields(TeamLog.FileAddTypeSerializer().serialize(arg)) - d[".tag"] = .str("file_add") - return .dictionary(d) - case .fileAddFromAutomation(let arg): - var d = try Serialization.getFields(TeamLog.FileAddFromAutomationTypeSerializer().serialize(arg)) - d[".tag"] = .str("file_add_from_automation") - return .dictionary(d) - case .fileCopy(let arg): - var d = try Serialization.getFields(TeamLog.FileCopyTypeSerializer().serialize(arg)) - d[".tag"] = .str("file_copy") - return .dictionary(d) - case .fileDelete(let arg): - var d = try Serialization.getFields(TeamLog.FileDeleteTypeSerializer().serialize(arg)) - d[".tag"] = .str("file_delete") - return .dictionary(d) - case .fileDownload(let arg): - var d = try Serialization.getFields(TeamLog.FileDownloadTypeSerializer().serialize(arg)) - d[".tag"] = .str("file_download") - return .dictionary(d) - case .fileEdit(let arg): - var d = try Serialization.getFields(TeamLog.FileEditTypeSerializer().serialize(arg)) - d[".tag"] = .str("file_edit") - return .dictionary(d) - case .fileGetCopyReference(let arg): - var d = try Serialization.getFields(TeamLog.FileGetCopyReferenceTypeSerializer().serialize(arg)) - d[".tag"] = .str("file_get_copy_reference") - return .dictionary(d) - case .fileLockingLockStatusChanged(let arg): - var d = try Serialization.getFields(TeamLog.FileLockingLockStatusChangedTypeSerializer().serialize(arg)) - d[".tag"] = .str("file_locking_lock_status_changed") - return .dictionary(d) - case .fileMove(let arg): - var d = try Serialization.getFields(TeamLog.FileMoveTypeSerializer().serialize(arg)) - d[".tag"] = .str("file_move") - return .dictionary(d) - case .filePermanentlyDelete(let arg): - var d = try Serialization.getFields(TeamLog.FilePermanentlyDeleteTypeSerializer().serialize(arg)) - d[".tag"] = .str("file_permanently_delete") - return .dictionary(d) - case .filePreview(let arg): - var d = try Serialization.getFields(TeamLog.FilePreviewTypeSerializer().serialize(arg)) - d[".tag"] = .str("file_preview") - return .dictionary(d) - case .fileRename(let arg): - var d = try Serialization.getFields(TeamLog.FileRenameTypeSerializer().serialize(arg)) - d[".tag"] = .str("file_rename") - return .dictionary(d) - case .fileRestore(let arg): - var d = try Serialization.getFields(TeamLog.FileRestoreTypeSerializer().serialize(arg)) - d[".tag"] = .str("file_restore") - return .dictionary(d) - case .fileRevert(let arg): - var d = try Serialization.getFields(TeamLog.FileRevertTypeSerializer().serialize(arg)) - d[".tag"] = .str("file_revert") - return .dictionary(d) - case .fileRollbackChanges(let arg): - var d = try Serialization.getFields(TeamLog.FileRollbackChangesTypeSerializer().serialize(arg)) - d[".tag"] = .str("file_rollback_changes") - return .dictionary(d) - case .fileSaveCopyReference(let arg): - var d = try Serialization.getFields(TeamLog.FileSaveCopyReferenceTypeSerializer().serialize(arg)) - d[".tag"] = .str("file_save_copy_reference") - return .dictionary(d) - case .folderOverviewDescriptionChanged(let arg): - var d = try Serialization.getFields(TeamLog.FolderOverviewDescriptionChangedTypeSerializer().serialize(arg)) - d[".tag"] = .str("folder_overview_description_changed") - return .dictionary(d) - case .folderOverviewItemPinned(let arg): - var d = try Serialization.getFields(TeamLog.FolderOverviewItemPinnedTypeSerializer().serialize(arg)) - d[".tag"] = .str("folder_overview_item_pinned") - return .dictionary(d) - case .folderOverviewItemUnpinned(let arg): - var d = try Serialization.getFields(TeamLog.FolderOverviewItemUnpinnedTypeSerializer().serialize(arg)) - d[".tag"] = .str("folder_overview_item_unpinned") - return .dictionary(d) - case .objectLabelAdded(let arg): - var d = try Serialization.getFields(TeamLog.ObjectLabelAddedTypeSerializer().serialize(arg)) - d[".tag"] = .str("object_label_added") - return .dictionary(d) - case .objectLabelRemoved(let arg): - var d = try Serialization.getFields(TeamLog.ObjectLabelRemovedTypeSerializer().serialize(arg)) - d[".tag"] = .str("object_label_removed") - return .dictionary(d) - case .objectLabelUpdatedValue(let arg): - var d = try Serialization.getFields(TeamLog.ObjectLabelUpdatedValueTypeSerializer().serialize(arg)) - d[".tag"] = .str("object_label_updated_value") - return .dictionary(d) - case .organizeFolderWithTidy(let arg): - var d = try Serialization.getFields(TeamLog.OrganizeFolderWithTidyTypeSerializer().serialize(arg)) - d[".tag"] = .str("organize_folder_with_tidy") - return .dictionary(d) - case .replayFileDelete(let arg): - var d = try Serialization.getFields(TeamLog.ReplayFileDeleteTypeSerializer().serialize(arg)) - d[".tag"] = .str("replay_file_delete") - return .dictionary(d) - case .rewindFolder(let arg): - var d = try Serialization.getFields(TeamLog.RewindFolderTypeSerializer().serialize(arg)) - d[".tag"] = .str("rewind_folder") - return .dictionary(d) - case .undoNamingConvention(let arg): - var d = try Serialization.getFields(TeamLog.UndoNamingConventionTypeSerializer().serialize(arg)) - d[".tag"] = .str("undo_naming_convention") - return .dictionary(d) - case .undoOrganizeFolderWithTidy(let arg): - var d = try Serialization.getFields(TeamLog.UndoOrganizeFolderWithTidyTypeSerializer().serialize(arg)) - d[".tag"] = .str("undo_organize_folder_with_tidy") - return .dictionary(d) - case .userTagsAdded(let arg): - var d = try Serialization.getFields(TeamLog.UserTagsAddedTypeSerializer().serialize(arg)) - d[".tag"] = .str("user_tags_added") - return .dictionary(d) - case .userTagsRemoved(let arg): - var d = try Serialization.getFields(TeamLog.UserTagsRemovedTypeSerializer().serialize(arg)) - d[".tag"] = .str("user_tags_removed") - return .dictionary(d) - case .emailIngestReceiveFile(let arg): - var d = try Serialization.getFields(TeamLog.EmailIngestReceiveFileTypeSerializer().serialize(arg)) - d[".tag"] = .str("email_ingest_receive_file") - return .dictionary(d) - case .fileRequestChange(let arg): - var d = try Serialization.getFields(TeamLog.FileRequestChangeTypeSerializer().serialize(arg)) - d[".tag"] = .str("file_request_change") - return .dictionary(d) - case .fileRequestClose(let arg): - var d = try Serialization.getFields(TeamLog.FileRequestCloseTypeSerializer().serialize(arg)) - d[".tag"] = .str("file_request_close") - return .dictionary(d) - case .fileRequestCreate(let arg): - var d = try Serialization.getFields(TeamLog.FileRequestCreateTypeSerializer().serialize(arg)) - d[".tag"] = .str("file_request_create") - return .dictionary(d) - case .fileRequestDelete(let arg): - var d = try Serialization.getFields(TeamLog.FileRequestDeleteTypeSerializer().serialize(arg)) - d[".tag"] = .str("file_request_delete") - return .dictionary(d) - case .fileRequestReceiveFile(let arg): - var d = try Serialization.getFields(TeamLog.FileRequestReceiveFileTypeSerializer().serialize(arg)) - d[".tag"] = .str("file_request_receive_file") - return .dictionary(d) - case .groupAddExternalId(let arg): - var d = try Serialization.getFields(TeamLog.GroupAddExternalIdTypeSerializer().serialize(arg)) - d[".tag"] = .str("group_add_external_id") - return .dictionary(d) - case .groupAddMember(let arg): - var d = try Serialization.getFields(TeamLog.GroupAddMemberTypeSerializer().serialize(arg)) - d[".tag"] = .str("group_add_member") - return .dictionary(d) - case .groupChangeExternalId(let arg): - var d = try Serialization.getFields(TeamLog.GroupChangeExternalIdTypeSerializer().serialize(arg)) - d[".tag"] = .str("group_change_external_id") - return .dictionary(d) - case .groupChangeManagementType(let arg): - var d = try Serialization.getFields(TeamLog.GroupChangeManagementTypeTypeSerializer().serialize(arg)) - d[".tag"] = .str("group_change_management_type") - return .dictionary(d) - case .groupChangeMemberRole(let arg): - var d = try Serialization.getFields(TeamLog.GroupChangeMemberRoleTypeSerializer().serialize(arg)) - d[".tag"] = .str("group_change_member_role") - return .dictionary(d) - case .groupCreate(let arg): - var d = try Serialization.getFields(TeamLog.GroupCreateTypeSerializer().serialize(arg)) - d[".tag"] = .str("group_create") - return .dictionary(d) - case .groupDelete(let arg): - var d = try Serialization.getFields(TeamLog.GroupDeleteTypeSerializer().serialize(arg)) - d[".tag"] = .str("group_delete") - return .dictionary(d) - case .groupDescriptionUpdated(let arg): - var d = try Serialization.getFields(TeamLog.GroupDescriptionUpdatedTypeSerializer().serialize(arg)) - d[".tag"] = .str("group_description_updated") - return .dictionary(d) - case .groupJoinPolicyUpdated(let arg): - var d = try Serialization.getFields(TeamLog.GroupJoinPolicyUpdatedTypeSerializer().serialize(arg)) - d[".tag"] = .str("group_join_policy_updated") - return .dictionary(d) - case .groupMoved(let arg): - var d = try Serialization.getFields(TeamLog.GroupMovedTypeSerializer().serialize(arg)) - d[".tag"] = .str("group_moved") - return .dictionary(d) - case .groupRemoveExternalId(let arg): - var d = try Serialization.getFields(TeamLog.GroupRemoveExternalIdTypeSerializer().serialize(arg)) - d[".tag"] = .str("group_remove_external_id") - return .dictionary(d) - case .groupRemoveMember(let arg): - var d = try Serialization.getFields(TeamLog.GroupRemoveMemberTypeSerializer().serialize(arg)) - d[".tag"] = .str("group_remove_member") - return .dictionary(d) - case .groupRename(let arg): - var d = try Serialization.getFields(TeamLog.GroupRenameTypeSerializer().serialize(arg)) - d[".tag"] = .str("group_rename") - return .dictionary(d) - case .accountLockOrUnlocked(let arg): - var d = try Serialization.getFields(TeamLog.AccountLockOrUnlockedTypeSerializer().serialize(arg)) - d[".tag"] = .str("account_lock_or_unlocked") - return .dictionary(d) - case .emmError(let arg): - var d = try Serialization.getFields(TeamLog.EmmErrorTypeSerializer().serialize(arg)) - d[".tag"] = .str("emm_error") - return .dictionary(d) - case .guestAdminSignedInViaTrustedTeams(let arg): - var d = try Serialization.getFields(TeamLog.GuestAdminSignedInViaTrustedTeamsTypeSerializer().serialize(arg)) - d[".tag"] = .str("guest_admin_signed_in_via_trusted_teams") - return .dictionary(d) - case .guestAdminSignedOutViaTrustedTeams(let arg): - var d = try Serialization.getFields(TeamLog.GuestAdminSignedOutViaTrustedTeamsTypeSerializer().serialize(arg)) - d[".tag"] = .str("guest_admin_signed_out_via_trusted_teams") - return .dictionary(d) - case .loginFail(let arg): - var d = try Serialization.getFields(TeamLog.LoginFailTypeSerializer().serialize(arg)) - d[".tag"] = .str("login_fail") - return .dictionary(d) - case .loginSuccess(let arg): - var d = try Serialization.getFields(TeamLog.LoginSuccessTypeSerializer().serialize(arg)) - d[".tag"] = .str("login_success") - return .dictionary(d) - case .logout(let arg): - var d = try Serialization.getFields(TeamLog.LogoutTypeSerializer().serialize(arg)) - d[".tag"] = .str("logout") - return .dictionary(d) - case .resellerSupportSessionEnd(let arg): - var d = try Serialization.getFields(TeamLog.ResellerSupportSessionEndTypeSerializer().serialize(arg)) - d[".tag"] = .str("reseller_support_session_end") - return .dictionary(d) - case .resellerSupportSessionStart(let arg): - var d = try Serialization.getFields(TeamLog.ResellerSupportSessionStartTypeSerializer().serialize(arg)) - d[".tag"] = .str("reseller_support_session_start") - return .dictionary(d) - case .signInAsSessionEnd(let arg): - var d = try Serialization.getFields(TeamLog.SignInAsSessionEndTypeSerializer().serialize(arg)) - d[".tag"] = .str("sign_in_as_session_end") - return .dictionary(d) - case .signInAsSessionStart(let arg): - var d = try Serialization.getFields(TeamLog.SignInAsSessionStartTypeSerializer().serialize(arg)) - d[".tag"] = .str("sign_in_as_session_start") - return .dictionary(d) - case .ssoError(let arg): - var d = try Serialization.getFields(TeamLog.SsoErrorTypeSerializer().serialize(arg)) - d[".tag"] = .str("sso_error") - return .dictionary(d) - case .backupAdminInvitationSent(let arg): - var d = try Serialization.getFields(TeamLog.BackupAdminInvitationSentTypeSerializer().serialize(arg)) - d[".tag"] = .str("backup_admin_invitation_sent") - return .dictionary(d) - case .backupInvitationOpened(let arg): - var d = try Serialization.getFields(TeamLog.BackupInvitationOpenedTypeSerializer().serialize(arg)) - d[".tag"] = .str("backup_invitation_opened") - return .dictionary(d) - case .createTeamInviteLink(let arg): - var d = try Serialization.getFields(TeamLog.CreateTeamInviteLinkTypeSerializer().serialize(arg)) - d[".tag"] = .str("create_team_invite_link") - return .dictionary(d) - case .deleteTeamInviteLink(let arg): - var d = try Serialization.getFields(TeamLog.DeleteTeamInviteLinkTypeSerializer().serialize(arg)) - d[".tag"] = .str("delete_team_invite_link") - return .dictionary(d) - case .memberAddExternalId(let arg): - var d = try Serialization.getFields(TeamLog.MemberAddExternalIdTypeSerializer().serialize(arg)) - d[".tag"] = .str("member_add_external_id") - return .dictionary(d) - case .memberAddName(let arg): - var d = try Serialization.getFields(TeamLog.MemberAddNameTypeSerializer().serialize(arg)) - d[".tag"] = .str("member_add_name") - return .dictionary(d) - case .memberChangeAdminRole(let arg): - var d = try Serialization.getFields(TeamLog.MemberChangeAdminRoleTypeSerializer().serialize(arg)) - d[".tag"] = .str("member_change_admin_role") - return .dictionary(d) - case .memberChangeEmail(let arg): - var d = try Serialization.getFields(TeamLog.MemberChangeEmailTypeSerializer().serialize(arg)) - d[".tag"] = .str("member_change_email") - return .dictionary(d) - case .memberChangeExternalId(let arg): - var d = try Serialization.getFields(TeamLog.MemberChangeExternalIdTypeSerializer().serialize(arg)) - d[".tag"] = .str("member_change_external_id") - return .dictionary(d) - case .memberChangeMembershipType(let arg): - var d = try Serialization.getFields(TeamLog.MemberChangeMembershipTypeTypeSerializer().serialize(arg)) - d[".tag"] = .str("member_change_membership_type") - return .dictionary(d) - case .memberChangeName(let arg): - var d = try Serialization.getFields(TeamLog.MemberChangeNameTypeSerializer().serialize(arg)) - d[".tag"] = .str("member_change_name") - return .dictionary(d) - case .memberChangeResellerRole(let arg): - var d = try Serialization.getFields(TeamLog.MemberChangeResellerRoleTypeSerializer().serialize(arg)) - d[".tag"] = .str("member_change_reseller_role") - return .dictionary(d) - case .memberChangeStatus(let arg): - var d = try Serialization.getFields(TeamLog.MemberChangeStatusTypeSerializer().serialize(arg)) - d[".tag"] = .str("member_change_status") - return .dictionary(d) - case .memberDeleteManualContacts(let arg): - var d = try Serialization.getFields(TeamLog.MemberDeleteManualContactsTypeSerializer().serialize(arg)) - d[".tag"] = .str("member_delete_manual_contacts") - return .dictionary(d) - case .memberDeleteProfilePhoto(let arg): - var d = try Serialization.getFields(TeamLog.MemberDeleteProfilePhotoTypeSerializer().serialize(arg)) - d[".tag"] = .str("member_delete_profile_photo") - return .dictionary(d) - case .memberPermanentlyDeleteAccountContents(let arg): - var d = try Serialization.getFields(TeamLog.MemberPermanentlyDeleteAccountContentsTypeSerializer().serialize(arg)) - d[".tag"] = .str("member_permanently_delete_account_contents") - return .dictionary(d) - case .memberRemoveExternalId(let arg): - var d = try Serialization.getFields(TeamLog.MemberRemoveExternalIdTypeSerializer().serialize(arg)) - d[".tag"] = .str("member_remove_external_id") - return .dictionary(d) - case .memberSetProfilePhoto(let arg): - var d = try Serialization.getFields(TeamLog.MemberSetProfilePhotoTypeSerializer().serialize(arg)) - d[".tag"] = .str("member_set_profile_photo") - return .dictionary(d) - case .memberSpaceLimitsAddCustomQuota(let arg): - var d = try Serialization.getFields(TeamLog.MemberSpaceLimitsAddCustomQuotaTypeSerializer().serialize(arg)) - d[".tag"] = .str("member_space_limits_add_custom_quota") - return .dictionary(d) - case .memberSpaceLimitsChangeCustomQuota(let arg): - var d = try Serialization.getFields(TeamLog.MemberSpaceLimitsChangeCustomQuotaTypeSerializer().serialize(arg)) - d[".tag"] = .str("member_space_limits_change_custom_quota") - return .dictionary(d) - case .memberSpaceLimitsChangeStatus(let arg): - var d = try Serialization.getFields(TeamLog.MemberSpaceLimitsChangeStatusTypeSerializer().serialize(arg)) - d[".tag"] = .str("member_space_limits_change_status") - return .dictionary(d) - case .memberSpaceLimitsRemoveCustomQuota(let arg): - var d = try Serialization.getFields(TeamLog.MemberSpaceLimitsRemoveCustomQuotaTypeSerializer().serialize(arg)) - d[".tag"] = .str("member_space_limits_remove_custom_quota") - return .dictionary(d) - case .memberSuggest(let arg): - var d = try Serialization.getFields(TeamLog.MemberSuggestTypeSerializer().serialize(arg)) - d[".tag"] = .str("member_suggest") - return .dictionary(d) - case .memberTransferAccountContents(let arg): - var d = try Serialization.getFields(TeamLog.MemberTransferAccountContentsTypeSerializer().serialize(arg)) - d[".tag"] = .str("member_transfer_account_contents") - return .dictionary(d) - case .pendingSecondaryEmailAdded(let arg): - var d = try Serialization.getFields(TeamLog.PendingSecondaryEmailAddedTypeSerializer().serialize(arg)) - d[".tag"] = .str("pending_secondary_email_added") - return .dictionary(d) - case .secondaryEmailDeleted(let arg): - var d = try Serialization.getFields(TeamLog.SecondaryEmailDeletedTypeSerializer().serialize(arg)) - d[".tag"] = .str("secondary_email_deleted") - return .dictionary(d) - case .secondaryEmailVerified(let arg): - var d = try Serialization.getFields(TeamLog.SecondaryEmailVerifiedTypeSerializer().serialize(arg)) - d[".tag"] = .str("secondary_email_verified") - return .dictionary(d) - case .secondaryMailsPolicyChanged(let arg): - var d = try Serialization.getFields(TeamLog.SecondaryMailsPolicyChangedTypeSerializer().serialize(arg)) - d[".tag"] = .str("secondary_mails_policy_changed") - return .dictionary(d) - case .binderAddPage(let arg): - var d = try Serialization.getFields(TeamLog.BinderAddPageTypeSerializer().serialize(arg)) - d[".tag"] = .str("binder_add_page") - return .dictionary(d) - case .binderAddSection(let arg): - var d = try Serialization.getFields(TeamLog.BinderAddSectionTypeSerializer().serialize(arg)) - d[".tag"] = .str("binder_add_section") - return .dictionary(d) - case .binderRemovePage(let arg): - var d = try Serialization.getFields(TeamLog.BinderRemovePageTypeSerializer().serialize(arg)) - d[".tag"] = .str("binder_remove_page") - return .dictionary(d) - case .binderRemoveSection(let arg): - var d = try Serialization.getFields(TeamLog.BinderRemoveSectionTypeSerializer().serialize(arg)) - d[".tag"] = .str("binder_remove_section") - return .dictionary(d) - case .binderRenamePage(let arg): - var d = try Serialization.getFields(TeamLog.BinderRenamePageTypeSerializer().serialize(arg)) - d[".tag"] = .str("binder_rename_page") - return .dictionary(d) - case .binderRenameSection(let arg): - var d = try Serialization.getFields(TeamLog.BinderRenameSectionTypeSerializer().serialize(arg)) - d[".tag"] = .str("binder_rename_section") - return .dictionary(d) - case .binderReorderPage(let arg): - var d = try Serialization.getFields(TeamLog.BinderReorderPageTypeSerializer().serialize(arg)) - d[".tag"] = .str("binder_reorder_page") - return .dictionary(d) - case .binderReorderSection(let arg): - var d = try Serialization.getFields(TeamLog.BinderReorderSectionTypeSerializer().serialize(arg)) - d[".tag"] = .str("binder_reorder_section") - return .dictionary(d) - case .paperContentAddMember(let arg): - var d = try Serialization.getFields(TeamLog.PaperContentAddMemberTypeSerializer().serialize(arg)) - d[".tag"] = .str("paper_content_add_member") - return .dictionary(d) - case .paperContentAddToFolder(let arg): - var d = try Serialization.getFields(TeamLog.PaperContentAddToFolderTypeSerializer().serialize(arg)) - d[".tag"] = .str("paper_content_add_to_folder") - return .dictionary(d) - case .paperContentArchive(let arg): - var d = try Serialization.getFields(TeamLog.PaperContentArchiveTypeSerializer().serialize(arg)) - d[".tag"] = .str("paper_content_archive") - return .dictionary(d) - case .paperContentCreate(let arg): - var d = try Serialization.getFields(TeamLog.PaperContentCreateTypeSerializer().serialize(arg)) - d[".tag"] = .str("paper_content_create") - return .dictionary(d) - case .paperContentPermanentlyDelete(let arg): - var d = try Serialization.getFields(TeamLog.PaperContentPermanentlyDeleteTypeSerializer().serialize(arg)) - d[".tag"] = .str("paper_content_permanently_delete") - return .dictionary(d) - case .paperContentRemoveFromFolder(let arg): - var d = try Serialization.getFields(TeamLog.PaperContentRemoveFromFolderTypeSerializer().serialize(arg)) - d[".tag"] = .str("paper_content_remove_from_folder") - return .dictionary(d) - case .paperContentRemoveMember(let arg): - var d = try Serialization.getFields(TeamLog.PaperContentRemoveMemberTypeSerializer().serialize(arg)) - d[".tag"] = .str("paper_content_remove_member") - return .dictionary(d) - case .paperContentRename(let arg): - var d = try Serialization.getFields(TeamLog.PaperContentRenameTypeSerializer().serialize(arg)) - d[".tag"] = .str("paper_content_rename") - return .dictionary(d) - case .paperContentRestore(let arg): - var d = try Serialization.getFields(TeamLog.PaperContentRestoreTypeSerializer().serialize(arg)) - d[".tag"] = .str("paper_content_restore") - return .dictionary(d) - case .paperDocAddComment(let arg): - var d = try Serialization.getFields(TeamLog.PaperDocAddCommentTypeSerializer().serialize(arg)) - d[".tag"] = .str("paper_doc_add_comment") - return .dictionary(d) - case .paperDocChangeMemberRole(let arg): - var d = try Serialization.getFields(TeamLog.PaperDocChangeMemberRoleTypeSerializer().serialize(arg)) - d[".tag"] = .str("paper_doc_change_member_role") - return .dictionary(d) - case .paperDocChangeSharingPolicy(let arg): - var d = try Serialization.getFields(TeamLog.PaperDocChangeSharingPolicyTypeSerializer().serialize(arg)) - d[".tag"] = .str("paper_doc_change_sharing_policy") - return .dictionary(d) - case .paperDocChangeSubscription(let arg): - var d = try Serialization.getFields(TeamLog.PaperDocChangeSubscriptionTypeSerializer().serialize(arg)) - d[".tag"] = .str("paper_doc_change_subscription") - return .dictionary(d) - case .paperDocDeleted(let arg): - var d = try Serialization.getFields(TeamLog.PaperDocDeletedTypeSerializer().serialize(arg)) - d[".tag"] = .str("paper_doc_deleted") - return .dictionary(d) - case .paperDocDeleteComment(let arg): - var d = try Serialization.getFields(TeamLog.PaperDocDeleteCommentTypeSerializer().serialize(arg)) - d[".tag"] = .str("paper_doc_delete_comment") - return .dictionary(d) - case .paperDocDownload(let arg): - var d = try Serialization.getFields(TeamLog.PaperDocDownloadTypeSerializer().serialize(arg)) - d[".tag"] = .str("paper_doc_download") - return .dictionary(d) - case .paperDocEdit(let arg): - var d = try Serialization.getFields(TeamLog.PaperDocEditTypeSerializer().serialize(arg)) - d[".tag"] = .str("paper_doc_edit") - return .dictionary(d) - case .paperDocEditComment(let arg): - var d = try Serialization.getFields(TeamLog.PaperDocEditCommentTypeSerializer().serialize(arg)) - d[".tag"] = .str("paper_doc_edit_comment") - return .dictionary(d) - case .paperDocFollowed(let arg): - var d = try Serialization.getFields(TeamLog.PaperDocFollowedTypeSerializer().serialize(arg)) - d[".tag"] = .str("paper_doc_followed") - return .dictionary(d) - case .paperDocMention(let arg): - var d = try Serialization.getFields(TeamLog.PaperDocMentionTypeSerializer().serialize(arg)) - d[".tag"] = .str("paper_doc_mention") - return .dictionary(d) - case .paperDocOwnershipChanged(let arg): - var d = try Serialization.getFields(TeamLog.PaperDocOwnershipChangedTypeSerializer().serialize(arg)) - d[".tag"] = .str("paper_doc_ownership_changed") - return .dictionary(d) - case .paperDocRequestAccess(let arg): - var d = try Serialization.getFields(TeamLog.PaperDocRequestAccessTypeSerializer().serialize(arg)) - d[".tag"] = .str("paper_doc_request_access") - return .dictionary(d) - case .paperDocResolveComment(let arg): - var d = try Serialization.getFields(TeamLog.PaperDocResolveCommentTypeSerializer().serialize(arg)) - d[".tag"] = .str("paper_doc_resolve_comment") - return .dictionary(d) - case .paperDocRevert(let arg): - var d = try Serialization.getFields(TeamLog.PaperDocRevertTypeSerializer().serialize(arg)) - d[".tag"] = .str("paper_doc_revert") - return .dictionary(d) - case .paperDocSlackShare(let arg): - var d = try Serialization.getFields(TeamLog.PaperDocSlackShareTypeSerializer().serialize(arg)) - d[".tag"] = .str("paper_doc_slack_share") - return .dictionary(d) - case .paperDocTeamInvite(let arg): - var d = try Serialization.getFields(TeamLog.PaperDocTeamInviteTypeSerializer().serialize(arg)) - d[".tag"] = .str("paper_doc_team_invite") - return .dictionary(d) - case .paperDocTrashed(let arg): - var d = try Serialization.getFields(TeamLog.PaperDocTrashedTypeSerializer().serialize(arg)) - d[".tag"] = .str("paper_doc_trashed") - return .dictionary(d) - case .paperDocUnresolveComment(let arg): - var d = try Serialization.getFields(TeamLog.PaperDocUnresolveCommentTypeSerializer().serialize(arg)) - d[".tag"] = .str("paper_doc_unresolve_comment") - return .dictionary(d) - case .paperDocUntrashed(let arg): - var d = try Serialization.getFields(TeamLog.PaperDocUntrashedTypeSerializer().serialize(arg)) - d[".tag"] = .str("paper_doc_untrashed") - return .dictionary(d) - case .paperDocView(let arg): - var d = try Serialization.getFields(TeamLog.PaperDocViewTypeSerializer().serialize(arg)) - d[".tag"] = .str("paper_doc_view") - return .dictionary(d) - case .paperExternalViewAllow(let arg): - var d = try Serialization.getFields(TeamLog.PaperExternalViewAllowTypeSerializer().serialize(arg)) - d[".tag"] = .str("paper_external_view_allow") - return .dictionary(d) - case .paperExternalViewDefaultTeam(let arg): - var d = try Serialization.getFields(TeamLog.PaperExternalViewDefaultTeamTypeSerializer().serialize(arg)) - d[".tag"] = .str("paper_external_view_default_team") - return .dictionary(d) - case .paperExternalViewForbid(let arg): - var d = try Serialization.getFields(TeamLog.PaperExternalViewForbidTypeSerializer().serialize(arg)) - d[".tag"] = .str("paper_external_view_forbid") - return .dictionary(d) - case .paperFolderChangeSubscription(let arg): - var d = try Serialization.getFields(TeamLog.PaperFolderChangeSubscriptionTypeSerializer().serialize(arg)) - d[".tag"] = .str("paper_folder_change_subscription") - return .dictionary(d) - case .paperFolderDeleted(let arg): - var d = try Serialization.getFields(TeamLog.PaperFolderDeletedTypeSerializer().serialize(arg)) - d[".tag"] = .str("paper_folder_deleted") - return .dictionary(d) - case .paperFolderFollowed(let arg): - var d = try Serialization.getFields(TeamLog.PaperFolderFollowedTypeSerializer().serialize(arg)) - d[".tag"] = .str("paper_folder_followed") - return .dictionary(d) - case .paperFolderTeamInvite(let arg): - var d = try Serialization.getFields(TeamLog.PaperFolderTeamInviteTypeSerializer().serialize(arg)) - d[".tag"] = .str("paper_folder_team_invite") - return .dictionary(d) - case .paperPublishedLinkChangePermission(let arg): - var d = try Serialization.getFields(TeamLog.PaperPublishedLinkChangePermissionTypeSerializer().serialize(arg)) - d[".tag"] = .str("paper_published_link_change_permission") - return .dictionary(d) - case .paperPublishedLinkCreate(let arg): - var d = try Serialization.getFields(TeamLog.PaperPublishedLinkCreateTypeSerializer().serialize(arg)) - d[".tag"] = .str("paper_published_link_create") - return .dictionary(d) - case .paperPublishedLinkDisabled(let arg): - var d = try Serialization.getFields(TeamLog.PaperPublishedLinkDisabledTypeSerializer().serialize(arg)) - d[".tag"] = .str("paper_published_link_disabled") - return .dictionary(d) - case .paperPublishedLinkView(let arg): - var d = try Serialization.getFields(TeamLog.PaperPublishedLinkViewTypeSerializer().serialize(arg)) - d[".tag"] = .str("paper_published_link_view") - return .dictionary(d) - case .passwordChange(let arg): - var d = try Serialization.getFields(TeamLog.PasswordChangeTypeSerializer().serialize(arg)) - d[".tag"] = .str("password_change") - return .dictionary(d) - case .passwordReset(let arg): - var d = try Serialization.getFields(TeamLog.PasswordResetTypeSerializer().serialize(arg)) - d[".tag"] = .str("password_reset") - return .dictionary(d) - case .passwordResetAll(let arg): - var d = try Serialization.getFields(TeamLog.PasswordResetAllTypeSerializer().serialize(arg)) - d[".tag"] = .str("password_reset_all") - return .dictionary(d) - case .classificationCreateReport(let arg): - var d = try Serialization.getFields(TeamLog.ClassificationCreateReportTypeSerializer().serialize(arg)) - d[".tag"] = .str("classification_create_report") - return .dictionary(d) - case .classificationCreateReportFail(let arg): - var d = try Serialization.getFields(TeamLog.ClassificationCreateReportFailTypeSerializer().serialize(arg)) - d[".tag"] = .str("classification_create_report_fail") - return .dictionary(d) - case .emmCreateExceptionsReport(let arg): - var d = try Serialization.getFields(TeamLog.EmmCreateExceptionsReportTypeSerializer().serialize(arg)) - d[".tag"] = .str("emm_create_exceptions_report") - return .dictionary(d) - case .emmCreateUsageReport(let arg): - var d = try Serialization.getFields(TeamLog.EmmCreateUsageReportTypeSerializer().serialize(arg)) - d[".tag"] = .str("emm_create_usage_report") - return .dictionary(d) - case .exportMembersReport(let arg): - var d = try Serialization.getFields(TeamLog.ExportMembersReportTypeSerializer().serialize(arg)) - d[".tag"] = .str("export_members_report") - return .dictionary(d) - case .exportMembersReportFail(let arg): - var d = try Serialization.getFields(TeamLog.ExportMembersReportFailTypeSerializer().serialize(arg)) - d[".tag"] = .str("export_members_report_fail") - return .dictionary(d) - case .externalSharingCreateReport(let arg): - var d = try Serialization.getFields(TeamLog.ExternalSharingCreateReportTypeSerializer().serialize(arg)) - d[".tag"] = .str("external_sharing_create_report") - return .dictionary(d) - case .externalSharingReportFailed(let arg): - var d = try Serialization.getFields(TeamLog.ExternalSharingReportFailedTypeSerializer().serialize(arg)) - d[".tag"] = .str("external_sharing_report_failed") - return .dictionary(d) - case .noExpirationLinkGenCreateReport(let arg): - var d = try Serialization.getFields(TeamLog.NoExpirationLinkGenCreateReportTypeSerializer().serialize(arg)) - d[".tag"] = .str("no_expiration_link_gen_create_report") - return .dictionary(d) - case .noExpirationLinkGenReportFailed(let arg): - var d = try Serialization.getFields(TeamLog.NoExpirationLinkGenReportFailedTypeSerializer().serialize(arg)) - d[".tag"] = .str("no_expiration_link_gen_report_failed") - return .dictionary(d) - case .noPasswordLinkGenCreateReport(let arg): - var d = try Serialization.getFields(TeamLog.NoPasswordLinkGenCreateReportTypeSerializer().serialize(arg)) - d[".tag"] = .str("no_password_link_gen_create_report") - return .dictionary(d) - case .noPasswordLinkGenReportFailed(let arg): - var d = try Serialization.getFields(TeamLog.NoPasswordLinkGenReportFailedTypeSerializer().serialize(arg)) - d[".tag"] = .str("no_password_link_gen_report_failed") - return .dictionary(d) - case .noPasswordLinkViewCreateReport(let arg): - var d = try Serialization.getFields(TeamLog.NoPasswordLinkViewCreateReportTypeSerializer().serialize(arg)) - d[".tag"] = .str("no_password_link_view_create_report") - return .dictionary(d) - case .noPasswordLinkViewReportFailed(let arg): - var d = try Serialization.getFields(TeamLog.NoPasswordLinkViewReportFailedTypeSerializer().serialize(arg)) - d[".tag"] = .str("no_password_link_view_report_failed") - return .dictionary(d) - case .outdatedLinkViewCreateReport(let arg): - var d = try Serialization.getFields(TeamLog.OutdatedLinkViewCreateReportTypeSerializer().serialize(arg)) - d[".tag"] = .str("outdated_link_view_create_report") - return .dictionary(d) - case .outdatedLinkViewReportFailed(let arg): - var d = try Serialization.getFields(TeamLog.OutdatedLinkViewReportFailedTypeSerializer().serialize(arg)) - d[".tag"] = .str("outdated_link_view_report_failed") - return .dictionary(d) - case .paperAdminExportStart(let arg): - var d = try Serialization.getFields(TeamLog.PaperAdminExportStartTypeSerializer().serialize(arg)) - d[".tag"] = .str("paper_admin_export_start") - return .dictionary(d) - case .ransomwareAlertCreateReport(let arg): - var d = try Serialization.getFields(TeamLog.RansomwareAlertCreateReportTypeSerializer().serialize(arg)) - d[".tag"] = .str("ransomware_alert_create_report") - return .dictionary(d) - case .ransomwareAlertCreateReportFailed(let arg): - var d = try Serialization.getFields(TeamLog.RansomwareAlertCreateReportFailedTypeSerializer().serialize(arg)) - d[".tag"] = .str("ransomware_alert_create_report_failed") - return .dictionary(d) - case .smartSyncCreateAdminPrivilegeReport(let arg): - var d = try Serialization.getFields(TeamLog.SmartSyncCreateAdminPrivilegeReportTypeSerializer().serialize(arg)) - d[".tag"] = .str("smart_sync_create_admin_privilege_report") - return .dictionary(d) - case .teamActivityCreateReport(let arg): - var d = try Serialization.getFields(TeamLog.TeamActivityCreateReportTypeSerializer().serialize(arg)) - d[".tag"] = .str("team_activity_create_report") - return .dictionary(d) - case .teamActivityCreateReportFail(let arg): - var d = try Serialization.getFields(TeamLog.TeamActivityCreateReportFailTypeSerializer().serialize(arg)) - d[".tag"] = .str("team_activity_create_report_fail") - return .dictionary(d) - case .collectionShare(let arg): - var d = try Serialization.getFields(TeamLog.CollectionShareTypeSerializer().serialize(arg)) - d[".tag"] = .str("collection_share") - return .dictionary(d) - case .fileTransfersFileAdd(let arg): - var d = try Serialization.getFields(TeamLog.FileTransfersFileAddTypeSerializer().serialize(arg)) - d[".tag"] = .str("file_transfers_file_add") - return .dictionary(d) - case .fileTransfersTransferDelete(let arg): - var d = try Serialization.getFields(TeamLog.FileTransfersTransferDeleteTypeSerializer().serialize(arg)) - d[".tag"] = .str("file_transfers_transfer_delete") - return .dictionary(d) - case .fileTransfersTransferDownload(let arg): - var d = try Serialization.getFields(TeamLog.FileTransfersTransferDownloadTypeSerializer().serialize(arg)) - d[".tag"] = .str("file_transfers_transfer_download") - return .dictionary(d) - case .fileTransfersTransferSend(let arg): - var d = try Serialization.getFields(TeamLog.FileTransfersTransferSendTypeSerializer().serialize(arg)) - d[".tag"] = .str("file_transfers_transfer_send") - return .dictionary(d) - case .fileTransfersTransferView(let arg): - var d = try Serialization.getFields(TeamLog.FileTransfersTransferViewTypeSerializer().serialize(arg)) - d[".tag"] = .str("file_transfers_transfer_view") - return .dictionary(d) - case .noteAclInviteOnly(let arg): - var d = try Serialization.getFields(TeamLog.NoteAclInviteOnlyTypeSerializer().serialize(arg)) - d[".tag"] = .str("note_acl_invite_only") - return .dictionary(d) - case .noteAclLink(let arg): - var d = try Serialization.getFields(TeamLog.NoteAclLinkTypeSerializer().serialize(arg)) - d[".tag"] = .str("note_acl_link") - return .dictionary(d) - case .noteAclTeamLink(let arg): - var d = try Serialization.getFields(TeamLog.NoteAclTeamLinkTypeSerializer().serialize(arg)) - d[".tag"] = .str("note_acl_team_link") - return .dictionary(d) - case .noteShared(let arg): - var d = try Serialization.getFields(TeamLog.NoteSharedTypeSerializer().serialize(arg)) - d[".tag"] = .str("note_shared") - return .dictionary(d) - case .noteShareReceive(let arg): - var d = try Serialization.getFields(TeamLog.NoteShareReceiveTypeSerializer().serialize(arg)) - d[".tag"] = .str("note_share_receive") - return .dictionary(d) - case .openNoteShared(let arg): - var d = try Serialization.getFields(TeamLog.OpenNoteSharedTypeSerializer().serialize(arg)) - d[".tag"] = .str("open_note_shared") - return .dictionary(d) - case .replayFileSharedLinkCreated(let arg): - var d = try Serialization.getFields(TeamLog.ReplayFileSharedLinkCreatedTypeSerializer().serialize(arg)) - d[".tag"] = .str("replay_file_shared_link_created") - return .dictionary(d) - case .replayFileSharedLinkModified(let arg): - var d = try Serialization.getFields(TeamLog.ReplayFileSharedLinkModifiedTypeSerializer().serialize(arg)) - d[".tag"] = .str("replay_file_shared_link_modified") - return .dictionary(d) - case .replayProjectTeamAdd(let arg): - var d = try Serialization.getFields(TeamLog.ReplayProjectTeamAddTypeSerializer().serialize(arg)) - d[".tag"] = .str("replay_project_team_add") - return .dictionary(d) - case .replayProjectTeamDelete(let arg): - var d = try Serialization.getFields(TeamLog.ReplayProjectTeamDeleteTypeSerializer().serialize(arg)) - d[".tag"] = .str("replay_project_team_delete") - return .dictionary(d) - case .sfAddGroup(let arg): - var d = try Serialization.getFields(TeamLog.SfAddGroupTypeSerializer().serialize(arg)) - d[".tag"] = .str("sf_add_group") - return .dictionary(d) - case .sfAllowNonMembersToViewSharedLinks(let arg): - var d = try Serialization.getFields(TeamLog.SfAllowNonMembersToViewSharedLinksTypeSerializer().serialize(arg)) - d[".tag"] = .str("sf_allow_non_members_to_view_shared_links") - return .dictionary(d) - case .sfExternalInviteWarn(let arg): - var d = try Serialization.getFields(TeamLog.SfExternalInviteWarnTypeSerializer().serialize(arg)) - d[".tag"] = .str("sf_external_invite_warn") - return .dictionary(d) - case .sfFbInvite(let arg): - var d = try Serialization.getFields(TeamLog.SfFbInviteTypeSerializer().serialize(arg)) - d[".tag"] = .str("sf_fb_invite") - return .dictionary(d) - case .sfFbInviteChangeRole(let arg): - var d = try Serialization.getFields(TeamLog.SfFbInviteChangeRoleTypeSerializer().serialize(arg)) - d[".tag"] = .str("sf_fb_invite_change_role") - return .dictionary(d) - case .sfFbUninvite(let arg): - var d = try Serialization.getFields(TeamLog.SfFbUninviteTypeSerializer().serialize(arg)) - d[".tag"] = .str("sf_fb_uninvite") - return .dictionary(d) - case .sfInviteGroup(let arg): - var d = try Serialization.getFields(TeamLog.SfInviteGroupTypeSerializer().serialize(arg)) - d[".tag"] = .str("sf_invite_group") - return .dictionary(d) - case .sfTeamGrantAccess(let arg): - var d = try Serialization.getFields(TeamLog.SfTeamGrantAccessTypeSerializer().serialize(arg)) - d[".tag"] = .str("sf_team_grant_access") - return .dictionary(d) - case .sfTeamInvite(let arg): - var d = try Serialization.getFields(TeamLog.SfTeamInviteTypeSerializer().serialize(arg)) - d[".tag"] = .str("sf_team_invite") - return .dictionary(d) - case .sfTeamInviteChangeRole(let arg): - var d = try Serialization.getFields(TeamLog.SfTeamInviteChangeRoleTypeSerializer().serialize(arg)) - d[".tag"] = .str("sf_team_invite_change_role") - return .dictionary(d) - case .sfTeamJoin(let arg): - var d = try Serialization.getFields(TeamLog.SfTeamJoinTypeSerializer().serialize(arg)) - d[".tag"] = .str("sf_team_join") - return .dictionary(d) - case .sfTeamJoinFromOobLink(let arg): - var d = try Serialization.getFields(TeamLog.SfTeamJoinFromOobLinkTypeSerializer().serialize(arg)) - d[".tag"] = .str("sf_team_join_from_oob_link") - return .dictionary(d) - case .sfTeamUninvite(let arg): - var d = try Serialization.getFields(TeamLog.SfTeamUninviteTypeSerializer().serialize(arg)) - d[".tag"] = .str("sf_team_uninvite") - return .dictionary(d) - case .sharedContentAddInvitees(let arg): - var d = try Serialization.getFields(TeamLog.SharedContentAddInviteesTypeSerializer().serialize(arg)) - d[".tag"] = .str("shared_content_add_invitees") - return .dictionary(d) - case .sharedContentAddLinkExpiry(let arg): - var d = try Serialization.getFields(TeamLog.SharedContentAddLinkExpiryTypeSerializer().serialize(arg)) - d[".tag"] = .str("shared_content_add_link_expiry") - return .dictionary(d) - case .sharedContentAddLinkPassword(let arg): - var d = try Serialization.getFields(TeamLog.SharedContentAddLinkPasswordTypeSerializer().serialize(arg)) - d[".tag"] = .str("shared_content_add_link_password") - return .dictionary(d) - case .sharedContentAddMember(let arg): - var d = try Serialization.getFields(TeamLog.SharedContentAddMemberTypeSerializer().serialize(arg)) - d[".tag"] = .str("shared_content_add_member") - return .dictionary(d) - case .sharedContentChangeDownloadsPolicy(let arg): - var d = try Serialization.getFields(TeamLog.SharedContentChangeDownloadsPolicyTypeSerializer().serialize(arg)) - d[".tag"] = .str("shared_content_change_downloads_policy") - return .dictionary(d) - case .sharedContentChangeInviteeRole(let arg): - var d = try Serialization.getFields(TeamLog.SharedContentChangeInviteeRoleTypeSerializer().serialize(arg)) - d[".tag"] = .str("shared_content_change_invitee_role") - return .dictionary(d) - case .sharedContentChangeLinkAudience(let arg): - var d = try Serialization.getFields(TeamLog.SharedContentChangeLinkAudienceTypeSerializer().serialize(arg)) - d[".tag"] = .str("shared_content_change_link_audience") - return .dictionary(d) - case .sharedContentChangeLinkExpiry(let arg): - var d = try Serialization.getFields(TeamLog.SharedContentChangeLinkExpiryTypeSerializer().serialize(arg)) - d[".tag"] = .str("shared_content_change_link_expiry") - return .dictionary(d) - case .sharedContentChangeLinkPassword(let arg): - var d = try Serialization.getFields(TeamLog.SharedContentChangeLinkPasswordTypeSerializer().serialize(arg)) - d[".tag"] = .str("shared_content_change_link_password") - return .dictionary(d) - case .sharedContentChangeMemberRole(let arg): - var d = try Serialization.getFields(TeamLog.SharedContentChangeMemberRoleTypeSerializer().serialize(arg)) - d[".tag"] = .str("shared_content_change_member_role") - return .dictionary(d) - case .sharedContentChangeViewerInfoPolicy(let arg): - var d = try Serialization.getFields(TeamLog.SharedContentChangeViewerInfoPolicyTypeSerializer().serialize(arg)) - d[".tag"] = .str("shared_content_change_viewer_info_policy") - return .dictionary(d) - case .sharedContentClaimInvitation(let arg): - var d = try Serialization.getFields(TeamLog.SharedContentClaimInvitationTypeSerializer().serialize(arg)) - d[".tag"] = .str("shared_content_claim_invitation") - return .dictionary(d) - case .sharedContentCopy(let arg): - var d = try Serialization.getFields(TeamLog.SharedContentCopyTypeSerializer().serialize(arg)) - d[".tag"] = .str("shared_content_copy") - return .dictionary(d) - case .sharedContentDownload(let arg): - var d = try Serialization.getFields(TeamLog.SharedContentDownloadTypeSerializer().serialize(arg)) - d[".tag"] = .str("shared_content_download") - return .dictionary(d) - case .sharedContentRelinquishMembership(let arg): - var d = try Serialization.getFields(TeamLog.SharedContentRelinquishMembershipTypeSerializer().serialize(arg)) - d[".tag"] = .str("shared_content_relinquish_membership") - return .dictionary(d) - case .sharedContentRemoveInvitees(let arg): - var d = try Serialization.getFields(TeamLog.SharedContentRemoveInviteesTypeSerializer().serialize(arg)) - d[".tag"] = .str("shared_content_remove_invitees") - return .dictionary(d) - case .sharedContentRemoveLinkExpiry(let arg): - var d = try Serialization.getFields(TeamLog.SharedContentRemoveLinkExpiryTypeSerializer().serialize(arg)) - d[".tag"] = .str("shared_content_remove_link_expiry") - return .dictionary(d) - case .sharedContentRemoveLinkPassword(let arg): - var d = try Serialization.getFields(TeamLog.SharedContentRemoveLinkPasswordTypeSerializer().serialize(arg)) - d[".tag"] = .str("shared_content_remove_link_password") - return .dictionary(d) - case .sharedContentRemoveMember(let arg): - var d = try Serialization.getFields(TeamLog.SharedContentRemoveMemberTypeSerializer().serialize(arg)) - d[".tag"] = .str("shared_content_remove_member") - return .dictionary(d) - case .sharedContentRequestAccess(let arg): - var d = try Serialization.getFields(TeamLog.SharedContentRequestAccessTypeSerializer().serialize(arg)) - d[".tag"] = .str("shared_content_request_access") - return .dictionary(d) - case .sharedContentRestoreInvitees(let arg): - var d = try Serialization.getFields(TeamLog.SharedContentRestoreInviteesTypeSerializer().serialize(arg)) - d[".tag"] = .str("shared_content_restore_invitees") - return .dictionary(d) - case .sharedContentRestoreMember(let arg): - var d = try Serialization.getFields(TeamLog.SharedContentRestoreMemberTypeSerializer().serialize(arg)) - d[".tag"] = .str("shared_content_restore_member") - return .dictionary(d) - case .sharedContentUnshare(let arg): - var d = try Serialization.getFields(TeamLog.SharedContentUnshareTypeSerializer().serialize(arg)) - d[".tag"] = .str("shared_content_unshare") - return .dictionary(d) - case .sharedContentView(let arg): - var d = try Serialization.getFields(TeamLog.SharedContentViewTypeSerializer().serialize(arg)) - d[".tag"] = .str("shared_content_view") - return .dictionary(d) - case .sharedFolderChangeLinkPolicy(let arg): - var d = try Serialization.getFields(TeamLog.SharedFolderChangeLinkPolicyTypeSerializer().serialize(arg)) - d[".tag"] = .str("shared_folder_change_link_policy") - return .dictionary(d) - case .sharedFolderChangeMembersInheritancePolicy(let arg): - var d = try Serialization.getFields(TeamLog.SharedFolderChangeMembersInheritancePolicyTypeSerializer().serialize(arg)) - d[".tag"] = .str("shared_folder_change_members_inheritance_policy") - return .dictionary(d) - case .sharedFolderChangeMembersManagementPolicy(let arg): - var d = try Serialization.getFields(TeamLog.SharedFolderChangeMembersManagementPolicyTypeSerializer().serialize(arg)) - d[".tag"] = .str("shared_folder_change_members_management_policy") - return .dictionary(d) - case .sharedFolderChangeMembersPolicy(let arg): - var d = try Serialization.getFields(TeamLog.SharedFolderChangeMembersPolicyTypeSerializer().serialize(arg)) - d[".tag"] = .str("shared_folder_change_members_policy") - return .dictionary(d) - case .sharedFolderCreate(let arg): - var d = try Serialization.getFields(TeamLog.SharedFolderCreateTypeSerializer().serialize(arg)) - d[".tag"] = .str("shared_folder_create") - return .dictionary(d) - case .sharedFolderDeclineInvitation(let arg): - var d = try Serialization.getFields(TeamLog.SharedFolderDeclineInvitationTypeSerializer().serialize(arg)) - d[".tag"] = .str("shared_folder_decline_invitation") - return .dictionary(d) - case .sharedFolderMount(let arg): - var d = try Serialization.getFields(TeamLog.SharedFolderMountTypeSerializer().serialize(arg)) - d[".tag"] = .str("shared_folder_mount") - return .dictionary(d) - case .sharedFolderNest(let arg): - var d = try Serialization.getFields(TeamLog.SharedFolderNestTypeSerializer().serialize(arg)) - d[".tag"] = .str("shared_folder_nest") - return .dictionary(d) - case .sharedFolderTransferOwnership(let arg): - var d = try Serialization.getFields(TeamLog.SharedFolderTransferOwnershipTypeSerializer().serialize(arg)) - d[".tag"] = .str("shared_folder_transfer_ownership") - return .dictionary(d) - case .sharedFolderUnmount(let arg): - var d = try Serialization.getFields(TeamLog.SharedFolderUnmountTypeSerializer().serialize(arg)) - d[".tag"] = .str("shared_folder_unmount") - return .dictionary(d) - case .sharedLinkAddExpiry(let arg): - var d = try Serialization.getFields(TeamLog.SharedLinkAddExpiryTypeSerializer().serialize(arg)) - d[".tag"] = .str("shared_link_add_expiry") - return .dictionary(d) - case .sharedLinkChangeExpiry(let arg): - var d = try Serialization.getFields(TeamLog.SharedLinkChangeExpiryTypeSerializer().serialize(arg)) - d[".tag"] = .str("shared_link_change_expiry") - return .dictionary(d) - case .sharedLinkChangeVisibility(let arg): - var d = try Serialization.getFields(TeamLog.SharedLinkChangeVisibilityTypeSerializer().serialize(arg)) - d[".tag"] = .str("shared_link_change_visibility") - return .dictionary(d) - case .sharedLinkCopy(let arg): - var d = try Serialization.getFields(TeamLog.SharedLinkCopyTypeSerializer().serialize(arg)) - d[".tag"] = .str("shared_link_copy") - return .dictionary(d) - case .sharedLinkCreate(let arg): - var d = try Serialization.getFields(TeamLog.SharedLinkCreateTypeSerializer().serialize(arg)) - d[".tag"] = .str("shared_link_create") - return .dictionary(d) - case .sharedLinkDisable(let arg): - var d = try Serialization.getFields(TeamLog.SharedLinkDisableTypeSerializer().serialize(arg)) - d[".tag"] = .str("shared_link_disable") - return .dictionary(d) - case .sharedLinkDownload(let arg): - var d = try Serialization.getFields(TeamLog.SharedLinkDownloadTypeSerializer().serialize(arg)) - d[".tag"] = .str("shared_link_download") - return .dictionary(d) - case .sharedLinkRemoveExpiry(let arg): - var d = try Serialization.getFields(TeamLog.SharedLinkRemoveExpiryTypeSerializer().serialize(arg)) - d[".tag"] = .str("shared_link_remove_expiry") - return .dictionary(d) - case .sharedLinkSettingsAddExpiration(let arg): - var d = try Serialization.getFields(TeamLog.SharedLinkSettingsAddExpirationTypeSerializer().serialize(arg)) - d[".tag"] = .str("shared_link_settings_add_expiration") - return .dictionary(d) - case .sharedLinkSettingsAddPassword(let arg): - var d = try Serialization.getFields(TeamLog.SharedLinkSettingsAddPasswordTypeSerializer().serialize(arg)) - d[".tag"] = .str("shared_link_settings_add_password") - return .dictionary(d) - case .sharedLinkSettingsAllowDownloadDisabled(let arg): - var d = try Serialization.getFields(TeamLog.SharedLinkSettingsAllowDownloadDisabledTypeSerializer().serialize(arg)) - d[".tag"] = .str("shared_link_settings_allow_download_disabled") - return .dictionary(d) - case .sharedLinkSettingsAllowDownloadEnabled(let arg): - var d = try Serialization.getFields(TeamLog.SharedLinkSettingsAllowDownloadEnabledTypeSerializer().serialize(arg)) - d[".tag"] = .str("shared_link_settings_allow_download_enabled") - return .dictionary(d) - case .sharedLinkSettingsChangeAudience(let arg): - var d = try Serialization.getFields(TeamLog.SharedLinkSettingsChangeAudienceTypeSerializer().serialize(arg)) - d[".tag"] = .str("shared_link_settings_change_audience") - return .dictionary(d) - case .sharedLinkSettingsChangeExpiration(let arg): - var d = try Serialization.getFields(TeamLog.SharedLinkSettingsChangeExpirationTypeSerializer().serialize(arg)) - d[".tag"] = .str("shared_link_settings_change_expiration") - return .dictionary(d) - case .sharedLinkSettingsChangePassword(let arg): - var d = try Serialization.getFields(TeamLog.SharedLinkSettingsChangePasswordTypeSerializer().serialize(arg)) - d[".tag"] = .str("shared_link_settings_change_password") - return .dictionary(d) - case .sharedLinkSettingsRemoveExpiration(let arg): - var d = try Serialization.getFields(TeamLog.SharedLinkSettingsRemoveExpirationTypeSerializer().serialize(arg)) - d[".tag"] = .str("shared_link_settings_remove_expiration") - return .dictionary(d) - case .sharedLinkSettingsRemovePassword(let arg): - var d = try Serialization.getFields(TeamLog.SharedLinkSettingsRemovePasswordTypeSerializer().serialize(arg)) - d[".tag"] = .str("shared_link_settings_remove_password") - return .dictionary(d) - case .sharedLinkShare(let arg): - var d = try Serialization.getFields(TeamLog.SharedLinkShareTypeSerializer().serialize(arg)) - d[".tag"] = .str("shared_link_share") - return .dictionary(d) - case .sharedLinkView(let arg): - var d = try Serialization.getFields(TeamLog.SharedLinkViewTypeSerializer().serialize(arg)) - d[".tag"] = .str("shared_link_view") - return .dictionary(d) - case .sharedNoteOpened(let arg): - var d = try Serialization.getFields(TeamLog.SharedNoteOpenedTypeSerializer().serialize(arg)) - d[".tag"] = .str("shared_note_opened") - return .dictionary(d) - case .shmodelDisableDownloads(let arg): - var d = try Serialization.getFields(TeamLog.ShmodelDisableDownloadsTypeSerializer().serialize(arg)) - d[".tag"] = .str("shmodel_disable_downloads") - return .dictionary(d) - case .shmodelEnableDownloads(let arg): - var d = try Serialization.getFields(TeamLog.ShmodelEnableDownloadsTypeSerializer().serialize(arg)) - d[".tag"] = .str("shmodel_enable_downloads") - return .dictionary(d) - case .shmodelGroupShare(let arg): - var d = try Serialization.getFields(TeamLog.ShmodelGroupShareTypeSerializer().serialize(arg)) - d[".tag"] = .str("shmodel_group_share") - return .dictionary(d) - case .showcaseAccessGranted(let arg): - var d = try Serialization.getFields(TeamLog.ShowcaseAccessGrantedTypeSerializer().serialize(arg)) - d[".tag"] = .str("showcase_access_granted") - return .dictionary(d) - case .showcaseAddMember(let arg): - var d = try Serialization.getFields(TeamLog.ShowcaseAddMemberTypeSerializer().serialize(arg)) - d[".tag"] = .str("showcase_add_member") - return .dictionary(d) - case .showcaseArchived(let arg): - var d = try Serialization.getFields(TeamLog.ShowcaseArchivedTypeSerializer().serialize(arg)) - d[".tag"] = .str("showcase_archived") - return .dictionary(d) - case .showcaseCreated(let arg): - var d = try Serialization.getFields(TeamLog.ShowcaseCreatedTypeSerializer().serialize(arg)) - d[".tag"] = .str("showcase_created") - return .dictionary(d) - case .showcaseDeleteComment(let arg): - var d = try Serialization.getFields(TeamLog.ShowcaseDeleteCommentTypeSerializer().serialize(arg)) - d[".tag"] = .str("showcase_delete_comment") - return .dictionary(d) - case .showcaseEdited(let arg): - var d = try Serialization.getFields(TeamLog.ShowcaseEditedTypeSerializer().serialize(arg)) - d[".tag"] = .str("showcase_edited") - return .dictionary(d) - case .showcaseEditComment(let arg): - var d = try Serialization.getFields(TeamLog.ShowcaseEditCommentTypeSerializer().serialize(arg)) - d[".tag"] = .str("showcase_edit_comment") - return .dictionary(d) - case .showcaseFileAdded(let arg): - var d = try Serialization.getFields(TeamLog.ShowcaseFileAddedTypeSerializer().serialize(arg)) - d[".tag"] = .str("showcase_file_added") - return .dictionary(d) - case .showcaseFileDownload(let arg): - var d = try Serialization.getFields(TeamLog.ShowcaseFileDownloadTypeSerializer().serialize(arg)) - d[".tag"] = .str("showcase_file_download") - return .dictionary(d) - case .showcaseFileRemoved(let arg): - var d = try Serialization.getFields(TeamLog.ShowcaseFileRemovedTypeSerializer().serialize(arg)) - d[".tag"] = .str("showcase_file_removed") - return .dictionary(d) - case .showcaseFileView(let arg): - var d = try Serialization.getFields(TeamLog.ShowcaseFileViewTypeSerializer().serialize(arg)) - d[".tag"] = .str("showcase_file_view") - return .dictionary(d) - case .showcasePermanentlyDeleted(let arg): - var d = try Serialization.getFields(TeamLog.ShowcasePermanentlyDeletedTypeSerializer().serialize(arg)) - d[".tag"] = .str("showcase_permanently_deleted") - return .dictionary(d) - case .showcasePostComment(let arg): - var d = try Serialization.getFields(TeamLog.ShowcasePostCommentTypeSerializer().serialize(arg)) - d[".tag"] = .str("showcase_post_comment") - return .dictionary(d) - case .showcaseRemoveMember(let arg): - var d = try Serialization.getFields(TeamLog.ShowcaseRemoveMemberTypeSerializer().serialize(arg)) - d[".tag"] = .str("showcase_remove_member") - return .dictionary(d) - case .showcaseRenamed(let arg): - var d = try Serialization.getFields(TeamLog.ShowcaseRenamedTypeSerializer().serialize(arg)) - d[".tag"] = .str("showcase_renamed") - return .dictionary(d) - case .showcaseRequestAccess(let arg): - var d = try Serialization.getFields(TeamLog.ShowcaseRequestAccessTypeSerializer().serialize(arg)) - d[".tag"] = .str("showcase_request_access") - return .dictionary(d) - case .showcaseResolveComment(let arg): - var d = try Serialization.getFields(TeamLog.ShowcaseResolveCommentTypeSerializer().serialize(arg)) - d[".tag"] = .str("showcase_resolve_comment") - return .dictionary(d) - case .showcaseRestored(let arg): - var d = try Serialization.getFields(TeamLog.ShowcaseRestoredTypeSerializer().serialize(arg)) - d[".tag"] = .str("showcase_restored") - return .dictionary(d) - case .showcaseTrashed(let arg): - var d = try Serialization.getFields(TeamLog.ShowcaseTrashedTypeSerializer().serialize(arg)) - d[".tag"] = .str("showcase_trashed") - return .dictionary(d) - case .showcaseTrashedDeprecated(let arg): - var d = try Serialization.getFields(TeamLog.ShowcaseTrashedDeprecatedTypeSerializer().serialize(arg)) - d[".tag"] = .str("showcase_trashed_deprecated") - return .dictionary(d) - case .showcaseUnresolveComment(let arg): - var d = try Serialization.getFields(TeamLog.ShowcaseUnresolveCommentTypeSerializer().serialize(arg)) - d[".tag"] = .str("showcase_unresolve_comment") - return .dictionary(d) - case .showcaseUntrashed(let arg): - var d = try Serialization.getFields(TeamLog.ShowcaseUntrashedTypeSerializer().serialize(arg)) - d[".tag"] = .str("showcase_untrashed") - return .dictionary(d) - case .showcaseUntrashedDeprecated(let arg): - var d = try Serialization.getFields(TeamLog.ShowcaseUntrashedDeprecatedTypeSerializer().serialize(arg)) - d[".tag"] = .str("showcase_untrashed_deprecated") - return .dictionary(d) - case .showcaseView(let arg): - var d = try Serialization.getFields(TeamLog.ShowcaseViewTypeSerializer().serialize(arg)) - d[".tag"] = .str("showcase_view") - return .dictionary(d) - case .ssoAddCert(let arg): - var d = try Serialization.getFields(TeamLog.SsoAddCertTypeSerializer().serialize(arg)) - d[".tag"] = .str("sso_add_cert") - return .dictionary(d) - case .ssoAddLoginUrl(let arg): - var d = try Serialization.getFields(TeamLog.SsoAddLoginUrlTypeSerializer().serialize(arg)) - d[".tag"] = .str("sso_add_login_url") - return .dictionary(d) - case .ssoAddLogoutUrl(let arg): - var d = try Serialization.getFields(TeamLog.SsoAddLogoutUrlTypeSerializer().serialize(arg)) - d[".tag"] = .str("sso_add_logout_url") - return .dictionary(d) - case .ssoChangeCert(let arg): - var d = try Serialization.getFields(TeamLog.SsoChangeCertTypeSerializer().serialize(arg)) - d[".tag"] = .str("sso_change_cert") - return .dictionary(d) - case .ssoChangeLoginUrl(let arg): - var d = try Serialization.getFields(TeamLog.SsoChangeLoginUrlTypeSerializer().serialize(arg)) - d[".tag"] = .str("sso_change_login_url") - return .dictionary(d) - case .ssoChangeLogoutUrl(let arg): - var d = try Serialization.getFields(TeamLog.SsoChangeLogoutUrlTypeSerializer().serialize(arg)) - d[".tag"] = .str("sso_change_logout_url") - return .dictionary(d) - case .ssoChangeSamlIdentityMode(let arg): - var d = try Serialization.getFields(TeamLog.SsoChangeSamlIdentityModeTypeSerializer().serialize(arg)) - d[".tag"] = .str("sso_change_saml_identity_mode") - return .dictionary(d) - case .ssoRemoveCert(let arg): - var d = try Serialization.getFields(TeamLog.SsoRemoveCertTypeSerializer().serialize(arg)) - d[".tag"] = .str("sso_remove_cert") - return .dictionary(d) - case .ssoRemoveLoginUrl(let arg): - var d = try Serialization.getFields(TeamLog.SsoRemoveLoginUrlTypeSerializer().serialize(arg)) - d[".tag"] = .str("sso_remove_login_url") - return .dictionary(d) - case .ssoRemoveLogoutUrl(let arg): - var d = try Serialization.getFields(TeamLog.SsoRemoveLogoutUrlTypeSerializer().serialize(arg)) - d[".tag"] = .str("sso_remove_logout_url") - return .dictionary(d) - case .teamFolderChangeStatus(let arg): - var d = try Serialization.getFields(TeamLog.TeamFolderChangeStatusTypeSerializer().serialize(arg)) - d[".tag"] = .str("team_folder_change_status") - return .dictionary(d) - case .teamFolderCreate(let arg): - var d = try Serialization.getFields(TeamLog.TeamFolderCreateTypeSerializer().serialize(arg)) - d[".tag"] = .str("team_folder_create") - return .dictionary(d) - case .teamFolderDowngrade(let arg): - var d = try Serialization.getFields(TeamLog.TeamFolderDowngradeTypeSerializer().serialize(arg)) - d[".tag"] = .str("team_folder_downgrade") - return .dictionary(d) - case .teamFolderPermanentlyDelete(let arg): - var d = try Serialization.getFields(TeamLog.TeamFolderPermanentlyDeleteTypeSerializer().serialize(arg)) - d[".tag"] = .str("team_folder_permanently_delete") - return .dictionary(d) - case .teamFolderRename(let arg): - var d = try Serialization.getFields(TeamLog.TeamFolderRenameTypeSerializer().serialize(arg)) - d[".tag"] = .str("team_folder_rename") - return .dictionary(d) - case .teamSelectiveSyncSettingsChanged(let arg): - var d = try Serialization.getFields(TeamLog.TeamSelectiveSyncSettingsChangedTypeSerializer().serialize(arg)) - d[".tag"] = .str("team_selective_sync_settings_changed") - return .dictionary(d) - case .accountCaptureChangePolicy(let arg): - var d = try Serialization.getFields(TeamLog.AccountCaptureChangePolicyTypeSerializer().serialize(arg)) - d[".tag"] = .str("account_capture_change_policy") - return .dictionary(d) - case .adminEmailRemindersChanged(let arg): - var d = try Serialization.getFields(TeamLog.AdminEmailRemindersChangedTypeSerializer().serialize(arg)) - d[".tag"] = .str("admin_email_reminders_changed") - return .dictionary(d) - case .allowDownloadDisabled(let arg): - var d = try Serialization.getFields(TeamLog.AllowDownloadDisabledTypeSerializer().serialize(arg)) - d[".tag"] = .str("allow_download_disabled") - return .dictionary(d) - case .allowDownloadEnabled(let arg): - var d = try Serialization.getFields(TeamLog.AllowDownloadEnabledTypeSerializer().serialize(arg)) - d[".tag"] = .str("allow_download_enabled") - return .dictionary(d) - case .appPermissionsChanged(let arg): - var d = try Serialization.getFields(TeamLog.AppPermissionsChangedTypeSerializer().serialize(arg)) - d[".tag"] = .str("app_permissions_changed") - return .dictionary(d) - case .cameraUploadsPolicyChanged(let arg): - var d = try Serialization.getFields(TeamLog.CameraUploadsPolicyChangedTypeSerializer().serialize(arg)) - d[".tag"] = .str("camera_uploads_policy_changed") - return .dictionary(d) - case .captureTranscriptPolicyChanged(let arg): - var d = try Serialization.getFields(TeamLog.CaptureTranscriptPolicyChangedTypeSerializer().serialize(arg)) - d[".tag"] = .str("capture_transcript_policy_changed") - return .dictionary(d) - case .classificationChangePolicy(let arg): - var d = try Serialization.getFields(TeamLog.ClassificationChangePolicyTypeSerializer().serialize(arg)) - d[".tag"] = .str("classification_change_policy") - return .dictionary(d) - case .computerBackupPolicyChanged(let arg): - var d = try Serialization.getFields(TeamLog.ComputerBackupPolicyChangedTypeSerializer().serialize(arg)) - d[".tag"] = .str("computer_backup_policy_changed") - return .dictionary(d) - case .contentAdministrationPolicyChanged(let arg): - var d = try Serialization.getFields(TeamLog.ContentAdministrationPolicyChangedTypeSerializer().serialize(arg)) - d[".tag"] = .str("content_administration_policy_changed") - return .dictionary(d) - case .dataPlacementRestrictionChangePolicy(let arg): - var d = try Serialization.getFields(TeamLog.DataPlacementRestrictionChangePolicyTypeSerializer().serialize(arg)) - d[".tag"] = .str("data_placement_restriction_change_policy") - return .dictionary(d) - case .dataPlacementRestrictionSatisfyPolicy(let arg): - var d = try Serialization.getFields(TeamLog.DataPlacementRestrictionSatisfyPolicyTypeSerializer().serialize(arg)) - d[".tag"] = .str("data_placement_restriction_satisfy_policy") - return .dictionary(d) - case .deviceApprovalsAddException(let arg): - var d = try Serialization.getFields(TeamLog.DeviceApprovalsAddExceptionTypeSerializer().serialize(arg)) - d[".tag"] = .str("device_approvals_add_exception") - return .dictionary(d) - case .deviceApprovalsChangeDesktopPolicy(let arg): - var d = try Serialization.getFields(TeamLog.DeviceApprovalsChangeDesktopPolicyTypeSerializer().serialize(arg)) - d[".tag"] = .str("device_approvals_change_desktop_policy") - return .dictionary(d) - case .deviceApprovalsChangeMobilePolicy(let arg): - var d = try Serialization.getFields(TeamLog.DeviceApprovalsChangeMobilePolicyTypeSerializer().serialize(arg)) - d[".tag"] = .str("device_approvals_change_mobile_policy") - return .dictionary(d) - case .deviceApprovalsChangeOverageAction(let arg): - var d = try Serialization.getFields(TeamLog.DeviceApprovalsChangeOverageActionTypeSerializer().serialize(arg)) - d[".tag"] = .str("device_approvals_change_overage_action") - return .dictionary(d) - case .deviceApprovalsChangeUnlinkAction(let arg): - var d = try Serialization.getFields(TeamLog.DeviceApprovalsChangeUnlinkActionTypeSerializer().serialize(arg)) - d[".tag"] = .str("device_approvals_change_unlink_action") - return .dictionary(d) - case .deviceApprovalsRemoveException(let arg): - var d = try Serialization.getFields(TeamLog.DeviceApprovalsRemoveExceptionTypeSerializer().serialize(arg)) - d[".tag"] = .str("device_approvals_remove_exception") - return .dictionary(d) - case .directoryRestrictionsAddMembers(let arg): - var d = try Serialization.getFields(TeamLog.DirectoryRestrictionsAddMembersTypeSerializer().serialize(arg)) - d[".tag"] = .str("directory_restrictions_add_members") - return .dictionary(d) - case .directoryRestrictionsRemoveMembers(let arg): - var d = try Serialization.getFields(TeamLog.DirectoryRestrictionsRemoveMembersTypeSerializer().serialize(arg)) - d[".tag"] = .str("directory_restrictions_remove_members") - return .dictionary(d) - case .dropboxPasswordsPolicyChanged(let arg): - var d = try Serialization.getFields(TeamLog.DropboxPasswordsPolicyChangedTypeSerializer().serialize(arg)) - d[".tag"] = .str("dropbox_passwords_policy_changed") - return .dictionary(d) - case .emailIngestPolicyChanged(let arg): - var d = try Serialization.getFields(TeamLog.EmailIngestPolicyChangedTypeSerializer().serialize(arg)) - d[".tag"] = .str("email_ingest_policy_changed") - return .dictionary(d) - case .emmAddException(let arg): - var d = try Serialization.getFields(TeamLog.EmmAddExceptionTypeSerializer().serialize(arg)) - d[".tag"] = .str("emm_add_exception") - return .dictionary(d) - case .emmChangePolicy(let arg): - var d = try Serialization.getFields(TeamLog.EmmChangePolicyTypeSerializer().serialize(arg)) - d[".tag"] = .str("emm_change_policy") - return .dictionary(d) - case .emmRemoveException(let arg): - var d = try Serialization.getFields(TeamLog.EmmRemoveExceptionTypeSerializer().serialize(arg)) - d[".tag"] = .str("emm_remove_exception") - return .dictionary(d) - case .extendedVersionHistoryChangePolicy(let arg): - var d = try Serialization.getFields(TeamLog.ExtendedVersionHistoryChangePolicyTypeSerializer().serialize(arg)) - d[".tag"] = .str("extended_version_history_change_policy") - return .dictionary(d) - case .externalDriveBackupPolicyChanged(let arg): - var d = try Serialization.getFields(TeamLog.ExternalDriveBackupPolicyChangedTypeSerializer().serialize(arg)) - d[".tag"] = .str("external_drive_backup_policy_changed") - return .dictionary(d) - case .fileCommentsChangePolicy(let arg): - var d = try Serialization.getFields(TeamLog.FileCommentsChangePolicyTypeSerializer().serialize(arg)) - d[".tag"] = .str("file_comments_change_policy") - return .dictionary(d) - case .fileLockingPolicyChanged(let arg): - var d = try Serialization.getFields(TeamLog.FileLockingPolicyChangedTypeSerializer().serialize(arg)) - d[".tag"] = .str("file_locking_policy_changed") - return .dictionary(d) - case .fileProviderMigrationPolicyChanged(let arg): - var d = try Serialization.getFields(TeamLog.FileProviderMigrationPolicyChangedTypeSerializer().serialize(arg)) - d[".tag"] = .str("file_provider_migration_policy_changed") - return .dictionary(d) - case .fileRequestsChangePolicy(let arg): - var d = try Serialization.getFields(TeamLog.FileRequestsChangePolicyTypeSerializer().serialize(arg)) - d[".tag"] = .str("file_requests_change_policy") - return .dictionary(d) - case .fileRequestsEmailsEnabled(let arg): - var d = try Serialization.getFields(TeamLog.FileRequestsEmailsEnabledTypeSerializer().serialize(arg)) - d[".tag"] = .str("file_requests_emails_enabled") - return .dictionary(d) - case .fileRequestsEmailsRestrictedToTeamOnly(let arg): - var d = try Serialization.getFields(TeamLog.FileRequestsEmailsRestrictedToTeamOnlyTypeSerializer().serialize(arg)) - d[".tag"] = .str("file_requests_emails_restricted_to_team_only") - return .dictionary(d) - case .fileTransfersPolicyChanged(let arg): - var d = try Serialization.getFields(TeamLog.FileTransfersPolicyChangedTypeSerializer().serialize(arg)) - d[".tag"] = .str("file_transfers_policy_changed") - return .dictionary(d) - case .folderLinkRestrictionPolicyChanged(let arg): - var d = try Serialization.getFields(TeamLog.FolderLinkRestrictionPolicyChangedTypeSerializer().serialize(arg)) - d[".tag"] = .str("folder_link_restriction_policy_changed") - return .dictionary(d) - case .googleSsoChangePolicy(let arg): - var d = try Serialization.getFields(TeamLog.GoogleSsoChangePolicyTypeSerializer().serialize(arg)) - d[".tag"] = .str("google_sso_change_policy") - return .dictionary(d) - case .groupUserManagementChangePolicy(let arg): - var d = try Serialization.getFields(TeamLog.GroupUserManagementChangePolicyTypeSerializer().serialize(arg)) - d[".tag"] = .str("group_user_management_change_policy") - return .dictionary(d) - case .integrationPolicyChanged(let arg): - var d = try Serialization.getFields(TeamLog.IntegrationPolicyChangedTypeSerializer().serialize(arg)) - d[".tag"] = .str("integration_policy_changed") - return .dictionary(d) - case .inviteAcceptanceEmailPolicyChanged(let arg): - var d = try Serialization.getFields(TeamLog.InviteAcceptanceEmailPolicyChangedTypeSerializer().serialize(arg)) - d[".tag"] = .str("invite_acceptance_email_policy_changed") - return .dictionary(d) - case .memberRequestsChangePolicy(let arg): - var d = try Serialization.getFields(TeamLog.MemberRequestsChangePolicyTypeSerializer().serialize(arg)) - d[".tag"] = .str("member_requests_change_policy") - return .dictionary(d) - case .memberSendInvitePolicyChanged(let arg): - var d = try Serialization.getFields(TeamLog.MemberSendInvitePolicyChangedTypeSerializer().serialize(arg)) - d[".tag"] = .str("member_send_invite_policy_changed") - return .dictionary(d) - case .memberSpaceLimitsAddException(let arg): - var d = try Serialization.getFields(TeamLog.MemberSpaceLimitsAddExceptionTypeSerializer().serialize(arg)) - d[".tag"] = .str("member_space_limits_add_exception") - return .dictionary(d) - case .memberSpaceLimitsChangeCapsTypePolicy(let arg): - var d = try Serialization.getFields(TeamLog.MemberSpaceLimitsChangeCapsTypePolicyTypeSerializer().serialize(arg)) - d[".tag"] = .str("member_space_limits_change_caps_type_policy") - return .dictionary(d) - case .memberSpaceLimitsChangePolicy(let arg): - var d = try Serialization.getFields(TeamLog.MemberSpaceLimitsChangePolicyTypeSerializer().serialize(arg)) - d[".tag"] = .str("member_space_limits_change_policy") - return .dictionary(d) - case .memberSpaceLimitsRemoveException(let arg): - var d = try Serialization.getFields(TeamLog.MemberSpaceLimitsRemoveExceptionTypeSerializer().serialize(arg)) - d[".tag"] = .str("member_space_limits_remove_exception") - return .dictionary(d) - case .memberSuggestionsChangePolicy(let arg): - var d = try Serialization.getFields(TeamLog.MemberSuggestionsChangePolicyTypeSerializer().serialize(arg)) - d[".tag"] = .str("member_suggestions_change_policy") - return .dictionary(d) - case .microsoftOfficeAddinChangePolicy(let arg): - var d = try Serialization.getFields(TeamLog.MicrosoftOfficeAddinChangePolicyTypeSerializer().serialize(arg)) - d[".tag"] = .str("microsoft_office_addin_change_policy") - return .dictionary(d) - case .networkControlChangePolicy(let arg): - var d = try Serialization.getFields(TeamLog.NetworkControlChangePolicyTypeSerializer().serialize(arg)) - d[".tag"] = .str("network_control_change_policy") - return .dictionary(d) - case .paperChangeDeploymentPolicy(let arg): - var d = try Serialization.getFields(TeamLog.PaperChangeDeploymentPolicyTypeSerializer().serialize(arg)) - d[".tag"] = .str("paper_change_deployment_policy") - return .dictionary(d) - case .paperChangeMemberLinkPolicy(let arg): - var d = try Serialization.getFields(TeamLog.PaperChangeMemberLinkPolicyTypeSerializer().serialize(arg)) - d[".tag"] = .str("paper_change_member_link_policy") - return .dictionary(d) - case .paperChangeMemberPolicy(let arg): - var d = try Serialization.getFields(TeamLog.PaperChangeMemberPolicyTypeSerializer().serialize(arg)) - d[".tag"] = .str("paper_change_member_policy") - return .dictionary(d) - case .paperChangePolicy(let arg): - var d = try Serialization.getFields(TeamLog.PaperChangePolicyTypeSerializer().serialize(arg)) - d[".tag"] = .str("paper_change_policy") - return .dictionary(d) - case .paperDefaultFolderPolicyChanged(let arg): - var d = try Serialization.getFields(TeamLog.PaperDefaultFolderPolicyChangedTypeSerializer().serialize(arg)) - d[".tag"] = .str("paper_default_folder_policy_changed") - return .dictionary(d) - case .paperDesktopPolicyChanged(let arg): - var d = try Serialization.getFields(TeamLog.PaperDesktopPolicyChangedTypeSerializer().serialize(arg)) - d[".tag"] = .str("paper_desktop_policy_changed") - return .dictionary(d) - case .paperEnabledUsersGroupAddition(let arg): - var d = try Serialization.getFields(TeamLog.PaperEnabledUsersGroupAdditionTypeSerializer().serialize(arg)) - d[".tag"] = .str("paper_enabled_users_group_addition") - return .dictionary(d) - case .paperEnabledUsersGroupRemoval(let arg): - var d = try Serialization.getFields(TeamLog.PaperEnabledUsersGroupRemovalTypeSerializer().serialize(arg)) - d[".tag"] = .str("paper_enabled_users_group_removal") - return .dictionary(d) - case .passwordStrengthRequirementsChangePolicy(let arg): - var d = try Serialization.getFields(TeamLog.PasswordStrengthRequirementsChangePolicyTypeSerializer().serialize(arg)) - d[".tag"] = .str("password_strength_requirements_change_policy") - return .dictionary(d) - case .permanentDeleteChangePolicy(let arg): - var d = try Serialization.getFields(TeamLog.PermanentDeleteChangePolicyTypeSerializer().serialize(arg)) - d[".tag"] = .str("permanent_delete_change_policy") - return .dictionary(d) - case .resellerSupportChangePolicy(let arg): - var d = try Serialization.getFields(TeamLog.ResellerSupportChangePolicyTypeSerializer().serialize(arg)) - d[".tag"] = .str("reseller_support_change_policy") - return .dictionary(d) - case .rewindPolicyChanged(let arg): - var d = try Serialization.getFields(TeamLog.RewindPolicyChangedTypeSerializer().serialize(arg)) - d[".tag"] = .str("rewind_policy_changed") - return .dictionary(d) - case .sendForSignaturePolicyChanged(let arg): - var d = try Serialization.getFields(TeamLog.SendForSignaturePolicyChangedTypeSerializer().serialize(arg)) - d[".tag"] = .str("send_for_signature_policy_changed") - return .dictionary(d) - case .sharingChangeFolderJoinPolicy(let arg): - var d = try Serialization.getFields(TeamLog.SharingChangeFolderJoinPolicyTypeSerializer().serialize(arg)) - d[".tag"] = .str("sharing_change_folder_join_policy") - return .dictionary(d) - case .sharingChangeLinkAllowChangeExpirationPolicy(let arg): - var d = try Serialization.getFields(TeamLog.SharingChangeLinkAllowChangeExpirationPolicyTypeSerializer().serialize(arg)) - d[".tag"] = .str("sharing_change_link_allow_change_expiration_policy") - return .dictionary(d) - case .sharingChangeLinkDefaultExpirationPolicy(let arg): - var d = try Serialization.getFields(TeamLog.SharingChangeLinkDefaultExpirationPolicyTypeSerializer().serialize(arg)) - d[".tag"] = .str("sharing_change_link_default_expiration_policy") - return .dictionary(d) - case .sharingChangeLinkEnforcePasswordPolicy(let arg): - var d = try Serialization.getFields(TeamLog.SharingChangeLinkEnforcePasswordPolicyTypeSerializer().serialize(arg)) - d[".tag"] = .str("sharing_change_link_enforce_password_policy") - return .dictionary(d) - case .sharingChangeLinkPolicy(let arg): - var d = try Serialization.getFields(TeamLog.SharingChangeLinkPolicyTypeSerializer().serialize(arg)) - d[".tag"] = .str("sharing_change_link_policy") - return .dictionary(d) - case .sharingChangeMemberPolicy(let arg): - var d = try Serialization.getFields(TeamLog.SharingChangeMemberPolicyTypeSerializer().serialize(arg)) - d[".tag"] = .str("sharing_change_member_policy") - return .dictionary(d) - case .showcaseChangeDownloadPolicy(let arg): - var d = try Serialization.getFields(TeamLog.ShowcaseChangeDownloadPolicyTypeSerializer().serialize(arg)) - d[".tag"] = .str("showcase_change_download_policy") - return .dictionary(d) - case .showcaseChangeEnabledPolicy(let arg): - var d = try Serialization.getFields(TeamLog.ShowcaseChangeEnabledPolicyTypeSerializer().serialize(arg)) - d[".tag"] = .str("showcase_change_enabled_policy") - return .dictionary(d) - case .showcaseChangeExternalSharingPolicy(let arg): - var d = try Serialization.getFields(TeamLog.ShowcaseChangeExternalSharingPolicyTypeSerializer().serialize(arg)) - d[".tag"] = .str("showcase_change_external_sharing_policy") - return .dictionary(d) - case .smarterSmartSyncPolicyChanged(let arg): - var d = try Serialization.getFields(TeamLog.SmarterSmartSyncPolicyChangedTypeSerializer().serialize(arg)) - d[".tag"] = .str("smarter_smart_sync_policy_changed") - return .dictionary(d) - case .smartSyncChangePolicy(let arg): - var d = try Serialization.getFields(TeamLog.SmartSyncChangePolicyTypeSerializer().serialize(arg)) - d[".tag"] = .str("smart_sync_change_policy") - return .dictionary(d) - case .smartSyncNotOptOut(let arg): - var d = try Serialization.getFields(TeamLog.SmartSyncNotOptOutTypeSerializer().serialize(arg)) - d[".tag"] = .str("smart_sync_not_opt_out") - return .dictionary(d) - case .smartSyncOptOut(let arg): - var d = try Serialization.getFields(TeamLog.SmartSyncOptOutTypeSerializer().serialize(arg)) - d[".tag"] = .str("smart_sync_opt_out") - return .dictionary(d) - case .ssoChangePolicy(let arg): - var d = try Serialization.getFields(TeamLog.SsoChangePolicyTypeSerializer().serialize(arg)) - d[".tag"] = .str("sso_change_policy") - return .dictionary(d) - case .teamBrandingPolicyChanged(let arg): - var d = try Serialization.getFields(TeamLog.TeamBrandingPolicyChangedTypeSerializer().serialize(arg)) - d[".tag"] = .str("team_branding_policy_changed") - return .dictionary(d) - case .teamExtensionsPolicyChanged(let arg): - var d = try Serialization.getFields(TeamLog.TeamExtensionsPolicyChangedTypeSerializer().serialize(arg)) - d[".tag"] = .str("team_extensions_policy_changed") - return .dictionary(d) - case .teamSelectiveSyncPolicyChanged(let arg): - var d = try Serialization.getFields(TeamLog.TeamSelectiveSyncPolicyChangedTypeSerializer().serialize(arg)) - d[".tag"] = .str("team_selective_sync_policy_changed") - return .dictionary(d) - case .teamSharingWhitelistSubjectsChanged(let arg): - var d = try Serialization.getFields(TeamLog.TeamSharingWhitelistSubjectsChangedTypeSerializer().serialize(arg)) - d[".tag"] = .str("team_sharing_whitelist_subjects_changed") - return .dictionary(d) - case .tfaAddException(let arg): - var d = try Serialization.getFields(TeamLog.TfaAddExceptionTypeSerializer().serialize(arg)) - d[".tag"] = .str("tfa_add_exception") - return .dictionary(d) - case .tfaChangePolicy(let arg): - var d = try Serialization.getFields(TeamLog.TfaChangePolicyTypeSerializer().serialize(arg)) - d[".tag"] = .str("tfa_change_policy") - return .dictionary(d) - case .tfaRemoveException(let arg): - var d = try Serialization.getFields(TeamLog.TfaRemoveExceptionTypeSerializer().serialize(arg)) - d[".tag"] = .str("tfa_remove_exception") - return .dictionary(d) - case .twoAccountChangePolicy(let arg): - var d = try Serialization.getFields(TeamLog.TwoAccountChangePolicyTypeSerializer().serialize(arg)) - d[".tag"] = .str("two_account_change_policy") - return .dictionary(d) - case .viewerInfoPolicyChanged(let arg): - var d = try Serialization.getFields(TeamLog.ViewerInfoPolicyChangedTypeSerializer().serialize(arg)) - d[".tag"] = .str("viewer_info_policy_changed") - return .dictionary(d) - case .watermarkingPolicyChanged(let arg): - var d = try Serialization.getFields(TeamLog.WatermarkingPolicyChangedTypeSerializer().serialize(arg)) - d[".tag"] = .str("watermarking_policy_changed") - return .dictionary(d) - case .webSessionsChangeActiveSessionLimit(let arg): - var d = try Serialization.getFields(TeamLog.WebSessionsChangeActiveSessionLimitTypeSerializer().serialize(arg)) - d[".tag"] = .str("web_sessions_change_active_session_limit") - return .dictionary(d) - case .webSessionsChangeFixedLengthPolicy(let arg): - var d = try Serialization.getFields(TeamLog.WebSessionsChangeFixedLengthPolicyTypeSerializer().serialize(arg)) - d[".tag"] = .str("web_sessions_change_fixed_length_policy") - return .dictionary(d) - case .webSessionsChangeIdleLengthPolicy(let arg): - var d = try Serialization.getFields(TeamLog.WebSessionsChangeIdleLengthPolicyTypeSerializer().serialize(arg)) - d[".tag"] = .str("web_sessions_change_idle_length_policy") - return .dictionary(d) - case .dataResidencyMigrationRequestSuccessful(let arg): - var d = try Serialization.getFields(TeamLog.DataResidencyMigrationRequestSuccessfulTypeSerializer().serialize(arg)) - d[".tag"] = .str("data_residency_migration_request_successful") - return .dictionary(d) - case .dataResidencyMigrationRequestUnsuccessful(let arg): - var d = try Serialization.getFields(TeamLog.DataResidencyMigrationRequestUnsuccessfulTypeSerializer().serialize(arg)) - d[".tag"] = .str("data_residency_migration_request_unsuccessful") - return .dictionary(d) - case .teamMergeFrom(let arg): - var d = try Serialization.getFields(TeamLog.TeamMergeFromTypeSerializer().serialize(arg)) - d[".tag"] = .str("team_merge_from") - return .dictionary(d) - case .teamMergeTo(let arg): - var d = try Serialization.getFields(TeamLog.TeamMergeToTypeSerializer().serialize(arg)) - d[".tag"] = .str("team_merge_to") - return .dictionary(d) - case .teamProfileAddBackground(let arg): - var d = try Serialization.getFields(TeamLog.TeamProfileAddBackgroundTypeSerializer().serialize(arg)) - d[".tag"] = .str("team_profile_add_background") - return .dictionary(d) - case .teamProfileAddLogo(let arg): - var d = try Serialization.getFields(TeamLog.TeamProfileAddLogoTypeSerializer().serialize(arg)) - d[".tag"] = .str("team_profile_add_logo") - return .dictionary(d) - case .teamProfileChangeBackground(let arg): - var d = try Serialization.getFields(TeamLog.TeamProfileChangeBackgroundTypeSerializer().serialize(arg)) - d[".tag"] = .str("team_profile_change_background") - return .dictionary(d) - case .teamProfileChangeDefaultLanguage(let arg): - var d = try Serialization.getFields(TeamLog.TeamProfileChangeDefaultLanguageTypeSerializer().serialize(arg)) - d[".tag"] = .str("team_profile_change_default_language") - return .dictionary(d) - case .teamProfileChangeLogo(let arg): - var d = try Serialization.getFields(TeamLog.TeamProfileChangeLogoTypeSerializer().serialize(arg)) - d[".tag"] = .str("team_profile_change_logo") - return .dictionary(d) - case .teamProfileChangeName(let arg): - var d = try Serialization.getFields(TeamLog.TeamProfileChangeNameTypeSerializer().serialize(arg)) - d[".tag"] = .str("team_profile_change_name") - return .dictionary(d) - case .teamProfileRemoveBackground(let arg): - var d = try Serialization.getFields(TeamLog.TeamProfileRemoveBackgroundTypeSerializer().serialize(arg)) - d[".tag"] = .str("team_profile_remove_background") - return .dictionary(d) - case .teamProfileRemoveLogo(let arg): - var d = try Serialization.getFields(TeamLog.TeamProfileRemoveLogoTypeSerializer().serialize(arg)) - d[".tag"] = .str("team_profile_remove_logo") - return .dictionary(d) - case .tfaAddBackupPhone(let arg): - var d = try Serialization.getFields(TeamLog.TfaAddBackupPhoneTypeSerializer().serialize(arg)) - d[".tag"] = .str("tfa_add_backup_phone") - return .dictionary(d) - case .tfaAddSecurityKey(let arg): - var d = try Serialization.getFields(TeamLog.TfaAddSecurityKeyTypeSerializer().serialize(arg)) - d[".tag"] = .str("tfa_add_security_key") - return .dictionary(d) - case .tfaChangeBackupPhone(let arg): - var d = try Serialization.getFields(TeamLog.TfaChangeBackupPhoneTypeSerializer().serialize(arg)) - d[".tag"] = .str("tfa_change_backup_phone") - return .dictionary(d) - case .tfaChangeStatus(let arg): - var d = try Serialization.getFields(TeamLog.TfaChangeStatusTypeSerializer().serialize(arg)) - d[".tag"] = .str("tfa_change_status") - return .dictionary(d) - case .tfaRemoveBackupPhone(let arg): - var d = try Serialization.getFields(TeamLog.TfaRemoveBackupPhoneTypeSerializer().serialize(arg)) - d[".tag"] = .str("tfa_remove_backup_phone") - return .dictionary(d) - case .tfaRemoveSecurityKey(let arg): - var d = try Serialization.getFields(TeamLog.TfaRemoveSecurityKeyTypeSerializer().serialize(arg)) - d[".tag"] = .str("tfa_remove_security_key") - return .dictionary(d) - case .tfaReset(let arg): - var d = try Serialization.getFields(TeamLog.TfaResetTypeSerializer().serialize(arg)) - d[".tag"] = .str("tfa_reset") - return .dictionary(d) - case .changedEnterpriseAdminRole(let arg): - var d = try Serialization.getFields(TeamLog.ChangedEnterpriseAdminRoleTypeSerializer().serialize(arg)) - d[".tag"] = .str("changed_enterprise_admin_role") - return .dictionary(d) - case .changedEnterpriseConnectedTeamStatus(let arg): - var d = try Serialization.getFields(TeamLog.ChangedEnterpriseConnectedTeamStatusTypeSerializer().serialize(arg)) - d[".tag"] = .str("changed_enterprise_connected_team_status") - return .dictionary(d) - case .endedEnterpriseAdminSession(let arg): - var d = try Serialization.getFields(TeamLog.EndedEnterpriseAdminSessionTypeSerializer().serialize(arg)) - d[".tag"] = .str("ended_enterprise_admin_session") - return .dictionary(d) - case .endedEnterpriseAdminSessionDeprecated(let arg): - var d = try Serialization.getFields(TeamLog.EndedEnterpriseAdminSessionDeprecatedTypeSerializer().serialize(arg)) - d[".tag"] = .str("ended_enterprise_admin_session_deprecated") - return .dictionary(d) - case .enterpriseSettingsLocking(let arg): - var d = try Serialization.getFields(TeamLog.EnterpriseSettingsLockingTypeSerializer().serialize(arg)) - d[".tag"] = .str("enterprise_settings_locking") - return .dictionary(d) - case .guestAdminChangeStatus(let arg): - var d = try Serialization.getFields(TeamLog.GuestAdminChangeStatusTypeSerializer().serialize(arg)) - d[".tag"] = .str("guest_admin_change_status") - return .dictionary(d) - case .startedEnterpriseAdminSession(let arg): - var d = try Serialization.getFields(TeamLog.StartedEnterpriseAdminSessionTypeSerializer().serialize(arg)) - d[".tag"] = .str("started_enterprise_admin_session") - return .dictionary(d) - case .teamMergeRequestAccepted(let arg): - var d = try Serialization.getFields(TeamLog.TeamMergeRequestAcceptedTypeSerializer().serialize(arg)) - d[".tag"] = .str("team_merge_request_accepted") - return .dictionary(d) - case .teamMergeRequestAcceptedShownToPrimaryTeam(let arg): - var d = try Serialization.getFields(TeamLog.TeamMergeRequestAcceptedShownToPrimaryTeamTypeSerializer().serialize(arg)) - d[".tag"] = .str("team_merge_request_accepted_shown_to_primary_team") - return .dictionary(d) - case .teamMergeRequestAcceptedShownToSecondaryTeam(let arg): - var d = try Serialization.getFields(TeamLog.TeamMergeRequestAcceptedShownToSecondaryTeamTypeSerializer().serialize(arg)) - d[".tag"] = .str("team_merge_request_accepted_shown_to_secondary_team") - return .dictionary(d) - case .teamMergeRequestAutoCanceled(let arg): - var d = try Serialization.getFields(TeamLog.TeamMergeRequestAutoCanceledTypeSerializer().serialize(arg)) - d[".tag"] = .str("team_merge_request_auto_canceled") - return .dictionary(d) - case .teamMergeRequestCanceled(let arg): - var d = try Serialization.getFields(TeamLog.TeamMergeRequestCanceledTypeSerializer().serialize(arg)) - d[".tag"] = .str("team_merge_request_canceled") - return .dictionary(d) - case .teamMergeRequestCanceledShownToPrimaryTeam(let arg): - var d = try Serialization.getFields(TeamLog.TeamMergeRequestCanceledShownToPrimaryTeamTypeSerializer().serialize(arg)) - d[".tag"] = .str("team_merge_request_canceled_shown_to_primary_team") - return .dictionary(d) - case .teamMergeRequestCanceledShownToSecondaryTeam(let arg): - var d = try Serialization.getFields(TeamLog.TeamMergeRequestCanceledShownToSecondaryTeamTypeSerializer().serialize(arg)) - d[".tag"] = .str("team_merge_request_canceled_shown_to_secondary_team") - return .dictionary(d) - case .teamMergeRequestExpired(let arg): - var d = try Serialization.getFields(TeamLog.TeamMergeRequestExpiredTypeSerializer().serialize(arg)) - d[".tag"] = .str("team_merge_request_expired") - return .dictionary(d) - case .teamMergeRequestExpiredShownToPrimaryTeam(let arg): - var d = try Serialization.getFields(TeamLog.TeamMergeRequestExpiredShownToPrimaryTeamTypeSerializer().serialize(arg)) - d[".tag"] = .str("team_merge_request_expired_shown_to_primary_team") - return .dictionary(d) - case .teamMergeRequestExpiredShownToSecondaryTeam(let arg): - var d = try Serialization.getFields(TeamLog.TeamMergeRequestExpiredShownToSecondaryTeamTypeSerializer().serialize(arg)) - d[".tag"] = .str("team_merge_request_expired_shown_to_secondary_team") - return .dictionary(d) - case .teamMergeRequestRejectedShownToPrimaryTeam(let arg): - var d = try Serialization.getFields(TeamLog.TeamMergeRequestRejectedShownToPrimaryTeamTypeSerializer().serialize(arg)) - d[".tag"] = .str("team_merge_request_rejected_shown_to_primary_team") - return .dictionary(d) - case .teamMergeRequestRejectedShownToSecondaryTeam(let arg): - var d = try Serialization.getFields(TeamLog.TeamMergeRequestRejectedShownToSecondaryTeamTypeSerializer().serialize(arg)) - d[".tag"] = .str("team_merge_request_rejected_shown_to_secondary_team") - return .dictionary(d) - case .teamMergeRequestReminder(let arg): - var d = try Serialization.getFields(TeamLog.TeamMergeRequestReminderTypeSerializer().serialize(arg)) - d[".tag"] = .str("team_merge_request_reminder") - return .dictionary(d) - case .teamMergeRequestReminderShownToPrimaryTeam(let arg): - var d = try Serialization.getFields(TeamLog.TeamMergeRequestReminderShownToPrimaryTeamTypeSerializer().serialize(arg)) - d[".tag"] = .str("team_merge_request_reminder_shown_to_primary_team") - return .dictionary(d) - case .teamMergeRequestReminderShownToSecondaryTeam(let arg): - var d = try Serialization.getFields(TeamLog.TeamMergeRequestReminderShownToSecondaryTeamTypeSerializer().serialize(arg)) - d[".tag"] = .str("team_merge_request_reminder_shown_to_secondary_team") - return .dictionary(d) - case .teamMergeRequestRevoked(let arg): - var d = try Serialization.getFields(TeamLog.TeamMergeRequestRevokedTypeSerializer().serialize(arg)) - d[".tag"] = .str("team_merge_request_revoked") - return .dictionary(d) - case .teamMergeRequestSentShownToPrimaryTeam(let arg): - var d = try Serialization.getFields(TeamLog.TeamMergeRequestSentShownToPrimaryTeamTypeSerializer().serialize(arg)) - d[".tag"] = .str("team_merge_request_sent_shown_to_primary_team") - return .dictionary(d) - case .teamMergeRequestSentShownToSecondaryTeam(let arg): - var d = try Serialization.getFields(TeamLog.TeamMergeRequestSentShownToSecondaryTeamTypeSerializer().serialize(arg)) - d[".tag"] = .str("team_merge_request_sent_shown_to_secondary_team") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) + case .adminAlertingAlertStateChanged(let arg): + var d = try Serialization.getFields(TeamLog.AdminAlertingAlertStateChangedTypeSerializer().serialize(arg)) + d[".tag"] = .str("admin_alerting_alert_state_changed") + return .dictionary(d) + case .adminAlertingChangedAlertConfig(let arg): + var d = try Serialization.getFields(TeamLog.AdminAlertingChangedAlertConfigTypeSerializer().serialize(arg)) + d[".tag"] = .str("admin_alerting_changed_alert_config") + return .dictionary(d) + case .adminAlertingTriggeredAlert(let arg): + var d = try Serialization.getFields(TeamLog.AdminAlertingTriggeredAlertTypeSerializer().serialize(arg)) + d[".tag"] = .str("admin_alerting_triggered_alert") + return .dictionary(d) + case .ransomwareRestoreProcessCompleted(let arg): + var d = try Serialization.getFields(TeamLog.RansomwareRestoreProcessCompletedTypeSerializer().serialize(arg)) + d[".tag"] = .str("ransomware_restore_process_completed") + return .dictionary(d) + case .ransomwareRestoreProcessStarted(let arg): + var d = try Serialization.getFields(TeamLog.RansomwareRestoreProcessStartedTypeSerializer().serialize(arg)) + d[".tag"] = .str("ransomware_restore_process_started") + return .dictionary(d) + case .appBlockedByPermissions(let arg): + var d = try Serialization.getFields(TeamLog.AppBlockedByPermissionsTypeSerializer().serialize(arg)) + d[".tag"] = .str("app_blocked_by_permissions") + return .dictionary(d) + case .appLinkTeam(let arg): + var d = try Serialization.getFields(TeamLog.AppLinkTeamTypeSerializer().serialize(arg)) + d[".tag"] = .str("app_link_team") + return .dictionary(d) + case .appLinkUser(let arg): + var d = try Serialization.getFields(TeamLog.AppLinkUserTypeSerializer().serialize(arg)) + d[".tag"] = .str("app_link_user") + return .dictionary(d) + case .appUnlinkTeam(let arg): + var d = try Serialization.getFields(TeamLog.AppUnlinkTeamTypeSerializer().serialize(arg)) + d[".tag"] = .str("app_unlink_team") + return .dictionary(d) + case .appUnlinkUser(let arg): + var d = try Serialization.getFields(TeamLog.AppUnlinkUserTypeSerializer().serialize(arg)) + d[".tag"] = .str("app_unlink_user") + return .dictionary(d) + case .integrationConnected(let arg): + var d = try Serialization.getFields(TeamLog.IntegrationConnectedTypeSerializer().serialize(arg)) + d[".tag"] = .str("integration_connected") + return .dictionary(d) + case .integrationDisconnected(let arg): + var d = try Serialization.getFields(TeamLog.IntegrationDisconnectedTypeSerializer().serialize(arg)) + d[".tag"] = .str("integration_disconnected") + return .dictionary(d) + case .fileAddComment(let arg): + var d = try Serialization.getFields(TeamLog.FileAddCommentTypeSerializer().serialize(arg)) + d[".tag"] = .str("file_add_comment") + return .dictionary(d) + case .fileChangeCommentSubscription(let arg): + var d = try Serialization.getFields(TeamLog.FileChangeCommentSubscriptionTypeSerializer().serialize(arg)) + d[".tag"] = .str("file_change_comment_subscription") + return .dictionary(d) + case .fileDeleteComment(let arg): + var d = try Serialization.getFields(TeamLog.FileDeleteCommentTypeSerializer().serialize(arg)) + d[".tag"] = .str("file_delete_comment") + return .dictionary(d) + case .fileEditComment(let arg): + var d = try Serialization.getFields(TeamLog.FileEditCommentTypeSerializer().serialize(arg)) + d[".tag"] = .str("file_edit_comment") + return .dictionary(d) + case .fileLikeComment(let arg): + var d = try Serialization.getFields(TeamLog.FileLikeCommentTypeSerializer().serialize(arg)) + d[".tag"] = .str("file_like_comment") + return .dictionary(d) + case .fileResolveComment(let arg): + var d = try Serialization.getFields(TeamLog.FileResolveCommentTypeSerializer().serialize(arg)) + d[".tag"] = .str("file_resolve_comment") + return .dictionary(d) + case .fileUnlikeComment(let arg): + var d = try Serialization.getFields(TeamLog.FileUnlikeCommentTypeSerializer().serialize(arg)) + d[".tag"] = .str("file_unlike_comment") + return .dictionary(d) + case .fileUnresolveComment(let arg): + var d = try Serialization.getFields(TeamLog.FileUnresolveCommentTypeSerializer().serialize(arg)) + d[".tag"] = .str("file_unresolve_comment") + return .dictionary(d) + case .dashAddedCommentToStack(let arg): + var d = try Serialization.getFields(TeamLog.DashAddedCommentToStackTypeSerializer().serialize(arg)) + d[".tag"] = .str("dash_added_comment_to_stack") + return .dictionary(d) + case .dashAddedConnector(let arg): + var d = try Serialization.getFields(TeamLog.DashAddedConnectorTypeSerializer().serialize(arg)) + d[".tag"] = .str("dash_added_connector") + return .dictionary(d) + case .dashAddedLinkToStack(let arg): + var d = try Serialization.getFields(TeamLog.DashAddedLinkToStackTypeSerializer().serialize(arg)) + d[".tag"] = .str("dash_added_link_to_stack") + return .dictionary(d) + case .dashAddedTeamEmailDomainAllowlist(let arg): + var d = try Serialization.getFields(TeamLog.DashAddedTeamEmailDomainAllowlistTypeSerializer().serialize(arg)) + d[".tag"] = .str("dash_added_team_email_domain_allowlist") + return .dictionary(d) + case .dashAdminAddedOrgWideConnector(let arg): + var d = try Serialization.getFields(TeamLog.DashAdminAddedOrgWideConnectorTypeSerializer().serialize(arg)) + d[".tag"] = .str("dash_admin_added_org_wide_connector") + return .dictionary(d) + case .dashAdminDisabledConnector(let arg): + var d = try Serialization.getFields(TeamLog.DashAdminDisabledConnectorTypeSerializer().serialize(arg)) + d[".tag"] = .str("dash_admin_disabled_connector") + return .dictionary(d) + case .dashAdminEnabledConnector(let arg): + var d = try Serialization.getFields(TeamLog.DashAdminEnabledConnectorTypeSerializer().serialize(arg)) + d[".tag"] = .str("dash_admin_enabled_connector") + return .dictionary(d) + case .dashAdminRemovedOrgWideConnector(let arg): + var d = try Serialization.getFields(TeamLog.DashAdminRemovedOrgWideConnectorTypeSerializer().serialize(arg)) + d[".tag"] = .str("dash_admin_removed_org_wide_connector") + return .dictionary(d) + case .dashArchivedStack(let arg): + var d = try Serialization.getFields(TeamLog.DashArchivedStackTypeSerializer().serialize(arg)) + d[".tag"] = .str("dash_archived_stack") + return .dictionary(d) + case .dashChangedAudienceOfSharedLinkToStack(let arg): + var d = try Serialization.getFields(TeamLog.DashChangedAudienceOfSharedLinkToStackTypeSerializer().serialize(arg)) + d[".tag"] = .str("dash_changed_audience_of_shared_link_to_stack") + return .dictionary(d) + case .dashClonedStack(let arg): + var d = try Serialization.getFields(TeamLog.DashClonedStackTypeSerializer().serialize(arg)) + d[".tag"] = .str("dash_cloned_stack") + return .dictionary(d) + case .dashConnectorToolsCall(let arg): + var d = try Serialization.getFields(TeamLog.DashConnectorToolsCallTypeSerializer().serialize(arg)) + d[".tag"] = .str("dash_connector_tools_call") + return .dictionary(d) + case .dashCreatedStack(let arg): + var d = try Serialization.getFields(TeamLog.DashCreatedStackTypeSerializer().serialize(arg)) + d[".tag"] = .str("dash_created_stack") + return .dictionary(d) + case .dashDeletedCommentFromStack(let arg): + var d = try Serialization.getFields(TeamLog.DashDeletedCommentFromStackTypeSerializer().serialize(arg)) + d[".tag"] = .str("dash_deleted_comment_from_stack") + return .dictionary(d) + case .dashDeletedStack(let arg): + var d = try Serialization.getFields(TeamLog.DashDeletedStackTypeSerializer().serialize(arg)) + d[".tag"] = .str("dash_deleted_stack") + return .dictionary(d) + case .dashEditedCommentInStack(let arg): + var d = try Serialization.getFields(TeamLog.DashEditedCommentInStackTypeSerializer().serialize(arg)) + d[".tag"] = .str("dash_edited_comment_in_stack") + return .dictionary(d) + case .dashExternalUserOpenedStack(let arg): + var d = try Serialization.getFields(TeamLog.DashExternalUserOpenedStackTypeSerializer().serialize(arg)) + d[".tag"] = .str("dash_external_user_opened_stack") + return .dictionary(d) + case .dashFirstLaunchedDesktop(let arg): + var d = try Serialization.getFields(TeamLog.DashFirstLaunchedDesktopTypeSerializer().serialize(arg)) + d[".tag"] = .str("dash_first_launched_desktop") + return .dictionary(d) + case .dashFirstLaunchedExtension(let arg): + var d = try Serialization.getFields(TeamLog.DashFirstLaunchedExtensionTypeSerializer().serialize(arg)) + d[".tag"] = .str("dash_first_launched_extension") + return .dictionary(d) + case .dashFirstLaunchedWebStartPage(let arg): + var d = try Serialization.getFields(TeamLog.DashFirstLaunchedWebStartPageTypeSerializer().serialize(arg)) + d[".tag"] = .str("dash_first_launched_web_start_page") + return .dictionary(d) + case .dashOpenedSharedLinkToStack(let arg): + var d = try Serialization.getFields(TeamLog.DashOpenedSharedLinkToStackTypeSerializer().serialize(arg)) + d[".tag"] = .str("dash_opened_shared_link_to_stack") + return .dictionary(d) + case .dashOpenedStack(let arg): + var d = try Serialization.getFields(TeamLog.DashOpenedStackTypeSerializer().serialize(arg)) + d[".tag"] = .str("dash_opened_stack") + return .dictionary(d) + case .dashPreviewOptOutStatusChanged(let arg): + var d = try Serialization.getFields(TeamLog.DashPreviewOptOutStatusChangedTypeSerializer().serialize(arg)) + d[".tag"] = .str("dash_preview_opt_out_status_changed") + return .dictionary(d) + case .dashRemovedConnector(let arg): + var d = try Serialization.getFields(TeamLog.DashRemovedConnectorTypeSerializer().serialize(arg)) + d[".tag"] = .str("dash_removed_connector") + return .dictionary(d) + case .dashRemovedLinkFromStack(let arg): + var d = try Serialization.getFields(TeamLog.DashRemovedLinkFromStackTypeSerializer().serialize(arg)) + d[".tag"] = .str("dash_removed_link_from_stack") + return .dictionary(d) + case .dashRemovedSharedLinkToStack(let arg): + var d = try Serialization.getFields(TeamLog.DashRemovedSharedLinkToStackTypeSerializer().serialize(arg)) + d[".tag"] = .str("dash_removed_shared_link_to_stack") + return .dictionary(d) + case .dashRemovedTeamEmailDomainAllowlist(let arg): + var d = try Serialization.getFields(TeamLog.DashRemovedTeamEmailDomainAllowlistTypeSerializer().serialize(arg)) + d[".tag"] = .str("dash_removed_team_email_domain_allowlist") + return .dictionary(d) + case .dashRenamedStack(let arg): + var d = try Serialization.getFields(TeamLog.DashRenamedStackTypeSerializer().serialize(arg)) + d[".tag"] = .str("dash_renamed_stack") + return .dictionary(d) + case .dashSharedLinkToStack(let arg): + var d = try Serialization.getFields(TeamLog.DashSharedLinkToStackTypeSerializer().serialize(arg)) + d[".tag"] = .str("dash_shared_link_to_stack") + return .dictionary(d) + case .dashUnarchivedStack(let arg): + var d = try Serialization.getFields(TeamLog.DashUnarchivedStackTypeSerializer().serialize(arg)) + d[".tag"] = .str("dash_unarchived_stack") + return .dictionary(d) + case .dashViewedCompanyStack(let arg): + var d = try Serialization.getFields(TeamLog.DashViewedCompanyStackTypeSerializer().serialize(arg)) + d[".tag"] = .str("dash_viewed_company_stack") + return .dictionary(d) + case .dashViewedExternalAiActivityReport(let arg): + var d = try Serialization.getFields(TeamLog.DashViewedExternalAiActivityReportTypeSerializer().serialize(arg)) + d[".tag"] = .str("dash_viewed_external_ai_activity_report") + return .dictionary(d) + case .governancePolicyAddFolders(let arg): + var d = try Serialization.getFields(TeamLog.GovernancePolicyAddFoldersTypeSerializer().serialize(arg)) + d[".tag"] = .str("governance_policy_add_folders") + return .dictionary(d) + case .governancePolicyAddFolderFailed(let arg): + var d = try Serialization.getFields(TeamLog.GovernancePolicyAddFolderFailedTypeSerializer().serialize(arg)) + d[".tag"] = .str("governance_policy_add_folder_failed") + return .dictionary(d) + case .governancePolicyContentDisposed(let arg): + var d = try Serialization.getFields(TeamLog.GovernancePolicyContentDisposedTypeSerializer().serialize(arg)) + d[".tag"] = .str("governance_policy_content_disposed") + return .dictionary(d) + case .governancePolicyCreate(let arg): + var d = try Serialization.getFields(TeamLog.GovernancePolicyCreateTypeSerializer().serialize(arg)) + d[".tag"] = .str("governance_policy_create") + return .dictionary(d) + case .governancePolicyDelete(let arg): + var d = try Serialization.getFields(TeamLog.GovernancePolicyDeleteTypeSerializer().serialize(arg)) + d[".tag"] = .str("governance_policy_delete") + return .dictionary(d) + case .governancePolicyEditDetails(let arg): + var d = try Serialization.getFields(TeamLog.GovernancePolicyEditDetailsTypeSerializer().serialize(arg)) + d[".tag"] = .str("governance_policy_edit_details") + return .dictionary(d) + case .governancePolicyEditDuration(let arg): + var d = try Serialization.getFields(TeamLog.GovernancePolicyEditDurationTypeSerializer().serialize(arg)) + d[".tag"] = .str("governance_policy_edit_duration") + return .dictionary(d) + case .governancePolicyExportCreated(let arg): + var d = try Serialization.getFields(TeamLog.GovernancePolicyExportCreatedTypeSerializer().serialize(arg)) + d[".tag"] = .str("governance_policy_export_created") + return .dictionary(d) + case .governancePolicyExportRemoved(let arg): + var d = try Serialization.getFields(TeamLog.GovernancePolicyExportRemovedTypeSerializer().serialize(arg)) + d[".tag"] = .str("governance_policy_export_removed") + return .dictionary(d) + case .governancePolicyRemoveFolders(let arg): + var d = try Serialization.getFields(TeamLog.GovernancePolicyRemoveFoldersTypeSerializer().serialize(arg)) + d[".tag"] = .str("governance_policy_remove_folders") + return .dictionary(d) + case .governancePolicyReportCreated(let arg): + var d = try Serialization.getFields(TeamLog.GovernancePolicyReportCreatedTypeSerializer().serialize(arg)) + d[".tag"] = .str("governance_policy_report_created") + return .dictionary(d) + case .governancePolicyZipPartDownloaded(let arg): + var d = try Serialization.getFields(TeamLog.GovernancePolicyZipPartDownloadedTypeSerializer().serialize(arg)) + d[".tag"] = .str("governance_policy_zip_part_downloaded") + return .dictionary(d) + case .legalHoldsActivateAHold(let arg): + var d = try Serialization.getFields(TeamLog.LegalHoldsActivateAHoldTypeSerializer().serialize(arg)) + d[".tag"] = .str("legal_holds_activate_a_hold") + return .dictionary(d) + case .legalHoldsAddMembers(let arg): + var d = try Serialization.getFields(TeamLog.LegalHoldsAddMembersTypeSerializer().serialize(arg)) + d[".tag"] = .str("legal_holds_add_members") + return .dictionary(d) + case .legalHoldsChangeHoldDetails(let arg): + var d = try Serialization.getFields(TeamLog.LegalHoldsChangeHoldDetailsTypeSerializer().serialize(arg)) + d[".tag"] = .str("legal_holds_change_hold_details") + return .dictionary(d) + case .legalHoldsChangeHoldName(let arg): + var d = try Serialization.getFields(TeamLog.LegalHoldsChangeHoldNameTypeSerializer().serialize(arg)) + d[".tag"] = .str("legal_holds_change_hold_name") + return .dictionary(d) + case .legalHoldsExportAHold(let arg): + var d = try Serialization.getFields(TeamLog.LegalHoldsExportAHoldTypeSerializer().serialize(arg)) + d[".tag"] = .str("legal_holds_export_a_hold") + return .dictionary(d) + case .legalHoldsExportCancelled(let arg): + var d = try Serialization.getFields(TeamLog.LegalHoldsExportCancelledTypeSerializer().serialize(arg)) + d[".tag"] = .str("legal_holds_export_cancelled") + return .dictionary(d) + case .legalHoldsExportDownloaded(let arg): + var d = try Serialization.getFields(TeamLog.LegalHoldsExportDownloadedTypeSerializer().serialize(arg)) + d[".tag"] = .str("legal_holds_export_downloaded") + return .dictionary(d) + case .legalHoldsExportRemoved(let arg): + var d = try Serialization.getFields(TeamLog.LegalHoldsExportRemovedTypeSerializer().serialize(arg)) + d[".tag"] = .str("legal_holds_export_removed") + return .dictionary(d) + case .legalHoldsReleaseAHold(let arg): + var d = try Serialization.getFields(TeamLog.LegalHoldsReleaseAHoldTypeSerializer().serialize(arg)) + d[".tag"] = .str("legal_holds_release_a_hold") + return .dictionary(d) + case .legalHoldsRemoveMembers(let arg): + var d = try Serialization.getFields(TeamLog.LegalHoldsRemoveMembersTypeSerializer().serialize(arg)) + d[".tag"] = .str("legal_holds_remove_members") + return .dictionary(d) + case .legalHoldsReportAHold(let arg): + var d = try Serialization.getFields(TeamLog.LegalHoldsReportAHoldTypeSerializer().serialize(arg)) + d[".tag"] = .str("legal_holds_report_a_hold") + return .dictionary(d) + case .deviceChangeIpDesktop(let arg): + var d = try Serialization.getFields(TeamLog.DeviceChangeIpDesktopTypeSerializer().serialize(arg)) + d[".tag"] = .str("device_change_ip_desktop") + return .dictionary(d) + case .deviceChangeIpMobile(let arg): + var d = try Serialization.getFields(TeamLog.DeviceChangeIpMobileTypeSerializer().serialize(arg)) + d[".tag"] = .str("device_change_ip_mobile") + return .dictionary(d) + case .deviceChangeIpWeb(let arg): + var d = try Serialization.getFields(TeamLog.DeviceChangeIpWebTypeSerializer().serialize(arg)) + d[".tag"] = .str("device_change_ip_web") + return .dictionary(d) + case .deviceDeleteOnUnlinkFail(let arg): + var d = try Serialization.getFields(TeamLog.DeviceDeleteOnUnlinkFailTypeSerializer().serialize(arg)) + d[".tag"] = .str("device_delete_on_unlink_fail") + return .dictionary(d) + case .deviceDeleteOnUnlinkSuccess(let arg): + var d = try Serialization.getFields(TeamLog.DeviceDeleteOnUnlinkSuccessTypeSerializer().serialize(arg)) + d[".tag"] = .str("device_delete_on_unlink_success") + return .dictionary(d) + case .deviceLinkFail(let arg): + var d = try Serialization.getFields(TeamLog.DeviceLinkFailTypeSerializer().serialize(arg)) + d[".tag"] = .str("device_link_fail") + return .dictionary(d) + case .deviceLinkSuccess(let arg): + var d = try Serialization.getFields(TeamLog.DeviceLinkSuccessTypeSerializer().serialize(arg)) + d[".tag"] = .str("device_link_success") + return .dictionary(d) + case .deviceManagementDisabled(let arg): + var d = try Serialization.getFields(TeamLog.DeviceManagementDisabledTypeSerializer().serialize(arg)) + d[".tag"] = .str("device_management_disabled") + return .dictionary(d) + case .deviceManagementEnabled(let arg): + var d = try Serialization.getFields(TeamLog.DeviceManagementEnabledTypeSerializer().serialize(arg)) + d[".tag"] = .str("device_management_enabled") + return .dictionary(d) + case .deviceSyncBackupStatusChanged(let arg): + var d = try Serialization.getFields(TeamLog.DeviceSyncBackupStatusChangedTypeSerializer().serialize(arg)) + d[".tag"] = .str("device_sync_backup_status_changed") + return .dictionary(d) + case .deviceUnlink(let arg): + var d = try Serialization.getFields(TeamLog.DeviceUnlinkTypeSerializer().serialize(arg)) + d[".tag"] = .str("device_unlink") + return .dictionary(d) + case .dropboxPasswordsExported(let arg): + var d = try Serialization.getFields(TeamLog.DropboxPasswordsExportedTypeSerializer().serialize(arg)) + d[".tag"] = .str("dropbox_passwords_exported") + return .dictionary(d) + case .dropboxPasswordsNewDeviceEnrolled(let arg): + var d = try Serialization.getFields(TeamLog.DropboxPasswordsNewDeviceEnrolledTypeSerializer().serialize(arg)) + d[".tag"] = .str("dropbox_passwords_new_device_enrolled") + return .dictionary(d) + case .emmRefreshAuthToken(let arg): + var d = try Serialization.getFields(TeamLog.EmmRefreshAuthTokenTypeSerializer().serialize(arg)) + d[".tag"] = .str("emm_refresh_auth_token") + return .dictionary(d) + case .externalDriveBackupEligibilityStatusChecked(let arg): + var d = try Serialization.getFields(TeamLog.ExternalDriveBackupEligibilityStatusCheckedTypeSerializer().serialize(arg)) + d[".tag"] = .str("external_drive_backup_eligibility_status_checked") + return .dictionary(d) + case .externalDriveBackupStatusChanged(let arg): + var d = try Serialization.getFields(TeamLog.ExternalDriveBackupStatusChangedTypeSerializer().serialize(arg)) + d[".tag"] = .str("external_drive_backup_status_changed") + return .dictionary(d) + case .accountCaptureChangeAvailability(let arg): + var d = try Serialization.getFields(TeamLog.AccountCaptureChangeAvailabilityTypeSerializer().serialize(arg)) + d[".tag"] = .str("account_capture_change_availability") + return .dictionary(d) + case .accountCaptureMigrateAccount(let arg): + var d = try Serialization.getFields(TeamLog.AccountCaptureMigrateAccountTypeSerializer().serialize(arg)) + d[".tag"] = .str("account_capture_migrate_account") + return .dictionary(d) + case .accountCaptureNotificationEmailsSent(let arg): + var d = try Serialization.getFields(TeamLog.AccountCaptureNotificationEmailsSentTypeSerializer().serialize(arg)) + d[".tag"] = .str("account_capture_notification_emails_sent") + return .dictionary(d) + case .accountCaptureRelinquishAccount(let arg): + var d = try Serialization.getFields(TeamLog.AccountCaptureRelinquishAccountTypeSerializer().serialize(arg)) + d[".tag"] = .str("account_capture_relinquish_account") + return .dictionary(d) + case .disabledDomainInvites(let arg): + var d = try Serialization.getFields(TeamLog.DisabledDomainInvitesTypeSerializer().serialize(arg)) + d[".tag"] = .str("disabled_domain_invites") + return .dictionary(d) + case .domainInvitesApproveRequestToJoinTeam(let arg): + var d = try Serialization.getFields(TeamLog.DomainInvitesApproveRequestToJoinTeamTypeSerializer().serialize(arg)) + d[".tag"] = .str("domain_invites_approve_request_to_join_team") + return .dictionary(d) + case .domainInvitesDeclineRequestToJoinTeam(let arg): + var d = try Serialization.getFields(TeamLog.DomainInvitesDeclineRequestToJoinTeamTypeSerializer().serialize(arg)) + d[".tag"] = .str("domain_invites_decline_request_to_join_team") + return .dictionary(d) + case .domainInvitesEmailExistingUsers(let arg): + var d = try Serialization.getFields(TeamLog.DomainInvitesEmailExistingUsersTypeSerializer().serialize(arg)) + d[".tag"] = .str("domain_invites_email_existing_users") + return .dictionary(d) + case .domainInvitesRequestToJoinTeam(let arg): + var d = try Serialization.getFields(TeamLog.DomainInvitesRequestToJoinTeamTypeSerializer().serialize(arg)) + d[".tag"] = .str("domain_invites_request_to_join_team") + return .dictionary(d) + case .domainInvitesSetInviteNewUserPrefToNo(let arg): + var d = try Serialization.getFields(TeamLog.DomainInvitesSetInviteNewUserPrefToNoTypeSerializer().serialize(arg)) + d[".tag"] = .str("domain_invites_set_invite_new_user_pref_to_no") + return .dictionary(d) + case .domainInvitesSetInviteNewUserPrefToYes(let arg): + var d = try Serialization.getFields(TeamLog.DomainInvitesSetInviteNewUserPrefToYesTypeSerializer().serialize(arg)) + d[".tag"] = .str("domain_invites_set_invite_new_user_pref_to_yes") + return .dictionary(d) + case .domainVerificationAddDomainFail(let arg): + var d = try Serialization.getFields(TeamLog.DomainVerificationAddDomainFailTypeSerializer().serialize(arg)) + d[".tag"] = .str("domain_verification_add_domain_fail") + return .dictionary(d) + case .domainVerificationAddDomainSuccess(let arg): + var d = try Serialization.getFields(TeamLog.DomainVerificationAddDomainSuccessTypeSerializer().serialize(arg)) + d[".tag"] = .str("domain_verification_add_domain_success") + return .dictionary(d) + case .domainVerificationRemoveDomain(let arg): + var d = try Serialization.getFields(TeamLog.DomainVerificationRemoveDomainTypeSerializer().serialize(arg)) + d[".tag"] = .str("domain_verification_remove_domain") + return .dictionary(d) + case .enabledDomainInvites(let arg): + var d = try Serialization.getFields(TeamLog.EnabledDomainInvitesTypeSerializer().serialize(arg)) + d[".tag"] = .str("enabled_domain_invites") + return .dictionary(d) + case .encryptedFolderCancelTeamKeyRotation(let arg): + var d = try Serialization.getFields(TeamLog.EncryptedFolderCancelTeamKeyRotationTypeSerializer().serialize(arg)) + d[".tag"] = .str("encrypted_folder_cancel_team_key_rotation") + return .dictionary(d) + case .encryptedFolderEnrollBackupKey(let arg): + var d = try Serialization.getFields(TeamLog.EncryptedFolderEnrollBackupKeyTypeSerializer().serialize(arg)) + d[".tag"] = .str("encrypted_folder_enroll_backup_key") + return .dictionary(d) + case .encryptedFolderEnrollClient(let arg): + var d = try Serialization.getFields(TeamLog.EncryptedFolderEnrollClientTypeSerializer().serialize(arg)) + d[".tag"] = .str("encrypted_folder_enroll_client") + return .dictionary(d) + case .encryptedFolderEnrollTeam(let arg): + var d = try Serialization.getFields(TeamLog.EncryptedFolderEnrollTeamTypeSerializer().serialize(arg)) + d[".tag"] = .str("encrypted_folder_enroll_team") + return .dictionary(d) + case .encryptedFolderFinishTeamUnenrollment(let arg): + var d = try Serialization.getFields(TeamLog.EncryptedFolderFinishTeamUnenrollmentTypeSerializer().serialize(arg)) + d[".tag"] = .str("encrypted_folder_finish_team_unenrollment") + return .dictionary(d) + case .encryptedFolderInitTeamKeyRotation(let arg): + var d = try Serialization.getFields(TeamLog.EncryptedFolderInitTeamKeyRotationTypeSerializer().serialize(arg)) + d[".tag"] = .str("encrypted_folder_init_team_key_rotation") + return .dictionary(d) + case .encryptedFolderInitTeamUnenrollment(let arg): + var d = try Serialization.getFields(TeamLog.EncryptedFolderInitTeamUnenrollmentTypeSerializer().serialize(arg)) + d[".tag"] = .str("encrypted_folder_init_team_unenrollment") + return .dictionary(d) + case .encryptedFolderRemoveBackupKey(let arg): + var d = try Serialization.getFields(TeamLog.EncryptedFolderRemoveBackupKeyTypeSerializer().serialize(arg)) + d[".tag"] = .str("encrypted_folder_remove_backup_key") + return .dictionary(d) + case .encryptedFolderRotateTeamKey(let arg): + var d = try Serialization.getFields(TeamLog.EncryptedFolderRotateTeamKeyTypeSerializer().serialize(arg)) + d[".tag"] = .str("encrypted_folder_rotate_team_key") + return .dictionary(d) + case .encryptedFolderUnenrollClient(let arg): + var d = try Serialization.getFields(TeamLog.EncryptedFolderUnenrollClientTypeSerializer().serialize(arg)) + d[".tag"] = .str("encrypted_folder_unenroll_client") + return .dictionary(d) + case .teamEncryptionKeyActivateKey(let arg): + var d = try Serialization.getFields(TeamLog.TeamEncryptionKeyActivateKeyTypeSerializer().serialize(arg)) + d[".tag"] = .str("team_encryption_key_activate_key") + return .dictionary(d) + case .teamEncryptionKeyCancelKeyDeletion(let arg): + var d = try Serialization.getFields(TeamLog.TeamEncryptionKeyCancelKeyDeletionTypeSerializer().serialize(arg)) + d[".tag"] = .str("team_encryption_key_cancel_key_deletion") + return .dictionary(d) + case .teamEncryptionKeyCreateKey(let arg): + var d = try Serialization.getFields(TeamLog.TeamEncryptionKeyCreateKeyTypeSerializer().serialize(arg)) + d[".tag"] = .str("team_encryption_key_create_key") + return .dictionary(d) + case .teamEncryptionKeyDeactivateKey(let arg): + var d = try Serialization.getFields(TeamLog.TeamEncryptionKeyDeactivateKeyTypeSerializer().serialize(arg)) + d[".tag"] = .str("team_encryption_key_deactivate_key") + return .dictionary(d) + case .teamEncryptionKeyDeleteKey(let arg): + var d = try Serialization.getFields(TeamLog.TeamEncryptionKeyDeleteKeyTypeSerializer().serialize(arg)) + d[".tag"] = .str("team_encryption_key_delete_key") + return .dictionary(d) + case .teamEncryptionKeyDisableKey(let arg): + var d = try Serialization.getFields(TeamLog.TeamEncryptionKeyDisableKeyTypeSerializer().serialize(arg)) + d[".tag"] = .str("team_encryption_key_disable_key") + return .dictionary(d) + case .teamEncryptionKeyEnableKey(let arg): + var d = try Serialization.getFields(TeamLog.TeamEncryptionKeyEnableKeyTypeSerializer().serialize(arg)) + d[".tag"] = .str("team_encryption_key_enable_key") + return .dictionary(d) + case .teamEncryptionKeyRotateKey(let arg): + var d = try Serialization.getFields(TeamLog.TeamEncryptionKeyRotateKeyTypeSerializer().serialize(arg)) + d[".tag"] = .str("team_encryption_key_rotate_key") + return .dictionary(d) + case .teamEncryptionKeyScheduleKeyDeletion(let arg): + var d = try Serialization.getFields(TeamLog.TeamEncryptionKeyScheduleKeyDeletionTypeSerializer().serialize(arg)) + d[".tag"] = .str("team_encryption_key_schedule_key_deletion") + return .dictionary(d) + case .applyNamingConvention(let arg): + var d = try Serialization.getFields(TeamLog.ApplyNamingConventionTypeSerializer().serialize(arg)) + d[".tag"] = .str("apply_naming_convention") + return .dictionary(d) + case .createFolder(let arg): + var d = try Serialization.getFields(TeamLog.CreateFolderTypeSerializer().serialize(arg)) + d[".tag"] = .str("create_folder") + return .dictionary(d) + case .fileAdd(let arg): + var d = try Serialization.getFields(TeamLog.FileAddTypeSerializer().serialize(arg)) + d[".tag"] = .str("file_add") + return .dictionary(d) + case .fileAddFromAutomation(let arg): + var d = try Serialization.getFields(TeamLog.FileAddFromAutomationTypeSerializer().serialize(arg)) + d[".tag"] = .str("file_add_from_automation") + return .dictionary(d) + case .fileCopy(let arg): + var d = try Serialization.getFields(TeamLog.FileCopyTypeSerializer().serialize(arg)) + d[".tag"] = .str("file_copy") + return .dictionary(d) + case .fileDelete(let arg): + var d = try Serialization.getFields(TeamLog.FileDeleteTypeSerializer().serialize(arg)) + d[".tag"] = .str("file_delete") + return .dictionary(d) + case .fileDownload(let arg): + var d = try Serialization.getFields(TeamLog.FileDownloadTypeSerializer().serialize(arg)) + d[".tag"] = .str("file_download") + return .dictionary(d) + case .fileEdit(let arg): + var d = try Serialization.getFields(TeamLog.FileEditTypeSerializer().serialize(arg)) + d[".tag"] = .str("file_edit") + return .dictionary(d) + case .fileGetCopyReference(let arg): + var d = try Serialization.getFields(TeamLog.FileGetCopyReferenceTypeSerializer().serialize(arg)) + d[".tag"] = .str("file_get_copy_reference") + return .dictionary(d) + case .fileLockingLockStatusChanged(let arg): + var d = try Serialization.getFields(TeamLog.FileLockingLockStatusChangedTypeSerializer().serialize(arg)) + d[".tag"] = .str("file_locking_lock_status_changed") + return .dictionary(d) + case .fileMove(let arg): + var d = try Serialization.getFields(TeamLog.FileMoveTypeSerializer().serialize(arg)) + d[".tag"] = .str("file_move") + return .dictionary(d) + case .filePermanentlyDelete(let arg): + var d = try Serialization.getFields(TeamLog.FilePermanentlyDeleteTypeSerializer().serialize(arg)) + d[".tag"] = .str("file_permanently_delete") + return .dictionary(d) + case .filePreview(let arg): + var d = try Serialization.getFields(TeamLog.FilePreviewTypeSerializer().serialize(arg)) + d[".tag"] = .str("file_preview") + return .dictionary(d) + case .fileRename(let arg): + var d = try Serialization.getFields(TeamLog.FileRenameTypeSerializer().serialize(arg)) + d[".tag"] = .str("file_rename") + return .dictionary(d) + case .fileRestore(let arg): + var d = try Serialization.getFields(TeamLog.FileRestoreTypeSerializer().serialize(arg)) + d[".tag"] = .str("file_restore") + return .dictionary(d) + case .fileRevert(let arg): + var d = try Serialization.getFields(TeamLog.FileRevertTypeSerializer().serialize(arg)) + d[".tag"] = .str("file_revert") + return .dictionary(d) + case .fileRollbackChanges(let arg): + var d = try Serialization.getFields(TeamLog.FileRollbackChangesTypeSerializer().serialize(arg)) + d[".tag"] = .str("file_rollback_changes") + return .dictionary(d) + case .fileSaveCopyReference(let arg): + var d = try Serialization.getFields(TeamLog.FileSaveCopyReferenceTypeSerializer().serialize(arg)) + d[".tag"] = .str("file_save_copy_reference") + return .dictionary(d) + case .folderOverviewDescriptionChanged(let arg): + var d = try Serialization.getFields(TeamLog.FolderOverviewDescriptionChangedTypeSerializer().serialize(arg)) + d[".tag"] = .str("folder_overview_description_changed") + return .dictionary(d) + case .folderOverviewItemPinned(let arg): + var d = try Serialization.getFields(TeamLog.FolderOverviewItemPinnedTypeSerializer().serialize(arg)) + d[".tag"] = .str("folder_overview_item_pinned") + return .dictionary(d) + case .folderOverviewItemUnpinned(let arg): + var d = try Serialization.getFields(TeamLog.FolderOverviewItemUnpinnedTypeSerializer().serialize(arg)) + d[".tag"] = .str("folder_overview_item_unpinned") + return .dictionary(d) + case .mediaHubFileDownloaded(let arg): + var d = try Serialization.getFields(TeamLog.MediaHubFileDownloadedTypeSerializer().serialize(arg)) + d[".tag"] = .str("media_hub_file_downloaded") + return .dictionary(d) + case .objectLabelAdded(let arg): + var d = try Serialization.getFields(TeamLog.ObjectLabelAddedTypeSerializer().serialize(arg)) + d[".tag"] = .str("object_label_added") + return .dictionary(d) + case .objectLabelRemoved(let arg): + var d = try Serialization.getFields(TeamLog.ObjectLabelRemovedTypeSerializer().serialize(arg)) + d[".tag"] = .str("object_label_removed") + return .dictionary(d) + case .objectLabelUpdatedValue(let arg): + var d = try Serialization.getFields(TeamLog.ObjectLabelUpdatedValueTypeSerializer().serialize(arg)) + d[".tag"] = .str("object_label_updated_value") + return .dictionary(d) + case .organizeFolderWithTidy(let arg): + var d = try Serialization.getFields(TeamLog.OrganizeFolderWithTidyTypeSerializer().serialize(arg)) + d[".tag"] = .str("organize_folder_with_tidy") + return .dictionary(d) + case .replayFileDelete(let arg): + var d = try Serialization.getFields(TeamLog.ReplayFileDeleteTypeSerializer().serialize(arg)) + d[".tag"] = .str("replay_file_delete") + return .dictionary(d) + case .replayFileDownloaded(let arg): + var d = try Serialization.getFields(TeamLog.ReplayFileDownloadedTypeSerializer().serialize(arg)) + d[".tag"] = .str("replay_file_downloaded") + return .dictionary(d) + case .replayTeamProjectCreated(let arg): + var d = try Serialization.getFields(TeamLog.ReplayTeamProjectCreatedTypeSerializer().serialize(arg)) + d[".tag"] = .str("replay_team_project_created") + return .dictionary(d) + case .rewindFolder(let arg): + var d = try Serialization.getFields(TeamLog.RewindFolderTypeSerializer().serialize(arg)) + d[".tag"] = .str("rewind_folder") + return .dictionary(d) + case .undoNamingConvention(let arg): + var d = try Serialization.getFields(TeamLog.UndoNamingConventionTypeSerializer().serialize(arg)) + d[".tag"] = .str("undo_naming_convention") + return .dictionary(d) + case .undoOrganizeFolderWithTidy(let arg): + var d = try Serialization.getFields(TeamLog.UndoOrganizeFolderWithTidyTypeSerializer().serialize(arg)) + d[".tag"] = .str("undo_organize_folder_with_tidy") + return .dictionary(d) + case .userTagsAdded(let arg): + var d = try Serialization.getFields(TeamLog.UserTagsAddedTypeSerializer().serialize(arg)) + d[".tag"] = .str("user_tags_added") + return .dictionary(d) + case .userTagsRemoved(let arg): + var d = try Serialization.getFields(TeamLog.UserTagsRemovedTypeSerializer().serialize(arg)) + d[".tag"] = .str("user_tags_removed") + return .dictionary(d) + case .emailIngestReceiveFile(let arg): + var d = try Serialization.getFields(TeamLog.EmailIngestReceiveFileTypeSerializer().serialize(arg)) + d[".tag"] = .str("email_ingest_receive_file") + return .dictionary(d) + case .fileRequestAutoClose(let arg): + var d = try Serialization.getFields(TeamLog.FileRequestAutoCloseTypeSerializer().serialize(arg)) + d[".tag"] = .str("file_request_auto_close") + return .dictionary(d) + case .fileRequestChange(let arg): + var d = try Serialization.getFields(TeamLog.FileRequestChangeTypeSerializer().serialize(arg)) + d[".tag"] = .str("file_request_change") + return .dictionary(d) + case .fileRequestClose(let arg): + var d = try Serialization.getFields(TeamLog.FileRequestCloseTypeSerializer().serialize(arg)) + d[".tag"] = .str("file_request_close") + return .dictionary(d) + case .fileRequestCreate(let arg): + var d = try Serialization.getFields(TeamLog.FileRequestCreateTypeSerializer().serialize(arg)) + d[".tag"] = .str("file_request_create") + return .dictionary(d) + case .fileRequestDelete(let arg): + var d = try Serialization.getFields(TeamLog.FileRequestDeleteTypeSerializer().serialize(arg)) + d[".tag"] = .str("file_request_delete") + return .dictionary(d) + case .fileRequestReceiveFile(let arg): + var d = try Serialization.getFields(TeamLog.FileRequestReceiveFileTypeSerializer().serialize(arg)) + d[".tag"] = .str("file_request_receive_file") + return .dictionary(d) + case .groupAddExternalId(let arg): + var d = try Serialization.getFields(TeamLog.GroupAddExternalIdTypeSerializer().serialize(arg)) + d[".tag"] = .str("group_add_external_id") + return .dictionary(d) + case .groupAddMember(let arg): + var d = try Serialization.getFields(TeamLog.GroupAddMemberTypeSerializer().serialize(arg)) + d[".tag"] = .str("group_add_member") + return .dictionary(d) + case .groupChangeExternalId(let arg): + var d = try Serialization.getFields(TeamLog.GroupChangeExternalIdTypeSerializer().serialize(arg)) + d[".tag"] = .str("group_change_external_id") + return .dictionary(d) + case .groupChangeManagementType(let arg): + var d = try Serialization.getFields(TeamLog.GroupChangeManagementTypeTypeSerializer().serialize(arg)) + d[".tag"] = .str("group_change_management_type") + return .dictionary(d) + case .groupChangeMemberRole(let arg): + var d = try Serialization.getFields(TeamLog.GroupChangeMemberRoleTypeSerializer().serialize(arg)) + d[".tag"] = .str("group_change_member_role") + return .dictionary(d) + case .groupCreate(let arg): + var d = try Serialization.getFields(TeamLog.GroupCreateTypeSerializer().serialize(arg)) + d[".tag"] = .str("group_create") + return .dictionary(d) + case .groupDelete(let arg): + var d = try Serialization.getFields(TeamLog.GroupDeleteTypeSerializer().serialize(arg)) + d[".tag"] = .str("group_delete") + return .dictionary(d) + case .groupDescriptionUpdated(let arg): + var d = try Serialization.getFields(TeamLog.GroupDescriptionUpdatedTypeSerializer().serialize(arg)) + d[".tag"] = .str("group_description_updated") + return .dictionary(d) + case .groupExternalSharingSettingOverrideChanged(let arg): + var d = try Serialization.getFields(TeamLog.GroupExternalSharingSettingOverrideChangedTypeSerializer().serialize(arg)) + d[".tag"] = .str("group_external_sharing_setting_override_changed") + return .dictionary(d) + case .groupJoinPolicyUpdated(let arg): + var d = try Serialization.getFields(TeamLog.GroupJoinPolicyUpdatedTypeSerializer().serialize(arg)) + d[".tag"] = .str("group_join_policy_updated") + return .dictionary(d) + case .groupMoved(let arg): + var d = try Serialization.getFields(TeamLog.GroupMovedTypeSerializer().serialize(arg)) + d[".tag"] = .str("group_moved") + return .dictionary(d) + case .groupRemoveExternalId(let arg): + var d = try Serialization.getFields(TeamLog.GroupRemoveExternalIdTypeSerializer().serialize(arg)) + d[".tag"] = .str("group_remove_external_id") + return .dictionary(d) + case .groupRemoveMember(let arg): + var d = try Serialization.getFields(TeamLog.GroupRemoveMemberTypeSerializer().serialize(arg)) + d[".tag"] = .str("group_remove_member") + return .dictionary(d) + case .groupRename(let arg): + var d = try Serialization.getFields(TeamLog.GroupRenameTypeSerializer().serialize(arg)) + d[".tag"] = .str("group_rename") + return .dictionary(d) + case .accountLockOrUnlocked(let arg): + var d = try Serialization.getFields(TeamLog.AccountLockOrUnlockedTypeSerializer().serialize(arg)) + d[".tag"] = .str("account_lock_or_unlocked") + return .dictionary(d) + case .emmError(let arg): + var d = try Serialization.getFields(TeamLog.EmmErrorTypeSerializer().serialize(arg)) + d[".tag"] = .str("emm_error") + return .dictionary(d) + case .guestAdminSignedInViaTrustedTeams(let arg): + var d = try Serialization.getFields(TeamLog.GuestAdminSignedInViaTrustedTeamsTypeSerializer().serialize(arg)) + d[".tag"] = .str("guest_admin_signed_in_via_trusted_teams") + return .dictionary(d) + case .guestAdminSignedOutViaTrustedTeams(let arg): + var d = try Serialization.getFields(TeamLog.GuestAdminSignedOutViaTrustedTeamsTypeSerializer().serialize(arg)) + d[".tag"] = .str("guest_admin_signed_out_via_trusted_teams") + return .dictionary(d) + case .loginFail(let arg): + var d = try Serialization.getFields(TeamLog.LoginFailTypeSerializer().serialize(arg)) + d[".tag"] = .str("login_fail") + return .dictionary(d) + case .loginSuccess(let arg): + var d = try Serialization.getFields(TeamLog.LoginSuccessTypeSerializer().serialize(arg)) + d[".tag"] = .str("login_success") + return .dictionary(d) + case .logout(let arg): + var d = try Serialization.getFields(TeamLog.LogoutTypeSerializer().serialize(arg)) + d[".tag"] = .str("logout") + return .dictionary(d) + case .resellerSupportSessionEnd(let arg): + var d = try Serialization.getFields(TeamLog.ResellerSupportSessionEndTypeSerializer().serialize(arg)) + d[".tag"] = .str("reseller_support_session_end") + return .dictionary(d) + case .resellerSupportSessionStart(let arg): + var d = try Serialization.getFields(TeamLog.ResellerSupportSessionStartTypeSerializer().serialize(arg)) + d[".tag"] = .str("reseller_support_session_start") + return .dictionary(d) + case .signInAsSessionEnd(let arg): + var d = try Serialization.getFields(TeamLog.SignInAsSessionEndTypeSerializer().serialize(arg)) + d[".tag"] = .str("sign_in_as_session_end") + return .dictionary(d) + case .signInAsSessionStart(let arg): + var d = try Serialization.getFields(TeamLog.SignInAsSessionStartTypeSerializer().serialize(arg)) + d[".tag"] = .str("sign_in_as_session_start") + return .dictionary(d) + case .ssoError(let arg): + var d = try Serialization.getFields(TeamLog.SsoErrorTypeSerializer().serialize(arg)) + d[".tag"] = .str("sso_error") + return .dictionary(d) + case .addonAssigned(let arg): + var d = try Serialization.getFields(TeamLog.AddonAssignedTypeSerializer().serialize(arg)) + d[".tag"] = .str("addon_assigned") + return .dictionary(d) + case .addonRemoved(let arg): + var d = try Serialization.getFields(TeamLog.AddonRemovedTypeSerializer().serialize(arg)) + d[".tag"] = .str("addon_removed") + return .dictionary(d) + case .backupAdminInvitationSent(let arg): + var d = try Serialization.getFields(TeamLog.BackupAdminInvitationSentTypeSerializer().serialize(arg)) + d[".tag"] = .str("backup_admin_invitation_sent") + return .dictionary(d) + case .backupInvitationOpened(let arg): + var d = try Serialization.getFields(TeamLog.BackupInvitationOpenedTypeSerializer().serialize(arg)) + d[".tag"] = .str("backup_invitation_opened") + return .dictionary(d) + case .createTeamInviteLink(let arg): + var d = try Serialization.getFields(TeamLog.CreateTeamInviteLinkTypeSerializer().serialize(arg)) + d[".tag"] = .str("create_team_invite_link") + return .dictionary(d) + case .deleteTeamInviteLink(let arg): + var d = try Serialization.getFields(TeamLog.DeleteTeamInviteLinkTypeSerializer().serialize(arg)) + d[".tag"] = .str("delete_team_invite_link") + return .dictionary(d) + case .memberAddExternalId(let arg): + var d = try Serialization.getFields(TeamLog.MemberAddExternalIdTypeSerializer().serialize(arg)) + d[".tag"] = .str("member_add_external_id") + return .dictionary(d) + case .memberAddName(let arg): + var d = try Serialization.getFields(TeamLog.MemberAddNameTypeSerializer().serialize(arg)) + d[".tag"] = .str("member_add_name") + return .dictionary(d) + case .memberChangeAdminRole(let arg): + var d = try Serialization.getFields(TeamLog.MemberChangeAdminRoleTypeSerializer().serialize(arg)) + d[".tag"] = .str("member_change_admin_role") + return .dictionary(d) + case .memberChangeEmail(let arg): + var d = try Serialization.getFields(TeamLog.MemberChangeEmailTypeSerializer().serialize(arg)) + d[".tag"] = .str("member_change_email") + return .dictionary(d) + case .memberChangeExternalId(let arg): + var d = try Serialization.getFields(TeamLog.MemberChangeExternalIdTypeSerializer().serialize(arg)) + d[".tag"] = .str("member_change_external_id") + return .dictionary(d) + case .memberChangeMembershipType(let arg): + var d = try Serialization.getFields(TeamLog.MemberChangeMembershipTypeTypeSerializer().serialize(arg)) + d[".tag"] = .str("member_change_membership_type") + return .dictionary(d) + case .memberChangeName(let arg): + var d = try Serialization.getFields(TeamLog.MemberChangeNameTypeSerializer().serialize(arg)) + d[".tag"] = .str("member_change_name") + return .dictionary(d) + case .memberChangeResellerRole(let arg): + var d = try Serialization.getFields(TeamLog.MemberChangeResellerRoleTypeSerializer().serialize(arg)) + d[".tag"] = .str("member_change_reseller_role") + return .dictionary(d) + case .memberChangeStatus(let arg): + var d = try Serialization.getFields(TeamLog.MemberChangeStatusTypeSerializer().serialize(arg)) + d[".tag"] = .str("member_change_status") + return .dictionary(d) + case .memberDeleteManualContacts(let arg): + var d = try Serialization.getFields(TeamLog.MemberDeleteManualContactsTypeSerializer().serialize(arg)) + d[".tag"] = .str("member_delete_manual_contacts") + return .dictionary(d) + case .memberDeleteProfilePhoto(let arg): + var d = try Serialization.getFields(TeamLog.MemberDeleteProfilePhotoTypeSerializer().serialize(arg)) + d[".tag"] = .str("member_delete_profile_photo") + return .dictionary(d) + case .memberFolderContentsAccessed(let arg): + var d = try Serialization.getFields(TeamLog.MemberFolderContentsAccessedTypeSerializer().serialize(arg)) + d[".tag"] = .str("member_folder_contents_accessed") + return .dictionary(d) + case .memberPermanentlyDeleteAccountContents(let arg): + var d = try Serialization.getFields(TeamLog.MemberPermanentlyDeleteAccountContentsTypeSerializer().serialize(arg)) + d[".tag"] = .str("member_permanently_delete_account_contents") + return .dictionary(d) + case .memberRemoveExternalId(let arg): + var d = try Serialization.getFields(TeamLog.MemberRemoveExternalIdTypeSerializer().serialize(arg)) + d[".tag"] = .str("member_remove_external_id") + return .dictionary(d) + case .memberSetProfilePhoto(let arg): + var d = try Serialization.getFields(TeamLog.MemberSetProfilePhotoTypeSerializer().serialize(arg)) + d[".tag"] = .str("member_set_profile_photo") + return .dictionary(d) + case .memberSpaceLimitsAddCustomQuota(let arg): + var d = try Serialization.getFields(TeamLog.MemberSpaceLimitsAddCustomQuotaTypeSerializer().serialize(arg)) + d[".tag"] = .str("member_space_limits_add_custom_quota") + return .dictionary(d) + case .memberSpaceLimitsChangeCustomQuota(let arg): + var d = try Serialization.getFields(TeamLog.MemberSpaceLimitsChangeCustomQuotaTypeSerializer().serialize(arg)) + d[".tag"] = .str("member_space_limits_change_custom_quota") + return .dictionary(d) + case .memberSpaceLimitsChangeStatus(let arg): + var d = try Serialization.getFields(TeamLog.MemberSpaceLimitsChangeStatusTypeSerializer().serialize(arg)) + d[".tag"] = .str("member_space_limits_change_status") + return .dictionary(d) + case .memberSpaceLimitsRemoveCustomQuota(let arg): + var d = try Serialization.getFields(TeamLog.MemberSpaceLimitsRemoveCustomQuotaTypeSerializer().serialize(arg)) + d[".tag"] = .str("member_space_limits_remove_custom_quota") + return .dictionary(d) + case .memberSuggest(let arg): + var d = try Serialization.getFields(TeamLog.MemberSuggestTypeSerializer().serialize(arg)) + d[".tag"] = .str("member_suggest") + return .dictionary(d) + case .memberTransferAccountContents(let arg): + var d = try Serialization.getFields(TeamLog.MemberTransferAccountContentsTypeSerializer().serialize(arg)) + d[".tag"] = .str("member_transfer_account_contents") + return .dictionary(d) + case .pendingSecondaryEmailAdded(let arg): + var d = try Serialization.getFields(TeamLog.PendingSecondaryEmailAddedTypeSerializer().serialize(arg)) + d[".tag"] = .str("pending_secondary_email_added") + return .dictionary(d) + case .productAssignedToMember(let arg): + var d = try Serialization.getFields(TeamLog.ProductAssignedToMemberTypeSerializer().serialize(arg)) + d[".tag"] = .str("product_assigned_to_member") + return .dictionary(d) + case .productRemovedFromMember(let arg): + var d = try Serialization.getFields(TeamLog.ProductRemovedFromMemberTypeSerializer().serialize(arg)) + d[".tag"] = .str("product_removed_from_member") + return .dictionary(d) + case .secondaryEmailDeleted(let arg): + var d = try Serialization.getFields(TeamLog.SecondaryEmailDeletedTypeSerializer().serialize(arg)) + d[".tag"] = .str("secondary_email_deleted") + return .dictionary(d) + case .secondaryEmailVerified(let arg): + var d = try Serialization.getFields(TeamLog.SecondaryEmailVerifiedTypeSerializer().serialize(arg)) + d[".tag"] = .str("secondary_email_verified") + return .dictionary(d) + case .secondaryMailsPolicyChanged(let arg): + var d = try Serialization.getFields(TeamLog.SecondaryMailsPolicyChangedTypeSerializer().serialize(arg)) + d[".tag"] = .str("secondary_mails_policy_changed") + return .dictionary(d) + case .binderAddPage(let arg): + var d = try Serialization.getFields(TeamLog.BinderAddPageTypeSerializer().serialize(arg)) + d[".tag"] = .str("binder_add_page") + return .dictionary(d) + case .binderAddSection(let arg): + var d = try Serialization.getFields(TeamLog.BinderAddSectionTypeSerializer().serialize(arg)) + d[".tag"] = .str("binder_add_section") + return .dictionary(d) + case .binderRemovePage(let arg): + var d = try Serialization.getFields(TeamLog.BinderRemovePageTypeSerializer().serialize(arg)) + d[".tag"] = .str("binder_remove_page") + return .dictionary(d) + case .binderRemoveSection(let arg): + var d = try Serialization.getFields(TeamLog.BinderRemoveSectionTypeSerializer().serialize(arg)) + d[".tag"] = .str("binder_remove_section") + return .dictionary(d) + case .binderRenamePage(let arg): + var d = try Serialization.getFields(TeamLog.BinderRenamePageTypeSerializer().serialize(arg)) + d[".tag"] = .str("binder_rename_page") + return .dictionary(d) + case .binderRenameSection(let arg): + var d = try Serialization.getFields(TeamLog.BinderRenameSectionTypeSerializer().serialize(arg)) + d[".tag"] = .str("binder_rename_section") + return .dictionary(d) + case .binderReorderPage(let arg): + var d = try Serialization.getFields(TeamLog.BinderReorderPageTypeSerializer().serialize(arg)) + d[".tag"] = .str("binder_reorder_page") + return .dictionary(d) + case .binderReorderSection(let arg): + var d = try Serialization.getFields(TeamLog.BinderReorderSectionTypeSerializer().serialize(arg)) + d[".tag"] = .str("binder_reorder_section") + return .dictionary(d) + case .paperContentAddMember(let arg): + var d = try Serialization.getFields(TeamLog.PaperContentAddMemberTypeSerializer().serialize(arg)) + d[".tag"] = .str("paper_content_add_member") + return .dictionary(d) + case .paperContentAddToFolder(let arg): + var d = try Serialization.getFields(TeamLog.PaperContentAddToFolderTypeSerializer().serialize(arg)) + d[".tag"] = .str("paper_content_add_to_folder") + return .dictionary(d) + case .paperContentArchive(let arg): + var d = try Serialization.getFields(TeamLog.PaperContentArchiveTypeSerializer().serialize(arg)) + d[".tag"] = .str("paper_content_archive") + return .dictionary(d) + case .paperContentCreate(let arg): + var d = try Serialization.getFields(TeamLog.PaperContentCreateTypeSerializer().serialize(arg)) + d[".tag"] = .str("paper_content_create") + return .dictionary(d) + case .paperContentPermanentlyDelete(let arg): + var d = try Serialization.getFields(TeamLog.PaperContentPermanentlyDeleteTypeSerializer().serialize(arg)) + d[".tag"] = .str("paper_content_permanently_delete") + return .dictionary(d) + case .paperContentRemoveFromFolder(let arg): + var d = try Serialization.getFields(TeamLog.PaperContentRemoveFromFolderTypeSerializer().serialize(arg)) + d[".tag"] = .str("paper_content_remove_from_folder") + return .dictionary(d) + case .paperContentRemoveMember(let arg): + var d = try Serialization.getFields(TeamLog.PaperContentRemoveMemberTypeSerializer().serialize(arg)) + d[".tag"] = .str("paper_content_remove_member") + return .dictionary(d) + case .paperContentRename(let arg): + var d = try Serialization.getFields(TeamLog.PaperContentRenameTypeSerializer().serialize(arg)) + d[".tag"] = .str("paper_content_rename") + return .dictionary(d) + case .paperContentRestore(let arg): + var d = try Serialization.getFields(TeamLog.PaperContentRestoreTypeSerializer().serialize(arg)) + d[".tag"] = .str("paper_content_restore") + return .dictionary(d) + case .paperDocAddComment(let arg): + var d = try Serialization.getFields(TeamLog.PaperDocAddCommentTypeSerializer().serialize(arg)) + d[".tag"] = .str("paper_doc_add_comment") + return .dictionary(d) + case .paperDocChangeMemberRole(let arg): + var d = try Serialization.getFields(TeamLog.PaperDocChangeMemberRoleTypeSerializer().serialize(arg)) + d[".tag"] = .str("paper_doc_change_member_role") + return .dictionary(d) + case .paperDocChangeSharingPolicy(let arg): + var d = try Serialization.getFields(TeamLog.PaperDocChangeSharingPolicyTypeSerializer().serialize(arg)) + d[".tag"] = .str("paper_doc_change_sharing_policy") + return .dictionary(d) + case .paperDocChangeSubscription(let arg): + var d = try Serialization.getFields(TeamLog.PaperDocChangeSubscriptionTypeSerializer().serialize(arg)) + d[".tag"] = .str("paper_doc_change_subscription") + return .dictionary(d) + case .paperDocDeleted(let arg): + var d = try Serialization.getFields(TeamLog.PaperDocDeletedTypeSerializer().serialize(arg)) + d[".tag"] = .str("paper_doc_deleted") + return .dictionary(d) + case .paperDocDeleteComment(let arg): + var d = try Serialization.getFields(TeamLog.PaperDocDeleteCommentTypeSerializer().serialize(arg)) + d[".tag"] = .str("paper_doc_delete_comment") + return .dictionary(d) + case .paperDocDownload(let arg): + var d = try Serialization.getFields(TeamLog.PaperDocDownloadTypeSerializer().serialize(arg)) + d[".tag"] = .str("paper_doc_download") + return .dictionary(d) + case .paperDocEdit(let arg): + var d = try Serialization.getFields(TeamLog.PaperDocEditTypeSerializer().serialize(arg)) + d[".tag"] = .str("paper_doc_edit") + return .dictionary(d) + case .paperDocEditComment(let arg): + var d = try Serialization.getFields(TeamLog.PaperDocEditCommentTypeSerializer().serialize(arg)) + d[".tag"] = .str("paper_doc_edit_comment") + return .dictionary(d) + case .paperDocFollowed(let arg): + var d = try Serialization.getFields(TeamLog.PaperDocFollowedTypeSerializer().serialize(arg)) + d[".tag"] = .str("paper_doc_followed") + return .dictionary(d) + case .paperDocMention(let arg): + var d = try Serialization.getFields(TeamLog.PaperDocMentionTypeSerializer().serialize(arg)) + d[".tag"] = .str("paper_doc_mention") + return .dictionary(d) + case .paperDocOwnershipChanged(let arg): + var d = try Serialization.getFields(TeamLog.PaperDocOwnershipChangedTypeSerializer().serialize(arg)) + d[".tag"] = .str("paper_doc_ownership_changed") + return .dictionary(d) + case .paperDocRequestAccess(let arg): + var d = try Serialization.getFields(TeamLog.PaperDocRequestAccessTypeSerializer().serialize(arg)) + d[".tag"] = .str("paper_doc_request_access") + return .dictionary(d) + case .paperDocResolveComment(let arg): + var d = try Serialization.getFields(TeamLog.PaperDocResolveCommentTypeSerializer().serialize(arg)) + d[".tag"] = .str("paper_doc_resolve_comment") + return .dictionary(d) + case .paperDocRevert(let arg): + var d = try Serialization.getFields(TeamLog.PaperDocRevertTypeSerializer().serialize(arg)) + d[".tag"] = .str("paper_doc_revert") + return .dictionary(d) + case .paperDocSlackShare(let arg): + var d = try Serialization.getFields(TeamLog.PaperDocSlackShareTypeSerializer().serialize(arg)) + d[".tag"] = .str("paper_doc_slack_share") + return .dictionary(d) + case .paperDocTeamInvite(let arg): + var d = try Serialization.getFields(TeamLog.PaperDocTeamInviteTypeSerializer().serialize(arg)) + d[".tag"] = .str("paper_doc_team_invite") + return .dictionary(d) + case .paperDocTrashed(let arg): + var d = try Serialization.getFields(TeamLog.PaperDocTrashedTypeSerializer().serialize(arg)) + d[".tag"] = .str("paper_doc_trashed") + return .dictionary(d) + case .paperDocUnresolveComment(let arg): + var d = try Serialization.getFields(TeamLog.PaperDocUnresolveCommentTypeSerializer().serialize(arg)) + d[".tag"] = .str("paper_doc_unresolve_comment") + return .dictionary(d) + case .paperDocUntrashed(let arg): + var d = try Serialization.getFields(TeamLog.PaperDocUntrashedTypeSerializer().serialize(arg)) + d[".tag"] = .str("paper_doc_untrashed") + return .dictionary(d) + case .paperDocView(let arg): + var d = try Serialization.getFields(TeamLog.PaperDocViewTypeSerializer().serialize(arg)) + d[".tag"] = .str("paper_doc_view") + return .dictionary(d) + case .paperExternalViewAllow(let arg): + var d = try Serialization.getFields(TeamLog.PaperExternalViewAllowTypeSerializer().serialize(arg)) + d[".tag"] = .str("paper_external_view_allow") + return .dictionary(d) + case .paperExternalViewDefaultTeam(let arg): + var d = try Serialization.getFields(TeamLog.PaperExternalViewDefaultTeamTypeSerializer().serialize(arg)) + d[".tag"] = .str("paper_external_view_default_team") + return .dictionary(d) + case .paperExternalViewForbid(let arg): + var d = try Serialization.getFields(TeamLog.PaperExternalViewForbidTypeSerializer().serialize(arg)) + d[".tag"] = .str("paper_external_view_forbid") + return .dictionary(d) + case .paperFolderChangeSubscription(let arg): + var d = try Serialization.getFields(TeamLog.PaperFolderChangeSubscriptionTypeSerializer().serialize(arg)) + d[".tag"] = .str("paper_folder_change_subscription") + return .dictionary(d) + case .paperFolderDeleted(let arg): + var d = try Serialization.getFields(TeamLog.PaperFolderDeletedTypeSerializer().serialize(arg)) + d[".tag"] = .str("paper_folder_deleted") + return .dictionary(d) + case .paperFolderFollowed(let arg): + var d = try Serialization.getFields(TeamLog.PaperFolderFollowedTypeSerializer().serialize(arg)) + d[".tag"] = .str("paper_folder_followed") + return .dictionary(d) + case .paperFolderTeamInvite(let arg): + var d = try Serialization.getFields(TeamLog.PaperFolderTeamInviteTypeSerializer().serialize(arg)) + d[".tag"] = .str("paper_folder_team_invite") + return .dictionary(d) + case .paperPublishedLinkChangePermission(let arg): + var d = try Serialization.getFields(TeamLog.PaperPublishedLinkChangePermissionTypeSerializer().serialize(arg)) + d[".tag"] = .str("paper_published_link_change_permission") + return .dictionary(d) + case .paperPublishedLinkCreate(let arg): + var d = try Serialization.getFields(TeamLog.PaperPublishedLinkCreateTypeSerializer().serialize(arg)) + d[".tag"] = .str("paper_published_link_create") + return .dictionary(d) + case .paperPublishedLinkDisabled(let arg): + var d = try Serialization.getFields(TeamLog.PaperPublishedLinkDisabledTypeSerializer().serialize(arg)) + d[".tag"] = .str("paper_published_link_disabled") + return .dictionary(d) + case .paperPublishedLinkView(let arg): + var d = try Serialization.getFields(TeamLog.PaperPublishedLinkViewTypeSerializer().serialize(arg)) + d[".tag"] = .str("paper_published_link_view") + return .dictionary(d) + case .passwordChange(let arg): + var d = try Serialization.getFields(TeamLog.PasswordChangeTypeSerializer().serialize(arg)) + d[".tag"] = .str("password_change") + return .dictionary(d) + case .passwordReset(let arg): + var d = try Serialization.getFields(TeamLog.PasswordResetTypeSerializer().serialize(arg)) + d[".tag"] = .str("password_reset") + return .dictionary(d) + case .passwordResetAll(let arg): + var d = try Serialization.getFields(TeamLog.PasswordResetAllTypeSerializer().serialize(arg)) + d[".tag"] = .str("password_reset_all") + return .dictionary(d) + case .protectActionAddCollaborator(let arg): + var d = try Serialization.getFields(TeamLog.ProtectActionAddCollaboratorTypeSerializer().serialize(arg)) + d[".tag"] = .str("protect_action_add_collaborator") + return .dictionary(d) + case .protectActionAddLink(let arg): + var d = try Serialization.getFields(TeamLog.ProtectActionAddLinkTypeSerializer().serialize(arg)) + d[".tag"] = .str("protect_action_add_link") + return .dictionary(d) + case .protectActionDelete(let arg): + var d = try Serialization.getFields(TeamLog.ProtectActionDeleteTypeSerializer().serialize(arg)) + d[".tag"] = .str("protect_action_delete") + return .dictionary(d) + case .protectActionExport(let arg): + var d = try Serialization.getFields(TeamLog.ProtectActionExportTypeSerializer().serialize(arg)) + d[".tag"] = .str("protect_action_export") + return .dictionary(d) + case .protectActionRemoveCollaborator(let arg): + var d = try Serialization.getFields(TeamLog.ProtectActionRemoveCollaboratorTypeSerializer().serialize(arg)) + d[".tag"] = .str("protect_action_remove_collaborator") + return .dictionary(d) + case .protectActionRemoveLink(let arg): + var d = try Serialization.getFields(TeamLog.ProtectActionRemoveLinkTypeSerializer().serialize(arg)) + d[".tag"] = .str("protect_action_remove_link") + return .dictionary(d) + case .protectActionStopSharing(let arg): + var d = try Serialization.getFields(TeamLog.ProtectActionStopSharingTypeSerializer().serialize(arg)) + d[".tag"] = .str("protect_action_stop_sharing") + return .dictionary(d) + case .protectInternalDomainsChanged(let arg): + var d = try Serialization.getFields(TeamLog.ProtectInternalDomainsChangedTypeSerializer().serialize(arg)) + d[".tag"] = .str("protect_internal_domains_changed") + return .dictionary(d) + case .classificationCreateReport(let arg): + var d = try Serialization.getFields(TeamLog.ClassificationCreateReportTypeSerializer().serialize(arg)) + d[".tag"] = .str("classification_create_report") + return .dictionary(d) + case .classificationCreateReportFail(let arg): + var d = try Serialization.getFields(TeamLog.ClassificationCreateReportFailTypeSerializer().serialize(arg)) + d[".tag"] = .str("classification_create_report_fail") + return .dictionary(d) + case .emmCreateExceptionsReport(let arg): + var d = try Serialization.getFields(TeamLog.EmmCreateExceptionsReportTypeSerializer().serialize(arg)) + d[".tag"] = .str("emm_create_exceptions_report") + return .dictionary(d) + case .emmCreateUsageReport(let arg): + var d = try Serialization.getFields(TeamLog.EmmCreateUsageReportTypeSerializer().serialize(arg)) + d[".tag"] = .str("emm_create_usage_report") + return .dictionary(d) + case .exportMembersReport(let arg): + var d = try Serialization.getFields(TeamLog.ExportMembersReportTypeSerializer().serialize(arg)) + d[".tag"] = .str("export_members_report") + return .dictionary(d) + case .exportMembersReportFail(let arg): + var d = try Serialization.getFields(TeamLog.ExportMembersReportFailTypeSerializer().serialize(arg)) + d[".tag"] = .str("export_members_report_fail") + return .dictionary(d) + case .externalSharingCreateReport(let arg): + var d = try Serialization.getFields(TeamLog.ExternalSharingCreateReportTypeSerializer().serialize(arg)) + d[".tag"] = .str("external_sharing_create_report") + return .dictionary(d) + case .externalSharingReportFailed(let arg): + var d = try Serialization.getFields(TeamLog.ExternalSharingReportFailedTypeSerializer().serialize(arg)) + d[".tag"] = .str("external_sharing_report_failed") + return .dictionary(d) + case .memberAccessDetailsCreateReport(let arg): + var d = try Serialization.getFields(TeamLog.MemberAccessDetailsCreateReportTypeSerializer().serialize(arg)) + d[".tag"] = .str("member_access_details_create_report") + return .dictionary(d) + case .memberAccessDetailsCreateReportFailed(let arg): + var d = try Serialization.getFields(TeamLog.MemberAccessDetailsCreateReportFailedTypeSerializer().serialize(arg)) + d[".tag"] = .str("member_access_details_create_report_failed") + return .dictionary(d) + case .noExpirationLinkGenCreateReport(let arg): + var d = try Serialization.getFields(TeamLog.NoExpirationLinkGenCreateReportTypeSerializer().serialize(arg)) + d[".tag"] = .str("no_expiration_link_gen_create_report") + return .dictionary(d) + case .noExpirationLinkGenReportFailed(let arg): + var d = try Serialization.getFields(TeamLog.NoExpirationLinkGenReportFailedTypeSerializer().serialize(arg)) + d[".tag"] = .str("no_expiration_link_gen_report_failed") + return .dictionary(d) + case .noPasswordLinkGenCreateReport(let arg): + var d = try Serialization.getFields(TeamLog.NoPasswordLinkGenCreateReportTypeSerializer().serialize(arg)) + d[".tag"] = .str("no_password_link_gen_create_report") + return .dictionary(d) + case .noPasswordLinkGenReportFailed(let arg): + var d = try Serialization.getFields(TeamLog.NoPasswordLinkGenReportFailedTypeSerializer().serialize(arg)) + d[".tag"] = .str("no_password_link_gen_report_failed") + return .dictionary(d) + case .noPasswordLinkViewCreateReport(let arg): + var d = try Serialization.getFields(TeamLog.NoPasswordLinkViewCreateReportTypeSerializer().serialize(arg)) + d[".tag"] = .str("no_password_link_view_create_report") + return .dictionary(d) + case .noPasswordLinkViewReportFailed(let arg): + var d = try Serialization.getFields(TeamLog.NoPasswordLinkViewReportFailedTypeSerializer().serialize(arg)) + d[".tag"] = .str("no_password_link_view_report_failed") + return .dictionary(d) + case .outdatedLinkViewCreateReport(let arg): + var d = try Serialization.getFields(TeamLog.OutdatedLinkViewCreateReportTypeSerializer().serialize(arg)) + d[".tag"] = .str("outdated_link_view_create_report") + return .dictionary(d) + case .outdatedLinkViewReportFailed(let arg): + var d = try Serialization.getFields(TeamLog.OutdatedLinkViewReportFailedTypeSerializer().serialize(arg)) + d[".tag"] = .str("outdated_link_view_report_failed") + return .dictionary(d) + case .paperAdminExportStart(let arg): + var d = try Serialization.getFields(TeamLog.PaperAdminExportStartTypeSerializer().serialize(arg)) + d[".tag"] = .str("paper_admin_export_start") + return .dictionary(d) + case .ransomwareAlertCreateReport(let arg): + var d = try Serialization.getFields(TeamLog.RansomwareAlertCreateReportTypeSerializer().serialize(arg)) + d[".tag"] = .str("ransomware_alert_create_report") + return .dictionary(d) + case .ransomwareAlertCreateReportFailed(let arg): + var d = try Serialization.getFields(TeamLog.RansomwareAlertCreateReportFailedTypeSerializer().serialize(arg)) + d[".tag"] = .str("ransomware_alert_create_report_failed") + return .dictionary(d) + case .sharedFoldersCreateReport(let arg): + var d = try Serialization.getFields(TeamLog.SharedFoldersCreateReportTypeSerializer().serialize(arg)) + d[".tag"] = .str("shared_folders_create_report") + return .dictionary(d) + case .sharedFoldersCreateReportFailed(let arg): + var d = try Serialization.getFields(TeamLog.SharedFoldersCreateReportFailedTypeSerializer().serialize(arg)) + d[".tag"] = .str("shared_folders_create_report_failed") + return .dictionary(d) + case .smartSyncCreateAdminPrivilegeReport(let arg): + var d = try Serialization.getFields(TeamLog.SmartSyncCreateAdminPrivilegeReportTypeSerializer().serialize(arg)) + d[".tag"] = .str("smart_sync_create_admin_privilege_report") + return .dictionary(d) + case .teamActivityCreateReport(let arg): + var d = try Serialization.getFields(TeamLog.TeamActivityCreateReportTypeSerializer().serialize(arg)) + d[".tag"] = .str("team_activity_create_report") + return .dictionary(d) + case .teamActivityCreateReportFail(let arg): + var d = try Serialization.getFields(TeamLog.TeamActivityCreateReportFailTypeSerializer().serialize(arg)) + d[".tag"] = .str("team_activity_create_report_fail") + return .dictionary(d) + case .teamFoldersCreateReport(let arg): + var d = try Serialization.getFields(TeamLog.TeamFoldersCreateReportTypeSerializer().serialize(arg)) + d[".tag"] = .str("team_folders_create_report") + return .dictionary(d) + case .teamFoldersCreateReportFailed(let arg): + var d = try Serialization.getFields(TeamLog.TeamFoldersCreateReportFailedTypeSerializer().serialize(arg)) + d[".tag"] = .str("team_folders_create_report_failed") + return .dictionary(d) + case .teamStorageCreateReport(let arg): + var d = try Serialization.getFields(TeamLog.TeamStorageCreateReportTypeSerializer().serialize(arg)) + d[".tag"] = .str("team_storage_create_report") + return .dictionary(d) + case .teamStorageCreateReportFailed(let arg): + var d = try Serialization.getFields(TeamLog.TeamStorageCreateReportFailedTypeSerializer().serialize(arg)) + d[".tag"] = .str("team_storage_create_report_failed") + return .dictionary(d) + case .collectionShare(let arg): + var d = try Serialization.getFields(TeamLog.CollectionShareTypeSerializer().serialize(arg)) + d[".tag"] = .str("collection_share") + return .dictionary(d) + case .fileTransfersFileAdd(let arg): + var d = try Serialization.getFields(TeamLog.FileTransfersFileAddTypeSerializer().serialize(arg)) + d[".tag"] = .str("file_transfers_file_add") + return .dictionary(d) + case .fileTransfersTransferDelete(let arg): + var d = try Serialization.getFields(TeamLog.FileTransfersTransferDeleteTypeSerializer().serialize(arg)) + d[".tag"] = .str("file_transfers_transfer_delete") + return .dictionary(d) + case .fileTransfersTransferDownload(let arg): + var d = try Serialization.getFields(TeamLog.FileTransfersTransferDownloadTypeSerializer().serialize(arg)) + d[".tag"] = .str("file_transfers_transfer_download") + return .dictionary(d) + case .fileTransfersTransferSend(let arg): + var d = try Serialization.getFields(TeamLog.FileTransfersTransferSendTypeSerializer().serialize(arg)) + d[".tag"] = .str("file_transfers_transfer_send") + return .dictionary(d) + case .fileTransfersTransferView(let arg): + var d = try Serialization.getFields(TeamLog.FileTransfersTransferViewTypeSerializer().serialize(arg)) + d[".tag"] = .str("file_transfers_transfer_view") + return .dictionary(d) + case .mediaHubProjectTeamAdd(let arg): + var d = try Serialization.getFields(TeamLog.MediaHubProjectTeamAddTypeSerializer().serialize(arg)) + d[".tag"] = .str("media_hub_project_team_add") + return .dictionary(d) + case .mediaHubProjectTeamDelete(let arg): + var d = try Serialization.getFields(TeamLog.MediaHubProjectTeamDeleteTypeSerializer().serialize(arg)) + d[".tag"] = .str("media_hub_project_team_delete") + return .dictionary(d) + case .mediaHubProjectTeamRoleChanged(let arg): + var d = try Serialization.getFields(TeamLog.MediaHubProjectTeamRoleChangedTypeSerializer().serialize(arg)) + d[".tag"] = .str("media_hub_project_team_role_changed") + return .dictionary(d) + case .mediaHubSharedLinkAudienceChanged(let arg): + var d = try Serialization.getFields(TeamLog.MediaHubSharedLinkAudienceChangedTypeSerializer().serialize(arg)) + d[".tag"] = .str("media_hub_shared_link_audience_changed") + return .dictionary(d) + case .mediaHubSharedLinkCreated(let arg): + var d = try Serialization.getFields(TeamLog.MediaHubSharedLinkCreatedTypeSerializer().serialize(arg)) + d[".tag"] = .str("media_hub_shared_link_created") + return .dictionary(d) + case .mediaHubSharedLinkDownloadSettingChanged(let arg): + var d = try Serialization.getFields(TeamLog.MediaHubSharedLinkDownloadSettingChangedTypeSerializer().serialize(arg)) + d[".tag"] = .str("media_hub_shared_link_download_setting_changed") + return .dictionary(d) + case .mediaHubSharedLinkRevoked(let arg): + var d = try Serialization.getFields(TeamLog.MediaHubSharedLinkRevokedTypeSerializer().serialize(arg)) + d[".tag"] = .str("media_hub_shared_link_revoked") + return .dictionary(d) + case .noteAclInviteOnly(let arg): + var d = try Serialization.getFields(TeamLog.NoteAclInviteOnlyTypeSerializer().serialize(arg)) + d[".tag"] = .str("note_acl_invite_only") + return .dictionary(d) + case .noteAclLink(let arg): + var d = try Serialization.getFields(TeamLog.NoteAclLinkTypeSerializer().serialize(arg)) + d[".tag"] = .str("note_acl_link") + return .dictionary(d) + case .noteAclTeamLink(let arg): + var d = try Serialization.getFields(TeamLog.NoteAclTeamLinkTypeSerializer().serialize(arg)) + d[".tag"] = .str("note_acl_team_link") + return .dictionary(d) + case .noteShared(let arg): + var d = try Serialization.getFields(TeamLog.NoteSharedTypeSerializer().serialize(arg)) + d[".tag"] = .str("note_shared") + return .dictionary(d) + case .noteShareReceive(let arg): + var d = try Serialization.getFields(TeamLog.NoteShareReceiveTypeSerializer().serialize(arg)) + d[".tag"] = .str("note_share_receive") + return .dictionary(d) + case .openNoteShared(let arg): + var d = try Serialization.getFields(TeamLog.OpenNoteSharedTypeSerializer().serialize(arg)) + d[".tag"] = .str("open_note_shared") + return .dictionary(d) + case .replayFileSharedLinkCreated(let arg): + var d = try Serialization.getFields(TeamLog.ReplayFileSharedLinkCreatedTypeSerializer().serialize(arg)) + d[".tag"] = .str("replay_file_shared_link_created") + return .dictionary(d) + case .replayFileSharedLinkModified(let arg): + var d = try Serialization.getFields(TeamLog.ReplayFileSharedLinkModifiedTypeSerializer().serialize(arg)) + d[".tag"] = .str("replay_file_shared_link_modified") + return .dictionary(d) + case .replayProjectTeamAdd(let arg): + var d = try Serialization.getFields(TeamLog.ReplayProjectTeamAddTypeSerializer().serialize(arg)) + d[".tag"] = .str("replay_project_team_add") + return .dictionary(d) + case .replayProjectTeamDelete(let arg): + var d = try Serialization.getFields(TeamLog.ReplayProjectTeamDeleteTypeSerializer().serialize(arg)) + d[".tag"] = .str("replay_project_team_delete") + return .dictionary(d) + case .sendAndTrackFileAdded(let arg): + var d = try Serialization.getFields(TeamLog.SendAndTrackFileAddedTypeSerializer().serialize(arg)) + d[".tag"] = .str("send_and_track_file_added") + return .dictionary(d) + case .sendAndTrackFileRenamed(let arg): + var d = try Serialization.getFields(TeamLog.SendAndTrackFileRenamedTypeSerializer().serialize(arg)) + d[".tag"] = .str("send_and_track_file_renamed") + return .dictionary(d) + case .sendAndTrackFileUpdated(let arg): + var d = try Serialization.getFields(TeamLog.SendAndTrackFileUpdatedTypeSerializer().serialize(arg)) + d[".tag"] = .str("send_and_track_file_updated") + return .dictionary(d) + case .sendAndTrackLinkCreated(let arg): + var d = try Serialization.getFields(TeamLog.SendAndTrackLinkCreatedTypeSerializer().serialize(arg)) + d[".tag"] = .str("send_and_track_link_created") + return .dictionary(d) + case .sendAndTrackLinkDeleted(let arg): + var d = try Serialization.getFields(TeamLog.SendAndTrackLinkDeletedTypeSerializer().serialize(arg)) + d[".tag"] = .str("send_and_track_link_deleted") + return .dictionary(d) + case .sendAndTrackLinkUpdated(let arg): + var d = try Serialization.getFields(TeamLog.SendAndTrackLinkUpdatedTypeSerializer().serialize(arg)) + d[".tag"] = .str("send_and_track_link_updated") + return .dictionary(d) + case .sendAndTrackLinkViewed(let arg): + var d = try Serialization.getFields(TeamLog.SendAndTrackLinkViewedTypeSerializer().serialize(arg)) + d[".tag"] = .str("send_and_track_link_viewed") + return .dictionary(d) + case .sendAndTrackRemovedFileAndAssociatedLinks(let arg): + var d = try Serialization.getFields(TeamLog.SendAndTrackRemovedFileAndAssociatedLinksTypeSerializer().serialize(arg)) + d[".tag"] = .str("send_and_track_removed_file_and_associated_links") + return .dictionary(d) + case .sfAddGroup(let arg): + var d = try Serialization.getFields(TeamLog.SfAddGroupTypeSerializer().serialize(arg)) + d[".tag"] = .str("sf_add_group") + return .dictionary(d) + case .sfAllowNonMembersToViewSharedLinks(let arg): + var d = try Serialization.getFields(TeamLog.SfAllowNonMembersToViewSharedLinksTypeSerializer().serialize(arg)) + d[".tag"] = .str("sf_allow_non_members_to_view_shared_links") + return .dictionary(d) + case .sfExternalInviteWarn(let arg): + var d = try Serialization.getFields(TeamLog.SfExternalInviteWarnTypeSerializer().serialize(arg)) + d[".tag"] = .str("sf_external_invite_warn") + return .dictionary(d) + case .sfFbInvite(let arg): + var d = try Serialization.getFields(TeamLog.SfFbInviteTypeSerializer().serialize(arg)) + d[".tag"] = .str("sf_fb_invite") + return .dictionary(d) + case .sfFbInviteChangeRole(let arg): + var d = try Serialization.getFields(TeamLog.SfFbInviteChangeRoleTypeSerializer().serialize(arg)) + d[".tag"] = .str("sf_fb_invite_change_role") + return .dictionary(d) + case .sfFbUninvite(let arg): + var d = try Serialization.getFields(TeamLog.SfFbUninviteTypeSerializer().serialize(arg)) + d[".tag"] = .str("sf_fb_uninvite") + return .dictionary(d) + case .sfInviteGroup(let arg): + var d = try Serialization.getFields(TeamLog.SfInviteGroupTypeSerializer().serialize(arg)) + d[".tag"] = .str("sf_invite_group") + return .dictionary(d) + case .sfTeamGrantAccess(let arg): + var d = try Serialization.getFields(TeamLog.SfTeamGrantAccessTypeSerializer().serialize(arg)) + d[".tag"] = .str("sf_team_grant_access") + return .dictionary(d) + case .sfTeamInvite(let arg): + var d = try Serialization.getFields(TeamLog.SfTeamInviteTypeSerializer().serialize(arg)) + d[".tag"] = .str("sf_team_invite") + return .dictionary(d) + case .sfTeamInviteChangeRole(let arg): + var d = try Serialization.getFields(TeamLog.SfTeamInviteChangeRoleTypeSerializer().serialize(arg)) + d[".tag"] = .str("sf_team_invite_change_role") + return .dictionary(d) + case .sfTeamJoin(let arg): + var d = try Serialization.getFields(TeamLog.SfTeamJoinTypeSerializer().serialize(arg)) + d[".tag"] = .str("sf_team_join") + return .dictionary(d) + case .sfTeamJoinFromOobLink(let arg): + var d = try Serialization.getFields(TeamLog.SfTeamJoinFromOobLinkTypeSerializer().serialize(arg)) + d[".tag"] = .str("sf_team_join_from_oob_link") + return .dictionary(d) + case .sfTeamUninvite(let arg): + var d = try Serialization.getFields(TeamLog.SfTeamUninviteTypeSerializer().serialize(arg)) + d[".tag"] = .str("sf_team_uninvite") + return .dictionary(d) + case .sharedContentAddInvitees(let arg): + var d = try Serialization.getFields(TeamLog.SharedContentAddInviteesTypeSerializer().serialize(arg)) + d[".tag"] = .str("shared_content_add_invitees") + return .dictionary(d) + case .sharedContentAddLinkExpiry(let arg): + var d = try Serialization.getFields(TeamLog.SharedContentAddLinkExpiryTypeSerializer().serialize(arg)) + d[".tag"] = .str("shared_content_add_link_expiry") + return .dictionary(d) + case .sharedContentAddLinkPassword(let arg): + var d = try Serialization.getFields(TeamLog.SharedContentAddLinkPasswordTypeSerializer().serialize(arg)) + d[".tag"] = .str("shared_content_add_link_password") + return .dictionary(d) + case .sharedContentAddMember(let arg): + var d = try Serialization.getFields(TeamLog.SharedContentAddMemberTypeSerializer().serialize(arg)) + d[".tag"] = .str("shared_content_add_member") + return .dictionary(d) + case .sharedContentChangeDownloadsPolicy(let arg): + var d = try Serialization.getFields(TeamLog.SharedContentChangeDownloadsPolicyTypeSerializer().serialize(arg)) + d[".tag"] = .str("shared_content_change_downloads_policy") + return .dictionary(d) + case .sharedContentChangeInviteeRole(let arg): + var d = try Serialization.getFields(TeamLog.SharedContentChangeInviteeRoleTypeSerializer().serialize(arg)) + d[".tag"] = .str("shared_content_change_invitee_role") + return .dictionary(d) + case .sharedContentChangeLinkAudience(let arg): + var d = try Serialization.getFields(TeamLog.SharedContentChangeLinkAudienceTypeSerializer().serialize(arg)) + d[".tag"] = .str("shared_content_change_link_audience") + return .dictionary(d) + case .sharedContentChangeLinkExpiry(let arg): + var d = try Serialization.getFields(TeamLog.SharedContentChangeLinkExpiryTypeSerializer().serialize(arg)) + d[".tag"] = .str("shared_content_change_link_expiry") + return .dictionary(d) + case .sharedContentChangeLinkPassword(let arg): + var d = try Serialization.getFields(TeamLog.SharedContentChangeLinkPasswordTypeSerializer().serialize(arg)) + d[".tag"] = .str("shared_content_change_link_password") + return .dictionary(d) + case .sharedContentChangeMemberRole(let arg): + var d = try Serialization.getFields(TeamLog.SharedContentChangeMemberRoleTypeSerializer().serialize(arg)) + d[".tag"] = .str("shared_content_change_member_role") + return .dictionary(d) + case .sharedContentChangeViewerInfoPolicy(let arg): + var d = try Serialization.getFields(TeamLog.SharedContentChangeViewerInfoPolicyTypeSerializer().serialize(arg)) + d[".tag"] = .str("shared_content_change_viewer_info_policy") + return .dictionary(d) + case .sharedContentClaimInvitation(let arg): + var d = try Serialization.getFields(TeamLog.SharedContentClaimInvitationTypeSerializer().serialize(arg)) + d[".tag"] = .str("shared_content_claim_invitation") + return .dictionary(d) + case .sharedContentCopy(let arg): + var d = try Serialization.getFields(TeamLog.SharedContentCopyTypeSerializer().serialize(arg)) + d[".tag"] = .str("shared_content_copy") + return .dictionary(d) + case .sharedContentDownload(let arg): + var d = try Serialization.getFields(TeamLog.SharedContentDownloadTypeSerializer().serialize(arg)) + d[".tag"] = .str("shared_content_download") + return .dictionary(d) + case .sharedContentRelinquishMembership(let arg): + var d = try Serialization.getFields(TeamLog.SharedContentRelinquishMembershipTypeSerializer().serialize(arg)) + d[".tag"] = .str("shared_content_relinquish_membership") + return .dictionary(d) + case .sharedContentRemoveInvitees(let arg): + var d = try Serialization.getFields(TeamLog.SharedContentRemoveInviteesTypeSerializer().serialize(arg)) + d[".tag"] = .str("shared_content_remove_invitees") + return .dictionary(d) + case .sharedContentRemoveLinkExpiry(let arg): + var d = try Serialization.getFields(TeamLog.SharedContentRemoveLinkExpiryTypeSerializer().serialize(arg)) + d[".tag"] = .str("shared_content_remove_link_expiry") + return .dictionary(d) + case .sharedContentRemoveLinkPassword(let arg): + var d = try Serialization.getFields(TeamLog.SharedContentRemoveLinkPasswordTypeSerializer().serialize(arg)) + d[".tag"] = .str("shared_content_remove_link_password") + return .dictionary(d) + case .sharedContentRemoveMember(let arg): + var d = try Serialization.getFields(TeamLog.SharedContentRemoveMemberTypeSerializer().serialize(arg)) + d[".tag"] = .str("shared_content_remove_member") + return .dictionary(d) + case .sharedContentRequestAccess(let arg): + var d = try Serialization.getFields(TeamLog.SharedContentRequestAccessTypeSerializer().serialize(arg)) + d[".tag"] = .str("shared_content_request_access") + return .dictionary(d) + case .sharedContentRestoreInvitees(let arg): + var d = try Serialization.getFields(TeamLog.SharedContentRestoreInviteesTypeSerializer().serialize(arg)) + d[".tag"] = .str("shared_content_restore_invitees") + return .dictionary(d) + case .sharedContentRestoreMember(let arg): + var d = try Serialization.getFields(TeamLog.SharedContentRestoreMemberTypeSerializer().serialize(arg)) + d[".tag"] = .str("shared_content_restore_member") + return .dictionary(d) + case .sharedContentUnshare(let arg): + var d = try Serialization.getFields(TeamLog.SharedContentUnshareTypeSerializer().serialize(arg)) + d[".tag"] = .str("shared_content_unshare") + return .dictionary(d) + case .sharedContentView(let arg): + var d = try Serialization.getFields(TeamLog.SharedContentViewTypeSerializer().serialize(arg)) + d[".tag"] = .str("shared_content_view") + return .dictionary(d) + case .sharedFolderChangeLinkPolicy(let arg): + var d = try Serialization.getFields(TeamLog.SharedFolderChangeLinkPolicyTypeSerializer().serialize(arg)) + d[".tag"] = .str("shared_folder_change_link_policy") + return .dictionary(d) + case .sharedFolderChangeMembersInheritancePolicy(let arg): + var d = try Serialization.getFields(TeamLog.SharedFolderChangeMembersInheritancePolicyTypeSerializer().serialize(arg)) + d[".tag"] = .str("shared_folder_change_members_inheritance_policy") + return .dictionary(d) + case .sharedFolderChangeMembersManagementPolicy(let arg): + var d = try Serialization.getFields(TeamLog.SharedFolderChangeMembersManagementPolicyTypeSerializer().serialize(arg)) + d[".tag"] = .str("shared_folder_change_members_management_policy") + return .dictionary(d) + case .sharedFolderChangeMembersPolicy(let arg): + var d = try Serialization.getFields(TeamLog.SharedFolderChangeMembersPolicyTypeSerializer().serialize(arg)) + d[".tag"] = .str("shared_folder_change_members_policy") + return .dictionary(d) + case .sharedFolderCreate(let arg): + var d = try Serialization.getFields(TeamLog.SharedFolderCreateTypeSerializer().serialize(arg)) + d[".tag"] = .str("shared_folder_create") + return .dictionary(d) + case .sharedFolderDeclineInvitation(let arg): + var d = try Serialization.getFields(TeamLog.SharedFolderDeclineInvitationTypeSerializer().serialize(arg)) + d[".tag"] = .str("shared_folder_decline_invitation") + return .dictionary(d) + case .sharedFolderMount(let arg): + var d = try Serialization.getFields(TeamLog.SharedFolderMountTypeSerializer().serialize(arg)) + d[".tag"] = .str("shared_folder_mount") + return .dictionary(d) + case .sharedFolderNest(let arg): + var d = try Serialization.getFields(TeamLog.SharedFolderNestTypeSerializer().serialize(arg)) + d[".tag"] = .str("shared_folder_nest") + return .dictionary(d) + case .sharedFolderTransferOwnership(let arg): + var d = try Serialization.getFields(TeamLog.SharedFolderTransferOwnershipTypeSerializer().serialize(arg)) + d[".tag"] = .str("shared_folder_transfer_ownership") + return .dictionary(d) + case .sharedFolderUnmount(let arg): + var d = try Serialization.getFields(TeamLog.SharedFolderUnmountTypeSerializer().serialize(arg)) + d[".tag"] = .str("shared_folder_unmount") + return .dictionary(d) + case .sharedLinkAddExpiry(let arg): + var d = try Serialization.getFields(TeamLog.SharedLinkAddExpiryTypeSerializer().serialize(arg)) + d[".tag"] = .str("shared_link_add_expiry") + return .dictionary(d) + case .sharedLinkChangeExpiry(let arg): + var d = try Serialization.getFields(TeamLog.SharedLinkChangeExpiryTypeSerializer().serialize(arg)) + d[".tag"] = .str("shared_link_change_expiry") + return .dictionary(d) + case .sharedLinkChangeVisibility(let arg): + var d = try Serialization.getFields(TeamLog.SharedLinkChangeVisibilityTypeSerializer().serialize(arg)) + d[".tag"] = .str("shared_link_change_visibility") + return .dictionary(d) + case .sharedLinkCopy(let arg): + var d = try Serialization.getFields(TeamLog.SharedLinkCopyTypeSerializer().serialize(arg)) + d[".tag"] = .str("shared_link_copy") + return .dictionary(d) + case .sharedLinkCreate(let arg): + var d = try Serialization.getFields(TeamLog.SharedLinkCreateTypeSerializer().serialize(arg)) + d[".tag"] = .str("shared_link_create") + return .dictionary(d) + case .sharedLinkDisable(let arg): + var d = try Serialization.getFields(TeamLog.SharedLinkDisableTypeSerializer().serialize(arg)) + d[".tag"] = .str("shared_link_disable") + return .dictionary(d) + case .sharedLinkDownload(let arg): + var d = try Serialization.getFields(TeamLog.SharedLinkDownloadTypeSerializer().serialize(arg)) + d[".tag"] = .str("shared_link_download") + return .dictionary(d) + case .sharedLinkRemoveExpiry(let arg): + var d = try Serialization.getFields(TeamLog.SharedLinkRemoveExpiryTypeSerializer().serialize(arg)) + d[".tag"] = .str("shared_link_remove_expiry") + return .dictionary(d) + case .sharedLinkRemoveVisitor(let arg): + var d = try Serialization.getFields(TeamLog.SharedLinkRemoveVisitorTypeSerializer().serialize(arg)) + d[".tag"] = .str("shared_link_remove_visitor") + return .dictionary(d) + case .sharedLinkSettingsAddExpiration(let arg): + var d = try Serialization.getFields(TeamLog.SharedLinkSettingsAddExpirationTypeSerializer().serialize(arg)) + d[".tag"] = .str("shared_link_settings_add_expiration") + return .dictionary(d) + case .sharedLinkSettingsAddPassword(let arg): + var d = try Serialization.getFields(TeamLog.SharedLinkSettingsAddPasswordTypeSerializer().serialize(arg)) + d[".tag"] = .str("shared_link_settings_add_password") + return .dictionary(d) + case .sharedLinkSettingsAllowDownloadDisabled(let arg): + var d = try Serialization.getFields(TeamLog.SharedLinkSettingsAllowDownloadDisabledTypeSerializer().serialize(arg)) + d[".tag"] = .str("shared_link_settings_allow_download_disabled") + return .dictionary(d) + case .sharedLinkSettingsAllowDownloadEnabled(let arg): + var d = try Serialization.getFields(TeamLog.SharedLinkSettingsAllowDownloadEnabledTypeSerializer().serialize(arg)) + d[".tag"] = .str("shared_link_settings_allow_download_enabled") + return .dictionary(d) + case .sharedLinkSettingsChangeAudience(let arg): + var d = try Serialization.getFields(TeamLog.SharedLinkSettingsChangeAudienceTypeSerializer().serialize(arg)) + d[".tag"] = .str("shared_link_settings_change_audience") + return .dictionary(d) + case .sharedLinkSettingsChangeExpiration(let arg): + var d = try Serialization.getFields(TeamLog.SharedLinkSettingsChangeExpirationTypeSerializer().serialize(arg)) + d[".tag"] = .str("shared_link_settings_change_expiration") + return .dictionary(d) + case .sharedLinkSettingsChangePassword(let arg): + var d = try Serialization.getFields(TeamLog.SharedLinkSettingsChangePasswordTypeSerializer().serialize(arg)) + d[".tag"] = .str("shared_link_settings_change_password") + return .dictionary(d) + case .sharedLinkSettingsRemoveExpiration(let arg): + var d = try Serialization.getFields(TeamLog.SharedLinkSettingsRemoveExpirationTypeSerializer().serialize(arg)) + d[".tag"] = .str("shared_link_settings_remove_expiration") + return .dictionary(d) + case .sharedLinkSettingsRemovePassword(let arg): + var d = try Serialization.getFields(TeamLog.SharedLinkSettingsRemovePasswordTypeSerializer().serialize(arg)) + d[".tag"] = .str("shared_link_settings_remove_password") + return .dictionary(d) + case .sharedLinkShare(let arg): + var d = try Serialization.getFields(TeamLog.SharedLinkShareTypeSerializer().serialize(arg)) + d[".tag"] = .str("shared_link_share") + return .dictionary(d) + case .sharedLinkView(let arg): + var d = try Serialization.getFields(TeamLog.SharedLinkViewTypeSerializer().serialize(arg)) + d[".tag"] = .str("shared_link_view") + return .dictionary(d) + case .sharedNoteOpened(let arg): + var d = try Serialization.getFields(TeamLog.SharedNoteOpenedTypeSerializer().serialize(arg)) + d[".tag"] = .str("shared_note_opened") + return .dictionary(d) + case .shmodelDisableDownloads(let arg): + var d = try Serialization.getFields(TeamLog.ShmodelDisableDownloadsTypeSerializer().serialize(arg)) + d[".tag"] = .str("shmodel_disable_downloads") + return .dictionary(d) + case .shmodelEnableDownloads(let arg): + var d = try Serialization.getFields(TeamLog.ShmodelEnableDownloadsTypeSerializer().serialize(arg)) + d[".tag"] = .str("shmodel_enable_downloads") + return .dictionary(d) + case .shmodelGroupShare(let arg): + var d = try Serialization.getFields(TeamLog.ShmodelGroupShareTypeSerializer().serialize(arg)) + d[".tag"] = .str("shmodel_group_share") + return .dictionary(d) + case .showcaseAccessGranted(let arg): + var d = try Serialization.getFields(TeamLog.ShowcaseAccessGrantedTypeSerializer().serialize(arg)) + d[".tag"] = .str("showcase_access_granted") + return .dictionary(d) + case .showcaseAddMember(let arg): + var d = try Serialization.getFields(TeamLog.ShowcaseAddMemberTypeSerializer().serialize(arg)) + d[".tag"] = .str("showcase_add_member") + return .dictionary(d) + case .showcaseArchived(let arg): + var d = try Serialization.getFields(TeamLog.ShowcaseArchivedTypeSerializer().serialize(arg)) + d[".tag"] = .str("showcase_archived") + return .dictionary(d) + case .showcaseCreated(let arg): + var d = try Serialization.getFields(TeamLog.ShowcaseCreatedTypeSerializer().serialize(arg)) + d[".tag"] = .str("showcase_created") + return .dictionary(d) + case .showcaseDeleteComment(let arg): + var d = try Serialization.getFields(TeamLog.ShowcaseDeleteCommentTypeSerializer().serialize(arg)) + d[".tag"] = .str("showcase_delete_comment") + return .dictionary(d) + case .showcaseEdited(let arg): + var d = try Serialization.getFields(TeamLog.ShowcaseEditedTypeSerializer().serialize(arg)) + d[".tag"] = .str("showcase_edited") + return .dictionary(d) + case .showcaseEditComment(let arg): + var d = try Serialization.getFields(TeamLog.ShowcaseEditCommentTypeSerializer().serialize(arg)) + d[".tag"] = .str("showcase_edit_comment") + return .dictionary(d) + case .showcaseFileAdded(let arg): + var d = try Serialization.getFields(TeamLog.ShowcaseFileAddedTypeSerializer().serialize(arg)) + d[".tag"] = .str("showcase_file_added") + return .dictionary(d) + case .showcaseFileDownload(let arg): + var d = try Serialization.getFields(TeamLog.ShowcaseFileDownloadTypeSerializer().serialize(arg)) + d[".tag"] = .str("showcase_file_download") + return .dictionary(d) + case .showcaseFileRemoved(let arg): + var d = try Serialization.getFields(TeamLog.ShowcaseFileRemovedTypeSerializer().serialize(arg)) + d[".tag"] = .str("showcase_file_removed") + return .dictionary(d) + case .showcaseFileView(let arg): + var d = try Serialization.getFields(TeamLog.ShowcaseFileViewTypeSerializer().serialize(arg)) + d[".tag"] = .str("showcase_file_view") + return .dictionary(d) + case .showcasePermanentlyDeleted(let arg): + var d = try Serialization.getFields(TeamLog.ShowcasePermanentlyDeletedTypeSerializer().serialize(arg)) + d[".tag"] = .str("showcase_permanently_deleted") + return .dictionary(d) + case .showcasePostComment(let arg): + var d = try Serialization.getFields(TeamLog.ShowcasePostCommentTypeSerializer().serialize(arg)) + d[".tag"] = .str("showcase_post_comment") + return .dictionary(d) + case .showcaseRemoveMember(let arg): + var d = try Serialization.getFields(TeamLog.ShowcaseRemoveMemberTypeSerializer().serialize(arg)) + d[".tag"] = .str("showcase_remove_member") + return .dictionary(d) + case .showcaseRenamed(let arg): + var d = try Serialization.getFields(TeamLog.ShowcaseRenamedTypeSerializer().serialize(arg)) + d[".tag"] = .str("showcase_renamed") + return .dictionary(d) + case .showcaseRequestAccess(let arg): + var d = try Serialization.getFields(TeamLog.ShowcaseRequestAccessTypeSerializer().serialize(arg)) + d[".tag"] = .str("showcase_request_access") + return .dictionary(d) + case .showcaseResolveComment(let arg): + var d = try Serialization.getFields(TeamLog.ShowcaseResolveCommentTypeSerializer().serialize(arg)) + d[".tag"] = .str("showcase_resolve_comment") + return .dictionary(d) + case .showcaseRestored(let arg): + var d = try Serialization.getFields(TeamLog.ShowcaseRestoredTypeSerializer().serialize(arg)) + d[".tag"] = .str("showcase_restored") + return .dictionary(d) + case .showcaseTrashed(let arg): + var d = try Serialization.getFields(TeamLog.ShowcaseTrashedTypeSerializer().serialize(arg)) + d[".tag"] = .str("showcase_trashed") + return .dictionary(d) + case .showcaseTrashedDeprecated(let arg): + var d = try Serialization.getFields(TeamLog.ShowcaseTrashedDeprecatedTypeSerializer().serialize(arg)) + d[".tag"] = .str("showcase_trashed_deprecated") + return .dictionary(d) + case .showcaseUnresolveComment(let arg): + var d = try Serialization.getFields(TeamLog.ShowcaseUnresolveCommentTypeSerializer().serialize(arg)) + d[".tag"] = .str("showcase_unresolve_comment") + return .dictionary(d) + case .showcaseUntrashed(let arg): + var d = try Serialization.getFields(TeamLog.ShowcaseUntrashedTypeSerializer().serialize(arg)) + d[".tag"] = .str("showcase_untrashed") + return .dictionary(d) + case .showcaseUntrashedDeprecated(let arg): + var d = try Serialization.getFields(TeamLog.ShowcaseUntrashedDeprecatedTypeSerializer().serialize(arg)) + d[".tag"] = .str("showcase_untrashed_deprecated") + return .dictionary(d) + case .showcaseView(let arg): + var d = try Serialization.getFields(TeamLog.ShowcaseViewTypeSerializer().serialize(arg)) + d[".tag"] = .str("showcase_view") + return .dictionary(d) + case .signSignatureRequestCanceled(let arg): + var d = try Serialization.getFields(TeamLog.SignSignatureRequestCanceledTypeSerializer().serialize(arg)) + d[".tag"] = .str("sign_signature_request_canceled") + return .dictionary(d) + case .signSignatureRequestCompleted(let arg): + var d = try Serialization.getFields(TeamLog.SignSignatureRequestCompletedTypeSerializer().serialize(arg)) + d[".tag"] = .str("sign_signature_request_completed") + return .dictionary(d) + case .signSignatureRequestDeclined(let arg): + var d = try Serialization.getFields(TeamLog.SignSignatureRequestDeclinedTypeSerializer().serialize(arg)) + d[".tag"] = .str("sign_signature_request_declined") + return .dictionary(d) + case .signSignatureRequestOpened(let arg): + var d = try Serialization.getFields(TeamLog.SignSignatureRequestOpenedTypeSerializer().serialize(arg)) + d[".tag"] = .str("sign_signature_request_opened") + return .dictionary(d) + case .signSignatureRequestReminderSent(let arg): + var d = try Serialization.getFields(TeamLog.SignSignatureRequestReminderSentTypeSerializer().serialize(arg)) + d[".tag"] = .str("sign_signature_request_reminder_sent") + return .dictionary(d) + case .signSignatureRequestSent(let arg): + var d = try Serialization.getFields(TeamLog.SignSignatureRequestSentTypeSerializer().serialize(arg)) + d[".tag"] = .str("sign_signature_request_sent") + return .dictionary(d) + case .signTemplateCreated(let arg): + var d = try Serialization.getFields(TeamLog.SignTemplateCreatedTypeSerializer().serialize(arg)) + d[".tag"] = .str("sign_template_created") + return .dictionary(d) + case .signTemplateShared(let arg): + var d = try Serialization.getFields(TeamLog.SignTemplateSharedTypeSerializer().serialize(arg)) + d[".tag"] = .str("sign_template_shared") + return .dictionary(d) + case .riscSecurityEvent(let arg): + var d = try Serialization.getFields(TeamLog.RiscSecurityEventTypeSerializer().serialize(arg)) + d[".tag"] = .str("risc_security_event") + return .dictionary(d) + case .ssoAddCert(let arg): + var d = try Serialization.getFields(TeamLog.SsoAddCertTypeSerializer().serialize(arg)) + d[".tag"] = .str("sso_add_cert") + return .dictionary(d) + case .ssoAddLoginUrl(let arg): + var d = try Serialization.getFields(TeamLog.SsoAddLoginUrlTypeSerializer().serialize(arg)) + d[".tag"] = .str("sso_add_login_url") + return .dictionary(d) + case .ssoAddLogoutUrl(let arg): + var d = try Serialization.getFields(TeamLog.SsoAddLogoutUrlTypeSerializer().serialize(arg)) + d[".tag"] = .str("sso_add_logout_url") + return .dictionary(d) + case .ssoChangeCert(let arg): + var d = try Serialization.getFields(TeamLog.SsoChangeCertTypeSerializer().serialize(arg)) + d[".tag"] = .str("sso_change_cert") + return .dictionary(d) + case .ssoChangeLoginUrl(let arg): + var d = try Serialization.getFields(TeamLog.SsoChangeLoginUrlTypeSerializer().serialize(arg)) + d[".tag"] = .str("sso_change_login_url") + return .dictionary(d) + case .ssoChangeLogoutUrl(let arg): + var d = try Serialization.getFields(TeamLog.SsoChangeLogoutUrlTypeSerializer().serialize(arg)) + d[".tag"] = .str("sso_change_logout_url") + return .dictionary(d) + case .ssoChangeSamlIdentityMode(let arg): + var d = try Serialization.getFields(TeamLog.SsoChangeSamlIdentityModeTypeSerializer().serialize(arg)) + d[".tag"] = .str("sso_change_saml_identity_mode") + return .dictionary(d) + case .ssoRemoveCert(let arg): + var d = try Serialization.getFields(TeamLog.SsoRemoveCertTypeSerializer().serialize(arg)) + d[".tag"] = .str("sso_remove_cert") + return .dictionary(d) + case .ssoRemoveLoginUrl(let arg): + var d = try Serialization.getFields(TeamLog.SsoRemoveLoginUrlTypeSerializer().serialize(arg)) + d[".tag"] = .str("sso_remove_login_url") + return .dictionary(d) + case .ssoRemoveLogoutUrl(let arg): + var d = try Serialization.getFields(TeamLog.SsoRemoveLogoutUrlTypeSerializer().serialize(arg)) + d[".tag"] = .str("sso_remove_logout_url") + return .dictionary(d) + case .teamFolderChangeStatus(let arg): + var d = try Serialization.getFields(TeamLog.TeamFolderChangeStatusTypeSerializer().serialize(arg)) + d[".tag"] = .str("team_folder_change_status") + return .dictionary(d) + case .teamFolderCreate(let arg): + var d = try Serialization.getFields(TeamLog.TeamFolderCreateTypeSerializer().serialize(arg)) + d[".tag"] = .str("team_folder_create") + return .dictionary(d) + case .teamFolderDowngrade(let arg): + var d = try Serialization.getFields(TeamLog.TeamFolderDowngradeTypeSerializer().serialize(arg)) + d[".tag"] = .str("team_folder_downgrade") + return .dictionary(d) + case .teamFolderPermanentlyDelete(let arg): + var d = try Serialization.getFields(TeamLog.TeamFolderPermanentlyDeleteTypeSerializer().serialize(arg)) + d[".tag"] = .str("team_folder_permanently_delete") + return .dictionary(d) + case .teamFolderRename(let arg): + var d = try Serialization.getFields(TeamLog.TeamFolderRenameTypeSerializer().serialize(arg)) + d[".tag"] = .str("team_folder_rename") + return .dictionary(d) + case .teamFolderSpaceLimitsChangeCapsType(let arg): + var d = try Serialization.getFields(TeamLog.TeamFolderSpaceLimitsChangeCapsTypeTypeSerializer().serialize(arg)) + d[".tag"] = .str("team_folder_space_limits_change_caps_type") + return .dictionary(d) + case .teamFolderSpaceLimitsChangeLimit(let arg): + var d = try Serialization.getFields(TeamLog.TeamFolderSpaceLimitsChangeLimitTypeSerializer().serialize(arg)) + d[".tag"] = .str("team_folder_space_limits_change_limit") + return .dictionary(d) + case .teamFolderSpaceLimitsChangeNotificationTarget(let arg): + var d = try Serialization.getFields(TeamLog.TeamFolderSpaceLimitsChangeNotificationTargetTypeSerializer().serialize(arg)) + d[".tag"] = .str("team_folder_space_limits_change_notification_target") + return .dictionary(d) + case .teamSelectiveSyncSettingsChanged(let arg): + var d = try Serialization.getFields(TeamLog.TeamSelectiveSyncSettingsChangedTypeSerializer().serialize(arg)) + d[".tag"] = .str("team_selective_sync_settings_changed") + return .dictionary(d) + case .accountCaptureChangePolicy(let arg): + var d = try Serialization.getFields(TeamLog.AccountCaptureChangePolicyTypeSerializer().serialize(arg)) + d[".tag"] = .str("account_capture_change_policy") + return .dictionary(d) + case .adminEmailRemindersChanged(let arg): + var d = try Serialization.getFields(TeamLog.AdminEmailRemindersChangedTypeSerializer().serialize(arg)) + d[".tag"] = .str("admin_email_reminders_changed") + return .dictionary(d) + case .aiThirdPartySharingDropboxBasePolicyChanged(let arg): + var d = try Serialization.getFields(TeamLog.AiThirdPartySharingDropboxBasePolicyChangedTypeSerializer().serialize(arg)) + d[".tag"] = .str("ai_third_party_sharing_dropbox_base_policy_changed") + return .dictionary(d) + case .allowDownloadDisabled(let arg): + var d = try Serialization.getFields(TeamLog.AllowDownloadDisabledTypeSerializer().serialize(arg)) + d[".tag"] = .str("allow_download_disabled") + return .dictionary(d) + case .allowDownloadEnabled(let arg): + var d = try Serialization.getFields(TeamLog.AllowDownloadEnabledTypeSerializer().serialize(arg)) + d[".tag"] = .str("allow_download_enabled") + return .dictionary(d) + case .appleLoginChangePolicy(let arg): + var d = try Serialization.getFields(TeamLog.AppleLoginChangePolicyTypeSerializer().serialize(arg)) + d[".tag"] = .str("apple_login_change_policy") + return .dictionary(d) + case .appPermissionsChanged(let arg): + var d = try Serialization.getFields(TeamLog.AppPermissionsChangedTypeSerializer().serialize(arg)) + d[".tag"] = .str("app_permissions_changed") + return .dictionary(d) + case .cameraUploadsPolicyChanged(let arg): + var d = try Serialization.getFields(TeamLog.CameraUploadsPolicyChangedTypeSerializer().serialize(arg)) + d[".tag"] = .str("camera_uploads_policy_changed") + return .dictionary(d) + case .captureTeamSpacePolicyChanged(let arg): + var d = try Serialization.getFields(TeamLog.CaptureTeamSpacePolicyChangedTypeSerializer().serialize(arg)) + d[".tag"] = .str("capture_team_space_policy_changed") + return .dictionary(d) + case .captureTranscriptPolicyChanged(let arg): + var d = try Serialization.getFields(TeamLog.CaptureTranscriptPolicyChangedTypeSerializer().serialize(arg)) + d[".tag"] = .str("capture_transcript_policy_changed") + return .dictionary(d) + case .classificationChangePolicy(let arg): + var d = try Serialization.getFields(TeamLog.ClassificationChangePolicyTypeSerializer().serialize(arg)) + d[".tag"] = .str("classification_change_policy") + return .dictionary(d) + case .computerBackupPolicyChanged(let arg): + var d = try Serialization.getFields(TeamLog.ComputerBackupPolicyChangedTypeSerializer().serialize(arg)) + d[".tag"] = .str("computer_backup_policy_changed") + return .dictionary(d) + case .contentAdministrationPolicyChanged(let arg): + var d = try Serialization.getFields(TeamLog.ContentAdministrationPolicyChangedTypeSerializer().serialize(arg)) + d[".tag"] = .str("content_administration_policy_changed") + return .dictionary(d) + case .contentDeletionProtectionChangePolicy(let arg): + var d = try Serialization.getFields(TeamLog.ContentDeletionProtectionChangePolicyTypeSerializer().serialize(arg)) + d[".tag"] = .str("content_deletion_protection_change_policy") + return .dictionary(d) + case .dashExternalSharingPolicyChanged(let arg): + var d = try Serialization.getFields(TeamLog.DashExternalSharingPolicyChangedTypeSerializer().serialize(arg)) + d[".tag"] = .str("dash_external_sharing_policy_changed") + return .dictionary(d) + case .dataPlacementRestrictionChangePolicy(let arg): + var d = try Serialization.getFields(TeamLog.DataPlacementRestrictionChangePolicyTypeSerializer().serialize(arg)) + d[".tag"] = .str("data_placement_restriction_change_policy") + return .dictionary(d) + case .dataPlacementRestrictionSatisfyPolicy(let arg): + var d = try Serialization.getFields(TeamLog.DataPlacementRestrictionSatisfyPolicyTypeSerializer().serialize(arg)) + d[".tag"] = .str("data_placement_restriction_satisfy_policy") + return .dictionary(d) + case .deviceApprovalsAddException(let arg): + var d = try Serialization.getFields(TeamLog.DeviceApprovalsAddExceptionTypeSerializer().serialize(arg)) + d[".tag"] = .str("device_approvals_add_exception") + return .dictionary(d) + case .deviceApprovalsChangeDesktopPolicy(let arg): + var d = try Serialization.getFields(TeamLog.DeviceApprovalsChangeDesktopPolicyTypeSerializer().serialize(arg)) + d[".tag"] = .str("device_approvals_change_desktop_policy") + return .dictionary(d) + case .deviceApprovalsChangeMobilePolicy(let arg): + var d = try Serialization.getFields(TeamLog.DeviceApprovalsChangeMobilePolicyTypeSerializer().serialize(arg)) + d[".tag"] = .str("device_approvals_change_mobile_policy") + return .dictionary(d) + case .deviceApprovalsChangeOverageAction(let arg): + var d = try Serialization.getFields(TeamLog.DeviceApprovalsChangeOverageActionTypeSerializer().serialize(arg)) + d[".tag"] = .str("device_approvals_change_overage_action") + return .dictionary(d) + case .deviceApprovalsChangeUnlinkAction(let arg): + var d = try Serialization.getFields(TeamLog.DeviceApprovalsChangeUnlinkActionTypeSerializer().serialize(arg)) + d[".tag"] = .str("device_approvals_change_unlink_action") + return .dictionary(d) + case .deviceApprovalsRemoveException(let arg): + var d = try Serialization.getFields(TeamLog.DeviceApprovalsRemoveExceptionTypeSerializer().serialize(arg)) + d[".tag"] = .str("device_approvals_remove_exception") + return .dictionary(d) + case .directoryRestrictionsAddMembers(let arg): + var d = try Serialization.getFields(TeamLog.DirectoryRestrictionsAddMembersTypeSerializer().serialize(arg)) + d[".tag"] = .str("directory_restrictions_add_members") + return .dictionary(d) + case .directoryRestrictionsRemoveMembers(let arg): + var d = try Serialization.getFields(TeamLog.DirectoryRestrictionsRemoveMembersTypeSerializer().serialize(arg)) + d[".tag"] = .str("directory_restrictions_remove_members") + return .dictionary(d) + case .dropboxPasswordsPolicyChanged(let arg): + var d = try Serialization.getFields(TeamLog.DropboxPasswordsPolicyChangedTypeSerializer().serialize(arg)) + d[".tag"] = .str("dropbox_passwords_policy_changed") + return .dictionary(d) + case .emailIngestPolicyChanged(let arg): + var d = try Serialization.getFields(TeamLog.EmailIngestPolicyChangedTypeSerializer().serialize(arg)) + d[".tag"] = .str("email_ingest_policy_changed") + return .dictionary(d) + case .emmAddException(let arg): + var d = try Serialization.getFields(TeamLog.EmmAddExceptionTypeSerializer().serialize(arg)) + d[".tag"] = .str("emm_add_exception") + return .dictionary(d) + case .emmChangePolicy(let arg): + var d = try Serialization.getFields(TeamLog.EmmChangePolicyTypeSerializer().serialize(arg)) + d[".tag"] = .str("emm_change_policy") + return .dictionary(d) + case .emmRemoveException(let arg): + var d = try Serialization.getFields(TeamLog.EmmRemoveExceptionTypeSerializer().serialize(arg)) + d[".tag"] = .str("emm_remove_exception") + return .dictionary(d) + case .extendedVersionHistoryChangePolicy(let arg): + var d = try Serialization.getFields(TeamLog.ExtendedVersionHistoryChangePolicyTypeSerializer().serialize(arg)) + d[".tag"] = .str("extended_version_history_change_policy") + return .dictionary(d) + case .externalDriveBackupPolicyChanged(let arg): + var d = try Serialization.getFields(TeamLog.ExternalDriveBackupPolicyChangedTypeSerializer().serialize(arg)) + d[".tag"] = .str("external_drive_backup_policy_changed") + return .dictionary(d) + case .fileCommentsChangePolicy(let arg): + var d = try Serialization.getFields(TeamLog.FileCommentsChangePolicyTypeSerializer().serialize(arg)) + d[".tag"] = .str("file_comments_change_policy") + return .dictionary(d) + case .fileLockingPolicyChanged(let arg): + var d = try Serialization.getFields(TeamLog.FileLockingPolicyChangedTypeSerializer().serialize(arg)) + d[".tag"] = .str("file_locking_policy_changed") + return .dictionary(d) + case .fileProviderMigrationPolicyChanged(let arg): + var d = try Serialization.getFields(TeamLog.FileProviderMigrationPolicyChangedTypeSerializer().serialize(arg)) + d[".tag"] = .str("file_provider_migration_policy_changed") + return .dictionary(d) + case .fileRequestsChangePolicy(let arg): + var d = try Serialization.getFields(TeamLog.FileRequestsChangePolicyTypeSerializer().serialize(arg)) + d[".tag"] = .str("file_requests_change_policy") + return .dictionary(d) + case .fileRequestsEmailsEnabled(let arg): + var d = try Serialization.getFields(TeamLog.FileRequestsEmailsEnabledTypeSerializer().serialize(arg)) + d[".tag"] = .str("file_requests_emails_enabled") + return .dictionary(d) + case .fileRequestsEmailsRestrictedToTeamOnly(let arg): + var d = try Serialization.getFields(TeamLog.FileRequestsEmailsRestrictedToTeamOnlyTypeSerializer().serialize(arg)) + d[".tag"] = .str("file_requests_emails_restricted_to_team_only") + return .dictionary(d) + case .fileTransfersPolicyChanged(let arg): + var d = try Serialization.getFields(TeamLog.FileTransfersPolicyChangedTypeSerializer().serialize(arg)) + d[".tag"] = .str("file_transfers_policy_changed") + return .dictionary(d) + case .flexibleFileNamesPolicyChanged(let arg): + var d = try Serialization.getFields(TeamLog.FlexibleFileNamesPolicyChangedTypeSerializer().serialize(arg)) + d[".tag"] = .str("flexible_file_names_policy_changed") + return .dictionary(d) + case .folderLinkRestrictionPolicyChanged(let arg): + var d = try Serialization.getFields(TeamLog.FolderLinkRestrictionPolicyChangedTypeSerializer().serialize(arg)) + d[".tag"] = .str("folder_link_restriction_policy_changed") + return .dictionary(d) + case .googleSsoChangePolicy(let arg): + var d = try Serialization.getFields(TeamLog.GoogleSsoChangePolicyTypeSerializer().serialize(arg)) + d[".tag"] = .str("google_sso_change_policy") + return .dictionary(d) + case .groupUserManagementChangePolicy(let arg): + var d = try Serialization.getFields(TeamLog.GroupUserManagementChangePolicyTypeSerializer().serialize(arg)) + d[".tag"] = .str("group_user_management_change_policy") + return .dictionary(d) + case .integrationPolicyChanged(let arg): + var d = try Serialization.getFields(TeamLog.IntegrationPolicyChangedTypeSerializer().serialize(arg)) + d[".tag"] = .str("integration_policy_changed") + return .dictionary(d) + case .inviteAcceptanceEmailPolicyChanged(let arg): + var d = try Serialization.getFields(TeamLog.InviteAcceptanceEmailPolicyChangedTypeSerializer().serialize(arg)) + d[".tag"] = .str("invite_acceptance_email_policy_changed") + return .dictionary(d) + case .mediaHubAddingPeoplePolicyChanged(let arg): + var d = try Serialization.getFields(TeamLog.MediaHubAddingPeoplePolicyChangedTypeSerializer().serialize(arg)) + d[".tag"] = .str("media_hub_adding_people_policy_changed") + return .dictionary(d) + case .mediaHubDownloadPolicyChanged(let arg): + var d = try Serialization.getFields(TeamLog.MediaHubDownloadPolicyChangedTypeSerializer().serialize(arg)) + d[".tag"] = .str("media_hub_download_policy_changed") + return .dictionary(d) + case .mediaHubLinkSharingPolicyChanged(let arg): + var d = try Serialization.getFields(TeamLog.MediaHubLinkSharingPolicyChangedTypeSerializer().serialize(arg)) + d[".tag"] = .str("media_hub_link_sharing_policy_changed") + return .dictionary(d) + case .memberRequestsChangePolicy(let arg): + var d = try Serialization.getFields(TeamLog.MemberRequestsChangePolicyTypeSerializer().serialize(arg)) + d[".tag"] = .str("member_requests_change_policy") + return .dictionary(d) + case .memberSendInvitePolicyChanged(let arg): + var d = try Serialization.getFields(TeamLog.MemberSendInvitePolicyChangedTypeSerializer().serialize(arg)) + d[".tag"] = .str("member_send_invite_policy_changed") + return .dictionary(d) + case .memberSpaceLimitsAddException(let arg): + var d = try Serialization.getFields(TeamLog.MemberSpaceLimitsAddExceptionTypeSerializer().serialize(arg)) + d[".tag"] = .str("member_space_limits_add_exception") + return .dictionary(d) + case .memberSpaceLimitsChangeCapsTypePolicy(let arg): + var d = try Serialization.getFields(TeamLog.MemberSpaceLimitsChangeCapsTypePolicyTypeSerializer().serialize(arg)) + d[".tag"] = .str("member_space_limits_change_caps_type_policy") + return .dictionary(d) + case .memberSpaceLimitsChangePolicy(let arg): + var d = try Serialization.getFields(TeamLog.MemberSpaceLimitsChangePolicyTypeSerializer().serialize(arg)) + d[".tag"] = .str("member_space_limits_change_policy") + return .dictionary(d) + case .memberSpaceLimitsRemoveException(let arg): + var d = try Serialization.getFields(TeamLog.MemberSpaceLimitsRemoveExceptionTypeSerializer().serialize(arg)) + d[".tag"] = .str("member_space_limits_remove_exception") + return .dictionary(d) + case .memberSuggestionsChangePolicy(let arg): + var d = try Serialization.getFields(TeamLog.MemberSuggestionsChangePolicyTypeSerializer().serialize(arg)) + d[".tag"] = .str("member_suggestions_change_policy") + return .dictionary(d) + case .microsoftLoginChangePolicy(let arg): + var d = try Serialization.getFields(TeamLog.MicrosoftLoginChangePolicyTypeSerializer().serialize(arg)) + d[".tag"] = .str("microsoft_login_change_policy") + return .dictionary(d) + case .microsoftOfficeAddinChangePolicy(let arg): + var d = try Serialization.getFields(TeamLog.MicrosoftOfficeAddinChangePolicyTypeSerializer().serialize(arg)) + d[".tag"] = .str("microsoft_office_addin_change_policy") + return .dictionary(d) + case .multiTeamIdentityPolicyChanged(let arg): + var d = try Serialization.getFields(TeamLog.MultiTeamIdentityPolicyChangedTypeSerializer().serialize(arg)) + d[".tag"] = .str("multi_team_identity_policy_changed") + return .dictionary(d) + case .networkControlChangePolicy(let arg): + var d = try Serialization.getFields(TeamLog.NetworkControlChangePolicyTypeSerializer().serialize(arg)) + d[".tag"] = .str("network_control_change_policy") + return .dictionary(d) + case .paperChangeDeploymentPolicy(let arg): + var d = try Serialization.getFields(TeamLog.PaperChangeDeploymentPolicyTypeSerializer().serialize(arg)) + d[".tag"] = .str("paper_change_deployment_policy") + return .dictionary(d) + case .paperChangeMemberLinkPolicy(let arg): + var d = try Serialization.getFields(TeamLog.PaperChangeMemberLinkPolicyTypeSerializer().serialize(arg)) + d[".tag"] = .str("paper_change_member_link_policy") + return .dictionary(d) + case .paperChangeMemberPolicy(let arg): + var d = try Serialization.getFields(TeamLog.PaperChangeMemberPolicyTypeSerializer().serialize(arg)) + d[".tag"] = .str("paper_change_member_policy") + return .dictionary(d) + case .paperChangePolicy(let arg): + var d = try Serialization.getFields(TeamLog.PaperChangePolicyTypeSerializer().serialize(arg)) + d[".tag"] = .str("paper_change_policy") + return .dictionary(d) + case .paperDefaultFolderPolicyChanged(let arg): + var d = try Serialization.getFields(TeamLog.PaperDefaultFolderPolicyChangedTypeSerializer().serialize(arg)) + d[".tag"] = .str("paper_default_folder_policy_changed") + return .dictionary(d) + case .paperDesktopPolicyChanged(let arg): + var d = try Serialization.getFields(TeamLog.PaperDesktopPolicyChangedTypeSerializer().serialize(arg)) + d[".tag"] = .str("paper_desktop_policy_changed") + return .dictionary(d) + case .paperEnabledUsersGroupAddition(let arg): + var d = try Serialization.getFields(TeamLog.PaperEnabledUsersGroupAdditionTypeSerializer().serialize(arg)) + d[".tag"] = .str("paper_enabled_users_group_addition") + return .dictionary(d) + case .paperEnabledUsersGroupRemoval(let arg): + var d = try Serialization.getFields(TeamLog.PaperEnabledUsersGroupRemovalTypeSerializer().serialize(arg)) + d[".tag"] = .str("paper_enabled_users_group_removal") + return .dictionary(d) + case .passkeyLoginPolicyChanged(let arg): + var d = try Serialization.getFields(TeamLog.PasskeyLoginPolicyChangedTypeSerializer().serialize(arg)) + d[".tag"] = .str("passkey_login_policy_changed") + return .dictionary(d) + case .passwordStrengthRequirementsChangePolicy(let arg): + var d = try Serialization.getFields(TeamLog.PasswordStrengthRequirementsChangePolicyTypeSerializer().serialize(arg)) + d[".tag"] = .str("password_strength_requirements_change_policy") + return .dictionary(d) + case .permanentDeleteChangePolicy(let arg): + var d = try Serialization.getFields(TeamLog.PermanentDeleteChangePolicyTypeSerializer().serialize(arg)) + d[".tag"] = .str("permanent_delete_change_policy") + return .dictionary(d) + case .previewsAiPolicyChanged(let arg): + var d = try Serialization.getFields(TeamLog.PreviewsAiPolicyChangedTypeSerializer().serialize(arg)) + d[".tag"] = .str("previews_ai_policy_changed") + return .dictionary(d) + case .replayAddingPeoplePolicyChanged(let arg): + var d = try Serialization.getFields(TeamLog.ReplayAddingPeoplePolicyChangedTypeSerializer().serialize(arg)) + d[".tag"] = .str("replay_adding_people_policy_changed") + return .dictionary(d) + case .replaySharingPolicyChanged(let arg): + var d = try Serialization.getFields(TeamLog.ReplaySharingPolicyChangedTypeSerializer().serialize(arg)) + d[".tag"] = .str("replay_sharing_policy_changed") + return .dictionary(d) + case .resellerSupportChangePolicy(let arg): + var d = try Serialization.getFields(TeamLog.ResellerSupportChangePolicyTypeSerializer().serialize(arg)) + d[".tag"] = .str("reseller_support_change_policy") + return .dictionary(d) + case .rewindPolicyChanged(let arg): + var d = try Serialization.getFields(TeamLog.RewindPolicyChangedTypeSerializer().serialize(arg)) + d[".tag"] = .str("rewind_policy_changed") + return .dictionary(d) + case .sendAndTrackPolicyChanged(let arg): + var d = try Serialization.getFields(TeamLog.SendAndTrackPolicyChangedTypeSerializer().serialize(arg)) + d[".tag"] = .str("send_and_track_policy_changed") + return .dictionary(d) + case .sendExternalSharingPolicyChanged(let arg): + var d = try Serialization.getFields(TeamLog.SendExternalSharingPolicyChangedTypeSerializer().serialize(arg)) + d[".tag"] = .str("send_external_sharing_policy_changed") + return .dictionary(d) + case .sendForSignaturePolicyChanged(let arg): + var d = try Serialization.getFields(TeamLog.SendForSignaturePolicyChangedTypeSerializer().serialize(arg)) + d[".tag"] = .str("send_for_signature_policy_changed") + return .dictionary(d) + case .sharedLinkDefaultPermissionsPolicyChanged(let arg): + var d = try Serialization.getFields(TeamLog.SharedLinkDefaultPermissionsPolicyChangedTypeSerializer().serialize(arg)) + d[".tag"] = .str("shared_link_default_permissions_policy_changed") + return .dictionary(d) + case .sharingChangeFolderJoinPolicy(let arg): + var d = try Serialization.getFields(TeamLog.SharingChangeFolderJoinPolicyTypeSerializer().serialize(arg)) + d[".tag"] = .str("sharing_change_folder_join_policy") + return .dictionary(d) + case .sharingChangeLinkAllowChangeExpirationPolicy(let arg): + var d = try Serialization.getFields(TeamLog.SharingChangeLinkAllowChangeExpirationPolicyTypeSerializer().serialize(arg)) + d[".tag"] = .str("sharing_change_link_allow_change_expiration_policy") + return .dictionary(d) + case .sharingChangeLinkDefaultExpirationPolicy(let arg): + var d = try Serialization.getFields(TeamLog.SharingChangeLinkDefaultExpirationPolicyTypeSerializer().serialize(arg)) + d[".tag"] = .str("sharing_change_link_default_expiration_policy") + return .dictionary(d) + case .sharingChangeLinkEnforcePasswordPolicy(let arg): + var d = try Serialization.getFields(TeamLog.SharingChangeLinkEnforcePasswordPolicyTypeSerializer().serialize(arg)) + d[".tag"] = .str("sharing_change_link_enforce_password_policy") + return .dictionary(d) + case .sharingChangeLinkPolicy(let arg): + var d = try Serialization.getFields(TeamLog.SharingChangeLinkPolicyTypeSerializer().serialize(arg)) + d[".tag"] = .str("sharing_change_link_policy") + return .dictionary(d) + case .sharingChangeMemberPolicy(let arg): + var d = try Serialization.getFields(TeamLog.SharingChangeMemberPolicyTypeSerializer().serialize(arg)) + d[".tag"] = .str("sharing_change_member_policy") + return .dictionary(d) + case .showcaseChangeDownloadPolicy(let arg): + var d = try Serialization.getFields(TeamLog.ShowcaseChangeDownloadPolicyTypeSerializer().serialize(arg)) + d[".tag"] = .str("showcase_change_download_policy") + return .dictionary(d) + case .showcaseChangeEnabledPolicy(let arg): + var d = try Serialization.getFields(TeamLog.ShowcaseChangeEnabledPolicyTypeSerializer().serialize(arg)) + d[".tag"] = .str("showcase_change_enabled_policy") + return .dictionary(d) + case .showcaseChangeExternalSharingPolicy(let arg): + var d = try Serialization.getFields(TeamLog.ShowcaseChangeExternalSharingPolicyTypeSerializer().serialize(arg)) + d[".tag"] = .str("showcase_change_external_sharing_policy") + return .dictionary(d) + case .signExternalSharingPolicyChanged(let arg): + var d = try Serialization.getFields(TeamLog.SignExternalSharingPolicyChangedTypeSerializer().serialize(arg)) + d[".tag"] = .str("sign_external_sharing_policy_changed") + return .dictionary(d) + case .signTemplateCreationPermissionChanged(let arg): + var d = try Serialization.getFields(TeamLog.SignTemplateCreationPermissionChangedTypeSerializer().serialize(arg)) + d[".tag"] = .str("sign_template_creation_permission_changed") + return .dictionary(d) + case .smarterSmartSyncPolicyChanged(let arg): + var d = try Serialization.getFields(TeamLog.SmarterSmartSyncPolicyChangedTypeSerializer().serialize(arg)) + d[".tag"] = .str("smarter_smart_sync_policy_changed") + return .dictionary(d) + case .smartSyncChangePolicy(let arg): + var d = try Serialization.getFields(TeamLog.SmartSyncChangePolicyTypeSerializer().serialize(arg)) + d[".tag"] = .str("smart_sync_change_policy") + return .dictionary(d) + case .smartSyncNotOptOut(let arg): + var d = try Serialization.getFields(TeamLog.SmartSyncNotOptOutTypeSerializer().serialize(arg)) + d[".tag"] = .str("smart_sync_not_opt_out") + return .dictionary(d) + case .smartSyncOptOut(let arg): + var d = try Serialization.getFields(TeamLog.SmartSyncOptOutTypeSerializer().serialize(arg)) + d[".tag"] = .str("smart_sync_opt_out") + return .dictionary(d) + case .ssoChangePolicy(let arg): + var d = try Serialization.getFields(TeamLog.SsoChangePolicyTypeSerializer().serialize(arg)) + d[".tag"] = .str("sso_change_policy") + return .dictionary(d) + case .stackCrossTeamAccessPolicyChanged(let arg): + var d = try Serialization.getFields(TeamLog.StackCrossTeamAccessPolicyChangedTypeSerializer().serialize(arg)) + d[".tag"] = .str("stack_cross_team_access_policy_changed") + return .dictionary(d) + case .teamBrandingPolicyChanged(let arg): + var d = try Serialization.getFields(TeamLog.TeamBrandingPolicyChangedTypeSerializer().serialize(arg)) + d[".tag"] = .str("team_branding_policy_changed") + return .dictionary(d) + case .teamExtensionsPolicyChanged(let arg): + var d = try Serialization.getFields(TeamLog.TeamExtensionsPolicyChangedTypeSerializer().serialize(arg)) + d[".tag"] = .str("team_extensions_policy_changed") + return .dictionary(d) + case .teamMemberStorageRequestPolicyChanged(let arg): + var d = try Serialization.getFields(TeamLog.TeamMemberStorageRequestPolicyChangedTypeSerializer().serialize(arg)) + d[".tag"] = .str("team_member_storage_request_policy_changed") + return .dictionary(d) + case .teamSelectiveSyncPolicyChanged(let arg): + var d = try Serialization.getFields(TeamLog.TeamSelectiveSyncPolicyChangedTypeSerializer().serialize(arg)) + d[".tag"] = .str("team_selective_sync_policy_changed") + return .dictionary(d) + case .teamSharingWhitelistSubjectsChanged(let arg): + var d = try Serialization.getFields(TeamLog.TeamSharingWhitelistSubjectsChangedTypeSerializer().serialize(arg)) + d[".tag"] = .str("team_sharing_whitelist_subjects_changed") + return .dictionary(d) + case .tfaAddException(let arg): + var d = try Serialization.getFields(TeamLog.TfaAddExceptionTypeSerializer().serialize(arg)) + d[".tag"] = .str("tfa_add_exception") + return .dictionary(d) + case .tfaChangePolicy(let arg): + var d = try Serialization.getFields(TeamLog.TfaChangePolicyTypeSerializer().serialize(arg)) + d[".tag"] = .str("tfa_change_policy") + return .dictionary(d) + case .tfaRemoveException(let arg): + var d = try Serialization.getFields(TeamLog.TfaRemoveExceptionTypeSerializer().serialize(arg)) + d[".tag"] = .str("tfa_remove_exception") + return .dictionary(d) + case .topLevelContentPolicyChanged(let arg): + var d = try Serialization.getFields(TeamLog.TopLevelContentPolicyChangedTypeSerializer().serialize(arg)) + d[".tag"] = .str("top_level_content_policy_changed") + return .dictionary(d) + case .twoAccountChangePolicy(let arg): + var d = try Serialization.getFields(TeamLog.TwoAccountChangePolicyTypeSerializer().serialize(arg)) + d[".tag"] = .str("two_account_change_policy") + return .dictionary(d) + case .viewerInfoPolicyChanged(let arg): + var d = try Serialization.getFields(TeamLog.ViewerInfoPolicyChangedTypeSerializer().serialize(arg)) + d[".tag"] = .str("viewer_info_policy_changed") + return .dictionary(d) + case .watermarkingPolicyChanged(let arg): + var d = try Serialization.getFields(TeamLog.WatermarkingPolicyChangedTypeSerializer().serialize(arg)) + d[".tag"] = .str("watermarking_policy_changed") + return .dictionary(d) + case .webSessionsChangeActiveSessionLimit(let arg): + var d = try Serialization.getFields(TeamLog.WebSessionsChangeActiveSessionLimitTypeSerializer().serialize(arg)) + d[".tag"] = .str("web_sessions_change_active_session_limit") + return .dictionary(d) + case .webSessionsChangeFixedLengthPolicy(let arg): + var d = try Serialization.getFields(TeamLog.WebSessionsChangeFixedLengthPolicyTypeSerializer().serialize(arg)) + d[".tag"] = .str("web_sessions_change_fixed_length_policy") + return .dictionary(d) + case .webSessionsChangeIdleLengthPolicy(let arg): + var d = try Serialization.getFields(TeamLog.WebSessionsChangeIdleLengthPolicyTypeSerializer().serialize(arg)) + d[".tag"] = .str("web_sessions_change_idle_length_policy") + return .dictionary(d) + case .dataResidencyMigrationRequestSuccessful(let arg): + var d = try Serialization.getFields(TeamLog.DataResidencyMigrationRequestSuccessfulTypeSerializer().serialize(arg)) + d[".tag"] = .str("data_residency_migration_request_successful") + return .dictionary(d) + case .dataResidencyMigrationRequestUnsuccessful(let arg): + var d = try Serialization.getFields(TeamLog.DataResidencyMigrationRequestUnsuccessfulTypeSerializer().serialize(arg)) + d[".tag"] = .str("data_residency_migration_request_unsuccessful") + return .dictionary(d) + case .teamMergeFrom(let arg): + var d = try Serialization.getFields(TeamLog.TeamMergeFromTypeSerializer().serialize(arg)) + d[".tag"] = .str("team_merge_from") + return .dictionary(d) + case .teamMergeTo(let arg): + var d = try Serialization.getFields(TeamLog.TeamMergeToTypeSerializer().serialize(arg)) + d[".tag"] = .str("team_merge_to") + return .dictionary(d) + case .teamProfileAddBackground(let arg): + var d = try Serialization.getFields(TeamLog.TeamProfileAddBackgroundTypeSerializer().serialize(arg)) + d[".tag"] = .str("team_profile_add_background") + return .dictionary(d) + case .teamProfileAddLogo(let arg): + var d = try Serialization.getFields(TeamLog.TeamProfileAddLogoTypeSerializer().serialize(arg)) + d[".tag"] = .str("team_profile_add_logo") + return .dictionary(d) + case .teamProfileChangeBackground(let arg): + var d = try Serialization.getFields(TeamLog.TeamProfileChangeBackgroundTypeSerializer().serialize(arg)) + d[".tag"] = .str("team_profile_change_background") + return .dictionary(d) + case .teamProfileChangeDefaultLanguage(let arg): + var d = try Serialization.getFields(TeamLog.TeamProfileChangeDefaultLanguageTypeSerializer().serialize(arg)) + d[".tag"] = .str("team_profile_change_default_language") + return .dictionary(d) + case .teamProfileChangeLogo(let arg): + var d = try Serialization.getFields(TeamLog.TeamProfileChangeLogoTypeSerializer().serialize(arg)) + d[".tag"] = .str("team_profile_change_logo") + return .dictionary(d) + case .teamProfileChangeName(let arg): + var d = try Serialization.getFields(TeamLog.TeamProfileChangeNameTypeSerializer().serialize(arg)) + d[".tag"] = .str("team_profile_change_name") + return .dictionary(d) + case .teamProfileRemoveBackground(let arg): + var d = try Serialization.getFields(TeamLog.TeamProfileRemoveBackgroundTypeSerializer().serialize(arg)) + d[".tag"] = .str("team_profile_remove_background") + return .dictionary(d) + case .teamProfileRemoveLogo(let arg): + var d = try Serialization.getFields(TeamLog.TeamProfileRemoveLogoTypeSerializer().serialize(arg)) + d[".tag"] = .str("team_profile_remove_logo") + return .dictionary(d) + case .passkeyAdd(let arg): + var d = try Serialization.getFields(TeamLog.PasskeyAddTypeSerializer().serialize(arg)) + d[".tag"] = .str("passkey_add") + return .dictionary(d) + case .passkeyRemove(let arg): + var d = try Serialization.getFields(TeamLog.PasskeyRemoveTypeSerializer().serialize(arg)) + d[".tag"] = .str("passkey_remove") + return .dictionary(d) + case .tfaAddBackupPhone(let arg): + var d = try Serialization.getFields(TeamLog.TfaAddBackupPhoneTypeSerializer().serialize(arg)) + d[".tag"] = .str("tfa_add_backup_phone") + return .dictionary(d) + case .tfaAddSecurityKey(let arg): + var d = try Serialization.getFields(TeamLog.TfaAddSecurityKeyTypeSerializer().serialize(arg)) + d[".tag"] = .str("tfa_add_security_key") + return .dictionary(d) + case .tfaChangeBackupPhone(let arg): + var d = try Serialization.getFields(TeamLog.TfaChangeBackupPhoneTypeSerializer().serialize(arg)) + d[".tag"] = .str("tfa_change_backup_phone") + return .dictionary(d) + case .tfaChangeStatus(let arg): + var d = try Serialization.getFields(TeamLog.TfaChangeStatusTypeSerializer().serialize(arg)) + d[".tag"] = .str("tfa_change_status") + return .dictionary(d) + case .tfaRemoveBackupPhone(let arg): + var d = try Serialization.getFields(TeamLog.TfaRemoveBackupPhoneTypeSerializer().serialize(arg)) + d[".tag"] = .str("tfa_remove_backup_phone") + return .dictionary(d) + case .tfaRemoveSecurityKey(let arg): + var d = try Serialization.getFields(TeamLog.TfaRemoveSecurityKeyTypeSerializer().serialize(arg)) + d[".tag"] = .str("tfa_remove_security_key") + return .dictionary(d) + case .tfaReset(let arg): + var d = try Serialization.getFields(TeamLog.TfaResetTypeSerializer().serialize(arg)) + d[".tag"] = .str("tfa_reset") + return .dictionary(d) + case .changedEnterpriseAdminRole(let arg): + var d = try Serialization.getFields(TeamLog.ChangedEnterpriseAdminRoleTypeSerializer().serialize(arg)) + d[".tag"] = .str("changed_enterprise_admin_role") + return .dictionary(d) + case .changedEnterpriseConnectedTeamStatus(let arg): + var d = try Serialization.getFields(TeamLog.ChangedEnterpriseConnectedTeamStatusTypeSerializer().serialize(arg)) + d[".tag"] = .str("changed_enterprise_connected_team_status") + return .dictionary(d) + case .endedEnterpriseAdminSession(let arg): + var d = try Serialization.getFields(TeamLog.EndedEnterpriseAdminSessionTypeSerializer().serialize(arg)) + d[".tag"] = .str("ended_enterprise_admin_session") + return .dictionary(d) + case .endedEnterpriseAdminSessionDeprecated(let arg): + var d = try Serialization.getFields(TeamLog.EndedEnterpriseAdminSessionDeprecatedTypeSerializer().serialize(arg)) + d[".tag"] = .str("ended_enterprise_admin_session_deprecated") + return .dictionary(d) + case .enterpriseSettingsLocking(let arg): + var d = try Serialization.getFields(TeamLog.EnterpriseSettingsLockingTypeSerializer().serialize(arg)) + d[".tag"] = .str("enterprise_settings_locking") + return .dictionary(d) + case .guestAdminChangeStatus(let arg): + var d = try Serialization.getFields(TeamLog.GuestAdminChangeStatusTypeSerializer().serialize(arg)) + d[".tag"] = .str("guest_admin_change_status") + return .dictionary(d) + case .startedEnterpriseAdminSession(let arg): + var d = try Serialization.getFields(TeamLog.StartedEnterpriseAdminSessionTypeSerializer().serialize(arg)) + d[".tag"] = .str("started_enterprise_admin_session") + return .dictionary(d) + case .teamMergeRequestAccepted(let arg): + var d = try Serialization.getFields(TeamLog.TeamMergeRequestAcceptedTypeSerializer().serialize(arg)) + d[".tag"] = .str("team_merge_request_accepted") + return .dictionary(d) + case .teamMergeRequestAcceptedShownToPrimaryTeam(let arg): + var d = try Serialization.getFields(TeamLog.TeamMergeRequestAcceptedShownToPrimaryTeamTypeSerializer().serialize(arg)) + d[".tag"] = .str("team_merge_request_accepted_shown_to_primary_team") + return .dictionary(d) + case .teamMergeRequestAcceptedShownToSecondaryTeam(let arg): + var d = try Serialization.getFields(TeamLog.TeamMergeRequestAcceptedShownToSecondaryTeamTypeSerializer().serialize(arg)) + d[".tag"] = .str("team_merge_request_accepted_shown_to_secondary_team") + return .dictionary(d) + case .teamMergeRequestAutoCanceled(let arg): + var d = try Serialization.getFields(TeamLog.TeamMergeRequestAutoCanceledTypeSerializer().serialize(arg)) + d[".tag"] = .str("team_merge_request_auto_canceled") + return .dictionary(d) + case .teamMergeRequestCanceled(let arg): + var d = try Serialization.getFields(TeamLog.TeamMergeRequestCanceledTypeSerializer().serialize(arg)) + d[".tag"] = .str("team_merge_request_canceled") + return .dictionary(d) + case .teamMergeRequestCanceledShownToPrimaryTeam(let arg): + var d = try Serialization.getFields(TeamLog.TeamMergeRequestCanceledShownToPrimaryTeamTypeSerializer().serialize(arg)) + d[".tag"] = .str("team_merge_request_canceled_shown_to_primary_team") + return .dictionary(d) + case .teamMergeRequestCanceledShownToSecondaryTeam(let arg): + var d = try Serialization.getFields(TeamLog.TeamMergeRequestCanceledShownToSecondaryTeamTypeSerializer().serialize(arg)) + d[".tag"] = .str("team_merge_request_canceled_shown_to_secondary_team") + return .dictionary(d) + case .teamMergeRequestExpired(let arg): + var d = try Serialization.getFields(TeamLog.TeamMergeRequestExpiredTypeSerializer().serialize(arg)) + d[".tag"] = .str("team_merge_request_expired") + return .dictionary(d) + case .teamMergeRequestExpiredShownToPrimaryTeam(let arg): + var d = try Serialization.getFields(TeamLog.TeamMergeRequestExpiredShownToPrimaryTeamTypeSerializer().serialize(arg)) + d[".tag"] = .str("team_merge_request_expired_shown_to_primary_team") + return .dictionary(d) + case .teamMergeRequestExpiredShownToSecondaryTeam(let arg): + var d = try Serialization.getFields(TeamLog.TeamMergeRequestExpiredShownToSecondaryTeamTypeSerializer().serialize(arg)) + d[".tag"] = .str("team_merge_request_expired_shown_to_secondary_team") + return .dictionary(d) + case .teamMergeRequestRejectedShownToPrimaryTeam(let arg): + var d = try Serialization.getFields(TeamLog.TeamMergeRequestRejectedShownToPrimaryTeamTypeSerializer().serialize(arg)) + d[".tag"] = .str("team_merge_request_rejected_shown_to_primary_team") + return .dictionary(d) + case .teamMergeRequestRejectedShownToSecondaryTeam(let arg): + var d = try Serialization.getFields(TeamLog.TeamMergeRequestRejectedShownToSecondaryTeamTypeSerializer().serialize(arg)) + d[".tag"] = .str("team_merge_request_rejected_shown_to_secondary_team") + return .dictionary(d) + case .teamMergeRequestReminder(let arg): + var d = try Serialization.getFields(TeamLog.TeamMergeRequestReminderTypeSerializer().serialize(arg)) + d[".tag"] = .str("team_merge_request_reminder") + return .dictionary(d) + case .teamMergeRequestReminderShownToPrimaryTeam(let arg): + var d = try Serialization.getFields(TeamLog.TeamMergeRequestReminderShownToPrimaryTeamTypeSerializer().serialize(arg)) + d[".tag"] = .str("team_merge_request_reminder_shown_to_primary_team") + return .dictionary(d) + case .teamMergeRequestReminderShownToSecondaryTeam(let arg): + var d = try Serialization.getFields(TeamLog.TeamMergeRequestReminderShownToSecondaryTeamTypeSerializer().serialize(arg)) + d[".tag"] = .str("team_merge_request_reminder_shown_to_secondary_team") + return .dictionary(d) + case .teamMergeRequestRevoked(let arg): + var d = try Serialization.getFields(TeamLog.TeamMergeRequestRevokedTypeSerializer().serialize(arg)) + d[".tag"] = .str("team_merge_request_revoked") + return .dictionary(d) + case .teamMergeRequestSentShownToPrimaryTeam(let arg): + var d = try Serialization.getFields(TeamLog.TeamMergeRequestSentShownToPrimaryTeamTypeSerializer().serialize(arg)) + d[".tag"] = .str("team_merge_request_sent_shown_to_primary_team") + return .dictionary(d) + case .teamMergeRequestSentShownToSecondaryTeam(let arg): + var d = try Serialization.getFields(TeamLog.TeamMergeRequestSentShownToSecondaryTeamTypeSerializer().serialize(arg)) + d[".tag"] = .str("team_merge_request_sent_shown_to_secondary_team") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) } } - public func deserialize(_ json: JSON) throws -> EventType { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "admin_alerting_alert_state_changed": - let v = try TeamLog.AdminAlertingAlertStateChangedTypeSerializer().deserialize(json) - return EventType.adminAlertingAlertStateChanged(v) - case "admin_alerting_changed_alert_config": - let v = try TeamLog.AdminAlertingChangedAlertConfigTypeSerializer().deserialize(json) - return EventType.adminAlertingChangedAlertConfig(v) - case "admin_alerting_triggered_alert": - let v = try TeamLog.AdminAlertingTriggeredAlertTypeSerializer().deserialize(json) - return EventType.adminAlertingTriggeredAlert(v) - case "ransomware_restore_process_completed": - let v = try TeamLog.RansomwareRestoreProcessCompletedTypeSerializer().deserialize(json) - return EventType.ransomwareRestoreProcessCompleted(v) - case "ransomware_restore_process_started": - let v = try TeamLog.RansomwareRestoreProcessStartedTypeSerializer().deserialize(json) - return EventType.ransomwareRestoreProcessStarted(v) - case "app_blocked_by_permissions": - let v = try TeamLog.AppBlockedByPermissionsTypeSerializer().deserialize(json) - return EventType.appBlockedByPermissions(v) - case "app_link_team": - let v = try TeamLog.AppLinkTeamTypeSerializer().deserialize(json) - return EventType.appLinkTeam(v) - case "app_link_user": - let v = try TeamLog.AppLinkUserTypeSerializer().deserialize(json) - return EventType.appLinkUser(v) - case "app_unlink_team": - let v = try TeamLog.AppUnlinkTeamTypeSerializer().deserialize(json) - return EventType.appUnlinkTeam(v) - case "app_unlink_user": - let v = try TeamLog.AppUnlinkUserTypeSerializer().deserialize(json) - return EventType.appUnlinkUser(v) - case "integration_connected": - let v = try TeamLog.IntegrationConnectedTypeSerializer().deserialize(json) - return EventType.integrationConnected(v) - case "integration_disconnected": - let v = try TeamLog.IntegrationDisconnectedTypeSerializer().deserialize(json) - return EventType.integrationDisconnected(v) - case "file_add_comment": - let v = try TeamLog.FileAddCommentTypeSerializer().deserialize(json) - return EventType.fileAddComment(v) - case "file_change_comment_subscription": - let v = try TeamLog.FileChangeCommentSubscriptionTypeSerializer().deserialize(json) - return EventType.fileChangeCommentSubscription(v) - case "file_delete_comment": - let v = try TeamLog.FileDeleteCommentTypeSerializer().deserialize(json) - return EventType.fileDeleteComment(v) - case "file_edit_comment": - let v = try TeamLog.FileEditCommentTypeSerializer().deserialize(json) - return EventType.fileEditComment(v) - case "file_like_comment": - let v = try TeamLog.FileLikeCommentTypeSerializer().deserialize(json) - return EventType.fileLikeComment(v) - case "file_resolve_comment": - let v = try TeamLog.FileResolveCommentTypeSerializer().deserialize(json) - return EventType.fileResolveComment(v) - case "file_unlike_comment": - let v = try TeamLog.FileUnlikeCommentTypeSerializer().deserialize(json) - return EventType.fileUnlikeComment(v) - case "file_unresolve_comment": - let v = try TeamLog.FileUnresolveCommentTypeSerializer().deserialize(json) - return EventType.fileUnresolveComment(v) - case "governance_policy_add_folders": - let v = try TeamLog.GovernancePolicyAddFoldersTypeSerializer().deserialize(json) - return EventType.governancePolicyAddFolders(v) - case "governance_policy_add_folder_failed": - let v = try TeamLog.GovernancePolicyAddFolderFailedTypeSerializer().deserialize(json) - return EventType.governancePolicyAddFolderFailed(v) - case "governance_policy_content_disposed": - let v = try TeamLog.GovernancePolicyContentDisposedTypeSerializer().deserialize(json) - return EventType.governancePolicyContentDisposed(v) - case "governance_policy_create": - let v = try TeamLog.GovernancePolicyCreateTypeSerializer().deserialize(json) - return EventType.governancePolicyCreate(v) - case "governance_policy_delete": - let v = try TeamLog.GovernancePolicyDeleteTypeSerializer().deserialize(json) - return EventType.governancePolicyDelete(v) - case "governance_policy_edit_details": - let v = try TeamLog.GovernancePolicyEditDetailsTypeSerializer().deserialize(json) - return EventType.governancePolicyEditDetails(v) - case "governance_policy_edit_duration": - let v = try TeamLog.GovernancePolicyEditDurationTypeSerializer().deserialize(json) - return EventType.governancePolicyEditDuration(v) - case "governance_policy_export_created": - let v = try TeamLog.GovernancePolicyExportCreatedTypeSerializer().deserialize(json) - return EventType.governancePolicyExportCreated(v) - case "governance_policy_export_removed": - let v = try TeamLog.GovernancePolicyExportRemovedTypeSerializer().deserialize(json) - return EventType.governancePolicyExportRemoved(v) - case "governance_policy_remove_folders": - let v = try TeamLog.GovernancePolicyRemoveFoldersTypeSerializer().deserialize(json) - return EventType.governancePolicyRemoveFolders(v) - case "governance_policy_report_created": - let v = try TeamLog.GovernancePolicyReportCreatedTypeSerializer().deserialize(json) - return EventType.governancePolicyReportCreated(v) - case "governance_policy_zip_part_downloaded": - let v = try TeamLog.GovernancePolicyZipPartDownloadedTypeSerializer().deserialize(json) - return EventType.governancePolicyZipPartDownloaded(v) - case "legal_holds_activate_a_hold": - let v = try TeamLog.LegalHoldsActivateAHoldTypeSerializer().deserialize(json) - return EventType.legalHoldsActivateAHold(v) - case "legal_holds_add_members": - let v = try TeamLog.LegalHoldsAddMembersTypeSerializer().deserialize(json) - return EventType.legalHoldsAddMembers(v) - case "legal_holds_change_hold_details": - let v = try TeamLog.LegalHoldsChangeHoldDetailsTypeSerializer().deserialize(json) - return EventType.legalHoldsChangeHoldDetails(v) - case "legal_holds_change_hold_name": - let v = try TeamLog.LegalHoldsChangeHoldNameTypeSerializer().deserialize(json) - return EventType.legalHoldsChangeHoldName(v) - case "legal_holds_export_a_hold": - let v = try TeamLog.LegalHoldsExportAHoldTypeSerializer().deserialize(json) - return EventType.legalHoldsExportAHold(v) - case "legal_holds_export_cancelled": - let v = try TeamLog.LegalHoldsExportCancelledTypeSerializer().deserialize(json) - return EventType.legalHoldsExportCancelled(v) - case "legal_holds_export_downloaded": - let v = try TeamLog.LegalHoldsExportDownloadedTypeSerializer().deserialize(json) - return EventType.legalHoldsExportDownloaded(v) - case "legal_holds_export_removed": - let v = try TeamLog.LegalHoldsExportRemovedTypeSerializer().deserialize(json) - return EventType.legalHoldsExportRemoved(v) - case "legal_holds_release_a_hold": - let v = try TeamLog.LegalHoldsReleaseAHoldTypeSerializer().deserialize(json) - return EventType.legalHoldsReleaseAHold(v) - case "legal_holds_remove_members": - let v = try TeamLog.LegalHoldsRemoveMembersTypeSerializer().deserialize(json) - return EventType.legalHoldsRemoveMembers(v) - case "legal_holds_report_a_hold": - let v = try TeamLog.LegalHoldsReportAHoldTypeSerializer().deserialize(json) - return EventType.legalHoldsReportAHold(v) - case "device_change_ip_desktop": - let v = try TeamLog.DeviceChangeIpDesktopTypeSerializer().deserialize(json) - return EventType.deviceChangeIpDesktop(v) - case "device_change_ip_mobile": - let v = try TeamLog.DeviceChangeIpMobileTypeSerializer().deserialize(json) - return EventType.deviceChangeIpMobile(v) - case "device_change_ip_web": - let v = try TeamLog.DeviceChangeIpWebTypeSerializer().deserialize(json) - return EventType.deviceChangeIpWeb(v) - case "device_delete_on_unlink_fail": - let v = try TeamLog.DeviceDeleteOnUnlinkFailTypeSerializer().deserialize(json) - return EventType.deviceDeleteOnUnlinkFail(v) - case "device_delete_on_unlink_success": - let v = try TeamLog.DeviceDeleteOnUnlinkSuccessTypeSerializer().deserialize(json) - return EventType.deviceDeleteOnUnlinkSuccess(v) - case "device_link_fail": - let v = try TeamLog.DeviceLinkFailTypeSerializer().deserialize(json) - return EventType.deviceLinkFail(v) - case "device_link_success": - let v = try TeamLog.DeviceLinkSuccessTypeSerializer().deserialize(json) - return EventType.deviceLinkSuccess(v) - case "device_management_disabled": - let v = try TeamLog.DeviceManagementDisabledTypeSerializer().deserialize(json) - return EventType.deviceManagementDisabled(v) - case "device_management_enabled": - let v = try TeamLog.DeviceManagementEnabledTypeSerializer().deserialize(json) - return EventType.deviceManagementEnabled(v) - case "device_sync_backup_status_changed": - let v = try TeamLog.DeviceSyncBackupStatusChangedTypeSerializer().deserialize(json) - return EventType.deviceSyncBackupStatusChanged(v) - case "device_unlink": - let v = try TeamLog.DeviceUnlinkTypeSerializer().deserialize(json) - return EventType.deviceUnlink(v) - case "dropbox_passwords_exported": - let v = try TeamLog.DropboxPasswordsExportedTypeSerializer().deserialize(json) - return EventType.dropboxPasswordsExported(v) - case "dropbox_passwords_new_device_enrolled": - let v = try TeamLog.DropboxPasswordsNewDeviceEnrolledTypeSerializer().deserialize(json) - return EventType.dropboxPasswordsNewDeviceEnrolled(v) - case "emm_refresh_auth_token": - let v = try TeamLog.EmmRefreshAuthTokenTypeSerializer().deserialize(json) - return EventType.emmRefreshAuthToken(v) - case "external_drive_backup_eligibility_status_checked": - let v = try TeamLog.ExternalDriveBackupEligibilityStatusCheckedTypeSerializer().deserialize(json) - return EventType.externalDriveBackupEligibilityStatusChecked(v) - case "external_drive_backup_status_changed": - let v = try TeamLog.ExternalDriveBackupStatusChangedTypeSerializer().deserialize(json) - return EventType.externalDriveBackupStatusChanged(v) - case "account_capture_change_availability": - let v = try TeamLog.AccountCaptureChangeAvailabilityTypeSerializer().deserialize(json) - return EventType.accountCaptureChangeAvailability(v) - case "account_capture_migrate_account": - let v = try TeamLog.AccountCaptureMigrateAccountTypeSerializer().deserialize(json) - return EventType.accountCaptureMigrateAccount(v) - case "account_capture_notification_emails_sent": - let v = try TeamLog.AccountCaptureNotificationEmailsSentTypeSerializer().deserialize(json) - return EventType.accountCaptureNotificationEmailsSent(v) - case "account_capture_relinquish_account": - let v = try TeamLog.AccountCaptureRelinquishAccountTypeSerializer().deserialize(json) - return EventType.accountCaptureRelinquishAccount(v) - case "disabled_domain_invites": - let v = try TeamLog.DisabledDomainInvitesTypeSerializer().deserialize(json) - return EventType.disabledDomainInvites(v) - case "domain_invites_approve_request_to_join_team": - let v = try TeamLog.DomainInvitesApproveRequestToJoinTeamTypeSerializer().deserialize(json) - return EventType.domainInvitesApproveRequestToJoinTeam(v) - case "domain_invites_decline_request_to_join_team": - let v = try TeamLog.DomainInvitesDeclineRequestToJoinTeamTypeSerializer().deserialize(json) - return EventType.domainInvitesDeclineRequestToJoinTeam(v) - case "domain_invites_email_existing_users": - let v = try TeamLog.DomainInvitesEmailExistingUsersTypeSerializer().deserialize(json) - return EventType.domainInvitesEmailExistingUsers(v) - case "domain_invites_request_to_join_team": - let v = try TeamLog.DomainInvitesRequestToJoinTeamTypeSerializer().deserialize(json) - return EventType.domainInvitesRequestToJoinTeam(v) - case "domain_invites_set_invite_new_user_pref_to_no": - let v = try TeamLog.DomainInvitesSetInviteNewUserPrefToNoTypeSerializer().deserialize(json) - return EventType.domainInvitesSetInviteNewUserPrefToNo(v) - case "domain_invites_set_invite_new_user_pref_to_yes": - let v = try TeamLog.DomainInvitesSetInviteNewUserPrefToYesTypeSerializer().deserialize(json) - return EventType.domainInvitesSetInviteNewUserPrefToYes(v) - case "domain_verification_add_domain_fail": - let v = try TeamLog.DomainVerificationAddDomainFailTypeSerializer().deserialize(json) - return EventType.domainVerificationAddDomainFail(v) - case "domain_verification_add_domain_success": - let v = try TeamLog.DomainVerificationAddDomainSuccessTypeSerializer().deserialize(json) - return EventType.domainVerificationAddDomainSuccess(v) - case "domain_verification_remove_domain": - let v = try TeamLog.DomainVerificationRemoveDomainTypeSerializer().deserialize(json) - return EventType.domainVerificationRemoveDomain(v) - case "enabled_domain_invites": - let v = try TeamLog.EnabledDomainInvitesTypeSerializer().deserialize(json) - return EventType.enabledDomainInvites(v) - case "team_encryption_key_cancel_key_deletion": - let v = try TeamLog.TeamEncryptionKeyCancelKeyDeletionTypeSerializer().deserialize(json) - return EventType.teamEncryptionKeyCancelKeyDeletion(v) - case "team_encryption_key_create_key": - let v = try TeamLog.TeamEncryptionKeyCreateKeyTypeSerializer().deserialize(json) - return EventType.teamEncryptionKeyCreateKey(v) - case "team_encryption_key_delete_key": - let v = try TeamLog.TeamEncryptionKeyDeleteKeyTypeSerializer().deserialize(json) - return EventType.teamEncryptionKeyDeleteKey(v) - case "team_encryption_key_disable_key": - let v = try TeamLog.TeamEncryptionKeyDisableKeyTypeSerializer().deserialize(json) - return EventType.teamEncryptionKeyDisableKey(v) - case "team_encryption_key_enable_key": - let v = try TeamLog.TeamEncryptionKeyEnableKeyTypeSerializer().deserialize(json) - return EventType.teamEncryptionKeyEnableKey(v) - case "team_encryption_key_rotate_key": - let v = try TeamLog.TeamEncryptionKeyRotateKeyTypeSerializer().deserialize(json) - return EventType.teamEncryptionKeyRotateKey(v) - case "team_encryption_key_schedule_key_deletion": - let v = try TeamLog.TeamEncryptionKeyScheduleKeyDeletionTypeSerializer().deserialize(json) - return EventType.teamEncryptionKeyScheduleKeyDeletion(v) - case "apply_naming_convention": - let v = try TeamLog.ApplyNamingConventionTypeSerializer().deserialize(json) - return EventType.applyNamingConvention(v) - case "create_folder": - let v = try TeamLog.CreateFolderTypeSerializer().deserialize(json) - return EventType.createFolder(v) - case "file_add": - let v = try TeamLog.FileAddTypeSerializer().deserialize(json) - return EventType.fileAdd(v) - case "file_add_from_automation": - let v = try TeamLog.FileAddFromAutomationTypeSerializer().deserialize(json) - return EventType.fileAddFromAutomation(v) - case "file_copy": - let v = try TeamLog.FileCopyTypeSerializer().deserialize(json) - return EventType.fileCopy(v) - case "file_delete": - let v = try TeamLog.FileDeleteTypeSerializer().deserialize(json) - return EventType.fileDelete(v) - case "file_download": - let v = try TeamLog.FileDownloadTypeSerializer().deserialize(json) - return EventType.fileDownload(v) - case "file_edit": - let v = try TeamLog.FileEditTypeSerializer().deserialize(json) - return EventType.fileEdit(v) - case "file_get_copy_reference": - let v = try TeamLog.FileGetCopyReferenceTypeSerializer().deserialize(json) - return EventType.fileGetCopyReference(v) - case "file_locking_lock_status_changed": - let v = try TeamLog.FileLockingLockStatusChangedTypeSerializer().deserialize(json) - return EventType.fileLockingLockStatusChanged(v) - case "file_move": - let v = try TeamLog.FileMoveTypeSerializer().deserialize(json) - return EventType.fileMove(v) - case "file_permanently_delete": - let v = try TeamLog.FilePermanentlyDeleteTypeSerializer().deserialize(json) - return EventType.filePermanentlyDelete(v) - case "file_preview": - let v = try TeamLog.FilePreviewTypeSerializer().deserialize(json) - return EventType.filePreview(v) - case "file_rename": - let v = try TeamLog.FileRenameTypeSerializer().deserialize(json) - return EventType.fileRename(v) - case "file_restore": - let v = try TeamLog.FileRestoreTypeSerializer().deserialize(json) - return EventType.fileRestore(v) - case "file_revert": - let v = try TeamLog.FileRevertTypeSerializer().deserialize(json) - return EventType.fileRevert(v) - case "file_rollback_changes": - let v = try TeamLog.FileRollbackChangesTypeSerializer().deserialize(json) - return EventType.fileRollbackChanges(v) - case "file_save_copy_reference": - let v = try TeamLog.FileSaveCopyReferenceTypeSerializer().deserialize(json) - return EventType.fileSaveCopyReference(v) - case "folder_overview_description_changed": - let v = try TeamLog.FolderOverviewDescriptionChangedTypeSerializer().deserialize(json) - return EventType.folderOverviewDescriptionChanged(v) - case "folder_overview_item_pinned": - let v = try TeamLog.FolderOverviewItemPinnedTypeSerializer().deserialize(json) - return EventType.folderOverviewItemPinned(v) - case "folder_overview_item_unpinned": - let v = try TeamLog.FolderOverviewItemUnpinnedTypeSerializer().deserialize(json) - return EventType.folderOverviewItemUnpinned(v) - case "object_label_added": - let v = try TeamLog.ObjectLabelAddedTypeSerializer().deserialize(json) - return EventType.objectLabelAdded(v) - case "object_label_removed": - let v = try TeamLog.ObjectLabelRemovedTypeSerializer().deserialize(json) - return EventType.objectLabelRemoved(v) - case "object_label_updated_value": - let v = try TeamLog.ObjectLabelUpdatedValueTypeSerializer().deserialize(json) - return EventType.objectLabelUpdatedValue(v) - case "organize_folder_with_tidy": - let v = try TeamLog.OrganizeFolderWithTidyTypeSerializer().deserialize(json) - return EventType.organizeFolderWithTidy(v) - case "replay_file_delete": - let v = try TeamLog.ReplayFileDeleteTypeSerializer().deserialize(json) - return EventType.replayFileDelete(v) - case "rewind_folder": - let v = try TeamLog.RewindFolderTypeSerializer().deserialize(json) - return EventType.rewindFolder(v) - case "undo_naming_convention": - let v = try TeamLog.UndoNamingConventionTypeSerializer().deserialize(json) - return EventType.undoNamingConvention(v) - case "undo_organize_folder_with_tidy": - let v = try TeamLog.UndoOrganizeFolderWithTidyTypeSerializer().deserialize(json) - return EventType.undoOrganizeFolderWithTidy(v) - case "user_tags_added": - let v = try TeamLog.UserTagsAddedTypeSerializer().deserialize(json) - return EventType.userTagsAdded(v) - case "user_tags_removed": - let v = try TeamLog.UserTagsRemovedTypeSerializer().deserialize(json) - return EventType.userTagsRemoved(v) - case "email_ingest_receive_file": - let v = try TeamLog.EmailIngestReceiveFileTypeSerializer().deserialize(json) - return EventType.emailIngestReceiveFile(v) - case "file_request_change": - let v = try TeamLog.FileRequestChangeTypeSerializer().deserialize(json) - return EventType.fileRequestChange(v) - case "file_request_close": - let v = try TeamLog.FileRequestCloseTypeSerializer().deserialize(json) - return EventType.fileRequestClose(v) - case "file_request_create": - let v = try TeamLog.FileRequestCreateTypeSerializer().deserialize(json) - return EventType.fileRequestCreate(v) - case "file_request_delete": - let v = try TeamLog.FileRequestDeleteTypeSerializer().deserialize(json) - return EventType.fileRequestDelete(v) - case "file_request_receive_file": - let v = try TeamLog.FileRequestReceiveFileTypeSerializer().deserialize(json) - return EventType.fileRequestReceiveFile(v) - case "group_add_external_id": - let v = try TeamLog.GroupAddExternalIdTypeSerializer().deserialize(json) - return EventType.groupAddExternalId(v) - case "group_add_member": - let v = try TeamLog.GroupAddMemberTypeSerializer().deserialize(json) - return EventType.groupAddMember(v) - case "group_change_external_id": - let v = try TeamLog.GroupChangeExternalIdTypeSerializer().deserialize(json) - return EventType.groupChangeExternalId(v) - case "group_change_management_type": - let v = try TeamLog.GroupChangeManagementTypeTypeSerializer().deserialize(json) - return EventType.groupChangeManagementType(v) - case "group_change_member_role": - let v = try TeamLog.GroupChangeMemberRoleTypeSerializer().deserialize(json) - return EventType.groupChangeMemberRole(v) - case "group_create": - let v = try TeamLog.GroupCreateTypeSerializer().deserialize(json) - return EventType.groupCreate(v) - case "group_delete": - let v = try TeamLog.GroupDeleteTypeSerializer().deserialize(json) - return EventType.groupDelete(v) - case "group_description_updated": - let v = try TeamLog.GroupDescriptionUpdatedTypeSerializer().deserialize(json) - return EventType.groupDescriptionUpdated(v) - case "group_join_policy_updated": - let v = try TeamLog.GroupJoinPolicyUpdatedTypeSerializer().deserialize(json) - return EventType.groupJoinPolicyUpdated(v) - case "group_moved": - let v = try TeamLog.GroupMovedTypeSerializer().deserialize(json) - return EventType.groupMoved(v) - case "group_remove_external_id": - let v = try TeamLog.GroupRemoveExternalIdTypeSerializer().deserialize(json) - return EventType.groupRemoveExternalId(v) - case "group_remove_member": - let v = try TeamLog.GroupRemoveMemberTypeSerializer().deserialize(json) - return EventType.groupRemoveMember(v) - case "group_rename": - let v = try TeamLog.GroupRenameTypeSerializer().deserialize(json) - return EventType.groupRename(v) - case "account_lock_or_unlocked": - let v = try TeamLog.AccountLockOrUnlockedTypeSerializer().deserialize(json) - return EventType.accountLockOrUnlocked(v) - case "emm_error": - let v = try TeamLog.EmmErrorTypeSerializer().deserialize(json) - return EventType.emmError(v) - case "guest_admin_signed_in_via_trusted_teams": - let v = try TeamLog.GuestAdminSignedInViaTrustedTeamsTypeSerializer().deserialize(json) - return EventType.guestAdminSignedInViaTrustedTeams(v) - case "guest_admin_signed_out_via_trusted_teams": - let v = try TeamLog.GuestAdminSignedOutViaTrustedTeamsTypeSerializer().deserialize(json) - return EventType.guestAdminSignedOutViaTrustedTeams(v) - case "login_fail": - let v = try TeamLog.LoginFailTypeSerializer().deserialize(json) - return EventType.loginFail(v) - case "login_success": - let v = try TeamLog.LoginSuccessTypeSerializer().deserialize(json) - return EventType.loginSuccess(v) - case "logout": - let v = try TeamLog.LogoutTypeSerializer().deserialize(json) - return EventType.logout(v) - case "reseller_support_session_end": - let v = try TeamLog.ResellerSupportSessionEndTypeSerializer().deserialize(json) - return EventType.resellerSupportSessionEnd(v) - case "reseller_support_session_start": - let v = try TeamLog.ResellerSupportSessionStartTypeSerializer().deserialize(json) - return EventType.resellerSupportSessionStart(v) - case "sign_in_as_session_end": - let v = try TeamLog.SignInAsSessionEndTypeSerializer().deserialize(json) - return EventType.signInAsSessionEnd(v) - case "sign_in_as_session_start": - let v = try TeamLog.SignInAsSessionStartTypeSerializer().deserialize(json) - return EventType.signInAsSessionStart(v) - case "sso_error": - let v = try TeamLog.SsoErrorTypeSerializer().deserialize(json) - return EventType.ssoError(v) - case "backup_admin_invitation_sent": - let v = try TeamLog.BackupAdminInvitationSentTypeSerializer().deserialize(json) - return EventType.backupAdminInvitationSent(v) - case "backup_invitation_opened": - let v = try TeamLog.BackupInvitationOpenedTypeSerializer().deserialize(json) - return EventType.backupInvitationOpened(v) - case "create_team_invite_link": - let v = try TeamLog.CreateTeamInviteLinkTypeSerializer().deserialize(json) - return EventType.createTeamInviteLink(v) - case "delete_team_invite_link": - let v = try TeamLog.DeleteTeamInviteLinkTypeSerializer().deserialize(json) - return EventType.deleteTeamInviteLink(v) - case "member_add_external_id": - let v = try TeamLog.MemberAddExternalIdTypeSerializer().deserialize(json) - return EventType.memberAddExternalId(v) - case "member_add_name": - let v = try TeamLog.MemberAddNameTypeSerializer().deserialize(json) - return EventType.memberAddName(v) - case "member_change_admin_role": - let v = try TeamLog.MemberChangeAdminRoleTypeSerializer().deserialize(json) - return EventType.memberChangeAdminRole(v) - case "member_change_email": - let v = try TeamLog.MemberChangeEmailTypeSerializer().deserialize(json) - return EventType.memberChangeEmail(v) - case "member_change_external_id": - let v = try TeamLog.MemberChangeExternalIdTypeSerializer().deserialize(json) - return EventType.memberChangeExternalId(v) - case "member_change_membership_type": - let v = try TeamLog.MemberChangeMembershipTypeTypeSerializer().deserialize(json) - return EventType.memberChangeMembershipType(v) - case "member_change_name": - let v = try TeamLog.MemberChangeNameTypeSerializer().deserialize(json) - return EventType.memberChangeName(v) - case "member_change_reseller_role": - let v = try TeamLog.MemberChangeResellerRoleTypeSerializer().deserialize(json) - return EventType.memberChangeResellerRole(v) - case "member_change_status": - let v = try TeamLog.MemberChangeStatusTypeSerializer().deserialize(json) - return EventType.memberChangeStatus(v) - case "member_delete_manual_contacts": - let v = try TeamLog.MemberDeleteManualContactsTypeSerializer().deserialize(json) - return EventType.memberDeleteManualContacts(v) - case "member_delete_profile_photo": - let v = try TeamLog.MemberDeleteProfilePhotoTypeSerializer().deserialize(json) - return EventType.memberDeleteProfilePhoto(v) - case "member_permanently_delete_account_contents": - let v = try TeamLog.MemberPermanentlyDeleteAccountContentsTypeSerializer().deserialize(json) - return EventType.memberPermanentlyDeleteAccountContents(v) - case "member_remove_external_id": - let v = try TeamLog.MemberRemoveExternalIdTypeSerializer().deserialize(json) - return EventType.memberRemoveExternalId(v) - case "member_set_profile_photo": - let v = try TeamLog.MemberSetProfilePhotoTypeSerializer().deserialize(json) - return EventType.memberSetProfilePhoto(v) - case "member_space_limits_add_custom_quota": - let v = try TeamLog.MemberSpaceLimitsAddCustomQuotaTypeSerializer().deserialize(json) - return EventType.memberSpaceLimitsAddCustomQuota(v) - case "member_space_limits_change_custom_quota": - let v = try TeamLog.MemberSpaceLimitsChangeCustomQuotaTypeSerializer().deserialize(json) - return EventType.memberSpaceLimitsChangeCustomQuota(v) - case "member_space_limits_change_status": - let v = try TeamLog.MemberSpaceLimitsChangeStatusTypeSerializer().deserialize(json) - return EventType.memberSpaceLimitsChangeStatus(v) - case "member_space_limits_remove_custom_quota": - let v = try TeamLog.MemberSpaceLimitsRemoveCustomQuotaTypeSerializer().deserialize(json) - return EventType.memberSpaceLimitsRemoveCustomQuota(v) - case "member_suggest": - let v = try TeamLog.MemberSuggestTypeSerializer().deserialize(json) - return EventType.memberSuggest(v) - case "member_transfer_account_contents": - let v = try TeamLog.MemberTransferAccountContentsTypeSerializer().deserialize(json) - return EventType.memberTransferAccountContents(v) - case "pending_secondary_email_added": - let v = try TeamLog.PendingSecondaryEmailAddedTypeSerializer().deserialize(json) - return EventType.pendingSecondaryEmailAdded(v) - case "secondary_email_deleted": - let v = try TeamLog.SecondaryEmailDeletedTypeSerializer().deserialize(json) - return EventType.secondaryEmailDeleted(v) - case "secondary_email_verified": - let v = try TeamLog.SecondaryEmailVerifiedTypeSerializer().deserialize(json) - return EventType.secondaryEmailVerified(v) - case "secondary_mails_policy_changed": - let v = try TeamLog.SecondaryMailsPolicyChangedTypeSerializer().deserialize(json) - return EventType.secondaryMailsPolicyChanged(v) - case "binder_add_page": - let v = try TeamLog.BinderAddPageTypeSerializer().deserialize(json) - return EventType.binderAddPage(v) - case "binder_add_section": - let v = try TeamLog.BinderAddSectionTypeSerializer().deserialize(json) - return EventType.binderAddSection(v) - case "binder_remove_page": - let v = try TeamLog.BinderRemovePageTypeSerializer().deserialize(json) - return EventType.binderRemovePage(v) - case "binder_remove_section": - let v = try TeamLog.BinderRemoveSectionTypeSerializer().deserialize(json) - return EventType.binderRemoveSection(v) - case "binder_rename_page": - let v = try TeamLog.BinderRenamePageTypeSerializer().deserialize(json) - return EventType.binderRenamePage(v) - case "binder_rename_section": - let v = try TeamLog.BinderRenameSectionTypeSerializer().deserialize(json) - return EventType.binderRenameSection(v) - case "binder_reorder_page": - let v = try TeamLog.BinderReorderPageTypeSerializer().deserialize(json) - return EventType.binderReorderPage(v) - case "binder_reorder_section": - let v = try TeamLog.BinderReorderSectionTypeSerializer().deserialize(json) - return EventType.binderReorderSection(v) - case "paper_content_add_member": - let v = try TeamLog.PaperContentAddMemberTypeSerializer().deserialize(json) - return EventType.paperContentAddMember(v) - case "paper_content_add_to_folder": - let v = try TeamLog.PaperContentAddToFolderTypeSerializer().deserialize(json) - return EventType.paperContentAddToFolder(v) - case "paper_content_archive": - let v = try TeamLog.PaperContentArchiveTypeSerializer().deserialize(json) - return EventType.paperContentArchive(v) - case "paper_content_create": - let v = try TeamLog.PaperContentCreateTypeSerializer().deserialize(json) - return EventType.paperContentCreate(v) - case "paper_content_permanently_delete": - let v = try TeamLog.PaperContentPermanentlyDeleteTypeSerializer().deserialize(json) - return EventType.paperContentPermanentlyDelete(v) - case "paper_content_remove_from_folder": - let v = try TeamLog.PaperContentRemoveFromFolderTypeSerializer().deserialize(json) - return EventType.paperContentRemoveFromFolder(v) - case "paper_content_remove_member": - let v = try TeamLog.PaperContentRemoveMemberTypeSerializer().deserialize(json) - return EventType.paperContentRemoveMember(v) - case "paper_content_rename": - let v = try TeamLog.PaperContentRenameTypeSerializer().deserialize(json) - return EventType.paperContentRename(v) - case "paper_content_restore": - let v = try TeamLog.PaperContentRestoreTypeSerializer().deserialize(json) - return EventType.paperContentRestore(v) - case "paper_doc_add_comment": - let v = try TeamLog.PaperDocAddCommentTypeSerializer().deserialize(json) - return EventType.paperDocAddComment(v) - case "paper_doc_change_member_role": - let v = try TeamLog.PaperDocChangeMemberRoleTypeSerializer().deserialize(json) - return EventType.paperDocChangeMemberRole(v) - case "paper_doc_change_sharing_policy": - let v = try TeamLog.PaperDocChangeSharingPolicyTypeSerializer().deserialize(json) - return EventType.paperDocChangeSharingPolicy(v) - case "paper_doc_change_subscription": - let v = try TeamLog.PaperDocChangeSubscriptionTypeSerializer().deserialize(json) - return EventType.paperDocChangeSubscription(v) - case "paper_doc_deleted": - let v = try TeamLog.PaperDocDeletedTypeSerializer().deserialize(json) - return EventType.paperDocDeleted(v) - case "paper_doc_delete_comment": - let v = try TeamLog.PaperDocDeleteCommentTypeSerializer().deserialize(json) - return EventType.paperDocDeleteComment(v) - case "paper_doc_download": - let v = try TeamLog.PaperDocDownloadTypeSerializer().deserialize(json) - return EventType.paperDocDownload(v) - case "paper_doc_edit": - let v = try TeamLog.PaperDocEditTypeSerializer().deserialize(json) - return EventType.paperDocEdit(v) - case "paper_doc_edit_comment": - let v = try TeamLog.PaperDocEditCommentTypeSerializer().deserialize(json) - return EventType.paperDocEditComment(v) - case "paper_doc_followed": - let v = try TeamLog.PaperDocFollowedTypeSerializer().deserialize(json) - return EventType.paperDocFollowed(v) - case "paper_doc_mention": - let v = try TeamLog.PaperDocMentionTypeSerializer().deserialize(json) - return EventType.paperDocMention(v) - case "paper_doc_ownership_changed": - let v = try TeamLog.PaperDocOwnershipChangedTypeSerializer().deserialize(json) - return EventType.paperDocOwnershipChanged(v) - case "paper_doc_request_access": - let v = try TeamLog.PaperDocRequestAccessTypeSerializer().deserialize(json) - return EventType.paperDocRequestAccess(v) - case "paper_doc_resolve_comment": - let v = try TeamLog.PaperDocResolveCommentTypeSerializer().deserialize(json) - return EventType.paperDocResolveComment(v) - case "paper_doc_revert": - let v = try TeamLog.PaperDocRevertTypeSerializer().deserialize(json) - return EventType.paperDocRevert(v) - case "paper_doc_slack_share": - let v = try TeamLog.PaperDocSlackShareTypeSerializer().deserialize(json) - return EventType.paperDocSlackShare(v) - case "paper_doc_team_invite": - let v = try TeamLog.PaperDocTeamInviteTypeSerializer().deserialize(json) - return EventType.paperDocTeamInvite(v) - case "paper_doc_trashed": - let v = try TeamLog.PaperDocTrashedTypeSerializer().deserialize(json) - return EventType.paperDocTrashed(v) - case "paper_doc_unresolve_comment": - let v = try TeamLog.PaperDocUnresolveCommentTypeSerializer().deserialize(json) - return EventType.paperDocUnresolveComment(v) - case "paper_doc_untrashed": - let v = try TeamLog.PaperDocUntrashedTypeSerializer().deserialize(json) - return EventType.paperDocUntrashed(v) - case "paper_doc_view": - let v = try TeamLog.PaperDocViewTypeSerializer().deserialize(json) - return EventType.paperDocView(v) - case "paper_external_view_allow": - let v = try TeamLog.PaperExternalViewAllowTypeSerializer().deserialize(json) - return EventType.paperExternalViewAllow(v) - case "paper_external_view_default_team": - let v = try TeamLog.PaperExternalViewDefaultTeamTypeSerializer().deserialize(json) - return EventType.paperExternalViewDefaultTeam(v) - case "paper_external_view_forbid": - let v = try TeamLog.PaperExternalViewForbidTypeSerializer().deserialize(json) - return EventType.paperExternalViewForbid(v) - case "paper_folder_change_subscription": - let v = try TeamLog.PaperFolderChangeSubscriptionTypeSerializer().deserialize(json) - return EventType.paperFolderChangeSubscription(v) - case "paper_folder_deleted": - let v = try TeamLog.PaperFolderDeletedTypeSerializer().deserialize(json) - return EventType.paperFolderDeleted(v) - case "paper_folder_followed": - let v = try TeamLog.PaperFolderFollowedTypeSerializer().deserialize(json) - return EventType.paperFolderFollowed(v) - case "paper_folder_team_invite": - let v = try TeamLog.PaperFolderTeamInviteTypeSerializer().deserialize(json) - return EventType.paperFolderTeamInvite(v) - case "paper_published_link_change_permission": - let v = try TeamLog.PaperPublishedLinkChangePermissionTypeSerializer().deserialize(json) - return EventType.paperPublishedLinkChangePermission(v) - case "paper_published_link_create": - let v = try TeamLog.PaperPublishedLinkCreateTypeSerializer().deserialize(json) - return EventType.paperPublishedLinkCreate(v) - case "paper_published_link_disabled": - let v = try TeamLog.PaperPublishedLinkDisabledTypeSerializer().deserialize(json) - return EventType.paperPublishedLinkDisabled(v) - case "paper_published_link_view": - let v = try TeamLog.PaperPublishedLinkViewTypeSerializer().deserialize(json) - return EventType.paperPublishedLinkView(v) - case "password_change": - let v = try TeamLog.PasswordChangeTypeSerializer().deserialize(json) - return EventType.passwordChange(v) - case "password_reset": - let v = try TeamLog.PasswordResetTypeSerializer().deserialize(json) - return EventType.passwordReset(v) - case "password_reset_all": - let v = try TeamLog.PasswordResetAllTypeSerializer().deserialize(json) - return EventType.passwordResetAll(v) - case "classification_create_report": - let v = try TeamLog.ClassificationCreateReportTypeSerializer().deserialize(json) - return EventType.classificationCreateReport(v) - case "classification_create_report_fail": - let v = try TeamLog.ClassificationCreateReportFailTypeSerializer().deserialize(json) - return EventType.classificationCreateReportFail(v) - case "emm_create_exceptions_report": - let v = try TeamLog.EmmCreateExceptionsReportTypeSerializer().deserialize(json) - return EventType.emmCreateExceptionsReport(v) - case "emm_create_usage_report": - let v = try TeamLog.EmmCreateUsageReportTypeSerializer().deserialize(json) - return EventType.emmCreateUsageReport(v) - case "export_members_report": - let v = try TeamLog.ExportMembersReportTypeSerializer().deserialize(json) - return EventType.exportMembersReport(v) - case "export_members_report_fail": - let v = try TeamLog.ExportMembersReportFailTypeSerializer().deserialize(json) - return EventType.exportMembersReportFail(v) - case "external_sharing_create_report": - let v = try TeamLog.ExternalSharingCreateReportTypeSerializer().deserialize(json) - return EventType.externalSharingCreateReport(v) - case "external_sharing_report_failed": - let v = try TeamLog.ExternalSharingReportFailedTypeSerializer().deserialize(json) - return EventType.externalSharingReportFailed(v) - case "no_expiration_link_gen_create_report": - let v = try TeamLog.NoExpirationLinkGenCreateReportTypeSerializer().deserialize(json) - return EventType.noExpirationLinkGenCreateReport(v) - case "no_expiration_link_gen_report_failed": - let v = try TeamLog.NoExpirationLinkGenReportFailedTypeSerializer().deserialize(json) - return EventType.noExpirationLinkGenReportFailed(v) - case "no_password_link_gen_create_report": - let v = try TeamLog.NoPasswordLinkGenCreateReportTypeSerializer().deserialize(json) - return EventType.noPasswordLinkGenCreateReport(v) - case "no_password_link_gen_report_failed": - let v = try TeamLog.NoPasswordLinkGenReportFailedTypeSerializer().deserialize(json) - return EventType.noPasswordLinkGenReportFailed(v) - case "no_password_link_view_create_report": - let v = try TeamLog.NoPasswordLinkViewCreateReportTypeSerializer().deserialize(json) - return EventType.noPasswordLinkViewCreateReport(v) - case "no_password_link_view_report_failed": - let v = try TeamLog.NoPasswordLinkViewReportFailedTypeSerializer().deserialize(json) - return EventType.noPasswordLinkViewReportFailed(v) - case "outdated_link_view_create_report": - let v = try TeamLog.OutdatedLinkViewCreateReportTypeSerializer().deserialize(json) - return EventType.outdatedLinkViewCreateReport(v) - case "outdated_link_view_report_failed": - let v = try TeamLog.OutdatedLinkViewReportFailedTypeSerializer().deserialize(json) - return EventType.outdatedLinkViewReportFailed(v) - case "paper_admin_export_start": - let v = try TeamLog.PaperAdminExportStartTypeSerializer().deserialize(json) - return EventType.paperAdminExportStart(v) - case "ransomware_alert_create_report": - let v = try TeamLog.RansomwareAlertCreateReportTypeSerializer().deserialize(json) - return EventType.ransomwareAlertCreateReport(v) - case "ransomware_alert_create_report_failed": - let v = try TeamLog.RansomwareAlertCreateReportFailedTypeSerializer().deserialize(json) - return EventType.ransomwareAlertCreateReportFailed(v) - case "smart_sync_create_admin_privilege_report": - let v = try TeamLog.SmartSyncCreateAdminPrivilegeReportTypeSerializer().deserialize(json) - return EventType.smartSyncCreateAdminPrivilegeReport(v) - case "team_activity_create_report": - let v = try TeamLog.TeamActivityCreateReportTypeSerializer().deserialize(json) - return EventType.teamActivityCreateReport(v) - case "team_activity_create_report_fail": - let v = try TeamLog.TeamActivityCreateReportFailTypeSerializer().deserialize(json) - return EventType.teamActivityCreateReportFail(v) - case "collection_share": - let v = try TeamLog.CollectionShareTypeSerializer().deserialize(json) - return EventType.collectionShare(v) - case "file_transfers_file_add": - let v = try TeamLog.FileTransfersFileAddTypeSerializer().deserialize(json) - return EventType.fileTransfersFileAdd(v) - case "file_transfers_transfer_delete": - let v = try TeamLog.FileTransfersTransferDeleteTypeSerializer().deserialize(json) - return EventType.fileTransfersTransferDelete(v) - case "file_transfers_transfer_download": - let v = try TeamLog.FileTransfersTransferDownloadTypeSerializer().deserialize(json) - return EventType.fileTransfersTransferDownload(v) - case "file_transfers_transfer_send": - let v = try TeamLog.FileTransfersTransferSendTypeSerializer().deserialize(json) - return EventType.fileTransfersTransferSend(v) - case "file_transfers_transfer_view": - let v = try TeamLog.FileTransfersTransferViewTypeSerializer().deserialize(json) - return EventType.fileTransfersTransferView(v) - case "note_acl_invite_only": - let v = try TeamLog.NoteAclInviteOnlyTypeSerializer().deserialize(json) - return EventType.noteAclInviteOnly(v) - case "note_acl_link": - let v = try TeamLog.NoteAclLinkTypeSerializer().deserialize(json) - return EventType.noteAclLink(v) - case "note_acl_team_link": - let v = try TeamLog.NoteAclTeamLinkTypeSerializer().deserialize(json) - return EventType.noteAclTeamLink(v) - case "note_shared": - let v = try TeamLog.NoteSharedTypeSerializer().deserialize(json) - return EventType.noteShared(v) - case "note_share_receive": - let v = try TeamLog.NoteShareReceiveTypeSerializer().deserialize(json) - return EventType.noteShareReceive(v) - case "open_note_shared": - let v = try TeamLog.OpenNoteSharedTypeSerializer().deserialize(json) - return EventType.openNoteShared(v) - case "replay_file_shared_link_created": - let v = try TeamLog.ReplayFileSharedLinkCreatedTypeSerializer().deserialize(json) - return EventType.replayFileSharedLinkCreated(v) - case "replay_file_shared_link_modified": - let v = try TeamLog.ReplayFileSharedLinkModifiedTypeSerializer().deserialize(json) - return EventType.replayFileSharedLinkModified(v) - case "replay_project_team_add": - let v = try TeamLog.ReplayProjectTeamAddTypeSerializer().deserialize(json) - return EventType.replayProjectTeamAdd(v) - case "replay_project_team_delete": - let v = try TeamLog.ReplayProjectTeamDeleteTypeSerializer().deserialize(json) - return EventType.replayProjectTeamDelete(v) - case "sf_add_group": - let v = try TeamLog.SfAddGroupTypeSerializer().deserialize(json) - return EventType.sfAddGroup(v) - case "sf_allow_non_members_to_view_shared_links": - let v = try TeamLog.SfAllowNonMembersToViewSharedLinksTypeSerializer().deserialize(json) - return EventType.sfAllowNonMembersToViewSharedLinks(v) - case "sf_external_invite_warn": - let v = try TeamLog.SfExternalInviteWarnTypeSerializer().deserialize(json) - return EventType.sfExternalInviteWarn(v) - case "sf_fb_invite": - let v = try TeamLog.SfFbInviteTypeSerializer().deserialize(json) - return EventType.sfFbInvite(v) - case "sf_fb_invite_change_role": - let v = try TeamLog.SfFbInviteChangeRoleTypeSerializer().deserialize(json) - return EventType.sfFbInviteChangeRole(v) - case "sf_fb_uninvite": - let v = try TeamLog.SfFbUninviteTypeSerializer().deserialize(json) - return EventType.sfFbUninvite(v) - case "sf_invite_group": - let v = try TeamLog.SfInviteGroupTypeSerializer().deserialize(json) - return EventType.sfInviteGroup(v) - case "sf_team_grant_access": - let v = try TeamLog.SfTeamGrantAccessTypeSerializer().deserialize(json) - return EventType.sfTeamGrantAccess(v) - case "sf_team_invite": - let v = try TeamLog.SfTeamInviteTypeSerializer().deserialize(json) - return EventType.sfTeamInvite(v) - case "sf_team_invite_change_role": - let v = try TeamLog.SfTeamInviteChangeRoleTypeSerializer().deserialize(json) - return EventType.sfTeamInviteChangeRole(v) - case "sf_team_join": - let v = try TeamLog.SfTeamJoinTypeSerializer().deserialize(json) - return EventType.sfTeamJoin(v) - case "sf_team_join_from_oob_link": - let v = try TeamLog.SfTeamJoinFromOobLinkTypeSerializer().deserialize(json) - return EventType.sfTeamJoinFromOobLink(v) - case "sf_team_uninvite": - let v = try TeamLog.SfTeamUninviteTypeSerializer().deserialize(json) - return EventType.sfTeamUninvite(v) - case "shared_content_add_invitees": - let v = try TeamLog.SharedContentAddInviteesTypeSerializer().deserialize(json) - return EventType.sharedContentAddInvitees(v) - case "shared_content_add_link_expiry": - let v = try TeamLog.SharedContentAddLinkExpiryTypeSerializer().deserialize(json) - return EventType.sharedContentAddLinkExpiry(v) - case "shared_content_add_link_password": - let v = try TeamLog.SharedContentAddLinkPasswordTypeSerializer().deserialize(json) - return EventType.sharedContentAddLinkPassword(v) - case "shared_content_add_member": - let v = try TeamLog.SharedContentAddMemberTypeSerializer().deserialize(json) - return EventType.sharedContentAddMember(v) - case "shared_content_change_downloads_policy": - let v = try TeamLog.SharedContentChangeDownloadsPolicyTypeSerializer().deserialize(json) - return EventType.sharedContentChangeDownloadsPolicy(v) - case "shared_content_change_invitee_role": - let v = try TeamLog.SharedContentChangeInviteeRoleTypeSerializer().deserialize(json) - return EventType.sharedContentChangeInviteeRole(v) - case "shared_content_change_link_audience": - let v = try TeamLog.SharedContentChangeLinkAudienceTypeSerializer().deserialize(json) - return EventType.sharedContentChangeLinkAudience(v) - case "shared_content_change_link_expiry": - let v = try TeamLog.SharedContentChangeLinkExpiryTypeSerializer().deserialize(json) - return EventType.sharedContentChangeLinkExpiry(v) - case "shared_content_change_link_password": - let v = try TeamLog.SharedContentChangeLinkPasswordTypeSerializer().deserialize(json) - return EventType.sharedContentChangeLinkPassword(v) - case "shared_content_change_member_role": - let v = try TeamLog.SharedContentChangeMemberRoleTypeSerializer().deserialize(json) - return EventType.sharedContentChangeMemberRole(v) - case "shared_content_change_viewer_info_policy": - let v = try TeamLog.SharedContentChangeViewerInfoPolicyTypeSerializer().deserialize(json) - return EventType.sharedContentChangeViewerInfoPolicy(v) - case "shared_content_claim_invitation": - let v = try TeamLog.SharedContentClaimInvitationTypeSerializer().deserialize(json) - return EventType.sharedContentClaimInvitation(v) - case "shared_content_copy": - let v = try TeamLog.SharedContentCopyTypeSerializer().deserialize(json) - return EventType.sharedContentCopy(v) - case "shared_content_download": - let v = try TeamLog.SharedContentDownloadTypeSerializer().deserialize(json) - return EventType.sharedContentDownload(v) - case "shared_content_relinquish_membership": - let v = try TeamLog.SharedContentRelinquishMembershipTypeSerializer().deserialize(json) - return EventType.sharedContentRelinquishMembership(v) - case "shared_content_remove_invitees": - let v = try TeamLog.SharedContentRemoveInviteesTypeSerializer().deserialize(json) - return EventType.sharedContentRemoveInvitees(v) - case "shared_content_remove_link_expiry": - let v = try TeamLog.SharedContentRemoveLinkExpiryTypeSerializer().deserialize(json) - return EventType.sharedContentRemoveLinkExpiry(v) - case "shared_content_remove_link_password": - let v = try TeamLog.SharedContentRemoveLinkPasswordTypeSerializer().deserialize(json) - return EventType.sharedContentRemoveLinkPassword(v) - case "shared_content_remove_member": - let v = try TeamLog.SharedContentRemoveMemberTypeSerializer().deserialize(json) - return EventType.sharedContentRemoveMember(v) - case "shared_content_request_access": - let v = try TeamLog.SharedContentRequestAccessTypeSerializer().deserialize(json) - return EventType.sharedContentRequestAccess(v) - case "shared_content_restore_invitees": - let v = try TeamLog.SharedContentRestoreInviteesTypeSerializer().deserialize(json) - return EventType.sharedContentRestoreInvitees(v) - case "shared_content_restore_member": - let v = try TeamLog.SharedContentRestoreMemberTypeSerializer().deserialize(json) - return EventType.sharedContentRestoreMember(v) - case "shared_content_unshare": - let v = try TeamLog.SharedContentUnshareTypeSerializer().deserialize(json) - return EventType.sharedContentUnshare(v) - case "shared_content_view": - let v = try TeamLog.SharedContentViewTypeSerializer().deserialize(json) - return EventType.sharedContentView(v) - case "shared_folder_change_link_policy": - let v = try TeamLog.SharedFolderChangeLinkPolicyTypeSerializer().deserialize(json) - return EventType.sharedFolderChangeLinkPolicy(v) - case "shared_folder_change_members_inheritance_policy": - let v = try TeamLog.SharedFolderChangeMembersInheritancePolicyTypeSerializer().deserialize(json) - return EventType.sharedFolderChangeMembersInheritancePolicy(v) - case "shared_folder_change_members_management_policy": - let v = try TeamLog.SharedFolderChangeMembersManagementPolicyTypeSerializer().deserialize(json) - return EventType.sharedFolderChangeMembersManagementPolicy(v) - case "shared_folder_change_members_policy": - let v = try TeamLog.SharedFolderChangeMembersPolicyTypeSerializer().deserialize(json) - return EventType.sharedFolderChangeMembersPolicy(v) - case "shared_folder_create": - let v = try TeamLog.SharedFolderCreateTypeSerializer().deserialize(json) - return EventType.sharedFolderCreate(v) - case "shared_folder_decline_invitation": - let v = try TeamLog.SharedFolderDeclineInvitationTypeSerializer().deserialize(json) - return EventType.sharedFolderDeclineInvitation(v) - case "shared_folder_mount": - let v = try TeamLog.SharedFolderMountTypeSerializer().deserialize(json) - return EventType.sharedFolderMount(v) - case "shared_folder_nest": - let v = try TeamLog.SharedFolderNestTypeSerializer().deserialize(json) - return EventType.sharedFolderNest(v) - case "shared_folder_transfer_ownership": - let v = try TeamLog.SharedFolderTransferOwnershipTypeSerializer().deserialize(json) - return EventType.sharedFolderTransferOwnership(v) - case "shared_folder_unmount": - let v = try TeamLog.SharedFolderUnmountTypeSerializer().deserialize(json) - return EventType.sharedFolderUnmount(v) - case "shared_link_add_expiry": - let v = try TeamLog.SharedLinkAddExpiryTypeSerializer().deserialize(json) - return EventType.sharedLinkAddExpiry(v) - case "shared_link_change_expiry": - let v = try TeamLog.SharedLinkChangeExpiryTypeSerializer().deserialize(json) - return EventType.sharedLinkChangeExpiry(v) - case "shared_link_change_visibility": - let v = try TeamLog.SharedLinkChangeVisibilityTypeSerializer().deserialize(json) - return EventType.sharedLinkChangeVisibility(v) - case "shared_link_copy": - let v = try TeamLog.SharedLinkCopyTypeSerializer().deserialize(json) - return EventType.sharedLinkCopy(v) - case "shared_link_create": - let v = try TeamLog.SharedLinkCreateTypeSerializer().deserialize(json) - return EventType.sharedLinkCreate(v) - case "shared_link_disable": - let v = try TeamLog.SharedLinkDisableTypeSerializer().deserialize(json) - return EventType.sharedLinkDisable(v) - case "shared_link_download": - let v = try TeamLog.SharedLinkDownloadTypeSerializer().deserialize(json) - return EventType.sharedLinkDownload(v) - case "shared_link_remove_expiry": - let v = try TeamLog.SharedLinkRemoveExpiryTypeSerializer().deserialize(json) - return EventType.sharedLinkRemoveExpiry(v) - case "shared_link_settings_add_expiration": - let v = try TeamLog.SharedLinkSettingsAddExpirationTypeSerializer().deserialize(json) - return EventType.sharedLinkSettingsAddExpiration(v) - case "shared_link_settings_add_password": - let v = try TeamLog.SharedLinkSettingsAddPasswordTypeSerializer().deserialize(json) - return EventType.sharedLinkSettingsAddPassword(v) - case "shared_link_settings_allow_download_disabled": - let v = try TeamLog.SharedLinkSettingsAllowDownloadDisabledTypeSerializer().deserialize(json) - return EventType.sharedLinkSettingsAllowDownloadDisabled(v) - case "shared_link_settings_allow_download_enabled": - let v = try TeamLog.SharedLinkSettingsAllowDownloadEnabledTypeSerializer().deserialize(json) - return EventType.sharedLinkSettingsAllowDownloadEnabled(v) - case "shared_link_settings_change_audience": - let v = try TeamLog.SharedLinkSettingsChangeAudienceTypeSerializer().deserialize(json) - return EventType.sharedLinkSettingsChangeAudience(v) - case "shared_link_settings_change_expiration": - let v = try TeamLog.SharedLinkSettingsChangeExpirationTypeSerializer().deserialize(json) - return EventType.sharedLinkSettingsChangeExpiration(v) - case "shared_link_settings_change_password": - let v = try TeamLog.SharedLinkSettingsChangePasswordTypeSerializer().deserialize(json) - return EventType.sharedLinkSettingsChangePassword(v) - case "shared_link_settings_remove_expiration": - let v = try TeamLog.SharedLinkSettingsRemoveExpirationTypeSerializer().deserialize(json) - return EventType.sharedLinkSettingsRemoveExpiration(v) - case "shared_link_settings_remove_password": - let v = try TeamLog.SharedLinkSettingsRemovePasswordTypeSerializer().deserialize(json) - return EventType.sharedLinkSettingsRemovePassword(v) - case "shared_link_share": - let v = try TeamLog.SharedLinkShareTypeSerializer().deserialize(json) - return EventType.sharedLinkShare(v) - case "shared_link_view": - let v = try TeamLog.SharedLinkViewTypeSerializer().deserialize(json) - return EventType.sharedLinkView(v) - case "shared_note_opened": - let v = try TeamLog.SharedNoteOpenedTypeSerializer().deserialize(json) - return EventType.sharedNoteOpened(v) - case "shmodel_disable_downloads": - let v = try TeamLog.ShmodelDisableDownloadsTypeSerializer().deserialize(json) - return EventType.shmodelDisableDownloads(v) - case "shmodel_enable_downloads": - let v = try TeamLog.ShmodelEnableDownloadsTypeSerializer().deserialize(json) - return EventType.shmodelEnableDownloads(v) - case "shmodel_group_share": - let v = try TeamLog.ShmodelGroupShareTypeSerializer().deserialize(json) - return EventType.shmodelGroupShare(v) - case "showcase_access_granted": - let v = try TeamLog.ShowcaseAccessGrantedTypeSerializer().deserialize(json) - return EventType.showcaseAccessGranted(v) - case "showcase_add_member": - let v = try TeamLog.ShowcaseAddMemberTypeSerializer().deserialize(json) - return EventType.showcaseAddMember(v) - case "showcase_archived": - let v = try TeamLog.ShowcaseArchivedTypeSerializer().deserialize(json) - return EventType.showcaseArchived(v) - case "showcase_created": - let v = try TeamLog.ShowcaseCreatedTypeSerializer().deserialize(json) - return EventType.showcaseCreated(v) - case "showcase_delete_comment": - let v = try TeamLog.ShowcaseDeleteCommentTypeSerializer().deserialize(json) - return EventType.showcaseDeleteComment(v) - case "showcase_edited": - let v = try TeamLog.ShowcaseEditedTypeSerializer().deserialize(json) - return EventType.showcaseEdited(v) - case "showcase_edit_comment": - let v = try TeamLog.ShowcaseEditCommentTypeSerializer().deserialize(json) - return EventType.showcaseEditComment(v) - case "showcase_file_added": - let v = try TeamLog.ShowcaseFileAddedTypeSerializer().deserialize(json) - return EventType.showcaseFileAdded(v) - case "showcase_file_download": - let v = try TeamLog.ShowcaseFileDownloadTypeSerializer().deserialize(json) - return EventType.showcaseFileDownload(v) - case "showcase_file_removed": - let v = try TeamLog.ShowcaseFileRemovedTypeSerializer().deserialize(json) - return EventType.showcaseFileRemoved(v) - case "showcase_file_view": - let v = try TeamLog.ShowcaseFileViewTypeSerializer().deserialize(json) - return EventType.showcaseFileView(v) - case "showcase_permanently_deleted": - let v = try TeamLog.ShowcasePermanentlyDeletedTypeSerializer().deserialize(json) - return EventType.showcasePermanentlyDeleted(v) - case "showcase_post_comment": - let v = try TeamLog.ShowcasePostCommentTypeSerializer().deserialize(json) - return EventType.showcasePostComment(v) - case "showcase_remove_member": - let v = try TeamLog.ShowcaseRemoveMemberTypeSerializer().deserialize(json) - return EventType.showcaseRemoveMember(v) - case "showcase_renamed": - let v = try TeamLog.ShowcaseRenamedTypeSerializer().deserialize(json) - return EventType.showcaseRenamed(v) - case "showcase_request_access": - let v = try TeamLog.ShowcaseRequestAccessTypeSerializer().deserialize(json) - return EventType.showcaseRequestAccess(v) - case "showcase_resolve_comment": - let v = try TeamLog.ShowcaseResolveCommentTypeSerializer().deserialize(json) - return EventType.showcaseResolveComment(v) - case "showcase_restored": - let v = try TeamLog.ShowcaseRestoredTypeSerializer().deserialize(json) - return EventType.showcaseRestored(v) - case "showcase_trashed": - let v = try TeamLog.ShowcaseTrashedTypeSerializer().deserialize(json) - return EventType.showcaseTrashed(v) - case "showcase_trashed_deprecated": - let v = try TeamLog.ShowcaseTrashedDeprecatedTypeSerializer().deserialize(json) - return EventType.showcaseTrashedDeprecated(v) - case "showcase_unresolve_comment": - let v = try TeamLog.ShowcaseUnresolveCommentTypeSerializer().deserialize(json) - return EventType.showcaseUnresolveComment(v) - case "showcase_untrashed": - let v = try TeamLog.ShowcaseUntrashedTypeSerializer().deserialize(json) - return EventType.showcaseUntrashed(v) - case "showcase_untrashed_deprecated": - let v = try TeamLog.ShowcaseUntrashedDeprecatedTypeSerializer().deserialize(json) - return EventType.showcaseUntrashedDeprecated(v) - case "showcase_view": - let v = try TeamLog.ShowcaseViewTypeSerializer().deserialize(json) - return EventType.showcaseView(v) - case "sso_add_cert": - let v = try TeamLog.SsoAddCertTypeSerializer().deserialize(json) - return EventType.ssoAddCert(v) - case "sso_add_login_url": - let v = try TeamLog.SsoAddLoginUrlTypeSerializer().deserialize(json) - return EventType.ssoAddLoginUrl(v) - case "sso_add_logout_url": - let v = try TeamLog.SsoAddLogoutUrlTypeSerializer().deserialize(json) - return EventType.ssoAddLogoutUrl(v) - case "sso_change_cert": - let v = try TeamLog.SsoChangeCertTypeSerializer().deserialize(json) - return EventType.ssoChangeCert(v) - case "sso_change_login_url": - let v = try TeamLog.SsoChangeLoginUrlTypeSerializer().deserialize(json) - return EventType.ssoChangeLoginUrl(v) - case "sso_change_logout_url": - let v = try TeamLog.SsoChangeLogoutUrlTypeSerializer().deserialize(json) - return EventType.ssoChangeLogoutUrl(v) - case "sso_change_saml_identity_mode": - let v = try TeamLog.SsoChangeSamlIdentityModeTypeSerializer().deserialize(json) - return EventType.ssoChangeSamlIdentityMode(v) - case "sso_remove_cert": - let v = try TeamLog.SsoRemoveCertTypeSerializer().deserialize(json) - return EventType.ssoRemoveCert(v) - case "sso_remove_login_url": - let v = try TeamLog.SsoRemoveLoginUrlTypeSerializer().deserialize(json) - return EventType.ssoRemoveLoginUrl(v) - case "sso_remove_logout_url": - let v = try TeamLog.SsoRemoveLogoutUrlTypeSerializer().deserialize(json) - return EventType.ssoRemoveLogoutUrl(v) - case "team_folder_change_status": - let v = try TeamLog.TeamFolderChangeStatusTypeSerializer().deserialize(json) - return EventType.teamFolderChangeStatus(v) - case "team_folder_create": - let v = try TeamLog.TeamFolderCreateTypeSerializer().deserialize(json) - return EventType.teamFolderCreate(v) - case "team_folder_downgrade": - let v = try TeamLog.TeamFolderDowngradeTypeSerializer().deserialize(json) - return EventType.teamFolderDowngrade(v) - case "team_folder_permanently_delete": - let v = try TeamLog.TeamFolderPermanentlyDeleteTypeSerializer().deserialize(json) - return EventType.teamFolderPermanentlyDelete(v) - case "team_folder_rename": - let v = try TeamLog.TeamFolderRenameTypeSerializer().deserialize(json) - return EventType.teamFolderRename(v) - case "team_selective_sync_settings_changed": - let v = try TeamLog.TeamSelectiveSyncSettingsChangedTypeSerializer().deserialize(json) - return EventType.teamSelectiveSyncSettingsChanged(v) - case "account_capture_change_policy": - let v = try TeamLog.AccountCaptureChangePolicyTypeSerializer().deserialize(json) - return EventType.accountCaptureChangePolicy(v) - case "admin_email_reminders_changed": - let v = try TeamLog.AdminEmailRemindersChangedTypeSerializer().deserialize(json) - return EventType.adminEmailRemindersChanged(v) - case "allow_download_disabled": - let v = try TeamLog.AllowDownloadDisabledTypeSerializer().deserialize(json) - return EventType.allowDownloadDisabled(v) - case "allow_download_enabled": - let v = try TeamLog.AllowDownloadEnabledTypeSerializer().deserialize(json) - return EventType.allowDownloadEnabled(v) - case "app_permissions_changed": - let v = try TeamLog.AppPermissionsChangedTypeSerializer().deserialize(json) - return EventType.appPermissionsChanged(v) - case "camera_uploads_policy_changed": - let v = try TeamLog.CameraUploadsPolicyChangedTypeSerializer().deserialize(json) - return EventType.cameraUploadsPolicyChanged(v) - case "capture_transcript_policy_changed": - let v = try TeamLog.CaptureTranscriptPolicyChangedTypeSerializer().deserialize(json) - return EventType.captureTranscriptPolicyChanged(v) - case "classification_change_policy": - let v = try TeamLog.ClassificationChangePolicyTypeSerializer().deserialize(json) - return EventType.classificationChangePolicy(v) - case "computer_backup_policy_changed": - let v = try TeamLog.ComputerBackupPolicyChangedTypeSerializer().deserialize(json) - return EventType.computerBackupPolicyChanged(v) - case "content_administration_policy_changed": - let v = try TeamLog.ContentAdministrationPolicyChangedTypeSerializer().deserialize(json) - return EventType.contentAdministrationPolicyChanged(v) - case "data_placement_restriction_change_policy": - let v = try TeamLog.DataPlacementRestrictionChangePolicyTypeSerializer().deserialize(json) - return EventType.dataPlacementRestrictionChangePolicy(v) - case "data_placement_restriction_satisfy_policy": - let v = try TeamLog.DataPlacementRestrictionSatisfyPolicyTypeSerializer().deserialize(json) - return EventType.dataPlacementRestrictionSatisfyPolicy(v) - case "device_approvals_add_exception": - let v = try TeamLog.DeviceApprovalsAddExceptionTypeSerializer().deserialize(json) - return EventType.deviceApprovalsAddException(v) - case "device_approvals_change_desktop_policy": - let v = try TeamLog.DeviceApprovalsChangeDesktopPolicyTypeSerializer().deserialize(json) - return EventType.deviceApprovalsChangeDesktopPolicy(v) - case "device_approvals_change_mobile_policy": - let v = try TeamLog.DeviceApprovalsChangeMobilePolicyTypeSerializer().deserialize(json) - return EventType.deviceApprovalsChangeMobilePolicy(v) - case "device_approvals_change_overage_action": - let v = try TeamLog.DeviceApprovalsChangeOverageActionTypeSerializer().deserialize(json) - return EventType.deviceApprovalsChangeOverageAction(v) - case "device_approvals_change_unlink_action": - let v = try TeamLog.DeviceApprovalsChangeUnlinkActionTypeSerializer().deserialize(json) - return EventType.deviceApprovalsChangeUnlinkAction(v) - case "device_approvals_remove_exception": - let v = try TeamLog.DeviceApprovalsRemoveExceptionTypeSerializer().deserialize(json) - return EventType.deviceApprovalsRemoveException(v) - case "directory_restrictions_add_members": - let v = try TeamLog.DirectoryRestrictionsAddMembersTypeSerializer().deserialize(json) - return EventType.directoryRestrictionsAddMembers(v) - case "directory_restrictions_remove_members": - let v = try TeamLog.DirectoryRestrictionsRemoveMembersTypeSerializer().deserialize(json) - return EventType.directoryRestrictionsRemoveMembers(v) - case "dropbox_passwords_policy_changed": - let v = try TeamLog.DropboxPasswordsPolicyChangedTypeSerializer().deserialize(json) - return EventType.dropboxPasswordsPolicyChanged(v) - case "email_ingest_policy_changed": - let v = try TeamLog.EmailIngestPolicyChangedTypeSerializer().deserialize(json) - return EventType.emailIngestPolicyChanged(v) - case "emm_add_exception": - let v = try TeamLog.EmmAddExceptionTypeSerializer().deserialize(json) - return EventType.emmAddException(v) - case "emm_change_policy": - let v = try TeamLog.EmmChangePolicyTypeSerializer().deserialize(json) - return EventType.emmChangePolicy(v) - case "emm_remove_exception": - let v = try TeamLog.EmmRemoveExceptionTypeSerializer().deserialize(json) - return EventType.emmRemoveException(v) - case "extended_version_history_change_policy": - let v = try TeamLog.ExtendedVersionHistoryChangePolicyTypeSerializer().deserialize(json) - return EventType.extendedVersionHistoryChangePolicy(v) - case "external_drive_backup_policy_changed": - let v = try TeamLog.ExternalDriveBackupPolicyChangedTypeSerializer().deserialize(json) - return EventType.externalDriveBackupPolicyChanged(v) - case "file_comments_change_policy": - let v = try TeamLog.FileCommentsChangePolicyTypeSerializer().deserialize(json) - return EventType.fileCommentsChangePolicy(v) - case "file_locking_policy_changed": - let v = try TeamLog.FileLockingPolicyChangedTypeSerializer().deserialize(json) - return EventType.fileLockingPolicyChanged(v) - case "file_provider_migration_policy_changed": - let v = try TeamLog.FileProviderMigrationPolicyChangedTypeSerializer().deserialize(json) - return EventType.fileProviderMigrationPolicyChanged(v) - case "file_requests_change_policy": - let v = try TeamLog.FileRequestsChangePolicyTypeSerializer().deserialize(json) - return EventType.fileRequestsChangePolicy(v) - case "file_requests_emails_enabled": - let v = try TeamLog.FileRequestsEmailsEnabledTypeSerializer().deserialize(json) - return EventType.fileRequestsEmailsEnabled(v) - case "file_requests_emails_restricted_to_team_only": - let v = try TeamLog.FileRequestsEmailsRestrictedToTeamOnlyTypeSerializer().deserialize(json) - return EventType.fileRequestsEmailsRestrictedToTeamOnly(v) - case "file_transfers_policy_changed": - let v = try TeamLog.FileTransfersPolicyChangedTypeSerializer().deserialize(json) - return EventType.fileTransfersPolicyChanged(v) - case "folder_link_restriction_policy_changed": - let v = try TeamLog.FolderLinkRestrictionPolicyChangedTypeSerializer().deserialize(json) - return EventType.folderLinkRestrictionPolicyChanged(v) - case "google_sso_change_policy": - let v = try TeamLog.GoogleSsoChangePolicyTypeSerializer().deserialize(json) - return EventType.googleSsoChangePolicy(v) - case "group_user_management_change_policy": - let v = try TeamLog.GroupUserManagementChangePolicyTypeSerializer().deserialize(json) - return EventType.groupUserManagementChangePolicy(v) - case "integration_policy_changed": - let v = try TeamLog.IntegrationPolicyChangedTypeSerializer().deserialize(json) - return EventType.integrationPolicyChanged(v) - case "invite_acceptance_email_policy_changed": - let v = try TeamLog.InviteAcceptanceEmailPolicyChangedTypeSerializer().deserialize(json) - return EventType.inviteAcceptanceEmailPolicyChanged(v) - case "member_requests_change_policy": - let v = try TeamLog.MemberRequestsChangePolicyTypeSerializer().deserialize(json) - return EventType.memberRequestsChangePolicy(v) - case "member_send_invite_policy_changed": - let v = try TeamLog.MemberSendInvitePolicyChangedTypeSerializer().deserialize(json) - return EventType.memberSendInvitePolicyChanged(v) - case "member_space_limits_add_exception": - let v = try TeamLog.MemberSpaceLimitsAddExceptionTypeSerializer().deserialize(json) - return EventType.memberSpaceLimitsAddException(v) - case "member_space_limits_change_caps_type_policy": - let v = try TeamLog.MemberSpaceLimitsChangeCapsTypePolicyTypeSerializer().deserialize(json) - return EventType.memberSpaceLimitsChangeCapsTypePolicy(v) - case "member_space_limits_change_policy": - let v = try TeamLog.MemberSpaceLimitsChangePolicyTypeSerializer().deserialize(json) - return EventType.memberSpaceLimitsChangePolicy(v) - case "member_space_limits_remove_exception": - let v = try TeamLog.MemberSpaceLimitsRemoveExceptionTypeSerializer().deserialize(json) - return EventType.memberSpaceLimitsRemoveException(v) - case "member_suggestions_change_policy": - let v = try TeamLog.MemberSuggestionsChangePolicyTypeSerializer().deserialize(json) - return EventType.memberSuggestionsChangePolicy(v) - case "microsoft_office_addin_change_policy": - let v = try TeamLog.MicrosoftOfficeAddinChangePolicyTypeSerializer().deserialize(json) - return EventType.microsoftOfficeAddinChangePolicy(v) - case "network_control_change_policy": - let v = try TeamLog.NetworkControlChangePolicyTypeSerializer().deserialize(json) - return EventType.networkControlChangePolicy(v) - case "paper_change_deployment_policy": - let v = try TeamLog.PaperChangeDeploymentPolicyTypeSerializer().deserialize(json) - return EventType.paperChangeDeploymentPolicy(v) - case "paper_change_member_link_policy": - let v = try TeamLog.PaperChangeMemberLinkPolicyTypeSerializer().deserialize(json) - return EventType.paperChangeMemberLinkPolicy(v) - case "paper_change_member_policy": - let v = try TeamLog.PaperChangeMemberPolicyTypeSerializer().deserialize(json) - return EventType.paperChangeMemberPolicy(v) - case "paper_change_policy": - let v = try TeamLog.PaperChangePolicyTypeSerializer().deserialize(json) - return EventType.paperChangePolicy(v) - case "paper_default_folder_policy_changed": - let v = try TeamLog.PaperDefaultFolderPolicyChangedTypeSerializer().deserialize(json) - return EventType.paperDefaultFolderPolicyChanged(v) - case "paper_desktop_policy_changed": - let v = try TeamLog.PaperDesktopPolicyChangedTypeSerializer().deserialize(json) - return EventType.paperDesktopPolicyChanged(v) - case "paper_enabled_users_group_addition": - let v = try TeamLog.PaperEnabledUsersGroupAdditionTypeSerializer().deserialize(json) - return EventType.paperEnabledUsersGroupAddition(v) - case "paper_enabled_users_group_removal": - let v = try TeamLog.PaperEnabledUsersGroupRemovalTypeSerializer().deserialize(json) - return EventType.paperEnabledUsersGroupRemoval(v) - case "password_strength_requirements_change_policy": - let v = try TeamLog.PasswordStrengthRequirementsChangePolicyTypeSerializer().deserialize(json) - return EventType.passwordStrengthRequirementsChangePolicy(v) - case "permanent_delete_change_policy": - let v = try TeamLog.PermanentDeleteChangePolicyTypeSerializer().deserialize(json) - return EventType.permanentDeleteChangePolicy(v) - case "reseller_support_change_policy": - let v = try TeamLog.ResellerSupportChangePolicyTypeSerializer().deserialize(json) - return EventType.resellerSupportChangePolicy(v) - case "rewind_policy_changed": - let v = try TeamLog.RewindPolicyChangedTypeSerializer().deserialize(json) - return EventType.rewindPolicyChanged(v) - case "send_for_signature_policy_changed": - let v = try TeamLog.SendForSignaturePolicyChangedTypeSerializer().deserialize(json) - return EventType.sendForSignaturePolicyChanged(v) - case "sharing_change_folder_join_policy": - let v = try TeamLog.SharingChangeFolderJoinPolicyTypeSerializer().deserialize(json) - return EventType.sharingChangeFolderJoinPolicy(v) - case "sharing_change_link_allow_change_expiration_policy": - let v = try TeamLog.SharingChangeLinkAllowChangeExpirationPolicyTypeSerializer().deserialize(json) - return EventType.sharingChangeLinkAllowChangeExpirationPolicy(v) - case "sharing_change_link_default_expiration_policy": - let v = try TeamLog.SharingChangeLinkDefaultExpirationPolicyTypeSerializer().deserialize(json) - return EventType.sharingChangeLinkDefaultExpirationPolicy(v) - case "sharing_change_link_enforce_password_policy": - let v = try TeamLog.SharingChangeLinkEnforcePasswordPolicyTypeSerializer().deserialize(json) - return EventType.sharingChangeLinkEnforcePasswordPolicy(v) - case "sharing_change_link_policy": - let v = try TeamLog.SharingChangeLinkPolicyTypeSerializer().deserialize(json) - return EventType.sharingChangeLinkPolicy(v) - case "sharing_change_member_policy": - let v = try TeamLog.SharingChangeMemberPolicyTypeSerializer().deserialize(json) - return EventType.sharingChangeMemberPolicy(v) - case "showcase_change_download_policy": - let v = try TeamLog.ShowcaseChangeDownloadPolicyTypeSerializer().deserialize(json) - return EventType.showcaseChangeDownloadPolicy(v) - case "showcase_change_enabled_policy": - let v = try TeamLog.ShowcaseChangeEnabledPolicyTypeSerializer().deserialize(json) - return EventType.showcaseChangeEnabledPolicy(v) - case "showcase_change_external_sharing_policy": - let v = try TeamLog.ShowcaseChangeExternalSharingPolicyTypeSerializer().deserialize(json) - return EventType.showcaseChangeExternalSharingPolicy(v) - case "smarter_smart_sync_policy_changed": - let v = try TeamLog.SmarterSmartSyncPolicyChangedTypeSerializer().deserialize(json) - return EventType.smarterSmartSyncPolicyChanged(v) - case "smart_sync_change_policy": - let v = try TeamLog.SmartSyncChangePolicyTypeSerializer().deserialize(json) - return EventType.smartSyncChangePolicy(v) - case "smart_sync_not_opt_out": - let v = try TeamLog.SmartSyncNotOptOutTypeSerializer().deserialize(json) - return EventType.smartSyncNotOptOut(v) - case "smart_sync_opt_out": - let v = try TeamLog.SmartSyncOptOutTypeSerializer().deserialize(json) - return EventType.smartSyncOptOut(v) - case "sso_change_policy": - let v = try TeamLog.SsoChangePolicyTypeSerializer().deserialize(json) - return EventType.ssoChangePolicy(v) - case "team_branding_policy_changed": - let v = try TeamLog.TeamBrandingPolicyChangedTypeSerializer().deserialize(json) - return EventType.teamBrandingPolicyChanged(v) - case "team_extensions_policy_changed": - let v = try TeamLog.TeamExtensionsPolicyChangedTypeSerializer().deserialize(json) - return EventType.teamExtensionsPolicyChanged(v) - case "team_selective_sync_policy_changed": - let v = try TeamLog.TeamSelectiveSyncPolicyChangedTypeSerializer().deserialize(json) - return EventType.teamSelectiveSyncPolicyChanged(v) - case "team_sharing_whitelist_subjects_changed": - let v = try TeamLog.TeamSharingWhitelistSubjectsChangedTypeSerializer().deserialize(json) - return EventType.teamSharingWhitelistSubjectsChanged(v) - case "tfa_add_exception": - let v = try TeamLog.TfaAddExceptionTypeSerializer().deserialize(json) - return EventType.tfaAddException(v) - case "tfa_change_policy": - let v = try TeamLog.TfaChangePolicyTypeSerializer().deserialize(json) - return EventType.tfaChangePolicy(v) - case "tfa_remove_exception": - let v = try TeamLog.TfaRemoveExceptionTypeSerializer().deserialize(json) - return EventType.tfaRemoveException(v) - case "two_account_change_policy": - let v = try TeamLog.TwoAccountChangePolicyTypeSerializer().deserialize(json) - return EventType.twoAccountChangePolicy(v) - case "viewer_info_policy_changed": - let v = try TeamLog.ViewerInfoPolicyChangedTypeSerializer().deserialize(json) - return EventType.viewerInfoPolicyChanged(v) - case "watermarking_policy_changed": - let v = try TeamLog.WatermarkingPolicyChangedTypeSerializer().deserialize(json) - return EventType.watermarkingPolicyChanged(v) - case "web_sessions_change_active_session_limit": - let v = try TeamLog.WebSessionsChangeActiveSessionLimitTypeSerializer().deserialize(json) - return EventType.webSessionsChangeActiveSessionLimit(v) - case "web_sessions_change_fixed_length_policy": - let v = try TeamLog.WebSessionsChangeFixedLengthPolicyTypeSerializer().deserialize(json) - return EventType.webSessionsChangeFixedLengthPolicy(v) - case "web_sessions_change_idle_length_policy": - let v = try TeamLog.WebSessionsChangeIdleLengthPolicyTypeSerializer().deserialize(json) - return EventType.webSessionsChangeIdleLengthPolicy(v) - case "data_residency_migration_request_successful": - let v = try TeamLog.DataResidencyMigrationRequestSuccessfulTypeSerializer().deserialize(json) - return EventType.dataResidencyMigrationRequestSuccessful(v) - case "data_residency_migration_request_unsuccessful": - let v = try TeamLog.DataResidencyMigrationRequestUnsuccessfulTypeSerializer().deserialize(json) - return EventType.dataResidencyMigrationRequestUnsuccessful(v) - case "team_merge_from": - let v = try TeamLog.TeamMergeFromTypeSerializer().deserialize(json) - return EventType.teamMergeFrom(v) - case "team_merge_to": - let v = try TeamLog.TeamMergeToTypeSerializer().deserialize(json) - return EventType.teamMergeTo(v) - case "team_profile_add_background": - let v = try TeamLog.TeamProfileAddBackgroundTypeSerializer().deserialize(json) - return EventType.teamProfileAddBackground(v) - case "team_profile_add_logo": - let v = try TeamLog.TeamProfileAddLogoTypeSerializer().deserialize(json) - return EventType.teamProfileAddLogo(v) - case "team_profile_change_background": - let v = try TeamLog.TeamProfileChangeBackgroundTypeSerializer().deserialize(json) - return EventType.teamProfileChangeBackground(v) - case "team_profile_change_default_language": - let v = try TeamLog.TeamProfileChangeDefaultLanguageTypeSerializer().deserialize(json) - return EventType.teamProfileChangeDefaultLanguage(v) - case "team_profile_change_logo": - let v = try TeamLog.TeamProfileChangeLogoTypeSerializer().deserialize(json) - return EventType.teamProfileChangeLogo(v) - case "team_profile_change_name": - let v = try TeamLog.TeamProfileChangeNameTypeSerializer().deserialize(json) - return EventType.teamProfileChangeName(v) - case "team_profile_remove_background": - let v = try TeamLog.TeamProfileRemoveBackgroundTypeSerializer().deserialize(json) - return EventType.teamProfileRemoveBackground(v) - case "team_profile_remove_logo": - let v = try TeamLog.TeamProfileRemoveLogoTypeSerializer().deserialize(json) - return EventType.teamProfileRemoveLogo(v) - case "tfa_add_backup_phone": - let v = try TeamLog.TfaAddBackupPhoneTypeSerializer().deserialize(json) - return EventType.tfaAddBackupPhone(v) - case "tfa_add_security_key": - let v = try TeamLog.TfaAddSecurityKeyTypeSerializer().deserialize(json) - return EventType.tfaAddSecurityKey(v) - case "tfa_change_backup_phone": - let v = try TeamLog.TfaChangeBackupPhoneTypeSerializer().deserialize(json) - return EventType.tfaChangeBackupPhone(v) - case "tfa_change_status": - let v = try TeamLog.TfaChangeStatusTypeSerializer().deserialize(json) - return EventType.tfaChangeStatus(v) - case "tfa_remove_backup_phone": - let v = try TeamLog.TfaRemoveBackupPhoneTypeSerializer().deserialize(json) - return EventType.tfaRemoveBackupPhone(v) - case "tfa_remove_security_key": - let v = try TeamLog.TfaRemoveSecurityKeyTypeSerializer().deserialize(json) - return EventType.tfaRemoveSecurityKey(v) - case "tfa_reset": - let v = try TeamLog.TfaResetTypeSerializer().deserialize(json) - return EventType.tfaReset(v) - case "changed_enterprise_admin_role": - let v = try TeamLog.ChangedEnterpriseAdminRoleTypeSerializer().deserialize(json) - return EventType.changedEnterpriseAdminRole(v) - case "changed_enterprise_connected_team_status": - let v = try TeamLog.ChangedEnterpriseConnectedTeamStatusTypeSerializer().deserialize(json) - return EventType.changedEnterpriseConnectedTeamStatus(v) - case "ended_enterprise_admin_session": - let v = try TeamLog.EndedEnterpriseAdminSessionTypeSerializer().deserialize(json) - return EventType.endedEnterpriseAdminSession(v) - case "ended_enterprise_admin_session_deprecated": - let v = try TeamLog.EndedEnterpriseAdminSessionDeprecatedTypeSerializer().deserialize(json) - return EventType.endedEnterpriseAdminSessionDeprecated(v) - case "enterprise_settings_locking": - let v = try TeamLog.EnterpriseSettingsLockingTypeSerializer().deserialize(json) - return EventType.enterpriseSettingsLocking(v) - case "guest_admin_change_status": - let v = try TeamLog.GuestAdminChangeStatusTypeSerializer().deserialize(json) - return EventType.guestAdminChangeStatus(v) - case "started_enterprise_admin_session": - let v = try TeamLog.StartedEnterpriseAdminSessionTypeSerializer().deserialize(json) - return EventType.startedEnterpriseAdminSession(v) - case "team_merge_request_accepted": - let v = try TeamLog.TeamMergeRequestAcceptedTypeSerializer().deserialize(json) - return EventType.teamMergeRequestAccepted(v) - case "team_merge_request_accepted_shown_to_primary_team": - let v = try TeamLog.TeamMergeRequestAcceptedShownToPrimaryTeamTypeSerializer().deserialize(json) - return EventType.teamMergeRequestAcceptedShownToPrimaryTeam(v) - case "team_merge_request_accepted_shown_to_secondary_team": - let v = try TeamLog.TeamMergeRequestAcceptedShownToSecondaryTeamTypeSerializer().deserialize(json) - return EventType.teamMergeRequestAcceptedShownToSecondaryTeam(v) - case "team_merge_request_auto_canceled": - let v = try TeamLog.TeamMergeRequestAutoCanceledTypeSerializer().deserialize(json) - return EventType.teamMergeRequestAutoCanceled(v) - case "team_merge_request_canceled": - let v = try TeamLog.TeamMergeRequestCanceledTypeSerializer().deserialize(json) - return EventType.teamMergeRequestCanceled(v) - case "team_merge_request_canceled_shown_to_primary_team": - let v = try TeamLog.TeamMergeRequestCanceledShownToPrimaryTeamTypeSerializer().deserialize(json) - return EventType.teamMergeRequestCanceledShownToPrimaryTeam(v) - case "team_merge_request_canceled_shown_to_secondary_team": - let v = try TeamLog.TeamMergeRequestCanceledShownToSecondaryTeamTypeSerializer().deserialize(json) - return EventType.teamMergeRequestCanceledShownToSecondaryTeam(v) - case "team_merge_request_expired": - let v = try TeamLog.TeamMergeRequestExpiredTypeSerializer().deserialize(json) - return EventType.teamMergeRequestExpired(v) - case "team_merge_request_expired_shown_to_primary_team": - let v = try TeamLog.TeamMergeRequestExpiredShownToPrimaryTeamTypeSerializer().deserialize(json) - return EventType.teamMergeRequestExpiredShownToPrimaryTeam(v) - case "team_merge_request_expired_shown_to_secondary_team": - let v = try TeamLog.TeamMergeRequestExpiredShownToSecondaryTeamTypeSerializer().deserialize(json) - return EventType.teamMergeRequestExpiredShownToSecondaryTeam(v) - case "team_merge_request_rejected_shown_to_primary_team": - let v = try TeamLog.TeamMergeRequestRejectedShownToPrimaryTeamTypeSerializer().deserialize(json) - return EventType.teamMergeRequestRejectedShownToPrimaryTeam(v) - case "team_merge_request_rejected_shown_to_secondary_team": - let v = try TeamLog.TeamMergeRequestRejectedShownToSecondaryTeamTypeSerializer().deserialize(json) - return EventType.teamMergeRequestRejectedShownToSecondaryTeam(v) - case "team_merge_request_reminder": - let v = try TeamLog.TeamMergeRequestReminderTypeSerializer().deserialize(json) - return EventType.teamMergeRequestReminder(v) - case "team_merge_request_reminder_shown_to_primary_team": - let v = try TeamLog.TeamMergeRequestReminderShownToPrimaryTeamTypeSerializer().deserialize(json) - return EventType.teamMergeRequestReminderShownToPrimaryTeam(v) - case "team_merge_request_reminder_shown_to_secondary_team": - let v = try TeamLog.TeamMergeRequestReminderShownToSecondaryTeamTypeSerializer().deserialize(json) - return EventType.teamMergeRequestReminderShownToSecondaryTeam(v) - case "team_merge_request_revoked": - let v = try TeamLog.TeamMergeRequestRevokedTypeSerializer().deserialize(json) - return EventType.teamMergeRequestRevoked(v) - case "team_merge_request_sent_shown_to_primary_team": - let v = try TeamLog.TeamMergeRequestSentShownToPrimaryTeamTypeSerializer().deserialize(json) - return EventType.teamMergeRequestSentShownToPrimaryTeam(v) - case "team_merge_request_sent_shown_to_secondary_team": - let v = try TeamLog.TeamMergeRequestSentShownToSecondaryTeamTypeSerializer().deserialize(json) - return EventType.teamMergeRequestSentShownToSecondaryTeam(v) - case "other": - return EventType.other - default: - return EventType.other - } - default: - throw JSONSerializerError.deserializeError(type: EventType.self, json: json) + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "admin_alerting_alert_state_changed": + let v = try TeamLog.AdminAlertingAlertStateChangedTypeSerializer().deserialize(json) + return EventType.adminAlertingAlertStateChanged(v) + case "admin_alerting_changed_alert_config": + let v = try TeamLog.AdminAlertingChangedAlertConfigTypeSerializer().deserialize(json) + return EventType.adminAlertingChangedAlertConfig(v) + case "admin_alerting_triggered_alert": + let v = try TeamLog.AdminAlertingTriggeredAlertTypeSerializer().deserialize(json) + return EventType.adminAlertingTriggeredAlert(v) + case "ransomware_restore_process_completed": + let v = try TeamLog.RansomwareRestoreProcessCompletedTypeSerializer().deserialize(json) + return EventType.ransomwareRestoreProcessCompleted(v) + case "ransomware_restore_process_started": + let v = try TeamLog.RansomwareRestoreProcessStartedTypeSerializer().deserialize(json) + return EventType.ransomwareRestoreProcessStarted(v) + case "app_blocked_by_permissions": + let v = try TeamLog.AppBlockedByPermissionsTypeSerializer().deserialize(json) + return EventType.appBlockedByPermissions(v) + case "app_link_team": + let v = try TeamLog.AppLinkTeamTypeSerializer().deserialize(json) + return EventType.appLinkTeam(v) + case "app_link_user": + let v = try TeamLog.AppLinkUserTypeSerializer().deserialize(json) + return EventType.appLinkUser(v) + case "app_unlink_team": + let v = try TeamLog.AppUnlinkTeamTypeSerializer().deserialize(json) + return EventType.appUnlinkTeam(v) + case "app_unlink_user": + let v = try TeamLog.AppUnlinkUserTypeSerializer().deserialize(json) + return EventType.appUnlinkUser(v) + case "integration_connected": + let v = try TeamLog.IntegrationConnectedTypeSerializer().deserialize(json) + return EventType.integrationConnected(v) + case "integration_disconnected": + let v = try TeamLog.IntegrationDisconnectedTypeSerializer().deserialize(json) + return EventType.integrationDisconnected(v) + case "file_add_comment": + let v = try TeamLog.FileAddCommentTypeSerializer().deserialize(json) + return EventType.fileAddComment(v) + case "file_change_comment_subscription": + let v = try TeamLog.FileChangeCommentSubscriptionTypeSerializer().deserialize(json) + return EventType.fileChangeCommentSubscription(v) + case "file_delete_comment": + let v = try TeamLog.FileDeleteCommentTypeSerializer().deserialize(json) + return EventType.fileDeleteComment(v) + case "file_edit_comment": + let v = try TeamLog.FileEditCommentTypeSerializer().deserialize(json) + return EventType.fileEditComment(v) + case "file_like_comment": + let v = try TeamLog.FileLikeCommentTypeSerializer().deserialize(json) + return EventType.fileLikeComment(v) + case "file_resolve_comment": + let v = try TeamLog.FileResolveCommentTypeSerializer().deserialize(json) + return EventType.fileResolveComment(v) + case "file_unlike_comment": + let v = try TeamLog.FileUnlikeCommentTypeSerializer().deserialize(json) + return EventType.fileUnlikeComment(v) + case "file_unresolve_comment": + let v = try TeamLog.FileUnresolveCommentTypeSerializer().deserialize(json) + return EventType.fileUnresolveComment(v) + case "dash_added_comment_to_stack": + let v = try TeamLog.DashAddedCommentToStackTypeSerializer().deserialize(json) + return EventType.dashAddedCommentToStack(v) + case "dash_added_connector": + let v = try TeamLog.DashAddedConnectorTypeSerializer().deserialize(json) + return EventType.dashAddedConnector(v) + case "dash_added_link_to_stack": + let v = try TeamLog.DashAddedLinkToStackTypeSerializer().deserialize(json) + return EventType.dashAddedLinkToStack(v) + case "dash_added_team_email_domain_allowlist": + let v = try TeamLog.DashAddedTeamEmailDomainAllowlistTypeSerializer().deserialize(json) + return EventType.dashAddedTeamEmailDomainAllowlist(v) + case "dash_admin_added_org_wide_connector": + let v = try TeamLog.DashAdminAddedOrgWideConnectorTypeSerializer().deserialize(json) + return EventType.dashAdminAddedOrgWideConnector(v) + case "dash_admin_disabled_connector": + let v = try TeamLog.DashAdminDisabledConnectorTypeSerializer().deserialize(json) + return EventType.dashAdminDisabledConnector(v) + case "dash_admin_enabled_connector": + let v = try TeamLog.DashAdminEnabledConnectorTypeSerializer().deserialize(json) + return EventType.dashAdminEnabledConnector(v) + case "dash_admin_removed_org_wide_connector": + let v = try TeamLog.DashAdminRemovedOrgWideConnectorTypeSerializer().deserialize(json) + return EventType.dashAdminRemovedOrgWideConnector(v) + case "dash_archived_stack": + let v = try TeamLog.DashArchivedStackTypeSerializer().deserialize(json) + return EventType.dashArchivedStack(v) + case "dash_changed_audience_of_shared_link_to_stack": + let v = try TeamLog.DashChangedAudienceOfSharedLinkToStackTypeSerializer().deserialize(json) + return EventType.dashChangedAudienceOfSharedLinkToStack(v) + case "dash_cloned_stack": + let v = try TeamLog.DashClonedStackTypeSerializer().deserialize(json) + return EventType.dashClonedStack(v) + case "dash_connector_tools_call": + let v = try TeamLog.DashConnectorToolsCallTypeSerializer().deserialize(json) + return EventType.dashConnectorToolsCall(v) + case "dash_created_stack": + let v = try TeamLog.DashCreatedStackTypeSerializer().deserialize(json) + return EventType.dashCreatedStack(v) + case "dash_deleted_comment_from_stack": + let v = try TeamLog.DashDeletedCommentFromStackTypeSerializer().deserialize(json) + return EventType.dashDeletedCommentFromStack(v) + case "dash_deleted_stack": + let v = try TeamLog.DashDeletedStackTypeSerializer().deserialize(json) + return EventType.dashDeletedStack(v) + case "dash_edited_comment_in_stack": + let v = try TeamLog.DashEditedCommentInStackTypeSerializer().deserialize(json) + return EventType.dashEditedCommentInStack(v) + case "dash_external_user_opened_stack": + let v = try TeamLog.DashExternalUserOpenedStackTypeSerializer().deserialize(json) + return EventType.dashExternalUserOpenedStack(v) + case "dash_first_launched_desktop": + let v = try TeamLog.DashFirstLaunchedDesktopTypeSerializer().deserialize(json) + return EventType.dashFirstLaunchedDesktop(v) + case "dash_first_launched_extension": + let v = try TeamLog.DashFirstLaunchedExtensionTypeSerializer().deserialize(json) + return EventType.dashFirstLaunchedExtension(v) + case "dash_first_launched_web_start_page": + let v = try TeamLog.DashFirstLaunchedWebStartPageTypeSerializer().deserialize(json) + return EventType.dashFirstLaunchedWebStartPage(v) + case "dash_opened_shared_link_to_stack": + let v = try TeamLog.DashOpenedSharedLinkToStackTypeSerializer().deserialize(json) + return EventType.dashOpenedSharedLinkToStack(v) + case "dash_opened_stack": + let v = try TeamLog.DashOpenedStackTypeSerializer().deserialize(json) + return EventType.dashOpenedStack(v) + case "dash_preview_opt_out_status_changed": + let v = try TeamLog.DashPreviewOptOutStatusChangedTypeSerializer().deserialize(json) + return EventType.dashPreviewOptOutStatusChanged(v) + case "dash_removed_connector": + let v = try TeamLog.DashRemovedConnectorTypeSerializer().deserialize(json) + return EventType.dashRemovedConnector(v) + case "dash_removed_link_from_stack": + let v = try TeamLog.DashRemovedLinkFromStackTypeSerializer().deserialize(json) + return EventType.dashRemovedLinkFromStack(v) + case "dash_removed_shared_link_to_stack": + let v = try TeamLog.DashRemovedSharedLinkToStackTypeSerializer().deserialize(json) + return EventType.dashRemovedSharedLinkToStack(v) + case "dash_removed_team_email_domain_allowlist": + let v = try TeamLog.DashRemovedTeamEmailDomainAllowlistTypeSerializer().deserialize(json) + return EventType.dashRemovedTeamEmailDomainAllowlist(v) + case "dash_renamed_stack": + let v = try TeamLog.DashRenamedStackTypeSerializer().deserialize(json) + return EventType.dashRenamedStack(v) + case "dash_shared_link_to_stack": + let v = try TeamLog.DashSharedLinkToStackTypeSerializer().deserialize(json) + return EventType.dashSharedLinkToStack(v) + case "dash_unarchived_stack": + let v = try TeamLog.DashUnarchivedStackTypeSerializer().deserialize(json) + return EventType.dashUnarchivedStack(v) + case "dash_viewed_company_stack": + let v = try TeamLog.DashViewedCompanyStackTypeSerializer().deserialize(json) + return EventType.dashViewedCompanyStack(v) + case "dash_viewed_external_ai_activity_report": + let v = try TeamLog.DashViewedExternalAiActivityReportTypeSerializer().deserialize(json) + return EventType.dashViewedExternalAiActivityReport(v) + case "governance_policy_add_folders": + let v = try TeamLog.GovernancePolicyAddFoldersTypeSerializer().deserialize(json) + return EventType.governancePolicyAddFolders(v) + case "governance_policy_add_folder_failed": + let v = try TeamLog.GovernancePolicyAddFolderFailedTypeSerializer().deserialize(json) + return EventType.governancePolicyAddFolderFailed(v) + case "governance_policy_content_disposed": + let v = try TeamLog.GovernancePolicyContentDisposedTypeSerializer().deserialize(json) + return EventType.governancePolicyContentDisposed(v) + case "governance_policy_create": + let v = try TeamLog.GovernancePolicyCreateTypeSerializer().deserialize(json) + return EventType.governancePolicyCreate(v) + case "governance_policy_delete": + let v = try TeamLog.GovernancePolicyDeleteTypeSerializer().deserialize(json) + return EventType.governancePolicyDelete(v) + case "governance_policy_edit_details": + let v = try TeamLog.GovernancePolicyEditDetailsTypeSerializer().deserialize(json) + return EventType.governancePolicyEditDetails(v) + case "governance_policy_edit_duration": + let v = try TeamLog.GovernancePolicyEditDurationTypeSerializer().deserialize(json) + return EventType.governancePolicyEditDuration(v) + case "governance_policy_export_created": + let v = try TeamLog.GovernancePolicyExportCreatedTypeSerializer().deserialize(json) + return EventType.governancePolicyExportCreated(v) + case "governance_policy_export_removed": + let v = try TeamLog.GovernancePolicyExportRemovedTypeSerializer().deserialize(json) + return EventType.governancePolicyExportRemoved(v) + case "governance_policy_remove_folders": + let v = try TeamLog.GovernancePolicyRemoveFoldersTypeSerializer().deserialize(json) + return EventType.governancePolicyRemoveFolders(v) + case "governance_policy_report_created": + let v = try TeamLog.GovernancePolicyReportCreatedTypeSerializer().deserialize(json) + return EventType.governancePolicyReportCreated(v) + case "governance_policy_zip_part_downloaded": + let v = try TeamLog.GovernancePolicyZipPartDownloadedTypeSerializer().deserialize(json) + return EventType.governancePolicyZipPartDownloaded(v) + case "legal_holds_activate_a_hold": + let v = try TeamLog.LegalHoldsActivateAHoldTypeSerializer().deserialize(json) + return EventType.legalHoldsActivateAHold(v) + case "legal_holds_add_members": + let v = try TeamLog.LegalHoldsAddMembersTypeSerializer().deserialize(json) + return EventType.legalHoldsAddMembers(v) + case "legal_holds_change_hold_details": + let v = try TeamLog.LegalHoldsChangeHoldDetailsTypeSerializer().deserialize(json) + return EventType.legalHoldsChangeHoldDetails(v) + case "legal_holds_change_hold_name": + let v = try TeamLog.LegalHoldsChangeHoldNameTypeSerializer().deserialize(json) + return EventType.legalHoldsChangeHoldName(v) + case "legal_holds_export_a_hold": + let v = try TeamLog.LegalHoldsExportAHoldTypeSerializer().deserialize(json) + return EventType.legalHoldsExportAHold(v) + case "legal_holds_export_cancelled": + let v = try TeamLog.LegalHoldsExportCancelledTypeSerializer().deserialize(json) + return EventType.legalHoldsExportCancelled(v) + case "legal_holds_export_downloaded": + let v = try TeamLog.LegalHoldsExportDownloadedTypeSerializer().deserialize(json) + return EventType.legalHoldsExportDownloaded(v) + case "legal_holds_export_removed": + let v = try TeamLog.LegalHoldsExportRemovedTypeSerializer().deserialize(json) + return EventType.legalHoldsExportRemoved(v) + case "legal_holds_release_a_hold": + let v = try TeamLog.LegalHoldsReleaseAHoldTypeSerializer().deserialize(json) + return EventType.legalHoldsReleaseAHold(v) + case "legal_holds_remove_members": + let v = try TeamLog.LegalHoldsRemoveMembersTypeSerializer().deserialize(json) + return EventType.legalHoldsRemoveMembers(v) + case "legal_holds_report_a_hold": + let v = try TeamLog.LegalHoldsReportAHoldTypeSerializer().deserialize(json) + return EventType.legalHoldsReportAHold(v) + case "device_change_ip_desktop": + let v = try TeamLog.DeviceChangeIpDesktopTypeSerializer().deserialize(json) + return EventType.deviceChangeIpDesktop(v) + case "device_change_ip_mobile": + let v = try TeamLog.DeviceChangeIpMobileTypeSerializer().deserialize(json) + return EventType.deviceChangeIpMobile(v) + case "device_change_ip_web": + let v = try TeamLog.DeviceChangeIpWebTypeSerializer().deserialize(json) + return EventType.deviceChangeIpWeb(v) + case "device_delete_on_unlink_fail": + let v = try TeamLog.DeviceDeleteOnUnlinkFailTypeSerializer().deserialize(json) + return EventType.deviceDeleteOnUnlinkFail(v) + case "device_delete_on_unlink_success": + let v = try TeamLog.DeviceDeleteOnUnlinkSuccessTypeSerializer().deserialize(json) + return EventType.deviceDeleteOnUnlinkSuccess(v) + case "device_link_fail": + let v = try TeamLog.DeviceLinkFailTypeSerializer().deserialize(json) + return EventType.deviceLinkFail(v) + case "device_link_success": + let v = try TeamLog.DeviceLinkSuccessTypeSerializer().deserialize(json) + return EventType.deviceLinkSuccess(v) + case "device_management_disabled": + let v = try TeamLog.DeviceManagementDisabledTypeSerializer().deserialize(json) + return EventType.deviceManagementDisabled(v) + case "device_management_enabled": + let v = try TeamLog.DeviceManagementEnabledTypeSerializer().deserialize(json) + return EventType.deviceManagementEnabled(v) + case "device_sync_backup_status_changed": + let v = try TeamLog.DeviceSyncBackupStatusChangedTypeSerializer().deserialize(json) + return EventType.deviceSyncBackupStatusChanged(v) + case "device_unlink": + let v = try TeamLog.DeviceUnlinkTypeSerializer().deserialize(json) + return EventType.deviceUnlink(v) + case "dropbox_passwords_exported": + let v = try TeamLog.DropboxPasswordsExportedTypeSerializer().deserialize(json) + return EventType.dropboxPasswordsExported(v) + case "dropbox_passwords_new_device_enrolled": + let v = try TeamLog.DropboxPasswordsNewDeviceEnrolledTypeSerializer().deserialize(json) + return EventType.dropboxPasswordsNewDeviceEnrolled(v) + case "emm_refresh_auth_token": + let v = try TeamLog.EmmRefreshAuthTokenTypeSerializer().deserialize(json) + return EventType.emmRefreshAuthToken(v) + case "external_drive_backup_eligibility_status_checked": + let v = try TeamLog.ExternalDriveBackupEligibilityStatusCheckedTypeSerializer().deserialize(json) + return EventType.externalDriveBackupEligibilityStatusChecked(v) + case "external_drive_backup_status_changed": + let v = try TeamLog.ExternalDriveBackupStatusChangedTypeSerializer().deserialize(json) + return EventType.externalDriveBackupStatusChanged(v) + case "account_capture_change_availability": + let v = try TeamLog.AccountCaptureChangeAvailabilityTypeSerializer().deserialize(json) + return EventType.accountCaptureChangeAvailability(v) + case "account_capture_migrate_account": + let v = try TeamLog.AccountCaptureMigrateAccountTypeSerializer().deserialize(json) + return EventType.accountCaptureMigrateAccount(v) + case "account_capture_notification_emails_sent": + let v = try TeamLog.AccountCaptureNotificationEmailsSentTypeSerializer().deserialize(json) + return EventType.accountCaptureNotificationEmailsSent(v) + case "account_capture_relinquish_account": + let v = try TeamLog.AccountCaptureRelinquishAccountTypeSerializer().deserialize(json) + return EventType.accountCaptureRelinquishAccount(v) + case "disabled_domain_invites": + let v = try TeamLog.DisabledDomainInvitesTypeSerializer().deserialize(json) + return EventType.disabledDomainInvites(v) + case "domain_invites_approve_request_to_join_team": + let v = try TeamLog.DomainInvitesApproveRequestToJoinTeamTypeSerializer().deserialize(json) + return EventType.domainInvitesApproveRequestToJoinTeam(v) + case "domain_invites_decline_request_to_join_team": + let v = try TeamLog.DomainInvitesDeclineRequestToJoinTeamTypeSerializer().deserialize(json) + return EventType.domainInvitesDeclineRequestToJoinTeam(v) + case "domain_invites_email_existing_users": + let v = try TeamLog.DomainInvitesEmailExistingUsersTypeSerializer().deserialize(json) + return EventType.domainInvitesEmailExistingUsers(v) + case "domain_invites_request_to_join_team": + let v = try TeamLog.DomainInvitesRequestToJoinTeamTypeSerializer().deserialize(json) + return EventType.domainInvitesRequestToJoinTeam(v) + case "domain_invites_set_invite_new_user_pref_to_no": + let v = try TeamLog.DomainInvitesSetInviteNewUserPrefToNoTypeSerializer().deserialize(json) + return EventType.domainInvitesSetInviteNewUserPrefToNo(v) + case "domain_invites_set_invite_new_user_pref_to_yes": + let v = try TeamLog.DomainInvitesSetInviteNewUserPrefToYesTypeSerializer().deserialize(json) + return EventType.domainInvitesSetInviteNewUserPrefToYes(v) + case "domain_verification_add_domain_fail": + let v = try TeamLog.DomainVerificationAddDomainFailTypeSerializer().deserialize(json) + return EventType.domainVerificationAddDomainFail(v) + case "domain_verification_add_domain_success": + let v = try TeamLog.DomainVerificationAddDomainSuccessTypeSerializer().deserialize(json) + return EventType.domainVerificationAddDomainSuccess(v) + case "domain_verification_remove_domain": + let v = try TeamLog.DomainVerificationRemoveDomainTypeSerializer().deserialize(json) + return EventType.domainVerificationRemoveDomain(v) + case "enabled_domain_invites": + let v = try TeamLog.EnabledDomainInvitesTypeSerializer().deserialize(json) + return EventType.enabledDomainInvites(v) + case "encrypted_folder_cancel_team_key_rotation": + let v = try TeamLog.EncryptedFolderCancelTeamKeyRotationTypeSerializer().deserialize(json) + return EventType.encryptedFolderCancelTeamKeyRotation(v) + case "encrypted_folder_enroll_backup_key": + let v = try TeamLog.EncryptedFolderEnrollBackupKeyTypeSerializer().deserialize(json) + return EventType.encryptedFolderEnrollBackupKey(v) + case "encrypted_folder_enroll_client": + let v = try TeamLog.EncryptedFolderEnrollClientTypeSerializer().deserialize(json) + return EventType.encryptedFolderEnrollClient(v) + case "encrypted_folder_enroll_team": + let v = try TeamLog.EncryptedFolderEnrollTeamTypeSerializer().deserialize(json) + return EventType.encryptedFolderEnrollTeam(v) + case "encrypted_folder_finish_team_unenrollment": + let v = try TeamLog.EncryptedFolderFinishTeamUnenrollmentTypeSerializer().deserialize(json) + return EventType.encryptedFolderFinishTeamUnenrollment(v) + case "encrypted_folder_init_team_key_rotation": + let v = try TeamLog.EncryptedFolderInitTeamKeyRotationTypeSerializer().deserialize(json) + return EventType.encryptedFolderInitTeamKeyRotation(v) + case "encrypted_folder_init_team_unenrollment": + let v = try TeamLog.EncryptedFolderInitTeamUnenrollmentTypeSerializer().deserialize(json) + return EventType.encryptedFolderInitTeamUnenrollment(v) + case "encrypted_folder_remove_backup_key": + let v = try TeamLog.EncryptedFolderRemoveBackupKeyTypeSerializer().deserialize(json) + return EventType.encryptedFolderRemoveBackupKey(v) + case "encrypted_folder_rotate_team_key": + let v = try TeamLog.EncryptedFolderRotateTeamKeyTypeSerializer().deserialize(json) + return EventType.encryptedFolderRotateTeamKey(v) + case "encrypted_folder_unenroll_client": + let v = try TeamLog.EncryptedFolderUnenrollClientTypeSerializer().deserialize(json) + return EventType.encryptedFolderUnenrollClient(v) + case "team_encryption_key_activate_key": + let v = try TeamLog.TeamEncryptionKeyActivateKeyTypeSerializer().deserialize(json) + return EventType.teamEncryptionKeyActivateKey(v) + case "team_encryption_key_cancel_key_deletion": + let v = try TeamLog.TeamEncryptionKeyCancelKeyDeletionTypeSerializer().deserialize(json) + return EventType.teamEncryptionKeyCancelKeyDeletion(v) + case "team_encryption_key_create_key": + let v = try TeamLog.TeamEncryptionKeyCreateKeyTypeSerializer().deserialize(json) + return EventType.teamEncryptionKeyCreateKey(v) + case "team_encryption_key_deactivate_key": + let v = try TeamLog.TeamEncryptionKeyDeactivateKeyTypeSerializer().deserialize(json) + return EventType.teamEncryptionKeyDeactivateKey(v) + case "team_encryption_key_delete_key": + let v = try TeamLog.TeamEncryptionKeyDeleteKeyTypeSerializer().deserialize(json) + return EventType.teamEncryptionKeyDeleteKey(v) + case "team_encryption_key_disable_key": + let v = try TeamLog.TeamEncryptionKeyDisableKeyTypeSerializer().deserialize(json) + return EventType.teamEncryptionKeyDisableKey(v) + case "team_encryption_key_enable_key": + let v = try TeamLog.TeamEncryptionKeyEnableKeyTypeSerializer().deserialize(json) + return EventType.teamEncryptionKeyEnableKey(v) + case "team_encryption_key_rotate_key": + let v = try TeamLog.TeamEncryptionKeyRotateKeyTypeSerializer().deserialize(json) + return EventType.teamEncryptionKeyRotateKey(v) + case "team_encryption_key_schedule_key_deletion": + let v = try TeamLog.TeamEncryptionKeyScheduleKeyDeletionTypeSerializer().deserialize(json) + return EventType.teamEncryptionKeyScheduleKeyDeletion(v) + case "apply_naming_convention": + let v = try TeamLog.ApplyNamingConventionTypeSerializer().deserialize(json) + return EventType.applyNamingConvention(v) + case "create_folder": + let v = try TeamLog.CreateFolderTypeSerializer().deserialize(json) + return EventType.createFolder(v) + case "file_add": + let v = try TeamLog.FileAddTypeSerializer().deserialize(json) + return EventType.fileAdd(v) + case "file_add_from_automation": + let v = try TeamLog.FileAddFromAutomationTypeSerializer().deserialize(json) + return EventType.fileAddFromAutomation(v) + case "file_copy": + let v = try TeamLog.FileCopyTypeSerializer().deserialize(json) + return EventType.fileCopy(v) + case "file_delete": + let v = try TeamLog.FileDeleteTypeSerializer().deserialize(json) + return EventType.fileDelete(v) + case "file_download": + let v = try TeamLog.FileDownloadTypeSerializer().deserialize(json) + return EventType.fileDownload(v) + case "file_edit": + let v = try TeamLog.FileEditTypeSerializer().deserialize(json) + return EventType.fileEdit(v) + case "file_get_copy_reference": + let v = try TeamLog.FileGetCopyReferenceTypeSerializer().deserialize(json) + return EventType.fileGetCopyReference(v) + case "file_locking_lock_status_changed": + let v = try TeamLog.FileLockingLockStatusChangedTypeSerializer().deserialize(json) + return EventType.fileLockingLockStatusChanged(v) + case "file_move": + let v = try TeamLog.FileMoveTypeSerializer().deserialize(json) + return EventType.fileMove(v) + case "file_permanently_delete": + let v = try TeamLog.FilePermanentlyDeleteTypeSerializer().deserialize(json) + return EventType.filePermanentlyDelete(v) + case "file_preview": + let v = try TeamLog.FilePreviewTypeSerializer().deserialize(json) + return EventType.filePreview(v) + case "file_rename": + let v = try TeamLog.FileRenameTypeSerializer().deserialize(json) + return EventType.fileRename(v) + case "file_restore": + let v = try TeamLog.FileRestoreTypeSerializer().deserialize(json) + return EventType.fileRestore(v) + case "file_revert": + let v = try TeamLog.FileRevertTypeSerializer().deserialize(json) + return EventType.fileRevert(v) + case "file_rollback_changes": + let v = try TeamLog.FileRollbackChangesTypeSerializer().deserialize(json) + return EventType.fileRollbackChanges(v) + case "file_save_copy_reference": + let v = try TeamLog.FileSaveCopyReferenceTypeSerializer().deserialize(json) + return EventType.fileSaveCopyReference(v) + case "folder_overview_description_changed": + let v = try TeamLog.FolderOverviewDescriptionChangedTypeSerializer().deserialize(json) + return EventType.folderOverviewDescriptionChanged(v) + case "folder_overview_item_pinned": + let v = try TeamLog.FolderOverviewItemPinnedTypeSerializer().deserialize(json) + return EventType.folderOverviewItemPinned(v) + case "folder_overview_item_unpinned": + let v = try TeamLog.FolderOverviewItemUnpinnedTypeSerializer().deserialize(json) + return EventType.folderOverviewItemUnpinned(v) + case "media_hub_file_downloaded": + let v = try TeamLog.MediaHubFileDownloadedTypeSerializer().deserialize(json) + return EventType.mediaHubFileDownloaded(v) + case "object_label_added": + let v = try TeamLog.ObjectLabelAddedTypeSerializer().deserialize(json) + return EventType.objectLabelAdded(v) + case "object_label_removed": + let v = try TeamLog.ObjectLabelRemovedTypeSerializer().deserialize(json) + return EventType.objectLabelRemoved(v) + case "object_label_updated_value": + let v = try TeamLog.ObjectLabelUpdatedValueTypeSerializer().deserialize(json) + return EventType.objectLabelUpdatedValue(v) + case "organize_folder_with_tidy": + let v = try TeamLog.OrganizeFolderWithTidyTypeSerializer().deserialize(json) + return EventType.organizeFolderWithTidy(v) + case "replay_file_delete": + let v = try TeamLog.ReplayFileDeleteTypeSerializer().deserialize(json) + return EventType.replayFileDelete(v) + case "replay_file_downloaded": + let v = try TeamLog.ReplayFileDownloadedTypeSerializer().deserialize(json) + return EventType.replayFileDownloaded(v) + case "replay_team_project_created": + let v = try TeamLog.ReplayTeamProjectCreatedTypeSerializer().deserialize(json) + return EventType.replayTeamProjectCreated(v) + case "rewind_folder": + let v = try TeamLog.RewindFolderTypeSerializer().deserialize(json) + return EventType.rewindFolder(v) + case "undo_naming_convention": + let v = try TeamLog.UndoNamingConventionTypeSerializer().deserialize(json) + return EventType.undoNamingConvention(v) + case "undo_organize_folder_with_tidy": + let v = try TeamLog.UndoOrganizeFolderWithTidyTypeSerializer().deserialize(json) + return EventType.undoOrganizeFolderWithTidy(v) + case "user_tags_added": + let v = try TeamLog.UserTagsAddedTypeSerializer().deserialize(json) + return EventType.userTagsAdded(v) + case "user_tags_removed": + let v = try TeamLog.UserTagsRemovedTypeSerializer().deserialize(json) + return EventType.userTagsRemoved(v) + case "email_ingest_receive_file": + let v = try TeamLog.EmailIngestReceiveFileTypeSerializer().deserialize(json) + return EventType.emailIngestReceiveFile(v) + case "file_request_auto_close": + let v = try TeamLog.FileRequestAutoCloseTypeSerializer().deserialize(json) + return EventType.fileRequestAutoClose(v) + case "file_request_change": + let v = try TeamLog.FileRequestChangeTypeSerializer().deserialize(json) + return EventType.fileRequestChange(v) + case "file_request_close": + let v = try TeamLog.FileRequestCloseTypeSerializer().deserialize(json) + return EventType.fileRequestClose(v) + case "file_request_create": + let v = try TeamLog.FileRequestCreateTypeSerializer().deserialize(json) + return EventType.fileRequestCreate(v) + case "file_request_delete": + let v = try TeamLog.FileRequestDeleteTypeSerializer().deserialize(json) + return EventType.fileRequestDelete(v) + case "file_request_receive_file": + let v = try TeamLog.FileRequestReceiveFileTypeSerializer().deserialize(json) + return EventType.fileRequestReceiveFile(v) + case "group_add_external_id": + let v = try TeamLog.GroupAddExternalIdTypeSerializer().deserialize(json) + return EventType.groupAddExternalId(v) + case "group_add_member": + let v = try TeamLog.GroupAddMemberTypeSerializer().deserialize(json) + return EventType.groupAddMember(v) + case "group_change_external_id": + let v = try TeamLog.GroupChangeExternalIdTypeSerializer().deserialize(json) + return EventType.groupChangeExternalId(v) + case "group_change_management_type": + let v = try TeamLog.GroupChangeManagementTypeTypeSerializer().deserialize(json) + return EventType.groupChangeManagementType(v) + case "group_change_member_role": + let v = try TeamLog.GroupChangeMemberRoleTypeSerializer().deserialize(json) + return EventType.groupChangeMemberRole(v) + case "group_create": + let v = try TeamLog.GroupCreateTypeSerializer().deserialize(json) + return EventType.groupCreate(v) + case "group_delete": + let v = try TeamLog.GroupDeleteTypeSerializer().deserialize(json) + return EventType.groupDelete(v) + case "group_description_updated": + let v = try TeamLog.GroupDescriptionUpdatedTypeSerializer().deserialize(json) + return EventType.groupDescriptionUpdated(v) + case "group_external_sharing_setting_override_changed": + let v = try TeamLog.GroupExternalSharingSettingOverrideChangedTypeSerializer().deserialize(json) + return EventType.groupExternalSharingSettingOverrideChanged(v) + case "group_join_policy_updated": + let v = try TeamLog.GroupJoinPolicyUpdatedTypeSerializer().deserialize(json) + return EventType.groupJoinPolicyUpdated(v) + case "group_moved": + let v = try TeamLog.GroupMovedTypeSerializer().deserialize(json) + return EventType.groupMoved(v) + case "group_remove_external_id": + let v = try TeamLog.GroupRemoveExternalIdTypeSerializer().deserialize(json) + return EventType.groupRemoveExternalId(v) + case "group_remove_member": + let v = try TeamLog.GroupRemoveMemberTypeSerializer().deserialize(json) + return EventType.groupRemoveMember(v) + case "group_rename": + let v = try TeamLog.GroupRenameTypeSerializer().deserialize(json) + return EventType.groupRename(v) + case "account_lock_or_unlocked": + let v = try TeamLog.AccountLockOrUnlockedTypeSerializer().deserialize(json) + return EventType.accountLockOrUnlocked(v) + case "emm_error": + let v = try TeamLog.EmmErrorTypeSerializer().deserialize(json) + return EventType.emmError(v) + case "guest_admin_signed_in_via_trusted_teams": + let v = try TeamLog.GuestAdminSignedInViaTrustedTeamsTypeSerializer().deserialize(json) + return EventType.guestAdminSignedInViaTrustedTeams(v) + case "guest_admin_signed_out_via_trusted_teams": + let v = try TeamLog.GuestAdminSignedOutViaTrustedTeamsTypeSerializer().deserialize(json) + return EventType.guestAdminSignedOutViaTrustedTeams(v) + case "login_fail": + let v = try TeamLog.LoginFailTypeSerializer().deserialize(json) + return EventType.loginFail(v) + case "login_success": + let v = try TeamLog.LoginSuccessTypeSerializer().deserialize(json) + return EventType.loginSuccess(v) + case "logout": + let v = try TeamLog.LogoutTypeSerializer().deserialize(json) + return EventType.logout(v) + case "reseller_support_session_end": + let v = try TeamLog.ResellerSupportSessionEndTypeSerializer().deserialize(json) + return EventType.resellerSupportSessionEnd(v) + case "reseller_support_session_start": + let v = try TeamLog.ResellerSupportSessionStartTypeSerializer().deserialize(json) + return EventType.resellerSupportSessionStart(v) + case "sign_in_as_session_end": + let v = try TeamLog.SignInAsSessionEndTypeSerializer().deserialize(json) + return EventType.signInAsSessionEnd(v) + case "sign_in_as_session_start": + let v = try TeamLog.SignInAsSessionStartTypeSerializer().deserialize(json) + return EventType.signInAsSessionStart(v) + case "sso_error": + let v = try TeamLog.SsoErrorTypeSerializer().deserialize(json) + return EventType.ssoError(v) + case "addon_assigned": + let v = try TeamLog.AddonAssignedTypeSerializer().deserialize(json) + return EventType.addonAssigned(v) + case "addon_removed": + let v = try TeamLog.AddonRemovedTypeSerializer().deserialize(json) + return EventType.addonRemoved(v) + case "backup_admin_invitation_sent": + let v = try TeamLog.BackupAdminInvitationSentTypeSerializer().deserialize(json) + return EventType.backupAdminInvitationSent(v) + case "backup_invitation_opened": + let v = try TeamLog.BackupInvitationOpenedTypeSerializer().deserialize(json) + return EventType.backupInvitationOpened(v) + case "create_team_invite_link": + let v = try TeamLog.CreateTeamInviteLinkTypeSerializer().deserialize(json) + return EventType.createTeamInviteLink(v) + case "delete_team_invite_link": + let v = try TeamLog.DeleteTeamInviteLinkTypeSerializer().deserialize(json) + return EventType.deleteTeamInviteLink(v) + case "member_add_external_id": + let v = try TeamLog.MemberAddExternalIdTypeSerializer().deserialize(json) + return EventType.memberAddExternalId(v) + case "member_add_name": + let v = try TeamLog.MemberAddNameTypeSerializer().deserialize(json) + return EventType.memberAddName(v) + case "member_change_admin_role": + let v = try TeamLog.MemberChangeAdminRoleTypeSerializer().deserialize(json) + return EventType.memberChangeAdminRole(v) + case "member_change_email": + let v = try TeamLog.MemberChangeEmailTypeSerializer().deserialize(json) + return EventType.memberChangeEmail(v) + case "member_change_external_id": + let v = try TeamLog.MemberChangeExternalIdTypeSerializer().deserialize(json) + return EventType.memberChangeExternalId(v) + case "member_change_membership_type": + let v = try TeamLog.MemberChangeMembershipTypeTypeSerializer().deserialize(json) + return EventType.memberChangeMembershipType(v) + case "member_change_name": + let v = try TeamLog.MemberChangeNameTypeSerializer().deserialize(json) + return EventType.memberChangeName(v) + case "member_change_reseller_role": + let v = try TeamLog.MemberChangeResellerRoleTypeSerializer().deserialize(json) + return EventType.memberChangeResellerRole(v) + case "member_change_status": + let v = try TeamLog.MemberChangeStatusTypeSerializer().deserialize(json) + return EventType.memberChangeStatus(v) + case "member_delete_manual_contacts": + let v = try TeamLog.MemberDeleteManualContactsTypeSerializer().deserialize(json) + return EventType.memberDeleteManualContacts(v) + case "member_delete_profile_photo": + let v = try TeamLog.MemberDeleteProfilePhotoTypeSerializer().deserialize(json) + return EventType.memberDeleteProfilePhoto(v) + case "member_folder_contents_accessed": + let v = try TeamLog.MemberFolderContentsAccessedTypeSerializer().deserialize(json) + return EventType.memberFolderContentsAccessed(v) + case "member_permanently_delete_account_contents": + let v = try TeamLog.MemberPermanentlyDeleteAccountContentsTypeSerializer().deserialize(json) + return EventType.memberPermanentlyDeleteAccountContents(v) + case "member_remove_external_id": + let v = try TeamLog.MemberRemoveExternalIdTypeSerializer().deserialize(json) + return EventType.memberRemoveExternalId(v) + case "member_set_profile_photo": + let v = try TeamLog.MemberSetProfilePhotoTypeSerializer().deserialize(json) + return EventType.memberSetProfilePhoto(v) + case "member_space_limits_add_custom_quota": + let v = try TeamLog.MemberSpaceLimitsAddCustomQuotaTypeSerializer().deserialize(json) + return EventType.memberSpaceLimitsAddCustomQuota(v) + case "member_space_limits_change_custom_quota": + let v = try TeamLog.MemberSpaceLimitsChangeCustomQuotaTypeSerializer().deserialize(json) + return EventType.memberSpaceLimitsChangeCustomQuota(v) + case "member_space_limits_change_status": + let v = try TeamLog.MemberSpaceLimitsChangeStatusTypeSerializer().deserialize(json) + return EventType.memberSpaceLimitsChangeStatus(v) + case "member_space_limits_remove_custom_quota": + let v = try TeamLog.MemberSpaceLimitsRemoveCustomQuotaTypeSerializer().deserialize(json) + return EventType.memberSpaceLimitsRemoveCustomQuota(v) + case "member_suggest": + let v = try TeamLog.MemberSuggestTypeSerializer().deserialize(json) + return EventType.memberSuggest(v) + case "member_transfer_account_contents": + let v = try TeamLog.MemberTransferAccountContentsTypeSerializer().deserialize(json) + return EventType.memberTransferAccountContents(v) + case "pending_secondary_email_added": + let v = try TeamLog.PendingSecondaryEmailAddedTypeSerializer().deserialize(json) + return EventType.pendingSecondaryEmailAdded(v) + case "product_assigned_to_member": + let v = try TeamLog.ProductAssignedToMemberTypeSerializer().deserialize(json) + return EventType.productAssignedToMember(v) + case "product_removed_from_member": + let v = try TeamLog.ProductRemovedFromMemberTypeSerializer().deserialize(json) + return EventType.productRemovedFromMember(v) + case "secondary_email_deleted": + let v = try TeamLog.SecondaryEmailDeletedTypeSerializer().deserialize(json) + return EventType.secondaryEmailDeleted(v) + case "secondary_email_verified": + let v = try TeamLog.SecondaryEmailVerifiedTypeSerializer().deserialize(json) + return EventType.secondaryEmailVerified(v) + case "secondary_mails_policy_changed": + let v = try TeamLog.SecondaryMailsPolicyChangedTypeSerializer().deserialize(json) + return EventType.secondaryMailsPolicyChanged(v) + case "binder_add_page": + let v = try TeamLog.BinderAddPageTypeSerializer().deserialize(json) + return EventType.binderAddPage(v) + case "binder_add_section": + let v = try TeamLog.BinderAddSectionTypeSerializer().deserialize(json) + return EventType.binderAddSection(v) + case "binder_remove_page": + let v = try TeamLog.BinderRemovePageTypeSerializer().deserialize(json) + return EventType.binderRemovePage(v) + case "binder_remove_section": + let v = try TeamLog.BinderRemoveSectionTypeSerializer().deserialize(json) + return EventType.binderRemoveSection(v) + case "binder_rename_page": + let v = try TeamLog.BinderRenamePageTypeSerializer().deserialize(json) + return EventType.binderRenamePage(v) + case "binder_rename_section": + let v = try TeamLog.BinderRenameSectionTypeSerializer().deserialize(json) + return EventType.binderRenameSection(v) + case "binder_reorder_page": + let v = try TeamLog.BinderReorderPageTypeSerializer().deserialize(json) + return EventType.binderReorderPage(v) + case "binder_reorder_section": + let v = try TeamLog.BinderReorderSectionTypeSerializer().deserialize(json) + return EventType.binderReorderSection(v) + case "paper_content_add_member": + let v = try TeamLog.PaperContentAddMemberTypeSerializer().deserialize(json) + return EventType.paperContentAddMember(v) + case "paper_content_add_to_folder": + let v = try TeamLog.PaperContentAddToFolderTypeSerializer().deserialize(json) + return EventType.paperContentAddToFolder(v) + case "paper_content_archive": + let v = try TeamLog.PaperContentArchiveTypeSerializer().deserialize(json) + return EventType.paperContentArchive(v) + case "paper_content_create": + let v = try TeamLog.PaperContentCreateTypeSerializer().deserialize(json) + return EventType.paperContentCreate(v) + case "paper_content_permanently_delete": + let v = try TeamLog.PaperContentPermanentlyDeleteTypeSerializer().deserialize(json) + return EventType.paperContentPermanentlyDelete(v) + case "paper_content_remove_from_folder": + let v = try TeamLog.PaperContentRemoveFromFolderTypeSerializer().deserialize(json) + return EventType.paperContentRemoveFromFolder(v) + case "paper_content_remove_member": + let v = try TeamLog.PaperContentRemoveMemberTypeSerializer().deserialize(json) + return EventType.paperContentRemoveMember(v) + case "paper_content_rename": + let v = try TeamLog.PaperContentRenameTypeSerializer().deserialize(json) + return EventType.paperContentRename(v) + case "paper_content_restore": + let v = try TeamLog.PaperContentRestoreTypeSerializer().deserialize(json) + return EventType.paperContentRestore(v) + case "paper_doc_add_comment": + let v = try TeamLog.PaperDocAddCommentTypeSerializer().deserialize(json) + return EventType.paperDocAddComment(v) + case "paper_doc_change_member_role": + let v = try TeamLog.PaperDocChangeMemberRoleTypeSerializer().deserialize(json) + return EventType.paperDocChangeMemberRole(v) + case "paper_doc_change_sharing_policy": + let v = try TeamLog.PaperDocChangeSharingPolicyTypeSerializer().deserialize(json) + return EventType.paperDocChangeSharingPolicy(v) + case "paper_doc_change_subscription": + let v = try TeamLog.PaperDocChangeSubscriptionTypeSerializer().deserialize(json) + return EventType.paperDocChangeSubscription(v) + case "paper_doc_deleted": + let v = try TeamLog.PaperDocDeletedTypeSerializer().deserialize(json) + return EventType.paperDocDeleted(v) + case "paper_doc_delete_comment": + let v = try TeamLog.PaperDocDeleteCommentTypeSerializer().deserialize(json) + return EventType.paperDocDeleteComment(v) + case "paper_doc_download": + let v = try TeamLog.PaperDocDownloadTypeSerializer().deserialize(json) + return EventType.paperDocDownload(v) + case "paper_doc_edit": + let v = try TeamLog.PaperDocEditTypeSerializer().deserialize(json) + return EventType.paperDocEdit(v) + case "paper_doc_edit_comment": + let v = try TeamLog.PaperDocEditCommentTypeSerializer().deserialize(json) + return EventType.paperDocEditComment(v) + case "paper_doc_followed": + let v = try TeamLog.PaperDocFollowedTypeSerializer().deserialize(json) + return EventType.paperDocFollowed(v) + case "paper_doc_mention": + let v = try TeamLog.PaperDocMentionTypeSerializer().deserialize(json) + return EventType.paperDocMention(v) + case "paper_doc_ownership_changed": + let v = try TeamLog.PaperDocOwnershipChangedTypeSerializer().deserialize(json) + return EventType.paperDocOwnershipChanged(v) + case "paper_doc_request_access": + let v = try TeamLog.PaperDocRequestAccessTypeSerializer().deserialize(json) + return EventType.paperDocRequestAccess(v) + case "paper_doc_resolve_comment": + let v = try TeamLog.PaperDocResolveCommentTypeSerializer().deserialize(json) + return EventType.paperDocResolveComment(v) + case "paper_doc_revert": + let v = try TeamLog.PaperDocRevertTypeSerializer().deserialize(json) + return EventType.paperDocRevert(v) + case "paper_doc_slack_share": + let v = try TeamLog.PaperDocSlackShareTypeSerializer().deserialize(json) + return EventType.paperDocSlackShare(v) + case "paper_doc_team_invite": + let v = try TeamLog.PaperDocTeamInviteTypeSerializer().deserialize(json) + return EventType.paperDocTeamInvite(v) + case "paper_doc_trashed": + let v = try TeamLog.PaperDocTrashedTypeSerializer().deserialize(json) + return EventType.paperDocTrashed(v) + case "paper_doc_unresolve_comment": + let v = try TeamLog.PaperDocUnresolveCommentTypeSerializer().deserialize(json) + return EventType.paperDocUnresolveComment(v) + case "paper_doc_untrashed": + let v = try TeamLog.PaperDocUntrashedTypeSerializer().deserialize(json) + return EventType.paperDocUntrashed(v) + case "paper_doc_view": + let v = try TeamLog.PaperDocViewTypeSerializer().deserialize(json) + return EventType.paperDocView(v) + case "paper_external_view_allow": + let v = try TeamLog.PaperExternalViewAllowTypeSerializer().deserialize(json) + return EventType.paperExternalViewAllow(v) + case "paper_external_view_default_team": + let v = try TeamLog.PaperExternalViewDefaultTeamTypeSerializer().deserialize(json) + return EventType.paperExternalViewDefaultTeam(v) + case "paper_external_view_forbid": + let v = try TeamLog.PaperExternalViewForbidTypeSerializer().deserialize(json) + return EventType.paperExternalViewForbid(v) + case "paper_folder_change_subscription": + let v = try TeamLog.PaperFolderChangeSubscriptionTypeSerializer().deserialize(json) + return EventType.paperFolderChangeSubscription(v) + case "paper_folder_deleted": + let v = try TeamLog.PaperFolderDeletedTypeSerializer().deserialize(json) + return EventType.paperFolderDeleted(v) + case "paper_folder_followed": + let v = try TeamLog.PaperFolderFollowedTypeSerializer().deserialize(json) + return EventType.paperFolderFollowed(v) + case "paper_folder_team_invite": + let v = try TeamLog.PaperFolderTeamInviteTypeSerializer().deserialize(json) + return EventType.paperFolderTeamInvite(v) + case "paper_published_link_change_permission": + let v = try TeamLog.PaperPublishedLinkChangePermissionTypeSerializer().deserialize(json) + return EventType.paperPublishedLinkChangePermission(v) + case "paper_published_link_create": + let v = try TeamLog.PaperPublishedLinkCreateTypeSerializer().deserialize(json) + return EventType.paperPublishedLinkCreate(v) + case "paper_published_link_disabled": + let v = try TeamLog.PaperPublishedLinkDisabledTypeSerializer().deserialize(json) + return EventType.paperPublishedLinkDisabled(v) + case "paper_published_link_view": + let v = try TeamLog.PaperPublishedLinkViewTypeSerializer().deserialize(json) + return EventType.paperPublishedLinkView(v) + case "password_change": + let v = try TeamLog.PasswordChangeTypeSerializer().deserialize(json) + return EventType.passwordChange(v) + case "password_reset": + let v = try TeamLog.PasswordResetTypeSerializer().deserialize(json) + return EventType.passwordReset(v) + case "password_reset_all": + let v = try TeamLog.PasswordResetAllTypeSerializer().deserialize(json) + return EventType.passwordResetAll(v) + case "protect_action_add_collaborator": + let v = try TeamLog.ProtectActionAddCollaboratorTypeSerializer().deserialize(json) + return EventType.protectActionAddCollaborator(v) + case "protect_action_add_link": + let v = try TeamLog.ProtectActionAddLinkTypeSerializer().deserialize(json) + return EventType.protectActionAddLink(v) + case "protect_action_delete": + let v = try TeamLog.ProtectActionDeleteTypeSerializer().deserialize(json) + return EventType.protectActionDelete(v) + case "protect_action_export": + let v = try TeamLog.ProtectActionExportTypeSerializer().deserialize(json) + return EventType.protectActionExport(v) + case "protect_action_remove_collaborator": + let v = try TeamLog.ProtectActionRemoveCollaboratorTypeSerializer().deserialize(json) + return EventType.protectActionRemoveCollaborator(v) + case "protect_action_remove_link": + let v = try TeamLog.ProtectActionRemoveLinkTypeSerializer().deserialize(json) + return EventType.protectActionRemoveLink(v) + case "protect_action_stop_sharing": + let v = try TeamLog.ProtectActionStopSharingTypeSerializer().deserialize(json) + return EventType.protectActionStopSharing(v) + case "protect_internal_domains_changed": + let v = try TeamLog.ProtectInternalDomainsChangedTypeSerializer().deserialize(json) + return EventType.protectInternalDomainsChanged(v) + case "classification_create_report": + let v = try TeamLog.ClassificationCreateReportTypeSerializer().deserialize(json) + return EventType.classificationCreateReport(v) + case "classification_create_report_fail": + let v = try TeamLog.ClassificationCreateReportFailTypeSerializer().deserialize(json) + return EventType.classificationCreateReportFail(v) + case "emm_create_exceptions_report": + let v = try TeamLog.EmmCreateExceptionsReportTypeSerializer().deserialize(json) + return EventType.emmCreateExceptionsReport(v) + case "emm_create_usage_report": + let v = try TeamLog.EmmCreateUsageReportTypeSerializer().deserialize(json) + return EventType.emmCreateUsageReport(v) + case "export_members_report": + let v = try TeamLog.ExportMembersReportTypeSerializer().deserialize(json) + return EventType.exportMembersReport(v) + case "export_members_report_fail": + let v = try TeamLog.ExportMembersReportFailTypeSerializer().deserialize(json) + return EventType.exportMembersReportFail(v) + case "external_sharing_create_report": + let v = try TeamLog.ExternalSharingCreateReportTypeSerializer().deserialize(json) + return EventType.externalSharingCreateReport(v) + case "external_sharing_report_failed": + let v = try TeamLog.ExternalSharingReportFailedTypeSerializer().deserialize(json) + return EventType.externalSharingReportFailed(v) + case "member_access_details_create_report": + let v = try TeamLog.MemberAccessDetailsCreateReportTypeSerializer().deserialize(json) + return EventType.memberAccessDetailsCreateReport(v) + case "member_access_details_create_report_failed": + let v = try TeamLog.MemberAccessDetailsCreateReportFailedTypeSerializer().deserialize(json) + return EventType.memberAccessDetailsCreateReportFailed(v) + case "no_expiration_link_gen_create_report": + let v = try TeamLog.NoExpirationLinkGenCreateReportTypeSerializer().deserialize(json) + return EventType.noExpirationLinkGenCreateReport(v) + case "no_expiration_link_gen_report_failed": + let v = try TeamLog.NoExpirationLinkGenReportFailedTypeSerializer().deserialize(json) + return EventType.noExpirationLinkGenReportFailed(v) + case "no_password_link_gen_create_report": + let v = try TeamLog.NoPasswordLinkGenCreateReportTypeSerializer().deserialize(json) + return EventType.noPasswordLinkGenCreateReport(v) + case "no_password_link_gen_report_failed": + let v = try TeamLog.NoPasswordLinkGenReportFailedTypeSerializer().deserialize(json) + return EventType.noPasswordLinkGenReportFailed(v) + case "no_password_link_view_create_report": + let v = try TeamLog.NoPasswordLinkViewCreateReportTypeSerializer().deserialize(json) + return EventType.noPasswordLinkViewCreateReport(v) + case "no_password_link_view_report_failed": + let v = try TeamLog.NoPasswordLinkViewReportFailedTypeSerializer().deserialize(json) + return EventType.noPasswordLinkViewReportFailed(v) + case "outdated_link_view_create_report": + let v = try TeamLog.OutdatedLinkViewCreateReportTypeSerializer().deserialize(json) + return EventType.outdatedLinkViewCreateReport(v) + case "outdated_link_view_report_failed": + let v = try TeamLog.OutdatedLinkViewReportFailedTypeSerializer().deserialize(json) + return EventType.outdatedLinkViewReportFailed(v) + case "paper_admin_export_start": + let v = try TeamLog.PaperAdminExportStartTypeSerializer().deserialize(json) + return EventType.paperAdminExportStart(v) + case "ransomware_alert_create_report": + let v = try TeamLog.RansomwareAlertCreateReportTypeSerializer().deserialize(json) + return EventType.ransomwareAlertCreateReport(v) + case "ransomware_alert_create_report_failed": + let v = try TeamLog.RansomwareAlertCreateReportFailedTypeSerializer().deserialize(json) + return EventType.ransomwareAlertCreateReportFailed(v) + case "shared_folders_create_report": + let v = try TeamLog.SharedFoldersCreateReportTypeSerializer().deserialize(json) + return EventType.sharedFoldersCreateReport(v) + case "shared_folders_create_report_failed": + let v = try TeamLog.SharedFoldersCreateReportFailedTypeSerializer().deserialize(json) + return EventType.sharedFoldersCreateReportFailed(v) + case "smart_sync_create_admin_privilege_report": + let v = try TeamLog.SmartSyncCreateAdminPrivilegeReportTypeSerializer().deserialize(json) + return EventType.smartSyncCreateAdminPrivilegeReport(v) + case "team_activity_create_report": + let v = try TeamLog.TeamActivityCreateReportTypeSerializer().deserialize(json) + return EventType.teamActivityCreateReport(v) + case "team_activity_create_report_fail": + let v = try TeamLog.TeamActivityCreateReportFailTypeSerializer().deserialize(json) + return EventType.teamActivityCreateReportFail(v) + case "team_folders_create_report": + let v = try TeamLog.TeamFoldersCreateReportTypeSerializer().deserialize(json) + return EventType.teamFoldersCreateReport(v) + case "team_folders_create_report_failed": + let v = try TeamLog.TeamFoldersCreateReportFailedTypeSerializer().deserialize(json) + return EventType.teamFoldersCreateReportFailed(v) + case "team_storage_create_report": + let v = try TeamLog.TeamStorageCreateReportTypeSerializer().deserialize(json) + return EventType.teamStorageCreateReport(v) + case "team_storage_create_report_failed": + let v = try TeamLog.TeamStorageCreateReportFailedTypeSerializer().deserialize(json) + return EventType.teamStorageCreateReportFailed(v) + case "collection_share": + let v = try TeamLog.CollectionShareTypeSerializer().deserialize(json) + return EventType.collectionShare(v) + case "file_transfers_file_add": + let v = try TeamLog.FileTransfersFileAddTypeSerializer().deserialize(json) + return EventType.fileTransfersFileAdd(v) + case "file_transfers_transfer_delete": + let v = try TeamLog.FileTransfersTransferDeleteTypeSerializer().deserialize(json) + return EventType.fileTransfersTransferDelete(v) + case "file_transfers_transfer_download": + let v = try TeamLog.FileTransfersTransferDownloadTypeSerializer().deserialize(json) + return EventType.fileTransfersTransferDownload(v) + case "file_transfers_transfer_send": + let v = try TeamLog.FileTransfersTransferSendTypeSerializer().deserialize(json) + return EventType.fileTransfersTransferSend(v) + case "file_transfers_transfer_view": + let v = try TeamLog.FileTransfersTransferViewTypeSerializer().deserialize(json) + return EventType.fileTransfersTransferView(v) + case "media_hub_project_team_add": + let v = try TeamLog.MediaHubProjectTeamAddTypeSerializer().deserialize(json) + return EventType.mediaHubProjectTeamAdd(v) + case "media_hub_project_team_delete": + let v = try TeamLog.MediaHubProjectTeamDeleteTypeSerializer().deserialize(json) + return EventType.mediaHubProjectTeamDelete(v) + case "media_hub_project_team_role_changed": + let v = try TeamLog.MediaHubProjectTeamRoleChangedTypeSerializer().deserialize(json) + return EventType.mediaHubProjectTeamRoleChanged(v) + case "media_hub_shared_link_audience_changed": + let v = try TeamLog.MediaHubSharedLinkAudienceChangedTypeSerializer().deserialize(json) + return EventType.mediaHubSharedLinkAudienceChanged(v) + case "media_hub_shared_link_created": + let v = try TeamLog.MediaHubSharedLinkCreatedTypeSerializer().deserialize(json) + return EventType.mediaHubSharedLinkCreated(v) + case "media_hub_shared_link_download_setting_changed": + let v = try TeamLog.MediaHubSharedLinkDownloadSettingChangedTypeSerializer().deserialize(json) + return EventType.mediaHubSharedLinkDownloadSettingChanged(v) + case "media_hub_shared_link_revoked": + let v = try TeamLog.MediaHubSharedLinkRevokedTypeSerializer().deserialize(json) + return EventType.mediaHubSharedLinkRevoked(v) + case "note_acl_invite_only": + let v = try TeamLog.NoteAclInviteOnlyTypeSerializer().deserialize(json) + return EventType.noteAclInviteOnly(v) + case "note_acl_link": + let v = try TeamLog.NoteAclLinkTypeSerializer().deserialize(json) + return EventType.noteAclLink(v) + case "note_acl_team_link": + let v = try TeamLog.NoteAclTeamLinkTypeSerializer().deserialize(json) + return EventType.noteAclTeamLink(v) + case "note_shared": + let v = try TeamLog.NoteSharedTypeSerializer().deserialize(json) + return EventType.noteShared(v) + case "note_share_receive": + let v = try TeamLog.NoteShareReceiveTypeSerializer().deserialize(json) + return EventType.noteShareReceive(v) + case "open_note_shared": + let v = try TeamLog.OpenNoteSharedTypeSerializer().deserialize(json) + return EventType.openNoteShared(v) + case "replay_file_shared_link_created": + let v = try TeamLog.ReplayFileSharedLinkCreatedTypeSerializer().deserialize(json) + return EventType.replayFileSharedLinkCreated(v) + case "replay_file_shared_link_modified": + let v = try TeamLog.ReplayFileSharedLinkModifiedTypeSerializer().deserialize(json) + return EventType.replayFileSharedLinkModified(v) + case "replay_project_team_add": + let v = try TeamLog.ReplayProjectTeamAddTypeSerializer().deserialize(json) + return EventType.replayProjectTeamAdd(v) + case "replay_project_team_delete": + let v = try TeamLog.ReplayProjectTeamDeleteTypeSerializer().deserialize(json) + return EventType.replayProjectTeamDelete(v) + case "send_and_track_file_added": + let v = try TeamLog.SendAndTrackFileAddedTypeSerializer().deserialize(json) + return EventType.sendAndTrackFileAdded(v) + case "send_and_track_file_renamed": + let v = try TeamLog.SendAndTrackFileRenamedTypeSerializer().deserialize(json) + return EventType.sendAndTrackFileRenamed(v) + case "send_and_track_file_updated": + let v = try TeamLog.SendAndTrackFileUpdatedTypeSerializer().deserialize(json) + return EventType.sendAndTrackFileUpdated(v) + case "send_and_track_link_created": + let v = try TeamLog.SendAndTrackLinkCreatedTypeSerializer().deserialize(json) + return EventType.sendAndTrackLinkCreated(v) + case "send_and_track_link_deleted": + let v = try TeamLog.SendAndTrackLinkDeletedTypeSerializer().deserialize(json) + return EventType.sendAndTrackLinkDeleted(v) + case "send_and_track_link_updated": + let v = try TeamLog.SendAndTrackLinkUpdatedTypeSerializer().deserialize(json) + return EventType.sendAndTrackLinkUpdated(v) + case "send_and_track_link_viewed": + let v = try TeamLog.SendAndTrackLinkViewedTypeSerializer().deserialize(json) + return EventType.sendAndTrackLinkViewed(v) + case "send_and_track_removed_file_and_associated_links": + let v = try TeamLog.SendAndTrackRemovedFileAndAssociatedLinksTypeSerializer().deserialize(json) + return EventType.sendAndTrackRemovedFileAndAssociatedLinks(v) + case "sf_add_group": + let v = try TeamLog.SfAddGroupTypeSerializer().deserialize(json) + return EventType.sfAddGroup(v) + case "sf_allow_non_members_to_view_shared_links": + let v = try TeamLog.SfAllowNonMembersToViewSharedLinksTypeSerializer().deserialize(json) + return EventType.sfAllowNonMembersToViewSharedLinks(v) + case "sf_external_invite_warn": + let v = try TeamLog.SfExternalInviteWarnTypeSerializer().deserialize(json) + return EventType.sfExternalInviteWarn(v) + case "sf_fb_invite": + let v = try TeamLog.SfFbInviteTypeSerializer().deserialize(json) + return EventType.sfFbInvite(v) + case "sf_fb_invite_change_role": + let v = try TeamLog.SfFbInviteChangeRoleTypeSerializer().deserialize(json) + return EventType.sfFbInviteChangeRole(v) + case "sf_fb_uninvite": + let v = try TeamLog.SfFbUninviteTypeSerializer().deserialize(json) + return EventType.sfFbUninvite(v) + case "sf_invite_group": + let v = try TeamLog.SfInviteGroupTypeSerializer().deserialize(json) + return EventType.sfInviteGroup(v) + case "sf_team_grant_access": + let v = try TeamLog.SfTeamGrantAccessTypeSerializer().deserialize(json) + return EventType.sfTeamGrantAccess(v) + case "sf_team_invite": + let v = try TeamLog.SfTeamInviteTypeSerializer().deserialize(json) + return EventType.sfTeamInvite(v) + case "sf_team_invite_change_role": + let v = try TeamLog.SfTeamInviteChangeRoleTypeSerializer().deserialize(json) + return EventType.sfTeamInviteChangeRole(v) + case "sf_team_join": + let v = try TeamLog.SfTeamJoinTypeSerializer().deserialize(json) + return EventType.sfTeamJoin(v) + case "sf_team_join_from_oob_link": + let v = try TeamLog.SfTeamJoinFromOobLinkTypeSerializer().deserialize(json) + return EventType.sfTeamJoinFromOobLink(v) + case "sf_team_uninvite": + let v = try TeamLog.SfTeamUninviteTypeSerializer().deserialize(json) + return EventType.sfTeamUninvite(v) + case "shared_content_add_invitees": + let v = try TeamLog.SharedContentAddInviteesTypeSerializer().deserialize(json) + return EventType.sharedContentAddInvitees(v) + case "shared_content_add_link_expiry": + let v = try TeamLog.SharedContentAddLinkExpiryTypeSerializer().deserialize(json) + return EventType.sharedContentAddLinkExpiry(v) + case "shared_content_add_link_password": + let v = try TeamLog.SharedContentAddLinkPasswordTypeSerializer().deserialize(json) + return EventType.sharedContentAddLinkPassword(v) + case "shared_content_add_member": + let v = try TeamLog.SharedContentAddMemberTypeSerializer().deserialize(json) + return EventType.sharedContentAddMember(v) + case "shared_content_change_downloads_policy": + let v = try TeamLog.SharedContentChangeDownloadsPolicyTypeSerializer().deserialize(json) + return EventType.sharedContentChangeDownloadsPolicy(v) + case "shared_content_change_invitee_role": + let v = try TeamLog.SharedContentChangeInviteeRoleTypeSerializer().deserialize(json) + return EventType.sharedContentChangeInviteeRole(v) + case "shared_content_change_link_audience": + let v = try TeamLog.SharedContentChangeLinkAudienceTypeSerializer().deserialize(json) + return EventType.sharedContentChangeLinkAudience(v) + case "shared_content_change_link_expiry": + let v = try TeamLog.SharedContentChangeLinkExpiryTypeSerializer().deserialize(json) + return EventType.sharedContentChangeLinkExpiry(v) + case "shared_content_change_link_password": + let v = try TeamLog.SharedContentChangeLinkPasswordTypeSerializer().deserialize(json) + return EventType.sharedContentChangeLinkPassword(v) + case "shared_content_change_member_role": + let v = try TeamLog.SharedContentChangeMemberRoleTypeSerializer().deserialize(json) + return EventType.sharedContentChangeMemberRole(v) + case "shared_content_change_viewer_info_policy": + let v = try TeamLog.SharedContentChangeViewerInfoPolicyTypeSerializer().deserialize(json) + return EventType.sharedContentChangeViewerInfoPolicy(v) + case "shared_content_claim_invitation": + let v = try TeamLog.SharedContentClaimInvitationTypeSerializer().deserialize(json) + return EventType.sharedContentClaimInvitation(v) + case "shared_content_copy": + let v = try TeamLog.SharedContentCopyTypeSerializer().deserialize(json) + return EventType.sharedContentCopy(v) + case "shared_content_download": + let v = try TeamLog.SharedContentDownloadTypeSerializer().deserialize(json) + return EventType.sharedContentDownload(v) + case "shared_content_relinquish_membership": + let v = try TeamLog.SharedContentRelinquishMembershipTypeSerializer().deserialize(json) + return EventType.sharedContentRelinquishMembership(v) + case "shared_content_remove_invitees": + let v = try TeamLog.SharedContentRemoveInviteesTypeSerializer().deserialize(json) + return EventType.sharedContentRemoveInvitees(v) + case "shared_content_remove_link_expiry": + let v = try TeamLog.SharedContentRemoveLinkExpiryTypeSerializer().deserialize(json) + return EventType.sharedContentRemoveLinkExpiry(v) + case "shared_content_remove_link_password": + let v = try TeamLog.SharedContentRemoveLinkPasswordTypeSerializer().deserialize(json) + return EventType.sharedContentRemoveLinkPassword(v) + case "shared_content_remove_member": + let v = try TeamLog.SharedContentRemoveMemberTypeSerializer().deserialize(json) + return EventType.sharedContentRemoveMember(v) + case "shared_content_request_access": + let v = try TeamLog.SharedContentRequestAccessTypeSerializer().deserialize(json) + return EventType.sharedContentRequestAccess(v) + case "shared_content_restore_invitees": + let v = try TeamLog.SharedContentRestoreInviteesTypeSerializer().deserialize(json) + return EventType.sharedContentRestoreInvitees(v) + case "shared_content_restore_member": + let v = try TeamLog.SharedContentRestoreMemberTypeSerializer().deserialize(json) + return EventType.sharedContentRestoreMember(v) + case "shared_content_unshare": + let v = try TeamLog.SharedContentUnshareTypeSerializer().deserialize(json) + return EventType.sharedContentUnshare(v) + case "shared_content_view": + let v = try TeamLog.SharedContentViewTypeSerializer().deserialize(json) + return EventType.sharedContentView(v) + case "shared_folder_change_link_policy": + let v = try TeamLog.SharedFolderChangeLinkPolicyTypeSerializer().deserialize(json) + return EventType.sharedFolderChangeLinkPolicy(v) + case "shared_folder_change_members_inheritance_policy": + let v = try TeamLog.SharedFolderChangeMembersInheritancePolicyTypeSerializer().deserialize(json) + return EventType.sharedFolderChangeMembersInheritancePolicy(v) + case "shared_folder_change_members_management_policy": + let v = try TeamLog.SharedFolderChangeMembersManagementPolicyTypeSerializer().deserialize(json) + return EventType.sharedFolderChangeMembersManagementPolicy(v) + case "shared_folder_change_members_policy": + let v = try TeamLog.SharedFolderChangeMembersPolicyTypeSerializer().deserialize(json) + return EventType.sharedFolderChangeMembersPolicy(v) + case "shared_folder_create": + let v = try TeamLog.SharedFolderCreateTypeSerializer().deserialize(json) + return EventType.sharedFolderCreate(v) + case "shared_folder_decline_invitation": + let v = try TeamLog.SharedFolderDeclineInvitationTypeSerializer().deserialize(json) + return EventType.sharedFolderDeclineInvitation(v) + case "shared_folder_mount": + let v = try TeamLog.SharedFolderMountTypeSerializer().deserialize(json) + return EventType.sharedFolderMount(v) + case "shared_folder_nest": + let v = try TeamLog.SharedFolderNestTypeSerializer().deserialize(json) + return EventType.sharedFolderNest(v) + case "shared_folder_transfer_ownership": + let v = try TeamLog.SharedFolderTransferOwnershipTypeSerializer().deserialize(json) + return EventType.sharedFolderTransferOwnership(v) + case "shared_folder_unmount": + let v = try TeamLog.SharedFolderUnmountTypeSerializer().deserialize(json) + return EventType.sharedFolderUnmount(v) + case "shared_link_add_expiry": + let v = try TeamLog.SharedLinkAddExpiryTypeSerializer().deserialize(json) + return EventType.sharedLinkAddExpiry(v) + case "shared_link_change_expiry": + let v = try TeamLog.SharedLinkChangeExpiryTypeSerializer().deserialize(json) + return EventType.sharedLinkChangeExpiry(v) + case "shared_link_change_visibility": + let v = try TeamLog.SharedLinkChangeVisibilityTypeSerializer().deserialize(json) + return EventType.sharedLinkChangeVisibility(v) + case "shared_link_copy": + let v = try TeamLog.SharedLinkCopyTypeSerializer().deserialize(json) + return EventType.sharedLinkCopy(v) + case "shared_link_create": + let v = try TeamLog.SharedLinkCreateTypeSerializer().deserialize(json) + return EventType.sharedLinkCreate(v) + case "shared_link_disable": + let v = try TeamLog.SharedLinkDisableTypeSerializer().deserialize(json) + return EventType.sharedLinkDisable(v) + case "shared_link_download": + let v = try TeamLog.SharedLinkDownloadTypeSerializer().deserialize(json) + return EventType.sharedLinkDownload(v) + case "shared_link_remove_expiry": + let v = try TeamLog.SharedLinkRemoveExpiryTypeSerializer().deserialize(json) + return EventType.sharedLinkRemoveExpiry(v) + case "shared_link_remove_visitor": + let v = try TeamLog.SharedLinkRemoveVisitorTypeSerializer().deserialize(json) + return EventType.sharedLinkRemoveVisitor(v) + case "shared_link_settings_add_expiration": + let v = try TeamLog.SharedLinkSettingsAddExpirationTypeSerializer().deserialize(json) + return EventType.sharedLinkSettingsAddExpiration(v) + case "shared_link_settings_add_password": + let v = try TeamLog.SharedLinkSettingsAddPasswordTypeSerializer().deserialize(json) + return EventType.sharedLinkSettingsAddPassword(v) + case "shared_link_settings_allow_download_disabled": + let v = try TeamLog.SharedLinkSettingsAllowDownloadDisabledTypeSerializer().deserialize(json) + return EventType.sharedLinkSettingsAllowDownloadDisabled(v) + case "shared_link_settings_allow_download_enabled": + let v = try TeamLog.SharedLinkSettingsAllowDownloadEnabledTypeSerializer().deserialize(json) + return EventType.sharedLinkSettingsAllowDownloadEnabled(v) + case "shared_link_settings_change_audience": + let v = try TeamLog.SharedLinkSettingsChangeAudienceTypeSerializer().deserialize(json) + return EventType.sharedLinkSettingsChangeAudience(v) + case "shared_link_settings_change_expiration": + let v = try TeamLog.SharedLinkSettingsChangeExpirationTypeSerializer().deserialize(json) + return EventType.sharedLinkSettingsChangeExpiration(v) + case "shared_link_settings_change_password": + let v = try TeamLog.SharedLinkSettingsChangePasswordTypeSerializer().deserialize(json) + return EventType.sharedLinkSettingsChangePassword(v) + case "shared_link_settings_remove_expiration": + let v = try TeamLog.SharedLinkSettingsRemoveExpirationTypeSerializer().deserialize(json) + return EventType.sharedLinkSettingsRemoveExpiration(v) + case "shared_link_settings_remove_password": + let v = try TeamLog.SharedLinkSettingsRemovePasswordTypeSerializer().deserialize(json) + return EventType.sharedLinkSettingsRemovePassword(v) + case "shared_link_share": + let v = try TeamLog.SharedLinkShareTypeSerializer().deserialize(json) + return EventType.sharedLinkShare(v) + case "shared_link_view": + let v = try TeamLog.SharedLinkViewTypeSerializer().deserialize(json) + return EventType.sharedLinkView(v) + case "shared_note_opened": + let v = try TeamLog.SharedNoteOpenedTypeSerializer().deserialize(json) + return EventType.sharedNoteOpened(v) + case "shmodel_disable_downloads": + let v = try TeamLog.ShmodelDisableDownloadsTypeSerializer().deserialize(json) + return EventType.shmodelDisableDownloads(v) + case "shmodel_enable_downloads": + let v = try TeamLog.ShmodelEnableDownloadsTypeSerializer().deserialize(json) + return EventType.shmodelEnableDownloads(v) + case "shmodel_group_share": + let v = try TeamLog.ShmodelGroupShareTypeSerializer().deserialize(json) + return EventType.shmodelGroupShare(v) + case "showcase_access_granted": + let v = try TeamLog.ShowcaseAccessGrantedTypeSerializer().deserialize(json) + return EventType.showcaseAccessGranted(v) + case "showcase_add_member": + let v = try TeamLog.ShowcaseAddMemberTypeSerializer().deserialize(json) + return EventType.showcaseAddMember(v) + case "showcase_archived": + let v = try TeamLog.ShowcaseArchivedTypeSerializer().deserialize(json) + return EventType.showcaseArchived(v) + case "showcase_created": + let v = try TeamLog.ShowcaseCreatedTypeSerializer().deserialize(json) + return EventType.showcaseCreated(v) + case "showcase_delete_comment": + let v = try TeamLog.ShowcaseDeleteCommentTypeSerializer().deserialize(json) + return EventType.showcaseDeleteComment(v) + case "showcase_edited": + let v = try TeamLog.ShowcaseEditedTypeSerializer().deserialize(json) + return EventType.showcaseEdited(v) + case "showcase_edit_comment": + let v = try TeamLog.ShowcaseEditCommentTypeSerializer().deserialize(json) + return EventType.showcaseEditComment(v) + case "showcase_file_added": + let v = try TeamLog.ShowcaseFileAddedTypeSerializer().deserialize(json) + return EventType.showcaseFileAdded(v) + case "showcase_file_download": + let v = try TeamLog.ShowcaseFileDownloadTypeSerializer().deserialize(json) + return EventType.showcaseFileDownload(v) + case "showcase_file_removed": + let v = try TeamLog.ShowcaseFileRemovedTypeSerializer().deserialize(json) + return EventType.showcaseFileRemoved(v) + case "showcase_file_view": + let v = try TeamLog.ShowcaseFileViewTypeSerializer().deserialize(json) + return EventType.showcaseFileView(v) + case "showcase_permanently_deleted": + let v = try TeamLog.ShowcasePermanentlyDeletedTypeSerializer().deserialize(json) + return EventType.showcasePermanentlyDeleted(v) + case "showcase_post_comment": + let v = try TeamLog.ShowcasePostCommentTypeSerializer().deserialize(json) + return EventType.showcasePostComment(v) + case "showcase_remove_member": + let v = try TeamLog.ShowcaseRemoveMemberTypeSerializer().deserialize(json) + return EventType.showcaseRemoveMember(v) + case "showcase_renamed": + let v = try TeamLog.ShowcaseRenamedTypeSerializer().deserialize(json) + return EventType.showcaseRenamed(v) + case "showcase_request_access": + let v = try TeamLog.ShowcaseRequestAccessTypeSerializer().deserialize(json) + return EventType.showcaseRequestAccess(v) + case "showcase_resolve_comment": + let v = try TeamLog.ShowcaseResolveCommentTypeSerializer().deserialize(json) + return EventType.showcaseResolveComment(v) + case "showcase_restored": + let v = try TeamLog.ShowcaseRestoredTypeSerializer().deserialize(json) + return EventType.showcaseRestored(v) + case "showcase_trashed": + let v = try TeamLog.ShowcaseTrashedTypeSerializer().deserialize(json) + return EventType.showcaseTrashed(v) + case "showcase_trashed_deprecated": + let v = try TeamLog.ShowcaseTrashedDeprecatedTypeSerializer().deserialize(json) + return EventType.showcaseTrashedDeprecated(v) + case "showcase_unresolve_comment": + let v = try TeamLog.ShowcaseUnresolveCommentTypeSerializer().deserialize(json) + return EventType.showcaseUnresolveComment(v) + case "showcase_untrashed": + let v = try TeamLog.ShowcaseUntrashedTypeSerializer().deserialize(json) + return EventType.showcaseUntrashed(v) + case "showcase_untrashed_deprecated": + let v = try TeamLog.ShowcaseUntrashedDeprecatedTypeSerializer().deserialize(json) + return EventType.showcaseUntrashedDeprecated(v) + case "showcase_view": + let v = try TeamLog.ShowcaseViewTypeSerializer().deserialize(json) + return EventType.showcaseView(v) + case "sign_signature_request_canceled": + let v = try TeamLog.SignSignatureRequestCanceledTypeSerializer().deserialize(json) + return EventType.signSignatureRequestCanceled(v) + case "sign_signature_request_completed": + let v = try TeamLog.SignSignatureRequestCompletedTypeSerializer().deserialize(json) + return EventType.signSignatureRequestCompleted(v) + case "sign_signature_request_declined": + let v = try TeamLog.SignSignatureRequestDeclinedTypeSerializer().deserialize(json) + return EventType.signSignatureRequestDeclined(v) + case "sign_signature_request_opened": + let v = try TeamLog.SignSignatureRequestOpenedTypeSerializer().deserialize(json) + return EventType.signSignatureRequestOpened(v) + case "sign_signature_request_reminder_sent": + let v = try TeamLog.SignSignatureRequestReminderSentTypeSerializer().deserialize(json) + return EventType.signSignatureRequestReminderSent(v) + case "sign_signature_request_sent": + let v = try TeamLog.SignSignatureRequestSentTypeSerializer().deserialize(json) + return EventType.signSignatureRequestSent(v) + case "sign_template_created": + let v = try TeamLog.SignTemplateCreatedTypeSerializer().deserialize(json) + return EventType.signTemplateCreated(v) + case "sign_template_shared": + let v = try TeamLog.SignTemplateSharedTypeSerializer().deserialize(json) + return EventType.signTemplateShared(v) + case "risc_security_event": + let v = try TeamLog.RiscSecurityEventTypeSerializer().deserialize(json) + return EventType.riscSecurityEvent(v) + case "sso_add_cert": + let v = try TeamLog.SsoAddCertTypeSerializer().deserialize(json) + return EventType.ssoAddCert(v) + case "sso_add_login_url": + let v = try TeamLog.SsoAddLoginUrlTypeSerializer().deserialize(json) + return EventType.ssoAddLoginUrl(v) + case "sso_add_logout_url": + let v = try TeamLog.SsoAddLogoutUrlTypeSerializer().deserialize(json) + return EventType.ssoAddLogoutUrl(v) + case "sso_change_cert": + let v = try TeamLog.SsoChangeCertTypeSerializer().deserialize(json) + return EventType.ssoChangeCert(v) + case "sso_change_login_url": + let v = try TeamLog.SsoChangeLoginUrlTypeSerializer().deserialize(json) + return EventType.ssoChangeLoginUrl(v) + case "sso_change_logout_url": + let v = try TeamLog.SsoChangeLogoutUrlTypeSerializer().deserialize(json) + return EventType.ssoChangeLogoutUrl(v) + case "sso_change_saml_identity_mode": + let v = try TeamLog.SsoChangeSamlIdentityModeTypeSerializer().deserialize(json) + return EventType.ssoChangeSamlIdentityMode(v) + case "sso_remove_cert": + let v = try TeamLog.SsoRemoveCertTypeSerializer().deserialize(json) + return EventType.ssoRemoveCert(v) + case "sso_remove_login_url": + let v = try TeamLog.SsoRemoveLoginUrlTypeSerializer().deserialize(json) + return EventType.ssoRemoveLoginUrl(v) + case "sso_remove_logout_url": + let v = try TeamLog.SsoRemoveLogoutUrlTypeSerializer().deserialize(json) + return EventType.ssoRemoveLogoutUrl(v) + case "team_folder_change_status": + let v = try TeamLog.TeamFolderChangeStatusTypeSerializer().deserialize(json) + return EventType.teamFolderChangeStatus(v) + case "team_folder_create": + let v = try TeamLog.TeamFolderCreateTypeSerializer().deserialize(json) + return EventType.teamFolderCreate(v) + case "team_folder_downgrade": + let v = try TeamLog.TeamFolderDowngradeTypeSerializer().deserialize(json) + return EventType.teamFolderDowngrade(v) + case "team_folder_permanently_delete": + let v = try TeamLog.TeamFolderPermanentlyDeleteTypeSerializer().deserialize(json) + return EventType.teamFolderPermanentlyDelete(v) + case "team_folder_rename": + let v = try TeamLog.TeamFolderRenameTypeSerializer().deserialize(json) + return EventType.teamFolderRename(v) + case "team_folder_space_limits_change_caps_type": + let v = try TeamLog.TeamFolderSpaceLimitsChangeCapsTypeTypeSerializer().deserialize(json) + return EventType.teamFolderSpaceLimitsChangeCapsType(v) + case "team_folder_space_limits_change_limit": + let v = try TeamLog.TeamFolderSpaceLimitsChangeLimitTypeSerializer().deserialize(json) + return EventType.teamFolderSpaceLimitsChangeLimit(v) + case "team_folder_space_limits_change_notification_target": + let v = try TeamLog.TeamFolderSpaceLimitsChangeNotificationTargetTypeSerializer().deserialize(json) + return EventType.teamFolderSpaceLimitsChangeNotificationTarget(v) + case "team_selective_sync_settings_changed": + let v = try TeamLog.TeamSelectiveSyncSettingsChangedTypeSerializer().deserialize(json) + return EventType.teamSelectiveSyncSettingsChanged(v) + case "account_capture_change_policy": + let v = try TeamLog.AccountCaptureChangePolicyTypeSerializer().deserialize(json) + return EventType.accountCaptureChangePolicy(v) + case "admin_email_reminders_changed": + let v = try TeamLog.AdminEmailRemindersChangedTypeSerializer().deserialize(json) + return EventType.adminEmailRemindersChanged(v) + case "ai_third_party_sharing_dropbox_base_policy_changed": + let v = try TeamLog.AiThirdPartySharingDropboxBasePolicyChangedTypeSerializer().deserialize(json) + return EventType.aiThirdPartySharingDropboxBasePolicyChanged(v) + case "allow_download_disabled": + let v = try TeamLog.AllowDownloadDisabledTypeSerializer().deserialize(json) + return EventType.allowDownloadDisabled(v) + case "allow_download_enabled": + let v = try TeamLog.AllowDownloadEnabledTypeSerializer().deserialize(json) + return EventType.allowDownloadEnabled(v) + case "apple_login_change_policy": + let v = try TeamLog.AppleLoginChangePolicyTypeSerializer().deserialize(json) + return EventType.appleLoginChangePolicy(v) + case "app_permissions_changed": + let v = try TeamLog.AppPermissionsChangedTypeSerializer().deserialize(json) + return EventType.appPermissionsChanged(v) + case "camera_uploads_policy_changed": + let v = try TeamLog.CameraUploadsPolicyChangedTypeSerializer().deserialize(json) + return EventType.cameraUploadsPolicyChanged(v) + case "capture_team_space_policy_changed": + let v = try TeamLog.CaptureTeamSpacePolicyChangedTypeSerializer().deserialize(json) + return EventType.captureTeamSpacePolicyChanged(v) + case "capture_transcript_policy_changed": + let v = try TeamLog.CaptureTranscriptPolicyChangedTypeSerializer().deserialize(json) + return EventType.captureTranscriptPolicyChanged(v) + case "classification_change_policy": + let v = try TeamLog.ClassificationChangePolicyTypeSerializer().deserialize(json) + return EventType.classificationChangePolicy(v) + case "computer_backup_policy_changed": + let v = try TeamLog.ComputerBackupPolicyChangedTypeSerializer().deserialize(json) + return EventType.computerBackupPolicyChanged(v) + case "content_administration_policy_changed": + let v = try TeamLog.ContentAdministrationPolicyChangedTypeSerializer().deserialize(json) + return EventType.contentAdministrationPolicyChanged(v) + case "content_deletion_protection_change_policy": + let v = try TeamLog.ContentDeletionProtectionChangePolicyTypeSerializer().deserialize(json) + return EventType.contentDeletionProtectionChangePolicy(v) + case "dash_external_sharing_policy_changed": + let v = try TeamLog.DashExternalSharingPolicyChangedTypeSerializer().deserialize(json) + return EventType.dashExternalSharingPolicyChanged(v) + case "data_placement_restriction_change_policy": + let v = try TeamLog.DataPlacementRestrictionChangePolicyTypeSerializer().deserialize(json) + return EventType.dataPlacementRestrictionChangePolicy(v) + case "data_placement_restriction_satisfy_policy": + let v = try TeamLog.DataPlacementRestrictionSatisfyPolicyTypeSerializer().deserialize(json) + return EventType.dataPlacementRestrictionSatisfyPolicy(v) + case "device_approvals_add_exception": + let v = try TeamLog.DeviceApprovalsAddExceptionTypeSerializer().deserialize(json) + return EventType.deviceApprovalsAddException(v) + case "device_approvals_change_desktop_policy": + let v = try TeamLog.DeviceApprovalsChangeDesktopPolicyTypeSerializer().deserialize(json) + return EventType.deviceApprovalsChangeDesktopPolicy(v) + case "device_approvals_change_mobile_policy": + let v = try TeamLog.DeviceApprovalsChangeMobilePolicyTypeSerializer().deserialize(json) + return EventType.deviceApprovalsChangeMobilePolicy(v) + case "device_approvals_change_overage_action": + let v = try TeamLog.DeviceApprovalsChangeOverageActionTypeSerializer().deserialize(json) + return EventType.deviceApprovalsChangeOverageAction(v) + case "device_approvals_change_unlink_action": + let v = try TeamLog.DeviceApprovalsChangeUnlinkActionTypeSerializer().deserialize(json) + return EventType.deviceApprovalsChangeUnlinkAction(v) + case "device_approvals_remove_exception": + let v = try TeamLog.DeviceApprovalsRemoveExceptionTypeSerializer().deserialize(json) + return EventType.deviceApprovalsRemoveException(v) + case "directory_restrictions_add_members": + let v = try TeamLog.DirectoryRestrictionsAddMembersTypeSerializer().deserialize(json) + return EventType.directoryRestrictionsAddMembers(v) + case "directory_restrictions_remove_members": + let v = try TeamLog.DirectoryRestrictionsRemoveMembersTypeSerializer().deserialize(json) + return EventType.directoryRestrictionsRemoveMembers(v) + case "dropbox_passwords_policy_changed": + let v = try TeamLog.DropboxPasswordsPolicyChangedTypeSerializer().deserialize(json) + return EventType.dropboxPasswordsPolicyChanged(v) + case "email_ingest_policy_changed": + let v = try TeamLog.EmailIngestPolicyChangedTypeSerializer().deserialize(json) + return EventType.emailIngestPolicyChanged(v) + case "emm_add_exception": + let v = try TeamLog.EmmAddExceptionTypeSerializer().deserialize(json) + return EventType.emmAddException(v) + case "emm_change_policy": + let v = try TeamLog.EmmChangePolicyTypeSerializer().deserialize(json) + return EventType.emmChangePolicy(v) + case "emm_remove_exception": + let v = try TeamLog.EmmRemoveExceptionTypeSerializer().deserialize(json) + return EventType.emmRemoveException(v) + case "extended_version_history_change_policy": + let v = try TeamLog.ExtendedVersionHistoryChangePolicyTypeSerializer().deserialize(json) + return EventType.extendedVersionHistoryChangePolicy(v) + case "external_drive_backup_policy_changed": + let v = try TeamLog.ExternalDriveBackupPolicyChangedTypeSerializer().deserialize(json) + return EventType.externalDriveBackupPolicyChanged(v) + case "file_comments_change_policy": + let v = try TeamLog.FileCommentsChangePolicyTypeSerializer().deserialize(json) + return EventType.fileCommentsChangePolicy(v) + case "file_locking_policy_changed": + let v = try TeamLog.FileLockingPolicyChangedTypeSerializer().deserialize(json) + return EventType.fileLockingPolicyChanged(v) + case "file_provider_migration_policy_changed": + let v = try TeamLog.FileProviderMigrationPolicyChangedTypeSerializer().deserialize(json) + return EventType.fileProviderMigrationPolicyChanged(v) + case "file_requests_change_policy": + let v = try TeamLog.FileRequestsChangePolicyTypeSerializer().deserialize(json) + return EventType.fileRequestsChangePolicy(v) + case "file_requests_emails_enabled": + let v = try TeamLog.FileRequestsEmailsEnabledTypeSerializer().deserialize(json) + return EventType.fileRequestsEmailsEnabled(v) + case "file_requests_emails_restricted_to_team_only": + let v = try TeamLog.FileRequestsEmailsRestrictedToTeamOnlyTypeSerializer().deserialize(json) + return EventType.fileRequestsEmailsRestrictedToTeamOnly(v) + case "file_transfers_policy_changed": + let v = try TeamLog.FileTransfersPolicyChangedTypeSerializer().deserialize(json) + return EventType.fileTransfersPolicyChanged(v) + case "flexible_file_names_policy_changed": + let v = try TeamLog.FlexibleFileNamesPolicyChangedTypeSerializer().deserialize(json) + return EventType.flexibleFileNamesPolicyChanged(v) + case "folder_link_restriction_policy_changed": + let v = try TeamLog.FolderLinkRestrictionPolicyChangedTypeSerializer().deserialize(json) + return EventType.folderLinkRestrictionPolicyChanged(v) + case "google_sso_change_policy": + let v = try TeamLog.GoogleSsoChangePolicyTypeSerializer().deserialize(json) + return EventType.googleSsoChangePolicy(v) + case "group_user_management_change_policy": + let v = try TeamLog.GroupUserManagementChangePolicyTypeSerializer().deserialize(json) + return EventType.groupUserManagementChangePolicy(v) + case "integration_policy_changed": + let v = try TeamLog.IntegrationPolicyChangedTypeSerializer().deserialize(json) + return EventType.integrationPolicyChanged(v) + case "invite_acceptance_email_policy_changed": + let v = try TeamLog.InviteAcceptanceEmailPolicyChangedTypeSerializer().deserialize(json) + return EventType.inviteAcceptanceEmailPolicyChanged(v) + case "media_hub_adding_people_policy_changed": + let v = try TeamLog.MediaHubAddingPeoplePolicyChangedTypeSerializer().deserialize(json) + return EventType.mediaHubAddingPeoplePolicyChanged(v) + case "media_hub_download_policy_changed": + let v = try TeamLog.MediaHubDownloadPolicyChangedTypeSerializer().deserialize(json) + return EventType.mediaHubDownloadPolicyChanged(v) + case "media_hub_link_sharing_policy_changed": + let v = try TeamLog.MediaHubLinkSharingPolicyChangedTypeSerializer().deserialize(json) + return EventType.mediaHubLinkSharingPolicyChanged(v) + case "member_requests_change_policy": + let v = try TeamLog.MemberRequestsChangePolicyTypeSerializer().deserialize(json) + return EventType.memberRequestsChangePolicy(v) + case "member_send_invite_policy_changed": + let v = try TeamLog.MemberSendInvitePolicyChangedTypeSerializer().deserialize(json) + return EventType.memberSendInvitePolicyChanged(v) + case "member_space_limits_add_exception": + let v = try TeamLog.MemberSpaceLimitsAddExceptionTypeSerializer().deserialize(json) + return EventType.memberSpaceLimitsAddException(v) + case "member_space_limits_change_caps_type_policy": + let v = try TeamLog.MemberSpaceLimitsChangeCapsTypePolicyTypeSerializer().deserialize(json) + return EventType.memberSpaceLimitsChangeCapsTypePolicy(v) + case "member_space_limits_change_policy": + let v = try TeamLog.MemberSpaceLimitsChangePolicyTypeSerializer().deserialize(json) + return EventType.memberSpaceLimitsChangePolicy(v) + case "member_space_limits_remove_exception": + let v = try TeamLog.MemberSpaceLimitsRemoveExceptionTypeSerializer().deserialize(json) + return EventType.memberSpaceLimitsRemoveException(v) + case "member_suggestions_change_policy": + let v = try TeamLog.MemberSuggestionsChangePolicyTypeSerializer().deserialize(json) + return EventType.memberSuggestionsChangePolicy(v) + case "microsoft_login_change_policy": + let v = try TeamLog.MicrosoftLoginChangePolicyTypeSerializer().deserialize(json) + return EventType.microsoftLoginChangePolicy(v) + case "microsoft_office_addin_change_policy": + let v = try TeamLog.MicrosoftOfficeAddinChangePolicyTypeSerializer().deserialize(json) + return EventType.microsoftOfficeAddinChangePolicy(v) + case "multi_team_identity_policy_changed": + let v = try TeamLog.MultiTeamIdentityPolicyChangedTypeSerializer().deserialize(json) + return EventType.multiTeamIdentityPolicyChanged(v) + case "network_control_change_policy": + let v = try TeamLog.NetworkControlChangePolicyTypeSerializer().deserialize(json) + return EventType.networkControlChangePolicy(v) + case "paper_change_deployment_policy": + let v = try TeamLog.PaperChangeDeploymentPolicyTypeSerializer().deserialize(json) + return EventType.paperChangeDeploymentPolicy(v) + case "paper_change_member_link_policy": + let v = try TeamLog.PaperChangeMemberLinkPolicyTypeSerializer().deserialize(json) + return EventType.paperChangeMemberLinkPolicy(v) + case "paper_change_member_policy": + let v = try TeamLog.PaperChangeMemberPolicyTypeSerializer().deserialize(json) + return EventType.paperChangeMemberPolicy(v) + case "paper_change_policy": + let v = try TeamLog.PaperChangePolicyTypeSerializer().deserialize(json) + return EventType.paperChangePolicy(v) + case "paper_default_folder_policy_changed": + let v = try TeamLog.PaperDefaultFolderPolicyChangedTypeSerializer().deserialize(json) + return EventType.paperDefaultFolderPolicyChanged(v) + case "paper_desktop_policy_changed": + let v = try TeamLog.PaperDesktopPolicyChangedTypeSerializer().deserialize(json) + return EventType.paperDesktopPolicyChanged(v) + case "paper_enabled_users_group_addition": + let v = try TeamLog.PaperEnabledUsersGroupAdditionTypeSerializer().deserialize(json) + return EventType.paperEnabledUsersGroupAddition(v) + case "paper_enabled_users_group_removal": + let v = try TeamLog.PaperEnabledUsersGroupRemovalTypeSerializer().deserialize(json) + return EventType.paperEnabledUsersGroupRemoval(v) + case "passkey_login_policy_changed": + let v = try TeamLog.PasskeyLoginPolicyChangedTypeSerializer().deserialize(json) + return EventType.passkeyLoginPolicyChanged(v) + case "password_strength_requirements_change_policy": + let v = try TeamLog.PasswordStrengthRequirementsChangePolicyTypeSerializer().deserialize(json) + return EventType.passwordStrengthRequirementsChangePolicy(v) + case "permanent_delete_change_policy": + let v = try TeamLog.PermanentDeleteChangePolicyTypeSerializer().deserialize(json) + return EventType.permanentDeleteChangePolicy(v) + case "previews_ai_policy_changed": + let v = try TeamLog.PreviewsAiPolicyChangedTypeSerializer().deserialize(json) + return EventType.previewsAiPolicyChanged(v) + case "replay_adding_people_policy_changed": + let v = try TeamLog.ReplayAddingPeoplePolicyChangedTypeSerializer().deserialize(json) + return EventType.replayAddingPeoplePolicyChanged(v) + case "replay_sharing_policy_changed": + let v = try TeamLog.ReplaySharingPolicyChangedTypeSerializer().deserialize(json) + return EventType.replaySharingPolicyChanged(v) + case "reseller_support_change_policy": + let v = try TeamLog.ResellerSupportChangePolicyTypeSerializer().deserialize(json) + return EventType.resellerSupportChangePolicy(v) + case "rewind_policy_changed": + let v = try TeamLog.RewindPolicyChangedTypeSerializer().deserialize(json) + return EventType.rewindPolicyChanged(v) + case "send_and_track_policy_changed": + let v = try TeamLog.SendAndTrackPolicyChangedTypeSerializer().deserialize(json) + return EventType.sendAndTrackPolicyChanged(v) + case "send_external_sharing_policy_changed": + let v = try TeamLog.SendExternalSharingPolicyChangedTypeSerializer().deserialize(json) + return EventType.sendExternalSharingPolicyChanged(v) + case "send_for_signature_policy_changed": + let v = try TeamLog.SendForSignaturePolicyChangedTypeSerializer().deserialize(json) + return EventType.sendForSignaturePolicyChanged(v) + case "shared_link_default_permissions_policy_changed": + let v = try TeamLog.SharedLinkDefaultPermissionsPolicyChangedTypeSerializer().deserialize(json) + return EventType.sharedLinkDefaultPermissionsPolicyChanged(v) + case "sharing_change_folder_join_policy": + let v = try TeamLog.SharingChangeFolderJoinPolicyTypeSerializer().deserialize(json) + return EventType.sharingChangeFolderJoinPolicy(v) + case "sharing_change_link_allow_change_expiration_policy": + let v = try TeamLog.SharingChangeLinkAllowChangeExpirationPolicyTypeSerializer().deserialize(json) + return EventType.sharingChangeLinkAllowChangeExpirationPolicy(v) + case "sharing_change_link_default_expiration_policy": + let v = try TeamLog.SharingChangeLinkDefaultExpirationPolicyTypeSerializer().deserialize(json) + return EventType.sharingChangeLinkDefaultExpirationPolicy(v) + case "sharing_change_link_enforce_password_policy": + let v = try TeamLog.SharingChangeLinkEnforcePasswordPolicyTypeSerializer().deserialize(json) + return EventType.sharingChangeLinkEnforcePasswordPolicy(v) + case "sharing_change_link_policy": + let v = try TeamLog.SharingChangeLinkPolicyTypeSerializer().deserialize(json) + return EventType.sharingChangeLinkPolicy(v) + case "sharing_change_member_policy": + let v = try TeamLog.SharingChangeMemberPolicyTypeSerializer().deserialize(json) + return EventType.sharingChangeMemberPolicy(v) + case "showcase_change_download_policy": + let v = try TeamLog.ShowcaseChangeDownloadPolicyTypeSerializer().deserialize(json) + return EventType.showcaseChangeDownloadPolicy(v) + case "showcase_change_enabled_policy": + let v = try TeamLog.ShowcaseChangeEnabledPolicyTypeSerializer().deserialize(json) + return EventType.showcaseChangeEnabledPolicy(v) + case "showcase_change_external_sharing_policy": + let v = try TeamLog.ShowcaseChangeExternalSharingPolicyTypeSerializer().deserialize(json) + return EventType.showcaseChangeExternalSharingPolicy(v) + case "sign_external_sharing_policy_changed": + let v = try TeamLog.SignExternalSharingPolicyChangedTypeSerializer().deserialize(json) + return EventType.signExternalSharingPolicyChanged(v) + case "sign_template_creation_permission_changed": + let v = try TeamLog.SignTemplateCreationPermissionChangedTypeSerializer().deserialize(json) + return EventType.signTemplateCreationPermissionChanged(v) + case "smarter_smart_sync_policy_changed": + let v = try TeamLog.SmarterSmartSyncPolicyChangedTypeSerializer().deserialize(json) + return EventType.smarterSmartSyncPolicyChanged(v) + case "smart_sync_change_policy": + let v = try TeamLog.SmartSyncChangePolicyTypeSerializer().deserialize(json) + return EventType.smartSyncChangePolicy(v) + case "smart_sync_not_opt_out": + let v = try TeamLog.SmartSyncNotOptOutTypeSerializer().deserialize(json) + return EventType.smartSyncNotOptOut(v) + case "smart_sync_opt_out": + let v = try TeamLog.SmartSyncOptOutTypeSerializer().deserialize(json) + return EventType.smartSyncOptOut(v) + case "sso_change_policy": + let v = try TeamLog.SsoChangePolicyTypeSerializer().deserialize(json) + return EventType.ssoChangePolicy(v) + case "stack_cross_team_access_policy_changed": + let v = try TeamLog.StackCrossTeamAccessPolicyChangedTypeSerializer().deserialize(json) + return EventType.stackCrossTeamAccessPolicyChanged(v) + case "team_branding_policy_changed": + let v = try TeamLog.TeamBrandingPolicyChangedTypeSerializer().deserialize(json) + return EventType.teamBrandingPolicyChanged(v) + case "team_extensions_policy_changed": + let v = try TeamLog.TeamExtensionsPolicyChangedTypeSerializer().deserialize(json) + return EventType.teamExtensionsPolicyChanged(v) + case "team_member_storage_request_policy_changed": + let v = try TeamLog.TeamMemberStorageRequestPolicyChangedTypeSerializer().deserialize(json) + return EventType.teamMemberStorageRequestPolicyChanged(v) + case "team_selective_sync_policy_changed": + let v = try TeamLog.TeamSelectiveSyncPolicyChangedTypeSerializer().deserialize(json) + return EventType.teamSelectiveSyncPolicyChanged(v) + case "team_sharing_whitelist_subjects_changed": + let v = try TeamLog.TeamSharingWhitelistSubjectsChangedTypeSerializer().deserialize(json) + return EventType.teamSharingWhitelistSubjectsChanged(v) + case "tfa_add_exception": + let v = try TeamLog.TfaAddExceptionTypeSerializer().deserialize(json) + return EventType.tfaAddException(v) + case "tfa_change_policy": + let v = try TeamLog.TfaChangePolicyTypeSerializer().deserialize(json) + return EventType.tfaChangePolicy(v) + case "tfa_remove_exception": + let v = try TeamLog.TfaRemoveExceptionTypeSerializer().deserialize(json) + return EventType.tfaRemoveException(v) + case "top_level_content_policy_changed": + let v = try TeamLog.TopLevelContentPolicyChangedTypeSerializer().deserialize(json) + return EventType.topLevelContentPolicyChanged(v) + case "two_account_change_policy": + let v = try TeamLog.TwoAccountChangePolicyTypeSerializer().deserialize(json) + return EventType.twoAccountChangePolicy(v) + case "viewer_info_policy_changed": + let v = try TeamLog.ViewerInfoPolicyChangedTypeSerializer().deserialize(json) + return EventType.viewerInfoPolicyChanged(v) + case "watermarking_policy_changed": + let v = try TeamLog.WatermarkingPolicyChangedTypeSerializer().deserialize(json) + return EventType.watermarkingPolicyChanged(v) + case "web_sessions_change_active_session_limit": + let v = try TeamLog.WebSessionsChangeActiveSessionLimitTypeSerializer().deserialize(json) + return EventType.webSessionsChangeActiveSessionLimit(v) + case "web_sessions_change_fixed_length_policy": + let v = try TeamLog.WebSessionsChangeFixedLengthPolicyTypeSerializer().deserialize(json) + return EventType.webSessionsChangeFixedLengthPolicy(v) + case "web_sessions_change_idle_length_policy": + let v = try TeamLog.WebSessionsChangeIdleLengthPolicyTypeSerializer().deserialize(json) + return EventType.webSessionsChangeIdleLengthPolicy(v) + case "data_residency_migration_request_successful": + let v = try TeamLog.DataResidencyMigrationRequestSuccessfulTypeSerializer().deserialize(json) + return EventType.dataResidencyMigrationRequestSuccessful(v) + case "data_residency_migration_request_unsuccessful": + let v = try TeamLog.DataResidencyMigrationRequestUnsuccessfulTypeSerializer().deserialize(json) + return EventType.dataResidencyMigrationRequestUnsuccessful(v) + case "team_merge_from": + let v = try TeamLog.TeamMergeFromTypeSerializer().deserialize(json) + return EventType.teamMergeFrom(v) + case "team_merge_to": + let v = try TeamLog.TeamMergeToTypeSerializer().deserialize(json) + return EventType.teamMergeTo(v) + case "team_profile_add_background": + let v = try TeamLog.TeamProfileAddBackgroundTypeSerializer().deserialize(json) + return EventType.teamProfileAddBackground(v) + case "team_profile_add_logo": + let v = try TeamLog.TeamProfileAddLogoTypeSerializer().deserialize(json) + return EventType.teamProfileAddLogo(v) + case "team_profile_change_background": + let v = try TeamLog.TeamProfileChangeBackgroundTypeSerializer().deserialize(json) + return EventType.teamProfileChangeBackground(v) + case "team_profile_change_default_language": + let v = try TeamLog.TeamProfileChangeDefaultLanguageTypeSerializer().deserialize(json) + return EventType.teamProfileChangeDefaultLanguage(v) + case "team_profile_change_logo": + let v = try TeamLog.TeamProfileChangeLogoTypeSerializer().deserialize(json) + return EventType.teamProfileChangeLogo(v) + case "team_profile_change_name": + let v = try TeamLog.TeamProfileChangeNameTypeSerializer().deserialize(json) + return EventType.teamProfileChangeName(v) + case "team_profile_remove_background": + let v = try TeamLog.TeamProfileRemoveBackgroundTypeSerializer().deserialize(json) + return EventType.teamProfileRemoveBackground(v) + case "team_profile_remove_logo": + let v = try TeamLog.TeamProfileRemoveLogoTypeSerializer().deserialize(json) + return EventType.teamProfileRemoveLogo(v) + case "passkey_add": + let v = try TeamLog.PasskeyAddTypeSerializer().deserialize(json) + return EventType.passkeyAdd(v) + case "passkey_remove": + let v = try TeamLog.PasskeyRemoveTypeSerializer().deserialize(json) + return EventType.passkeyRemove(v) + case "tfa_add_backup_phone": + let v = try TeamLog.TfaAddBackupPhoneTypeSerializer().deserialize(json) + return EventType.tfaAddBackupPhone(v) + case "tfa_add_security_key": + let v = try TeamLog.TfaAddSecurityKeyTypeSerializer().deserialize(json) + return EventType.tfaAddSecurityKey(v) + case "tfa_change_backup_phone": + let v = try TeamLog.TfaChangeBackupPhoneTypeSerializer().deserialize(json) + return EventType.tfaChangeBackupPhone(v) + case "tfa_change_status": + let v = try TeamLog.TfaChangeStatusTypeSerializer().deserialize(json) + return EventType.tfaChangeStatus(v) + case "tfa_remove_backup_phone": + let v = try TeamLog.TfaRemoveBackupPhoneTypeSerializer().deserialize(json) + return EventType.tfaRemoveBackupPhone(v) + case "tfa_remove_security_key": + let v = try TeamLog.TfaRemoveSecurityKeyTypeSerializer().deserialize(json) + return EventType.tfaRemoveSecurityKey(v) + case "tfa_reset": + let v = try TeamLog.TfaResetTypeSerializer().deserialize(json) + return EventType.tfaReset(v) + case "changed_enterprise_admin_role": + let v = try TeamLog.ChangedEnterpriseAdminRoleTypeSerializer().deserialize(json) + return EventType.changedEnterpriseAdminRole(v) + case "changed_enterprise_connected_team_status": + let v = try TeamLog.ChangedEnterpriseConnectedTeamStatusTypeSerializer().deserialize(json) + return EventType.changedEnterpriseConnectedTeamStatus(v) + case "ended_enterprise_admin_session": + let v = try TeamLog.EndedEnterpriseAdminSessionTypeSerializer().deserialize(json) + return EventType.endedEnterpriseAdminSession(v) + case "ended_enterprise_admin_session_deprecated": + let v = try TeamLog.EndedEnterpriseAdminSessionDeprecatedTypeSerializer().deserialize(json) + return EventType.endedEnterpriseAdminSessionDeprecated(v) + case "enterprise_settings_locking": + let v = try TeamLog.EnterpriseSettingsLockingTypeSerializer().deserialize(json) + return EventType.enterpriseSettingsLocking(v) + case "guest_admin_change_status": + let v = try TeamLog.GuestAdminChangeStatusTypeSerializer().deserialize(json) + return EventType.guestAdminChangeStatus(v) + case "started_enterprise_admin_session": + let v = try TeamLog.StartedEnterpriseAdminSessionTypeSerializer().deserialize(json) + return EventType.startedEnterpriseAdminSession(v) + case "team_merge_request_accepted": + let v = try TeamLog.TeamMergeRequestAcceptedTypeSerializer().deserialize(json) + return EventType.teamMergeRequestAccepted(v) + case "team_merge_request_accepted_shown_to_primary_team": + let v = try TeamLog.TeamMergeRequestAcceptedShownToPrimaryTeamTypeSerializer().deserialize(json) + return EventType.teamMergeRequestAcceptedShownToPrimaryTeam(v) + case "team_merge_request_accepted_shown_to_secondary_team": + let v = try TeamLog.TeamMergeRequestAcceptedShownToSecondaryTeamTypeSerializer().deserialize(json) + return EventType.teamMergeRequestAcceptedShownToSecondaryTeam(v) + case "team_merge_request_auto_canceled": + let v = try TeamLog.TeamMergeRequestAutoCanceledTypeSerializer().deserialize(json) + return EventType.teamMergeRequestAutoCanceled(v) + case "team_merge_request_canceled": + let v = try TeamLog.TeamMergeRequestCanceledTypeSerializer().deserialize(json) + return EventType.teamMergeRequestCanceled(v) + case "team_merge_request_canceled_shown_to_primary_team": + let v = try TeamLog.TeamMergeRequestCanceledShownToPrimaryTeamTypeSerializer().deserialize(json) + return EventType.teamMergeRequestCanceledShownToPrimaryTeam(v) + case "team_merge_request_canceled_shown_to_secondary_team": + let v = try TeamLog.TeamMergeRequestCanceledShownToSecondaryTeamTypeSerializer().deserialize(json) + return EventType.teamMergeRequestCanceledShownToSecondaryTeam(v) + case "team_merge_request_expired": + let v = try TeamLog.TeamMergeRequestExpiredTypeSerializer().deserialize(json) + return EventType.teamMergeRequestExpired(v) + case "team_merge_request_expired_shown_to_primary_team": + let v = try TeamLog.TeamMergeRequestExpiredShownToPrimaryTeamTypeSerializer().deserialize(json) + return EventType.teamMergeRequestExpiredShownToPrimaryTeam(v) + case "team_merge_request_expired_shown_to_secondary_team": + let v = try TeamLog.TeamMergeRequestExpiredShownToSecondaryTeamTypeSerializer().deserialize(json) + return EventType.teamMergeRequestExpiredShownToSecondaryTeam(v) + case "team_merge_request_rejected_shown_to_primary_team": + let v = try TeamLog.TeamMergeRequestRejectedShownToPrimaryTeamTypeSerializer().deserialize(json) + return EventType.teamMergeRequestRejectedShownToPrimaryTeam(v) + case "team_merge_request_rejected_shown_to_secondary_team": + let v = try TeamLog.TeamMergeRequestRejectedShownToSecondaryTeamTypeSerializer().deserialize(json) + return EventType.teamMergeRequestRejectedShownToSecondaryTeam(v) + case "team_merge_request_reminder": + let v = try TeamLog.TeamMergeRequestReminderTypeSerializer().deserialize(json) + return EventType.teamMergeRequestReminder(v) + case "team_merge_request_reminder_shown_to_primary_team": + let v = try TeamLog.TeamMergeRequestReminderShownToPrimaryTeamTypeSerializer().deserialize(json) + return EventType.teamMergeRequestReminderShownToPrimaryTeam(v) + case "team_merge_request_reminder_shown_to_secondary_team": + let v = try TeamLog.TeamMergeRequestReminderShownToSecondaryTeamTypeSerializer().deserialize(json) + return EventType.teamMergeRequestReminderShownToSecondaryTeam(v) + case "team_merge_request_revoked": + let v = try TeamLog.TeamMergeRequestRevokedTypeSerializer().deserialize(json) + return EventType.teamMergeRequestRevoked(v) + case "team_merge_request_sent_shown_to_primary_team": + let v = try TeamLog.TeamMergeRequestSentShownToPrimaryTeamTypeSerializer().deserialize(json) + return EventType.teamMergeRequestSentShownToPrimaryTeam(v) + case "team_merge_request_sent_shown_to_secondary_team": + let v = try TeamLog.TeamMergeRequestSentShownToSecondaryTeamTypeSerializer().deserialize(json) + return EventType.teamMergeRequestSentShownToSecondaryTeam(v) + case "other": + return EventType.other + default: + return EventType.other + } + default: + throw JSONSerializerError.deserializeError(type: EventType.self, json: json) } } } @@ -20582,6 +27054,70 @@ public class TeamLog { case fileUnlikeComment /// (comments) Unresolved file comment case fileUnresolveComment + /// (dash) Added a comment to a stack + case dashAddedCommentToStack + /// (dash) Connected to a user connector + case dashAddedConnector + /// (dash) Added a link to a stack + case dashAddedLinkToStack + /// (dash) Admin added an email domain to the team allowlist + case dashAddedTeamEmailDomainAllowlist + /// (dash) Admin added an admin connector + case dashAdminAddedOrgWideConnector + /// (dash) Admin disabled a user connector + case dashAdminDisabledConnector + /// (dash) Admin enabled a user connector + case dashAdminEnabledConnector + /// (dash) Admin removed an admin connector + case dashAdminRemovedOrgWideConnector + /// (dash) Archived a stack + case dashArchivedStack + /// (dash) Changed the audience of a shared link to a stack + case dashChangedAudienceOfSharedLinkToStack + /// (dash) Cloned stack + case dashClonedStack + /// (dash) Called a tool on a connector + case dashConnectorToolsCall + /// (dash) Created a stack + case dashCreatedStack + /// (dash) Deleted a comment from a stack + case dashDeletedCommentFromStack + /// (dash) Deleted a stack + case dashDeletedStack + /// (dash) Edited a comment in a stack + case dashEditedCommentInStack + /// (dash) External user opened a stack + case dashExternalUserOpenedStack + /// (dash) Opened the desktop app for the first time + case dashFirstLaunchedDesktop + /// (dash) Opened the extension for the first time + case dashFirstLaunchedExtension + /// (dash) Opened the web Start Page for the first time + case dashFirstLaunchedWebStartPage + /// (dash) Checked access permissions to a stack + case dashOpenedSharedLinkToStack + /// (dash) Opened a stack + case dashOpenedStack + /// (dash) Changed the preview opt-out status + case dashPreviewOptOutStatusChanged + /// (dash) Disconnected a user connector + case dashRemovedConnector + /// (dash) Removed a link from a stack + case dashRemovedLinkFromStack + /// (dash) Removed a shared link to a stack + case dashRemovedSharedLinkToStack + /// (dash) Admin removed an email domain from the team allowlist + case dashRemovedTeamEmailDomainAllowlist + /// (dash) Renamed a stack + case dashRenamedStack + /// (dash) Shared a link to a stack + case dashSharedLinkToStack + /// (dash) Unarchived a stack + case dashUnarchivedStack + /// (dash) Member viewed a company stack + case dashViewedCompanyStack + /// (dash) Admin viewed the external AI activity report + case dashViewedExternalAiActivityReport /// (data_governance) Added folders to policy case governancePolicyAddFolders /// (data_governance) Couldn't add a folder to a policy @@ -20690,10 +27226,34 @@ public class TeamLog { case domainVerificationRemoveDomain /// (domains) Enabled domain invites (deprecated, no longer logged) case enabledDomainInvites + /// (encryption) Canceled team key rotation + case encryptedFolderCancelTeamKeyRotation + /// (encryption) Added recovery key + case encryptedFolderEnrollBackupKey + /// (encryption) Enrolled device + case encryptedFolderEnrollClient + /// (encryption) Activated team folder encryption + case encryptedFolderEnrollTeam + /// (encryption) Deactivated team folder encryption + case encryptedFolderFinishTeamUnenrollment + /// (encryption) Initiated team key rotation + case encryptedFolderInitTeamKeyRotation + /// (encryption) Initiated deactivation of team folder encryption + case encryptedFolderInitTeamUnenrollment + /// (encryption) Removed recovery key + case encryptedFolderRemoveBackupKey + /// (encryption) Rotated team key + case encryptedFolderRotateTeamKey + /// (encryption) Unenrolled device + case encryptedFolderUnenrollClient + /// (encryption) Activated team encryption key + case teamEncryptionKeyActivateKey /// (encryption) Canceled team encryption key deletion case teamEncryptionKeyCancelKeyDeletion /// (encryption) Created team encryption key case teamEncryptionKeyCreateKey + /// (encryption) Deactivated team encryption key + case teamEncryptionKeyDeactivateKey /// (encryption) Deleted team encryption key case teamEncryptionKeyDeleteKey /// (encryption) Disabled team encryption key @@ -20746,6 +27306,8 @@ public class TeamLog { case folderOverviewItemPinned /// (file_operations) Unpinned item from folder overview case folderOverviewItemUnpinned + /// (file_operations) Downloaded files in Replay + case mediaHubFileDownloaded /// (file_operations) Added a label case objectLabelAdded /// (file_operations) Removed a label @@ -20756,6 +27318,10 @@ public class TeamLog { case organizeFolderWithTidy /// (file_operations) Deleted files in Replay case replayFileDelete + /// (file_operations) Downloaded files in Replay + case replayFileDownloaded + /// (file_operations) Created a team project in Replay + case replayTeamProjectCreated /// (file_operations) Rewound a folder case rewindFolder /// (file_operations) Reverted naming convention @@ -20768,6 +27334,8 @@ public class TeamLog { case userTagsRemoved /// (file_requests) Received files via Email to Dropbox case emailIngestReceiveFile + /// (file_requests) Auto closed file request + case fileRequestAutoClose /// (file_requests) Changed file request case fileRequestChange /// (file_requests) Closed file request @@ -20794,6 +27362,8 @@ public class TeamLog { case groupDelete /// (groups) Updated group (deprecated, no longer logged) case groupDescriptionUpdated + /// (groups) Changed group's external sharing setting + case groupExternalSharingSettingOverrideChanged /// (groups) Updated group join policy (deprecated, no longer logged) case groupJoinPolicyUpdated /// (groups) Moved group (deprecated, no longer logged) @@ -20828,6 +27398,10 @@ public class TeamLog { case signInAsSessionStart /// (logins) Failed to sign in via SSO (deprecated, replaced by 'Failed to sign in') case ssoError + /// (members) Add-on Assigned + case addonAssigned + /// (members) Add-on Removed + case addonRemoved /// (members) Invited members to activate Backup case backupAdminInvitationSent /// (members) Opened Backup invite @@ -20858,6 +27432,8 @@ public class TeamLog { case memberDeleteManualContacts /// (members) Deleted team member profile photo case memberDeleteProfilePhoto + /// (members) Admin browsed a team member's folder contents + case memberFolderContentsAccessed /// (members) Permanently deleted contents of deleted team member account case memberPermanentlyDeleteAccountContents /// (members) Removed the external ID for team member @@ -20878,6 +27454,10 @@ public class TeamLog { case memberTransferAccountContents /// (members) Added pending secondary email case pendingSecondaryEmailAdded + /// (members) Product assigned to team member + case productAssignedToMember + /// (members) Product removed from team member + case productRemovedFromMember /// (members) Deleted secondary email case secondaryEmailDeleted /// (members) Verified secondary email @@ -20988,6 +27568,22 @@ public class TeamLog { case passwordReset /// (passwords) Reset all team member passwords case passwordResetAll + /// (protect) Added collaborators via Dropbox Protect + case protectActionAddCollaborator + /// (protect) Added a link via Dropbox Protect + case protectActionAddLink + /// (protect) Deleted content via Dropbox Protect + case protectActionDelete + /// (protect) Exported content via Dropbox Protect + case protectActionExport + /// (protect) Removed collaborators via Dropbox Protect + case protectActionRemoveCollaborator + /// (protect) Removed a link via Dropbox Protect + case protectActionRemoveLink + /// (protect) Stopped sharing content via Dropbox Protect + case protectActionStopSharing + /// (protect) Modified Protect internal domains list + case protectInternalDomainsChanged /// (reports) Created Classification report case classificationCreateReport /// (reports) Couldn't create Classification report @@ -21004,6 +27600,10 @@ public class TeamLog { case externalSharingCreateReport /// (reports) Couldn't create External sharing report case externalSharingReportFailed + /// (reports) Created member access report + case memberAccessDetailsCreateReport + /// (reports) Couldn't generate member access report + case memberAccessDetailsCreateReportFailed /// (reports) Report created: Links created with no expiration case noExpirationLinkGenCreateReport /// (reports) Couldn't create report: Links created with no expiration @@ -21026,12 +27626,24 @@ public class TeamLog { case ransomwareAlertCreateReport /// (reports) Couldn't generate ransomware report case ransomwareAlertCreateReportFailed + /// (reports) Created shared folders report + case sharedFoldersCreateReport + /// (reports) Couldn't generate shared folders report + case sharedFoldersCreateReportFailed /// (reports) Created Smart Sync non-admin devices report case smartSyncCreateAdminPrivilegeReport /// (reports) Created team activity report case teamActivityCreateReport /// (reports) Couldn't generate team activity report case teamActivityCreateReportFail + /// (reports) Created team folders report + case teamFoldersCreateReport + /// (reports) Couldn't generate team folders report + case teamFoldersCreateReportFailed + /// (reports) Created team storage report + case teamStorageCreateReport + /// (reports) Couldn't generate team storage report + case teamStorageCreateReportFailed /// (sharing) Shared album case collectionShare /// (sharing) Transfer files added @@ -21044,6 +27656,20 @@ public class TeamLog { case fileTransfersTransferSend /// (sharing) Viewed transfer case fileTransfersTransferView + /// (sharing) Added member to Replay project + case mediaHubProjectTeamAdd + /// (sharing) Removed member from Replay project + case mediaHubProjectTeamDelete + /// (sharing) Changed member role in Replay project + case mediaHubProjectTeamRoleChanged + /// (sharing) Changed Replay shared link audience + case mediaHubSharedLinkAudienceChanged + /// (sharing) Created Replay shared link + case mediaHubSharedLinkCreated + /// (sharing) Changed Replay shared link download setting + case mediaHubSharedLinkDownloadSettingChanged + /// (sharing) Revoked Replay shared link + case mediaHubSharedLinkRevoked /// (sharing) Changed Paper doc to invite-only (deprecated, no longer logged) case noteAclInviteOnly /// (sharing) Changed Paper doc to link-accessible (deprecated, no longer logged) @@ -21058,12 +27684,28 @@ public class TeamLog { case openNoteShared /// (sharing) Created shared link in Replay case replayFileSharedLinkCreated - /// (sharing) Modified shared link in Replay + /// (sharing) Changed shared link in Replay case replayFileSharedLinkModified /// (sharing) Added member to Replay Project case replayProjectTeamAdd /// (sharing) Removed member from Replay Project case replayProjectTeamDelete + /// (sharing) File added to Send and Track + case sendAndTrackFileAdded + /// (sharing) File renamed in Send and Track + case sendAndTrackFileRenamed + /// (sharing) File updated in Send and Track + case sendAndTrackFileUpdated + /// (sharing) Link created in Send and Track + case sendAndTrackLinkCreated + /// (sharing) Link deleted in Send and Track + case sendAndTrackLinkDeleted + /// (sharing) Send and Track Link Updated + case sendAndTrackLinkUpdated + /// (sharing) Send and Track Link Visited + case sendAndTrackLinkViewed + /// (sharing) Send and Track file and associated links deleted + case sendAndTrackRemovedFileAndAssociatedLinks /// (sharing) Added team to shared folder (deprecated, no longer logged) case sfAddGroup /// (sharing) Allowed non-collaborators to view links to files in shared folder (deprecated, no longer logged) @@ -21176,6 +27818,8 @@ public class TeamLog { case sharedLinkDownload /// (sharing) Removed shared link expiration date case sharedLinkRemoveExpiry + /// (sharing) Removed link visitor + case sharedLinkRemoveVisitor /// (sharing) Added an expiration date to the shared link case sharedLinkSettingsAddExpiration /// (sharing) Added a password to the shared link @@ -21254,6 +27898,24 @@ public class TeamLog { case showcaseUntrashedDeprecated /// (showcase) Viewed showcase case showcaseView + /// (signatures) Canceled signature request + case signSignatureRequestCanceled + /// (signatures) Completed signature request + case signSignatureRequestCompleted + /// (signatures) Declined signature request + case signSignatureRequestDeclined + /// (signatures) Opened signature request + case signSignatureRequestOpened + /// (signatures) Sent signature request reminder + case signSignatureRequestReminderSent + /// (signatures) Sent signature request + case signSignatureRequestSent + /// (signatures) Created template + case signTemplateCreated + /// (signatures) Shared template + case signTemplateShared + /// (sso) RISC security event received from external provider + case riscSecurityEvent /// (sso) Added X.509 certificate for SSO case ssoAddCert /// (sso) Added sign-in URL for SSO @@ -21284,20 +27946,32 @@ public class TeamLog { case teamFolderPermanentlyDelete /// (team_folders) Renamed active/archived team folder case teamFolderRename + /// (team_folders) Changed team folder space limit enforcement type + case teamFolderSpaceLimitsChangeCapsType + /// (team_folders) Changed team folder space limit + case teamFolderSpaceLimitsChangeLimit + /// (team_folders) Changed team folder space limit notification target + case teamFolderSpaceLimitsChangeNotificationTarget /// (team_folders) Changed sync default case teamSelectiveSyncSettingsChanged /// (team_policies) Changed account capture setting on team domain case accountCaptureChangePolicy /// (team_policies) Changed admin reminder settings for requests to join the team case adminEmailRemindersChanged + /// (team_policies) Changed AI third party sharing policy for team + case aiThirdPartySharingDropboxBasePolicyChanged /// (team_policies) Disabled downloads (deprecated, no longer logged) case allowDownloadDisabled /// (team_policies) Enabled downloads (deprecated, no longer logged) case allowDownloadEnabled + /// (team_policies) Enabled/disabled Apple login for team + case appleLoginChangePolicy /// (team_policies) Changed app permissions case appPermissionsChanged /// (team_policies) Changed camera uploads setting for team case cameraUploadsPolicyChanged + /// (team_policies) Changed Capture team space policy for team + case captureTeamSpacePolicyChanged /// (team_policies) Changed Capture transcription policy for team case captureTranscriptPolicyChanged /// (team_policies) Changed classification policy for team @@ -21306,6 +27980,10 @@ public class TeamLog { case computerBackupPolicyChanged /// (team_policies) Changed content management setting case contentAdministrationPolicyChanged + /// (team_policies) Changed content deletion protection policy for team + case contentDeletionProtectionChangePolicy + /// (team_policies) Changed Dash external sharing policy for team + case dashExternalSharingPolicyChanged /// (team_policies) Set restrictions on data center locations where team data resides case dataPlacementRestrictionChangePolicy /// (team_policies) Completed restrictions on data center locations where team data resides @@ -21354,6 +28032,8 @@ public class TeamLog { case fileRequestsEmailsRestrictedToTeamOnly /// (team_policies) Changed file transfers policy for team case fileTransfersPolicyChanged + /// (team_policies) Changed flexible file names policy for team + case flexibleFileNamesPolicyChanged /// (team_policies) Changed folder link restrictions policy for team case folderLinkRestrictionPolicyChanged /// (team_policies) Enabled/disabled Google single sign-on for team @@ -21364,6 +28044,12 @@ public class TeamLog { case integrationPolicyChanged /// (team_policies) Changed invite accept email policy for team case inviteAcceptanceEmailPolicyChanged + /// (team_policies) Changed the policy for adding people to Replay content + case mediaHubAddingPeoplePolicyChanged + /// (team_policies) Changed the policy for downloading Replay content + case mediaHubDownloadPolicyChanged + /// (team_policies) Changed the policy for sharing Replay content + case mediaHubLinkSharingPolicyChanged /// (team_policies) Changed whether users can find team when not invited case memberRequestsChangePolicy /// (team_policies) Changed member send invite policy for team @@ -21378,8 +28064,12 @@ public class TeamLog { case memberSpaceLimitsRemoveException /// (team_policies) Enabled/disabled option for team members to suggest people to add to team case memberSuggestionsChangePolicy + /// (team_policies) Enabled/disabled Microsoft login for team + case microsoftLoginChangePolicy /// (team_policies) Enabled/disabled Microsoft Office add-in case microsoftOfficeAddinChangePolicy + /// (team_policies) Changed multi-team identity policy for team + case multiTeamIdentityPolicyChanged /// (team_policies) Enabled/disabled network control case networkControlChangePolicy /// (team_policies) Changed whether Dropbox Paper, when enabled, is deployed to all members or to specific @@ -21400,16 +28090,30 @@ public class TeamLog { case paperEnabledUsersGroupAddition /// (team_policies) Removed users from Paper-enabled users list case paperEnabledUsersGroupRemoval + /// (team_policies) Changed passkey login policy for team + case passkeyLoginPolicyChanged /// (team_policies) Changed team password strength requirements case passwordStrengthRequirementsChangePolicy /// (team_policies) Enabled/disabled ability of team members to permanently delete content case permanentDeleteChangePolicy + /// (team_policies) Changed Dropbox AI policy for team + case previewsAiPolicyChanged + /// (team_policies) Changed the policy for adding people to Replay content + case replayAddingPeoplePolicyChanged + /// (team_policies) Changed the policy for sharing Replay content + case replaySharingPolicyChanged /// (team_policies) Enabled/disabled reseller support case resellerSupportChangePolicy /// (team_policies) Changed Rewind policy for team case rewindPolicyChanged + /// (team_policies) Changed “Send and track” policy for team + case sendAndTrackPolicyChanged + /// (team_policies) Changed “Send and track” external sharing policy for team + case sendExternalSharingPolicyChanged /// (team_policies) Changed send for signature policy for team case sendForSignaturePolicyChanged + /// (team_policies) Changed shared link default permissions policy for team + case sharedLinkDefaultPermissionsPolicyChanged /// (team_policies) Changed whether team members can join shared folders owned outside team case sharingChangeFolderJoinPolicy /// (team_policies) Changed the allow remove or change expiration policy for the links shared outside of the @@ -21430,6 +28134,10 @@ public class TeamLog { case showcaseChangeEnabledPolicy /// (team_policies) Enabled/disabled sharing Dropbox Showcase externally for team case showcaseChangeExternalSharingPolicy + /// (team_policies) Changed Signatures external sharing policy for team + case signExternalSharingPolicyChanged + /// (team_policies) Changed template creation permission + case signTemplateCreationPermissionChanged /// (team_policies) Changed automatic Smart Sync setting for team case smarterSmartSyncPolicyChanged /// (team_policies) Changed default Smart Sync setting for team members @@ -21440,20 +28148,26 @@ public class TeamLog { case smartSyncOptOut /// (team_policies) Changed single sign-on setting for team case ssoChangePolicy + /// (team_policies) Changed cross-team Stack access policy for team + case stackCrossTeamAccessPolicyChanged /// (team_policies) Changed team branding policy for team case teamBrandingPolicyChanged /// (team_policies) Changed App Integrations setting for team case teamExtensionsPolicyChanged + /// (team_policies) Changed team member storage request policy for team + case teamMemberStorageRequestPolicyChanged /// (team_policies) Enabled/disabled Team Selective Sync for team case teamSelectiveSyncPolicyChanged /// (team_policies) Edited the approved list for sharing externally case teamSharingWhitelistSubjectsChanged /// (team_policies) Added members to two factor authentication exception list case tfaAddException - /// (team_policies) Changed two-step verification setting for team + /// (team_policies) Changed two-factor authentication setting for team case tfaChangePolicy /// (team_policies) Removed members from two factor authentication exception list case tfaRemoveException + /// (team_policies) Changed top level content setting for team + case topLevelContentPolicyChanged /// (team_policies) Enabled/disabled option for members to link personal Dropbox account and team account to /// same computer case twoAccountChangePolicy @@ -21491,19 +28205,23 @@ public class TeamLog { case teamProfileRemoveBackground /// (team_profile) Removed team logo displayed on shared link headers case teamProfileRemoveLogo - /// (tfa) Added backup phone for two-step verification + /// (tfa) Added passkey for login + case passkeyAdd + /// (tfa) Removed passkey for login + case passkeyRemove + /// (tfa) Added backup phone for two-factor authentication case tfaAddBackupPhone - /// (tfa) Added security key for two-step verification + /// (tfa) Added security key for two-factor authentication case tfaAddSecurityKey - /// (tfa) Changed backup phone for two-step verification + /// (tfa) Changed backup phone for two-factor authentication case tfaChangeBackupPhone - /// (tfa) Enabled/disabled/changed two-step verification setting + /// (tfa) Enabled/disabled/changed two-factor authentication setting case tfaChangeStatus - /// (tfa) Removed backup phone for two-step verification + /// (tfa) Removed backup phone for two-factor authentication case tfaRemoveBackupPhone - /// (tfa) Removed security key for two-step verification + /// (tfa) Removed security key for two-factor authentication case tfaRemoveSecurityKey - /// (tfa) Reset two-step verification for team member + /// (tfa) Reset two-factor authentication for team member case tfaReset /// (trusted_teams) Changed enterprise admin role case changedEnterpriseAdminRole @@ -21561,3180 +28279,10212 @@ public class TeamLog { case other func json() throws -> JSON { - try EventTypeArgSerializer().serialize(self) + try EventTypeArgSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try EventTypeArgSerializer().serialize(self)))" + } catch { + return "Failed to generate description for EventTypeArg: \(error)" + } + } + } + public class EventTypeArgSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: EventTypeArg) throws -> JSON { + switch value { + case .adminAlertingAlertStateChanged: + var d = [String: JSON]() + d[".tag"] = .str("admin_alerting_alert_state_changed") + return .dictionary(d) + case .adminAlertingChangedAlertConfig: + var d = [String: JSON]() + d[".tag"] = .str("admin_alerting_changed_alert_config") + return .dictionary(d) + case .adminAlertingTriggeredAlert: + var d = [String: JSON]() + d[".tag"] = .str("admin_alerting_triggered_alert") + return .dictionary(d) + case .ransomwareRestoreProcessCompleted: + var d = [String: JSON]() + d[".tag"] = .str("ransomware_restore_process_completed") + return .dictionary(d) + case .ransomwareRestoreProcessStarted: + var d = [String: JSON]() + d[".tag"] = .str("ransomware_restore_process_started") + return .dictionary(d) + case .appBlockedByPermissions: + var d = [String: JSON]() + d[".tag"] = .str("app_blocked_by_permissions") + return .dictionary(d) + case .appLinkTeam: + var d = [String: JSON]() + d[".tag"] = .str("app_link_team") + return .dictionary(d) + case .appLinkUser: + var d = [String: JSON]() + d[".tag"] = .str("app_link_user") + return .dictionary(d) + case .appUnlinkTeam: + var d = [String: JSON]() + d[".tag"] = .str("app_unlink_team") + return .dictionary(d) + case .appUnlinkUser: + var d = [String: JSON]() + d[".tag"] = .str("app_unlink_user") + return .dictionary(d) + case .integrationConnected: + var d = [String: JSON]() + d[".tag"] = .str("integration_connected") + return .dictionary(d) + case .integrationDisconnected: + var d = [String: JSON]() + d[".tag"] = .str("integration_disconnected") + return .dictionary(d) + case .fileAddComment: + var d = [String: JSON]() + d[".tag"] = .str("file_add_comment") + return .dictionary(d) + case .fileChangeCommentSubscription: + var d = [String: JSON]() + d[".tag"] = .str("file_change_comment_subscription") + return .dictionary(d) + case .fileDeleteComment: + var d = [String: JSON]() + d[".tag"] = .str("file_delete_comment") + return .dictionary(d) + case .fileEditComment: + var d = [String: JSON]() + d[".tag"] = .str("file_edit_comment") + return .dictionary(d) + case .fileLikeComment: + var d = [String: JSON]() + d[".tag"] = .str("file_like_comment") + return .dictionary(d) + case .fileResolveComment: + var d = [String: JSON]() + d[".tag"] = .str("file_resolve_comment") + return .dictionary(d) + case .fileUnlikeComment: + var d = [String: JSON]() + d[".tag"] = .str("file_unlike_comment") + return .dictionary(d) + case .fileUnresolveComment: + var d = [String: JSON]() + d[".tag"] = .str("file_unresolve_comment") + return .dictionary(d) + case .dashAddedCommentToStack: + var d = [String: JSON]() + d[".tag"] = .str("dash_added_comment_to_stack") + return .dictionary(d) + case .dashAddedConnector: + var d = [String: JSON]() + d[".tag"] = .str("dash_added_connector") + return .dictionary(d) + case .dashAddedLinkToStack: + var d = [String: JSON]() + d[".tag"] = .str("dash_added_link_to_stack") + return .dictionary(d) + case .dashAddedTeamEmailDomainAllowlist: + var d = [String: JSON]() + d[".tag"] = .str("dash_added_team_email_domain_allowlist") + return .dictionary(d) + case .dashAdminAddedOrgWideConnector: + var d = [String: JSON]() + d[".tag"] = .str("dash_admin_added_org_wide_connector") + return .dictionary(d) + case .dashAdminDisabledConnector: + var d = [String: JSON]() + d[".tag"] = .str("dash_admin_disabled_connector") + return .dictionary(d) + case .dashAdminEnabledConnector: + var d = [String: JSON]() + d[".tag"] = .str("dash_admin_enabled_connector") + return .dictionary(d) + case .dashAdminRemovedOrgWideConnector: + var d = [String: JSON]() + d[".tag"] = .str("dash_admin_removed_org_wide_connector") + return .dictionary(d) + case .dashArchivedStack: + var d = [String: JSON]() + d[".tag"] = .str("dash_archived_stack") + return .dictionary(d) + case .dashChangedAudienceOfSharedLinkToStack: + var d = [String: JSON]() + d[".tag"] = .str("dash_changed_audience_of_shared_link_to_stack") + return .dictionary(d) + case .dashClonedStack: + var d = [String: JSON]() + d[".tag"] = .str("dash_cloned_stack") + return .dictionary(d) + case .dashConnectorToolsCall: + var d = [String: JSON]() + d[".tag"] = .str("dash_connector_tools_call") + return .dictionary(d) + case .dashCreatedStack: + var d = [String: JSON]() + d[".tag"] = .str("dash_created_stack") + return .dictionary(d) + case .dashDeletedCommentFromStack: + var d = [String: JSON]() + d[".tag"] = .str("dash_deleted_comment_from_stack") + return .dictionary(d) + case .dashDeletedStack: + var d = [String: JSON]() + d[".tag"] = .str("dash_deleted_stack") + return .dictionary(d) + case .dashEditedCommentInStack: + var d = [String: JSON]() + d[".tag"] = .str("dash_edited_comment_in_stack") + return .dictionary(d) + case .dashExternalUserOpenedStack: + var d = [String: JSON]() + d[".tag"] = .str("dash_external_user_opened_stack") + return .dictionary(d) + case .dashFirstLaunchedDesktop: + var d = [String: JSON]() + d[".tag"] = .str("dash_first_launched_desktop") + return .dictionary(d) + case .dashFirstLaunchedExtension: + var d = [String: JSON]() + d[".tag"] = .str("dash_first_launched_extension") + return .dictionary(d) + case .dashFirstLaunchedWebStartPage: + var d = [String: JSON]() + d[".tag"] = .str("dash_first_launched_web_start_page") + return .dictionary(d) + case .dashOpenedSharedLinkToStack: + var d = [String: JSON]() + d[".tag"] = .str("dash_opened_shared_link_to_stack") + return .dictionary(d) + case .dashOpenedStack: + var d = [String: JSON]() + d[".tag"] = .str("dash_opened_stack") + return .dictionary(d) + case .dashPreviewOptOutStatusChanged: + var d = [String: JSON]() + d[".tag"] = .str("dash_preview_opt_out_status_changed") + return .dictionary(d) + case .dashRemovedConnector: + var d = [String: JSON]() + d[".tag"] = .str("dash_removed_connector") + return .dictionary(d) + case .dashRemovedLinkFromStack: + var d = [String: JSON]() + d[".tag"] = .str("dash_removed_link_from_stack") + return .dictionary(d) + case .dashRemovedSharedLinkToStack: + var d = [String: JSON]() + d[".tag"] = .str("dash_removed_shared_link_to_stack") + return .dictionary(d) + case .dashRemovedTeamEmailDomainAllowlist: + var d = [String: JSON]() + d[".tag"] = .str("dash_removed_team_email_domain_allowlist") + return .dictionary(d) + case .dashRenamedStack: + var d = [String: JSON]() + d[".tag"] = .str("dash_renamed_stack") + return .dictionary(d) + case .dashSharedLinkToStack: + var d = [String: JSON]() + d[".tag"] = .str("dash_shared_link_to_stack") + return .dictionary(d) + case .dashUnarchivedStack: + var d = [String: JSON]() + d[".tag"] = .str("dash_unarchived_stack") + return .dictionary(d) + case .dashViewedCompanyStack: + var d = [String: JSON]() + d[".tag"] = .str("dash_viewed_company_stack") + return .dictionary(d) + case .dashViewedExternalAiActivityReport: + var d = [String: JSON]() + d[".tag"] = .str("dash_viewed_external_ai_activity_report") + return .dictionary(d) + case .governancePolicyAddFolders: + var d = [String: JSON]() + d[".tag"] = .str("governance_policy_add_folders") + return .dictionary(d) + case .governancePolicyAddFolderFailed: + var d = [String: JSON]() + d[".tag"] = .str("governance_policy_add_folder_failed") + return .dictionary(d) + case .governancePolicyContentDisposed: + var d = [String: JSON]() + d[".tag"] = .str("governance_policy_content_disposed") + return .dictionary(d) + case .governancePolicyCreate: + var d = [String: JSON]() + d[".tag"] = .str("governance_policy_create") + return .dictionary(d) + case .governancePolicyDelete: + var d = [String: JSON]() + d[".tag"] = .str("governance_policy_delete") + return .dictionary(d) + case .governancePolicyEditDetails: + var d = [String: JSON]() + d[".tag"] = .str("governance_policy_edit_details") + return .dictionary(d) + case .governancePolicyEditDuration: + var d = [String: JSON]() + d[".tag"] = .str("governance_policy_edit_duration") + return .dictionary(d) + case .governancePolicyExportCreated: + var d = [String: JSON]() + d[".tag"] = .str("governance_policy_export_created") + return .dictionary(d) + case .governancePolicyExportRemoved: + var d = [String: JSON]() + d[".tag"] = .str("governance_policy_export_removed") + return .dictionary(d) + case .governancePolicyRemoveFolders: + var d = [String: JSON]() + d[".tag"] = .str("governance_policy_remove_folders") + return .dictionary(d) + case .governancePolicyReportCreated: + var d = [String: JSON]() + d[".tag"] = .str("governance_policy_report_created") + return .dictionary(d) + case .governancePolicyZipPartDownloaded: + var d = [String: JSON]() + d[".tag"] = .str("governance_policy_zip_part_downloaded") + return .dictionary(d) + case .legalHoldsActivateAHold: + var d = [String: JSON]() + d[".tag"] = .str("legal_holds_activate_a_hold") + return .dictionary(d) + case .legalHoldsAddMembers: + var d = [String: JSON]() + d[".tag"] = .str("legal_holds_add_members") + return .dictionary(d) + case .legalHoldsChangeHoldDetails: + var d = [String: JSON]() + d[".tag"] = .str("legal_holds_change_hold_details") + return .dictionary(d) + case .legalHoldsChangeHoldName: + var d = [String: JSON]() + d[".tag"] = .str("legal_holds_change_hold_name") + return .dictionary(d) + case .legalHoldsExportAHold: + var d = [String: JSON]() + d[".tag"] = .str("legal_holds_export_a_hold") + return .dictionary(d) + case .legalHoldsExportCancelled: + var d = [String: JSON]() + d[".tag"] = .str("legal_holds_export_cancelled") + return .dictionary(d) + case .legalHoldsExportDownloaded: + var d = [String: JSON]() + d[".tag"] = .str("legal_holds_export_downloaded") + return .dictionary(d) + case .legalHoldsExportRemoved: + var d = [String: JSON]() + d[".tag"] = .str("legal_holds_export_removed") + return .dictionary(d) + case .legalHoldsReleaseAHold: + var d = [String: JSON]() + d[".tag"] = .str("legal_holds_release_a_hold") + return .dictionary(d) + case .legalHoldsRemoveMembers: + var d = [String: JSON]() + d[".tag"] = .str("legal_holds_remove_members") + return .dictionary(d) + case .legalHoldsReportAHold: + var d = [String: JSON]() + d[".tag"] = .str("legal_holds_report_a_hold") + return .dictionary(d) + case .deviceChangeIpDesktop: + var d = [String: JSON]() + d[".tag"] = .str("device_change_ip_desktop") + return .dictionary(d) + case .deviceChangeIpMobile: + var d = [String: JSON]() + d[".tag"] = .str("device_change_ip_mobile") + return .dictionary(d) + case .deviceChangeIpWeb: + var d = [String: JSON]() + d[".tag"] = .str("device_change_ip_web") + return .dictionary(d) + case .deviceDeleteOnUnlinkFail: + var d = [String: JSON]() + d[".tag"] = .str("device_delete_on_unlink_fail") + return .dictionary(d) + case .deviceDeleteOnUnlinkSuccess: + var d = [String: JSON]() + d[".tag"] = .str("device_delete_on_unlink_success") + return .dictionary(d) + case .deviceLinkFail: + var d = [String: JSON]() + d[".tag"] = .str("device_link_fail") + return .dictionary(d) + case .deviceLinkSuccess: + var d = [String: JSON]() + d[".tag"] = .str("device_link_success") + return .dictionary(d) + case .deviceManagementDisabled: + var d = [String: JSON]() + d[".tag"] = .str("device_management_disabled") + return .dictionary(d) + case .deviceManagementEnabled: + var d = [String: JSON]() + d[".tag"] = .str("device_management_enabled") + return .dictionary(d) + case .deviceSyncBackupStatusChanged: + var d = [String: JSON]() + d[".tag"] = .str("device_sync_backup_status_changed") + return .dictionary(d) + case .deviceUnlink: + var d = [String: JSON]() + d[".tag"] = .str("device_unlink") + return .dictionary(d) + case .dropboxPasswordsExported: + var d = [String: JSON]() + d[".tag"] = .str("dropbox_passwords_exported") + return .dictionary(d) + case .dropboxPasswordsNewDeviceEnrolled: + var d = [String: JSON]() + d[".tag"] = .str("dropbox_passwords_new_device_enrolled") + return .dictionary(d) + case .emmRefreshAuthToken: + var d = [String: JSON]() + d[".tag"] = .str("emm_refresh_auth_token") + return .dictionary(d) + case .externalDriveBackupEligibilityStatusChecked: + var d = [String: JSON]() + d[".tag"] = .str("external_drive_backup_eligibility_status_checked") + return .dictionary(d) + case .externalDriveBackupStatusChanged: + var d = [String: JSON]() + d[".tag"] = .str("external_drive_backup_status_changed") + return .dictionary(d) + case .accountCaptureChangeAvailability: + var d = [String: JSON]() + d[".tag"] = .str("account_capture_change_availability") + return .dictionary(d) + case .accountCaptureMigrateAccount: + var d = [String: JSON]() + d[".tag"] = .str("account_capture_migrate_account") + return .dictionary(d) + case .accountCaptureNotificationEmailsSent: + var d = [String: JSON]() + d[".tag"] = .str("account_capture_notification_emails_sent") + return .dictionary(d) + case .accountCaptureRelinquishAccount: + var d = [String: JSON]() + d[".tag"] = .str("account_capture_relinquish_account") + return .dictionary(d) + case .disabledDomainInvites: + var d = [String: JSON]() + d[".tag"] = .str("disabled_domain_invites") + return .dictionary(d) + case .domainInvitesApproveRequestToJoinTeam: + var d = [String: JSON]() + d[".tag"] = .str("domain_invites_approve_request_to_join_team") + return .dictionary(d) + case .domainInvitesDeclineRequestToJoinTeam: + var d = [String: JSON]() + d[".tag"] = .str("domain_invites_decline_request_to_join_team") + return .dictionary(d) + case .domainInvitesEmailExistingUsers: + var d = [String: JSON]() + d[".tag"] = .str("domain_invites_email_existing_users") + return .dictionary(d) + case .domainInvitesRequestToJoinTeam: + var d = [String: JSON]() + d[".tag"] = .str("domain_invites_request_to_join_team") + return .dictionary(d) + case .domainInvitesSetInviteNewUserPrefToNo: + var d = [String: JSON]() + d[".tag"] = .str("domain_invites_set_invite_new_user_pref_to_no") + return .dictionary(d) + case .domainInvitesSetInviteNewUserPrefToYes: + var d = [String: JSON]() + d[".tag"] = .str("domain_invites_set_invite_new_user_pref_to_yes") + return .dictionary(d) + case .domainVerificationAddDomainFail: + var d = [String: JSON]() + d[".tag"] = .str("domain_verification_add_domain_fail") + return .dictionary(d) + case .domainVerificationAddDomainSuccess: + var d = [String: JSON]() + d[".tag"] = .str("domain_verification_add_domain_success") + return .dictionary(d) + case .domainVerificationRemoveDomain: + var d = [String: JSON]() + d[".tag"] = .str("domain_verification_remove_domain") + return .dictionary(d) + case .enabledDomainInvites: + var d = [String: JSON]() + d[".tag"] = .str("enabled_domain_invites") + return .dictionary(d) + case .encryptedFolderCancelTeamKeyRotation: + var d = [String: JSON]() + d[".tag"] = .str("encrypted_folder_cancel_team_key_rotation") + return .dictionary(d) + case .encryptedFolderEnrollBackupKey: + var d = [String: JSON]() + d[".tag"] = .str("encrypted_folder_enroll_backup_key") + return .dictionary(d) + case .encryptedFolderEnrollClient: + var d = [String: JSON]() + d[".tag"] = .str("encrypted_folder_enroll_client") + return .dictionary(d) + case .encryptedFolderEnrollTeam: + var d = [String: JSON]() + d[".tag"] = .str("encrypted_folder_enroll_team") + return .dictionary(d) + case .encryptedFolderFinishTeamUnenrollment: + var d = [String: JSON]() + d[".tag"] = .str("encrypted_folder_finish_team_unenrollment") + return .dictionary(d) + case .encryptedFolderInitTeamKeyRotation: + var d = [String: JSON]() + d[".tag"] = .str("encrypted_folder_init_team_key_rotation") + return .dictionary(d) + case .encryptedFolderInitTeamUnenrollment: + var d = [String: JSON]() + d[".tag"] = .str("encrypted_folder_init_team_unenrollment") + return .dictionary(d) + case .encryptedFolderRemoveBackupKey: + var d = [String: JSON]() + d[".tag"] = .str("encrypted_folder_remove_backup_key") + return .dictionary(d) + case .encryptedFolderRotateTeamKey: + var d = [String: JSON]() + d[".tag"] = .str("encrypted_folder_rotate_team_key") + return .dictionary(d) + case .encryptedFolderUnenrollClient: + var d = [String: JSON]() + d[".tag"] = .str("encrypted_folder_unenroll_client") + return .dictionary(d) + case .teamEncryptionKeyActivateKey: + var d = [String: JSON]() + d[".tag"] = .str("team_encryption_key_activate_key") + return .dictionary(d) + case .teamEncryptionKeyCancelKeyDeletion: + var d = [String: JSON]() + d[".tag"] = .str("team_encryption_key_cancel_key_deletion") + return .dictionary(d) + case .teamEncryptionKeyCreateKey: + var d = [String: JSON]() + d[".tag"] = .str("team_encryption_key_create_key") + return .dictionary(d) + case .teamEncryptionKeyDeactivateKey: + var d = [String: JSON]() + d[".tag"] = .str("team_encryption_key_deactivate_key") + return .dictionary(d) + case .teamEncryptionKeyDeleteKey: + var d = [String: JSON]() + d[".tag"] = .str("team_encryption_key_delete_key") + return .dictionary(d) + case .teamEncryptionKeyDisableKey: + var d = [String: JSON]() + d[".tag"] = .str("team_encryption_key_disable_key") + return .dictionary(d) + case .teamEncryptionKeyEnableKey: + var d = [String: JSON]() + d[".tag"] = .str("team_encryption_key_enable_key") + return .dictionary(d) + case .teamEncryptionKeyRotateKey: + var d = [String: JSON]() + d[".tag"] = .str("team_encryption_key_rotate_key") + return .dictionary(d) + case .teamEncryptionKeyScheduleKeyDeletion: + var d = [String: JSON]() + d[".tag"] = .str("team_encryption_key_schedule_key_deletion") + return .dictionary(d) + case .applyNamingConvention: + var d = [String: JSON]() + d[".tag"] = .str("apply_naming_convention") + return .dictionary(d) + case .createFolder: + var d = [String: JSON]() + d[".tag"] = .str("create_folder") + return .dictionary(d) + case .fileAdd: + var d = [String: JSON]() + d[".tag"] = .str("file_add") + return .dictionary(d) + case .fileAddFromAutomation: + var d = [String: JSON]() + d[".tag"] = .str("file_add_from_automation") + return .dictionary(d) + case .fileCopy: + var d = [String: JSON]() + d[".tag"] = .str("file_copy") + return .dictionary(d) + case .fileDelete: + var d = [String: JSON]() + d[".tag"] = .str("file_delete") + return .dictionary(d) + case .fileDownload: + var d = [String: JSON]() + d[".tag"] = .str("file_download") + return .dictionary(d) + case .fileEdit: + var d = [String: JSON]() + d[".tag"] = .str("file_edit") + return .dictionary(d) + case .fileGetCopyReference: + var d = [String: JSON]() + d[".tag"] = .str("file_get_copy_reference") + return .dictionary(d) + case .fileLockingLockStatusChanged: + var d = [String: JSON]() + d[".tag"] = .str("file_locking_lock_status_changed") + return .dictionary(d) + case .fileMove: + var d = [String: JSON]() + d[".tag"] = .str("file_move") + return .dictionary(d) + case .filePermanentlyDelete: + var d = [String: JSON]() + d[".tag"] = .str("file_permanently_delete") + return .dictionary(d) + case .filePreview: + var d = [String: JSON]() + d[".tag"] = .str("file_preview") + return .dictionary(d) + case .fileRename: + var d = [String: JSON]() + d[".tag"] = .str("file_rename") + return .dictionary(d) + case .fileRestore: + var d = [String: JSON]() + d[".tag"] = .str("file_restore") + return .dictionary(d) + case .fileRevert: + var d = [String: JSON]() + d[".tag"] = .str("file_revert") + return .dictionary(d) + case .fileRollbackChanges: + var d = [String: JSON]() + d[".tag"] = .str("file_rollback_changes") + return .dictionary(d) + case .fileSaveCopyReference: + var d = [String: JSON]() + d[".tag"] = .str("file_save_copy_reference") + return .dictionary(d) + case .folderOverviewDescriptionChanged: + var d = [String: JSON]() + d[".tag"] = .str("folder_overview_description_changed") + return .dictionary(d) + case .folderOverviewItemPinned: + var d = [String: JSON]() + d[".tag"] = .str("folder_overview_item_pinned") + return .dictionary(d) + case .folderOverviewItemUnpinned: + var d = [String: JSON]() + d[".tag"] = .str("folder_overview_item_unpinned") + return .dictionary(d) + case .mediaHubFileDownloaded: + var d = [String: JSON]() + d[".tag"] = .str("media_hub_file_downloaded") + return .dictionary(d) + case .objectLabelAdded: + var d = [String: JSON]() + d[".tag"] = .str("object_label_added") + return .dictionary(d) + case .objectLabelRemoved: + var d = [String: JSON]() + d[".tag"] = .str("object_label_removed") + return .dictionary(d) + case .objectLabelUpdatedValue: + var d = [String: JSON]() + d[".tag"] = .str("object_label_updated_value") + return .dictionary(d) + case .organizeFolderWithTidy: + var d = [String: JSON]() + d[".tag"] = .str("organize_folder_with_tidy") + return .dictionary(d) + case .replayFileDelete: + var d = [String: JSON]() + d[".tag"] = .str("replay_file_delete") + return .dictionary(d) + case .replayFileDownloaded: + var d = [String: JSON]() + d[".tag"] = .str("replay_file_downloaded") + return .dictionary(d) + case .replayTeamProjectCreated: + var d = [String: JSON]() + d[".tag"] = .str("replay_team_project_created") + return .dictionary(d) + case .rewindFolder: + var d = [String: JSON]() + d[".tag"] = .str("rewind_folder") + return .dictionary(d) + case .undoNamingConvention: + var d = [String: JSON]() + d[".tag"] = .str("undo_naming_convention") + return .dictionary(d) + case .undoOrganizeFolderWithTidy: + var d = [String: JSON]() + d[".tag"] = .str("undo_organize_folder_with_tidy") + return .dictionary(d) + case .userTagsAdded: + var d = [String: JSON]() + d[".tag"] = .str("user_tags_added") + return .dictionary(d) + case .userTagsRemoved: + var d = [String: JSON]() + d[".tag"] = .str("user_tags_removed") + return .dictionary(d) + case .emailIngestReceiveFile: + var d = [String: JSON]() + d[".tag"] = .str("email_ingest_receive_file") + return .dictionary(d) + case .fileRequestAutoClose: + var d = [String: JSON]() + d[".tag"] = .str("file_request_auto_close") + return .dictionary(d) + case .fileRequestChange: + var d = [String: JSON]() + d[".tag"] = .str("file_request_change") + return .dictionary(d) + case .fileRequestClose: + var d = [String: JSON]() + d[".tag"] = .str("file_request_close") + return .dictionary(d) + case .fileRequestCreate: + var d = [String: JSON]() + d[".tag"] = .str("file_request_create") + return .dictionary(d) + case .fileRequestDelete: + var d = [String: JSON]() + d[".tag"] = .str("file_request_delete") + return .dictionary(d) + case .fileRequestReceiveFile: + var d = [String: JSON]() + d[".tag"] = .str("file_request_receive_file") + return .dictionary(d) + case .groupAddExternalId: + var d = [String: JSON]() + d[".tag"] = .str("group_add_external_id") + return .dictionary(d) + case .groupAddMember: + var d = [String: JSON]() + d[".tag"] = .str("group_add_member") + return .dictionary(d) + case .groupChangeExternalId: + var d = [String: JSON]() + d[".tag"] = .str("group_change_external_id") + return .dictionary(d) + case .groupChangeManagementType: + var d = [String: JSON]() + d[".tag"] = .str("group_change_management_type") + return .dictionary(d) + case .groupChangeMemberRole: + var d = [String: JSON]() + d[".tag"] = .str("group_change_member_role") + return .dictionary(d) + case .groupCreate: + var d = [String: JSON]() + d[".tag"] = .str("group_create") + return .dictionary(d) + case .groupDelete: + var d = [String: JSON]() + d[".tag"] = .str("group_delete") + return .dictionary(d) + case .groupDescriptionUpdated: + var d = [String: JSON]() + d[".tag"] = .str("group_description_updated") + return .dictionary(d) + case .groupExternalSharingSettingOverrideChanged: + var d = [String: JSON]() + d[".tag"] = .str("group_external_sharing_setting_override_changed") + return .dictionary(d) + case .groupJoinPolicyUpdated: + var d = [String: JSON]() + d[".tag"] = .str("group_join_policy_updated") + return .dictionary(d) + case .groupMoved: + var d = [String: JSON]() + d[".tag"] = .str("group_moved") + return .dictionary(d) + case .groupRemoveExternalId: + var d = [String: JSON]() + d[".tag"] = .str("group_remove_external_id") + return .dictionary(d) + case .groupRemoveMember: + var d = [String: JSON]() + d[".tag"] = .str("group_remove_member") + return .dictionary(d) + case .groupRename: + var d = [String: JSON]() + d[".tag"] = .str("group_rename") + return .dictionary(d) + case .accountLockOrUnlocked: + var d = [String: JSON]() + d[".tag"] = .str("account_lock_or_unlocked") + return .dictionary(d) + case .emmError: + var d = [String: JSON]() + d[".tag"] = .str("emm_error") + return .dictionary(d) + case .guestAdminSignedInViaTrustedTeams: + var d = [String: JSON]() + d[".tag"] = .str("guest_admin_signed_in_via_trusted_teams") + return .dictionary(d) + case .guestAdminSignedOutViaTrustedTeams: + var d = [String: JSON]() + d[".tag"] = .str("guest_admin_signed_out_via_trusted_teams") + return .dictionary(d) + case .loginFail: + var d = [String: JSON]() + d[".tag"] = .str("login_fail") + return .dictionary(d) + case .loginSuccess: + var d = [String: JSON]() + d[".tag"] = .str("login_success") + return .dictionary(d) + case .logout: + var d = [String: JSON]() + d[".tag"] = .str("logout") + return .dictionary(d) + case .resellerSupportSessionEnd: + var d = [String: JSON]() + d[".tag"] = .str("reseller_support_session_end") + return .dictionary(d) + case .resellerSupportSessionStart: + var d = [String: JSON]() + d[".tag"] = .str("reseller_support_session_start") + return .dictionary(d) + case .signInAsSessionEnd: + var d = [String: JSON]() + d[".tag"] = .str("sign_in_as_session_end") + return .dictionary(d) + case .signInAsSessionStart: + var d = [String: JSON]() + d[".tag"] = .str("sign_in_as_session_start") + return .dictionary(d) + case .ssoError: + var d = [String: JSON]() + d[".tag"] = .str("sso_error") + return .dictionary(d) + case .addonAssigned: + var d = [String: JSON]() + d[".tag"] = .str("addon_assigned") + return .dictionary(d) + case .addonRemoved: + var d = [String: JSON]() + d[".tag"] = .str("addon_removed") + return .dictionary(d) + case .backupAdminInvitationSent: + var d = [String: JSON]() + d[".tag"] = .str("backup_admin_invitation_sent") + return .dictionary(d) + case .backupInvitationOpened: + var d = [String: JSON]() + d[".tag"] = .str("backup_invitation_opened") + return .dictionary(d) + case .createTeamInviteLink: + var d = [String: JSON]() + d[".tag"] = .str("create_team_invite_link") + return .dictionary(d) + case .deleteTeamInviteLink: + var d = [String: JSON]() + d[".tag"] = .str("delete_team_invite_link") + return .dictionary(d) + case .memberAddExternalId: + var d = [String: JSON]() + d[".tag"] = .str("member_add_external_id") + return .dictionary(d) + case .memberAddName: + var d = [String: JSON]() + d[".tag"] = .str("member_add_name") + return .dictionary(d) + case .memberChangeAdminRole: + var d = [String: JSON]() + d[".tag"] = .str("member_change_admin_role") + return .dictionary(d) + case .memberChangeEmail: + var d = [String: JSON]() + d[".tag"] = .str("member_change_email") + return .dictionary(d) + case .memberChangeExternalId: + var d = [String: JSON]() + d[".tag"] = .str("member_change_external_id") + return .dictionary(d) + case .memberChangeMembershipType: + var d = [String: JSON]() + d[".tag"] = .str("member_change_membership_type") + return .dictionary(d) + case .memberChangeName: + var d = [String: JSON]() + d[".tag"] = .str("member_change_name") + return .dictionary(d) + case .memberChangeResellerRole: + var d = [String: JSON]() + d[".tag"] = .str("member_change_reseller_role") + return .dictionary(d) + case .memberChangeStatus: + var d = [String: JSON]() + d[".tag"] = .str("member_change_status") + return .dictionary(d) + case .memberDeleteManualContacts: + var d = [String: JSON]() + d[".tag"] = .str("member_delete_manual_contacts") + return .dictionary(d) + case .memberDeleteProfilePhoto: + var d = [String: JSON]() + d[".tag"] = .str("member_delete_profile_photo") + return .dictionary(d) + case .memberFolderContentsAccessed: + var d = [String: JSON]() + d[".tag"] = .str("member_folder_contents_accessed") + return .dictionary(d) + case .memberPermanentlyDeleteAccountContents: + var d = [String: JSON]() + d[".tag"] = .str("member_permanently_delete_account_contents") + return .dictionary(d) + case .memberRemoveExternalId: + var d = [String: JSON]() + d[".tag"] = .str("member_remove_external_id") + return .dictionary(d) + case .memberSetProfilePhoto: + var d = [String: JSON]() + d[".tag"] = .str("member_set_profile_photo") + return .dictionary(d) + case .memberSpaceLimitsAddCustomQuota: + var d = [String: JSON]() + d[".tag"] = .str("member_space_limits_add_custom_quota") + return .dictionary(d) + case .memberSpaceLimitsChangeCustomQuota: + var d = [String: JSON]() + d[".tag"] = .str("member_space_limits_change_custom_quota") + return .dictionary(d) + case .memberSpaceLimitsChangeStatus: + var d = [String: JSON]() + d[".tag"] = .str("member_space_limits_change_status") + return .dictionary(d) + case .memberSpaceLimitsRemoveCustomQuota: + var d = [String: JSON]() + d[".tag"] = .str("member_space_limits_remove_custom_quota") + return .dictionary(d) + case .memberSuggest: + var d = [String: JSON]() + d[".tag"] = .str("member_suggest") + return .dictionary(d) + case .memberTransferAccountContents: + var d = [String: JSON]() + d[".tag"] = .str("member_transfer_account_contents") + return .dictionary(d) + case .pendingSecondaryEmailAdded: + var d = [String: JSON]() + d[".tag"] = .str("pending_secondary_email_added") + return .dictionary(d) + case .productAssignedToMember: + var d = [String: JSON]() + d[".tag"] = .str("product_assigned_to_member") + return .dictionary(d) + case .productRemovedFromMember: + var d = [String: JSON]() + d[".tag"] = .str("product_removed_from_member") + return .dictionary(d) + case .secondaryEmailDeleted: + var d = [String: JSON]() + d[".tag"] = .str("secondary_email_deleted") + return .dictionary(d) + case .secondaryEmailVerified: + var d = [String: JSON]() + d[".tag"] = .str("secondary_email_verified") + return .dictionary(d) + case .secondaryMailsPolicyChanged: + var d = [String: JSON]() + d[".tag"] = .str("secondary_mails_policy_changed") + return .dictionary(d) + case .binderAddPage: + var d = [String: JSON]() + d[".tag"] = .str("binder_add_page") + return .dictionary(d) + case .binderAddSection: + var d = [String: JSON]() + d[".tag"] = .str("binder_add_section") + return .dictionary(d) + case .binderRemovePage: + var d = [String: JSON]() + d[".tag"] = .str("binder_remove_page") + return .dictionary(d) + case .binderRemoveSection: + var d = [String: JSON]() + d[".tag"] = .str("binder_remove_section") + return .dictionary(d) + case .binderRenamePage: + var d = [String: JSON]() + d[".tag"] = .str("binder_rename_page") + return .dictionary(d) + case .binderRenameSection: + var d = [String: JSON]() + d[".tag"] = .str("binder_rename_section") + return .dictionary(d) + case .binderReorderPage: + var d = [String: JSON]() + d[".tag"] = .str("binder_reorder_page") + return .dictionary(d) + case .binderReorderSection: + var d = [String: JSON]() + d[".tag"] = .str("binder_reorder_section") + return .dictionary(d) + case .paperContentAddMember: + var d = [String: JSON]() + d[".tag"] = .str("paper_content_add_member") + return .dictionary(d) + case .paperContentAddToFolder: + var d = [String: JSON]() + d[".tag"] = .str("paper_content_add_to_folder") + return .dictionary(d) + case .paperContentArchive: + var d = [String: JSON]() + d[".tag"] = .str("paper_content_archive") + return .dictionary(d) + case .paperContentCreate: + var d = [String: JSON]() + d[".tag"] = .str("paper_content_create") + return .dictionary(d) + case .paperContentPermanentlyDelete: + var d = [String: JSON]() + d[".tag"] = .str("paper_content_permanently_delete") + return .dictionary(d) + case .paperContentRemoveFromFolder: + var d = [String: JSON]() + d[".tag"] = .str("paper_content_remove_from_folder") + return .dictionary(d) + case .paperContentRemoveMember: + var d = [String: JSON]() + d[".tag"] = .str("paper_content_remove_member") + return .dictionary(d) + case .paperContentRename: + var d = [String: JSON]() + d[".tag"] = .str("paper_content_rename") + return .dictionary(d) + case .paperContentRestore: + var d = [String: JSON]() + d[".tag"] = .str("paper_content_restore") + return .dictionary(d) + case .paperDocAddComment: + var d = [String: JSON]() + d[".tag"] = .str("paper_doc_add_comment") + return .dictionary(d) + case .paperDocChangeMemberRole: + var d = [String: JSON]() + d[".tag"] = .str("paper_doc_change_member_role") + return .dictionary(d) + case .paperDocChangeSharingPolicy: + var d = [String: JSON]() + d[".tag"] = .str("paper_doc_change_sharing_policy") + return .dictionary(d) + case .paperDocChangeSubscription: + var d = [String: JSON]() + d[".tag"] = .str("paper_doc_change_subscription") + return .dictionary(d) + case .paperDocDeleted: + var d = [String: JSON]() + d[".tag"] = .str("paper_doc_deleted") + return .dictionary(d) + case .paperDocDeleteComment: + var d = [String: JSON]() + d[".tag"] = .str("paper_doc_delete_comment") + return .dictionary(d) + case .paperDocDownload: + var d = [String: JSON]() + d[".tag"] = .str("paper_doc_download") + return .dictionary(d) + case .paperDocEdit: + var d = [String: JSON]() + d[".tag"] = .str("paper_doc_edit") + return .dictionary(d) + case .paperDocEditComment: + var d = [String: JSON]() + d[".tag"] = .str("paper_doc_edit_comment") + return .dictionary(d) + case .paperDocFollowed: + var d = [String: JSON]() + d[".tag"] = .str("paper_doc_followed") + return .dictionary(d) + case .paperDocMention: + var d = [String: JSON]() + d[".tag"] = .str("paper_doc_mention") + return .dictionary(d) + case .paperDocOwnershipChanged: + var d = [String: JSON]() + d[".tag"] = .str("paper_doc_ownership_changed") + return .dictionary(d) + case .paperDocRequestAccess: + var d = [String: JSON]() + d[".tag"] = .str("paper_doc_request_access") + return .dictionary(d) + case .paperDocResolveComment: + var d = [String: JSON]() + d[".tag"] = .str("paper_doc_resolve_comment") + return .dictionary(d) + case .paperDocRevert: + var d = [String: JSON]() + d[".tag"] = .str("paper_doc_revert") + return .dictionary(d) + case .paperDocSlackShare: + var d = [String: JSON]() + d[".tag"] = .str("paper_doc_slack_share") + return .dictionary(d) + case .paperDocTeamInvite: + var d = [String: JSON]() + d[".tag"] = .str("paper_doc_team_invite") + return .dictionary(d) + case .paperDocTrashed: + var d = [String: JSON]() + d[".tag"] = .str("paper_doc_trashed") + return .dictionary(d) + case .paperDocUnresolveComment: + var d = [String: JSON]() + d[".tag"] = .str("paper_doc_unresolve_comment") + return .dictionary(d) + case .paperDocUntrashed: + var d = [String: JSON]() + d[".tag"] = .str("paper_doc_untrashed") + return .dictionary(d) + case .paperDocView: + var d = [String: JSON]() + d[".tag"] = .str("paper_doc_view") + return .dictionary(d) + case .paperExternalViewAllow: + var d = [String: JSON]() + d[".tag"] = .str("paper_external_view_allow") + return .dictionary(d) + case .paperExternalViewDefaultTeam: + var d = [String: JSON]() + d[".tag"] = .str("paper_external_view_default_team") + return .dictionary(d) + case .paperExternalViewForbid: + var d = [String: JSON]() + d[".tag"] = .str("paper_external_view_forbid") + return .dictionary(d) + case .paperFolderChangeSubscription: + var d = [String: JSON]() + d[".tag"] = .str("paper_folder_change_subscription") + return .dictionary(d) + case .paperFolderDeleted: + var d = [String: JSON]() + d[".tag"] = .str("paper_folder_deleted") + return .dictionary(d) + case .paperFolderFollowed: + var d = [String: JSON]() + d[".tag"] = .str("paper_folder_followed") + return .dictionary(d) + case .paperFolderTeamInvite: + var d = [String: JSON]() + d[".tag"] = .str("paper_folder_team_invite") + return .dictionary(d) + case .paperPublishedLinkChangePermission: + var d = [String: JSON]() + d[".tag"] = .str("paper_published_link_change_permission") + return .dictionary(d) + case .paperPublishedLinkCreate: + var d = [String: JSON]() + d[".tag"] = .str("paper_published_link_create") + return .dictionary(d) + case .paperPublishedLinkDisabled: + var d = [String: JSON]() + d[".tag"] = .str("paper_published_link_disabled") + return .dictionary(d) + case .paperPublishedLinkView: + var d = [String: JSON]() + d[".tag"] = .str("paper_published_link_view") + return .dictionary(d) + case .passwordChange: + var d = [String: JSON]() + d[".tag"] = .str("password_change") + return .dictionary(d) + case .passwordReset: + var d = [String: JSON]() + d[".tag"] = .str("password_reset") + return .dictionary(d) + case .passwordResetAll: + var d = [String: JSON]() + d[".tag"] = .str("password_reset_all") + return .dictionary(d) + case .protectActionAddCollaborator: + var d = [String: JSON]() + d[".tag"] = .str("protect_action_add_collaborator") + return .dictionary(d) + case .protectActionAddLink: + var d = [String: JSON]() + d[".tag"] = .str("protect_action_add_link") + return .dictionary(d) + case .protectActionDelete: + var d = [String: JSON]() + d[".tag"] = .str("protect_action_delete") + return .dictionary(d) + case .protectActionExport: + var d = [String: JSON]() + d[".tag"] = .str("protect_action_export") + return .dictionary(d) + case .protectActionRemoveCollaborator: + var d = [String: JSON]() + d[".tag"] = .str("protect_action_remove_collaborator") + return .dictionary(d) + case .protectActionRemoveLink: + var d = [String: JSON]() + d[".tag"] = .str("protect_action_remove_link") + return .dictionary(d) + case .protectActionStopSharing: + var d = [String: JSON]() + d[".tag"] = .str("protect_action_stop_sharing") + return .dictionary(d) + case .protectInternalDomainsChanged: + var d = [String: JSON]() + d[".tag"] = .str("protect_internal_domains_changed") + return .dictionary(d) + case .classificationCreateReport: + var d = [String: JSON]() + d[".tag"] = .str("classification_create_report") + return .dictionary(d) + case .classificationCreateReportFail: + var d = [String: JSON]() + d[".tag"] = .str("classification_create_report_fail") + return .dictionary(d) + case .emmCreateExceptionsReport: + var d = [String: JSON]() + d[".tag"] = .str("emm_create_exceptions_report") + return .dictionary(d) + case .emmCreateUsageReport: + var d = [String: JSON]() + d[".tag"] = .str("emm_create_usage_report") + return .dictionary(d) + case .exportMembersReport: + var d = [String: JSON]() + d[".tag"] = .str("export_members_report") + return .dictionary(d) + case .exportMembersReportFail: + var d = [String: JSON]() + d[".tag"] = .str("export_members_report_fail") + return .dictionary(d) + case .externalSharingCreateReport: + var d = [String: JSON]() + d[".tag"] = .str("external_sharing_create_report") + return .dictionary(d) + case .externalSharingReportFailed: + var d = [String: JSON]() + d[".tag"] = .str("external_sharing_report_failed") + return .dictionary(d) + case .memberAccessDetailsCreateReport: + var d = [String: JSON]() + d[".tag"] = .str("member_access_details_create_report") + return .dictionary(d) + case .memberAccessDetailsCreateReportFailed: + var d = [String: JSON]() + d[".tag"] = .str("member_access_details_create_report_failed") + return .dictionary(d) + case .noExpirationLinkGenCreateReport: + var d = [String: JSON]() + d[".tag"] = .str("no_expiration_link_gen_create_report") + return .dictionary(d) + case .noExpirationLinkGenReportFailed: + var d = [String: JSON]() + d[".tag"] = .str("no_expiration_link_gen_report_failed") + return .dictionary(d) + case .noPasswordLinkGenCreateReport: + var d = [String: JSON]() + d[".tag"] = .str("no_password_link_gen_create_report") + return .dictionary(d) + case .noPasswordLinkGenReportFailed: + var d = [String: JSON]() + d[".tag"] = .str("no_password_link_gen_report_failed") + return .dictionary(d) + case .noPasswordLinkViewCreateReport: + var d = [String: JSON]() + d[".tag"] = .str("no_password_link_view_create_report") + return .dictionary(d) + case .noPasswordLinkViewReportFailed: + var d = [String: JSON]() + d[".tag"] = .str("no_password_link_view_report_failed") + return .dictionary(d) + case .outdatedLinkViewCreateReport: + var d = [String: JSON]() + d[".tag"] = .str("outdated_link_view_create_report") + return .dictionary(d) + case .outdatedLinkViewReportFailed: + var d = [String: JSON]() + d[".tag"] = .str("outdated_link_view_report_failed") + return .dictionary(d) + case .paperAdminExportStart: + var d = [String: JSON]() + d[".tag"] = .str("paper_admin_export_start") + return .dictionary(d) + case .ransomwareAlertCreateReport: + var d = [String: JSON]() + d[".tag"] = .str("ransomware_alert_create_report") + return .dictionary(d) + case .ransomwareAlertCreateReportFailed: + var d = [String: JSON]() + d[".tag"] = .str("ransomware_alert_create_report_failed") + return .dictionary(d) + case .sharedFoldersCreateReport: + var d = [String: JSON]() + d[".tag"] = .str("shared_folders_create_report") + return .dictionary(d) + case .sharedFoldersCreateReportFailed: + var d = [String: JSON]() + d[".tag"] = .str("shared_folders_create_report_failed") + return .dictionary(d) + case .smartSyncCreateAdminPrivilegeReport: + var d = [String: JSON]() + d[".tag"] = .str("smart_sync_create_admin_privilege_report") + return .dictionary(d) + case .teamActivityCreateReport: + var d = [String: JSON]() + d[".tag"] = .str("team_activity_create_report") + return .dictionary(d) + case .teamActivityCreateReportFail: + var d = [String: JSON]() + d[".tag"] = .str("team_activity_create_report_fail") + return .dictionary(d) + case .teamFoldersCreateReport: + var d = [String: JSON]() + d[".tag"] = .str("team_folders_create_report") + return .dictionary(d) + case .teamFoldersCreateReportFailed: + var d = [String: JSON]() + d[".tag"] = .str("team_folders_create_report_failed") + return .dictionary(d) + case .teamStorageCreateReport: + var d = [String: JSON]() + d[".tag"] = .str("team_storage_create_report") + return .dictionary(d) + case .teamStorageCreateReportFailed: + var d = [String: JSON]() + d[".tag"] = .str("team_storage_create_report_failed") + return .dictionary(d) + case .collectionShare: + var d = [String: JSON]() + d[".tag"] = .str("collection_share") + return .dictionary(d) + case .fileTransfersFileAdd: + var d = [String: JSON]() + d[".tag"] = .str("file_transfers_file_add") + return .dictionary(d) + case .fileTransfersTransferDelete: + var d = [String: JSON]() + d[".tag"] = .str("file_transfers_transfer_delete") + return .dictionary(d) + case .fileTransfersTransferDownload: + var d = [String: JSON]() + d[".tag"] = .str("file_transfers_transfer_download") + return .dictionary(d) + case .fileTransfersTransferSend: + var d = [String: JSON]() + d[".tag"] = .str("file_transfers_transfer_send") + return .dictionary(d) + case .fileTransfersTransferView: + var d = [String: JSON]() + d[".tag"] = .str("file_transfers_transfer_view") + return .dictionary(d) + case .mediaHubProjectTeamAdd: + var d = [String: JSON]() + d[".tag"] = .str("media_hub_project_team_add") + return .dictionary(d) + case .mediaHubProjectTeamDelete: + var d = [String: JSON]() + d[".tag"] = .str("media_hub_project_team_delete") + return .dictionary(d) + case .mediaHubProjectTeamRoleChanged: + var d = [String: JSON]() + d[".tag"] = .str("media_hub_project_team_role_changed") + return .dictionary(d) + case .mediaHubSharedLinkAudienceChanged: + var d = [String: JSON]() + d[".tag"] = .str("media_hub_shared_link_audience_changed") + return .dictionary(d) + case .mediaHubSharedLinkCreated: + var d = [String: JSON]() + d[".tag"] = .str("media_hub_shared_link_created") + return .dictionary(d) + case .mediaHubSharedLinkDownloadSettingChanged: + var d = [String: JSON]() + d[".tag"] = .str("media_hub_shared_link_download_setting_changed") + return .dictionary(d) + case .mediaHubSharedLinkRevoked: + var d = [String: JSON]() + d[".tag"] = .str("media_hub_shared_link_revoked") + return .dictionary(d) + case .noteAclInviteOnly: + var d = [String: JSON]() + d[".tag"] = .str("note_acl_invite_only") + return .dictionary(d) + case .noteAclLink: + var d = [String: JSON]() + d[".tag"] = .str("note_acl_link") + return .dictionary(d) + case .noteAclTeamLink: + var d = [String: JSON]() + d[".tag"] = .str("note_acl_team_link") + return .dictionary(d) + case .noteShared: + var d = [String: JSON]() + d[".tag"] = .str("note_shared") + return .dictionary(d) + case .noteShareReceive: + var d = [String: JSON]() + d[".tag"] = .str("note_share_receive") + return .dictionary(d) + case .openNoteShared: + var d = [String: JSON]() + d[".tag"] = .str("open_note_shared") + return .dictionary(d) + case .replayFileSharedLinkCreated: + var d = [String: JSON]() + d[".tag"] = .str("replay_file_shared_link_created") + return .dictionary(d) + case .replayFileSharedLinkModified: + var d = [String: JSON]() + d[".tag"] = .str("replay_file_shared_link_modified") + return .dictionary(d) + case .replayProjectTeamAdd: + var d = [String: JSON]() + d[".tag"] = .str("replay_project_team_add") + return .dictionary(d) + case .replayProjectTeamDelete: + var d = [String: JSON]() + d[".tag"] = .str("replay_project_team_delete") + return .dictionary(d) + case .sendAndTrackFileAdded: + var d = [String: JSON]() + d[".tag"] = .str("send_and_track_file_added") + return .dictionary(d) + case .sendAndTrackFileRenamed: + var d = [String: JSON]() + d[".tag"] = .str("send_and_track_file_renamed") + return .dictionary(d) + case .sendAndTrackFileUpdated: + var d = [String: JSON]() + d[".tag"] = .str("send_and_track_file_updated") + return .dictionary(d) + case .sendAndTrackLinkCreated: + var d = [String: JSON]() + d[".tag"] = .str("send_and_track_link_created") + return .dictionary(d) + case .sendAndTrackLinkDeleted: + var d = [String: JSON]() + d[".tag"] = .str("send_and_track_link_deleted") + return .dictionary(d) + case .sendAndTrackLinkUpdated: + var d = [String: JSON]() + d[".tag"] = .str("send_and_track_link_updated") + return .dictionary(d) + case .sendAndTrackLinkViewed: + var d = [String: JSON]() + d[".tag"] = .str("send_and_track_link_viewed") + return .dictionary(d) + case .sendAndTrackRemovedFileAndAssociatedLinks: + var d = [String: JSON]() + d[".tag"] = .str("send_and_track_removed_file_and_associated_links") + return .dictionary(d) + case .sfAddGroup: + var d = [String: JSON]() + d[".tag"] = .str("sf_add_group") + return .dictionary(d) + case .sfAllowNonMembersToViewSharedLinks: + var d = [String: JSON]() + d[".tag"] = .str("sf_allow_non_members_to_view_shared_links") + return .dictionary(d) + case .sfExternalInviteWarn: + var d = [String: JSON]() + d[".tag"] = .str("sf_external_invite_warn") + return .dictionary(d) + case .sfFbInvite: + var d = [String: JSON]() + d[".tag"] = .str("sf_fb_invite") + return .dictionary(d) + case .sfFbInviteChangeRole: + var d = [String: JSON]() + d[".tag"] = .str("sf_fb_invite_change_role") + return .dictionary(d) + case .sfFbUninvite: + var d = [String: JSON]() + d[".tag"] = .str("sf_fb_uninvite") + return .dictionary(d) + case .sfInviteGroup: + var d = [String: JSON]() + d[".tag"] = .str("sf_invite_group") + return .dictionary(d) + case .sfTeamGrantAccess: + var d = [String: JSON]() + d[".tag"] = .str("sf_team_grant_access") + return .dictionary(d) + case .sfTeamInvite: + var d = [String: JSON]() + d[".tag"] = .str("sf_team_invite") + return .dictionary(d) + case .sfTeamInviteChangeRole: + var d = [String: JSON]() + d[".tag"] = .str("sf_team_invite_change_role") + return .dictionary(d) + case .sfTeamJoin: + var d = [String: JSON]() + d[".tag"] = .str("sf_team_join") + return .dictionary(d) + case .sfTeamJoinFromOobLink: + var d = [String: JSON]() + d[".tag"] = .str("sf_team_join_from_oob_link") + return .dictionary(d) + case .sfTeamUninvite: + var d = [String: JSON]() + d[".tag"] = .str("sf_team_uninvite") + return .dictionary(d) + case .sharedContentAddInvitees: + var d = [String: JSON]() + d[".tag"] = .str("shared_content_add_invitees") + return .dictionary(d) + case .sharedContentAddLinkExpiry: + var d = [String: JSON]() + d[".tag"] = .str("shared_content_add_link_expiry") + return .dictionary(d) + case .sharedContentAddLinkPassword: + var d = [String: JSON]() + d[".tag"] = .str("shared_content_add_link_password") + return .dictionary(d) + case .sharedContentAddMember: + var d = [String: JSON]() + d[".tag"] = .str("shared_content_add_member") + return .dictionary(d) + case .sharedContentChangeDownloadsPolicy: + var d = [String: JSON]() + d[".tag"] = .str("shared_content_change_downloads_policy") + return .dictionary(d) + case .sharedContentChangeInviteeRole: + var d = [String: JSON]() + d[".tag"] = .str("shared_content_change_invitee_role") + return .dictionary(d) + case .sharedContentChangeLinkAudience: + var d = [String: JSON]() + d[".tag"] = .str("shared_content_change_link_audience") + return .dictionary(d) + case .sharedContentChangeLinkExpiry: + var d = [String: JSON]() + d[".tag"] = .str("shared_content_change_link_expiry") + return .dictionary(d) + case .sharedContentChangeLinkPassword: + var d = [String: JSON]() + d[".tag"] = .str("shared_content_change_link_password") + return .dictionary(d) + case .sharedContentChangeMemberRole: + var d = [String: JSON]() + d[".tag"] = .str("shared_content_change_member_role") + return .dictionary(d) + case .sharedContentChangeViewerInfoPolicy: + var d = [String: JSON]() + d[".tag"] = .str("shared_content_change_viewer_info_policy") + return .dictionary(d) + case .sharedContentClaimInvitation: + var d = [String: JSON]() + d[".tag"] = .str("shared_content_claim_invitation") + return .dictionary(d) + case .sharedContentCopy: + var d = [String: JSON]() + d[".tag"] = .str("shared_content_copy") + return .dictionary(d) + case .sharedContentDownload: + var d = [String: JSON]() + d[".tag"] = .str("shared_content_download") + return .dictionary(d) + case .sharedContentRelinquishMembership: + var d = [String: JSON]() + d[".tag"] = .str("shared_content_relinquish_membership") + return .dictionary(d) + case .sharedContentRemoveInvitees: + var d = [String: JSON]() + d[".tag"] = .str("shared_content_remove_invitees") + return .dictionary(d) + case .sharedContentRemoveLinkExpiry: + var d = [String: JSON]() + d[".tag"] = .str("shared_content_remove_link_expiry") + return .dictionary(d) + case .sharedContentRemoveLinkPassword: + var d = [String: JSON]() + d[".tag"] = .str("shared_content_remove_link_password") + return .dictionary(d) + case .sharedContentRemoveMember: + var d = [String: JSON]() + d[".tag"] = .str("shared_content_remove_member") + return .dictionary(d) + case .sharedContentRequestAccess: + var d = [String: JSON]() + d[".tag"] = .str("shared_content_request_access") + return .dictionary(d) + case .sharedContentRestoreInvitees: + var d = [String: JSON]() + d[".tag"] = .str("shared_content_restore_invitees") + return .dictionary(d) + case .sharedContentRestoreMember: + var d = [String: JSON]() + d[".tag"] = .str("shared_content_restore_member") + return .dictionary(d) + case .sharedContentUnshare: + var d = [String: JSON]() + d[".tag"] = .str("shared_content_unshare") + return .dictionary(d) + case .sharedContentView: + var d = [String: JSON]() + d[".tag"] = .str("shared_content_view") + return .dictionary(d) + case .sharedFolderChangeLinkPolicy: + var d = [String: JSON]() + d[".tag"] = .str("shared_folder_change_link_policy") + return .dictionary(d) + case .sharedFolderChangeMembersInheritancePolicy: + var d = [String: JSON]() + d[".tag"] = .str("shared_folder_change_members_inheritance_policy") + return .dictionary(d) + case .sharedFolderChangeMembersManagementPolicy: + var d = [String: JSON]() + d[".tag"] = .str("shared_folder_change_members_management_policy") + return .dictionary(d) + case .sharedFolderChangeMembersPolicy: + var d = [String: JSON]() + d[".tag"] = .str("shared_folder_change_members_policy") + return .dictionary(d) + case .sharedFolderCreate: + var d = [String: JSON]() + d[".tag"] = .str("shared_folder_create") + return .dictionary(d) + case .sharedFolderDeclineInvitation: + var d = [String: JSON]() + d[".tag"] = .str("shared_folder_decline_invitation") + return .dictionary(d) + case .sharedFolderMount: + var d = [String: JSON]() + d[".tag"] = .str("shared_folder_mount") + return .dictionary(d) + case .sharedFolderNest: + var d = [String: JSON]() + d[".tag"] = .str("shared_folder_nest") + return .dictionary(d) + case .sharedFolderTransferOwnership: + var d = [String: JSON]() + d[".tag"] = .str("shared_folder_transfer_ownership") + return .dictionary(d) + case .sharedFolderUnmount: + var d = [String: JSON]() + d[".tag"] = .str("shared_folder_unmount") + return .dictionary(d) + case .sharedLinkAddExpiry: + var d = [String: JSON]() + d[".tag"] = .str("shared_link_add_expiry") + return .dictionary(d) + case .sharedLinkChangeExpiry: + var d = [String: JSON]() + d[".tag"] = .str("shared_link_change_expiry") + return .dictionary(d) + case .sharedLinkChangeVisibility: + var d = [String: JSON]() + d[".tag"] = .str("shared_link_change_visibility") + return .dictionary(d) + case .sharedLinkCopy: + var d = [String: JSON]() + d[".tag"] = .str("shared_link_copy") + return .dictionary(d) + case .sharedLinkCreate: + var d = [String: JSON]() + d[".tag"] = .str("shared_link_create") + return .dictionary(d) + case .sharedLinkDisable: + var d = [String: JSON]() + d[".tag"] = .str("shared_link_disable") + return .dictionary(d) + case .sharedLinkDownload: + var d = [String: JSON]() + d[".tag"] = .str("shared_link_download") + return .dictionary(d) + case .sharedLinkRemoveExpiry: + var d = [String: JSON]() + d[".tag"] = .str("shared_link_remove_expiry") + return .dictionary(d) + case .sharedLinkRemoveVisitor: + var d = [String: JSON]() + d[".tag"] = .str("shared_link_remove_visitor") + return .dictionary(d) + case .sharedLinkSettingsAddExpiration: + var d = [String: JSON]() + d[".tag"] = .str("shared_link_settings_add_expiration") + return .dictionary(d) + case .sharedLinkSettingsAddPassword: + var d = [String: JSON]() + d[".tag"] = .str("shared_link_settings_add_password") + return .dictionary(d) + case .sharedLinkSettingsAllowDownloadDisabled: + var d = [String: JSON]() + d[".tag"] = .str("shared_link_settings_allow_download_disabled") + return .dictionary(d) + case .sharedLinkSettingsAllowDownloadEnabled: + var d = [String: JSON]() + d[".tag"] = .str("shared_link_settings_allow_download_enabled") + return .dictionary(d) + case .sharedLinkSettingsChangeAudience: + var d = [String: JSON]() + d[".tag"] = .str("shared_link_settings_change_audience") + return .dictionary(d) + case .sharedLinkSettingsChangeExpiration: + var d = [String: JSON]() + d[".tag"] = .str("shared_link_settings_change_expiration") + return .dictionary(d) + case .sharedLinkSettingsChangePassword: + var d = [String: JSON]() + d[".tag"] = .str("shared_link_settings_change_password") + return .dictionary(d) + case .sharedLinkSettingsRemoveExpiration: + var d = [String: JSON]() + d[".tag"] = .str("shared_link_settings_remove_expiration") + return .dictionary(d) + case .sharedLinkSettingsRemovePassword: + var d = [String: JSON]() + d[".tag"] = .str("shared_link_settings_remove_password") + return .dictionary(d) + case .sharedLinkShare: + var d = [String: JSON]() + d[".tag"] = .str("shared_link_share") + return .dictionary(d) + case .sharedLinkView: + var d = [String: JSON]() + d[".tag"] = .str("shared_link_view") + return .dictionary(d) + case .sharedNoteOpened: + var d = [String: JSON]() + d[".tag"] = .str("shared_note_opened") + return .dictionary(d) + case .shmodelDisableDownloads: + var d = [String: JSON]() + d[".tag"] = .str("shmodel_disable_downloads") + return .dictionary(d) + case .shmodelEnableDownloads: + var d = [String: JSON]() + d[".tag"] = .str("shmodel_enable_downloads") + return .dictionary(d) + case .shmodelGroupShare: + var d = [String: JSON]() + d[".tag"] = .str("shmodel_group_share") + return .dictionary(d) + case .showcaseAccessGranted: + var d = [String: JSON]() + d[".tag"] = .str("showcase_access_granted") + return .dictionary(d) + case .showcaseAddMember: + var d = [String: JSON]() + d[".tag"] = .str("showcase_add_member") + return .dictionary(d) + case .showcaseArchived: + var d = [String: JSON]() + d[".tag"] = .str("showcase_archived") + return .dictionary(d) + case .showcaseCreated: + var d = [String: JSON]() + d[".tag"] = .str("showcase_created") + return .dictionary(d) + case .showcaseDeleteComment: + var d = [String: JSON]() + d[".tag"] = .str("showcase_delete_comment") + return .dictionary(d) + case .showcaseEdited: + var d = [String: JSON]() + d[".tag"] = .str("showcase_edited") + return .dictionary(d) + case .showcaseEditComment: + var d = [String: JSON]() + d[".tag"] = .str("showcase_edit_comment") + return .dictionary(d) + case .showcaseFileAdded: + var d = [String: JSON]() + d[".tag"] = .str("showcase_file_added") + return .dictionary(d) + case .showcaseFileDownload: + var d = [String: JSON]() + d[".tag"] = .str("showcase_file_download") + return .dictionary(d) + case .showcaseFileRemoved: + var d = [String: JSON]() + d[".tag"] = .str("showcase_file_removed") + return .dictionary(d) + case .showcaseFileView: + var d = [String: JSON]() + d[".tag"] = .str("showcase_file_view") + return .dictionary(d) + case .showcasePermanentlyDeleted: + var d = [String: JSON]() + d[".tag"] = .str("showcase_permanently_deleted") + return .dictionary(d) + case .showcasePostComment: + var d = [String: JSON]() + d[".tag"] = .str("showcase_post_comment") + return .dictionary(d) + case .showcaseRemoveMember: + var d = [String: JSON]() + d[".tag"] = .str("showcase_remove_member") + return .dictionary(d) + case .showcaseRenamed: + var d = [String: JSON]() + d[".tag"] = .str("showcase_renamed") + return .dictionary(d) + case .showcaseRequestAccess: + var d = [String: JSON]() + d[".tag"] = .str("showcase_request_access") + return .dictionary(d) + case .showcaseResolveComment: + var d = [String: JSON]() + d[".tag"] = .str("showcase_resolve_comment") + return .dictionary(d) + case .showcaseRestored: + var d = [String: JSON]() + d[".tag"] = .str("showcase_restored") + return .dictionary(d) + case .showcaseTrashed: + var d = [String: JSON]() + d[".tag"] = .str("showcase_trashed") + return .dictionary(d) + case .showcaseTrashedDeprecated: + var d = [String: JSON]() + d[".tag"] = .str("showcase_trashed_deprecated") + return .dictionary(d) + case .showcaseUnresolveComment: + var d = [String: JSON]() + d[".tag"] = .str("showcase_unresolve_comment") + return .dictionary(d) + case .showcaseUntrashed: + var d = [String: JSON]() + d[".tag"] = .str("showcase_untrashed") + return .dictionary(d) + case .showcaseUntrashedDeprecated: + var d = [String: JSON]() + d[".tag"] = .str("showcase_untrashed_deprecated") + return .dictionary(d) + case .showcaseView: + var d = [String: JSON]() + d[".tag"] = .str("showcase_view") + return .dictionary(d) + case .signSignatureRequestCanceled: + var d = [String: JSON]() + d[".tag"] = .str("sign_signature_request_canceled") + return .dictionary(d) + case .signSignatureRequestCompleted: + var d = [String: JSON]() + d[".tag"] = .str("sign_signature_request_completed") + return .dictionary(d) + case .signSignatureRequestDeclined: + var d = [String: JSON]() + d[".tag"] = .str("sign_signature_request_declined") + return .dictionary(d) + case .signSignatureRequestOpened: + var d = [String: JSON]() + d[".tag"] = .str("sign_signature_request_opened") + return .dictionary(d) + case .signSignatureRequestReminderSent: + var d = [String: JSON]() + d[".tag"] = .str("sign_signature_request_reminder_sent") + return .dictionary(d) + case .signSignatureRequestSent: + var d = [String: JSON]() + d[".tag"] = .str("sign_signature_request_sent") + return .dictionary(d) + case .signTemplateCreated: + var d = [String: JSON]() + d[".tag"] = .str("sign_template_created") + return .dictionary(d) + case .signTemplateShared: + var d = [String: JSON]() + d[".tag"] = .str("sign_template_shared") + return .dictionary(d) + case .riscSecurityEvent: + var d = [String: JSON]() + d[".tag"] = .str("risc_security_event") + return .dictionary(d) + case .ssoAddCert: + var d = [String: JSON]() + d[".tag"] = .str("sso_add_cert") + return .dictionary(d) + case .ssoAddLoginUrl: + var d = [String: JSON]() + d[".tag"] = .str("sso_add_login_url") + return .dictionary(d) + case .ssoAddLogoutUrl: + var d = [String: JSON]() + d[".tag"] = .str("sso_add_logout_url") + return .dictionary(d) + case .ssoChangeCert: + var d = [String: JSON]() + d[".tag"] = .str("sso_change_cert") + return .dictionary(d) + case .ssoChangeLoginUrl: + var d = [String: JSON]() + d[".tag"] = .str("sso_change_login_url") + return .dictionary(d) + case .ssoChangeLogoutUrl: + var d = [String: JSON]() + d[".tag"] = .str("sso_change_logout_url") + return .dictionary(d) + case .ssoChangeSamlIdentityMode: + var d = [String: JSON]() + d[".tag"] = .str("sso_change_saml_identity_mode") + return .dictionary(d) + case .ssoRemoveCert: + var d = [String: JSON]() + d[".tag"] = .str("sso_remove_cert") + return .dictionary(d) + case .ssoRemoveLoginUrl: + var d = [String: JSON]() + d[".tag"] = .str("sso_remove_login_url") + return .dictionary(d) + case .ssoRemoveLogoutUrl: + var d = [String: JSON]() + d[".tag"] = .str("sso_remove_logout_url") + return .dictionary(d) + case .teamFolderChangeStatus: + var d = [String: JSON]() + d[".tag"] = .str("team_folder_change_status") + return .dictionary(d) + case .teamFolderCreate: + var d = [String: JSON]() + d[".tag"] = .str("team_folder_create") + return .dictionary(d) + case .teamFolderDowngrade: + var d = [String: JSON]() + d[".tag"] = .str("team_folder_downgrade") + return .dictionary(d) + case .teamFolderPermanentlyDelete: + var d = [String: JSON]() + d[".tag"] = .str("team_folder_permanently_delete") + return .dictionary(d) + case .teamFolderRename: + var d = [String: JSON]() + d[".tag"] = .str("team_folder_rename") + return .dictionary(d) + case .teamFolderSpaceLimitsChangeCapsType: + var d = [String: JSON]() + d[".tag"] = .str("team_folder_space_limits_change_caps_type") + return .dictionary(d) + case .teamFolderSpaceLimitsChangeLimit: + var d = [String: JSON]() + d[".tag"] = .str("team_folder_space_limits_change_limit") + return .dictionary(d) + case .teamFolderSpaceLimitsChangeNotificationTarget: + var d = [String: JSON]() + d[".tag"] = .str("team_folder_space_limits_change_notification_target") + return .dictionary(d) + case .teamSelectiveSyncSettingsChanged: + var d = [String: JSON]() + d[".tag"] = .str("team_selective_sync_settings_changed") + return .dictionary(d) + case .accountCaptureChangePolicy: + var d = [String: JSON]() + d[".tag"] = .str("account_capture_change_policy") + return .dictionary(d) + case .adminEmailRemindersChanged: + var d = [String: JSON]() + d[".tag"] = .str("admin_email_reminders_changed") + return .dictionary(d) + case .aiThirdPartySharingDropboxBasePolicyChanged: + var d = [String: JSON]() + d[".tag"] = .str("ai_third_party_sharing_dropbox_base_policy_changed") + return .dictionary(d) + case .allowDownloadDisabled: + var d = [String: JSON]() + d[".tag"] = .str("allow_download_disabled") + return .dictionary(d) + case .allowDownloadEnabled: + var d = [String: JSON]() + d[".tag"] = .str("allow_download_enabled") + return .dictionary(d) + case .appleLoginChangePolicy: + var d = [String: JSON]() + d[".tag"] = .str("apple_login_change_policy") + return .dictionary(d) + case .appPermissionsChanged: + var d = [String: JSON]() + d[".tag"] = .str("app_permissions_changed") + return .dictionary(d) + case .cameraUploadsPolicyChanged: + var d = [String: JSON]() + d[".tag"] = .str("camera_uploads_policy_changed") + return .dictionary(d) + case .captureTeamSpacePolicyChanged: + var d = [String: JSON]() + d[".tag"] = .str("capture_team_space_policy_changed") + return .dictionary(d) + case .captureTranscriptPolicyChanged: + var d = [String: JSON]() + d[".tag"] = .str("capture_transcript_policy_changed") + return .dictionary(d) + case .classificationChangePolicy: + var d = [String: JSON]() + d[".tag"] = .str("classification_change_policy") + return .dictionary(d) + case .computerBackupPolicyChanged: + var d = [String: JSON]() + d[".tag"] = .str("computer_backup_policy_changed") + return .dictionary(d) + case .contentAdministrationPolicyChanged: + var d = [String: JSON]() + d[".tag"] = .str("content_administration_policy_changed") + return .dictionary(d) + case .contentDeletionProtectionChangePolicy: + var d = [String: JSON]() + d[".tag"] = .str("content_deletion_protection_change_policy") + return .dictionary(d) + case .dashExternalSharingPolicyChanged: + var d = [String: JSON]() + d[".tag"] = .str("dash_external_sharing_policy_changed") + return .dictionary(d) + case .dataPlacementRestrictionChangePolicy: + var d = [String: JSON]() + d[".tag"] = .str("data_placement_restriction_change_policy") + return .dictionary(d) + case .dataPlacementRestrictionSatisfyPolicy: + var d = [String: JSON]() + d[".tag"] = .str("data_placement_restriction_satisfy_policy") + return .dictionary(d) + case .deviceApprovalsAddException: + var d = [String: JSON]() + d[".tag"] = .str("device_approvals_add_exception") + return .dictionary(d) + case .deviceApprovalsChangeDesktopPolicy: + var d = [String: JSON]() + d[".tag"] = .str("device_approvals_change_desktop_policy") + return .dictionary(d) + case .deviceApprovalsChangeMobilePolicy: + var d = [String: JSON]() + d[".tag"] = .str("device_approvals_change_mobile_policy") + return .dictionary(d) + case .deviceApprovalsChangeOverageAction: + var d = [String: JSON]() + d[".tag"] = .str("device_approvals_change_overage_action") + return .dictionary(d) + case .deviceApprovalsChangeUnlinkAction: + var d = [String: JSON]() + d[".tag"] = .str("device_approvals_change_unlink_action") + return .dictionary(d) + case .deviceApprovalsRemoveException: + var d = [String: JSON]() + d[".tag"] = .str("device_approvals_remove_exception") + return .dictionary(d) + case .directoryRestrictionsAddMembers: + var d = [String: JSON]() + d[".tag"] = .str("directory_restrictions_add_members") + return .dictionary(d) + case .directoryRestrictionsRemoveMembers: + var d = [String: JSON]() + d[".tag"] = .str("directory_restrictions_remove_members") + return .dictionary(d) + case .dropboxPasswordsPolicyChanged: + var d = [String: JSON]() + d[".tag"] = .str("dropbox_passwords_policy_changed") + return .dictionary(d) + case .emailIngestPolicyChanged: + var d = [String: JSON]() + d[".tag"] = .str("email_ingest_policy_changed") + return .dictionary(d) + case .emmAddException: + var d = [String: JSON]() + d[".tag"] = .str("emm_add_exception") + return .dictionary(d) + case .emmChangePolicy: + var d = [String: JSON]() + d[".tag"] = .str("emm_change_policy") + return .dictionary(d) + case .emmRemoveException: + var d = [String: JSON]() + d[".tag"] = .str("emm_remove_exception") + return .dictionary(d) + case .extendedVersionHistoryChangePolicy: + var d = [String: JSON]() + d[".tag"] = .str("extended_version_history_change_policy") + return .dictionary(d) + case .externalDriveBackupPolicyChanged: + var d = [String: JSON]() + d[".tag"] = .str("external_drive_backup_policy_changed") + return .dictionary(d) + case .fileCommentsChangePolicy: + var d = [String: JSON]() + d[".tag"] = .str("file_comments_change_policy") + return .dictionary(d) + case .fileLockingPolicyChanged: + var d = [String: JSON]() + d[".tag"] = .str("file_locking_policy_changed") + return .dictionary(d) + case .fileProviderMigrationPolicyChanged: + var d = [String: JSON]() + d[".tag"] = .str("file_provider_migration_policy_changed") + return .dictionary(d) + case .fileRequestsChangePolicy: + var d = [String: JSON]() + d[".tag"] = .str("file_requests_change_policy") + return .dictionary(d) + case .fileRequestsEmailsEnabled: + var d = [String: JSON]() + d[".tag"] = .str("file_requests_emails_enabled") + return .dictionary(d) + case .fileRequestsEmailsRestrictedToTeamOnly: + var d = [String: JSON]() + d[".tag"] = .str("file_requests_emails_restricted_to_team_only") + return .dictionary(d) + case .fileTransfersPolicyChanged: + var d = [String: JSON]() + d[".tag"] = .str("file_transfers_policy_changed") + return .dictionary(d) + case .flexibleFileNamesPolicyChanged: + var d = [String: JSON]() + d[".tag"] = .str("flexible_file_names_policy_changed") + return .dictionary(d) + case .folderLinkRestrictionPolicyChanged: + var d = [String: JSON]() + d[".tag"] = .str("folder_link_restriction_policy_changed") + return .dictionary(d) + case .googleSsoChangePolicy: + var d = [String: JSON]() + d[".tag"] = .str("google_sso_change_policy") + return .dictionary(d) + case .groupUserManagementChangePolicy: + var d = [String: JSON]() + d[".tag"] = .str("group_user_management_change_policy") + return .dictionary(d) + case .integrationPolicyChanged: + var d = [String: JSON]() + d[".tag"] = .str("integration_policy_changed") + return .dictionary(d) + case .inviteAcceptanceEmailPolicyChanged: + var d = [String: JSON]() + d[".tag"] = .str("invite_acceptance_email_policy_changed") + return .dictionary(d) + case .mediaHubAddingPeoplePolicyChanged: + var d = [String: JSON]() + d[".tag"] = .str("media_hub_adding_people_policy_changed") + return .dictionary(d) + case .mediaHubDownloadPolicyChanged: + var d = [String: JSON]() + d[".tag"] = .str("media_hub_download_policy_changed") + return .dictionary(d) + case .mediaHubLinkSharingPolicyChanged: + var d = [String: JSON]() + d[".tag"] = .str("media_hub_link_sharing_policy_changed") + return .dictionary(d) + case .memberRequestsChangePolicy: + var d = [String: JSON]() + d[".tag"] = .str("member_requests_change_policy") + return .dictionary(d) + case .memberSendInvitePolicyChanged: + var d = [String: JSON]() + d[".tag"] = .str("member_send_invite_policy_changed") + return .dictionary(d) + case .memberSpaceLimitsAddException: + var d = [String: JSON]() + d[".tag"] = .str("member_space_limits_add_exception") + return .dictionary(d) + case .memberSpaceLimitsChangeCapsTypePolicy: + var d = [String: JSON]() + d[".tag"] = .str("member_space_limits_change_caps_type_policy") + return .dictionary(d) + case .memberSpaceLimitsChangePolicy: + var d = [String: JSON]() + d[".tag"] = .str("member_space_limits_change_policy") + return .dictionary(d) + case .memberSpaceLimitsRemoveException: + var d = [String: JSON]() + d[".tag"] = .str("member_space_limits_remove_exception") + return .dictionary(d) + case .memberSuggestionsChangePolicy: + var d = [String: JSON]() + d[".tag"] = .str("member_suggestions_change_policy") + return .dictionary(d) + case .microsoftLoginChangePolicy: + var d = [String: JSON]() + d[".tag"] = .str("microsoft_login_change_policy") + return .dictionary(d) + case .microsoftOfficeAddinChangePolicy: + var d = [String: JSON]() + d[".tag"] = .str("microsoft_office_addin_change_policy") + return .dictionary(d) + case .multiTeamIdentityPolicyChanged: + var d = [String: JSON]() + d[".tag"] = .str("multi_team_identity_policy_changed") + return .dictionary(d) + case .networkControlChangePolicy: + var d = [String: JSON]() + d[".tag"] = .str("network_control_change_policy") + return .dictionary(d) + case .paperChangeDeploymentPolicy: + var d = [String: JSON]() + d[".tag"] = .str("paper_change_deployment_policy") + return .dictionary(d) + case .paperChangeMemberLinkPolicy: + var d = [String: JSON]() + d[".tag"] = .str("paper_change_member_link_policy") + return .dictionary(d) + case .paperChangeMemberPolicy: + var d = [String: JSON]() + d[".tag"] = .str("paper_change_member_policy") + return .dictionary(d) + case .paperChangePolicy: + var d = [String: JSON]() + d[".tag"] = .str("paper_change_policy") + return .dictionary(d) + case .paperDefaultFolderPolicyChanged: + var d = [String: JSON]() + d[".tag"] = .str("paper_default_folder_policy_changed") + return .dictionary(d) + case .paperDesktopPolicyChanged: + var d = [String: JSON]() + d[".tag"] = .str("paper_desktop_policy_changed") + return .dictionary(d) + case .paperEnabledUsersGroupAddition: + var d = [String: JSON]() + d[".tag"] = .str("paper_enabled_users_group_addition") + return .dictionary(d) + case .paperEnabledUsersGroupRemoval: + var d = [String: JSON]() + d[".tag"] = .str("paper_enabled_users_group_removal") + return .dictionary(d) + case .passkeyLoginPolicyChanged: + var d = [String: JSON]() + d[".tag"] = .str("passkey_login_policy_changed") + return .dictionary(d) + case .passwordStrengthRequirementsChangePolicy: + var d = [String: JSON]() + d[".tag"] = .str("password_strength_requirements_change_policy") + return .dictionary(d) + case .permanentDeleteChangePolicy: + var d = [String: JSON]() + d[".tag"] = .str("permanent_delete_change_policy") + return .dictionary(d) + case .previewsAiPolicyChanged: + var d = [String: JSON]() + d[".tag"] = .str("previews_ai_policy_changed") + return .dictionary(d) + case .replayAddingPeoplePolicyChanged: + var d = [String: JSON]() + d[".tag"] = .str("replay_adding_people_policy_changed") + return .dictionary(d) + case .replaySharingPolicyChanged: + var d = [String: JSON]() + d[".tag"] = .str("replay_sharing_policy_changed") + return .dictionary(d) + case .resellerSupportChangePolicy: + var d = [String: JSON]() + d[".tag"] = .str("reseller_support_change_policy") + return .dictionary(d) + case .rewindPolicyChanged: + var d = [String: JSON]() + d[".tag"] = .str("rewind_policy_changed") + return .dictionary(d) + case .sendAndTrackPolicyChanged: + var d = [String: JSON]() + d[".tag"] = .str("send_and_track_policy_changed") + return .dictionary(d) + case .sendExternalSharingPolicyChanged: + var d = [String: JSON]() + d[".tag"] = .str("send_external_sharing_policy_changed") + return .dictionary(d) + case .sendForSignaturePolicyChanged: + var d = [String: JSON]() + d[".tag"] = .str("send_for_signature_policy_changed") + return .dictionary(d) + case .sharedLinkDefaultPermissionsPolicyChanged: + var d = [String: JSON]() + d[".tag"] = .str("shared_link_default_permissions_policy_changed") + return .dictionary(d) + case .sharingChangeFolderJoinPolicy: + var d = [String: JSON]() + d[".tag"] = .str("sharing_change_folder_join_policy") + return .dictionary(d) + case .sharingChangeLinkAllowChangeExpirationPolicy: + var d = [String: JSON]() + d[".tag"] = .str("sharing_change_link_allow_change_expiration_policy") + return .dictionary(d) + case .sharingChangeLinkDefaultExpirationPolicy: + var d = [String: JSON]() + d[".tag"] = .str("sharing_change_link_default_expiration_policy") + return .dictionary(d) + case .sharingChangeLinkEnforcePasswordPolicy: + var d = [String: JSON]() + d[".tag"] = .str("sharing_change_link_enforce_password_policy") + return .dictionary(d) + case .sharingChangeLinkPolicy: + var d = [String: JSON]() + d[".tag"] = .str("sharing_change_link_policy") + return .dictionary(d) + case .sharingChangeMemberPolicy: + var d = [String: JSON]() + d[".tag"] = .str("sharing_change_member_policy") + return .dictionary(d) + case .showcaseChangeDownloadPolicy: + var d = [String: JSON]() + d[".tag"] = .str("showcase_change_download_policy") + return .dictionary(d) + case .showcaseChangeEnabledPolicy: + var d = [String: JSON]() + d[".tag"] = .str("showcase_change_enabled_policy") + return .dictionary(d) + case .showcaseChangeExternalSharingPolicy: + var d = [String: JSON]() + d[".tag"] = .str("showcase_change_external_sharing_policy") + return .dictionary(d) + case .signExternalSharingPolicyChanged: + var d = [String: JSON]() + d[".tag"] = .str("sign_external_sharing_policy_changed") + return .dictionary(d) + case .signTemplateCreationPermissionChanged: + var d = [String: JSON]() + d[".tag"] = .str("sign_template_creation_permission_changed") + return .dictionary(d) + case .smarterSmartSyncPolicyChanged: + var d = [String: JSON]() + d[".tag"] = .str("smarter_smart_sync_policy_changed") + return .dictionary(d) + case .smartSyncChangePolicy: + var d = [String: JSON]() + d[".tag"] = .str("smart_sync_change_policy") + return .dictionary(d) + case .smartSyncNotOptOut: + var d = [String: JSON]() + d[".tag"] = .str("smart_sync_not_opt_out") + return .dictionary(d) + case .smartSyncOptOut: + var d = [String: JSON]() + d[".tag"] = .str("smart_sync_opt_out") + return .dictionary(d) + case .ssoChangePolicy: + var d = [String: JSON]() + d[".tag"] = .str("sso_change_policy") + return .dictionary(d) + case .stackCrossTeamAccessPolicyChanged: + var d = [String: JSON]() + d[".tag"] = .str("stack_cross_team_access_policy_changed") + return .dictionary(d) + case .teamBrandingPolicyChanged: + var d = [String: JSON]() + d[".tag"] = .str("team_branding_policy_changed") + return .dictionary(d) + case .teamExtensionsPolicyChanged: + var d = [String: JSON]() + d[".tag"] = .str("team_extensions_policy_changed") + return .dictionary(d) + case .teamMemberStorageRequestPolicyChanged: + var d = [String: JSON]() + d[".tag"] = .str("team_member_storage_request_policy_changed") + return .dictionary(d) + case .teamSelectiveSyncPolicyChanged: + var d = [String: JSON]() + d[".tag"] = .str("team_selective_sync_policy_changed") + return .dictionary(d) + case .teamSharingWhitelistSubjectsChanged: + var d = [String: JSON]() + d[".tag"] = .str("team_sharing_whitelist_subjects_changed") + return .dictionary(d) + case .tfaAddException: + var d = [String: JSON]() + d[".tag"] = .str("tfa_add_exception") + return .dictionary(d) + case .tfaChangePolicy: + var d = [String: JSON]() + d[".tag"] = .str("tfa_change_policy") + return .dictionary(d) + case .tfaRemoveException: + var d = [String: JSON]() + d[".tag"] = .str("tfa_remove_exception") + return .dictionary(d) + case .topLevelContentPolicyChanged: + var d = [String: JSON]() + d[".tag"] = .str("top_level_content_policy_changed") + return .dictionary(d) + case .twoAccountChangePolicy: + var d = [String: JSON]() + d[".tag"] = .str("two_account_change_policy") + return .dictionary(d) + case .viewerInfoPolicyChanged: + var d = [String: JSON]() + d[".tag"] = .str("viewer_info_policy_changed") + return .dictionary(d) + case .watermarkingPolicyChanged: + var d = [String: JSON]() + d[".tag"] = .str("watermarking_policy_changed") + return .dictionary(d) + case .webSessionsChangeActiveSessionLimit: + var d = [String: JSON]() + d[".tag"] = .str("web_sessions_change_active_session_limit") + return .dictionary(d) + case .webSessionsChangeFixedLengthPolicy: + var d = [String: JSON]() + d[".tag"] = .str("web_sessions_change_fixed_length_policy") + return .dictionary(d) + case .webSessionsChangeIdleLengthPolicy: + var d = [String: JSON]() + d[".tag"] = .str("web_sessions_change_idle_length_policy") + return .dictionary(d) + case .dataResidencyMigrationRequestSuccessful: + var d = [String: JSON]() + d[".tag"] = .str("data_residency_migration_request_successful") + return .dictionary(d) + case .dataResidencyMigrationRequestUnsuccessful: + var d = [String: JSON]() + d[".tag"] = .str("data_residency_migration_request_unsuccessful") + return .dictionary(d) + case .teamMergeFrom: + var d = [String: JSON]() + d[".tag"] = .str("team_merge_from") + return .dictionary(d) + case .teamMergeTo: + var d = [String: JSON]() + d[".tag"] = .str("team_merge_to") + return .dictionary(d) + case .teamProfileAddBackground: + var d = [String: JSON]() + d[".tag"] = .str("team_profile_add_background") + return .dictionary(d) + case .teamProfileAddLogo: + var d = [String: JSON]() + d[".tag"] = .str("team_profile_add_logo") + return .dictionary(d) + case .teamProfileChangeBackground: + var d = [String: JSON]() + d[".tag"] = .str("team_profile_change_background") + return .dictionary(d) + case .teamProfileChangeDefaultLanguage: + var d = [String: JSON]() + d[".tag"] = .str("team_profile_change_default_language") + return .dictionary(d) + case .teamProfileChangeLogo: + var d = [String: JSON]() + d[".tag"] = .str("team_profile_change_logo") + return .dictionary(d) + case .teamProfileChangeName: + var d = [String: JSON]() + d[".tag"] = .str("team_profile_change_name") + return .dictionary(d) + case .teamProfileRemoveBackground: + var d = [String: JSON]() + d[".tag"] = .str("team_profile_remove_background") + return .dictionary(d) + case .teamProfileRemoveLogo: + var d = [String: JSON]() + d[".tag"] = .str("team_profile_remove_logo") + return .dictionary(d) + case .passkeyAdd: + var d = [String: JSON]() + d[".tag"] = .str("passkey_add") + return .dictionary(d) + case .passkeyRemove: + var d = [String: JSON]() + d[".tag"] = .str("passkey_remove") + return .dictionary(d) + case .tfaAddBackupPhone: + var d = [String: JSON]() + d[".tag"] = .str("tfa_add_backup_phone") + return .dictionary(d) + case .tfaAddSecurityKey: + var d = [String: JSON]() + d[".tag"] = .str("tfa_add_security_key") + return .dictionary(d) + case .tfaChangeBackupPhone: + var d = [String: JSON]() + d[".tag"] = .str("tfa_change_backup_phone") + return .dictionary(d) + case .tfaChangeStatus: + var d = [String: JSON]() + d[".tag"] = .str("tfa_change_status") + return .dictionary(d) + case .tfaRemoveBackupPhone: + var d = [String: JSON]() + d[".tag"] = .str("tfa_remove_backup_phone") + return .dictionary(d) + case .tfaRemoveSecurityKey: + var d = [String: JSON]() + d[".tag"] = .str("tfa_remove_security_key") + return .dictionary(d) + case .tfaReset: + var d = [String: JSON]() + d[".tag"] = .str("tfa_reset") + return .dictionary(d) + case .changedEnterpriseAdminRole: + var d = [String: JSON]() + d[".tag"] = .str("changed_enterprise_admin_role") + return .dictionary(d) + case .changedEnterpriseConnectedTeamStatus: + var d = [String: JSON]() + d[".tag"] = .str("changed_enterprise_connected_team_status") + return .dictionary(d) + case .endedEnterpriseAdminSession: + var d = [String: JSON]() + d[".tag"] = .str("ended_enterprise_admin_session") + return .dictionary(d) + case .endedEnterpriseAdminSessionDeprecated: + var d = [String: JSON]() + d[".tag"] = .str("ended_enterprise_admin_session_deprecated") + return .dictionary(d) + case .enterpriseSettingsLocking: + var d = [String: JSON]() + d[".tag"] = .str("enterprise_settings_locking") + return .dictionary(d) + case .guestAdminChangeStatus: + var d = [String: JSON]() + d[".tag"] = .str("guest_admin_change_status") + return .dictionary(d) + case .startedEnterpriseAdminSession: + var d = [String: JSON]() + d[".tag"] = .str("started_enterprise_admin_session") + return .dictionary(d) + case .teamMergeRequestAccepted: + var d = [String: JSON]() + d[".tag"] = .str("team_merge_request_accepted") + return .dictionary(d) + case .teamMergeRequestAcceptedShownToPrimaryTeam: + var d = [String: JSON]() + d[".tag"] = .str("team_merge_request_accepted_shown_to_primary_team") + return .dictionary(d) + case .teamMergeRequestAcceptedShownToSecondaryTeam: + var d = [String: JSON]() + d[".tag"] = .str("team_merge_request_accepted_shown_to_secondary_team") + return .dictionary(d) + case .teamMergeRequestAutoCanceled: + var d = [String: JSON]() + d[".tag"] = .str("team_merge_request_auto_canceled") + return .dictionary(d) + case .teamMergeRequestCanceled: + var d = [String: JSON]() + d[".tag"] = .str("team_merge_request_canceled") + return .dictionary(d) + case .teamMergeRequestCanceledShownToPrimaryTeam: + var d = [String: JSON]() + d[".tag"] = .str("team_merge_request_canceled_shown_to_primary_team") + return .dictionary(d) + case .teamMergeRequestCanceledShownToSecondaryTeam: + var d = [String: JSON]() + d[".tag"] = .str("team_merge_request_canceled_shown_to_secondary_team") + return .dictionary(d) + case .teamMergeRequestExpired: + var d = [String: JSON]() + d[".tag"] = .str("team_merge_request_expired") + return .dictionary(d) + case .teamMergeRequestExpiredShownToPrimaryTeam: + var d = [String: JSON]() + d[".tag"] = .str("team_merge_request_expired_shown_to_primary_team") + return .dictionary(d) + case .teamMergeRequestExpiredShownToSecondaryTeam: + var d = [String: JSON]() + d[".tag"] = .str("team_merge_request_expired_shown_to_secondary_team") + return .dictionary(d) + case .teamMergeRequestRejectedShownToPrimaryTeam: + var d = [String: JSON]() + d[".tag"] = .str("team_merge_request_rejected_shown_to_primary_team") + return .dictionary(d) + case .teamMergeRequestRejectedShownToSecondaryTeam: + var d = [String: JSON]() + d[".tag"] = .str("team_merge_request_rejected_shown_to_secondary_team") + return .dictionary(d) + case .teamMergeRequestReminder: + var d = [String: JSON]() + d[".tag"] = .str("team_merge_request_reminder") + return .dictionary(d) + case .teamMergeRequestReminderShownToPrimaryTeam: + var d = [String: JSON]() + d[".tag"] = .str("team_merge_request_reminder_shown_to_primary_team") + return .dictionary(d) + case .teamMergeRequestReminderShownToSecondaryTeam: + var d = [String: JSON]() + d[".tag"] = .str("team_merge_request_reminder_shown_to_secondary_team") + return .dictionary(d) + case .teamMergeRequestRevoked: + var d = [String: JSON]() + d[".tag"] = .str("team_merge_request_revoked") + return .dictionary(d) + case .teamMergeRequestSentShownToPrimaryTeam: + var d = [String: JSON]() + d[".tag"] = .str("team_merge_request_sent_shown_to_primary_team") + return .dictionary(d) + case .teamMergeRequestSentShownToSecondaryTeam: + var d = [String: JSON]() + d[".tag"] = .str("team_merge_request_sent_shown_to_secondary_team") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> EventTypeArg { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "admin_alerting_alert_state_changed": + return EventTypeArg.adminAlertingAlertStateChanged + case "admin_alerting_changed_alert_config": + return EventTypeArg.adminAlertingChangedAlertConfig + case "admin_alerting_triggered_alert": + return EventTypeArg.adminAlertingTriggeredAlert + case "ransomware_restore_process_completed": + return EventTypeArg.ransomwareRestoreProcessCompleted + case "ransomware_restore_process_started": + return EventTypeArg.ransomwareRestoreProcessStarted + case "app_blocked_by_permissions": + return EventTypeArg.appBlockedByPermissions + case "app_link_team": + return EventTypeArg.appLinkTeam + case "app_link_user": + return EventTypeArg.appLinkUser + case "app_unlink_team": + return EventTypeArg.appUnlinkTeam + case "app_unlink_user": + return EventTypeArg.appUnlinkUser + case "integration_connected": + return EventTypeArg.integrationConnected + case "integration_disconnected": + return EventTypeArg.integrationDisconnected + case "file_add_comment": + return EventTypeArg.fileAddComment + case "file_change_comment_subscription": + return EventTypeArg.fileChangeCommentSubscription + case "file_delete_comment": + return EventTypeArg.fileDeleteComment + case "file_edit_comment": + return EventTypeArg.fileEditComment + case "file_like_comment": + return EventTypeArg.fileLikeComment + case "file_resolve_comment": + return EventTypeArg.fileResolveComment + case "file_unlike_comment": + return EventTypeArg.fileUnlikeComment + case "file_unresolve_comment": + return EventTypeArg.fileUnresolveComment + case "dash_added_comment_to_stack": + return EventTypeArg.dashAddedCommentToStack + case "dash_added_connector": + return EventTypeArg.dashAddedConnector + case "dash_added_link_to_stack": + return EventTypeArg.dashAddedLinkToStack + case "dash_added_team_email_domain_allowlist": + return EventTypeArg.dashAddedTeamEmailDomainAllowlist + case "dash_admin_added_org_wide_connector": + return EventTypeArg.dashAdminAddedOrgWideConnector + case "dash_admin_disabled_connector": + return EventTypeArg.dashAdminDisabledConnector + case "dash_admin_enabled_connector": + return EventTypeArg.dashAdminEnabledConnector + case "dash_admin_removed_org_wide_connector": + return EventTypeArg.dashAdminRemovedOrgWideConnector + case "dash_archived_stack": + return EventTypeArg.dashArchivedStack + case "dash_changed_audience_of_shared_link_to_stack": + return EventTypeArg.dashChangedAudienceOfSharedLinkToStack + case "dash_cloned_stack": + return EventTypeArg.dashClonedStack + case "dash_connector_tools_call": + return EventTypeArg.dashConnectorToolsCall + case "dash_created_stack": + return EventTypeArg.dashCreatedStack + case "dash_deleted_comment_from_stack": + return EventTypeArg.dashDeletedCommentFromStack + case "dash_deleted_stack": + return EventTypeArg.dashDeletedStack + case "dash_edited_comment_in_stack": + return EventTypeArg.dashEditedCommentInStack + case "dash_external_user_opened_stack": + return EventTypeArg.dashExternalUserOpenedStack + case "dash_first_launched_desktop": + return EventTypeArg.dashFirstLaunchedDesktop + case "dash_first_launched_extension": + return EventTypeArg.dashFirstLaunchedExtension + case "dash_first_launched_web_start_page": + return EventTypeArg.dashFirstLaunchedWebStartPage + case "dash_opened_shared_link_to_stack": + return EventTypeArg.dashOpenedSharedLinkToStack + case "dash_opened_stack": + return EventTypeArg.dashOpenedStack + case "dash_preview_opt_out_status_changed": + return EventTypeArg.dashPreviewOptOutStatusChanged + case "dash_removed_connector": + return EventTypeArg.dashRemovedConnector + case "dash_removed_link_from_stack": + return EventTypeArg.dashRemovedLinkFromStack + case "dash_removed_shared_link_to_stack": + return EventTypeArg.dashRemovedSharedLinkToStack + case "dash_removed_team_email_domain_allowlist": + return EventTypeArg.dashRemovedTeamEmailDomainAllowlist + case "dash_renamed_stack": + return EventTypeArg.dashRenamedStack + case "dash_shared_link_to_stack": + return EventTypeArg.dashSharedLinkToStack + case "dash_unarchived_stack": + return EventTypeArg.dashUnarchivedStack + case "dash_viewed_company_stack": + return EventTypeArg.dashViewedCompanyStack + case "dash_viewed_external_ai_activity_report": + return EventTypeArg.dashViewedExternalAiActivityReport + case "governance_policy_add_folders": + return EventTypeArg.governancePolicyAddFolders + case "governance_policy_add_folder_failed": + return EventTypeArg.governancePolicyAddFolderFailed + case "governance_policy_content_disposed": + return EventTypeArg.governancePolicyContentDisposed + case "governance_policy_create": + return EventTypeArg.governancePolicyCreate + case "governance_policy_delete": + return EventTypeArg.governancePolicyDelete + case "governance_policy_edit_details": + return EventTypeArg.governancePolicyEditDetails + case "governance_policy_edit_duration": + return EventTypeArg.governancePolicyEditDuration + case "governance_policy_export_created": + return EventTypeArg.governancePolicyExportCreated + case "governance_policy_export_removed": + return EventTypeArg.governancePolicyExportRemoved + case "governance_policy_remove_folders": + return EventTypeArg.governancePolicyRemoveFolders + case "governance_policy_report_created": + return EventTypeArg.governancePolicyReportCreated + case "governance_policy_zip_part_downloaded": + return EventTypeArg.governancePolicyZipPartDownloaded + case "legal_holds_activate_a_hold": + return EventTypeArg.legalHoldsActivateAHold + case "legal_holds_add_members": + return EventTypeArg.legalHoldsAddMembers + case "legal_holds_change_hold_details": + return EventTypeArg.legalHoldsChangeHoldDetails + case "legal_holds_change_hold_name": + return EventTypeArg.legalHoldsChangeHoldName + case "legal_holds_export_a_hold": + return EventTypeArg.legalHoldsExportAHold + case "legal_holds_export_cancelled": + return EventTypeArg.legalHoldsExportCancelled + case "legal_holds_export_downloaded": + return EventTypeArg.legalHoldsExportDownloaded + case "legal_holds_export_removed": + return EventTypeArg.legalHoldsExportRemoved + case "legal_holds_release_a_hold": + return EventTypeArg.legalHoldsReleaseAHold + case "legal_holds_remove_members": + return EventTypeArg.legalHoldsRemoveMembers + case "legal_holds_report_a_hold": + return EventTypeArg.legalHoldsReportAHold + case "device_change_ip_desktop": + return EventTypeArg.deviceChangeIpDesktop + case "device_change_ip_mobile": + return EventTypeArg.deviceChangeIpMobile + case "device_change_ip_web": + return EventTypeArg.deviceChangeIpWeb + case "device_delete_on_unlink_fail": + return EventTypeArg.deviceDeleteOnUnlinkFail + case "device_delete_on_unlink_success": + return EventTypeArg.deviceDeleteOnUnlinkSuccess + case "device_link_fail": + return EventTypeArg.deviceLinkFail + case "device_link_success": + return EventTypeArg.deviceLinkSuccess + case "device_management_disabled": + return EventTypeArg.deviceManagementDisabled + case "device_management_enabled": + return EventTypeArg.deviceManagementEnabled + case "device_sync_backup_status_changed": + return EventTypeArg.deviceSyncBackupStatusChanged + case "device_unlink": + return EventTypeArg.deviceUnlink + case "dropbox_passwords_exported": + return EventTypeArg.dropboxPasswordsExported + case "dropbox_passwords_new_device_enrolled": + return EventTypeArg.dropboxPasswordsNewDeviceEnrolled + case "emm_refresh_auth_token": + return EventTypeArg.emmRefreshAuthToken + case "external_drive_backup_eligibility_status_checked": + return EventTypeArg.externalDriveBackupEligibilityStatusChecked + case "external_drive_backup_status_changed": + return EventTypeArg.externalDriveBackupStatusChanged + case "account_capture_change_availability": + return EventTypeArg.accountCaptureChangeAvailability + case "account_capture_migrate_account": + return EventTypeArg.accountCaptureMigrateAccount + case "account_capture_notification_emails_sent": + return EventTypeArg.accountCaptureNotificationEmailsSent + case "account_capture_relinquish_account": + return EventTypeArg.accountCaptureRelinquishAccount + case "disabled_domain_invites": + return EventTypeArg.disabledDomainInvites + case "domain_invites_approve_request_to_join_team": + return EventTypeArg.domainInvitesApproveRequestToJoinTeam + case "domain_invites_decline_request_to_join_team": + return EventTypeArg.domainInvitesDeclineRequestToJoinTeam + case "domain_invites_email_existing_users": + return EventTypeArg.domainInvitesEmailExistingUsers + case "domain_invites_request_to_join_team": + return EventTypeArg.domainInvitesRequestToJoinTeam + case "domain_invites_set_invite_new_user_pref_to_no": + return EventTypeArg.domainInvitesSetInviteNewUserPrefToNo + case "domain_invites_set_invite_new_user_pref_to_yes": + return EventTypeArg.domainInvitesSetInviteNewUserPrefToYes + case "domain_verification_add_domain_fail": + return EventTypeArg.domainVerificationAddDomainFail + case "domain_verification_add_domain_success": + return EventTypeArg.domainVerificationAddDomainSuccess + case "domain_verification_remove_domain": + return EventTypeArg.domainVerificationRemoveDomain + case "enabled_domain_invites": + return EventTypeArg.enabledDomainInvites + case "encrypted_folder_cancel_team_key_rotation": + return EventTypeArg.encryptedFolderCancelTeamKeyRotation + case "encrypted_folder_enroll_backup_key": + return EventTypeArg.encryptedFolderEnrollBackupKey + case "encrypted_folder_enroll_client": + return EventTypeArg.encryptedFolderEnrollClient + case "encrypted_folder_enroll_team": + return EventTypeArg.encryptedFolderEnrollTeam + case "encrypted_folder_finish_team_unenrollment": + return EventTypeArg.encryptedFolderFinishTeamUnenrollment + case "encrypted_folder_init_team_key_rotation": + return EventTypeArg.encryptedFolderInitTeamKeyRotation + case "encrypted_folder_init_team_unenrollment": + return EventTypeArg.encryptedFolderInitTeamUnenrollment + case "encrypted_folder_remove_backup_key": + return EventTypeArg.encryptedFolderRemoveBackupKey + case "encrypted_folder_rotate_team_key": + return EventTypeArg.encryptedFolderRotateTeamKey + case "encrypted_folder_unenroll_client": + return EventTypeArg.encryptedFolderUnenrollClient + case "team_encryption_key_activate_key": + return EventTypeArg.teamEncryptionKeyActivateKey + case "team_encryption_key_cancel_key_deletion": + return EventTypeArg.teamEncryptionKeyCancelKeyDeletion + case "team_encryption_key_create_key": + return EventTypeArg.teamEncryptionKeyCreateKey + case "team_encryption_key_deactivate_key": + return EventTypeArg.teamEncryptionKeyDeactivateKey + case "team_encryption_key_delete_key": + return EventTypeArg.teamEncryptionKeyDeleteKey + case "team_encryption_key_disable_key": + return EventTypeArg.teamEncryptionKeyDisableKey + case "team_encryption_key_enable_key": + return EventTypeArg.teamEncryptionKeyEnableKey + case "team_encryption_key_rotate_key": + return EventTypeArg.teamEncryptionKeyRotateKey + case "team_encryption_key_schedule_key_deletion": + return EventTypeArg.teamEncryptionKeyScheduleKeyDeletion + case "apply_naming_convention": + return EventTypeArg.applyNamingConvention + case "create_folder": + return EventTypeArg.createFolder + case "file_add": + return EventTypeArg.fileAdd + case "file_add_from_automation": + return EventTypeArg.fileAddFromAutomation + case "file_copy": + return EventTypeArg.fileCopy + case "file_delete": + return EventTypeArg.fileDelete + case "file_download": + return EventTypeArg.fileDownload + case "file_edit": + return EventTypeArg.fileEdit + case "file_get_copy_reference": + return EventTypeArg.fileGetCopyReference + case "file_locking_lock_status_changed": + return EventTypeArg.fileLockingLockStatusChanged + case "file_move": + return EventTypeArg.fileMove + case "file_permanently_delete": + return EventTypeArg.filePermanentlyDelete + case "file_preview": + return EventTypeArg.filePreview + case "file_rename": + return EventTypeArg.fileRename + case "file_restore": + return EventTypeArg.fileRestore + case "file_revert": + return EventTypeArg.fileRevert + case "file_rollback_changes": + return EventTypeArg.fileRollbackChanges + case "file_save_copy_reference": + return EventTypeArg.fileSaveCopyReference + case "folder_overview_description_changed": + return EventTypeArg.folderOverviewDescriptionChanged + case "folder_overview_item_pinned": + return EventTypeArg.folderOverviewItemPinned + case "folder_overview_item_unpinned": + return EventTypeArg.folderOverviewItemUnpinned + case "media_hub_file_downloaded": + return EventTypeArg.mediaHubFileDownloaded + case "object_label_added": + return EventTypeArg.objectLabelAdded + case "object_label_removed": + return EventTypeArg.objectLabelRemoved + case "object_label_updated_value": + return EventTypeArg.objectLabelUpdatedValue + case "organize_folder_with_tidy": + return EventTypeArg.organizeFolderWithTidy + case "replay_file_delete": + return EventTypeArg.replayFileDelete + case "replay_file_downloaded": + return EventTypeArg.replayFileDownloaded + case "replay_team_project_created": + return EventTypeArg.replayTeamProjectCreated + case "rewind_folder": + return EventTypeArg.rewindFolder + case "undo_naming_convention": + return EventTypeArg.undoNamingConvention + case "undo_organize_folder_with_tidy": + return EventTypeArg.undoOrganizeFolderWithTidy + case "user_tags_added": + return EventTypeArg.userTagsAdded + case "user_tags_removed": + return EventTypeArg.userTagsRemoved + case "email_ingest_receive_file": + return EventTypeArg.emailIngestReceiveFile + case "file_request_auto_close": + return EventTypeArg.fileRequestAutoClose + case "file_request_change": + return EventTypeArg.fileRequestChange + case "file_request_close": + return EventTypeArg.fileRequestClose + case "file_request_create": + return EventTypeArg.fileRequestCreate + case "file_request_delete": + return EventTypeArg.fileRequestDelete + case "file_request_receive_file": + return EventTypeArg.fileRequestReceiveFile + case "group_add_external_id": + return EventTypeArg.groupAddExternalId + case "group_add_member": + return EventTypeArg.groupAddMember + case "group_change_external_id": + return EventTypeArg.groupChangeExternalId + case "group_change_management_type": + return EventTypeArg.groupChangeManagementType + case "group_change_member_role": + return EventTypeArg.groupChangeMemberRole + case "group_create": + return EventTypeArg.groupCreate + case "group_delete": + return EventTypeArg.groupDelete + case "group_description_updated": + return EventTypeArg.groupDescriptionUpdated + case "group_external_sharing_setting_override_changed": + return EventTypeArg.groupExternalSharingSettingOverrideChanged + case "group_join_policy_updated": + return EventTypeArg.groupJoinPolicyUpdated + case "group_moved": + return EventTypeArg.groupMoved + case "group_remove_external_id": + return EventTypeArg.groupRemoveExternalId + case "group_remove_member": + return EventTypeArg.groupRemoveMember + case "group_rename": + return EventTypeArg.groupRename + case "account_lock_or_unlocked": + return EventTypeArg.accountLockOrUnlocked + case "emm_error": + return EventTypeArg.emmError + case "guest_admin_signed_in_via_trusted_teams": + return EventTypeArg.guestAdminSignedInViaTrustedTeams + case "guest_admin_signed_out_via_trusted_teams": + return EventTypeArg.guestAdminSignedOutViaTrustedTeams + case "login_fail": + return EventTypeArg.loginFail + case "login_success": + return EventTypeArg.loginSuccess + case "logout": + return EventTypeArg.logout + case "reseller_support_session_end": + return EventTypeArg.resellerSupportSessionEnd + case "reseller_support_session_start": + return EventTypeArg.resellerSupportSessionStart + case "sign_in_as_session_end": + return EventTypeArg.signInAsSessionEnd + case "sign_in_as_session_start": + return EventTypeArg.signInAsSessionStart + case "sso_error": + return EventTypeArg.ssoError + case "addon_assigned": + return EventTypeArg.addonAssigned + case "addon_removed": + return EventTypeArg.addonRemoved + case "backup_admin_invitation_sent": + return EventTypeArg.backupAdminInvitationSent + case "backup_invitation_opened": + return EventTypeArg.backupInvitationOpened + case "create_team_invite_link": + return EventTypeArg.createTeamInviteLink + case "delete_team_invite_link": + return EventTypeArg.deleteTeamInviteLink + case "member_add_external_id": + return EventTypeArg.memberAddExternalId + case "member_add_name": + return EventTypeArg.memberAddName + case "member_change_admin_role": + return EventTypeArg.memberChangeAdminRole + case "member_change_email": + return EventTypeArg.memberChangeEmail + case "member_change_external_id": + return EventTypeArg.memberChangeExternalId + case "member_change_membership_type": + return EventTypeArg.memberChangeMembershipType + case "member_change_name": + return EventTypeArg.memberChangeName + case "member_change_reseller_role": + return EventTypeArg.memberChangeResellerRole + case "member_change_status": + return EventTypeArg.memberChangeStatus + case "member_delete_manual_contacts": + return EventTypeArg.memberDeleteManualContacts + case "member_delete_profile_photo": + return EventTypeArg.memberDeleteProfilePhoto + case "member_folder_contents_accessed": + return EventTypeArg.memberFolderContentsAccessed + case "member_permanently_delete_account_contents": + return EventTypeArg.memberPermanentlyDeleteAccountContents + case "member_remove_external_id": + return EventTypeArg.memberRemoveExternalId + case "member_set_profile_photo": + return EventTypeArg.memberSetProfilePhoto + case "member_space_limits_add_custom_quota": + return EventTypeArg.memberSpaceLimitsAddCustomQuota + case "member_space_limits_change_custom_quota": + return EventTypeArg.memberSpaceLimitsChangeCustomQuota + case "member_space_limits_change_status": + return EventTypeArg.memberSpaceLimitsChangeStatus + case "member_space_limits_remove_custom_quota": + return EventTypeArg.memberSpaceLimitsRemoveCustomQuota + case "member_suggest": + return EventTypeArg.memberSuggest + case "member_transfer_account_contents": + return EventTypeArg.memberTransferAccountContents + case "pending_secondary_email_added": + return EventTypeArg.pendingSecondaryEmailAdded + case "product_assigned_to_member": + return EventTypeArg.productAssignedToMember + case "product_removed_from_member": + return EventTypeArg.productRemovedFromMember + case "secondary_email_deleted": + return EventTypeArg.secondaryEmailDeleted + case "secondary_email_verified": + return EventTypeArg.secondaryEmailVerified + case "secondary_mails_policy_changed": + return EventTypeArg.secondaryMailsPolicyChanged + case "binder_add_page": + return EventTypeArg.binderAddPage + case "binder_add_section": + return EventTypeArg.binderAddSection + case "binder_remove_page": + return EventTypeArg.binderRemovePage + case "binder_remove_section": + return EventTypeArg.binderRemoveSection + case "binder_rename_page": + return EventTypeArg.binderRenamePage + case "binder_rename_section": + return EventTypeArg.binderRenameSection + case "binder_reorder_page": + return EventTypeArg.binderReorderPage + case "binder_reorder_section": + return EventTypeArg.binderReorderSection + case "paper_content_add_member": + return EventTypeArg.paperContentAddMember + case "paper_content_add_to_folder": + return EventTypeArg.paperContentAddToFolder + case "paper_content_archive": + return EventTypeArg.paperContentArchive + case "paper_content_create": + return EventTypeArg.paperContentCreate + case "paper_content_permanently_delete": + return EventTypeArg.paperContentPermanentlyDelete + case "paper_content_remove_from_folder": + return EventTypeArg.paperContentRemoveFromFolder + case "paper_content_remove_member": + return EventTypeArg.paperContentRemoveMember + case "paper_content_rename": + return EventTypeArg.paperContentRename + case "paper_content_restore": + return EventTypeArg.paperContentRestore + case "paper_doc_add_comment": + return EventTypeArg.paperDocAddComment + case "paper_doc_change_member_role": + return EventTypeArg.paperDocChangeMemberRole + case "paper_doc_change_sharing_policy": + return EventTypeArg.paperDocChangeSharingPolicy + case "paper_doc_change_subscription": + return EventTypeArg.paperDocChangeSubscription + case "paper_doc_deleted": + return EventTypeArg.paperDocDeleted + case "paper_doc_delete_comment": + return EventTypeArg.paperDocDeleteComment + case "paper_doc_download": + return EventTypeArg.paperDocDownload + case "paper_doc_edit": + return EventTypeArg.paperDocEdit + case "paper_doc_edit_comment": + return EventTypeArg.paperDocEditComment + case "paper_doc_followed": + return EventTypeArg.paperDocFollowed + case "paper_doc_mention": + return EventTypeArg.paperDocMention + case "paper_doc_ownership_changed": + return EventTypeArg.paperDocOwnershipChanged + case "paper_doc_request_access": + return EventTypeArg.paperDocRequestAccess + case "paper_doc_resolve_comment": + return EventTypeArg.paperDocResolveComment + case "paper_doc_revert": + return EventTypeArg.paperDocRevert + case "paper_doc_slack_share": + return EventTypeArg.paperDocSlackShare + case "paper_doc_team_invite": + return EventTypeArg.paperDocTeamInvite + case "paper_doc_trashed": + return EventTypeArg.paperDocTrashed + case "paper_doc_unresolve_comment": + return EventTypeArg.paperDocUnresolveComment + case "paper_doc_untrashed": + return EventTypeArg.paperDocUntrashed + case "paper_doc_view": + return EventTypeArg.paperDocView + case "paper_external_view_allow": + return EventTypeArg.paperExternalViewAllow + case "paper_external_view_default_team": + return EventTypeArg.paperExternalViewDefaultTeam + case "paper_external_view_forbid": + return EventTypeArg.paperExternalViewForbid + case "paper_folder_change_subscription": + return EventTypeArg.paperFolderChangeSubscription + case "paper_folder_deleted": + return EventTypeArg.paperFolderDeleted + case "paper_folder_followed": + return EventTypeArg.paperFolderFollowed + case "paper_folder_team_invite": + return EventTypeArg.paperFolderTeamInvite + case "paper_published_link_change_permission": + return EventTypeArg.paperPublishedLinkChangePermission + case "paper_published_link_create": + return EventTypeArg.paperPublishedLinkCreate + case "paper_published_link_disabled": + return EventTypeArg.paperPublishedLinkDisabled + case "paper_published_link_view": + return EventTypeArg.paperPublishedLinkView + case "password_change": + return EventTypeArg.passwordChange + case "password_reset": + return EventTypeArg.passwordReset + case "password_reset_all": + return EventTypeArg.passwordResetAll + case "protect_action_add_collaborator": + return EventTypeArg.protectActionAddCollaborator + case "protect_action_add_link": + return EventTypeArg.protectActionAddLink + case "protect_action_delete": + return EventTypeArg.protectActionDelete + case "protect_action_export": + return EventTypeArg.protectActionExport + case "protect_action_remove_collaborator": + return EventTypeArg.protectActionRemoveCollaborator + case "protect_action_remove_link": + return EventTypeArg.protectActionRemoveLink + case "protect_action_stop_sharing": + return EventTypeArg.protectActionStopSharing + case "protect_internal_domains_changed": + return EventTypeArg.protectInternalDomainsChanged + case "classification_create_report": + return EventTypeArg.classificationCreateReport + case "classification_create_report_fail": + return EventTypeArg.classificationCreateReportFail + case "emm_create_exceptions_report": + return EventTypeArg.emmCreateExceptionsReport + case "emm_create_usage_report": + return EventTypeArg.emmCreateUsageReport + case "export_members_report": + return EventTypeArg.exportMembersReport + case "export_members_report_fail": + return EventTypeArg.exportMembersReportFail + case "external_sharing_create_report": + return EventTypeArg.externalSharingCreateReport + case "external_sharing_report_failed": + return EventTypeArg.externalSharingReportFailed + case "member_access_details_create_report": + return EventTypeArg.memberAccessDetailsCreateReport + case "member_access_details_create_report_failed": + return EventTypeArg.memberAccessDetailsCreateReportFailed + case "no_expiration_link_gen_create_report": + return EventTypeArg.noExpirationLinkGenCreateReport + case "no_expiration_link_gen_report_failed": + return EventTypeArg.noExpirationLinkGenReportFailed + case "no_password_link_gen_create_report": + return EventTypeArg.noPasswordLinkGenCreateReport + case "no_password_link_gen_report_failed": + return EventTypeArg.noPasswordLinkGenReportFailed + case "no_password_link_view_create_report": + return EventTypeArg.noPasswordLinkViewCreateReport + case "no_password_link_view_report_failed": + return EventTypeArg.noPasswordLinkViewReportFailed + case "outdated_link_view_create_report": + return EventTypeArg.outdatedLinkViewCreateReport + case "outdated_link_view_report_failed": + return EventTypeArg.outdatedLinkViewReportFailed + case "paper_admin_export_start": + return EventTypeArg.paperAdminExportStart + case "ransomware_alert_create_report": + return EventTypeArg.ransomwareAlertCreateReport + case "ransomware_alert_create_report_failed": + return EventTypeArg.ransomwareAlertCreateReportFailed + case "shared_folders_create_report": + return EventTypeArg.sharedFoldersCreateReport + case "shared_folders_create_report_failed": + return EventTypeArg.sharedFoldersCreateReportFailed + case "smart_sync_create_admin_privilege_report": + return EventTypeArg.smartSyncCreateAdminPrivilegeReport + case "team_activity_create_report": + return EventTypeArg.teamActivityCreateReport + case "team_activity_create_report_fail": + return EventTypeArg.teamActivityCreateReportFail + case "team_folders_create_report": + return EventTypeArg.teamFoldersCreateReport + case "team_folders_create_report_failed": + return EventTypeArg.teamFoldersCreateReportFailed + case "team_storage_create_report": + return EventTypeArg.teamStorageCreateReport + case "team_storage_create_report_failed": + return EventTypeArg.teamStorageCreateReportFailed + case "collection_share": + return EventTypeArg.collectionShare + case "file_transfers_file_add": + return EventTypeArg.fileTransfersFileAdd + case "file_transfers_transfer_delete": + return EventTypeArg.fileTransfersTransferDelete + case "file_transfers_transfer_download": + return EventTypeArg.fileTransfersTransferDownload + case "file_transfers_transfer_send": + return EventTypeArg.fileTransfersTransferSend + case "file_transfers_transfer_view": + return EventTypeArg.fileTransfersTransferView + case "media_hub_project_team_add": + return EventTypeArg.mediaHubProjectTeamAdd + case "media_hub_project_team_delete": + return EventTypeArg.mediaHubProjectTeamDelete + case "media_hub_project_team_role_changed": + return EventTypeArg.mediaHubProjectTeamRoleChanged + case "media_hub_shared_link_audience_changed": + return EventTypeArg.mediaHubSharedLinkAudienceChanged + case "media_hub_shared_link_created": + return EventTypeArg.mediaHubSharedLinkCreated + case "media_hub_shared_link_download_setting_changed": + return EventTypeArg.mediaHubSharedLinkDownloadSettingChanged + case "media_hub_shared_link_revoked": + return EventTypeArg.mediaHubSharedLinkRevoked + case "note_acl_invite_only": + return EventTypeArg.noteAclInviteOnly + case "note_acl_link": + return EventTypeArg.noteAclLink + case "note_acl_team_link": + return EventTypeArg.noteAclTeamLink + case "note_shared": + return EventTypeArg.noteShared + case "note_share_receive": + return EventTypeArg.noteShareReceive + case "open_note_shared": + return EventTypeArg.openNoteShared + case "replay_file_shared_link_created": + return EventTypeArg.replayFileSharedLinkCreated + case "replay_file_shared_link_modified": + return EventTypeArg.replayFileSharedLinkModified + case "replay_project_team_add": + return EventTypeArg.replayProjectTeamAdd + case "replay_project_team_delete": + return EventTypeArg.replayProjectTeamDelete + case "send_and_track_file_added": + return EventTypeArg.sendAndTrackFileAdded + case "send_and_track_file_renamed": + return EventTypeArg.sendAndTrackFileRenamed + case "send_and_track_file_updated": + return EventTypeArg.sendAndTrackFileUpdated + case "send_and_track_link_created": + return EventTypeArg.sendAndTrackLinkCreated + case "send_and_track_link_deleted": + return EventTypeArg.sendAndTrackLinkDeleted + case "send_and_track_link_updated": + return EventTypeArg.sendAndTrackLinkUpdated + case "send_and_track_link_viewed": + return EventTypeArg.sendAndTrackLinkViewed + case "send_and_track_removed_file_and_associated_links": + return EventTypeArg.sendAndTrackRemovedFileAndAssociatedLinks + case "sf_add_group": + return EventTypeArg.sfAddGroup + case "sf_allow_non_members_to_view_shared_links": + return EventTypeArg.sfAllowNonMembersToViewSharedLinks + case "sf_external_invite_warn": + return EventTypeArg.sfExternalInviteWarn + case "sf_fb_invite": + return EventTypeArg.sfFbInvite + case "sf_fb_invite_change_role": + return EventTypeArg.sfFbInviteChangeRole + case "sf_fb_uninvite": + return EventTypeArg.sfFbUninvite + case "sf_invite_group": + return EventTypeArg.sfInviteGroup + case "sf_team_grant_access": + return EventTypeArg.sfTeamGrantAccess + case "sf_team_invite": + return EventTypeArg.sfTeamInvite + case "sf_team_invite_change_role": + return EventTypeArg.sfTeamInviteChangeRole + case "sf_team_join": + return EventTypeArg.sfTeamJoin + case "sf_team_join_from_oob_link": + return EventTypeArg.sfTeamJoinFromOobLink + case "sf_team_uninvite": + return EventTypeArg.sfTeamUninvite + case "shared_content_add_invitees": + return EventTypeArg.sharedContentAddInvitees + case "shared_content_add_link_expiry": + return EventTypeArg.sharedContentAddLinkExpiry + case "shared_content_add_link_password": + return EventTypeArg.sharedContentAddLinkPassword + case "shared_content_add_member": + return EventTypeArg.sharedContentAddMember + case "shared_content_change_downloads_policy": + return EventTypeArg.sharedContentChangeDownloadsPolicy + case "shared_content_change_invitee_role": + return EventTypeArg.sharedContentChangeInviteeRole + case "shared_content_change_link_audience": + return EventTypeArg.sharedContentChangeLinkAudience + case "shared_content_change_link_expiry": + return EventTypeArg.sharedContentChangeLinkExpiry + case "shared_content_change_link_password": + return EventTypeArg.sharedContentChangeLinkPassword + case "shared_content_change_member_role": + return EventTypeArg.sharedContentChangeMemberRole + case "shared_content_change_viewer_info_policy": + return EventTypeArg.sharedContentChangeViewerInfoPolicy + case "shared_content_claim_invitation": + return EventTypeArg.sharedContentClaimInvitation + case "shared_content_copy": + return EventTypeArg.sharedContentCopy + case "shared_content_download": + return EventTypeArg.sharedContentDownload + case "shared_content_relinquish_membership": + return EventTypeArg.sharedContentRelinquishMembership + case "shared_content_remove_invitees": + return EventTypeArg.sharedContentRemoveInvitees + case "shared_content_remove_link_expiry": + return EventTypeArg.sharedContentRemoveLinkExpiry + case "shared_content_remove_link_password": + return EventTypeArg.sharedContentRemoveLinkPassword + case "shared_content_remove_member": + return EventTypeArg.sharedContentRemoveMember + case "shared_content_request_access": + return EventTypeArg.sharedContentRequestAccess + case "shared_content_restore_invitees": + return EventTypeArg.sharedContentRestoreInvitees + case "shared_content_restore_member": + return EventTypeArg.sharedContentRestoreMember + case "shared_content_unshare": + return EventTypeArg.sharedContentUnshare + case "shared_content_view": + return EventTypeArg.sharedContentView + case "shared_folder_change_link_policy": + return EventTypeArg.sharedFolderChangeLinkPolicy + case "shared_folder_change_members_inheritance_policy": + return EventTypeArg.sharedFolderChangeMembersInheritancePolicy + case "shared_folder_change_members_management_policy": + return EventTypeArg.sharedFolderChangeMembersManagementPolicy + case "shared_folder_change_members_policy": + return EventTypeArg.sharedFolderChangeMembersPolicy + case "shared_folder_create": + return EventTypeArg.sharedFolderCreate + case "shared_folder_decline_invitation": + return EventTypeArg.sharedFolderDeclineInvitation + case "shared_folder_mount": + return EventTypeArg.sharedFolderMount + case "shared_folder_nest": + return EventTypeArg.sharedFolderNest + case "shared_folder_transfer_ownership": + return EventTypeArg.sharedFolderTransferOwnership + case "shared_folder_unmount": + return EventTypeArg.sharedFolderUnmount + case "shared_link_add_expiry": + return EventTypeArg.sharedLinkAddExpiry + case "shared_link_change_expiry": + return EventTypeArg.sharedLinkChangeExpiry + case "shared_link_change_visibility": + return EventTypeArg.sharedLinkChangeVisibility + case "shared_link_copy": + return EventTypeArg.sharedLinkCopy + case "shared_link_create": + return EventTypeArg.sharedLinkCreate + case "shared_link_disable": + return EventTypeArg.sharedLinkDisable + case "shared_link_download": + return EventTypeArg.sharedLinkDownload + case "shared_link_remove_expiry": + return EventTypeArg.sharedLinkRemoveExpiry + case "shared_link_remove_visitor": + return EventTypeArg.sharedLinkRemoveVisitor + case "shared_link_settings_add_expiration": + return EventTypeArg.sharedLinkSettingsAddExpiration + case "shared_link_settings_add_password": + return EventTypeArg.sharedLinkSettingsAddPassword + case "shared_link_settings_allow_download_disabled": + return EventTypeArg.sharedLinkSettingsAllowDownloadDisabled + case "shared_link_settings_allow_download_enabled": + return EventTypeArg.sharedLinkSettingsAllowDownloadEnabled + case "shared_link_settings_change_audience": + return EventTypeArg.sharedLinkSettingsChangeAudience + case "shared_link_settings_change_expiration": + return EventTypeArg.sharedLinkSettingsChangeExpiration + case "shared_link_settings_change_password": + return EventTypeArg.sharedLinkSettingsChangePassword + case "shared_link_settings_remove_expiration": + return EventTypeArg.sharedLinkSettingsRemoveExpiration + case "shared_link_settings_remove_password": + return EventTypeArg.sharedLinkSettingsRemovePassword + case "shared_link_share": + return EventTypeArg.sharedLinkShare + case "shared_link_view": + return EventTypeArg.sharedLinkView + case "shared_note_opened": + return EventTypeArg.sharedNoteOpened + case "shmodel_disable_downloads": + return EventTypeArg.shmodelDisableDownloads + case "shmodel_enable_downloads": + return EventTypeArg.shmodelEnableDownloads + case "shmodel_group_share": + return EventTypeArg.shmodelGroupShare + case "showcase_access_granted": + return EventTypeArg.showcaseAccessGranted + case "showcase_add_member": + return EventTypeArg.showcaseAddMember + case "showcase_archived": + return EventTypeArg.showcaseArchived + case "showcase_created": + return EventTypeArg.showcaseCreated + case "showcase_delete_comment": + return EventTypeArg.showcaseDeleteComment + case "showcase_edited": + return EventTypeArg.showcaseEdited + case "showcase_edit_comment": + return EventTypeArg.showcaseEditComment + case "showcase_file_added": + return EventTypeArg.showcaseFileAdded + case "showcase_file_download": + return EventTypeArg.showcaseFileDownload + case "showcase_file_removed": + return EventTypeArg.showcaseFileRemoved + case "showcase_file_view": + return EventTypeArg.showcaseFileView + case "showcase_permanently_deleted": + return EventTypeArg.showcasePermanentlyDeleted + case "showcase_post_comment": + return EventTypeArg.showcasePostComment + case "showcase_remove_member": + return EventTypeArg.showcaseRemoveMember + case "showcase_renamed": + return EventTypeArg.showcaseRenamed + case "showcase_request_access": + return EventTypeArg.showcaseRequestAccess + case "showcase_resolve_comment": + return EventTypeArg.showcaseResolveComment + case "showcase_restored": + return EventTypeArg.showcaseRestored + case "showcase_trashed": + return EventTypeArg.showcaseTrashed + case "showcase_trashed_deprecated": + return EventTypeArg.showcaseTrashedDeprecated + case "showcase_unresolve_comment": + return EventTypeArg.showcaseUnresolveComment + case "showcase_untrashed": + return EventTypeArg.showcaseUntrashed + case "showcase_untrashed_deprecated": + return EventTypeArg.showcaseUntrashedDeprecated + case "showcase_view": + return EventTypeArg.showcaseView + case "sign_signature_request_canceled": + return EventTypeArg.signSignatureRequestCanceled + case "sign_signature_request_completed": + return EventTypeArg.signSignatureRequestCompleted + case "sign_signature_request_declined": + return EventTypeArg.signSignatureRequestDeclined + case "sign_signature_request_opened": + return EventTypeArg.signSignatureRequestOpened + case "sign_signature_request_reminder_sent": + return EventTypeArg.signSignatureRequestReminderSent + case "sign_signature_request_sent": + return EventTypeArg.signSignatureRequestSent + case "sign_template_created": + return EventTypeArg.signTemplateCreated + case "sign_template_shared": + return EventTypeArg.signTemplateShared + case "risc_security_event": + return EventTypeArg.riscSecurityEvent + case "sso_add_cert": + return EventTypeArg.ssoAddCert + case "sso_add_login_url": + return EventTypeArg.ssoAddLoginUrl + case "sso_add_logout_url": + return EventTypeArg.ssoAddLogoutUrl + case "sso_change_cert": + return EventTypeArg.ssoChangeCert + case "sso_change_login_url": + return EventTypeArg.ssoChangeLoginUrl + case "sso_change_logout_url": + return EventTypeArg.ssoChangeLogoutUrl + case "sso_change_saml_identity_mode": + return EventTypeArg.ssoChangeSamlIdentityMode + case "sso_remove_cert": + return EventTypeArg.ssoRemoveCert + case "sso_remove_login_url": + return EventTypeArg.ssoRemoveLoginUrl + case "sso_remove_logout_url": + return EventTypeArg.ssoRemoveLogoutUrl + case "team_folder_change_status": + return EventTypeArg.teamFolderChangeStatus + case "team_folder_create": + return EventTypeArg.teamFolderCreate + case "team_folder_downgrade": + return EventTypeArg.teamFolderDowngrade + case "team_folder_permanently_delete": + return EventTypeArg.teamFolderPermanentlyDelete + case "team_folder_rename": + return EventTypeArg.teamFolderRename + case "team_folder_space_limits_change_caps_type": + return EventTypeArg.teamFolderSpaceLimitsChangeCapsType + case "team_folder_space_limits_change_limit": + return EventTypeArg.teamFolderSpaceLimitsChangeLimit + case "team_folder_space_limits_change_notification_target": + return EventTypeArg.teamFolderSpaceLimitsChangeNotificationTarget + case "team_selective_sync_settings_changed": + return EventTypeArg.teamSelectiveSyncSettingsChanged + case "account_capture_change_policy": + return EventTypeArg.accountCaptureChangePolicy + case "admin_email_reminders_changed": + return EventTypeArg.adminEmailRemindersChanged + case "ai_third_party_sharing_dropbox_base_policy_changed": + return EventTypeArg.aiThirdPartySharingDropboxBasePolicyChanged + case "allow_download_disabled": + return EventTypeArg.allowDownloadDisabled + case "allow_download_enabled": + return EventTypeArg.allowDownloadEnabled + case "apple_login_change_policy": + return EventTypeArg.appleLoginChangePolicy + case "app_permissions_changed": + return EventTypeArg.appPermissionsChanged + case "camera_uploads_policy_changed": + return EventTypeArg.cameraUploadsPolicyChanged + case "capture_team_space_policy_changed": + return EventTypeArg.captureTeamSpacePolicyChanged + case "capture_transcript_policy_changed": + return EventTypeArg.captureTranscriptPolicyChanged + case "classification_change_policy": + return EventTypeArg.classificationChangePolicy + case "computer_backup_policy_changed": + return EventTypeArg.computerBackupPolicyChanged + case "content_administration_policy_changed": + return EventTypeArg.contentAdministrationPolicyChanged + case "content_deletion_protection_change_policy": + return EventTypeArg.contentDeletionProtectionChangePolicy + case "dash_external_sharing_policy_changed": + return EventTypeArg.dashExternalSharingPolicyChanged + case "data_placement_restriction_change_policy": + return EventTypeArg.dataPlacementRestrictionChangePolicy + case "data_placement_restriction_satisfy_policy": + return EventTypeArg.dataPlacementRestrictionSatisfyPolicy + case "device_approvals_add_exception": + return EventTypeArg.deviceApprovalsAddException + case "device_approvals_change_desktop_policy": + return EventTypeArg.deviceApprovalsChangeDesktopPolicy + case "device_approvals_change_mobile_policy": + return EventTypeArg.deviceApprovalsChangeMobilePolicy + case "device_approvals_change_overage_action": + return EventTypeArg.deviceApprovalsChangeOverageAction + case "device_approvals_change_unlink_action": + return EventTypeArg.deviceApprovalsChangeUnlinkAction + case "device_approvals_remove_exception": + return EventTypeArg.deviceApprovalsRemoveException + case "directory_restrictions_add_members": + return EventTypeArg.directoryRestrictionsAddMembers + case "directory_restrictions_remove_members": + return EventTypeArg.directoryRestrictionsRemoveMembers + case "dropbox_passwords_policy_changed": + return EventTypeArg.dropboxPasswordsPolicyChanged + case "email_ingest_policy_changed": + return EventTypeArg.emailIngestPolicyChanged + case "emm_add_exception": + return EventTypeArg.emmAddException + case "emm_change_policy": + return EventTypeArg.emmChangePolicy + case "emm_remove_exception": + return EventTypeArg.emmRemoveException + case "extended_version_history_change_policy": + return EventTypeArg.extendedVersionHistoryChangePolicy + case "external_drive_backup_policy_changed": + return EventTypeArg.externalDriveBackupPolicyChanged + case "file_comments_change_policy": + return EventTypeArg.fileCommentsChangePolicy + case "file_locking_policy_changed": + return EventTypeArg.fileLockingPolicyChanged + case "file_provider_migration_policy_changed": + return EventTypeArg.fileProviderMigrationPolicyChanged + case "file_requests_change_policy": + return EventTypeArg.fileRequestsChangePolicy + case "file_requests_emails_enabled": + return EventTypeArg.fileRequestsEmailsEnabled + case "file_requests_emails_restricted_to_team_only": + return EventTypeArg.fileRequestsEmailsRestrictedToTeamOnly + case "file_transfers_policy_changed": + return EventTypeArg.fileTransfersPolicyChanged + case "flexible_file_names_policy_changed": + return EventTypeArg.flexibleFileNamesPolicyChanged + case "folder_link_restriction_policy_changed": + return EventTypeArg.folderLinkRestrictionPolicyChanged + case "google_sso_change_policy": + return EventTypeArg.googleSsoChangePolicy + case "group_user_management_change_policy": + return EventTypeArg.groupUserManagementChangePolicy + case "integration_policy_changed": + return EventTypeArg.integrationPolicyChanged + case "invite_acceptance_email_policy_changed": + return EventTypeArg.inviteAcceptanceEmailPolicyChanged + case "media_hub_adding_people_policy_changed": + return EventTypeArg.mediaHubAddingPeoplePolicyChanged + case "media_hub_download_policy_changed": + return EventTypeArg.mediaHubDownloadPolicyChanged + case "media_hub_link_sharing_policy_changed": + return EventTypeArg.mediaHubLinkSharingPolicyChanged + case "member_requests_change_policy": + return EventTypeArg.memberRequestsChangePolicy + case "member_send_invite_policy_changed": + return EventTypeArg.memberSendInvitePolicyChanged + case "member_space_limits_add_exception": + return EventTypeArg.memberSpaceLimitsAddException + case "member_space_limits_change_caps_type_policy": + return EventTypeArg.memberSpaceLimitsChangeCapsTypePolicy + case "member_space_limits_change_policy": + return EventTypeArg.memberSpaceLimitsChangePolicy + case "member_space_limits_remove_exception": + return EventTypeArg.memberSpaceLimitsRemoveException + case "member_suggestions_change_policy": + return EventTypeArg.memberSuggestionsChangePolicy + case "microsoft_login_change_policy": + return EventTypeArg.microsoftLoginChangePolicy + case "microsoft_office_addin_change_policy": + return EventTypeArg.microsoftOfficeAddinChangePolicy + case "multi_team_identity_policy_changed": + return EventTypeArg.multiTeamIdentityPolicyChanged + case "network_control_change_policy": + return EventTypeArg.networkControlChangePolicy + case "paper_change_deployment_policy": + return EventTypeArg.paperChangeDeploymentPolicy + case "paper_change_member_link_policy": + return EventTypeArg.paperChangeMemberLinkPolicy + case "paper_change_member_policy": + return EventTypeArg.paperChangeMemberPolicy + case "paper_change_policy": + return EventTypeArg.paperChangePolicy + case "paper_default_folder_policy_changed": + return EventTypeArg.paperDefaultFolderPolicyChanged + case "paper_desktop_policy_changed": + return EventTypeArg.paperDesktopPolicyChanged + case "paper_enabled_users_group_addition": + return EventTypeArg.paperEnabledUsersGroupAddition + case "paper_enabled_users_group_removal": + return EventTypeArg.paperEnabledUsersGroupRemoval + case "passkey_login_policy_changed": + return EventTypeArg.passkeyLoginPolicyChanged + case "password_strength_requirements_change_policy": + return EventTypeArg.passwordStrengthRequirementsChangePolicy + case "permanent_delete_change_policy": + return EventTypeArg.permanentDeleteChangePolicy + case "previews_ai_policy_changed": + return EventTypeArg.previewsAiPolicyChanged + case "replay_adding_people_policy_changed": + return EventTypeArg.replayAddingPeoplePolicyChanged + case "replay_sharing_policy_changed": + return EventTypeArg.replaySharingPolicyChanged + case "reseller_support_change_policy": + return EventTypeArg.resellerSupportChangePolicy + case "rewind_policy_changed": + return EventTypeArg.rewindPolicyChanged + case "send_and_track_policy_changed": + return EventTypeArg.sendAndTrackPolicyChanged + case "send_external_sharing_policy_changed": + return EventTypeArg.sendExternalSharingPolicyChanged + case "send_for_signature_policy_changed": + return EventTypeArg.sendForSignaturePolicyChanged + case "shared_link_default_permissions_policy_changed": + return EventTypeArg.sharedLinkDefaultPermissionsPolicyChanged + case "sharing_change_folder_join_policy": + return EventTypeArg.sharingChangeFolderJoinPolicy + case "sharing_change_link_allow_change_expiration_policy": + return EventTypeArg.sharingChangeLinkAllowChangeExpirationPolicy + case "sharing_change_link_default_expiration_policy": + return EventTypeArg.sharingChangeLinkDefaultExpirationPolicy + case "sharing_change_link_enforce_password_policy": + return EventTypeArg.sharingChangeLinkEnforcePasswordPolicy + case "sharing_change_link_policy": + return EventTypeArg.sharingChangeLinkPolicy + case "sharing_change_member_policy": + return EventTypeArg.sharingChangeMemberPolicy + case "showcase_change_download_policy": + return EventTypeArg.showcaseChangeDownloadPolicy + case "showcase_change_enabled_policy": + return EventTypeArg.showcaseChangeEnabledPolicy + case "showcase_change_external_sharing_policy": + return EventTypeArg.showcaseChangeExternalSharingPolicy + case "sign_external_sharing_policy_changed": + return EventTypeArg.signExternalSharingPolicyChanged + case "sign_template_creation_permission_changed": + return EventTypeArg.signTemplateCreationPermissionChanged + case "smarter_smart_sync_policy_changed": + return EventTypeArg.smarterSmartSyncPolicyChanged + case "smart_sync_change_policy": + return EventTypeArg.smartSyncChangePolicy + case "smart_sync_not_opt_out": + return EventTypeArg.smartSyncNotOptOut + case "smart_sync_opt_out": + return EventTypeArg.smartSyncOptOut + case "sso_change_policy": + return EventTypeArg.ssoChangePolicy + case "stack_cross_team_access_policy_changed": + return EventTypeArg.stackCrossTeamAccessPolicyChanged + case "team_branding_policy_changed": + return EventTypeArg.teamBrandingPolicyChanged + case "team_extensions_policy_changed": + return EventTypeArg.teamExtensionsPolicyChanged + case "team_member_storage_request_policy_changed": + return EventTypeArg.teamMemberStorageRequestPolicyChanged + case "team_selective_sync_policy_changed": + return EventTypeArg.teamSelectiveSyncPolicyChanged + case "team_sharing_whitelist_subjects_changed": + return EventTypeArg.teamSharingWhitelistSubjectsChanged + case "tfa_add_exception": + return EventTypeArg.tfaAddException + case "tfa_change_policy": + return EventTypeArg.tfaChangePolicy + case "tfa_remove_exception": + return EventTypeArg.tfaRemoveException + case "top_level_content_policy_changed": + return EventTypeArg.topLevelContentPolicyChanged + case "two_account_change_policy": + return EventTypeArg.twoAccountChangePolicy + case "viewer_info_policy_changed": + return EventTypeArg.viewerInfoPolicyChanged + case "watermarking_policy_changed": + return EventTypeArg.watermarkingPolicyChanged + case "web_sessions_change_active_session_limit": + return EventTypeArg.webSessionsChangeActiveSessionLimit + case "web_sessions_change_fixed_length_policy": + return EventTypeArg.webSessionsChangeFixedLengthPolicy + case "web_sessions_change_idle_length_policy": + return EventTypeArg.webSessionsChangeIdleLengthPolicy + case "data_residency_migration_request_successful": + return EventTypeArg.dataResidencyMigrationRequestSuccessful + case "data_residency_migration_request_unsuccessful": + return EventTypeArg.dataResidencyMigrationRequestUnsuccessful + case "team_merge_from": + return EventTypeArg.teamMergeFrom + case "team_merge_to": + return EventTypeArg.teamMergeTo + case "team_profile_add_background": + return EventTypeArg.teamProfileAddBackground + case "team_profile_add_logo": + return EventTypeArg.teamProfileAddLogo + case "team_profile_change_background": + return EventTypeArg.teamProfileChangeBackground + case "team_profile_change_default_language": + return EventTypeArg.teamProfileChangeDefaultLanguage + case "team_profile_change_logo": + return EventTypeArg.teamProfileChangeLogo + case "team_profile_change_name": + return EventTypeArg.teamProfileChangeName + case "team_profile_remove_background": + return EventTypeArg.teamProfileRemoveBackground + case "team_profile_remove_logo": + return EventTypeArg.teamProfileRemoveLogo + case "passkey_add": + return EventTypeArg.passkeyAdd + case "passkey_remove": + return EventTypeArg.passkeyRemove + case "tfa_add_backup_phone": + return EventTypeArg.tfaAddBackupPhone + case "tfa_add_security_key": + return EventTypeArg.tfaAddSecurityKey + case "tfa_change_backup_phone": + return EventTypeArg.tfaChangeBackupPhone + case "tfa_change_status": + return EventTypeArg.tfaChangeStatus + case "tfa_remove_backup_phone": + return EventTypeArg.tfaRemoveBackupPhone + case "tfa_remove_security_key": + return EventTypeArg.tfaRemoveSecurityKey + case "tfa_reset": + return EventTypeArg.tfaReset + case "changed_enterprise_admin_role": + return EventTypeArg.changedEnterpriseAdminRole + case "changed_enterprise_connected_team_status": + return EventTypeArg.changedEnterpriseConnectedTeamStatus + case "ended_enterprise_admin_session": + return EventTypeArg.endedEnterpriseAdminSession + case "ended_enterprise_admin_session_deprecated": + return EventTypeArg.endedEnterpriseAdminSessionDeprecated + case "enterprise_settings_locking": + return EventTypeArg.enterpriseSettingsLocking + case "guest_admin_change_status": + return EventTypeArg.guestAdminChangeStatus + case "started_enterprise_admin_session": + return EventTypeArg.startedEnterpriseAdminSession + case "team_merge_request_accepted": + return EventTypeArg.teamMergeRequestAccepted + case "team_merge_request_accepted_shown_to_primary_team": + return EventTypeArg.teamMergeRequestAcceptedShownToPrimaryTeam + case "team_merge_request_accepted_shown_to_secondary_team": + return EventTypeArg.teamMergeRequestAcceptedShownToSecondaryTeam + case "team_merge_request_auto_canceled": + return EventTypeArg.teamMergeRequestAutoCanceled + case "team_merge_request_canceled": + return EventTypeArg.teamMergeRequestCanceled + case "team_merge_request_canceled_shown_to_primary_team": + return EventTypeArg.teamMergeRequestCanceledShownToPrimaryTeam + case "team_merge_request_canceled_shown_to_secondary_team": + return EventTypeArg.teamMergeRequestCanceledShownToSecondaryTeam + case "team_merge_request_expired": + return EventTypeArg.teamMergeRequestExpired + case "team_merge_request_expired_shown_to_primary_team": + return EventTypeArg.teamMergeRequestExpiredShownToPrimaryTeam + case "team_merge_request_expired_shown_to_secondary_team": + return EventTypeArg.teamMergeRequestExpiredShownToSecondaryTeam + case "team_merge_request_rejected_shown_to_primary_team": + return EventTypeArg.teamMergeRequestRejectedShownToPrimaryTeam + case "team_merge_request_rejected_shown_to_secondary_team": + return EventTypeArg.teamMergeRequestRejectedShownToSecondaryTeam + case "team_merge_request_reminder": + return EventTypeArg.teamMergeRequestReminder + case "team_merge_request_reminder_shown_to_primary_team": + return EventTypeArg.teamMergeRequestReminderShownToPrimaryTeam + case "team_merge_request_reminder_shown_to_secondary_team": + return EventTypeArg.teamMergeRequestReminderShownToSecondaryTeam + case "team_merge_request_revoked": + return EventTypeArg.teamMergeRequestRevoked + case "team_merge_request_sent_shown_to_primary_team": + return EventTypeArg.teamMergeRequestSentShownToPrimaryTeam + case "team_merge_request_sent_shown_to_secondary_team": + return EventTypeArg.teamMergeRequestSentShownToSecondaryTeam + case "other": + return EventTypeArg.other + default: + return EventTypeArg.other + } + default: + throw JSONSerializerError.deserializeError(type: EventTypeArg.self, json: json) + } + } + } + + /// Created member data report. + public class ExportMembersReportDetails: CustomStringConvertible, JSONRepresentable { + + func json() throws -> JSON { + try ExportMembersReportDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try ExportMembersReportDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for ExportMembersReportDetails: \(error)" + } + } + } + public class ExportMembersReportDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ExportMembersReportDetails) throws -> JSON { + let output = [String: JSON]() + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> ExportMembersReportDetails { + switch json { + case .dictionary(_): + return ExportMembersReportDetails() + default: + throw JSONSerializerError.deserializeError(type: ExportMembersReportDetails.self, json: json) + } + } + } + + /// Failed to create members data report. + public class ExportMembersReportFailDetails: CustomStringConvertible, JSONRepresentable { + /// Failure reason. + public let failureReason: Team.TeamReportFailureReason + public init(failureReason: Team.TeamReportFailureReason) { + self.failureReason = failureReason + } + + func json() throws -> JSON { + try ExportMembersReportFailDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try ExportMembersReportFailDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for ExportMembersReportFailDetails: \(error)" + } + } + } + public class ExportMembersReportFailDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ExportMembersReportFailDetails) throws -> JSON { + let output = [ + "failure_reason": try Team.TeamReportFailureReasonSerializer().serialize(value.failureReason), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> ExportMembersReportFailDetails { + switch json { + case .dictionary(let dict): + let failureReason = try Team.TeamReportFailureReasonSerializer().deserialize(dict["failure_reason"] ?? .null) + return ExportMembersReportFailDetails(failureReason: failureReason) + default: + throw JSONSerializerError.deserializeError(type: ExportMembersReportFailDetails.self, json: json) + } + } + } + + /// The ExportMembersReportFailType struct + public class ExportMembersReportFailType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try ExportMembersReportFailTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try ExportMembersReportFailTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for ExportMembersReportFailType: \(error)" + } + } + } + public class ExportMembersReportFailTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ExportMembersReportFailType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> ExportMembersReportFailType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ExportMembersReportFailType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ExportMembersReportFailType.self, json: json) + } + } + } + + /// The ExportMembersReportType struct + public class ExportMembersReportType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try ExportMembersReportTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try ExportMembersReportTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for ExportMembersReportType: \(error)" + } + } + } + public class ExportMembersReportTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ExportMembersReportType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> ExportMembersReportType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ExportMembersReportType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ExportMembersReportType.self, json: json) + } + } + } + + /// Accepted/opted out of extended version history. + public class ExtendedVersionHistoryChangePolicyDetails: CustomStringConvertible, JSONRepresentable { + /// New extended version history policy. + public let newValue: TeamLog.ExtendedVersionHistoryPolicy + /// Previous extended version history policy. Might be missing due to historical data gap. + public let previousValue: TeamLog.ExtendedVersionHistoryPolicy? + public init(newValue: TeamLog.ExtendedVersionHistoryPolicy, previousValue: TeamLog.ExtendedVersionHistoryPolicy? = nil) { + self.newValue = newValue + self.previousValue = previousValue + } + + func json() throws -> JSON { + try ExtendedVersionHistoryChangePolicyDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try ExtendedVersionHistoryChangePolicyDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for ExtendedVersionHistoryChangePolicyDetails: \(error)" + } + } + } + public class ExtendedVersionHistoryChangePolicyDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ExtendedVersionHistoryChangePolicyDetails) throws -> JSON { + let output = [ + "new_value": try TeamLog.ExtendedVersionHistoryPolicySerializer().serialize(value.newValue), + "previous_value": try NullableSerializer(TeamLog.ExtendedVersionHistoryPolicySerializer()).serialize(value.previousValue), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> ExtendedVersionHistoryChangePolicyDetails { + switch json { + case .dictionary(let dict): + let newValue = try TeamLog.ExtendedVersionHistoryPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try NullableSerializer(TeamLog.ExtendedVersionHistoryPolicySerializer()).deserialize(dict["previous_value"] ?? .null) + return ExtendedVersionHistoryChangePolicyDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: ExtendedVersionHistoryChangePolicyDetails.self, json: json) + } + } + } + + /// The ExtendedVersionHistoryChangePolicyType struct + public class ExtendedVersionHistoryChangePolicyType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try ExtendedVersionHistoryChangePolicyTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try ExtendedVersionHistoryChangePolicyTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for ExtendedVersionHistoryChangePolicyType: \(error)" + } + } + } + public class ExtendedVersionHistoryChangePolicyTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ExtendedVersionHistoryChangePolicyType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> ExtendedVersionHistoryChangePolicyType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ExtendedVersionHistoryChangePolicyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ExtendedVersionHistoryChangePolicyType.self, json: json) + } + } + } + + /// The ExtendedVersionHistoryPolicy union + public enum ExtendedVersionHistoryPolicy: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case explicitlyLimited + /// An unspecified error. + case explicitlyUnlimited + /// An unspecified error. + case implicitlyLimited + /// An unspecified error. + case implicitlyUnlimited + /// An unspecified error. + case other + + func json() throws -> JSON { + try ExtendedVersionHistoryPolicySerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try ExtendedVersionHistoryPolicySerializer().serialize(self)))" + } catch { + return "Failed to generate description for ExtendedVersionHistoryPolicy: \(error)" + } + } + } + public class ExtendedVersionHistoryPolicySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ExtendedVersionHistoryPolicy) throws -> JSON { + switch value { + case .explicitlyLimited: + var d = [String: JSON]() + d[".tag"] = .str("explicitly_limited") + return .dictionary(d) + case .explicitlyUnlimited: + var d = [String: JSON]() + d[".tag"] = .str("explicitly_unlimited") + return .dictionary(d) + case .implicitlyLimited: + var d = [String: JSON]() + d[".tag"] = .str("implicitly_limited") + return .dictionary(d) + case .implicitlyUnlimited: + var d = [String: JSON]() + d[".tag"] = .str("implicitly_unlimited") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> ExtendedVersionHistoryPolicy { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "explicitly_limited": + return ExtendedVersionHistoryPolicy.explicitlyLimited + case "explicitly_unlimited": + return ExtendedVersionHistoryPolicy.explicitlyUnlimited + case "implicitly_limited": + return ExtendedVersionHistoryPolicy.implicitlyLimited + case "implicitly_unlimited": + return ExtendedVersionHistoryPolicy.implicitlyUnlimited + case "other": + return ExtendedVersionHistoryPolicy.other + default: + return ExtendedVersionHistoryPolicy.other + } + default: + throw JSONSerializerError.deserializeError(type: ExtendedVersionHistoryPolicy.self, json: json) + } + } + } + + /// External Drive Backup eligibility status + public enum ExternalDriveBackupEligibilityStatus: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case exceedLicenseCap + /// An unspecified error. + case skip + /// An unspecified error. + case success + /// An unspecified error. + case other + + func json() throws -> JSON { + try ExternalDriveBackupEligibilityStatusSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try ExternalDriveBackupEligibilityStatusSerializer().serialize(self)))" + } catch { + return "Failed to generate description for ExternalDriveBackupEligibilityStatus: \(error)" + } + } + } + public class ExternalDriveBackupEligibilityStatusSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ExternalDriveBackupEligibilityStatus) throws -> JSON { + switch value { + case .exceedLicenseCap: + var d = [String: JSON]() + d[".tag"] = .str("exceed_license_cap") + return .dictionary(d) + case .skip: + var d = [String: JSON]() + d[".tag"] = .str("skip") + return .dictionary(d) + case .success: + var d = [String: JSON]() + d[".tag"] = .str("success") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> ExternalDriveBackupEligibilityStatus { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "exceed_license_cap": + return ExternalDriveBackupEligibilityStatus.exceedLicenseCap + case "skip": + return ExternalDriveBackupEligibilityStatus.skip + case "success": + return ExternalDriveBackupEligibilityStatus.success + case "other": + return ExternalDriveBackupEligibilityStatus.other + default: + return ExternalDriveBackupEligibilityStatus.other + } + default: + throw JSONSerializerError.deserializeError(type: ExternalDriveBackupEligibilityStatus.self, json: json) + } + } + } + + /// Checked external drive backup eligibility status. + public class ExternalDriveBackupEligibilityStatusCheckedDetails: CustomStringConvertible, JSONRepresentable { + /// Device's session logged information. + public let desktopDeviceSessionInfo: TeamLog.DesktopDeviceSessionLogInfo + /// Current eligibility status of external drive backup. + public let status: TeamLog.ExternalDriveBackupEligibilityStatus + /// Total number of valid external drive backup for all the team members. + public let numberOfExternalDriveBackup: UInt64 + public init(desktopDeviceSessionInfo: TeamLog.DesktopDeviceSessionLogInfo, status: TeamLog.ExternalDriveBackupEligibilityStatus, numberOfExternalDriveBackup: UInt64) { + self.desktopDeviceSessionInfo = desktopDeviceSessionInfo + self.status = status + comparableValidator()(numberOfExternalDriveBackup) + self.numberOfExternalDriveBackup = numberOfExternalDriveBackup + } + + func json() throws -> JSON { + try ExternalDriveBackupEligibilityStatusCheckedDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try ExternalDriveBackupEligibilityStatusCheckedDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for ExternalDriveBackupEligibilityStatusCheckedDetails: \(error)" + } + } + } + public class ExternalDriveBackupEligibilityStatusCheckedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ExternalDriveBackupEligibilityStatusCheckedDetails) throws -> JSON { + let output = [ + "desktop_device_session_info": try TeamLog.DesktopDeviceSessionLogInfoSerializer().serialize(value.desktopDeviceSessionInfo), + "status": try TeamLog.ExternalDriveBackupEligibilityStatusSerializer().serialize(value.status), + "number_of_external_drive_backup": try Serialization._UInt64Serializer.serialize(value.numberOfExternalDriveBackup), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> ExternalDriveBackupEligibilityStatusCheckedDetails { + switch json { + case .dictionary(let dict): + let desktopDeviceSessionInfo = try TeamLog.DesktopDeviceSessionLogInfoSerializer().deserialize(dict["desktop_device_session_info"] ?? .null) + let status = try TeamLog.ExternalDriveBackupEligibilityStatusSerializer().deserialize(dict["status"] ?? .null) + let numberOfExternalDriveBackup = try Serialization._UInt64Serializer.deserialize(dict["number_of_external_drive_backup"] ?? .null) + return ExternalDriveBackupEligibilityStatusCheckedDetails(desktopDeviceSessionInfo: desktopDeviceSessionInfo, status: status, numberOfExternalDriveBackup: numberOfExternalDriveBackup) + default: + throw JSONSerializerError.deserializeError(type: ExternalDriveBackupEligibilityStatusCheckedDetails.self, json: json) + } + } + } + + /// The ExternalDriveBackupEligibilityStatusCheckedType struct + public class ExternalDriveBackupEligibilityStatusCheckedType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try ExternalDriveBackupEligibilityStatusCheckedTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try ExternalDriveBackupEligibilityStatusCheckedTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for ExternalDriveBackupEligibilityStatusCheckedType: \(error)" + } + } + } + public class ExternalDriveBackupEligibilityStatusCheckedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ExternalDriveBackupEligibilityStatusCheckedType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> ExternalDriveBackupEligibilityStatusCheckedType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ExternalDriveBackupEligibilityStatusCheckedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ExternalDriveBackupEligibilityStatusCheckedType.self, json: json) + } + } + } + + /// Policy for controlling team access to external drive backup feature + public enum ExternalDriveBackupPolicy: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case default_ + /// An unspecified error. + case disabled + /// An unspecified error. + case enabled + /// An unspecified error. + case other + + func json() throws -> JSON { + try ExternalDriveBackupPolicySerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try ExternalDriveBackupPolicySerializer().serialize(self)))" + } catch { + return "Failed to generate description for ExternalDriveBackupPolicy: \(error)" + } + } + } + public class ExternalDriveBackupPolicySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ExternalDriveBackupPolicy) throws -> JSON { + switch value { + case .default_: + var d = [String: JSON]() + d[".tag"] = .str("default") + return .dictionary(d) + case .disabled: + var d = [String: JSON]() + d[".tag"] = .str("disabled") + return .dictionary(d) + case .enabled: + var d = [String: JSON]() + d[".tag"] = .str("enabled") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> ExternalDriveBackupPolicy { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "default": + return ExternalDriveBackupPolicy.default_ + case "disabled": + return ExternalDriveBackupPolicy.disabled + case "enabled": + return ExternalDriveBackupPolicy.enabled + case "other": + return ExternalDriveBackupPolicy.other + default: + return ExternalDriveBackupPolicy.other + } + default: + throw JSONSerializerError.deserializeError(type: ExternalDriveBackupPolicy.self, json: json) + } + } + } + + /// Changed external drive backup policy for team. + public class ExternalDriveBackupPolicyChangedDetails: CustomStringConvertible, JSONRepresentable { + /// New external drive backup policy. + public let newValue: TeamLog.ExternalDriveBackupPolicy + /// Previous external drive backup policy. + public let previousValue: TeamLog.ExternalDriveBackupPolicy + public init(newValue: TeamLog.ExternalDriveBackupPolicy, previousValue: TeamLog.ExternalDriveBackupPolicy) { + self.newValue = newValue + self.previousValue = previousValue + } + + func json() throws -> JSON { + try ExternalDriveBackupPolicyChangedDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try ExternalDriveBackupPolicyChangedDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for ExternalDriveBackupPolicyChangedDetails: \(error)" + } + } + } + public class ExternalDriveBackupPolicyChangedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ExternalDriveBackupPolicyChangedDetails) throws -> JSON { + let output = [ + "new_value": try TeamLog.ExternalDriveBackupPolicySerializer().serialize(value.newValue), + "previous_value": try TeamLog.ExternalDriveBackupPolicySerializer().serialize(value.previousValue), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> ExternalDriveBackupPolicyChangedDetails { + switch json { + case .dictionary(let dict): + let newValue = try TeamLog.ExternalDriveBackupPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try TeamLog.ExternalDriveBackupPolicySerializer().deserialize(dict["previous_value"] ?? .null) + return ExternalDriveBackupPolicyChangedDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: ExternalDriveBackupPolicyChangedDetails.self, json: json) + } + } + } + + /// The ExternalDriveBackupPolicyChangedType struct + public class ExternalDriveBackupPolicyChangedType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try ExternalDriveBackupPolicyChangedTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try ExternalDriveBackupPolicyChangedTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for ExternalDriveBackupPolicyChangedType: \(error)" + } + } + } + public class ExternalDriveBackupPolicyChangedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ExternalDriveBackupPolicyChangedType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> ExternalDriveBackupPolicyChangedType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ExternalDriveBackupPolicyChangedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ExternalDriveBackupPolicyChangedType.self, json: json) + } + } + } + + /// External Drive Backup status + public enum ExternalDriveBackupStatus: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case broken + /// An unspecified error. + case created + /// An unspecified error. + case createdOrBroken + /// An unspecified error. + case deleted + /// An unspecified error. + case empty + /// An unspecified error. + case unknown + /// An unspecified error. + case other + + func json() throws -> JSON { + try ExternalDriveBackupStatusSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try ExternalDriveBackupStatusSerializer().serialize(self)))" + } catch { + return "Failed to generate description for ExternalDriveBackupStatus: \(error)" + } + } + } + public class ExternalDriveBackupStatusSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ExternalDriveBackupStatus) throws -> JSON { + switch value { + case .broken: + var d = [String: JSON]() + d[".tag"] = .str("broken") + return .dictionary(d) + case .created: + var d = [String: JSON]() + d[".tag"] = .str("created") + return .dictionary(d) + case .createdOrBroken: + var d = [String: JSON]() + d[".tag"] = .str("created_or_broken") + return .dictionary(d) + case .deleted: + var d = [String: JSON]() + d[".tag"] = .str("deleted") + return .dictionary(d) + case .empty: + var d = [String: JSON]() + d[".tag"] = .str("empty") + return .dictionary(d) + case .unknown: + var d = [String: JSON]() + d[".tag"] = .str("unknown") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> ExternalDriveBackupStatus { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "broken": + return ExternalDriveBackupStatus.broken + case "created": + return ExternalDriveBackupStatus.created + case "created_or_broken": + return ExternalDriveBackupStatus.createdOrBroken + case "deleted": + return ExternalDriveBackupStatus.deleted + case "empty": + return ExternalDriveBackupStatus.empty + case "unknown": + return ExternalDriveBackupStatus.unknown + case "other": + return ExternalDriveBackupStatus.other + default: + return ExternalDriveBackupStatus.other + } + default: + throw JSONSerializerError.deserializeError(type: ExternalDriveBackupStatus.self, json: json) + } + } + } + + /// Modified external drive backup. + public class ExternalDriveBackupStatusChangedDetails: CustomStringConvertible, JSONRepresentable { + /// Device's session logged information. + public let desktopDeviceSessionInfo: TeamLog.DesktopDeviceSessionLogInfo + /// Previous status of this external drive backup. + public let previousValue: TeamLog.ExternalDriveBackupStatus + /// Next status of this external drive backup. + public let newValue: TeamLog.ExternalDriveBackupStatus + public init(desktopDeviceSessionInfo: TeamLog.DesktopDeviceSessionLogInfo, previousValue: TeamLog.ExternalDriveBackupStatus, newValue: TeamLog.ExternalDriveBackupStatus) { + self.desktopDeviceSessionInfo = desktopDeviceSessionInfo + self.previousValue = previousValue + self.newValue = newValue + } + + func json() throws -> JSON { + try ExternalDriveBackupStatusChangedDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try ExternalDriveBackupStatusChangedDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for ExternalDriveBackupStatusChangedDetails: \(error)" + } + } + } + public class ExternalDriveBackupStatusChangedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ExternalDriveBackupStatusChangedDetails) throws -> JSON { + let output = [ + "desktop_device_session_info": try TeamLog.DesktopDeviceSessionLogInfoSerializer().serialize(value.desktopDeviceSessionInfo), + "previous_value": try TeamLog.ExternalDriveBackupStatusSerializer().serialize(value.previousValue), + "new_value": try TeamLog.ExternalDriveBackupStatusSerializer().serialize(value.newValue), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> ExternalDriveBackupStatusChangedDetails { + switch json { + case .dictionary(let dict): + let desktopDeviceSessionInfo = try TeamLog.DesktopDeviceSessionLogInfoSerializer().deserialize(dict["desktop_device_session_info"] ?? .null) + let previousValue = try TeamLog.ExternalDriveBackupStatusSerializer().deserialize(dict["previous_value"] ?? .null) + let newValue = try TeamLog.ExternalDriveBackupStatusSerializer().deserialize(dict["new_value"] ?? .null) + return ExternalDriveBackupStatusChangedDetails(desktopDeviceSessionInfo: desktopDeviceSessionInfo, previousValue: previousValue, newValue: newValue) + default: + throw JSONSerializerError.deserializeError(type: ExternalDriveBackupStatusChangedDetails.self, json: json) + } + } + } + + /// The ExternalDriveBackupStatusChangedType struct + public class ExternalDriveBackupStatusChangedType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try ExternalDriveBackupStatusChangedTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try ExternalDriveBackupStatusChangedTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for ExternalDriveBackupStatusChangedType: \(error)" + } + } + } + public class ExternalDriveBackupStatusChangedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ExternalDriveBackupStatusChangedType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> ExternalDriveBackupStatusChangedType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ExternalDriveBackupStatusChangedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ExternalDriveBackupStatusChangedType.self, json: json) + } + } + } + + /// Created External sharing report. + public class ExternalSharingCreateReportDetails: CustomStringConvertible, JSONRepresentable { + + func json() throws -> JSON { + try ExternalSharingCreateReportDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try ExternalSharingCreateReportDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for ExternalSharingCreateReportDetails: \(error)" + } + } + } + public class ExternalSharingCreateReportDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ExternalSharingCreateReportDetails) throws -> JSON { + let output = [String: JSON]() + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> ExternalSharingCreateReportDetails { + switch json { + case .dictionary(_): + return ExternalSharingCreateReportDetails() + default: + throw JSONSerializerError.deserializeError(type: ExternalSharingCreateReportDetails.self, json: json) + } + } + } + + /// The ExternalSharingCreateReportType struct + public class ExternalSharingCreateReportType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try ExternalSharingCreateReportTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try ExternalSharingCreateReportTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for ExternalSharingCreateReportType: \(error)" + } + } + } + public class ExternalSharingCreateReportTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ExternalSharingCreateReportType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> ExternalSharingCreateReportType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ExternalSharingCreateReportType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ExternalSharingCreateReportType.self, json: json) + } + } + } + + /// Couldn't create External sharing report. + public class ExternalSharingReportFailedDetails: CustomStringConvertible, JSONRepresentable { + /// Failure reason. + public let failureReason: Team.TeamReportFailureReason + public init(failureReason: Team.TeamReportFailureReason) { + self.failureReason = failureReason + } + + func json() throws -> JSON { + try ExternalSharingReportFailedDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try ExternalSharingReportFailedDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for ExternalSharingReportFailedDetails: \(error)" + } + } + } + public class ExternalSharingReportFailedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ExternalSharingReportFailedDetails) throws -> JSON { + let output = [ + "failure_reason": try Team.TeamReportFailureReasonSerializer().serialize(value.failureReason), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> ExternalSharingReportFailedDetails { + switch json { + case .dictionary(let dict): + let failureReason = try Team.TeamReportFailureReasonSerializer().deserialize(dict["failure_reason"] ?? .null) + return ExternalSharingReportFailedDetails(failureReason: failureReason) + default: + throw JSONSerializerError.deserializeError(type: ExternalSharingReportFailedDetails.self, json: json) + } + } + } + + /// The ExternalSharingReportFailedType struct + public class ExternalSharingReportFailedType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try ExternalSharingReportFailedTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try ExternalSharingReportFailedTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for ExternalSharingReportFailedType: \(error)" + } + } + } + public class ExternalSharingReportFailedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ExternalSharingReportFailedType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> ExternalSharingReportFailedType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ExternalSharingReportFailedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ExternalSharingReportFailedType.self, json: json) + } + } + } + + /// External sharing setting + public enum ExternalSharingSetting: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case allow + /// An unspecified error. + case forbid + /// An unspecified error. + case unset + /// An unspecified error. + case other + + func json() throws -> JSON { + try ExternalSharingSettingSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try ExternalSharingSettingSerializer().serialize(self)))" + } catch { + return "Failed to generate description for ExternalSharingSetting: \(error)" + } + } + } + public class ExternalSharingSettingSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ExternalSharingSetting) throws -> JSON { + switch value { + case .allow: + var d = [String: JSON]() + d[".tag"] = .str("allow") + return .dictionary(d) + case .forbid: + var d = [String: JSON]() + d[".tag"] = .str("forbid") + return .dictionary(d) + case .unset: + var d = [String: JSON]() + d[".tag"] = .str("unset") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> ExternalSharingSetting { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "allow": + return ExternalSharingSetting.allow + case "forbid": + return ExternalSharingSetting.forbid + case "unset": + return ExternalSharingSetting.unset + case "other": + return ExternalSharingSetting.other + default: + return ExternalSharingSetting.other + } + default: + throw JSONSerializerError.deserializeError(type: ExternalSharingSetting.self, json: json) + } + } + } + + /// A user without a Dropbox account. + public class ExternalUserLogInfo: CustomStringConvertible, JSONRepresentable { + /// An external user identifier. + public let userIdentifier: String + /// Identifier type. + public let identifierType: TeamLog.IdentifierType + public init(userIdentifier: String, identifierType: TeamLog.IdentifierType) { + stringValidator()(userIdentifier) + self.userIdentifier = userIdentifier + self.identifierType = identifierType + } + + func json() throws -> JSON { + try ExternalUserLogInfoSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try ExternalUserLogInfoSerializer().serialize(self)))" + } catch { + return "Failed to generate description for ExternalUserLogInfo: \(error)" + } + } + } + public class ExternalUserLogInfoSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ExternalUserLogInfo) throws -> JSON { + let output = [ + "user_identifier": try Serialization._StringSerializer.serialize(value.userIdentifier), + "identifier_type": try TeamLog.IdentifierTypeSerializer().serialize(value.identifierType), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> ExternalUserLogInfo { + switch json { + case .dictionary(let dict): + let userIdentifier = try Serialization._StringSerializer.deserialize(dict["user_identifier"] ?? .null) + let identifierType = try TeamLog.IdentifierTypeSerializer().deserialize(dict["identifier_type"] ?? .null) + return ExternalUserLogInfo(userIdentifier: userIdentifier, identifierType: identifierType) + default: + throw JSONSerializerError.deserializeError(type: ExternalUserLogInfo.self, json: json) + } + } + } + + /// Provides details about a failure + public class FailureDetailsLogInfo: CustomStringConvertible, JSONRepresentable { + /// A user friendly explanation of the error. + public let userFriendlyMessage: String? + /// A technical explanation of the error. This is relevant for some errors. + public let technicalErrorMessage: String? + public init(userFriendlyMessage: String? = nil, technicalErrorMessage: String? = nil) { + nullableValidator(stringValidator())(userFriendlyMessage) + self.userFriendlyMessage = userFriendlyMessage + nullableValidator(stringValidator())(technicalErrorMessage) + self.technicalErrorMessage = technicalErrorMessage + } + + func json() throws -> JSON { + try FailureDetailsLogInfoSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FailureDetailsLogInfoSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FailureDetailsLogInfo: \(error)" + } + } + } + public class FailureDetailsLogInfoSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FailureDetailsLogInfo) throws -> JSON { + let output = [ + "user_friendly_message": try NullableSerializer(Serialization._StringSerializer).serialize(value.userFriendlyMessage), + "technical_error_message": try NullableSerializer(Serialization._StringSerializer).serialize(value.technicalErrorMessage), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FailureDetailsLogInfo { + switch json { + case .dictionary(let dict): + let userFriendlyMessage = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["user_friendly_message"] ?? .null) + let technicalErrorMessage = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["technical_error_message"] ?? .null) + return FailureDetailsLogInfo(userFriendlyMessage: userFriendlyMessage, technicalErrorMessage: technicalErrorMessage) + default: + throw JSONSerializerError.deserializeError(type: FailureDetailsLogInfo.self, json: json) + } + } + } + + /// The FedAdminRole union + public enum FedAdminRole: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case enterpriseAdmin + /// An unspecified error. + case notEnterpriseAdmin + /// An unspecified error. + case other + + func json() throws -> JSON { + try FedAdminRoleSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FedAdminRoleSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FedAdminRole: \(error)" + } + } + } + public class FedAdminRoleSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FedAdminRole) throws -> JSON { + switch value { + case .enterpriseAdmin: + var d = [String: JSON]() + d[".tag"] = .str("enterprise_admin") + return .dictionary(d) + case .notEnterpriseAdmin: + var d = [String: JSON]() + d[".tag"] = .str("not_enterprise_admin") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> FedAdminRole { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "enterprise_admin": + return FedAdminRole.enterpriseAdmin + case "not_enterprise_admin": + return FedAdminRole.notEnterpriseAdmin + case "other": + return FedAdminRole.other + default: + return FedAdminRole.other + } + default: + throw JSONSerializerError.deserializeError(type: FedAdminRole.self, json: json) + } + } + } + + /// More details about the organization or team. + public enum FedExtraDetails: CustomStringConvertible, JSONRepresentable { + /// More details about the organization. + case organization(TeamLog.OrganizationDetails) + /// More details about the team. + case team(TeamLog.TeamDetails) + /// An unspecified error. + case other + + func json() throws -> JSON { + try FedExtraDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FedExtraDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FedExtraDetails: \(error)" + } + } + } + public class FedExtraDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FedExtraDetails) throws -> JSON { + switch value { + case .organization(let arg): + var d = try Serialization.getFields(TeamLog.OrganizationDetailsSerializer().serialize(arg)) + d[".tag"] = .str("organization") + return .dictionary(d) + case .team(let arg): + var d = try Serialization.getFields(TeamLog.TeamDetailsSerializer().serialize(arg)) + d[".tag"] = .str("team") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> FedExtraDetails { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "organization": + let v = try TeamLog.OrganizationDetailsSerializer().deserialize(json) + return FedExtraDetails.organization(v) + case "team": + let v = try TeamLog.TeamDetailsSerializer().deserialize(json) + return FedExtraDetails.team(v) + case "other": + return FedExtraDetails.other + default: + return FedExtraDetails.other + } + default: + throw JSONSerializerError.deserializeError(type: FedExtraDetails.self, json: json) + } + } + } + + /// The FedHandshakeAction union + public enum FedHandshakeAction: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case acceptedInvite + /// An unspecified error. + case canceledInvite + /// An unspecified error. + case inviteExpired + /// An unspecified error. + case invited + /// An unspecified error. + case rejectedInvite + /// An unspecified error. + case removedTeam + /// An unspecified error. + case other + + func json() throws -> JSON { + try FedHandshakeActionSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FedHandshakeActionSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FedHandshakeAction: \(error)" + } + } + } + public class FedHandshakeActionSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FedHandshakeAction) throws -> JSON { + switch value { + case .acceptedInvite: + var d = [String: JSON]() + d[".tag"] = .str("accepted_invite") + return .dictionary(d) + case .canceledInvite: + var d = [String: JSON]() + d[".tag"] = .str("canceled_invite") + return .dictionary(d) + case .inviteExpired: + var d = [String: JSON]() + d[".tag"] = .str("invite_expired") + return .dictionary(d) + case .invited: + var d = [String: JSON]() + d[".tag"] = .str("invited") + return .dictionary(d) + case .rejectedInvite: + var d = [String: JSON]() + d[".tag"] = .str("rejected_invite") + return .dictionary(d) + case .removedTeam: + var d = [String: JSON]() + d[".tag"] = .str("removed_team") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> FedHandshakeAction { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "accepted_invite": + return FedHandshakeAction.acceptedInvite + case "canceled_invite": + return FedHandshakeAction.canceledInvite + case "invite_expired": + return FedHandshakeAction.inviteExpired + case "invited": + return FedHandshakeAction.invited + case "rejected_invite": + return FedHandshakeAction.rejectedInvite + case "removed_team": + return FedHandshakeAction.removedTeam + case "other": + return FedHandshakeAction.other + default: + return FedHandshakeAction.other + } + default: + throw JSONSerializerError.deserializeError(type: FedHandshakeAction.self, json: json) + } + } + } + + /// Additional information about the organization or connected team + public enum FederationStatusChangeAdditionalInfo: CustomStringConvertible, JSONRepresentable { + /// The name of the team + case connectedTeamName(TeamLog.ConnectedTeamName) + /// The email to which the request was sent + case nonTrustedTeamDetails(TeamLog.NonTrustedTeamDetails) + /// The name of the organization + case organizationName(TeamLog.OrganizationName) + /// An unspecified error. + case other + + func json() throws -> JSON { + try FederationStatusChangeAdditionalInfoSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FederationStatusChangeAdditionalInfoSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FederationStatusChangeAdditionalInfo: \(error)" + } + } + } + public class FederationStatusChangeAdditionalInfoSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FederationStatusChangeAdditionalInfo) throws -> JSON { + switch value { + case .connectedTeamName(let arg): + var d = try Serialization.getFields(TeamLog.ConnectedTeamNameSerializer().serialize(arg)) + d[".tag"] = .str("connected_team_name") + return .dictionary(d) + case .nonTrustedTeamDetails(let arg): + var d = try Serialization.getFields(TeamLog.NonTrustedTeamDetailsSerializer().serialize(arg)) + d[".tag"] = .str("non_trusted_team_details") + return .dictionary(d) + case .organizationName(let arg): + var d = try Serialization.getFields(TeamLog.OrganizationNameSerializer().serialize(arg)) + d[".tag"] = .str("organization_name") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> FederationStatusChangeAdditionalInfo { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "connected_team_name": + let v = try TeamLog.ConnectedTeamNameSerializer().deserialize(json) + return FederationStatusChangeAdditionalInfo.connectedTeamName(v) + case "non_trusted_team_details": + let v = try TeamLog.NonTrustedTeamDetailsSerializer().deserialize(json) + return FederationStatusChangeAdditionalInfo.nonTrustedTeamDetails(v) + case "organization_name": + let v = try TeamLog.OrganizationNameSerializer().deserialize(json) + return FederationStatusChangeAdditionalInfo.organizationName(v) + case "other": + return FederationStatusChangeAdditionalInfo.other + default: + return FederationStatusChangeAdditionalInfo.other + } + default: + throw JSONSerializerError.deserializeError(type: FederationStatusChangeAdditionalInfo.self, json: json) + } + } + } + + /// Added file comment. + public class FileAddCommentDetails: CustomStringConvertible, JSONRepresentable { + /// Comment text. + public let commentText: String? + public init(commentText: String? = nil) { + nullableValidator(stringValidator())(commentText) + self.commentText = commentText + } + + func json() throws -> JSON { + try FileAddCommentDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileAddCommentDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileAddCommentDetails: \(error)" + } + } + } + public class FileAddCommentDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileAddCommentDetails) throws -> JSON { + let output = [ + "comment_text": try NullableSerializer(Serialization._StringSerializer).serialize(value.commentText), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileAddCommentDetails { + switch json { + case .dictionary(let dict): + let commentText = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["comment_text"] ?? .null) + return FileAddCommentDetails(commentText: commentText) + default: + throw JSONSerializerError.deserializeError(type: FileAddCommentDetails.self, json: json) + } + } + } + + /// The FileAddCommentType struct + public class FileAddCommentType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try FileAddCommentTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileAddCommentTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileAddCommentType: \(error)" + } + } + } + public class FileAddCommentTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileAddCommentType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileAddCommentType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return FileAddCommentType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: FileAddCommentType.self, json: json) + } + } + } + + /// Added files and/or folders. + public class FileAddDetails: CustomStringConvertible, JSONRepresentable { + + func json() throws -> JSON { + try FileAddDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileAddDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileAddDetails: \(error)" + } + } + } + public class FileAddDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileAddDetails) throws -> JSON { + let output = [String: JSON]() + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileAddDetails { + switch json { + case .dictionary(_): + return FileAddDetails() + default: + throw JSONSerializerError.deserializeError(type: FileAddDetails.self, json: json) + } + } + } + + /// Added files and/or folders from automation. + public class FileAddFromAutomationDetails: CustomStringConvertible, JSONRepresentable { + + func json() throws -> JSON { + try FileAddFromAutomationDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileAddFromAutomationDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileAddFromAutomationDetails: \(error)" + } + } + } + public class FileAddFromAutomationDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileAddFromAutomationDetails) throws -> JSON { + let output = [String: JSON]() + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileAddFromAutomationDetails { + switch json { + case .dictionary(_): + return FileAddFromAutomationDetails() + default: + throw JSONSerializerError.deserializeError(type: FileAddFromAutomationDetails.self, json: json) + } + } + } + + /// The FileAddFromAutomationType struct + public class FileAddFromAutomationType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try FileAddFromAutomationTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileAddFromAutomationTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileAddFromAutomationType: \(error)" + } + } + } + public class FileAddFromAutomationTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileAddFromAutomationType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileAddFromAutomationType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return FileAddFromAutomationType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: FileAddFromAutomationType.self, json: json) + } + } + } + + /// The FileAddType struct + public class FileAddType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try FileAddTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileAddTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileAddType: \(error)" + } + } + } + public class FileAddTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileAddType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileAddType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return FileAddType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: FileAddType.self, json: json) + } + } + } + + /// Subscribed to or unsubscribed from comment notifications for file. + public class FileChangeCommentSubscriptionDetails: CustomStringConvertible, JSONRepresentable { + /// New file comment subscription. + public let newValue: TeamLog.FileCommentNotificationPolicy + /// Previous file comment subscription. Might be missing due to historical data gap. + public let previousValue: TeamLog.FileCommentNotificationPolicy? + public init(newValue: TeamLog.FileCommentNotificationPolicy, previousValue: TeamLog.FileCommentNotificationPolicy? = nil) { + self.newValue = newValue + self.previousValue = previousValue + } + + func json() throws -> JSON { + try FileChangeCommentSubscriptionDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileChangeCommentSubscriptionDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileChangeCommentSubscriptionDetails: \(error)" + } + } + } + public class FileChangeCommentSubscriptionDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileChangeCommentSubscriptionDetails) throws -> JSON { + let output = [ + "new_value": try TeamLog.FileCommentNotificationPolicySerializer().serialize(value.newValue), + "previous_value": try NullableSerializer(TeamLog.FileCommentNotificationPolicySerializer()).serialize(value.previousValue), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileChangeCommentSubscriptionDetails { + switch json { + case .dictionary(let dict): + let newValue = try TeamLog.FileCommentNotificationPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try NullableSerializer(TeamLog.FileCommentNotificationPolicySerializer()).deserialize(dict["previous_value"] ?? .null) + return FileChangeCommentSubscriptionDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: FileChangeCommentSubscriptionDetails.self, json: json) + } + } + } + + /// The FileChangeCommentSubscriptionType struct + public class FileChangeCommentSubscriptionType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try FileChangeCommentSubscriptionTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileChangeCommentSubscriptionTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileChangeCommentSubscriptionType: \(error)" + } + } + } + public class FileChangeCommentSubscriptionTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileChangeCommentSubscriptionType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileChangeCommentSubscriptionType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return FileChangeCommentSubscriptionType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: FileChangeCommentSubscriptionType.self, json: json) + } + } + } + + /// Enable or disable file comments notifications + public enum FileCommentNotificationPolicy: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case disabled + /// An unspecified error. + case enabled + /// An unspecified error. + case other + + func json() throws -> JSON { + try FileCommentNotificationPolicySerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileCommentNotificationPolicySerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileCommentNotificationPolicy: \(error)" + } + } + } + public class FileCommentNotificationPolicySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileCommentNotificationPolicy) throws -> JSON { + switch value { + case .disabled: + var d = [String: JSON]() + d[".tag"] = .str("disabled") + return .dictionary(d) + case .enabled: + var d = [String: JSON]() + d[".tag"] = .str("enabled") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> FileCommentNotificationPolicy { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "disabled": + return FileCommentNotificationPolicy.disabled + case "enabled": + return FileCommentNotificationPolicy.enabled + case "other": + return FileCommentNotificationPolicy.other + default: + return FileCommentNotificationPolicy.other + } + default: + throw JSONSerializerError.deserializeError(type: FileCommentNotificationPolicy.self, json: json) + } + } + } + + /// Enabled/disabled commenting on team files. + public class FileCommentsChangePolicyDetails: CustomStringConvertible, JSONRepresentable { + /// New commenting on team files policy. + public let newValue: TeamLog.FileCommentsPolicy + /// Previous commenting on team files policy. Might be missing due to historical data gap. + public let previousValue: TeamLog.FileCommentsPolicy? + public init(newValue: TeamLog.FileCommentsPolicy, previousValue: TeamLog.FileCommentsPolicy? = nil) { + self.newValue = newValue + self.previousValue = previousValue + } + + func json() throws -> JSON { + try FileCommentsChangePolicyDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileCommentsChangePolicyDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileCommentsChangePolicyDetails: \(error)" + } + } + } + public class FileCommentsChangePolicyDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileCommentsChangePolicyDetails) throws -> JSON { + let output = [ + "new_value": try TeamLog.FileCommentsPolicySerializer().serialize(value.newValue), + "previous_value": try NullableSerializer(TeamLog.FileCommentsPolicySerializer()).serialize(value.previousValue), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileCommentsChangePolicyDetails { + switch json { + case .dictionary(let dict): + let newValue = try TeamLog.FileCommentsPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try NullableSerializer(TeamLog.FileCommentsPolicySerializer()).deserialize(dict["previous_value"] ?? .null) + return FileCommentsChangePolicyDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: FileCommentsChangePolicyDetails.self, json: json) + } + } + } + + /// The FileCommentsChangePolicyType struct + public class FileCommentsChangePolicyType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try FileCommentsChangePolicyTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileCommentsChangePolicyTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileCommentsChangePolicyType: \(error)" + } + } + } + public class FileCommentsChangePolicyTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileCommentsChangePolicyType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileCommentsChangePolicyType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return FileCommentsChangePolicyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: FileCommentsChangePolicyType.self, json: json) + } + } + } + + /// File comments policy + public enum FileCommentsPolicy: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case disabled + /// An unspecified error. + case enabled + /// An unspecified error. + case other + + func json() throws -> JSON { + try FileCommentsPolicySerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileCommentsPolicySerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileCommentsPolicy: \(error)" + } + } + } + public class FileCommentsPolicySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileCommentsPolicy) throws -> JSON { + switch value { + case .disabled: + var d = [String: JSON]() + d[".tag"] = .str("disabled") + return .dictionary(d) + case .enabled: + var d = [String: JSON]() + d[".tag"] = .str("enabled") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> FileCommentsPolicy { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "disabled": + return FileCommentsPolicy.disabled + case "enabled": + return FileCommentsPolicy.enabled + case "other": + return FileCommentsPolicy.other + default: + return FileCommentsPolicy.other + } + default: + throw JSONSerializerError.deserializeError(type: FileCommentsPolicy.self, json: json) + } + } + } + + /// Copied files and/or folders. + public class FileCopyDetails: CustomStringConvertible, JSONRepresentable { + /// Relocate action details. + public let relocateActionDetails: Array + public init(relocateActionDetails: Array) { + self.relocateActionDetails = relocateActionDetails + } + + func json() throws -> JSON { + try FileCopyDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileCopyDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileCopyDetails: \(error)" + } + } + } + public class FileCopyDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileCopyDetails) throws -> JSON { + let output = [ + "relocate_action_details": try ArraySerializer(TeamLog.RelocateAssetReferencesLogInfoSerializer()).serialize(value.relocateActionDetails), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileCopyDetails { + switch json { + case .dictionary(let dict): + let relocateActionDetails = try ArraySerializer(TeamLog.RelocateAssetReferencesLogInfoSerializer()).deserialize(dict["relocate_action_details"] ?? .null) + return FileCopyDetails(relocateActionDetails: relocateActionDetails) + default: + throw JSONSerializerError.deserializeError(type: FileCopyDetails.self, json: json) + } + } + } + + /// The FileCopyType struct + public class FileCopyType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try FileCopyTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileCopyTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileCopyType: \(error)" + } + } + } + public class FileCopyTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileCopyType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileCopyType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return FileCopyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: FileCopyType.self, json: json) + } + } + } + + /// Deleted file comment. + public class FileDeleteCommentDetails: CustomStringConvertible, JSONRepresentable { + /// Comment text. + public let commentText: String? + public init(commentText: String? = nil) { + nullableValidator(stringValidator())(commentText) + self.commentText = commentText + } + + func json() throws -> JSON { + try FileDeleteCommentDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileDeleteCommentDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileDeleteCommentDetails: \(error)" + } + } + } + public class FileDeleteCommentDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileDeleteCommentDetails) throws -> JSON { + let output = [ + "comment_text": try NullableSerializer(Serialization._StringSerializer).serialize(value.commentText), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileDeleteCommentDetails { + switch json { + case .dictionary(let dict): + let commentText = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["comment_text"] ?? .null) + return FileDeleteCommentDetails(commentText: commentText) + default: + throw JSONSerializerError.deserializeError(type: FileDeleteCommentDetails.self, json: json) + } + } + } + + /// The FileDeleteCommentType struct + public class FileDeleteCommentType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try FileDeleteCommentTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileDeleteCommentTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileDeleteCommentType: \(error)" + } + } + } + public class FileDeleteCommentTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileDeleteCommentType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileDeleteCommentType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return FileDeleteCommentType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: FileDeleteCommentType.self, json: json) + } + } + } + + /// Deleted files and/or folders. + public class FileDeleteDetails: CustomStringConvertible, JSONRepresentable { + + func json() throws -> JSON { + try FileDeleteDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileDeleteDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileDeleteDetails: \(error)" + } + } + } + public class FileDeleteDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileDeleteDetails) throws -> JSON { + let output = [String: JSON]() + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileDeleteDetails { + switch json { + case .dictionary(_): + return FileDeleteDetails() + default: + throw JSONSerializerError.deserializeError(type: FileDeleteDetails.self, json: json) + } + } + } + + /// The FileDeleteType struct + public class FileDeleteType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try FileDeleteTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileDeleteTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileDeleteType: \(error)" + } + } + } + public class FileDeleteTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileDeleteType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileDeleteType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return FileDeleteType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: FileDeleteType.self, json: json) + } + } + } + + /// Downloaded files and/or folders. + public class FileDownloadDetails: CustomStringConvertible, JSONRepresentable { + + func json() throws -> JSON { + try FileDownloadDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileDownloadDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileDownloadDetails: \(error)" + } + } + } + public class FileDownloadDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileDownloadDetails) throws -> JSON { + let output = [String: JSON]() + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileDownloadDetails { + switch json { + case .dictionary(_): + return FileDownloadDetails() + default: + throw JSONSerializerError.deserializeError(type: FileDownloadDetails.self, json: json) + } + } + } + + /// The FileDownloadType struct + public class FileDownloadType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try FileDownloadTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileDownloadTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileDownloadType: \(error)" + } + } + } + public class FileDownloadTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileDownloadType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileDownloadType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return FileDownloadType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: FileDownloadType.self, json: json) + } + } + } + + /// Edited file comment. + public class FileEditCommentDetails: CustomStringConvertible, JSONRepresentable { + /// Comment text. + public let commentText: String? + /// Previous comment text. + public let previousCommentText: String + public init(previousCommentText: String, commentText: String? = nil) { + nullableValidator(stringValidator())(commentText) + self.commentText = commentText + stringValidator()(previousCommentText) + self.previousCommentText = previousCommentText + } + + func json() throws -> JSON { + try FileEditCommentDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileEditCommentDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileEditCommentDetails: \(error)" + } + } + } + public class FileEditCommentDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileEditCommentDetails) throws -> JSON { + let output = [ + "previous_comment_text": try Serialization._StringSerializer.serialize(value.previousCommentText), + "comment_text": try NullableSerializer(Serialization._StringSerializer).serialize(value.commentText), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileEditCommentDetails { + switch json { + case .dictionary(let dict): + let previousCommentText = try Serialization._StringSerializer.deserialize(dict["previous_comment_text"] ?? .null) + let commentText = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["comment_text"] ?? .null) + return FileEditCommentDetails(previousCommentText: previousCommentText, commentText: commentText) + default: + throw JSONSerializerError.deserializeError(type: FileEditCommentDetails.self, json: json) + } + } + } + + /// The FileEditCommentType struct + public class FileEditCommentType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try FileEditCommentTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileEditCommentTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileEditCommentType: \(error)" + } + } + } + public class FileEditCommentTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileEditCommentType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileEditCommentType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return FileEditCommentType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: FileEditCommentType.self, json: json) + } + } + } + + /// Edited files. + public class FileEditDetails: CustomStringConvertible, JSONRepresentable { + + func json() throws -> JSON { + try FileEditDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileEditDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileEditDetails: \(error)" + } + } + } + public class FileEditDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileEditDetails) throws -> JSON { + let output = [String: JSON]() + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileEditDetails { + switch json { + case .dictionary(_): + return FileEditDetails() + default: + throw JSONSerializerError.deserializeError(type: FileEditDetails.self, json: json) + } + } + } + + /// The FileEditType struct + public class FileEditType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try FileEditTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileEditTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileEditType: \(error)" + } + } + } + public class FileEditTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileEditType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileEditType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return FileEditType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: FileEditType.self, json: json) + } + } + } + + /// Created copy reference to file/folder. + public class FileGetCopyReferenceDetails: CustomStringConvertible, JSONRepresentable { + + func json() throws -> JSON { + try FileGetCopyReferenceDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileGetCopyReferenceDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileGetCopyReferenceDetails: \(error)" + } + } + } + public class FileGetCopyReferenceDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileGetCopyReferenceDetails) throws -> JSON { + let output = [String: JSON]() + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileGetCopyReferenceDetails { + switch json { + case .dictionary(_): + return FileGetCopyReferenceDetails() + default: + throw JSONSerializerError.deserializeError(type: FileGetCopyReferenceDetails.self, json: json) + } + } + } + + /// The FileGetCopyReferenceType struct + public class FileGetCopyReferenceType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try FileGetCopyReferenceTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileGetCopyReferenceTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileGetCopyReferenceType: \(error)" + } + } + } + public class FileGetCopyReferenceTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileGetCopyReferenceType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileGetCopyReferenceType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return FileGetCopyReferenceType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: FileGetCopyReferenceType.self, json: json) + } + } + } + + /// Liked file comment. + public class FileLikeCommentDetails: CustomStringConvertible, JSONRepresentable { + /// Comment text. + public let commentText: String? + public init(commentText: String? = nil) { + nullableValidator(stringValidator())(commentText) + self.commentText = commentText + } + + func json() throws -> JSON { + try FileLikeCommentDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileLikeCommentDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileLikeCommentDetails: \(error)" + } + } + } + public class FileLikeCommentDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileLikeCommentDetails) throws -> JSON { + let output = [ + "comment_text": try NullableSerializer(Serialization._StringSerializer).serialize(value.commentText), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileLikeCommentDetails { + switch json { + case .dictionary(let dict): + let commentText = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["comment_text"] ?? .null) + return FileLikeCommentDetails(commentText: commentText) + default: + throw JSONSerializerError.deserializeError(type: FileLikeCommentDetails.self, json: json) + } + } + } + + /// The FileLikeCommentType struct + public class FileLikeCommentType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try FileLikeCommentTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileLikeCommentTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileLikeCommentType: \(error)" + } + } + } + public class FileLikeCommentTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileLikeCommentType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileLikeCommentType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return FileLikeCommentType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: FileLikeCommentType.self, json: json) + } + } + } + + /// Locked/unlocked editing for a file. + public class FileLockingLockStatusChangedDetails: CustomStringConvertible, JSONRepresentable { + /// Previous lock status of the file. + public let previousValue: TeamLog.LockStatus + /// New lock status of the file. + public let newValue: TeamLog.LockStatus + public init(previousValue: TeamLog.LockStatus, newValue: TeamLog.LockStatus) { + self.previousValue = previousValue + self.newValue = newValue + } + + func json() throws -> JSON { + try FileLockingLockStatusChangedDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileLockingLockStatusChangedDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileLockingLockStatusChangedDetails: \(error)" + } + } + } + public class FileLockingLockStatusChangedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileLockingLockStatusChangedDetails) throws -> JSON { + let output = [ + "previous_value": try TeamLog.LockStatusSerializer().serialize(value.previousValue), + "new_value": try TeamLog.LockStatusSerializer().serialize(value.newValue), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileLockingLockStatusChangedDetails { + switch json { + case .dictionary(let dict): + let previousValue = try TeamLog.LockStatusSerializer().deserialize(dict["previous_value"] ?? .null) + let newValue = try TeamLog.LockStatusSerializer().deserialize(dict["new_value"] ?? .null) + return FileLockingLockStatusChangedDetails(previousValue: previousValue, newValue: newValue) + default: + throw JSONSerializerError.deserializeError(type: FileLockingLockStatusChangedDetails.self, json: json) + } + } + } + + /// The FileLockingLockStatusChangedType struct + public class FileLockingLockStatusChangedType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try FileLockingLockStatusChangedTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileLockingLockStatusChangedTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileLockingLockStatusChangedType: \(error)" + } + } + } + public class FileLockingLockStatusChangedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileLockingLockStatusChangedType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileLockingLockStatusChangedType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return FileLockingLockStatusChangedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: FileLockingLockStatusChangedType.self, json: json) + } + } + } + + /// Changed file locking policy for team. + public class FileLockingPolicyChangedDetails: CustomStringConvertible, JSONRepresentable { + /// New file locking policy. + public let newValue: TeamPolicies.FileLockingPolicyState + /// Previous file locking policy. + public let previousValue: TeamPolicies.FileLockingPolicyState + public init(newValue: TeamPolicies.FileLockingPolicyState, previousValue: TeamPolicies.FileLockingPolicyState) { + self.newValue = newValue + self.previousValue = previousValue + } + + func json() throws -> JSON { + try FileLockingPolicyChangedDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileLockingPolicyChangedDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileLockingPolicyChangedDetails: \(error)" + } + } + } + public class FileLockingPolicyChangedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileLockingPolicyChangedDetails) throws -> JSON { + let output = [ + "new_value": try TeamPolicies.FileLockingPolicyStateSerializer().serialize(value.newValue), + "previous_value": try TeamPolicies.FileLockingPolicyStateSerializer().serialize(value.previousValue), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileLockingPolicyChangedDetails { + switch json { + case .dictionary(let dict): + let newValue = try TeamPolicies.FileLockingPolicyStateSerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try TeamPolicies.FileLockingPolicyStateSerializer().deserialize(dict["previous_value"] ?? .null) + return FileLockingPolicyChangedDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: FileLockingPolicyChangedDetails.self, json: json) + } + } + } + + /// The FileLockingPolicyChangedType struct + public class FileLockingPolicyChangedType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try FileLockingPolicyChangedTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileLockingPolicyChangedTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileLockingPolicyChangedType: \(error)" + } + } + } + public class FileLockingPolicyChangedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileLockingPolicyChangedType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileLockingPolicyChangedType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return FileLockingPolicyChangedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: FileLockingPolicyChangedType.self, json: json) + } + } + } + + /// Generic information relevant both for files and folders + public class FileOrFolderLogInfo: CustomStringConvertible, JSONRepresentable { + /// Path relative to event context. + public let path: TeamLog.PathLogInfo + /// Display name. + public let displayName: String? + /// Unique ID. + public let fileId: String? + /// File or folder size in bytes. + public let fileSize: UInt64? + public init(path: TeamLog.PathLogInfo, displayName: String? = nil, fileId: String? = nil, fileSize: UInt64? = nil) { + self.path = path + nullableValidator(stringValidator())(displayName) + self.displayName = displayName + nullableValidator(stringValidator())(fileId) + self.fileId = fileId + nullableValidator(comparableValidator())(fileSize) + self.fileSize = fileSize + } + + func json() throws -> JSON { + try FileOrFolderLogInfoSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileOrFolderLogInfoSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileOrFolderLogInfo: \(error)" + } + } + } + public class FileOrFolderLogInfoSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileOrFolderLogInfo) throws -> JSON { + let output = [ + "path": try TeamLog.PathLogInfoSerializer().serialize(value.path), + "display_name": try NullableSerializer(Serialization._StringSerializer).serialize(value.displayName), + "file_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.fileId), + "file_size": try NullableSerializer(Serialization._UInt64Serializer).serialize(value.fileSize), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileOrFolderLogInfo { + switch json { + case .dictionary(let dict): + let path = try TeamLog.PathLogInfoSerializer().deserialize(dict["path"] ?? .null) + let displayName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["display_name"] ?? .null) + let fileId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["file_id"] ?? .null) + let fileSize = try NullableSerializer(Serialization._UInt64Serializer).deserialize(dict["file_size"] ?? .null) + return FileOrFolderLogInfo(path: path, displayName: displayName, fileId: fileId, fileSize: fileSize) + default: + throw JSONSerializerError.deserializeError(type: FileOrFolderLogInfo.self, json: json) + } + } + } + + /// File's logged information. + public class FileLogInfo: TeamLog.FileOrFolderLogInfo { + + + public override var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileLogInfoSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileLogInfo: \(error)" + } + } + } + public class FileLogInfoSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileLogInfo) throws -> JSON { + let output = [ + "path": try TeamLog.PathLogInfoSerializer().serialize(value.path), + "display_name": try NullableSerializer(Serialization._StringSerializer).serialize(value.displayName), + "file_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.fileId), + "file_size": try NullableSerializer(Serialization._UInt64Serializer).serialize(value.fileSize), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileLogInfo { + switch json { + case .dictionary(let dict): + let path = try TeamLog.PathLogInfoSerializer().deserialize(dict["path"] ?? .null) + let displayName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["display_name"] ?? .null) + let fileId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["file_id"] ?? .null) + let fileSize = try NullableSerializer(Serialization._UInt64Serializer).deserialize(dict["file_size"] ?? .null) + return FileLogInfo(path: path, displayName: displayName, fileId: fileId, fileSize: fileSize) + default: + throw JSONSerializerError.deserializeError(type: FileLogInfo.self, json: json) + } + } + } + + /// Moved files and/or folders. + public class FileMoveDetails: CustomStringConvertible, JSONRepresentable { + /// Relocate action details. + public let relocateActionDetails: Array + public init(relocateActionDetails: Array) { + self.relocateActionDetails = relocateActionDetails + } + + func json() throws -> JSON { + try FileMoveDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileMoveDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileMoveDetails: \(error)" + } + } + } + public class FileMoveDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileMoveDetails) throws -> JSON { + let output = [ + "relocate_action_details": try ArraySerializer(TeamLog.RelocateAssetReferencesLogInfoSerializer()).serialize(value.relocateActionDetails), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileMoveDetails { + switch json { + case .dictionary(let dict): + let relocateActionDetails = try ArraySerializer(TeamLog.RelocateAssetReferencesLogInfoSerializer()).deserialize(dict["relocate_action_details"] ?? .null) + return FileMoveDetails(relocateActionDetails: relocateActionDetails) + default: + throw JSONSerializerError.deserializeError(type: FileMoveDetails.self, json: json) + } + } + } + + /// The FileMoveType struct + public class FileMoveType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try FileMoveTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileMoveTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileMoveType: \(error)" + } + } + } + public class FileMoveTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileMoveType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileMoveType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return FileMoveType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: FileMoveType.self, json: json) + } + } + } + + /// Permanently deleted files and/or folders. + public class FilePermanentlyDeleteDetails: CustomStringConvertible, JSONRepresentable { + + func json() throws -> JSON { + try FilePermanentlyDeleteDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FilePermanentlyDeleteDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FilePermanentlyDeleteDetails: \(error)" + } + } + } + public class FilePermanentlyDeleteDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FilePermanentlyDeleteDetails) throws -> JSON { + let output = [String: JSON]() + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FilePermanentlyDeleteDetails { + switch json { + case .dictionary(_): + return FilePermanentlyDeleteDetails() + default: + throw JSONSerializerError.deserializeError(type: FilePermanentlyDeleteDetails.self, json: json) + } + } + } + + /// The FilePermanentlyDeleteType struct + public class FilePermanentlyDeleteType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try FilePermanentlyDeleteTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FilePermanentlyDeleteTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FilePermanentlyDeleteType: \(error)" + } + } + } + public class FilePermanentlyDeleteTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FilePermanentlyDeleteType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FilePermanentlyDeleteType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return FilePermanentlyDeleteType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: FilePermanentlyDeleteType.self, json: json) + } + } + } + + /// Previewed files and/or folders. + public class FilePreviewDetails: CustomStringConvertible, JSONRepresentable { + + func json() throws -> JSON { + try FilePreviewDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FilePreviewDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FilePreviewDetails: \(error)" + } + } + } + public class FilePreviewDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FilePreviewDetails) throws -> JSON { + let output = [String: JSON]() + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FilePreviewDetails { + switch json { + case .dictionary(_): + return FilePreviewDetails() + default: + throw JSONSerializerError.deserializeError(type: FilePreviewDetails.self, json: json) + } + } + } + + /// The FilePreviewType struct + public class FilePreviewType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try FilePreviewTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FilePreviewTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FilePreviewType: \(error)" + } + } + } + public class FilePreviewTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FilePreviewType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FilePreviewType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return FilePreviewType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: FilePreviewType.self, json: json) + } + } + } + + /// Changed File Provider Migration policy for team. + public class FileProviderMigrationPolicyChangedDetails: CustomStringConvertible, JSONRepresentable { + /// To. + public let newValue: TeamPolicies.FileProviderMigrationPolicyState + /// From. + public let previousValue: TeamPolicies.FileProviderMigrationPolicyState + public init(newValue: TeamPolicies.FileProviderMigrationPolicyState, previousValue: TeamPolicies.FileProviderMigrationPolicyState) { + self.newValue = newValue + self.previousValue = previousValue + } + + func json() throws -> JSON { + try FileProviderMigrationPolicyChangedDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileProviderMigrationPolicyChangedDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileProviderMigrationPolicyChangedDetails: \(error)" + } + } + } + public class FileProviderMigrationPolicyChangedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileProviderMigrationPolicyChangedDetails) throws -> JSON { + let output = [ + "new_value": try TeamPolicies.FileProviderMigrationPolicyStateSerializer().serialize(value.newValue), + "previous_value": try TeamPolicies.FileProviderMigrationPolicyStateSerializer().serialize(value.previousValue), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileProviderMigrationPolicyChangedDetails { + switch json { + case .dictionary(let dict): + let newValue = try TeamPolicies.FileProviderMigrationPolicyStateSerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try TeamPolicies.FileProviderMigrationPolicyStateSerializer().deserialize(dict["previous_value"] ?? .null) + return FileProviderMigrationPolicyChangedDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: FileProviderMigrationPolicyChangedDetails.self, json: json) + } + } + } + + /// The FileProviderMigrationPolicyChangedType struct + public class FileProviderMigrationPolicyChangedType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try FileProviderMigrationPolicyChangedTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileProviderMigrationPolicyChangedTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileProviderMigrationPolicyChangedType: \(error)" + } + } + } + public class FileProviderMigrationPolicyChangedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileProviderMigrationPolicyChangedType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileProviderMigrationPolicyChangedType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return FileProviderMigrationPolicyChangedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: FileProviderMigrationPolicyChangedType.self, json: json) + } + } + } + + /// Renamed files and/or folders. + public class FileRenameDetails: CustomStringConvertible, JSONRepresentable { + /// Relocate action details. + public let relocateActionDetails: Array + public init(relocateActionDetails: Array) { + self.relocateActionDetails = relocateActionDetails + } + + func json() throws -> JSON { + try FileRenameDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileRenameDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileRenameDetails: \(error)" + } + } + } + public class FileRenameDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileRenameDetails) throws -> JSON { + let output = [ + "relocate_action_details": try ArraySerializer(TeamLog.RelocateAssetReferencesLogInfoSerializer()).serialize(value.relocateActionDetails), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileRenameDetails { + switch json { + case .dictionary(let dict): + let relocateActionDetails = try ArraySerializer(TeamLog.RelocateAssetReferencesLogInfoSerializer()).deserialize(dict["relocate_action_details"] ?? .null) + return FileRenameDetails(relocateActionDetails: relocateActionDetails) + default: + throw JSONSerializerError.deserializeError(type: FileRenameDetails.self, json: json) + } + } + } + + /// The FileRenameType struct + public class FileRenameType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try FileRenameTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileRenameTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileRenameType: \(error)" + } + } + } + public class FileRenameTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileRenameType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileRenameType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return FileRenameType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: FileRenameType.self, json: json) + } + } + } + + /// Auto closed file request. + public class FileRequestAutoCloseDetails: CustomStringConvertible, JSONRepresentable { + /// File request id. Might be missing due to historical data gap. + public let fileRequestId: String? + /// Reason for the auto close. + public let reason: String? + /// Previous file request details. Might be missing due to historical data gap. + public let previousDetails: TeamLog.FileRequestDetails? + public init(fileRequestId: String? = nil, reason: String? = nil, previousDetails: TeamLog.FileRequestDetails? = nil) { + nullableValidator(stringValidator(minLength: 1, pattern: "[-_0-9a-zA-Z]+"))(fileRequestId) + self.fileRequestId = fileRequestId + nullableValidator(stringValidator())(reason) + self.reason = reason + self.previousDetails = previousDetails + } + + func json() throws -> JSON { + try FileRequestAutoCloseDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileRequestAutoCloseDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileRequestAutoCloseDetails: \(error)" + } + } + } + public class FileRequestAutoCloseDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileRequestAutoCloseDetails) throws -> JSON { + let output = [ + "file_request_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.fileRequestId), + "reason": try NullableSerializer(Serialization._StringSerializer).serialize(value.reason), + "previous_details": try NullableSerializer(TeamLog.FileRequestDetailsSerializer()).serialize(value.previousDetails), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileRequestAutoCloseDetails { + switch json { + case .dictionary(let dict): + let fileRequestId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["file_request_id"] ?? .null) + let reason = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["reason"] ?? .null) + let previousDetails = try NullableSerializer(TeamLog.FileRequestDetailsSerializer()).deserialize(dict["previous_details"] ?? .null) + return FileRequestAutoCloseDetails(fileRequestId: fileRequestId, reason: reason, previousDetails: previousDetails) + default: + throw JSONSerializerError.deserializeError(type: FileRequestAutoCloseDetails.self, json: json) + } + } + } + + /// The FileRequestAutoCloseType struct + public class FileRequestAutoCloseType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try FileRequestAutoCloseTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileRequestAutoCloseTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileRequestAutoCloseType: \(error)" + } + } + } + public class FileRequestAutoCloseTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileRequestAutoCloseType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileRequestAutoCloseType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return FileRequestAutoCloseType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: FileRequestAutoCloseType.self, json: json) + } + } + } + + /// Changed file request. + public class FileRequestChangeDetails: CustomStringConvertible, JSONRepresentable { + /// File request id. Might be missing due to historical data gap. + public let fileRequestId: String? + /// Previous file request details. Might be missing due to historical data gap. + public let previousDetails: TeamLog.FileRequestDetails? + /// New file request details. + public let newDetails: TeamLog.FileRequestDetails + public init(newDetails: TeamLog.FileRequestDetails, fileRequestId: String? = nil, previousDetails: TeamLog.FileRequestDetails? = nil) { + nullableValidator(stringValidator(minLength: 1, pattern: "[-_0-9a-zA-Z]+"))(fileRequestId) + self.fileRequestId = fileRequestId + self.previousDetails = previousDetails + self.newDetails = newDetails + } + + func json() throws -> JSON { + try FileRequestChangeDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileRequestChangeDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileRequestChangeDetails: \(error)" + } + } + } + public class FileRequestChangeDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileRequestChangeDetails) throws -> JSON { + let output = [ + "new_details": try TeamLog.FileRequestDetailsSerializer().serialize(value.newDetails), + "file_request_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.fileRequestId), + "previous_details": try NullableSerializer(TeamLog.FileRequestDetailsSerializer()).serialize(value.previousDetails), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileRequestChangeDetails { + switch json { + case .dictionary(let dict): + let newDetails = try TeamLog.FileRequestDetailsSerializer().deserialize(dict["new_details"] ?? .null) + let fileRequestId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["file_request_id"] ?? .null) + let previousDetails = try NullableSerializer(TeamLog.FileRequestDetailsSerializer()).deserialize(dict["previous_details"] ?? .null) + return FileRequestChangeDetails(newDetails: newDetails, fileRequestId: fileRequestId, previousDetails: previousDetails) + default: + throw JSONSerializerError.deserializeError(type: FileRequestChangeDetails.self, json: json) + } + } + } + + /// The FileRequestChangeType struct + public class FileRequestChangeType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try FileRequestChangeTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileRequestChangeTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileRequestChangeType: \(error)" + } + } + } + public class FileRequestChangeTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileRequestChangeType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileRequestChangeType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return FileRequestChangeType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: FileRequestChangeType.self, json: json) + } + } + } + + /// Closed file request. + public class FileRequestCloseDetails: CustomStringConvertible, JSONRepresentable { + /// File request id. Might be missing due to historical data gap. + public let fileRequestId: String? + /// Previous file request details. Might be missing due to historical data gap. + public let previousDetails: TeamLog.FileRequestDetails? + public init(fileRequestId: String? = nil, previousDetails: TeamLog.FileRequestDetails? = nil) { + nullableValidator(stringValidator(minLength: 1, pattern: "[-_0-9a-zA-Z]+"))(fileRequestId) + self.fileRequestId = fileRequestId + self.previousDetails = previousDetails + } + + func json() throws -> JSON { + try FileRequestCloseDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileRequestCloseDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileRequestCloseDetails: \(error)" + } + } + } + public class FileRequestCloseDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileRequestCloseDetails) throws -> JSON { + let output = [ + "file_request_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.fileRequestId), + "previous_details": try NullableSerializer(TeamLog.FileRequestDetailsSerializer()).serialize(value.previousDetails), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileRequestCloseDetails { + switch json { + case .dictionary(let dict): + let fileRequestId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["file_request_id"] ?? .null) + let previousDetails = try NullableSerializer(TeamLog.FileRequestDetailsSerializer()).deserialize(dict["previous_details"] ?? .null) + return FileRequestCloseDetails(fileRequestId: fileRequestId, previousDetails: previousDetails) + default: + throw JSONSerializerError.deserializeError(type: FileRequestCloseDetails.self, json: json) + } + } + } + + /// The FileRequestCloseType struct + public class FileRequestCloseType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try FileRequestCloseTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileRequestCloseTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileRequestCloseType: \(error)" + } + } + } + public class FileRequestCloseTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileRequestCloseType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileRequestCloseType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return FileRequestCloseType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: FileRequestCloseType.self, json: json) + } + } + } + + /// Created file request. + public class FileRequestCreateDetails: CustomStringConvertible, JSONRepresentable { + /// File request id. Might be missing due to historical data gap. + public let fileRequestId: String? + /// File request details. Might be missing due to historical data gap. + public let requestDetails: TeamLog.FileRequestDetails? + public init(fileRequestId: String? = nil, requestDetails: TeamLog.FileRequestDetails? = nil) { + nullableValidator(stringValidator(minLength: 1, pattern: "[-_0-9a-zA-Z]+"))(fileRequestId) + self.fileRequestId = fileRequestId + self.requestDetails = requestDetails + } + + func json() throws -> JSON { + try FileRequestCreateDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileRequestCreateDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileRequestCreateDetails: \(error)" + } + } + } + public class FileRequestCreateDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileRequestCreateDetails) throws -> JSON { + let output = [ + "file_request_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.fileRequestId), + "request_details": try NullableSerializer(TeamLog.FileRequestDetailsSerializer()).serialize(value.requestDetails), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileRequestCreateDetails { + switch json { + case .dictionary(let dict): + let fileRequestId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["file_request_id"] ?? .null) + let requestDetails = try NullableSerializer(TeamLog.FileRequestDetailsSerializer()).deserialize(dict["request_details"] ?? .null) + return FileRequestCreateDetails(fileRequestId: fileRequestId, requestDetails: requestDetails) + default: + throw JSONSerializerError.deserializeError(type: FileRequestCreateDetails.self, json: json) + } + } + } + + /// The FileRequestCreateType struct + public class FileRequestCreateType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try FileRequestCreateTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileRequestCreateTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileRequestCreateType: \(error)" + } + } + } + public class FileRequestCreateTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileRequestCreateType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileRequestCreateType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return FileRequestCreateType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: FileRequestCreateType.self, json: json) + } + } + } + + /// File request deadline + public class FileRequestDeadline: CustomStringConvertible, JSONRepresentable { + /// The deadline for this file request. Might be missing due to historical data gap. + public let deadline: Date? + /// If set, allow uploads after the deadline has passed. + public let allowLateUploads: String? + public init(deadline: Date? = nil, allowLateUploads: String? = nil) { + self.deadline = deadline + nullableValidator(stringValidator())(allowLateUploads) + self.allowLateUploads = allowLateUploads + } + + func json() throws -> JSON { + try FileRequestDeadlineSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileRequestDeadlineSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileRequestDeadline: \(error)" + } + } + } + public class FileRequestDeadlineSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileRequestDeadline) throws -> JSON { + let output = [ + "deadline": try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).serialize(value.deadline), + "allow_late_uploads": try NullableSerializer(Serialization._StringSerializer).serialize(value.allowLateUploads), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileRequestDeadline { + switch json { + case .dictionary(let dict): + let deadline = try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).deserialize(dict["deadline"] ?? .null) + let allowLateUploads = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["allow_late_uploads"] ?? .null) + return FileRequestDeadline(deadline: deadline, allowLateUploads: allowLateUploads) + default: + throw JSONSerializerError.deserializeError(type: FileRequestDeadline.self, json: json) + } + } + } + + /// Delete file request. + public class FileRequestDeleteDetails: CustomStringConvertible, JSONRepresentable { + /// File request id. Might be missing due to historical data gap. + public let fileRequestId: String? + /// Previous file request details. Might be missing due to historical data gap. + public let previousDetails: TeamLog.FileRequestDetails? + public init(fileRequestId: String? = nil, previousDetails: TeamLog.FileRequestDetails? = nil) { + nullableValidator(stringValidator(minLength: 1, pattern: "[-_0-9a-zA-Z]+"))(fileRequestId) + self.fileRequestId = fileRequestId + self.previousDetails = previousDetails + } + + func json() throws -> JSON { + try FileRequestDeleteDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileRequestDeleteDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileRequestDeleteDetails: \(error)" + } + } + } + public class FileRequestDeleteDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileRequestDeleteDetails) throws -> JSON { + let output = [ + "file_request_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.fileRequestId), + "previous_details": try NullableSerializer(TeamLog.FileRequestDetailsSerializer()).serialize(value.previousDetails), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileRequestDeleteDetails { + switch json { + case .dictionary(let dict): + let fileRequestId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["file_request_id"] ?? .null) + let previousDetails = try NullableSerializer(TeamLog.FileRequestDetailsSerializer()).deserialize(dict["previous_details"] ?? .null) + return FileRequestDeleteDetails(fileRequestId: fileRequestId, previousDetails: previousDetails) + default: + throw JSONSerializerError.deserializeError(type: FileRequestDeleteDetails.self, json: json) + } + } + } + + /// The FileRequestDeleteType struct + public class FileRequestDeleteType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try FileRequestDeleteTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileRequestDeleteTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileRequestDeleteType: \(error)" + } + } + } + public class FileRequestDeleteTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileRequestDeleteType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileRequestDeleteType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return FileRequestDeleteType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: FileRequestDeleteType.self, json: json) + } + } + } + + /// File request details + public class FileRequestDetails: CustomStringConvertible, JSONRepresentable { + /// Asset position in the Assets list. + public let assetIndex: UInt64 + /// File request deadline. + public let deadline: TeamLog.FileRequestDeadline? + /// Flag represents if this file request has password. + public let hasPassword: Bool? + public init(assetIndex: UInt64, deadline: TeamLog.FileRequestDeadline? = nil, hasPassword: Bool? = nil) { + comparableValidator()(assetIndex) + self.assetIndex = assetIndex + self.deadline = deadline + self.hasPassword = hasPassword + } + + func json() throws -> JSON { + try FileRequestDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileRequestDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileRequestDetails: \(error)" + } + } + } + public class FileRequestDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileRequestDetails) throws -> JSON { + let output = [ + "asset_index": try Serialization._UInt64Serializer.serialize(value.assetIndex), + "deadline": try NullableSerializer(TeamLog.FileRequestDeadlineSerializer()).serialize(value.deadline), + "has_password": try NullableSerializer(Serialization._BoolSerializer).serialize(value.hasPassword), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileRequestDetails { + switch json { + case .dictionary(let dict): + let assetIndex = try Serialization._UInt64Serializer.deserialize(dict["asset_index"] ?? .null) + let deadline = try NullableSerializer(TeamLog.FileRequestDeadlineSerializer()).deserialize(dict["deadline"] ?? .null) + let hasPassword = try NullableSerializer(Serialization._BoolSerializer).deserialize(dict["has_password"] ?? .null) + return FileRequestDetails(assetIndex: assetIndex, deadline: deadline, hasPassword: hasPassword) + default: + throw JSONSerializerError.deserializeError(type: FileRequestDetails.self, json: json) + } + } + } + + /// Received files for file request. + public class FileRequestReceiveFileDetails: CustomStringConvertible, JSONRepresentable { + /// File request id. Might be missing due to historical data gap. + public let fileRequestId: String? + /// File request details. Might be missing due to historical data gap. + public let fileRequestDetails: TeamLog.FileRequestDetails? + /// Submitted file names. + public let submittedFileNames: Array + /// The name as provided by the submitter. + public let submitterName: String? + /// The email as provided by the submitter. + public let submitterEmail: String? + public init(submittedFileNames: Array, fileRequestId: String? = nil, fileRequestDetails: TeamLog.FileRequestDetails? = nil, submitterName: String? = nil, submitterEmail: String? = nil) { + nullableValidator(stringValidator(minLength: 1, pattern: "[-_0-9a-zA-Z]+"))(fileRequestId) + self.fileRequestId = fileRequestId + self.fileRequestDetails = fileRequestDetails + arrayValidator(itemValidator: stringValidator())(submittedFileNames) + self.submittedFileNames = submittedFileNames + nullableValidator(stringValidator())(submitterName) + self.submitterName = submitterName + nullableValidator(stringValidator(maxLength: 255))(submitterEmail) + self.submitterEmail = submitterEmail + } + + func json() throws -> JSON { + try FileRequestReceiveFileDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileRequestReceiveFileDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileRequestReceiveFileDetails: \(error)" + } + } + } + public class FileRequestReceiveFileDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileRequestReceiveFileDetails) throws -> JSON { + let output = [ + "submitted_file_names": try ArraySerializer(Serialization._StringSerializer).serialize(value.submittedFileNames), + "file_request_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.fileRequestId), + "file_request_details": try NullableSerializer(TeamLog.FileRequestDetailsSerializer()).serialize(value.fileRequestDetails), + "submitter_name": try NullableSerializer(Serialization._StringSerializer).serialize(value.submitterName), + "submitter_email": try NullableSerializer(Serialization._StringSerializer).serialize(value.submitterEmail), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileRequestReceiveFileDetails { + switch json { + case .dictionary(let dict): + let submittedFileNames = try ArraySerializer(Serialization._StringSerializer).deserialize(dict["submitted_file_names"] ?? .null) + let fileRequestId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["file_request_id"] ?? .null) + let fileRequestDetails = try NullableSerializer(TeamLog.FileRequestDetailsSerializer()).deserialize(dict["file_request_details"] ?? .null) + let submitterName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["submitter_name"] ?? .null) + let submitterEmail = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["submitter_email"] ?? .null) + return FileRequestReceiveFileDetails(submittedFileNames: submittedFileNames, fileRequestId: fileRequestId, fileRequestDetails: fileRequestDetails, submitterName: submitterName, submitterEmail: submitterEmail) + default: + throw JSONSerializerError.deserializeError(type: FileRequestReceiveFileDetails.self, json: json) + } + } + } + + /// The FileRequestReceiveFileType struct + public class FileRequestReceiveFileType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try FileRequestReceiveFileTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileRequestReceiveFileTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileRequestReceiveFileType: \(error)" + } + } + } + public class FileRequestReceiveFileTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileRequestReceiveFileType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileRequestReceiveFileType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return FileRequestReceiveFileType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: FileRequestReceiveFileType.self, json: json) + } + } + } + + /// Enabled/disabled file requests. + public class FileRequestsChangePolicyDetails: CustomStringConvertible, JSONRepresentable { + /// New file requests policy. + public let newValue: TeamLog.FileRequestsPolicy + /// Previous file requests policy. Might be missing due to historical data gap. + public let previousValue: TeamLog.FileRequestsPolicy? + public init(newValue: TeamLog.FileRequestsPolicy, previousValue: TeamLog.FileRequestsPolicy? = nil) { + self.newValue = newValue + self.previousValue = previousValue + } + + func json() throws -> JSON { + try FileRequestsChangePolicyDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileRequestsChangePolicyDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileRequestsChangePolicyDetails: \(error)" + } + } + } + public class FileRequestsChangePolicyDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileRequestsChangePolicyDetails) throws -> JSON { + let output = [ + "new_value": try TeamLog.FileRequestsPolicySerializer().serialize(value.newValue), + "previous_value": try NullableSerializer(TeamLog.FileRequestsPolicySerializer()).serialize(value.previousValue), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileRequestsChangePolicyDetails { + switch json { + case .dictionary(let dict): + let newValue = try TeamLog.FileRequestsPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try NullableSerializer(TeamLog.FileRequestsPolicySerializer()).deserialize(dict["previous_value"] ?? .null) + return FileRequestsChangePolicyDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: FileRequestsChangePolicyDetails.self, json: json) + } + } + } + + /// The FileRequestsChangePolicyType struct + public class FileRequestsChangePolicyType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try FileRequestsChangePolicyTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileRequestsChangePolicyTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileRequestsChangePolicyType: \(error)" + } + } + } + public class FileRequestsChangePolicyTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileRequestsChangePolicyType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileRequestsChangePolicyType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return FileRequestsChangePolicyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: FileRequestsChangePolicyType.self, json: json) + } + } + } + + /// Enabled file request emails for everyone. + public class FileRequestsEmailsEnabledDetails: CustomStringConvertible, JSONRepresentable { + + func json() throws -> JSON { + try FileRequestsEmailsEnabledDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileRequestsEmailsEnabledDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileRequestsEmailsEnabledDetails: \(error)" + } + } + } + public class FileRequestsEmailsEnabledDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileRequestsEmailsEnabledDetails) throws -> JSON { + let output = [String: JSON]() + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileRequestsEmailsEnabledDetails { + switch json { + case .dictionary(_): + return FileRequestsEmailsEnabledDetails() + default: + throw JSONSerializerError.deserializeError(type: FileRequestsEmailsEnabledDetails.self, json: json) + } + } + } + + /// The FileRequestsEmailsEnabledType struct + public class FileRequestsEmailsEnabledType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try FileRequestsEmailsEnabledTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileRequestsEmailsEnabledTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileRequestsEmailsEnabledType: \(error)" + } + } + } + public class FileRequestsEmailsEnabledTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileRequestsEmailsEnabledType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileRequestsEmailsEnabledType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return FileRequestsEmailsEnabledType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: FileRequestsEmailsEnabledType.self, json: json) + } + } + } + + /// Enabled file request emails for team. + public class FileRequestsEmailsRestrictedToTeamOnlyDetails: CustomStringConvertible, JSONRepresentable { + + func json() throws -> JSON { + try FileRequestsEmailsRestrictedToTeamOnlyDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileRequestsEmailsRestrictedToTeamOnlyDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileRequestsEmailsRestrictedToTeamOnlyDetails: \(error)" + } + } + } + public class FileRequestsEmailsRestrictedToTeamOnlyDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileRequestsEmailsRestrictedToTeamOnlyDetails) throws -> JSON { + let output = [String: JSON]() + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileRequestsEmailsRestrictedToTeamOnlyDetails { + switch json { + case .dictionary(_): + return FileRequestsEmailsRestrictedToTeamOnlyDetails() + default: + throw JSONSerializerError.deserializeError(type: FileRequestsEmailsRestrictedToTeamOnlyDetails.self, json: json) + } + } + } + + /// The FileRequestsEmailsRestrictedToTeamOnlyType struct + public class FileRequestsEmailsRestrictedToTeamOnlyType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try FileRequestsEmailsRestrictedToTeamOnlyTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileRequestsEmailsRestrictedToTeamOnlyTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileRequestsEmailsRestrictedToTeamOnlyType: \(error)" + } + } + } + public class FileRequestsEmailsRestrictedToTeamOnlyTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileRequestsEmailsRestrictedToTeamOnlyType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileRequestsEmailsRestrictedToTeamOnlyType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return FileRequestsEmailsRestrictedToTeamOnlyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: FileRequestsEmailsRestrictedToTeamOnlyType.self, json: json) + } + } + } + + /// File requests policy + public enum FileRequestsPolicy: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case disabled + /// An unspecified error. + case enabled + /// An unspecified error. + case other + + func json() throws -> JSON { + try FileRequestsPolicySerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileRequestsPolicySerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileRequestsPolicy: \(error)" + } + } + } + public class FileRequestsPolicySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileRequestsPolicy) throws -> JSON { + switch value { + case .disabled: + var d = [String: JSON]() + d[".tag"] = .str("disabled") + return .dictionary(d) + case .enabled: + var d = [String: JSON]() + d[".tag"] = .str("enabled") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> FileRequestsPolicy { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "disabled": + return FileRequestsPolicy.disabled + case "enabled": + return FileRequestsPolicy.enabled + case "other": + return FileRequestsPolicy.other + default: + return FileRequestsPolicy.other + } + default: + throw JSONSerializerError.deserializeError(type: FileRequestsPolicy.self, json: json) + } + } + } + + /// Resolved file comment. + public class FileResolveCommentDetails: CustomStringConvertible, JSONRepresentable { + /// Comment text. + public let commentText: String? + public init(commentText: String? = nil) { + nullableValidator(stringValidator())(commentText) + self.commentText = commentText + } + + func json() throws -> JSON { + try FileResolveCommentDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileResolveCommentDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileResolveCommentDetails: \(error)" + } + } + } + public class FileResolveCommentDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileResolveCommentDetails) throws -> JSON { + let output = [ + "comment_text": try NullableSerializer(Serialization._StringSerializer).serialize(value.commentText), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileResolveCommentDetails { + switch json { + case .dictionary(let dict): + let commentText = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["comment_text"] ?? .null) + return FileResolveCommentDetails(commentText: commentText) + default: + throw JSONSerializerError.deserializeError(type: FileResolveCommentDetails.self, json: json) + } + } + } + + /// The FileResolveCommentType struct + public class FileResolveCommentType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try FileResolveCommentTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileResolveCommentTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileResolveCommentType: \(error)" + } + } + } + public class FileResolveCommentTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileResolveCommentType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileResolveCommentType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return FileResolveCommentType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: FileResolveCommentType.self, json: json) + } + } + } + + /// Restored deleted files and/or folders. + public class FileRestoreDetails: CustomStringConvertible, JSONRepresentable { + + func json() throws -> JSON { + try FileRestoreDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileRestoreDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileRestoreDetails: \(error)" + } + } + } + public class FileRestoreDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileRestoreDetails) throws -> JSON { + let output = [String: JSON]() + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileRestoreDetails { + switch json { + case .dictionary(_): + return FileRestoreDetails() + default: + throw JSONSerializerError.deserializeError(type: FileRestoreDetails.self, json: json) + } + } + } + + /// The FileRestoreType struct + public class FileRestoreType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try FileRestoreTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileRestoreTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileRestoreType: \(error)" + } + } + } + public class FileRestoreTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileRestoreType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileRestoreType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return FileRestoreType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: FileRestoreType.self, json: json) + } + } + } + + /// Reverted files to previous version. + public class FileRevertDetails: CustomStringConvertible, JSONRepresentable { + + func json() throws -> JSON { + try FileRevertDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileRevertDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileRevertDetails: \(error)" + } + } + } + public class FileRevertDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileRevertDetails) throws -> JSON { + let output = [String: JSON]() + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileRevertDetails { + switch json { + case .dictionary(_): + return FileRevertDetails() + default: + throw JSONSerializerError.deserializeError(type: FileRevertDetails.self, json: json) + } + } + } + + /// The FileRevertType struct + public class FileRevertType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try FileRevertTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileRevertTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileRevertType: \(error)" + } + } + } + public class FileRevertTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileRevertType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileRevertType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return FileRevertType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: FileRevertType.self, json: json) + } + } + } + + /// Rolled back file actions. + public class FileRollbackChangesDetails: CustomStringConvertible, JSONRepresentable { + + func json() throws -> JSON { + try FileRollbackChangesDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileRollbackChangesDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileRollbackChangesDetails: \(error)" + } + } + } + public class FileRollbackChangesDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileRollbackChangesDetails) throws -> JSON { + let output = [String: JSON]() + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileRollbackChangesDetails { + switch json { + case .dictionary(_): + return FileRollbackChangesDetails() + default: + throw JSONSerializerError.deserializeError(type: FileRollbackChangesDetails.self, json: json) + } + } + } + + /// The FileRollbackChangesType struct + public class FileRollbackChangesType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try FileRollbackChangesTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileRollbackChangesTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileRollbackChangesType: \(error)" + } + } + } + public class FileRollbackChangesTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileRollbackChangesType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileRollbackChangesType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return FileRollbackChangesType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: FileRollbackChangesType.self, json: json) + } + } + } + + /// Saved file/folder using copy reference. + public class FileSaveCopyReferenceDetails: CustomStringConvertible, JSONRepresentable { + /// Relocate action details. + public let relocateActionDetails: Array + public init(relocateActionDetails: Array) { + self.relocateActionDetails = relocateActionDetails + } + + func json() throws -> JSON { + try FileSaveCopyReferenceDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileSaveCopyReferenceDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileSaveCopyReferenceDetails: \(error)" + } + } + } + public class FileSaveCopyReferenceDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileSaveCopyReferenceDetails) throws -> JSON { + let output = [ + "relocate_action_details": try ArraySerializer(TeamLog.RelocateAssetReferencesLogInfoSerializer()).serialize(value.relocateActionDetails), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileSaveCopyReferenceDetails { + switch json { + case .dictionary(let dict): + let relocateActionDetails = try ArraySerializer(TeamLog.RelocateAssetReferencesLogInfoSerializer()).deserialize(dict["relocate_action_details"] ?? .null) + return FileSaveCopyReferenceDetails(relocateActionDetails: relocateActionDetails) + default: + throw JSONSerializerError.deserializeError(type: FileSaveCopyReferenceDetails.self, json: json) + } + } + } + + /// The FileSaveCopyReferenceType struct + public class FileSaveCopyReferenceType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try FileSaveCopyReferenceTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileSaveCopyReferenceTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileSaveCopyReferenceType: \(error)" + } + } + } + public class FileSaveCopyReferenceTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileSaveCopyReferenceType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileSaveCopyReferenceType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return FileSaveCopyReferenceType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: FileSaveCopyReferenceType.self, json: json) + } + } + } + + /// Transfer files added. + public class FileTransfersFileAddDetails: CustomStringConvertible, JSONRepresentable { + /// Transfer id. + public let fileTransferId: String + public init(fileTransferId: String) { + stringValidator()(fileTransferId) + self.fileTransferId = fileTransferId + } + + func json() throws -> JSON { + try FileTransfersFileAddDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileTransfersFileAddDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileTransfersFileAddDetails: \(error)" + } + } + } + public class FileTransfersFileAddDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileTransfersFileAddDetails) throws -> JSON { + let output = [ + "file_transfer_id": try Serialization._StringSerializer.serialize(value.fileTransferId), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileTransfersFileAddDetails { + switch json { + case .dictionary(let dict): + let fileTransferId = try Serialization._StringSerializer.deserialize(dict["file_transfer_id"] ?? .null) + return FileTransfersFileAddDetails(fileTransferId: fileTransferId) + default: + throw JSONSerializerError.deserializeError(type: FileTransfersFileAddDetails.self, json: json) + } + } + } + + /// The FileTransfersFileAddType struct + public class FileTransfersFileAddType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try FileTransfersFileAddTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileTransfersFileAddTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileTransfersFileAddType: \(error)" + } + } + } + public class FileTransfersFileAddTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileTransfersFileAddType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileTransfersFileAddType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return FileTransfersFileAddType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: FileTransfersFileAddType.self, json: json) + } + } + } + + /// File transfers policy + public enum FileTransfersPolicy: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case disabled + /// An unspecified error. + case enabled + /// An unspecified error. + case other + + func json() throws -> JSON { + try FileTransfersPolicySerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileTransfersPolicySerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileTransfersPolicy: \(error)" + } + } + } + public class FileTransfersPolicySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileTransfersPolicy) throws -> JSON { + switch value { + case .disabled: + var d = [String: JSON]() + d[".tag"] = .str("disabled") + return .dictionary(d) + case .enabled: + var d = [String: JSON]() + d[".tag"] = .str("enabled") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> FileTransfersPolicy { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "disabled": + return FileTransfersPolicy.disabled + case "enabled": + return FileTransfersPolicy.enabled + case "other": + return FileTransfersPolicy.other + default: + return FileTransfersPolicy.other + } + default: + throw JSONSerializerError.deserializeError(type: FileTransfersPolicy.self, json: json) + } + } + } + + /// Changed file transfers policy for team. + public class FileTransfersPolicyChangedDetails: CustomStringConvertible, JSONRepresentable { + /// New file transfers policy. + public let newValue: TeamLog.FileTransfersPolicy + /// Previous file transfers policy. + public let previousValue: TeamLog.FileTransfersPolicy + public init(newValue: TeamLog.FileTransfersPolicy, previousValue: TeamLog.FileTransfersPolicy) { + self.newValue = newValue + self.previousValue = previousValue + } + + func json() throws -> JSON { + try FileTransfersPolicyChangedDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileTransfersPolicyChangedDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileTransfersPolicyChangedDetails: \(error)" + } + } + } + public class FileTransfersPolicyChangedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileTransfersPolicyChangedDetails) throws -> JSON { + let output = [ + "new_value": try TeamLog.FileTransfersPolicySerializer().serialize(value.newValue), + "previous_value": try TeamLog.FileTransfersPolicySerializer().serialize(value.previousValue), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileTransfersPolicyChangedDetails { + switch json { + case .dictionary(let dict): + let newValue = try TeamLog.FileTransfersPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try TeamLog.FileTransfersPolicySerializer().deserialize(dict["previous_value"] ?? .null) + return FileTransfersPolicyChangedDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: FileTransfersPolicyChangedDetails.self, json: json) + } + } + } + + /// The FileTransfersPolicyChangedType struct + public class FileTransfersPolicyChangedType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try FileTransfersPolicyChangedTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileTransfersPolicyChangedTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileTransfersPolicyChangedType: \(error)" + } + } + } + public class FileTransfersPolicyChangedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileTransfersPolicyChangedType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileTransfersPolicyChangedType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return FileTransfersPolicyChangedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: FileTransfersPolicyChangedType.self, json: json) + } + } + } + + /// Deleted transfer. + public class FileTransfersTransferDeleteDetails: CustomStringConvertible, JSONRepresentable { + /// Transfer id. + public let fileTransferId: String + public init(fileTransferId: String) { + stringValidator()(fileTransferId) + self.fileTransferId = fileTransferId + } + + func json() throws -> JSON { + try FileTransfersTransferDeleteDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileTransfersTransferDeleteDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileTransfersTransferDeleteDetails: \(error)" + } + } + } + public class FileTransfersTransferDeleteDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileTransfersTransferDeleteDetails) throws -> JSON { + let output = [ + "file_transfer_id": try Serialization._StringSerializer.serialize(value.fileTransferId), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileTransfersTransferDeleteDetails { + switch json { + case .dictionary(let dict): + let fileTransferId = try Serialization._StringSerializer.deserialize(dict["file_transfer_id"] ?? .null) + return FileTransfersTransferDeleteDetails(fileTransferId: fileTransferId) + default: + throw JSONSerializerError.deserializeError(type: FileTransfersTransferDeleteDetails.self, json: json) + } + } + } + + /// The FileTransfersTransferDeleteType struct + public class FileTransfersTransferDeleteType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try FileTransfersTransferDeleteTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileTransfersTransferDeleteTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileTransfersTransferDeleteType: \(error)" + } + } + } + public class FileTransfersTransferDeleteTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileTransfersTransferDeleteType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileTransfersTransferDeleteType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return FileTransfersTransferDeleteType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: FileTransfersTransferDeleteType.self, json: json) + } + } + } + + /// Transfer downloaded. + public class FileTransfersTransferDownloadDetails: CustomStringConvertible, JSONRepresentable { + /// Transfer id. + public let fileTransferId: String + public init(fileTransferId: String) { + stringValidator()(fileTransferId) + self.fileTransferId = fileTransferId + } + + func json() throws -> JSON { + try FileTransfersTransferDownloadDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileTransfersTransferDownloadDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileTransfersTransferDownloadDetails: \(error)" + } + } + } + public class FileTransfersTransferDownloadDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileTransfersTransferDownloadDetails) throws -> JSON { + let output = [ + "file_transfer_id": try Serialization._StringSerializer.serialize(value.fileTransferId), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileTransfersTransferDownloadDetails { + switch json { + case .dictionary(let dict): + let fileTransferId = try Serialization._StringSerializer.deserialize(dict["file_transfer_id"] ?? .null) + return FileTransfersTransferDownloadDetails(fileTransferId: fileTransferId) + default: + throw JSONSerializerError.deserializeError(type: FileTransfersTransferDownloadDetails.self, json: json) + } + } + } + + /// The FileTransfersTransferDownloadType struct + public class FileTransfersTransferDownloadType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try FileTransfersTransferDownloadTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileTransfersTransferDownloadTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileTransfersTransferDownloadType: \(error)" + } + } + } + public class FileTransfersTransferDownloadTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileTransfersTransferDownloadType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileTransfersTransferDownloadType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return FileTransfersTransferDownloadType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: FileTransfersTransferDownloadType.self, json: json) + } + } + } + + /// Sent transfer. + public class FileTransfersTransferSendDetails: CustomStringConvertible, JSONRepresentable { + /// Transfer id. + public let fileTransferId: String + public init(fileTransferId: String) { + stringValidator()(fileTransferId) + self.fileTransferId = fileTransferId + } + + func json() throws -> JSON { + try FileTransfersTransferSendDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileTransfersTransferSendDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileTransfersTransferSendDetails: \(error)" + } + } + } + public class FileTransfersTransferSendDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileTransfersTransferSendDetails) throws -> JSON { + let output = [ + "file_transfer_id": try Serialization._StringSerializer.serialize(value.fileTransferId), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileTransfersTransferSendDetails { + switch json { + case .dictionary(let dict): + let fileTransferId = try Serialization._StringSerializer.deserialize(dict["file_transfer_id"] ?? .null) + return FileTransfersTransferSendDetails(fileTransferId: fileTransferId) + default: + throw JSONSerializerError.deserializeError(type: FileTransfersTransferSendDetails.self, json: json) + } + } + } + + /// The FileTransfersTransferSendType struct + public class FileTransfersTransferSendType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try FileTransfersTransferSendTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileTransfersTransferSendTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileTransfersTransferSendType: \(error)" + } + } + } + public class FileTransfersTransferSendTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileTransfersTransferSendType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileTransfersTransferSendType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return FileTransfersTransferSendType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: FileTransfersTransferSendType.self, json: json) + } + } + } + + /// Viewed transfer. + public class FileTransfersTransferViewDetails: CustomStringConvertible, JSONRepresentable { + /// Transfer id. + public let fileTransferId: String + public init(fileTransferId: String) { + stringValidator()(fileTransferId) + self.fileTransferId = fileTransferId + } + + func json() throws -> JSON { + try FileTransfersTransferViewDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileTransfersTransferViewDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileTransfersTransferViewDetails: \(error)" + } + } + } + public class FileTransfersTransferViewDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileTransfersTransferViewDetails) throws -> JSON { + let output = [ + "file_transfer_id": try Serialization._StringSerializer.serialize(value.fileTransferId), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileTransfersTransferViewDetails { + switch json { + case .dictionary(let dict): + let fileTransferId = try Serialization._StringSerializer.deserialize(dict["file_transfer_id"] ?? .null) + return FileTransfersTransferViewDetails(fileTransferId: fileTransferId) + default: + throw JSONSerializerError.deserializeError(type: FileTransfersTransferViewDetails.self, json: json) + } + } + } + + /// The FileTransfersTransferViewType struct + public class FileTransfersTransferViewType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try FileTransfersTransferViewTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileTransfersTransferViewTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileTransfersTransferViewType: \(error)" + } + } + } + public class FileTransfersTransferViewTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileTransfersTransferViewType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileTransfersTransferViewType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return FileTransfersTransferViewType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: FileTransfersTransferViewType.self, json: json) + } + } + } + + /// Unliked file comment. + public class FileUnlikeCommentDetails: CustomStringConvertible, JSONRepresentable { + /// Comment text. + public let commentText: String? + public init(commentText: String? = nil) { + nullableValidator(stringValidator())(commentText) + self.commentText = commentText + } + + func json() throws -> JSON { + try FileUnlikeCommentDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileUnlikeCommentDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileUnlikeCommentDetails: \(error)" + } + } + } + public class FileUnlikeCommentDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileUnlikeCommentDetails) throws -> JSON { + let output = [ + "comment_text": try NullableSerializer(Serialization._StringSerializer).serialize(value.commentText), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileUnlikeCommentDetails { + switch json { + case .dictionary(let dict): + let commentText = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["comment_text"] ?? .null) + return FileUnlikeCommentDetails(commentText: commentText) + default: + throw JSONSerializerError.deserializeError(type: FileUnlikeCommentDetails.self, json: json) + } + } + } + + /// The FileUnlikeCommentType struct + public class FileUnlikeCommentType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try FileUnlikeCommentTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileUnlikeCommentTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileUnlikeCommentType: \(error)" + } + } + } + public class FileUnlikeCommentTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileUnlikeCommentType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileUnlikeCommentType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return FileUnlikeCommentType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: FileUnlikeCommentType.self, json: json) + } + } + } + + /// Unresolved file comment. + public class FileUnresolveCommentDetails: CustomStringConvertible, JSONRepresentable { + /// Comment text. + public let commentText: String? + public init(commentText: String? = nil) { + nullableValidator(stringValidator())(commentText) + self.commentText = commentText + } + + func json() throws -> JSON { + try FileUnresolveCommentDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileUnresolveCommentDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileUnresolveCommentDetails: \(error)" + } + } + } + public class FileUnresolveCommentDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileUnresolveCommentDetails) throws -> JSON { + let output = [ + "comment_text": try NullableSerializer(Serialization._StringSerializer).serialize(value.commentText), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileUnresolveCommentDetails { + switch json { + case .dictionary(let dict): + let commentText = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["comment_text"] ?? .null) + return FileUnresolveCommentDetails(commentText: commentText) + default: + throw JSONSerializerError.deserializeError(type: FileUnresolveCommentDetails.self, json: json) + } + } + } + + /// The FileUnresolveCommentType struct + public class FileUnresolveCommentType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try FileUnresolveCommentTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FileUnresolveCommentTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FileUnresolveCommentType: \(error)" + } + } + } + public class FileUnresolveCommentTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FileUnresolveCommentType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FileUnresolveCommentType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return FileUnresolveCommentType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: FileUnresolveCommentType.self, json: json) + } + } + } + + /// Flexible file names policy + public enum FlexibleFileNamesPolicy: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case off + /// An unspecified error. + case offDefault + /// An unspecified error. + case optional + /// An unspecified error. + case optionalDefault + /// An unspecified error. + case required + /// An unspecified error. + case requiredDefault + /// An unspecified error. + case other + + func json() throws -> JSON { + try FlexibleFileNamesPolicySerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FlexibleFileNamesPolicySerializer().serialize(self)))" + } catch { + return "Failed to generate description for FlexibleFileNamesPolicy: \(error)" + } + } + } + public class FlexibleFileNamesPolicySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FlexibleFileNamesPolicy) throws -> JSON { + switch value { + case .off: + var d = [String: JSON]() + d[".tag"] = .str("off") + return .dictionary(d) + case .offDefault: + var d = [String: JSON]() + d[".tag"] = .str("off_default") + return .dictionary(d) + case .optional: + var d = [String: JSON]() + d[".tag"] = .str("optional") + return .dictionary(d) + case .optionalDefault: + var d = [String: JSON]() + d[".tag"] = .str("optional_default") + return .dictionary(d) + case .required: + var d = [String: JSON]() + d[".tag"] = .str("required") + return .dictionary(d) + case .requiredDefault: + var d = [String: JSON]() + d[".tag"] = .str("required_default") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> FlexibleFileNamesPolicy { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "off": + return FlexibleFileNamesPolicy.off + case "off_default": + return FlexibleFileNamesPolicy.offDefault + case "optional": + return FlexibleFileNamesPolicy.optional + case "optional_default": + return FlexibleFileNamesPolicy.optionalDefault + case "required": + return FlexibleFileNamesPolicy.required + case "required_default": + return FlexibleFileNamesPolicy.requiredDefault + case "other": + return FlexibleFileNamesPolicy.other + default: + return FlexibleFileNamesPolicy.other + } + default: + throw JSONSerializerError.deserializeError(type: FlexibleFileNamesPolicy.self, json: json) + } + } + } + + /// Changed flexible file names policy for team. + public class FlexibleFileNamesPolicyChangedDetails: CustomStringConvertible, JSONRepresentable { + /// New flexible file names policy. + public let newValue: TeamLog.FlexibleFileNamesPolicy + /// Previous flexible file names policy. Might be missing due to historical data gap. + public let previousValue: TeamLog.FlexibleFileNamesPolicy? + public init(newValue: TeamLog.FlexibleFileNamesPolicy, previousValue: TeamLog.FlexibleFileNamesPolicy? = nil) { + self.newValue = newValue + self.previousValue = previousValue + } + + func json() throws -> JSON { + try FlexibleFileNamesPolicyChangedDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FlexibleFileNamesPolicyChangedDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FlexibleFileNamesPolicyChangedDetails: \(error)" + } + } + } + public class FlexibleFileNamesPolicyChangedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FlexibleFileNamesPolicyChangedDetails) throws -> JSON { + let output = [ + "new_value": try TeamLog.FlexibleFileNamesPolicySerializer().serialize(value.newValue), + "previous_value": try NullableSerializer(TeamLog.FlexibleFileNamesPolicySerializer()).serialize(value.previousValue), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FlexibleFileNamesPolicyChangedDetails { + switch json { + case .dictionary(let dict): + let newValue = try TeamLog.FlexibleFileNamesPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try NullableSerializer(TeamLog.FlexibleFileNamesPolicySerializer()).deserialize(dict["previous_value"] ?? .null) + return FlexibleFileNamesPolicyChangedDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: FlexibleFileNamesPolicyChangedDetails.self, json: json) + } + } + } + + /// The FlexibleFileNamesPolicyChangedType struct + public class FlexibleFileNamesPolicyChangedType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try FlexibleFileNamesPolicyChangedTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FlexibleFileNamesPolicyChangedTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FlexibleFileNamesPolicyChangedType: \(error)" + } + } + } + public class FlexibleFileNamesPolicyChangedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FlexibleFileNamesPolicyChangedType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FlexibleFileNamesPolicyChangedType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return FlexibleFileNamesPolicyChangedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: FlexibleFileNamesPolicyChangedType.self, json: json) + } + } + } + + /// Policy for deciding whether applying link restrictions on all team owned folders + public enum FolderLinkRestrictionPolicy: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case disabled + /// An unspecified error. + case enabled + /// An unspecified error. + case other + + func json() throws -> JSON { + try FolderLinkRestrictionPolicySerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FolderLinkRestrictionPolicySerializer().serialize(self)))" + } catch { + return "Failed to generate description for FolderLinkRestrictionPolicy: \(error)" + } + } + } + public class FolderLinkRestrictionPolicySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FolderLinkRestrictionPolicy) throws -> JSON { + switch value { + case .disabled: + var d = [String: JSON]() + d[".tag"] = .str("disabled") + return .dictionary(d) + case .enabled: + var d = [String: JSON]() + d[".tag"] = .str("enabled") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> FolderLinkRestrictionPolicy { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "disabled": + return FolderLinkRestrictionPolicy.disabled + case "enabled": + return FolderLinkRestrictionPolicy.enabled + case "other": + return FolderLinkRestrictionPolicy.other + default: + return FolderLinkRestrictionPolicy.other + } + default: + throw JSONSerializerError.deserializeError(type: FolderLinkRestrictionPolicy.self, json: json) + } + } + } + + /// Changed folder link restrictions policy for team. + public class FolderLinkRestrictionPolicyChangedDetails: CustomStringConvertible, JSONRepresentable { + /// To. + public let newValue: TeamLog.FolderLinkRestrictionPolicy + /// From. + public let previousValue: TeamLog.FolderLinkRestrictionPolicy + public init(newValue: TeamLog.FolderLinkRestrictionPolicy, previousValue: TeamLog.FolderLinkRestrictionPolicy) { + self.newValue = newValue + self.previousValue = previousValue + } + + func json() throws -> JSON { + try FolderLinkRestrictionPolicyChangedDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FolderLinkRestrictionPolicyChangedDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FolderLinkRestrictionPolicyChangedDetails: \(error)" + } + } + } + public class FolderLinkRestrictionPolicyChangedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FolderLinkRestrictionPolicyChangedDetails) throws -> JSON { + let output = [ + "new_value": try TeamLog.FolderLinkRestrictionPolicySerializer().serialize(value.newValue), + "previous_value": try TeamLog.FolderLinkRestrictionPolicySerializer().serialize(value.previousValue), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FolderLinkRestrictionPolicyChangedDetails { + switch json { + case .dictionary(let dict): + let newValue = try TeamLog.FolderLinkRestrictionPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try TeamLog.FolderLinkRestrictionPolicySerializer().deserialize(dict["previous_value"] ?? .null) + return FolderLinkRestrictionPolicyChangedDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: FolderLinkRestrictionPolicyChangedDetails.self, json: json) + } + } + } + + /// The FolderLinkRestrictionPolicyChangedType struct + public class FolderLinkRestrictionPolicyChangedType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try FolderLinkRestrictionPolicyChangedTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FolderLinkRestrictionPolicyChangedTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FolderLinkRestrictionPolicyChangedType: \(error)" + } + } + } + public class FolderLinkRestrictionPolicyChangedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FolderLinkRestrictionPolicyChangedType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FolderLinkRestrictionPolicyChangedType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return FolderLinkRestrictionPolicyChangedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: FolderLinkRestrictionPolicyChangedType.self, json: json) + } + } + } + + /// Folder's logged information. + public class FolderLogInfo: TeamLog.FileOrFolderLogInfo { + /// Number of files within the folder. + public let fileCount: UInt64? + public init(path: TeamLog.PathLogInfo, displayName: String? = nil, fileId: String? = nil, fileSize: UInt64? = nil, fileCount: UInt64? = nil) { + nullableValidator(comparableValidator())(fileCount) + self.fileCount = fileCount + super.init(path: path, displayName: displayName, fileId: fileId, fileSize: fileSize) + } + + + public override var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FolderLogInfoSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FolderLogInfo: \(error)" + } + } + } + public class FolderLogInfoSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FolderLogInfo) throws -> JSON { + let output = [ + "path": try TeamLog.PathLogInfoSerializer().serialize(value.path), + "display_name": try NullableSerializer(Serialization._StringSerializer).serialize(value.displayName), + "file_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.fileId), + "file_size": try NullableSerializer(Serialization._UInt64Serializer).serialize(value.fileSize), + "file_count": try NullableSerializer(Serialization._UInt64Serializer).serialize(value.fileCount), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FolderLogInfo { + switch json { + case .dictionary(let dict): + let path = try TeamLog.PathLogInfoSerializer().deserialize(dict["path"] ?? .null) + let displayName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["display_name"] ?? .null) + let fileId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["file_id"] ?? .null) + let fileSize = try NullableSerializer(Serialization._UInt64Serializer).deserialize(dict["file_size"] ?? .null) + let fileCount = try NullableSerializer(Serialization._UInt64Serializer).deserialize(dict["file_count"] ?? .null) + return FolderLogInfo(path: path, displayName: displayName, fileId: fileId, fileSize: fileSize, fileCount: fileCount) + default: + throw JSONSerializerError.deserializeError(type: FolderLogInfo.self, json: json) + } + } + } + + /// Updated folder overview. + public class FolderOverviewDescriptionChangedDetails: CustomStringConvertible, JSONRepresentable { + /// Folder Overview location position in the Assets list. + public let folderOverviewLocationAsset: UInt64 + public init(folderOverviewLocationAsset: UInt64) { + comparableValidator()(folderOverviewLocationAsset) + self.folderOverviewLocationAsset = folderOverviewLocationAsset + } + + func json() throws -> JSON { + try FolderOverviewDescriptionChangedDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FolderOverviewDescriptionChangedDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FolderOverviewDescriptionChangedDetails: \(error)" + } + } + } + public class FolderOverviewDescriptionChangedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FolderOverviewDescriptionChangedDetails) throws -> JSON { + let output = [ + "folder_overview_location_asset": try Serialization._UInt64Serializer.serialize(value.folderOverviewLocationAsset), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FolderOverviewDescriptionChangedDetails { + switch json { + case .dictionary(let dict): + let folderOverviewLocationAsset = try Serialization._UInt64Serializer.deserialize(dict["folder_overview_location_asset"] ?? .null) + return FolderOverviewDescriptionChangedDetails(folderOverviewLocationAsset: folderOverviewLocationAsset) + default: + throw JSONSerializerError.deserializeError(type: FolderOverviewDescriptionChangedDetails.self, json: json) + } + } + } + + /// The FolderOverviewDescriptionChangedType struct + public class FolderOverviewDescriptionChangedType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try FolderOverviewDescriptionChangedTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FolderOverviewDescriptionChangedTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FolderOverviewDescriptionChangedType: \(error)" + } + } + } + public class FolderOverviewDescriptionChangedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FolderOverviewDescriptionChangedType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FolderOverviewDescriptionChangedType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return FolderOverviewDescriptionChangedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: FolderOverviewDescriptionChangedType.self, json: json) + } + } + } + + /// Pinned item to folder overview. + public class FolderOverviewItemPinnedDetails: CustomStringConvertible, JSONRepresentable { + /// Folder Overview location position in the Assets list. + public let folderOverviewLocationAsset: UInt64 + /// Pinned items positions in the Assets list. + public let pinnedItemsAssetIndices: Array + public init(folderOverviewLocationAsset: UInt64, pinnedItemsAssetIndices: Array) { + comparableValidator()(folderOverviewLocationAsset) + self.folderOverviewLocationAsset = folderOverviewLocationAsset + arrayValidator(itemValidator: comparableValidator())(pinnedItemsAssetIndices) + self.pinnedItemsAssetIndices = pinnedItemsAssetIndices + } + + func json() throws -> JSON { + try FolderOverviewItemPinnedDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FolderOverviewItemPinnedDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FolderOverviewItemPinnedDetails: \(error)" + } + } + } + public class FolderOverviewItemPinnedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FolderOverviewItemPinnedDetails) throws -> JSON { + let output = [ + "folder_overview_location_asset": try Serialization._UInt64Serializer.serialize(value.folderOverviewLocationAsset), + "pinned_items_asset_indices": try ArraySerializer(Serialization._UInt64Serializer).serialize(value.pinnedItemsAssetIndices), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FolderOverviewItemPinnedDetails { + switch json { + case .dictionary(let dict): + let folderOverviewLocationAsset = try Serialization._UInt64Serializer.deserialize(dict["folder_overview_location_asset"] ?? .null) + let pinnedItemsAssetIndices = try ArraySerializer(Serialization._UInt64Serializer).deserialize(dict["pinned_items_asset_indices"] ?? .null) + return FolderOverviewItemPinnedDetails(folderOverviewLocationAsset: folderOverviewLocationAsset, pinnedItemsAssetIndices: pinnedItemsAssetIndices) + default: + throw JSONSerializerError.deserializeError(type: FolderOverviewItemPinnedDetails.self, json: json) + } + } + } + + /// The FolderOverviewItemPinnedType struct + public class FolderOverviewItemPinnedType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try FolderOverviewItemPinnedTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FolderOverviewItemPinnedTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FolderOverviewItemPinnedType: \(error)" + } + } + } + public class FolderOverviewItemPinnedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FolderOverviewItemPinnedType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FolderOverviewItemPinnedType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return FolderOverviewItemPinnedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: FolderOverviewItemPinnedType.self, json: json) + } + } + } + + /// Unpinned item from folder overview. + public class FolderOverviewItemUnpinnedDetails: CustomStringConvertible, JSONRepresentable { + /// Folder Overview location position in the Assets list. + public let folderOverviewLocationAsset: UInt64 + /// Pinned items positions in the Assets list. + public let pinnedItemsAssetIndices: Array + public init(folderOverviewLocationAsset: UInt64, pinnedItemsAssetIndices: Array) { + comparableValidator()(folderOverviewLocationAsset) + self.folderOverviewLocationAsset = folderOverviewLocationAsset + arrayValidator(itemValidator: comparableValidator())(pinnedItemsAssetIndices) + self.pinnedItemsAssetIndices = pinnedItemsAssetIndices + } + + func json() throws -> JSON { + try FolderOverviewItemUnpinnedDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FolderOverviewItemUnpinnedDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FolderOverviewItemUnpinnedDetails: \(error)" + } + } + } + public class FolderOverviewItemUnpinnedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FolderOverviewItemUnpinnedDetails) throws -> JSON { + let output = [ + "folder_overview_location_asset": try Serialization._UInt64Serializer.serialize(value.folderOverviewLocationAsset), + "pinned_items_asset_indices": try ArraySerializer(Serialization._UInt64Serializer).serialize(value.pinnedItemsAssetIndices), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FolderOverviewItemUnpinnedDetails { + switch json { + case .dictionary(let dict): + let folderOverviewLocationAsset = try Serialization._UInt64Serializer.deserialize(dict["folder_overview_location_asset"] ?? .null) + let pinnedItemsAssetIndices = try ArraySerializer(Serialization._UInt64Serializer).deserialize(dict["pinned_items_asset_indices"] ?? .null) + return FolderOverviewItemUnpinnedDetails(folderOverviewLocationAsset: folderOverviewLocationAsset, pinnedItemsAssetIndices: pinnedItemsAssetIndices) + default: + throw JSONSerializerError.deserializeError(type: FolderOverviewItemUnpinnedDetails.self, json: json) + } + } + } + + /// The FolderOverviewItemUnpinnedType struct + public class FolderOverviewItemUnpinnedType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try FolderOverviewItemUnpinnedTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try FolderOverviewItemUnpinnedTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for FolderOverviewItemUnpinnedType: \(error)" + } + } + } + public class FolderOverviewItemUnpinnedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: FolderOverviewItemUnpinnedType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> FolderOverviewItemUnpinnedType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return FolderOverviewItemUnpinnedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: FolderOverviewItemUnpinnedType.self, json: json) + } + } + } + + /// Geographic location details. + public class GeoLocationLogInfo: CustomStringConvertible, JSONRepresentable { + /// City name. + public let city: String? + /// Region name. + public let region: String? + /// Country code. + public let country: String? + /// IP address. + public let ipAddress: String + public init(ipAddress: String, city: String? = nil, region: String? = nil, country: String? = nil) { + nullableValidator(stringValidator())(city) + self.city = city + nullableValidator(stringValidator())(region) + self.region = region + nullableValidator(stringValidator())(country) + self.country = country + stringValidator()(ipAddress) + self.ipAddress = ipAddress + } + + func json() throws -> JSON { + try GeoLocationLogInfoSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try GeoLocationLogInfoSerializer().serialize(self)))" + } catch { + return "Failed to generate description for GeoLocationLogInfo: \(error)" + } + } + } + public class GeoLocationLogInfoSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GeoLocationLogInfo) throws -> JSON { + let output = [ + "ip_address": try Serialization._StringSerializer.serialize(value.ipAddress), + "city": try NullableSerializer(Serialization._StringSerializer).serialize(value.city), + "region": try NullableSerializer(Serialization._StringSerializer).serialize(value.region), + "country": try NullableSerializer(Serialization._StringSerializer).serialize(value.country), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> GeoLocationLogInfo { + switch json { + case .dictionary(let dict): + let ipAddress = try Serialization._StringSerializer.deserialize(dict["ip_address"] ?? .null) + let city = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["city"] ?? .null) + let region = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["region"] ?? .null) + let country = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["country"] ?? .null) + return GeoLocationLogInfo(ipAddress: ipAddress, city: city, region: region, country: country) + default: + throw JSONSerializerError.deserializeError(type: GeoLocationLogInfo.self, json: json) + } + } + } + + /// The GetTeamEventsArg struct + public class GetTeamEventsArg: CustomStringConvertible, JSONRepresentable { + /// The maximal number of results to return per call. Note that some calls may not return limit number of + /// events, and may even return no events, even with `has_more` set to true. In this case, callers + /// should fetch again using getEventsContinue. + public let limit: UInt32 + /// Filter the events by account ID. Return only events with this account_id as either Actor, Context, or + /// Participants. + public let accountId: String? + /// Filter by time range. + public let time: TeamCommon.TimeRange? + /// Filter the returned events to a single category. Note that category shouldn't be provided together with + /// event_type. + public let category: TeamLog.EventCategory? + /// Filter the returned events to a single event type. Note that event_type shouldn't be provided together with + /// category. + public let eventType: TeamLog.EventTypeArg? + public init(limit: UInt32 = 1000, accountId: String? = nil, time: TeamCommon.TimeRange? = nil, category: TeamLog.EventCategory? = nil, eventType: TeamLog.EventTypeArg? = nil) { + comparableValidator(minValue: 1, maxValue: 1000)(limit) + self.limit = limit + nullableValidator(stringValidator(minLength: 40, maxLength: 40))(accountId) + self.accountId = accountId + self.time = time + self.category = category + self.eventType = eventType + } + + func json() throws -> JSON { + try GetTeamEventsArgSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try GetTeamEventsArgSerializer().serialize(self)))" + } catch { + return "Failed to generate description for GetTeamEventsArg: \(error)" + } + } + } + public class GetTeamEventsArgSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GetTeamEventsArg) throws -> JSON { + let output = [ + "limit": try Serialization._UInt32Serializer.serialize(value.limit), + "account_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.accountId), + "time": try NullableSerializer(TeamCommon.TimeRangeSerializer()).serialize(value.time), + "category": try NullableSerializer(TeamLog.EventCategorySerializer()).serialize(value.category), + "event_type": try NullableSerializer(TeamLog.EventTypeArgSerializer()).serialize(value.eventType), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> GetTeamEventsArg { + switch json { + case .dictionary(let dict): + let limit = try Serialization._UInt32Serializer.deserialize(dict["limit"] ?? .number(1000)) + let accountId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["account_id"] ?? .null) + let time = try NullableSerializer(TeamCommon.TimeRangeSerializer()).deserialize(dict["time"] ?? .null) + let category = try NullableSerializer(TeamLog.EventCategorySerializer()).deserialize(dict["category"] ?? .null) + let eventType = try NullableSerializer(TeamLog.EventTypeArgSerializer()).deserialize(dict["event_type"] ?? .null) + return GetTeamEventsArg(limit: limit, accountId: accountId, time: time, category: category, eventType: eventType) + default: + throw JSONSerializerError.deserializeError(type: GetTeamEventsArg.self, json: json) + } + } + } + + /// The GetTeamEventsContinueArg struct + public class GetTeamEventsContinueArg: CustomStringConvertible, JSONRepresentable { + /// Indicates from what point to get the next set of events. + public let cursor: String + public init(cursor: String) { + stringValidator()(cursor) + self.cursor = cursor + } + + func json() throws -> JSON { + try GetTeamEventsContinueArgSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try GetTeamEventsContinueArgSerializer().serialize(self)))" + } catch { + return "Failed to generate description for GetTeamEventsContinueArg: \(error)" + } + } + } + public class GetTeamEventsContinueArgSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GetTeamEventsContinueArg) throws -> JSON { + let output = [ + "cursor": try Serialization._StringSerializer.serialize(value.cursor), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> GetTeamEventsContinueArg { + switch json { + case .dictionary(let dict): + let cursor = try Serialization._StringSerializer.deserialize(dict["cursor"] ?? .null) + return GetTeamEventsContinueArg(cursor: cursor) + default: + throw JSONSerializerError.deserializeError(type: GetTeamEventsContinueArg.self, json: json) + } + } + } + + /// Errors that can be raised when calling getEventsContinue. + public enum GetTeamEventsContinueError: CustomStringConvertible, JSONRepresentable { + /// Bad cursor. + case badCursor + /// Cursors are intended to be used quickly. Individual cursor values are normally valid for days, but in rare + /// cases may be reset sooner. Cursor reset errors should be handled by fetching a new cursor from + /// getEvents. The associated value is the approximate timestamp of the most recent event returned by + /// the cursor. This should be used as a resumption point when calling getEvents to obtain a new cursor. + case reset(Date) + /// An unspecified error. + case other + + func json() throws -> JSON { + try GetTeamEventsContinueErrorSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try EventTypeArgSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GetTeamEventsContinueErrorSerializer().serialize(self)))" } catch { - return "Failed to generate description for EventTypeArg: \(error)" + return "Failed to generate description for GetTeamEventsContinueError: \(error)" + } + } + } + public class GetTeamEventsContinueErrorSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GetTeamEventsContinueError) throws -> JSON { + switch value { + case .badCursor: + var d = [String: JSON]() + d[".tag"] = .str("bad_cursor") + return .dictionary(d) + case .reset(let arg): + var d = try ["reset": NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").serialize(arg)] + d[".tag"] = .str("reset") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> GetTeamEventsContinueError { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "bad_cursor": + return GetTeamEventsContinueError.badCursor + case "reset": + let v = try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").deserialize(d["reset"] ?? .null) + return GetTeamEventsContinueError.reset(v) + case "other": + return GetTeamEventsContinueError.other + default: + return GetTeamEventsContinueError.other + } + default: + throw JSONSerializerError.deserializeError(type: GetTeamEventsContinueError.self, json: json) } } } - public class EventTypeArgSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: EventTypeArg) throws -> JSON { + /// Errors that can be raised when calling getEvents. + public enum GetTeamEventsError: CustomStringConvertible, JSONRepresentable { + /// No user found matching the provided account_id. + case accountIdNotFound + /// Invalid time range. + case invalidTimeRange + /// Invalid filters. Do not specify both event_type and category parameters for the same call. + case invalidFilters + /// An unspecified error. + case other + + func json() throws -> JSON { + try GetTeamEventsErrorSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try GetTeamEventsErrorSerializer().serialize(self)))" + } catch { + return "Failed to generate description for GetTeamEventsError: \(error)" + } + } + } + public class GetTeamEventsErrorSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GetTeamEventsError) throws -> JSON { switch value { - case .adminAlertingAlertStateChanged: - var d = [String: JSON]() - d[".tag"] = .str("admin_alerting_alert_state_changed") - return .dictionary(d) - case .adminAlertingChangedAlertConfig: - var d = [String: JSON]() - d[".tag"] = .str("admin_alerting_changed_alert_config") - return .dictionary(d) - case .adminAlertingTriggeredAlert: - var d = [String: JSON]() - d[".tag"] = .str("admin_alerting_triggered_alert") - return .dictionary(d) - case .ransomwareRestoreProcessCompleted: - var d = [String: JSON]() - d[".tag"] = .str("ransomware_restore_process_completed") - return .dictionary(d) - case .ransomwareRestoreProcessStarted: - var d = [String: JSON]() - d[".tag"] = .str("ransomware_restore_process_started") - return .dictionary(d) - case .appBlockedByPermissions: - var d = [String: JSON]() - d[".tag"] = .str("app_blocked_by_permissions") - return .dictionary(d) - case .appLinkTeam: - var d = [String: JSON]() - d[".tag"] = .str("app_link_team") - return .dictionary(d) - case .appLinkUser: - var d = [String: JSON]() - d[".tag"] = .str("app_link_user") - return .dictionary(d) - case .appUnlinkTeam: - var d = [String: JSON]() - d[".tag"] = .str("app_unlink_team") - return .dictionary(d) - case .appUnlinkUser: - var d = [String: JSON]() - d[".tag"] = .str("app_unlink_user") - return .dictionary(d) - case .integrationConnected: - var d = [String: JSON]() - d[".tag"] = .str("integration_connected") - return .dictionary(d) - case .integrationDisconnected: - var d = [String: JSON]() - d[".tag"] = .str("integration_disconnected") - return .dictionary(d) - case .fileAddComment: - var d = [String: JSON]() - d[".tag"] = .str("file_add_comment") - return .dictionary(d) - case .fileChangeCommentSubscription: - var d = [String: JSON]() - d[".tag"] = .str("file_change_comment_subscription") - return .dictionary(d) - case .fileDeleteComment: - var d = [String: JSON]() - d[".tag"] = .str("file_delete_comment") - return .dictionary(d) - case .fileEditComment: - var d = [String: JSON]() - d[".tag"] = .str("file_edit_comment") - return .dictionary(d) - case .fileLikeComment: - var d = [String: JSON]() - d[".tag"] = .str("file_like_comment") - return .dictionary(d) - case .fileResolveComment: - var d = [String: JSON]() - d[".tag"] = .str("file_resolve_comment") - return .dictionary(d) - case .fileUnlikeComment: - var d = [String: JSON]() - d[".tag"] = .str("file_unlike_comment") - return .dictionary(d) - case .fileUnresolveComment: - var d = [String: JSON]() - d[".tag"] = .str("file_unresolve_comment") - return .dictionary(d) - case .governancePolicyAddFolders: - var d = [String: JSON]() - d[".tag"] = .str("governance_policy_add_folders") - return .dictionary(d) - case .governancePolicyAddFolderFailed: - var d = [String: JSON]() - d[".tag"] = .str("governance_policy_add_folder_failed") - return .dictionary(d) - case .governancePolicyContentDisposed: - var d = [String: JSON]() - d[".tag"] = .str("governance_policy_content_disposed") - return .dictionary(d) - case .governancePolicyCreate: - var d = [String: JSON]() - d[".tag"] = .str("governance_policy_create") - return .dictionary(d) - case .governancePolicyDelete: - var d = [String: JSON]() - d[".tag"] = .str("governance_policy_delete") - return .dictionary(d) - case .governancePolicyEditDetails: - var d = [String: JSON]() - d[".tag"] = .str("governance_policy_edit_details") - return .dictionary(d) - case .governancePolicyEditDuration: - var d = [String: JSON]() - d[".tag"] = .str("governance_policy_edit_duration") - return .dictionary(d) - case .governancePolicyExportCreated: - var d = [String: JSON]() - d[".tag"] = .str("governance_policy_export_created") - return .dictionary(d) - case .governancePolicyExportRemoved: - var d = [String: JSON]() - d[".tag"] = .str("governance_policy_export_removed") - return .dictionary(d) - case .governancePolicyRemoveFolders: - var d = [String: JSON]() - d[".tag"] = .str("governance_policy_remove_folders") - return .dictionary(d) - case .governancePolicyReportCreated: - var d = [String: JSON]() - d[".tag"] = .str("governance_policy_report_created") - return .dictionary(d) - case .governancePolicyZipPartDownloaded: - var d = [String: JSON]() - d[".tag"] = .str("governance_policy_zip_part_downloaded") - return .dictionary(d) - case .legalHoldsActivateAHold: - var d = [String: JSON]() - d[".tag"] = .str("legal_holds_activate_a_hold") - return .dictionary(d) - case .legalHoldsAddMembers: - var d = [String: JSON]() - d[".tag"] = .str("legal_holds_add_members") - return .dictionary(d) - case .legalHoldsChangeHoldDetails: - var d = [String: JSON]() - d[".tag"] = .str("legal_holds_change_hold_details") - return .dictionary(d) - case .legalHoldsChangeHoldName: - var d = [String: JSON]() - d[".tag"] = .str("legal_holds_change_hold_name") - return .dictionary(d) - case .legalHoldsExportAHold: - var d = [String: JSON]() - d[".tag"] = .str("legal_holds_export_a_hold") - return .dictionary(d) - case .legalHoldsExportCancelled: - var d = [String: JSON]() - d[".tag"] = .str("legal_holds_export_cancelled") - return .dictionary(d) - case .legalHoldsExportDownloaded: - var d = [String: JSON]() - d[".tag"] = .str("legal_holds_export_downloaded") - return .dictionary(d) - case .legalHoldsExportRemoved: - var d = [String: JSON]() - d[".tag"] = .str("legal_holds_export_removed") - return .dictionary(d) - case .legalHoldsReleaseAHold: - var d = [String: JSON]() - d[".tag"] = .str("legal_holds_release_a_hold") - return .dictionary(d) - case .legalHoldsRemoveMembers: - var d = [String: JSON]() - d[".tag"] = .str("legal_holds_remove_members") - return .dictionary(d) - case .legalHoldsReportAHold: - var d = [String: JSON]() - d[".tag"] = .str("legal_holds_report_a_hold") - return .dictionary(d) - case .deviceChangeIpDesktop: - var d = [String: JSON]() - d[".tag"] = .str("device_change_ip_desktop") - return .dictionary(d) - case .deviceChangeIpMobile: - var d = [String: JSON]() - d[".tag"] = .str("device_change_ip_mobile") - return .dictionary(d) - case .deviceChangeIpWeb: - var d = [String: JSON]() - d[".tag"] = .str("device_change_ip_web") - return .dictionary(d) - case .deviceDeleteOnUnlinkFail: - var d = [String: JSON]() - d[".tag"] = .str("device_delete_on_unlink_fail") - return .dictionary(d) - case .deviceDeleteOnUnlinkSuccess: - var d = [String: JSON]() - d[".tag"] = .str("device_delete_on_unlink_success") - return .dictionary(d) - case .deviceLinkFail: - var d = [String: JSON]() - d[".tag"] = .str("device_link_fail") - return .dictionary(d) - case .deviceLinkSuccess: - var d = [String: JSON]() - d[".tag"] = .str("device_link_success") - return .dictionary(d) - case .deviceManagementDisabled: - var d = [String: JSON]() - d[".tag"] = .str("device_management_disabled") - return .dictionary(d) - case .deviceManagementEnabled: - var d = [String: JSON]() - d[".tag"] = .str("device_management_enabled") - return .dictionary(d) - case .deviceSyncBackupStatusChanged: - var d = [String: JSON]() - d[".tag"] = .str("device_sync_backup_status_changed") - return .dictionary(d) - case .deviceUnlink: - var d = [String: JSON]() - d[".tag"] = .str("device_unlink") - return .dictionary(d) - case .dropboxPasswordsExported: - var d = [String: JSON]() - d[".tag"] = .str("dropbox_passwords_exported") - return .dictionary(d) - case .dropboxPasswordsNewDeviceEnrolled: - var d = [String: JSON]() - d[".tag"] = .str("dropbox_passwords_new_device_enrolled") - return .dictionary(d) - case .emmRefreshAuthToken: - var d = [String: JSON]() - d[".tag"] = .str("emm_refresh_auth_token") - return .dictionary(d) - case .externalDriveBackupEligibilityStatusChecked: - var d = [String: JSON]() - d[".tag"] = .str("external_drive_backup_eligibility_status_checked") - return .dictionary(d) - case .externalDriveBackupStatusChanged: - var d = [String: JSON]() - d[".tag"] = .str("external_drive_backup_status_changed") - return .dictionary(d) - case .accountCaptureChangeAvailability: - var d = [String: JSON]() - d[".tag"] = .str("account_capture_change_availability") - return .dictionary(d) - case .accountCaptureMigrateAccount: - var d = [String: JSON]() - d[".tag"] = .str("account_capture_migrate_account") - return .dictionary(d) - case .accountCaptureNotificationEmailsSent: - var d = [String: JSON]() - d[".tag"] = .str("account_capture_notification_emails_sent") - return .dictionary(d) - case .accountCaptureRelinquishAccount: - var d = [String: JSON]() - d[".tag"] = .str("account_capture_relinquish_account") - return .dictionary(d) - case .disabledDomainInvites: - var d = [String: JSON]() - d[".tag"] = .str("disabled_domain_invites") - return .dictionary(d) - case .domainInvitesApproveRequestToJoinTeam: - var d = [String: JSON]() - d[".tag"] = .str("domain_invites_approve_request_to_join_team") - return .dictionary(d) - case .domainInvitesDeclineRequestToJoinTeam: - var d = [String: JSON]() - d[".tag"] = .str("domain_invites_decline_request_to_join_team") - return .dictionary(d) - case .domainInvitesEmailExistingUsers: - var d = [String: JSON]() - d[".tag"] = .str("domain_invites_email_existing_users") - return .dictionary(d) - case .domainInvitesRequestToJoinTeam: - var d = [String: JSON]() - d[".tag"] = .str("domain_invites_request_to_join_team") - return .dictionary(d) - case .domainInvitesSetInviteNewUserPrefToNo: - var d = [String: JSON]() - d[".tag"] = .str("domain_invites_set_invite_new_user_pref_to_no") - return .dictionary(d) - case .domainInvitesSetInviteNewUserPrefToYes: - var d = [String: JSON]() - d[".tag"] = .str("domain_invites_set_invite_new_user_pref_to_yes") - return .dictionary(d) - case .domainVerificationAddDomainFail: - var d = [String: JSON]() - d[".tag"] = .str("domain_verification_add_domain_fail") - return .dictionary(d) - case .domainVerificationAddDomainSuccess: - var d = [String: JSON]() - d[".tag"] = .str("domain_verification_add_domain_success") - return .dictionary(d) - case .domainVerificationRemoveDomain: - var d = [String: JSON]() - d[".tag"] = .str("domain_verification_remove_domain") - return .dictionary(d) - case .enabledDomainInvites: - var d = [String: JSON]() - d[".tag"] = .str("enabled_domain_invites") - return .dictionary(d) - case .teamEncryptionKeyCancelKeyDeletion: - var d = [String: JSON]() - d[".tag"] = .str("team_encryption_key_cancel_key_deletion") - return .dictionary(d) - case .teamEncryptionKeyCreateKey: - var d = [String: JSON]() - d[".tag"] = .str("team_encryption_key_create_key") - return .dictionary(d) - case .teamEncryptionKeyDeleteKey: - var d = [String: JSON]() - d[".tag"] = .str("team_encryption_key_delete_key") - return .dictionary(d) - case .teamEncryptionKeyDisableKey: - var d = [String: JSON]() - d[".tag"] = .str("team_encryption_key_disable_key") - return .dictionary(d) - case .teamEncryptionKeyEnableKey: - var d = [String: JSON]() - d[".tag"] = .str("team_encryption_key_enable_key") - return .dictionary(d) - case .teamEncryptionKeyRotateKey: - var d = [String: JSON]() - d[".tag"] = .str("team_encryption_key_rotate_key") - return .dictionary(d) - case .teamEncryptionKeyScheduleKeyDeletion: - var d = [String: JSON]() - d[".tag"] = .str("team_encryption_key_schedule_key_deletion") - return .dictionary(d) - case .applyNamingConvention: - var d = [String: JSON]() - d[".tag"] = .str("apply_naming_convention") - return .dictionary(d) - case .createFolder: - var d = [String: JSON]() - d[".tag"] = .str("create_folder") - return .dictionary(d) - case .fileAdd: - var d = [String: JSON]() - d[".tag"] = .str("file_add") - return .dictionary(d) - case .fileAddFromAutomation: - var d = [String: JSON]() - d[".tag"] = .str("file_add_from_automation") - return .dictionary(d) - case .fileCopy: - var d = [String: JSON]() - d[".tag"] = .str("file_copy") - return .dictionary(d) - case .fileDelete: - var d = [String: JSON]() - d[".tag"] = .str("file_delete") - return .dictionary(d) - case .fileDownload: - var d = [String: JSON]() - d[".tag"] = .str("file_download") - return .dictionary(d) - case .fileEdit: - var d = [String: JSON]() - d[".tag"] = .str("file_edit") - return .dictionary(d) - case .fileGetCopyReference: - var d = [String: JSON]() - d[".tag"] = .str("file_get_copy_reference") - return .dictionary(d) - case .fileLockingLockStatusChanged: - var d = [String: JSON]() - d[".tag"] = .str("file_locking_lock_status_changed") - return .dictionary(d) - case .fileMove: - var d = [String: JSON]() - d[".tag"] = .str("file_move") - return .dictionary(d) - case .filePermanentlyDelete: - var d = [String: JSON]() - d[".tag"] = .str("file_permanently_delete") - return .dictionary(d) - case .filePreview: - var d = [String: JSON]() - d[".tag"] = .str("file_preview") - return .dictionary(d) - case .fileRename: - var d = [String: JSON]() - d[".tag"] = .str("file_rename") - return .dictionary(d) - case .fileRestore: - var d = [String: JSON]() - d[".tag"] = .str("file_restore") - return .dictionary(d) - case .fileRevert: - var d = [String: JSON]() - d[".tag"] = .str("file_revert") - return .dictionary(d) - case .fileRollbackChanges: - var d = [String: JSON]() - d[".tag"] = .str("file_rollback_changes") - return .dictionary(d) - case .fileSaveCopyReference: - var d = [String: JSON]() - d[".tag"] = .str("file_save_copy_reference") - return .dictionary(d) - case .folderOverviewDescriptionChanged: - var d = [String: JSON]() - d[".tag"] = .str("folder_overview_description_changed") - return .dictionary(d) - case .folderOverviewItemPinned: - var d = [String: JSON]() - d[".tag"] = .str("folder_overview_item_pinned") - return .dictionary(d) - case .folderOverviewItemUnpinned: - var d = [String: JSON]() - d[".tag"] = .str("folder_overview_item_unpinned") - return .dictionary(d) - case .objectLabelAdded: - var d = [String: JSON]() - d[".tag"] = .str("object_label_added") - return .dictionary(d) - case .objectLabelRemoved: - var d = [String: JSON]() - d[".tag"] = .str("object_label_removed") - return .dictionary(d) - case .objectLabelUpdatedValue: - var d = [String: JSON]() - d[".tag"] = .str("object_label_updated_value") - return .dictionary(d) - case .organizeFolderWithTidy: - var d = [String: JSON]() - d[".tag"] = .str("organize_folder_with_tidy") - return .dictionary(d) - case .replayFileDelete: - var d = [String: JSON]() - d[".tag"] = .str("replay_file_delete") - return .dictionary(d) - case .rewindFolder: - var d = [String: JSON]() - d[".tag"] = .str("rewind_folder") - return .dictionary(d) - case .undoNamingConvention: - var d = [String: JSON]() - d[".tag"] = .str("undo_naming_convention") - return .dictionary(d) - case .undoOrganizeFolderWithTidy: - var d = [String: JSON]() - d[".tag"] = .str("undo_organize_folder_with_tidy") - return .dictionary(d) - case .userTagsAdded: - var d = [String: JSON]() - d[".tag"] = .str("user_tags_added") - return .dictionary(d) - case .userTagsRemoved: - var d = [String: JSON]() - d[".tag"] = .str("user_tags_removed") - return .dictionary(d) - case .emailIngestReceiveFile: - var d = [String: JSON]() - d[".tag"] = .str("email_ingest_receive_file") - return .dictionary(d) - case .fileRequestChange: - var d = [String: JSON]() - d[".tag"] = .str("file_request_change") - return .dictionary(d) - case .fileRequestClose: - var d = [String: JSON]() - d[".tag"] = .str("file_request_close") - return .dictionary(d) - case .fileRequestCreate: - var d = [String: JSON]() - d[".tag"] = .str("file_request_create") - return .dictionary(d) - case .fileRequestDelete: - var d = [String: JSON]() - d[".tag"] = .str("file_request_delete") - return .dictionary(d) - case .fileRequestReceiveFile: - var d = [String: JSON]() - d[".tag"] = .str("file_request_receive_file") - return .dictionary(d) - case .groupAddExternalId: - var d = [String: JSON]() - d[".tag"] = .str("group_add_external_id") - return .dictionary(d) - case .groupAddMember: - var d = [String: JSON]() - d[".tag"] = .str("group_add_member") - return .dictionary(d) - case .groupChangeExternalId: - var d = [String: JSON]() - d[".tag"] = .str("group_change_external_id") - return .dictionary(d) - case .groupChangeManagementType: - var d = [String: JSON]() - d[".tag"] = .str("group_change_management_type") - return .dictionary(d) - case .groupChangeMemberRole: - var d = [String: JSON]() - d[".tag"] = .str("group_change_member_role") - return .dictionary(d) - case .groupCreate: - var d = [String: JSON]() - d[".tag"] = .str("group_create") - return .dictionary(d) - case .groupDelete: - var d = [String: JSON]() - d[".tag"] = .str("group_delete") - return .dictionary(d) - case .groupDescriptionUpdated: - var d = [String: JSON]() - d[".tag"] = .str("group_description_updated") - return .dictionary(d) - case .groupJoinPolicyUpdated: - var d = [String: JSON]() - d[".tag"] = .str("group_join_policy_updated") - return .dictionary(d) - case .groupMoved: - var d = [String: JSON]() - d[".tag"] = .str("group_moved") - return .dictionary(d) - case .groupRemoveExternalId: - var d = [String: JSON]() - d[".tag"] = .str("group_remove_external_id") - return .dictionary(d) - case .groupRemoveMember: - var d = [String: JSON]() - d[".tag"] = .str("group_remove_member") - return .dictionary(d) - case .groupRename: - var d = [String: JSON]() - d[".tag"] = .str("group_rename") - return .dictionary(d) - case .accountLockOrUnlocked: - var d = [String: JSON]() - d[".tag"] = .str("account_lock_or_unlocked") - return .dictionary(d) - case .emmError: - var d = [String: JSON]() - d[".tag"] = .str("emm_error") - return .dictionary(d) - case .guestAdminSignedInViaTrustedTeams: - var d = [String: JSON]() - d[".tag"] = .str("guest_admin_signed_in_via_trusted_teams") - return .dictionary(d) - case .guestAdminSignedOutViaTrustedTeams: - var d = [String: JSON]() - d[".tag"] = .str("guest_admin_signed_out_via_trusted_teams") - return .dictionary(d) - case .loginFail: - var d = [String: JSON]() - d[".tag"] = .str("login_fail") - return .dictionary(d) - case .loginSuccess: - var d = [String: JSON]() - d[".tag"] = .str("login_success") - return .dictionary(d) - case .logout: - var d = [String: JSON]() - d[".tag"] = .str("logout") - return .dictionary(d) - case .resellerSupportSessionEnd: - var d = [String: JSON]() - d[".tag"] = .str("reseller_support_session_end") - return .dictionary(d) - case .resellerSupportSessionStart: - var d = [String: JSON]() - d[".tag"] = .str("reseller_support_session_start") - return .dictionary(d) - case .signInAsSessionEnd: - var d = [String: JSON]() - d[".tag"] = .str("sign_in_as_session_end") - return .dictionary(d) - case .signInAsSessionStart: - var d = [String: JSON]() - d[".tag"] = .str("sign_in_as_session_start") - return .dictionary(d) - case .ssoError: - var d = [String: JSON]() - d[".tag"] = .str("sso_error") - return .dictionary(d) - case .backupAdminInvitationSent: - var d = [String: JSON]() - d[".tag"] = .str("backup_admin_invitation_sent") - return .dictionary(d) - case .backupInvitationOpened: - var d = [String: JSON]() - d[".tag"] = .str("backup_invitation_opened") - return .dictionary(d) - case .createTeamInviteLink: - var d = [String: JSON]() - d[".tag"] = .str("create_team_invite_link") - return .dictionary(d) - case .deleteTeamInviteLink: - var d = [String: JSON]() - d[".tag"] = .str("delete_team_invite_link") - return .dictionary(d) - case .memberAddExternalId: - var d = [String: JSON]() - d[".tag"] = .str("member_add_external_id") - return .dictionary(d) - case .memberAddName: - var d = [String: JSON]() - d[".tag"] = .str("member_add_name") - return .dictionary(d) - case .memberChangeAdminRole: - var d = [String: JSON]() - d[".tag"] = .str("member_change_admin_role") - return .dictionary(d) - case .memberChangeEmail: - var d = [String: JSON]() - d[".tag"] = .str("member_change_email") - return .dictionary(d) - case .memberChangeExternalId: - var d = [String: JSON]() - d[".tag"] = .str("member_change_external_id") - return .dictionary(d) - case .memberChangeMembershipType: - var d = [String: JSON]() - d[".tag"] = .str("member_change_membership_type") - return .dictionary(d) - case .memberChangeName: - var d = [String: JSON]() - d[".tag"] = .str("member_change_name") - return .dictionary(d) - case .memberChangeResellerRole: - var d = [String: JSON]() - d[".tag"] = .str("member_change_reseller_role") - return .dictionary(d) - case .memberChangeStatus: - var d = [String: JSON]() - d[".tag"] = .str("member_change_status") - return .dictionary(d) - case .memberDeleteManualContacts: - var d = [String: JSON]() - d[".tag"] = .str("member_delete_manual_contacts") - return .dictionary(d) - case .memberDeleteProfilePhoto: - var d = [String: JSON]() - d[".tag"] = .str("member_delete_profile_photo") - return .dictionary(d) - case .memberPermanentlyDeleteAccountContents: - var d = [String: JSON]() - d[".tag"] = .str("member_permanently_delete_account_contents") - return .dictionary(d) - case .memberRemoveExternalId: - var d = [String: JSON]() - d[".tag"] = .str("member_remove_external_id") - return .dictionary(d) - case .memberSetProfilePhoto: - var d = [String: JSON]() - d[".tag"] = .str("member_set_profile_photo") - return .dictionary(d) - case .memberSpaceLimitsAddCustomQuota: - var d = [String: JSON]() - d[".tag"] = .str("member_space_limits_add_custom_quota") - return .dictionary(d) - case .memberSpaceLimitsChangeCustomQuota: - var d = [String: JSON]() - d[".tag"] = .str("member_space_limits_change_custom_quota") - return .dictionary(d) - case .memberSpaceLimitsChangeStatus: - var d = [String: JSON]() - d[".tag"] = .str("member_space_limits_change_status") - return .dictionary(d) - case .memberSpaceLimitsRemoveCustomQuota: - var d = [String: JSON]() - d[".tag"] = .str("member_space_limits_remove_custom_quota") - return .dictionary(d) - case .memberSuggest: - var d = [String: JSON]() - d[".tag"] = .str("member_suggest") - return .dictionary(d) - case .memberTransferAccountContents: - var d = [String: JSON]() - d[".tag"] = .str("member_transfer_account_contents") - return .dictionary(d) - case .pendingSecondaryEmailAdded: - var d = [String: JSON]() - d[".tag"] = .str("pending_secondary_email_added") - return .dictionary(d) - case .secondaryEmailDeleted: - var d = [String: JSON]() - d[".tag"] = .str("secondary_email_deleted") - return .dictionary(d) - case .secondaryEmailVerified: - var d = [String: JSON]() - d[".tag"] = .str("secondary_email_verified") - return .dictionary(d) - case .secondaryMailsPolicyChanged: - var d = [String: JSON]() - d[".tag"] = .str("secondary_mails_policy_changed") - return .dictionary(d) - case .binderAddPage: - var d = [String: JSON]() - d[".tag"] = .str("binder_add_page") - return .dictionary(d) - case .binderAddSection: - var d = [String: JSON]() - d[".tag"] = .str("binder_add_section") - return .dictionary(d) - case .binderRemovePage: - var d = [String: JSON]() - d[".tag"] = .str("binder_remove_page") - return .dictionary(d) - case .binderRemoveSection: - var d = [String: JSON]() - d[".tag"] = .str("binder_remove_section") - return .dictionary(d) - case .binderRenamePage: - var d = [String: JSON]() - d[".tag"] = .str("binder_rename_page") - return .dictionary(d) - case .binderRenameSection: - var d = [String: JSON]() - d[".tag"] = .str("binder_rename_section") - return .dictionary(d) - case .binderReorderPage: - var d = [String: JSON]() - d[".tag"] = .str("binder_reorder_page") - return .dictionary(d) - case .binderReorderSection: - var d = [String: JSON]() - d[".tag"] = .str("binder_reorder_section") - return .dictionary(d) - case .paperContentAddMember: - var d = [String: JSON]() - d[".tag"] = .str("paper_content_add_member") - return .dictionary(d) - case .paperContentAddToFolder: - var d = [String: JSON]() - d[".tag"] = .str("paper_content_add_to_folder") - return .dictionary(d) - case .paperContentArchive: - var d = [String: JSON]() - d[".tag"] = .str("paper_content_archive") - return .dictionary(d) - case .paperContentCreate: - var d = [String: JSON]() - d[".tag"] = .str("paper_content_create") - return .dictionary(d) - case .paperContentPermanentlyDelete: - var d = [String: JSON]() - d[".tag"] = .str("paper_content_permanently_delete") - return .dictionary(d) - case .paperContentRemoveFromFolder: - var d = [String: JSON]() - d[".tag"] = .str("paper_content_remove_from_folder") - return .dictionary(d) - case .paperContentRemoveMember: - var d = [String: JSON]() - d[".tag"] = .str("paper_content_remove_member") - return .dictionary(d) - case .paperContentRename: - var d = [String: JSON]() - d[".tag"] = .str("paper_content_rename") - return .dictionary(d) - case .paperContentRestore: - var d = [String: JSON]() - d[".tag"] = .str("paper_content_restore") - return .dictionary(d) - case .paperDocAddComment: - var d = [String: JSON]() - d[".tag"] = .str("paper_doc_add_comment") - return .dictionary(d) - case .paperDocChangeMemberRole: - var d = [String: JSON]() - d[".tag"] = .str("paper_doc_change_member_role") - return .dictionary(d) - case .paperDocChangeSharingPolicy: - var d = [String: JSON]() - d[".tag"] = .str("paper_doc_change_sharing_policy") - return .dictionary(d) - case .paperDocChangeSubscription: - var d = [String: JSON]() - d[".tag"] = .str("paper_doc_change_subscription") - return .dictionary(d) - case .paperDocDeleted: - var d = [String: JSON]() - d[".tag"] = .str("paper_doc_deleted") - return .dictionary(d) - case .paperDocDeleteComment: - var d = [String: JSON]() - d[".tag"] = .str("paper_doc_delete_comment") - return .dictionary(d) - case .paperDocDownload: - var d = [String: JSON]() - d[".tag"] = .str("paper_doc_download") - return .dictionary(d) - case .paperDocEdit: - var d = [String: JSON]() - d[".tag"] = .str("paper_doc_edit") - return .dictionary(d) - case .paperDocEditComment: - var d = [String: JSON]() - d[".tag"] = .str("paper_doc_edit_comment") - return .dictionary(d) - case .paperDocFollowed: - var d = [String: JSON]() - d[".tag"] = .str("paper_doc_followed") - return .dictionary(d) - case .paperDocMention: - var d = [String: JSON]() - d[".tag"] = .str("paper_doc_mention") - return .dictionary(d) - case .paperDocOwnershipChanged: - var d = [String: JSON]() - d[".tag"] = .str("paper_doc_ownership_changed") - return .dictionary(d) - case .paperDocRequestAccess: - var d = [String: JSON]() - d[".tag"] = .str("paper_doc_request_access") - return .dictionary(d) - case .paperDocResolveComment: - var d = [String: JSON]() - d[".tag"] = .str("paper_doc_resolve_comment") - return .dictionary(d) - case .paperDocRevert: - var d = [String: JSON]() - d[".tag"] = .str("paper_doc_revert") - return .dictionary(d) - case .paperDocSlackShare: - var d = [String: JSON]() - d[".tag"] = .str("paper_doc_slack_share") - return .dictionary(d) - case .paperDocTeamInvite: - var d = [String: JSON]() - d[".tag"] = .str("paper_doc_team_invite") - return .dictionary(d) - case .paperDocTrashed: - var d = [String: JSON]() - d[".tag"] = .str("paper_doc_trashed") - return .dictionary(d) - case .paperDocUnresolveComment: - var d = [String: JSON]() - d[".tag"] = .str("paper_doc_unresolve_comment") - return .dictionary(d) - case .paperDocUntrashed: - var d = [String: JSON]() - d[".tag"] = .str("paper_doc_untrashed") - return .dictionary(d) - case .paperDocView: - var d = [String: JSON]() - d[".tag"] = .str("paper_doc_view") - return .dictionary(d) - case .paperExternalViewAllow: - var d = [String: JSON]() - d[".tag"] = .str("paper_external_view_allow") - return .dictionary(d) - case .paperExternalViewDefaultTeam: - var d = [String: JSON]() - d[".tag"] = .str("paper_external_view_default_team") - return .dictionary(d) - case .paperExternalViewForbid: - var d = [String: JSON]() - d[".tag"] = .str("paper_external_view_forbid") - return .dictionary(d) - case .paperFolderChangeSubscription: - var d = [String: JSON]() - d[".tag"] = .str("paper_folder_change_subscription") - return .dictionary(d) - case .paperFolderDeleted: - var d = [String: JSON]() - d[".tag"] = .str("paper_folder_deleted") - return .dictionary(d) - case .paperFolderFollowed: - var d = [String: JSON]() - d[".tag"] = .str("paper_folder_followed") - return .dictionary(d) - case .paperFolderTeamInvite: - var d = [String: JSON]() - d[".tag"] = .str("paper_folder_team_invite") - return .dictionary(d) - case .paperPublishedLinkChangePermission: - var d = [String: JSON]() - d[".tag"] = .str("paper_published_link_change_permission") - return .dictionary(d) - case .paperPublishedLinkCreate: - var d = [String: JSON]() - d[".tag"] = .str("paper_published_link_create") - return .dictionary(d) - case .paperPublishedLinkDisabled: - var d = [String: JSON]() - d[".tag"] = .str("paper_published_link_disabled") - return .dictionary(d) - case .paperPublishedLinkView: - var d = [String: JSON]() - d[".tag"] = .str("paper_published_link_view") - return .dictionary(d) - case .passwordChange: - var d = [String: JSON]() - d[".tag"] = .str("password_change") - return .dictionary(d) - case .passwordReset: - var d = [String: JSON]() - d[".tag"] = .str("password_reset") - return .dictionary(d) - case .passwordResetAll: - var d = [String: JSON]() - d[".tag"] = .str("password_reset_all") - return .dictionary(d) - case .classificationCreateReport: - var d = [String: JSON]() - d[".tag"] = .str("classification_create_report") - return .dictionary(d) - case .classificationCreateReportFail: - var d = [String: JSON]() - d[".tag"] = .str("classification_create_report_fail") - return .dictionary(d) - case .emmCreateExceptionsReport: - var d = [String: JSON]() - d[".tag"] = .str("emm_create_exceptions_report") - return .dictionary(d) - case .emmCreateUsageReport: - var d = [String: JSON]() - d[".tag"] = .str("emm_create_usage_report") - return .dictionary(d) - case .exportMembersReport: - var d = [String: JSON]() - d[".tag"] = .str("export_members_report") - return .dictionary(d) - case .exportMembersReportFail: - var d = [String: JSON]() - d[".tag"] = .str("export_members_report_fail") - return .dictionary(d) - case .externalSharingCreateReport: - var d = [String: JSON]() - d[".tag"] = .str("external_sharing_create_report") - return .dictionary(d) - case .externalSharingReportFailed: - var d = [String: JSON]() - d[".tag"] = .str("external_sharing_report_failed") - return .dictionary(d) - case .noExpirationLinkGenCreateReport: - var d = [String: JSON]() - d[".tag"] = .str("no_expiration_link_gen_create_report") - return .dictionary(d) - case .noExpirationLinkGenReportFailed: - var d = [String: JSON]() - d[".tag"] = .str("no_expiration_link_gen_report_failed") - return .dictionary(d) - case .noPasswordLinkGenCreateReport: - var d = [String: JSON]() - d[".tag"] = .str("no_password_link_gen_create_report") - return .dictionary(d) - case .noPasswordLinkGenReportFailed: - var d = [String: JSON]() - d[".tag"] = .str("no_password_link_gen_report_failed") - return .dictionary(d) - case .noPasswordLinkViewCreateReport: - var d = [String: JSON]() - d[".tag"] = .str("no_password_link_view_create_report") - return .dictionary(d) - case .noPasswordLinkViewReportFailed: - var d = [String: JSON]() - d[".tag"] = .str("no_password_link_view_report_failed") - return .dictionary(d) - case .outdatedLinkViewCreateReport: - var d = [String: JSON]() - d[".tag"] = .str("outdated_link_view_create_report") - return .dictionary(d) - case .outdatedLinkViewReportFailed: - var d = [String: JSON]() - d[".tag"] = .str("outdated_link_view_report_failed") - return .dictionary(d) - case .paperAdminExportStart: - var d = [String: JSON]() - d[".tag"] = .str("paper_admin_export_start") - return .dictionary(d) - case .ransomwareAlertCreateReport: - var d = [String: JSON]() - d[".tag"] = .str("ransomware_alert_create_report") - return .dictionary(d) - case .ransomwareAlertCreateReportFailed: - var d = [String: JSON]() - d[".tag"] = .str("ransomware_alert_create_report_failed") - return .dictionary(d) - case .smartSyncCreateAdminPrivilegeReport: - var d = [String: JSON]() - d[".tag"] = .str("smart_sync_create_admin_privilege_report") - return .dictionary(d) - case .teamActivityCreateReport: - var d = [String: JSON]() - d[".tag"] = .str("team_activity_create_report") - return .dictionary(d) - case .teamActivityCreateReportFail: - var d = [String: JSON]() - d[".tag"] = .str("team_activity_create_report_fail") - return .dictionary(d) - case .collectionShare: - var d = [String: JSON]() - d[".tag"] = .str("collection_share") - return .dictionary(d) - case .fileTransfersFileAdd: - var d = [String: JSON]() - d[".tag"] = .str("file_transfers_file_add") - return .dictionary(d) - case .fileTransfersTransferDelete: - var d = [String: JSON]() - d[".tag"] = .str("file_transfers_transfer_delete") - return .dictionary(d) - case .fileTransfersTransferDownload: - var d = [String: JSON]() - d[".tag"] = .str("file_transfers_transfer_download") - return .dictionary(d) - case .fileTransfersTransferSend: - var d = [String: JSON]() - d[".tag"] = .str("file_transfers_transfer_send") - return .dictionary(d) - case .fileTransfersTransferView: - var d = [String: JSON]() - d[".tag"] = .str("file_transfers_transfer_view") - return .dictionary(d) - case .noteAclInviteOnly: - var d = [String: JSON]() - d[".tag"] = .str("note_acl_invite_only") - return .dictionary(d) - case .noteAclLink: - var d = [String: JSON]() - d[".tag"] = .str("note_acl_link") - return .dictionary(d) - case .noteAclTeamLink: - var d = [String: JSON]() - d[".tag"] = .str("note_acl_team_link") - return .dictionary(d) - case .noteShared: - var d = [String: JSON]() - d[".tag"] = .str("note_shared") - return .dictionary(d) - case .noteShareReceive: - var d = [String: JSON]() - d[".tag"] = .str("note_share_receive") - return .dictionary(d) - case .openNoteShared: - var d = [String: JSON]() - d[".tag"] = .str("open_note_shared") - return .dictionary(d) - case .replayFileSharedLinkCreated: - var d = [String: JSON]() - d[".tag"] = .str("replay_file_shared_link_created") - return .dictionary(d) - case .replayFileSharedLinkModified: - var d = [String: JSON]() - d[".tag"] = .str("replay_file_shared_link_modified") - return .dictionary(d) - case .replayProjectTeamAdd: - var d = [String: JSON]() - d[".tag"] = .str("replay_project_team_add") - return .dictionary(d) - case .replayProjectTeamDelete: - var d = [String: JSON]() - d[".tag"] = .str("replay_project_team_delete") - return .dictionary(d) - case .sfAddGroup: - var d = [String: JSON]() - d[".tag"] = .str("sf_add_group") - return .dictionary(d) - case .sfAllowNonMembersToViewSharedLinks: - var d = [String: JSON]() - d[".tag"] = .str("sf_allow_non_members_to_view_shared_links") - return .dictionary(d) - case .sfExternalInviteWarn: - var d = [String: JSON]() - d[".tag"] = .str("sf_external_invite_warn") - return .dictionary(d) - case .sfFbInvite: - var d = [String: JSON]() - d[".tag"] = .str("sf_fb_invite") - return .dictionary(d) - case .sfFbInviteChangeRole: - var d = [String: JSON]() - d[".tag"] = .str("sf_fb_invite_change_role") - return .dictionary(d) - case .sfFbUninvite: - var d = [String: JSON]() - d[".tag"] = .str("sf_fb_uninvite") - return .dictionary(d) - case .sfInviteGroup: - var d = [String: JSON]() - d[".tag"] = .str("sf_invite_group") - return .dictionary(d) - case .sfTeamGrantAccess: - var d = [String: JSON]() - d[".tag"] = .str("sf_team_grant_access") - return .dictionary(d) - case .sfTeamInvite: - var d = [String: JSON]() - d[".tag"] = .str("sf_team_invite") - return .dictionary(d) - case .sfTeamInviteChangeRole: - var d = [String: JSON]() - d[".tag"] = .str("sf_team_invite_change_role") - return .dictionary(d) - case .sfTeamJoin: - var d = [String: JSON]() - d[".tag"] = .str("sf_team_join") - return .dictionary(d) - case .sfTeamJoinFromOobLink: - var d = [String: JSON]() - d[".tag"] = .str("sf_team_join_from_oob_link") - return .dictionary(d) - case .sfTeamUninvite: - var d = [String: JSON]() - d[".tag"] = .str("sf_team_uninvite") - return .dictionary(d) - case .sharedContentAddInvitees: - var d = [String: JSON]() - d[".tag"] = .str("shared_content_add_invitees") - return .dictionary(d) - case .sharedContentAddLinkExpiry: - var d = [String: JSON]() - d[".tag"] = .str("shared_content_add_link_expiry") - return .dictionary(d) - case .sharedContentAddLinkPassword: - var d = [String: JSON]() - d[".tag"] = .str("shared_content_add_link_password") - return .dictionary(d) - case .sharedContentAddMember: - var d = [String: JSON]() - d[".tag"] = .str("shared_content_add_member") - return .dictionary(d) - case .sharedContentChangeDownloadsPolicy: - var d = [String: JSON]() - d[".tag"] = .str("shared_content_change_downloads_policy") - return .dictionary(d) - case .sharedContentChangeInviteeRole: - var d = [String: JSON]() - d[".tag"] = .str("shared_content_change_invitee_role") - return .dictionary(d) - case .sharedContentChangeLinkAudience: - var d = [String: JSON]() - d[".tag"] = .str("shared_content_change_link_audience") - return .dictionary(d) - case .sharedContentChangeLinkExpiry: - var d = [String: JSON]() - d[".tag"] = .str("shared_content_change_link_expiry") - return .dictionary(d) - case .sharedContentChangeLinkPassword: - var d = [String: JSON]() - d[".tag"] = .str("shared_content_change_link_password") - return .dictionary(d) - case .sharedContentChangeMemberRole: - var d = [String: JSON]() - d[".tag"] = .str("shared_content_change_member_role") - return .dictionary(d) - case .sharedContentChangeViewerInfoPolicy: - var d = [String: JSON]() - d[".tag"] = .str("shared_content_change_viewer_info_policy") - return .dictionary(d) - case .sharedContentClaimInvitation: - var d = [String: JSON]() - d[".tag"] = .str("shared_content_claim_invitation") - return .dictionary(d) - case .sharedContentCopy: - var d = [String: JSON]() - d[".tag"] = .str("shared_content_copy") - return .dictionary(d) - case .sharedContentDownload: - var d = [String: JSON]() - d[".tag"] = .str("shared_content_download") - return .dictionary(d) - case .sharedContentRelinquishMembership: - var d = [String: JSON]() - d[".tag"] = .str("shared_content_relinquish_membership") - return .dictionary(d) - case .sharedContentRemoveInvitees: - var d = [String: JSON]() - d[".tag"] = .str("shared_content_remove_invitees") - return .dictionary(d) - case .sharedContentRemoveLinkExpiry: - var d = [String: JSON]() - d[".tag"] = .str("shared_content_remove_link_expiry") - return .dictionary(d) - case .sharedContentRemoveLinkPassword: - var d = [String: JSON]() - d[".tag"] = .str("shared_content_remove_link_password") - return .dictionary(d) - case .sharedContentRemoveMember: - var d = [String: JSON]() - d[".tag"] = .str("shared_content_remove_member") - return .dictionary(d) - case .sharedContentRequestAccess: - var d = [String: JSON]() - d[".tag"] = .str("shared_content_request_access") - return .dictionary(d) - case .sharedContentRestoreInvitees: - var d = [String: JSON]() - d[".tag"] = .str("shared_content_restore_invitees") - return .dictionary(d) - case .sharedContentRestoreMember: - var d = [String: JSON]() - d[".tag"] = .str("shared_content_restore_member") - return .dictionary(d) - case .sharedContentUnshare: - var d = [String: JSON]() - d[".tag"] = .str("shared_content_unshare") - return .dictionary(d) - case .sharedContentView: - var d = [String: JSON]() - d[".tag"] = .str("shared_content_view") - return .dictionary(d) - case .sharedFolderChangeLinkPolicy: - var d = [String: JSON]() - d[".tag"] = .str("shared_folder_change_link_policy") - return .dictionary(d) - case .sharedFolderChangeMembersInheritancePolicy: - var d = [String: JSON]() - d[".tag"] = .str("shared_folder_change_members_inheritance_policy") - return .dictionary(d) - case .sharedFolderChangeMembersManagementPolicy: - var d = [String: JSON]() - d[".tag"] = .str("shared_folder_change_members_management_policy") - return .dictionary(d) - case .sharedFolderChangeMembersPolicy: - var d = [String: JSON]() - d[".tag"] = .str("shared_folder_change_members_policy") - return .dictionary(d) - case .sharedFolderCreate: - var d = [String: JSON]() - d[".tag"] = .str("shared_folder_create") - return .dictionary(d) - case .sharedFolderDeclineInvitation: - var d = [String: JSON]() - d[".tag"] = .str("shared_folder_decline_invitation") - return .dictionary(d) - case .sharedFolderMount: - var d = [String: JSON]() - d[".tag"] = .str("shared_folder_mount") - return .dictionary(d) - case .sharedFolderNest: - var d = [String: JSON]() - d[".tag"] = .str("shared_folder_nest") - return .dictionary(d) - case .sharedFolderTransferOwnership: - var d = [String: JSON]() - d[".tag"] = .str("shared_folder_transfer_ownership") - return .dictionary(d) - case .sharedFolderUnmount: - var d = [String: JSON]() - d[".tag"] = .str("shared_folder_unmount") - return .dictionary(d) - case .sharedLinkAddExpiry: - var d = [String: JSON]() - d[".tag"] = .str("shared_link_add_expiry") - return .dictionary(d) - case .sharedLinkChangeExpiry: - var d = [String: JSON]() - d[".tag"] = .str("shared_link_change_expiry") - return .dictionary(d) - case .sharedLinkChangeVisibility: - var d = [String: JSON]() - d[".tag"] = .str("shared_link_change_visibility") - return .dictionary(d) - case .sharedLinkCopy: - var d = [String: JSON]() - d[".tag"] = .str("shared_link_copy") - return .dictionary(d) - case .sharedLinkCreate: - var d = [String: JSON]() - d[".tag"] = .str("shared_link_create") - return .dictionary(d) - case .sharedLinkDisable: - var d = [String: JSON]() - d[".tag"] = .str("shared_link_disable") - return .dictionary(d) - case .sharedLinkDownload: - var d = [String: JSON]() - d[".tag"] = .str("shared_link_download") - return .dictionary(d) - case .sharedLinkRemoveExpiry: - var d = [String: JSON]() - d[".tag"] = .str("shared_link_remove_expiry") - return .dictionary(d) - case .sharedLinkSettingsAddExpiration: - var d = [String: JSON]() - d[".tag"] = .str("shared_link_settings_add_expiration") - return .dictionary(d) - case .sharedLinkSettingsAddPassword: - var d = [String: JSON]() - d[".tag"] = .str("shared_link_settings_add_password") - return .dictionary(d) - case .sharedLinkSettingsAllowDownloadDisabled: - var d = [String: JSON]() - d[".tag"] = .str("shared_link_settings_allow_download_disabled") - return .dictionary(d) - case .sharedLinkSettingsAllowDownloadEnabled: - var d = [String: JSON]() - d[".tag"] = .str("shared_link_settings_allow_download_enabled") - return .dictionary(d) - case .sharedLinkSettingsChangeAudience: - var d = [String: JSON]() - d[".tag"] = .str("shared_link_settings_change_audience") - return .dictionary(d) - case .sharedLinkSettingsChangeExpiration: - var d = [String: JSON]() - d[".tag"] = .str("shared_link_settings_change_expiration") - return .dictionary(d) - case .sharedLinkSettingsChangePassword: - var d = [String: JSON]() - d[".tag"] = .str("shared_link_settings_change_password") - return .dictionary(d) - case .sharedLinkSettingsRemoveExpiration: - var d = [String: JSON]() - d[".tag"] = .str("shared_link_settings_remove_expiration") - return .dictionary(d) - case .sharedLinkSettingsRemovePassword: - var d = [String: JSON]() - d[".tag"] = .str("shared_link_settings_remove_password") - return .dictionary(d) - case .sharedLinkShare: - var d = [String: JSON]() - d[".tag"] = .str("shared_link_share") - return .dictionary(d) - case .sharedLinkView: - var d = [String: JSON]() - d[".tag"] = .str("shared_link_view") - return .dictionary(d) - case .sharedNoteOpened: - var d = [String: JSON]() - d[".tag"] = .str("shared_note_opened") - return .dictionary(d) - case .shmodelDisableDownloads: - var d = [String: JSON]() - d[".tag"] = .str("shmodel_disable_downloads") - return .dictionary(d) - case .shmodelEnableDownloads: - var d = [String: JSON]() - d[".tag"] = .str("shmodel_enable_downloads") - return .dictionary(d) - case .shmodelGroupShare: - var d = [String: JSON]() - d[".tag"] = .str("shmodel_group_share") - return .dictionary(d) - case .showcaseAccessGranted: - var d = [String: JSON]() - d[".tag"] = .str("showcase_access_granted") - return .dictionary(d) - case .showcaseAddMember: - var d = [String: JSON]() - d[".tag"] = .str("showcase_add_member") - return .dictionary(d) - case .showcaseArchived: - var d = [String: JSON]() - d[".tag"] = .str("showcase_archived") - return .dictionary(d) - case .showcaseCreated: - var d = [String: JSON]() - d[".tag"] = .str("showcase_created") - return .dictionary(d) - case .showcaseDeleteComment: - var d = [String: JSON]() - d[".tag"] = .str("showcase_delete_comment") - return .dictionary(d) - case .showcaseEdited: - var d = [String: JSON]() - d[".tag"] = .str("showcase_edited") - return .dictionary(d) - case .showcaseEditComment: - var d = [String: JSON]() - d[".tag"] = .str("showcase_edit_comment") - return .dictionary(d) - case .showcaseFileAdded: - var d = [String: JSON]() - d[".tag"] = .str("showcase_file_added") - return .dictionary(d) - case .showcaseFileDownload: - var d = [String: JSON]() - d[".tag"] = .str("showcase_file_download") - return .dictionary(d) - case .showcaseFileRemoved: - var d = [String: JSON]() - d[".tag"] = .str("showcase_file_removed") - return .dictionary(d) - case .showcaseFileView: - var d = [String: JSON]() - d[".tag"] = .str("showcase_file_view") - return .dictionary(d) - case .showcasePermanentlyDeleted: - var d = [String: JSON]() - d[".tag"] = .str("showcase_permanently_deleted") - return .dictionary(d) - case .showcasePostComment: - var d = [String: JSON]() - d[".tag"] = .str("showcase_post_comment") - return .dictionary(d) - case .showcaseRemoveMember: - var d = [String: JSON]() - d[".tag"] = .str("showcase_remove_member") - return .dictionary(d) - case .showcaseRenamed: - var d = [String: JSON]() - d[".tag"] = .str("showcase_renamed") - return .dictionary(d) - case .showcaseRequestAccess: - var d = [String: JSON]() - d[".tag"] = .str("showcase_request_access") - return .dictionary(d) - case .showcaseResolveComment: - var d = [String: JSON]() - d[".tag"] = .str("showcase_resolve_comment") - return .dictionary(d) - case .showcaseRestored: - var d = [String: JSON]() - d[".tag"] = .str("showcase_restored") - return .dictionary(d) - case .showcaseTrashed: - var d = [String: JSON]() - d[".tag"] = .str("showcase_trashed") - return .dictionary(d) - case .showcaseTrashedDeprecated: - var d = [String: JSON]() - d[".tag"] = .str("showcase_trashed_deprecated") - return .dictionary(d) - case .showcaseUnresolveComment: - var d = [String: JSON]() - d[".tag"] = .str("showcase_unresolve_comment") - return .dictionary(d) - case .showcaseUntrashed: - var d = [String: JSON]() - d[".tag"] = .str("showcase_untrashed") - return .dictionary(d) - case .showcaseUntrashedDeprecated: - var d = [String: JSON]() - d[".tag"] = .str("showcase_untrashed_deprecated") - return .dictionary(d) - case .showcaseView: - var d = [String: JSON]() - d[".tag"] = .str("showcase_view") - return .dictionary(d) - case .ssoAddCert: - var d = [String: JSON]() - d[".tag"] = .str("sso_add_cert") - return .dictionary(d) - case .ssoAddLoginUrl: - var d = [String: JSON]() - d[".tag"] = .str("sso_add_login_url") - return .dictionary(d) - case .ssoAddLogoutUrl: - var d = [String: JSON]() - d[".tag"] = .str("sso_add_logout_url") - return .dictionary(d) - case .ssoChangeCert: - var d = [String: JSON]() - d[".tag"] = .str("sso_change_cert") - return .dictionary(d) - case .ssoChangeLoginUrl: - var d = [String: JSON]() - d[".tag"] = .str("sso_change_login_url") - return .dictionary(d) - case .ssoChangeLogoutUrl: - var d = [String: JSON]() - d[".tag"] = .str("sso_change_logout_url") - return .dictionary(d) - case .ssoChangeSamlIdentityMode: - var d = [String: JSON]() - d[".tag"] = .str("sso_change_saml_identity_mode") - return .dictionary(d) - case .ssoRemoveCert: - var d = [String: JSON]() - d[".tag"] = .str("sso_remove_cert") - return .dictionary(d) - case .ssoRemoveLoginUrl: - var d = [String: JSON]() - d[".tag"] = .str("sso_remove_login_url") - return .dictionary(d) - case .ssoRemoveLogoutUrl: - var d = [String: JSON]() - d[".tag"] = .str("sso_remove_logout_url") - return .dictionary(d) - case .teamFolderChangeStatus: - var d = [String: JSON]() - d[".tag"] = .str("team_folder_change_status") - return .dictionary(d) - case .teamFolderCreate: - var d = [String: JSON]() - d[".tag"] = .str("team_folder_create") - return .dictionary(d) - case .teamFolderDowngrade: - var d = [String: JSON]() - d[".tag"] = .str("team_folder_downgrade") - return .dictionary(d) - case .teamFolderPermanentlyDelete: - var d = [String: JSON]() - d[".tag"] = .str("team_folder_permanently_delete") - return .dictionary(d) - case .teamFolderRename: - var d = [String: JSON]() - d[".tag"] = .str("team_folder_rename") - return .dictionary(d) - case .teamSelectiveSyncSettingsChanged: - var d = [String: JSON]() - d[".tag"] = .str("team_selective_sync_settings_changed") - return .dictionary(d) - case .accountCaptureChangePolicy: - var d = [String: JSON]() - d[".tag"] = .str("account_capture_change_policy") - return .dictionary(d) - case .adminEmailRemindersChanged: - var d = [String: JSON]() - d[".tag"] = .str("admin_email_reminders_changed") - return .dictionary(d) - case .allowDownloadDisabled: - var d = [String: JSON]() - d[".tag"] = .str("allow_download_disabled") - return .dictionary(d) - case .allowDownloadEnabled: - var d = [String: JSON]() - d[".tag"] = .str("allow_download_enabled") - return .dictionary(d) - case .appPermissionsChanged: - var d = [String: JSON]() - d[".tag"] = .str("app_permissions_changed") - return .dictionary(d) - case .cameraUploadsPolicyChanged: - var d = [String: JSON]() - d[".tag"] = .str("camera_uploads_policy_changed") - return .dictionary(d) - case .captureTranscriptPolicyChanged: - var d = [String: JSON]() - d[".tag"] = .str("capture_transcript_policy_changed") - return .dictionary(d) - case .classificationChangePolicy: - var d = [String: JSON]() - d[".tag"] = .str("classification_change_policy") - return .dictionary(d) - case .computerBackupPolicyChanged: - var d = [String: JSON]() - d[".tag"] = .str("computer_backup_policy_changed") - return .dictionary(d) - case .contentAdministrationPolicyChanged: - var d = [String: JSON]() - d[".tag"] = .str("content_administration_policy_changed") - return .dictionary(d) - case .dataPlacementRestrictionChangePolicy: - var d = [String: JSON]() - d[".tag"] = .str("data_placement_restriction_change_policy") - return .dictionary(d) - case .dataPlacementRestrictionSatisfyPolicy: - var d = [String: JSON]() - d[".tag"] = .str("data_placement_restriction_satisfy_policy") - return .dictionary(d) - case .deviceApprovalsAddException: - var d = [String: JSON]() - d[".tag"] = .str("device_approvals_add_exception") - return .dictionary(d) - case .deviceApprovalsChangeDesktopPolicy: - var d = [String: JSON]() - d[".tag"] = .str("device_approvals_change_desktop_policy") - return .dictionary(d) - case .deviceApprovalsChangeMobilePolicy: - var d = [String: JSON]() - d[".tag"] = .str("device_approvals_change_mobile_policy") - return .dictionary(d) - case .deviceApprovalsChangeOverageAction: - var d = [String: JSON]() - d[".tag"] = .str("device_approvals_change_overage_action") - return .dictionary(d) - case .deviceApprovalsChangeUnlinkAction: - var d = [String: JSON]() - d[".tag"] = .str("device_approvals_change_unlink_action") - return .dictionary(d) - case .deviceApprovalsRemoveException: - var d = [String: JSON]() - d[".tag"] = .str("device_approvals_remove_exception") - return .dictionary(d) - case .directoryRestrictionsAddMembers: - var d = [String: JSON]() - d[".tag"] = .str("directory_restrictions_add_members") - return .dictionary(d) - case .directoryRestrictionsRemoveMembers: - var d = [String: JSON]() - d[".tag"] = .str("directory_restrictions_remove_members") - return .dictionary(d) - case .dropboxPasswordsPolicyChanged: - var d = [String: JSON]() - d[".tag"] = .str("dropbox_passwords_policy_changed") - return .dictionary(d) - case .emailIngestPolicyChanged: - var d = [String: JSON]() - d[".tag"] = .str("email_ingest_policy_changed") - return .dictionary(d) - case .emmAddException: - var d = [String: JSON]() - d[".tag"] = .str("emm_add_exception") - return .dictionary(d) - case .emmChangePolicy: - var d = [String: JSON]() - d[".tag"] = .str("emm_change_policy") - return .dictionary(d) - case .emmRemoveException: - var d = [String: JSON]() - d[".tag"] = .str("emm_remove_exception") - return .dictionary(d) - case .extendedVersionHistoryChangePolicy: - var d = [String: JSON]() - d[".tag"] = .str("extended_version_history_change_policy") - return .dictionary(d) - case .externalDriveBackupPolicyChanged: - var d = [String: JSON]() - d[".tag"] = .str("external_drive_backup_policy_changed") - return .dictionary(d) - case .fileCommentsChangePolicy: - var d = [String: JSON]() - d[".tag"] = .str("file_comments_change_policy") - return .dictionary(d) - case .fileLockingPolicyChanged: - var d = [String: JSON]() - d[".tag"] = .str("file_locking_policy_changed") - return .dictionary(d) - case .fileProviderMigrationPolicyChanged: - var d = [String: JSON]() - d[".tag"] = .str("file_provider_migration_policy_changed") - return .dictionary(d) - case .fileRequestsChangePolicy: - var d = [String: JSON]() - d[".tag"] = .str("file_requests_change_policy") - return .dictionary(d) - case .fileRequestsEmailsEnabled: - var d = [String: JSON]() - d[".tag"] = .str("file_requests_emails_enabled") - return .dictionary(d) - case .fileRequestsEmailsRestrictedToTeamOnly: - var d = [String: JSON]() - d[".tag"] = .str("file_requests_emails_restricted_to_team_only") - return .dictionary(d) - case .fileTransfersPolicyChanged: - var d = [String: JSON]() - d[".tag"] = .str("file_transfers_policy_changed") - return .dictionary(d) - case .folderLinkRestrictionPolicyChanged: - var d = [String: JSON]() - d[".tag"] = .str("folder_link_restriction_policy_changed") - return .dictionary(d) - case .googleSsoChangePolicy: - var d = [String: JSON]() - d[".tag"] = .str("google_sso_change_policy") - return .dictionary(d) - case .groupUserManagementChangePolicy: - var d = [String: JSON]() - d[".tag"] = .str("group_user_management_change_policy") - return .dictionary(d) - case .integrationPolicyChanged: - var d = [String: JSON]() - d[".tag"] = .str("integration_policy_changed") - return .dictionary(d) - case .inviteAcceptanceEmailPolicyChanged: - var d = [String: JSON]() - d[".tag"] = .str("invite_acceptance_email_policy_changed") - return .dictionary(d) - case .memberRequestsChangePolicy: - var d = [String: JSON]() - d[".tag"] = .str("member_requests_change_policy") - return .dictionary(d) - case .memberSendInvitePolicyChanged: - var d = [String: JSON]() - d[".tag"] = .str("member_send_invite_policy_changed") - return .dictionary(d) - case .memberSpaceLimitsAddException: - var d = [String: JSON]() - d[".tag"] = .str("member_space_limits_add_exception") - return .dictionary(d) - case .memberSpaceLimitsChangeCapsTypePolicy: - var d = [String: JSON]() - d[".tag"] = .str("member_space_limits_change_caps_type_policy") - return .dictionary(d) - case .memberSpaceLimitsChangePolicy: - var d = [String: JSON]() - d[".tag"] = .str("member_space_limits_change_policy") - return .dictionary(d) - case .memberSpaceLimitsRemoveException: - var d = [String: JSON]() - d[".tag"] = .str("member_space_limits_remove_exception") - return .dictionary(d) - case .memberSuggestionsChangePolicy: - var d = [String: JSON]() - d[".tag"] = .str("member_suggestions_change_policy") - return .dictionary(d) - case .microsoftOfficeAddinChangePolicy: - var d = [String: JSON]() - d[".tag"] = .str("microsoft_office_addin_change_policy") - return .dictionary(d) - case .networkControlChangePolicy: - var d = [String: JSON]() - d[".tag"] = .str("network_control_change_policy") - return .dictionary(d) - case .paperChangeDeploymentPolicy: - var d = [String: JSON]() - d[".tag"] = .str("paper_change_deployment_policy") - return .dictionary(d) - case .paperChangeMemberLinkPolicy: - var d = [String: JSON]() - d[".tag"] = .str("paper_change_member_link_policy") - return .dictionary(d) - case .paperChangeMemberPolicy: - var d = [String: JSON]() - d[".tag"] = .str("paper_change_member_policy") - return .dictionary(d) - case .paperChangePolicy: - var d = [String: JSON]() - d[".tag"] = .str("paper_change_policy") - return .dictionary(d) - case .paperDefaultFolderPolicyChanged: - var d = [String: JSON]() - d[".tag"] = .str("paper_default_folder_policy_changed") - return .dictionary(d) - case .paperDesktopPolicyChanged: - var d = [String: JSON]() - d[".tag"] = .str("paper_desktop_policy_changed") - return .dictionary(d) - case .paperEnabledUsersGroupAddition: - var d = [String: JSON]() - d[".tag"] = .str("paper_enabled_users_group_addition") - return .dictionary(d) - case .paperEnabledUsersGroupRemoval: - var d = [String: JSON]() - d[".tag"] = .str("paper_enabled_users_group_removal") - return .dictionary(d) - case .passwordStrengthRequirementsChangePolicy: - var d = [String: JSON]() - d[".tag"] = .str("password_strength_requirements_change_policy") - return .dictionary(d) - case .permanentDeleteChangePolicy: - var d = [String: JSON]() - d[".tag"] = .str("permanent_delete_change_policy") - return .dictionary(d) - case .resellerSupportChangePolicy: - var d = [String: JSON]() - d[".tag"] = .str("reseller_support_change_policy") - return .dictionary(d) - case .rewindPolicyChanged: - var d = [String: JSON]() - d[".tag"] = .str("rewind_policy_changed") - return .dictionary(d) - case .sendForSignaturePolicyChanged: - var d = [String: JSON]() - d[".tag"] = .str("send_for_signature_policy_changed") - return .dictionary(d) - case .sharingChangeFolderJoinPolicy: - var d = [String: JSON]() - d[".tag"] = .str("sharing_change_folder_join_policy") - return .dictionary(d) - case .sharingChangeLinkAllowChangeExpirationPolicy: - var d = [String: JSON]() - d[".tag"] = .str("sharing_change_link_allow_change_expiration_policy") - return .dictionary(d) - case .sharingChangeLinkDefaultExpirationPolicy: - var d = [String: JSON]() - d[".tag"] = .str("sharing_change_link_default_expiration_policy") - return .dictionary(d) - case .sharingChangeLinkEnforcePasswordPolicy: - var d = [String: JSON]() - d[".tag"] = .str("sharing_change_link_enforce_password_policy") - return .dictionary(d) - case .sharingChangeLinkPolicy: - var d = [String: JSON]() - d[".tag"] = .str("sharing_change_link_policy") - return .dictionary(d) - case .sharingChangeMemberPolicy: - var d = [String: JSON]() - d[".tag"] = .str("sharing_change_member_policy") - return .dictionary(d) - case .showcaseChangeDownloadPolicy: - var d = [String: JSON]() - d[".tag"] = .str("showcase_change_download_policy") - return .dictionary(d) - case .showcaseChangeEnabledPolicy: - var d = [String: JSON]() - d[".tag"] = .str("showcase_change_enabled_policy") - return .dictionary(d) - case .showcaseChangeExternalSharingPolicy: - var d = [String: JSON]() - d[".tag"] = .str("showcase_change_external_sharing_policy") - return .dictionary(d) - case .smarterSmartSyncPolicyChanged: - var d = [String: JSON]() - d[".tag"] = .str("smarter_smart_sync_policy_changed") - return .dictionary(d) - case .smartSyncChangePolicy: - var d = [String: JSON]() - d[".tag"] = .str("smart_sync_change_policy") - return .dictionary(d) - case .smartSyncNotOptOut: - var d = [String: JSON]() - d[".tag"] = .str("smart_sync_not_opt_out") - return .dictionary(d) - case .smartSyncOptOut: - var d = [String: JSON]() - d[".tag"] = .str("smart_sync_opt_out") - return .dictionary(d) - case .ssoChangePolicy: - var d = [String: JSON]() - d[".tag"] = .str("sso_change_policy") - return .dictionary(d) - case .teamBrandingPolicyChanged: - var d = [String: JSON]() - d[".tag"] = .str("team_branding_policy_changed") - return .dictionary(d) - case .teamExtensionsPolicyChanged: - var d = [String: JSON]() - d[".tag"] = .str("team_extensions_policy_changed") - return .dictionary(d) - case .teamSelectiveSyncPolicyChanged: - var d = [String: JSON]() - d[".tag"] = .str("team_selective_sync_policy_changed") - return .dictionary(d) - case .teamSharingWhitelistSubjectsChanged: - var d = [String: JSON]() - d[".tag"] = .str("team_sharing_whitelist_subjects_changed") - return .dictionary(d) - case .tfaAddException: - var d = [String: JSON]() - d[".tag"] = .str("tfa_add_exception") - return .dictionary(d) - case .tfaChangePolicy: - var d = [String: JSON]() - d[".tag"] = .str("tfa_change_policy") - return .dictionary(d) - case .tfaRemoveException: - var d = [String: JSON]() - d[".tag"] = .str("tfa_remove_exception") - return .dictionary(d) - case .twoAccountChangePolicy: - var d = [String: JSON]() - d[".tag"] = .str("two_account_change_policy") - return .dictionary(d) - case .viewerInfoPolicyChanged: - var d = [String: JSON]() - d[".tag"] = .str("viewer_info_policy_changed") - return .dictionary(d) - case .watermarkingPolicyChanged: - var d = [String: JSON]() - d[".tag"] = .str("watermarking_policy_changed") - return .dictionary(d) - case .webSessionsChangeActiveSessionLimit: - var d = [String: JSON]() - d[".tag"] = .str("web_sessions_change_active_session_limit") - return .dictionary(d) - case .webSessionsChangeFixedLengthPolicy: - var d = [String: JSON]() - d[".tag"] = .str("web_sessions_change_fixed_length_policy") - return .dictionary(d) - case .webSessionsChangeIdleLengthPolicy: - var d = [String: JSON]() - d[".tag"] = .str("web_sessions_change_idle_length_policy") - return .dictionary(d) - case .dataResidencyMigrationRequestSuccessful: - var d = [String: JSON]() - d[".tag"] = .str("data_residency_migration_request_successful") - return .dictionary(d) - case .dataResidencyMigrationRequestUnsuccessful: - var d = [String: JSON]() - d[".tag"] = .str("data_residency_migration_request_unsuccessful") - return .dictionary(d) - case .teamMergeFrom: - var d = [String: JSON]() - d[".tag"] = .str("team_merge_from") - return .dictionary(d) - case .teamMergeTo: - var d = [String: JSON]() - d[".tag"] = .str("team_merge_to") - return .dictionary(d) - case .teamProfileAddBackground: - var d = [String: JSON]() - d[".tag"] = .str("team_profile_add_background") - return .dictionary(d) - case .teamProfileAddLogo: - var d = [String: JSON]() - d[".tag"] = .str("team_profile_add_logo") - return .dictionary(d) - case .teamProfileChangeBackground: - var d = [String: JSON]() - d[".tag"] = .str("team_profile_change_background") - return .dictionary(d) - case .teamProfileChangeDefaultLanguage: - var d = [String: JSON]() - d[".tag"] = .str("team_profile_change_default_language") - return .dictionary(d) - case .teamProfileChangeLogo: - var d = [String: JSON]() - d[".tag"] = .str("team_profile_change_logo") - return .dictionary(d) - case .teamProfileChangeName: - var d = [String: JSON]() - d[".tag"] = .str("team_profile_change_name") - return .dictionary(d) - case .teamProfileRemoveBackground: - var d = [String: JSON]() - d[".tag"] = .str("team_profile_remove_background") - return .dictionary(d) - case .teamProfileRemoveLogo: - var d = [String: JSON]() - d[".tag"] = .str("team_profile_remove_logo") - return .dictionary(d) - case .tfaAddBackupPhone: - var d = [String: JSON]() - d[".tag"] = .str("tfa_add_backup_phone") - return .dictionary(d) - case .tfaAddSecurityKey: - var d = [String: JSON]() - d[".tag"] = .str("tfa_add_security_key") - return .dictionary(d) - case .tfaChangeBackupPhone: - var d = [String: JSON]() - d[".tag"] = .str("tfa_change_backup_phone") - return .dictionary(d) - case .tfaChangeStatus: - var d = [String: JSON]() - d[".tag"] = .str("tfa_change_status") - return .dictionary(d) - case .tfaRemoveBackupPhone: - var d = [String: JSON]() - d[".tag"] = .str("tfa_remove_backup_phone") - return .dictionary(d) - case .tfaRemoveSecurityKey: - var d = [String: JSON]() - d[".tag"] = .str("tfa_remove_security_key") - return .dictionary(d) - case .tfaReset: - var d = [String: JSON]() - d[".tag"] = .str("tfa_reset") - return .dictionary(d) - case .changedEnterpriseAdminRole: - var d = [String: JSON]() - d[".tag"] = .str("changed_enterprise_admin_role") - return .dictionary(d) - case .changedEnterpriseConnectedTeamStatus: - var d = [String: JSON]() - d[".tag"] = .str("changed_enterprise_connected_team_status") - return .dictionary(d) - case .endedEnterpriseAdminSession: - var d = [String: JSON]() - d[".tag"] = .str("ended_enterprise_admin_session") - return .dictionary(d) - case .endedEnterpriseAdminSessionDeprecated: - var d = [String: JSON]() - d[".tag"] = .str("ended_enterprise_admin_session_deprecated") - return .dictionary(d) - case .enterpriseSettingsLocking: - var d = [String: JSON]() - d[".tag"] = .str("enterprise_settings_locking") - return .dictionary(d) - case .guestAdminChangeStatus: - var d = [String: JSON]() - d[".tag"] = .str("guest_admin_change_status") - return .dictionary(d) - case .startedEnterpriseAdminSession: - var d = [String: JSON]() - d[".tag"] = .str("started_enterprise_admin_session") - return .dictionary(d) - case .teamMergeRequestAccepted: - var d = [String: JSON]() - d[".tag"] = .str("team_merge_request_accepted") - return .dictionary(d) - case .teamMergeRequestAcceptedShownToPrimaryTeam: - var d = [String: JSON]() - d[".tag"] = .str("team_merge_request_accepted_shown_to_primary_team") - return .dictionary(d) - case .teamMergeRequestAcceptedShownToSecondaryTeam: - var d = [String: JSON]() - d[".tag"] = .str("team_merge_request_accepted_shown_to_secondary_team") - return .dictionary(d) - case .teamMergeRequestAutoCanceled: - var d = [String: JSON]() - d[".tag"] = .str("team_merge_request_auto_canceled") - return .dictionary(d) - case .teamMergeRequestCanceled: - var d = [String: JSON]() - d[".tag"] = .str("team_merge_request_canceled") - return .dictionary(d) - case .teamMergeRequestCanceledShownToPrimaryTeam: - var d = [String: JSON]() - d[".tag"] = .str("team_merge_request_canceled_shown_to_primary_team") - return .dictionary(d) - case .teamMergeRequestCanceledShownToSecondaryTeam: - var d = [String: JSON]() - d[".tag"] = .str("team_merge_request_canceled_shown_to_secondary_team") - return .dictionary(d) - case .teamMergeRequestExpired: - var d = [String: JSON]() - d[".tag"] = .str("team_merge_request_expired") - return .dictionary(d) - case .teamMergeRequestExpiredShownToPrimaryTeam: - var d = [String: JSON]() - d[".tag"] = .str("team_merge_request_expired_shown_to_primary_team") - return .dictionary(d) - case .teamMergeRequestExpiredShownToSecondaryTeam: - var d = [String: JSON]() - d[".tag"] = .str("team_merge_request_expired_shown_to_secondary_team") - return .dictionary(d) - case .teamMergeRequestRejectedShownToPrimaryTeam: - var d = [String: JSON]() - d[".tag"] = .str("team_merge_request_rejected_shown_to_primary_team") - return .dictionary(d) - case .teamMergeRequestRejectedShownToSecondaryTeam: - var d = [String: JSON]() - d[".tag"] = .str("team_merge_request_rejected_shown_to_secondary_team") - return .dictionary(d) - case .teamMergeRequestReminder: - var d = [String: JSON]() - d[".tag"] = .str("team_merge_request_reminder") - return .dictionary(d) - case .teamMergeRequestReminderShownToPrimaryTeam: - var d = [String: JSON]() - d[".tag"] = .str("team_merge_request_reminder_shown_to_primary_team") - return .dictionary(d) - case .teamMergeRequestReminderShownToSecondaryTeam: - var d = [String: JSON]() - d[".tag"] = .str("team_merge_request_reminder_shown_to_secondary_team") - return .dictionary(d) - case .teamMergeRequestRevoked: - var d = [String: JSON]() - d[".tag"] = .str("team_merge_request_revoked") - return .dictionary(d) - case .teamMergeRequestSentShownToPrimaryTeam: - var d = [String: JSON]() - d[".tag"] = .str("team_merge_request_sent_shown_to_primary_team") - return .dictionary(d) - case .teamMergeRequestSentShownToSecondaryTeam: - var d = [String: JSON]() - d[".tag"] = .str("team_merge_request_sent_shown_to_secondary_team") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) + case .accountIdNotFound: + var d = [String: JSON]() + d[".tag"] = .str("account_id_not_found") + return .dictionary(d) + case .invalidTimeRange: + var d = [String: JSON]() + d[".tag"] = .str("invalid_time_range") + return .dictionary(d) + case .invalidFilters: + var d = [String: JSON]() + d[".tag"] = .str("invalid_filters") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> GetTeamEventsError { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "account_id_not_found": + return GetTeamEventsError.accountIdNotFound + case "invalid_time_range": + return GetTeamEventsError.invalidTimeRange + case "invalid_filters": + return GetTeamEventsError.invalidFilters + case "other": + return GetTeamEventsError.other + default: + return GetTeamEventsError.other + } + default: + throw JSONSerializerError.deserializeError(type: GetTeamEventsError.self, json: json) } } + } + + /// The GetTeamEventsResult struct + public class GetTeamEventsResult: CustomStringConvertible, JSONRepresentable { + /// List of events. Note that events are not guaranteed to be sorted by their timestamp value. + public let events: Array + /// Pass the cursor into getEventsContinue to obtain additional events. The value of cursor may change for each + /// response from getEventsContinue, regardless of the value of hasMore; older cursor strings may + /// expire. Thus, callers should ensure that they update their cursor based on the latest value of + /// cursor after each call, and poll regularly if they wish to poll for new events. Callers should + /// handle reset exceptions for expired cursors. + public let cursor: String + /// Is true if there may be additional events that have not been returned yet. An additional call to + /// getEventsContinue can retrieve them. Note that hasMore may be true, even if events is empty. + public let hasMore: Bool + public init(events: Array, cursor: String, hasMore: Bool) { + self.events = events + stringValidator()(cursor) + self.cursor = cursor + self.hasMore = hasMore + } - public func deserialize(_ json: JSON) throws -> EventTypeArg { + func json() throws -> JSON { + try GetTeamEventsResultSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try GetTeamEventsResultSerializer().serialize(self)))" + } catch { + return "Failed to generate description for GetTeamEventsResult: \(error)" + } + } + } + public class GetTeamEventsResultSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GetTeamEventsResult) throws -> JSON { + let output = [ + "events": try ArraySerializer(TeamLog.TeamEventSerializer()).serialize(value.events), + "cursor": try Serialization._StringSerializer.serialize(value.cursor), + "has_more": try Serialization._BoolSerializer.serialize(value.hasMore), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> GetTeamEventsResult { + switch json { + case .dictionary(let dict): + let events = try ArraySerializer(TeamLog.TeamEventSerializer()).deserialize(dict["events"] ?? .null) + let cursor = try Serialization._StringSerializer.deserialize(dict["cursor"] ?? .null) + let hasMore = try Serialization._BoolSerializer.deserialize(dict["has_more"] ?? .null) + return GetTeamEventsResult(events: events, cursor: cursor, hasMore: hasMore) + default: + throw JSONSerializerError.deserializeError(type: GetTeamEventsResult.self, json: json) + } + } + } + + /// Enabled/disabled Google single sign-on for team. + public class GoogleSsoChangePolicyDetails: CustomStringConvertible, JSONRepresentable { + /// New Google single sign-on policy. + public let newValue: TeamLog.GoogleSsoPolicy + /// Previous Google single sign-on policy. Might be missing due to historical data gap. + public let previousValue: TeamLog.GoogleSsoPolicy? + public init(newValue: TeamLog.GoogleSsoPolicy, previousValue: TeamLog.GoogleSsoPolicy? = nil) { + self.newValue = newValue + self.previousValue = previousValue + } + + func json() throws -> JSON { + try GoogleSsoChangePolicyDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try GoogleSsoChangePolicyDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for GoogleSsoChangePolicyDetails: \(error)" + } + } + } + public class GoogleSsoChangePolicyDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GoogleSsoChangePolicyDetails) throws -> JSON { + let output = [ + "new_value": try TeamLog.GoogleSsoPolicySerializer().serialize(value.newValue), + "previous_value": try NullableSerializer(TeamLog.GoogleSsoPolicySerializer()).serialize(value.previousValue), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> GoogleSsoChangePolicyDetails { + switch json { + case .dictionary(let dict): + let newValue = try TeamLog.GoogleSsoPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try NullableSerializer(TeamLog.GoogleSsoPolicySerializer()).deserialize(dict["previous_value"] ?? .null) + return GoogleSsoChangePolicyDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: GoogleSsoChangePolicyDetails.self, json: json) + } + } + } + + /// The GoogleSsoChangePolicyType struct + public class GoogleSsoChangePolicyType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try GoogleSsoChangePolicyTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try GoogleSsoChangePolicyTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for GoogleSsoChangePolicyType: \(error)" + } + } + } + public class GoogleSsoChangePolicyTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GoogleSsoChangePolicyType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> GoogleSsoChangePolicyType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return GoogleSsoChangePolicyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: GoogleSsoChangePolicyType.self, json: json) + } + } + } + + /// Google SSO policy + public enum GoogleSsoPolicy: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case disabled + /// An unspecified error. + case enabled + /// An unspecified error. + case other + + func json() throws -> JSON { + try GoogleSsoPolicySerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try GoogleSsoPolicySerializer().serialize(self)))" + } catch { + return "Failed to generate description for GoogleSsoPolicy: \(error)" + } + } + } + public class GoogleSsoPolicySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GoogleSsoPolicy) throws -> JSON { + switch value { + case .disabled: + var d = [String: JSON]() + d[".tag"] = .str("disabled") + return .dictionary(d) + case .enabled: + var d = [String: JSON]() + d[".tag"] = .str("enabled") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> GoogleSsoPolicy { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "admin_alerting_alert_state_changed": - return EventTypeArg.adminAlertingAlertStateChanged - case "admin_alerting_changed_alert_config": - return EventTypeArg.adminAlertingChangedAlertConfig - case "admin_alerting_triggered_alert": - return EventTypeArg.adminAlertingTriggeredAlert - case "ransomware_restore_process_completed": - return EventTypeArg.ransomwareRestoreProcessCompleted - case "ransomware_restore_process_started": - return EventTypeArg.ransomwareRestoreProcessStarted - case "app_blocked_by_permissions": - return EventTypeArg.appBlockedByPermissions - case "app_link_team": - return EventTypeArg.appLinkTeam - case "app_link_user": - return EventTypeArg.appLinkUser - case "app_unlink_team": - return EventTypeArg.appUnlinkTeam - case "app_unlink_user": - return EventTypeArg.appUnlinkUser - case "integration_connected": - return EventTypeArg.integrationConnected - case "integration_disconnected": - return EventTypeArg.integrationDisconnected - case "file_add_comment": - return EventTypeArg.fileAddComment - case "file_change_comment_subscription": - return EventTypeArg.fileChangeCommentSubscription - case "file_delete_comment": - return EventTypeArg.fileDeleteComment - case "file_edit_comment": - return EventTypeArg.fileEditComment - case "file_like_comment": - return EventTypeArg.fileLikeComment - case "file_resolve_comment": - return EventTypeArg.fileResolveComment - case "file_unlike_comment": - return EventTypeArg.fileUnlikeComment - case "file_unresolve_comment": - return EventTypeArg.fileUnresolveComment - case "governance_policy_add_folders": - return EventTypeArg.governancePolicyAddFolders - case "governance_policy_add_folder_failed": - return EventTypeArg.governancePolicyAddFolderFailed - case "governance_policy_content_disposed": - return EventTypeArg.governancePolicyContentDisposed - case "governance_policy_create": - return EventTypeArg.governancePolicyCreate - case "governance_policy_delete": - return EventTypeArg.governancePolicyDelete - case "governance_policy_edit_details": - return EventTypeArg.governancePolicyEditDetails - case "governance_policy_edit_duration": - return EventTypeArg.governancePolicyEditDuration - case "governance_policy_export_created": - return EventTypeArg.governancePolicyExportCreated - case "governance_policy_export_removed": - return EventTypeArg.governancePolicyExportRemoved - case "governance_policy_remove_folders": - return EventTypeArg.governancePolicyRemoveFolders - case "governance_policy_report_created": - return EventTypeArg.governancePolicyReportCreated - case "governance_policy_zip_part_downloaded": - return EventTypeArg.governancePolicyZipPartDownloaded - case "legal_holds_activate_a_hold": - return EventTypeArg.legalHoldsActivateAHold - case "legal_holds_add_members": - return EventTypeArg.legalHoldsAddMembers - case "legal_holds_change_hold_details": - return EventTypeArg.legalHoldsChangeHoldDetails - case "legal_holds_change_hold_name": - return EventTypeArg.legalHoldsChangeHoldName - case "legal_holds_export_a_hold": - return EventTypeArg.legalHoldsExportAHold - case "legal_holds_export_cancelled": - return EventTypeArg.legalHoldsExportCancelled - case "legal_holds_export_downloaded": - return EventTypeArg.legalHoldsExportDownloaded - case "legal_holds_export_removed": - return EventTypeArg.legalHoldsExportRemoved - case "legal_holds_release_a_hold": - return EventTypeArg.legalHoldsReleaseAHold - case "legal_holds_remove_members": - return EventTypeArg.legalHoldsRemoveMembers - case "legal_holds_report_a_hold": - return EventTypeArg.legalHoldsReportAHold - case "device_change_ip_desktop": - return EventTypeArg.deviceChangeIpDesktop - case "device_change_ip_mobile": - return EventTypeArg.deviceChangeIpMobile - case "device_change_ip_web": - return EventTypeArg.deviceChangeIpWeb - case "device_delete_on_unlink_fail": - return EventTypeArg.deviceDeleteOnUnlinkFail - case "device_delete_on_unlink_success": - return EventTypeArg.deviceDeleteOnUnlinkSuccess - case "device_link_fail": - return EventTypeArg.deviceLinkFail - case "device_link_success": - return EventTypeArg.deviceLinkSuccess - case "device_management_disabled": - return EventTypeArg.deviceManagementDisabled - case "device_management_enabled": - return EventTypeArg.deviceManagementEnabled - case "device_sync_backup_status_changed": - return EventTypeArg.deviceSyncBackupStatusChanged - case "device_unlink": - return EventTypeArg.deviceUnlink - case "dropbox_passwords_exported": - return EventTypeArg.dropboxPasswordsExported - case "dropbox_passwords_new_device_enrolled": - return EventTypeArg.dropboxPasswordsNewDeviceEnrolled - case "emm_refresh_auth_token": - return EventTypeArg.emmRefreshAuthToken - case "external_drive_backup_eligibility_status_checked": - return EventTypeArg.externalDriveBackupEligibilityStatusChecked - case "external_drive_backup_status_changed": - return EventTypeArg.externalDriveBackupStatusChanged - case "account_capture_change_availability": - return EventTypeArg.accountCaptureChangeAvailability - case "account_capture_migrate_account": - return EventTypeArg.accountCaptureMigrateAccount - case "account_capture_notification_emails_sent": - return EventTypeArg.accountCaptureNotificationEmailsSent - case "account_capture_relinquish_account": - return EventTypeArg.accountCaptureRelinquishAccount - case "disabled_domain_invites": - return EventTypeArg.disabledDomainInvites - case "domain_invites_approve_request_to_join_team": - return EventTypeArg.domainInvitesApproveRequestToJoinTeam - case "domain_invites_decline_request_to_join_team": - return EventTypeArg.domainInvitesDeclineRequestToJoinTeam - case "domain_invites_email_existing_users": - return EventTypeArg.domainInvitesEmailExistingUsers - case "domain_invites_request_to_join_team": - return EventTypeArg.domainInvitesRequestToJoinTeam - case "domain_invites_set_invite_new_user_pref_to_no": - return EventTypeArg.domainInvitesSetInviteNewUserPrefToNo - case "domain_invites_set_invite_new_user_pref_to_yes": - return EventTypeArg.domainInvitesSetInviteNewUserPrefToYes - case "domain_verification_add_domain_fail": - return EventTypeArg.domainVerificationAddDomainFail - case "domain_verification_add_domain_success": - return EventTypeArg.domainVerificationAddDomainSuccess - case "domain_verification_remove_domain": - return EventTypeArg.domainVerificationRemoveDomain - case "enabled_domain_invites": - return EventTypeArg.enabledDomainInvites - case "team_encryption_key_cancel_key_deletion": - return EventTypeArg.teamEncryptionKeyCancelKeyDeletion - case "team_encryption_key_create_key": - return EventTypeArg.teamEncryptionKeyCreateKey - case "team_encryption_key_delete_key": - return EventTypeArg.teamEncryptionKeyDeleteKey - case "team_encryption_key_disable_key": - return EventTypeArg.teamEncryptionKeyDisableKey - case "team_encryption_key_enable_key": - return EventTypeArg.teamEncryptionKeyEnableKey - case "team_encryption_key_rotate_key": - return EventTypeArg.teamEncryptionKeyRotateKey - case "team_encryption_key_schedule_key_deletion": - return EventTypeArg.teamEncryptionKeyScheduleKeyDeletion - case "apply_naming_convention": - return EventTypeArg.applyNamingConvention - case "create_folder": - return EventTypeArg.createFolder - case "file_add": - return EventTypeArg.fileAdd - case "file_add_from_automation": - return EventTypeArg.fileAddFromAutomation - case "file_copy": - return EventTypeArg.fileCopy - case "file_delete": - return EventTypeArg.fileDelete - case "file_download": - return EventTypeArg.fileDownload - case "file_edit": - return EventTypeArg.fileEdit - case "file_get_copy_reference": - return EventTypeArg.fileGetCopyReference - case "file_locking_lock_status_changed": - return EventTypeArg.fileLockingLockStatusChanged - case "file_move": - return EventTypeArg.fileMove - case "file_permanently_delete": - return EventTypeArg.filePermanentlyDelete - case "file_preview": - return EventTypeArg.filePreview - case "file_rename": - return EventTypeArg.fileRename - case "file_restore": - return EventTypeArg.fileRestore - case "file_revert": - return EventTypeArg.fileRevert - case "file_rollback_changes": - return EventTypeArg.fileRollbackChanges - case "file_save_copy_reference": - return EventTypeArg.fileSaveCopyReference - case "folder_overview_description_changed": - return EventTypeArg.folderOverviewDescriptionChanged - case "folder_overview_item_pinned": - return EventTypeArg.folderOverviewItemPinned - case "folder_overview_item_unpinned": - return EventTypeArg.folderOverviewItemUnpinned - case "object_label_added": - return EventTypeArg.objectLabelAdded - case "object_label_removed": - return EventTypeArg.objectLabelRemoved - case "object_label_updated_value": - return EventTypeArg.objectLabelUpdatedValue - case "organize_folder_with_tidy": - return EventTypeArg.organizeFolderWithTidy - case "replay_file_delete": - return EventTypeArg.replayFileDelete - case "rewind_folder": - return EventTypeArg.rewindFolder - case "undo_naming_convention": - return EventTypeArg.undoNamingConvention - case "undo_organize_folder_with_tidy": - return EventTypeArg.undoOrganizeFolderWithTidy - case "user_tags_added": - return EventTypeArg.userTagsAdded - case "user_tags_removed": - return EventTypeArg.userTagsRemoved - case "email_ingest_receive_file": - return EventTypeArg.emailIngestReceiveFile - case "file_request_change": - return EventTypeArg.fileRequestChange - case "file_request_close": - return EventTypeArg.fileRequestClose - case "file_request_create": - return EventTypeArg.fileRequestCreate - case "file_request_delete": - return EventTypeArg.fileRequestDelete - case "file_request_receive_file": - return EventTypeArg.fileRequestReceiveFile - case "group_add_external_id": - return EventTypeArg.groupAddExternalId - case "group_add_member": - return EventTypeArg.groupAddMember - case "group_change_external_id": - return EventTypeArg.groupChangeExternalId - case "group_change_management_type": - return EventTypeArg.groupChangeManagementType - case "group_change_member_role": - return EventTypeArg.groupChangeMemberRole - case "group_create": - return EventTypeArg.groupCreate - case "group_delete": - return EventTypeArg.groupDelete - case "group_description_updated": - return EventTypeArg.groupDescriptionUpdated - case "group_join_policy_updated": - return EventTypeArg.groupJoinPolicyUpdated - case "group_moved": - return EventTypeArg.groupMoved - case "group_remove_external_id": - return EventTypeArg.groupRemoveExternalId - case "group_remove_member": - return EventTypeArg.groupRemoveMember - case "group_rename": - return EventTypeArg.groupRename - case "account_lock_or_unlocked": - return EventTypeArg.accountLockOrUnlocked - case "emm_error": - return EventTypeArg.emmError - case "guest_admin_signed_in_via_trusted_teams": - return EventTypeArg.guestAdminSignedInViaTrustedTeams - case "guest_admin_signed_out_via_trusted_teams": - return EventTypeArg.guestAdminSignedOutViaTrustedTeams - case "login_fail": - return EventTypeArg.loginFail - case "login_success": - return EventTypeArg.loginSuccess - case "logout": - return EventTypeArg.logout - case "reseller_support_session_end": - return EventTypeArg.resellerSupportSessionEnd - case "reseller_support_session_start": - return EventTypeArg.resellerSupportSessionStart - case "sign_in_as_session_end": - return EventTypeArg.signInAsSessionEnd - case "sign_in_as_session_start": - return EventTypeArg.signInAsSessionStart - case "sso_error": - return EventTypeArg.ssoError - case "backup_admin_invitation_sent": - return EventTypeArg.backupAdminInvitationSent - case "backup_invitation_opened": - return EventTypeArg.backupInvitationOpened - case "create_team_invite_link": - return EventTypeArg.createTeamInviteLink - case "delete_team_invite_link": - return EventTypeArg.deleteTeamInviteLink - case "member_add_external_id": - return EventTypeArg.memberAddExternalId - case "member_add_name": - return EventTypeArg.memberAddName - case "member_change_admin_role": - return EventTypeArg.memberChangeAdminRole - case "member_change_email": - return EventTypeArg.memberChangeEmail - case "member_change_external_id": - return EventTypeArg.memberChangeExternalId - case "member_change_membership_type": - return EventTypeArg.memberChangeMembershipType - case "member_change_name": - return EventTypeArg.memberChangeName - case "member_change_reseller_role": - return EventTypeArg.memberChangeResellerRole - case "member_change_status": - return EventTypeArg.memberChangeStatus - case "member_delete_manual_contacts": - return EventTypeArg.memberDeleteManualContacts - case "member_delete_profile_photo": - return EventTypeArg.memberDeleteProfilePhoto - case "member_permanently_delete_account_contents": - return EventTypeArg.memberPermanentlyDeleteAccountContents - case "member_remove_external_id": - return EventTypeArg.memberRemoveExternalId - case "member_set_profile_photo": - return EventTypeArg.memberSetProfilePhoto - case "member_space_limits_add_custom_quota": - return EventTypeArg.memberSpaceLimitsAddCustomQuota - case "member_space_limits_change_custom_quota": - return EventTypeArg.memberSpaceLimitsChangeCustomQuota - case "member_space_limits_change_status": - return EventTypeArg.memberSpaceLimitsChangeStatus - case "member_space_limits_remove_custom_quota": - return EventTypeArg.memberSpaceLimitsRemoveCustomQuota - case "member_suggest": - return EventTypeArg.memberSuggest - case "member_transfer_account_contents": - return EventTypeArg.memberTransferAccountContents - case "pending_secondary_email_added": - return EventTypeArg.pendingSecondaryEmailAdded - case "secondary_email_deleted": - return EventTypeArg.secondaryEmailDeleted - case "secondary_email_verified": - return EventTypeArg.secondaryEmailVerified - case "secondary_mails_policy_changed": - return EventTypeArg.secondaryMailsPolicyChanged - case "binder_add_page": - return EventTypeArg.binderAddPage - case "binder_add_section": - return EventTypeArg.binderAddSection - case "binder_remove_page": - return EventTypeArg.binderRemovePage - case "binder_remove_section": - return EventTypeArg.binderRemoveSection - case "binder_rename_page": - return EventTypeArg.binderRenamePage - case "binder_rename_section": - return EventTypeArg.binderRenameSection - case "binder_reorder_page": - return EventTypeArg.binderReorderPage - case "binder_reorder_section": - return EventTypeArg.binderReorderSection - case "paper_content_add_member": - return EventTypeArg.paperContentAddMember - case "paper_content_add_to_folder": - return EventTypeArg.paperContentAddToFolder - case "paper_content_archive": - return EventTypeArg.paperContentArchive - case "paper_content_create": - return EventTypeArg.paperContentCreate - case "paper_content_permanently_delete": - return EventTypeArg.paperContentPermanentlyDelete - case "paper_content_remove_from_folder": - return EventTypeArg.paperContentRemoveFromFolder - case "paper_content_remove_member": - return EventTypeArg.paperContentRemoveMember - case "paper_content_rename": - return EventTypeArg.paperContentRename - case "paper_content_restore": - return EventTypeArg.paperContentRestore - case "paper_doc_add_comment": - return EventTypeArg.paperDocAddComment - case "paper_doc_change_member_role": - return EventTypeArg.paperDocChangeMemberRole - case "paper_doc_change_sharing_policy": - return EventTypeArg.paperDocChangeSharingPolicy - case "paper_doc_change_subscription": - return EventTypeArg.paperDocChangeSubscription - case "paper_doc_deleted": - return EventTypeArg.paperDocDeleted - case "paper_doc_delete_comment": - return EventTypeArg.paperDocDeleteComment - case "paper_doc_download": - return EventTypeArg.paperDocDownload - case "paper_doc_edit": - return EventTypeArg.paperDocEdit - case "paper_doc_edit_comment": - return EventTypeArg.paperDocEditComment - case "paper_doc_followed": - return EventTypeArg.paperDocFollowed - case "paper_doc_mention": - return EventTypeArg.paperDocMention - case "paper_doc_ownership_changed": - return EventTypeArg.paperDocOwnershipChanged - case "paper_doc_request_access": - return EventTypeArg.paperDocRequestAccess - case "paper_doc_resolve_comment": - return EventTypeArg.paperDocResolveComment - case "paper_doc_revert": - return EventTypeArg.paperDocRevert - case "paper_doc_slack_share": - return EventTypeArg.paperDocSlackShare - case "paper_doc_team_invite": - return EventTypeArg.paperDocTeamInvite - case "paper_doc_trashed": - return EventTypeArg.paperDocTrashed - case "paper_doc_unresolve_comment": - return EventTypeArg.paperDocUnresolveComment - case "paper_doc_untrashed": - return EventTypeArg.paperDocUntrashed - case "paper_doc_view": - return EventTypeArg.paperDocView - case "paper_external_view_allow": - return EventTypeArg.paperExternalViewAllow - case "paper_external_view_default_team": - return EventTypeArg.paperExternalViewDefaultTeam - case "paper_external_view_forbid": - return EventTypeArg.paperExternalViewForbid - case "paper_folder_change_subscription": - return EventTypeArg.paperFolderChangeSubscription - case "paper_folder_deleted": - return EventTypeArg.paperFolderDeleted - case "paper_folder_followed": - return EventTypeArg.paperFolderFollowed - case "paper_folder_team_invite": - return EventTypeArg.paperFolderTeamInvite - case "paper_published_link_change_permission": - return EventTypeArg.paperPublishedLinkChangePermission - case "paper_published_link_create": - return EventTypeArg.paperPublishedLinkCreate - case "paper_published_link_disabled": - return EventTypeArg.paperPublishedLinkDisabled - case "paper_published_link_view": - return EventTypeArg.paperPublishedLinkView - case "password_change": - return EventTypeArg.passwordChange - case "password_reset": - return EventTypeArg.passwordReset - case "password_reset_all": - return EventTypeArg.passwordResetAll - case "classification_create_report": - return EventTypeArg.classificationCreateReport - case "classification_create_report_fail": - return EventTypeArg.classificationCreateReportFail - case "emm_create_exceptions_report": - return EventTypeArg.emmCreateExceptionsReport - case "emm_create_usage_report": - return EventTypeArg.emmCreateUsageReport - case "export_members_report": - return EventTypeArg.exportMembersReport - case "export_members_report_fail": - return EventTypeArg.exportMembersReportFail - case "external_sharing_create_report": - return EventTypeArg.externalSharingCreateReport - case "external_sharing_report_failed": - return EventTypeArg.externalSharingReportFailed - case "no_expiration_link_gen_create_report": - return EventTypeArg.noExpirationLinkGenCreateReport - case "no_expiration_link_gen_report_failed": - return EventTypeArg.noExpirationLinkGenReportFailed - case "no_password_link_gen_create_report": - return EventTypeArg.noPasswordLinkGenCreateReport - case "no_password_link_gen_report_failed": - return EventTypeArg.noPasswordLinkGenReportFailed - case "no_password_link_view_create_report": - return EventTypeArg.noPasswordLinkViewCreateReport - case "no_password_link_view_report_failed": - return EventTypeArg.noPasswordLinkViewReportFailed - case "outdated_link_view_create_report": - return EventTypeArg.outdatedLinkViewCreateReport - case "outdated_link_view_report_failed": - return EventTypeArg.outdatedLinkViewReportFailed - case "paper_admin_export_start": - return EventTypeArg.paperAdminExportStart - case "ransomware_alert_create_report": - return EventTypeArg.ransomwareAlertCreateReport - case "ransomware_alert_create_report_failed": - return EventTypeArg.ransomwareAlertCreateReportFailed - case "smart_sync_create_admin_privilege_report": - return EventTypeArg.smartSyncCreateAdminPrivilegeReport - case "team_activity_create_report": - return EventTypeArg.teamActivityCreateReport - case "team_activity_create_report_fail": - return EventTypeArg.teamActivityCreateReportFail - case "collection_share": - return EventTypeArg.collectionShare - case "file_transfers_file_add": - return EventTypeArg.fileTransfersFileAdd - case "file_transfers_transfer_delete": - return EventTypeArg.fileTransfersTransferDelete - case "file_transfers_transfer_download": - return EventTypeArg.fileTransfersTransferDownload - case "file_transfers_transfer_send": - return EventTypeArg.fileTransfersTransferSend - case "file_transfers_transfer_view": - return EventTypeArg.fileTransfersTransferView - case "note_acl_invite_only": - return EventTypeArg.noteAclInviteOnly - case "note_acl_link": - return EventTypeArg.noteAclLink - case "note_acl_team_link": - return EventTypeArg.noteAclTeamLink - case "note_shared": - return EventTypeArg.noteShared - case "note_share_receive": - return EventTypeArg.noteShareReceive - case "open_note_shared": - return EventTypeArg.openNoteShared - case "replay_file_shared_link_created": - return EventTypeArg.replayFileSharedLinkCreated - case "replay_file_shared_link_modified": - return EventTypeArg.replayFileSharedLinkModified - case "replay_project_team_add": - return EventTypeArg.replayProjectTeamAdd - case "replay_project_team_delete": - return EventTypeArg.replayProjectTeamDelete - case "sf_add_group": - return EventTypeArg.sfAddGroup - case "sf_allow_non_members_to_view_shared_links": - return EventTypeArg.sfAllowNonMembersToViewSharedLinks - case "sf_external_invite_warn": - return EventTypeArg.sfExternalInviteWarn - case "sf_fb_invite": - return EventTypeArg.sfFbInvite - case "sf_fb_invite_change_role": - return EventTypeArg.sfFbInviteChangeRole - case "sf_fb_uninvite": - return EventTypeArg.sfFbUninvite - case "sf_invite_group": - return EventTypeArg.sfInviteGroup - case "sf_team_grant_access": - return EventTypeArg.sfTeamGrantAccess - case "sf_team_invite": - return EventTypeArg.sfTeamInvite - case "sf_team_invite_change_role": - return EventTypeArg.sfTeamInviteChangeRole - case "sf_team_join": - return EventTypeArg.sfTeamJoin - case "sf_team_join_from_oob_link": - return EventTypeArg.sfTeamJoinFromOobLink - case "sf_team_uninvite": - return EventTypeArg.sfTeamUninvite - case "shared_content_add_invitees": - return EventTypeArg.sharedContentAddInvitees - case "shared_content_add_link_expiry": - return EventTypeArg.sharedContentAddLinkExpiry - case "shared_content_add_link_password": - return EventTypeArg.sharedContentAddLinkPassword - case "shared_content_add_member": - return EventTypeArg.sharedContentAddMember - case "shared_content_change_downloads_policy": - return EventTypeArg.sharedContentChangeDownloadsPolicy - case "shared_content_change_invitee_role": - return EventTypeArg.sharedContentChangeInviteeRole - case "shared_content_change_link_audience": - return EventTypeArg.sharedContentChangeLinkAudience - case "shared_content_change_link_expiry": - return EventTypeArg.sharedContentChangeLinkExpiry - case "shared_content_change_link_password": - return EventTypeArg.sharedContentChangeLinkPassword - case "shared_content_change_member_role": - return EventTypeArg.sharedContentChangeMemberRole - case "shared_content_change_viewer_info_policy": - return EventTypeArg.sharedContentChangeViewerInfoPolicy - case "shared_content_claim_invitation": - return EventTypeArg.sharedContentClaimInvitation - case "shared_content_copy": - return EventTypeArg.sharedContentCopy - case "shared_content_download": - return EventTypeArg.sharedContentDownload - case "shared_content_relinquish_membership": - return EventTypeArg.sharedContentRelinquishMembership - case "shared_content_remove_invitees": - return EventTypeArg.sharedContentRemoveInvitees - case "shared_content_remove_link_expiry": - return EventTypeArg.sharedContentRemoveLinkExpiry - case "shared_content_remove_link_password": - return EventTypeArg.sharedContentRemoveLinkPassword - case "shared_content_remove_member": - return EventTypeArg.sharedContentRemoveMember - case "shared_content_request_access": - return EventTypeArg.sharedContentRequestAccess - case "shared_content_restore_invitees": - return EventTypeArg.sharedContentRestoreInvitees - case "shared_content_restore_member": - return EventTypeArg.sharedContentRestoreMember - case "shared_content_unshare": - return EventTypeArg.sharedContentUnshare - case "shared_content_view": - return EventTypeArg.sharedContentView - case "shared_folder_change_link_policy": - return EventTypeArg.sharedFolderChangeLinkPolicy - case "shared_folder_change_members_inheritance_policy": - return EventTypeArg.sharedFolderChangeMembersInheritancePolicy - case "shared_folder_change_members_management_policy": - return EventTypeArg.sharedFolderChangeMembersManagementPolicy - case "shared_folder_change_members_policy": - return EventTypeArg.sharedFolderChangeMembersPolicy - case "shared_folder_create": - return EventTypeArg.sharedFolderCreate - case "shared_folder_decline_invitation": - return EventTypeArg.sharedFolderDeclineInvitation - case "shared_folder_mount": - return EventTypeArg.sharedFolderMount - case "shared_folder_nest": - return EventTypeArg.sharedFolderNest - case "shared_folder_transfer_ownership": - return EventTypeArg.sharedFolderTransferOwnership - case "shared_folder_unmount": - return EventTypeArg.sharedFolderUnmount - case "shared_link_add_expiry": - return EventTypeArg.sharedLinkAddExpiry - case "shared_link_change_expiry": - return EventTypeArg.sharedLinkChangeExpiry - case "shared_link_change_visibility": - return EventTypeArg.sharedLinkChangeVisibility - case "shared_link_copy": - return EventTypeArg.sharedLinkCopy - case "shared_link_create": - return EventTypeArg.sharedLinkCreate - case "shared_link_disable": - return EventTypeArg.sharedLinkDisable - case "shared_link_download": - return EventTypeArg.sharedLinkDownload - case "shared_link_remove_expiry": - return EventTypeArg.sharedLinkRemoveExpiry - case "shared_link_settings_add_expiration": - return EventTypeArg.sharedLinkSettingsAddExpiration - case "shared_link_settings_add_password": - return EventTypeArg.sharedLinkSettingsAddPassword - case "shared_link_settings_allow_download_disabled": - return EventTypeArg.sharedLinkSettingsAllowDownloadDisabled - case "shared_link_settings_allow_download_enabled": - return EventTypeArg.sharedLinkSettingsAllowDownloadEnabled - case "shared_link_settings_change_audience": - return EventTypeArg.sharedLinkSettingsChangeAudience - case "shared_link_settings_change_expiration": - return EventTypeArg.sharedLinkSettingsChangeExpiration - case "shared_link_settings_change_password": - return EventTypeArg.sharedLinkSettingsChangePassword - case "shared_link_settings_remove_expiration": - return EventTypeArg.sharedLinkSettingsRemoveExpiration - case "shared_link_settings_remove_password": - return EventTypeArg.sharedLinkSettingsRemovePassword - case "shared_link_share": - return EventTypeArg.sharedLinkShare - case "shared_link_view": - return EventTypeArg.sharedLinkView - case "shared_note_opened": - return EventTypeArg.sharedNoteOpened - case "shmodel_disable_downloads": - return EventTypeArg.shmodelDisableDownloads - case "shmodel_enable_downloads": - return EventTypeArg.shmodelEnableDownloads - case "shmodel_group_share": - return EventTypeArg.shmodelGroupShare - case "showcase_access_granted": - return EventTypeArg.showcaseAccessGranted - case "showcase_add_member": - return EventTypeArg.showcaseAddMember - case "showcase_archived": - return EventTypeArg.showcaseArchived - case "showcase_created": - return EventTypeArg.showcaseCreated - case "showcase_delete_comment": - return EventTypeArg.showcaseDeleteComment - case "showcase_edited": - return EventTypeArg.showcaseEdited - case "showcase_edit_comment": - return EventTypeArg.showcaseEditComment - case "showcase_file_added": - return EventTypeArg.showcaseFileAdded - case "showcase_file_download": - return EventTypeArg.showcaseFileDownload - case "showcase_file_removed": - return EventTypeArg.showcaseFileRemoved - case "showcase_file_view": - return EventTypeArg.showcaseFileView - case "showcase_permanently_deleted": - return EventTypeArg.showcasePermanentlyDeleted - case "showcase_post_comment": - return EventTypeArg.showcasePostComment - case "showcase_remove_member": - return EventTypeArg.showcaseRemoveMember - case "showcase_renamed": - return EventTypeArg.showcaseRenamed - case "showcase_request_access": - return EventTypeArg.showcaseRequestAccess - case "showcase_resolve_comment": - return EventTypeArg.showcaseResolveComment - case "showcase_restored": - return EventTypeArg.showcaseRestored - case "showcase_trashed": - return EventTypeArg.showcaseTrashed - case "showcase_trashed_deprecated": - return EventTypeArg.showcaseTrashedDeprecated - case "showcase_unresolve_comment": - return EventTypeArg.showcaseUnresolveComment - case "showcase_untrashed": - return EventTypeArg.showcaseUntrashed - case "showcase_untrashed_deprecated": - return EventTypeArg.showcaseUntrashedDeprecated - case "showcase_view": - return EventTypeArg.showcaseView - case "sso_add_cert": - return EventTypeArg.ssoAddCert - case "sso_add_login_url": - return EventTypeArg.ssoAddLoginUrl - case "sso_add_logout_url": - return EventTypeArg.ssoAddLogoutUrl - case "sso_change_cert": - return EventTypeArg.ssoChangeCert - case "sso_change_login_url": - return EventTypeArg.ssoChangeLoginUrl - case "sso_change_logout_url": - return EventTypeArg.ssoChangeLogoutUrl - case "sso_change_saml_identity_mode": - return EventTypeArg.ssoChangeSamlIdentityMode - case "sso_remove_cert": - return EventTypeArg.ssoRemoveCert - case "sso_remove_login_url": - return EventTypeArg.ssoRemoveLoginUrl - case "sso_remove_logout_url": - return EventTypeArg.ssoRemoveLogoutUrl - case "team_folder_change_status": - return EventTypeArg.teamFolderChangeStatus - case "team_folder_create": - return EventTypeArg.teamFolderCreate - case "team_folder_downgrade": - return EventTypeArg.teamFolderDowngrade - case "team_folder_permanently_delete": - return EventTypeArg.teamFolderPermanentlyDelete - case "team_folder_rename": - return EventTypeArg.teamFolderRename - case "team_selective_sync_settings_changed": - return EventTypeArg.teamSelectiveSyncSettingsChanged - case "account_capture_change_policy": - return EventTypeArg.accountCaptureChangePolicy - case "admin_email_reminders_changed": - return EventTypeArg.adminEmailRemindersChanged - case "allow_download_disabled": - return EventTypeArg.allowDownloadDisabled - case "allow_download_enabled": - return EventTypeArg.allowDownloadEnabled - case "app_permissions_changed": - return EventTypeArg.appPermissionsChanged - case "camera_uploads_policy_changed": - return EventTypeArg.cameraUploadsPolicyChanged - case "capture_transcript_policy_changed": - return EventTypeArg.captureTranscriptPolicyChanged - case "classification_change_policy": - return EventTypeArg.classificationChangePolicy - case "computer_backup_policy_changed": - return EventTypeArg.computerBackupPolicyChanged - case "content_administration_policy_changed": - return EventTypeArg.contentAdministrationPolicyChanged - case "data_placement_restriction_change_policy": - return EventTypeArg.dataPlacementRestrictionChangePolicy - case "data_placement_restriction_satisfy_policy": - return EventTypeArg.dataPlacementRestrictionSatisfyPolicy - case "device_approvals_add_exception": - return EventTypeArg.deviceApprovalsAddException - case "device_approvals_change_desktop_policy": - return EventTypeArg.deviceApprovalsChangeDesktopPolicy - case "device_approvals_change_mobile_policy": - return EventTypeArg.deviceApprovalsChangeMobilePolicy - case "device_approvals_change_overage_action": - return EventTypeArg.deviceApprovalsChangeOverageAction - case "device_approvals_change_unlink_action": - return EventTypeArg.deviceApprovalsChangeUnlinkAction - case "device_approvals_remove_exception": - return EventTypeArg.deviceApprovalsRemoveException - case "directory_restrictions_add_members": - return EventTypeArg.directoryRestrictionsAddMembers - case "directory_restrictions_remove_members": - return EventTypeArg.directoryRestrictionsRemoveMembers - case "dropbox_passwords_policy_changed": - return EventTypeArg.dropboxPasswordsPolicyChanged - case "email_ingest_policy_changed": - return EventTypeArg.emailIngestPolicyChanged - case "emm_add_exception": - return EventTypeArg.emmAddException - case "emm_change_policy": - return EventTypeArg.emmChangePolicy - case "emm_remove_exception": - return EventTypeArg.emmRemoveException - case "extended_version_history_change_policy": - return EventTypeArg.extendedVersionHistoryChangePolicy - case "external_drive_backup_policy_changed": - return EventTypeArg.externalDriveBackupPolicyChanged - case "file_comments_change_policy": - return EventTypeArg.fileCommentsChangePolicy - case "file_locking_policy_changed": - return EventTypeArg.fileLockingPolicyChanged - case "file_provider_migration_policy_changed": - return EventTypeArg.fileProviderMigrationPolicyChanged - case "file_requests_change_policy": - return EventTypeArg.fileRequestsChangePolicy - case "file_requests_emails_enabled": - return EventTypeArg.fileRequestsEmailsEnabled - case "file_requests_emails_restricted_to_team_only": - return EventTypeArg.fileRequestsEmailsRestrictedToTeamOnly - case "file_transfers_policy_changed": - return EventTypeArg.fileTransfersPolicyChanged - case "folder_link_restriction_policy_changed": - return EventTypeArg.folderLinkRestrictionPolicyChanged - case "google_sso_change_policy": - return EventTypeArg.googleSsoChangePolicy - case "group_user_management_change_policy": - return EventTypeArg.groupUserManagementChangePolicy - case "integration_policy_changed": - return EventTypeArg.integrationPolicyChanged - case "invite_acceptance_email_policy_changed": - return EventTypeArg.inviteAcceptanceEmailPolicyChanged - case "member_requests_change_policy": - return EventTypeArg.memberRequestsChangePolicy - case "member_send_invite_policy_changed": - return EventTypeArg.memberSendInvitePolicyChanged - case "member_space_limits_add_exception": - return EventTypeArg.memberSpaceLimitsAddException - case "member_space_limits_change_caps_type_policy": - return EventTypeArg.memberSpaceLimitsChangeCapsTypePolicy - case "member_space_limits_change_policy": - return EventTypeArg.memberSpaceLimitsChangePolicy - case "member_space_limits_remove_exception": - return EventTypeArg.memberSpaceLimitsRemoveException - case "member_suggestions_change_policy": - return EventTypeArg.memberSuggestionsChangePolicy - case "microsoft_office_addin_change_policy": - return EventTypeArg.microsoftOfficeAddinChangePolicy - case "network_control_change_policy": - return EventTypeArg.networkControlChangePolicy - case "paper_change_deployment_policy": - return EventTypeArg.paperChangeDeploymentPolicy - case "paper_change_member_link_policy": - return EventTypeArg.paperChangeMemberLinkPolicy - case "paper_change_member_policy": - return EventTypeArg.paperChangeMemberPolicy - case "paper_change_policy": - return EventTypeArg.paperChangePolicy - case "paper_default_folder_policy_changed": - return EventTypeArg.paperDefaultFolderPolicyChanged - case "paper_desktop_policy_changed": - return EventTypeArg.paperDesktopPolicyChanged - case "paper_enabled_users_group_addition": - return EventTypeArg.paperEnabledUsersGroupAddition - case "paper_enabled_users_group_removal": - return EventTypeArg.paperEnabledUsersGroupRemoval - case "password_strength_requirements_change_policy": - return EventTypeArg.passwordStrengthRequirementsChangePolicy - case "permanent_delete_change_policy": - return EventTypeArg.permanentDeleteChangePolicy - case "reseller_support_change_policy": - return EventTypeArg.resellerSupportChangePolicy - case "rewind_policy_changed": - return EventTypeArg.rewindPolicyChanged - case "send_for_signature_policy_changed": - return EventTypeArg.sendForSignaturePolicyChanged - case "sharing_change_folder_join_policy": - return EventTypeArg.sharingChangeFolderJoinPolicy - case "sharing_change_link_allow_change_expiration_policy": - return EventTypeArg.sharingChangeLinkAllowChangeExpirationPolicy - case "sharing_change_link_default_expiration_policy": - return EventTypeArg.sharingChangeLinkDefaultExpirationPolicy - case "sharing_change_link_enforce_password_policy": - return EventTypeArg.sharingChangeLinkEnforcePasswordPolicy - case "sharing_change_link_policy": - return EventTypeArg.sharingChangeLinkPolicy - case "sharing_change_member_policy": - return EventTypeArg.sharingChangeMemberPolicy - case "showcase_change_download_policy": - return EventTypeArg.showcaseChangeDownloadPolicy - case "showcase_change_enabled_policy": - return EventTypeArg.showcaseChangeEnabledPolicy - case "showcase_change_external_sharing_policy": - return EventTypeArg.showcaseChangeExternalSharingPolicy - case "smarter_smart_sync_policy_changed": - return EventTypeArg.smarterSmartSyncPolicyChanged - case "smart_sync_change_policy": - return EventTypeArg.smartSyncChangePolicy - case "smart_sync_not_opt_out": - return EventTypeArg.smartSyncNotOptOut - case "smart_sync_opt_out": - return EventTypeArg.smartSyncOptOut - case "sso_change_policy": - return EventTypeArg.ssoChangePolicy - case "team_branding_policy_changed": - return EventTypeArg.teamBrandingPolicyChanged - case "team_extensions_policy_changed": - return EventTypeArg.teamExtensionsPolicyChanged - case "team_selective_sync_policy_changed": - return EventTypeArg.teamSelectiveSyncPolicyChanged - case "team_sharing_whitelist_subjects_changed": - return EventTypeArg.teamSharingWhitelistSubjectsChanged - case "tfa_add_exception": - return EventTypeArg.tfaAddException - case "tfa_change_policy": - return EventTypeArg.tfaChangePolicy - case "tfa_remove_exception": - return EventTypeArg.tfaRemoveException - case "two_account_change_policy": - return EventTypeArg.twoAccountChangePolicy - case "viewer_info_policy_changed": - return EventTypeArg.viewerInfoPolicyChanged - case "watermarking_policy_changed": - return EventTypeArg.watermarkingPolicyChanged - case "web_sessions_change_active_session_limit": - return EventTypeArg.webSessionsChangeActiveSessionLimit - case "web_sessions_change_fixed_length_policy": - return EventTypeArg.webSessionsChangeFixedLengthPolicy - case "web_sessions_change_idle_length_policy": - return EventTypeArg.webSessionsChangeIdleLengthPolicy - case "data_residency_migration_request_successful": - return EventTypeArg.dataResidencyMigrationRequestSuccessful - case "data_residency_migration_request_unsuccessful": - return EventTypeArg.dataResidencyMigrationRequestUnsuccessful - case "team_merge_from": - return EventTypeArg.teamMergeFrom - case "team_merge_to": - return EventTypeArg.teamMergeTo - case "team_profile_add_background": - return EventTypeArg.teamProfileAddBackground - case "team_profile_add_logo": - return EventTypeArg.teamProfileAddLogo - case "team_profile_change_background": - return EventTypeArg.teamProfileChangeBackground - case "team_profile_change_default_language": - return EventTypeArg.teamProfileChangeDefaultLanguage - case "team_profile_change_logo": - return EventTypeArg.teamProfileChangeLogo - case "team_profile_change_name": - return EventTypeArg.teamProfileChangeName - case "team_profile_remove_background": - return EventTypeArg.teamProfileRemoveBackground - case "team_profile_remove_logo": - return EventTypeArg.teamProfileRemoveLogo - case "tfa_add_backup_phone": - return EventTypeArg.tfaAddBackupPhone - case "tfa_add_security_key": - return EventTypeArg.tfaAddSecurityKey - case "tfa_change_backup_phone": - return EventTypeArg.tfaChangeBackupPhone - case "tfa_change_status": - return EventTypeArg.tfaChangeStatus - case "tfa_remove_backup_phone": - return EventTypeArg.tfaRemoveBackupPhone - case "tfa_remove_security_key": - return EventTypeArg.tfaRemoveSecurityKey - case "tfa_reset": - return EventTypeArg.tfaReset - case "changed_enterprise_admin_role": - return EventTypeArg.changedEnterpriseAdminRole - case "changed_enterprise_connected_team_status": - return EventTypeArg.changedEnterpriseConnectedTeamStatus - case "ended_enterprise_admin_session": - return EventTypeArg.endedEnterpriseAdminSession - case "ended_enterprise_admin_session_deprecated": - return EventTypeArg.endedEnterpriseAdminSessionDeprecated - case "enterprise_settings_locking": - return EventTypeArg.enterpriseSettingsLocking - case "guest_admin_change_status": - return EventTypeArg.guestAdminChangeStatus - case "started_enterprise_admin_session": - return EventTypeArg.startedEnterpriseAdminSession - case "team_merge_request_accepted": - return EventTypeArg.teamMergeRequestAccepted - case "team_merge_request_accepted_shown_to_primary_team": - return EventTypeArg.teamMergeRequestAcceptedShownToPrimaryTeam - case "team_merge_request_accepted_shown_to_secondary_team": - return EventTypeArg.teamMergeRequestAcceptedShownToSecondaryTeam - case "team_merge_request_auto_canceled": - return EventTypeArg.teamMergeRequestAutoCanceled - case "team_merge_request_canceled": - return EventTypeArg.teamMergeRequestCanceled - case "team_merge_request_canceled_shown_to_primary_team": - return EventTypeArg.teamMergeRequestCanceledShownToPrimaryTeam - case "team_merge_request_canceled_shown_to_secondary_team": - return EventTypeArg.teamMergeRequestCanceledShownToSecondaryTeam - case "team_merge_request_expired": - return EventTypeArg.teamMergeRequestExpired - case "team_merge_request_expired_shown_to_primary_team": - return EventTypeArg.teamMergeRequestExpiredShownToPrimaryTeam - case "team_merge_request_expired_shown_to_secondary_team": - return EventTypeArg.teamMergeRequestExpiredShownToSecondaryTeam - case "team_merge_request_rejected_shown_to_primary_team": - return EventTypeArg.teamMergeRequestRejectedShownToPrimaryTeam - case "team_merge_request_rejected_shown_to_secondary_team": - return EventTypeArg.teamMergeRequestRejectedShownToSecondaryTeam - case "team_merge_request_reminder": - return EventTypeArg.teamMergeRequestReminder - case "team_merge_request_reminder_shown_to_primary_team": - return EventTypeArg.teamMergeRequestReminderShownToPrimaryTeam - case "team_merge_request_reminder_shown_to_secondary_team": - return EventTypeArg.teamMergeRequestReminderShownToSecondaryTeam - case "team_merge_request_revoked": - return EventTypeArg.teamMergeRequestRevoked - case "team_merge_request_sent_shown_to_primary_team": - return EventTypeArg.teamMergeRequestSentShownToPrimaryTeam - case "team_merge_request_sent_shown_to_secondary_team": - return EventTypeArg.teamMergeRequestSentShownToSecondaryTeam - case "other": - return EventTypeArg.other - default: - return EventTypeArg.other - } - default: - throw JSONSerializerError.deserializeError(type: EventTypeArg.self, json: json) + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "disabled": + return GoogleSsoPolicy.disabled + case "enabled": + return GoogleSsoPolicy.enabled + case "other": + return GoogleSsoPolicy.other + default: + return GoogleSsoPolicy.other + } + default: + throw JSONSerializerError.deserializeError(type: GoogleSsoPolicy.self, json: json) } } - } + } + + /// Couldn't add a folder to a policy. + public class GovernancePolicyAddFolderFailedDetails: CustomStringConvertible, JSONRepresentable { + /// Policy ID. + public let governancePolicyId: String + /// Policy name. + public let name: String + /// Policy type. + public let policyType: TeamLog.PolicyType? + /// Folder. + public let folder: String + /// Reason. + public let reason: String? + public init(governancePolicyId: String, name: String, folder: String, policyType: TeamLog.PolicyType? = nil, reason: String? = nil) { + stringValidator()(governancePolicyId) + self.governancePolicyId = governancePolicyId + stringValidator()(name) + self.name = name + self.policyType = policyType + stringValidator()(folder) + self.folder = folder + nullableValidator(stringValidator())(reason) + self.reason = reason + } - /// Created member data report. - public class ExportMembersReportDetails: CustomStringConvertible, JSONRepresentable { func json() throws -> JSON { - try ExportMembersReportDetailsSerializer().serialize(self) + try GovernancePolicyAddFolderFailedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ExportMembersReportDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GovernancePolicyAddFolderFailedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for ExportMembersReportDetails: \(error)" + return "Failed to generate description for GovernancePolicyAddFolderFailedDetails: \(error)" } } } - - public class ExportMembersReportDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ExportMembersReportDetails) throws -> JSON { - let output = [String: JSON]() + public class GovernancePolicyAddFolderFailedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GovernancePolicyAddFolderFailedDetails) throws -> JSON { + let output = [ + "governance_policy_id": try Serialization._StringSerializer.serialize(value.governancePolicyId), + "name": try Serialization._StringSerializer.serialize(value.name), + "folder": try Serialization._StringSerializer.serialize(value.folder), + "policy_type": try NullableSerializer(TeamLog.PolicyTypeSerializer()).serialize(value.policyType), + "reason": try NullableSerializer(Serialization._StringSerializer).serialize(value.reason), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ExportMembersReportDetails { + public func deserialize(_ json: JSON) throws -> GovernancePolicyAddFolderFailedDetails { switch json { - case .dictionary: - return ExportMembersReportDetails() - default: - throw JSONSerializerError.deserializeError(type: ExportMembersReportDetails.self, json: json) + case .dictionary(let dict): + let governancePolicyId = try Serialization._StringSerializer.deserialize(dict["governance_policy_id"] ?? .null) + let name = try Serialization._StringSerializer.deserialize(dict["name"] ?? .null) + let folder = try Serialization._StringSerializer.deserialize(dict["folder"] ?? .null) + let policyType = try NullableSerializer(TeamLog.PolicyTypeSerializer()).deserialize(dict["policy_type"] ?? .null) + let reason = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["reason"] ?? .null) + return GovernancePolicyAddFolderFailedDetails(governancePolicyId: governancePolicyId, name: name, folder: folder, policyType: policyType, reason: reason) + default: + throw JSONSerializerError.deserializeError(type: GovernancePolicyAddFolderFailedDetails.self, json: json) } } } - /// Failed to create members data report. - public class ExportMembersReportFailDetails: CustomStringConvertible, JSONRepresentable { - /// Failure reason. - public let failureReason: Team.TeamReportFailureReason - public init(failureReason: Team.TeamReportFailureReason) { - self.failureReason = failureReason + /// The GovernancePolicyAddFolderFailedType struct + public class GovernancePolicyAddFolderFailedType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ } func json() throws -> JSON { - try ExportMembersReportFailDetailsSerializer().serialize(self) + try GovernancePolicyAddFolderFailedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ExportMembersReportFailDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GovernancePolicyAddFolderFailedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for ExportMembersReportFailDetails: \(error)" + return "Failed to generate description for GovernancePolicyAddFolderFailedType: \(error)" } } } - - public class ExportMembersReportFailDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ExportMembersReportFailDetails) throws -> JSON { + public class GovernancePolicyAddFolderFailedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GovernancePolicyAddFolderFailedType) throws -> JSON { let output = [ - "failure_reason": try Team.TeamReportFailureReasonSerializer().serialize(value.failureReason), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ExportMembersReportFailDetails { + public func deserialize(_ json: JSON) throws -> GovernancePolicyAddFolderFailedType { switch json { - case .dictionary(let dict): - let failureReason = try Team.TeamReportFailureReasonSerializer().deserialize(dict["failure_reason"] ?? .null) - return ExportMembersReportFailDetails(failureReason: failureReason) - default: - throw JSONSerializerError.deserializeError(type: ExportMembersReportFailDetails.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return GovernancePolicyAddFolderFailedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: GovernancePolicyAddFolderFailedType.self, json: json) } } } - /// The ExportMembersReportFailType struct - public class ExportMembersReportFailType: CustomStringConvertible, JSONRepresentable { - /// (no description) - public let description_: String - public init(description_: String) { - stringValidator()(description_) - self.description_ = description_ + /// Added folders to policy. + public class GovernancePolicyAddFoldersDetails: CustomStringConvertible, JSONRepresentable { + /// Policy ID. + public let governancePolicyId: String + /// Policy name. + public let name: String + /// Policy type. + public let policyType: TeamLog.PolicyType? + /// Folders. + public let folders: Array? + public init(governancePolicyId: String, name: String, policyType: TeamLog.PolicyType? = nil, folders: Array? = nil) { + stringValidator()(governancePolicyId) + self.governancePolicyId = governancePolicyId + stringValidator()(name) + self.name = name + self.policyType = policyType + nullableValidator(arrayValidator(itemValidator: stringValidator()))(folders) + self.folders = folders } func json() throws -> JSON { - try ExportMembersReportFailTypeSerializer().serialize(self) + try GovernancePolicyAddFoldersDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ExportMembersReportFailTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GovernancePolicyAddFoldersDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for ExportMembersReportFailType: \(error)" + return "Failed to generate description for GovernancePolicyAddFoldersDetails: \(error)" } } } - - public class ExportMembersReportFailTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ExportMembersReportFailType) throws -> JSON { + public class GovernancePolicyAddFoldersDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GovernancePolicyAddFoldersDetails) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "governance_policy_id": try Serialization._StringSerializer.serialize(value.governancePolicyId), + "name": try Serialization._StringSerializer.serialize(value.name), + "policy_type": try NullableSerializer(TeamLog.PolicyTypeSerializer()).serialize(value.policyType), + "folders": try NullableSerializer(ArraySerializer(Serialization._StringSerializer)).serialize(value.folders), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ExportMembersReportFailType { + public func deserialize(_ json: JSON) throws -> GovernancePolicyAddFoldersDetails { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return ExportMembersReportFailType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: ExportMembersReportFailType.self, json: json) + case .dictionary(let dict): + let governancePolicyId = try Serialization._StringSerializer.deserialize(dict["governance_policy_id"] ?? .null) + let name = try Serialization._StringSerializer.deserialize(dict["name"] ?? .null) + let policyType = try NullableSerializer(TeamLog.PolicyTypeSerializer()).deserialize(dict["policy_type"] ?? .null) + let folders = try NullableSerializer(ArraySerializer(Serialization._StringSerializer)).deserialize(dict["folders"] ?? .null) + return GovernancePolicyAddFoldersDetails(governancePolicyId: governancePolicyId, name: name, policyType: policyType, folders: folders) + default: + throw JSONSerializerError.deserializeError(type: GovernancePolicyAddFoldersDetails.self, json: json) } } } - /// The ExportMembersReportType struct - public class ExportMembersReportType: CustomStringConvertible, JSONRepresentable { + /// The GovernancePolicyAddFoldersType struct + public class GovernancePolicyAddFoldersType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -24743,86 +38493,94 @@ public class TeamLog { } func json() throws -> JSON { - try ExportMembersReportTypeSerializer().serialize(self) + try GovernancePolicyAddFoldersTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ExportMembersReportTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GovernancePolicyAddFoldersTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for ExportMembersReportType: \(error)" + return "Failed to generate description for GovernancePolicyAddFoldersType: \(error)" } } } - - public class ExportMembersReportTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ExportMembersReportType) throws -> JSON { + public class GovernancePolicyAddFoldersTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GovernancePolicyAddFoldersType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ExportMembersReportType { + public func deserialize(_ json: JSON) throws -> GovernancePolicyAddFoldersType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return ExportMembersReportType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: ExportMembersReportType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return GovernancePolicyAddFoldersType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: GovernancePolicyAddFoldersType.self, json: json) } } } - /// Accepted/opted out of extended version history. - public class ExtendedVersionHistoryChangePolicyDetails: CustomStringConvertible, JSONRepresentable { - /// New extended version history policy. - public let newValue: TeamLog.ExtendedVersionHistoryPolicy - /// Previous extended version history policy. Might be missing due to historical data gap. - public let previousValue: TeamLog.ExtendedVersionHistoryPolicy? - public init(newValue: TeamLog.ExtendedVersionHistoryPolicy, previousValue: TeamLog.ExtendedVersionHistoryPolicy? = nil) { - self.newValue = newValue - self.previousValue = previousValue + /// Content disposed. + public class GovernancePolicyContentDisposedDetails: CustomStringConvertible, JSONRepresentable { + /// Policy ID. + public let governancePolicyId: String + /// Policy name. + public let name: String + /// Policy type. + public let policyType: TeamLog.PolicyType? + /// Disposition type. + public let dispositionType: TeamLog.DispositionActionType + public init(governancePolicyId: String, name: String, dispositionType: TeamLog.DispositionActionType, policyType: TeamLog.PolicyType? = nil) { + stringValidator()(governancePolicyId) + self.governancePolicyId = governancePolicyId + stringValidator()(name) + self.name = name + self.policyType = policyType + self.dispositionType = dispositionType } func json() throws -> JSON { - try ExtendedVersionHistoryChangePolicyDetailsSerializer().serialize(self) + try GovernancePolicyContentDisposedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ExtendedVersionHistoryChangePolicyDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GovernancePolicyContentDisposedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for ExtendedVersionHistoryChangePolicyDetails: \(error)" + return "Failed to generate description for GovernancePolicyContentDisposedDetails: \(error)" } } } - - public class ExtendedVersionHistoryChangePolicyDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ExtendedVersionHistoryChangePolicyDetails) throws -> JSON { + public class GovernancePolicyContentDisposedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GovernancePolicyContentDisposedDetails) throws -> JSON { let output = [ - "new_value": try TeamLog.ExtendedVersionHistoryPolicySerializer().serialize(value.newValue), - "previous_value": try NullableSerializer(TeamLog.ExtendedVersionHistoryPolicySerializer()).serialize(value.previousValue), + "governance_policy_id": try Serialization._StringSerializer.serialize(value.governancePolicyId), + "name": try Serialization._StringSerializer.serialize(value.name), + "disposition_type": try TeamLog.DispositionActionTypeSerializer().serialize(value.dispositionType), + "policy_type": try NullableSerializer(TeamLog.PolicyTypeSerializer()).serialize(value.policyType), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ExtendedVersionHistoryChangePolicyDetails { + public func deserialize(_ json: JSON) throws -> GovernancePolicyContentDisposedDetails { switch json { - case .dictionary(let dict): - let newValue = try TeamLog.ExtendedVersionHistoryPolicySerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try NullableSerializer(TeamLog.ExtendedVersionHistoryPolicySerializer()).deserialize(dict["previous_value"] ?? .null) - return ExtendedVersionHistoryChangePolicyDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: ExtendedVersionHistoryChangePolicyDetails.self, json: json) + case .dictionary(let dict): + let governancePolicyId = try Serialization._StringSerializer.deserialize(dict["governance_policy_id"] ?? .null) + let name = try Serialization._StringSerializer.deserialize(dict["name"] ?? .null) + let dispositionType = try TeamLog.DispositionActionTypeSerializer().deserialize(dict["disposition_type"] ?? .null) + let policyType = try NullableSerializer(TeamLog.PolicyTypeSerializer()).deserialize(dict["policy_type"] ?? .null) + return GovernancePolicyContentDisposedDetails(governancePolicyId: governancePolicyId, name: name, dispositionType: dispositionType, policyType: policyType) + default: + throw JSONSerializerError.deserializeError(type: GovernancePolicyContentDisposedDetails.self, json: json) } } } - /// The ExtendedVersionHistoryChangePolicyType struct - public class ExtendedVersionHistoryChangePolicyType: CustomStringConvertible, JSONRepresentable { + /// The GovernancePolicyContentDisposedType struct + public class GovernancePolicyContentDisposedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -24831,238 +38589,191 @@ public class TeamLog { } func json() throws -> JSON { - try ExtendedVersionHistoryChangePolicyTypeSerializer().serialize(self) + try GovernancePolicyContentDisposedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ExtendedVersionHistoryChangePolicyTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GovernancePolicyContentDisposedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for ExtendedVersionHistoryChangePolicyType: \(error)" + return "Failed to generate description for GovernancePolicyContentDisposedType: \(error)" } } } - - public class ExtendedVersionHistoryChangePolicyTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ExtendedVersionHistoryChangePolicyType) throws -> JSON { + public class GovernancePolicyContentDisposedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GovernancePolicyContentDisposedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ExtendedVersionHistoryChangePolicyType { + public func deserialize(_ json: JSON) throws -> GovernancePolicyContentDisposedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return ExtendedVersionHistoryChangePolicyType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: ExtendedVersionHistoryChangePolicyType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return GovernancePolicyContentDisposedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: GovernancePolicyContentDisposedType.self, json: json) } } } - /// The ExtendedVersionHistoryPolicy union - public enum ExtendedVersionHistoryPolicy: CustomStringConvertible, JSONRepresentable { - /// An unspecified error. - case explicitlyLimited - /// An unspecified error. - case explicitlyUnlimited - /// An unspecified error. - case implicitlyLimited - /// An unspecified error. - case implicitlyUnlimited - /// An unspecified error. - case other + /// Activated a new policy. + public class GovernancePolicyCreateDetails: CustomStringConvertible, JSONRepresentable { + /// Policy ID. + public let governancePolicyId: String + /// Policy name. + public let name: String + /// Policy type. + public let policyType: TeamLog.PolicyType? + /// Duration in days. + public let duration: TeamLog.DurationLogInfo + /// Folders. + public let folders: Array? + public init(governancePolicyId: String, name: String, duration: TeamLog.DurationLogInfo, policyType: TeamLog.PolicyType? = nil, folders: Array? = nil) { + stringValidator()(governancePolicyId) + self.governancePolicyId = governancePolicyId + stringValidator()(name) + self.name = name + self.policyType = policyType + self.duration = duration + nullableValidator(arrayValidator(itemValidator: stringValidator()))(folders) + self.folders = folders + } func json() throws -> JSON { - try ExtendedVersionHistoryPolicySerializer().serialize(self) + try GovernancePolicyCreateDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ExtendedVersionHistoryPolicySerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GovernancePolicyCreateDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for ExtendedVersionHistoryPolicy: \(error)" + return "Failed to generate description for GovernancePolicyCreateDetails: \(error)" } } } - - public class ExtendedVersionHistoryPolicySerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ExtendedVersionHistoryPolicy) throws -> JSON { - switch value { - case .explicitlyLimited: - var d = [String: JSON]() - d[".tag"] = .str("explicitly_limited") - return .dictionary(d) - case .explicitlyUnlimited: - var d = [String: JSON]() - d[".tag"] = .str("explicitly_unlimited") - return .dictionary(d) - case .implicitlyLimited: - var d = [String: JSON]() - d[".tag"] = .str("implicitly_limited") - return .dictionary(d) - case .implicitlyUnlimited: - var d = [String: JSON]() - d[".tag"] = .str("implicitly_unlimited") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) - } + public class GovernancePolicyCreateDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GovernancePolicyCreateDetails) throws -> JSON { + let output = [ + "governance_policy_id": try Serialization._StringSerializer.serialize(value.governancePolicyId), + "name": try Serialization._StringSerializer.serialize(value.name), + "duration": try TeamLog.DurationLogInfoSerializer().serialize(value.duration), + "policy_type": try NullableSerializer(TeamLog.PolicyTypeSerializer()).serialize(value.policyType), + "folders": try NullableSerializer(ArraySerializer(Serialization._StringSerializer)).serialize(value.folders), + ] + return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ExtendedVersionHistoryPolicy { + public func deserialize(_ json: JSON) throws -> GovernancePolicyCreateDetails { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "explicitly_limited": - return ExtendedVersionHistoryPolicy.explicitlyLimited - case "explicitly_unlimited": - return ExtendedVersionHistoryPolicy.explicitlyUnlimited - case "implicitly_limited": - return ExtendedVersionHistoryPolicy.implicitlyLimited - case "implicitly_unlimited": - return ExtendedVersionHistoryPolicy.implicitlyUnlimited - case "other": - return ExtendedVersionHistoryPolicy.other + case .dictionary(let dict): + let governancePolicyId = try Serialization._StringSerializer.deserialize(dict["governance_policy_id"] ?? .null) + let name = try Serialization._StringSerializer.deserialize(dict["name"] ?? .null) + let duration = try TeamLog.DurationLogInfoSerializer().deserialize(dict["duration"] ?? .null) + let policyType = try NullableSerializer(TeamLog.PolicyTypeSerializer()).deserialize(dict["policy_type"] ?? .null) + let folders = try NullableSerializer(ArraySerializer(Serialization._StringSerializer)).deserialize(dict["folders"] ?? .null) + return GovernancePolicyCreateDetails(governancePolicyId: governancePolicyId, name: name, duration: duration, policyType: policyType, folders: folders) default: - return ExtendedVersionHistoryPolicy.other - } - default: - throw JSONSerializerError.deserializeError(type: ExtendedVersionHistoryPolicy.self, json: json) + throw JSONSerializerError.deserializeError(type: GovernancePolicyCreateDetails.self, json: json) } } } - /// External Drive Backup eligibility status - public enum ExternalDriveBackupEligibilityStatus: CustomStringConvertible, JSONRepresentable { - /// An unspecified error. - case exceedLicenseCap - /// An unspecified error. - case success - /// An unspecified error. - case other + /// The GovernancePolicyCreateType struct + public class GovernancePolicyCreateType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } func json() throws -> JSON { - try ExternalDriveBackupEligibilityStatusSerializer().serialize(self) + try GovernancePolicyCreateTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ExternalDriveBackupEligibilityStatusSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GovernancePolicyCreateTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for ExternalDriveBackupEligibilityStatus: \(error)" + return "Failed to generate description for GovernancePolicyCreateType: \(error)" } } } - - public class ExternalDriveBackupEligibilityStatusSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ExternalDriveBackupEligibilityStatus) throws -> JSON { - switch value { - case .exceedLicenseCap: - var d = [String: JSON]() - d[".tag"] = .str("exceed_license_cap") - return .dictionary(d) - case .success: - var d = [String: JSON]() - d[".tag"] = .str("success") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) - } + public class GovernancePolicyCreateTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GovernancePolicyCreateType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ExternalDriveBackupEligibilityStatus { + public func deserialize(_ json: JSON) throws -> GovernancePolicyCreateType { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "exceed_license_cap": - return ExternalDriveBackupEligibilityStatus.exceedLicenseCap - case "success": - return ExternalDriveBackupEligibilityStatus.success - case "other": - return ExternalDriveBackupEligibilityStatus.other + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return GovernancePolicyCreateType(description_: description_) default: - return ExternalDriveBackupEligibilityStatus.other - } - default: - throw JSONSerializerError.deserializeError(type: ExternalDriveBackupEligibilityStatus.self, json: json) + throw JSONSerializerError.deserializeError(type: GovernancePolicyCreateType.self, json: json) } } } - /// Checked external drive backup eligibility status. - public class ExternalDriveBackupEligibilityStatusCheckedDetails: CustomStringConvertible, JSONRepresentable { - /// Device's session logged information. - public let desktopDeviceSessionInfo: TeamLog.DesktopDeviceSessionLogInfo - /// Current eligibility status of external drive backup. - public let status: TeamLog.ExternalDriveBackupEligibilityStatus - /// Total number of valid external drive backup for all the team members. - public let numberOfExternalDriveBackup: UInt64 - public init( - desktopDeviceSessionInfo: TeamLog.DesktopDeviceSessionLogInfo, - status: TeamLog.ExternalDriveBackupEligibilityStatus, - numberOfExternalDriveBackup: UInt64 - ) { - self.desktopDeviceSessionInfo = desktopDeviceSessionInfo - self.status = status - comparableValidator()(numberOfExternalDriveBackup) - self.numberOfExternalDriveBackup = numberOfExternalDriveBackup + /// Deleted a policy. + public class GovernancePolicyDeleteDetails: CustomStringConvertible, JSONRepresentable { + /// Policy ID. + public let governancePolicyId: String + /// Policy name. + public let name: String + /// Policy type. + public let policyType: TeamLog.PolicyType? + public init(governancePolicyId: String, name: String, policyType: TeamLog.PolicyType? = nil) { + stringValidator()(governancePolicyId) + self.governancePolicyId = governancePolicyId + stringValidator()(name) + self.name = name + self.policyType = policyType } func json() throws -> JSON { - try ExternalDriveBackupEligibilityStatusCheckedDetailsSerializer().serialize(self) + try GovernancePolicyDeleteDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ExternalDriveBackupEligibilityStatusCheckedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GovernancePolicyDeleteDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for ExternalDriveBackupEligibilityStatusCheckedDetails: \(error)" + return "Failed to generate description for GovernancePolicyDeleteDetails: \(error)" } } } - - public class ExternalDriveBackupEligibilityStatusCheckedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ExternalDriveBackupEligibilityStatusCheckedDetails) throws -> JSON { + public class GovernancePolicyDeleteDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GovernancePolicyDeleteDetails) throws -> JSON { let output = [ - "desktop_device_session_info": try TeamLog.DesktopDeviceSessionLogInfoSerializer().serialize(value.desktopDeviceSessionInfo), - "status": try TeamLog.ExternalDriveBackupEligibilityStatusSerializer().serialize(value.status), - "number_of_external_drive_backup": try Serialization._UInt64Serializer.serialize(value.numberOfExternalDriveBackup), + "governance_policy_id": try Serialization._StringSerializer.serialize(value.governancePolicyId), + "name": try Serialization._StringSerializer.serialize(value.name), + "policy_type": try NullableSerializer(TeamLog.PolicyTypeSerializer()).serialize(value.policyType), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ExternalDriveBackupEligibilityStatusCheckedDetails { + public func deserialize(_ json: JSON) throws -> GovernancePolicyDeleteDetails { switch json { - case .dictionary(let dict): - let desktopDeviceSessionInfo = try TeamLog.DesktopDeviceSessionLogInfoSerializer().deserialize(dict["desktop_device_session_info"] ?? .null) - let status = try TeamLog.ExternalDriveBackupEligibilityStatusSerializer().deserialize(dict["status"] ?? .null) - let numberOfExternalDriveBackup = try Serialization._UInt64Serializer.deserialize(dict["number_of_external_drive_backup"] ?? .null) - return ExternalDriveBackupEligibilityStatusCheckedDetails( - desktopDeviceSessionInfo: desktopDeviceSessionInfo, - status: status, - numberOfExternalDriveBackup: numberOfExternalDriveBackup - ) - default: - throw JSONSerializerError.deserializeError(type: ExternalDriveBackupEligibilityStatusCheckedDetails.self, json: json) + case .dictionary(let dict): + let governancePolicyId = try Serialization._StringSerializer.deserialize(dict["governance_policy_id"] ?? .null) + let name = try Serialization._StringSerializer.deserialize(dict["name"] ?? .null) + let policyType = try NullableSerializer(TeamLog.PolicyTypeSerializer()).deserialize(dict["policy_type"] ?? .null) + return GovernancePolicyDeleteDetails(governancePolicyId: governancePolicyId, name: name, policyType: policyType) + default: + throw JSONSerializerError.deserializeError(type: GovernancePolicyDeleteDetails.self, json: json) } } } - /// The ExternalDriveBackupEligibilityStatusCheckedType struct - public class ExternalDriveBackupEligibilityStatusCheckedType: CustomStringConvertible, JSONRepresentable { + /// The GovernancePolicyDeleteType struct + public class GovernancePolicyDeleteType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -25071,349 +38782,305 @@ public class TeamLog { } func json() throws -> JSON { - try ExternalDriveBackupEligibilityStatusCheckedTypeSerializer().serialize(self) + try GovernancePolicyDeleteTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ExternalDriveBackupEligibilityStatusCheckedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GovernancePolicyDeleteTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for ExternalDriveBackupEligibilityStatusCheckedType: \(error)" + return "Failed to generate description for GovernancePolicyDeleteType: \(error)" } } } - - public class ExternalDriveBackupEligibilityStatusCheckedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ExternalDriveBackupEligibilityStatusCheckedType) throws -> JSON { + public class GovernancePolicyDeleteTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GovernancePolicyDeleteType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ExternalDriveBackupEligibilityStatusCheckedType { + public func deserialize(_ json: JSON) throws -> GovernancePolicyDeleteType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return ExternalDriveBackupEligibilityStatusCheckedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: ExternalDriveBackupEligibilityStatusCheckedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return GovernancePolicyDeleteType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: GovernancePolicyDeleteType.self, json: json) } } } - /// Policy for controlling team access to external drive backup feature - public enum ExternalDriveBackupPolicy: CustomStringConvertible, JSONRepresentable { - /// An unspecified error. - case default_ - /// An unspecified error. - case disabled - /// An unspecified error. - case enabled - /// An unspecified error. - case other + /// Edited policy. + public class GovernancePolicyEditDetailsDetails: CustomStringConvertible, JSONRepresentable { + /// Policy ID. + public let governancePolicyId: String + /// Policy name. + public let name: String + /// Policy type. + public let policyType: TeamLog.PolicyType? + /// Attribute. + public let attribute: String + /// From. + public let previousValue: String + /// To. + public let newValue: String + public init(governancePolicyId: String, name: String, attribute: String, previousValue: String, newValue: String, policyType: TeamLog.PolicyType? = nil) { + stringValidator()(governancePolicyId) + self.governancePolicyId = governancePolicyId + stringValidator()(name) + self.name = name + self.policyType = policyType + stringValidator()(attribute) + self.attribute = attribute + stringValidator()(previousValue) + self.previousValue = previousValue + stringValidator()(newValue) + self.newValue = newValue + } func json() throws -> JSON { - try ExternalDriveBackupPolicySerializer().serialize(self) + try GovernancePolicyEditDetailsDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ExternalDriveBackupPolicySerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GovernancePolicyEditDetailsDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for ExternalDriveBackupPolicy: \(error)" + return "Failed to generate description for GovernancePolicyEditDetailsDetails: \(error)" } } } - - public class ExternalDriveBackupPolicySerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ExternalDriveBackupPolicy) throws -> JSON { - switch value { - case .default_: - var d = [String: JSON]() - d[".tag"] = .str("default") - return .dictionary(d) - case .disabled: - var d = [String: JSON]() - d[".tag"] = .str("disabled") - return .dictionary(d) - case .enabled: - var d = [String: JSON]() - d[".tag"] = .str("enabled") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) - } + public class GovernancePolicyEditDetailsDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GovernancePolicyEditDetailsDetails) throws -> JSON { + let output = [ + "governance_policy_id": try Serialization._StringSerializer.serialize(value.governancePolicyId), + "name": try Serialization._StringSerializer.serialize(value.name), + "attribute": try Serialization._StringSerializer.serialize(value.attribute), + "previous_value": try Serialization._StringSerializer.serialize(value.previousValue), + "new_value": try Serialization._StringSerializer.serialize(value.newValue), + "policy_type": try NullableSerializer(TeamLog.PolicyTypeSerializer()).serialize(value.policyType), + ] + return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ExternalDriveBackupPolicy { + public func deserialize(_ json: JSON) throws -> GovernancePolicyEditDetailsDetails { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "default": - return ExternalDriveBackupPolicy.default_ - case "disabled": - return ExternalDriveBackupPolicy.disabled - case "enabled": - return ExternalDriveBackupPolicy.enabled - case "other": - return ExternalDriveBackupPolicy.other + case .dictionary(let dict): + let governancePolicyId = try Serialization._StringSerializer.deserialize(dict["governance_policy_id"] ?? .null) + let name = try Serialization._StringSerializer.deserialize(dict["name"] ?? .null) + let attribute = try Serialization._StringSerializer.deserialize(dict["attribute"] ?? .null) + let previousValue = try Serialization._StringSerializer.deserialize(dict["previous_value"] ?? .null) + let newValue = try Serialization._StringSerializer.deserialize(dict["new_value"] ?? .null) + let policyType = try NullableSerializer(TeamLog.PolicyTypeSerializer()).deserialize(dict["policy_type"] ?? .null) + return GovernancePolicyEditDetailsDetails(governancePolicyId: governancePolicyId, name: name, attribute: attribute, previousValue: previousValue, newValue: newValue, policyType: policyType) default: - return ExternalDriveBackupPolicy.other - } - default: - throw JSONSerializerError.deserializeError(type: ExternalDriveBackupPolicy.self, json: json) + throw JSONSerializerError.deserializeError(type: GovernancePolicyEditDetailsDetails.self, json: json) } } } - /// Changed external drive backup policy for team. - public class ExternalDriveBackupPolicyChangedDetails: CustomStringConvertible, JSONRepresentable { - /// New external drive backup policy. - public let newValue: TeamLog.ExternalDriveBackupPolicy - /// Previous external drive backup policy. - public let previousValue: TeamLog.ExternalDriveBackupPolicy - public init(newValue: TeamLog.ExternalDriveBackupPolicy, previousValue: TeamLog.ExternalDriveBackupPolicy) { - self.newValue = newValue - self.previousValue = previousValue + /// The GovernancePolicyEditDetailsType struct + public class GovernancePolicyEditDetailsType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ } func json() throws -> JSON { - try ExternalDriveBackupPolicyChangedDetailsSerializer().serialize(self) + try GovernancePolicyEditDetailsTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ExternalDriveBackupPolicyChangedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GovernancePolicyEditDetailsTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for ExternalDriveBackupPolicyChangedDetails: \(error)" + return "Failed to generate description for GovernancePolicyEditDetailsType: \(error)" } } } - - public class ExternalDriveBackupPolicyChangedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ExternalDriveBackupPolicyChangedDetails) throws -> JSON { + public class GovernancePolicyEditDetailsTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GovernancePolicyEditDetailsType) throws -> JSON { let output = [ - "new_value": try TeamLog.ExternalDriveBackupPolicySerializer().serialize(value.newValue), - "previous_value": try TeamLog.ExternalDriveBackupPolicySerializer().serialize(value.previousValue), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ExternalDriveBackupPolicyChangedDetails { + public func deserialize(_ json: JSON) throws -> GovernancePolicyEditDetailsType { switch json { - case .dictionary(let dict): - let newValue = try TeamLog.ExternalDriveBackupPolicySerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try TeamLog.ExternalDriveBackupPolicySerializer().deserialize(dict["previous_value"] ?? .null) - return ExternalDriveBackupPolicyChangedDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: ExternalDriveBackupPolicyChangedDetails.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return GovernancePolicyEditDetailsType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: GovernancePolicyEditDetailsType.self, json: json) } } } - /// The ExternalDriveBackupPolicyChangedType struct - public class ExternalDriveBackupPolicyChangedType: CustomStringConvertible, JSONRepresentable { - /// (no description) - public let description_: String - public init(description_: String) { - stringValidator()(description_) - self.description_ = description_ + /// Changed policy duration. + public class GovernancePolicyEditDurationDetails: CustomStringConvertible, JSONRepresentable { + /// Policy ID. + public let governancePolicyId: String + /// Policy name. + public let name: String + /// Policy type. + public let policyType: TeamLog.PolicyType? + /// From. + public let previousValue: TeamLog.DurationLogInfo + /// To. + public let newValue: TeamLog.DurationLogInfo + public init(governancePolicyId: String, name: String, previousValue: TeamLog.DurationLogInfo, newValue: TeamLog.DurationLogInfo, policyType: TeamLog.PolicyType? = nil) { + stringValidator()(governancePolicyId) + self.governancePolicyId = governancePolicyId + stringValidator()(name) + self.name = name + self.policyType = policyType + self.previousValue = previousValue + self.newValue = newValue } func json() throws -> JSON { - try ExternalDriveBackupPolicyChangedTypeSerializer().serialize(self) + try GovernancePolicyEditDurationDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ExternalDriveBackupPolicyChangedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GovernancePolicyEditDurationDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for ExternalDriveBackupPolicyChangedType: \(error)" + return "Failed to generate description for GovernancePolicyEditDurationDetails: \(error)" } } } - - public class ExternalDriveBackupPolicyChangedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ExternalDriveBackupPolicyChangedType) throws -> JSON { + public class GovernancePolicyEditDurationDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GovernancePolicyEditDurationDetails) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "governance_policy_id": try Serialization._StringSerializer.serialize(value.governancePolicyId), + "name": try Serialization._StringSerializer.serialize(value.name), + "previous_value": try TeamLog.DurationLogInfoSerializer().serialize(value.previousValue), + "new_value": try TeamLog.DurationLogInfoSerializer().serialize(value.newValue), + "policy_type": try NullableSerializer(TeamLog.PolicyTypeSerializer()).serialize(value.policyType), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ExternalDriveBackupPolicyChangedType { + public func deserialize(_ json: JSON) throws -> GovernancePolicyEditDurationDetails { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return ExternalDriveBackupPolicyChangedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: ExternalDriveBackupPolicyChangedType.self, json: json) + case .dictionary(let dict): + let governancePolicyId = try Serialization._StringSerializer.deserialize(dict["governance_policy_id"] ?? .null) + let name = try Serialization._StringSerializer.deserialize(dict["name"] ?? .null) + let previousValue = try TeamLog.DurationLogInfoSerializer().deserialize(dict["previous_value"] ?? .null) + let newValue = try TeamLog.DurationLogInfoSerializer().deserialize(dict["new_value"] ?? .null) + let policyType = try NullableSerializer(TeamLog.PolicyTypeSerializer()).deserialize(dict["policy_type"] ?? .null) + return GovernancePolicyEditDurationDetails(governancePolicyId: governancePolicyId, name: name, previousValue: previousValue, newValue: newValue, policyType: policyType) + default: + throw JSONSerializerError.deserializeError(type: GovernancePolicyEditDurationDetails.self, json: json) } } } - /// External Drive Backup status - public enum ExternalDriveBackupStatus: CustomStringConvertible, JSONRepresentable { - /// An unspecified error. - case broken - /// An unspecified error. - case created - /// An unspecified error. - case createdOrBroken - /// An unspecified error. - case deleted - /// An unspecified error. - case empty - /// An unspecified error. - case unknown - /// An unspecified error. - case other + /// The GovernancePolicyEditDurationType struct + public class GovernancePolicyEditDurationType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } func json() throws -> JSON { - try ExternalDriveBackupStatusSerializer().serialize(self) + try GovernancePolicyEditDurationTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ExternalDriveBackupStatusSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GovernancePolicyEditDurationTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for ExternalDriveBackupStatus: \(error)" + return "Failed to generate description for GovernancePolicyEditDurationType: \(error)" } } } - - public class ExternalDriveBackupStatusSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ExternalDriveBackupStatus) throws -> JSON { - switch value { - case .broken: - var d = [String: JSON]() - d[".tag"] = .str("broken") - return .dictionary(d) - case .created: - var d = [String: JSON]() - d[".tag"] = .str("created") - return .dictionary(d) - case .createdOrBroken: - var d = [String: JSON]() - d[".tag"] = .str("created_or_broken") - return .dictionary(d) - case .deleted: - var d = [String: JSON]() - d[".tag"] = .str("deleted") - return .dictionary(d) - case .empty: - var d = [String: JSON]() - d[".tag"] = .str("empty") - return .dictionary(d) - case .unknown: - var d = [String: JSON]() - d[".tag"] = .str("unknown") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) - } + public class GovernancePolicyEditDurationTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GovernancePolicyEditDurationType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ExternalDriveBackupStatus { + public func deserialize(_ json: JSON) throws -> GovernancePolicyEditDurationType { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "broken": - return ExternalDriveBackupStatus.broken - case "created": - return ExternalDriveBackupStatus.created - case "created_or_broken": - return ExternalDriveBackupStatus.createdOrBroken - case "deleted": - return ExternalDriveBackupStatus.deleted - case "empty": - return ExternalDriveBackupStatus.empty - case "unknown": - return ExternalDriveBackupStatus.unknown - case "other": - return ExternalDriveBackupStatus.other + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return GovernancePolicyEditDurationType(description_: description_) default: - return ExternalDriveBackupStatus.other - } - default: - throw JSONSerializerError.deserializeError(type: ExternalDriveBackupStatus.self, json: json) + throw JSONSerializerError.deserializeError(type: GovernancePolicyEditDurationType.self, json: json) } } } - /// Modified external drive backup. - public class ExternalDriveBackupStatusChangedDetails: CustomStringConvertible, JSONRepresentable { - /// Device's session logged information. - public let desktopDeviceSessionInfo: TeamLog.DesktopDeviceSessionLogInfo - /// Previous status of this external drive backup. - public let previousValue: TeamLog.ExternalDriveBackupStatus - /// Next status of this external drive backup. - public let newValue: TeamLog.ExternalDriveBackupStatus - public init( - desktopDeviceSessionInfo: TeamLog.DesktopDeviceSessionLogInfo, - previousValue: TeamLog.ExternalDriveBackupStatus, - newValue: TeamLog.ExternalDriveBackupStatus - ) { - self.desktopDeviceSessionInfo = desktopDeviceSessionInfo - self.previousValue = previousValue - self.newValue = newValue + /// Created a policy download. + public class GovernancePolicyExportCreatedDetails: CustomStringConvertible, JSONRepresentable { + /// Policy ID. + public let governancePolicyId: String + /// Policy name. + public let name: String + /// Policy type. + public let policyType: TeamLog.PolicyType? + /// Export name. + public let exportName: String + public init(governancePolicyId: String, name: String, exportName: String, policyType: TeamLog.PolicyType? = nil) { + stringValidator()(governancePolicyId) + self.governancePolicyId = governancePolicyId + stringValidator()(name) + self.name = name + self.policyType = policyType + stringValidator()(exportName) + self.exportName = exportName } func json() throws -> JSON { - try ExternalDriveBackupStatusChangedDetailsSerializer().serialize(self) + try GovernancePolicyExportCreatedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ExternalDriveBackupStatusChangedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GovernancePolicyExportCreatedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for ExternalDriveBackupStatusChangedDetails: \(error)" + return "Failed to generate description for GovernancePolicyExportCreatedDetails: \(error)" } } } - - public class ExternalDriveBackupStatusChangedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ExternalDriveBackupStatusChangedDetails) throws -> JSON { + public class GovernancePolicyExportCreatedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GovernancePolicyExportCreatedDetails) throws -> JSON { let output = [ - "desktop_device_session_info": try TeamLog.DesktopDeviceSessionLogInfoSerializer().serialize(value.desktopDeviceSessionInfo), - "previous_value": try TeamLog.ExternalDriveBackupStatusSerializer().serialize(value.previousValue), - "new_value": try TeamLog.ExternalDriveBackupStatusSerializer().serialize(value.newValue), + "governance_policy_id": try Serialization._StringSerializer.serialize(value.governancePolicyId), + "name": try Serialization._StringSerializer.serialize(value.name), + "export_name": try Serialization._StringSerializer.serialize(value.exportName), + "policy_type": try NullableSerializer(TeamLog.PolicyTypeSerializer()).serialize(value.policyType), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ExternalDriveBackupStatusChangedDetails { + public func deserialize(_ json: JSON) throws -> GovernancePolicyExportCreatedDetails { switch json { - case .dictionary(let dict): - let desktopDeviceSessionInfo = try TeamLog.DesktopDeviceSessionLogInfoSerializer().deserialize(dict["desktop_device_session_info"] ?? .null) - let previousValue = try TeamLog.ExternalDriveBackupStatusSerializer().deserialize(dict["previous_value"] ?? .null) - let newValue = try TeamLog.ExternalDriveBackupStatusSerializer().deserialize(dict["new_value"] ?? .null) - return ExternalDriveBackupStatusChangedDetails( - desktopDeviceSessionInfo: desktopDeviceSessionInfo, - previousValue: previousValue, - newValue: newValue - ) - default: - throw JSONSerializerError.deserializeError(type: ExternalDriveBackupStatusChangedDetails.self, json: json) + case .dictionary(let dict): + let governancePolicyId = try Serialization._StringSerializer.deserialize(dict["governance_policy_id"] ?? .null) + let name = try Serialization._StringSerializer.deserialize(dict["name"] ?? .null) + let exportName = try Serialization._StringSerializer.deserialize(dict["export_name"] ?? .null) + let policyType = try NullableSerializer(TeamLog.PolicyTypeSerializer()).deserialize(dict["policy_type"] ?? .null) + return GovernancePolicyExportCreatedDetails(governancePolicyId: governancePolicyId, name: name, exportName: exportName, policyType: policyType) + default: + throw JSONSerializerError.deserializeError(type: GovernancePolicyExportCreatedDetails.self, json: json) } } } - /// The ExternalDriveBackupStatusChangedType struct - public class ExternalDriveBackupStatusChangedType: CustomStringConvertible, JSONRepresentable { + /// The GovernancePolicyExportCreatedType struct + public class GovernancePolicyExportCreatedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -25422,72 +39089,95 @@ public class TeamLog { } func json() throws -> JSON { - try ExternalDriveBackupStatusChangedTypeSerializer().serialize(self) + try GovernancePolicyExportCreatedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ExternalDriveBackupStatusChangedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GovernancePolicyExportCreatedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for ExternalDriveBackupStatusChangedType: \(error)" + return "Failed to generate description for GovernancePolicyExportCreatedType: \(error)" } } } - - public class ExternalDriveBackupStatusChangedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ExternalDriveBackupStatusChangedType) throws -> JSON { + public class GovernancePolicyExportCreatedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GovernancePolicyExportCreatedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ExternalDriveBackupStatusChangedType { + public func deserialize(_ json: JSON) throws -> GovernancePolicyExportCreatedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return ExternalDriveBackupStatusChangedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: ExternalDriveBackupStatusChangedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return GovernancePolicyExportCreatedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: GovernancePolicyExportCreatedType.self, json: json) } } } - /// Created External sharing report. - public class ExternalSharingCreateReportDetails: CustomStringConvertible, JSONRepresentable { + /// Removed a policy download. + public class GovernancePolicyExportRemovedDetails: CustomStringConvertible, JSONRepresentable { + /// Policy ID. + public let governancePolicyId: String + /// Policy name. + public let name: String + /// Policy type. + public let policyType: TeamLog.PolicyType? + /// Export name. + public let exportName: String + public init(governancePolicyId: String, name: String, exportName: String, policyType: TeamLog.PolicyType? = nil) { + stringValidator()(governancePolicyId) + self.governancePolicyId = governancePolicyId + stringValidator()(name) + self.name = name + self.policyType = policyType + stringValidator()(exportName) + self.exportName = exportName + } + func json() throws -> JSON { - try ExternalSharingCreateReportDetailsSerializer().serialize(self) + try GovernancePolicyExportRemovedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ExternalSharingCreateReportDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GovernancePolicyExportRemovedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for ExternalSharingCreateReportDetails: \(error)" + return "Failed to generate description for GovernancePolicyExportRemovedDetails: \(error)" } } } - - public class ExternalSharingCreateReportDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ExternalSharingCreateReportDetails) throws -> JSON { - let output = [String: JSON]() + public class GovernancePolicyExportRemovedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GovernancePolicyExportRemovedDetails) throws -> JSON { + let output = [ + "governance_policy_id": try Serialization._StringSerializer.serialize(value.governancePolicyId), + "name": try Serialization._StringSerializer.serialize(value.name), + "export_name": try Serialization._StringSerializer.serialize(value.exportName), + "policy_type": try NullableSerializer(TeamLog.PolicyTypeSerializer()).serialize(value.policyType), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ExternalSharingCreateReportDetails { + public func deserialize(_ json: JSON) throws -> GovernancePolicyExportRemovedDetails { switch json { - case .dictionary: - return ExternalSharingCreateReportDetails() - default: - throw JSONSerializerError.deserializeError(type: ExternalSharingCreateReportDetails.self, json: json) + case .dictionary(let dict): + let governancePolicyId = try Serialization._StringSerializer.deserialize(dict["governance_policy_id"] ?? .null) + let name = try Serialization._StringSerializer.deserialize(dict["name"] ?? .null) + let exportName = try Serialization._StringSerializer.deserialize(dict["export_name"] ?? .null) + let policyType = try NullableSerializer(TeamLog.PolicyTypeSerializer()).deserialize(dict["policy_type"] ?? .null) + return GovernancePolicyExportRemovedDetails(governancePolicyId: governancePolicyId, name: name, exportName: exportName, policyType: policyType) + default: + throw JSONSerializerError.deserializeError(type: GovernancePolicyExportRemovedDetails.self, json: json) } } } - /// The ExternalSharingCreateReportType struct - public class ExternalSharingCreateReportType: CustomStringConvertible, JSONRepresentable { + /// The GovernancePolicyExportRemovedType struct + public class GovernancePolicyExportRemovedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -25496,81 +39186,101 @@ public class TeamLog { } func json() throws -> JSON { - try ExternalSharingCreateReportTypeSerializer().serialize(self) + try GovernancePolicyExportRemovedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ExternalSharingCreateReportTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GovernancePolicyExportRemovedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for ExternalSharingCreateReportType: \(error)" + return "Failed to generate description for GovernancePolicyExportRemovedType: \(error)" } } } - - public class ExternalSharingCreateReportTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ExternalSharingCreateReportType) throws -> JSON { + public class GovernancePolicyExportRemovedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GovernancePolicyExportRemovedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ExternalSharingCreateReportType { + public func deserialize(_ json: JSON) throws -> GovernancePolicyExportRemovedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return ExternalSharingCreateReportType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: ExternalSharingCreateReportType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return GovernancePolicyExportRemovedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: GovernancePolicyExportRemovedType.self, json: json) } } } - /// Couldn't create External sharing report. - public class ExternalSharingReportFailedDetails: CustomStringConvertible, JSONRepresentable { - /// Failure reason. - public let failureReason: Team.TeamReportFailureReason - public init(failureReason: Team.TeamReportFailureReason) { - self.failureReason = failureReason + /// Removed folders from policy. + public class GovernancePolicyRemoveFoldersDetails: CustomStringConvertible, JSONRepresentable { + /// Policy ID. + public let governancePolicyId: String + /// Policy name. + public let name: String + /// Policy type. + public let policyType: TeamLog.PolicyType? + /// Folders. + public let folders: Array? + /// Reason. + public let reason: String? + public init(governancePolicyId: String, name: String, policyType: TeamLog.PolicyType? = nil, folders: Array? = nil, reason: String? = nil) { + stringValidator()(governancePolicyId) + self.governancePolicyId = governancePolicyId + stringValidator()(name) + self.name = name + self.policyType = policyType + nullableValidator(arrayValidator(itemValidator: stringValidator()))(folders) + self.folders = folders + nullableValidator(stringValidator())(reason) + self.reason = reason } func json() throws -> JSON { - try ExternalSharingReportFailedDetailsSerializer().serialize(self) + try GovernancePolicyRemoveFoldersDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ExternalSharingReportFailedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GovernancePolicyRemoveFoldersDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for ExternalSharingReportFailedDetails: \(error)" + return "Failed to generate description for GovernancePolicyRemoveFoldersDetails: \(error)" } } } - - public class ExternalSharingReportFailedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ExternalSharingReportFailedDetails) throws -> JSON { + public class GovernancePolicyRemoveFoldersDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GovernancePolicyRemoveFoldersDetails) throws -> JSON { let output = [ - "failure_reason": try Team.TeamReportFailureReasonSerializer().serialize(value.failureReason), + "governance_policy_id": try Serialization._StringSerializer.serialize(value.governancePolicyId), + "name": try Serialization._StringSerializer.serialize(value.name), + "policy_type": try NullableSerializer(TeamLog.PolicyTypeSerializer()).serialize(value.policyType), + "folders": try NullableSerializer(ArraySerializer(Serialization._StringSerializer)).serialize(value.folders), + "reason": try NullableSerializer(Serialization._StringSerializer).serialize(value.reason), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ExternalSharingReportFailedDetails { + public func deserialize(_ json: JSON) throws -> GovernancePolicyRemoveFoldersDetails { switch json { - case .dictionary(let dict): - let failureReason = try Team.TeamReportFailureReasonSerializer().deserialize(dict["failure_reason"] ?? .null) - return ExternalSharingReportFailedDetails(failureReason: failureReason) - default: - throw JSONSerializerError.deserializeError(type: ExternalSharingReportFailedDetails.self, json: json) + case .dictionary(let dict): + let governancePolicyId = try Serialization._StringSerializer.deserialize(dict["governance_policy_id"] ?? .null) + let name = try Serialization._StringSerializer.deserialize(dict["name"] ?? .null) + let policyType = try NullableSerializer(TeamLog.PolicyTypeSerializer()).deserialize(dict["policy_type"] ?? .null) + let folders = try NullableSerializer(ArraySerializer(Serialization._StringSerializer)).deserialize(dict["folders"] ?? .null) + let reason = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["reason"] ?? .null) + return GovernancePolicyRemoveFoldersDetails(governancePolicyId: governancePolicyId, name: name, policyType: policyType, folders: folders, reason: reason) + default: + throw JSONSerializerError.deserializeError(type: GovernancePolicyRemoveFoldersDetails.self, json: json) } } } - /// The ExternalSharingReportFailedType struct - public class ExternalSharingReportFailedType: CustomStringConvertible, JSONRepresentable { + /// The GovernancePolicyRemoveFoldersType struct + public class GovernancePolicyRemoveFoldersType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -25579,466 +39289,351 @@ public class TeamLog { } func json() throws -> JSON { - try ExternalSharingReportFailedTypeSerializer().serialize(self) + try GovernancePolicyRemoveFoldersTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ExternalSharingReportFailedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GovernancePolicyRemoveFoldersTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for ExternalSharingReportFailedType: \(error)" + return "Failed to generate description for GovernancePolicyRemoveFoldersType: \(error)" } } } - - public class ExternalSharingReportFailedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ExternalSharingReportFailedType) throws -> JSON { + public class GovernancePolicyRemoveFoldersTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GovernancePolicyRemoveFoldersType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ExternalSharingReportFailedType { + public func deserialize(_ json: JSON) throws -> GovernancePolicyRemoveFoldersType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return ExternalSharingReportFailedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: ExternalSharingReportFailedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return GovernancePolicyRemoveFoldersType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: GovernancePolicyRemoveFoldersType.self, json: json) } } } - /// A user without a Dropbox account. - public class ExternalUserLogInfo: CustomStringConvertible, JSONRepresentable { - /// An external user identifier. - public let userIdentifier: String - /// Identifier type. - public let identifierType: TeamLog.IdentifierType - public init(userIdentifier: String, identifierType: TeamLog.IdentifierType) { - stringValidator()(userIdentifier) - self.userIdentifier = userIdentifier - self.identifierType = identifierType + /// Created a summary report for a policy. + public class GovernancePolicyReportCreatedDetails: CustomStringConvertible, JSONRepresentable { + /// Policy ID. + public let governancePolicyId: String + /// Policy name. + public let name: String + /// Policy type. + public let policyType: TeamLog.PolicyType? + public init(governancePolicyId: String, name: String, policyType: TeamLog.PolicyType? = nil) { + stringValidator()(governancePolicyId) + self.governancePolicyId = governancePolicyId + stringValidator()(name) + self.name = name + self.policyType = policyType } func json() throws -> JSON { - try ExternalUserLogInfoSerializer().serialize(self) + try GovernancePolicyReportCreatedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ExternalUserLogInfoSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GovernancePolicyReportCreatedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for ExternalUserLogInfo: \(error)" + return "Failed to generate description for GovernancePolicyReportCreatedDetails: \(error)" } } } - - public class ExternalUserLogInfoSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ExternalUserLogInfo) throws -> JSON { + public class GovernancePolicyReportCreatedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GovernancePolicyReportCreatedDetails) throws -> JSON { let output = [ - "user_identifier": try Serialization._StringSerializer.serialize(value.userIdentifier), - "identifier_type": try TeamLog.IdentifierTypeSerializer().serialize(value.identifierType), + "governance_policy_id": try Serialization._StringSerializer.serialize(value.governancePolicyId), + "name": try Serialization._StringSerializer.serialize(value.name), + "policy_type": try NullableSerializer(TeamLog.PolicyTypeSerializer()).serialize(value.policyType), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ExternalUserLogInfo { + public func deserialize(_ json: JSON) throws -> GovernancePolicyReportCreatedDetails { switch json { - case .dictionary(let dict): - let userIdentifier = try Serialization._StringSerializer.deserialize(dict["user_identifier"] ?? .null) - let identifierType = try TeamLog.IdentifierTypeSerializer().deserialize(dict["identifier_type"] ?? .null) - return ExternalUserLogInfo(userIdentifier: userIdentifier, identifierType: identifierType) - default: - throw JSONSerializerError.deserializeError(type: ExternalUserLogInfo.self, json: json) + case .dictionary(let dict): + let governancePolicyId = try Serialization._StringSerializer.deserialize(dict["governance_policy_id"] ?? .null) + let name = try Serialization._StringSerializer.deserialize(dict["name"] ?? .null) + let policyType = try NullableSerializer(TeamLog.PolicyTypeSerializer()).deserialize(dict["policy_type"] ?? .null) + return GovernancePolicyReportCreatedDetails(governancePolicyId: governancePolicyId, name: name, policyType: policyType) + default: + throw JSONSerializerError.deserializeError(type: GovernancePolicyReportCreatedDetails.self, json: json) } } } - /// Provides details about a failure - public class FailureDetailsLogInfo: CustomStringConvertible, JSONRepresentable { - /// A user friendly explanation of the error. - public let userFriendlyMessage: String? - /// A technical explanation of the error. This is relevant for some errors. - public let technicalErrorMessage: String? - public init(userFriendlyMessage: String? = nil, technicalErrorMessage: String? = nil) { - nullableValidator(stringValidator())(userFriendlyMessage) - self.userFriendlyMessage = userFriendlyMessage - nullableValidator(stringValidator())(technicalErrorMessage) - self.technicalErrorMessage = technicalErrorMessage + /// The GovernancePolicyReportCreatedType struct + public class GovernancePolicyReportCreatedType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ } func json() throws -> JSON { - try FailureDetailsLogInfoSerializer().serialize(self) + try GovernancePolicyReportCreatedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FailureDetailsLogInfoSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GovernancePolicyReportCreatedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for FailureDetailsLogInfo: \(error)" + return "Failed to generate description for GovernancePolicyReportCreatedType: \(error)" } } } - - public class FailureDetailsLogInfoSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FailureDetailsLogInfo) throws -> JSON { + public class GovernancePolicyReportCreatedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GovernancePolicyReportCreatedType) throws -> JSON { let output = [ - "user_friendly_message": try NullableSerializer(Serialization._StringSerializer).serialize(value.userFriendlyMessage), - "technical_error_message": try NullableSerializer(Serialization._StringSerializer).serialize(value.technicalErrorMessage), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FailureDetailsLogInfo { + public func deserialize(_ json: JSON) throws -> GovernancePolicyReportCreatedType { switch json { - case .dictionary(let dict): - let userFriendlyMessage = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["user_friendly_message"] ?? .null) - let technicalErrorMessage = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["technical_error_message"] ?? .null) - return FailureDetailsLogInfo(userFriendlyMessage: userFriendlyMessage, technicalErrorMessage: technicalErrorMessage) - default: - throw JSONSerializerError.deserializeError(type: FailureDetailsLogInfo.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return GovernancePolicyReportCreatedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: GovernancePolicyReportCreatedType.self, json: json) } } } - /// The FedAdminRole union - public enum FedAdminRole: CustomStringConvertible, JSONRepresentable { - /// An unspecified error. - case enterpriseAdmin - /// An unspecified error. - case notEnterpriseAdmin - /// An unspecified error. - case other + /// Downloaded content from a policy. + public class GovernancePolicyZipPartDownloadedDetails: CustomStringConvertible, JSONRepresentable { + /// Policy ID. + public let governancePolicyId: String + /// Policy name. + public let name: String + /// Policy type. + public let policyType: TeamLog.PolicyType? + /// Export name. + public let exportName: String + /// Part. + public let part: String? + public init(governancePolicyId: String, name: String, exportName: String, policyType: TeamLog.PolicyType? = nil, part: String? = nil) { + stringValidator()(governancePolicyId) + self.governancePolicyId = governancePolicyId + stringValidator()(name) + self.name = name + self.policyType = policyType + stringValidator()(exportName) + self.exportName = exportName + nullableValidator(stringValidator())(part) + self.part = part + } func json() throws -> JSON { - try FedAdminRoleSerializer().serialize(self) + try GovernancePolicyZipPartDownloadedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FedAdminRoleSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GovernancePolicyZipPartDownloadedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for FedAdminRole: \(error)" + return "Failed to generate description for GovernancePolicyZipPartDownloadedDetails: \(error)" } } } - - public class FedAdminRoleSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FedAdminRole) throws -> JSON { - switch value { - case .enterpriseAdmin: - var d = [String: JSON]() - d[".tag"] = .str("enterprise_admin") - return .dictionary(d) - case .notEnterpriseAdmin: - var d = [String: JSON]() - d[".tag"] = .str("not_enterprise_admin") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) - } + public class GovernancePolicyZipPartDownloadedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GovernancePolicyZipPartDownloadedDetails) throws -> JSON { + let output = [ + "governance_policy_id": try Serialization._StringSerializer.serialize(value.governancePolicyId), + "name": try Serialization._StringSerializer.serialize(value.name), + "export_name": try Serialization._StringSerializer.serialize(value.exportName), + "policy_type": try NullableSerializer(TeamLog.PolicyTypeSerializer()).serialize(value.policyType), + "part": try NullableSerializer(Serialization._StringSerializer).serialize(value.part), + ] + return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FedAdminRole { + public func deserialize(_ json: JSON) throws -> GovernancePolicyZipPartDownloadedDetails { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "enterprise_admin": - return FedAdminRole.enterpriseAdmin - case "not_enterprise_admin": - return FedAdminRole.notEnterpriseAdmin - case "other": - return FedAdminRole.other + case .dictionary(let dict): + let governancePolicyId = try Serialization._StringSerializer.deserialize(dict["governance_policy_id"] ?? .null) + let name = try Serialization._StringSerializer.deserialize(dict["name"] ?? .null) + let exportName = try Serialization._StringSerializer.deserialize(dict["export_name"] ?? .null) + let policyType = try NullableSerializer(TeamLog.PolicyTypeSerializer()).deserialize(dict["policy_type"] ?? .null) + let part = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["part"] ?? .null) + return GovernancePolicyZipPartDownloadedDetails(governancePolicyId: governancePolicyId, name: name, exportName: exportName, policyType: policyType, part: part) default: - return FedAdminRole.other - } - default: - throw JSONSerializerError.deserializeError(type: FedAdminRole.self, json: json) + throw JSONSerializerError.deserializeError(type: GovernancePolicyZipPartDownloadedDetails.self, json: json) } } } - /// More details about the organization or team. - public enum FedExtraDetails: CustomStringConvertible, JSONRepresentable { - /// More details about the organization. - case organization(TeamLog.OrganizationDetails) - /// More details about the team. - case team(TeamLog.TeamDetails) - /// An unspecified error. - case other + /// The GovernancePolicyZipPartDownloadedType struct + public class GovernancePolicyZipPartDownloadedType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } func json() throws -> JSON { - try FedExtraDetailsSerializer().serialize(self) + try GovernancePolicyZipPartDownloadedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FedExtraDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GovernancePolicyZipPartDownloadedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for FedExtraDetails: \(error)" + return "Failed to generate description for GovernancePolicyZipPartDownloadedType: \(error)" } } } - - public class FedExtraDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FedExtraDetails) throws -> JSON { - switch value { - case .organization(let arg): - var d = try Serialization.getFields(TeamLog.OrganizationDetailsSerializer().serialize(arg)) - d[".tag"] = .str("organization") - return .dictionary(d) - case .team(let arg): - var d = try Serialization.getFields(TeamLog.TeamDetailsSerializer().serialize(arg)) - d[".tag"] = .str("team") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) - } + public class GovernancePolicyZipPartDownloadedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GovernancePolicyZipPartDownloadedType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FedExtraDetails { + public func deserialize(_ json: JSON) throws -> GovernancePolicyZipPartDownloadedType { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "organization": - let v = try TeamLog.OrganizationDetailsSerializer().deserialize(json) - return FedExtraDetails.organization(v) - case "team": - let v = try TeamLog.TeamDetailsSerializer().deserialize(json) - return FedExtraDetails.team(v) - case "other": - return FedExtraDetails.other + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return GovernancePolicyZipPartDownloadedType(description_: description_) default: - return FedExtraDetails.other - } - default: - throw JSONSerializerError.deserializeError(type: FedExtraDetails.self, json: json) + throw JSONSerializerError.deserializeError(type: GovernancePolicyZipPartDownloadedType.self, json: json) } } } - /// The FedHandshakeAction union - public enum FedHandshakeAction: CustomStringConvertible, JSONRepresentable { - /// An unspecified error. - case acceptedInvite - /// An unspecified error. - case canceledInvite - /// An unspecified error. - case inviteExpired - /// An unspecified error. - case invited - /// An unspecified error. - case rejectedInvite - /// An unspecified error. - case removedTeam - /// An unspecified error. - case other + /// Added external ID for group. + public class GroupAddExternalIdDetails: CustomStringConvertible, JSONRepresentable { + /// Current external id. + public let newValue: String + public init(newValue: String) { + stringValidator()(newValue) + self.newValue = newValue + } func json() throws -> JSON { - try FedHandshakeActionSerializer().serialize(self) + try GroupAddExternalIdDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FedHandshakeActionSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GroupAddExternalIdDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for FedHandshakeAction: \(error)" + return "Failed to generate description for GroupAddExternalIdDetails: \(error)" } } } - - public class FedHandshakeActionSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FedHandshakeAction) throws -> JSON { - switch value { - case .acceptedInvite: - var d = [String: JSON]() - d[".tag"] = .str("accepted_invite") - return .dictionary(d) - case .canceledInvite: - var d = [String: JSON]() - d[".tag"] = .str("canceled_invite") - return .dictionary(d) - case .inviteExpired: - var d = [String: JSON]() - d[".tag"] = .str("invite_expired") - return .dictionary(d) - case .invited: - var d = [String: JSON]() - d[".tag"] = .str("invited") - return .dictionary(d) - case .rejectedInvite: - var d = [String: JSON]() - d[".tag"] = .str("rejected_invite") - return .dictionary(d) - case .removedTeam: - var d = [String: JSON]() - d[".tag"] = .str("removed_team") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) - } + public class GroupAddExternalIdDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GroupAddExternalIdDetails) throws -> JSON { + let output = [ + "new_value": try Serialization._StringSerializer.serialize(value.newValue), + ] + return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FedHandshakeAction { + public func deserialize(_ json: JSON) throws -> GroupAddExternalIdDetails { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "accepted_invite": - return FedHandshakeAction.acceptedInvite - case "canceled_invite": - return FedHandshakeAction.canceledInvite - case "invite_expired": - return FedHandshakeAction.inviteExpired - case "invited": - return FedHandshakeAction.invited - case "rejected_invite": - return FedHandshakeAction.rejectedInvite - case "removed_team": - return FedHandshakeAction.removedTeam - case "other": - return FedHandshakeAction.other + case .dictionary(let dict): + let newValue = try Serialization._StringSerializer.deserialize(dict["new_value"] ?? .null) + return GroupAddExternalIdDetails(newValue: newValue) default: - return FedHandshakeAction.other - } - default: - throw JSONSerializerError.deserializeError(type: FedHandshakeAction.self, json: json) + throw JSONSerializerError.deserializeError(type: GroupAddExternalIdDetails.self, json: json) } } } - /// Additional information about the organization or connected team - public enum FederationStatusChangeAdditionalInfo: CustomStringConvertible, JSONRepresentable { - /// The name of the team. - case connectedTeamName(TeamLog.ConnectedTeamName) - /// The email to which the request was sent. - case nonTrustedTeamDetails(TeamLog.NonTrustedTeamDetails) - /// The name of the organization. - case organizationName(TeamLog.OrganizationName) - /// An unspecified error. - case other + /// The GroupAddExternalIdType struct + public class GroupAddExternalIdType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } func json() throws -> JSON { - try FederationStatusChangeAdditionalInfoSerializer().serialize(self) + try GroupAddExternalIdTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FederationStatusChangeAdditionalInfoSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GroupAddExternalIdTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for FederationStatusChangeAdditionalInfo: \(error)" + return "Failed to generate description for GroupAddExternalIdType: \(error)" } } } - - public class FederationStatusChangeAdditionalInfoSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FederationStatusChangeAdditionalInfo) throws -> JSON { - switch value { - case .connectedTeamName(let arg): - var d = try Serialization.getFields(TeamLog.ConnectedTeamNameSerializer().serialize(arg)) - d[".tag"] = .str("connected_team_name") - return .dictionary(d) - case .nonTrustedTeamDetails(let arg): - var d = try Serialization.getFields(TeamLog.NonTrustedTeamDetailsSerializer().serialize(arg)) - d[".tag"] = .str("non_trusted_team_details") - return .dictionary(d) - case .organizationName(let arg): - var d = try Serialization.getFields(TeamLog.OrganizationNameSerializer().serialize(arg)) - d[".tag"] = .str("organization_name") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) - } + public class GroupAddExternalIdTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GroupAddExternalIdType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FederationStatusChangeAdditionalInfo { + public func deserialize(_ json: JSON) throws -> GroupAddExternalIdType { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "connected_team_name": - let v = try TeamLog.ConnectedTeamNameSerializer().deserialize(json) - return FederationStatusChangeAdditionalInfo.connectedTeamName(v) - case "non_trusted_team_details": - let v = try TeamLog.NonTrustedTeamDetailsSerializer().deserialize(json) - return FederationStatusChangeAdditionalInfo.nonTrustedTeamDetails(v) - case "organization_name": - let v = try TeamLog.OrganizationNameSerializer().deserialize(json) - return FederationStatusChangeAdditionalInfo.organizationName(v) - case "other": - return FederationStatusChangeAdditionalInfo.other + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return GroupAddExternalIdType(description_: description_) default: - return FederationStatusChangeAdditionalInfo.other - } - default: - throw JSONSerializerError.deserializeError(type: FederationStatusChangeAdditionalInfo.self, json: json) + throw JSONSerializerError.deserializeError(type: GroupAddExternalIdType.self, json: json) } } } - /// Added file comment. - public class FileAddCommentDetails: CustomStringConvertible, JSONRepresentable { - /// Comment text. - public let commentText: String? - public init(commentText: String? = nil) { - nullableValidator(stringValidator())(commentText) - self.commentText = commentText + /// Added team members to group. + public class GroupAddMemberDetails: CustomStringConvertible, JSONRepresentable { + /// Is group owner. + public let isGroupOwner: Bool + public init(isGroupOwner: Bool) { + self.isGroupOwner = isGroupOwner } func json() throws -> JSON { - try FileAddCommentDetailsSerializer().serialize(self) + try GroupAddMemberDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileAddCommentDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GroupAddMemberDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileAddCommentDetails: \(error)" + return "Failed to generate description for GroupAddMemberDetails: \(error)" } } } - - public class FileAddCommentDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileAddCommentDetails) throws -> JSON { + public class GroupAddMemberDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GroupAddMemberDetails) throws -> JSON { let output = [ - "comment_text": try NullableSerializer(Serialization._StringSerializer).serialize(value.commentText), + "is_group_owner": try Serialization._BoolSerializer.serialize(value.isGroupOwner), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileAddCommentDetails { + public func deserialize(_ json: JSON) throws -> GroupAddMemberDetails { switch json { - case .dictionary(let dict): - let commentText = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["comment_text"] ?? .null) - return FileAddCommentDetails(commentText: commentText) - default: - throw JSONSerializerError.deserializeError(type: FileAddCommentDetails.self, json: json) + case .dictionary(let dict): + let isGroupOwner = try Serialization._BoolSerializer.deserialize(dict["is_group_owner"] ?? .null) + return GroupAddMemberDetails(isGroupOwner: isGroupOwner) + default: + throw JSONSerializerError.deserializeError(type: GroupAddMemberDetails.self, json: json) } } } - /// The FileAddCommentType struct - public class FileAddCommentType: CustomStringConvertible, JSONRepresentable { + /// The GroupAddMemberType struct + public class GroupAddMemberType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -26047,146 +39642,168 @@ public class TeamLog { } func json() throws -> JSON { - try FileAddCommentTypeSerializer().serialize(self) + try GroupAddMemberTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileAddCommentTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GroupAddMemberTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileAddCommentType: \(error)" + return "Failed to generate description for GroupAddMemberType: \(error)" } } } - - public class FileAddCommentTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileAddCommentType) throws -> JSON { + public class GroupAddMemberTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GroupAddMemberType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileAddCommentType { + public func deserialize(_ json: JSON) throws -> GroupAddMemberType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return FileAddCommentType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: FileAddCommentType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return GroupAddMemberType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: GroupAddMemberType.self, json: json) } } } - /// Added files and/or folders. - public class FileAddDetails: CustomStringConvertible, JSONRepresentable { + /// Changed external ID for group. + public class GroupChangeExternalIdDetails: CustomStringConvertible, JSONRepresentable { + /// Current external id. + public let newValue: String + /// Old external id. + public let previousValue: String + public init(newValue: String, previousValue: String) { + stringValidator()(newValue) + self.newValue = newValue + stringValidator()(previousValue) + self.previousValue = previousValue + } + func json() throws -> JSON { - try FileAddDetailsSerializer().serialize(self) + try GroupChangeExternalIdDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileAddDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GroupChangeExternalIdDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileAddDetails: \(error)" + return "Failed to generate description for GroupChangeExternalIdDetails: \(error)" } } } - - public class FileAddDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileAddDetails) throws -> JSON { - let output = [String: JSON]() + public class GroupChangeExternalIdDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GroupChangeExternalIdDetails) throws -> JSON { + let output = [ + "new_value": try Serialization._StringSerializer.serialize(value.newValue), + "previous_value": try Serialization._StringSerializer.serialize(value.previousValue), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileAddDetails { + public func deserialize(_ json: JSON) throws -> GroupChangeExternalIdDetails { switch json { - case .dictionary: - return FileAddDetails() - default: - throw JSONSerializerError.deserializeError(type: FileAddDetails.self, json: json) + case .dictionary(let dict): + let newValue = try Serialization._StringSerializer.deserialize(dict["new_value"] ?? .null) + let previousValue = try Serialization._StringSerializer.deserialize(dict["previous_value"] ?? .null) + return GroupChangeExternalIdDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: GroupChangeExternalIdDetails.self, json: json) } } } - /// Added files and/or folders from automation. - public class FileAddFromAutomationDetails: CustomStringConvertible, JSONRepresentable { + /// The GroupChangeExternalIdType struct + public class GroupChangeExternalIdType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + func json() throws -> JSON { - try FileAddFromAutomationDetailsSerializer().serialize(self) + try GroupChangeExternalIdTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileAddFromAutomationDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GroupChangeExternalIdTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileAddFromAutomationDetails: \(error)" + return "Failed to generate description for GroupChangeExternalIdType: \(error)" } } } - - public class FileAddFromAutomationDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileAddFromAutomationDetails) throws -> JSON { - let output = [String: JSON]() + public class GroupChangeExternalIdTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GroupChangeExternalIdType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileAddFromAutomationDetails { + public func deserialize(_ json: JSON) throws -> GroupChangeExternalIdType { switch json { - case .dictionary: - return FileAddFromAutomationDetails() - default: - throw JSONSerializerError.deserializeError(type: FileAddFromAutomationDetails.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return GroupChangeExternalIdType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: GroupChangeExternalIdType.self, json: json) } } } - /// The FileAddFromAutomationType struct - public class FileAddFromAutomationType: CustomStringConvertible, JSONRepresentable { - /// (no description) - public let description_: String - public init(description_: String) { - stringValidator()(description_) - self.description_ = description_ + /// Changed group management type. + public class GroupChangeManagementTypeDetails: CustomStringConvertible, JSONRepresentable { + /// New group management type. + public let newValue: TeamCommon.GroupManagementType + /// Previous group management type. Might be missing due to historical data gap. + public let previousValue: TeamCommon.GroupManagementType? + public init(newValue: TeamCommon.GroupManagementType, previousValue: TeamCommon.GroupManagementType? = nil) { + self.newValue = newValue + self.previousValue = previousValue } func json() throws -> JSON { - try FileAddFromAutomationTypeSerializer().serialize(self) + try GroupChangeManagementTypeDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileAddFromAutomationTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GroupChangeManagementTypeDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileAddFromAutomationType: \(error)" + return "Failed to generate description for GroupChangeManagementTypeDetails: \(error)" } } } - - public class FileAddFromAutomationTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileAddFromAutomationType) throws -> JSON { + public class GroupChangeManagementTypeDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GroupChangeManagementTypeDetails) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "new_value": try TeamCommon.GroupManagementTypeSerializer().serialize(value.newValue), + "previous_value": try NullableSerializer(TeamCommon.GroupManagementTypeSerializer()).serialize(value.previousValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileAddFromAutomationType { + public func deserialize(_ json: JSON) throws -> GroupChangeManagementTypeDetails { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return FileAddFromAutomationType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: FileAddFromAutomationType.self, json: json) + case .dictionary(let dict): + let newValue = try TeamCommon.GroupManagementTypeSerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try NullableSerializer(TeamCommon.GroupManagementTypeSerializer()).deserialize(dict["previous_value"] ?? .null) + return GroupChangeManagementTypeDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: GroupChangeManagementTypeDetails.self, json: json) } } } - /// The FileAddType struct - public class FileAddType: CustomStringConvertible, JSONRepresentable { + /// The GroupChangeManagementTypeType struct + public class GroupChangeManagementTypeType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -26195,86 +39812,77 @@ public class TeamLog { } func json() throws -> JSON { - try FileAddTypeSerializer().serialize(self) + try GroupChangeManagementTypeTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileAddTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GroupChangeManagementTypeTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileAddType: \(error)" + return "Failed to generate description for GroupChangeManagementTypeType: \(error)" } } } - - public class FileAddTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileAddType) throws -> JSON { + public class GroupChangeManagementTypeTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GroupChangeManagementTypeType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileAddType { + public func deserialize(_ json: JSON) throws -> GroupChangeManagementTypeType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return FileAddType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: FileAddType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return GroupChangeManagementTypeType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: GroupChangeManagementTypeType.self, json: json) } } } - /// Subscribed to or unsubscribed from comment notifications for file. - public class FileChangeCommentSubscriptionDetails: CustomStringConvertible, JSONRepresentable { - /// New file comment subscription. - public let newValue: TeamLog.FileCommentNotificationPolicy - /// Previous file comment subscription. Might be missing due to historical data gap. - public let previousValue: TeamLog.FileCommentNotificationPolicy? - public init(newValue: TeamLog.FileCommentNotificationPolicy, previousValue: TeamLog.FileCommentNotificationPolicy? = nil) { - self.newValue = newValue - self.previousValue = previousValue + /// Changed manager permissions of group member. + public class GroupChangeMemberRoleDetails: CustomStringConvertible, JSONRepresentable { + /// Is group owner. + public let isGroupOwner: Bool + public init(isGroupOwner: Bool) { + self.isGroupOwner = isGroupOwner } func json() throws -> JSON { - try FileChangeCommentSubscriptionDetailsSerializer().serialize(self) + try GroupChangeMemberRoleDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileChangeCommentSubscriptionDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GroupChangeMemberRoleDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileChangeCommentSubscriptionDetails: \(error)" + return "Failed to generate description for GroupChangeMemberRoleDetails: \(error)" } } } - - public class FileChangeCommentSubscriptionDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileChangeCommentSubscriptionDetails) throws -> JSON { + public class GroupChangeMemberRoleDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GroupChangeMemberRoleDetails) throws -> JSON { let output = [ - "new_value": try TeamLog.FileCommentNotificationPolicySerializer().serialize(value.newValue), - "previous_value": try NullableSerializer(TeamLog.FileCommentNotificationPolicySerializer()).serialize(value.previousValue), + "is_group_owner": try Serialization._BoolSerializer.serialize(value.isGroupOwner), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileChangeCommentSubscriptionDetails { + public func deserialize(_ json: JSON) throws -> GroupChangeMemberRoleDetails { switch json { - case .dictionary(let dict): - let newValue = try TeamLog.FileCommentNotificationPolicySerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try NullableSerializer(TeamLog.FileCommentNotificationPolicySerializer()).deserialize(dict["previous_value"] ?? .null) - return FileChangeCommentSubscriptionDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: FileChangeCommentSubscriptionDetails.self, json: json) + case .dictionary(let dict): + let isGroupOwner = try Serialization._BoolSerializer.deserialize(dict["is_group_owner"] ?? .null) + return GroupChangeMemberRoleDetails(isGroupOwner: isGroupOwner) + default: + throw JSONSerializerError.deserializeError(type: GroupChangeMemberRoleDetails.self, json: json) } } } - /// The FileChangeCommentSubscriptionType struct - public class FileChangeCommentSubscriptionType: CustomStringConvertible, JSONRepresentable { + /// The GroupChangeMemberRoleType struct + public class GroupChangeMemberRoleType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -26283,292 +39891,232 @@ public class TeamLog { } func json() throws -> JSON { - try FileChangeCommentSubscriptionTypeSerializer().serialize(self) + try GroupChangeMemberRoleTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileChangeCommentSubscriptionTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GroupChangeMemberRoleTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileChangeCommentSubscriptionType: \(error)" + return "Failed to generate description for GroupChangeMemberRoleType: \(error)" } } } - - public class FileChangeCommentSubscriptionTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileChangeCommentSubscriptionType) throws -> JSON { + public class GroupChangeMemberRoleTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GroupChangeMemberRoleType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileChangeCommentSubscriptionType { + public func deserialize(_ json: JSON) throws -> GroupChangeMemberRoleType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return FileChangeCommentSubscriptionType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: FileChangeCommentSubscriptionType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return GroupChangeMemberRoleType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: GroupChangeMemberRoleType.self, json: json) } } } - /// Enable or disable file comments notifications - public enum FileCommentNotificationPolicy: CustomStringConvertible, JSONRepresentable { - /// An unspecified error. - case disabled - /// An unspecified error. - case enabled - /// An unspecified error. - case other + /// Created group. + public class GroupCreateDetails: CustomStringConvertible, JSONRepresentable { + /// Is company managed group. + public let isCompanyManaged: Bool? + /// Group join policy. + public let joinPolicy: TeamLog.GroupJoinPolicy? + public init(isCompanyManaged: Bool? = nil, joinPolicy: TeamLog.GroupJoinPolicy? = nil) { + self.isCompanyManaged = isCompanyManaged + self.joinPolicy = joinPolicy + } func json() throws -> JSON { - try FileCommentNotificationPolicySerializer().serialize(self) + try GroupCreateDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileCommentNotificationPolicySerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GroupCreateDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileCommentNotificationPolicy: \(error)" + return "Failed to generate description for GroupCreateDetails: \(error)" } } } - - public class FileCommentNotificationPolicySerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileCommentNotificationPolicy) throws -> JSON { - switch value { - case .disabled: - var d = [String: JSON]() - d[".tag"] = .str("disabled") - return .dictionary(d) - case .enabled: - var d = [String: JSON]() - d[".tag"] = .str("enabled") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) - } + public class GroupCreateDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GroupCreateDetails) throws -> JSON { + let output = [ + "is_company_managed": try NullableSerializer(Serialization._BoolSerializer).serialize(value.isCompanyManaged), + "join_policy": try NullableSerializer(TeamLog.GroupJoinPolicySerializer()).serialize(value.joinPolicy), + ] + return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileCommentNotificationPolicy { + public func deserialize(_ json: JSON) throws -> GroupCreateDetails { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "disabled": - return FileCommentNotificationPolicy.disabled - case "enabled": - return FileCommentNotificationPolicy.enabled - case "other": - return FileCommentNotificationPolicy.other + case .dictionary(let dict): + let isCompanyManaged = try NullableSerializer(Serialization._BoolSerializer).deserialize(dict["is_company_managed"] ?? .null) + let joinPolicy = try NullableSerializer(TeamLog.GroupJoinPolicySerializer()).deserialize(dict["join_policy"] ?? .null) + return GroupCreateDetails(isCompanyManaged: isCompanyManaged, joinPolicy: joinPolicy) default: - return FileCommentNotificationPolicy.other - } - default: - throw JSONSerializerError.deserializeError(type: FileCommentNotificationPolicy.self, json: json) + throw JSONSerializerError.deserializeError(type: GroupCreateDetails.self, json: json) } } } - /// Enabled/disabled commenting on team files. - public class FileCommentsChangePolicyDetails: CustomStringConvertible, JSONRepresentable { - /// New commenting on team files policy. - public let newValue: TeamLog.FileCommentsPolicy - /// Previous commenting on team files policy. Might be missing due to historical data gap. - public let previousValue: TeamLog.FileCommentsPolicy? - public init(newValue: TeamLog.FileCommentsPolicy, previousValue: TeamLog.FileCommentsPolicy? = nil) { - self.newValue = newValue - self.previousValue = previousValue + /// The GroupCreateType struct + public class GroupCreateType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ } func json() throws -> JSON { - try FileCommentsChangePolicyDetailsSerializer().serialize(self) + try GroupCreateTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileCommentsChangePolicyDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GroupCreateTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileCommentsChangePolicyDetails: \(error)" + return "Failed to generate description for GroupCreateType: \(error)" } } } - - public class FileCommentsChangePolicyDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileCommentsChangePolicyDetails) throws -> JSON { + public class GroupCreateTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GroupCreateType) throws -> JSON { let output = [ - "new_value": try TeamLog.FileCommentsPolicySerializer().serialize(value.newValue), - "previous_value": try NullableSerializer(TeamLog.FileCommentsPolicySerializer()).serialize(value.previousValue), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileCommentsChangePolicyDetails { + public func deserialize(_ json: JSON) throws -> GroupCreateType { switch json { - case .dictionary(let dict): - let newValue = try TeamLog.FileCommentsPolicySerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try NullableSerializer(TeamLog.FileCommentsPolicySerializer()).deserialize(dict["previous_value"] ?? .null) - return FileCommentsChangePolicyDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: FileCommentsChangePolicyDetails.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return GroupCreateType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: GroupCreateType.self, json: json) } } } - /// The FileCommentsChangePolicyType struct - public class FileCommentsChangePolicyType: CustomStringConvertible, JSONRepresentable { - /// (no description) - public let description_: String - public init(description_: String) { - stringValidator()(description_) - self.description_ = description_ + /// Deleted group. + public class GroupDeleteDetails: CustomStringConvertible, JSONRepresentable { + /// Is company managed group. + public let isCompanyManaged: Bool? + public init(isCompanyManaged: Bool? = nil) { + self.isCompanyManaged = isCompanyManaged } func json() throws -> JSON { - try FileCommentsChangePolicyTypeSerializer().serialize(self) + try GroupDeleteDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileCommentsChangePolicyTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GroupDeleteDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileCommentsChangePolicyType: \(error)" + return "Failed to generate description for GroupDeleteDetails: \(error)" } } } - - public class FileCommentsChangePolicyTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileCommentsChangePolicyType) throws -> JSON { + public class GroupDeleteDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GroupDeleteDetails) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "is_company_managed": try NullableSerializer(Serialization._BoolSerializer).serialize(value.isCompanyManaged), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileCommentsChangePolicyType { + public func deserialize(_ json: JSON) throws -> GroupDeleteDetails { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return FileCommentsChangePolicyType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: FileCommentsChangePolicyType.self, json: json) + case .dictionary(let dict): + let isCompanyManaged = try NullableSerializer(Serialization._BoolSerializer).deserialize(dict["is_company_managed"] ?? .null) + return GroupDeleteDetails(isCompanyManaged: isCompanyManaged) + default: + throw JSONSerializerError.deserializeError(type: GroupDeleteDetails.self, json: json) } } } - /// File comments policy - public enum FileCommentsPolicy: CustomStringConvertible, JSONRepresentable { - /// An unspecified error. - case disabled - /// An unspecified error. - case enabled - /// An unspecified error. - case other + /// The GroupDeleteType struct + public class GroupDeleteType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } func json() throws -> JSON { - try FileCommentsPolicySerializer().serialize(self) + try GroupDeleteTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileCommentsPolicySerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GroupDeleteTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileCommentsPolicy: \(error)" + return "Failed to generate description for GroupDeleteType: \(error)" } } } - - public class FileCommentsPolicySerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileCommentsPolicy) throws -> JSON { - switch value { - case .disabled: - var d = [String: JSON]() - d[".tag"] = .str("disabled") - return .dictionary(d) - case .enabled: - var d = [String: JSON]() - d[".tag"] = .str("enabled") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) - } + public class GroupDeleteTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GroupDeleteType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileCommentsPolicy { + public func deserialize(_ json: JSON) throws -> GroupDeleteType { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "disabled": - return FileCommentsPolicy.disabled - case "enabled": - return FileCommentsPolicy.enabled - case "other": - return FileCommentsPolicy.other + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return GroupDeleteType(description_: description_) default: - return FileCommentsPolicy.other - } - default: - throw JSONSerializerError.deserializeError(type: FileCommentsPolicy.self, json: json) + throw JSONSerializerError.deserializeError(type: GroupDeleteType.self, json: json) } } } - /// Copied files and/or folders. - public class FileCopyDetails: CustomStringConvertible, JSONRepresentable { - /// Relocate action details. - public let relocateActionDetails: [TeamLog.RelocateAssetReferencesLogInfo] - public init(relocateActionDetails: [TeamLog.RelocateAssetReferencesLogInfo]) { - self.relocateActionDetails = relocateActionDetails - } + /// Updated group. + public class GroupDescriptionUpdatedDetails: CustomStringConvertible, JSONRepresentable { func json() throws -> JSON { - try FileCopyDetailsSerializer().serialize(self) + try GroupDescriptionUpdatedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileCopyDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GroupDescriptionUpdatedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileCopyDetails: \(error)" + return "Failed to generate description for GroupDescriptionUpdatedDetails: \(error)" } } } - - public class FileCopyDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileCopyDetails) throws -> JSON { - let output = [ - "relocate_action_details": try ArraySerializer(TeamLog.RelocateAssetReferencesLogInfoSerializer()).serialize(value.relocateActionDetails), - ] + public class GroupDescriptionUpdatedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GroupDescriptionUpdatedDetails) throws -> JSON { + let output = [String: JSON]() return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileCopyDetails { + public func deserialize(_ json: JSON) throws -> GroupDescriptionUpdatedDetails { switch json { - case .dictionary(let dict): - let relocateActionDetails = try ArraySerializer(TeamLog.RelocateAssetReferencesLogInfoSerializer()) - .deserialize(dict["relocate_action_details"] ?? .null) - return FileCopyDetails(relocateActionDetails: relocateActionDetails) - default: - throw JSONSerializerError.deserializeError(type: FileCopyDetails.self, json: json) + case .dictionary(_): + return GroupDescriptionUpdatedDetails() + default: + throw JSONSerializerError.deserializeError(type: GroupDescriptionUpdatedDetails.self, json: json) } } } - /// The FileCopyType struct - public class FileCopyType: CustomStringConvertible, JSONRepresentable { + /// The GroupDescriptionUpdatedType struct + public class GroupDescriptionUpdatedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -26577,82 +40125,82 @@ public class TeamLog { } func json() throws -> JSON { - try FileCopyTypeSerializer().serialize(self) + try GroupDescriptionUpdatedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileCopyTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GroupDescriptionUpdatedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileCopyType: \(error)" + return "Failed to generate description for GroupDescriptionUpdatedType: \(error)" } } } - - public class FileCopyTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileCopyType) throws -> JSON { + public class GroupDescriptionUpdatedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GroupDescriptionUpdatedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileCopyType { + public func deserialize(_ json: JSON) throws -> GroupDescriptionUpdatedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return FileCopyType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: FileCopyType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return GroupDescriptionUpdatedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: GroupDescriptionUpdatedType.self, json: json) } } } - /// Deleted file comment. - public class FileDeleteCommentDetails: CustomStringConvertible, JSONRepresentable { - /// Comment text. - public let commentText: String? - public init(commentText: String? = nil) { - nullableValidator(stringValidator())(commentText) - self.commentText = commentText + /// Changed group's external sharing setting. + public class GroupExternalSharingSettingOverrideChangedDetails: CustomStringConvertible, JSONRepresentable { + /// New external sharing setting. + public let newValue: TeamLog.ExternalSharingSetting + /// Previous external sharing setting. + public let previousValue: TeamLog.ExternalSharingSetting + public init(newValue: TeamLog.ExternalSharingSetting, previousValue: TeamLog.ExternalSharingSetting) { + self.newValue = newValue + self.previousValue = previousValue } func json() throws -> JSON { - try FileDeleteCommentDetailsSerializer().serialize(self) + try GroupExternalSharingSettingOverrideChangedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileDeleteCommentDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GroupExternalSharingSettingOverrideChangedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileDeleteCommentDetails: \(error)" + return "Failed to generate description for GroupExternalSharingSettingOverrideChangedDetails: \(error)" } } } - - public class FileDeleteCommentDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileDeleteCommentDetails) throws -> JSON { + public class GroupExternalSharingSettingOverrideChangedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GroupExternalSharingSettingOverrideChangedDetails) throws -> JSON { let output = [ - "comment_text": try NullableSerializer(Serialization._StringSerializer).serialize(value.commentText), + "new_value": try TeamLog.ExternalSharingSettingSerializer().serialize(value.newValue), + "previous_value": try TeamLog.ExternalSharingSettingSerializer().serialize(value.previousValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileDeleteCommentDetails { + public func deserialize(_ json: JSON) throws -> GroupExternalSharingSettingOverrideChangedDetails { switch json { - case .dictionary(let dict): - let commentText = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["comment_text"] ?? .null) - return FileDeleteCommentDetails(commentText: commentText) - default: - throw JSONSerializerError.deserializeError(type: FileDeleteCommentDetails.self, json: json) + case .dictionary(let dict): + let newValue = try TeamLog.ExternalSharingSettingSerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try TeamLog.ExternalSharingSettingSerializer().deserialize(dict["previous_value"] ?? .null) + return GroupExternalSharingSettingOverrideChangedDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: GroupExternalSharingSettingOverrideChangedDetails.self, json: json) } } } - /// The FileDeleteCommentType struct - public class FileDeleteCommentType: CustomStringConvertible, JSONRepresentable { + /// The GroupExternalSharingSettingOverrideChangedType struct + public class GroupExternalSharingSettingOverrideChangedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -26661,236 +40209,264 @@ public class TeamLog { } func json() throws -> JSON { - try FileDeleteCommentTypeSerializer().serialize(self) + try GroupExternalSharingSettingOverrideChangedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileDeleteCommentTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GroupExternalSharingSettingOverrideChangedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileDeleteCommentType: \(error)" + return "Failed to generate description for GroupExternalSharingSettingOverrideChangedType: \(error)" } } } - - public class FileDeleteCommentTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileDeleteCommentType) throws -> JSON { + public class GroupExternalSharingSettingOverrideChangedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GroupExternalSharingSettingOverrideChangedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileDeleteCommentType { + public func deserialize(_ json: JSON) throws -> GroupExternalSharingSettingOverrideChangedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return FileDeleteCommentType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: FileDeleteCommentType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return GroupExternalSharingSettingOverrideChangedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: GroupExternalSharingSettingOverrideChangedType.self, json: json) } } } - /// Deleted files and/or folders. - public class FileDeleteDetails: CustomStringConvertible, JSONRepresentable { + /// The GroupJoinPolicy union + public enum GroupJoinPolicy: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case open + /// An unspecified error. + case requestToJoin + /// An unspecified error. + case other + func json() throws -> JSON { - try FileDeleteDetailsSerializer().serialize(self) + try GroupJoinPolicySerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileDeleteDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GroupJoinPolicySerializer().serialize(self)))" } catch { - return "Failed to generate description for FileDeleteDetails: \(error)" + return "Failed to generate description for GroupJoinPolicy: \(error)" } } } - - public class FileDeleteDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileDeleteDetails) throws -> JSON { - let output = [String: JSON]() - return .dictionary(output) + public class GroupJoinPolicySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GroupJoinPolicy) throws -> JSON { + switch value { + case .open: + var d = [String: JSON]() + d[".tag"] = .str("open") + return .dictionary(d) + case .requestToJoin: + var d = [String: JSON]() + d[".tag"] = .str("request_to_join") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } } - - public func deserialize(_ json: JSON) throws -> FileDeleteDetails { + public func deserialize(_ json: JSON) throws -> GroupJoinPolicy { switch json { - case .dictionary: - return FileDeleteDetails() - default: - throw JSONSerializerError.deserializeError(type: FileDeleteDetails.self, json: json) + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "open": + return GroupJoinPolicy.open + case "request_to_join": + return GroupJoinPolicy.requestToJoin + case "other": + return GroupJoinPolicy.other + default: + return GroupJoinPolicy.other + } + default: + throw JSONSerializerError.deserializeError(type: GroupJoinPolicy.self, json: json) } } } - /// The FileDeleteType struct - public class FileDeleteType: CustomStringConvertible, JSONRepresentable { - /// (no description) - public let description_: String - public init(description_: String) { - stringValidator()(description_) - self.description_ = description_ + /// Updated group join policy. + public class GroupJoinPolicyUpdatedDetails: CustomStringConvertible, JSONRepresentable { + /// Is company managed group. + public let isCompanyManaged: Bool? + /// Group join policy. + public let joinPolicy: TeamLog.GroupJoinPolicy? + public init(isCompanyManaged: Bool? = nil, joinPolicy: TeamLog.GroupJoinPolicy? = nil) { + self.isCompanyManaged = isCompanyManaged + self.joinPolicy = joinPolicy } func json() throws -> JSON { - try FileDeleteTypeSerializer().serialize(self) + try GroupJoinPolicyUpdatedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileDeleteTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GroupJoinPolicyUpdatedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileDeleteType: \(error)" + return "Failed to generate description for GroupJoinPolicyUpdatedDetails: \(error)" } } } - - public class FileDeleteTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileDeleteType) throws -> JSON { + public class GroupJoinPolicyUpdatedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GroupJoinPolicyUpdatedDetails) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "is_company_managed": try NullableSerializer(Serialization._BoolSerializer).serialize(value.isCompanyManaged), + "join_policy": try NullableSerializer(TeamLog.GroupJoinPolicySerializer()).serialize(value.joinPolicy), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileDeleteType { + public func deserialize(_ json: JSON) throws -> GroupJoinPolicyUpdatedDetails { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return FileDeleteType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: FileDeleteType.self, json: json) + case .dictionary(let dict): + let isCompanyManaged = try NullableSerializer(Serialization._BoolSerializer).deserialize(dict["is_company_managed"] ?? .null) + let joinPolicy = try NullableSerializer(TeamLog.GroupJoinPolicySerializer()).deserialize(dict["join_policy"] ?? .null) + return GroupJoinPolicyUpdatedDetails(isCompanyManaged: isCompanyManaged, joinPolicy: joinPolicy) + default: + throw JSONSerializerError.deserializeError(type: GroupJoinPolicyUpdatedDetails.self, json: json) } } } - /// Downloaded files and/or folders. - public class FileDownloadDetails: CustomStringConvertible, JSONRepresentable { + /// The GroupJoinPolicyUpdatedType struct + public class GroupJoinPolicyUpdatedType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + func json() throws -> JSON { - try FileDownloadDetailsSerializer().serialize(self) + try GroupJoinPolicyUpdatedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileDownloadDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GroupJoinPolicyUpdatedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileDownloadDetails: \(error)" + return "Failed to generate description for GroupJoinPolicyUpdatedType: \(error)" } } } - - public class FileDownloadDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileDownloadDetails) throws -> JSON { - let output = [String: JSON]() + public class GroupJoinPolicyUpdatedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GroupJoinPolicyUpdatedType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileDownloadDetails { + public func deserialize(_ json: JSON) throws -> GroupJoinPolicyUpdatedType { switch json { - case .dictionary: - return FileDownloadDetails() - default: - throw JSONSerializerError.deserializeError(type: FileDownloadDetails.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return GroupJoinPolicyUpdatedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: GroupJoinPolicyUpdatedType.self, json: json) } } } - /// The FileDownloadType struct - public class FileDownloadType: CustomStringConvertible, JSONRepresentable { - /// (no description) - public let description_: String - public init(description_: String) { - stringValidator()(description_) - self.description_ = description_ + /// Group's logged information. + public class GroupLogInfo: CustomStringConvertible, JSONRepresentable { + /// The unique id of this group. + public let groupId: String? + /// The name of this group. + public let displayName: String + /// External group ID. + public let externalId: String? + public init(displayName: String, groupId: String? = nil, externalId: String? = nil) { + nullableValidator(stringValidator())(groupId) + self.groupId = groupId + stringValidator()(displayName) + self.displayName = displayName + nullableValidator(stringValidator())(externalId) + self.externalId = externalId } func json() throws -> JSON { - try FileDownloadTypeSerializer().serialize(self) + try GroupLogInfoSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileDownloadTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GroupLogInfoSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileDownloadType: \(error)" + return "Failed to generate description for GroupLogInfo: \(error)" } } } - - public class FileDownloadTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileDownloadType) throws -> JSON { + public class GroupLogInfoSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GroupLogInfo) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "display_name": try Serialization._StringSerializer.serialize(value.displayName), + "group_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.groupId), + "external_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.externalId), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileDownloadType { + public func deserialize(_ json: JSON) throws -> GroupLogInfo { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return FileDownloadType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: FileDownloadType.self, json: json) + case .dictionary(let dict): + let displayName = try Serialization._StringSerializer.deserialize(dict["display_name"] ?? .null) + let groupId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["group_id"] ?? .null) + let externalId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["external_id"] ?? .null) + return GroupLogInfo(displayName: displayName, groupId: groupId, externalId: externalId) + default: + throw JSONSerializerError.deserializeError(type: GroupLogInfo.self, json: json) } } } - /// Edited file comment. - public class FileEditCommentDetails: CustomStringConvertible, JSONRepresentable { - /// Comment text. - public let commentText: String? - /// Previous comment text. - public let previousCommentText: String - public init(previousCommentText: String, commentText: String? = nil) { - nullableValidator(stringValidator())(commentText) - self.commentText = commentText - stringValidator()(previousCommentText) - self.previousCommentText = previousCommentText - } + /// Moved group. + public class GroupMovedDetails: CustomStringConvertible, JSONRepresentable { func json() throws -> JSON { - try FileEditCommentDetailsSerializer().serialize(self) + try GroupMovedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileEditCommentDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GroupMovedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileEditCommentDetails: \(error)" + return "Failed to generate description for GroupMovedDetails: \(error)" } } } - - public class FileEditCommentDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileEditCommentDetails) throws -> JSON { - let output = [ - "previous_comment_text": try Serialization._StringSerializer.serialize(value.previousCommentText), - "comment_text": try NullableSerializer(Serialization._StringSerializer).serialize(value.commentText), - ] + public class GroupMovedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GroupMovedDetails) throws -> JSON { + let output = [String: JSON]() return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileEditCommentDetails { + public func deserialize(_ json: JSON) throws -> GroupMovedDetails { switch json { - case .dictionary(let dict): - let previousCommentText = try Serialization._StringSerializer.deserialize(dict["previous_comment_text"] ?? .null) - let commentText = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["comment_text"] ?? .null) - return FileEditCommentDetails(previousCommentText: previousCommentText, commentText: commentText) - default: - throw JSONSerializerError.deserializeError(type: FileEditCommentDetails.self, json: json) + case .dictionary(_): + return GroupMovedDetails() + default: + throw JSONSerializerError.deserializeError(type: GroupMovedDetails.self, json: json) } } } - /// The FileEditCommentType struct - public class FileEditCommentType: CustomStringConvertible, JSONRepresentable { + /// The GroupMovedType struct + public class GroupMovedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -26899,72 +40475,78 @@ public class TeamLog { } func json() throws -> JSON { - try FileEditCommentTypeSerializer().serialize(self) + try GroupMovedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileEditCommentTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GroupMovedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileEditCommentType: \(error)" + return "Failed to generate description for GroupMovedType: \(error)" } } } - - public class FileEditCommentTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileEditCommentType) throws -> JSON { + public class GroupMovedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GroupMovedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileEditCommentType { + public func deserialize(_ json: JSON) throws -> GroupMovedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return FileEditCommentType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: FileEditCommentType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return GroupMovedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: GroupMovedType.self, json: json) } } } - /// Edited files. - public class FileEditDetails: CustomStringConvertible, JSONRepresentable { + /// Removed external ID for group. + public class GroupRemoveExternalIdDetails: CustomStringConvertible, JSONRepresentable { + /// Old external id. + public let previousValue: String + public init(previousValue: String) { + stringValidator()(previousValue) + self.previousValue = previousValue + } + func json() throws -> JSON { - try FileEditDetailsSerializer().serialize(self) + try GroupRemoveExternalIdDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileEditDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GroupRemoveExternalIdDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileEditDetails: \(error)" + return "Failed to generate description for GroupRemoveExternalIdDetails: \(error)" } } } - - public class FileEditDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileEditDetails) throws -> JSON { - let output = [String: JSON]() + public class GroupRemoveExternalIdDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GroupRemoveExternalIdDetails) throws -> JSON { + let output = [ + "previous_value": try Serialization._StringSerializer.serialize(value.previousValue), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileEditDetails { + public func deserialize(_ json: JSON) throws -> GroupRemoveExternalIdDetails { switch json { - case .dictionary: - return FileEditDetails() - default: - throw JSONSerializerError.deserializeError(type: FileEditDetails.self, json: json) + case .dictionary(let dict): + let previousValue = try Serialization._StringSerializer.deserialize(dict["previous_value"] ?? .null) + return GroupRemoveExternalIdDetails(previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: GroupRemoveExternalIdDetails.self, json: json) } } } - /// The FileEditType struct - public class FileEditType: CustomStringConvertible, JSONRepresentable { + /// The GroupRemoveExternalIdType struct + public class GroupRemoveExternalIdType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -26973,72 +40555,69 @@ public class TeamLog { } func json() throws -> JSON { - try FileEditTypeSerializer().serialize(self) + try GroupRemoveExternalIdTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileEditTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GroupRemoveExternalIdTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileEditType: \(error)" + return "Failed to generate description for GroupRemoveExternalIdType: \(error)" } } } - - public class FileEditTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileEditType) throws -> JSON { + public class GroupRemoveExternalIdTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GroupRemoveExternalIdType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileEditType { + public func deserialize(_ json: JSON) throws -> GroupRemoveExternalIdType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return FileEditType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: FileEditType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return GroupRemoveExternalIdType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: GroupRemoveExternalIdType.self, json: json) } } } - /// Created copy reference to file/folder. - public class FileGetCopyReferenceDetails: CustomStringConvertible, JSONRepresentable { + /// Removed team members from group. + public class GroupRemoveMemberDetails: CustomStringConvertible, JSONRepresentable { + func json() throws -> JSON { - try FileGetCopyReferenceDetailsSerializer().serialize(self) + try GroupRemoveMemberDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileGetCopyReferenceDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GroupRemoveMemberDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileGetCopyReferenceDetails: \(error)" + return "Failed to generate description for GroupRemoveMemberDetails: \(error)" } } } - - public class FileGetCopyReferenceDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileGetCopyReferenceDetails) throws -> JSON { + public class GroupRemoveMemberDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GroupRemoveMemberDetails) throws -> JSON { let output = [String: JSON]() return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileGetCopyReferenceDetails { + public func deserialize(_ json: JSON) throws -> GroupRemoveMemberDetails { switch json { - case .dictionary: - return FileGetCopyReferenceDetails() - default: - throw JSONSerializerError.deserializeError(type: FileGetCopyReferenceDetails.self, json: json) + case .dictionary(_): + return GroupRemoveMemberDetails() + default: + throw JSONSerializerError.deserializeError(type: GroupRemoveMemberDetails.self, json: json) } } } - /// The FileGetCopyReferenceType struct - public class FileGetCopyReferenceType: CustomStringConvertible, JSONRepresentable { + /// The GroupRemoveMemberType struct + public class GroupRemoveMemberType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -27047,82 +40626,84 @@ public class TeamLog { } func json() throws -> JSON { - try FileGetCopyReferenceTypeSerializer().serialize(self) + try GroupRemoveMemberTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileGetCopyReferenceTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GroupRemoveMemberTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileGetCopyReferenceType: \(error)" + return "Failed to generate description for GroupRemoveMemberType: \(error)" } } } - - public class FileGetCopyReferenceTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileGetCopyReferenceType) throws -> JSON { + public class GroupRemoveMemberTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GroupRemoveMemberType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileGetCopyReferenceType { + public func deserialize(_ json: JSON) throws -> GroupRemoveMemberType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return FileGetCopyReferenceType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: FileGetCopyReferenceType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return GroupRemoveMemberType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: GroupRemoveMemberType.self, json: json) } } } - /// Liked file comment. - public class FileLikeCommentDetails: CustomStringConvertible, JSONRepresentable { - /// Comment text. - public let commentText: String? - public init(commentText: String? = nil) { - nullableValidator(stringValidator())(commentText) - self.commentText = commentText + /// Renamed group. + public class GroupRenameDetails: CustomStringConvertible, JSONRepresentable { + /// Previous display name. + public let previousValue: String + /// New display name. + public let newValue: String + public init(previousValue: String, newValue: String) { + stringValidator()(previousValue) + self.previousValue = previousValue + stringValidator()(newValue) + self.newValue = newValue } func json() throws -> JSON { - try FileLikeCommentDetailsSerializer().serialize(self) + try GroupRenameDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileLikeCommentDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GroupRenameDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileLikeCommentDetails: \(error)" + return "Failed to generate description for GroupRenameDetails: \(error)" } } } - - public class FileLikeCommentDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileLikeCommentDetails) throws -> JSON { + public class GroupRenameDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GroupRenameDetails) throws -> JSON { let output = [ - "comment_text": try NullableSerializer(Serialization._StringSerializer).serialize(value.commentText), + "previous_value": try Serialization._StringSerializer.serialize(value.previousValue), + "new_value": try Serialization._StringSerializer.serialize(value.newValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileLikeCommentDetails { + public func deserialize(_ json: JSON) throws -> GroupRenameDetails { switch json { - case .dictionary(let dict): - let commentText = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["comment_text"] ?? .null) - return FileLikeCommentDetails(commentText: commentText) - default: - throw JSONSerializerError.deserializeError(type: FileLikeCommentDetails.self, json: json) + case .dictionary(let dict): + let previousValue = try Serialization._StringSerializer.deserialize(dict["previous_value"] ?? .null) + let newValue = try Serialization._StringSerializer.deserialize(dict["new_value"] ?? .null) + return GroupRenameDetails(previousValue: previousValue, newValue: newValue) + default: + throw JSONSerializerError.deserializeError(type: GroupRenameDetails.self, json: json) } } } - /// The FileLikeCommentType struct - public class FileLikeCommentType: CustomStringConvertible, JSONRepresentable { + /// The GroupRenameType struct + public class GroupRenameType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -27131,86 +40712,82 @@ public class TeamLog { } func json() throws -> JSON { - try FileLikeCommentTypeSerializer().serialize(self) + try GroupRenameTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileLikeCommentTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GroupRenameTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileLikeCommentType: \(error)" + return "Failed to generate description for GroupRenameType: \(error)" } } } - - public class FileLikeCommentTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileLikeCommentType) throws -> JSON { + public class GroupRenameTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GroupRenameType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileLikeCommentType { + public func deserialize(_ json: JSON) throws -> GroupRenameType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return FileLikeCommentType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: FileLikeCommentType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return GroupRenameType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: GroupRenameType.self, json: json) } } } - /// Locked/unlocked editing for a file. - public class FileLockingLockStatusChangedDetails: CustomStringConvertible, JSONRepresentable { - /// Previous lock status of the file. - public let previousValue: TeamLog.LockStatus - /// New lock status of the file. - public let newValue: TeamLog.LockStatus - public init(previousValue: TeamLog.LockStatus, newValue: TeamLog.LockStatus) { - self.previousValue = previousValue + /// Changed who can create groups. + public class GroupUserManagementChangePolicyDetails: CustomStringConvertible, JSONRepresentable { + /// New group users management policy. + public let newValue: TeamPolicies.GroupCreation + /// Previous group users management policy. Might be missing due to historical data gap. + public let previousValue: TeamPolicies.GroupCreation? + public init(newValue: TeamPolicies.GroupCreation, previousValue: TeamPolicies.GroupCreation? = nil) { self.newValue = newValue + self.previousValue = previousValue } func json() throws -> JSON { - try FileLockingLockStatusChangedDetailsSerializer().serialize(self) + try GroupUserManagementChangePolicyDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileLockingLockStatusChangedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GroupUserManagementChangePolicyDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileLockingLockStatusChangedDetails: \(error)" + return "Failed to generate description for GroupUserManagementChangePolicyDetails: \(error)" } } } - - public class FileLockingLockStatusChangedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileLockingLockStatusChangedDetails) throws -> JSON { + public class GroupUserManagementChangePolicyDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GroupUserManagementChangePolicyDetails) throws -> JSON { let output = [ - "previous_value": try TeamLog.LockStatusSerializer().serialize(value.previousValue), - "new_value": try TeamLog.LockStatusSerializer().serialize(value.newValue), + "new_value": try TeamPolicies.GroupCreationSerializer().serialize(value.newValue), + "previous_value": try NullableSerializer(TeamPolicies.GroupCreationSerializer()).serialize(value.previousValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileLockingLockStatusChangedDetails { + public func deserialize(_ json: JSON) throws -> GroupUserManagementChangePolicyDetails { switch json { - case .dictionary(let dict): - let previousValue = try TeamLog.LockStatusSerializer().deserialize(dict["previous_value"] ?? .null) - let newValue = try TeamLog.LockStatusSerializer().deserialize(dict["new_value"] ?? .null) - return FileLockingLockStatusChangedDetails(previousValue: previousValue, newValue: newValue) - default: - throw JSONSerializerError.deserializeError(type: FileLockingLockStatusChangedDetails.self, json: json) + case .dictionary(let dict): + let newValue = try TeamPolicies.GroupCreationSerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try NullableSerializer(TeamPolicies.GroupCreationSerializer()).deserialize(dict["previous_value"] ?? .null) + return GroupUserManagementChangePolicyDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: GroupUserManagementChangePolicyDetails.self, json: json) } } } - /// The FileLockingLockStatusChangedType struct - public class FileLockingLockStatusChangedType: CustomStringConvertible, JSONRepresentable { + /// The GroupUserManagementChangePolicyType struct + public class GroupUserManagementChangePolicyType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -27219,86 +40796,104 @@ public class TeamLog { } func json() throws -> JSON { - try FileLockingLockStatusChangedTypeSerializer().serialize(self) + try GroupUserManagementChangePolicyTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileLockingLockStatusChangedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GroupUserManagementChangePolicyTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileLockingLockStatusChangedType: \(error)" + return "Failed to generate description for GroupUserManagementChangePolicyType: \(error)" } } } - - public class FileLockingLockStatusChangedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileLockingLockStatusChangedType) throws -> JSON { + public class GroupUserManagementChangePolicyTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GroupUserManagementChangePolicyType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileLockingLockStatusChangedType { + public func deserialize(_ json: JSON) throws -> GroupUserManagementChangePolicyType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return FileLockingLockStatusChangedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: FileLockingLockStatusChangedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return GroupUserManagementChangePolicyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: GroupUserManagementChangePolicyType.self, json: json) } } } - /// Changed file locking policy for team. - public class FileLockingPolicyChangedDetails: CustomStringConvertible, JSONRepresentable { - /// New file locking policy. - public let newValue: TeamPolicies.FileLockingPolicyState - /// Previous file locking policy. - public let previousValue: TeamPolicies.FileLockingPolicyState - public init(newValue: TeamPolicies.FileLockingPolicyState, previousValue: TeamPolicies.FileLockingPolicyState) { - self.newValue = newValue + /// Changed guest team admin status. + public class GuestAdminChangeStatusDetails: CustomStringConvertible, JSONRepresentable { + /// True for guest, false for host. + public let isGuest: Bool + /// The name of the guest team. + public let guestTeamName: String? + /// The name of the host team. + public let hostTeamName: String? + /// Previous request state. + public let previousValue: TeamLog.TrustedTeamsRequestState + /// New request state. + public let newValue: TeamLog.TrustedTeamsRequestState + /// Action details. + public let actionDetails: TeamLog.TrustedTeamsRequestAction + public init(isGuest: Bool, previousValue: TeamLog.TrustedTeamsRequestState, newValue: TeamLog.TrustedTeamsRequestState, actionDetails: TeamLog.TrustedTeamsRequestAction, guestTeamName: String? = nil, hostTeamName: String? = nil) { + self.isGuest = isGuest + nullableValidator(stringValidator())(guestTeamName) + self.guestTeamName = guestTeamName + nullableValidator(stringValidator())(hostTeamName) + self.hostTeamName = hostTeamName self.previousValue = previousValue + self.newValue = newValue + self.actionDetails = actionDetails } func json() throws -> JSON { - try FileLockingPolicyChangedDetailsSerializer().serialize(self) + try GuestAdminChangeStatusDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileLockingPolicyChangedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GuestAdminChangeStatusDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileLockingPolicyChangedDetails: \(error)" + return "Failed to generate description for GuestAdminChangeStatusDetails: \(error)" } } } - - public class FileLockingPolicyChangedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileLockingPolicyChangedDetails) throws -> JSON { + public class GuestAdminChangeStatusDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GuestAdminChangeStatusDetails) throws -> JSON { let output = [ - "new_value": try TeamPolicies.FileLockingPolicyStateSerializer().serialize(value.newValue), - "previous_value": try TeamPolicies.FileLockingPolicyStateSerializer().serialize(value.previousValue), + "is_guest": try Serialization._BoolSerializer.serialize(value.isGuest), + "previous_value": try TeamLog.TrustedTeamsRequestStateSerializer().serialize(value.previousValue), + "new_value": try TeamLog.TrustedTeamsRequestStateSerializer().serialize(value.newValue), + "action_details": try TeamLog.TrustedTeamsRequestActionSerializer().serialize(value.actionDetails), + "guest_team_name": try NullableSerializer(Serialization._StringSerializer).serialize(value.guestTeamName), + "host_team_name": try NullableSerializer(Serialization._StringSerializer).serialize(value.hostTeamName), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileLockingPolicyChangedDetails { + public func deserialize(_ json: JSON) throws -> GuestAdminChangeStatusDetails { switch json { - case .dictionary(let dict): - let newValue = try TeamPolicies.FileLockingPolicyStateSerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try TeamPolicies.FileLockingPolicyStateSerializer().deserialize(dict["previous_value"] ?? .null) - return FileLockingPolicyChangedDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: FileLockingPolicyChangedDetails.self, json: json) + case .dictionary(let dict): + let isGuest = try Serialization._BoolSerializer.deserialize(dict["is_guest"] ?? .null) + let previousValue = try TeamLog.TrustedTeamsRequestStateSerializer().deserialize(dict["previous_value"] ?? .null) + let newValue = try TeamLog.TrustedTeamsRequestStateSerializer().deserialize(dict["new_value"] ?? .null) + let actionDetails = try TeamLog.TrustedTeamsRequestActionSerializer().deserialize(dict["action_details"] ?? .null) + let guestTeamName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["guest_team_name"] ?? .null) + let hostTeamName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["host_team_name"] ?? .null) + return GuestAdminChangeStatusDetails(isGuest: isGuest, previousValue: previousValue, newValue: newValue, actionDetails: actionDetails, guestTeamName: guestTeamName, hostTeamName: hostTeamName) + default: + throw JSONSerializerError.deserializeError(type: GuestAdminChangeStatusDetails.self, json: json) } } } - /// The FileLockingPolicyChangedType struct - public class FileLockingPolicyChangedType: CustomStringConvertible, JSONRepresentable { + /// The GuestAdminChangeStatusType struct + public class GuestAdminChangeStatusType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -27307,178 +40902,170 @@ public class TeamLog { } func json() throws -> JSON { - try FileLockingPolicyChangedTypeSerializer().serialize(self) + try GuestAdminChangeStatusTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileLockingPolicyChangedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GuestAdminChangeStatusTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileLockingPolicyChangedType: \(error)" + return "Failed to generate description for GuestAdminChangeStatusType: \(error)" } } } - - public class FileLockingPolicyChangedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileLockingPolicyChangedType) throws -> JSON { + public class GuestAdminChangeStatusTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GuestAdminChangeStatusType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileLockingPolicyChangedType { + public func deserialize(_ json: JSON) throws -> GuestAdminChangeStatusType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return FileLockingPolicyChangedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: FileLockingPolicyChangedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return GuestAdminChangeStatusType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: GuestAdminChangeStatusType.self, json: json) } } } - /// Generic information relevant both for files and folders - public class FileOrFolderLogInfo: CustomStringConvertible, JSONRepresentable { - /// Path relative to event context. - public let path: TeamLog.PathLogInfo - /// Display name. - public let displayName: String? - /// Unique ID. - public let fileId: String? - /// File or folder size in bytes. - public let fileSize: UInt64? - public init(path: TeamLog.PathLogInfo, displayName: String? = nil, fileId: String? = nil, fileSize: UInt64? = nil) { - self.path = path - nullableValidator(stringValidator())(displayName) - self.displayName = displayName - nullableValidator(stringValidator())(fileId) - self.fileId = fileId - nullableValidator(comparableValidator())(fileSize) - self.fileSize = fileSize + /// Started trusted team admin session. + public class GuestAdminSignedInViaTrustedTeamsDetails: CustomStringConvertible, JSONRepresentable { + /// Host team name. + public let teamName: String? + /// Trusted team name. + public let trustedTeamName: String? + public init(teamName: String? = nil, trustedTeamName: String? = nil) { + nullableValidator(stringValidator())(teamName) + self.teamName = teamName + nullableValidator(stringValidator())(trustedTeamName) + self.trustedTeamName = trustedTeamName } func json() throws -> JSON { - try FileOrFolderLogInfoSerializer().serialize(self) + try GuestAdminSignedInViaTrustedTeamsDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileOrFolderLogInfoSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GuestAdminSignedInViaTrustedTeamsDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileOrFolderLogInfo: \(error)" + return "Failed to generate description for GuestAdminSignedInViaTrustedTeamsDetails: \(error)" } } } - - public class FileOrFolderLogInfoSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileOrFolderLogInfo) throws -> JSON { + public class GuestAdminSignedInViaTrustedTeamsDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GuestAdminSignedInViaTrustedTeamsDetails) throws -> JSON { let output = [ - "path": try TeamLog.PathLogInfoSerializer().serialize(value.path), - "display_name": try NullableSerializer(Serialization._StringSerializer).serialize(value.displayName), - "file_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.fileId), - "file_size": try NullableSerializer(Serialization._UInt64Serializer).serialize(value.fileSize), + "team_name": try NullableSerializer(Serialization._StringSerializer).serialize(value.teamName), + "trusted_team_name": try NullableSerializer(Serialization._StringSerializer).serialize(value.trustedTeamName), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileOrFolderLogInfo { + public func deserialize(_ json: JSON) throws -> GuestAdminSignedInViaTrustedTeamsDetails { switch json { - case .dictionary(let dict): - let path = try TeamLog.PathLogInfoSerializer().deserialize(dict["path"] ?? .null) - let displayName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["display_name"] ?? .null) - let fileId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["file_id"] ?? .null) - let fileSize = try NullableSerializer(Serialization._UInt64Serializer).deserialize(dict["file_size"] ?? .null) - return FileOrFolderLogInfo(path: path, displayName: displayName, fileId: fileId, fileSize: fileSize) - default: - throw JSONSerializerError.deserializeError(type: FileOrFolderLogInfo.self, json: json) + case .dictionary(let dict): + let teamName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["team_name"] ?? .null) + let trustedTeamName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["trusted_team_name"] ?? .null) + return GuestAdminSignedInViaTrustedTeamsDetails(teamName: teamName, trustedTeamName: trustedTeamName) + default: + throw JSONSerializerError.deserializeError(type: GuestAdminSignedInViaTrustedTeamsDetails.self, json: json) } } } - /// File's logged information. - public class FileLogInfo: TeamLog.FileOrFolderLogInfo { - public override var description: String { + /// The GuestAdminSignedInViaTrustedTeamsType struct + public class GuestAdminSignedInViaTrustedTeamsType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try GuestAdminSignedInViaTrustedTeamsTypeSerializer().serialize(self) + } + + public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileLogInfoSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GuestAdminSignedInViaTrustedTeamsTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileLogInfo: \(error)" + return "Failed to generate description for GuestAdminSignedInViaTrustedTeamsType: \(error)" } } } - - public class FileLogInfoSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileLogInfo) throws -> JSON { + public class GuestAdminSignedInViaTrustedTeamsTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GuestAdminSignedInViaTrustedTeamsType) throws -> JSON { let output = [ - "path": try TeamLog.PathLogInfoSerializer().serialize(value.path), - "display_name": try NullableSerializer(Serialization._StringSerializer).serialize(value.displayName), - "file_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.fileId), - "file_size": try NullableSerializer(Serialization._UInt64Serializer).serialize(value.fileSize), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileLogInfo { + public func deserialize(_ json: JSON) throws -> GuestAdminSignedInViaTrustedTeamsType { switch json { - case .dictionary(let dict): - let path = try TeamLog.PathLogInfoSerializer().deserialize(dict["path"] ?? .null) - let displayName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["display_name"] ?? .null) - let fileId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["file_id"] ?? .null) - let fileSize = try NullableSerializer(Serialization._UInt64Serializer).deserialize(dict["file_size"] ?? .null) - return FileLogInfo(path: path, displayName: displayName, fileId: fileId, fileSize: fileSize) - default: - throw JSONSerializerError.deserializeError(type: FileLogInfo.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return GuestAdminSignedInViaTrustedTeamsType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: GuestAdminSignedInViaTrustedTeamsType.self, json: json) } } } - /// Moved files and/or folders. - public class FileMoveDetails: CustomStringConvertible, JSONRepresentable { - /// Relocate action details. - public let relocateActionDetails: [TeamLog.RelocateAssetReferencesLogInfo] - public init(relocateActionDetails: [TeamLog.RelocateAssetReferencesLogInfo]) { - self.relocateActionDetails = relocateActionDetails + /// Ended trusted team admin session. + public class GuestAdminSignedOutViaTrustedTeamsDetails: CustomStringConvertible, JSONRepresentable { + /// Host team name. + public let teamName: String? + /// Trusted team name. + public let trustedTeamName: String? + public init(teamName: String? = nil, trustedTeamName: String? = nil) { + nullableValidator(stringValidator())(teamName) + self.teamName = teamName + nullableValidator(stringValidator())(trustedTeamName) + self.trustedTeamName = trustedTeamName } func json() throws -> JSON { - try FileMoveDetailsSerializer().serialize(self) + try GuestAdminSignedOutViaTrustedTeamsDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileMoveDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GuestAdminSignedOutViaTrustedTeamsDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileMoveDetails: \(error)" + return "Failed to generate description for GuestAdminSignedOutViaTrustedTeamsDetails: \(error)" } } } - - public class FileMoveDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileMoveDetails) throws -> JSON { + public class GuestAdminSignedOutViaTrustedTeamsDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GuestAdminSignedOutViaTrustedTeamsDetails) throws -> JSON { let output = [ - "relocate_action_details": try ArraySerializer(TeamLog.RelocateAssetReferencesLogInfoSerializer()).serialize(value.relocateActionDetails), + "team_name": try NullableSerializer(Serialization._StringSerializer).serialize(value.teamName), + "trusted_team_name": try NullableSerializer(Serialization._StringSerializer).serialize(value.trustedTeamName), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileMoveDetails { + public func deserialize(_ json: JSON) throws -> GuestAdminSignedOutViaTrustedTeamsDetails { switch json { - case .dictionary(let dict): - let relocateActionDetails = try ArraySerializer(TeamLog.RelocateAssetReferencesLogInfoSerializer()) - .deserialize(dict["relocate_action_details"] ?? .null) - return FileMoveDetails(relocateActionDetails: relocateActionDetails) - default: - throw JSONSerializerError.deserializeError(type: FileMoveDetails.self, json: json) + case .dictionary(let dict): + let teamName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["team_name"] ?? .null) + let trustedTeamName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["trusted_team_name"] ?? .null) + return GuestAdminSignedOutViaTrustedTeamsDetails(teamName: teamName, trustedTeamName: trustedTeamName) + default: + throw JSONSerializerError.deserializeError(type: GuestAdminSignedOutViaTrustedTeamsDetails.self, json: json) } } } - /// The FileMoveType struct - public class FileMoveType: CustomStringConvertible, JSONRepresentable { + /// The GuestAdminSignedOutViaTrustedTeamsType struct + public class GuestAdminSignedOutViaTrustedTeamsType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -27487,72 +41074,137 @@ public class TeamLog { } func json() throws -> JSON { - try FileMoveTypeSerializer().serialize(self) + try GuestAdminSignedOutViaTrustedTeamsTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileMoveTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try GuestAdminSignedOutViaTrustedTeamsTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileMoveType: \(error)" + return "Failed to generate description for GuestAdminSignedOutViaTrustedTeamsType: \(error)" } } } - - public class FileMoveTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileMoveType) throws -> JSON { + public class GuestAdminSignedOutViaTrustedTeamsTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: GuestAdminSignedOutViaTrustedTeamsType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileMoveType { + public func deserialize(_ json: JSON) throws -> GuestAdminSignedOutViaTrustedTeamsType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return FileMoveType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: FileMoveType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return GuestAdminSignedOutViaTrustedTeamsType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: GuestAdminSignedOutViaTrustedTeamsType.self, json: json) } } } - /// Permanently deleted files and/or folders. - public class FilePermanentlyDeleteDetails: CustomStringConvertible, JSONRepresentable { + /// The IdentifierType union + public enum IdentifierType: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case email + /// An unspecified error. + case facebookProfileName + /// An unspecified error. + case other + func json() throws -> JSON { - try FilePermanentlyDeleteDetailsSerializer().serialize(self) + try IdentifierTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FilePermanentlyDeleteDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try IdentifierTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for FilePermanentlyDeleteDetails: \(error)" + return "Failed to generate description for IdentifierType: \(error)" + } + } + } + public class IdentifierTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: IdentifierType) throws -> JSON { + switch value { + case .email: + var d = [String: JSON]() + d[".tag"] = .str("email") + return .dictionary(d) + case .facebookProfileName: + var d = [String: JSON]() + d[".tag"] = .str("facebook_profile_name") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> IdentifierType { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "email": + return IdentifierType.email + case "facebook_profile_name": + return IdentifierType.facebookProfileName + case "other": + return IdentifierType.other + default: + return IdentifierType.other + } + default: + throw JSONSerializerError.deserializeError(type: IdentifierType.self, json: json) } } } - public class FilePermanentlyDeleteDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FilePermanentlyDeleteDetails) throws -> JSON { - let output = [String: JSON]() - return .dictionary(output) + /// Connected integration for member. + public class IntegrationConnectedDetails: CustomStringConvertible, JSONRepresentable { + /// Name of the third-party integration. + public let integrationName: String + public init(integrationName: String) { + stringValidator()(integrationName) + self.integrationName = integrationName } - public func deserialize(_ json: JSON) throws -> FilePermanentlyDeleteDetails { + func json() throws -> JSON { + try IntegrationConnectedDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try IntegrationConnectedDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for IntegrationConnectedDetails: \(error)" + } + } + } + public class IntegrationConnectedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: IntegrationConnectedDetails) throws -> JSON { + let output = [ + "integration_name": try Serialization._StringSerializer.serialize(value.integrationName), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> IntegrationConnectedDetails { switch json { - case .dictionary: - return FilePermanentlyDeleteDetails() - default: - throw JSONSerializerError.deserializeError(type: FilePermanentlyDeleteDetails.self, json: json) + case .dictionary(let dict): + let integrationName = try Serialization._StringSerializer.deserialize(dict["integration_name"] ?? .null) + return IntegrationConnectedDetails(integrationName: integrationName) + default: + throw JSONSerializerError.deserializeError(type: IntegrationConnectedDetails.self, json: json) } } } - /// The FilePermanentlyDeleteType struct - public class FilePermanentlyDeleteType: CustomStringConvertible, JSONRepresentable { + /// The IntegrationConnectedType struct + public class IntegrationConnectedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -27561,72 +41213,78 @@ public class TeamLog { } func json() throws -> JSON { - try FilePermanentlyDeleteTypeSerializer().serialize(self) + try IntegrationConnectedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FilePermanentlyDeleteTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try IntegrationConnectedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for FilePermanentlyDeleteType: \(error)" + return "Failed to generate description for IntegrationConnectedType: \(error)" } } } - - public class FilePermanentlyDeleteTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FilePermanentlyDeleteType) throws -> JSON { + public class IntegrationConnectedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: IntegrationConnectedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FilePermanentlyDeleteType { + public func deserialize(_ json: JSON) throws -> IntegrationConnectedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return FilePermanentlyDeleteType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: FilePermanentlyDeleteType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return IntegrationConnectedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: IntegrationConnectedType.self, json: json) } } } - /// Previewed files and/or folders. - public class FilePreviewDetails: CustomStringConvertible, JSONRepresentable { + /// Disconnected integration for member. + public class IntegrationDisconnectedDetails: CustomStringConvertible, JSONRepresentable { + /// Name of the third-party integration. + public let integrationName: String + public init(integrationName: String) { + stringValidator()(integrationName) + self.integrationName = integrationName + } + func json() throws -> JSON { - try FilePreviewDetailsSerializer().serialize(self) + try IntegrationDisconnectedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FilePreviewDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try IntegrationDisconnectedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for FilePreviewDetails: \(error)" + return "Failed to generate description for IntegrationDisconnectedDetails: \(error)" } } } - - public class FilePreviewDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FilePreviewDetails) throws -> JSON { - let output = [String: JSON]() + public class IntegrationDisconnectedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: IntegrationDisconnectedDetails) throws -> JSON { + let output = [ + "integration_name": try Serialization._StringSerializer.serialize(value.integrationName), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FilePreviewDetails { + public func deserialize(_ json: JSON) throws -> IntegrationDisconnectedDetails { switch json { - case .dictionary: - return FilePreviewDetails() - default: - throw JSONSerializerError.deserializeError(type: FilePreviewDetails.self, json: json) + case .dictionary(let dict): + let integrationName = try Serialization._StringSerializer.deserialize(dict["integration_name"] ?? .null) + return IntegrationDisconnectedDetails(integrationName: integrationName) + default: + throw JSONSerializerError.deserializeError(type: IntegrationDisconnectedDetails.self, json: json) } } } - /// The FilePreviewType struct - public class FilePreviewType: CustomStringConvertible, JSONRepresentable { + /// The IntegrationDisconnectedType struct + public class IntegrationDisconnectedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -27635,86 +41293,147 @@ public class TeamLog { } func json() throws -> JSON { - try FilePreviewTypeSerializer().serialize(self) + try IntegrationDisconnectedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FilePreviewTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try IntegrationDisconnectedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for FilePreviewType: \(error)" + return "Failed to generate description for IntegrationDisconnectedType: \(error)" } } } - - public class FilePreviewTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FilePreviewType) throws -> JSON { + public class IntegrationDisconnectedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: IntegrationDisconnectedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } + public func deserialize(_ json: JSON) throws -> IntegrationDisconnectedType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return IntegrationDisconnectedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: IntegrationDisconnectedType.self, json: json) + } + } + } - public func deserialize(_ json: JSON) throws -> FilePreviewType { + /// Policy for controlling whether a service integration is enabled for the team. + public enum IntegrationPolicy: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case disabled + /// An unspecified error. + case enabled + /// An unspecified error. + case other + + func json() throws -> JSON { + try IntegrationPolicySerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try IntegrationPolicySerializer().serialize(self)))" + } catch { + return "Failed to generate description for IntegrationPolicy: \(error)" + } + } + } + public class IntegrationPolicySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: IntegrationPolicy) throws -> JSON { + switch value { + case .disabled: + var d = [String: JSON]() + d[".tag"] = .str("disabled") + return .dictionary(d) + case .enabled: + var d = [String: JSON]() + d[".tag"] = .str("enabled") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> IntegrationPolicy { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return FilePreviewType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: FilePreviewType.self, json: json) + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "disabled": + return IntegrationPolicy.disabled + case "enabled": + return IntegrationPolicy.enabled + case "other": + return IntegrationPolicy.other + default: + return IntegrationPolicy.other + } + default: + throw JSONSerializerError.deserializeError(type: IntegrationPolicy.self, json: json) } } } - /// Changed File Provider Migration policy for team. - public class FileProviderMigrationPolicyChangedDetails: CustomStringConvertible, JSONRepresentable { - /// To. - public let newValue: TeamPolicies.FileProviderMigrationPolicyState - /// From. - public let previousValue: TeamPolicies.FileProviderMigrationPolicyState - public init(newValue: TeamPolicies.FileProviderMigrationPolicyState, previousValue: TeamPolicies.FileProviderMigrationPolicyState) { + /// Changed integration policy for team. + public class IntegrationPolicyChangedDetails: CustomStringConvertible, JSONRepresentable { + /// Name of the third-party integration. + public let integrationName: String + /// New integration policy. + public let newValue: TeamLog.IntegrationPolicy + /// Previous integration policy. + public let previousValue: TeamLog.IntegrationPolicy + public init(integrationName: String, newValue: TeamLog.IntegrationPolicy, previousValue: TeamLog.IntegrationPolicy) { + stringValidator()(integrationName) + self.integrationName = integrationName self.newValue = newValue self.previousValue = previousValue } func json() throws -> JSON { - try FileProviderMigrationPolicyChangedDetailsSerializer().serialize(self) + try IntegrationPolicyChangedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileProviderMigrationPolicyChangedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try IntegrationPolicyChangedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileProviderMigrationPolicyChangedDetails: \(error)" + return "Failed to generate description for IntegrationPolicyChangedDetails: \(error)" } } } - - public class FileProviderMigrationPolicyChangedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileProviderMigrationPolicyChangedDetails) throws -> JSON { + public class IntegrationPolicyChangedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: IntegrationPolicyChangedDetails) throws -> JSON { let output = [ - "new_value": try TeamPolicies.FileProviderMigrationPolicyStateSerializer().serialize(value.newValue), - "previous_value": try TeamPolicies.FileProviderMigrationPolicyStateSerializer().serialize(value.previousValue), + "integration_name": try Serialization._StringSerializer.serialize(value.integrationName), + "new_value": try TeamLog.IntegrationPolicySerializer().serialize(value.newValue), + "previous_value": try TeamLog.IntegrationPolicySerializer().serialize(value.previousValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileProviderMigrationPolicyChangedDetails { + public func deserialize(_ json: JSON) throws -> IntegrationPolicyChangedDetails { switch json { - case .dictionary(let dict): - let newValue = try TeamPolicies.FileProviderMigrationPolicyStateSerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try TeamPolicies.FileProviderMigrationPolicyStateSerializer().deserialize(dict["previous_value"] ?? .null) - return FileProviderMigrationPolicyChangedDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: FileProviderMigrationPolicyChangedDetails.self, json: json) + case .dictionary(let dict): + let integrationName = try Serialization._StringSerializer.deserialize(dict["integration_name"] ?? .null) + let newValue = try TeamLog.IntegrationPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try TeamLog.IntegrationPolicySerializer().deserialize(dict["previous_value"] ?? .null) + return IntegrationPolicyChangedDetails(integrationName: integrationName, newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: IntegrationPolicyChangedDetails.self, json: json) } } } - /// The FileProviderMigrationPolicyChangedType struct - public class FileProviderMigrationPolicyChangedType: CustomStringConvertible, JSONRepresentable { + /// The IntegrationPolicyChangedType struct + public class IntegrationPolicyChangedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -27723,176 +41442,141 @@ public class TeamLog { } func json() throws -> JSON { - try FileProviderMigrationPolicyChangedTypeSerializer().serialize(self) + try IntegrationPolicyChangedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileProviderMigrationPolicyChangedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try IntegrationPolicyChangedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileProviderMigrationPolicyChangedType: \(error)" + return "Failed to generate description for IntegrationPolicyChangedType: \(error)" } } } - - public class FileProviderMigrationPolicyChangedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileProviderMigrationPolicyChangedType) throws -> JSON { + public class IntegrationPolicyChangedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: IntegrationPolicyChangedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileProviderMigrationPolicyChangedType { + public func deserialize(_ json: JSON) throws -> IntegrationPolicyChangedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return FileProviderMigrationPolicyChangedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: FileProviderMigrationPolicyChangedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return IntegrationPolicyChangedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: IntegrationPolicyChangedType.self, json: json) } } } - /// Renamed files and/or folders. - public class FileRenameDetails: CustomStringConvertible, JSONRepresentable { - /// Relocate action details. - public let relocateActionDetails: [TeamLog.RelocateAssetReferencesLogInfo] - public init(relocateActionDetails: [TeamLog.RelocateAssetReferencesLogInfo]) { - self.relocateActionDetails = relocateActionDetails - } + /// Policy for deciding whether team admins receive email when an invitation to join the team is accepted + public enum InviteAcceptanceEmailPolicy: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case disabled + /// An unspecified error. + case enabled + /// An unspecified error. + case other func json() throws -> JSON { - try FileRenameDetailsSerializer().serialize(self) + try InviteAcceptanceEmailPolicySerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileRenameDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try InviteAcceptanceEmailPolicySerializer().serialize(self)))" } catch { - return "Failed to generate description for FileRenameDetails: \(error)" - } - } - } - - public class FileRenameDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileRenameDetails) throws -> JSON { - let output = [ - "relocate_action_details": try ArraySerializer(TeamLog.RelocateAssetReferencesLogInfoSerializer()).serialize(value.relocateActionDetails), - ] - return .dictionary(output) - } - - public func deserialize(_ json: JSON) throws -> FileRenameDetails { - switch json { - case .dictionary(let dict): - let relocateActionDetails = try ArraySerializer(TeamLog.RelocateAssetReferencesLogInfoSerializer()) - .deserialize(dict["relocate_action_details"] ?? .null) - return FileRenameDetails(relocateActionDetails: relocateActionDetails) - default: - throw JSONSerializerError.deserializeError(type: FileRenameDetails.self, json: json) + return "Failed to generate description for InviteAcceptanceEmailPolicy: \(error)" } } } - - /// The FileRenameType struct - public class FileRenameType: CustomStringConvertible, JSONRepresentable { - /// (no description) - public let description_: String - public init(description_: String) { - stringValidator()(description_) - self.description_ = description_ - } - - func json() throws -> JSON { - try FileRenameTypeSerializer().serialize(self) - } - - public var description: String { - do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileRenameTypeSerializer().serialize(self)))" - } catch { - return "Failed to generate description for FileRenameType: \(error)" + public class InviteAcceptanceEmailPolicySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: InviteAcceptanceEmailPolicy) throws -> JSON { + switch value { + case .disabled: + var d = [String: JSON]() + d[".tag"] = .str("disabled") + return .dictionary(d) + case .enabled: + var d = [String: JSON]() + d[".tag"] = .str("enabled") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) } } - } - - public class FileRenameTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileRenameType) throws -> JSON { - let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), - ] - return .dictionary(output) - } - - public func deserialize(_ json: JSON) throws -> FileRenameType { + public func deserialize(_ json: JSON) throws -> InviteAcceptanceEmailPolicy { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return FileRenameType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: FileRenameType.self, json: json) + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "disabled": + return InviteAcceptanceEmailPolicy.disabled + case "enabled": + return InviteAcceptanceEmailPolicy.enabled + case "other": + return InviteAcceptanceEmailPolicy.other + default: + return InviteAcceptanceEmailPolicy.other + } + default: + throw JSONSerializerError.deserializeError(type: InviteAcceptanceEmailPolicy.self, json: json) } } } - /// Changed file request. - public class FileRequestChangeDetails: CustomStringConvertible, JSONRepresentable { - /// File request id. Might be missing due to historical data gap. - public let fileRequestId: String? - /// Previous file request details. Might be missing due to historical data gap. - public let previousDetails: TeamLog.FileRequestDetails? - /// New file request details. - public let newDetails: TeamLog.FileRequestDetails - public init(newDetails: TeamLog.FileRequestDetails, fileRequestId: String? = nil, previousDetails: TeamLog.FileRequestDetails? = nil) { - nullableValidator(stringValidator(minLength: 1, pattern: "[-_0-9a-zA-Z]+"))(fileRequestId) - self.fileRequestId = fileRequestId - self.previousDetails = previousDetails - self.newDetails = newDetails + /// Changed invite accept email policy for team. + public class InviteAcceptanceEmailPolicyChangedDetails: CustomStringConvertible, JSONRepresentable { + /// To. + public let newValue: TeamLog.InviteAcceptanceEmailPolicy + /// From. + public let previousValue: TeamLog.InviteAcceptanceEmailPolicy + public init(newValue: TeamLog.InviteAcceptanceEmailPolicy, previousValue: TeamLog.InviteAcceptanceEmailPolicy) { + self.newValue = newValue + self.previousValue = previousValue } func json() throws -> JSON { - try FileRequestChangeDetailsSerializer().serialize(self) + try InviteAcceptanceEmailPolicyChangedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileRequestChangeDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try InviteAcceptanceEmailPolicyChangedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileRequestChangeDetails: \(error)" + return "Failed to generate description for InviteAcceptanceEmailPolicyChangedDetails: \(error)" } } } - - public class FileRequestChangeDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileRequestChangeDetails) throws -> JSON { + public class InviteAcceptanceEmailPolicyChangedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: InviteAcceptanceEmailPolicyChangedDetails) throws -> JSON { let output = [ - "new_details": try TeamLog.FileRequestDetailsSerializer().serialize(value.newDetails), - "file_request_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.fileRequestId), - "previous_details": try NullableSerializer(TeamLog.FileRequestDetailsSerializer()).serialize(value.previousDetails), + "new_value": try TeamLog.InviteAcceptanceEmailPolicySerializer().serialize(value.newValue), + "previous_value": try TeamLog.InviteAcceptanceEmailPolicySerializer().serialize(value.previousValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileRequestChangeDetails { + public func deserialize(_ json: JSON) throws -> InviteAcceptanceEmailPolicyChangedDetails { switch json { - case .dictionary(let dict): - let newDetails = try TeamLog.FileRequestDetailsSerializer().deserialize(dict["new_details"] ?? .null) - let fileRequestId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["file_request_id"] ?? .null) - let previousDetails = try NullableSerializer(TeamLog.FileRequestDetailsSerializer()).deserialize(dict["previous_details"] ?? .null) - return FileRequestChangeDetails(newDetails: newDetails, fileRequestId: fileRequestId, previousDetails: previousDetails) - default: - throw JSONSerializerError.deserializeError(type: FileRequestChangeDetails.self, json: json) + case .dictionary(let dict): + let newValue = try TeamLog.InviteAcceptanceEmailPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try TeamLog.InviteAcceptanceEmailPolicySerializer().deserialize(dict["previous_value"] ?? .null) + return InviteAcceptanceEmailPolicyChangedDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: InviteAcceptanceEmailPolicyChangedDetails.self, json: json) } } } - /// The FileRequestChangeType struct - public class FileRequestChangeType: CustomStringConvertible, JSONRepresentable { + /// The InviteAcceptanceEmailPolicyChangedType struct + public class InviteAcceptanceEmailPolicyChangedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -27901,478 +41585,594 @@ public class TeamLog { } func json() throws -> JSON { - try FileRequestChangeTypeSerializer().serialize(self) + try InviteAcceptanceEmailPolicyChangedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileRequestChangeTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try InviteAcceptanceEmailPolicyChangedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileRequestChangeType: \(error)" + return "Failed to generate description for InviteAcceptanceEmailPolicyChangedType: \(error)" } } } - - public class FileRequestChangeTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileRequestChangeType) throws -> JSON { + public class InviteAcceptanceEmailPolicyChangedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: InviteAcceptanceEmailPolicyChangedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileRequestChangeType { + public func deserialize(_ json: JSON) throws -> InviteAcceptanceEmailPolicyChangedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return FileRequestChangeType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: FileRequestChangeType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return InviteAcceptanceEmailPolicyChangedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: InviteAcceptanceEmailPolicyChangedType.self, json: json) } } } - /// Closed file request. - public class FileRequestCloseDetails: CustomStringConvertible, JSONRepresentable { - /// File request id. Might be missing due to historical data gap. - public let fileRequestId: String? - /// Previous file request details. Might be missing due to historical data gap. - public let previousDetails: TeamLog.FileRequestDetails? - public init(fileRequestId: String? = nil, previousDetails: TeamLog.FileRequestDetails? = nil) { - nullableValidator(stringValidator(minLength: 1, pattern: "[-_0-9a-zA-Z]+"))(fileRequestId) - self.fileRequestId = fileRequestId - self.previousDetails = previousDetails - } + /// The InviteMethod union + public enum InviteMethod: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case autoApprove + /// An unspecified error. + case inviteLink + /// An unspecified error. + case memberInvite + /// An unspecified error. + case movedFromAnotherTeam + /// An unspecified error. + case other func json() throws -> JSON { - try FileRequestCloseDetailsSerializer().serialize(self) + try InviteMethodSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileRequestCloseDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try InviteMethodSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileRequestCloseDetails: \(error)" + return "Failed to generate description for InviteMethod: \(error)" } } } - - public class FileRequestCloseDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileRequestCloseDetails) throws -> JSON { - let output = [ - "file_request_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.fileRequestId), - "previous_details": try NullableSerializer(TeamLog.FileRequestDetailsSerializer()).serialize(value.previousDetails), - ] - return .dictionary(output) + public class InviteMethodSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: InviteMethod) throws -> JSON { + switch value { + case .autoApprove: + var d = [String: JSON]() + d[".tag"] = .str("auto_approve") + return .dictionary(d) + case .inviteLink: + var d = [String: JSON]() + d[".tag"] = .str("invite_link") + return .dictionary(d) + case .memberInvite: + var d = [String: JSON]() + d[".tag"] = .str("member_invite") + return .dictionary(d) + case .movedFromAnotherTeam: + var d = [String: JSON]() + d[".tag"] = .str("moved_from_another_team") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } } - - public func deserialize(_ json: JSON) throws -> FileRequestCloseDetails { + public func deserialize(_ json: JSON) throws -> InviteMethod { switch json { - case .dictionary(let dict): - let fileRequestId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["file_request_id"] ?? .null) - let previousDetails = try NullableSerializer(TeamLog.FileRequestDetailsSerializer()).deserialize(dict["previous_details"] ?? .null) - return FileRequestCloseDetails(fileRequestId: fileRequestId, previousDetails: previousDetails) - default: - throw JSONSerializerError.deserializeError(type: FileRequestCloseDetails.self, json: json) + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "auto_approve": + return InviteMethod.autoApprove + case "invite_link": + return InviteMethod.inviteLink + case "member_invite": + return InviteMethod.memberInvite + case "moved_from_another_team": + return InviteMethod.movedFromAnotherTeam + case "other": + return InviteMethod.other + default: + return InviteMethod.other + } + default: + throw JSONSerializerError.deserializeError(type: InviteMethod.self, json: json) } } } - /// The FileRequestCloseType struct - public class FileRequestCloseType: CustomStringConvertible, JSONRepresentable { - /// (no description) - public let description_: String - public init(description_: String) { - stringValidator()(description_) - self.description_ = description_ + /// Additional information relevant when a new member joins the team. + public class JoinTeamDetails: CustomStringConvertible, JSONRepresentable { + /// Field is deprecated. Linked applications. (Deprecated) Please use has_linked_apps boolean field instead. + public let linkedApps: Array + /// Field is deprecated. Linked devices. (Deprecated) Please use has_linked_devices boolean field instead. + public let linkedDevices: Array + /// Field is deprecated. Linked shared folders. (Deprecated) Please use has_linked_shared_folders boolean field + /// instead. + public let linkedSharedFolders: Array + /// Field is deprecated. (Deprecated) True if the linked_apps list was truncated to the maximum supported length + /// (50). + public let wasLinkedAppsTruncated: Bool? + /// Field is deprecated. (Deprecated) True if the linked_devices list was truncated to the maximum supported + /// length (50). + public let wasLinkedDevicesTruncated: Bool? + /// Field is deprecated. (Deprecated) True if the linked_shared_folders list was truncated to the maximum + /// supported length (50). + public let wasLinkedSharedFoldersTruncated: Bool? + /// True if the user had linked apps at event time. + public let hasLinkedApps: Bool? + /// True if the user had linked apps at event time. + public let hasLinkedDevices: Bool? + /// True if the user had linked shared folders at event time. + public let hasLinkedSharedFolders: Bool? + public init(linkedApps: Array, linkedDevices: Array, linkedSharedFolders: Array, wasLinkedAppsTruncated: Bool? = nil, wasLinkedDevicesTruncated: Bool? = nil, wasLinkedSharedFoldersTruncated: Bool? = nil, hasLinkedApps: Bool? = nil, hasLinkedDevices: Bool? = nil, hasLinkedSharedFolders: Bool? = nil) { + self.linkedApps = linkedApps + self.linkedDevices = linkedDevices + self.linkedSharedFolders = linkedSharedFolders + self.wasLinkedAppsTruncated = wasLinkedAppsTruncated + self.wasLinkedDevicesTruncated = wasLinkedDevicesTruncated + self.wasLinkedSharedFoldersTruncated = wasLinkedSharedFoldersTruncated + self.hasLinkedApps = hasLinkedApps + self.hasLinkedDevices = hasLinkedDevices + self.hasLinkedSharedFolders = hasLinkedSharedFolders } func json() throws -> JSON { - try FileRequestCloseTypeSerializer().serialize(self) + try JoinTeamDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileRequestCloseTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try JoinTeamDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileRequestCloseType: \(error)" + return "Failed to generate description for JoinTeamDetails: \(error)" } } } - - public class FileRequestCloseTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileRequestCloseType) throws -> JSON { + public class JoinTeamDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: JoinTeamDetails) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "linked_apps": try ArraySerializer(TeamLog.UserLinkedAppLogInfoSerializer()).serialize(value.linkedApps), + "linked_devices": try ArraySerializer(TeamLog.LinkedDeviceLogInfoSerializer()).serialize(value.linkedDevices), + "linked_shared_folders": try ArraySerializer(TeamLog.FolderLogInfoSerializer()).serialize(value.linkedSharedFolders), + "was_linked_apps_truncated": try NullableSerializer(Serialization._BoolSerializer).serialize(value.wasLinkedAppsTruncated), + "was_linked_devices_truncated": try NullableSerializer(Serialization._BoolSerializer).serialize(value.wasLinkedDevicesTruncated), + "was_linked_shared_folders_truncated": try NullableSerializer(Serialization._BoolSerializer).serialize(value.wasLinkedSharedFoldersTruncated), + "has_linked_apps": try NullableSerializer(Serialization._BoolSerializer).serialize(value.hasLinkedApps), + "has_linked_devices": try NullableSerializer(Serialization._BoolSerializer).serialize(value.hasLinkedDevices), + "has_linked_shared_folders": try NullableSerializer(Serialization._BoolSerializer).serialize(value.hasLinkedSharedFolders), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileRequestCloseType { + public func deserialize(_ json: JSON) throws -> JoinTeamDetails { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return FileRequestCloseType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: FileRequestCloseType.self, json: json) + case .dictionary(let dict): + let linkedApps = try ArraySerializer(TeamLog.UserLinkedAppLogInfoSerializer()).deserialize(dict["linked_apps"] ?? .null) + let linkedDevices = try ArraySerializer(TeamLog.LinkedDeviceLogInfoSerializer()).deserialize(dict["linked_devices"] ?? .null) + let linkedSharedFolders = try ArraySerializer(TeamLog.FolderLogInfoSerializer()).deserialize(dict["linked_shared_folders"] ?? .null) + let wasLinkedAppsTruncated = try NullableSerializer(Serialization._BoolSerializer).deserialize(dict["was_linked_apps_truncated"] ?? .null) + let wasLinkedDevicesTruncated = try NullableSerializer(Serialization._BoolSerializer).deserialize(dict["was_linked_devices_truncated"] ?? .null) + let wasLinkedSharedFoldersTruncated = try NullableSerializer(Serialization._BoolSerializer).deserialize(dict["was_linked_shared_folders_truncated"] ?? .null) + let hasLinkedApps = try NullableSerializer(Serialization._BoolSerializer).deserialize(dict["has_linked_apps"] ?? .null) + let hasLinkedDevices = try NullableSerializer(Serialization._BoolSerializer).deserialize(dict["has_linked_devices"] ?? .null) + let hasLinkedSharedFolders = try NullableSerializer(Serialization._BoolSerializer).deserialize(dict["has_linked_shared_folders"] ?? .null) + return JoinTeamDetails(linkedApps: linkedApps, linkedDevices: linkedDevices, linkedSharedFolders: linkedSharedFolders, wasLinkedAppsTruncated: wasLinkedAppsTruncated, wasLinkedDevicesTruncated: wasLinkedDevicesTruncated, wasLinkedSharedFoldersTruncated: wasLinkedSharedFoldersTruncated, hasLinkedApps: hasLinkedApps, hasLinkedDevices: hasLinkedDevices, hasLinkedSharedFolders: hasLinkedSharedFolders) + default: + throw JSONSerializerError.deserializeError(type: JoinTeamDetails.self, json: json) } } } - /// Created file request. - public class FileRequestCreateDetails: CustomStringConvertible, JSONRepresentable { - /// File request id. Might be missing due to historical data gap. - public let fileRequestId: String? - /// File request details. Might be missing due to historical data gap. - public let requestDetails: TeamLog.FileRequestDetails? - public init(fileRequestId: String? = nil, requestDetails: TeamLog.FileRequestDetails? = nil) { - nullableValidator(stringValidator(minLength: 1, pattern: "[-_0-9a-zA-Z]+"))(fileRequestId) - self.fileRequestId = fileRequestId - self.requestDetails = requestDetails - } + /// Label type + public enum LabelType: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case personalInformation + /// An unspecified error. + case testOnly + /// An unspecified error. + case userDefinedTag + /// An unspecified error. + case other func json() throws -> JSON { - try FileRequestCreateDetailsSerializer().serialize(self) + try LabelTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileRequestCreateDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try LabelTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileRequestCreateDetails: \(error)" + return "Failed to generate description for LabelType: \(error)" } } } - - public class FileRequestCreateDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileRequestCreateDetails) throws -> JSON { - let output = [ - "file_request_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.fileRequestId), - "request_details": try NullableSerializer(TeamLog.FileRequestDetailsSerializer()).serialize(value.requestDetails), - ] - return .dictionary(output) + public class LabelTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: LabelType) throws -> JSON { + switch value { + case .personalInformation: + var d = [String: JSON]() + d[".tag"] = .str("personal_information") + return .dictionary(d) + case .testOnly: + var d = [String: JSON]() + d[".tag"] = .str("test_only") + return .dictionary(d) + case .userDefinedTag: + var d = [String: JSON]() + d[".tag"] = .str("user_defined_tag") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } } - - public func deserialize(_ json: JSON) throws -> FileRequestCreateDetails { + public func deserialize(_ json: JSON) throws -> LabelType { switch json { - case .dictionary(let dict): - let fileRequestId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["file_request_id"] ?? .null) - let requestDetails = try NullableSerializer(TeamLog.FileRequestDetailsSerializer()).deserialize(dict["request_details"] ?? .null) - return FileRequestCreateDetails(fileRequestId: fileRequestId, requestDetails: requestDetails) - default: - throw JSONSerializerError.deserializeError(type: FileRequestCreateDetails.self, json: json) + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "personal_information": + return LabelType.personalInformation + case "test_only": + return LabelType.testOnly + case "user_defined_tag": + return LabelType.userDefinedTag + case "other": + return LabelType.other + default: + return LabelType.other + } + default: + throw JSONSerializerError.deserializeError(type: LabelType.self, json: json) } } } - /// The FileRequestCreateType struct - public class FileRequestCreateType: CustomStringConvertible, JSONRepresentable { - /// (no description) - public let description_: String - public init(description_: String) { - stringValidator()(description_) - self.description_ = description_ + /// Information on sessions, in legacy format + public class LegacyDeviceSessionLogInfo: TeamLog.DeviceSessionLogInfo { + /// Session unique id. + public let sessionInfo: TeamLog.SessionLogInfo? + /// The device name. Might be missing due to historical data gap. + public let displayName: String? + /// Is device managed by emm. Might be missing due to historical data gap. + public let isEmmManaged: Bool? + /// Information on the hosting platform. Might be missing due to historical data gap. + public let platform: String? + /// The mac address of the last activity from this session. Might be missing due to historical data gap. + public let macAddress: String? + /// The hosting OS version. Might be missing due to historical data gap. + public let osVersion: String? + /// Information on the hosting device type. Might be missing due to historical data gap. + public let deviceType: String? + /// The Dropbox client version. Might be missing due to historical data gap. + public let clientVersion: String? + /// Alternative unique device session id, instead of session id field. Might be missing due to historical data + /// gap. + public let legacyUniqId: String? + public init(ipAddress: String? = nil, created: Date? = nil, updated: Date? = nil, sessionInfo: TeamLog.SessionLogInfo? = nil, displayName: String? = nil, isEmmManaged: Bool? = nil, platform: String? = nil, macAddress: String? = nil, osVersion: String? = nil, deviceType: String? = nil, clientVersion: String? = nil, legacyUniqId: String? = nil) { + self.sessionInfo = sessionInfo + nullableValidator(stringValidator())(displayName) + self.displayName = displayName + self.isEmmManaged = isEmmManaged + nullableValidator(stringValidator())(platform) + self.platform = platform + nullableValidator(stringValidator())(macAddress) + self.macAddress = macAddress + nullableValidator(stringValidator())(osVersion) + self.osVersion = osVersion + nullableValidator(stringValidator())(deviceType) + self.deviceType = deviceType + nullableValidator(stringValidator())(clientVersion) + self.clientVersion = clientVersion + nullableValidator(stringValidator())(legacyUniqId) + self.legacyUniqId = legacyUniqId + super.init(ipAddress: ipAddress, created: created, updated: updated) } - func json() throws -> JSON { - try FileRequestCreateTypeSerializer().serialize(self) - } - public var description: String { + public override var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileRequestCreateTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try LegacyDeviceSessionLogInfoSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileRequestCreateType: \(error)" + return "Failed to generate description for LegacyDeviceSessionLogInfo: \(error)" } } } - - public class FileRequestCreateTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileRequestCreateType) throws -> JSON { + public class LegacyDeviceSessionLogInfoSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: LegacyDeviceSessionLogInfo) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "ip_address": try NullableSerializer(Serialization._StringSerializer).serialize(value.ipAddress), + "created": try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).serialize(value.created), + "updated": try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).serialize(value.updated), + "session_info": try NullableSerializer(TeamLog.SessionLogInfoSerializer()).serialize(value.sessionInfo), + "display_name": try NullableSerializer(Serialization._StringSerializer).serialize(value.displayName), + "is_emm_managed": try NullableSerializer(Serialization._BoolSerializer).serialize(value.isEmmManaged), + "platform": try NullableSerializer(Serialization._StringSerializer).serialize(value.platform), + "mac_address": try NullableSerializer(Serialization._StringSerializer).serialize(value.macAddress), + "os_version": try NullableSerializer(Serialization._StringSerializer).serialize(value.osVersion), + "device_type": try NullableSerializer(Serialization._StringSerializer).serialize(value.deviceType), + "client_version": try NullableSerializer(Serialization._StringSerializer).serialize(value.clientVersion), + "legacy_uniq_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.legacyUniqId), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileRequestCreateType { + public func deserialize(_ json: JSON) throws -> LegacyDeviceSessionLogInfo { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return FileRequestCreateType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: FileRequestCreateType.self, json: json) + case .dictionary(let dict): + let ipAddress = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["ip_address"] ?? .null) + let created = try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).deserialize(dict["created"] ?? .null) + let updated = try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).deserialize(dict["updated"] ?? .null) + let sessionInfo = try NullableSerializer(TeamLog.SessionLogInfoSerializer()).deserialize(dict["session_info"] ?? .null) + let displayName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["display_name"] ?? .null) + let isEmmManaged = try NullableSerializer(Serialization._BoolSerializer).deserialize(dict["is_emm_managed"] ?? .null) + let platform = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["platform"] ?? .null) + let macAddress = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["mac_address"] ?? .null) + let osVersion = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["os_version"] ?? .null) + let deviceType = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["device_type"] ?? .null) + let clientVersion = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["client_version"] ?? .null) + let legacyUniqId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["legacy_uniq_id"] ?? .null) + return LegacyDeviceSessionLogInfo(ipAddress: ipAddress, created: created, updated: updated, sessionInfo: sessionInfo, displayName: displayName, isEmmManaged: isEmmManaged, platform: platform, macAddress: macAddress, osVersion: osVersion, deviceType: deviceType, clientVersion: clientVersion, legacyUniqId: legacyUniqId) + default: + throw JSONSerializerError.deserializeError(type: LegacyDeviceSessionLogInfo.self, json: json) } } } - /// File request deadline - public class FileRequestDeadline: CustomStringConvertible, JSONRepresentable { - /// The deadline for this file request. Might be missing due to historical data gap. - public let deadline: Date? - /// If set, allow uploads after the deadline has passed. - public let allowLateUploads: String? - public init(deadline: Date? = nil, allowLateUploads: String? = nil) { - self.deadline = deadline - nullableValidator(stringValidator())(allowLateUploads) - self.allowLateUploads = allowLateUploads + /// Activated a hold. + public class LegalHoldsActivateAHoldDetails: CustomStringConvertible, JSONRepresentable { + /// Hold ID. + public let legalHoldId: String + /// Hold name. + public let name: String + /// Hold start date. + public let startDate: Date + /// Hold end date. + public let endDate: Date? + public init(legalHoldId: String, name: String, startDate: Date, endDate: Date? = nil) { + stringValidator()(legalHoldId) + self.legalHoldId = legalHoldId + stringValidator()(name) + self.name = name + self.startDate = startDate + self.endDate = endDate } func json() throws -> JSON { - try FileRequestDeadlineSerializer().serialize(self) + try LegalHoldsActivateAHoldDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileRequestDeadlineSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try LegalHoldsActivateAHoldDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileRequestDeadline: \(error)" + return "Failed to generate description for LegalHoldsActivateAHoldDetails: \(error)" } } } - - public class FileRequestDeadlineSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileRequestDeadline) throws -> JSON { + public class LegalHoldsActivateAHoldDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: LegalHoldsActivateAHoldDetails) throws -> JSON { let output = [ - "deadline": try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).serialize(value.deadline), - "allow_late_uploads": try NullableSerializer(Serialization._StringSerializer).serialize(value.allowLateUploads), + "legal_hold_id": try Serialization._StringSerializer.serialize(value.legalHoldId), + "name": try Serialization._StringSerializer.serialize(value.name), + "start_date": try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").serialize(value.startDate), + "end_date": try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).serialize(value.endDate), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileRequestDeadline { + public func deserialize(_ json: JSON) throws -> LegalHoldsActivateAHoldDetails { switch json { - case .dictionary(let dict): - let deadline = try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).deserialize(dict["deadline"] ?? .null) - let allowLateUploads = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["allow_late_uploads"] ?? .null) - return FileRequestDeadline(deadline: deadline, allowLateUploads: allowLateUploads) - default: - throw JSONSerializerError.deserializeError(type: FileRequestDeadline.self, json: json) + case .dictionary(let dict): + let legalHoldId = try Serialization._StringSerializer.deserialize(dict["legal_hold_id"] ?? .null) + let name = try Serialization._StringSerializer.deserialize(dict["name"] ?? .null) + let startDate = try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").deserialize(dict["start_date"] ?? .null) + let endDate = try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).deserialize(dict["end_date"] ?? .null) + return LegalHoldsActivateAHoldDetails(legalHoldId: legalHoldId, name: name, startDate: startDate, endDate: endDate) + default: + throw JSONSerializerError.deserializeError(type: LegalHoldsActivateAHoldDetails.self, json: json) } } } - /// Delete file request. - public class FileRequestDeleteDetails: CustomStringConvertible, JSONRepresentable { - /// File request id. Might be missing due to historical data gap. - public let fileRequestId: String? - /// Previous file request details. Might be missing due to historical data gap. - public let previousDetails: TeamLog.FileRequestDetails? - public init(fileRequestId: String? = nil, previousDetails: TeamLog.FileRequestDetails? = nil) { - nullableValidator(stringValidator(minLength: 1, pattern: "[-_0-9a-zA-Z]+"))(fileRequestId) - self.fileRequestId = fileRequestId - self.previousDetails = previousDetails + /// The LegalHoldsActivateAHoldType struct + public class LegalHoldsActivateAHoldType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ } func json() throws -> JSON { - try FileRequestDeleteDetailsSerializer().serialize(self) + try LegalHoldsActivateAHoldTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileRequestDeleteDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try LegalHoldsActivateAHoldTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileRequestDeleteDetails: \(error)" + return "Failed to generate description for LegalHoldsActivateAHoldType: \(error)" } } } - - public class FileRequestDeleteDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileRequestDeleteDetails) throws -> JSON { + public class LegalHoldsActivateAHoldTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: LegalHoldsActivateAHoldType) throws -> JSON { let output = [ - "file_request_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.fileRequestId), - "previous_details": try NullableSerializer(TeamLog.FileRequestDetailsSerializer()).serialize(value.previousDetails), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileRequestDeleteDetails { + public func deserialize(_ json: JSON) throws -> LegalHoldsActivateAHoldType { switch json { - case .dictionary(let dict): - let fileRequestId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["file_request_id"] ?? .null) - let previousDetails = try NullableSerializer(TeamLog.FileRequestDetailsSerializer()).deserialize(dict["previous_details"] ?? .null) - return FileRequestDeleteDetails(fileRequestId: fileRequestId, previousDetails: previousDetails) - default: - throw JSONSerializerError.deserializeError(type: FileRequestDeleteDetails.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return LegalHoldsActivateAHoldType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: LegalHoldsActivateAHoldType.self, json: json) } } } - /// The FileRequestDeleteType struct - public class FileRequestDeleteType: CustomStringConvertible, JSONRepresentable { - /// (no description) - public let description_: String - public init(description_: String) { - stringValidator()(description_) - self.description_ = description_ + /// Added members to a hold. + public class LegalHoldsAddMembersDetails: CustomStringConvertible, JSONRepresentable { + /// Hold ID. + public let legalHoldId: String + /// Hold name. + public let name: String + public init(legalHoldId: String, name: String) { + stringValidator()(legalHoldId) + self.legalHoldId = legalHoldId + stringValidator()(name) + self.name = name } func json() throws -> JSON { - try FileRequestDeleteTypeSerializer().serialize(self) + try LegalHoldsAddMembersDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileRequestDeleteTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try LegalHoldsAddMembersDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileRequestDeleteType: \(error)" + return "Failed to generate description for LegalHoldsAddMembersDetails: \(error)" } } } - - public class FileRequestDeleteTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileRequestDeleteType) throws -> JSON { + public class LegalHoldsAddMembersDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: LegalHoldsAddMembersDetails) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "legal_hold_id": try Serialization._StringSerializer.serialize(value.legalHoldId), + "name": try Serialization._StringSerializer.serialize(value.name), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileRequestDeleteType { + public func deserialize(_ json: JSON) throws -> LegalHoldsAddMembersDetails { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return FileRequestDeleteType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: FileRequestDeleteType.self, json: json) + case .dictionary(let dict): + let legalHoldId = try Serialization._StringSerializer.deserialize(dict["legal_hold_id"] ?? .null) + let name = try Serialization._StringSerializer.deserialize(dict["name"] ?? .null) + return LegalHoldsAddMembersDetails(legalHoldId: legalHoldId, name: name) + default: + throw JSONSerializerError.deserializeError(type: LegalHoldsAddMembersDetails.self, json: json) } } } - /// File request details - public class FileRequestDetails: CustomStringConvertible, JSONRepresentable { - /// Asset position in the Assets list. - public let assetIndex: UInt64 - /// File request deadline. - public let deadline: TeamLog.FileRequestDeadline? - public init(assetIndex: UInt64, deadline: TeamLog.FileRequestDeadline? = nil) { - comparableValidator()(assetIndex) - self.assetIndex = assetIndex - self.deadline = deadline + /// The LegalHoldsAddMembersType struct + public class LegalHoldsAddMembersType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ } func json() throws -> JSON { - try FileRequestDetailsSerializer().serialize(self) + try LegalHoldsAddMembersTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileRequestDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try LegalHoldsAddMembersTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileRequestDetails: \(error)" + return "Failed to generate description for LegalHoldsAddMembersType: \(error)" } } } - - public class FileRequestDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileRequestDetails) throws -> JSON { + public class LegalHoldsAddMembersTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: LegalHoldsAddMembersType) throws -> JSON { let output = [ - "asset_index": try Serialization._UInt64Serializer.serialize(value.assetIndex), - "deadline": try NullableSerializer(TeamLog.FileRequestDeadlineSerializer()).serialize(value.deadline), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileRequestDetails { + public func deserialize(_ json: JSON) throws -> LegalHoldsAddMembersType { switch json { - case .dictionary(let dict): - let assetIndex = try Serialization._UInt64Serializer.deserialize(dict["asset_index"] ?? .null) - let deadline = try NullableSerializer(TeamLog.FileRequestDeadlineSerializer()).deserialize(dict["deadline"] ?? .null) - return FileRequestDetails(assetIndex: assetIndex, deadline: deadline) - default: - throw JSONSerializerError.deserializeError(type: FileRequestDetails.self, json: json) - } - } - } - - /// Received files for file request. - public class FileRequestReceiveFileDetails: CustomStringConvertible, JSONRepresentable { - /// File request id. Might be missing due to historical data gap. - public let fileRequestId: String? - /// File request details. Might be missing due to historical data gap. - public let fileRequestDetails: TeamLog.FileRequestDetails? - /// Submitted file names. - public let submittedFileNames: [String] - /// The name as provided by the submitter. - public let submitterName: String? - /// The email as provided by the submitter. - public let submitterEmail: String? - public init( - submittedFileNames: [String], - fileRequestId: String? = nil, - fileRequestDetails: TeamLog.FileRequestDetails? = nil, - submitterName: String? = nil, - submitterEmail: String? = nil - ) { - nullableValidator(stringValidator(minLength: 1, pattern: "[-_0-9a-zA-Z]+"))(fileRequestId) - self.fileRequestId = fileRequestId - self.fileRequestDetails = fileRequestDetails - arrayValidator(itemValidator: stringValidator())(submittedFileNames) - self.submittedFileNames = submittedFileNames - nullableValidator(stringValidator())(submitterName) - self.submitterName = submitterName - nullableValidator(stringValidator(maxLength: 255))(submitterEmail) - self.submitterEmail = submitterEmail + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return LegalHoldsAddMembersType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: LegalHoldsAddMembersType.self, json: json) + } + } + } + + /// Edited details for a hold. + public class LegalHoldsChangeHoldDetailsDetails: CustomStringConvertible, JSONRepresentable { + /// Hold ID. + public let legalHoldId: String + /// Hold name. + public let name: String + /// Previous details. + public let previousValue: String + /// New details. + public let newValue: String + public init(legalHoldId: String, name: String, previousValue: String, newValue: String) { + stringValidator()(legalHoldId) + self.legalHoldId = legalHoldId + stringValidator()(name) + self.name = name + stringValidator()(previousValue) + self.previousValue = previousValue + stringValidator()(newValue) + self.newValue = newValue } func json() throws -> JSON { - try FileRequestReceiveFileDetailsSerializer().serialize(self) + try LegalHoldsChangeHoldDetailsDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileRequestReceiveFileDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try LegalHoldsChangeHoldDetailsDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileRequestReceiveFileDetails: \(error)" + return "Failed to generate description for LegalHoldsChangeHoldDetailsDetails: \(error)" } } } - - public class FileRequestReceiveFileDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileRequestReceiveFileDetails) throws -> JSON { + public class LegalHoldsChangeHoldDetailsDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: LegalHoldsChangeHoldDetailsDetails) throws -> JSON { let output = [ - "submitted_file_names": try ArraySerializer(Serialization._StringSerializer).serialize(value.submittedFileNames), - "file_request_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.fileRequestId), - "file_request_details": try NullableSerializer(TeamLog.FileRequestDetailsSerializer()).serialize(value.fileRequestDetails), - "submitter_name": try NullableSerializer(Serialization._StringSerializer).serialize(value.submitterName), - "submitter_email": try NullableSerializer(Serialization._StringSerializer).serialize(value.submitterEmail), + "legal_hold_id": try Serialization._StringSerializer.serialize(value.legalHoldId), + "name": try Serialization._StringSerializer.serialize(value.name), + "previous_value": try Serialization._StringSerializer.serialize(value.previousValue), + "new_value": try Serialization._StringSerializer.serialize(value.newValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileRequestReceiveFileDetails { + public func deserialize(_ json: JSON) throws -> LegalHoldsChangeHoldDetailsDetails { switch json { - case .dictionary(let dict): - let submittedFileNames = try ArraySerializer(Serialization._StringSerializer).deserialize(dict["submitted_file_names"] ?? .null) - let fileRequestId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["file_request_id"] ?? .null) - let fileRequestDetails = try NullableSerializer(TeamLog.FileRequestDetailsSerializer()).deserialize(dict["file_request_details"] ?? .null) - let submitterName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["submitter_name"] ?? .null) - let submitterEmail = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["submitter_email"] ?? .null) - return FileRequestReceiveFileDetails( - submittedFileNames: submittedFileNames, - fileRequestId: fileRequestId, - fileRequestDetails: fileRequestDetails, - submitterName: submitterName, - submitterEmail: submitterEmail - ) - default: - throw JSONSerializerError.deserializeError(type: FileRequestReceiveFileDetails.self, json: json) + case .dictionary(let dict): + let legalHoldId = try Serialization._StringSerializer.deserialize(dict["legal_hold_id"] ?? .null) + let name = try Serialization._StringSerializer.deserialize(dict["name"] ?? .null) + let previousValue = try Serialization._StringSerializer.deserialize(dict["previous_value"] ?? .null) + let newValue = try Serialization._StringSerializer.deserialize(dict["new_value"] ?? .null) + return LegalHoldsChangeHoldDetailsDetails(legalHoldId: legalHoldId, name: name, previousValue: previousValue, newValue: newValue) + default: + throw JSONSerializerError.deserializeError(type: LegalHoldsChangeHoldDetailsDetails.self, json: json) } } } - /// The FileRequestReceiveFileType struct - public class FileRequestReceiveFileType: CustomStringConvertible, JSONRepresentable { + /// The LegalHoldsChangeHoldDetailsType struct + public class LegalHoldsChangeHoldDetailsType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -28381,86 +42181,90 @@ public class TeamLog { } func json() throws -> JSON { - try FileRequestReceiveFileTypeSerializer().serialize(self) + try LegalHoldsChangeHoldDetailsTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileRequestReceiveFileTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try LegalHoldsChangeHoldDetailsTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileRequestReceiveFileType: \(error)" + return "Failed to generate description for LegalHoldsChangeHoldDetailsType: \(error)" } } } - - public class FileRequestReceiveFileTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileRequestReceiveFileType) throws -> JSON { + public class LegalHoldsChangeHoldDetailsTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: LegalHoldsChangeHoldDetailsType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileRequestReceiveFileType { + public func deserialize(_ json: JSON) throws -> LegalHoldsChangeHoldDetailsType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return FileRequestReceiveFileType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: FileRequestReceiveFileType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return LegalHoldsChangeHoldDetailsType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: LegalHoldsChangeHoldDetailsType.self, json: json) } } } - /// Enabled/disabled file requests. - public class FileRequestsChangePolicyDetails: CustomStringConvertible, JSONRepresentable { - /// New file requests policy. - public let newValue: TeamLog.FileRequestsPolicy - /// Previous file requests policy. Might be missing due to historical data gap. - public let previousValue: TeamLog.FileRequestsPolicy? - public init(newValue: TeamLog.FileRequestsPolicy, previousValue: TeamLog.FileRequestsPolicy? = nil) { - self.newValue = newValue + /// Renamed a hold. + public class LegalHoldsChangeHoldNameDetails: CustomStringConvertible, JSONRepresentable { + /// Hold ID. + public let legalHoldId: String + /// Previous Name. + public let previousValue: String + /// New Name. + public let newValue: String + public init(legalHoldId: String, previousValue: String, newValue: String) { + stringValidator()(legalHoldId) + self.legalHoldId = legalHoldId + stringValidator()(previousValue) self.previousValue = previousValue + stringValidator()(newValue) + self.newValue = newValue } func json() throws -> JSON { - try FileRequestsChangePolicyDetailsSerializer().serialize(self) + try LegalHoldsChangeHoldNameDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileRequestsChangePolicyDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try LegalHoldsChangeHoldNameDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileRequestsChangePolicyDetails: \(error)" + return "Failed to generate description for LegalHoldsChangeHoldNameDetails: \(error)" } } } - - public class FileRequestsChangePolicyDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileRequestsChangePolicyDetails) throws -> JSON { + public class LegalHoldsChangeHoldNameDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: LegalHoldsChangeHoldNameDetails) throws -> JSON { let output = [ - "new_value": try TeamLog.FileRequestsPolicySerializer().serialize(value.newValue), - "previous_value": try NullableSerializer(TeamLog.FileRequestsPolicySerializer()).serialize(value.previousValue), + "legal_hold_id": try Serialization._StringSerializer.serialize(value.legalHoldId), + "previous_value": try Serialization._StringSerializer.serialize(value.previousValue), + "new_value": try Serialization._StringSerializer.serialize(value.newValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileRequestsChangePolicyDetails { + public func deserialize(_ json: JSON) throws -> LegalHoldsChangeHoldNameDetails { switch json { - case .dictionary(let dict): - let newValue = try TeamLog.FileRequestsPolicySerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try NullableSerializer(TeamLog.FileRequestsPolicySerializer()).deserialize(dict["previous_value"] ?? .null) - return FileRequestsChangePolicyDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: FileRequestsChangePolicyDetails.self, json: json) + case .dictionary(let dict): + let legalHoldId = try Serialization._StringSerializer.deserialize(dict["legal_hold_id"] ?? .null) + let previousValue = try Serialization._StringSerializer.deserialize(dict["previous_value"] ?? .null) + let newValue = try Serialization._StringSerializer.deserialize(dict["new_value"] ?? .null) + return LegalHoldsChangeHoldNameDetails(legalHoldId: legalHoldId, previousValue: previousValue, newValue: newValue) + default: + throw JSONSerializerError.deserializeError(type: LegalHoldsChangeHoldNameDetails.self, json: json) } } } - /// The FileRequestsChangePolicyType struct - public class FileRequestsChangePolicyType: CustomStringConvertible, JSONRepresentable { + /// The LegalHoldsChangeHoldNameType struct + public class LegalHoldsChangeHoldNameType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -28469,72 +42273,90 @@ public class TeamLog { } func json() throws -> JSON { - try FileRequestsChangePolicyTypeSerializer().serialize(self) + try LegalHoldsChangeHoldNameTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileRequestsChangePolicyTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try LegalHoldsChangeHoldNameTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileRequestsChangePolicyType: \(error)" + return "Failed to generate description for LegalHoldsChangeHoldNameType: \(error)" } } } - - public class FileRequestsChangePolicyTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileRequestsChangePolicyType) throws -> JSON { + public class LegalHoldsChangeHoldNameTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: LegalHoldsChangeHoldNameType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileRequestsChangePolicyType { + public func deserialize(_ json: JSON) throws -> LegalHoldsChangeHoldNameType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return FileRequestsChangePolicyType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: FileRequestsChangePolicyType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return LegalHoldsChangeHoldNameType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: LegalHoldsChangeHoldNameType.self, json: json) } } } - /// Enabled file request emails for everyone. - public class FileRequestsEmailsEnabledDetails: CustomStringConvertible, JSONRepresentable { + /// Exported hold. + public class LegalHoldsExportAHoldDetails: CustomStringConvertible, JSONRepresentable { + /// Hold ID. + public let legalHoldId: String + /// Hold name. + public let name: String + /// Export name. + public let exportName: String? + public init(legalHoldId: String, name: String, exportName: String? = nil) { + stringValidator()(legalHoldId) + self.legalHoldId = legalHoldId + stringValidator()(name) + self.name = name + nullableValidator(stringValidator())(exportName) + self.exportName = exportName + } + func json() throws -> JSON { - try FileRequestsEmailsEnabledDetailsSerializer().serialize(self) + try LegalHoldsExportAHoldDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileRequestsEmailsEnabledDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try LegalHoldsExportAHoldDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileRequestsEmailsEnabledDetails: \(error)" + return "Failed to generate description for LegalHoldsExportAHoldDetails: \(error)" } } } - - public class FileRequestsEmailsEnabledDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileRequestsEmailsEnabledDetails) throws -> JSON { - let output = [String: JSON]() + public class LegalHoldsExportAHoldDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: LegalHoldsExportAHoldDetails) throws -> JSON { + let output = [ + "legal_hold_id": try Serialization._StringSerializer.serialize(value.legalHoldId), + "name": try Serialization._StringSerializer.serialize(value.name), + "export_name": try NullableSerializer(Serialization._StringSerializer).serialize(value.exportName), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileRequestsEmailsEnabledDetails { + public func deserialize(_ json: JSON) throws -> LegalHoldsExportAHoldDetails { switch json { - case .dictionary: - return FileRequestsEmailsEnabledDetails() - default: - throw JSONSerializerError.deserializeError(type: FileRequestsEmailsEnabledDetails.self, json: json) + case .dictionary(let dict): + let legalHoldId = try Serialization._StringSerializer.deserialize(dict["legal_hold_id"] ?? .null) + let name = try Serialization._StringSerializer.deserialize(dict["name"] ?? .null) + let exportName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["export_name"] ?? .null) + return LegalHoldsExportAHoldDetails(legalHoldId: legalHoldId, name: name, exportName: exportName) + default: + throw JSONSerializerError.deserializeError(type: LegalHoldsExportAHoldDetails.self, json: json) } } } - /// The FileRequestsEmailsEnabledType struct - public class FileRequestsEmailsEnabledType: CustomStringConvertible, JSONRepresentable { + /// The LegalHoldsExportAHoldType struct + public class LegalHoldsExportAHoldType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -28543,72 +42365,90 @@ public class TeamLog { } func json() throws -> JSON { - try FileRequestsEmailsEnabledTypeSerializer().serialize(self) + try LegalHoldsExportAHoldTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileRequestsEmailsEnabledTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try LegalHoldsExportAHoldTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileRequestsEmailsEnabledType: \(error)" + return "Failed to generate description for LegalHoldsExportAHoldType: \(error)" } } } - - public class FileRequestsEmailsEnabledTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileRequestsEmailsEnabledType) throws -> JSON { + public class LegalHoldsExportAHoldTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: LegalHoldsExportAHoldType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileRequestsEmailsEnabledType { + public func deserialize(_ json: JSON) throws -> LegalHoldsExportAHoldType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return FileRequestsEmailsEnabledType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: FileRequestsEmailsEnabledType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return LegalHoldsExportAHoldType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: LegalHoldsExportAHoldType.self, json: json) } } } - /// Enabled file request emails for team. - public class FileRequestsEmailsRestrictedToTeamOnlyDetails: CustomStringConvertible, JSONRepresentable { + /// Canceled export for a hold. + public class LegalHoldsExportCancelledDetails: CustomStringConvertible, JSONRepresentable { + /// Hold ID. + public let legalHoldId: String + /// Hold name. + public let name: String + /// Export name. + public let exportName: String + public init(legalHoldId: String, name: String, exportName: String) { + stringValidator()(legalHoldId) + self.legalHoldId = legalHoldId + stringValidator()(name) + self.name = name + stringValidator()(exportName) + self.exportName = exportName + } + func json() throws -> JSON { - try FileRequestsEmailsRestrictedToTeamOnlyDetailsSerializer().serialize(self) + try LegalHoldsExportCancelledDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileRequestsEmailsRestrictedToTeamOnlyDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try LegalHoldsExportCancelledDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileRequestsEmailsRestrictedToTeamOnlyDetails: \(error)" + return "Failed to generate description for LegalHoldsExportCancelledDetails: \(error)" } } } - - public class FileRequestsEmailsRestrictedToTeamOnlyDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileRequestsEmailsRestrictedToTeamOnlyDetails) throws -> JSON { - let output = [String: JSON]() + public class LegalHoldsExportCancelledDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: LegalHoldsExportCancelledDetails) throws -> JSON { + let output = [ + "legal_hold_id": try Serialization._StringSerializer.serialize(value.legalHoldId), + "name": try Serialization._StringSerializer.serialize(value.name), + "export_name": try Serialization._StringSerializer.serialize(value.exportName), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileRequestsEmailsRestrictedToTeamOnlyDetails { + public func deserialize(_ json: JSON) throws -> LegalHoldsExportCancelledDetails { switch json { - case .dictionary: - return FileRequestsEmailsRestrictedToTeamOnlyDetails() - default: - throw JSONSerializerError.deserializeError(type: FileRequestsEmailsRestrictedToTeamOnlyDetails.self, json: json) + case .dictionary(let dict): + let legalHoldId = try Serialization._StringSerializer.deserialize(dict["legal_hold_id"] ?? .null) + let name = try Serialization._StringSerializer.deserialize(dict["name"] ?? .null) + let exportName = try Serialization._StringSerializer.deserialize(dict["export_name"] ?? .null) + return LegalHoldsExportCancelledDetails(legalHoldId: legalHoldId, name: name, exportName: exportName) + default: + throw JSONSerializerError.deserializeError(type: LegalHoldsExportCancelledDetails.self, json: json) } } } - /// The FileRequestsEmailsRestrictedToTeamOnlyType struct - public class FileRequestsEmailsRestrictedToTeamOnlyType: CustomStringConvertible, JSONRepresentable { + /// The LegalHoldsExportCancelledType struct + public class LegalHoldsExportCancelledType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -28617,143 +42457,102 @@ public class TeamLog { } func json() throws -> JSON { - try FileRequestsEmailsRestrictedToTeamOnlyTypeSerializer().serialize(self) + try LegalHoldsExportCancelledTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileRequestsEmailsRestrictedToTeamOnlyTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try LegalHoldsExportCancelledTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileRequestsEmailsRestrictedToTeamOnlyType: \(error)" + return "Failed to generate description for LegalHoldsExportCancelledType: \(error)" } } } - - public class FileRequestsEmailsRestrictedToTeamOnlyTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileRequestsEmailsRestrictedToTeamOnlyType) throws -> JSON { + public class LegalHoldsExportCancelledTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: LegalHoldsExportCancelledType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileRequestsEmailsRestrictedToTeamOnlyType { - switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return FileRequestsEmailsRestrictedToTeamOnlyType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: FileRequestsEmailsRestrictedToTeamOnlyType.self, json: json) - } - } - } - - /// File requests policy - public enum FileRequestsPolicy: CustomStringConvertible, JSONRepresentable { - /// An unspecified error. - case disabled - /// An unspecified error. - case enabled - /// An unspecified error. - case other - - func json() throws -> JSON { - try FileRequestsPolicySerializer().serialize(self) - } - - public var description: String { - do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileRequestsPolicySerializer().serialize(self)))" - } catch { - return "Failed to generate description for FileRequestsPolicy: \(error)" - } - } - } - - public class FileRequestsPolicySerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileRequestsPolicy) throws -> JSON { - switch value { - case .disabled: - var d = [String: JSON]() - d[".tag"] = .str("disabled") - return .dictionary(d) - case .enabled: - var d = [String: JSON]() - d[".tag"] = .str("enabled") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) - } - } - - public func deserialize(_ json: JSON) throws -> FileRequestsPolicy { + public func deserialize(_ json: JSON) throws -> LegalHoldsExportCancelledType { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "disabled": - return FileRequestsPolicy.disabled - case "enabled": - return FileRequestsPolicy.enabled - case "other": - return FileRequestsPolicy.other + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return LegalHoldsExportCancelledType(description_: description_) default: - return FileRequestsPolicy.other - } - default: - throw JSONSerializerError.deserializeError(type: FileRequestsPolicy.self, json: json) + throw JSONSerializerError.deserializeError(type: LegalHoldsExportCancelledType.self, json: json) } } } - /// Resolved file comment. - public class FileResolveCommentDetails: CustomStringConvertible, JSONRepresentable { - /// Comment text. - public let commentText: String? - public init(commentText: String? = nil) { - nullableValidator(stringValidator())(commentText) - self.commentText = commentText + /// Downloaded export for a hold. + public class LegalHoldsExportDownloadedDetails: CustomStringConvertible, JSONRepresentable { + /// Hold ID. + public let legalHoldId: String + /// Hold name. + public let name: String + /// Export name. + public let exportName: String + /// Part. + public let part: String? + /// Filename. + public let fileName: String? + public init(legalHoldId: String, name: String, exportName: String, part: String? = nil, fileName: String? = nil) { + stringValidator()(legalHoldId) + self.legalHoldId = legalHoldId + stringValidator()(name) + self.name = name + stringValidator()(exportName) + self.exportName = exportName + nullableValidator(stringValidator())(part) + self.part = part + nullableValidator(stringValidator())(fileName) + self.fileName = fileName } func json() throws -> JSON { - try FileResolveCommentDetailsSerializer().serialize(self) + try LegalHoldsExportDownloadedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileResolveCommentDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try LegalHoldsExportDownloadedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileResolveCommentDetails: \(error)" + return "Failed to generate description for LegalHoldsExportDownloadedDetails: \(error)" } } } - - public class FileResolveCommentDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileResolveCommentDetails) throws -> JSON { + public class LegalHoldsExportDownloadedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: LegalHoldsExportDownloadedDetails) throws -> JSON { let output = [ - "comment_text": try NullableSerializer(Serialization._StringSerializer).serialize(value.commentText), + "legal_hold_id": try Serialization._StringSerializer.serialize(value.legalHoldId), + "name": try Serialization._StringSerializer.serialize(value.name), + "export_name": try Serialization._StringSerializer.serialize(value.exportName), + "part": try NullableSerializer(Serialization._StringSerializer).serialize(value.part), + "file_name": try NullableSerializer(Serialization._StringSerializer).serialize(value.fileName), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileResolveCommentDetails { + public func deserialize(_ json: JSON) throws -> LegalHoldsExportDownloadedDetails { switch json { - case .dictionary(let dict): - let commentText = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["comment_text"] ?? .null) - return FileResolveCommentDetails(commentText: commentText) - default: - throw JSONSerializerError.deserializeError(type: FileResolveCommentDetails.self, json: json) + case .dictionary(let dict): + let legalHoldId = try Serialization._StringSerializer.deserialize(dict["legal_hold_id"] ?? .null) + let name = try Serialization._StringSerializer.deserialize(dict["name"] ?? .null) + let exportName = try Serialization._StringSerializer.deserialize(dict["export_name"] ?? .null) + let part = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["part"] ?? .null) + let fileName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["file_name"] ?? .null) + return LegalHoldsExportDownloadedDetails(legalHoldId: legalHoldId, name: name, exportName: exportName, part: part, fileName: fileName) + default: + throw JSONSerializerError.deserializeError(type: LegalHoldsExportDownloadedDetails.self, json: json) } } } - /// The FileResolveCommentType struct - public class FileResolveCommentType: CustomStringConvertible, JSONRepresentable { + /// The LegalHoldsExportDownloadedType struct + public class LegalHoldsExportDownloadedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -28762,72 +42561,90 @@ public class TeamLog { } func json() throws -> JSON { - try FileResolveCommentTypeSerializer().serialize(self) + try LegalHoldsExportDownloadedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileResolveCommentTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try LegalHoldsExportDownloadedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileResolveCommentType: \(error)" + return "Failed to generate description for LegalHoldsExportDownloadedType: \(error)" } } } - - public class FileResolveCommentTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileResolveCommentType) throws -> JSON { + public class LegalHoldsExportDownloadedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: LegalHoldsExportDownloadedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileResolveCommentType { + public func deserialize(_ json: JSON) throws -> LegalHoldsExportDownloadedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return FileResolveCommentType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: FileResolveCommentType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return LegalHoldsExportDownloadedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: LegalHoldsExportDownloadedType.self, json: json) } } } - /// Restored deleted files and/or folders. - public class FileRestoreDetails: CustomStringConvertible, JSONRepresentable { + /// Removed export for a hold. + public class LegalHoldsExportRemovedDetails: CustomStringConvertible, JSONRepresentable { + /// Hold ID. + public let legalHoldId: String + /// Hold name. + public let name: String + /// Export name. + public let exportName: String + public init(legalHoldId: String, name: String, exportName: String) { + stringValidator()(legalHoldId) + self.legalHoldId = legalHoldId + stringValidator()(name) + self.name = name + stringValidator()(exportName) + self.exportName = exportName + } + func json() throws -> JSON { - try FileRestoreDetailsSerializer().serialize(self) + try LegalHoldsExportRemovedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileRestoreDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try LegalHoldsExportRemovedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileRestoreDetails: \(error)" + return "Failed to generate description for LegalHoldsExportRemovedDetails: \(error)" } } } - - public class FileRestoreDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileRestoreDetails) throws -> JSON { - let output = [String: JSON]() + public class LegalHoldsExportRemovedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: LegalHoldsExportRemovedDetails) throws -> JSON { + let output = [ + "legal_hold_id": try Serialization._StringSerializer.serialize(value.legalHoldId), + "name": try Serialization._StringSerializer.serialize(value.name), + "export_name": try Serialization._StringSerializer.serialize(value.exportName), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileRestoreDetails { + public func deserialize(_ json: JSON) throws -> LegalHoldsExportRemovedDetails { switch json { - case .dictionary: - return FileRestoreDetails() - default: - throw JSONSerializerError.deserializeError(type: FileRestoreDetails.self, json: json) + case .dictionary(let dict): + let legalHoldId = try Serialization._StringSerializer.deserialize(dict["legal_hold_id"] ?? .null) + let name = try Serialization._StringSerializer.deserialize(dict["name"] ?? .null) + let exportName = try Serialization._StringSerializer.deserialize(dict["export_name"] ?? .null) + return LegalHoldsExportRemovedDetails(legalHoldId: legalHoldId, name: name, exportName: exportName) + default: + throw JSONSerializerError.deserializeError(type: LegalHoldsExportRemovedDetails.self, json: json) } } } - /// The FileRestoreType struct - public class FileRestoreType: CustomStringConvertible, JSONRepresentable { + /// The LegalHoldsExportRemovedType struct + public class LegalHoldsExportRemovedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -28836,72 +42653,84 @@ public class TeamLog { } func json() throws -> JSON { - try FileRestoreTypeSerializer().serialize(self) + try LegalHoldsExportRemovedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileRestoreTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try LegalHoldsExportRemovedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileRestoreType: \(error)" + return "Failed to generate description for LegalHoldsExportRemovedType: \(error)" } } } - - public class FileRestoreTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileRestoreType) throws -> JSON { + public class LegalHoldsExportRemovedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: LegalHoldsExportRemovedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileRestoreType { + public func deserialize(_ json: JSON) throws -> LegalHoldsExportRemovedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return FileRestoreType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: FileRestoreType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return LegalHoldsExportRemovedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: LegalHoldsExportRemovedType.self, json: json) } } } - /// Reverted files to previous version. - public class FileRevertDetails: CustomStringConvertible, JSONRepresentable { + /// Released a hold. + public class LegalHoldsReleaseAHoldDetails: CustomStringConvertible, JSONRepresentable { + /// Hold ID. + public let legalHoldId: String + /// Hold name. + public let name: String + public init(legalHoldId: String, name: String) { + stringValidator()(legalHoldId) + self.legalHoldId = legalHoldId + stringValidator()(name) + self.name = name + } + func json() throws -> JSON { - try FileRevertDetailsSerializer().serialize(self) + try LegalHoldsReleaseAHoldDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileRevertDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try LegalHoldsReleaseAHoldDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileRevertDetails: \(error)" + return "Failed to generate description for LegalHoldsReleaseAHoldDetails: \(error)" } } } - - public class FileRevertDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileRevertDetails) throws -> JSON { - let output = [String: JSON]() + public class LegalHoldsReleaseAHoldDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: LegalHoldsReleaseAHoldDetails) throws -> JSON { + let output = [ + "legal_hold_id": try Serialization._StringSerializer.serialize(value.legalHoldId), + "name": try Serialization._StringSerializer.serialize(value.name), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileRevertDetails { + public func deserialize(_ json: JSON) throws -> LegalHoldsReleaseAHoldDetails { switch json { - case .dictionary: - return FileRevertDetails() - default: - throw JSONSerializerError.deserializeError(type: FileRevertDetails.self, json: json) + case .dictionary(let dict): + let legalHoldId = try Serialization._StringSerializer.deserialize(dict["legal_hold_id"] ?? .null) + let name = try Serialization._StringSerializer.deserialize(dict["name"] ?? .null) + return LegalHoldsReleaseAHoldDetails(legalHoldId: legalHoldId, name: name) + default: + throw JSONSerializerError.deserializeError(type: LegalHoldsReleaseAHoldDetails.self, json: json) } } } - /// The FileRevertType struct - public class FileRevertType: CustomStringConvertible, JSONRepresentable { + /// The LegalHoldsReleaseAHoldType struct + public class LegalHoldsReleaseAHoldType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -28910,72 +42739,84 @@ public class TeamLog { } func json() throws -> JSON { - try FileRevertTypeSerializer().serialize(self) + try LegalHoldsReleaseAHoldTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileRevertTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try LegalHoldsReleaseAHoldTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileRevertType: \(error)" + return "Failed to generate description for LegalHoldsReleaseAHoldType: \(error)" } } } - - public class FileRevertTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileRevertType) throws -> JSON { + public class LegalHoldsReleaseAHoldTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: LegalHoldsReleaseAHoldType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileRevertType { + public func deserialize(_ json: JSON) throws -> LegalHoldsReleaseAHoldType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return FileRevertType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: FileRevertType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return LegalHoldsReleaseAHoldType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: LegalHoldsReleaseAHoldType.self, json: json) } } } - /// Rolled back file actions. - public class FileRollbackChangesDetails: CustomStringConvertible, JSONRepresentable { + /// Removed members from a hold. + public class LegalHoldsRemoveMembersDetails: CustomStringConvertible, JSONRepresentable { + /// Hold ID. + public let legalHoldId: String + /// Hold name. + public let name: String + public init(legalHoldId: String, name: String) { + stringValidator()(legalHoldId) + self.legalHoldId = legalHoldId + stringValidator()(name) + self.name = name + } + func json() throws -> JSON { - try FileRollbackChangesDetailsSerializer().serialize(self) + try LegalHoldsRemoveMembersDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileRollbackChangesDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try LegalHoldsRemoveMembersDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileRollbackChangesDetails: \(error)" + return "Failed to generate description for LegalHoldsRemoveMembersDetails: \(error)" } } } - - public class FileRollbackChangesDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileRollbackChangesDetails) throws -> JSON { - let output = [String: JSON]() + public class LegalHoldsRemoveMembersDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: LegalHoldsRemoveMembersDetails) throws -> JSON { + let output = [ + "legal_hold_id": try Serialization._StringSerializer.serialize(value.legalHoldId), + "name": try Serialization._StringSerializer.serialize(value.name), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileRollbackChangesDetails { + public func deserialize(_ json: JSON) throws -> LegalHoldsRemoveMembersDetails { switch json { - case .dictionary: - return FileRollbackChangesDetails() - default: - throw JSONSerializerError.deserializeError(type: FileRollbackChangesDetails.self, json: json) + case .dictionary(let dict): + let legalHoldId = try Serialization._StringSerializer.deserialize(dict["legal_hold_id"] ?? .null) + let name = try Serialization._StringSerializer.deserialize(dict["name"] ?? .null) + return LegalHoldsRemoveMembersDetails(legalHoldId: legalHoldId, name: name) + default: + throw JSONSerializerError.deserializeError(type: LegalHoldsRemoveMembersDetails.self, json: json) } } } - /// The FileRollbackChangesType struct - public class FileRollbackChangesType: CustomStringConvertible, JSONRepresentable { + /// The LegalHoldsRemoveMembersType struct + public class LegalHoldsRemoveMembersType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -28984,82 +42825,84 @@ public class TeamLog { } func json() throws -> JSON { - try FileRollbackChangesTypeSerializer().serialize(self) + try LegalHoldsRemoveMembersTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileRollbackChangesTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try LegalHoldsRemoveMembersTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileRollbackChangesType: \(error)" + return "Failed to generate description for LegalHoldsRemoveMembersType: \(error)" } } } - - public class FileRollbackChangesTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileRollbackChangesType) throws -> JSON { + public class LegalHoldsRemoveMembersTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: LegalHoldsRemoveMembersType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileRollbackChangesType { + public func deserialize(_ json: JSON) throws -> LegalHoldsRemoveMembersType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return FileRollbackChangesType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: FileRollbackChangesType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return LegalHoldsRemoveMembersType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: LegalHoldsRemoveMembersType.self, json: json) } } } - /// Saved file/folder using copy reference. - public class FileSaveCopyReferenceDetails: CustomStringConvertible, JSONRepresentable { - /// Relocate action details. - public let relocateActionDetails: [TeamLog.RelocateAssetReferencesLogInfo] - public init(relocateActionDetails: [TeamLog.RelocateAssetReferencesLogInfo]) { - self.relocateActionDetails = relocateActionDetails + /// Created a summary report for a hold. + public class LegalHoldsReportAHoldDetails: CustomStringConvertible, JSONRepresentable { + /// Hold ID. + public let legalHoldId: String + /// Hold name. + public let name: String + public init(legalHoldId: String, name: String) { + stringValidator()(legalHoldId) + self.legalHoldId = legalHoldId + stringValidator()(name) + self.name = name } func json() throws -> JSON { - try FileSaveCopyReferenceDetailsSerializer().serialize(self) + try LegalHoldsReportAHoldDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileSaveCopyReferenceDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try LegalHoldsReportAHoldDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileSaveCopyReferenceDetails: \(error)" + return "Failed to generate description for LegalHoldsReportAHoldDetails: \(error)" } } } - - public class FileSaveCopyReferenceDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileSaveCopyReferenceDetails) throws -> JSON { + public class LegalHoldsReportAHoldDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: LegalHoldsReportAHoldDetails) throws -> JSON { let output = [ - "relocate_action_details": try ArraySerializer(TeamLog.RelocateAssetReferencesLogInfoSerializer()).serialize(value.relocateActionDetails), + "legal_hold_id": try Serialization._StringSerializer.serialize(value.legalHoldId), + "name": try Serialization._StringSerializer.serialize(value.name), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileSaveCopyReferenceDetails { + public func deserialize(_ json: JSON) throws -> LegalHoldsReportAHoldDetails { switch json { - case .dictionary(let dict): - let relocateActionDetails = try ArraySerializer(TeamLog.RelocateAssetReferencesLogInfoSerializer()) - .deserialize(dict["relocate_action_details"] ?? .null) - return FileSaveCopyReferenceDetails(relocateActionDetails: relocateActionDetails) - default: - throw JSONSerializerError.deserializeError(type: FileSaveCopyReferenceDetails.self, json: json) + case .dictionary(let dict): + let legalHoldId = try Serialization._StringSerializer.deserialize(dict["legal_hold_id"] ?? .null) + let name = try Serialization._StringSerializer.deserialize(dict["name"] ?? .null) + return LegalHoldsReportAHoldDetails(legalHoldId: legalHoldId, name: name) + default: + throw JSONSerializerError.deserializeError(type: LegalHoldsReportAHoldDetails.self, json: json) } } } - /// The FileSaveCopyReferenceType struct - public class FileSaveCopyReferenceType: CustomStringConvertible, JSONRepresentable { + /// The LegalHoldsReportAHoldType struct + public class LegalHoldsReportAHoldType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -29068,231 +42911,291 @@ public class TeamLog { } func json() throws -> JSON { - try FileSaveCopyReferenceTypeSerializer().serialize(self) + try LegalHoldsReportAHoldTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileSaveCopyReferenceTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try LegalHoldsReportAHoldTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileSaveCopyReferenceType: \(error)" + return "Failed to generate description for LegalHoldsReportAHoldType: \(error)" } } } - - public class FileSaveCopyReferenceTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileSaveCopyReferenceType) throws -> JSON { + public class LegalHoldsReportAHoldTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: LegalHoldsReportAHoldType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileSaveCopyReferenceType { + public func deserialize(_ json: JSON) throws -> LegalHoldsReportAHoldType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return FileSaveCopyReferenceType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: FileSaveCopyReferenceType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return LegalHoldsReportAHoldType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: LegalHoldsReportAHoldType.self, json: json) } } } - /// Transfer files added. - public class FileTransfersFileAddDetails: CustomStringConvertible, JSONRepresentable { - /// Transfer id. - public let fileTransferId: String - public init(fileTransferId: String) { - stringValidator()(fileTransferId) - self.fileTransferId = fileTransferId + /// Link Settings + public class LinkSettingsLogInfo: CustomStringConvertible, JSONRepresentable { + /// Link Name. + public let name: String + /// Email Required. + public let requireEmail: Bool + /// Downloadable. + public let downloadable: Bool + /// Expires at. + public let expireAt: Date? + /// Password required. + public let passwordRequired: Bool + /// Link URL. + public let url: String + public init(name: String, requireEmail: Bool, downloadable: Bool, passwordRequired: Bool, url: String, expireAt: Date? = nil) { + stringValidator()(name) + self.name = name + self.requireEmail = requireEmail + self.downloadable = downloadable + self.expireAt = expireAt + self.passwordRequired = passwordRequired + stringValidator()(url) + self.url = url } func json() throws -> JSON { - try FileTransfersFileAddDetailsSerializer().serialize(self) + try LinkSettingsLogInfoSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileTransfersFileAddDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try LinkSettingsLogInfoSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileTransfersFileAddDetails: \(error)" + return "Failed to generate description for LinkSettingsLogInfo: \(error)" } } } - - public class FileTransfersFileAddDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileTransfersFileAddDetails) throws -> JSON { + public class LinkSettingsLogInfoSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: LinkSettingsLogInfo) throws -> JSON { let output = [ - "file_transfer_id": try Serialization._StringSerializer.serialize(value.fileTransferId), + "name": try Serialization._StringSerializer.serialize(value.name), + "require_email": try Serialization._BoolSerializer.serialize(value.requireEmail), + "downloadable": try Serialization._BoolSerializer.serialize(value.downloadable), + "password_required": try Serialization._BoolSerializer.serialize(value.passwordRequired), + "url": try Serialization._StringSerializer.serialize(value.url), + "expire_at": try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).serialize(value.expireAt), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileTransfersFileAddDetails { + public func deserialize(_ json: JSON) throws -> LinkSettingsLogInfo { switch json { - case .dictionary(let dict): - let fileTransferId = try Serialization._StringSerializer.deserialize(dict["file_transfer_id"] ?? .null) - return FileTransfersFileAddDetails(fileTransferId: fileTransferId) - default: - throw JSONSerializerError.deserializeError(type: FileTransfersFileAddDetails.self, json: json) + case .dictionary(let dict): + let name = try Serialization._StringSerializer.deserialize(dict["name"] ?? .null) + let requireEmail = try Serialization._BoolSerializer.deserialize(dict["require_email"] ?? .null) + let downloadable = try Serialization._BoolSerializer.deserialize(dict["downloadable"] ?? .null) + let passwordRequired = try Serialization._BoolSerializer.deserialize(dict["password_required"] ?? .null) + let url = try Serialization._StringSerializer.deserialize(dict["url"] ?? .null) + let expireAt = try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).deserialize(dict["expire_at"] ?? .null) + return LinkSettingsLogInfo(name: name, requireEmail: requireEmail, downloadable: downloadable, passwordRequired: passwordRequired, url: url, expireAt: expireAt) + default: + throw JSONSerializerError.deserializeError(type: LinkSettingsLogInfo.self, json: json) } } } - /// The FileTransfersFileAddType struct - public class FileTransfersFileAddType: CustomStringConvertible, JSONRepresentable { - /// (no description) - public let description_: String - public init(description_: String) { - stringValidator()(description_) - self.description_ = description_ - } + /// The device sessions that user is linked to. + public enum LinkedDeviceLogInfo: CustomStringConvertible, JSONRepresentable { + /// desktop device session's details. + case desktopDeviceSession(TeamLog.DesktopDeviceSessionLogInfo) + /// legacy device session's details. + case legacyDeviceSession(TeamLog.LegacyDeviceSessionLogInfo) + /// mobile device session's details. + case mobileDeviceSession(TeamLog.MobileDeviceSessionLogInfo) + /// web device session's details. + case webDeviceSession(TeamLog.WebDeviceSessionLogInfo) + /// An unspecified error. + case other func json() throws -> JSON { - try FileTransfersFileAddTypeSerializer().serialize(self) + try LinkedDeviceLogInfoSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileTransfersFileAddTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try LinkedDeviceLogInfoSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileTransfersFileAddType: \(error)" + return "Failed to generate description for LinkedDeviceLogInfo: \(error)" } } } - - public class FileTransfersFileAddTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileTransfersFileAddType) throws -> JSON { - let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), - ] - return .dictionary(output) + public class LinkedDeviceLogInfoSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: LinkedDeviceLogInfo) throws -> JSON { + switch value { + case .desktopDeviceSession(let arg): + var d = try Serialization.getFields(TeamLog.DesktopDeviceSessionLogInfoSerializer().serialize(arg)) + d[".tag"] = .str("desktop_device_session") + return .dictionary(d) + case .legacyDeviceSession(let arg): + var d = try Serialization.getFields(TeamLog.LegacyDeviceSessionLogInfoSerializer().serialize(arg)) + d[".tag"] = .str("legacy_device_session") + return .dictionary(d) + case .mobileDeviceSession(let arg): + var d = try Serialization.getFields(TeamLog.MobileDeviceSessionLogInfoSerializer().serialize(arg)) + d[".tag"] = .str("mobile_device_session") + return .dictionary(d) + case .webDeviceSession(let arg): + var d = try Serialization.getFields(TeamLog.WebDeviceSessionLogInfoSerializer().serialize(arg)) + d[".tag"] = .str("web_device_session") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } } - - public func deserialize(_ json: JSON) throws -> FileTransfersFileAddType { + public func deserialize(_ json: JSON) throws -> LinkedDeviceLogInfo { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return FileTransfersFileAddType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: FileTransfersFileAddType.self, json: json) + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "desktop_device_session": + let v = try TeamLog.DesktopDeviceSessionLogInfoSerializer().deserialize(json) + return LinkedDeviceLogInfo.desktopDeviceSession(v) + case "legacy_device_session": + let v = try TeamLog.LegacyDeviceSessionLogInfoSerializer().deserialize(json) + return LinkedDeviceLogInfo.legacyDeviceSession(v) + case "mobile_device_session": + let v = try TeamLog.MobileDeviceSessionLogInfoSerializer().deserialize(json) + return LinkedDeviceLogInfo.mobileDeviceSession(v) + case "web_device_session": + let v = try TeamLog.WebDeviceSessionLogInfoSerializer().deserialize(json) + return LinkedDeviceLogInfo.webDeviceSession(v) + case "other": + return LinkedDeviceLogInfo.other + default: + return LinkedDeviceLogInfo.other + } + default: + throw JSONSerializerError.deserializeError(type: LinkedDeviceLogInfo.self, json: json) } } } - /// File transfers policy - public enum FileTransfersPolicy: CustomStringConvertible, JSONRepresentable { + /// File lock status + public enum LockStatus: CustomStringConvertible, JSONRepresentable { /// An unspecified error. - case disabled + case locked /// An unspecified error. - case enabled + case unlocked /// An unspecified error. case other func json() throws -> JSON { - try FileTransfersPolicySerializer().serialize(self) + try LockStatusSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileTransfersPolicySerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try LockStatusSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileTransfersPolicy: \(error)" + return "Failed to generate description for LockStatus: \(error)" } } } - - public class FileTransfersPolicySerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileTransfersPolicy) throws -> JSON { + public class LockStatusSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: LockStatus) throws -> JSON { switch value { - case .disabled: - var d = [String: JSON]() - d[".tag"] = .str("disabled") - return .dictionary(d) - case .enabled: - var d = [String: JSON]() - d[".tag"] = .str("enabled") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) + case .locked: + var d = [String: JSON]() + d[".tag"] = .str("locked") + return .dictionary(d) + case .unlocked: + var d = [String: JSON]() + d[".tag"] = .str("unlocked") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) } } - - public func deserialize(_ json: JSON) throws -> FileTransfersPolicy { + public func deserialize(_ json: JSON) throws -> LockStatus { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "disabled": - return FileTransfersPolicy.disabled - case "enabled": - return FileTransfersPolicy.enabled - case "other": - return FileTransfersPolicy.other + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "locked": + return LockStatus.locked + case "unlocked": + return LockStatus.unlocked + case "other": + return LockStatus.other + default: + return LockStatus.other + } default: - return FileTransfersPolicy.other - } - default: - throw JSONSerializerError.deserializeError(type: FileTransfersPolicy.self, json: json) + throw JSONSerializerError.deserializeError(type: LockStatus.self, json: json) } } } - /// Changed file transfers policy for team. - public class FileTransfersPolicyChangedDetails: CustomStringConvertible, JSONRepresentable { - /// New file transfers policy. - public let newValue: TeamLog.FileTransfersPolicy - /// Previous file transfers policy. - public let previousValue: TeamLog.FileTransfersPolicy - public init(newValue: TeamLog.FileTransfersPolicy, previousValue: TeamLog.FileTransfersPolicy) { - self.newValue = newValue - self.previousValue = previousValue + /// Failed to sign in. + public class LoginFailDetails: CustomStringConvertible, JSONRepresentable { + /// Tells if the login device is EMM managed. Might be missing due to historical data gap. + public let isEmmManaged: Bool? + /// Login method. + public let loginMethod: TeamLog.LoginMethod + /// Error details. + public let errorDetails: TeamLog.FailureDetailsLogInfo + public init(loginMethod: TeamLog.LoginMethod, errorDetails: TeamLog.FailureDetailsLogInfo, isEmmManaged: Bool? = nil) { + self.isEmmManaged = isEmmManaged + self.loginMethod = loginMethod + self.errorDetails = errorDetails } func json() throws -> JSON { - try FileTransfersPolicyChangedDetailsSerializer().serialize(self) + try LoginFailDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileTransfersPolicyChangedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try LoginFailDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileTransfersPolicyChangedDetails: \(error)" + return "Failed to generate description for LoginFailDetails: \(error)" } } } - - public class FileTransfersPolicyChangedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileTransfersPolicyChangedDetails) throws -> JSON { + public class LoginFailDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: LoginFailDetails) throws -> JSON { let output = [ - "new_value": try TeamLog.FileTransfersPolicySerializer().serialize(value.newValue), - "previous_value": try TeamLog.FileTransfersPolicySerializer().serialize(value.previousValue), + "login_method": try TeamLog.LoginMethodSerializer().serialize(value.loginMethod), + "error_details": try TeamLog.FailureDetailsLogInfoSerializer().serialize(value.errorDetails), + "is_emm_managed": try NullableSerializer(Serialization._BoolSerializer).serialize(value.isEmmManaged), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileTransfersPolicyChangedDetails { + public func deserialize(_ json: JSON) throws -> LoginFailDetails { switch json { - case .dictionary(let dict): - let newValue = try TeamLog.FileTransfersPolicySerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try TeamLog.FileTransfersPolicySerializer().deserialize(dict["previous_value"] ?? .null) - return FileTransfersPolicyChangedDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: FileTransfersPolicyChangedDetails.self, json: json) + case .dictionary(let dict): + let loginMethod = try TeamLog.LoginMethodSerializer().deserialize(dict["login_method"] ?? .null) + let errorDetails = try TeamLog.FailureDetailsLogInfoSerializer().deserialize(dict["error_details"] ?? .null) + let isEmmManaged = try NullableSerializer(Serialization._BoolSerializer).deserialize(dict["is_emm_managed"] ?? .null) + return LoginFailDetails(loginMethod: loginMethod, errorDetails: errorDetails, isEmmManaged: isEmmManaged) + default: + throw JSONSerializerError.deserializeError(type: LoginFailDetails.self, json: json) } } } - /// The FileTransfersPolicyChangedType struct - public class FileTransfersPolicyChangedType: CustomStringConvertible, JSONRepresentable { + /// The LoginFailType struct + public class LoginFailType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -29301,166 +43204,221 @@ public class TeamLog { } func json() throws -> JSON { - try FileTransfersPolicyChangedTypeSerializer().serialize(self) + try LoginFailTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileTransfersPolicyChangedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try LoginFailTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileTransfersPolicyChangedType: \(error)" + return "Failed to generate description for LoginFailType: \(error)" } } } - - public class FileTransfersPolicyChangedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileTransfersPolicyChangedType) throws -> JSON { + public class LoginFailTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: LoginFailType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileTransfersPolicyChangedType { + public func deserialize(_ json: JSON) throws -> LoginFailType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return FileTransfersPolicyChangedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: FileTransfersPolicyChangedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return LoginFailType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: LoginFailType.self, json: json) } } } - /// Deleted transfer. - public class FileTransfersTransferDeleteDetails: CustomStringConvertible, JSONRepresentable { - /// Transfer id. - public let fileTransferId: String - public init(fileTransferId: String) { - stringValidator()(fileTransferId) - self.fileTransferId = fileTransferId - } + /// The LoginMethod union + public enum LoginMethod: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case appleOauth + /// An unspecified error. + case firstPartyTokenExchange + /// An unspecified error. + case googleOauth + /// An unspecified error. + case kakaoOauth + /// An unspecified error. + case lenovoOauth + /// An unspecified error. + case passkey + /// An unspecified error. + case password + /// An unspecified error. + case qrCode + /// An unspecified error. + case saml + /// An unspecified error. + case twoFactorAuthentication + /// An unspecified error. + case webSession + /// An unspecified error. + case microsoftOauth + /// An unspecified error. + case other func json() throws -> JSON { - try FileTransfersTransferDeleteDetailsSerializer().serialize(self) + try LoginMethodSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileTransfersTransferDeleteDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try LoginMethodSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileTransfersTransferDeleteDetails: \(error)" - } - } - } - - public class FileTransfersTransferDeleteDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileTransfersTransferDeleteDetails) throws -> JSON { - let output = [ - "file_transfer_id": try Serialization._StringSerializer.serialize(value.fileTransferId), - ] - return .dictionary(output) - } - - public func deserialize(_ json: JSON) throws -> FileTransfersTransferDeleteDetails { - switch json { - case .dictionary(let dict): - let fileTransferId = try Serialization._StringSerializer.deserialize(dict["file_transfer_id"] ?? .null) - return FileTransfersTransferDeleteDetails(fileTransferId: fileTransferId) - default: - throw JSONSerializerError.deserializeError(type: FileTransfersTransferDeleteDetails.self, json: json) + return "Failed to generate description for LoginMethod: \(error)" } } } - - /// The FileTransfersTransferDeleteType struct - public class FileTransfersTransferDeleteType: CustomStringConvertible, JSONRepresentable { - /// (no description) - public let description_: String - public init(description_: String) { - stringValidator()(description_) - self.description_ = description_ - } - - func json() throws -> JSON { - try FileTransfersTransferDeleteTypeSerializer().serialize(self) - } - - public var description: String { - do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileTransfersTransferDeleteTypeSerializer().serialize(self)))" - } catch { - return "Failed to generate description for FileTransfersTransferDeleteType: \(error)" + public class LoginMethodSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: LoginMethod) throws -> JSON { + switch value { + case .appleOauth: + var d = [String: JSON]() + d[".tag"] = .str("apple_oauth") + return .dictionary(d) + case .firstPartyTokenExchange: + var d = [String: JSON]() + d[".tag"] = .str("first_party_token_exchange") + return .dictionary(d) + case .googleOauth: + var d = [String: JSON]() + d[".tag"] = .str("google_oauth") + return .dictionary(d) + case .kakaoOauth: + var d = [String: JSON]() + d[".tag"] = .str("kakao_oauth") + return .dictionary(d) + case .lenovoOauth: + var d = [String: JSON]() + d[".tag"] = .str("lenovo_oauth") + return .dictionary(d) + case .passkey: + var d = [String: JSON]() + d[".tag"] = .str("passkey") + return .dictionary(d) + case .password: + var d = [String: JSON]() + d[".tag"] = .str("password") + return .dictionary(d) + case .qrCode: + var d = [String: JSON]() + d[".tag"] = .str("qr_code") + return .dictionary(d) + case .saml: + var d = [String: JSON]() + d[".tag"] = .str("saml") + return .dictionary(d) + case .twoFactorAuthentication: + var d = [String: JSON]() + d[".tag"] = .str("two_factor_authentication") + return .dictionary(d) + case .webSession: + var d = [String: JSON]() + d[".tag"] = .str("web_session") + return .dictionary(d) + case .microsoftOauth: + var d = [String: JSON]() + d[".tag"] = .str("microsoft_oauth") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) } } - } - - public class FileTransfersTransferDeleteTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileTransfersTransferDeleteType) throws -> JSON { - let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), - ] - return .dictionary(output) - } - - public func deserialize(_ json: JSON) throws -> FileTransfersTransferDeleteType { + public func deserialize(_ json: JSON) throws -> LoginMethod { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return FileTransfersTransferDeleteType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: FileTransfersTransferDeleteType.self, json: json) + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "apple_oauth": + return LoginMethod.appleOauth + case "first_party_token_exchange": + return LoginMethod.firstPartyTokenExchange + case "google_oauth": + return LoginMethod.googleOauth + case "kakao_oauth": + return LoginMethod.kakaoOauth + case "lenovo_oauth": + return LoginMethod.lenovoOauth + case "passkey": + return LoginMethod.passkey + case "password": + return LoginMethod.password + case "qr_code": + return LoginMethod.qrCode + case "saml": + return LoginMethod.saml + case "two_factor_authentication": + return LoginMethod.twoFactorAuthentication + case "web_session": + return LoginMethod.webSession + case "microsoft_oauth": + return LoginMethod.microsoftOauth + case "other": + return LoginMethod.other + default: + return LoginMethod.other + } + default: + throw JSONSerializerError.deserializeError(type: LoginMethod.self, json: json) } } } - /// Transfer downloaded. - public class FileTransfersTransferDownloadDetails: CustomStringConvertible, JSONRepresentable { - /// Transfer id. - public let fileTransferId: String - public init(fileTransferId: String) { - stringValidator()(fileTransferId) - self.fileTransferId = fileTransferId + /// Signed in. + public class LoginSuccessDetails: CustomStringConvertible, JSONRepresentable { + /// Tells if the login device is EMM managed. Might be missing due to historical data gap. + public let isEmmManaged: Bool? + /// Login method. + public let loginMethod: TeamLog.LoginMethod + public init(loginMethod: TeamLog.LoginMethod, isEmmManaged: Bool? = nil) { + self.isEmmManaged = isEmmManaged + self.loginMethod = loginMethod } func json() throws -> JSON { - try FileTransfersTransferDownloadDetailsSerializer().serialize(self) + try LoginSuccessDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileTransfersTransferDownloadDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try LoginSuccessDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileTransfersTransferDownloadDetails: \(error)" + return "Failed to generate description for LoginSuccessDetails: \(error)" } } } - - public class FileTransfersTransferDownloadDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileTransfersTransferDownloadDetails) throws -> JSON { + public class LoginSuccessDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: LoginSuccessDetails) throws -> JSON { let output = [ - "file_transfer_id": try Serialization._StringSerializer.serialize(value.fileTransferId), + "login_method": try TeamLog.LoginMethodSerializer().serialize(value.loginMethod), + "is_emm_managed": try NullableSerializer(Serialization._BoolSerializer).serialize(value.isEmmManaged), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileTransfersTransferDownloadDetails { + public func deserialize(_ json: JSON) throws -> LoginSuccessDetails { switch json { - case .dictionary(let dict): - let fileTransferId = try Serialization._StringSerializer.deserialize(dict["file_transfer_id"] ?? .null) - return FileTransfersTransferDownloadDetails(fileTransferId: fileTransferId) - default: - throw JSONSerializerError.deserializeError(type: FileTransfersTransferDownloadDetails.self, json: json) + case .dictionary(let dict): + let loginMethod = try TeamLog.LoginMethodSerializer().deserialize(dict["login_method"] ?? .null) + let isEmmManaged = try NullableSerializer(Serialization._BoolSerializer).deserialize(dict["is_emm_managed"] ?? .null) + return LoginSuccessDetails(loginMethod: loginMethod, isEmmManaged: isEmmManaged) + default: + throw JSONSerializerError.deserializeError(type: LoginSuccessDetails.self, json: json) } } } - /// The FileTransfersTransferDownloadType struct - public class FileTransfersTransferDownloadType: CustomStringConvertible, JSONRepresentable { + /// The LoginSuccessType struct + public class LoginSuccessType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -29469,82 +43427,78 @@ public class TeamLog { } func json() throws -> JSON { - try FileTransfersTransferDownloadTypeSerializer().serialize(self) + try LoginSuccessTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileTransfersTransferDownloadTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try LoginSuccessTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileTransfersTransferDownloadType: \(error)" + return "Failed to generate description for LoginSuccessType: \(error)" } } } - - public class FileTransfersTransferDownloadTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileTransfersTransferDownloadType) throws -> JSON { + public class LoginSuccessTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: LoginSuccessType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileTransfersTransferDownloadType { + public func deserialize(_ json: JSON) throws -> LoginSuccessType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return FileTransfersTransferDownloadType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: FileTransfersTransferDownloadType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return LoginSuccessType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: LoginSuccessType.self, json: json) } } } - /// Sent transfer. - public class FileTransfersTransferSendDetails: CustomStringConvertible, JSONRepresentable { - /// Transfer id. - public let fileTransferId: String - public init(fileTransferId: String) { - stringValidator()(fileTransferId) - self.fileTransferId = fileTransferId + /// Signed out. + public class LogoutDetails: CustomStringConvertible, JSONRepresentable { + /// Login session id. + public let loginId: String? + public init(loginId: String? = nil) { + nullableValidator(stringValidator())(loginId) + self.loginId = loginId } func json() throws -> JSON { - try FileTransfersTransferSendDetailsSerializer().serialize(self) + try LogoutDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileTransfersTransferSendDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try LogoutDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileTransfersTransferSendDetails: \(error)" + return "Failed to generate description for LogoutDetails: \(error)" } } } - - public class FileTransfersTransferSendDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileTransfersTransferSendDetails) throws -> JSON { + public class LogoutDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: LogoutDetails) throws -> JSON { let output = [ - "file_transfer_id": try Serialization._StringSerializer.serialize(value.fileTransferId), + "login_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.loginId), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileTransfersTransferSendDetails { + public func deserialize(_ json: JSON) throws -> LogoutDetails { switch json { - case .dictionary(let dict): - let fileTransferId = try Serialization._StringSerializer.deserialize(dict["file_transfer_id"] ?? .null) - return FileTransfersTransferSendDetails(fileTransferId: fileTransferId) - default: - throw JSONSerializerError.deserializeError(type: FileTransfersTransferSendDetails.self, json: json) + case .dictionary(let dict): + let loginId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["login_id"] ?? .null) + return LogoutDetails(loginId: loginId) + default: + throw JSONSerializerError.deserializeError(type: LogoutDetails.self, json: json) } } } - /// The FileTransfersTransferSendType struct - public class FileTransfersTransferSendType: CustomStringConvertible, JSONRepresentable { + /// The LogoutType struct + public class LogoutType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -29553,166 +43507,193 @@ public class TeamLog { } func json() throws -> JSON { - try FileTransfersTransferSendTypeSerializer().serialize(self) + try LogoutTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileTransfersTransferSendTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try LogoutTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileTransfersTransferSendType: \(error)" + return "Failed to generate description for LogoutType: \(error)" } } } - - public class FileTransfersTransferSendTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileTransfersTransferSendType) throws -> JSON { + public class LogoutTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: LogoutType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileTransfersTransferSendType { + public func deserialize(_ json: JSON) throws -> LogoutType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return FileTransfersTransferSendType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: FileTransfersTransferSendType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return LogoutType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: LogoutType.self, json: json) } } } - /// Viewed transfer. - public class FileTransfersTransferViewDetails: CustomStringConvertible, JSONRepresentable { - /// Transfer id. - public let fileTransferId: String - public init(fileTransferId: String) { - stringValidator()(fileTransferId) - self.fileTransferId = fileTransferId + /// Malware exclusion list state + public class MalwareExclusionState: CustomStringConvertible, JSONRepresentable { + /// The number of files that are excluded from the monitoring for malware alerts. + public let excludedFileHashesCount: Int64 + /// The file path of the last exclusion operation. + public let filePathFromLastExclusion: String? + /// The file path of the last inclusion operation. + public let filePathFromLastInclusion: String? + public init(excludedFileHashesCount: Int64, filePathFromLastExclusion: String? = nil, filePathFromLastInclusion: String? = nil) { + comparableValidator()(excludedFileHashesCount) + self.excludedFileHashesCount = excludedFileHashesCount + nullableValidator(stringValidator())(filePathFromLastExclusion) + self.filePathFromLastExclusion = filePathFromLastExclusion + nullableValidator(stringValidator())(filePathFromLastInclusion) + self.filePathFromLastInclusion = filePathFromLastInclusion } func json() throws -> JSON { - try FileTransfersTransferViewDetailsSerializer().serialize(self) + try MalwareExclusionStateSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileTransfersTransferViewDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MalwareExclusionStateSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileTransfersTransferViewDetails: \(error)" + return "Failed to generate description for MalwareExclusionState: \(error)" } } } - - public class FileTransfersTransferViewDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileTransfersTransferViewDetails) throws -> JSON { + public class MalwareExclusionStateSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MalwareExclusionState) throws -> JSON { let output = [ - "file_transfer_id": try Serialization._StringSerializer.serialize(value.fileTransferId), + "excluded_file_hashes_count": try Serialization._Int64Serializer.serialize(value.excludedFileHashesCount), + "file_path_from_last_exclusion": try NullableSerializer(Serialization._StringSerializer).serialize(value.filePathFromLastExclusion), + "file_path_from_last_inclusion": try NullableSerializer(Serialization._StringSerializer).serialize(value.filePathFromLastInclusion), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileTransfersTransferViewDetails { + public func deserialize(_ json: JSON) throws -> MalwareExclusionState { switch json { - case .dictionary(let dict): - let fileTransferId = try Serialization._StringSerializer.deserialize(dict["file_transfer_id"] ?? .null) - return FileTransfersTransferViewDetails(fileTransferId: fileTransferId) - default: - throw JSONSerializerError.deserializeError(type: FileTransfersTransferViewDetails.self, json: json) + case .dictionary(let dict): + let excludedFileHashesCount = try Serialization._Int64Serializer.deserialize(dict["excluded_file_hashes_count"] ?? .null) + let filePathFromLastExclusion = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["file_path_from_last_exclusion"] ?? .null) + let filePathFromLastInclusion = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["file_path_from_last_inclusion"] ?? .null) + return MalwareExclusionState(excludedFileHashesCount: excludedFileHashesCount, filePathFromLastExclusion: filePathFromLastExclusion, filePathFromLastInclusion: filePathFromLastInclusion) + default: + throw JSONSerializerError.deserializeError(type: MalwareExclusionState.self, json: json) } } } - /// The FileTransfersTransferViewType struct - public class FileTransfersTransferViewType: CustomStringConvertible, JSONRepresentable { - /// (no description) - public let description_: String - public init(description_: String) { - stringValidator()(description_) - self.description_ = description_ - } + /// Policy for deciding who can be added to Media Hub content + public enum MediaHubAddingPeoplePolicy: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case anyone + /// An unspecified error. + case teamOnly + /// An unspecified error. + case other func json() throws -> JSON { - try FileTransfersTransferViewTypeSerializer().serialize(self) + try MediaHubAddingPeoplePolicySerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileTransfersTransferViewTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MediaHubAddingPeoplePolicySerializer().serialize(self)))" } catch { - return "Failed to generate description for FileTransfersTransferViewType: \(error)" + return "Failed to generate description for MediaHubAddingPeoplePolicy: \(error)" } } } - - public class FileTransfersTransferViewTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileTransfersTransferViewType) throws -> JSON { - let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), - ] - return .dictionary(output) - } - - public func deserialize(_ json: JSON) throws -> FileTransfersTransferViewType { - switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return FileTransfersTransferViewType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: FileTransfersTransferViewType.self, json: json) + public class MediaHubAddingPeoplePolicySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MediaHubAddingPeoplePolicy) throws -> JSON { + switch value { + case .anyone: + var d = [String: JSON]() + d[".tag"] = .str("anyone") + return .dictionary(d) + case .teamOnly: + var d = [String: JSON]() + d[".tag"] = .str("team_only") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> MediaHubAddingPeoplePolicy { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "anyone": + return MediaHubAddingPeoplePolicy.anyone + case "team_only": + return MediaHubAddingPeoplePolicy.teamOnly + case "other": + return MediaHubAddingPeoplePolicy.other + default: + return MediaHubAddingPeoplePolicy.other + } + default: + throw JSONSerializerError.deserializeError(type: MediaHubAddingPeoplePolicy.self, json: json) } } } - /// Unliked file comment. - public class FileUnlikeCommentDetails: CustomStringConvertible, JSONRepresentable { - /// Comment text. - public let commentText: String? - public init(commentText: String? = nil) { - nullableValidator(stringValidator())(commentText) - self.commentText = commentText + /// Changed the policy for adding people to Replay content. + public class MediaHubAddingPeoplePolicyChangedDetails: CustomStringConvertible, JSONRepresentable { + /// To. + public let newValue: TeamLog.MediaHubAddingPeoplePolicy + /// From. + public let previousValue: TeamLog.MediaHubAddingPeoplePolicy + public init(newValue: TeamLog.MediaHubAddingPeoplePolicy, previousValue: TeamLog.MediaHubAddingPeoplePolicy) { + self.newValue = newValue + self.previousValue = previousValue } func json() throws -> JSON { - try FileUnlikeCommentDetailsSerializer().serialize(self) + try MediaHubAddingPeoplePolicyChangedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileUnlikeCommentDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MediaHubAddingPeoplePolicyChangedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileUnlikeCommentDetails: \(error)" + return "Failed to generate description for MediaHubAddingPeoplePolicyChangedDetails: \(error)" } } } - - public class FileUnlikeCommentDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileUnlikeCommentDetails) throws -> JSON { + public class MediaHubAddingPeoplePolicyChangedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MediaHubAddingPeoplePolicyChangedDetails) throws -> JSON { let output = [ - "comment_text": try NullableSerializer(Serialization._StringSerializer).serialize(value.commentText), + "new_value": try TeamLog.MediaHubAddingPeoplePolicySerializer().serialize(value.newValue), + "previous_value": try TeamLog.MediaHubAddingPeoplePolicySerializer().serialize(value.previousValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileUnlikeCommentDetails { + public func deserialize(_ json: JSON) throws -> MediaHubAddingPeoplePolicyChangedDetails { switch json { - case .dictionary(let dict): - let commentText = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["comment_text"] ?? .null) - return FileUnlikeCommentDetails(commentText: commentText) - default: - throw JSONSerializerError.deserializeError(type: FileUnlikeCommentDetails.self, json: json) + case .dictionary(let dict): + let newValue = try TeamLog.MediaHubAddingPeoplePolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try TeamLog.MediaHubAddingPeoplePolicySerializer().deserialize(dict["previous_value"] ?? .null) + return MediaHubAddingPeoplePolicyChangedDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: MediaHubAddingPeoplePolicyChangedDetails.self, json: json) } } } - /// The FileUnlikeCommentType struct - public class FileUnlikeCommentType: CustomStringConvertible, JSONRepresentable { + /// The MediaHubAddingPeoplePolicyChangedType struct + public class MediaHubAddingPeoplePolicyChangedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -29721,231 +43702,212 @@ public class TeamLog { } func json() throws -> JSON { - try FileUnlikeCommentTypeSerializer().serialize(self) + try MediaHubAddingPeoplePolicyChangedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileUnlikeCommentTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MediaHubAddingPeoplePolicyChangedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileUnlikeCommentType: \(error)" + return "Failed to generate description for MediaHubAddingPeoplePolicyChangedType: \(error)" } } } - - public class FileUnlikeCommentTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileUnlikeCommentType) throws -> JSON { + public class MediaHubAddingPeoplePolicyChangedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MediaHubAddingPeoplePolicyChangedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileUnlikeCommentType { + public func deserialize(_ json: JSON) throws -> MediaHubAddingPeoplePolicyChangedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return FileUnlikeCommentType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: FileUnlikeCommentType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return MediaHubAddingPeoplePolicyChangedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: MediaHubAddingPeoplePolicyChangedType.self, json: json) } } } - /// Unresolved file comment. - public class FileUnresolveCommentDetails: CustomStringConvertible, JSONRepresentable { - /// Comment text. - public let commentText: String? - public init(commentText: String? = nil) { - nullableValidator(stringValidator())(commentText) - self.commentText = commentText - } + /// Policy for deciding whether Media Hub content can be downloaded + public enum MediaHubDownloadPolicy: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case disabled + /// An unspecified error. + case enabled + /// An unspecified error. + case other func json() throws -> JSON { - try FileUnresolveCommentDetailsSerializer().serialize(self) + try MediaHubDownloadPolicySerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileUnresolveCommentDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MediaHubDownloadPolicySerializer().serialize(self)))" } catch { - return "Failed to generate description for FileUnresolveCommentDetails: \(error)" + return "Failed to generate description for MediaHubDownloadPolicy: \(error)" } } } - - public class FileUnresolveCommentDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileUnresolveCommentDetails) throws -> JSON { - let output = [ - "comment_text": try NullableSerializer(Serialization._StringSerializer).serialize(value.commentText), - ] - return .dictionary(output) - } - - public func deserialize(_ json: JSON) throws -> FileUnresolveCommentDetails { - switch json { - case .dictionary(let dict): - let commentText = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["comment_text"] ?? .null) - return FileUnresolveCommentDetails(commentText: commentText) - default: - throw JSONSerializerError.deserializeError(type: FileUnresolveCommentDetails.self, json: json) + public class MediaHubDownloadPolicySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MediaHubDownloadPolicy) throws -> JSON { + switch value { + case .disabled: + var d = [String: JSON]() + d[".tag"] = .str("disabled") + return .dictionary(d) + case .enabled: + var d = [String: JSON]() + d[".tag"] = .str("enabled") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> MediaHubDownloadPolicy { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "disabled": + return MediaHubDownloadPolicy.disabled + case "enabled": + return MediaHubDownloadPolicy.enabled + case "other": + return MediaHubDownloadPolicy.other + default: + return MediaHubDownloadPolicy.other + } + default: + throw JSONSerializerError.deserializeError(type: MediaHubDownloadPolicy.self, json: json) } } } - /// The FileUnresolveCommentType struct - public class FileUnresolveCommentType: CustomStringConvertible, JSONRepresentable { - /// (no description) - public let description_: String - public init(description_: String) { - stringValidator()(description_) - self.description_ = description_ + /// Changed the policy for downloading Replay content. + public class MediaHubDownloadPolicyChangedDetails: CustomStringConvertible, JSONRepresentable { + /// To. + public let newValue: TeamLog.MediaHubDownloadPolicy + /// From. + public let previousValue: TeamLog.MediaHubDownloadPolicy + public init(newValue: TeamLog.MediaHubDownloadPolicy, previousValue: TeamLog.MediaHubDownloadPolicy) { + self.newValue = newValue + self.previousValue = previousValue } func json() throws -> JSON { - try FileUnresolveCommentTypeSerializer().serialize(self) + try MediaHubDownloadPolicyChangedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FileUnresolveCommentTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MediaHubDownloadPolicyChangedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for FileUnresolveCommentType: \(error)" + return "Failed to generate description for MediaHubDownloadPolicyChangedDetails: \(error)" } } } - - public class FileUnresolveCommentTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FileUnresolveCommentType) throws -> JSON { + public class MediaHubDownloadPolicyChangedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MediaHubDownloadPolicyChangedDetails) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "new_value": try TeamLog.MediaHubDownloadPolicySerializer().serialize(value.newValue), + "previous_value": try TeamLog.MediaHubDownloadPolicySerializer().serialize(value.previousValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FileUnresolveCommentType { + public func deserialize(_ json: JSON) throws -> MediaHubDownloadPolicyChangedDetails { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return FileUnresolveCommentType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: FileUnresolveCommentType.self, json: json) + case .dictionary(let dict): + let newValue = try TeamLog.MediaHubDownloadPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try TeamLog.MediaHubDownloadPolicySerializer().deserialize(dict["previous_value"] ?? .null) + return MediaHubDownloadPolicyChangedDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: MediaHubDownloadPolicyChangedDetails.self, json: json) } } } - /// Policy for deciding whether applying link restrictions on all team owned folders - public enum FolderLinkRestrictionPolicy: CustomStringConvertible, JSONRepresentable { - /// An unspecified error. - case disabled - /// An unspecified error. - case enabled - /// An unspecified error. - case other + /// The MediaHubDownloadPolicyChangedType struct + public class MediaHubDownloadPolicyChangedType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } func json() throws -> JSON { - try FolderLinkRestrictionPolicySerializer().serialize(self) + try MediaHubDownloadPolicyChangedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FolderLinkRestrictionPolicySerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MediaHubDownloadPolicyChangedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for FolderLinkRestrictionPolicy: \(error)" + return "Failed to generate description for MediaHubDownloadPolicyChangedType: \(error)" } } } - - public class FolderLinkRestrictionPolicySerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FolderLinkRestrictionPolicy) throws -> JSON { - switch value { - case .disabled: - var d = [String: JSON]() - d[".tag"] = .str("disabled") - return .dictionary(d) - case .enabled: - var d = [String: JSON]() - d[".tag"] = .str("enabled") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) - } + public class MediaHubDownloadPolicyChangedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MediaHubDownloadPolicyChangedType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FolderLinkRestrictionPolicy { + public func deserialize(_ json: JSON) throws -> MediaHubDownloadPolicyChangedType { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "disabled": - return FolderLinkRestrictionPolicy.disabled - case "enabled": - return FolderLinkRestrictionPolicy.enabled - case "other": - return FolderLinkRestrictionPolicy.other + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return MediaHubDownloadPolicyChangedType(description_: description_) default: - return FolderLinkRestrictionPolicy.other - } - default: - throw JSONSerializerError.deserializeError(type: FolderLinkRestrictionPolicy.self, json: json) + throw JSONSerializerError.deserializeError(type: MediaHubDownloadPolicyChangedType.self, json: json) } } } - /// Changed folder link restrictions policy for team. - public class FolderLinkRestrictionPolicyChangedDetails: CustomStringConvertible, JSONRepresentable { - /// To. - public let newValue: TeamLog.FolderLinkRestrictionPolicy - /// From. - public let previousValue: TeamLog.FolderLinkRestrictionPolicy - public init(newValue: TeamLog.FolderLinkRestrictionPolicy, previousValue: TeamLog.FolderLinkRestrictionPolicy) { - self.newValue = newValue - self.previousValue = previousValue - } + /// Downloaded files in Replay. + public class MediaHubFileDownloadedDetails: CustomStringConvertible, JSONRepresentable { func json() throws -> JSON { - try FolderLinkRestrictionPolicyChangedDetailsSerializer().serialize(self) + try MediaHubFileDownloadedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FolderLinkRestrictionPolicyChangedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MediaHubFileDownloadedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for FolderLinkRestrictionPolicyChangedDetails: \(error)" + return "Failed to generate description for MediaHubFileDownloadedDetails: \(error)" } } } - - public class FolderLinkRestrictionPolicyChangedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FolderLinkRestrictionPolicyChangedDetails) throws -> JSON { - let output = [ - "new_value": try TeamLog.FolderLinkRestrictionPolicySerializer().serialize(value.newValue), - "previous_value": try TeamLog.FolderLinkRestrictionPolicySerializer().serialize(value.previousValue), - ] + public class MediaHubFileDownloadedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MediaHubFileDownloadedDetails) throws -> JSON { + let output = [String: JSON]() return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FolderLinkRestrictionPolicyChangedDetails { + public func deserialize(_ json: JSON) throws -> MediaHubFileDownloadedDetails { switch json { - case .dictionary(let dict): - let newValue = try TeamLog.FolderLinkRestrictionPolicySerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try TeamLog.FolderLinkRestrictionPolicySerializer().deserialize(dict["previous_value"] ?? .null) - return FolderLinkRestrictionPolicyChangedDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: FolderLinkRestrictionPolicyChangedDetails.self, json: json) + case .dictionary(_): + return MediaHubFileDownloadedDetails() + default: + throw JSONSerializerError.deserializeError(type: MediaHubFileDownloadedDetails.self, json: json) } } } - /// The FolderLinkRestrictionPolicyChangedType struct - public class FolderLinkRestrictionPolicyChangedType: CustomStringConvertible, JSONRepresentable { + /// The MediaHubFileDownloadedType struct + public class MediaHubFileDownloadedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -29954,129 +43916,149 @@ public class TeamLog { } func json() throws -> JSON { - try FolderLinkRestrictionPolicyChangedTypeSerializer().serialize(self) + try MediaHubFileDownloadedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FolderLinkRestrictionPolicyChangedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MediaHubFileDownloadedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for FolderLinkRestrictionPolicyChangedType: \(error)" + return "Failed to generate description for MediaHubFileDownloadedType: \(error)" } } } - - public class FolderLinkRestrictionPolicyChangedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FolderLinkRestrictionPolicyChangedType) throws -> JSON { + public class MediaHubFileDownloadedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MediaHubFileDownloadedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FolderLinkRestrictionPolicyChangedType { + public func deserialize(_ json: JSON) throws -> MediaHubFileDownloadedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return FolderLinkRestrictionPolicyChangedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: FolderLinkRestrictionPolicyChangedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return MediaHubFileDownloadedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: MediaHubFileDownloadedType.self, json: json) } } } - /// Folder's logged information. - public class FolderLogInfo: TeamLog.FileOrFolderLogInfo { - /// Number of files within the folder. - public let fileCount: UInt64? - public init(path: TeamLog.PathLogInfo, displayName: String? = nil, fileId: String? = nil, fileSize: UInt64? = nil, fileCount: UInt64? = nil) { - nullableValidator(comparableValidator())(fileCount) - self.fileCount = fileCount - super.init(path: path, displayName: displayName, fileId: fileId, fileSize: fileSize) + /// Policy for deciding who Media Hub content can be shared with through links + public enum MediaHubLinkSharingPolicy: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case noOne + /// An unspecified error. + case public_ + /// An unspecified error. + case teamOnly + /// An unspecified error. + case other + + func json() throws -> JSON { + try MediaHubLinkSharingPolicySerializer().serialize(self) } - public override var description: String { + public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FolderLogInfoSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MediaHubLinkSharingPolicySerializer().serialize(self)))" } catch { - return "Failed to generate description for FolderLogInfo: \(error)" + return "Failed to generate description for MediaHubLinkSharingPolicy: \(error)" } } } - - public class FolderLogInfoSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FolderLogInfo) throws -> JSON { - let output = [ - "path": try TeamLog.PathLogInfoSerializer().serialize(value.path), - "display_name": try NullableSerializer(Serialization._StringSerializer).serialize(value.displayName), - "file_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.fileId), - "file_size": try NullableSerializer(Serialization._UInt64Serializer).serialize(value.fileSize), - "file_count": try NullableSerializer(Serialization._UInt64Serializer).serialize(value.fileCount), - ] - return .dictionary(output) - } - - public func deserialize(_ json: JSON) throws -> FolderLogInfo { - switch json { - case .dictionary(let dict): - let path = try TeamLog.PathLogInfoSerializer().deserialize(dict["path"] ?? .null) - let displayName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["display_name"] ?? .null) - let fileId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["file_id"] ?? .null) - let fileSize = try NullableSerializer(Serialization._UInt64Serializer).deserialize(dict["file_size"] ?? .null) - let fileCount = try NullableSerializer(Serialization._UInt64Serializer).deserialize(dict["file_count"] ?? .null) - return FolderLogInfo(path: path, displayName: displayName, fileId: fileId, fileSize: fileSize, fileCount: fileCount) - default: - throw JSONSerializerError.deserializeError(type: FolderLogInfo.self, json: json) + public class MediaHubLinkSharingPolicySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MediaHubLinkSharingPolicy) throws -> JSON { + switch value { + case .noOne: + var d = [String: JSON]() + d[".tag"] = .str("no_one") + return .dictionary(d) + case .public_: + var d = [String: JSON]() + d[".tag"] = .str("public") + return .dictionary(d) + case .teamOnly: + var d = [String: JSON]() + d[".tag"] = .str("team_only") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> MediaHubLinkSharingPolicy { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "no_one": + return MediaHubLinkSharingPolicy.noOne + case "public": + return MediaHubLinkSharingPolicy.public_ + case "team_only": + return MediaHubLinkSharingPolicy.teamOnly + case "other": + return MediaHubLinkSharingPolicy.other + default: + return MediaHubLinkSharingPolicy.other + } + default: + throw JSONSerializerError.deserializeError(type: MediaHubLinkSharingPolicy.self, json: json) } } } - /// Updated folder overview. - public class FolderOverviewDescriptionChangedDetails: CustomStringConvertible, JSONRepresentable { - /// Folder Overview location position in the Assets list. - public let folderOverviewLocationAsset: UInt64 - public init(folderOverviewLocationAsset: UInt64) { - comparableValidator()(folderOverviewLocationAsset) - self.folderOverviewLocationAsset = folderOverviewLocationAsset + /// Changed the policy for sharing Replay content. + public class MediaHubLinkSharingPolicyChangedDetails: CustomStringConvertible, JSONRepresentable { + /// To. + public let newValue: TeamLog.MediaHubLinkSharingPolicy + /// From. + public let previousValue: TeamLog.MediaHubLinkSharingPolicy + public init(newValue: TeamLog.MediaHubLinkSharingPolicy, previousValue: TeamLog.MediaHubLinkSharingPolicy) { + self.newValue = newValue + self.previousValue = previousValue } func json() throws -> JSON { - try FolderOverviewDescriptionChangedDetailsSerializer().serialize(self) + try MediaHubLinkSharingPolicyChangedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FolderOverviewDescriptionChangedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MediaHubLinkSharingPolicyChangedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for FolderOverviewDescriptionChangedDetails: \(error)" + return "Failed to generate description for MediaHubLinkSharingPolicyChangedDetails: \(error)" } } } - - public class FolderOverviewDescriptionChangedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FolderOverviewDescriptionChangedDetails) throws -> JSON { + public class MediaHubLinkSharingPolicyChangedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MediaHubLinkSharingPolicyChangedDetails) throws -> JSON { let output = [ - "folder_overview_location_asset": try Serialization._UInt64Serializer.serialize(value.folderOverviewLocationAsset), + "new_value": try TeamLog.MediaHubLinkSharingPolicySerializer().serialize(value.newValue), + "previous_value": try TeamLog.MediaHubLinkSharingPolicySerializer().serialize(value.previousValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FolderOverviewDescriptionChangedDetails { + public func deserialize(_ json: JSON) throws -> MediaHubLinkSharingPolicyChangedDetails { switch json { - case .dictionary(let dict): - let folderOverviewLocationAsset = try Serialization._UInt64Serializer.deserialize(dict["folder_overview_location_asset"] ?? .null) - return FolderOverviewDescriptionChangedDetails(folderOverviewLocationAsset: folderOverviewLocationAsset) - default: - throw JSONSerializerError.deserializeError(type: FolderOverviewDescriptionChangedDetails.self, json: json) + case .dictionary(let dict): + let newValue = try TeamLog.MediaHubLinkSharingPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try TeamLog.MediaHubLinkSharingPolicySerializer().deserialize(dict["previous_value"] ?? .null) + return MediaHubLinkSharingPolicyChangedDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: MediaHubLinkSharingPolicyChangedDetails.self, json: json) } } } - /// The FolderOverviewDescriptionChangedType struct - public class FolderOverviewDescriptionChangedType: CustomStringConvertible, JSONRepresentable { + /// The MediaHubLinkSharingPolicyChangedType struct + public class MediaHubLinkSharingPolicyChangedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -30085,184 +44067,190 @@ public class TeamLog { } func json() throws -> JSON { - try FolderOverviewDescriptionChangedTypeSerializer().serialize(self) + try MediaHubLinkSharingPolicyChangedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FolderOverviewDescriptionChangedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MediaHubLinkSharingPolicyChangedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for FolderOverviewDescriptionChangedType: \(error)" + return "Failed to generate description for MediaHubLinkSharingPolicyChangedType: \(error)" } } } - - public class FolderOverviewDescriptionChangedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FolderOverviewDescriptionChangedType) throws -> JSON { + public class MediaHubLinkSharingPolicyChangedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MediaHubLinkSharingPolicyChangedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FolderOverviewDescriptionChangedType { + public func deserialize(_ json: JSON) throws -> MediaHubLinkSharingPolicyChangedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return FolderOverviewDescriptionChangedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: FolderOverviewDescriptionChangedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return MediaHubLinkSharingPolicyChangedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: MediaHubLinkSharingPolicyChangedType.self, json: json) } } } - /// Pinned item to folder overview. - public class FolderOverviewItemPinnedDetails: CustomStringConvertible, JSONRepresentable { - /// Folder Overview location position in the Assets list. - public let folderOverviewLocationAsset: UInt64 - /// Pinned items positions in the Assets list. - public let pinnedItemsAssetIndices: [UInt64] - public init(folderOverviewLocationAsset: UInt64, pinnedItemsAssetIndices: [UInt64]) { - comparableValidator()(folderOverviewLocationAsset) - self.folderOverviewLocationAsset = folderOverviewLocationAsset - arrayValidator(itemValidator: comparableValidator())(pinnedItemsAssetIndices) - self.pinnedItemsAssetIndices = pinnedItemsAssetIndices + /// Replay project + public class MediaHubProjectLogInfo: CustomStringConvertible, JSONRepresentable { + /// Replay project name. + public let projectName: String + /// Replay project ID. + public let projectId: String? + public init(projectName: String, projectId: String? = nil) { + stringValidator()(projectName) + self.projectName = projectName + nullableValidator(stringValidator())(projectId) + self.projectId = projectId } func json() throws -> JSON { - try FolderOverviewItemPinnedDetailsSerializer().serialize(self) + try MediaHubProjectLogInfoSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FolderOverviewItemPinnedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MediaHubProjectLogInfoSerializer().serialize(self)))" } catch { - return "Failed to generate description for FolderOverviewItemPinnedDetails: \(error)" + return "Failed to generate description for MediaHubProjectLogInfo: \(error)" } } } - - public class FolderOverviewItemPinnedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FolderOverviewItemPinnedDetails) throws -> JSON { + public class MediaHubProjectLogInfoSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MediaHubProjectLogInfo) throws -> JSON { let output = [ - "folder_overview_location_asset": try Serialization._UInt64Serializer.serialize(value.folderOverviewLocationAsset), - "pinned_items_asset_indices": try ArraySerializer(Serialization._UInt64Serializer).serialize(value.pinnedItemsAssetIndices), + "project_name": try Serialization._StringSerializer.serialize(value.projectName), + "project_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.projectId), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FolderOverviewItemPinnedDetails { + public func deserialize(_ json: JSON) throws -> MediaHubProjectLogInfo { switch json { - case .dictionary(let dict): - let folderOverviewLocationAsset = try Serialization._UInt64Serializer.deserialize(dict["folder_overview_location_asset"] ?? .null) - let pinnedItemsAssetIndices = try ArraySerializer(Serialization._UInt64Serializer).deserialize(dict["pinned_items_asset_indices"] ?? .null) - return FolderOverviewItemPinnedDetails( - folderOverviewLocationAsset: folderOverviewLocationAsset, - pinnedItemsAssetIndices: pinnedItemsAssetIndices - ) - default: - throw JSONSerializerError.deserializeError(type: FolderOverviewItemPinnedDetails.self, json: json) + case .dictionary(let dict): + let projectName = try Serialization._StringSerializer.deserialize(dict["project_name"] ?? .null) + let projectId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["project_id"] ?? .null) + return MediaHubProjectLogInfo(projectName: projectName, projectId: projectId) + default: + throw JSONSerializerError.deserializeError(type: MediaHubProjectLogInfo.self, json: json) } } } - /// The FolderOverviewItemPinnedType struct - public class FolderOverviewItemPinnedType: CustomStringConvertible, JSONRepresentable { - /// (no description) - public let description_: String - public init(description_: String) { - stringValidator()(description_) - self.description_ = description_ - } + /// Media Hub project role + public enum MediaHubProjectRole: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case editor + /// An unspecified error. + case owner + /// An unspecified error. + case reviewer + /// An unspecified error. + case other func json() throws -> JSON { - try FolderOverviewItemPinnedTypeSerializer().serialize(self) + try MediaHubProjectRoleSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FolderOverviewItemPinnedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MediaHubProjectRoleSerializer().serialize(self)))" } catch { - return "Failed to generate description for FolderOverviewItemPinnedType: \(error)" + return "Failed to generate description for MediaHubProjectRole: \(error)" } } } - - public class FolderOverviewItemPinnedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FolderOverviewItemPinnedType) throws -> JSON { - let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), - ] - return .dictionary(output) - } - - public func deserialize(_ json: JSON) throws -> FolderOverviewItemPinnedType { - switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return FolderOverviewItemPinnedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: FolderOverviewItemPinnedType.self, json: json) + public class MediaHubProjectRoleSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MediaHubProjectRole) throws -> JSON { + switch value { + case .editor: + var d = [String: JSON]() + d[".tag"] = .str("editor") + return .dictionary(d) + case .owner: + var d = [String: JSON]() + d[".tag"] = .str("owner") + return .dictionary(d) + case .reviewer: + var d = [String: JSON]() + d[".tag"] = .str("reviewer") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> MediaHubProjectRole { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "editor": + return MediaHubProjectRole.editor + case "owner": + return MediaHubProjectRole.owner + case "reviewer": + return MediaHubProjectRole.reviewer + case "other": + return MediaHubProjectRole.other + default: + return MediaHubProjectRole.other + } + default: + throw JSONSerializerError.deserializeError(type: MediaHubProjectRole.self, json: json) } } } - /// Unpinned item from folder overview. - public class FolderOverviewItemUnpinnedDetails: CustomStringConvertible, JSONRepresentable { - /// Folder Overview location position in the Assets list. - public let folderOverviewLocationAsset: UInt64 - /// Pinned items positions in the Assets list. - public let pinnedItemsAssetIndices: [UInt64] - public init(folderOverviewLocationAsset: UInt64, pinnedItemsAssetIndices: [UInt64]) { - comparableValidator()(folderOverviewLocationAsset) - self.folderOverviewLocationAsset = folderOverviewLocationAsset - arrayValidator(itemValidator: comparableValidator())(pinnedItemsAssetIndices) - self.pinnedItemsAssetIndices = pinnedItemsAssetIndices + /// Added member to Replay project. + public class MediaHubProjectTeamAddDetails: CustomStringConvertible, JSONRepresentable { + /// Replay project. + public let project: TeamLog.MediaHubProjectLogInfo? + public init(project: TeamLog.MediaHubProjectLogInfo? = nil) { + self.project = project } func json() throws -> JSON { - try FolderOverviewItemUnpinnedDetailsSerializer().serialize(self) + try MediaHubProjectTeamAddDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FolderOverviewItemUnpinnedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MediaHubProjectTeamAddDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for FolderOverviewItemUnpinnedDetails: \(error)" + return "Failed to generate description for MediaHubProjectTeamAddDetails: \(error)" } } } - - public class FolderOverviewItemUnpinnedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FolderOverviewItemUnpinnedDetails) throws -> JSON { + public class MediaHubProjectTeamAddDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MediaHubProjectTeamAddDetails) throws -> JSON { let output = [ - "folder_overview_location_asset": try Serialization._UInt64Serializer.serialize(value.folderOverviewLocationAsset), - "pinned_items_asset_indices": try ArraySerializer(Serialization._UInt64Serializer).serialize(value.pinnedItemsAssetIndices), + "project": try NullableSerializer(TeamLog.MediaHubProjectLogInfoSerializer()).serialize(value.project), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FolderOverviewItemUnpinnedDetails { + public func deserialize(_ json: JSON) throws -> MediaHubProjectTeamAddDetails { switch json { - case .dictionary(let dict): - let folderOverviewLocationAsset = try Serialization._UInt64Serializer.deserialize(dict["folder_overview_location_asset"] ?? .null) - let pinnedItemsAssetIndices = try ArraySerializer(Serialization._UInt64Serializer).deserialize(dict["pinned_items_asset_indices"] ?? .null) - return FolderOverviewItemUnpinnedDetails( - folderOverviewLocationAsset: folderOverviewLocationAsset, - pinnedItemsAssetIndices: pinnedItemsAssetIndices - ) - default: - throw JSONSerializerError.deserializeError(type: FolderOverviewItemUnpinnedDetails.self, json: json) + case .dictionary(let dict): + let project = try NullableSerializer(TeamLog.MediaHubProjectLogInfoSerializer()).deserialize(dict["project"] ?? .null) + return MediaHubProjectTeamAddDetails(project: project) + default: + throw JSONSerializerError.deserializeError(type: MediaHubProjectTeamAddDetails.self, json: json) } } } - /// The FolderOverviewItemUnpinnedType struct - public class FolderOverviewItemUnpinnedType: CustomStringConvertible, JSONRepresentable { + /// The MediaHubProjectTeamAddType struct + public class MediaHubProjectTeamAddType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -30271,453 +44259,416 @@ public class TeamLog { } func json() throws -> JSON { - try FolderOverviewItemUnpinnedTypeSerializer().serialize(self) + try MediaHubProjectTeamAddTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try FolderOverviewItemUnpinnedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MediaHubProjectTeamAddTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for FolderOverviewItemUnpinnedType: \(error)" + return "Failed to generate description for MediaHubProjectTeamAddType: \(error)" } } } - - public class FolderOverviewItemUnpinnedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: FolderOverviewItemUnpinnedType) throws -> JSON { + public class MediaHubProjectTeamAddTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MediaHubProjectTeamAddType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> FolderOverviewItemUnpinnedType { + public func deserialize(_ json: JSON) throws -> MediaHubProjectTeamAddType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return FolderOverviewItemUnpinnedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: FolderOverviewItemUnpinnedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return MediaHubProjectTeamAddType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: MediaHubProjectTeamAddType.self, json: json) } } } - /// Geographic location details. - public class GeoLocationLogInfo: CustomStringConvertible, JSONRepresentable { - /// City name. - public let city: String? - /// Region name. - public let region: String? - /// Country code. - public let country: String? - /// IP address. - public let ipAddress: String - public init(ipAddress: String, city: String? = nil, region: String? = nil, country: String? = nil) { - nullableValidator(stringValidator())(city) - self.city = city - nullableValidator(stringValidator())(region) - self.region = region - nullableValidator(stringValidator())(country) - self.country = country - stringValidator()(ipAddress) - self.ipAddress = ipAddress + /// Removed member from Replay project. + public class MediaHubProjectTeamDeleteDetails: CustomStringConvertible, JSONRepresentable { + /// Replay project. + public let project: TeamLog.MediaHubProjectLogInfo? + public init(project: TeamLog.MediaHubProjectLogInfo? = nil) { + self.project = project } func json() throws -> JSON { - try GeoLocationLogInfoSerializer().serialize(self) + try MediaHubProjectTeamDeleteDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GeoLocationLogInfoSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MediaHubProjectTeamDeleteDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for GeoLocationLogInfo: \(error)" + return "Failed to generate description for MediaHubProjectTeamDeleteDetails: \(error)" } } } - - public class GeoLocationLogInfoSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GeoLocationLogInfo) throws -> JSON { + public class MediaHubProjectTeamDeleteDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MediaHubProjectTeamDeleteDetails) throws -> JSON { let output = [ - "ip_address": try Serialization._StringSerializer.serialize(value.ipAddress), - "city": try NullableSerializer(Serialization._StringSerializer).serialize(value.city), - "region": try NullableSerializer(Serialization._StringSerializer).serialize(value.region), - "country": try NullableSerializer(Serialization._StringSerializer).serialize(value.country), + "project": try NullableSerializer(TeamLog.MediaHubProjectLogInfoSerializer()).serialize(value.project), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GeoLocationLogInfo { + public func deserialize(_ json: JSON) throws -> MediaHubProjectTeamDeleteDetails { switch json { - case .dictionary(let dict): - let ipAddress = try Serialization._StringSerializer.deserialize(dict["ip_address"] ?? .null) - let city = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["city"] ?? .null) - let region = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["region"] ?? .null) - let country = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["country"] ?? .null) - return GeoLocationLogInfo(ipAddress: ipAddress, city: city, region: region, country: country) - default: - throw JSONSerializerError.deserializeError(type: GeoLocationLogInfo.self, json: json) + case .dictionary(let dict): + let project = try NullableSerializer(TeamLog.MediaHubProjectLogInfoSerializer()).deserialize(dict["project"] ?? .null) + return MediaHubProjectTeamDeleteDetails(project: project) + default: + throw JSONSerializerError.deserializeError(type: MediaHubProjectTeamDeleteDetails.self, json: json) } } } - /// The GetTeamEventsArg struct - public class GetTeamEventsArg: CustomStringConvertible, JSONRepresentable { - /// The maximal number of results to return per call. Note that some calls may not return limit number of - /// events, and may even return no events, even with `has_more` set to true. In this case, callers - /// should fetch again using getEventsContinue. - public let limit: UInt32 - /// Filter the events by account ID. Return only events with this account_id as either Actor, Context, or - /// Participants. - public let accountId: String? - /// Filter by time range. - public let time: TeamCommon.TimeRange? - /// Filter the returned events to a single category. Note that category shouldn't be provided together with - /// event_type. - public let category: TeamLog.EventCategory? - /// Filter the returned events to a single event type. Note that event_type shouldn't be provided together with - /// category. - public let eventType: TeamLog.EventTypeArg? - public init( - limit: UInt32 = 1_000, - accountId: String? = nil, - time: TeamCommon.TimeRange? = nil, - category: TeamLog.EventCategory? = nil, - eventType: TeamLog.EventTypeArg? = nil - ) { - comparableValidator(minValue: 1, maxValue: 1_000)(limit) - self.limit = limit - nullableValidator(stringValidator(minLength: 40, maxLength: 40))(accountId) - self.accountId = accountId - self.time = time - self.category = category - self.eventType = eventType + /// The MediaHubProjectTeamDeleteType struct + public class MediaHubProjectTeamDeleteType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ } func json() throws -> JSON { - try GetTeamEventsArgSerializer().serialize(self) + try MediaHubProjectTeamDeleteTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GetTeamEventsArgSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MediaHubProjectTeamDeleteTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for GetTeamEventsArg: \(error)" + return "Failed to generate description for MediaHubProjectTeamDeleteType: \(error)" } } } - - public class GetTeamEventsArgSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GetTeamEventsArg) throws -> JSON { + public class MediaHubProjectTeamDeleteTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MediaHubProjectTeamDeleteType) throws -> JSON { let output = [ - "limit": try Serialization._UInt32Serializer.serialize(value.limit), - "account_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.accountId), - "time": try NullableSerializer(TeamCommon.TimeRangeSerializer()).serialize(value.time), - "category": try NullableSerializer(TeamLog.EventCategorySerializer()).serialize(value.category), - "event_type": try NullableSerializer(TeamLog.EventTypeArgSerializer()).serialize(value.eventType), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GetTeamEventsArg { + public func deserialize(_ json: JSON) throws -> MediaHubProjectTeamDeleteType { switch json { - case .dictionary(let dict): - let limit = try Serialization._UInt32Serializer.deserialize(dict["limit"] ?? .number(1_000)) - let accountId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["account_id"] ?? .null) - let time = try NullableSerializer(TeamCommon.TimeRangeSerializer()).deserialize(dict["time"] ?? .null) - let category = try NullableSerializer(TeamLog.EventCategorySerializer()).deserialize(dict["category"] ?? .null) - let eventType = try NullableSerializer(TeamLog.EventTypeArgSerializer()).deserialize(dict["event_type"] ?? .null) - return GetTeamEventsArg(limit: limit, accountId: accountId, time: time, category: category, eventType: eventType) - default: - throw JSONSerializerError.deserializeError(type: GetTeamEventsArg.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return MediaHubProjectTeamDeleteType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: MediaHubProjectTeamDeleteType.self, json: json) } } } - /// The GetTeamEventsContinueArg struct - public class GetTeamEventsContinueArg: CustomStringConvertible, JSONRepresentable { - /// Indicates from what point to get the next set of events. - public let cursor: String - public init(cursor: String) { - stringValidator()(cursor) - self.cursor = cursor + /// Changed member role in Replay project. + public class MediaHubProjectTeamRoleChangedDetails: CustomStringConvertible, JSONRepresentable { + /// Previous Media Hub project role. + public let previousRole: TeamLog.MediaHubProjectRole + /// New Media Hub project role. + public let newRole: TeamLog.MediaHubProjectRole + /// Replay project. + public let project: TeamLog.MediaHubProjectLogInfo? + public init(previousRole: TeamLog.MediaHubProjectRole, newRole: TeamLog.MediaHubProjectRole, project: TeamLog.MediaHubProjectLogInfo? = nil) { + self.previousRole = previousRole + self.newRole = newRole + self.project = project } func json() throws -> JSON { - try GetTeamEventsContinueArgSerializer().serialize(self) + try MediaHubProjectTeamRoleChangedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GetTeamEventsContinueArgSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MediaHubProjectTeamRoleChangedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for GetTeamEventsContinueArg: \(error)" + return "Failed to generate description for MediaHubProjectTeamRoleChangedDetails: \(error)" } } } - - public class GetTeamEventsContinueArgSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GetTeamEventsContinueArg) throws -> JSON { + public class MediaHubProjectTeamRoleChangedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MediaHubProjectTeamRoleChangedDetails) throws -> JSON { let output = [ - "cursor": try Serialization._StringSerializer.serialize(value.cursor), + "previous_role": try TeamLog.MediaHubProjectRoleSerializer().serialize(value.previousRole), + "new_role": try TeamLog.MediaHubProjectRoleSerializer().serialize(value.newRole), + "project": try NullableSerializer(TeamLog.MediaHubProjectLogInfoSerializer()).serialize(value.project), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GetTeamEventsContinueArg { + public func deserialize(_ json: JSON) throws -> MediaHubProjectTeamRoleChangedDetails { switch json { - case .dictionary(let dict): - let cursor = try Serialization._StringSerializer.deserialize(dict["cursor"] ?? .null) - return GetTeamEventsContinueArg(cursor: cursor) - default: - throw JSONSerializerError.deserializeError(type: GetTeamEventsContinueArg.self, json: json) + case .dictionary(let dict): + let previousRole = try TeamLog.MediaHubProjectRoleSerializer().deserialize(dict["previous_role"] ?? .null) + let newRole = try TeamLog.MediaHubProjectRoleSerializer().deserialize(dict["new_role"] ?? .null) + let project = try NullableSerializer(TeamLog.MediaHubProjectLogInfoSerializer()).deserialize(dict["project"] ?? .null) + return MediaHubProjectTeamRoleChangedDetails(previousRole: previousRole, newRole: newRole, project: project) + default: + throw JSONSerializerError.deserializeError(type: MediaHubProjectTeamRoleChangedDetails.self, json: json) } } } - /// Errors that can be raised when calling getEventsContinue. - public enum GetTeamEventsContinueError: CustomStringConvertible, JSONRepresentable { - /// Bad cursor. - case badCursor - /// Cursors are intended to be used quickly. Individual cursor values are normally valid for days, but in rare - /// cases may be reset sooner. Cursor reset errors should be handled by fetching a new cursor from - /// getEvents. The associated value is the approximate timestamp of the most recent event returned by - /// the cursor. This should be used as a resumption point when calling getEvents to obtain a new cursor. - case reset(Date) - /// An unspecified error. - case other + /// The MediaHubProjectTeamRoleChangedType struct + public class MediaHubProjectTeamRoleChangedType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } func json() throws -> JSON { - try GetTeamEventsContinueErrorSerializer().serialize(self) + try MediaHubProjectTeamRoleChangedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GetTeamEventsContinueErrorSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MediaHubProjectTeamRoleChangedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for GetTeamEventsContinueError: \(error)" + return "Failed to generate description for MediaHubProjectTeamRoleChangedType: \(error)" } } } - - public class GetTeamEventsContinueErrorSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GetTeamEventsContinueError) throws -> JSON { - switch value { - case .badCursor: - var d = [String: JSON]() - d[".tag"] = .str("bad_cursor") - return .dictionary(d) - case .reset(let arg): - var d = try ["reset": NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").serialize(arg)] - d[".tag"] = .str("reset") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) - } + public class MediaHubProjectTeamRoleChangedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MediaHubProjectTeamRoleChangedType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GetTeamEventsContinueError { + public func deserialize(_ json: JSON) throws -> MediaHubProjectTeamRoleChangedType { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "bad_cursor": - return GetTeamEventsContinueError.badCursor - case "reset": - let v = try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").deserialize(d["reset"] ?? .null) - return GetTeamEventsContinueError.reset(v) - case "other": - return GetTeamEventsContinueError.other + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return MediaHubProjectTeamRoleChangedType(description_: description_) default: - return GetTeamEventsContinueError.other - } - default: - throw JSONSerializerError.deserializeError(type: GetTeamEventsContinueError.self, json: json) + throw JSONSerializerError.deserializeError(type: MediaHubProjectTeamRoleChangedType.self, json: json) } } } - /// Errors that can be raised when calling getEvents. - public enum GetTeamEventsError: CustomStringConvertible, JSONRepresentable { - /// No user found matching the provided account_id. - case accountIdNotFound - /// Invalid time range. - case invalidTimeRange - /// Invalid filters. Do not specify both event_type and category parameters for the same call. - case invalidFilters + /// Media Hub shared link audience + public enum MediaHubSharedLinkAudience: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case noOne + /// An unspecified error. + case public_ + /// An unspecified error. + case teamOnly /// An unspecified error. case other func json() throws -> JSON { - try GetTeamEventsErrorSerializer().serialize(self) + try MediaHubSharedLinkAudienceSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GetTeamEventsErrorSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MediaHubSharedLinkAudienceSerializer().serialize(self)))" } catch { - return "Failed to generate description for GetTeamEventsError: \(error)" + return "Failed to generate description for MediaHubSharedLinkAudience: \(error)" } } } - - public class GetTeamEventsErrorSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GetTeamEventsError) throws -> JSON { + public class MediaHubSharedLinkAudienceSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MediaHubSharedLinkAudience) throws -> JSON { switch value { - case .accountIdNotFound: - var d = [String: JSON]() - d[".tag"] = .str("account_id_not_found") - return .dictionary(d) - case .invalidTimeRange: - var d = [String: JSON]() - d[".tag"] = .str("invalid_time_range") - return .dictionary(d) - case .invalidFilters: - var d = [String: JSON]() - d[".tag"] = .str("invalid_filters") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) + case .noOne: + var d = [String: JSON]() + d[".tag"] = .str("no_one") + return .dictionary(d) + case .public_: + var d = [String: JSON]() + d[".tag"] = .str("public") + return .dictionary(d) + case .teamOnly: + var d = [String: JSON]() + d[".tag"] = .str("team_only") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> MediaHubSharedLinkAudience { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "no_one": + return MediaHubSharedLinkAudience.noOne + case "public": + return MediaHubSharedLinkAudience.public_ + case "team_only": + return MediaHubSharedLinkAudience.teamOnly + case "other": + return MediaHubSharedLinkAudience.other + default: + return MediaHubSharedLinkAudience.other + } + default: + throw JSONSerializerError.deserializeError(type: MediaHubSharedLinkAudience.self, json: json) } } + } - public func deserialize(_ json: JSON) throws -> GetTeamEventsError { + /// Changed Replay shared link audience. + public class MediaHubSharedLinkAudienceChangedDetails: CustomStringConvertible, JSONRepresentable { + /// Media Hub shared link target type. + public let targetType: TeamLog.MediaHubSharedLinkTargetType + /// Previous Media Hub shared link audience. + public let previousValue: TeamLog.MediaHubSharedLinkAudience + /// New Media Hub shared link audience. + public let newValue: TeamLog.MediaHubSharedLinkAudience + /// Replay project. + public let project: TeamLog.MediaHubProjectLogInfo? + public init(targetType: TeamLog.MediaHubSharedLinkTargetType, previousValue: TeamLog.MediaHubSharedLinkAudience, newValue: TeamLog.MediaHubSharedLinkAudience, project: TeamLog.MediaHubProjectLogInfo? = nil) { + self.targetType = targetType + self.previousValue = previousValue + self.newValue = newValue + self.project = project + } + + func json() throws -> JSON { + try MediaHubSharedLinkAudienceChangedDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try MediaHubSharedLinkAudienceChangedDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for MediaHubSharedLinkAudienceChangedDetails: \(error)" + } + } + } + public class MediaHubSharedLinkAudienceChangedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MediaHubSharedLinkAudienceChangedDetails) throws -> JSON { + let output = [ + "target_type": try TeamLog.MediaHubSharedLinkTargetTypeSerializer().serialize(value.targetType), + "previous_value": try TeamLog.MediaHubSharedLinkAudienceSerializer().serialize(value.previousValue), + "new_value": try TeamLog.MediaHubSharedLinkAudienceSerializer().serialize(value.newValue), + "project": try NullableSerializer(TeamLog.MediaHubProjectLogInfoSerializer()).serialize(value.project), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> MediaHubSharedLinkAudienceChangedDetails { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "account_id_not_found": - return GetTeamEventsError.accountIdNotFound - case "invalid_time_range": - return GetTeamEventsError.invalidTimeRange - case "invalid_filters": - return GetTeamEventsError.invalidFilters - case "other": - return GetTeamEventsError.other + case .dictionary(let dict): + let targetType = try TeamLog.MediaHubSharedLinkTargetTypeSerializer().deserialize(dict["target_type"] ?? .null) + let previousValue = try TeamLog.MediaHubSharedLinkAudienceSerializer().deserialize(dict["previous_value"] ?? .null) + let newValue = try TeamLog.MediaHubSharedLinkAudienceSerializer().deserialize(dict["new_value"] ?? .null) + let project = try NullableSerializer(TeamLog.MediaHubProjectLogInfoSerializer()).deserialize(dict["project"] ?? .null) + return MediaHubSharedLinkAudienceChangedDetails(targetType: targetType, previousValue: previousValue, newValue: newValue, project: project) default: - return GetTeamEventsError.other - } - default: - throw JSONSerializerError.deserializeError(type: GetTeamEventsError.self, json: json) + throw JSONSerializerError.deserializeError(type: MediaHubSharedLinkAudienceChangedDetails.self, json: json) } } } - /// The GetTeamEventsResult struct - public class GetTeamEventsResult: CustomStringConvertible, JSONRepresentable { - /// List of events. Note that events are not guaranteed to be sorted by their timestamp value. - public let events: [TeamLog.TeamEvent] - /// Pass the cursor into getEventsContinue to obtain additional events. The value of cursor may change for each - /// response from getEventsContinue, regardless of the value of hasMore; older cursor strings may - /// expire. Thus, callers should ensure that they update their cursor based on the latest value of - /// cursor after each call, and poll regularly if they wish to poll for new events. Callers should - /// handle reset exceptions for expired cursors. - public let cursor: String - /// Is true if there may be additional events that have not been returned yet. An additional call to - /// getEventsContinue can retrieve them. Note that hasMore may be true, even if events is empty. - public let hasMore: Bool - public init(events: [TeamLog.TeamEvent], cursor: String, hasMore: Bool) { - self.events = events - stringValidator()(cursor) - self.cursor = cursor - self.hasMore = hasMore + /// The MediaHubSharedLinkAudienceChangedType struct + public class MediaHubSharedLinkAudienceChangedType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ } func json() throws -> JSON { - try GetTeamEventsResultSerializer().serialize(self) + try MediaHubSharedLinkAudienceChangedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GetTeamEventsResultSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MediaHubSharedLinkAudienceChangedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for GetTeamEventsResult: \(error)" + return "Failed to generate description for MediaHubSharedLinkAudienceChangedType: \(error)" } } } - - public class GetTeamEventsResultSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GetTeamEventsResult) throws -> JSON { + public class MediaHubSharedLinkAudienceChangedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MediaHubSharedLinkAudienceChangedType) throws -> JSON { let output = [ - "events": try ArraySerializer(TeamLog.TeamEventSerializer()).serialize(value.events), - "cursor": try Serialization._StringSerializer.serialize(value.cursor), - "has_more": try Serialization._BoolSerializer.serialize(value.hasMore), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GetTeamEventsResult { + public func deserialize(_ json: JSON) throws -> MediaHubSharedLinkAudienceChangedType { switch json { - case .dictionary(let dict): - let events = try ArraySerializer(TeamLog.TeamEventSerializer()).deserialize(dict["events"] ?? .null) - let cursor = try Serialization._StringSerializer.deserialize(dict["cursor"] ?? .null) - let hasMore = try Serialization._BoolSerializer.deserialize(dict["has_more"] ?? .null) - return GetTeamEventsResult(events: events, cursor: cursor, hasMore: hasMore) - default: - throw JSONSerializerError.deserializeError(type: GetTeamEventsResult.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return MediaHubSharedLinkAudienceChangedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: MediaHubSharedLinkAudienceChangedType.self, json: json) } } } - /// Enabled/disabled Google single sign-on for team. - public class GoogleSsoChangePolicyDetails: CustomStringConvertible, JSONRepresentable { - /// New Google single sign-on policy. - public let newValue: TeamLog.GoogleSsoPolicy - /// Previous Google single sign-on policy. Might be missing due to historical data gap. - public let previousValue: TeamLog.GoogleSsoPolicy? - public init(newValue: TeamLog.GoogleSsoPolicy, previousValue: TeamLog.GoogleSsoPolicy? = nil) { - self.newValue = newValue - self.previousValue = previousValue + /// Created Replay shared link. + public class MediaHubSharedLinkCreatedDetails: CustomStringConvertible, JSONRepresentable { + /// Media Hub shared link target type. + public let targetType: TeamLog.MediaHubSharedLinkTargetType + /// Media Hub shared link audience. + public let audience: TeamLog.MediaHubSharedLinkAudience + /// Replay project. + public let project: TeamLog.MediaHubProjectLogInfo? + public init(targetType: TeamLog.MediaHubSharedLinkTargetType, audience: TeamLog.MediaHubSharedLinkAudience, project: TeamLog.MediaHubProjectLogInfo? = nil) { + self.targetType = targetType + self.audience = audience + self.project = project } func json() throws -> JSON { - try GoogleSsoChangePolicyDetailsSerializer().serialize(self) + try MediaHubSharedLinkCreatedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GoogleSsoChangePolicyDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MediaHubSharedLinkCreatedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for GoogleSsoChangePolicyDetails: \(error)" + return "Failed to generate description for MediaHubSharedLinkCreatedDetails: \(error)" } } } - - public class GoogleSsoChangePolicyDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GoogleSsoChangePolicyDetails) throws -> JSON { + public class MediaHubSharedLinkCreatedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MediaHubSharedLinkCreatedDetails) throws -> JSON { let output = [ - "new_value": try TeamLog.GoogleSsoPolicySerializer().serialize(value.newValue), - "previous_value": try NullableSerializer(TeamLog.GoogleSsoPolicySerializer()).serialize(value.previousValue), + "target_type": try TeamLog.MediaHubSharedLinkTargetTypeSerializer().serialize(value.targetType), + "audience": try TeamLog.MediaHubSharedLinkAudienceSerializer().serialize(value.audience), + "project": try NullableSerializer(TeamLog.MediaHubProjectLogInfoSerializer()).serialize(value.project), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GoogleSsoChangePolicyDetails { + public func deserialize(_ json: JSON) throws -> MediaHubSharedLinkCreatedDetails { switch json { - case .dictionary(let dict): - let newValue = try TeamLog.GoogleSsoPolicySerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try NullableSerializer(TeamLog.GoogleSsoPolicySerializer()).deserialize(dict["previous_value"] ?? .null) - return GoogleSsoChangePolicyDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: GoogleSsoChangePolicyDetails.self, json: json) + case .dictionary(let dict): + let targetType = try TeamLog.MediaHubSharedLinkTargetTypeSerializer().deserialize(dict["target_type"] ?? .null) + let audience = try TeamLog.MediaHubSharedLinkAudienceSerializer().deserialize(dict["audience"] ?? .null) + let project = try NullableSerializer(TeamLog.MediaHubProjectLogInfoSerializer()).deserialize(dict["project"] ?? .null) + return MediaHubSharedLinkCreatedDetails(targetType: targetType, audience: audience, project: project) + default: + throw JSONSerializerError.deserializeError(type: MediaHubSharedLinkCreatedDetails.self, json: json) } } } - /// The GoogleSsoChangePolicyType struct - public class GoogleSsoChangePolicyType: CustomStringConvertible, JSONRepresentable { + /// The MediaHubSharedLinkCreatedType struct + public class MediaHubSharedLinkCreatedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -30726,40 +44677,38 @@ public class TeamLog { } func json() throws -> JSON { - try GoogleSsoChangePolicyTypeSerializer().serialize(self) + try MediaHubSharedLinkCreatedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GoogleSsoChangePolicyTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MediaHubSharedLinkCreatedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for GoogleSsoChangePolicyType: \(error)" + return "Failed to generate description for MediaHubSharedLinkCreatedType: \(error)" } } } - - public class GoogleSsoChangePolicyTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GoogleSsoChangePolicyType) throws -> JSON { + public class MediaHubSharedLinkCreatedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MediaHubSharedLinkCreatedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GoogleSsoChangePolicyType { + public func deserialize(_ json: JSON) throws -> MediaHubSharedLinkCreatedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return GoogleSsoChangePolicyType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: GoogleSsoChangePolicyType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return MediaHubSharedLinkCreatedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: MediaHubSharedLinkCreatedType.self, json: json) } } } - /// Google SSO policy - public enum GoogleSsoPolicy: CustomStringConvertible, JSONRepresentable { + /// Media Hub shared link download setting + public enum MediaHubSharedLinkDownloadSetting: CustomStringConvertible, JSONRepresentable { /// An unspecified error. case disabled /// An unspecified error. @@ -30768,130 +44717,111 @@ public class TeamLog { case other func json() throws -> JSON { - try GoogleSsoPolicySerializer().serialize(self) + try MediaHubSharedLinkDownloadSettingSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GoogleSsoPolicySerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MediaHubSharedLinkDownloadSettingSerializer().serialize(self)))" } catch { - return "Failed to generate description for GoogleSsoPolicy: \(error)" + return "Failed to generate description for MediaHubSharedLinkDownloadSetting: \(error)" } } } - - public class GoogleSsoPolicySerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GoogleSsoPolicy) throws -> JSON { + public class MediaHubSharedLinkDownloadSettingSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MediaHubSharedLinkDownloadSetting) throws -> JSON { switch value { - case .disabled: - var d = [String: JSON]() - d[".tag"] = .str("disabled") - return .dictionary(d) - case .enabled: - var d = [String: JSON]() - d[".tag"] = .str("enabled") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) - } - } - - public func deserialize(_ json: JSON) throws -> GoogleSsoPolicy { - switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "disabled": - return GoogleSsoPolicy.disabled - case "enabled": - return GoogleSsoPolicy.enabled - case "other": - return GoogleSsoPolicy.other + case .disabled: + var d = [String: JSON]() + d[".tag"] = .str("disabled") + return .dictionary(d) + case .enabled: + var d = [String: JSON]() + d[".tag"] = .str("enabled") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> MediaHubSharedLinkDownloadSetting { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "disabled": + return MediaHubSharedLinkDownloadSetting.disabled + case "enabled": + return MediaHubSharedLinkDownloadSetting.enabled + case "other": + return MediaHubSharedLinkDownloadSetting.other + default: + return MediaHubSharedLinkDownloadSetting.other + } default: - return GoogleSsoPolicy.other - } - default: - throw JSONSerializerError.deserializeError(type: GoogleSsoPolicy.self, json: json) + throw JSONSerializerError.deserializeError(type: MediaHubSharedLinkDownloadSetting.self, json: json) } } } - /// Couldn't add a folder to a policy. - public class GovernancePolicyAddFolderFailedDetails: CustomStringConvertible, JSONRepresentable { - /// Policy ID. - public let governancePolicyId: String - /// Policy name. - public let name: String - /// Policy type. - public let policyType: TeamLog.PolicyType? - /// Folder. - public let folder: String - /// Reason. - public let reason: String? - public init(governancePolicyId: String, name: String, folder: String, policyType: TeamLog.PolicyType? = nil, reason: String? = nil) { - stringValidator()(governancePolicyId) - self.governancePolicyId = governancePolicyId - stringValidator()(name) - self.name = name - self.policyType = policyType - stringValidator()(folder) - self.folder = folder - nullableValidator(stringValidator())(reason) - self.reason = reason + /// Changed Replay shared link download setting. + public class MediaHubSharedLinkDownloadSettingChangedDetails: CustomStringConvertible, JSONRepresentable { + /// Media Hub shared link target type. + public let targetType: TeamLog.MediaHubSharedLinkTargetType + /// Previous Media Hub shared link download setting. + public let previousValue: TeamLog.MediaHubSharedLinkDownloadSetting + /// New Media Hub shared link download setting. + public let newValue: TeamLog.MediaHubSharedLinkDownloadSetting + /// Replay project. + public let project: TeamLog.MediaHubProjectLogInfo? + public init(targetType: TeamLog.MediaHubSharedLinkTargetType, previousValue: TeamLog.MediaHubSharedLinkDownloadSetting, newValue: TeamLog.MediaHubSharedLinkDownloadSetting, project: TeamLog.MediaHubProjectLogInfo? = nil) { + self.targetType = targetType + self.previousValue = previousValue + self.newValue = newValue + self.project = project } func json() throws -> JSON { - try GovernancePolicyAddFolderFailedDetailsSerializer().serialize(self) + try MediaHubSharedLinkDownloadSettingChangedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GovernancePolicyAddFolderFailedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MediaHubSharedLinkDownloadSettingChangedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for GovernancePolicyAddFolderFailedDetails: \(error)" + return "Failed to generate description for MediaHubSharedLinkDownloadSettingChangedDetails: \(error)" } } } - - public class GovernancePolicyAddFolderFailedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GovernancePolicyAddFolderFailedDetails) throws -> JSON { + public class MediaHubSharedLinkDownloadSettingChangedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MediaHubSharedLinkDownloadSettingChangedDetails) throws -> JSON { let output = [ - "governance_policy_id": try Serialization._StringSerializer.serialize(value.governancePolicyId), - "name": try Serialization._StringSerializer.serialize(value.name), - "folder": try Serialization._StringSerializer.serialize(value.folder), - "policy_type": try NullableSerializer(TeamLog.PolicyTypeSerializer()).serialize(value.policyType), - "reason": try NullableSerializer(Serialization._StringSerializer).serialize(value.reason), + "target_type": try TeamLog.MediaHubSharedLinkTargetTypeSerializer().serialize(value.targetType), + "previous_value": try TeamLog.MediaHubSharedLinkDownloadSettingSerializer().serialize(value.previousValue), + "new_value": try TeamLog.MediaHubSharedLinkDownloadSettingSerializer().serialize(value.newValue), + "project": try NullableSerializer(TeamLog.MediaHubProjectLogInfoSerializer()).serialize(value.project), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GovernancePolicyAddFolderFailedDetails { + public func deserialize(_ json: JSON) throws -> MediaHubSharedLinkDownloadSettingChangedDetails { switch json { - case .dictionary(let dict): - let governancePolicyId = try Serialization._StringSerializer.deserialize(dict["governance_policy_id"] ?? .null) - let name = try Serialization._StringSerializer.deserialize(dict["name"] ?? .null) - let folder = try Serialization._StringSerializer.deserialize(dict["folder"] ?? .null) - let policyType = try NullableSerializer(TeamLog.PolicyTypeSerializer()).deserialize(dict["policy_type"] ?? .null) - let reason = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["reason"] ?? .null) - return GovernancePolicyAddFolderFailedDetails( - governancePolicyId: governancePolicyId, - name: name, - folder: folder, - policyType: policyType, - reason: reason - ) - default: - throw JSONSerializerError.deserializeError(type: GovernancePolicyAddFolderFailedDetails.self, json: json) + case .dictionary(let dict): + let targetType = try TeamLog.MediaHubSharedLinkTargetTypeSerializer().deserialize(dict["target_type"] ?? .null) + let previousValue = try TeamLog.MediaHubSharedLinkDownloadSettingSerializer().deserialize(dict["previous_value"] ?? .null) + let newValue = try TeamLog.MediaHubSharedLinkDownloadSettingSerializer().deserialize(dict["new_value"] ?? .null) + let project = try NullableSerializer(TeamLog.MediaHubProjectLogInfoSerializer()).deserialize(dict["project"] ?? .null) + return MediaHubSharedLinkDownloadSettingChangedDetails(targetType: targetType, previousValue: previousValue, newValue: newValue, project: project) + default: + throw JSONSerializerError.deserializeError(type: MediaHubSharedLinkDownloadSettingChangedDetails.self, json: json) } } } - /// The GovernancePolicyAddFolderFailedType struct - public class GovernancePolicyAddFolderFailedType: CustomStringConvertible, JSONRepresentable { + /// The MediaHubSharedLinkDownloadSettingChangedType struct + public class MediaHubSharedLinkDownloadSettingChangedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -30900,99 +44830,82 @@ public class TeamLog { } func json() throws -> JSON { - try GovernancePolicyAddFolderFailedTypeSerializer().serialize(self) + try MediaHubSharedLinkDownloadSettingChangedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GovernancePolicyAddFolderFailedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MediaHubSharedLinkDownloadSettingChangedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for GovernancePolicyAddFolderFailedType: \(error)" + return "Failed to generate description for MediaHubSharedLinkDownloadSettingChangedType: \(error)" } } } - - public class GovernancePolicyAddFolderFailedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GovernancePolicyAddFolderFailedType) throws -> JSON { + public class MediaHubSharedLinkDownloadSettingChangedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MediaHubSharedLinkDownloadSettingChangedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GovernancePolicyAddFolderFailedType { + public func deserialize(_ json: JSON) throws -> MediaHubSharedLinkDownloadSettingChangedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return GovernancePolicyAddFolderFailedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: GovernancePolicyAddFolderFailedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return MediaHubSharedLinkDownloadSettingChangedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: MediaHubSharedLinkDownloadSettingChangedType.self, json: json) } } } - /// Added folders to policy. - public class GovernancePolicyAddFoldersDetails: CustomStringConvertible, JSONRepresentable { - /// Policy ID. - public let governancePolicyId: String - /// Policy name. - public let name: String - /// Policy type. - public let policyType: TeamLog.PolicyType? - /// Folders. - public let folders: [String]? - public init(governancePolicyId: String, name: String, policyType: TeamLog.PolicyType? = nil, folders: [String]? = nil) { - stringValidator()(governancePolicyId) - self.governancePolicyId = governancePolicyId - stringValidator()(name) - self.name = name - self.policyType = policyType - nullableValidator(arrayValidator(itemValidator: stringValidator()))(folders) - self.folders = folders + /// Revoked Replay shared link. + public class MediaHubSharedLinkRevokedDetails: CustomStringConvertible, JSONRepresentable { + /// Media Hub shared link target type. + public let targetType: TeamLog.MediaHubSharedLinkTargetType + /// Replay project. + public let project: TeamLog.MediaHubProjectLogInfo? + public init(targetType: TeamLog.MediaHubSharedLinkTargetType, project: TeamLog.MediaHubProjectLogInfo? = nil) { + self.targetType = targetType + self.project = project } func json() throws -> JSON { - try GovernancePolicyAddFoldersDetailsSerializer().serialize(self) + try MediaHubSharedLinkRevokedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GovernancePolicyAddFoldersDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MediaHubSharedLinkRevokedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for GovernancePolicyAddFoldersDetails: \(error)" + return "Failed to generate description for MediaHubSharedLinkRevokedDetails: \(error)" } } } - - public class GovernancePolicyAddFoldersDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GovernancePolicyAddFoldersDetails) throws -> JSON { + public class MediaHubSharedLinkRevokedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MediaHubSharedLinkRevokedDetails) throws -> JSON { let output = [ - "governance_policy_id": try Serialization._StringSerializer.serialize(value.governancePolicyId), - "name": try Serialization._StringSerializer.serialize(value.name), - "policy_type": try NullableSerializer(TeamLog.PolicyTypeSerializer()).serialize(value.policyType), - "folders": try NullableSerializer(ArraySerializer(Serialization._StringSerializer)).serialize(value.folders), + "target_type": try TeamLog.MediaHubSharedLinkTargetTypeSerializer().serialize(value.targetType), + "project": try NullableSerializer(TeamLog.MediaHubProjectLogInfoSerializer()).serialize(value.project), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GovernancePolicyAddFoldersDetails { + public func deserialize(_ json: JSON) throws -> MediaHubSharedLinkRevokedDetails { switch json { - case .dictionary(let dict): - let governancePolicyId = try Serialization._StringSerializer.deserialize(dict["governance_policy_id"] ?? .null) - let name = try Serialization._StringSerializer.deserialize(dict["name"] ?? .null) - let policyType = try NullableSerializer(TeamLog.PolicyTypeSerializer()).deserialize(dict["policy_type"] ?? .null) - let folders = try NullableSerializer(ArraySerializer(Serialization._StringSerializer)).deserialize(dict["folders"] ?? .null) - return GovernancePolicyAddFoldersDetails(governancePolicyId: governancePolicyId, name: name, policyType: policyType, folders: folders) - default: - throw JSONSerializerError.deserializeError(type: GovernancePolicyAddFoldersDetails.self, json: json) + case .dictionary(let dict): + let targetType = try TeamLog.MediaHubSharedLinkTargetTypeSerializer().deserialize(dict["target_type"] ?? .null) + let project = try NullableSerializer(TeamLog.MediaHubProjectLogInfoSerializer()).deserialize(dict["project"] ?? .null) + return MediaHubSharedLinkRevokedDetails(targetType: targetType, project: project) + default: + throw JSONSerializerError.deserializeError(type: MediaHubSharedLinkRevokedDetails.self, json: json) } } } - /// The GovernancePolicyAddFoldersType struct - public class GovernancePolicyAddFoldersType: CustomStringConvertible, JSONRepresentable { + /// The MediaHubSharedLinkRevokedType struct + public class MediaHubSharedLinkRevokedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -31001,221 +44914,207 @@ public class TeamLog { } func json() throws -> JSON { - try GovernancePolicyAddFoldersTypeSerializer().serialize(self) + try MediaHubSharedLinkRevokedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GovernancePolicyAddFoldersTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MediaHubSharedLinkRevokedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for GovernancePolicyAddFoldersType: \(error)" + return "Failed to generate description for MediaHubSharedLinkRevokedType: \(error)" } } } - - public class GovernancePolicyAddFoldersTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GovernancePolicyAddFoldersType) throws -> JSON { + public class MediaHubSharedLinkRevokedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MediaHubSharedLinkRevokedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GovernancePolicyAddFoldersType { + public func deserialize(_ json: JSON) throws -> MediaHubSharedLinkRevokedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return GovernancePolicyAddFoldersType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: GovernancePolicyAddFoldersType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return MediaHubSharedLinkRevokedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: MediaHubSharedLinkRevokedType.self, json: json) } } } - /// Content disposed. - public class GovernancePolicyContentDisposedDetails: CustomStringConvertible, JSONRepresentable { - /// Policy ID. - public let governancePolicyId: String - /// Policy name. - public let name: String - /// Policy type. - public let policyType: TeamLog.PolicyType? - /// Disposition type. - public let dispositionType: TeamLog.DispositionActionType - public init(governancePolicyId: String, name: String, dispositionType: TeamLog.DispositionActionType, policyType: TeamLog.PolicyType? = nil) { - stringValidator()(governancePolicyId) - self.governancePolicyId = governancePolicyId - stringValidator()(name) - self.name = name - self.policyType = policyType - self.dispositionType = dispositionType - } + /// Media Hub shared link target type + public enum MediaHubSharedLinkTargetType: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case bundle + /// An unspecified error. + case project + /// An unspecified error. + case other func json() throws -> JSON { - try GovernancePolicyContentDisposedDetailsSerializer().serialize(self) + try MediaHubSharedLinkTargetTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GovernancePolicyContentDisposedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MediaHubSharedLinkTargetTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for GovernancePolicyContentDisposedDetails: \(error)" + return "Failed to generate description for MediaHubSharedLinkTargetType: \(error)" + } + } + } + public class MediaHubSharedLinkTargetTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MediaHubSharedLinkTargetType) throws -> JSON { + switch value { + case .bundle: + var d = [String: JSON]() + d[".tag"] = .str("bundle") + return .dictionary(d) + case .project: + var d = [String: JSON]() + d[".tag"] = .str("project") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> MediaHubSharedLinkTargetType { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "bundle": + return MediaHubSharedLinkTargetType.bundle + case "project": + return MediaHubSharedLinkTargetType.project + case "other": + return MediaHubSharedLinkTargetType.other + default: + return MediaHubSharedLinkTargetType.other + } + default: + throw JSONSerializerError.deserializeError(type: MediaHubSharedLinkTargetType.self, json: json) } } } - public class GovernancePolicyContentDisposedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GovernancePolicyContentDisposedDetails) throws -> JSON { - let output = [ - "governance_policy_id": try Serialization._StringSerializer.serialize(value.governancePolicyId), - "name": try Serialization._StringSerializer.serialize(value.name), - "disposition_type": try TeamLog.DispositionActionTypeSerializer().serialize(value.dispositionType), - "policy_type": try NullableSerializer(TeamLog.PolicyTypeSerializer()).serialize(value.policyType), - ] - return .dictionary(output) + /// Created member access report. + public class MemberAccessDetailsCreateReportDetails: CustomStringConvertible, JSONRepresentable { + + func json() throws -> JSON { + try MemberAccessDetailsCreateReportDetailsSerializer().serialize(self) } - public func deserialize(_ json: JSON) throws -> GovernancePolicyContentDisposedDetails { - switch json { - case .dictionary(let dict): - let governancePolicyId = try Serialization._StringSerializer.deserialize(dict["governance_policy_id"] ?? .null) - let name = try Serialization._StringSerializer.deserialize(dict["name"] ?? .null) - let dispositionType = try TeamLog.DispositionActionTypeSerializer().deserialize(dict["disposition_type"] ?? .null) - let policyType = try NullableSerializer(TeamLog.PolicyTypeSerializer()).deserialize(dict["policy_type"] ?? .null) - return GovernancePolicyContentDisposedDetails( - governancePolicyId: governancePolicyId, - name: name, - dispositionType: dispositionType, - policyType: policyType - ) - default: - throw JSONSerializerError.deserializeError(type: GovernancePolicyContentDisposedDetails.self, json: json) + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try MemberAccessDetailsCreateReportDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for MemberAccessDetailsCreateReportDetails: \(error)" } } } - - /// The GovernancePolicyContentDisposedType struct - public class GovernancePolicyContentDisposedType: CustomStringConvertible, JSONRepresentable { - /// (no description) - public let description_: String - public init(description_: String) { - stringValidator()(description_) - self.description_ = description_ + public class MemberAccessDetailsCreateReportDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberAccessDetailsCreateReportDetails) throws -> JSON { + let output = [String: JSON]() + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> MemberAccessDetailsCreateReportDetails { + switch json { + case .dictionary(_): + return MemberAccessDetailsCreateReportDetails() + default: + throw JSONSerializerError.deserializeError(type: MemberAccessDetailsCreateReportDetails.self, json: json) + } + } + } + + /// Couldn't generate member access report. + public class MemberAccessDetailsCreateReportFailedDetails: CustomStringConvertible, JSONRepresentable { + /// Failure reason. + public let failureReason: Team.TeamReportFailureReason + public init(failureReason: Team.TeamReportFailureReason) { + self.failureReason = failureReason } func json() throws -> JSON { - try GovernancePolicyContentDisposedTypeSerializer().serialize(self) + try MemberAccessDetailsCreateReportFailedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GovernancePolicyContentDisposedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberAccessDetailsCreateReportFailedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for GovernancePolicyContentDisposedType: \(error)" + return "Failed to generate description for MemberAccessDetailsCreateReportFailedDetails: \(error)" } } } - - public class GovernancePolicyContentDisposedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GovernancePolicyContentDisposedType) throws -> JSON { + public class MemberAccessDetailsCreateReportFailedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberAccessDetailsCreateReportFailedDetails) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "failure_reason": try Team.TeamReportFailureReasonSerializer().serialize(value.failureReason), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GovernancePolicyContentDisposedType { + public func deserialize(_ json: JSON) throws -> MemberAccessDetailsCreateReportFailedDetails { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return GovernancePolicyContentDisposedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: GovernancePolicyContentDisposedType.self, json: json) + case .dictionary(let dict): + let failureReason = try Team.TeamReportFailureReasonSerializer().deserialize(dict["failure_reason"] ?? .null) + return MemberAccessDetailsCreateReportFailedDetails(failureReason: failureReason) + default: + throw JSONSerializerError.deserializeError(type: MemberAccessDetailsCreateReportFailedDetails.self, json: json) } } } - /// Activated a new policy. - public class GovernancePolicyCreateDetails: CustomStringConvertible, JSONRepresentable { - /// Policy ID. - public let governancePolicyId: String - /// Policy name. - public let name: String - /// Policy type. - public let policyType: TeamLog.PolicyType? - /// Duration in days. - public let duration: TeamLog.DurationLogInfo - /// Folders. - public let folders: [String]? - public init( - governancePolicyId: String, - name: String, - duration: TeamLog.DurationLogInfo, - policyType: TeamLog.PolicyType? = nil, - folders: [String]? = nil - ) { - stringValidator()(governancePolicyId) - self.governancePolicyId = governancePolicyId - stringValidator()(name) - self.name = name - self.policyType = policyType - self.duration = duration - nullableValidator(arrayValidator(itemValidator: stringValidator()))(folders) - self.folders = folders + /// The MemberAccessDetailsCreateReportFailedType struct + public class MemberAccessDetailsCreateReportFailedType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ } func json() throws -> JSON { - try GovernancePolicyCreateDetailsSerializer().serialize(self) + try MemberAccessDetailsCreateReportFailedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GovernancePolicyCreateDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberAccessDetailsCreateReportFailedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for GovernancePolicyCreateDetails: \(error)" + return "Failed to generate description for MemberAccessDetailsCreateReportFailedType: \(error)" } } } - - public class GovernancePolicyCreateDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GovernancePolicyCreateDetails) throws -> JSON { + public class MemberAccessDetailsCreateReportFailedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberAccessDetailsCreateReportFailedType) throws -> JSON { let output = [ - "governance_policy_id": try Serialization._StringSerializer.serialize(value.governancePolicyId), - "name": try Serialization._StringSerializer.serialize(value.name), - "duration": try TeamLog.DurationLogInfoSerializer().serialize(value.duration), - "policy_type": try NullableSerializer(TeamLog.PolicyTypeSerializer()).serialize(value.policyType), - "folders": try NullableSerializer(ArraySerializer(Serialization._StringSerializer)).serialize(value.folders), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GovernancePolicyCreateDetails { + public func deserialize(_ json: JSON) throws -> MemberAccessDetailsCreateReportFailedType { switch json { - case .dictionary(let dict): - let governancePolicyId = try Serialization._StringSerializer.deserialize(dict["governance_policy_id"] ?? .null) - let name = try Serialization._StringSerializer.deserialize(dict["name"] ?? .null) - let duration = try TeamLog.DurationLogInfoSerializer().deserialize(dict["duration"] ?? .null) - let policyType = try NullableSerializer(TeamLog.PolicyTypeSerializer()).deserialize(dict["policy_type"] ?? .null) - let folders = try NullableSerializer(ArraySerializer(Serialization._StringSerializer)).deserialize(dict["folders"] ?? .null) - return GovernancePolicyCreateDetails( - governancePolicyId: governancePolicyId, - name: name, - duration: duration, - policyType: policyType, - folders: folders - ) - default: - throw JSONSerializerError.deserializeError(type: GovernancePolicyCreateDetails.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return MemberAccessDetailsCreateReportFailedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: MemberAccessDetailsCreateReportFailedType.self, json: json) } } } - /// The GovernancePolicyCreateType struct - public class GovernancePolicyCreateType: CustomStringConvertible, JSONRepresentable { + /// The MemberAccessDetailsCreateReportType struct + public class MemberAccessDetailsCreateReportType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -31224,93 +45123,78 @@ public class TeamLog { } func json() throws -> JSON { - try GovernancePolicyCreateTypeSerializer().serialize(self) + try MemberAccessDetailsCreateReportTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GovernancePolicyCreateTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberAccessDetailsCreateReportTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for GovernancePolicyCreateType: \(error)" + return "Failed to generate description for MemberAccessDetailsCreateReportType: \(error)" } } } - - public class GovernancePolicyCreateTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GovernancePolicyCreateType) throws -> JSON { + public class MemberAccessDetailsCreateReportTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberAccessDetailsCreateReportType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GovernancePolicyCreateType { + public func deserialize(_ json: JSON) throws -> MemberAccessDetailsCreateReportType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return GovernancePolicyCreateType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: GovernancePolicyCreateType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return MemberAccessDetailsCreateReportType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: MemberAccessDetailsCreateReportType.self, json: json) } } } - /// Deleted a policy. - public class GovernancePolicyDeleteDetails: CustomStringConvertible, JSONRepresentable { - /// Policy ID. - public let governancePolicyId: String - /// Policy name. - public let name: String - /// Policy type. - public let policyType: TeamLog.PolicyType? - public init(governancePolicyId: String, name: String, policyType: TeamLog.PolicyType? = nil) { - stringValidator()(governancePolicyId) - self.governancePolicyId = governancePolicyId - stringValidator()(name) - self.name = name - self.policyType = policyType + /// Added an external ID for team member. + public class MemberAddExternalIdDetails: CustomStringConvertible, JSONRepresentable { + /// Current external id. + public let newValue: String + public init(newValue: String) { + stringValidator(maxLength: 64)(newValue) + self.newValue = newValue } func json() throws -> JSON { - try GovernancePolicyDeleteDetailsSerializer().serialize(self) + try MemberAddExternalIdDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GovernancePolicyDeleteDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberAddExternalIdDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for GovernancePolicyDeleteDetails: \(error)" + return "Failed to generate description for MemberAddExternalIdDetails: \(error)" } } } - - public class GovernancePolicyDeleteDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GovernancePolicyDeleteDetails) throws -> JSON { + public class MemberAddExternalIdDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberAddExternalIdDetails) throws -> JSON { let output = [ - "governance_policy_id": try Serialization._StringSerializer.serialize(value.governancePolicyId), - "name": try Serialization._StringSerializer.serialize(value.name), - "policy_type": try NullableSerializer(TeamLog.PolicyTypeSerializer()).serialize(value.policyType), + "new_value": try Serialization._StringSerializer.serialize(value.newValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GovernancePolicyDeleteDetails { + public func deserialize(_ json: JSON) throws -> MemberAddExternalIdDetails { switch json { - case .dictionary(let dict): - let governancePolicyId = try Serialization._StringSerializer.deserialize(dict["governance_policy_id"] ?? .null) - let name = try Serialization._StringSerializer.deserialize(dict["name"] ?? .null) - let policyType = try NullableSerializer(TeamLog.PolicyTypeSerializer()).deserialize(dict["policy_type"] ?? .null) - return GovernancePolicyDeleteDetails(governancePolicyId: governancePolicyId, name: name, policyType: policyType) - default: - throw JSONSerializerError.deserializeError(type: GovernancePolicyDeleteDetails.self, json: json) + case .dictionary(let dict): + let newValue = try Serialization._StringSerializer.deserialize(dict["new_value"] ?? .null) + return MemberAddExternalIdDetails(newValue: newValue) + default: + throw JSONSerializerError.deserializeError(type: MemberAddExternalIdDetails.self, json: json) } } } - /// The GovernancePolicyDeleteType struct - public class GovernancePolicyDeleteType: CustomStringConvertible, JSONRepresentable { + /// The MemberAddExternalIdType struct + public class MemberAddExternalIdType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -31319,125 +45203,77 @@ public class TeamLog { } func json() throws -> JSON { - try GovernancePolicyDeleteTypeSerializer().serialize(self) + try MemberAddExternalIdTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GovernancePolicyDeleteTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberAddExternalIdTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for GovernancePolicyDeleteType: \(error)" + return "Failed to generate description for MemberAddExternalIdType: \(error)" } } } - - public class GovernancePolicyDeleteTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GovernancePolicyDeleteType) throws -> JSON { + public class MemberAddExternalIdTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberAddExternalIdType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GovernancePolicyDeleteType { + public func deserialize(_ json: JSON) throws -> MemberAddExternalIdType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return GovernancePolicyDeleteType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: GovernancePolicyDeleteType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return MemberAddExternalIdType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: MemberAddExternalIdType.self, json: json) } } } - /// Edited policy. - public class GovernancePolicyEditDetailsDetails: CustomStringConvertible, JSONRepresentable { - /// Policy ID. - public let governancePolicyId: String - /// Policy name. - public let name: String - /// Policy type. - public let policyType: TeamLog.PolicyType? - /// Attribute. - public let attribute: String - /// From. - public let previousValue: String - /// To. - public let newValue: String - public init( - governancePolicyId: String, - name: String, - attribute: String, - previousValue: String, - newValue: String, - policyType: TeamLog.PolicyType? = nil - ) { - stringValidator()(governancePolicyId) - self.governancePolicyId = governancePolicyId - stringValidator()(name) - self.name = name - self.policyType = policyType - stringValidator()(attribute) - self.attribute = attribute - stringValidator()(previousValue) - self.previousValue = previousValue - stringValidator()(newValue) + /// Added team member name. + public class MemberAddNameDetails: CustomStringConvertible, JSONRepresentable { + /// New user's name. + public let newValue: TeamLog.UserNameLogInfo + public init(newValue: TeamLog.UserNameLogInfo) { self.newValue = newValue } func json() throws -> JSON { - try GovernancePolicyEditDetailsDetailsSerializer().serialize(self) + try MemberAddNameDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GovernancePolicyEditDetailsDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberAddNameDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for GovernancePolicyEditDetailsDetails: \(error)" + return "Failed to generate description for MemberAddNameDetails: \(error)" } } } - - public class GovernancePolicyEditDetailsDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GovernancePolicyEditDetailsDetails) throws -> JSON { + public class MemberAddNameDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberAddNameDetails) throws -> JSON { let output = [ - "governance_policy_id": try Serialization._StringSerializer.serialize(value.governancePolicyId), - "name": try Serialization._StringSerializer.serialize(value.name), - "attribute": try Serialization._StringSerializer.serialize(value.attribute), - "previous_value": try Serialization._StringSerializer.serialize(value.previousValue), - "new_value": try Serialization._StringSerializer.serialize(value.newValue), - "policy_type": try NullableSerializer(TeamLog.PolicyTypeSerializer()).serialize(value.policyType), + "new_value": try TeamLog.UserNameLogInfoSerializer().serialize(value.newValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GovernancePolicyEditDetailsDetails { + public func deserialize(_ json: JSON) throws -> MemberAddNameDetails { switch json { - case .dictionary(let dict): - let governancePolicyId = try Serialization._StringSerializer.deserialize(dict["governance_policy_id"] ?? .null) - let name = try Serialization._StringSerializer.deserialize(dict["name"] ?? .null) - let attribute = try Serialization._StringSerializer.deserialize(dict["attribute"] ?? .null) - let previousValue = try Serialization._StringSerializer.deserialize(dict["previous_value"] ?? .null) - let newValue = try Serialization._StringSerializer.deserialize(dict["new_value"] ?? .null) - let policyType = try NullableSerializer(TeamLog.PolicyTypeSerializer()).deserialize(dict["policy_type"] ?? .null) - return GovernancePolicyEditDetailsDetails( - governancePolicyId: governancePolicyId, - name: name, - attribute: attribute, - previousValue: previousValue, - newValue: newValue, - policyType: policyType - ) - default: - throw JSONSerializerError.deserializeError(type: GovernancePolicyEditDetailsDetails.self, json: json) + case .dictionary(let dict): + let newValue = try TeamLog.UserNameLogInfoSerializer().deserialize(dict["new_value"] ?? .null) + return MemberAddNameDetails(newValue: newValue) + default: + throw JSONSerializerError.deserializeError(type: MemberAddNameDetails.self, json: json) } } } - /// The GovernancePolicyEditDetailsType struct - public class GovernancePolicyEditDetailsType: CustomStringConvertible, JSONRepresentable { + /// The MemberAddNameType struct + public class MemberAddNameType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -31446,115 +45282,84 @@ public class TeamLog { } func json() throws -> JSON { - try GovernancePolicyEditDetailsTypeSerializer().serialize(self) + try MemberAddNameTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GovernancePolicyEditDetailsTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberAddNameTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for GovernancePolicyEditDetailsType: \(error)" + return "Failed to generate description for MemberAddNameType: \(error)" } } } - - public class GovernancePolicyEditDetailsTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GovernancePolicyEditDetailsType) throws -> JSON { + public class MemberAddNameTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberAddNameType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GovernancePolicyEditDetailsType { + public func deserialize(_ json: JSON) throws -> MemberAddNameType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return GovernancePolicyEditDetailsType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: GovernancePolicyEditDetailsType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return MemberAddNameType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: MemberAddNameType.self, json: json) } } } - /// Changed policy duration. - public class GovernancePolicyEditDurationDetails: CustomStringConvertible, JSONRepresentable { - /// Policy ID. - public let governancePolicyId: String - /// Policy name. - public let name: String - /// Policy type. - public let policyType: TeamLog.PolicyType? - /// From. - public let previousValue: TeamLog.DurationLogInfo - /// To. - public let newValue: TeamLog.DurationLogInfo - public init( - governancePolicyId: String, - name: String, - previousValue: TeamLog.DurationLogInfo, - newValue: TeamLog.DurationLogInfo, - policyType: TeamLog.PolicyType? = nil - ) { - stringValidator()(governancePolicyId) - self.governancePolicyId = governancePolicyId - stringValidator()(name) - self.name = name - self.policyType = policyType - self.previousValue = previousValue + /// Changed team member admin role. + public class MemberChangeAdminRoleDetails: CustomStringConvertible, JSONRepresentable { + /// New admin role. This field is relevant when the admin role is changed or whenthe user role changes from no + /// admin rights to with admin rights. + public let newValue: TeamLog.AdminRole? + /// Previous admin role. This field is relevant when the admin role is changed or when the admin role is + /// removed. + public let previousValue: TeamLog.AdminRole? + public init(newValue: TeamLog.AdminRole? = nil, previousValue: TeamLog.AdminRole? = nil) { self.newValue = newValue + self.previousValue = previousValue } func json() throws -> JSON { - try GovernancePolicyEditDurationDetailsSerializer().serialize(self) + try MemberChangeAdminRoleDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GovernancePolicyEditDurationDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberChangeAdminRoleDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for GovernancePolicyEditDurationDetails: \(error)" + return "Failed to generate description for MemberChangeAdminRoleDetails: \(error)" } } } - - public class GovernancePolicyEditDurationDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GovernancePolicyEditDurationDetails) throws -> JSON { + public class MemberChangeAdminRoleDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberChangeAdminRoleDetails) throws -> JSON { let output = [ - "governance_policy_id": try Serialization._StringSerializer.serialize(value.governancePolicyId), - "name": try Serialization._StringSerializer.serialize(value.name), - "previous_value": try TeamLog.DurationLogInfoSerializer().serialize(value.previousValue), - "new_value": try TeamLog.DurationLogInfoSerializer().serialize(value.newValue), - "policy_type": try NullableSerializer(TeamLog.PolicyTypeSerializer()).serialize(value.policyType), + "new_value": try NullableSerializer(TeamLog.AdminRoleSerializer()).serialize(value.newValue), + "previous_value": try NullableSerializer(TeamLog.AdminRoleSerializer()).serialize(value.previousValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GovernancePolicyEditDurationDetails { + public func deserialize(_ json: JSON) throws -> MemberChangeAdminRoleDetails { switch json { - case .dictionary(let dict): - let governancePolicyId = try Serialization._StringSerializer.deserialize(dict["governance_policy_id"] ?? .null) - let name = try Serialization._StringSerializer.deserialize(dict["name"] ?? .null) - let previousValue = try TeamLog.DurationLogInfoSerializer().deserialize(dict["previous_value"] ?? .null) - let newValue = try TeamLog.DurationLogInfoSerializer().deserialize(dict["new_value"] ?? .null) - let policyType = try NullableSerializer(TeamLog.PolicyTypeSerializer()).deserialize(dict["policy_type"] ?? .null) - return GovernancePolicyEditDurationDetails( - governancePolicyId: governancePolicyId, - name: name, - previousValue: previousValue, - newValue: newValue, - policyType: policyType - ) - default: - throw JSONSerializerError.deserializeError(type: GovernancePolicyEditDurationDetails.self, json: json) + case .dictionary(let dict): + let newValue = try NullableSerializer(TeamLog.AdminRoleSerializer()).deserialize(dict["new_value"] ?? .null) + let previousValue = try NullableSerializer(TeamLog.AdminRoleSerializer()).deserialize(dict["previous_value"] ?? .null) + return MemberChangeAdminRoleDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: MemberChangeAdminRoleDetails.self, json: json) } } } - /// The GovernancePolicyEditDurationType struct - public class GovernancePolicyEditDurationType: CustomStringConvertible, JSONRepresentable { + /// The MemberChangeAdminRoleType struct + public class MemberChangeAdminRoleType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -31563,104 +45368,84 @@ public class TeamLog { } func json() throws -> JSON { - try GovernancePolicyEditDurationTypeSerializer().serialize(self) + try MemberChangeAdminRoleTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GovernancePolicyEditDurationTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberChangeAdminRoleTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for GovernancePolicyEditDurationType: \(error)" + return "Failed to generate description for MemberChangeAdminRoleType: \(error)" } } } - - public class GovernancePolicyEditDurationTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GovernancePolicyEditDurationType) throws -> JSON { + public class MemberChangeAdminRoleTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberChangeAdminRoleType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GovernancePolicyEditDurationType { + public func deserialize(_ json: JSON) throws -> MemberChangeAdminRoleType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return GovernancePolicyEditDurationType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: GovernancePolicyEditDurationType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return MemberChangeAdminRoleType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: MemberChangeAdminRoleType.self, json: json) } } } - /// Created a policy download. - public class GovernancePolicyExportCreatedDetails: CustomStringConvertible, JSONRepresentable { - /// Policy ID. - public let governancePolicyId: String - /// Policy name. - public let name: String - /// Policy type. - public let policyType: TeamLog.PolicyType? - /// Export name. - public let exportName: String - public init(governancePolicyId: String, name: String, exportName: String, policyType: TeamLog.PolicyType? = nil) { - stringValidator()(governancePolicyId) - self.governancePolicyId = governancePolicyId - stringValidator()(name) - self.name = name - self.policyType = policyType - stringValidator()(exportName) - self.exportName = exportName + /// Changed team member email. + public class MemberChangeEmailDetails: CustomStringConvertible, JSONRepresentable { + /// New email. + public let newValue: String + /// Previous email. Might be missing due to historical data gap. + public let previousValue: String? + public init(newValue: String, previousValue: String? = nil) { + stringValidator(maxLength: 255)(newValue) + self.newValue = newValue + nullableValidator(stringValidator(maxLength: 255))(previousValue) + self.previousValue = previousValue } func json() throws -> JSON { - try GovernancePolicyExportCreatedDetailsSerializer().serialize(self) + try MemberChangeEmailDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GovernancePolicyExportCreatedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberChangeEmailDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for GovernancePolicyExportCreatedDetails: \(error)" + return "Failed to generate description for MemberChangeEmailDetails: \(error)" } } } - - public class GovernancePolicyExportCreatedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GovernancePolicyExportCreatedDetails) throws -> JSON { + public class MemberChangeEmailDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberChangeEmailDetails) throws -> JSON { let output = [ - "governance_policy_id": try Serialization._StringSerializer.serialize(value.governancePolicyId), - "name": try Serialization._StringSerializer.serialize(value.name), - "export_name": try Serialization._StringSerializer.serialize(value.exportName), - "policy_type": try NullableSerializer(TeamLog.PolicyTypeSerializer()).serialize(value.policyType), + "new_value": try Serialization._StringSerializer.serialize(value.newValue), + "previous_value": try NullableSerializer(Serialization._StringSerializer).serialize(value.previousValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GovernancePolicyExportCreatedDetails { + public func deserialize(_ json: JSON) throws -> MemberChangeEmailDetails { switch json { - case .dictionary(let dict): - let governancePolicyId = try Serialization._StringSerializer.deserialize(dict["governance_policy_id"] ?? .null) - let name = try Serialization._StringSerializer.deserialize(dict["name"] ?? .null) - let exportName = try Serialization._StringSerializer.deserialize(dict["export_name"] ?? .null) - let policyType = try NullableSerializer(TeamLog.PolicyTypeSerializer()).deserialize(dict["policy_type"] ?? .null) - return GovernancePolicyExportCreatedDetails( - governancePolicyId: governancePolicyId, - name: name, - exportName: exportName, - policyType: policyType - ) - default: - throw JSONSerializerError.deserializeError(type: GovernancePolicyExportCreatedDetails.self, json: json) + case .dictionary(let dict): + let newValue = try Serialization._StringSerializer.deserialize(dict["new_value"] ?? .null) + let previousValue = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["previous_value"] ?? .null) + return MemberChangeEmailDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: MemberChangeEmailDetails.self, json: json) } } } - /// The GovernancePolicyExportCreatedType struct - public class GovernancePolicyExportCreatedType: CustomStringConvertible, JSONRepresentable { + /// The MemberChangeEmailType struct + public class MemberChangeEmailType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -31669,104 +45454,84 @@ public class TeamLog { } func json() throws -> JSON { - try GovernancePolicyExportCreatedTypeSerializer().serialize(self) + try MemberChangeEmailTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GovernancePolicyExportCreatedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberChangeEmailTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for GovernancePolicyExportCreatedType: \(error)" + return "Failed to generate description for MemberChangeEmailType: \(error)" } } } - - public class GovernancePolicyExportCreatedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GovernancePolicyExportCreatedType) throws -> JSON { + public class MemberChangeEmailTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberChangeEmailType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GovernancePolicyExportCreatedType { + public func deserialize(_ json: JSON) throws -> MemberChangeEmailType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return GovernancePolicyExportCreatedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: GovernancePolicyExportCreatedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return MemberChangeEmailType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: MemberChangeEmailType.self, json: json) } } } - /// Removed a policy download. - public class GovernancePolicyExportRemovedDetails: CustomStringConvertible, JSONRepresentable { - /// Policy ID. - public let governancePolicyId: String - /// Policy name. - public let name: String - /// Policy type. - public let policyType: TeamLog.PolicyType? - /// Export name. - public let exportName: String - public init(governancePolicyId: String, name: String, exportName: String, policyType: TeamLog.PolicyType? = nil) { - stringValidator()(governancePolicyId) - self.governancePolicyId = governancePolicyId - stringValidator()(name) - self.name = name - self.policyType = policyType - stringValidator()(exportName) - self.exportName = exportName + /// Changed the external ID for team member. + public class MemberChangeExternalIdDetails: CustomStringConvertible, JSONRepresentable { + /// Current external id. + public let newValue: String + /// Old external id. + public let previousValue: String + public init(newValue: String, previousValue: String) { + stringValidator(maxLength: 64)(newValue) + self.newValue = newValue + stringValidator(maxLength: 64)(previousValue) + self.previousValue = previousValue } func json() throws -> JSON { - try GovernancePolicyExportRemovedDetailsSerializer().serialize(self) + try MemberChangeExternalIdDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GovernancePolicyExportRemovedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberChangeExternalIdDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for GovernancePolicyExportRemovedDetails: \(error)" + return "Failed to generate description for MemberChangeExternalIdDetails: \(error)" } } } - - public class GovernancePolicyExportRemovedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GovernancePolicyExportRemovedDetails) throws -> JSON { + public class MemberChangeExternalIdDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberChangeExternalIdDetails) throws -> JSON { let output = [ - "governance_policy_id": try Serialization._StringSerializer.serialize(value.governancePolicyId), - "name": try Serialization._StringSerializer.serialize(value.name), - "export_name": try Serialization._StringSerializer.serialize(value.exportName), - "policy_type": try NullableSerializer(TeamLog.PolicyTypeSerializer()).serialize(value.policyType), + "new_value": try Serialization._StringSerializer.serialize(value.newValue), + "previous_value": try Serialization._StringSerializer.serialize(value.previousValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GovernancePolicyExportRemovedDetails { + public func deserialize(_ json: JSON) throws -> MemberChangeExternalIdDetails { switch json { - case .dictionary(let dict): - let governancePolicyId = try Serialization._StringSerializer.deserialize(dict["governance_policy_id"] ?? .null) - let name = try Serialization._StringSerializer.deserialize(dict["name"] ?? .null) - let exportName = try Serialization._StringSerializer.deserialize(dict["export_name"] ?? .null) - let policyType = try NullableSerializer(TeamLog.PolicyTypeSerializer()).deserialize(dict["policy_type"] ?? .null) - return GovernancePolicyExportRemovedDetails( - governancePolicyId: governancePolicyId, - name: name, - exportName: exportName, - policyType: policyType - ) - default: - throw JSONSerializerError.deserializeError(type: GovernancePolicyExportRemovedDetails.self, json: json) + case .dictionary(let dict): + let newValue = try Serialization._StringSerializer.deserialize(dict["new_value"] ?? .null) + let previousValue = try Serialization._StringSerializer.deserialize(dict["previous_value"] ?? .null) + return MemberChangeExternalIdDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: MemberChangeExternalIdDetails.self, json: json) } } } - /// The GovernancePolicyExportRemovedType struct - public class GovernancePolicyExportRemovedType: CustomStringConvertible, JSONRepresentable { + /// The MemberChangeExternalIdType struct + public class MemberChangeExternalIdType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -31775,111 +45540,82 @@ public class TeamLog { } func json() throws -> JSON { - try GovernancePolicyExportRemovedTypeSerializer().serialize(self) + try MemberChangeExternalIdTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GovernancePolicyExportRemovedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberChangeExternalIdTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for GovernancePolicyExportRemovedType: \(error)" + return "Failed to generate description for MemberChangeExternalIdType: \(error)" } } } - - public class GovernancePolicyExportRemovedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GovernancePolicyExportRemovedType) throws -> JSON { + public class MemberChangeExternalIdTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberChangeExternalIdType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GovernancePolicyExportRemovedType { + public func deserialize(_ json: JSON) throws -> MemberChangeExternalIdType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return GovernancePolicyExportRemovedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: GovernancePolicyExportRemovedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return MemberChangeExternalIdType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: MemberChangeExternalIdType.self, json: json) } } } - /// Removed folders from policy. - public class GovernancePolicyRemoveFoldersDetails: CustomStringConvertible, JSONRepresentable { - /// Policy ID. - public let governancePolicyId: String - /// Policy name. - public let name: String - /// Policy type. - public let policyType: TeamLog.PolicyType? - /// Folders. - public let folders: [String]? - /// Reason. - public let reason: String? - public init(governancePolicyId: String, name: String, policyType: TeamLog.PolicyType? = nil, folders: [String]? = nil, reason: String? = nil) { - stringValidator()(governancePolicyId) - self.governancePolicyId = governancePolicyId - stringValidator()(name) - self.name = name - self.policyType = policyType - nullableValidator(arrayValidator(itemValidator: stringValidator()))(folders) - self.folders = folders - nullableValidator(stringValidator())(reason) - self.reason = reason + /// Changed membership type (limited/full) of member. + public class MemberChangeMembershipTypeDetails: CustomStringConvertible, JSONRepresentable { + /// Previous membership type. + public let prevValue: TeamLog.TeamMembershipType + /// New membership type. + public let newValue: TeamLog.TeamMembershipType + public init(prevValue: TeamLog.TeamMembershipType, newValue: TeamLog.TeamMembershipType) { + self.prevValue = prevValue + self.newValue = newValue } func json() throws -> JSON { - try GovernancePolicyRemoveFoldersDetailsSerializer().serialize(self) + try MemberChangeMembershipTypeDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GovernancePolicyRemoveFoldersDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberChangeMembershipTypeDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for GovernancePolicyRemoveFoldersDetails: \(error)" + return "Failed to generate description for MemberChangeMembershipTypeDetails: \(error)" } } } - - public class GovernancePolicyRemoveFoldersDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GovernancePolicyRemoveFoldersDetails) throws -> JSON { + public class MemberChangeMembershipTypeDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberChangeMembershipTypeDetails) throws -> JSON { let output = [ - "governance_policy_id": try Serialization._StringSerializer.serialize(value.governancePolicyId), - "name": try Serialization._StringSerializer.serialize(value.name), - "policy_type": try NullableSerializer(TeamLog.PolicyTypeSerializer()).serialize(value.policyType), - "folders": try NullableSerializer(ArraySerializer(Serialization._StringSerializer)).serialize(value.folders), - "reason": try NullableSerializer(Serialization._StringSerializer).serialize(value.reason), + "prev_value": try TeamLog.TeamMembershipTypeSerializer().serialize(value.prevValue), + "new_value": try TeamLog.TeamMembershipTypeSerializer().serialize(value.newValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GovernancePolicyRemoveFoldersDetails { + public func deserialize(_ json: JSON) throws -> MemberChangeMembershipTypeDetails { switch json { - case .dictionary(let dict): - let governancePolicyId = try Serialization._StringSerializer.deserialize(dict["governance_policy_id"] ?? .null) - let name = try Serialization._StringSerializer.deserialize(dict["name"] ?? .null) - let policyType = try NullableSerializer(TeamLog.PolicyTypeSerializer()).deserialize(dict["policy_type"] ?? .null) - let folders = try NullableSerializer(ArraySerializer(Serialization._StringSerializer)).deserialize(dict["folders"] ?? .null) - let reason = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["reason"] ?? .null) - return GovernancePolicyRemoveFoldersDetails( - governancePolicyId: governancePolicyId, - name: name, - policyType: policyType, - folders: folders, - reason: reason - ) - default: - throw JSONSerializerError.deserializeError(type: GovernancePolicyRemoveFoldersDetails.self, json: json) + case .dictionary(let dict): + let prevValue = try TeamLog.TeamMembershipTypeSerializer().deserialize(dict["prev_value"] ?? .null) + let newValue = try TeamLog.TeamMembershipTypeSerializer().deserialize(dict["new_value"] ?? .null) + return MemberChangeMembershipTypeDetails(prevValue: prevValue, newValue: newValue) + default: + throw JSONSerializerError.deserializeError(type: MemberChangeMembershipTypeDetails.self, json: json) } } } - /// The GovernancePolicyRemoveFoldersType struct - public class GovernancePolicyRemoveFoldersType: CustomStringConvertible, JSONRepresentable { + /// The MemberChangeMembershipTypeType struct + public class MemberChangeMembershipTypeType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -31888,93 +45624,82 @@ public class TeamLog { } func json() throws -> JSON { - try GovernancePolicyRemoveFoldersTypeSerializer().serialize(self) + try MemberChangeMembershipTypeTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GovernancePolicyRemoveFoldersTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberChangeMembershipTypeTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for GovernancePolicyRemoveFoldersType: \(error)" + return "Failed to generate description for MemberChangeMembershipTypeType: \(error)" } } } - - public class GovernancePolicyRemoveFoldersTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GovernancePolicyRemoveFoldersType) throws -> JSON { + public class MemberChangeMembershipTypeTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberChangeMembershipTypeType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GovernancePolicyRemoveFoldersType { + public func deserialize(_ json: JSON) throws -> MemberChangeMembershipTypeType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return GovernancePolicyRemoveFoldersType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: GovernancePolicyRemoveFoldersType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return MemberChangeMembershipTypeType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: MemberChangeMembershipTypeType.self, json: json) } } } - /// Created a summary report for a policy. - public class GovernancePolicyReportCreatedDetails: CustomStringConvertible, JSONRepresentable { - /// Policy ID. - public let governancePolicyId: String - /// Policy name. - public let name: String - /// Policy type. - public let policyType: TeamLog.PolicyType? - public init(governancePolicyId: String, name: String, policyType: TeamLog.PolicyType? = nil) { - stringValidator()(governancePolicyId) - self.governancePolicyId = governancePolicyId - stringValidator()(name) - self.name = name - self.policyType = policyType + /// Changed team member name. + public class MemberChangeNameDetails: CustomStringConvertible, JSONRepresentable { + /// New user's name. + public let newValue: TeamLog.UserNameLogInfo + /// Previous user's name. Might be missing due to historical data gap. + public let previousValue: TeamLog.UserNameLogInfo? + public init(newValue: TeamLog.UserNameLogInfo, previousValue: TeamLog.UserNameLogInfo? = nil) { + self.newValue = newValue + self.previousValue = previousValue } func json() throws -> JSON { - try GovernancePolicyReportCreatedDetailsSerializer().serialize(self) + try MemberChangeNameDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GovernancePolicyReportCreatedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberChangeNameDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for GovernancePolicyReportCreatedDetails: \(error)" + return "Failed to generate description for MemberChangeNameDetails: \(error)" } } } - - public class GovernancePolicyReportCreatedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GovernancePolicyReportCreatedDetails) throws -> JSON { + public class MemberChangeNameDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberChangeNameDetails) throws -> JSON { let output = [ - "governance_policy_id": try Serialization._StringSerializer.serialize(value.governancePolicyId), - "name": try Serialization._StringSerializer.serialize(value.name), - "policy_type": try NullableSerializer(TeamLog.PolicyTypeSerializer()).serialize(value.policyType), + "new_value": try TeamLog.UserNameLogInfoSerializer().serialize(value.newValue), + "previous_value": try NullableSerializer(TeamLog.UserNameLogInfoSerializer()).serialize(value.previousValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GovernancePolicyReportCreatedDetails { + public func deserialize(_ json: JSON) throws -> MemberChangeNameDetails { switch json { - case .dictionary(let dict): - let governancePolicyId = try Serialization._StringSerializer.deserialize(dict["governance_policy_id"] ?? .null) - let name = try Serialization._StringSerializer.deserialize(dict["name"] ?? .null) - let policyType = try NullableSerializer(TeamLog.PolicyTypeSerializer()).deserialize(dict["policy_type"] ?? .null) - return GovernancePolicyReportCreatedDetails(governancePolicyId: governancePolicyId, name: name, policyType: policyType) - default: - throw JSONSerializerError.deserializeError(type: GovernancePolicyReportCreatedDetails.self, json: json) + case .dictionary(let dict): + let newValue = try TeamLog.UserNameLogInfoSerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try NullableSerializer(TeamLog.UserNameLogInfoSerializer()).deserialize(dict["previous_value"] ?? .null) + return MemberChangeNameDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: MemberChangeNameDetails.self, json: json) } } } - /// The GovernancePolicyReportCreatedType struct - public class GovernancePolicyReportCreatedType: CustomStringConvertible, JSONRepresentable { + /// The MemberChangeNameType struct + public class MemberChangeNameType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -31983,111 +45708,83 @@ public class TeamLog { } func json() throws -> JSON { - try GovernancePolicyReportCreatedTypeSerializer().serialize(self) + try MemberChangeNameTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GovernancePolicyReportCreatedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberChangeNameTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for GovernancePolicyReportCreatedType: \(error)" - } - } - } - - public class GovernancePolicyReportCreatedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GovernancePolicyReportCreatedType) throws -> JSON { - let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), - ] - return .dictionary(output) - } - - public func deserialize(_ json: JSON) throws -> GovernancePolicyReportCreatedType { - switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return GovernancePolicyReportCreatedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: GovernancePolicyReportCreatedType.self, json: json) + return "Failed to generate description for MemberChangeNameType: \(error)" } } } - - /// Downloaded content from a policy. - public class GovernancePolicyZipPartDownloadedDetails: CustomStringConvertible, JSONRepresentable { - /// Policy ID. - public let governancePolicyId: String - /// Policy name. - public let name: String - /// Policy type. - public let policyType: TeamLog.PolicyType? - /// Export name. - public let exportName: String - /// Part. - public let part: String? - public init(governancePolicyId: String, name: String, exportName: String, policyType: TeamLog.PolicyType? = nil, part: String? = nil) { - stringValidator()(governancePolicyId) - self.governancePolicyId = governancePolicyId - stringValidator()(name) - self.name = name - self.policyType = policyType - stringValidator()(exportName) - self.exportName = exportName - nullableValidator(stringValidator())(part) - self.part = part + public class MemberChangeNameTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberChangeNameType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> MemberChangeNameType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return MemberChangeNameType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: MemberChangeNameType.self, json: json) + } + } + } + + /// Changed team member reseller role. + public class MemberChangeResellerRoleDetails: CustomStringConvertible, JSONRepresentable { + /// New reseller role. This field is relevant when the reseller role is changed. + public let newValue: TeamLog.ResellerRole + /// Previous reseller role. This field is relevant when the reseller role is changed or when the reseller role + /// is removed. + public let previousValue: TeamLog.ResellerRole + public init(newValue: TeamLog.ResellerRole, previousValue: TeamLog.ResellerRole) { + self.newValue = newValue + self.previousValue = previousValue } func json() throws -> JSON { - try GovernancePolicyZipPartDownloadedDetailsSerializer().serialize(self) + try MemberChangeResellerRoleDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GovernancePolicyZipPartDownloadedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberChangeResellerRoleDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for GovernancePolicyZipPartDownloadedDetails: \(error)" + return "Failed to generate description for MemberChangeResellerRoleDetails: \(error)" } } } - - public class GovernancePolicyZipPartDownloadedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GovernancePolicyZipPartDownloadedDetails) throws -> JSON { + public class MemberChangeResellerRoleDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberChangeResellerRoleDetails) throws -> JSON { let output = [ - "governance_policy_id": try Serialization._StringSerializer.serialize(value.governancePolicyId), - "name": try Serialization._StringSerializer.serialize(value.name), - "export_name": try Serialization._StringSerializer.serialize(value.exportName), - "policy_type": try NullableSerializer(TeamLog.PolicyTypeSerializer()).serialize(value.policyType), - "part": try NullableSerializer(Serialization._StringSerializer).serialize(value.part), + "new_value": try TeamLog.ResellerRoleSerializer().serialize(value.newValue), + "previous_value": try TeamLog.ResellerRoleSerializer().serialize(value.previousValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GovernancePolicyZipPartDownloadedDetails { + public func deserialize(_ json: JSON) throws -> MemberChangeResellerRoleDetails { switch json { - case .dictionary(let dict): - let governancePolicyId = try Serialization._StringSerializer.deserialize(dict["governance_policy_id"] ?? .null) - let name = try Serialization._StringSerializer.deserialize(dict["name"] ?? .null) - let exportName = try Serialization._StringSerializer.deserialize(dict["export_name"] ?? .null) - let policyType = try NullableSerializer(TeamLog.PolicyTypeSerializer()).deserialize(dict["policy_type"] ?? .null) - let part = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["part"] ?? .null) - return GovernancePolicyZipPartDownloadedDetails( - governancePolicyId: governancePolicyId, - name: name, - exportName: exportName, - policyType: policyType, - part: part - ) - default: - throw JSONSerializerError.deserializeError(type: GovernancePolicyZipPartDownloadedDetails.self, json: json) + case .dictionary(let dict): + let newValue = try TeamLog.ResellerRoleSerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try TeamLog.ResellerRoleSerializer().deserialize(dict["previous_value"] ?? .null) + return MemberChangeResellerRoleDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: MemberChangeResellerRoleDetails.self, json: json) } } } - /// The GovernancePolicyZipPartDownloadedType struct - public class GovernancePolicyZipPartDownloadedType: CustomStringConvertible, JSONRepresentable { + /// The MemberChangeResellerRoleType struct + public class MemberChangeResellerRoleType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -32096,82 +45793,99 @@ public class TeamLog { } func json() throws -> JSON { - try GovernancePolicyZipPartDownloadedTypeSerializer().serialize(self) + try MemberChangeResellerRoleTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GovernancePolicyZipPartDownloadedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberChangeResellerRoleTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for GovernancePolicyZipPartDownloadedType: \(error)" + return "Failed to generate description for MemberChangeResellerRoleType: \(error)" } } } - - public class GovernancePolicyZipPartDownloadedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GovernancePolicyZipPartDownloadedType) throws -> JSON { + public class MemberChangeResellerRoleTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberChangeResellerRoleType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GovernancePolicyZipPartDownloadedType { + public func deserialize(_ json: JSON) throws -> MemberChangeResellerRoleType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return GovernancePolicyZipPartDownloadedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: GovernancePolicyZipPartDownloadedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return MemberChangeResellerRoleType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: MemberChangeResellerRoleType.self, json: json) } } } - /// Added external ID for group. - public class GroupAddExternalIdDetails: CustomStringConvertible, JSONRepresentable { - /// Current external id. - public let newValue: String - public init(newValue: String) { - stringValidator()(newValue) + /// Changed member status (invited, joined, suspended, etc.). + public class MemberChangeStatusDetails: CustomStringConvertible, JSONRepresentable { + /// Previous member status. Might be missing due to historical data gap. + public let previousValue: TeamLog.MemberStatus? + /// New member status. + public let newValue: TeamLog.MemberStatus + /// Additional information indicating the action taken that caused status change. + public let action: TeamLog.ActionDetails? + /// The user's new team name. This field is relevant when the user is transferred off the team. + public let newTeam: String? + /// The user's previous team name. This field is relevant when the user is transferred onto the team. + public let previousTeam: String? + public init(newValue: TeamLog.MemberStatus, previousValue: TeamLog.MemberStatus? = nil, action: TeamLog.ActionDetails? = nil, newTeam: String? = nil, previousTeam: String? = nil) { + self.previousValue = previousValue self.newValue = newValue + self.action = action + nullableValidator(stringValidator())(newTeam) + self.newTeam = newTeam + nullableValidator(stringValidator())(previousTeam) + self.previousTeam = previousTeam } func json() throws -> JSON { - try GroupAddExternalIdDetailsSerializer().serialize(self) + try MemberChangeStatusDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GroupAddExternalIdDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberChangeStatusDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for GroupAddExternalIdDetails: \(error)" + return "Failed to generate description for MemberChangeStatusDetails: \(error)" } } } - - public class GroupAddExternalIdDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GroupAddExternalIdDetails) throws -> JSON { + public class MemberChangeStatusDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberChangeStatusDetails) throws -> JSON { let output = [ - "new_value": try Serialization._StringSerializer.serialize(value.newValue), + "new_value": try TeamLog.MemberStatusSerializer().serialize(value.newValue), + "previous_value": try NullableSerializer(TeamLog.MemberStatusSerializer()).serialize(value.previousValue), + "action": try NullableSerializer(TeamLog.ActionDetailsSerializer()).serialize(value.action), + "new_team": try NullableSerializer(Serialization._StringSerializer).serialize(value.newTeam), + "previous_team": try NullableSerializer(Serialization._StringSerializer).serialize(value.previousTeam), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GroupAddExternalIdDetails { + public func deserialize(_ json: JSON) throws -> MemberChangeStatusDetails { switch json { - case .dictionary(let dict): - let newValue = try Serialization._StringSerializer.deserialize(dict["new_value"] ?? .null) - return GroupAddExternalIdDetails(newValue: newValue) - default: - throw JSONSerializerError.deserializeError(type: GroupAddExternalIdDetails.self, json: json) + case .dictionary(let dict): + let newValue = try TeamLog.MemberStatusSerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try NullableSerializer(TeamLog.MemberStatusSerializer()).deserialize(dict["previous_value"] ?? .null) + let action = try NullableSerializer(TeamLog.ActionDetailsSerializer()).deserialize(dict["action"] ?? .null) + let newTeam = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["new_team"] ?? .null) + let previousTeam = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["previous_team"] ?? .null) + return MemberChangeStatusDetails(newValue: newValue, previousValue: previousValue, action: action, newTeam: newTeam, previousTeam: previousTeam) + default: + throw JSONSerializerError.deserializeError(type: MemberChangeStatusDetails.self, json: json) } } } - /// The GroupAddExternalIdType struct - public class GroupAddExternalIdType: CustomStringConvertible, JSONRepresentable { + /// The MemberChangeStatusType struct + public class MemberChangeStatusType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -32180,81 +45894,69 @@ public class TeamLog { } func json() throws -> JSON { - try GroupAddExternalIdTypeSerializer().serialize(self) + try MemberChangeStatusTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GroupAddExternalIdTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberChangeStatusTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for GroupAddExternalIdType: \(error)" + return "Failed to generate description for MemberChangeStatusType: \(error)" } } } - - public class GroupAddExternalIdTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GroupAddExternalIdType) throws -> JSON { + public class MemberChangeStatusTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberChangeStatusType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GroupAddExternalIdType { + public func deserialize(_ json: JSON) throws -> MemberChangeStatusType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return GroupAddExternalIdType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: GroupAddExternalIdType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return MemberChangeStatusType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: MemberChangeStatusType.self, json: json) } } } - /// Added team members to group. - public class GroupAddMemberDetails: CustomStringConvertible, JSONRepresentable { - /// Is group owner. - public let isGroupOwner: Bool - public init(isGroupOwner: Bool) { - self.isGroupOwner = isGroupOwner - } + /// Cleared manually added contacts. + public class MemberDeleteManualContactsDetails: CustomStringConvertible, JSONRepresentable { func json() throws -> JSON { - try GroupAddMemberDetailsSerializer().serialize(self) + try MemberDeleteManualContactsDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GroupAddMemberDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberDeleteManualContactsDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for GroupAddMemberDetails: \(error)" + return "Failed to generate description for MemberDeleteManualContactsDetails: \(error)" } } } - - public class GroupAddMemberDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GroupAddMemberDetails) throws -> JSON { - let output = [ - "is_group_owner": try Serialization._BoolSerializer.serialize(value.isGroupOwner), - ] + public class MemberDeleteManualContactsDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberDeleteManualContactsDetails) throws -> JSON { + let output = [String: JSON]() return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GroupAddMemberDetails { + public func deserialize(_ json: JSON) throws -> MemberDeleteManualContactsDetails { switch json { - case .dictionary(let dict): - let isGroupOwner = try Serialization._BoolSerializer.deserialize(dict["is_group_owner"] ?? .null) - return GroupAddMemberDetails(isGroupOwner: isGroupOwner) - default: - throw JSONSerializerError.deserializeError(type: GroupAddMemberDetails.self, json: json) + case .dictionary(_): + return MemberDeleteManualContactsDetails() + default: + throw JSONSerializerError.deserializeError(type: MemberDeleteManualContactsDetails.self, json: json) } } } - /// The GroupAddMemberType struct - public class GroupAddMemberType: CustomStringConvertible, JSONRepresentable { + /// The MemberDeleteManualContactsType struct + public class MemberDeleteManualContactsType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -32263,88 +45965,69 @@ public class TeamLog { } func json() throws -> JSON { - try GroupAddMemberTypeSerializer().serialize(self) + try MemberDeleteManualContactsTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GroupAddMemberTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberDeleteManualContactsTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for GroupAddMemberType: \(error)" + return "Failed to generate description for MemberDeleteManualContactsType: \(error)" } } } - - public class GroupAddMemberTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GroupAddMemberType) throws -> JSON { + public class MemberDeleteManualContactsTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberDeleteManualContactsType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GroupAddMemberType { + public func deserialize(_ json: JSON) throws -> MemberDeleteManualContactsType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return GroupAddMemberType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: GroupAddMemberType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return MemberDeleteManualContactsType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: MemberDeleteManualContactsType.self, json: json) } } } - /// Changed external ID for group. - public class GroupChangeExternalIdDetails: CustomStringConvertible, JSONRepresentable { - /// Current external id. - public let newValue: String - /// Old external id. - public let previousValue: String - public init(newValue: String, previousValue: String) { - stringValidator()(newValue) - self.newValue = newValue - stringValidator()(previousValue) - self.previousValue = previousValue - } + /// Deleted team member profile photo. + public class MemberDeleteProfilePhotoDetails: CustomStringConvertible, JSONRepresentable { func json() throws -> JSON { - try GroupChangeExternalIdDetailsSerializer().serialize(self) + try MemberDeleteProfilePhotoDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GroupChangeExternalIdDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberDeleteProfilePhotoDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for GroupChangeExternalIdDetails: \(error)" + return "Failed to generate description for MemberDeleteProfilePhotoDetails: \(error)" } } } - - public class GroupChangeExternalIdDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GroupChangeExternalIdDetails) throws -> JSON { - let output = [ - "new_value": try Serialization._StringSerializer.serialize(value.newValue), - "previous_value": try Serialization._StringSerializer.serialize(value.previousValue), - ] + public class MemberDeleteProfilePhotoDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberDeleteProfilePhotoDetails) throws -> JSON { + let output = [String: JSON]() return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GroupChangeExternalIdDetails { + public func deserialize(_ json: JSON) throws -> MemberDeleteProfilePhotoDetails { switch json { - case .dictionary(let dict): - let newValue = try Serialization._StringSerializer.deserialize(dict["new_value"] ?? .null) - let previousValue = try Serialization._StringSerializer.deserialize(dict["previous_value"] ?? .null) - return GroupChangeExternalIdDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: GroupChangeExternalIdDetails.self, json: json) + case .dictionary(_): + return MemberDeleteProfilePhotoDetails() + default: + throw JSONSerializerError.deserializeError(type: MemberDeleteProfilePhotoDetails.self, json: json) } } } - /// The GroupChangeExternalIdType struct - public class GroupChangeExternalIdType: CustomStringConvertible, JSONRepresentable { + /// The MemberDeleteProfilePhotoType struct + public class MemberDeleteProfilePhotoType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -32353,86 +46036,69 @@ public class TeamLog { } func json() throws -> JSON { - try GroupChangeExternalIdTypeSerializer().serialize(self) + try MemberDeleteProfilePhotoTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GroupChangeExternalIdTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberDeleteProfilePhotoTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for GroupChangeExternalIdType: \(error)" + return "Failed to generate description for MemberDeleteProfilePhotoType: \(error)" } } } - - public class GroupChangeExternalIdTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GroupChangeExternalIdType) throws -> JSON { + public class MemberDeleteProfilePhotoTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberDeleteProfilePhotoType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GroupChangeExternalIdType { + public func deserialize(_ json: JSON) throws -> MemberDeleteProfilePhotoType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return GroupChangeExternalIdType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: GroupChangeExternalIdType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return MemberDeleteProfilePhotoType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: MemberDeleteProfilePhotoType.self, json: json) } } } - /// Changed group management type. - public class GroupChangeManagementTypeDetails: CustomStringConvertible, JSONRepresentable { - /// New group management type. - public let newValue: TeamCommon.GroupManagementType - /// Previous group management type. Might be missing due to historical data gap. - public let previousValue: TeamCommon.GroupManagementType? - public init(newValue: TeamCommon.GroupManagementType, previousValue: TeamCommon.GroupManagementType? = nil) { - self.newValue = newValue - self.previousValue = previousValue - } + /// Admin browsed a team member's folder contents. + public class MemberFolderContentsAccessedDetails: CustomStringConvertible, JSONRepresentable { func json() throws -> JSON { - try GroupChangeManagementTypeDetailsSerializer().serialize(self) + try MemberFolderContentsAccessedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GroupChangeManagementTypeDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberFolderContentsAccessedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for GroupChangeManagementTypeDetails: \(error)" + return "Failed to generate description for MemberFolderContentsAccessedDetails: \(error)" } } } - - public class GroupChangeManagementTypeDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GroupChangeManagementTypeDetails) throws -> JSON { - let output = [ - "new_value": try TeamCommon.GroupManagementTypeSerializer().serialize(value.newValue), - "previous_value": try NullableSerializer(TeamCommon.GroupManagementTypeSerializer()).serialize(value.previousValue), - ] + public class MemberFolderContentsAccessedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberFolderContentsAccessedDetails) throws -> JSON { + let output = [String: JSON]() return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GroupChangeManagementTypeDetails { + public func deserialize(_ json: JSON) throws -> MemberFolderContentsAccessedDetails { switch json { - case .dictionary(let dict): - let newValue = try TeamCommon.GroupManagementTypeSerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try NullableSerializer(TeamCommon.GroupManagementTypeSerializer()).deserialize(dict["previous_value"] ?? .null) - return GroupChangeManagementTypeDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: GroupChangeManagementTypeDetails.self, json: json) + case .dictionary(_): + return MemberFolderContentsAccessedDetails() + default: + throw JSONSerializerError.deserializeError(type: MemberFolderContentsAccessedDetails.self, json: json) } } } - /// The GroupChangeManagementTypeType struct - public class GroupChangeManagementTypeType: CustomStringConvertible, JSONRepresentable { + /// The MemberFolderContentsAccessedType struct + public class MemberFolderContentsAccessedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -32441,81 +46107,69 @@ public class TeamLog { } func json() throws -> JSON { - try GroupChangeManagementTypeTypeSerializer().serialize(self) + try MemberFolderContentsAccessedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GroupChangeManagementTypeTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberFolderContentsAccessedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for GroupChangeManagementTypeType: \(error)" + return "Failed to generate description for MemberFolderContentsAccessedType: \(error)" } } } - - public class GroupChangeManagementTypeTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GroupChangeManagementTypeType) throws -> JSON { + public class MemberFolderContentsAccessedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberFolderContentsAccessedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GroupChangeManagementTypeType { + public func deserialize(_ json: JSON) throws -> MemberFolderContentsAccessedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return GroupChangeManagementTypeType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: GroupChangeManagementTypeType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return MemberFolderContentsAccessedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: MemberFolderContentsAccessedType.self, json: json) } } } - /// Changed manager permissions of group member. - public class GroupChangeMemberRoleDetails: CustomStringConvertible, JSONRepresentable { - /// Is group owner. - public let isGroupOwner: Bool - public init(isGroupOwner: Bool) { - self.isGroupOwner = isGroupOwner - } + /// Permanently deleted contents of deleted team member account. + public class MemberPermanentlyDeleteAccountContentsDetails: CustomStringConvertible, JSONRepresentable { func json() throws -> JSON { - try GroupChangeMemberRoleDetailsSerializer().serialize(self) + try MemberPermanentlyDeleteAccountContentsDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GroupChangeMemberRoleDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberPermanentlyDeleteAccountContentsDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for GroupChangeMemberRoleDetails: \(error)" + return "Failed to generate description for MemberPermanentlyDeleteAccountContentsDetails: \(error)" } } } - - public class GroupChangeMemberRoleDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GroupChangeMemberRoleDetails) throws -> JSON { - let output = [ - "is_group_owner": try Serialization._BoolSerializer.serialize(value.isGroupOwner), - ] + public class MemberPermanentlyDeleteAccountContentsDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberPermanentlyDeleteAccountContentsDetails) throws -> JSON { + let output = [String: JSON]() return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GroupChangeMemberRoleDetails { + public func deserialize(_ json: JSON) throws -> MemberPermanentlyDeleteAccountContentsDetails { switch json { - case .dictionary(let dict): - let isGroupOwner = try Serialization._BoolSerializer.deserialize(dict["is_group_owner"] ?? .null) - return GroupChangeMemberRoleDetails(isGroupOwner: isGroupOwner) - default: - throw JSONSerializerError.deserializeError(type: GroupChangeMemberRoleDetails.self, json: json) + case .dictionary(_): + return MemberPermanentlyDeleteAccountContentsDetails() + default: + throw JSONSerializerError.deserializeError(type: MemberPermanentlyDeleteAccountContentsDetails.self, json: json) } } } - /// The GroupChangeMemberRoleType struct - public class GroupChangeMemberRoleType: CustomStringConvertible, JSONRepresentable { + /// The MemberPermanentlyDeleteAccountContentsType struct + public class MemberPermanentlyDeleteAccountContentsType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -32524,86 +46178,153 @@ public class TeamLog { } func json() throws -> JSON { - try GroupChangeMemberRoleTypeSerializer().serialize(self) + try MemberPermanentlyDeleteAccountContentsTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GroupChangeMemberRoleTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberPermanentlyDeleteAccountContentsTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for GroupChangeMemberRoleType: \(error)" + return "Failed to generate description for MemberPermanentlyDeleteAccountContentsType: \(error)" } } } - - public class GroupChangeMemberRoleTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GroupChangeMemberRoleType) throws -> JSON { + public class MemberPermanentlyDeleteAccountContentsTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberPermanentlyDeleteAccountContentsType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } + public func deserialize(_ json: JSON) throws -> MemberPermanentlyDeleteAccountContentsType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return MemberPermanentlyDeleteAccountContentsType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: MemberPermanentlyDeleteAccountContentsType.self, json: json) + } + } + } - public func deserialize(_ json: JSON) throws -> GroupChangeMemberRoleType { + /// The MemberRemoveActionType union + public enum MemberRemoveActionType: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case delete + /// An unspecified error. + case leave + /// An unspecified error. + case offboard + /// An unspecified error. + case offboardAndRetainTeamFolders + /// An unspecified error. + case other + + func json() throws -> JSON { + try MemberRemoveActionTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try MemberRemoveActionTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for MemberRemoveActionType: \(error)" + } + } + } + public class MemberRemoveActionTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberRemoveActionType) throws -> JSON { + switch value { + case .delete: + var d = [String: JSON]() + d[".tag"] = .str("delete") + return .dictionary(d) + case .leave: + var d = [String: JSON]() + d[".tag"] = .str("leave") + return .dictionary(d) + case .offboard: + var d = [String: JSON]() + d[".tag"] = .str("offboard") + return .dictionary(d) + case .offboardAndRetainTeamFolders: + var d = [String: JSON]() + d[".tag"] = .str("offboard_and_retain_team_folders") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> MemberRemoveActionType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return GroupChangeMemberRoleType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: GroupChangeMemberRoleType.self, json: json) + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "delete": + return MemberRemoveActionType.delete + case "leave": + return MemberRemoveActionType.leave + case "offboard": + return MemberRemoveActionType.offboard + case "offboard_and_retain_team_folders": + return MemberRemoveActionType.offboardAndRetainTeamFolders + case "other": + return MemberRemoveActionType.other + default: + return MemberRemoveActionType.other + } + default: + throw JSONSerializerError.deserializeError(type: MemberRemoveActionType.self, json: json) } } } - /// Created group. - public class GroupCreateDetails: CustomStringConvertible, JSONRepresentable { - /// Is company managed group. - public let isCompanyManaged: Bool? - /// Group join policy. - public let joinPolicy: TeamLog.GroupJoinPolicy? - public init(isCompanyManaged: Bool? = nil, joinPolicy: TeamLog.GroupJoinPolicy? = nil) { - self.isCompanyManaged = isCompanyManaged - self.joinPolicy = joinPolicy + /// Removed the external ID for team member. + public class MemberRemoveExternalIdDetails: CustomStringConvertible, JSONRepresentable { + /// Old external id. + public let previousValue: String + public init(previousValue: String) { + stringValidator(maxLength: 64)(previousValue) + self.previousValue = previousValue } func json() throws -> JSON { - try GroupCreateDetailsSerializer().serialize(self) + try MemberRemoveExternalIdDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GroupCreateDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberRemoveExternalIdDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for GroupCreateDetails: \(error)" + return "Failed to generate description for MemberRemoveExternalIdDetails: \(error)" } } } - - public class GroupCreateDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GroupCreateDetails) throws -> JSON { + public class MemberRemoveExternalIdDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberRemoveExternalIdDetails) throws -> JSON { let output = [ - "is_company_managed": try NullableSerializer(Serialization._BoolSerializer).serialize(value.isCompanyManaged), - "join_policy": try NullableSerializer(TeamLog.GroupJoinPolicySerializer()).serialize(value.joinPolicy), + "previous_value": try Serialization._StringSerializer.serialize(value.previousValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GroupCreateDetails { + public func deserialize(_ json: JSON) throws -> MemberRemoveExternalIdDetails { switch json { - case .dictionary(let dict): - let isCompanyManaged = try NullableSerializer(Serialization._BoolSerializer).deserialize(dict["is_company_managed"] ?? .null) - let joinPolicy = try NullableSerializer(TeamLog.GroupJoinPolicySerializer()).deserialize(dict["join_policy"] ?? .null) - return GroupCreateDetails(isCompanyManaged: isCompanyManaged, joinPolicy: joinPolicy) - default: - throw JSONSerializerError.deserializeError(type: GroupCreateDetails.self, json: json) + case .dictionary(let dict): + let previousValue = try Serialization._StringSerializer.deserialize(dict["previous_value"] ?? .null) + return MemberRemoveExternalIdDetails(previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: MemberRemoveExternalIdDetails.self, json: json) } } } - /// The GroupCreateType struct - public class GroupCreateType: CustomStringConvertible, JSONRepresentable { + /// The MemberRemoveExternalIdType struct + public class MemberRemoveExternalIdType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -32612,81 +46333,82 @@ public class TeamLog { } func json() throws -> JSON { - try GroupCreateTypeSerializer().serialize(self) + try MemberRemoveExternalIdTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GroupCreateTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberRemoveExternalIdTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for GroupCreateType: \(error)" + return "Failed to generate description for MemberRemoveExternalIdType: \(error)" } } } - - public class GroupCreateTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GroupCreateType) throws -> JSON { + public class MemberRemoveExternalIdTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberRemoveExternalIdType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GroupCreateType { + public func deserialize(_ json: JSON) throws -> MemberRemoveExternalIdType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return GroupCreateType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: GroupCreateType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return MemberRemoveExternalIdType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: MemberRemoveExternalIdType.self, json: json) } } } - /// Deleted group. - public class GroupDeleteDetails: CustomStringConvertible, JSONRepresentable { - /// Is company managed group. - public let isCompanyManaged: Bool? - public init(isCompanyManaged: Bool? = nil) { - self.isCompanyManaged = isCompanyManaged + /// Changed whether users can find team when not invited. + public class MemberRequestsChangePolicyDetails: CustomStringConvertible, JSONRepresentable { + /// New member change requests policy. + public let newValue: TeamLog.MemberRequestsPolicy + /// Previous member change requests policy. Might be missing due to historical data gap. + public let previousValue: TeamLog.MemberRequestsPolicy? + public init(newValue: TeamLog.MemberRequestsPolicy, previousValue: TeamLog.MemberRequestsPolicy? = nil) { + self.newValue = newValue + self.previousValue = previousValue } func json() throws -> JSON { - try GroupDeleteDetailsSerializer().serialize(self) + try MemberRequestsChangePolicyDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GroupDeleteDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberRequestsChangePolicyDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for GroupDeleteDetails: \(error)" + return "Failed to generate description for MemberRequestsChangePolicyDetails: \(error)" } } } - - public class GroupDeleteDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GroupDeleteDetails) throws -> JSON { + public class MemberRequestsChangePolicyDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberRequestsChangePolicyDetails) throws -> JSON { let output = [ - "is_company_managed": try NullableSerializer(Serialization._BoolSerializer).serialize(value.isCompanyManaged), + "new_value": try TeamLog.MemberRequestsPolicySerializer().serialize(value.newValue), + "previous_value": try NullableSerializer(TeamLog.MemberRequestsPolicySerializer()).serialize(value.previousValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GroupDeleteDetails { + public func deserialize(_ json: JSON) throws -> MemberRequestsChangePolicyDetails { switch json { - case .dictionary(let dict): - let isCompanyManaged = try NullableSerializer(Serialization._BoolSerializer).deserialize(dict["is_company_managed"] ?? .null) - return GroupDeleteDetails(isCompanyManaged: isCompanyManaged) - default: - throw JSONSerializerError.deserializeError(type: GroupDeleteDetails.self, json: json) + case .dictionary(let dict): + let newValue = try TeamLog.MemberRequestsPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try NullableSerializer(TeamLog.MemberRequestsPolicySerializer()).deserialize(dict["previous_value"] ?? .null) + return MemberRequestsChangePolicyDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: MemberRequestsChangePolicyDetails.self, json: json) } } } - /// The GroupDeleteType struct - public class GroupDeleteType: CustomStringConvertible, JSONRepresentable { + /// The MemberRequestsChangePolicyType struct + public class MemberRequestsChangePolicyType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -32695,349 +46417,367 @@ public class TeamLog { } func json() throws -> JSON { - try GroupDeleteTypeSerializer().serialize(self) + try MemberRequestsChangePolicyTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GroupDeleteTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberRequestsChangePolicyTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for GroupDeleteType: \(error)" + return "Failed to generate description for MemberRequestsChangePolicyType: \(error)" } } } - - public class GroupDeleteTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GroupDeleteType) throws -> JSON { + public class MemberRequestsChangePolicyTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberRequestsChangePolicyType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GroupDeleteType { + public func deserialize(_ json: JSON) throws -> MemberRequestsChangePolicyType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return GroupDeleteType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: GroupDeleteType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return MemberRequestsChangePolicyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: MemberRequestsChangePolicyType.self, json: json) } } } - /// Updated group. - public class GroupDescriptionUpdatedDetails: CustomStringConvertible, JSONRepresentable { + /// The MemberRequestsPolicy union + public enum MemberRequestsPolicy: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case autoAccept + /// An unspecified error. + case disabled + /// An unspecified error. + case requireApproval + /// An unspecified error. + case other + func json() throws -> JSON { - try GroupDescriptionUpdatedDetailsSerializer().serialize(self) + try MemberRequestsPolicySerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GroupDescriptionUpdatedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberRequestsPolicySerializer().serialize(self)))" } catch { - return "Failed to generate description for GroupDescriptionUpdatedDetails: \(error)" + return "Failed to generate description for MemberRequestsPolicy: \(error)" } } } - - public class GroupDescriptionUpdatedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GroupDescriptionUpdatedDetails) throws -> JSON { - let output = [String: JSON]() - return .dictionary(output) + public class MemberRequestsPolicySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberRequestsPolicy) throws -> JSON { + switch value { + case .autoAccept: + var d = [String: JSON]() + d[".tag"] = .str("auto_accept") + return .dictionary(d) + case .disabled: + var d = [String: JSON]() + d[".tag"] = .str("disabled") + return .dictionary(d) + case .requireApproval: + var d = [String: JSON]() + d[".tag"] = .str("require_approval") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } } - - public func deserialize(_ json: JSON) throws -> GroupDescriptionUpdatedDetails { + public func deserialize(_ json: JSON) throws -> MemberRequestsPolicy { switch json { - case .dictionary: - return GroupDescriptionUpdatedDetails() - default: - throw JSONSerializerError.deserializeError(type: GroupDescriptionUpdatedDetails.self, json: json) + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "auto_accept": + return MemberRequestsPolicy.autoAccept + case "disabled": + return MemberRequestsPolicy.disabled + case "require_approval": + return MemberRequestsPolicy.requireApproval + case "other": + return MemberRequestsPolicy.other + default: + return MemberRequestsPolicy.other + } + default: + throw JSONSerializerError.deserializeError(type: MemberRequestsPolicy.self, json: json) } } } - /// The GroupDescriptionUpdatedType struct - public class GroupDescriptionUpdatedType: CustomStringConvertible, JSONRepresentable { - /// (no description) - public let description_: String - public init(description_: String) { - stringValidator()(description_) - self.description_ = description_ - } + /// Policy for controlling whether team members can send team invites + public enum MemberSendInvitePolicy: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case disabled + /// An unspecified error. + case everyone + /// An unspecified error. + case specificMembers + /// An unspecified error. + case other func json() throws -> JSON { - try GroupDescriptionUpdatedTypeSerializer().serialize(self) + try MemberSendInvitePolicySerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GroupDescriptionUpdatedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberSendInvitePolicySerializer().serialize(self)))" } catch { - return "Failed to generate description for GroupDescriptionUpdatedType: \(error)" + return "Failed to generate description for MemberSendInvitePolicy: \(error)" } } } - - public class GroupDescriptionUpdatedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GroupDescriptionUpdatedType) throws -> JSON { - let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), - ] - return .dictionary(output) + public class MemberSendInvitePolicySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberSendInvitePolicy) throws -> JSON { + switch value { + case .disabled: + var d = [String: JSON]() + d[".tag"] = .str("disabled") + return .dictionary(d) + case .everyone: + var d = [String: JSON]() + d[".tag"] = .str("everyone") + return .dictionary(d) + case .specificMembers: + var d = [String: JSON]() + d[".tag"] = .str("specific_members") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } } - - public func deserialize(_ json: JSON) throws -> GroupDescriptionUpdatedType { + public func deserialize(_ json: JSON) throws -> MemberSendInvitePolicy { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return GroupDescriptionUpdatedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: GroupDescriptionUpdatedType.self, json: json) + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "disabled": + return MemberSendInvitePolicy.disabled + case "everyone": + return MemberSendInvitePolicy.everyone + case "specific_members": + return MemberSendInvitePolicy.specificMembers + case "other": + return MemberSendInvitePolicy.other + default: + return MemberSendInvitePolicy.other + } + default: + throw JSONSerializerError.deserializeError(type: MemberSendInvitePolicy.self, json: json) } } } - /// The GroupJoinPolicy union - public enum GroupJoinPolicy: CustomStringConvertible, JSONRepresentable { - /// An unspecified error. - case open - /// An unspecified error. - case requestToJoin - /// An unspecified error. - case other + /// Changed member send invite policy for team. + public class MemberSendInvitePolicyChangedDetails: CustomStringConvertible, JSONRepresentable { + /// New team member send invite policy. + public let newValue: TeamLog.MemberSendInvitePolicy + /// Previous team member send invite policy. + public let previousValue: TeamLog.MemberSendInvitePolicy + public init(newValue: TeamLog.MemberSendInvitePolicy, previousValue: TeamLog.MemberSendInvitePolicy) { + self.newValue = newValue + self.previousValue = previousValue + } func json() throws -> JSON { - try GroupJoinPolicySerializer().serialize(self) + try MemberSendInvitePolicyChangedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GroupJoinPolicySerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberSendInvitePolicyChangedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for GroupJoinPolicy: \(error)" + return "Failed to generate description for MemberSendInvitePolicyChangedDetails: \(error)" } } } - - public class GroupJoinPolicySerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GroupJoinPolicy) throws -> JSON { - switch value { - case .open: - var d = [String: JSON]() - d[".tag"] = .str("open") - return .dictionary(d) - case .requestToJoin: - var d = [String: JSON]() - d[".tag"] = .str("request_to_join") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) - } + public class MemberSendInvitePolicyChangedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberSendInvitePolicyChangedDetails) throws -> JSON { + let output = [ + "new_value": try TeamLog.MemberSendInvitePolicySerializer().serialize(value.newValue), + "previous_value": try TeamLog.MemberSendInvitePolicySerializer().serialize(value.previousValue), + ] + return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GroupJoinPolicy { + public func deserialize(_ json: JSON) throws -> MemberSendInvitePolicyChangedDetails { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "open": - return GroupJoinPolicy.open - case "request_to_join": - return GroupJoinPolicy.requestToJoin - case "other": - return GroupJoinPolicy.other + case .dictionary(let dict): + let newValue = try TeamLog.MemberSendInvitePolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try TeamLog.MemberSendInvitePolicySerializer().deserialize(dict["previous_value"] ?? .null) + return MemberSendInvitePolicyChangedDetails(newValue: newValue, previousValue: previousValue) default: - return GroupJoinPolicy.other - } - default: - throw JSONSerializerError.deserializeError(type: GroupJoinPolicy.self, json: json) + throw JSONSerializerError.deserializeError(type: MemberSendInvitePolicyChangedDetails.self, json: json) } } } - /// Updated group join policy. - public class GroupJoinPolicyUpdatedDetails: CustomStringConvertible, JSONRepresentable { - /// Is company managed group. - public let isCompanyManaged: Bool? - /// Group join policy. - public let joinPolicy: TeamLog.GroupJoinPolicy? - public init(isCompanyManaged: Bool? = nil, joinPolicy: TeamLog.GroupJoinPolicy? = nil) { - self.isCompanyManaged = isCompanyManaged - self.joinPolicy = joinPolicy + /// The MemberSendInvitePolicyChangedType struct + public class MemberSendInvitePolicyChangedType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ } func json() throws -> JSON { - try GroupJoinPolicyUpdatedDetailsSerializer().serialize(self) + try MemberSendInvitePolicyChangedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GroupJoinPolicyUpdatedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberSendInvitePolicyChangedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for GroupJoinPolicyUpdatedDetails: \(error)" + return "Failed to generate description for MemberSendInvitePolicyChangedType: \(error)" } } } - - public class GroupJoinPolicyUpdatedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GroupJoinPolicyUpdatedDetails) throws -> JSON { + public class MemberSendInvitePolicyChangedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberSendInvitePolicyChangedType) throws -> JSON { let output = [ - "is_company_managed": try NullableSerializer(Serialization._BoolSerializer).serialize(value.isCompanyManaged), - "join_policy": try NullableSerializer(TeamLog.GroupJoinPolicySerializer()).serialize(value.joinPolicy), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GroupJoinPolicyUpdatedDetails { + public func deserialize(_ json: JSON) throws -> MemberSendInvitePolicyChangedType { switch json { - case .dictionary(let dict): - let isCompanyManaged = try NullableSerializer(Serialization._BoolSerializer).deserialize(dict["is_company_managed"] ?? .null) - let joinPolicy = try NullableSerializer(TeamLog.GroupJoinPolicySerializer()).deserialize(dict["join_policy"] ?? .null) - return GroupJoinPolicyUpdatedDetails(isCompanyManaged: isCompanyManaged, joinPolicy: joinPolicy) - default: - throw JSONSerializerError.deserializeError(type: GroupJoinPolicyUpdatedDetails.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return MemberSendInvitePolicyChangedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: MemberSendInvitePolicyChangedType.self, json: json) } } } - /// The GroupJoinPolicyUpdatedType struct - public class GroupJoinPolicyUpdatedType: CustomStringConvertible, JSONRepresentable { - /// (no description) - public let description_: String - public init(description_: String) { - stringValidator()(description_) - self.description_ = description_ - } + /// Set team member profile photo. + public class MemberSetProfilePhotoDetails: CustomStringConvertible, JSONRepresentable { func json() throws -> JSON { - try GroupJoinPolicyUpdatedTypeSerializer().serialize(self) + try MemberSetProfilePhotoDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GroupJoinPolicyUpdatedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberSetProfilePhotoDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for GroupJoinPolicyUpdatedType: \(error)" + return "Failed to generate description for MemberSetProfilePhotoDetails: \(error)" } } } - - public class GroupJoinPolicyUpdatedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GroupJoinPolicyUpdatedType) throws -> JSON { - let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), - ] + public class MemberSetProfilePhotoDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberSetProfilePhotoDetails) throws -> JSON { + let output = [String: JSON]() return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GroupJoinPolicyUpdatedType { + public func deserialize(_ json: JSON) throws -> MemberSetProfilePhotoDetails { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return GroupJoinPolicyUpdatedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: GroupJoinPolicyUpdatedType.self, json: json) + case .dictionary(_): + return MemberSetProfilePhotoDetails() + default: + throw JSONSerializerError.deserializeError(type: MemberSetProfilePhotoDetails.self, json: json) } } } - /// Group's logged information. - public class GroupLogInfo: CustomStringConvertible, JSONRepresentable { - /// The unique id of this group. - public let groupId: String? - /// The name of this group. - public let displayName: String - /// External group ID. - public let externalId: String? - public init(displayName: String, groupId: String? = nil, externalId: String? = nil) { - nullableValidator(stringValidator())(groupId) - self.groupId = groupId - stringValidator()(displayName) - self.displayName = displayName - nullableValidator(stringValidator())(externalId) - self.externalId = externalId + /// The MemberSetProfilePhotoType struct + public class MemberSetProfilePhotoType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ } func json() throws -> JSON { - try GroupLogInfoSerializer().serialize(self) + try MemberSetProfilePhotoTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GroupLogInfoSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberSetProfilePhotoTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for GroupLogInfo: \(error)" + return "Failed to generate description for MemberSetProfilePhotoType: \(error)" } } } - - public class GroupLogInfoSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GroupLogInfo) throws -> JSON { + public class MemberSetProfilePhotoTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberSetProfilePhotoType) throws -> JSON { let output = [ - "display_name": try Serialization._StringSerializer.serialize(value.displayName), - "group_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.groupId), - "external_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.externalId), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GroupLogInfo { + public func deserialize(_ json: JSON) throws -> MemberSetProfilePhotoType { switch json { - case .dictionary(let dict): - let displayName = try Serialization._StringSerializer.deserialize(dict["display_name"] ?? .null) - let groupId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["group_id"] ?? .null) - let externalId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["external_id"] ?? .null) - return GroupLogInfo(displayName: displayName, groupId: groupId, externalId: externalId) - default: - throw JSONSerializerError.deserializeError(type: GroupLogInfo.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return MemberSetProfilePhotoType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: MemberSetProfilePhotoType.self, json: json) } } } - /// Moved group. - public class GroupMovedDetails: CustomStringConvertible, JSONRepresentable { + /// Set custom member space limit. + public class MemberSpaceLimitsAddCustomQuotaDetails: CustomStringConvertible, JSONRepresentable { + /// New custom quota value in bytes. + public let newValue: UInt64 + public init(newValue: UInt64) { + comparableValidator()(newValue) + self.newValue = newValue + } + func json() throws -> JSON { - try GroupMovedDetailsSerializer().serialize(self) + try MemberSpaceLimitsAddCustomQuotaDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GroupMovedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberSpaceLimitsAddCustomQuotaDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for GroupMovedDetails: \(error)" + return "Failed to generate description for MemberSpaceLimitsAddCustomQuotaDetails: \(error)" } } } - - public class GroupMovedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GroupMovedDetails) throws -> JSON { - let output = [String: JSON]() + public class MemberSpaceLimitsAddCustomQuotaDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberSpaceLimitsAddCustomQuotaDetails) throws -> JSON { + let output = [ + "new_value": try Serialization._UInt64Serializer.serialize(value.newValue), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GroupMovedDetails { + public func deserialize(_ json: JSON) throws -> MemberSpaceLimitsAddCustomQuotaDetails { switch json { - case .dictionary: - return GroupMovedDetails() - default: - throw JSONSerializerError.deserializeError(type: GroupMovedDetails.self, json: json) + case .dictionary(let dict): + let newValue = try Serialization._UInt64Serializer.deserialize(dict["new_value"] ?? .null) + return MemberSpaceLimitsAddCustomQuotaDetails(newValue: newValue) + default: + throw JSONSerializerError.deserializeError(type: MemberSpaceLimitsAddCustomQuotaDetails.self, json: json) } } } - /// The GroupMovedType struct - public class GroupMovedType: CustomStringConvertible, JSONRepresentable { + /// The MemberSpaceLimitsAddCustomQuotaType struct + public class MemberSpaceLimitsAddCustomQuotaType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -33046,82 +46786,69 @@ public class TeamLog { } func json() throws -> JSON { - try GroupMovedTypeSerializer().serialize(self) + try MemberSpaceLimitsAddCustomQuotaTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GroupMovedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberSpaceLimitsAddCustomQuotaTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for GroupMovedType: \(error)" + return "Failed to generate description for MemberSpaceLimitsAddCustomQuotaType: \(error)" } } } - - public class GroupMovedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GroupMovedType) throws -> JSON { + public class MemberSpaceLimitsAddCustomQuotaTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberSpaceLimitsAddCustomQuotaType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GroupMovedType { + public func deserialize(_ json: JSON) throws -> MemberSpaceLimitsAddCustomQuotaType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return GroupMovedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: GroupMovedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return MemberSpaceLimitsAddCustomQuotaType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: MemberSpaceLimitsAddCustomQuotaType.self, json: json) } } } - /// Removed external ID for group. - public class GroupRemoveExternalIdDetails: CustomStringConvertible, JSONRepresentable { - /// Old external id. - public let previousValue: String - public init(previousValue: String) { - stringValidator()(previousValue) - self.previousValue = previousValue - } + /// Added members to member space limit exception list. + public class MemberSpaceLimitsAddExceptionDetails: CustomStringConvertible, JSONRepresentable { func json() throws -> JSON { - try GroupRemoveExternalIdDetailsSerializer().serialize(self) + try MemberSpaceLimitsAddExceptionDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GroupRemoveExternalIdDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberSpaceLimitsAddExceptionDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for GroupRemoveExternalIdDetails: \(error)" + return "Failed to generate description for MemberSpaceLimitsAddExceptionDetails: \(error)" } } } - - public class GroupRemoveExternalIdDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GroupRemoveExternalIdDetails) throws -> JSON { - let output = [ - "previous_value": try Serialization._StringSerializer.serialize(value.previousValue), - ] + public class MemberSpaceLimitsAddExceptionDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberSpaceLimitsAddExceptionDetails) throws -> JSON { + let output = [String: JSON]() return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GroupRemoveExternalIdDetails { + public func deserialize(_ json: JSON) throws -> MemberSpaceLimitsAddExceptionDetails { switch json { - case .dictionary(let dict): - let previousValue = try Serialization._StringSerializer.deserialize(dict["previous_value"] ?? .null) - return GroupRemoveExternalIdDetails(previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: GroupRemoveExternalIdDetails.self, json: json) + case .dictionary(_): + return MemberSpaceLimitsAddExceptionDetails() + default: + throw JSONSerializerError.deserializeError(type: MemberSpaceLimitsAddExceptionDetails.self, json: json) } } } - /// The GroupRemoveExternalIdType struct - public class GroupRemoveExternalIdType: CustomStringConvertible, JSONRepresentable { + /// The MemberSpaceLimitsAddExceptionType struct + public class MemberSpaceLimitsAddExceptionType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -33130,72 +46857,82 @@ public class TeamLog { } func json() throws -> JSON { - try GroupRemoveExternalIdTypeSerializer().serialize(self) + try MemberSpaceLimitsAddExceptionTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GroupRemoveExternalIdTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberSpaceLimitsAddExceptionTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for GroupRemoveExternalIdType: \(error)" + return "Failed to generate description for MemberSpaceLimitsAddExceptionType: \(error)" } } } - - public class GroupRemoveExternalIdTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GroupRemoveExternalIdType) throws -> JSON { + public class MemberSpaceLimitsAddExceptionTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberSpaceLimitsAddExceptionType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GroupRemoveExternalIdType { + public func deserialize(_ json: JSON) throws -> MemberSpaceLimitsAddExceptionType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return GroupRemoveExternalIdType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: GroupRemoveExternalIdType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return MemberSpaceLimitsAddExceptionType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: MemberSpaceLimitsAddExceptionType.self, json: json) } } } - /// Removed team members from group. - public class GroupRemoveMemberDetails: CustomStringConvertible, JSONRepresentable { + /// Changed member space limit type for team. + public class MemberSpaceLimitsChangeCapsTypePolicyDetails: CustomStringConvertible, JSONRepresentable { + /// Previous space limit type. + public let previousValue: TeamLog.SpaceCapsType + /// New space limit type. + public let newValue: TeamLog.SpaceCapsType + public init(previousValue: TeamLog.SpaceCapsType, newValue: TeamLog.SpaceCapsType) { + self.previousValue = previousValue + self.newValue = newValue + } + func json() throws -> JSON { - try GroupRemoveMemberDetailsSerializer().serialize(self) + try MemberSpaceLimitsChangeCapsTypePolicyDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GroupRemoveMemberDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberSpaceLimitsChangeCapsTypePolicyDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for GroupRemoveMemberDetails: \(error)" + return "Failed to generate description for MemberSpaceLimitsChangeCapsTypePolicyDetails: \(error)" } } } - - public class GroupRemoveMemberDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GroupRemoveMemberDetails) throws -> JSON { - let output = [String: JSON]() + public class MemberSpaceLimitsChangeCapsTypePolicyDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberSpaceLimitsChangeCapsTypePolicyDetails) throws -> JSON { + let output = [ + "previous_value": try TeamLog.SpaceCapsTypeSerializer().serialize(value.previousValue), + "new_value": try TeamLog.SpaceCapsTypeSerializer().serialize(value.newValue), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GroupRemoveMemberDetails { + public func deserialize(_ json: JSON) throws -> MemberSpaceLimitsChangeCapsTypePolicyDetails { switch json { - case .dictionary: - return GroupRemoveMemberDetails() - default: - throw JSONSerializerError.deserializeError(type: GroupRemoveMemberDetails.self, json: json) + case .dictionary(let dict): + let previousValue = try TeamLog.SpaceCapsTypeSerializer().deserialize(dict["previous_value"] ?? .null) + let newValue = try TeamLog.SpaceCapsTypeSerializer().deserialize(dict["new_value"] ?? .null) + return MemberSpaceLimitsChangeCapsTypePolicyDetails(previousValue: previousValue, newValue: newValue) + default: + throw JSONSerializerError.deserializeError(type: MemberSpaceLimitsChangeCapsTypePolicyDetails.self, json: json) } } } - /// The GroupRemoveMemberType struct - public class GroupRemoveMemberType: CustomStringConvertible, JSONRepresentable { + /// The MemberSpaceLimitsChangeCapsTypePolicyType struct + public class MemberSpaceLimitsChangeCapsTypePolicyType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -33204,88 +46941,84 @@ public class TeamLog { } func json() throws -> JSON { - try GroupRemoveMemberTypeSerializer().serialize(self) + try MemberSpaceLimitsChangeCapsTypePolicyTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GroupRemoveMemberTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberSpaceLimitsChangeCapsTypePolicyTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for GroupRemoveMemberType: \(error)" + return "Failed to generate description for MemberSpaceLimitsChangeCapsTypePolicyType: \(error)" } } } - - public class GroupRemoveMemberTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GroupRemoveMemberType) throws -> JSON { + public class MemberSpaceLimitsChangeCapsTypePolicyTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberSpaceLimitsChangeCapsTypePolicyType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GroupRemoveMemberType { + public func deserialize(_ json: JSON) throws -> MemberSpaceLimitsChangeCapsTypePolicyType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return GroupRemoveMemberType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: GroupRemoveMemberType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return MemberSpaceLimitsChangeCapsTypePolicyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: MemberSpaceLimitsChangeCapsTypePolicyType.self, json: json) } } } - /// Renamed group. - public class GroupRenameDetails: CustomStringConvertible, JSONRepresentable { - /// Previous display name. - public let previousValue: String - /// New display name. - public let newValue: String - public init(previousValue: String, newValue: String) { - stringValidator()(previousValue) + /// Changed custom member space limit. + public class MemberSpaceLimitsChangeCustomQuotaDetails: CustomStringConvertible, JSONRepresentable { + /// Previous custom quota value in bytes. + public let previousValue: UInt64 + /// New custom quota value in bytes. + public let newValue: UInt64 + public init(previousValue: UInt64, newValue: UInt64) { + comparableValidator()(previousValue) self.previousValue = previousValue - stringValidator()(newValue) + comparableValidator()(newValue) self.newValue = newValue } func json() throws -> JSON { - try GroupRenameDetailsSerializer().serialize(self) + try MemberSpaceLimitsChangeCustomQuotaDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GroupRenameDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberSpaceLimitsChangeCustomQuotaDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for GroupRenameDetails: \(error)" + return "Failed to generate description for MemberSpaceLimitsChangeCustomQuotaDetails: \(error)" } } } - - public class GroupRenameDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GroupRenameDetails) throws -> JSON { + public class MemberSpaceLimitsChangeCustomQuotaDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberSpaceLimitsChangeCustomQuotaDetails) throws -> JSON { let output = [ - "previous_value": try Serialization._StringSerializer.serialize(value.previousValue), - "new_value": try Serialization._StringSerializer.serialize(value.newValue), + "previous_value": try Serialization._UInt64Serializer.serialize(value.previousValue), + "new_value": try Serialization._UInt64Serializer.serialize(value.newValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GroupRenameDetails { + public func deserialize(_ json: JSON) throws -> MemberSpaceLimitsChangeCustomQuotaDetails { switch json { - case .dictionary(let dict): - let previousValue = try Serialization._StringSerializer.deserialize(dict["previous_value"] ?? .null) - let newValue = try Serialization._StringSerializer.deserialize(dict["new_value"] ?? .null) - return GroupRenameDetails(previousValue: previousValue, newValue: newValue) - default: - throw JSONSerializerError.deserializeError(type: GroupRenameDetails.self, json: json) + case .dictionary(let dict): + let previousValue = try Serialization._UInt64Serializer.deserialize(dict["previous_value"] ?? .null) + let newValue = try Serialization._UInt64Serializer.deserialize(dict["new_value"] ?? .null) + return MemberSpaceLimitsChangeCustomQuotaDetails(previousValue: previousValue, newValue: newValue) + default: + throw JSONSerializerError.deserializeError(type: MemberSpaceLimitsChangeCustomQuotaDetails.self, json: json) } } } - /// The GroupRenameType struct - public class GroupRenameType: CustomStringConvertible, JSONRepresentable { + /// The MemberSpaceLimitsChangeCustomQuotaType struct + public class MemberSpaceLimitsChangeCustomQuotaType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -33294,86 +47027,84 @@ public class TeamLog { } func json() throws -> JSON { - try GroupRenameTypeSerializer().serialize(self) + try MemberSpaceLimitsChangeCustomQuotaTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GroupRenameTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberSpaceLimitsChangeCustomQuotaTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for GroupRenameType: \(error)" + return "Failed to generate description for MemberSpaceLimitsChangeCustomQuotaType: \(error)" } } } - - public class GroupRenameTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GroupRenameType) throws -> JSON { + public class MemberSpaceLimitsChangeCustomQuotaTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberSpaceLimitsChangeCustomQuotaType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GroupRenameType { + public func deserialize(_ json: JSON) throws -> MemberSpaceLimitsChangeCustomQuotaType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return GroupRenameType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: GroupRenameType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return MemberSpaceLimitsChangeCustomQuotaType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: MemberSpaceLimitsChangeCustomQuotaType.self, json: json) } } } - /// Changed who can create groups. - public class GroupUserManagementChangePolicyDetails: CustomStringConvertible, JSONRepresentable { - /// New group users management policy. - public let newValue: TeamPolicies.GroupCreation - /// Previous group users management policy. Might be missing due to historical data gap. - public let previousValue: TeamPolicies.GroupCreation? - public init(newValue: TeamPolicies.GroupCreation, previousValue: TeamPolicies.GroupCreation? = nil) { - self.newValue = newValue + /// Changed team default member space limit. + public class MemberSpaceLimitsChangePolicyDetails: CustomStringConvertible, JSONRepresentable { + /// Previous team default limit value in bytes. Might be missing due to historical data gap. + public let previousValue: UInt64? + /// New team default limit value in bytes. Might be missing due to historical data gap. + public let newValue: UInt64? + public init(previousValue: UInt64? = nil, newValue: UInt64? = nil) { + nullableValidator(comparableValidator())(previousValue) self.previousValue = previousValue + nullableValidator(comparableValidator())(newValue) + self.newValue = newValue } func json() throws -> JSON { - try GroupUserManagementChangePolicyDetailsSerializer().serialize(self) + try MemberSpaceLimitsChangePolicyDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GroupUserManagementChangePolicyDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberSpaceLimitsChangePolicyDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for GroupUserManagementChangePolicyDetails: \(error)" + return "Failed to generate description for MemberSpaceLimitsChangePolicyDetails: \(error)" } } } - - public class GroupUserManagementChangePolicyDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GroupUserManagementChangePolicyDetails) throws -> JSON { + public class MemberSpaceLimitsChangePolicyDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberSpaceLimitsChangePolicyDetails) throws -> JSON { let output = [ - "new_value": try TeamPolicies.GroupCreationSerializer().serialize(value.newValue), - "previous_value": try NullableSerializer(TeamPolicies.GroupCreationSerializer()).serialize(value.previousValue), + "previous_value": try NullableSerializer(Serialization._UInt64Serializer).serialize(value.previousValue), + "new_value": try NullableSerializer(Serialization._UInt64Serializer).serialize(value.newValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GroupUserManagementChangePolicyDetails { + public func deserialize(_ json: JSON) throws -> MemberSpaceLimitsChangePolicyDetails { switch json { - case .dictionary(let dict): - let newValue = try TeamPolicies.GroupCreationSerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try NullableSerializer(TeamPolicies.GroupCreationSerializer()).deserialize(dict["previous_value"] ?? .null) - return GroupUserManagementChangePolicyDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: GroupUserManagementChangePolicyDetails.self, json: json) + case .dictionary(let dict): + let previousValue = try NullableSerializer(Serialization._UInt64Serializer).deserialize(dict["previous_value"] ?? .null) + let newValue = try NullableSerializer(Serialization._UInt64Serializer).deserialize(dict["new_value"] ?? .null) + return MemberSpaceLimitsChangePolicyDetails(previousValue: previousValue, newValue: newValue) + default: + throw JSONSerializerError.deserializeError(type: MemberSpaceLimitsChangePolicyDetails.self, json: json) } } } - /// The GroupUserManagementChangePolicyType struct - public class GroupUserManagementChangePolicyType: CustomStringConvertible, JSONRepresentable { + /// The MemberSpaceLimitsChangePolicyType struct + public class MemberSpaceLimitsChangePolicyType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -33382,122 +47113,82 @@ public class TeamLog { } func json() throws -> JSON { - try GroupUserManagementChangePolicyTypeSerializer().serialize(self) + try MemberSpaceLimitsChangePolicyTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GroupUserManagementChangePolicyTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberSpaceLimitsChangePolicyTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for GroupUserManagementChangePolicyType: \(error)" + return "Failed to generate description for MemberSpaceLimitsChangePolicyType: \(error)" } } } - - public class GroupUserManagementChangePolicyTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GroupUserManagementChangePolicyType) throws -> JSON { + public class MemberSpaceLimitsChangePolicyTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberSpaceLimitsChangePolicyType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GroupUserManagementChangePolicyType { + public func deserialize(_ json: JSON) throws -> MemberSpaceLimitsChangePolicyType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return GroupUserManagementChangePolicyType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: GroupUserManagementChangePolicyType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return MemberSpaceLimitsChangePolicyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: MemberSpaceLimitsChangePolicyType.self, json: json) } } } - /// Changed guest team admin status. - public class GuestAdminChangeStatusDetails: CustomStringConvertible, JSONRepresentable { - /// True for guest, false for host. - public let isGuest: Bool - /// The name of the guest team. - public let guestTeamName: String? - /// The name of the host team. - public let hostTeamName: String? - /// Previous request state. - public let previousValue: TeamLog.TrustedTeamsRequestState - /// New request state. - public let newValue: TeamLog.TrustedTeamsRequestState - /// Action details. - public let actionDetails: TeamLog.TrustedTeamsRequestAction - public init( - isGuest: Bool, - previousValue: TeamLog.TrustedTeamsRequestState, - newValue: TeamLog.TrustedTeamsRequestState, - actionDetails: TeamLog.TrustedTeamsRequestAction, - guestTeamName: String? = nil, - hostTeamName: String? = nil - ) { - self.isGuest = isGuest - nullableValidator(stringValidator())(guestTeamName) - self.guestTeamName = guestTeamName - nullableValidator(stringValidator())(hostTeamName) - self.hostTeamName = hostTeamName + /// Changed space limit status. + public class MemberSpaceLimitsChangeStatusDetails: CustomStringConvertible, JSONRepresentable { + /// Previous storage quota status. + public let previousValue: TeamLog.SpaceLimitsStatus + /// New storage quota status. + public let newValue: TeamLog.SpaceLimitsStatus + public init(previousValue: TeamLog.SpaceLimitsStatus, newValue: TeamLog.SpaceLimitsStatus) { self.previousValue = previousValue self.newValue = newValue - self.actionDetails = actionDetails } func json() throws -> JSON { - try GuestAdminChangeStatusDetailsSerializer().serialize(self) + try MemberSpaceLimitsChangeStatusDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GuestAdminChangeStatusDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberSpaceLimitsChangeStatusDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for GuestAdminChangeStatusDetails: \(error)" + return "Failed to generate description for MemberSpaceLimitsChangeStatusDetails: \(error)" } } } - - public class GuestAdminChangeStatusDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GuestAdminChangeStatusDetails) throws -> JSON { + public class MemberSpaceLimitsChangeStatusDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberSpaceLimitsChangeStatusDetails) throws -> JSON { let output = [ - "is_guest": try Serialization._BoolSerializer.serialize(value.isGuest), - "previous_value": try TeamLog.TrustedTeamsRequestStateSerializer().serialize(value.previousValue), - "new_value": try TeamLog.TrustedTeamsRequestStateSerializer().serialize(value.newValue), - "action_details": try TeamLog.TrustedTeamsRequestActionSerializer().serialize(value.actionDetails), - "guest_team_name": try NullableSerializer(Serialization._StringSerializer).serialize(value.guestTeamName), - "host_team_name": try NullableSerializer(Serialization._StringSerializer).serialize(value.hostTeamName), + "previous_value": try TeamLog.SpaceLimitsStatusSerializer().serialize(value.previousValue), + "new_value": try TeamLog.SpaceLimitsStatusSerializer().serialize(value.newValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GuestAdminChangeStatusDetails { + public func deserialize(_ json: JSON) throws -> MemberSpaceLimitsChangeStatusDetails { switch json { - case .dictionary(let dict): - let isGuest = try Serialization._BoolSerializer.deserialize(dict["is_guest"] ?? .null) - let previousValue = try TeamLog.TrustedTeamsRequestStateSerializer().deserialize(dict["previous_value"] ?? .null) - let newValue = try TeamLog.TrustedTeamsRequestStateSerializer().deserialize(dict["new_value"] ?? .null) - let actionDetails = try TeamLog.TrustedTeamsRequestActionSerializer().deserialize(dict["action_details"] ?? .null) - let guestTeamName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["guest_team_name"] ?? .null) - let hostTeamName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["host_team_name"] ?? .null) - return GuestAdminChangeStatusDetails( - isGuest: isGuest, - previousValue: previousValue, - newValue: newValue, - actionDetails: actionDetails, - guestTeamName: guestTeamName, - hostTeamName: hostTeamName - ) - default: - throw JSONSerializerError.deserializeError(type: GuestAdminChangeStatusDetails.self, json: json) + case .dictionary(let dict): + let previousValue = try TeamLog.SpaceLimitsStatusSerializer().deserialize(dict["previous_value"] ?? .null) + let newValue = try TeamLog.SpaceLimitsStatusSerializer().deserialize(dict["new_value"] ?? .null) + return MemberSpaceLimitsChangeStatusDetails(previousValue: previousValue, newValue: newValue) + default: + throw JSONSerializerError.deserializeError(type: MemberSpaceLimitsChangeStatusDetails.self, json: json) } } } - /// The GuestAdminChangeStatusType struct - public class GuestAdminChangeStatusType: CustomStringConvertible, JSONRepresentable { + /// The MemberSpaceLimitsChangeStatusType struct + public class MemberSpaceLimitsChangeStatusType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -33506,88 +47197,69 @@ public class TeamLog { } func json() throws -> JSON { - try GuestAdminChangeStatusTypeSerializer().serialize(self) + try MemberSpaceLimitsChangeStatusTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GuestAdminChangeStatusTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberSpaceLimitsChangeStatusTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for GuestAdminChangeStatusType: \(error)" + return "Failed to generate description for MemberSpaceLimitsChangeStatusType: \(error)" } } } - - public class GuestAdminChangeStatusTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GuestAdminChangeStatusType) throws -> JSON { + public class MemberSpaceLimitsChangeStatusTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberSpaceLimitsChangeStatusType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GuestAdminChangeStatusType { + public func deserialize(_ json: JSON) throws -> MemberSpaceLimitsChangeStatusType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return GuestAdminChangeStatusType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: GuestAdminChangeStatusType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return MemberSpaceLimitsChangeStatusType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: MemberSpaceLimitsChangeStatusType.self, json: json) } } } - /// Started trusted team admin session. - public class GuestAdminSignedInViaTrustedTeamsDetails: CustomStringConvertible, JSONRepresentable { - /// Host team name. - public let teamName: String? - /// Trusted team name. - public let trustedTeamName: String? - public init(teamName: String? = nil, trustedTeamName: String? = nil) { - nullableValidator(stringValidator())(teamName) - self.teamName = teamName - nullableValidator(stringValidator())(trustedTeamName) - self.trustedTeamName = trustedTeamName - } + /// Removed custom member space limit. + public class MemberSpaceLimitsRemoveCustomQuotaDetails: CustomStringConvertible, JSONRepresentable { func json() throws -> JSON { - try GuestAdminSignedInViaTrustedTeamsDetailsSerializer().serialize(self) + try MemberSpaceLimitsRemoveCustomQuotaDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GuestAdminSignedInViaTrustedTeamsDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberSpaceLimitsRemoveCustomQuotaDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for GuestAdminSignedInViaTrustedTeamsDetails: \(error)" + return "Failed to generate description for MemberSpaceLimitsRemoveCustomQuotaDetails: \(error)" } } } - - public class GuestAdminSignedInViaTrustedTeamsDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GuestAdminSignedInViaTrustedTeamsDetails) throws -> JSON { - let output = [ - "team_name": try NullableSerializer(Serialization._StringSerializer).serialize(value.teamName), - "trusted_team_name": try NullableSerializer(Serialization._StringSerializer).serialize(value.trustedTeamName), - ] + public class MemberSpaceLimitsRemoveCustomQuotaDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberSpaceLimitsRemoveCustomQuotaDetails) throws -> JSON { + let output = [String: JSON]() return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GuestAdminSignedInViaTrustedTeamsDetails { + public func deserialize(_ json: JSON) throws -> MemberSpaceLimitsRemoveCustomQuotaDetails { switch json { - case .dictionary(let dict): - let teamName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["team_name"] ?? .null) - let trustedTeamName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["trusted_team_name"] ?? .null) - return GuestAdminSignedInViaTrustedTeamsDetails(teamName: teamName, trustedTeamName: trustedTeamName) - default: - throw JSONSerializerError.deserializeError(type: GuestAdminSignedInViaTrustedTeamsDetails.self, json: json) + case .dictionary(_): + return MemberSpaceLimitsRemoveCustomQuotaDetails() + default: + throw JSONSerializerError.deserializeError(type: MemberSpaceLimitsRemoveCustomQuotaDetails.self, json: json) } } } - /// The GuestAdminSignedInViaTrustedTeamsType struct - public class GuestAdminSignedInViaTrustedTeamsType: CustomStringConvertible, JSONRepresentable { + /// The MemberSpaceLimitsRemoveCustomQuotaType struct + public class MemberSpaceLimitsRemoveCustomQuotaType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -33596,88 +47268,69 @@ public class TeamLog { } func json() throws -> JSON { - try GuestAdminSignedInViaTrustedTeamsTypeSerializer().serialize(self) + try MemberSpaceLimitsRemoveCustomQuotaTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GuestAdminSignedInViaTrustedTeamsTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberSpaceLimitsRemoveCustomQuotaTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for GuestAdminSignedInViaTrustedTeamsType: \(error)" + return "Failed to generate description for MemberSpaceLimitsRemoveCustomQuotaType: \(error)" } } } - - public class GuestAdminSignedInViaTrustedTeamsTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GuestAdminSignedInViaTrustedTeamsType) throws -> JSON { + public class MemberSpaceLimitsRemoveCustomQuotaTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberSpaceLimitsRemoveCustomQuotaType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GuestAdminSignedInViaTrustedTeamsType { + public func deserialize(_ json: JSON) throws -> MemberSpaceLimitsRemoveCustomQuotaType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return GuestAdminSignedInViaTrustedTeamsType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: GuestAdminSignedInViaTrustedTeamsType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return MemberSpaceLimitsRemoveCustomQuotaType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: MemberSpaceLimitsRemoveCustomQuotaType.self, json: json) } } } - /// Ended trusted team admin session. - public class GuestAdminSignedOutViaTrustedTeamsDetails: CustomStringConvertible, JSONRepresentable { - /// Host team name. - public let teamName: String? - /// Trusted team name. - public let trustedTeamName: String? - public init(teamName: String? = nil, trustedTeamName: String? = nil) { - nullableValidator(stringValidator())(teamName) - self.teamName = teamName - nullableValidator(stringValidator())(trustedTeamName) - self.trustedTeamName = trustedTeamName - } + /// Removed members from member space limit exception list. + public class MemberSpaceLimitsRemoveExceptionDetails: CustomStringConvertible, JSONRepresentable { func json() throws -> JSON { - try GuestAdminSignedOutViaTrustedTeamsDetailsSerializer().serialize(self) + try MemberSpaceLimitsRemoveExceptionDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GuestAdminSignedOutViaTrustedTeamsDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberSpaceLimitsRemoveExceptionDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for GuestAdminSignedOutViaTrustedTeamsDetails: \(error)" + return "Failed to generate description for MemberSpaceLimitsRemoveExceptionDetails: \(error)" } } } - - public class GuestAdminSignedOutViaTrustedTeamsDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GuestAdminSignedOutViaTrustedTeamsDetails) throws -> JSON { - let output = [ - "team_name": try NullableSerializer(Serialization._StringSerializer).serialize(value.teamName), - "trusted_team_name": try NullableSerializer(Serialization._StringSerializer).serialize(value.trustedTeamName), - ] + public class MemberSpaceLimitsRemoveExceptionDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberSpaceLimitsRemoveExceptionDetails) throws -> JSON { + let output = [String: JSON]() return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GuestAdminSignedOutViaTrustedTeamsDetails { + public func deserialize(_ json: JSON) throws -> MemberSpaceLimitsRemoveExceptionDetails { switch json { - case .dictionary(let dict): - let teamName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["team_name"] ?? .null) - let trustedTeamName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["trusted_team_name"] ?? .null) - return GuestAdminSignedOutViaTrustedTeamsDetails(teamName: teamName, trustedTeamName: trustedTeamName) - default: - throw JSONSerializerError.deserializeError(type: GuestAdminSignedOutViaTrustedTeamsDetails.self, json: json) + case .dictionary(_): + return MemberSpaceLimitsRemoveExceptionDetails() + default: + throw JSONSerializerError.deserializeError(type: MemberSpaceLimitsRemoveExceptionDetails.self, json: json) } } } - - /// The GuestAdminSignedOutViaTrustedTeamsType struct - public class GuestAdminSignedOutViaTrustedTeamsType: CustomStringConvertible, JSONRepresentable { + + /// The MemberSpaceLimitsRemoveExceptionType struct + public class MemberSpaceLimitsRemoveExceptionType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -33686,143 +47339,169 @@ public class TeamLog { } func json() throws -> JSON { - try GuestAdminSignedOutViaTrustedTeamsTypeSerializer().serialize(self) + try MemberSpaceLimitsRemoveExceptionTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try GuestAdminSignedOutViaTrustedTeamsTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberSpaceLimitsRemoveExceptionTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for GuestAdminSignedOutViaTrustedTeamsType: \(error)" + return "Failed to generate description for MemberSpaceLimitsRemoveExceptionType: \(error)" } } } - - public class GuestAdminSignedOutViaTrustedTeamsTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: GuestAdminSignedOutViaTrustedTeamsType) throws -> JSON { + public class MemberSpaceLimitsRemoveExceptionTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberSpaceLimitsRemoveExceptionType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> GuestAdminSignedOutViaTrustedTeamsType { + public func deserialize(_ json: JSON) throws -> MemberSpaceLimitsRemoveExceptionType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return GuestAdminSignedOutViaTrustedTeamsType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: GuestAdminSignedOutViaTrustedTeamsType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return MemberSpaceLimitsRemoveExceptionType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: MemberSpaceLimitsRemoveExceptionType.self, json: json) } } } - /// The IdentifierType union - public enum IdentifierType: CustomStringConvertible, JSONRepresentable { + /// The MemberStatus union + public enum MemberStatus: CustomStringConvertible, JSONRepresentable { /// An unspecified error. - case email + case active /// An unspecified error. - case facebookProfileName + case invited + /// An unspecified error. + case movedToAnotherTeam + /// An unspecified error. + case notJoined + /// An unspecified error. + case removed + /// An unspecified error. + case suspended /// An unspecified error. case other func json() throws -> JSON { - try IdentifierTypeSerializer().serialize(self) + try MemberStatusSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try IdentifierTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberStatusSerializer().serialize(self)))" } catch { - return "Failed to generate description for IdentifierType: \(error)" + return "Failed to generate description for MemberStatus: \(error)" } } } - - public class IdentifierTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: IdentifierType) throws -> JSON { + public class MemberStatusSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberStatus) throws -> JSON { switch value { - case .email: - var d = [String: JSON]() - d[".tag"] = .str("email") - return .dictionary(d) - case .facebookProfileName: - var d = [String: JSON]() - d[".tag"] = .str("facebook_profile_name") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) + case .active: + var d = [String: JSON]() + d[".tag"] = .str("active") + return .dictionary(d) + case .invited: + var d = [String: JSON]() + d[".tag"] = .str("invited") + return .dictionary(d) + case .movedToAnotherTeam: + var d = [String: JSON]() + d[".tag"] = .str("moved_to_another_team") + return .dictionary(d) + case .notJoined: + var d = [String: JSON]() + d[".tag"] = .str("not_joined") + return .dictionary(d) + case .removed: + var d = [String: JSON]() + d[".tag"] = .str("removed") + return .dictionary(d) + case .suspended: + var d = [String: JSON]() + d[".tag"] = .str("suspended") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) } } - - public func deserialize(_ json: JSON) throws -> IdentifierType { + public func deserialize(_ json: JSON) throws -> MemberStatus { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "email": - return IdentifierType.email - case "facebook_profile_name": - return IdentifierType.facebookProfileName - case "other": - return IdentifierType.other + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "active": + return MemberStatus.active + case "invited": + return MemberStatus.invited + case "moved_to_another_team": + return MemberStatus.movedToAnotherTeam + case "not_joined": + return MemberStatus.notJoined + case "removed": + return MemberStatus.removed + case "suspended": + return MemberStatus.suspended + case "other": + return MemberStatus.other + default: + return MemberStatus.other + } default: - return IdentifierType.other - } - default: - throw JSONSerializerError.deserializeError(type: IdentifierType.self, json: json) + throw JSONSerializerError.deserializeError(type: MemberStatus.self, json: json) } } } - /// Connected integration for member. - public class IntegrationConnectedDetails: CustomStringConvertible, JSONRepresentable { - /// Name of the third-party integration. - public let integrationName: String - public init(integrationName: String) { - stringValidator()(integrationName) - self.integrationName = integrationName + /// Suggested person to add to team. + public class MemberSuggestDetails: CustomStringConvertible, JSONRepresentable { + /// suggested users emails. + public let suggestedMembers: Array + public init(suggestedMembers: Array) { + arrayValidator(itemValidator: stringValidator(maxLength: 255))(suggestedMembers) + self.suggestedMembers = suggestedMembers } func json() throws -> JSON { - try IntegrationConnectedDetailsSerializer().serialize(self) + try MemberSuggestDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try IntegrationConnectedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberSuggestDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for IntegrationConnectedDetails: \(error)" + return "Failed to generate description for MemberSuggestDetails: \(error)" } } } - - public class IntegrationConnectedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: IntegrationConnectedDetails) throws -> JSON { + public class MemberSuggestDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberSuggestDetails) throws -> JSON { let output = [ - "integration_name": try Serialization._StringSerializer.serialize(value.integrationName), + "suggested_members": try ArraySerializer(Serialization._StringSerializer).serialize(value.suggestedMembers), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> IntegrationConnectedDetails { + public func deserialize(_ json: JSON) throws -> MemberSuggestDetails { switch json { - case .dictionary(let dict): - let integrationName = try Serialization._StringSerializer.deserialize(dict["integration_name"] ?? .null) - return IntegrationConnectedDetails(integrationName: integrationName) - default: - throw JSONSerializerError.deserializeError(type: IntegrationConnectedDetails.self, json: json) + case .dictionary(let dict): + let suggestedMembers = try ArraySerializer(Serialization._StringSerializer).deserialize(dict["suggested_members"] ?? .null) + return MemberSuggestDetails(suggestedMembers: suggestedMembers) + default: + throw JSONSerializerError.deserializeError(type: MemberSuggestDetails.self, json: json) } } } - /// The IntegrationConnectedType struct - public class IntegrationConnectedType: CustomStringConvertible, JSONRepresentable { + /// The MemberSuggestType struct + public class MemberSuggestType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -33831,82 +47510,82 @@ public class TeamLog { } func json() throws -> JSON { - try IntegrationConnectedTypeSerializer().serialize(self) + try MemberSuggestTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try IntegrationConnectedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberSuggestTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for IntegrationConnectedType: \(error)" + return "Failed to generate description for MemberSuggestType: \(error)" } } } - - public class IntegrationConnectedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: IntegrationConnectedType) throws -> JSON { + public class MemberSuggestTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberSuggestType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> IntegrationConnectedType { + public func deserialize(_ json: JSON) throws -> MemberSuggestType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return IntegrationConnectedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: IntegrationConnectedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return MemberSuggestType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: MemberSuggestType.self, json: json) } } } - /// Disconnected integration for member. - public class IntegrationDisconnectedDetails: CustomStringConvertible, JSONRepresentable { - /// Name of the third-party integration. - public let integrationName: String - public init(integrationName: String) { - stringValidator()(integrationName) - self.integrationName = integrationName + /// Enabled/disabled option for team members to suggest people to add to team. + public class MemberSuggestionsChangePolicyDetails: CustomStringConvertible, JSONRepresentable { + /// New team member suggestions policy. + public let newValue: TeamLog.MemberSuggestionsPolicy + /// Previous team member suggestions policy. Might be missing due to historical data gap. + public let previousValue: TeamLog.MemberSuggestionsPolicy? + public init(newValue: TeamLog.MemberSuggestionsPolicy, previousValue: TeamLog.MemberSuggestionsPolicy? = nil) { + self.newValue = newValue + self.previousValue = previousValue } func json() throws -> JSON { - try IntegrationDisconnectedDetailsSerializer().serialize(self) + try MemberSuggestionsChangePolicyDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try IntegrationDisconnectedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberSuggestionsChangePolicyDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for IntegrationDisconnectedDetails: \(error)" + return "Failed to generate description for MemberSuggestionsChangePolicyDetails: \(error)" } } } - - public class IntegrationDisconnectedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: IntegrationDisconnectedDetails) throws -> JSON { + public class MemberSuggestionsChangePolicyDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberSuggestionsChangePolicyDetails) throws -> JSON { let output = [ - "integration_name": try Serialization._StringSerializer.serialize(value.integrationName), + "new_value": try TeamLog.MemberSuggestionsPolicySerializer().serialize(value.newValue), + "previous_value": try NullableSerializer(TeamLog.MemberSuggestionsPolicySerializer()).serialize(value.previousValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> IntegrationDisconnectedDetails { + public func deserialize(_ json: JSON) throws -> MemberSuggestionsChangePolicyDetails { switch json { - case .dictionary(let dict): - let integrationName = try Serialization._StringSerializer.deserialize(dict["integration_name"] ?? .null) - return IntegrationDisconnectedDetails(integrationName: integrationName) - default: - throw JSONSerializerError.deserializeError(type: IntegrationDisconnectedDetails.self, json: json) + case .dictionary(let dict): + let newValue = try TeamLog.MemberSuggestionsPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try NullableSerializer(TeamLog.MemberSuggestionsPolicySerializer()).deserialize(dict["previous_value"] ?? .null) + return MemberSuggestionsChangePolicyDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: MemberSuggestionsChangePolicyDetails.self, json: json) } } } - /// The IntegrationDisconnectedType struct - public class IntegrationDisconnectedType: CustomStringConvertible, JSONRepresentable { + /// The MemberSuggestionsChangePolicyType struct + public class MemberSuggestionsChangePolicyType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -33915,40 +47594,38 @@ public class TeamLog { } func json() throws -> JSON { - try IntegrationDisconnectedTypeSerializer().serialize(self) + try MemberSuggestionsChangePolicyTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try IntegrationDisconnectedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberSuggestionsChangePolicyTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for IntegrationDisconnectedType: \(error)" + return "Failed to generate description for MemberSuggestionsChangePolicyType: \(error)" } } } - - public class IntegrationDisconnectedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: IntegrationDisconnectedType) throws -> JSON { + public class MemberSuggestionsChangePolicyTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberSuggestionsChangePolicyType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> IntegrationDisconnectedType { + public func deserialize(_ json: JSON) throws -> MemberSuggestionsChangePolicyType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return IntegrationDisconnectedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: IntegrationDisconnectedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return MemberSuggestionsChangePolicyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: MemberSuggestionsChangePolicyType.self, json: json) } } } - /// Policy for controlling whether a service integration is enabled for the team. - public enum IntegrationPolicy: CustomStringConvertible, JSONRepresentable { + /// Member suggestions policy + public enum MemberSuggestionsPolicy: CustomStringConvertible, JSONRepresentable { /// An unspecified error. case disabled /// An unspecified error. @@ -33957,111 +47634,88 @@ public class TeamLog { case other func json() throws -> JSON { - try IntegrationPolicySerializer().serialize(self) + try MemberSuggestionsPolicySerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try IntegrationPolicySerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberSuggestionsPolicySerializer().serialize(self)))" } catch { - return "Failed to generate description for IntegrationPolicy: \(error)" + return "Failed to generate description for MemberSuggestionsPolicy: \(error)" } } } - - public class IntegrationPolicySerializer: JSONSerializer { - public init() {} - public func serialize(_ value: IntegrationPolicy) throws -> JSON { + public class MemberSuggestionsPolicySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberSuggestionsPolicy) throws -> JSON { switch value { - case .disabled: - var d = [String: JSON]() - d[".tag"] = .str("disabled") - return .dictionary(d) - case .enabled: - var d = [String: JSON]() - d[".tag"] = .str("enabled") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) + case .disabled: + var d = [String: JSON]() + d[".tag"] = .str("disabled") + return .dictionary(d) + case .enabled: + var d = [String: JSON]() + d[".tag"] = .str("enabled") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) } } - - public func deserialize(_ json: JSON) throws -> IntegrationPolicy { + public func deserialize(_ json: JSON) throws -> MemberSuggestionsPolicy { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "disabled": - return IntegrationPolicy.disabled - case "enabled": - return IntegrationPolicy.enabled - case "other": - return IntegrationPolicy.other + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "disabled": + return MemberSuggestionsPolicy.disabled + case "enabled": + return MemberSuggestionsPolicy.enabled + case "other": + return MemberSuggestionsPolicy.other + default: + return MemberSuggestionsPolicy.other + } default: - return IntegrationPolicy.other - } - default: - throw JSONSerializerError.deserializeError(type: IntegrationPolicy.self, json: json) + throw JSONSerializerError.deserializeError(type: MemberSuggestionsPolicy.self, json: json) } } } - /// Changed integration policy for team. - public class IntegrationPolicyChangedDetails: CustomStringConvertible, JSONRepresentable { - /// Name of the third-party integration. - public let integrationName: String - /// New integration policy. - public let newValue: TeamLog.IntegrationPolicy - /// Previous integration policy. - public let previousValue: TeamLog.IntegrationPolicy - public init(integrationName: String, newValue: TeamLog.IntegrationPolicy, previousValue: TeamLog.IntegrationPolicy) { - stringValidator()(integrationName) - self.integrationName = integrationName - self.newValue = newValue - self.previousValue = previousValue - } + /// Transferred contents of deleted member account to another member. + public class MemberTransferAccountContentsDetails: CustomStringConvertible, JSONRepresentable { func json() throws -> JSON { - try IntegrationPolicyChangedDetailsSerializer().serialize(self) + try MemberTransferAccountContentsDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try IntegrationPolicyChangedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberTransferAccountContentsDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for IntegrationPolicyChangedDetails: \(error)" + return "Failed to generate description for MemberTransferAccountContentsDetails: \(error)" } } } - - public class IntegrationPolicyChangedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: IntegrationPolicyChangedDetails) throws -> JSON { - let output = [ - "integration_name": try Serialization._StringSerializer.serialize(value.integrationName), - "new_value": try TeamLog.IntegrationPolicySerializer().serialize(value.newValue), - "previous_value": try TeamLog.IntegrationPolicySerializer().serialize(value.previousValue), - ] + public class MemberTransferAccountContentsDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberTransferAccountContentsDetails) throws -> JSON { + let output = [String: JSON]() return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> IntegrationPolicyChangedDetails { + public func deserialize(_ json: JSON) throws -> MemberTransferAccountContentsDetails { switch json { - case .dictionary(let dict): - let integrationName = try Serialization._StringSerializer.deserialize(dict["integration_name"] ?? .null) - let newValue = try TeamLog.IntegrationPolicySerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try TeamLog.IntegrationPolicySerializer().deserialize(dict["previous_value"] ?? .null) - return IntegrationPolicyChangedDetails(integrationName: integrationName, newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: IntegrationPolicyChangedDetails.self, json: json) + case .dictionary(_): + return MemberTransferAccountContentsDetails() + default: + throw JSONSerializerError.deserializeError(type: MemberTransferAccountContentsDetails.self, json: json) } } } - /// The IntegrationPolicyChangedType struct - public class IntegrationPolicyChangedType: CustomStringConvertible, JSONRepresentable { + /// The MemberTransferAccountContentsType struct + public class MemberTransferAccountContentsType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -34070,147 +47724,128 @@ public class TeamLog { } func json() throws -> JSON { - try IntegrationPolicyChangedTypeSerializer().serialize(self) + try MemberTransferAccountContentsTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try IntegrationPolicyChangedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberTransferAccountContentsTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for IntegrationPolicyChangedType: \(error)" + return "Failed to generate description for MemberTransferAccountContentsType: \(error)" } } } - - public class IntegrationPolicyChangedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: IntegrationPolicyChangedType) throws -> JSON { + public class MemberTransferAccountContentsTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberTransferAccountContentsType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> IntegrationPolicyChangedType { + public func deserialize(_ json: JSON) throws -> MemberTransferAccountContentsType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return IntegrationPolicyChangedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: IntegrationPolicyChangedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return MemberTransferAccountContentsType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: MemberTransferAccountContentsType.self, json: json) } } } - /// Policy for deciding whether team admins receive email when an invitation to join the team is accepted - public enum InviteAcceptanceEmailPolicy: CustomStringConvertible, JSONRepresentable { - /// An unspecified error. - case disabled - /// An unspecified error. - case enabled - /// An unspecified error. - case other + /// Internal only - fields for target team computations + public class MemberTransferredInternalFields: CustomStringConvertible, JSONRepresentable { + /// Internal only - team user was moved from. + public let sourceTeamId: String + /// Internal only - team user was moved to. + public let targetTeamId: String + public init(sourceTeamId: String, targetTeamId: String) { + stringValidator()(sourceTeamId) + self.sourceTeamId = sourceTeamId + stringValidator()(targetTeamId) + self.targetTeamId = targetTeamId + } func json() throws -> JSON { - try InviteAcceptanceEmailPolicySerializer().serialize(self) + try MemberTransferredInternalFieldsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try InviteAcceptanceEmailPolicySerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MemberTransferredInternalFieldsSerializer().serialize(self)))" } catch { - return "Failed to generate description for InviteAcceptanceEmailPolicy: \(error)" + return "Failed to generate description for MemberTransferredInternalFields: \(error)" } } } - - public class InviteAcceptanceEmailPolicySerializer: JSONSerializer { - public init() {} - public func serialize(_ value: InviteAcceptanceEmailPolicy) throws -> JSON { - switch value { - case .disabled: - var d = [String: JSON]() - d[".tag"] = .str("disabled") - return .dictionary(d) - case .enabled: - var d = [String: JSON]() - d[".tag"] = .str("enabled") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) - } + public class MemberTransferredInternalFieldsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MemberTransferredInternalFields) throws -> JSON { + let output = [ + "source_team_id": try Serialization._StringSerializer.serialize(value.sourceTeamId), + "target_team_id": try Serialization._StringSerializer.serialize(value.targetTeamId), + ] + return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> InviteAcceptanceEmailPolicy { + public func deserialize(_ json: JSON) throws -> MemberTransferredInternalFields { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "disabled": - return InviteAcceptanceEmailPolicy.disabled - case "enabled": - return InviteAcceptanceEmailPolicy.enabled - case "other": - return InviteAcceptanceEmailPolicy.other + case .dictionary(let dict): + let sourceTeamId = try Serialization._StringSerializer.deserialize(dict["source_team_id"] ?? .null) + let targetTeamId = try Serialization._StringSerializer.deserialize(dict["target_team_id"] ?? .null) + return MemberTransferredInternalFields(sourceTeamId: sourceTeamId, targetTeamId: targetTeamId) default: - return InviteAcceptanceEmailPolicy.other - } - default: - throw JSONSerializerError.deserializeError(type: InviteAcceptanceEmailPolicy.self, json: json) + throw JSONSerializerError.deserializeError(type: MemberTransferredInternalFields.self, json: json) } } } - /// Changed invite accept email policy for team. - public class InviteAcceptanceEmailPolicyChangedDetails: CustomStringConvertible, JSONRepresentable { - /// To. - public let newValue: TeamLog.InviteAcceptanceEmailPolicy - /// From. - public let previousValue: TeamLog.InviteAcceptanceEmailPolicy - public init(newValue: TeamLog.InviteAcceptanceEmailPolicy, previousValue: TeamLog.InviteAcceptanceEmailPolicy) { + /// Enabled/disabled Microsoft login for team. + public class MicrosoftLoginChangePolicyDetails: CustomStringConvertible, JSONRepresentable { + /// New Microsoft login policy. + public let newValue: TeamLog.MicrosoftLoginPolicy + /// Previous Microsoft login policy. Might be missing due to historical data gap. + public let previousValue: TeamLog.MicrosoftLoginPolicy? + public init(newValue: TeamLog.MicrosoftLoginPolicy, previousValue: TeamLog.MicrosoftLoginPolicy? = nil) { self.newValue = newValue self.previousValue = previousValue } func json() throws -> JSON { - try InviteAcceptanceEmailPolicyChangedDetailsSerializer().serialize(self) + try MicrosoftLoginChangePolicyDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try InviteAcceptanceEmailPolicyChangedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MicrosoftLoginChangePolicyDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for InviteAcceptanceEmailPolicyChangedDetails: \(error)" + return "Failed to generate description for MicrosoftLoginChangePolicyDetails: \(error)" } } } - - public class InviteAcceptanceEmailPolicyChangedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: InviteAcceptanceEmailPolicyChangedDetails) throws -> JSON { + public class MicrosoftLoginChangePolicyDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MicrosoftLoginChangePolicyDetails) throws -> JSON { let output = [ - "new_value": try TeamLog.InviteAcceptanceEmailPolicySerializer().serialize(value.newValue), - "previous_value": try TeamLog.InviteAcceptanceEmailPolicySerializer().serialize(value.previousValue), + "new_value": try TeamLog.MicrosoftLoginPolicySerializer().serialize(value.newValue), + "previous_value": try NullableSerializer(TeamLog.MicrosoftLoginPolicySerializer()).serialize(value.previousValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> InviteAcceptanceEmailPolicyChangedDetails { + public func deserialize(_ json: JSON) throws -> MicrosoftLoginChangePolicyDetails { switch json { - case .dictionary(let dict): - let newValue = try TeamLog.InviteAcceptanceEmailPolicySerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try TeamLog.InviteAcceptanceEmailPolicySerializer().deserialize(dict["previous_value"] ?? .null) - return InviteAcceptanceEmailPolicyChangedDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: InviteAcceptanceEmailPolicyChangedDetails.self, json: json) + case .dictionary(let dict): + let newValue = try TeamLog.MicrosoftLoginPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try NullableSerializer(TeamLog.MicrosoftLoginPolicySerializer()).deserialize(dict["previous_value"] ?? .null) + return MicrosoftLoginChangePolicyDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: MicrosoftLoginChangePolicyDetails.self, json: json) } } } - /// The InviteAcceptanceEmailPolicyChangedType struct - public class InviteAcceptanceEmailPolicyChangedType: CustomStringConvertible, JSONRepresentable { + /// The MicrosoftLoginChangePolicyType struct + public class MicrosoftLoginChangePolicyType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -34219,657 +47854,503 @@ public class TeamLog { } func json() throws -> JSON { - try InviteAcceptanceEmailPolicyChangedTypeSerializer().serialize(self) + try MicrosoftLoginChangePolicyTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try InviteAcceptanceEmailPolicyChangedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MicrosoftLoginChangePolicyTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for InviteAcceptanceEmailPolicyChangedType: \(error)" + return "Failed to generate description for MicrosoftLoginChangePolicyType: \(error)" } } } - - public class InviteAcceptanceEmailPolicyChangedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: InviteAcceptanceEmailPolicyChangedType) throws -> JSON { + public class MicrosoftLoginChangePolicyTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MicrosoftLoginChangePolicyType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> InviteAcceptanceEmailPolicyChangedType { + public func deserialize(_ json: JSON) throws -> MicrosoftLoginChangePolicyType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return InviteAcceptanceEmailPolicyChangedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: InviteAcceptanceEmailPolicyChangedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return MicrosoftLoginChangePolicyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: MicrosoftLoginChangePolicyType.self, json: json) } } } - /// The InviteMethod union - public enum InviteMethod: CustomStringConvertible, JSONRepresentable { - /// An unspecified error. - case autoApprove + /// Microsoft login policy + public enum MicrosoftLoginPolicy: CustomStringConvertible, JSONRepresentable { /// An unspecified error. - case inviteLink + case default_ /// An unspecified error. - case memberInvite + case disabled /// An unspecified error. - case movedFromAnotherTeam + case enabled /// An unspecified error. case other func json() throws -> JSON { - try InviteMethodSerializer().serialize(self) + try MicrosoftLoginPolicySerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try InviteMethodSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MicrosoftLoginPolicySerializer().serialize(self)))" } catch { - return "Failed to generate description for InviteMethod: \(error)" + return "Failed to generate description for MicrosoftLoginPolicy: \(error)" } } } - - public class InviteMethodSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: InviteMethod) throws -> JSON { + public class MicrosoftLoginPolicySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MicrosoftLoginPolicy) throws -> JSON { switch value { - case .autoApprove: - var d = [String: JSON]() - d[".tag"] = .str("auto_approve") - return .dictionary(d) - case .inviteLink: - var d = [String: JSON]() - d[".tag"] = .str("invite_link") - return .dictionary(d) - case .memberInvite: - var d = [String: JSON]() - d[".tag"] = .str("member_invite") - return .dictionary(d) - case .movedFromAnotherTeam: - var d = [String: JSON]() - d[".tag"] = .str("moved_from_another_team") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) - } - } - - public func deserialize(_ json: JSON) throws -> InviteMethod { - switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "auto_approve": - return InviteMethod.autoApprove - case "invite_link": - return InviteMethod.inviteLink - case "member_invite": - return InviteMethod.memberInvite - case "moved_from_another_team": - return InviteMethod.movedFromAnotherTeam - case "other": - return InviteMethod.other + case .default_: + var d = [String: JSON]() + d[".tag"] = .str("default") + return .dictionary(d) + case .disabled: + var d = [String: JSON]() + d[".tag"] = .str("disabled") + return .dictionary(d) + case .enabled: + var d = [String: JSON]() + d[".tag"] = .str("enabled") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> MicrosoftLoginPolicy { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "default": + return MicrosoftLoginPolicy.default_ + case "disabled": + return MicrosoftLoginPolicy.disabled + case "enabled": + return MicrosoftLoginPolicy.enabled + case "other": + return MicrosoftLoginPolicy.other + default: + return MicrosoftLoginPolicy.other + } default: - return InviteMethod.other - } - default: - throw JSONSerializerError.deserializeError(type: InviteMethod.self, json: json) + throw JSONSerializerError.deserializeError(type: MicrosoftLoginPolicy.self, json: json) } } } - /// Additional information relevant when a new member joins the team. - public class JoinTeamDetails: CustomStringConvertible, JSONRepresentable { - /// Linked applications. (Deprecated) Please use has_linked_apps boolean field instead. - public let linkedApps: [TeamLog.UserLinkedAppLogInfo] - /// Linked devices. (Deprecated) Please use has_linked_devices boolean field instead. - public let linkedDevices: [TeamLog.LinkedDeviceLogInfo] - /// Linked shared folders. (Deprecated) Please use has_linked_shared_folders boolean field instead. - public let linkedSharedFolders: [TeamLog.FolderLogInfo] - /// (Deprecated) True if the linked_apps list was truncated to the maximum supported length (50). - public let wasLinkedAppsTruncated: Bool? - /// (Deprecated) True if the linked_devices list was truncated to the maximum supported length (50). - public let wasLinkedDevicesTruncated: Bool? - /// (Deprecated) True if the linked_shared_folders list was truncated to the maximum supported length (50). - public let wasLinkedSharedFoldersTruncated: Bool? - /// True if the user had linked apps at event time. - public let hasLinkedApps: Bool? - /// True if the user had linked apps at event time. - public let hasLinkedDevices: Bool? - /// True if the user had linked shared folders at event time. - public let hasLinkedSharedFolders: Bool? - public init( - linkedApps: [TeamLog.UserLinkedAppLogInfo], - linkedDevices: [TeamLog.LinkedDeviceLogInfo], - linkedSharedFolders: [TeamLog.FolderLogInfo], - wasLinkedAppsTruncated: Bool? = nil, - wasLinkedDevicesTruncated: Bool? = nil, - wasLinkedSharedFoldersTruncated: Bool? = nil, - hasLinkedApps: Bool? = nil, - hasLinkedDevices: Bool? = nil, - hasLinkedSharedFolders: Bool? = nil - ) { - self.linkedApps = linkedApps - self.linkedDevices = linkedDevices - self.linkedSharedFolders = linkedSharedFolders - self.wasLinkedAppsTruncated = wasLinkedAppsTruncated - self.wasLinkedDevicesTruncated = wasLinkedDevicesTruncated - self.wasLinkedSharedFoldersTruncated = wasLinkedSharedFoldersTruncated - self.hasLinkedApps = hasLinkedApps - self.hasLinkedDevices = hasLinkedDevices - self.hasLinkedSharedFolders = hasLinkedSharedFolders + /// Enabled/disabled Microsoft Office add-in. + public class MicrosoftOfficeAddinChangePolicyDetails: CustomStringConvertible, JSONRepresentable { + /// New Microsoft Office addin policy. + public let newValue: TeamLog.MicrosoftOfficeAddinPolicy + /// Previous Microsoft Office addin policy. Might be missing due to historical data gap. + public let previousValue: TeamLog.MicrosoftOfficeAddinPolicy? + public init(newValue: TeamLog.MicrosoftOfficeAddinPolicy, previousValue: TeamLog.MicrosoftOfficeAddinPolicy? = nil) { + self.newValue = newValue + self.previousValue = previousValue } func json() throws -> JSON { - try JoinTeamDetailsSerializer().serialize(self) + try MicrosoftOfficeAddinChangePolicyDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try JoinTeamDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MicrosoftOfficeAddinChangePolicyDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for JoinTeamDetails: \(error)" + return "Failed to generate description for MicrosoftOfficeAddinChangePolicyDetails: \(error)" } } } - - public class JoinTeamDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: JoinTeamDetails) throws -> JSON { + public class MicrosoftOfficeAddinChangePolicyDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MicrosoftOfficeAddinChangePolicyDetails) throws -> JSON { let output = [ - "linked_apps": try ArraySerializer(TeamLog.UserLinkedAppLogInfoSerializer()).serialize(value.linkedApps), - "linked_devices": try ArraySerializer(TeamLog.LinkedDeviceLogInfoSerializer()).serialize(value.linkedDevices), - "linked_shared_folders": try ArraySerializer(TeamLog.FolderLogInfoSerializer()).serialize(value.linkedSharedFolders), - "was_linked_apps_truncated": try NullableSerializer(Serialization._BoolSerializer).serialize(value.wasLinkedAppsTruncated), - "was_linked_devices_truncated": try NullableSerializer(Serialization._BoolSerializer).serialize(value.wasLinkedDevicesTruncated), - "was_linked_shared_folders_truncated": try NullableSerializer(Serialization._BoolSerializer).serialize(value.wasLinkedSharedFoldersTruncated), - "has_linked_apps": try NullableSerializer(Serialization._BoolSerializer).serialize(value.hasLinkedApps), - "has_linked_devices": try NullableSerializer(Serialization._BoolSerializer).serialize(value.hasLinkedDevices), - "has_linked_shared_folders": try NullableSerializer(Serialization._BoolSerializer).serialize(value.hasLinkedSharedFolders), + "new_value": try TeamLog.MicrosoftOfficeAddinPolicySerializer().serialize(value.newValue), + "previous_value": try NullableSerializer(TeamLog.MicrosoftOfficeAddinPolicySerializer()).serialize(value.previousValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> JoinTeamDetails { + public func deserialize(_ json: JSON) throws -> MicrosoftOfficeAddinChangePolicyDetails { switch json { - case .dictionary(let dict): - let linkedApps = try ArraySerializer(TeamLog.UserLinkedAppLogInfoSerializer()).deserialize(dict["linked_apps"] ?? .null) - let linkedDevices = try ArraySerializer(TeamLog.LinkedDeviceLogInfoSerializer()).deserialize(dict["linked_devices"] ?? .null) - let linkedSharedFolders = try ArraySerializer(TeamLog.FolderLogInfoSerializer()).deserialize(dict["linked_shared_folders"] ?? .null) - let wasLinkedAppsTruncated = try NullableSerializer(Serialization._BoolSerializer).deserialize(dict["was_linked_apps_truncated"] ?? .null) - let wasLinkedDevicesTruncated = try NullableSerializer(Serialization._BoolSerializer) - .deserialize(dict["was_linked_devices_truncated"] ?? .null) - let wasLinkedSharedFoldersTruncated = try NullableSerializer(Serialization._BoolSerializer) - .deserialize(dict["was_linked_shared_folders_truncated"] ?? .null) - let hasLinkedApps = try NullableSerializer(Serialization._BoolSerializer).deserialize(dict["has_linked_apps"] ?? .null) - let hasLinkedDevices = try NullableSerializer(Serialization._BoolSerializer).deserialize(dict["has_linked_devices"] ?? .null) - let hasLinkedSharedFolders = try NullableSerializer(Serialization._BoolSerializer).deserialize(dict["has_linked_shared_folders"] ?? .null) - return JoinTeamDetails( - linkedApps: linkedApps, - linkedDevices: linkedDevices, - linkedSharedFolders: linkedSharedFolders, - wasLinkedAppsTruncated: wasLinkedAppsTruncated, - wasLinkedDevicesTruncated: wasLinkedDevicesTruncated, - wasLinkedSharedFoldersTruncated: wasLinkedSharedFoldersTruncated, - hasLinkedApps: hasLinkedApps, - hasLinkedDevices: hasLinkedDevices, - hasLinkedSharedFolders: hasLinkedSharedFolders - ) - default: - throw JSONSerializerError.deserializeError(type: JoinTeamDetails.self, json: json) + case .dictionary(let dict): + let newValue = try TeamLog.MicrosoftOfficeAddinPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try NullableSerializer(TeamLog.MicrosoftOfficeAddinPolicySerializer()).deserialize(dict["previous_value"] ?? .null) + return MicrosoftOfficeAddinChangePolicyDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: MicrosoftOfficeAddinChangePolicyDetails.self, json: json) } } } - /// Label type - public enum LabelType: CustomStringConvertible, JSONRepresentable { - /// An unspecified error. - case personalInformation - /// An unspecified error. - case testOnly - /// An unspecified error. - case userDefinedTag - /// An unspecified error. - case other + /// The MicrosoftOfficeAddinChangePolicyType struct + public class MicrosoftOfficeAddinChangePolicyType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } func json() throws -> JSON { - try LabelTypeSerializer().serialize(self) + try MicrosoftOfficeAddinChangePolicyTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try LabelTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MicrosoftOfficeAddinChangePolicyTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for LabelType: \(error)" + return "Failed to generate description for MicrosoftOfficeAddinChangePolicyType: \(error)" } } } - - public class LabelTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: LabelType) throws -> JSON { - switch value { - case .personalInformation: - var d = [String: JSON]() - d[".tag"] = .str("personal_information") - return .dictionary(d) - case .testOnly: - var d = [String: JSON]() - d[".tag"] = .str("test_only") - return .dictionary(d) - case .userDefinedTag: - var d = [String: JSON]() - d[".tag"] = .str("user_defined_tag") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) - } + public class MicrosoftOfficeAddinChangePolicyTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MicrosoftOfficeAddinChangePolicyType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> LabelType { + public func deserialize(_ json: JSON) throws -> MicrosoftOfficeAddinChangePolicyType { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "personal_information": - return LabelType.personalInformation - case "test_only": - return LabelType.testOnly - case "user_defined_tag": - return LabelType.userDefinedTag - case "other": - return LabelType.other + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return MicrosoftOfficeAddinChangePolicyType(description_: description_) default: - return LabelType.other - } - default: - throw JSONSerializerError.deserializeError(type: LabelType.self, json: json) + throw JSONSerializerError.deserializeError(type: MicrosoftOfficeAddinChangePolicyType.self, json: json) } } } - /// Information on sessions, in legacy format - public class LegacyDeviceSessionLogInfo: TeamLog.DeviceSessionLogInfo { - /// Session unique id. - public let sessionInfo: TeamLog.SessionLogInfo? - /// The device name. Might be missing due to historical data gap. - public let displayName: String? - /// Is device managed by emm. Might be missing due to historical data gap. - public let isEmmManaged: Bool? - /// Information on the hosting platform. Might be missing due to historical data gap. - public let platform: String? - /// The mac address of the last activity from this session. Might be missing due to historical data gap. - public let macAddress: String? - /// The hosting OS version. Might be missing due to historical data gap. - public let osVersion: String? - /// Information on the hosting device type. Might be missing due to historical data gap. - public let deviceType: String? - /// The Dropbox client version. Might be missing due to historical data gap. - public let clientVersion: String? - /// Alternative unique device session id, instead of session id field. Might be missing due to historical data - /// gap. - public let legacyUniqId: String? - public init( - ipAddress: String? = nil, - created: Date? = nil, - updated: Date? = nil, - sessionInfo: TeamLog.SessionLogInfo? = nil, - displayName: String? = nil, - isEmmManaged: Bool? = nil, - platform: String? = nil, - macAddress: String? = nil, - osVersion: String? = nil, - deviceType: String? = nil, - clientVersion: String? = nil, - legacyUniqId: String? = nil - ) { - self.sessionInfo = sessionInfo - nullableValidator(stringValidator())(displayName) - self.displayName = displayName - self.isEmmManaged = isEmmManaged - nullableValidator(stringValidator())(platform) - self.platform = platform - nullableValidator(stringValidator())(macAddress) - self.macAddress = macAddress - nullableValidator(stringValidator())(osVersion) - self.osVersion = osVersion - nullableValidator(stringValidator())(deviceType) - self.deviceType = deviceType - nullableValidator(stringValidator())(clientVersion) - self.clientVersion = clientVersion - nullableValidator(stringValidator())(legacyUniqId) - self.legacyUniqId = legacyUniqId - super.init(ipAddress: ipAddress, created: created, updated: updated) + /// Microsoft Office addin policy + public enum MicrosoftOfficeAddinPolicy: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case disabled + /// An unspecified error. + case enabled + /// An unspecified error. + case other + + func json() throws -> JSON { + try MicrosoftOfficeAddinPolicySerializer().serialize(self) } - public override var description: String { + public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try LegacyDeviceSessionLogInfoSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MicrosoftOfficeAddinPolicySerializer().serialize(self)))" } catch { - return "Failed to generate description for LegacyDeviceSessionLogInfo: \(error)" + return "Failed to generate description for MicrosoftOfficeAddinPolicy: \(error)" } } } - - public class LegacyDeviceSessionLogInfoSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: LegacyDeviceSessionLogInfo) throws -> JSON { - let output = [ - "ip_address": try NullableSerializer(Serialization._StringSerializer).serialize(value.ipAddress), - "created": try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).serialize(value.created), - "updated": try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).serialize(value.updated), - "session_info": try NullableSerializer(TeamLog.SessionLogInfoSerializer()).serialize(value.sessionInfo), - "display_name": try NullableSerializer(Serialization._StringSerializer).serialize(value.displayName), - "is_emm_managed": try NullableSerializer(Serialization._BoolSerializer).serialize(value.isEmmManaged), - "platform": try NullableSerializer(Serialization._StringSerializer).serialize(value.platform), - "mac_address": try NullableSerializer(Serialization._StringSerializer).serialize(value.macAddress), - "os_version": try NullableSerializer(Serialization._StringSerializer).serialize(value.osVersion), - "device_type": try NullableSerializer(Serialization._StringSerializer).serialize(value.deviceType), - "client_version": try NullableSerializer(Serialization._StringSerializer).serialize(value.clientVersion), - "legacy_uniq_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.legacyUniqId), - ] - return .dictionary(output) + public class MicrosoftOfficeAddinPolicySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MicrosoftOfficeAddinPolicy) throws -> JSON { + switch value { + case .disabled: + var d = [String: JSON]() + d[".tag"] = .str("disabled") + return .dictionary(d) + case .enabled: + var d = [String: JSON]() + d[".tag"] = .str("enabled") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } } - - public func deserialize(_ json: JSON) throws -> LegacyDeviceSessionLogInfo { + public func deserialize(_ json: JSON) throws -> MicrosoftOfficeAddinPolicy { switch json { - case .dictionary(let dict): - let ipAddress = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["ip_address"] ?? .null) - let created = try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).deserialize(dict["created"] ?? .null) - let updated = try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).deserialize(dict["updated"] ?? .null) - let sessionInfo = try NullableSerializer(TeamLog.SessionLogInfoSerializer()).deserialize(dict["session_info"] ?? .null) - let displayName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["display_name"] ?? .null) - let isEmmManaged = try NullableSerializer(Serialization._BoolSerializer).deserialize(dict["is_emm_managed"] ?? .null) - let platform = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["platform"] ?? .null) - let macAddress = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["mac_address"] ?? .null) - let osVersion = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["os_version"] ?? .null) - let deviceType = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["device_type"] ?? .null) - let clientVersion = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["client_version"] ?? .null) - let legacyUniqId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["legacy_uniq_id"] ?? .null) - return LegacyDeviceSessionLogInfo( - ipAddress: ipAddress, - created: created, - updated: updated, - sessionInfo: sessionInfo, - displayName: displayName, - isEmmManaged: isEmmManaged, - platform: platform, - macAddress: macAddress, - osVersion: osVersion, - deviceType: deviceType, - clientVersion: clientVersion, - legacyUniqId: legacyUniqId - ) - default: - throw JSONSerializerError.deserializeError(type: LegacyDeviceSessionLogInfo.self, json: json) + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "disabled": + return MicrosoftOfficeAddinPolicy.disabled + case "enabled": + return MicrosoftOfficeAddinPolicy.enabled + case "other": + return MicrosoftOfficeAddinPolicy.other + default: + return MicrosoftOfficeAddinPolicy.other + } + default: + throw JSONSerializerError.deserializeError(type: MicrosoftOfficeAddinPolicy.self, json: json) } } } - /// Activated a hold. - public class LegalHoldsActivateAHoldDetails: CustomStringConvertible, JSONRepresentable { - /// Hold ID. - public let legalHoldId: String - /// Hold name. - public let name: String - /// Hold start date. - public let startDate: Date - /// Hold end date. - public let endDate: Date? - public init(legalHoldId: String, name: String, startDate: Date, endDate: Date? = nil) { - stringValidator()(legalHoldId) - self.legalHoldId = legalHoldId - stringValidator()(name) - self.name = name - self.startDate = startDate - self.endDate = endDate + /// An indication that an error occurred while retrieving the event. Some attributes of the event may be omitted as + /// a result. + public class MissingDetails: CustomStringConvertible, JSONRepresentable { + /// All the data that could be retrieved and converted from the source event. + public let sourceEventFields: String? + public init(sourceEventFields: String? = nil) { + nullableValidator(stringValidator())(sourceEventFields) + self.sourceEventFields = sourceEventFields } func json() throws -> JSON { - try LegalHoldsActivateAHoldDetailsSerializer().serialize(self) + try MissingDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try LegalHoldsActivateAHoldDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MissingDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for LegalHoldsActivateAHoldDetails: \(error)" + return "Failed to generate description for MissingDetails: \(error)" } } } - - public class LegalHoldsActivateAHoldDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: LegalHoldsActivateAHoldDetails) throws -> JSON { + public class MissingDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MissingDetails) throws -> JSON { let output = [ - "legal_hold_id": try Serialization._StringSerializer.serialize(value.legalHoldId), - "name": try Serialization._StringSerializer.serialize(value.name), - "start_date": try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").serialize(value.startDate), - "end_date": try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).serialize(value.endDate), + "source_event_fields": try NullableSerializer(Serialization._StringSerializer).serialize(value.sourceEventFields), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> LegalHoldsActivateAHoldDetails { + public func deserialize(_ json: JSON) throws -> MissingDetails { switch json { - case .dictionary(let dict): - let legalHoldId = try Serialization._StringSerializer.deserialize(dict["legal_hold_id"] ?? .null) - let name = try Serialization._StringSerializer.deserialize(dict["name"] ?? .null) - let startDate = try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").deserialize(dict["start_date"] ?? .null) - let endDate = try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).deserialize(dict["end_date"] ?? .null) - return LegalHoldsActivateAHoldDetails(legalHoldId: legalHoldId, name: name, startDate: startDate, endDate: endDate) - default: - throw JSONSerializerError.deserializeError(type: LegalHoldsActivateAHoldDetails.self, json: json) + case .dictionary(let dict): + let sourceEventFields = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["source_event_fields"] ?? .null) + return MissingDetails(sourceEventFields: sourceEventFields) + default: + throw JSONSerializerError.deserializeError(type: MissingDetails.self, json: json) } } } - /// The LegalHoldsActivateAHoldType struct - public class LegalHoldsActivateAHoldType: CustomStringConvertible, JSONRepresentable { - /// (no description) - public let description_: String - public init(description_: String) { - stringValidator()(description_) - self.description_ = description_ + /// Information about linked Dropbox mobile client sessions + public class MobileDeviceSessionLogInfo: TeamLog.DeviceSessionLogInfo { + /// Mobile session unique id. + public let sessionInfo: TeamLog.MobileSessionLogInfo? + /// The device name. + public let deviceName: String + /// The mobile application type. + public let clientType: Team.MobileClientPlatform + /// The Dropbox client version. + public let clientVersion: String? + /// The hosting OS version. + public let osVersion: String? + /// last carrier used by the device. + public let lastCarrier: String? + public init(deviceName: String, clientType: Team.MobileClientPlatform, ipAddress: String? = nil, created: Date? = nil, updated: Date? = nil, sessionInfo: TeamLog.MobileSessionLogInfo? = nil, clientVersion: String? = nil, osVersion: String? = nil, lastCarrier: String? = nil) { + self.sessionInfo = sessionInfo + stringValidator()(deviceName) + self.deviceName = deviceName + self.clientType = clientType + nullableValidator(stringValidator())(clientVersion) + self.clientVersion = clientVersion + nullableValidator(stringValidator())(osVersion) + self.osVersion = osVersion + nullableValidator(stringValidator())(lastCarrier) + self.lastCarrier = lastCarrier + super.init(ipAddress: ipAddress, created: created, updated: updated) } - func json() throws -> JSON { - try LegalHoldsActivateAHoldTypeSerializer().serialize(self) - } - public var description: String { + public override var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try LegalHoldsActivateAHoldTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MobileDeviceSessionLogInfoSerializer().serialize(self)))" } catch { - return "Failed to generate description for LegalHoldsActivateAHoldType: \(error)" + return "Failed to generate description for MobileDeviceSessionLogInfo: \(error)" } } } - - public class LegalHoldsActivateAHoldTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: LegalHoldsActivateAHoldType) throws -> JSON { + public class MobileDeviceSessionLogInfoSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MobileDeviceSessionLogInfo) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "device_name": try Serialization._StringSerializer.serialize(value.deviceName), + "client_type": try Team.MobileClientPlatformSerializer().serialize(value.clientType), + "ip_address": try NullableSerializer(Serialization._StringSerializer).serialize(value.ipAddress), + "created": try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).serialize(value.created), + "updated": try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).serialize(value.updated), + "session_info": try NullableSerializer(TeamLog.MobileSessionLogInfoSerializer()).serialize(value.sessionInfo), + "client_version": try NullableSerializer(Serialization._StringSerializer).serialize(value.clientVersion), + "os_version": try NullableSerializer(Serialization._StringSerializer).serialize(value.osVersion), + "last_carrier": try NullableSerializer(Serialization._StringSerializer).serialize(value.lastCarrier), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> LegalHoldsActivateAHoldType { + public func deserialize(_ json: JSON) throws -> MobileDeviceSessionLogInfo { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return LegalHoldsActivateAHoldType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: LegalHoldsActivateAHoldType.self, json: json) + case .dictionary(let dict): + let deviceName = try Serialization._StringSerializer.deserialize(dict["device_name"] ?? .null) + let clientType = try Team.MobileClientPlatformSerializer().deserialize(dict["client_type"] ?? .null) + let ipAddress = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["ip_address"] ?? .null) + let created = try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).deserialize(dict["created"] ?? .null) + let updated = try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).deserialize(dict["updated"] ?? .null) + let sessionInfo = try NullableSerializer(TeamLog.MobileSessionLogInfoSerializer()).deserialize(dict["session_info"] ?? .null) + let clientVersion = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["client_version"] ?? .null) + let osVersion = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["os_version"] ?? .null) + let lastCarrier = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["last_carrier"] ?? .null) + return MobileDeviceSessionLogInfo(deviceName: deviceName, clientType: clientType, ipAddress: ipAddress, created: created, updated: updated, sessionInfo: sessionInfo, clientVersion: clientVersion, osVersion: osVersion, lastCarrier: lastCarrier) + default: + throw JSONSerializerError.deserializeError(type: MobileDeviceSessionLogInfo.self, json: json) } } } - /// Added members to a hold. - public class LegalHoldsAddMembersDetails: CustomStringConvertible, JSONRepresentable { - /// Hold ID. - public let legalHoldId: String - /// Hold name. - public let name: String - public init(legalHoldId: String, name: String) { - stringValidator()(legalHoldId) - self.legalHoldId = legalHoldId - stringValidator()(name) - self.name = name - } + /// Mobile session. + public class MobileSessionLogInfo: TeamLog.SessionLogInfo { - func json() throws -> JSON { - try LegalHoldsAddMembersDetailsSerializer().serialize(self) - } - public var description: String { + public override var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try LegalHoldsAddMembersDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MobileSessionLogInfoSerializer().serialize(self)))" } catch { - return "Failed to generate description for LegalHoldsAddMembersDetails: \(error)" + return "Failed to generate description for MobileSessionLogInfo: \(error)" } } } - - public class LegalHoldsAddMembersDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: LegalHoldsAddMembersDetails) throws -> JSON { + public class MobileSessionLogInfoSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MobileSessionLogInfo) throws -> JSON { let output = [ - "legal_hold_id": try Serialization._StringSerializer.serialize(value.legalHoldId), - "name": try Serialization._StringSerializer.serialize(value.name), + "session_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.sessionId), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> LegalHoldsAddMembersDetails { + public func deserialize(_ json: JSON) throws -> MobileSessionLogInfo { switch json { - case .dictionary(let dict): - let legalHoldId = try Serialization._StringSerializer.deserialize(dict["legal_hold_id"] ?? .null) - let name = try Serialization._StringSerializer.deserialize(dict["name"] ?? .null) - return LegalHoldsAddMembersDetails(legalHoldId: legalHoldId, name: name) - default: - throw JSONSerializerError.deserializeError(type: LegalHoldsAddMembersDetails.self, json: json) + case .dictionary(let dict): + let sessionId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["session_id"] ?? .null) + return MobileSessionLogInfo(sessionId: sessionId) + default: + throw JSONSerializerError.deserializeError(type: MobileSessionLogInfo.self, json: json) } } } - /// The LegalHoldsAddMembersType struct - public class LegalHoldsAddMembersType: CustomStringConvertible, JSONRepresentable { - /// (no description) - public let description_: String - public init(description_: String) { - stringValidator()(description_) - self.description_ = description_ - } + /// Multi-team identity policy + public enum MultiTeamIdentityPolicy: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case default_ + /// An unspecified error. + case disabled + /// An unspecified error. + case enabled + /// An unspecified error. + case other func json() throws -> JSON { - try LegalHoldsAddMembersTypeSerializer().serialize(self) + try MultiTeamIdentityPolicySerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try LegalHoldsAddMembersTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MultiTeamIdentityPolicySerializer().serialize(self)))" } catch { - return "Failed to generate description for LegalHoldsAddMembersType: \(error)" + return "Failed to generate description for MultiTeamIdentityPolicy: \(error)" } } } - - public class LegalHoldsAddMembersTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: LegalHoldsAddMembersType) throws -> JSON { - let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), - ] - return .dictionary(output) - } - - public func deserialize(_ json: JSON) throws -> LegalHoldsAddMembersType { - switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return LegalHoldsAddMembersType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: LegalHoldsAddMembersType.self, json: json) + public class MultiTeamIdentityPolicySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MultiTeamIdentityPolicy) throws -> JSON { + switch value { + case .default_: + var d = [String: JSON]() + d[".tag"] = .str("default") + return .dictionary(d) + case .disabled: + var d = [String: JSON]() + d[".tag"] = .str("disabled") + return .dictionary(d) + case .enabled: + var d = [String: JSON]() + d[".tag"] = .str("enabled") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> MultiTeamIdentityPolicy { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "default": + return MultiTeamIdentityPolicy.default_ + case "disabled": + return MultiTeamIdentityPolicy.disabled + case "enabled": + return MultiTeamIdentityPolicy.enabled + case "other": + return MultiTeamIdentityPolicy.other + default: + return MultiTeamIdentityPolicy.other + } + default: + throw JSONSerializerError.deserializeError(type: MultiTeamIdentityPolicy.self, json: json) } } } - /// Edited details for a hold. - public class LegalHoldsChangeHoldDetailsDetails: CustomStringConvertible, JSONRepresentable { - /// Hold ID. - public let legalHoldId: String - /// Hold name. - public let name: String - /// Previous details. - public let previousValue: String - /// New details. - public let newValue: String - public init(legalHoldId: String, name: String, previousValue: String, newValue: String) { - stringValidator()(legalHoldId) - self.legalHoldId = legalHoldId - stringValidator()(name) - self.name = name - stringValidator()(previousValue) - self.previousValue = previousValue - stringValidator()(newValue) + /// Changed multi-team identity policy for team. + public class MultiTeamIdentityPolicyChangedDetails: CustomStringConvertible, JSONRepresentable { + /// New multi-team identity policy. + public let newValue: TeamLog.MultiTeamIdentityPolicy + /// Previous multi-team identity policy. Might be missing due to historical data gap. + public let previousValue: TeamLog.MultiTeamIdentityPolicy? + public init(newValue: TeamLog.MultiTeamIdentityPolicy, previousValue: TeamLog.MultiTeamIdentityPolicy? = nil) { self.newValue = newValue + self.previousValue = previousValue } func json() throws -> JSON { - try LegalHoldsChangeHoldDetailsDetailsSerializer().serialize(self) + try MultiTeamIdentityPolicyChangedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try LegalHoldsChangeHoldDetailsDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MultiTeamIdentityPolicyChangedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for LegalHoldsChangeHoldDetailsDetails: \(error)" + return "Failed to generate description for MultiTeamIdentityPolicyChangedDetails: \(error)" } } } - - public class LegalHoldsChangeHoldDetailsDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: LegalHoldsChangeHoldDetailsDetails) throws -> JSON { + public class MultiTeamIdentityPolicyChangedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MultiTeamIdentityPolicyChangedDetails) throws -> JSON { let output = [ - "legal_hold_id": try Serialization._StringSerializer.serialize(value.legalHoldId), - "name": try Serialization._StringSerializer.serialize(value.name), - "previous_value": try Serialization._StringSerializer.serialize(value.previousValue), - "new_value": try Serialization._StringSerializer.serialize(value.newValue), + "new_value": try TeamLog.MultiTeamIdentityPolicySerializer().serialize(value.newValue), + "previous_value": try NullableSerializer(TeamLog.MultiTeamIdentityPolicySerializer()).serialize(value.previousValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> LegalHoldsChangeHoldDetailsDetails { + public func deserialize(_ json: JSON) throws -> MultiTeamIdentityPolicyChangedDetails { switch json { - case .dictionary(let dict): - let legalHoldId = try Serialization._StringSerializer.deserialize(dict["legal_hold_id"] ?? .null) - let name = try Serialization._StringSerializer.deserialize(dict["name"] ?? .null) - let previousValue = try Serialization._StringSerializer.deserialize(dict["previous_value"] ?? .null) - let newValue = try Serialization._StringSerializer.deserialize(dict["new_value"] ?? .null) - return LegalHoldsChangeHoldDetailsDetails(legalHoldId: legalHoldId, name: name, previousValue: previousValue, newValue: newValue) - default: - throw JSONSerializerError.deserializeError(type: LegalHoldsChangeHoldDetailsDetails.self, json: json) + case .dictionary(let dict): + let newValue = try TeamLog.MultiTeamIdentityPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try NullableSerializer(TeamLog.MultiTeamIdentityPolicySerializer()).deserialize(dict["previous_value"] ?? .null) + return MultiTeamIdentityPolicyChangedDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: MultiTeamIdentityPolicyChangedDetails.self, json: json) } } } - /// The LegalHoldsChangeHoldDetailsType struct - public class LegalHoldsChangeHoldDetailsType: CustomStringConvertible, JSONRepresentable { + /// The MultiTeamIdentityPolicyChangedType struct + public class MultiTeamIdentityPolicyChangedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -34878,286 +48359,276 @@ public class TeamLog { } func json() throws -> JSON { - try LegalHoldsChangeHoldDetailsTypeSerializer().serialize(self) + try MultiTeamIdentityPolicyChangedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try LegalHoldsChangeHoldDetailsTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try MultiTeamIdentityPolicyChangedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for LegalHoldsChangeHoldDetailsType: \(error)" + return "Failed to generate description for MultiTeamIdentityPolicyChangedType: \(error)" } } } - - public class LegalHoldsChangeHoldDetailsTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: LegalHoldsChangeHoldDetailsType) throws -> JSON { + public class MultiTeamIdentityPolicyChangedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: MultiTeamIdentityPolicyChangedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> LegalHoldsChangeHoldDetailsType { + public func deserialize(_ json: JSON) throws -> MultiTeamIdentityPolicyChangedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return LegalHoldsChangeHoldDetailsType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: LegalHoldsChangeHoldDetailsType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return MultiTeamIdentityPolicyChangedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: MultiTeamIdentityPolicyChangedType.self, json: json) } } } - /// Renamed a hold. - public class LegalHoldsChangeHoldNameDetails: CustomStringConvertible, JSONRepresentable { - /// Hold ID. - public let legalHoldId: String - /// Previous Name. - public let previousValue: String - /// New Name. - public let newValue: String - public init(legalHoldId: String, previousValue: String, newValue: String) { - stringValidator()(legalHoldId) - self.legalHoldId = legalHoldId - stringValidator()(previousValue) - self.previousValue = previousValue - stringValidator()(newValue) - self.newValue = newValue + /// Namespace relative path details. + public class NamespaceRelativePathLogInfo: CustomStringConvertible, JSONRepresentable { + /// Namespace ID. + public let nsId: String? + /// A path relative to the specified namespace ID. + public let relativePath: String? + /// True if the namespace is shared. + public let isSharedNamespace: Bool? + public init(nsId: String? = nil, relativePath: String? = nil, isSharedNamespace: Bool? = nil) { + nullableValidator(stringValidator())(nsId) + self.nsId = nsId + nullableValidator(stringValidator())(relativePath) + self.relativePath = relativePath + self.isSharedNamespace = isSharedNamespace } func json() throws -> JSON { - try LegalHoldsChangeHoldNameDetailsSerializer().serialize(self) + try NamespaceRelativePathLogInfoSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try LegalHoldsChangeHoldNameDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try NamespaceRelativePathLogInfoSerializer().serialize(self)))" } catch { - return "Failed to generate description for LegalHoldsChangeHoldNameDetails: \(error)" + return "Failed to generate description for NamespaceRelativePathLogInfo: \(error)" } } } - - public class LegalHoldsChangeHoldNameDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: LegalHoldsChangeHoldNameDetails) throws -> JSON { + public class NamespaceRelativePathLogInfoSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: NamespaceRelativePathLogInfo) throws -> JSON { let output = [ - "legal_hold_id": try Serialization._StringSerializer.serialize(value.legalHoldId), - "previous_value": try Serialization._StringSerializer.serialize(value.previousValue), - "new_value": try Serialization._StringSerializer.serialize(value.newValue), + "ns_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.nsId), + "relative_path": try NullableSerializer(Serialization._StringSerializer).serialize(value.relativePath), + "is_shared_namespace": try NullableSerializer(Serialization._BoolSerializer).serialize(value.isSharedNamespace), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> LegalHoldsChangeHoldNameDetails { + public func deserialize(_ json: JSON) throws -> NamespaceRelativePathLogInfo { switch json { - case .dictionary(let dict): - let legalHoldId = try Serialization._StringSerializer.deserialize(dict["legal_hold_id"] ?? .null) - let previousValue = try Serialization._StringSerializer.deserialize(dict["previous_value"] ?? .null) - let newValue = try Serialization._StringSerializer.deserialize(dict["new_value"] ?? .null) - return LegalHoldsChangeHoldNameDetails(legalHoldId: legalHoldId, previousValue: previousValue, newValue: newValue) - default: - throw JSONSerializerError.deserializeError(type: LegalHoldsChangeHoldNameDetails.self, json: json) + case .dictionary(let dict): + let nsId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["ns_id"] ?? .null) + let relativePath = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["relative_path"] ?? .null) + let isSharedNamespace = try NullableSerializer(Serialization._BoolSerializer).deserialize(dict["is_shared_namespace"] ?? .null) + return NamespaceRelativePathLogInfo(nsId: nsId, relativePath: relativePath, isSharedNamespace: isSharedNamespace) + default: + throw JSONSerializerError.deserializeError(type: NamespaceRelativePathLogInfo.self, json: json) } } } - /// The LegalHoldsChangeHoldNameType struct - public class LegalHoldsChangeHoldNameType: CustomStringConvertible, JSONRepresentable { - /// (no description) - public let description_: String - public init(description_: String) { - stringValidator()(description_) - self.description_ = description_ + /// Enabled/disabled network control. + public class NetworkControlChangePolicyDetails: CustomStringConvertible, JSONRepresentable { + /// New network control policy. + public let newValue: TeamLog.NetworkControlPolicy + /// Previous network control policy. Might be missing due to historical data gap. + public let previousValue: TeamLog.NetworkControlPolicy? + public init(newValue: TeamLog.NetworkControlPolicy, previousValue: TeamLog.NetworkControlPolicy? = nil) { + self.newValue = newValue + self.previousValue = previousValue } func json() throws -> JSON { - try LegalHoldsChangeHoldNameTypeSerializer().serialize(self) + try NetworkControlChangePolicyDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try LegalHoldsChangeHoldNameTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try NetworkControlChangePolicyDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for LegalHoldsChangeHoldNameType: \(error)" + return "Failed to generate description for NetworkControlChangePolicyDetails: \(error)" } } } - - public class LegalHoldsChangeHoldNameTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: LegalHoldsChangeHoldNameType) throws -> JSON { + public class NetworkControlChangePolicyDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: NetworkControlChangePolicyDetails) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "new_value": try TeamLog.NetworkControlPolicySerializer().serialize(value.newValue), + "previous_value": try NullableSerializer(TeamLog.NetworkControlPolicySerializer()).serialize(value.previousValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> LegalHoldsChangeHoldNameType { + public func deserialize(_ json: JSON) throws -> NetworkControlChangePolicyDetails { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return LegalHoldsChangeHoldNameType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: LegalHoldsChangeHoldNameType.self, json: json) + case .dictionary(let dict): + let newValue = try TeamLog.NetworkControlPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try NullableSerializer(TeamLog.NetworkControlPolicySerializer()).deserialize(dict["previous_value"] ?? .null) + return NetworkControlChangePolicyDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: NetworkControlChangePolicyDetails.self, json: json) } } } - /// Exported hold. - public class LegalHoldsExportAHoldDetails: CustomStringConvertible, JSONRepresentable { - /// Hold ID. - public let legalHoldId: String - /// Hold name. - public let name: String - /// Export name. - public let exportName: String? - public init(legalHoldId: String, name: String, exportName: String? = nil) { - stringValidator()(legalHoldId) - self.legalHoldId = legalHoldId - stringValidator()(name) - self.name = name - nullableValidator(stringValidator())(exportName) - self.exportName = exportName + /// The NetworkControlChangePolicyType struct + public class NetworkControlChangePolicyType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ } func json() throws -> JSON { - try LegalHoldsExportAHoldDetailsSerializer().serialize(self) + try NetworkControlChangePolicyTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try LegalHoldsExportAHoldDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try NetworkControlChangePolicyTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for LegalHoldsExportAHoldDetails: \(error)" + return "Failed to generate description for NetworkControlChangePolicyType: \(error)" } } } - - public class LegalHoldsExportAHoldDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: LegalHoldsExportAHoldDetails) throws -> JSON { + public class NetworkControlChangePolicyTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: NetworkControlChangePolicyType) throws -> JSON { let output = [ - "legal_hold_id": try Serialization._StringSerializer.serialize(value.legalHoldId), - "name": try Serialization._StringSerializer.serialize(value.name), - "export_name": try NullableSerializer(Serialization._StringSerializer).serialize(value.exportName), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> LegalHoldsExportAHoldDetails { + public func deserialize(_ json: JSON) throws -> NetworkControlChangePolicyType { switch json { - case .dictionary(let dict): - let legalHoldId = try Serialization._StringSerializer.deserialize(dict["legal_hold_id"] ?? .null) - let name = try Serialization._StringSerializer.deserialize(dict["name"] ?? .null) - let exportName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["export_name"] ?? .null) - return LegalHoldsExportAHoldDetails(legalHoldId: legalHoldId, name: name, exportName: exportName) - default: - throw JSONSerializerError.deserializeError(type: LegalHoldsExportAHoldDetails.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return NetworkControlChangePolicyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: NetworkControlChangePolicyType.self, json: json) } } } - /// The LegalHoldsExportAHoldType struct - public class LegalHoldsExportAHoldType: CustomStringConvertible, JSONRepresentable { - /// (no description) - public let description_: String - public init(description_: String) { - stringValidator()(description_) - self.description_ = description_ - } + /// Network control policy + public enum NetworkControlPolicy: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case disabled + /// An unspecified error. + case enabled + /// An unspecified error. + case other func json() throws -> JSON { - try LegalHoldsExportAHoldTypeSerializer().serialize(self) + try NetworkControlPolicySerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try LegalHoldsExportAHoldTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try NetworkControlPolicySerializer().serialize(self)))" } catch { - return "Failed to generate description for LegalHoldsExportAHoldType: \(error)" + return "Failed to generate description for NetworkControlPolicy: \(error)" } } } - - public class LegalHoldsExportAHoldTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: LegalHoldsExportAHoldType) throws -> JSON { - let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), - ] - return .dictionary(output) + public class NetworkControlPolicySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: NetworkControlPolicy) throws -> JSON { + switch value { + case .disabled: + var d = [String: JSON]() + d[".tag"] = .str("disabled") + return .dictionary(d) + case .enabled: + var d = [String: JSON]() + d[".tag"] = .str("enabled") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } } - - public func deserialize(_ json: JSON) throws -> LegalHoldsExportAHoldType { + public func deserialize(_ json: JSON) throws -> NetworkControlPolicy { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return LegalHoldsExportAHoldType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: LegalHoldsExportAHoldType.self, json: json) + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "disabled": + return NetworkControlPolicy.disabled + case "enabled": + return NetworkControlPolicy.enabled + case "other": + return NetworkControlPolicy.other + default: + return NetworkControlPolicy.other + } + default: + throw JSONSerializerError.deserializeError(type: NetworkControlPolicy.self, json: json) } } } - /// Canceled export for a hold. - public class LegalHoldsExportCancelledDetails: CustomStringConvertible, JSONRepresentable { - /// Hold ID. - public let legalHoldId: String - /// Hold name. - public let name: String - /// Export name. - public let exportName: String - public init(legalHoldId: String, name: String, exportName: String) { - stringValidator()(legalHoldId) - self.legalHoldId = legalHoldId - stringValidator()(name) - self.name = name - stringValidator()(exportName) - self.exportName = exportName + /// Report created: Links created with no expiration. + public class NoExpirationLinkGenCreateReportDetails: CustomStringConvertible, JSONRepresentable { + /// Report start date. + public let startDate: Date + /// Report end date. + public let endDate: Date + public init(startDate: Date, endDate: Date) { + self.startDate = startDate + self.endDate = endDate } func json() throws -> JSON { - try LegalHoldsExportCancelledDetailsSerializer().serialize(self) + try NoExpirationLinkGenCreateReportDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try LegalHoldsExportCancelledDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try NoExpirationLinkGenCreateReportDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for LegalHoldsExportCancelledDetails: \(error)" + return "Failed to generate description for NoExpirationLinkGenCreateReportDetails: \(error)" } } } - - public class LegalHoldsExportCancelledDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: LegalHoldsExportCancelledDetails) throws -> JSON { + public class NoExpirationLinkGenCreateReportDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: NoExpirationLinkGenCreateReportDetails) throws -> JSON { let output = [ - "legal_hold_id": try Serialization._StringSerializer.serialize(value.legalHoldId), - "name": try Serialization._StringSerializer.serialize(value.name), - "export_name": try Serialization._StringSerializer.serialize(value.exportName), + "start_date": try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").serialize(value.startDate), + "end_date": try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").serialize(value.endDate), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> LegalHoldsExportCancelledDetails { + public func deserialize(_ json: JSON) throws -> NoExpirationLinkGenCreateReportDetails { switch json { - case .dictionary(let dict): - let legalHoldId = try Serialization._StringSerializer.deserialize(dict["legal_hold_id"] ?? .null) - let name = try Serialization._StringSerializer.deserialize(dict["name"] ?? .null) - let exportName = try Serialization._StringSerializer.deserialize(dict["export_name"] ?? .null) - return LegalHoldsExportCancelledDetails(legalHoldId: legalHoldId, name: name, exportName: exportName) - default: - throw JSONSerializerError.deserializeError(type: LegalHoldsExportCancelledDetails.self, json: json) + case .dictionary(let dict): + let startDate = try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").deserialize(dict["start_date"] ?? .null) + let endDate = try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").deserialize(dict["end_date"] ?? .null) + return NoExpirationLinkGenCreateReportDetails(startDate: startDate, endDate: endDate) + default: + throw JSONSerializerError.deserializeError(type: NoExpirationLinkGenCreateReportDetails.self, json: json) } } } - /// The LegalHoldsExportCancelledType struct - public class LegalHoldsExportCancelledType: CustomStringConvertible, JSONRepresentable { + /// The NoExpirationLinkGenCreateReportType struct + public class NoExpirationLinkGenCreateReportType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -35166,106 +48637,77 @@ public class TeamLog { } func json() throws -> JSON { - try LegalHoldsExportCancelledTypeSerializer().serialize(self) + try NoExpirationLinkGenCreateReportTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try LegalHoldsExportCancelledTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try NoExpirationLinkGenCreateReportTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for LegalHoldsExportCancelledType: \(error)" + return "Failed to generate description for NoExpirationLinkGenCreateReportType: \(error)" } } } - - public class LegalHoldsExportCancelledTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: LegalHoldsExportCancelledType) throws -> JSON { + public class NoExpirationLinkGenCreateReportTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: NoExpirationLinkGenCreateReportType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> LegalHoldsExportCancelledType { + public func deserialize(_ json: JSON) throws -> NoExpirationLinkGenCreateReportType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return LegalHoldsExportCancelledType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: LegalHoldsExportCancelledType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return NoExpirationLinkGenCreateReportType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: NoExpirationLinkGenCreateReportType.self, json: json) } } } - /// Downloaded export for a hold. - public class LegalHoldsExportDownloadedDetails: CustomStringConvertible, JSONRepresentable { - /// Hold ID. - public let legalHoldId: String - /// Hold name. - public let name: String - /// Export name. - public let exportName: String - /// Part. - public let part: String? - /// Filename. - public let fileName: String? - public init(legalHoldId: String, name: String, exportName: String, part: String? = nil, fileName: String? = nil) { - stringValidator()(legalHoldId) - self.legalHoldId = legalHoldId - stringValidator()(name) - self.name = name - stringValidator()(exportName) - self.exportName = exportName - nullableValidator(stringValidator())(part) - self.part = part - nullableValidator(stringValidator())(fileName) - self.fileName = fileName + /// Couldn't create report: Links created with no expiration. + public class NoExpirationLinkGenReportFailedDetails: CustomStringConvertible, JSONRepresentable { + /// Failure reason. + public let failureReason: Team.TeamReportFailureReason + public init(failureReason: Team.TeamReportFailureReason) { + self.failureReason = failureReason } func json() throws -> JSON { - try LegalHoldsExportDownloadedDetailsSerializer().serialize(self) + try NoExpirationLinkGenReportFailedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try LegalHoldsExportDownloadedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try NoExpirationLinkGenReportFailedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for LegalHoldsExportDownloadedDetails: \(error)" + return "Failed to generate description for NoExpirationLinkGenReportFailedDetails: \(error)" } } } - - public class LegalHoldsExportDownloadedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: LegalHoldsExportDownloadedDetails) throws -> JSON { + public class NoExpirationLinkGenReportFailedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: NoExpirationLinkGenReportFailedDetails) throws -> JSON { let output = [ - "legal_hold_id": try Serialization._StringSerializer.serialize(value.legalHoldId), - "name": try Serialization._StringSerializer.serialize(value.name), - "export_name": try Serialization._StringSerializer.serialize(value.exportName), - "part": try NullableSerializer(Serialization._StringSerializer).serialize(value.part), - "file_name": try NullableSerializer(Serialization._StringSerializer).serialize(value.fileName), + "failure_reason": try Team.TeamReportFailureReasonSerializer().serialize(value.failureReason), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> LegalHoldsExportDownloadedDetails { + public func deserialize(_ json: JSON) throws -> NoExpirationLinkGenReportFailedDetails { switch json { - case .dictionary(let dict): - let legalHoldId = try Serialization._StringSerializer.deserialize(dict["legal_hold_id"] ?? .null) - let name = try Serialization._StringSerializer.deserialize(dict["name"] ?? .null) - let exportName = try Serialization._StringSerializer.deserialize(dict["export_name"] ?? .null) - let part = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["part"] ?? .null) - let fileName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["file_name"] ?? .null) - return LegalHoldsExportDownloadedDetails(legalHoldId: legalHoldId, name: name, exportName: exportName, part: part, fileName: fileName) - default: - throw JSONSerializerError.deserializeError(type: LegalHoldsExportDownloadedDetails.self, json: json) + case .dictionary(let dict): + let failureReason = try Team.TeamReportFailureReasonSerializer().deserialize(dict["failure_reason"] ?? .null) + return NoExpirationLinkGenReportFailedDetails(failureReason: failureReason) + default: + throw JSONSerializerError.deserializeError(type: NoExpirationLinkGenReportFailedDetails.self, json: json) } } } - /// The LegalHoldsExportDownloadedType struct - public class LegalHoldsExportDownloadedType: CustomStringConvertible, JSONRepresentable { + /// The NoExpirationLinkGenReportFailedType struct + public class NoExpirationLinkGenReportFailedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -35274,94 +48716,82 @@ public class TeamLog { } func json() throws -> JSON { - try LegalHoldsExportDownloadedTypeSerializer().serialize(self) + try NoExpirationLinkGenReportFailedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try LegalHoldsExportDownloadedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try NoExpirationLinkGenReportFailedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for LegalHoldsExportDownloadedType: \(error)" + return "Failed to generate description for NoExpirationLinkGenReportFailedType: \(error)" } } } - - public class LegalHoldsExportDownloadedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: LegalHoldsExportDownloadedType) throws -> JSON { + public class NoExpirationLinkGenReportFailedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: NoExpirationLinkGenReportFailedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> LegalHoldsExportDownloadedType { + public func deserialize(_ json: JSON) throws -> NoExpirationLinkGenReportFailedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return LegalHoldsExportDownloadedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: LegalHoldsExportDownloadedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return NoExpirationLinkGenReportFailedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: NoExpirationLinkGenReportFailedType.self, json: json) } } } - /// Removed export for a hold. - public class LegalHoldsExportRemovedDetails: CustomStringConvertible, JSONRepresentable { - /// Hold ID. - public let legalHoldId: String - /// Hold name. - public let name: String - /// Export name. - public let exportName: String - public init(legalHoldId: String, name: String, exportName: String) { - stringValidator()(legalHoldId) - self.legalHoldId = legalHoldId - stringValidator()(name) - self.name = name - stringValidator()(exportName) - self.exportName = exportName + /// Report created: Links created without passwords. + public class NoPasswordLinkGenCreateReportDetails: CustomStringConvertible, JSONRepresentable { + /// Report start date. + public let startDate: Date + /// Report end date. + public let endDate: Date + public init(startDate: Date, endDate: Date) { + self.startDate = startDate + self.endDate = endDate } func json() throws -> JSON { - try LegalHoldsExportRemovedDetailsSerializer().serialize(self) + try NoPasswordLinkGenCreateReportDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try LegalHoldsExportRemovedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try NoPasswordLinkGenCreateReportDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for LegalHoldsExportRemovedDetails: \(error)" + return "Failed to generate description for NoPasswordLinkGenCreateReportDetails: \(error)" } } } - - public class LegalHoldsExportRemovedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: LegalHoldsExportRemovedDetails) throws -> JSON { + public class NoPasswordLinkGenCreateReportDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: NoPasswordLinkGenCreateReportDetails) throws -> JSON { let output = [ - "legal_hold_id": try Serialization._StringSerializer.serialize(value.legalHoldId), - "name": try Serialization._StringSerializer.serialize(value.name), - "export_name": try Serialization._StringSerializer.serialize(value.exportName), + "start_date": try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").serialize(value.startDate), + "end_date": try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").serialize(value.endDate), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> LegalHoldsExportRemovedDetails { + public func deserialize(_ json: JSON) throws -> NoPasswordLinkGenCreateReportDetails { switch json { - case .dictionary(let dict): - let legalHoldId = try Serialization._StringSerializer.deserialize(dict["legal_hold_id"] ?? .null) - let name = try Serialization._StringSerializer.deserialize(dict["name"] ?? .null) - let exportName = try Serialization._StringSerializer.deserialize(dict["export_name"] ?? .null) - return LegalHoldsExportRemovedDetails(legalHoldId: legalHoldId, name: name, exportName: exportName) - default: - throw JSONSerializerError.deserializeError(type: LegalHoldsExportRemovedDetails.self, json: json) + case .dictionary(let dict): + let startDate = try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").deserialize(dict["start_date"] ?? .null) + let endDate = try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").deserialize(dict["end_date"] ?? .null) + return NoPasswordLinkGenCreateReportDetails(startDate: startDate, endDate: endDate) + default: + throw JSONSerializerError.deserializeError(type: NoPasswordLinkGenCreateReportDetails.self, json: json) } } } - /// The LegalHoldsExportRemovedType struct - public class LegalHoldsExportRemovedType: CustomStringConvertible, JSONRepresentable { + /// The NoPasswordLinkGenCreateReportType struct + public class NoPasswordLinkGenCreateReportType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -35370,88 +48800,77 @@ public class TeamLog { } func json() throws -> JSON { - try LegalHoldsExportRemovedTypeSerializer().serialize(self) + try NoPasswordLinkGenCreateReportTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try LegalHoldsExportRemovedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try NoPasswordLinkGenCreateReportTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for LegalHoldsExportRemovedType: \(error)" + return "Failed to generate description for NoPasswordLinkGenCreateReportType: \(error)" } } } - - public class LegalHoldsExportRemovedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: LegalHoldsExportRemovedType) throws -> JSON { + public class NoPasswordLinkGenCreateReportTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: NoPasswordLinkGenCreateReportType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> LegalHoldsExportRemovedType { + public func deserialize(_ json: JSON) throws -> NoPasswordLinkGenCreateReportType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return LegalHoldsExportRemovedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: LegalHoldsExportRemovedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return NoPasswordLinkGenCreateReportType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: NoPasswordLinkGenCreateReportType.self, json: json) } } } - /// Released a hold. - public class LegalHoldsReleaseAHoldDetails: CustomStringConvertible, JSONRepresentable { - /// Hold ID. - public let legalHoldId: String - /// Hold name. - public let name: String - public init(legalHoldId: String, name: String) { - stringValidator()(legalHoldId) - self.legalHoldId = legalHoldId - stringValidator()(name) - self.name = name + /// Couldn't create report: Links created without passwords. + public class NoPasswordLinkGenReportFailedDetails: CustomStringConvertible, JSONRepresentable { + /// Failure reason. + public let failureReason: Team.TeamReportFailureReason + public init(failureReason: Team.TeamReportFailureReason) { + self.failureReason = failureReason } func json() throws -> JSON { - try LegalHoldsReleaseAHoldDetailsSerializer().serialize(self) + try NoPasswordLinkGenReportFailedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try LegalHoldsReleaseAHoldDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try NoPasswordLinkGenReportFailedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for LegalHoldsReleaseAHoldDetails: \(error)" + return "Failed to generate description for NoPasswordLinkGenReportFailedDetails: \(error)" } } } - - public class LegalHoldsReleaseAHoldDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: LegalHoldsReleaseAHoldDetails) throws -> JSON { + public class NoPasswordLinkGenReportFailedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: NoPasswordLinkGenReportFailedDetails) throws -> JSON { let output = [ - "legal_hold_id": try Serialization._StringSerializer.serialize(value.legalHoldId), - "name": try Serialization._StringSerializer.serialize(value.name), + "failure_reason": try Team.TeamReportFailureReasonSerializer().serialize(value.failureReason), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> LegalHoldsReleaseAHoldDetails { + public func deserialize(_ json: JSON) throws -> NoPasswordLinkGenReportFailedDetails { switch json { - case .dictionary(let dict): - let legalHoldId = try Serialization._StringSerializer.deserialize(dict["legal_hold_id"] ?? .null) - let name = try Serialization._StringSerializer.deserialize(dict["name"] ?? .null) - return LegalHoldsReleaseAHoldDetails(legalHoldId: legalHoldId, name: name) - default: - throw JSONSerializerError.deserializeError(type: LegalHoldsReleaseAHoldDetails.self, json: json) + case .dictionary(let dict): + let failureReason = try Team.TeamReportFailureReasonSerializer().deserialize(dict["failure_reason"] ?? .null) + return NoPasswordLinkGenReportFailedDetails(failureReason: failureReason) + default: + throw JSONSerializerError.deserializeError(type: NoPasswordLinkGenReportFailedDetails.self, json: json) } } } - /// The LegalHoldsReleaseAHoldType struct - public class LegalHoldsReleaseAHoldType: CustomStringConvertible, JSONRepresentable { + /// The NoPasswordLinkGenReportFailedType struct + public class NoPasswordLinkGenReportFailedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -35460,88 +48879,82 @@ public class TeamLog { } func json() throws -> JSON { - try LegalHoldsReleaseAHoldTypeSerializer().serialize(self) + try NoPasswordLinkGenReportFailedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try LegalHoldsReleaseAHoldTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try NoPasswordLinkGenReportFailedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for LegalHoldsReleaseAHoldType: \(error)" + return "Failed to generate description for NoPasswordLinkGenReportFailedType: \(error)" } } } - - public class LegalHoldsReleaseAHoldTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: LegalHoldsReleaseAHoldType) throws -> JSON { + public class NoPasswordLinkGenReportFailedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: NoPasswordLinkGenReportFailedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> LegalHoldsReleaseAHoldType { + public func deserialize(_ json: JSON) throws -> NoPasswordLinkGenReportFailedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return LegalHoldsReleaseAHoldType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: LegalHoldsReleaseAHoldType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return NoPasswordLinkGenReportFailedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: NoPasswordLinkGenReportFailedType.self, json: json) } } } - /// Removed members from a hold. - public class LegalHoldsRemoveMembersDetails: CustomStringConvertible, JSONRepresentable { - /// Hold ID. - public let legalHoldId: String - /// Hold name. - public let name: String - public init(legalHoldId: String, name: String) { - stringValidator()(legalHoldId) - self.legalHoldId = legalHoldId - stringValidator()(name) - self.name = name + /// Report created: Views of links without passwords. + public class NoPasswordLinkViewCreateReportDetails: CustomStringConvertible, JSONRepresentable { + /// Report start date. + public let startDate: Date + /// Report end date. + public let endDate: Date + public init(startDate: Date, endDate: Date) { + self.startDate = startDate + self.endDate = endDate } func json() throws -> JSON { - try LegalHoldsRemoveMembersDetailsSerializer().serialize(self) + try NoPasswordLinkViewCreateReportDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try LegalHoldsRemoveMembersDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try NoPasswordLinkViewCreateReportDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for LegalHoldsRemoveMembersDetails: \(error)" + return "Failed to generate description for NoPasswordLinkViewCreateReportDetails: \(error)" } } } - - public class LegalHoldsRemoveMembersDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: LegalHoldsRemoveMembersDetails) throws -> JSON { + public class NoPasswordLinkViewCreateReportDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: NoPasswordLinkViewCreateReportDetails) throws -> JSON { let output = [ - "legal_hold_id": try Serialization._StringSerializer.serialize(value.legalHoldId), - "name": try Serialization._StringSerializer.serialize(value.name), + "start_date": try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").serialize(value.startDate), + "end_date": try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").serialize(value.endDate), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> LegalHoldsRemoveMembersDetails { + public func deserialize(_ json: JSON) throws -> NoPasswordLinkViewCreateReportDetails { switch json { - case .dictionary(let dict): - let legalHoldId = try Serialization._StringSerializer.deserialize(dict["legal_hold_id"] ?? .null) - let name = try Serialization._StringSerializer.deserialize(dict["name"] ?? .null) - return LegalHoldsRemoveMembersDetails(legalHoldId: legalHoldId, name: name) - default: - throw JSONSerializerError.deserializeError(type: LegalHoldsRemoveMembersDetails.self, json: json) + case .dictionary(let dict): + let startDate = try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").deserialize(dict["start_date"] ?? .null) + let endDate = try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").deserialize(dict["end_date"] ?? .null) + return NoPasswordLinkViewCreateReportDetails(startDate: startDate, endDate: endDate) + default: + throw JSONSerializerError.deserializeError(type: NoPasswordLinkViewCreateReportDetails.self, json: json) } } } - /// The LegalHoldsRemoveMembersType struct - public class LegalHoldsRemoveMembersType: CustomStringConvertible, JSONRepresentable { + /// The NoPasswordLinkViewCreateReportType struct + public class NoPasswordLinkViewCreateReportType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -35550,88 +48963,77 @@ public class TeamLog { } func json() throws -> JSON { - try LegalHoldsRemoveMembersTypeSerializer().serialize(self) + try NoPasswordLinkViewCreateReportTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try LegalHoldsRemoveMembersTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try NoPasswordLinkViewCreateReportTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for LegalHoldsRemoveMembersType: \(error)" + return "Failed to generate description for NoPasswordLinkViewCreateReportType: \(error)" } } } - - public class LegalHoldsRemoveMembersTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: LegalHoldsRemoveMembersType) throws -> JSON { + public class NoPasswordLinkViewCreateReportTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: NoPasswordLinkViewCreateReportType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> LegalHoldsRemoveMembersType { + public func deserialize(_ json: JSON) throws -> NoPasswordLinkViewCreateReportType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return LegalHoldsRemoveMembersType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: LegalHoldsRemoveMembersType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return NoPasswordLinkViewCreateReportType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: NoPasswordLinkViewCreateReportType.self, json: json) } } } - /// Created a summary report for a hold. - public class LegalHoldsReportAHoldDetails: CustomStringConvertible, JSONRepresentable { - /// Hold ID. - public let legalHoldId: String - /// Hold name. - public let name: String - public init(legalHoldId: String, name: String) { - stringValidator()(legalHoldId) - self.legalHoldId = legalHoldId - stringValidator()(name) - self.name = name + /// Couldn't create report: Views of links without passwords. + public class NoPasswordLinkViewReportFailedDetails: CustomStringConvertible, JSONRepresentable { + /// Failure reason. + public let failureReason: Team.TeamReportFailureReason + public init(failureReason: Team.TeamReportFailureReason) { + self.failureReason = failureReason } func json() throws -> JSON { - try LegalHoldsReportAHoldDetailsSerializer().serialize(self) + try NoPasswordLinkViewReportFailedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try LegalHoldsReportAHoldDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try NoPasswordLinkViewReportFailedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for LegalHoldsReportAHoldDetails: \(error)" + return "Failed to generate description for NoPasswordLinkViewReportFailedDetails: \(error)" } } } - - public class LegalHoldsReportAHoldDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: LegalHoldsReportAHoldDetails) throws -> JSON { + public class NoPasswordLinkViewReportFailedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: NoPasswordLinkViewReportFailedDetails) throws -> JSON { let output = [ - "legal_hold_id": try Serialization._StringSerializer.serialize(value.legalHoldId), - "name": try Serialization._StringSerializer.serialize(value.name), + "failure_reason": try Team.TeamReportFailureReasonSerializer().serialize(value.failureReason), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> LegalHoldsReportAHoldDetails { + public func deserialize(_ json: JSON) throws -> NoPasswordLinkViewReportFailedDetails { switch json { - case .dictionary(let dict): - let legalHoldId = try Serialization._StringSerializer.deserialize(dict["legal_hold_id"] ?? .null) - let name = try Serialization._StringSerializer.deserialize(dict["name"] ?? .null) - return LegalHoldsReportAHoldDetails(legalHoldId: legalHoldId, name: name) - default: - throw JSONSerializerError.deserializeError(type: LegalHoldsReportAHoldDetails.self, json: json) + case .dictionary(let dict): + let failureReason = try Team.TeamReportFailureReasonSerializer().deserialize(dict["failure_reason"] ?? .null) + return NoPasswordLinkViewReportFailedDetails(failureReason: failureReason) + default: + throw JSONSerializerError.deserializeError(type: NoPasswordLinkViewReportFailedDetails.self, json: json) } } } - /// The LegalHoldsReportAHoldType struct - public class LegalHoldsReportAHoldType: CustomStringConvertible, JSONRepresentable { + /// The NoPasswordLinkViewReportFailedType struct + public class NoPasswordLinkViewReportFailedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -35640,438 +49042,296 @@ public class TeamLog { } func json() throws -> JSON { - try LegalHoldsReportAHoldTypeSerializer().serialize(self) + try NoPasswordLinkViewReportFailedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try LegalHoldsReportAHoldTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try NoPasswordLinkViewReportFailedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for LegalHoldsReportAHoldType: \(error)" + return "Failed to generate description for NoPasswordLinkViewReportFailedType: \(error)" } } } - - public class LegalHoldsReportAHoldTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: LegalHoldsReportAHoldType) throws -> JSON { + public class NoPasswordLinkViewReportFailedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: NoPasswordLinkViewReportFailedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> LegalHoldsReportAHoldType { + public func deserialize(_ json: JSON) throws -> NoPasswordLinkViewReportFailedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return LegalHoldsReportAHoldType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: LegalHoldsReportAHoldType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return NoPasswordLinkViewReportFailedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: NoPasswordLinkViewReportFailedType.self, json: json) } } } - /// The device sessions that user is linked to. - public enum LinkedDeviceLogInfo: CustomStringConvertible, JSONRepresentable { - /// desktop device session's details. - case desktopDeviceSession(TeamLog.DesktopDeviceSessionLogInfo) - /// legacy device session's details. - case legacyDeviceSession(TeamLog.LegacyDeviceSessionLogInfo) - /// mobile device session's details. - case mobileDeviceSession(TeamLog.MobileDeviceSessionLogInfo) - /// web device session's details. - case webDeviceSession(TeamLog.WebDeviceSessionLogInfo) - /// An unspecified error. - case other + /// User's logged information. + public class UserLogInfo: CustomStringConvertible, JSONRepresentable { + /// User unique ID. + public let accountId: String? + /// User display name. + public let displayName: String? + /// User email address. + public let email: String? + public init(accountId: String? = nil, displayName: String? = nil, email: String? = nil) { + nullableValidator(stringValidator(minLength: 40, maxLength: 40))(accountId) + self.accountId = accountId + nullableValidator(stringValidator())(displayName) + self.displayName = displayName + nullableValidator(stringValidator(maxLength: 255))(email) + self.email = email + } func json() throws -> JSON { - try LinkedDeviceLogInfoSerializer().serialize(self) + try UserLogInfoSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try LinkedDeviceLogInfoSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try UserLogInfoSerializer().serialize(self)))" } catch { - return "Failed to generate description for LinkedDeviceLogInfo: \(error)" + return "Failed to generate description for UserLogInfo: \(error)" } } } - - public class LinkedDeviceLogInfoSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: LinkedDeviceLogInfo) throws -> JSON { + public class UserLogInfoSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: UserLogInfo) throws -> JSON { + var output = [ + "account_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.accountId), + "display_name": try NullableSerializer(Serialization._StringSerializer).serialize(value.displayName), + "email": try NullableSerializer(Serialization._StringSerializer).serialize(value.email), + ] switch value { - case .desktopDeviceSession(let arg): - var d = try Serialization.getFields(TeamLog.DesktopDeviceSessionLogInfoSerializer().serialize(arg)) - d[".tag"] = .str("desktop_device_session") - return .dictionary(d) - case .legacyDeviceSession(let arg): - var d = try Serialization.getFields(TeamLog.LegacyDeviceSessionLogInfoSerializer().serialize(arg)) - d[".tag"] = .str("legacy_device_session") - return .dictionary(d) - case .mobileDeviceSession(let arg): - var d = try Serialization.getFields(TeamLog.MobileDeviceSessionLogInfoSerializer().serialize(arg)) - d[".tag"] = .str("mobile_device_session") - return .dictionary(d) - case .webDeviceSession(let arg): - var d = try Serialization.getFields(TeamLog.WebDeviceSessionLogInfoSerializer().serialize(arg)) - d[".tag"] = .str("web_device_session") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) + case let nonTeamMember as TeamLog.NonTeamMemberLogInfo: + for (k, v) in try Serialization.getFields(TeamLog.NonTeamMemberLogInfoSerializer().serialize(nonTeamMember)) { + output[k] = v + } + output[".tag"] = .str("non_team_member") + case let teamMember as TeamLog.TeamMemberLogInfo: + for (k, v) in try Serialization.getFields(TeamLog.TeamMemberLogInfoSerializer().serialize(teamMember)) { + output[k] = v + } + output[".tag"] = .str("team_member") + case let trustedNonTeamMember as TeamLog.TrustedNonTeamMemberLogInfo: + for (k, v) in try Serialization.getFields(TeamLog.TrustedNonTeamMemberLogInfoSerializer().serialize(trustedNonTeamMember)) { + output[k] = v + } + output[".tag"] = .str("trusted_non_team_member") + default: + throw JSONSerializerError.unexpectedSubtype(type: UserLogInfo.self, subtype: value) } + return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> LinkedDeviceLogInfo { + public func deserialize(_ json: JSON) throws -> UserLogInfo { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "desktop_device_session": - let v = try TeamLog.DesktopDeviceSessionLogInfoSerializer().deserialize(json) - return LinkedDeviceLogInfo.desktopDeviceSession(v) - case "legacy_device_session": - let v = try TeamLog.LegacyDeviceSessionLogInfoSerializer().deserialize(json) - return LinkedDeviceLogInfo.legacyDeviceSession(v) - case "mobile_device_session": - let v = try TeamLog.MobileDeviceSessionLogInfoSerializer().deserialize(json) - return LinkedDeviceLogInfo.mobileDeviceSession(v) - case "web_device_session": - let v = try TeamLog.WebDeviceSessionLogInfoSerializer().deserialize(json) - return LinkedDeviceLogInfo.webDeviceSession(v) - case "other": - return LinkedDeviceLogInfo.other + case .dictionary(let dict): + let tag = try Serialization.getTag(dict) + switch tag { + case "non_team_member": + return try TeamLog.NonTeamMemberLogInfoSerializer().deserialize(json) + case "team_member": + return try TeamLog.TeamMemberLogInfoSerializer().deserialize(json) + case "trusted_non_team_member": + return try TeamLog.TrustedNonTeamMemberLogInfoSerializer().deserialize(json) + default: + let accountId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["account_id"] ?? .null) + let displayName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["display_name"] ?? .null) + let email = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["email"] ?? .null) + return UserLogInfo(accountId: accountId, displayName: displayName, email: email) + } default: - return LinkedDeviceLogInfo.other - } - default: - throw JSONSerializerError.deserializeError(type: LinkedDeviceLogInfo.self, json: json) + throw JSONSerializerError.deserializeError(type: UserLogInfo.self, json: json) } } } - /// File lock status - public enum LockStatus: CustomStringConvertible, JSONRepresentable { - /// An unspecified error. - case locked - /// An unspecified error. - case unlocked - /// An unspecified error. - case other + /// Non team member's logged information. + public class NonTeamMemberLogInfo: TeamLog.UserLogInfo { - func json() throws -> JSON { - try LockStatusSerializer().serialize(self) - } - public var description: String { + public override var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try LockStatusSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try NonTeamMemberLogInfoSerializer().serialize(self)))" } catch { - return "Failed to generate description for LockStatus: \(error)" + return "Failed to generate description for NonTeamMemberLogInfo: \(error)" } } } - - public class LockStatusSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: LockStatus) throws -> JSON { - switch value { - case .locked: - var d = [String: JSON]() - d[".tag"] = .str("locked") - return .dictionary(d) - case .unlocked: - var d = [String: JSON]() - d[".tag"] = .str("unlocked") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) - } + public class NonTeamMemberLogInfoSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: NonTeamMemberLogInfo) throws -> JSON { + let output = [ + "account_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.accountId), + "display_name": try NullableSerializer(Serialization._StringSerializer).serialize(value.displayName), + "email": try NullableSerializer(Serialization._StringSerializer).serialize(value.email), + ] + return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> LockStatus { + public func deserialize(_ json: JSON) throws -> NonTeamMemberLogInfo { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "locked": - return LockStatus.locked - case "unlocked": - return LockStatus.unlocked - case "other": - return LockStatus.other + case .dictionary(let dict): + let accountId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["account_id"] ?? .null) + let displayName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["display_name"] ?? .null) + let email = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["email"] ?? .null) + return NonTeamMemberLogInfo(accountId: accountId, displayName: displayName, email: email) default: - return LockStatus.other - } - default: - throw JSONSerializerError.deserializeError(type: LockStatus.self, json: json) + throw JSONSerializerError.deserializeError(type: NonTeamMemberLogInfo.self, json: json) } } } - /// Failed to sign in. - public class LoginFailDetails: CustomStringConvertible, JSONRepresentable { - /// Tells if the login device is EMM managed. Might be missing due to historical data gap. - public let isEmmManaged: Bool? - /// Login method. - public let loginMethod: TeamLog.LoginMethod - /// Error details. - public let errorDetails: TeamLog.FailureDetailsLogInfo - public init(loginMethod: TeamLog.LoginMethod, errorDetails: TeamLog.FailureDetailsLogInfo, isEmmManaged: Bool? = nil) { - self.isEmmManaged = isEmmManaged - self.loginMethod = loginMethod - self.errorDetails = errorDetails + /// The email to which the request was sent + public class NonTrustedTeamDetails: CustomStringConvertible, JSONRepresentable { + /// The email to which the request was sent. + public let team: String + public init(team: String) { + stringValidator()(team) + self.team = team } func json() throws -> JSON { - try LoginFailDetailsSerializer().serialize(self) + try NonTrustedTeamDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try LoginFailDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try NonTrustedTeamDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for LoginFailDetails: \(error)" + return "Failed to generate description for NonTrustedTeamDetails: \(error)" } } } - - public class LoginFailDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: LoginFailDetails) throws -> JSON { + public class NonTrustedTeamDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: NonTrustedTeamDetails) throws -> JSON { let output = [ - "login_method": try TeamLog.LoginMethodSerializer().serialize(value.loginMethod), - "error_details": try TeamLog.FailureDetailsLogInfoSerializer().serialize(value.errorDetails), - "is_emm_managed": try NullableSerializer(Serialization._BoolSerializer).serialize(value.isEmmManaged), + "team": try Serialization._StringSerializer.serialize(value.team), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> LoginFailDetails { + public func deserialize(_ json: JSON) throws -> NonTrustedTeamDetails { switch json { - case .dictionary(let dict): - let loginMethod = try TeamLog.LoginMethodSerializer().deserialize(dict["login_method"] ?? .null) - let errorDetails = try TeamLog.FailureDetailsLogInfoSerializer().deserialize(dict["error_details"] ?? .null) - let isEmmManaged = try NullableSerializer(Serialization._BoolSerializer).deserialize(dict["is_emm_managed"] ?? .null) - return LoginFailDetails(loginMethod: loginMethod, errorDetails: errorDetails, isEmmManaged: isEmmManaged) - default: - throw JSONSerializerError.deserializeError(type: LoginFailDetails.self, json: json) + case .dictionary(let dict): + let team = try Serialization._StringSerializer.deserialize(dict["team"] ?? .null) + return NonTrustedTeamDetails(team: team) + default: + throw JSONSerializerError.deserializeError(type: NonTrustedTeamDetails.self, json: json) } } } - /// The LoginFailType struct - public class LoginFailType: CustomStringConvertible, JSONRepresentable { - /// (no description) - public let description_: String - public init(description_: String) { - stringValidator()(description_) - self.description_ = description_ - } + /// Changed Paper doc to invite-only. + public class NoteAclInviteOnlyDetails: CustomStringConvertible, JSONRepresentable { func json() throws -> JSON { - try LoginFailTypeSerializer().serialize(self) + try NoteAclInviteOnlyDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try LoginFailTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try NoteAclInviteOnlyDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for LoginFailType: \(error)" + return "Failed to generate description for NoteAclInviteOnlyDetails: \(error)" } } } - - public class LoginFailTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: LoginFailType) throws -> JSON { - let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), - ] + public class NoteAclInviteOnlyDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: NoteAclInviteOnlyDetails) throws -> JSON { + let output = [String: JSON]() return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> LoginFailType { + public func deserialize(_ json: JSON) throws -> NoteAclInviteOnlyDetails { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return LoginFailType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: LoginFailType.self, json: json) + case .dictionary(_): + return NoteAclInviteOnlyDetails() + default: + throw JSONSerializerError.deserializeError(type: NoteAclInviteOnlyDetails.self, json: json) } } } - /// The LoginMethod union - public enum LoginMethod: CustomStringConvertible, JSONRepresentable { - /// An unspecified error. - case appleOauth - /// An unspecified error. - case firstPartyTokenExchange - /// An unspecified error. - case googleOauth - /// An unspecified error. - case lenovoOauth - /// An unspecified error. - case password - /// An unspecified error. - case qrCode - /// An unspecified error. - case saml - /// An unspecified error. - case twoFactorAuthentication - /// An unspecified error. - case webSession - /// An unspecified error. - case other + /// The NoteAclInviteOnlyType struct + public class NoteAclInviteOnlyType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } func json() throws -> JSON { - try LoginMethodSerializer().serialize(self) + try NoteAclInviteOnlyTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try LoginMethodSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try NoteAclInviteOnlyTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for LoginMethod: \(error)" + return "Failed to generate description for NoteAclInviteOnlyType: \(error)" } } } - - public class LoginMethodSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: LoginMethod) throws -> JSON { - switch value { - case .appleOauth: - var d = [String: JSON]() - d[".tag"] = .str("apple_oauth") - return .dictionary(d) - case .firstPartyTokenExchange: - var d = [String: JSON]() - d[".tag"] = .str("first_party_token_exchange") - return .dictionary(d) - case .googleOauth: - var d = [String: JSON]() - d[".tag"] = .str("google_oauth") - return .dictionary(d) - case .lenovoOauth: - var d = [String: JSON]() - d[".tag"] = .str("lenovo_oauth") - return .dictionary(d) - case .password: - var d = [String: JSON]() - d[".tag"] = .str("password") - return .dictionary(d) - case .qrCode: - var d = [String: JSON]() - d[".tag"] = .str("qr_code") - return .dictionary(d) - case .saml: - var d = [String: JSON]() - d[".tag"] = .str("saml") - return .dictionary(d) - case .twoFactorAuthentication: - var d = [String: JSON]() - d[".tag"] = .str("two_factor_authentication") - return .dictionary(d) - case .webSession: - var d = [String: JSON]() - d[".tag"] = .str("web_session") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) - } + public class NoteAclInviteOnlyTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: NoteAclInviteOnlyType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> LoginMethod { + public func deserialize(_ json: JSON) throws -> NoteAclInviteOnlyType { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "apple_oauth": - return LoginMethod.appleOauth - case "first_party_token_exchange": - return LoginMethod.firstPartyTokenExchange - case "google_oauth": - return LoginMethod.googleOauth - case "lenovo_oauth": - return LoginMethod.lenovoOauth - case "password": - return LoginMethod.password - case "qr_code": - return LoginMethod.qrCode - case "saml": - return LoginMethod.saml - case "two_factor_authentication": - return LoginMethod.twoFactorAuthentication - case "web_session": - return LoginMethod.webSession - case "other": - return LoginMethod.other - default: - return LoginMethod.other - } - default: - throw JSONSerializerError.deserializeError(type: LoginMethod.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return NoteAclInviteOnlyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: NoteAclInviteOnlyType.self, json: json) } } } - /// Signed in. - public class LoginSuccessDetails: CustomStringConvertible, JSONRepresentable { - /// Tells if the login device is EMM managed. Might be missing due to historical data gap. - public let isEmmManaged: Bool? - /// Login method. - public let loginMethod: TeamLog.LoginMethod - public init(loginMethod: TeamLog.LoginMethod, isEmmManaged: Bool? = nil) { - self.isEmmManaged = isEmmManaged - self.loginMethod = loginMethod - } + /// Changed Paper doc to link-accessible. + public class NoteAclLinkDetails: CustomStringConvertible, JSONRepresentable { func json() throws -> JSON { - try LoginSuccessDetailsSerializer().serialize(self) + try NoteAclLinkDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try LoginSuccessDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try NoteAclLinkDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for LoginSuccessDetails: \(error)" + return "Failed to generate description for NoteAclLinkDetails: \(error)" } } } - - public class LoginSuccessDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: LoginSuccessDetails) throws -> JSON { - let output = [ - "login_method": try TeamLog.LoginMethodSerializer().serialize(value.loginMethod), - "is_emm_managed": try NullableSerializer(Serialization._BoolSerializer).serialize(value.isEmmManaged), - ] + public class NoteAclLinkDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: NoteAclLinkDetails) throws -> JSON { + let output = [String: JSON]() return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> LoginSuccessDetails { + public func deserialize(_ json: JSON) throws -> NoteAclLinkDetails { switch json { - case .dictionary(let dict): - let loginMethod = try TeamLog.LoginMethodSerializer().deserialize(dict["login_method"] ?? .null) - let isEmmManaged = try NullableSerializer(Serialization._BoolSerializer).deserialize(dict["is_emm_managed"] ?? .null) - return LoginSuccessDetails(loginMethod: loginMethod, isEmmManaged: isEmmManaged) - default: - throw JSONSerializerError.deserializeError(type: LoginSuccessDetails.self, json: json) + case .dictionary(_): + return NoteAclLinkDetails() + default: + throw JSONSerializerError.deserializeError(type: NoteAclLinkDetails.self, json: json) } } } - /// The LoginSuccessType struct - public class LoginSuccessType: CustomStringConvertible, JSONRepresentable { + /// The NoteAclLinkType struct + public class NoteAclLinkType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -36080,82 +49340,69 @@ public class TeamLog { } func json() throws -> JSON { - try LoginSuccessTypeSerializer().serialize(self) + try NoteAclLinkTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try LoginSuccessTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try NoteAclLinkTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for LoginSuccessType: \(error)" + return "Failed to generate description for NoteAclLinkType: \(error)" } } } - - public class LoginSuccessTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: LoginSuccessType) throws -> JSON { + public class NoteAclLinkTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: NoteAclLinkType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> LoginSuccessType { + public func deserialize(_ json: JSON) throws -> NoteAclLinkType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return LoginSuccessType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: LoginSuccessType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return NoteAclLinkType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: NoteAclLinkType.self, json: json) } } } - /// Signed out. - public class LogoutDetails: CustomStringConvertible, JSONRepresentable { - /// Login session id. - public let loginId: String? - public init(loginId: String? = nil) { - nullableValidator(stringValidator())(loginId) - self.loginId = loginId - } + /// Changed Paper doc to link-accessible for team. + public class NoteAclTeamLinkDetails: CustomStringConvertible, JSONRepresentable { func json() throws -> JSON { - try LogoutDetailsSerializer().serialize(self) + try NoteAclTeamLinkDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try LogoutDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try NoteAclTeamLinkDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for LogoutDetails: \(error)" + return "Failed to generate description for NoteAclTeamLinkDetails: \(error)" } } } - - public class LogoutDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: LogoutDetails) throws -> JSON { - let output = [ - "login_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.loginId), - ] + public class NoteAclTeamLinkDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: NoteAclTeamLinkDetails) throws -> JSON { + let output = [String: JSON]() return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> LogoutDetails { + public func deserialize(_ json: JSON) throws -> NoteAclTeamLinkDetails { switch json { - case .dictionary(let dict): - let loginId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["login_id"] ?? .null) - return LogoutDetails(loginId: loginId) - default: - throw JSONSerializerError.deserializeError(type: LogoutDetails.self, json: json) + case .dictionary(_): + return NoteAclTeamLinkDetails() + default: + throw JSONSerializerError.deserializeError(type: NoteAclTeamLinkDetails.self, json: json) } } } - /// The LogoutType struct - public class LogoutType: CustomStringConvertible, JSONRepresentable { + /// The NoteAclTeamLinkType struct + public class NoteAclTeamLinkType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -36164,82 +49411,69 @@ public class TeamLog { } func json() throws -> JSON { - try LogoutTypeSerializer().serialize(self) + try NoteAclTeamLinkTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try LogoutTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try NoteAclTeamLinkTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for LogoutType: \(error)" + return "Failed to generate description for NoteAclTeamLinkType: \(error)" } } } - - public class LogoutTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: LogoutType) throws -> JSON { + public class NoteAclTeamLinkTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: NoteAclTeamLinkType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> LogoutType { + public func deserialize(_ json: JSON) throws -> NoteAclTeamLinkType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return LogoutType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: LogoutType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return NoteAclTeamLinkType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: NoteAclTeamLinkType.self, json: json) } } } - /// Added an external ID for team member. - public class MemberAddExternalIdDetails: CustomStringConvertible, JSONRepresentable { - /// Current external id. - public let newValue: String - public init(newValue: String) { - stringValidator(maxLength: 64)(newValue) - self.newValue = newValue - } + /// Shared received Paper doc. + public class NoteShareReceiveDetails: CustomStringConvertible, JSONRepresentable { func json() throws -> JSON { - try MemberAddExternalIdDetailsSerializer().serialize(self) + try NoteShareReceiveDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MemberAddExternalIdDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try NoteShareReceiveDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for MemberAddExternalIdDetails: \(error)" + return "Failed to generate description for NoteShareReceiveDetails: \(error)" } } } - - public class MemberAddExternalIdDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MemberAddExternalIdDetails) throws -> JSON { - let output = [ - "new_value": try Serialization._StringSerializer.serialize(value.newValue), - ] + public class NoteShareReceiveDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: NoteShareReceiveDetails) throws -> JSON { + let output = [String: JSON]() return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MemberAddExternalIdDetails { + public func deserialize(_ json: JSON) throws -> NoteShareReceiveDetails { switch json { - case .dictionary(let dict): - let newValue = try Serialization._StringSerializer.deserialize(dict["new_value"] ?? .null) - return MemberAddExternalIdDetails(newValue: newValue) - default: - throw JSONSerializerError.deserializeError(type: MemberAddExternalIdDetails.self, json: json) + case .dictionary(_): + return NoteShareReceiveDetails() + default: + throw JSONSerializerError.deserializeError(type: NoteShareReceiveDetails.self, json: json) } } } - /// The MemberAddExternalIdType struct - public class MemberAddExternalIdType: CustomStringConvertible, JSONRepresentable { + /// The NoteShareReceiveType struct + public class NoteShareReceiveType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -36248,81 +49482,69 @@ public class TeamLog { } func json() throws -> JSON { - try MemberAddExternalIdTypeSerializer().serialize(self) + try NoteShareReceiveTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MemberAddExternalIdTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try NoteShareReceiveTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for MemberAddExternalIdType: \(error)" + return "Failed to generate description for NoteShareReceiveType: \(error)" } } } - - public class MemberAddExternalIdTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MemberAddExternalIdType) throws -> JSON { + public class NoteShareReceiveTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: NoteShareReceiveType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MemberAddExternalIdType { + public func deserialize(_ json: JSON) throws -> NoteShareReceiveType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return MemberAddExternalIdType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: MemberAddExternalIdType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return NoteShareReceiveType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: NoteShareReceiveType.self, json: json) } } } - /// Added team member name. - public class MemberAddNameDetails: CustomStringConvertible, JSONRepresentable { - /// New user's name. - public let newValue: TeamLog.UserNameLogInfo - public init(newValue: TeamLog.UserNameLogInfo) { - self.newValue = newValue - } + /// Shared Paper doc. + public class NoteSharedDetails: CustomStringConvertible, JSONRepresentable { func json() throws -> JSON { - try MemberAddNameDetailsSerializer().serialize(self) + try NoteSharedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MemberAddNameDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try NoteSharedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for MemberAddNameDetails: \(error)" + return "Failed to generate description for NoteSharedDetails: \(error)" } } } - - public class MemberAddNameDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MemberAddNameDetails) throws -> JSON { - let output = [ - "new_value": try TeamLog.UserNameLogInfoSerializer().serialize(value.newValue), - ] + public class NoteSharedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: NoteSharedDetails) throws -> JSON { + let output = [String: JSON]() return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MemberAddNameDetails { + public func deserialize(_ json: JSON) throws -> NoteSharedDetails { switch json { - case .dictionary(let dict): - let newValue = try TeamLog.UserNameLogInfoSerializer().deserialize(dict["new_value"] ?? .null) - return MemberAddNameDetails(newValue: newValue) - default: - throw JSONSerializerError.deserializeError(type: MemberAddNameDetails.self, json: json) + case .dictionary(_): + return NoteSharedDetails() + default: + throw JSONSerializerError.deserializeError(type: NoteSharedDetails.self, json: json) } } } - /// The MemberAddNameType struct - public class MemberAddNameType: CustomStringConvertible, JSONRepresentable { + /// The NoteSharedType struct + public class NoteSharedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -36331,88 +49553,77 @@ public class TeamLog { } func json() throws -> JSON { - try MemberAddNameTypeSerializer().serialize(self) + try NoteSharedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MemberAddNameTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try NoteSharedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for MemberAddNameType: \(error)" + return "Failed to generate description for NoteSharedType: \(error)" } } } - - public class MemberAddNameTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MemberAddNameType) throws -> JSON { + public class NoteSharedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: NoteSharedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MemberAddNameType { + public func deserialize(_ json: JSON) throws -> NoteSharedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return MemberAddNameType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: MemberAddNameType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return NoteSharedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: NoteSharedType.self, json: json) } } } - /// Changed team member admin role. - public class MemberChangeAdminRoleDetails: CustomStringConvertible, JSONRepresentable { - /// New admin role. This field is relevant when the admin role is changed or whenthe user role changes from no - /// admin rights to with admin rights. - public let newValue: TeamLog.AdminRole? - /// Previous admin role. This field is relevant when the admin role is changed or when the admin role is - /// removed. - public let previousValue: TeamLog.AdminRole? - public init(newValue: TeamLog.AdminRole? = nil, previousValue: TeamLog.AdminRole? = nil) { - self.newValue = newValue - self.previousValue = previousValue + /// Added a label. + public class ObjectLabelAddedDetails: CustomStringConvertible, JSONRepresentable { + /// Labels mark a file or folder. + public let labelType: TeamLog.LabelType + public init(labelType: TeamLog.LabelType) { + self.labelType = labelType } func json() throws -> JSON { - try MemberChangeAdminRoleDetailsSerializer().serialize(self) + try ObjectLabelAddedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MemberChangeAdminRoleDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ObjectLabelAddedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for MemberChangeAdminRoleDetails: \(error)" + return "Failed to generate description for ObjectLabelAddedDetails: \(error)" } } } - - public class MemberChangeAdminRoleDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MemberChangeAdminRoleDetails) throws -> JSON { + public class ObjectLabelAddedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ObjectLabelAddedDetails) throws -> JSON { let output = [ - "new_value": try NullableSerializer(TeamLog.AdminRoleSerializer()).serialize(value.newValue), - "previous_value": try NullableSerializer(TeamLog.AdminRoleSerializer()).serialize(value.previousValue), + "label_type": try TeamLog.LabelTypeSerializer().serialize(value.labelType), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MemberChangeAdminRoleDetails { + public func deserialize(_ json: JSON) throws -> ObjectLabelAddedDetails { switch json { - case .dictionary(let dict): - let newValue = try NullableSerializer(TeamLog.AdminRoleSerializer()).deserialize(dict["new_value"] ?? .null) - let previousValue = try NullableSerializer(TeamLog.AdminRoleSerializer()).deserialize(dict["previous_value"] ?? .null) - return MemberChangeAdminRoleDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: MemberChangeAdminRoleDetails.self, json: json) + case .dictionary(let dict): + let labelType = try TeamLog.LabelTypeSerializer().deserialize(dict["label_type"] ?? .null) + return ObjectLabelAddedDetails(labelType: labelType) + default: + throw JSONSerializerError.deserializeError(type: ObjectLabelAddedDetails.self, json: json) } } } - /// The MemberChangeAdminRoleType struct - public class MemberChangeAdminRoleType: CustomStringConvertible, JSONRepresentable { + /// The ObjectLabelAddedType struct + public class ObjectLabelAddedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -36421,88 +49632,77 @@ public class TeamLog { } func json() throws -> JSON { - try MemberChangeAdminRoleTypeSerializer().serialize(self) + try ObjectLabelAddedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MemberChangeAdminRoleTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ObjectLabelAddedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for MemberChangeAdminRoleType: \(error)" + return "Failed to generate description for ObjectLabelAddedType: \(error)" } } } - - public class MemberChangeAdminRoleTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MemberChangeAdminRoleType) throws -> JSON { + public class ObjectLabelAddedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ObjectLabelAddedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MemberChangeAdminRoleType { + public func deserialize(_ json: JSON) throws -> ObjectLabelAddedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return MemberChangeAdminRoleType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: MemberChangeAdminRoleType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ObjectLabelAddedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ObjectLabelAddedType.self, json: json) } } } - /// Changed team member email. - public class MemberChangeEmailDetails: CustomStringConvertible, JSONRepresentable { - /// New email. - public let newValue: String - /// Previous email. Might be missing due to historical data gap. - public let previousValue: String? - public init(newValue: String, previousValue: String? = nil) { - stringValidator(maxLength: 255)(newValue) - self.newValue = newValue - nullableValidator(stringValidator(maxLength: 255))(previousValue) - self.previousValue = previousValue + /// Removed a label. + public class ObjectLabelRemovedDetails: CustomStringConvertible, JSONRepresentable { + /// Labels mark a file or folder. + public let labelType: TeamLog.LabelType + public init(labelType: TeamLog.LabelType) { + self.labelType = labelType } func json() throws -> JSON { - try MemberChangeEmailDetailsSerializer().serialize(self) + try ObjectLabelRemovedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MemberChangeEmailDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ObjectLabelRemovedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for MemberChangeEmailDetails: \(error)" + return "Failed to generate description for ObjectLabelRemovedDetails: \(error)" } } } - - public class MemberChangeEmailDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MemberChangeEmailDetails) throws -> JSON { + public class ObjectLabelRemovedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ObjectLabelRemovedDetails) throws -> JSON { let output = [ - "new_value": try Serialization._StringSerializer.serialize(value.newValue), - "previous_value": try NullableSerializer(Serialization._StringSerializer).serialize(value.previousValue), + "label_type": try TeamLog.LabelTypeSerializer().serialize(value.labelType), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MemberChangeEmailDetails { + public func deserialize(_ json: JSON) throws -> ObjectLabelRemovedDetails { switch json { - case .dictionary(let dict): - let newValue = try Serialization._StringSerializer.deserialize(dict["new_value"] ?? .null) - let previousValue = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["previous_value"] ?? .null) - return MemberChangeEmailDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: MemberChangeEmailDetails.self, json: json) + case .dictionary(let dict): + let labelType = try TeamLog.LabelTypeSerializer().deserialize(dict["label_type"] ?? .null) + return ObjectLabelRemovedDetails(labelType: labelType) + default: + throw JSONSerializerError.deserializeError(type: ObjectLabelRemovedDetails.self, json: json) } } } - /// The MemberChangeEmailType struct - public class MemberChangeEmailType: CustomStringConvertible, JSONRepresentable { + /// The ObjectLabelRemovedType struct + public class ObjectLabelRemovedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -36511,88 +49711,77 @@ public class TeamLog { } func json() throws -> JSON { - try MemberChangeEmailTypeSerializer().serialize(self) + try ObjectLabelRemovedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MemberChangeEmailTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ObjectLabelRemovedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for MemberChangeEmailType: \(error)" + return "Failed to generate description for ObjectLabelRemovedType: \(error)" } } } - - public class MemberChangeEmailTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MemberChangeEmailType) throws -> JSON { + public class ObjectLabelRemovedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ObjectLabelRemovedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MemberChangeEmailType { + public func deserialize(_ json: JSON) throws -> ObjectLabelRemovedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return MemberChangeEmailType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: MemberChangeEmailType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ObjectLabelRemovedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ObjectLabelRemovedType.self, json: json) } } } - /// Changed the external ID for team member. - public class MemberChangeExternalIdDetails: CustomStringConvertible, JSONRepresentable { - /// Current external id. - public let newValue: String - /// Old external id. - public let previousValue: String - public init(newValue: String, previousValue: String) { - stringValidator(maxLength: 64)(newValue) - self.newValue = newValue - stringValidator(maxLength: 64)(previousValue) - self.previousValue = previousValue + /// Updated a label's value. + public class ObjectLabelUpdatedValueDetails: CustomStringConvertible, JSONRepresentable { + /// Labels mark a file or folder. + public let labelType: TeamLog.LabelType + public init(labelType: TeamLog.LabelType) { + self.labelType = labelType } func json() throws -> JSON { - try MemberChangeExternalIdDetailsSerializer().serialize(self) + try ObjectLabelUpdatedValueDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MemberChangeExternalIdDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ObjectLabelUpdatedValueDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for MemberChangeExternalIdDetails: \(error)" + return "Failed to generate description for ObjectLabelUpdatedValueDetails: \(error)" } } } - - public class MemberChangeExternalIdDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MemberChangeExternalIdDetails) throws -> JSON { + public class ObjectLabelUpdatedValueDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ObjectLabelUpdatedValueDetails) throws -> JSON { let output = [ - "new_value": try Serialization._StringSerializer.serialize(value.newValue), - "previous_value": try Serialization._StringSerializer.serialize(value.previousValue), + "label_type": try TeamLog.LabelTypeSerializer().serialize(value.labelType), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MemberChangeExternalIdDetails { + public func deserialize(_ json: JSON) throws -> ObjectLabelUpdatedValueDetails { switch json { - case .dictionary(let dict): - let newValue = try Serialization._StringSerializer.deserialize(dict["new_value"] ?? .null) - let previousValue = try Serialization._StringSerializer.deserialize(dict["previous_value"] ?? .null) - return MemberChangeExternalIdDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: MemberChangeExternalIdDetails.self, json: json) + case .dictionary(let dict): + let labelType = try TeamLog.LabelTypeSerializer().deserialize(dict["label_type"] ?? .null) + return ObjectLabelUpdatedValueDetails(labelType: labelType) + default: + throw JSONSerializerError.deserializeError(type: ObjectLabelUpdatedValueDetails.self, json: json) } } } - /// The MemberChangeExternalIdType struct - public class MemberChangeExternalIdType: CustomStringConvertible, JSONRepresentable { + /// The ObjectLabelUpdatedValueType struct + public class ObjectLabelUpdatedValueType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -36601,86 +49790,69 @@ public class TeamLog { } func json() throws -> JSON { - try MemberChangeExternalIdTypeSerializer().serialize(self) + try ObjectLabelUpdatedValueTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MemberChangeExternalIdTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ObjectLabelUpdatedValueTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for MemberChangeExternalIdType: \(error)" + return "Failed to generate description for ObjectLabelUpdatedValueType: \(error)" } } } - - public class MemberChangeExternalIdTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MemberChangeExternalIdType) throws -> JSON { + public class ObjectLabelUpdatedValueTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ObjectLabelUpdatedValueType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MemberChangeExternalIdType { + public func deserialize(_ json: JSON) throws -> ObjectLabelUpdatedValueType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return MemberChangeExternalIdType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: MemberChangeExternalIdType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ObjectLabelUpdatedValueType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ObjectLabelUpdatedValueType.self, json: json) } } } - /// Changed membership type (limited/full) of member. - public class MemberChangeMembershipTypeDetails: CustomStringConvertible, JSONRepresentable { - /// Previous membership type. - public let prevValue: TeamLog.TeamMembershipType - /// New membership type. - public let newValue: TeamLog.TeamMembershipType - public init(prevValue: TeamLog.TeamMembershipType, newValue: TeamLog.TeamMembershipType) { - self.prevValue = prevValue - self.newValue = newValue - } + /// Opened shared Paper doc. + public class OpenNoteSharedDetails: CustomStringConvertible, JSONRepresentable { func json() throws -> JSON { - try MemberChangeMembershipTypeDetailsSerializer().serialize(self) + try OpenNoteSharedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MemberChangeMembershipTypeDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try OpenNoteSharedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for MemberChangeMembershipTypeDetails: \(error)" + return "Failed to generate description for OpenNoteSharedDetails: \(error)" } } } - - public class MemberChangeMembershipTypeDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MemberChangeMembershipTypeDetails) throws -> JSON { - let output = [ - "prev_value": try TeamLog.TeamMembershipTypeSerializer().serialize(value.prevValue), - "new_value": try TeamLog.TeamMembershipTypeSerializer().serialize(value.newValue), - ] + public class OpenNoteSharedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: OpenNoteSharedDetails) throws -> JSON { + let output = [String: JSON]() return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MemberChangeMembershipTypeDetails { + public func deserialize(_ json: JSON) throws -> OpenNoteSharedDetails { switch json { - case .dictionary(let dict): - let prevValue = try TeamLog.TeamMembershipTypeSerializer().deserialize(dict["prev_value"] ?? .null) - let newValue = try TeamLog.TeamMembershipTypeSerializer().deserialize(dict["new_value"] ?? .null) - return MemberChangeMembershipTypeDetails(prevValue: prevValue, newValue: newValue) - default: - throw JSONSerializerError.deserializeError(type: MemberChangeMembershipTypeDetails.self, json: json) + case .dictionary(_): + return OpenNoteSharedDetails() + default: + throw JSONSerializerError.deserializeError(type: OpenNoteSharedDetails.self, json: json) } } } - /// The MemberChangeMembershipTypeType struct - public class MemberChangeMembershipTypeType: CustomStringConvertible, JSONRepresentable { + /// The OpenNoteSharedType struct + public class OpenNoteSharedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -36689,175 +49861,149 @@ public class TeamLog { } func json() throws -> JSON { - try MemberChangeMembershipTypeTypeSerializer().serialize(self) + try OpenNoteSharedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MemberChangeMembershipTypeTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try OpenNoteSharedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for MemberChangeMembershipTypeType: \(error)" + return "Failed to generate description for OpenNoteSharedType: \(error)" } } } - - public class MemberChangeMembershipTypeTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MemberChangeMembershipTypeType) throws -> JSON { + public class OpenNoteSharedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: OpenNoteSharedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MemberChangeMembershipTypeType { + public func deserialize(_ json: JSON) throws -> OpenNoteSharedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return MemberChangeMembershipTypeType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: MemberChangeMembershipTypeType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return OpenNoteSharedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: OpenNoteSharedType.self, json: json) } } } - /// Changed team member name. - public class MemberChangeNameDetails: CustomStringConvertible, JSONRepresentable { - /// New user's name. - public let newValue: TeamLog.UserNameLogInfo - /// Previous user's name. Might be missing due to historical data gap. - public let previousValue: TeamLog.UserNameLogInfo? - public init(newValue: TeamLog.UserNameLogInfo, previousValue: TeamLog.UserNameLogInfo? = nil) { - self.newValue = newValue - self.previousValue = previousValue + /// More details about the organization. + public class OrganizationDetails: CustomStringConvertible, JSONRepresentable { + /// The name of the organization. + public let organization: String + public init(organization: String) { + stringValidator()(organization) + self.organization = organization } func json() throws -> JSON { - try MemberChangeNameDetailsSerializer().serialize(self) + try OrganizationDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MemberChangeNameDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try OrganizationDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for MemberChangeNameDetails: \(error)" + return "Failed to generate description for OrganizationDetails: \(error)" } } } - - public class MemberChangeNameDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MemberChangeNameDetails) throws -> JSON { + public class OrganizationDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: OrganizationDetails) throws -> JSON { let output = [ - "new_value": try TeamLog.UserNameLogInfoSerializer().serialize(value.newValue), - "previous_value": try NullableSerializer(TeamLog.UserNameLogInfoSerializer()).serialize(value.previousValue), + "organization": try Serialization._StringSerializer.serialize(value.organization), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MemberChangeNameDetails { + public func deserialize(_ json: JSON) throws -> OrganizationDetails { switch json { - case .dictionary(let dict): - let newValue = try TeamLog.UserNameLogInfoSerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try NullableSerializer(TeamLog.UserNameLogInfoSerializer()).deserialize(dict["previous_value"] ?? .null) - return MemberChangeNameDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: MemberChangeNameDetails.self, json: json) + case .dictionary(let dict): + let organization = try Serialization._StringSerializer.deserialize(dict["organization"] ?? .null) + return OrganizationDetails(organization: organization) + default: + throw JSONSerializerError.deserializeError(type: OrganizationDetails.self, json: json) } } } - /// The MemberChangeNameType struct - public class MemberChangeNameType: CustomStringConvertible, JSONRepresentable { - /// (no description) - public let description_: String - public init(description_: String) { - stringValidator()(description_) - self.description_ = description_ + /// The name of the organization + public class OrganizationName: CustomStringConvertible, JSONRepresentable { + /// The name of the organization. + public let organization: String + public init(organization: String) { + stringValidator()(organization) + self.organization = organization } func json() throws -> JSON { - try MemberChangeNameTypeSerializer().serialize(self) + try OrganizationNameSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MemberChangeNameTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try OrganizationNameSerializer().serialize(self)))" } catch { - return "Failed to generate description for MemberChangeNameType: \(error)" + return "Failed to generate description for OrganizationName: \(error)" } } } - - public class MemberChangeNameTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MemberChangeNameType) throws -> JSON { + public class OrganizationNameSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: OrganizationName) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "organization": try Serialization._StringSerializer.serialize(value.organization), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MemberChangeNameType { + public func deserialize(_ json: JSON) throws -> OrganizationName { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return MemberChangeNameType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: MemberChangeNameType.self, json: json) + case .dictionary(let dict): + let organization = try Serialization._StringSerializer.deserialize(dict["organization"] ?? .null) + return OrganizationName(organization: organization) + default: + throw JSONSerializerError.deserializeError(type: OrganizationName.self, json: json) } } } - /// Changed team member reseller role. - public class MemberChangeResellerRoleDetails: CustomStringConvertible, JSONRepresentable { - /// New reseller role. This field is relevant when the reseller role is changed. - public let newValue: TeamLog.ResellerRole - /// Previous reseller role. This field is relevant when the reseller role is changed or when the reseller role - /// is removed. - public let previousValue: TeamLog.ResellerRole - public init(newValue: TeamLog.ResellerRole, previousValue: TeamLog.ResellerRole) { - self.newValue = newValue - self.previousValue = previousValue - } + /// Organized a folder with multi-file organize. + public class OrganizeFolderWithTidyDetails: CustomStringConvertible, JSONRepresentable { func json() throws -> JSON { - try MemberChangeResellerRoleDetailsSerializer().serialize(self) + try OrganizeFolderWithTidyDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MemberChangeResellerRoleDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try OrganizeFolderWithTidyDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for MemberChangeResellerRoleDetails: \(error)" + return "Failed to generate description for OrganizeFolderWithTidyDetails: \(error)" } } } - - public class MemberChangeResellerRoleDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MemberChangeResellerRoleDetails) throws -> JSON { - let output = [ - "new_value": try TeamLog.ResellerRoleSerializer().serialize(value.newValue), - "previous_value": try TeamLog.ResellerRoleSerializer().serialize(value.previousValue), - ] + public class OrganizeFolderWithTidyDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: OrganizeFolderWithTidyDetails) throws -> JSON { + let output = [String: JSON]() return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MemberChangeResellerRoleDetails { + public func deserialize(_ json: JSON) throws -> OrganizeFolderWithTidyDetails { switch json { - case .dictionary(let dict): - let newValue = try TeamLog.ResellerRoleSerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try TeamLog.ResellerRoleSerializer().deserialize(dict["previous_value"] ?? .null) - return MemberChangeResellerRoleDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: MemberChangeResellerRoleDetails.self, json: json) + case .dictionary(_): + return OrganizeFolderWithTidyDetails() + default: + throw JSONSerializerError.deserializeError(type: OrganizeFolderWithTidyDetails.self, json: json) } } } - /// The MemberChangeResellerRoleType struct - public class MemberChangeResellerRoleType: CustomStringConvertible, JSONRepresentable { + /// The OrganizeFolderWithTidyType struct + public class OrganizeFolderWithTidyType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -36866,189 +50012,126 @@ public class TeamLog { } func json() throws -> JSON { - try MemberChangeResellerRoleTypeSerializer().serialize(self) + try OrganizeFolderWithTidyTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MemberChangeResellerRoleTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try OrganizeFolderWithTidyTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for MemberChangeResellerRoleType: \(error)" + return "Failed to generate description for OrganizeFolderWithTidyType: \(error)" } } } - - public class MemberChangeResellerRoleTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MemberChangeResellerRoleType) throws -> JSON { + public class OrganizeFolderWithTidyTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: OrganizeFolderWithTidyType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MemberChangeResellerRoleType { + public func deserialize(_ json: JSON) throws -> OrganizeFolderWithTidyType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return MemberChangeResellerRoleType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: MemberChangeResellerRoleType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return OrganizeFolderWithTidyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: OrganizeFolderWithTidyType.self, json: json) } } } - /// Changed member status (invited, joined, suspended, etc.). - public class MemberChangeStatusDetails: CustomStringConvertible, JSONRepresentable { - /// Previous member status. Might be missing due to historical data gap. - public let previousValue: TeamLog.MemberStatus? - /// New member status. - public let newValue: TeamLog.MemberStatus - /// Additional information indicating the action taken that caused status change. - public let action: TeamLog.ActionDetails? - /// The user's new team name. This field is relevant when the user is transferred off the team. - public let newTeam: String? - /// The user's previous team name. This field is relevant when the user is transferred onto the team. - public let previousTeam: String? - public init( - newValue: TeamLog.MemberStatus, - previousValue: TeamLog.MemberStatus? = nil, - action: TeamLog.ActionDetails? = nil, - newTeam: String? = nil, - previousTeam: String? = nil - ) { - self.previousValue = previousValue - self.newValue = newValue - self.action = action - nullableValidator(stringValidator())(newTeam) - self.newTeam = newTeam - nullableValidator(stringValidator())(previousTeam) - self.previousTeam = previousTeam + /// The origin from which the actor performed the action. + public class OriginLogInfo: CustomStringConvertible, JSONRepresentable { + /// Geographic location details. + public let geoLocation: TeamLog.GeoLocationLogInfo? + /// The method that was used to perform the action. + public let accessMethod: TeamLog.AccessMethodLogInfo + public init(accessMethod: TeamLog.AccessMethodLogInfo, geoLocation: TeamLog.GeoLocationLogInfo? = nil) { + self.geoLocation = geoLocation + self.accessMethod = accessMethod } func json() throws -> JSON { - try MemberChangeStatusDetailsSerializer().serialize(self) + try OriginLogInfoSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MemberChangeStatusDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try OriginLogInfoSerializer().serialize(self)))" } catch { - return "Failed to generate description for MemberChangeStatusDetails: \(error)" + return "Failed to generate description for OriginLogInfo: \(error)" } } } - - public class MemberChangeStatusDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MemberChangeStatusDetails) throws -> JSON { + public class OriginLogInfoSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: OriginLogInfo) throws -> JSON { let output = [ - "new_value": try TeamLog.MemberStatusSerializer().serialize(value.newValue), - "previous_value": try NullableSerializer(TeamLog.MemberStatusSerializer()).serialize(value.previousValue), - "action": try NullableSerializer(TeamLog.ActionDetailsSerializer()).serialize(value.action), - "new_team": try NullableSerializer(Serialization._StringSerializer).serialize(value.newTeam), - "previous_team": try NullableSerializer(Serialization._StringSerializer).serialize(value.previousTeam), + "access_method": try TeamLog.AccessMethodLogInfoSerializer().serialize(value.accessMethod), + "geo_location": try NullableSerializer(TeamLog.GeoLocationLogInfoSerializer()).serialize(value.geoLocation), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MemberChangeStatusDetails { + public func deserialize(_ json: JSON) throws -> OriginLogInfo { switch json { - case .dictionary(let dict): - let newValue = try TeamLog.MemberStatusSerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try NullableSerializer(TeamLog.MemberStatusSerializer()).deserialize(dict["previous_value"] ?? .null) - let action = try NullableSerializer(TeamLog.ActionDetailsSerializer()).deserialize(dict["action"] ?? .null) - let newTeam = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["new_team"] ?? .null) - let previousTeam = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["previous_team"] ?? .null) - return MemberChangeStatusDetails( - newValue: newValue, - previousValue: previousValue, - action: action, - newTeam: newTeam, - previousTeam: previousTeam - ) - default: - throw JSONSerializerError.deserializeError(type: MemberChangeStatusDetails.self, json: json) + case .dictionary(let dict): + let accessMethod = try TeamLog.AccessMethodLogInfoSerializer().deserialize(dict["access_method"] ?? .null) + let geoLocation = try NullableSerializer(TeamLog.GeoLocationLogInfoSerializer()).deserialize(dict["geo_location"] ?? .null) + return OriginLogInfo(accessMethod: accessMethod, geoLocation: geoLocation) + default: + throw JSONSerializerError.deserializeError(type: OriginLogInfo.self, json: json) } } } - /// The MemberChangeStatusType struct - public class MemberChangeStatusType: CustomStringConvertible, JSONRepresentable { - /// (no description) - public let description_: String - public init(description_: String) { - stringValidator()(description_) - self.description_ = description_ + /// Report created: Views of old links. + public class OutdatedLinkViewCreateReportDetails: CustomStringConvertible, JSONRepresentable { + /// Report start date. + public let startDate: Date + /// Report end date. + public let endDate: Date + public init(startDate: Date, endDate: Date) { + self.startDate = startDate + self.endDate = endDate } func json() throws -> JSON { - try MemberChangeStatusTypeSerializer().serialize(self) + try OutdatedLinkViewCreateReportDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MemberChangeStatusTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try OutdatedLinkViewCreateReportDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for MemberChangeStatusType: \(error)" + return "Failed to generate description for OutdatedLinkViewCreateReportDetails: \(error)" } } } - - public class MemberChangeStatusTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MemberChangeStatusType) throws -> JSON { + public class OutdatedLinkViewCreateReportDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: OutdatedLinkViewCreateReportDetails) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "start_date": try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").serialize(value.startDate), + "end_date": try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").serialize(value.endDate), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MemberChangeStatusType { - switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return MemberChangeStatusType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: MemberChangeStatusType.self, json: json) - } - } - } - - /// Cleared manually added contacts. - public class MemberDeleteManualContactsDetails: CustomStringConvertible, JSONRepresentable { - func json() throws -> JSON { - try MemberDeleteManualContactsDetailsSerializer().serialize(self) - } - - public var description: String { - do { - return "\(SerializeUtil.prepareJSONForSerialization(try MemberDeleteManualContactsDetailsSerializer().serialize(self)))" - } catch { - return "Failed to generate description for MemberDeleteManualContactsDetails: \(error)" - } - } - } - - public class MemberDeleteManualContactsDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MemberDeleteManualContactsDetails) throws -> JSON { - let output = [String: JSON]() - return .dictionary(output) - } - - public func deserialize(_ json: JSON) throws -> MemberDeleteManualContactsDetails { + public func deserialize(_ json: JSON) throws -> OutdatedLinkViewCreateReportDetails { switch json { - case .dictionary: - return MemberDeleteManualContactsDetails() - default: - throw JSONSerializerError.deserializeError(type: MemberDeleteManualContactsDetails.self, json: json) + case .dictionary(let dict): + let startDate = try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").deserialize(dict["start_date"] ?? .null) + let endDate = try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").deserialize(dict["end_date"] ?? .null) + return OutdatedLinkViewCreateReportDetails(startDate: startDate, endDate: endDate) + default: + throw JSONSerializerError.deserializeError(type: OutdatedLinkViewCreateReportDetails.self, json: json) } } } - /// The MemberDeleteManualContactsType struct - public class MemberDeleteManualContactsType: CustomStringConvertible, JSONRepresentable { + /// The OutdatedLinkViewCreateReportType struct + public class OutdatedLinkViewCreateReportType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -37057,72 +50140,77 @@ public class TeamLog { } func json() throws -> JSON { - try MemberDeleteManualContactsTypeSerializer().serialize(self) + try OutdatedLinkViewCreateReportTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MemberDeleteManualContactsTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try OutdatedLinkViewCreateReportTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for MemberDeleteManualContactsType: \(error)" + return "Failed to generate description for OutdatedLinkViewCreateReportType: \(error)" } } } - - public class MemberDeleteManualContactsTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MemberDeleteManualContactsType) throws -> JSON { + public class OutdatedLinkViewCreateReportTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: OutdatedLinkViewCreateReportType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MemberDeleteManualContactsType { + public func deserialize(_ json: JSON) throws -> OutdatedLinkViewCreateReportType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return MemberDeleteManualContactsType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: MemberDeleteManualContactsType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return OutdatedLinkViewCreateReportType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: OutdatedLinkViewCreateReportType.self, json: json) } } } - /// Deleted team member profile photo. - public class MemberDeleteProfilePhotoDetails: CustomStringConvertible, JSONRepresentable { + /// Couldn't create report: Views of old links. + public class OutdatedLinkViewReportFailedDetails: CustomStringConvertible, JSONRepresentable { + /// Failure reason. + public let failureReason: Team.TeamReportFailureReason + public init(failureReason: Team.TeamReportFailureReason) { + self.failureReason = failureReason + } + func json() throws -> JSON { - try MemberDeleteProfilePhotoDetailsSerializer().serialize(self) + try OutdatedLinkViewReportFailedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MemberDeleteProfilePhotoDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try OutdatedLinkViewReportFailedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for MemberDeleteProfilePhotoDetails: \(error)" + return "Failed to generate description for OutdatedLinkViewReportFailedDetails: \(error)" } } } - - public class MemberDeleteProfilePhotoDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MemberDeleteProfilePhotoDetails) throws -> JSON { - let output = [String: JSON]() + public class OutdatedLinkViewReportFailedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: OutdatedLinkViewReportFailedDetails) throws -> JSON { + let output = [ + "failure_reason": try Team.TeamReportFailureReasonSerializer().serialize(value.failureReason), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MemberDeleteProfilePhotoDetails { + public func deserialize(_ json: JSON) throws -> OutdatedLinkViewReportFailedDetails { switch json { - case .dictionary: - return MemberDeleteProfilePhotoDetails() - default: - throw JSONSerializerError.deserializeError(type: MemberDeleteProfilePhotoDetails.self, json: json) + case .dictionary(let dict): + let failureReason = try Team.TeamReportFailureReasonSerializer().deserialize(dict["failure_reason"] ?? .null) + return OutdatedLinkViewReportFailedDetails(failureReason: failureReason) + default: + throw JSONSerializerError.deserializeError(type: OutdatedLinkViewReportFailedDetails.self, json: json) } } } - /// The MemberDeleteProfilePhotoType struct - public class MemberDeleteProfilePhotoType: CustomStringConvertible, JSONRepresentable { + /// The OutdatedLinkViewReportFailedType struct + public class OutdatedLinkViewReportFailedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -37131,233 +50219,220 @@ public class TeamLog { } func json() throws -> JSON { - try MemberDeleteProfilePhotoTypeSerializer().serialize(self) + try OutdatedLinkViewReportFailedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MemberDeleteProfilePhotoTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try OutdatedLinkViewReportFailedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for MemberDeleteProfilePhotoType: \(error)" + return "Failed to generate description for OutdatedLinkViewReportFailedType: \(error)" } } } - - public class MemberDeleteProfilePhotoTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MemberDeleteProfilePhotoType) throws -> JSON { + public class OutdatedLinkViewReportFailedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: OutdatedLinkViewReportFailedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MemberDeleteProfilePhotoType { + public func deserialize(_ json: JSON) throws -> OutdatedLinkViewReportFailedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return MemberDeleteProfilePhotoType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: MemberDeleteProfilePhotoType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return OutdatedLinkViewReportFailedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: OutdatedLinkViewReportFailedType.self, json: json) } } } - /// Permanently deleted contents of deleted team member account. - public class MemberPermanentlyDeleteAccountContentsDetails: CustomStringConvertible, JSONRepresentable { + /// The PaperAccessType union + public enum PaperAccessType: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case commenter + /// An unspecified error. + case editor + /// An unspecified error. + case viewer + /// An unspecified error. + case other + func json() throws -> JSON { - try MemberPermanentlyDeleteAccountContentsDetailsSerializer().serialize(self) + try PaperAccessTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MemberPermanentlyDeleteAccountContentsDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperAccessTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for MemberPermanentlyDeleteAccountContentsDetails: \(error)" + return "Failed to generate description for PaperAccessType: \(error)" } } } - - public class MemberPermanentlyDeleteAccountContentsDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MemberPermanentlyDeleteAccountContentsDetails) throws -> JSON { - let output = [String: JSON]() - return .dictionary(output) + public class PaperAccessTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperAccessType) throws -> JSON { + switch value { + case .commenter: + var d = [String: JSON]() + d[".tag"] = .str("commenter") + return .dictionary(d) + case .editor: + var d = [String: JSON]() + d[".tag"] = .str("editor") + return .dictionary(d) + case .viewer: + var d = [String: JSON]() + d[".tag"] = .str("viewer") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } } - - public func deserialize(_ json: JSON) throws -> MemberPermanentlyDeleteAccountContentsDetails { + public func deserialize(_ json: JSON) throws -> PaperAccessType { switch json { - case .dictionary: - return MemberPermanentlyDeleteAccountContentsDetails() - default: - throw JSONSerializerError.deserializeError(type: MemberPermanentlyDeleteAccountContentsDetails.self, json: json) + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "commenter": + return PaperAccessType.commenter + case "editor": + return PaperAccessType.editor + case "viewer": + return PaperAccessType.viewer + case "other": + return PaperAccessType.other + default: + return PaperAccessType.other + } + default: + throw JSONSerializerError.deserializeError(type: PaperAccessType.self, json: json) } } } - /// The MemberPermanentlyDeleteAccountContentsType struct - public class MemberPermanentlyDeleteAccountContentsType: CustomStringConvertible, JSONRepresentable { - /// (no description) - public let description_: String - public init(description_: String) { - stringValidator()(description_) - self.description_ = description_ - } + /// Exported all team Paper docs. + public class PaperAdminExportStartDetails: CustomStringConvertible, JSONRepresentable { func json() throws -> JSON { - try MemberPermanentlyDeleteAccountContentsTypeSerializer().serialize(self) + try PaperAdminExportStartDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MemberPermanentlyDeleteAccountContentsTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperAdminExportStartDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for MemberPermanentlyDeleteAccountContentsType: \(error)" + return "Failed to generate description for PaperAdminExportStartDetails: \(error)" } } } - - public class MemberPermanentlyDeleteAccountContentsTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MemberPermanentlyDeleteAccountContentsType) throws -> JSON { - let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), - ] + public class PaperAdminExportStartDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperAdminExportStartDetails) throws -> JSON { + let output = [String: JSON]() return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MemberPermanentlyDeleteAccountContentsType { + public func deserialize(_ json: JSON) throws -> PaperAdminExportStartDetails { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return MemberPermanentlyDeleteAccountContentsType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: MemberPermanentlyDeleteAccountContentsType.self, json: json) + case .dictionary(_): + return PaperAdminExportStartDetails() + default: + throw JSONSerializerError.deserializeError(type: PaperAdminExportStartDetails.self, json: json) } } } - /// The MemberRemoveActionType union - public enum MemberRemoveActionType: CustomStringConvertible, JSONRepresentable { - /// An unspecified error. - case delete - /// An unspecified error. - case leave - /// An unspecified error. - case offboard - /// An unspecified error. - case offboardAndRetainTeamFolders - /// An unspecified error. - case other + /// The PaperAdminExportStartType struct + public class PaperAdminExportStartType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } func json() throws -> JSON { - try MemberRemoveActionTypeSerializer().serialize(self) + try PaperAdminExportStartTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MemberRemoveActionTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperAdminExportStartTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for MemberRemoveActionType: \(error)" + return "Failed to generate description for PaperAdminExportStartType: \(error)" } } } - - public class MemberRemoveActionTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MemberRemoveActionType) throws -> JSON { - switch value { - case .delete: - var d = [String: JSON]() - d[".tag"] = .str("delete") - return .dictionary(d) - case .leave: - var d = [String: JSON]() - d[".tag"] = .str("leave") - return .dictionary(d) - case .offboard: - var d = [String: JSON]() - d[".tag"] = .str("offboard") - return .dictionary(d) - case .offboardAndRetainTeamFolders: - var d = [String: JSON]() - d[".tag"] = .str("offboard_and_retain_team_folders") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) - } + public class PaperAdminExportStartTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperAdminExportStartType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MemberRemoveActionType { + public func deserialize(_ json: JSON) throws -> PaperAdminExportStartType { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "delete": - return MemberRemoveActionType.delete - case "leave": - return MemberRemoveActionType.leave - case "offboard": - return MemberRemoveActionType.offboard - case "offboard_and_retain_team_folders": - return MemberRemoveActionType.offboardAndRetainTeamFolders - case "other": - return MemberRemoveActionType.other + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return PaperAdminExportStartType(description_: description_) default: - return MemberRemoveActionType.other - } - default: - throw JSONSerializerError.deserializeError(type: MemberRemoveActionType.self, json: json) + throw JSONSerializerError.deserializeError(type: PaperAdminExportStartType.self, json: json) } } } - /// Removed the external ID for team member. - public class MemberRemoveExternalIdDetails: CustomStringConvertible, JSONRepresentable { - /// Old external id. - public let previousValue: String - public init(previousValue: String) { - stringValidator(maxLength: 64)(previousValue) + /// Changed whether Dropbox Paper, when enabled, is deployed to all members or to specific members. + public class PaperChangeDeploymentPolicyDetails: CustomStringConvertible, JSONRepresentable { + /// New Dropbox Paper deployment policy. + public let newValue: TeamPolicies.PaperDeploymentPolicy + /// Previous Dropbox Paper deployment policy. Might be missing due to historical data gap. + public let previousValue: TeamPolicies.PaperDeploymentPolicy? + public init(newValue: TeamPolicies.PaperDeploymentPolicy, previousValue: TeamPolicies.PaperDeploymentPolicy? = nil) { + self.newValue = newValue self.previousValue = previousValue } func json() throws -> JSON { - try MemberRemoveExternalIdDetailsSerializer().serialize(self) + try PaperChangeDeploymentPolicyDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MemberRemoveExternalIdDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperChangeDeploymentPolicyDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for MemberRemoveExternalIdDetails: \(error)" + return "Failed to generate description for PaperChangeDeploymentPolicyDetails: \(error)" } } } - - public class MemberRemoveExternalIdDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MemberRemoveExternalIdDetails) throws -> JSON { + public class PaperChangeDeploymentPolicyDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperChangeDeploymentPolicyDetails) throws -> JSON { let output = [ - "previous_value": try Serialization._StringSerializer.serialize(value.previousValue), + "new_value": try TeamPolicies.PaperDeploymentPolicySerializer().serialize(value.newValue), + "previous_value": try NullableSerializer(TeamPolicies.PaperDeploymentPolicySerializer()).serialize(value.previousValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MemberRemoveExternalIdDetails { + public func deserialize(_ json: JSON) throws -> PaperChangeDeploymentPolicyDetails { switch json { - case .dictionary(let dict): - let previousValue = try Serialization._StringSerializer.deserialize(dict["previous_value"] ?? .null) - return MemberRemoveExternalIdDetails(previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: MemberRemoveExternalIdDetails.self, json: json) + case .dictionary(let dict): + let newValue = try TeamPolicies.PaperDeploymentPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try NullableSerializer(TeamPolicies.PaperDeploymentPolicySerializer()).deserialize(dict["previous_value"] ?? .null) + return PaperChangeDeploymentPolicyDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: PaperChangeDeploymentPolicyDetails.self, json: json) } } } - /// The MemberRemoveExternalIdType struct - public class MemberRemoveExternalIdType: CustomStringConvertible, JSONRepresentable { + /// The PaperChangeDeploymentPolicyType struct + public class PaperChangeDeploymentPolicyType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -37366,86 +50441,77 @@ public class TeamLog { } func json() throws -> JSON { - try MemberRemoveExternalIdTypeSerializer().serialize(self) + try PaperChangeDeploymentPolicyTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MemberRemoveExternalIdTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperChangeDeploymentPolicyTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for MemberRemoveExternalIdType: \(error)" + return "Failed to generate description for PaperChangeDeploymentPolicyType: \(error)" } } } - - public class MemberRemoveExternalIdTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MemberRemoveExternalIdType) throws -> JSON { + public class PaperChangeDeploymentPolicyTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperChangeDeploymentPolicyType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MemberRemoveExternalIdType { + public func deserialize(_ json: JSON) throws -> PaperChangeDeploymentPolicyType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return MemberRemoveExternalIdType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: MemberRemoveExternalIdType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return PaperChangeDeploymentPolicyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: PaperChangeDeploymentPolicyType.self, json: json) } } } - /// Changed whether users can find team when not invited. - public class MemberRequestsChangePolicyDetails: CustomStringConvertible, JSONRepresentable { - /// New member change requests policy. - public let newValue: TeamLog.MemberRequestsPolicy - /// Previous member change requests policy. Might be missing due to historical data gap. - public let previousValue: TeamLog.MemberRequestsPolicy? - public init(newValue: TeamLog.MemberRequestsPolicy, previousValue: TeamLog.MemberRequestsPolicy? = nil) { + /// Changed whether non-members can view Paper docs with link. + public class PaperChangeMemberLinkPolicyDetails: CustomStringConvertible, JSONRepresentable { + /// New paper external link accessibility policy. + public let newValue: TeamLog.PaperMemberPolicy + public init(newValue: TeamLog.PaperMemberPolicy) { self.newValue = newValue - self.previousValue = previousValue } func json() throws -> JSON { - try MemberRequestsChangePolicyDetailsSerializer().serialize(self) + try PaperChangeMemberLinkPolicyDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MemberRequestsChangePolicyDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperChangeMemberLinkPolicyDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for MemberRequestsChangePolicyDetails: \(error)" + return "Failed to generate description for PaperChangeMemberLinkPolicyDetails: \(error)" } } } - - public class MemberRequestsChangePolicyDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MemberRequestsChangePolicyDetails) throws -> JSON { + public class PaperChangeMemberLinkPolicyDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperChangeMemberLinkPolicyDetails) throws -> JSON { let output = [ - "new_value": try TeamLog.MemberRequestsPolicySerializer().serialize(value.newValue), - "previous_value": try NullableSerializer(TeamLog.MemberRequestsPolicySerializer()).serialize(value.previousValue), + "new_value": try TeamLog.PaperMemberPolicySerializer().serialize(value.newValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MemberRequestsChangePolicyDetails { + public func deserialize(_ json: JSON) throws -> PaperChangeMemberLinkPolicyDetails { switch json { - case .dictionary(let dict): - let newValue = try TeamLog.MemberRequestsPolicySerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try NullableSerializer(TeamLog.MemberRequestsPolicySerializer()).deserialize(dict["previous_value"] ?? .null) - return MemberRequestsChangePolicyDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: MemberRequestsChangePolicyDetails.self, json: json) + case .dictionary(let dict): + let newValue = try TeamLog.PaperMemberPolicySerializer().deserialize(dict["new_value"] ?? .null) + return PaperChangeMemberLinkPolicyDetails(newValue: newValue) + default: + throw JSONSerializerError.deserializeError(type: PaperChangeMemberLinkPolicyDetails.self, json: json) } } } - /// The MemberRequestsChangePolicyType struct - public class MemberRequestsChangePolicyType: CustomStringConvertible, JSONRepresentable { + /// The PaperChangeMemberLinkPolicyType struct + public class PaperChangeMemberLinkPolicyType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -37454,224 +50520,167 @@ public class TeamLog { } func json() throws -> JSON { - try MemberRequestsChangePolicyTypeSerializer().serialize(self) + try PaperChangeMemberLinkPolicyTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MemberRequestsChangePolicyTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperChangeMemberLinkPolicyTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for MemberRequestsChangePolicyType: \(error)" + return "Failed to generate description for PaperChangeMemberLinkPolicyType: \(error)" } } } - - public class MemberRequestsChangePolicyTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MemberRequestsChangePolicyType) throws -> JSON { + public class PaperChangeMemberLinkPolicyTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperChangeMemberLinkPolicyType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MemberRequestsChangePolicyType { + public func deserialize(_ json: JSON) throws -> PaperChangeMemberLinkPolicyType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return MemberRequestsChangePolicyType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: MemberRequestsChangePolicyType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return PaperChangeMemberLinkPolicyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: PaperChangeMemberLinkPolicyType.self, json: json) } } } - /// The MemberRequestsPolicy union - public enum MemberRequestsPolicy: CustomStringConvertible, JSONRepresentable { - /// An unspecified error. - case autoAccept - /// An unspecified error. - case disabled - /// An unspecified error. - case requireApproval - /// An unspecified error. - case other + /// Changed whether members can share Paper docs outside team, and if docs are accessible only by team members or + /// anyone by default. + public class PaperChangeMemberPolicyDetails: CustomStringConvertible, JSONRepresentable { + /// New paper external accessibility policy. + public let newValue: TeamLog.PaperMemberPolicy + /// Previous paper external accessibility policy. Might be missing due to historical data gap. + public let previousValue: TeamLog.PaperMemberPolicy? + public init(newValue: TeamLog.PaperMemberPolicy, previousValue: TeamLog.PaperMemberPolicy? = nil) { + self.newValue = newValue + self.previousValue = previousValue + } func json() throws -> JSON { - try MemberRequestsPolicySerializer().serialize(self) + try PaperChangeMemberPolicyDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MemberRequestsPolicySerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperChangeMemberPolicyDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for MemberRequestsPolicy: \(error)" + return "Failed to generate description for PaperChangeMemberPolicyDetails: \(error)" } } } - - public class MemberRequestsPolicySerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MemberRequestsPolicy) throws -> JSON { - switch value { - case .autoAccept: - var d = [String: JSON]() - d[".tag"] = .str("auto_accept") - return .dictionary(d) - case .disabled: - var d = [String: JSON]() - d[".tag"] = .str("disabled") - return .dictionary(d) - case .requireApproval: - var d = [String: JSON]() - d[".tag"] = .str("require_approval") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) - } + public class PaperChangeMemberPolicyDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperChangeMemberPolicyDetails) throws -> JSON { + let output = [ + "new_value": try TeamLog.PaperMemberPolicySerializer().serialize(value.newValue), + "previous_value": try NullableSerializer(TeamLog.PaperMemberPolicySerializer()).serialize(value.previousValue), + ] + return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MemberRequestsPolicy { + public func deserialize(_ json: JSON) throws -> PaperChangeMemberPolicyDetails { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "auto_accept": - return MemberRequestsPolicy.autoAccept - case "disabled": - return MemberRequestsPolicy.disabled - case "require_approval": - return MemberRequestsPolicy.requireApproval - case "other": - return MemberRequestsPolicy.other + case .dictionary(let dict): + let newValue = try TeamLog.PaperMemberPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try NullableSerializer(TeamLog.PaperMemberPolicySerializer()).deserialize(dict["previous_value"] ?? .null) + return PaperChangeMemberPolicyDetails(newValue: newValue, previousValue: previousValue) default: - return MemberRequestsPolicy.other - } - default: - throw JSONSerializerError.deserializeError(type: MemberRequestsPolicy.self, json: json) + throw JSONSerializerError.deserializeError(type: PaperChangeMemberPolicyDetails.self, json: json) } } } - /// Policy for controlling whether team members can send team invites - public enum MemberSendInvitePolicy: CustomStringConvertible, JSONRepresentable { - /// An unspecified error. - case disabled - /// An unspecified error. - case everyone - /// An unspecified error. - case specificMembers - /// An unspecified error. - case other + /// The PaperChangeMemberPolicyType struct + public class PaperChangeMemberPolicyType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } func json() throws -> JSON { - try MemberSendInvitePolicySerializer().serialize(self) + try PaperChangeMemberPolicyTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MemberSendInvitePolicySerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperChangeMemberPolicyTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for MemberSendInvitePolicy: \(error)" + return "Failed to generate description for PaperChangeMemberPolicyType: \(error)" } } } - - public class MemberSendInvitePolicySerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MemberSendInvitePolicy) throws -> JSON { - switch value { - case .disabled: - var d = [String: JSON]() - d[".tag"] = .str("disabled") - return .dictionary(d) - case .everyone: - var d = [String: JSON]() - d[".tag"] = .str("everyone") - return .dictionary(d) - case .specificMembers: - var d = [String: JSON]() - d[".tag"] = .str("specific_members") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) - } + public class PaperChangeMemberPolicyTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperChangeMemberPolicyType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MemberSendInvitePolicy { + public func deserialize(_ json: JSON) throws -> PaperChangeMemberPolicyType { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "disabled": - return MemberSendInvitePolicy.disabled - case "everyone": - return MemberSendInvitePolicy.everyone - case "specific_members": - return MemberSendInvitePolicy.specificMembers - case "other": - return MemberSendInvitePolicy.other + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return PaperChangeMemberPolicyType(description_: description_) default: - return MemberSendInvitePolicy.other - } - default: - throw JSONSerializerError.deserializeError(type: MemberSendInvitePolicy.self, json: json) + throw JSONSerializerError.deserializeError(type: PaperChangeMemberPolicyType.self, json: json) } } } - /// Changed member send invite policy for team. - public class MemberSendInvitePolicyChangedDetails: CustomStringConvertible, JSONRepresentable { - /// New team member send invite policy. - public let newValue: TeamLog.MemberSendInvitePolicy - /// Previous team member send invite policy. - public let previousValue: TeamLog.MemberSendInvitePolicy - public init(newValue: TeamLog.MemberSendInvitePolicy, previousValue: TeamLog.MemberSendInvitePolicy) { + /// Enabled/disabled Dropbox Paper for team. + public class PaperChangePolicyDetails: CustomStringConvertible, JSONRepresentable { + /// New Dropbox Paper policy. + public let newValue: TeamPolicies.PaperEnabledPolicy + /// Previous Dropbox Paper policy. Might be missing due to historical data gap. + public let previousValue: TeamPolicies.PaperEnabledPolicy? + public init(newValue: TeamPolicies.PaperEnabledPolicy, previousValue: TeamPolicies.PaperEnabledPolicy? = nil) { self.newValue = newValue self.previousValue = previousValue } func json() throws -> JSON { - try MemberSendInvitePolicyChangedDetailsSerializer().serialize(self) + try PaperChangePolicyDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MemberSendInvitePolicyChangedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperChangePolicyDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for MemberSendInvitePolicyChangedDetails: \(error)" + return "Failed to generate description for PaperChangePolicyDetails: \(error)" } } } - - public class MemberSendInvitePolicyChangedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MemberSendInvitePolicyChangedDetails) throws -> JSON { + public class PaperChangePolicyDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperChangePolicyDetails) throws -> JSON { let output = [ - "new_value": try TeamLog.MemberSendInvitePolicySerializer().serialize(value.newValue), - "previous_value": try TeamLog.MemberSendInvitePolicySerializer().serialize(value.previousValue), + "new_value": try TeamPolicies.PaperEnabledPolicySerializer().serialize(value.newValue), + "previous_value": try NullableSerializer(TeamPolicies.PaperEnabledPolicySerializer()).serialize(value.previousValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MemberSendInvitePolicyChangedDetails { + public func deserialize(_ json: JSON) throws -> PaperChangePolicyDetails { switch json { - case .dictionary(let dict): - let newValue = try TeamLog.MemberSendInvitePolicySerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try TeamLog.MemberSendInvitePolicySerializer().deserialize(dict["previous_value"] ?? .null) - return MemberSendInvitePolicyChangedDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: MemberSendInvitePolicyChangedDetails.self, json: json) + case .dictionary(let dict): + let newValue = try TeamPolicies.PaperEnabledPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try NullableSerializer(TeamPolicies.PaperEnabledPolicySerializer()).deserialize(dict["previous_value"] ?? .null) + return PaperChangePolicyDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: PaperChangePolicyDetails.self, json: json) } } } - /// The MemberSendInvitePolicyChangedType struct - public class MemberSendInvitePolicyChangedType: CustomStringConvertible, JSONRepresentable { + /// The PaperChangePolicyType struct + public class PaperChangePolicyType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -37680,72 +50689,78 @@ public class TeamLog { } func json() throws -> JSON { - try MemberSendInvitePolicyChangedTypeSerializer().serialize(self) + try PaperChangePolicyTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MemberSendInvitePolicyChangedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperChangePolicyTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for MemberSendInvitePolicyChangedType: \(error)" + return "Failed to generate description for PaperChangePolicyType: \(error)" } } } - - public class MemberSendInvitePolicyChangedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MemberSendInvitePolicyChangedType) throws -> JSON { + public class PaperChangePolicyTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperChangePolicyType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MemberSendInvitePolicyChangedType { + public func deserialize(_ json: JSON) throws -> PaperChangePolicyType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return MemberSendInvitePolicyChangedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: MemberSendInvitePolicyChangedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return PaperChangePolicyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: PaperChangePolicyType.self, json: json) } } } - /// Set team member profile photo. - public class MemberSetProfilePhotoDetails: CustomStringConvertible, JSONRepresentable { + /// Added users and/or groups to Paper doc/folder. + public class PaperContentAddMemberDetails: CustomStringConvertible, JSONRepresentable { + /// Event unique identifier. + public let eventUuid: String + public init(eventUuid: String) { + stringValidator()(eventUuid) + self.eventUuid = eventUuid + } + func json() throws -> JSON { - try MemberSetProfilePhotoDetailsSerializer().serialize(self) + try PaperContentAddMemberDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MemberSetProfilePhotoDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperContentAddMemberDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for MemberSetProfilePhotoDetails: \(error)" + return "Failed to generate description for PaperContentAddMemberDetails: \(error)" } } } - - public class MemberSetProfilePhotoDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MemberSetProfilePhotoDetails) throws -> JSON { - let output = [String: JSON]() + public class PaperContentAddMemberDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperContentAddMemberDetails) throws -> JSON { + let output = [ + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MemberSetProfilePhotoDetails { + public func deserialize(_ json: JSON) throws -> PaperContentAddMemberDetails { switch json { - case .dictionary: - return MemberSetProfilePhotoDetails() - default: - throw JSONSerializerError.deserializeError(type: MemberSetProfilePhotoDetails.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + return PaperContentAddMemberDetails(eventUuid: eventUuid) + default: + throw JSONSerializerError.deserializeError(type: PaperContentAddMemberDetails.self, json: json) } } } - /// The MemberSetProfilePhotoType struct - public class MemberSetProfilePhotoType: CustomStringConvertible, JSONRepresentable { + /// The PaperContentAddMemberType struct + public class PaperContentAddMemberType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -37754,82 +50769,90 @@ public class TeamLog { } func json() throws -> JSON { - try MemberSetProfilePhotoTypeSerializer().serialize(self) + try PaperContentAddMemberTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MemberSetProfilePhotoTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperContentAddMemberTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for MemberSetProfilePhotoType: \(error)" + return "Failed to generate description for PaperContentAddMemberType: \(error)" } } } - - public class MemberSetProfilePhotoTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MemberSetProfilePhotoType) throws -> JSON { + public class PaperContentAddMemberTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperContentAddMemberType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MemberSetProfilePhotoType { + public func deserialize(_ json: JSON) throws -> PaperContentAddMemberType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return MemberSetProfilePhotoType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: MemberSetProfilePhotoType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return PaperContentAddMemberType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: PaperContentAddMemberType.self, json: json) } } } - /// Set custom member space limit. - public class MemberSpaceLimitsAddCustomQuotaDetails: CustomStringConvertible, JSONRepresentable { - /// New custom quota value in bytes. - public let newValue: UInt64 - public init(newValue: UInt64) { - comparableValidator()(newValue) - self.newValue = newValue + /// Added Paper doc/folder to folder. + public class PaperContentAddToFolderDetails: CustomStringConvertible, JSONRepresentable { + /// Event unique identifier. + public let eventUuid: String + /// Target asset position in the Assets list. + public let targetAssetIndex: UInt64 + /// Parent asset position in the Assets list. + public let parentAssetIndex: UInt64 + public init(eventUuid: String, targetAssetIndex: UInt64, parentAssetIndex: UInt64) { + stringValidator()(eventUuid) + self.eventUuid = eventUuid + comparableValidator()(targetAssetIndex) + self.targetAssetIndex = targetAssetIndex + comparableValidator()(parentAssetIndex) + self.parentAssetIndex = parentAssetIndex } func json() throws -> JSON { - try MemberSpaceLimitsAddCustomQuotaDetailsSerializer().serialize(self) + try PaperContentAddToFolderDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MemberSpaceLimitsAddCustomQuotaDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperContentAddToFolderDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for MemberSpaceLimitsAddCustomQuotaDetails: \(error)" + return "Failed to generate description for PaperContentAddToFolderDetails: \(error)" } } } - - public class MemberSpaceLimitsAddCustomQuotaDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MemberSpaceLimitsAddCustomQuotaDetails) throws -> JSON { + public class PaperContentAddToFolderDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperContentAddToFolderDetails) throws -> JSON { let output = [ - "new_value": try Serialization._UInt64Serializer.serialize(value.newValue), + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + "target_asset_index": try Serialization._UInt64Serializer.serialize(value.targetAssetIndex), + "parent_asset_index": try Serialization._UInt64Serializer.serialize(value.parentAssetIndex), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MemberSpaceLimitsAddCustomQuotaDetails { + public func deserialize(_ json: JSON) throws -> PaperContentAddToFolderDetails { switch json { - case .dictionary(let dict): - let newValue = try Serialization._UInt64Serializer.deserialize(dict["new_value"] ?? .null) - return MemberSpaceLimitsAddCustomQuotaDetails(newValue: newValue) - default: - throw JSONSerializerError.deserializeError(type: MemberSpaceLimitsAddCustomQuotaDetails.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + let targetAssetIndex = try Serialization._UInt64Serializer.deserialize(dict["target_asset_index"] ?? .null) + let parentAssetIndex = try Serialization._UInt64Serializer.deserialize(dict["parent_asset_index"] ?? .null) + return PaperContentAddToFolderDetails(eventUuid: eventUuid, targetAssetIndex: targetAssetIndex, parentAssetIndex: parentAssetIndex) + default: + throw JSONSerializerError.deserializeError(type: PaperContentAddToFolderDetails.self, json: json) } } } - /// The MemberSpaceLimitsAddCustomQuotaType struct - public class MemberSpaceLimitsAddCustomQuotaType: CustomStringConvertible, JSONRepresentable { + /// The PaperContentAddToFolderType struct + public class PaperContentAddToFolderType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -37838,72 +50861,78 @@ public class TeamLog { } func json() throws -> JSON { - try MemberSpaceLimitsAddCustomQuotaTypeSerializer().serialize(self) + try PaperContentAddToFolderTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MemberSpaceLimitsAddCustomQuotaTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperContentAddToFolderTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for MemberSpaceLimitsAddCustomQuotaType: \(error)" + return "Failed to generate description for PaperContentAddToFolderType: \(error)" } } } - - public class MemberSpaceLimitsAddCustomQuotaTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MemberSpaceLimitsAddCustomQuotaType) throws -> JSON { + public class PaperContentAddToFolderTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperContentAddToFolderType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MemberSpaceLimitsAddCustomQuotaType { + public func deserialize(_ json: JSON) throws -> PaperContentAddToFolderType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return MemberSpaceLimitsAddCustomQuotaType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: MemberSpaceLimitsAddCustomQuotaType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return PaperContentAddToFolderType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: PaperContentAddToFolderType.self, json: json) } } } - /// Added members to member space limit exception list. - public class MemberSpaceLimitsAddExceptionDetails: CustomStringConvertible, JSONRepresentable { + /// Archived Paper doc/folder. + public class PaperContentArchiveDetails: CustomStringConvertible, JSONRepresentable { + /// Event unique identifier. + public let eventUuid: String + public init(eventUuid: String) { + stringValidator()(eventUuid) + self.eventUuid = eventUuid + } + func json() throws -> JSON { - try MemberSpaceLimitsAddExceptionDetailsSerializer().serialize(self) + try PaperContentArchiveDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MemberSpaceLimitsAddExceptionDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperContentArchiveDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for MemberSpaceLimitsAddExceptionDetails: \(error)" + return "Failed to generate description for PaperContentArchiveDetails: \(error)" } } } - - public class MemberSpaceLimitsAddExceptionDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MemberSpaceLimitsAddExceptionDetails) throws -> JSON { - let output = [String: JSON]() + public class PaperContentArchiveDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperContentArchiveDetails) throws -> JSON { + let output = [ + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MemberSpaceLimitsAddExceptionDetails { + public func deserialize(_ json: JSON) throws -> PaperContentArchiveDetails { switch json { - case .dictionary: - return MemberSpaceLimitsAddExceptionDetails() - default: - throw JSONSerializerError.deserializeError(type: MemberSpaceLimitsAddExceptionDetails.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + return PaperContentArchiveDetails(eventUuid: eventUuid) + default: + throw JSONSerializerError.deserializeError(type: PaperContentArchiveDetails.self, json: json) } } } - /// The MemberSpaceLimitsAddExceptionType struct - public class MemberSpaceLimitsAddExceptionType: CustomStringConvertible, JSONRepresentable { + /// The PaperContentArchiveType struct + public class PaperContentArchiveType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -37912,86 +50941,78 @@ public class TeamLog { } func json() throws -> JSON { - try MemberSpaceLimitsAddExceptionTypeSerializer().serialize(self) + try PaperContentArchiveTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MemberSpaceLimitsAddExceptionTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperContentArchiveTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for MemberSpaceLimitsAddExceptionType: \(error)" + return "Failed to generate description for PaperContentArchiveType: \(error)" } } } - - public class MemberSpaceLimitsAddExceptionTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MemberSpaceLimitsAddExceptionType) throws -> JSON { + public class PaperContentArchiveTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperContentArchiveType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MemberSpaceLimitsAddExceptionType { + public func deserialize(_ json: JSON) throws -> PaperContentArchiveType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return MemberSpaceLimitsAddExceptionType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: MemberSpaceLimitsAddExceptionType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return PaperContentArchiveType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: PaperContentArchiveType.self, json: json) } } } - /// Changed member space limit type for team. - public class MemberSpaceLimitsChangeCapsTypePolicyDetails: CustomStringConvertible, JSONRepresentable { - /// Previous space limit type. - public let previousValue: TeamLog.SpaceCapsType - /// New space limit type. - public let newValue: TeamLog.SpaceCapsType - public init(previousValue: TeamLog.SpaceCapsType, newValue: TeamLog.SpaceCapsType) { - self.previousValue = previousValue - self.newValue = newValue + /// Created Paper doc/folder. + public class PaperContentCreateDetails: CustomStringConvertible, JSONRepresentable { + /// Event unique identifier. + public let eventUuid: String + public init(eventUuid: String) { + stringValidator()(eventUuid) + self.eventUuid = eventUuid } func json() throws -> JSON { - try MemberSpaceLimitsChangeCapsTypePolicyDetailsSerializer().serialize(self) + try PaperContentCreateDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MemberSpaceLimitsChangeCapsTypePolicyDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperContentCreateDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for MemberSpaceLimitsChangeCapsTypePolicyDetails: \(error)" + return "Failed to generate description for PaperContentCreateDetails: \(error)" } } } - - public class MemberSpaceLimitsChangeCapsTypePolicyDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MemberSpaceLimitsChangeCapsTypePolicyDetails) throws -> JSON { + public class PaperContentCreateDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperContentCreateDetails) throws -> JSON { let output = [ - "previous_value": try TeamLog.SpaceCapsTypeSerializer().serialize(value.previousValue), - "new_value": try TeamLog.SpaceCapsTypeSerializer().serialize(value.newValue), + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MemberSpaceLimitsChangeCapsTypePolicyDetails { + public func deserialize(_ json: JSON) throws -> PaperContentCreateDetails { switch json { - case .dictionary(let dict): - let previousValue = try TeamLog.SpaceCapsTypeSerializer().deserialize(dict["previous_value"] ?? .null) - let newValue = try TeamLog.SpaceCapsTypeSerializer().deserialize(dict["new_value"] ?? .null) - return MemberSpaceLimitsChangeCapsTypePolicyDetails(previousValue: previousValue, newValue: newValue) - default: - throw JSONSerializerError.deserializeError(type: MemberSpaceLimitsChangeCapsTypePolicyDetails.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + return PaperContentCreateDetails(eventUuid: eventUuid) + default: + throw JSONSerializerError.deserializeError(type: PaperContentCreateDetails.self, json: json) } } } - /// The MemberSpaceLimitsChangeCapsTypePolicyType struct - public class MemberSpaceLimitsChangeCapsTypePolicyType: CustomStringConvertible, JSONRepresentable { + /// The PaperContentCreateType struct + public class PaperContentCreateType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -38000,88 +51021,78 @@ public class TeamLog { } func json() throws -> JSON { - try MemberSpaceLimitsChangeCapsTypePolicyTypeSerializer().serialize(self) + try PaperContentCreateTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MemberSpaceLimitsChangeCapsTypePolicyTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperContentCreateTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for MemberSpaceLimitsChangeCapsTypePolicyType: \(error)" + return "Failed to generate description for PaperContentCreateType: \(error)" } } } - - public class MemberSpaceLimitsChangeCapsTypePolicyTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MemberSpaceLimitsChangeCapsTypePolicyType) throws -> JSON { + public class PaperContentCreateTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperContentCreateType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MemberSpaceLimitsChangeCapsTypePolicyType { + public func deserialize(_ json: JSON) throws -> PaperContentCreateType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return MemberSpaceLimitsChangeCapsTypePolicyType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: MemberSpaceLimitsChangeCapsTypePolicyType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return PaperContentCreateType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: PaperContentCreateType.self, json: json) } } } - /// Changed custom member space limit. - public class MemberSpaceLimitsChangeCustomQuotaDetails: CustomStringConvertible, JSONRepresentable { - /// Previous custom quota value in bytes. - public let previousValue: UInt64 - /// New custom quota value in bytes. - public let newValue: UInt64 - public init(previousValue: UInt64, newValue: UInt64) { - comparableValidator()(previousValue) - self.previousValue = previousValue - comparableValidator()(newValue) - self.newValue = newValue + /// Permanently deleted Paper doc/folder. + public class PaperContentPermanentlyDeleteDetails: CustomStringConvertible, JSONRepresentable { + /// Event unique identifier. + public let eventUuid: String + public init(eventUuid: String) { + stringValidator()(eventUuid) + self.eventUuid = eventUuid } func json() throws -> JSON { - try MemberSpaceLimitsChangeCustomQuotaDetailsSerializer().serialize(self) + try PaperContentPermanentlyDeleteDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MemberSpaceLimitsChangeCustomQuotaDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperContentPermanentlyDeleteDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for MemberSpaceLimitsChangeCustomQuotaDetails: \(error)" + return "Failed to generate description for PaperContentPermanentlyDeleteDetails: \(error)" } } } - - public class MemberSpaceLimitsChangeCustomQuotaDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MemberSpaceLimitsChangeCustomQuotaDetails) throws -> JSON { + public class PaperContentPermanentlyDeleteDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperContentPermanentlyDeleteDetails) throws -> JSON { let output = [ - "previous_value": try Serialization._UInt64Serializer.serialize(value.previousValue), - "new_value": try Serialization._UInt64Serializer.serialize(value.newValue), + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MemberSpaceLimitsChangeCustomQuotaDetails { + public func deserialize(_ json: JSON) throws -> PaperContentPermanentlyDeleteDetails { switch json { - case .dictionary(let dict): - let previousValue = try Serialization._UInt64Serializer.deserialize(dict["previous_value"] ?? .null) - let newValue = try Serialization._UInt64Serializer.deserialize(dict["new_value"] ?? .null) - return MemberSpaceLimitsChangeCustomQuotaDetails(previousValue: previousValue, newValue: newValue) - default: - throw JSONSerializerError.deserializeError(type: MemberSpaceLimitsChangeCustomQuotaDetails.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + return PaperContentPermanentlyDeleteDetails(eventUuid: eventUuid) + default: + throw JSONSerializerError.deserializeError(type: PaperContentPermanentlyDeleteDetails.self, json: json) } } } - /// The MemberSpaceLimitsChangeCustomQuotaType struct - public class MemberSpaceLimitsChangeCustomQuotaType: CustomStringConvertible, JSONRepresentable { + /// The PaperContentPermanentlyDeleteType struct + public class PaperContentPermanentlyDeleteType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -38090,88 +51101,90 @@ public class TeamLog { } func json() throws -> JSON { - try MemberSpaceLimitsChangeCustomQuotaTypeSerializer().serialize(self) + try PaperContentPermanentlyDeleteTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MemberSpaceLimitsChangeCustomQuotaTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperContentPermanentlyDeleteTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for MemberSpaceLimitsChangeCustomQuotaType: \(error)" + return "Failed to generate description for PaperContentPermanentlyDeleteType: \(error)" } } } - - public class MemberSpaceLimitsChangeCustomQuotaTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MemberSpaceLimitsChangeCustomQuotaType) throws -> JSON { + public class PaperContentPermanentlyDeleteTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperContentPermanentlyDeleteType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MemberSpaceLimitsChangeCustomQuotaType { + public func deserialize(_ json: JSON) throws -> PaperContentPermanentlyDeleteType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return MemberSpaceLimitsChangeCustomQuotaType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: MemberSpaceLimitsChangeCustomQuotaType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return PaperContentPermanentlyDeleteType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: PaperContentPermanentlyDeleteType.self, json: json) } } } - /// Changed team default member space limit. - public class MemberSpaceLimitsChangePolicyDetails: CustomStringConvertible, JSONRepresentable { - /// Previous team default limit value in bytes. Might be missing due to historical data gap. - public let previousValue: UInt64? - /// New team default limit value in bytes. Might be missing due to historical data gap. - public let newValue: UInt64? - public init(previousValue: UInt64? = nil, newValue: UInt64? = nil) { - nullableValidator(comparableValidator())(previousValue) - self.previousValue = previousValue - nullableValidator(comparableValidator())(newValue) - self.newValue = newValue + /// Removed Paper doc/folder from folder. + public class PaperContentRemoveFromFolderDetails: CustomStringConvertible, JSONRepresentable { + /// Event unique identifier. + public let eventUuid: String + /// Target asset position in the Assets list. + public let targetAssetIndex: UInt64? + /// Parent asset position in the Assets list. + public let parentAssetIndex: UInt64? + public init(eventUuid: String, targetAssetIndex: UInt64? = nil, parentAssetIndex: UInt64? = nil) { + stringValidator()(eventUuid) + self.eventUuid = eventUuid + nullableValidator(comparableValidator())(targetAssetIndex) + self.targetAssetIndex = targetAssetIndex + nullableValidator(comparableValidator())(parentAssetIndex) + self.parentAssetIndex = parentAssetIndex } func json() throws -> JSON { - try MemberSpaceLimitsChangePolicyDetailsSerializer().serialize(self) + try PaperContentRemoveFromFolderDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MemberSpaceLimitsChangePolicyDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperContentRemoveFromFolderDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for MemberSpaceLimitsChangePolicyDetails: \(error)" + return "Failed to generate description for PaperContentRemoveFromFolderDetails: \(error)" } } } - - public class MemberSpaceLimitsChangePolicyDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MemberSpaceLimitsChangePolicyDetails) throws -> JSON { + public class PaperContentRemoveFromFolderDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperContentRemoveFromFolderDetails) throws -> JSON { let output = [ - "previous_value": try NullableSerializer(Serialization._UInt64Serializer).serialize(value.previousValue), - "new_value": try NullableSerializer(Serialization._UInt64Serializer).serialize(value.newValue), + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + "target_asset_index": try NullableSerializer(Serialization._UInt64Serializer).serialize(value.targetAssetIndex), + "parent_asset_index": try NullableSerializer(Serialization._UInt64Serializer).serialize(value.parentAssetIndex), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MemberSpaceLimitsChangePolicyDetails { + public func deserialize(_ json: JSON) throws -> PaperContentRemoveFromFolderDetails { switch json { - case .dictionary(let dict): - let previousValue = try NullableSerializer(Serialization._UInt64Serializer).deserialize(dict["previous_value"] ?? .null) - let newValue = try NullableSerializer(Serialization._UInt64Serializer).deserialize(dict["new_value"] ?? .null) - return MemberSpaceLimitsChangePolicyDetails(previousValue: previousValue, newValue: newValue) - default: - throw JSONSerializerError.deserializeError(type: MemberSpaceLimitsChangePolicyDetails.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + let targetAssetIndex = try NullableSerializer(Serialization._UInt64Serializer).deserialize(dict["target_asset_index"] ?? .null) + let parentAssetIndex = try NullableSerializer(Serialization._UInt64Serializer).deserialize(dict["parent_asset_index"] ?? .null) + return PaperContentRemoveFromFolderDetails(eventUuid: eventUuid, targetAssetIndex: targetAssetIndex, parentAssetIndex: parentAssetIndex) + default: + throw JSONSerializerError.deserializeError(type: PaperContentRemoveFromFolderDetails.self, json: json) } } } - /// The MemberSpaceLimitsChangePolicyType struct - public class MemberSpaceLimitsChangePolicyType: CustomStringConvertible, JSONRepresentable { + /// The PaperContentRemoveFromFolderType struct + public class PaperContentRemoveFromFolderType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -38180,86 +51193,78 @@ public class TeamLog { } func json() throws -> JSON { - try MemberSpaceLimitsChangePolicyTypeSerializer().serialize(self) + try PaperContentRemoveFromFolderTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MemberSpaceLimitsChangePolicyTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperContentRemoveFromFolderTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for MemberSpaceLimitsChangePolicyType: \(error)" + return "Failed to generate description for PaperContentRemoveFromFolderType: \(error)" } } } - - public class MemberSpaceLimitsChangePolicyTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MemberSpaceLimitsChangePolicyType) throws -> JSON { + public class PaperContentRemoveFromFolderTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperContentRemoveFromFolderType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MemberSpaceLimitsChangePolicyType { + public func deserialize(_ json: JSON) throws -> PaperContentRemoveFromFolderType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return MemberSpaceLimitsChangePolicyType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: MemberSpaceLimitsChangePolicyType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return PaperContentRemoveFromFolderType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: PaperContentRemoveFromFolderType.self, json: json) } } } - /// Changed space limit status. - public class MemberSpaceLimitsChangeStatusDetails: CustomStringConvertible, JSONRepresentable { - /// Previous storage quota status. - public let previousValue: TeamLog.SpaceLimitsStatus - /// New storage quota status. - public let newValue: TeamLog.SpaceLimitsStatus - public init(previousValue: TeamLog.SpaceLimitsStatus, newValue: TeamLog.SpaceLimitsStatus) { - self.previousValue = previousValue - self.newValue = newValue + /// Removed users and/or groups from Paper doc/folder. + public class PaperContentRemoveMemberDetails: CustomStringConvertible, JSONRepresentable { + /// Event unique identifier. + public let eventUuid: String + public init(eventUuid: String) { + stringValidator()(eventUuid) + self.eventUuid = eventUuid } func json() throws -> JSON { - try MemberSpaceLimitsChangeStatusDetailsSerializer().serialize(self) + try PaperContentRemoveMemberDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MemberSpaceLimitsChangeStatusDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperContentRemoveMemberDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for MemberSpaceLimitsChangeStatusDetails: \(error)" + return "Failed to generate description for PaperContentRemoveMemberDetails: \(error)" } } } - - public class MemberSpaceLimitsChangeStatusDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MemberSpaceLimitsChangeStatusDetails) throws -> JSON { + public class PaperContentRemoveMemberDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperContentRemoveMemberDetails) throws -> JSON { let output = [ - "previous_value": try TeamLog.SpaceLimitsStatusSerializer().serialize(value.previousValue), - "new_value": try TeamLog.SpaceLimitsStatusSerializer().serialize(value.newValue), + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MemberSpaceLimitsChangeStatusDetails { + public func deserialize(_ json: JSON) throws -> PaperContentRemoveMemberDetails { switch json { - case .dictionary(let dict): - let previousValue = try TeamLog.SpaceLimitsStatusSerializer().deserialize(dict["previous_value"] ?? .null) - let newValue = try TeamLog.SpaceLimitsStatusSerializer().deserialize(dict["new_value"] ?? .null) - return MemberSpaceLimitsChangeStatusDetails(previousValue: previousValue, newValue: newValue) - default: - throw JSONSerializerError.deserializeError(type: MemberSpaceLimitsChangeStatusDetails.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + return PaperContentRemoveMemberDetails(eventUuid: eventUuid) + default: + throw JSONSerializerError.deserializeError(type: PaperContentRemoveMemberDetails.self, json: json) } } } - /// The MemberSpaceLimitsChangeStatusType struct - public class MemberSpaceLimitsChangeStatusType: CustomStringConvertible, JSONRepresentable { + /// The PaperContentRemoveMemberType struct + public class PaperContentRemoveMemberType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -38268,72 +51273,78 @@ public class TeamLog { } func json() throws -> JSON { - try MemberSpaceLimitsChangeStatusTypeSerializer().serialize(self) + try PaperContentRemoveMemberTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MemberSpaceLimitsChangeStatusTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperContentRemoveMemberTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for MemberSpaceLimitsChangeStatusType: \(error)" + return "Failed to generate description for PaperContentRemoveMemberType: \(error)" } } } - - public class MemberSpaceLimitsChangeStatusTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MemberSpaceLimitsChangeStatusType) throws -> JSON { + public class PaperContentRemoveMemberTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperContentRemoveMemberType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MemberSpaceLimitsChangeStatusType { + public func deserialize(_ json: JSON) throws -> PaperContentRemoveMemberType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return MemberSpaceLimitsChangeStatusType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: MemberSpaceLimitsChangeStatusType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return PaperContentRemoveMemberType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: PaperContentRemoveMemberType.self, json: json) } } } - /// Removed custom member space limit. - public class MemberSpaceLimitsRemoveCustomQuotaDetails: CustomStringConvertible, JSONRepresentable { + /// Renamed Paper doc/folder. + public class PaperContentRenameDetails: CustomStringConvertible, JSONRepresentable { + /// Event unique identifier. + public let eventUuid: String + public init(eventUuid: String) { + stringValidator()(eventUuid) + self.eventUuid = eventUuid + } + func json() throws -> JSON { - try MemberSpaceLimitsRemoveCustomQuotaDetailsSerializer().serialize(self) + try PaperContentRenameDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MemberSpaceLimitsRemoveCustomQuotaDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperContentRenameDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for MemberSpaceLimitsRemoveCustomQuotaDetails: \(error)" + return "Failed to generate description for PaperContentRenameDetails: \(error)" } } } - - public class MemberSpaceLimitsRemoveCustomQuotaDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MemberSpaceLimitsRemoveCustomQuotaDetails) throws -> JSON { - let output = [String: JSON]() + public class PaperContentRenameDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperContentRenameDetails) throws -> JSON { + let output = [ + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MemberSpaceLimitsRemoveCustomQuotaDetails { + public func deserialize(_ json: JSON) throws -> PaperContentRenameDetails { switch json { - case .dictionary: - return MemberSpaceLimitsRemoveCustomQuotaDetails() - default: - throw JSONSerializerError.deserializeError(type: MemberSpaceLimitsRemoveCustomQuotaDetails.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + return PaperContentRenameDetails(eventUuid: eventUuid) + default: + throw JSONSerializerError.deserializeError(type: PaperContentRenameDetails.self, json: json) } } } - /// The MemberSpaceLimitsRemoveCustomQuotaType struct - public class MemberSpaceLimitsRemoveCustomQuotaType: CustomStringConvertible, JSONRepresentable { + /// The PaperContentRenameType struct + public class PaperContentRenameType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -38342,72 +51353,78 @@ public class TeamLog { } func json() throws -> JSON { - try MemberSpaceLimitsRemoveCustomQuotaTypeSerializer().serialize(self) + try PaperContentRenameTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MemberSpaceLimitsRemoveCustomQuotaTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperContentRenameTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for MemberSpaceLimitsRemoveCustomQuotaType: \(error)" + return "Failed to generate description for PaperContentRenameType: \(error)" } } } - - public class MemberSpaceLimitsRemoveCustomQuotaTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MemberSpaceLimitsRemoveCustomQuotaType) throws -> JSON { + public class PaperContentRenameTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperContentRenameType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MemberSpaceLimitsRemoveCustomQuotaType { + public func deserialize(_ json: JSON) throws -> PaperContentRenameType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return MemberSpaceLimitsRemoveCustomQuotaType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: MemberSpaceLimitsRemoveCustomQuotaType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return PaperContentRenameType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: PaperContentRenameType.self, json: json) } } } - /// Removed members from member space limit exception list. - public class MemberSpaceLimitsRemoveExceptionDetails: CustomStringConvertible, JSONRepresentable { + /// Restored archived Paper doc/folder. + public class PaperContentRestoreDetails: CustomStringConvertible, JSONRepresentable { + /// Event unique identifier. + public let eventUuid: String + public init(eventUuid: String) { + stringValidator()(eventUuid) + self.eventUuid = eventUuid + } + func json() throws -> JSON { - try MemberSpaceLimitsRemoveExceptionDetailsSerializer().serialize(self) + try PaperContentRestoreDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MemberSpaceLimitsRemoveExceptionDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperContentRestoreDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for MemberSpaceLimitsRemoveExceptionDetails: \(error)" + return "Failed to generate description for PaperContentRestoreDetails: \(error)" } } } - - public class MemberSpaceLimitsRemoveExceptionDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MemberSpaceLimitsRemoveExceptionDetails) throws -> JSON { - let output = [String: JSON]() + public class PaperContentRestoreDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperContentRestoreDetails) throws -> JSON { + let output = [ + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MemberSpaceLimitsRemoveExceptionDetails { + public func deserialize(_ json: JSON) throws -> PaperContentRestoreDetails { switch json { - case .dictionary: - return MemberSpaceLimitsRemoveExceptionDetails() - default: - throw JSONSerializerError.deserializeError(type: MemberSpaceLimitsRemoveExceptionDetails.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + return PaperContentRestoreDetails(eventUuid: eventUuid) + default: + throw JSONSerializerError.deserializeError(type: PaperContentRestoreDetails.self, json: json) } } } - /// The MemberSpaceLimitsRemoveExceptionType struct - public class MemberSpaceLimitsRemoveExceptionType: CustomStringConvertible, JSONRepresentable { + /// The PaperContentRestoreType struct + public class PaperContentRestoreType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -38416,175 +51433,141 @@ public class TeamLog { } func json() throws -> JSON { - try MemberSpaceLimitsRemoveExceptionTypeSerializer().serialize(self) + try PaperContentRestoreTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MemberSpaceLimitsRemoveExceptionTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperContentRestoreTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for MemberSpaceLimitsRemoveExceptionType: \(error)" + return "Failed to generate description for PaperContentRestoreType: \(error)" } } } - - public class MemberSpaceLimitsRemoveExceptionTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MemberSpaceLimitsRemoveExceptionType) throws -> JSON { + public class PaperContentRestoreTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperContentRestoreType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MemberSpaceLimitsRemoveExceptionType { + public func deserialize(_ json: JSON) throws -> PaperContentRestoreType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return MemberSpaceLimitsRemoveExceptionType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: MemberSpaceLimitsRemoveExceptionType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return PaperContentRestoreType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: PaperContentRestoreType.self, json: json) } } } - /// The MemberStatus union - public enum MemberStatus: CustomStringConvertible, JSONRepresentable { - /// An unspecified error. - case active - /// An unspecified error. - case invited - /// An unspecified error. - case movedToAnotherTeam - /// An unspecified error. - case notJoined + /// Policy to set default access for newly created Paper folders. + public enum PaperDefaultFolderPolicy: CustomStringConvertible, JSONRepresentable { /// An unspecified error. - case removed + case everyoneInTeam /// An unspecified error. - case suspended + case inviteOnly /// An unspecified error. case other func json() throws -> JSON { - try MemberStatusSerializer().serialize(self) + try PaperDefaultFolderPolicySerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MemberStatusSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperDefaultFolderPolicySerializer().serialize(self)))" } catch { - return "Failed to generate description for MemberStatus: \(error)" + return "Failed to generate description for PaperDefaultFolderPolicy: \(error)" } } } - - public class MemberStatusSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MemberStatus) throws -> JSON { + public class PaperDefaultFolderPolicySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperDefaultFolderPolicy) throws -> JSON { switch value { - case .active: - var d = [String: JSON]() - d[".tag"] = .str("active") - return .dictionary(d) - case .invited: - var d = [String: JSON]() - d[".tag"] = .str("invited") - return .dictionary(d) - case .movedToAnotherTeam: - var d = [String: JSON]() - d[".tag"] = .str("moved_to_another_team") - return .dictionary(d) - case .notJoined: - var d = [String: JSON]() - d[".tag"] = .str("not_joined") - return .dictionary(d) - case .removed: - var d = [String: JSON]() - d[".tag"] = .str("removed") - return .dictionary(d) - case .suspended: - var d = [String: JSON]() - d[".tag"] = .str("suspended") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) + case .everyoneInTeam: + var d = [String: JSON]() + d[".tag"] = .str("everyone_in_team") + return .dictionary(d) + case .inviteOnly: + var d = [String: JSON]() + d[".tag"] = .str("invite_only") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) } } - - public func deserialize(_ json: JSON) throws -> MemberStatus { + public func deserialize(_ json: JSON) throws -> PaperDefaultFolderPolicy { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "active": - return MemberStatus.active - case "invited": - return MemberStatus.invited - case "moved_to_another_team": - return MemberStatus.movedToAnotherTeam - case "not_joined": - return MemberStatus.notJoined - case "removed": - return MemberStatus.removed - case "suspended": - return MemberStatus.suspended - case "other": - return MemberStatus.other + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "everyone_in_team": + return PaperDefaultFolderPolicy.everyoneInTeam + case "invite_only": + return PaperDefaultFolderPolicy.inviteOnly + case "other": + return PaperDefaultFolderPolicy.other + default: + return PaperDefaultFolderPolicy.other + } default: - return MemberStatus.other - } - default: - throw JSONSerializerError.deserializeError(type: MemberStatus.self, json: json) + throw JSONSerializerError.deserializeError(type: PaperDefaultFolderPolicy.self, json: json) } } } - /// Suggested person to add to team. - public class MemberSuggestDetails: CustomStringConvertible, JSONRepresentable { - /// suggested users emails. - public let suggestedMembers: [String] - public init(suggestedMembers: [String]) { - arrayValidator(itemValidator: stringValidator(maxLength: 255))(suggestedMembers) - self.suggestedMembers = suggestedMembers + /// Changed Paper Default Folder Policy setting for team. + public class PaperDefaultFolderPolicyChangedDetails: CustomStringConvertible, JSONRepresentable { + /// New Paper Default Folder Policy. + public let newValue: TeamLog.PaperDefaultFolderPolicy + /// Previous Paper Default Folder Policy. + public let previousValue: TeamLog.PaperDefaultFolderPolicy + public init(newValue: TeamLog.PaperDefaultFolderPolicy, previousValue: TeamLog.PaperDefaultFolderPolicy) { + self.newValue = newValue + self.previousValue = previousValue } func json() throws -> JSON { - try MemberSuggestDetailsSerializer().serialize(self) + try PaperDefaultFolderPolicyChangedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MemberSuggestDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperDefaultFolderPolicyChangedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for MemberSuggestDetails: \(error)" + return "Failed to generate description for PaperDefaultFolderPolicyChangedDetails: \(error)" } } } - - public class MemberSuggestDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MemberSuggestDetails) throws -> JSON { + public class PaperDefaultFolderPolicyChangedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperDefaultFolderPolicyChangedDetails) throws -> JSON { let output = [ - "suggested_members": try ArraySerializer(Serialization._StringSerializer).serialize(value.suggestedMembers), + "new_value": try TeamLog.PaperDefaultFolderPolicySerializer().serialize(value.newValue), + "previous_value": try TeamLog.PaperDefaultFolderPolicySerializer().serialize(value.previousValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MemberSuggestDetails { + public func deserialize(_ json: JSON) throws -> PaperDefaultFolderPolicyChangedDetails { switch json { - case .dictionary(let dict): - let suggestedMembers = try ArraySerializer(Serialization._StringSerializer).deserialize(dict["suggested_members"] ?? .null) - return MemberSuggestDetails(suggestedMembers: suggestedMembers) - default: - throw JSONSerializerError.deserializeError(type: MemberSuggestDetails.self, json: json) + case .dictionary(let dict): + let newValue = try TeamLog.PaperDefaultFolderPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try TeamLog.PaperDefaultFolderPolicySerializer().deserialize(dict["previous_value"] ?? .null) + return PaperDefaultFolderPolicyChangedDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: PaperDefaultFolderPolicyChangedDetails.self, json: json) } } } - /// The MemberSuggestType struct - public class MemberSuggestType: CustomStringConvertible, JSONRepresentable { + /// The PaperDefaultFolderPolicyChangedType struct + public class PaperDefaultFolderPolicyChangedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -38593,86 +51576,141 @@ public class TeamLog { } func json() throws -> JSON { - try MemberSuggestTypeSerializer().serialize(self) + try PaperDefaultFolderPolicyChangedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MemberSuggestTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperDefaultFolderPolicyChangedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for MemberSuggestType: \(error)" + return "Failed to generate description for PaperDefaultFolderPolicyChangedType: \(error)" } } } - - public class MemberSuggestTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MemberSuggestType) throws -> JSON { + public class PaperDefaultFolderPolicyChangedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperDefaultFolderPolicyChangedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } + public func deserialize(_ json: JSON) throws -> PaperDefaultFolderPolicyChangedType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return PaperDefaultFolderPolicyChangedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: PaperDefaultFolderPolicyChangedType.self, json: json) + } + } + } - public func deserialize(_ json: JSON) throws -> MemberSuggestType { + /// Policy for controlling if team members can use Paper Desktop + public enum PaperDesktopPolicy: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case disabled + /// An unspecified error. + case enabled + /// An unspecified error. + case other + + func json() throws -> JSON { + try PaperDesktopPolicySerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try PaperDesktopPolicySerializer().serialize(self)))" + } catch { + return "Failed to generate description for PaperDesktopPolicy: \(error)" + } + } + } + public class PaperDesktopPolicySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperDesktopPolicy) throws -> JSON { + switch value { + case .disabled: + var d = [String: JSON]() + d[".tag"] = .str("disabled") + return .dictionary(d) + case .enabled: + var d = [String: JSON]() + d[".tag"] = .str("enabled") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> PaperDesktopPolicy { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return MemberSuggestType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: MemberSuggestType.self, json: json) + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "disabled": + return PaperDesktopPolicy.disabled + case "enabled": + return PaperDesktopPolicy.enabled + case "other": + return PaperDesktopPolicy.other + default: + return PaperDesktopPolicy.other + } + default: + throw JSONSerializerError.deserializeError(type: PaperDesktopPolicy.self, json: json) } } } - /// Enabled/disabled option for team members to suggest people to add to team. - public class MemberSuggestionsChangePolicyDetails: CustomStringConvertible, JSONRepresentable { - /// New team member suggestions policy. - public let newValue: TeamLog.MemberSuggestionsPolicy - /// Previous team member suggestions policy. Might be missing due to historical data gap. - public let previousValue: TeamLog.MemberSuggestionsPolicy? - public init(newValue: TeamLog.MemberSuggestionsPolicy, previousValue: TeamLog.MemberSuggestionsPolicy? = nil) { + /// Enabled/disabled Paper Desktop for team. + public class PaperDesktopPolicyChangedDetails: CustomStringConvertible, JSONRepresentable { + /// New Paper Desktop policy. + public let newValue: TeamLog.PaperDesktopPolicy + /// Previous Paper Desktop policy. + public let previousValue: TeamLog.PaperDesktopPolicy + public init(newValue: TeamLog.PaperDesktopPolicy, previousValue: TeamLog.PaperDesktopPolicy) { self.newValue = newValue self.previousValue = previousValue } func json() throws -> JSON { - try MemberSuggestionsChangePolicyDetailsSerializer().serialize(self) + try PaperDesktopPolicyChangedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MemberSuggestionsChangePolicyDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperDesktopPolicyChangedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for MemberSuggestionsChangePolicyDetails: \(error)" + return "Failed to generate description for PaperDesktopPolicyChangedDetails: \(error)" } } } - - public class MemberSuggestionsChangePolicyDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MemberSuggestionsChangePolicyDetails) throws -> JSON { + public class PaperDesktopPolicyChangedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperDesktopPolicyChangedDetails) throws -> JSON { let output = [ - "new_value": try TeamLog.MemberSuggestionsPolicySerializer().serialize(value.newValue), - "previous_value": try NullableSerializer(TeamLog.MemberSuggestionsPolicySerializer()).serialize(value.previousValue), + "new_value": try TeamLog.PaperDesktopPolicySerializer().serialize(value.newValue), + "previous_value": try TeamLog.PaperDesktopPolicySerializer().serialize(value.previousValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MemberSuggestionsChangePolicyDetails { + public func deserialize(_ json: JSON) throws -> PaperDesktopPolicyChangedDetails { switch json { - case .dictionary(let dict): - let newValue = try TeamLog.MemberSuggestionsPolicySerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try NullableSerializer(TeamLog.MemberSuggestionsPolicySerializer()).deserialize(dict["previous_value"] ?? .null) - return MemberSuggestionsChangePolicyDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: MemberSuggestionsChangePolicyDetails.self, json: json) + case .dictionary(let dict): + let newValue = try TeamLog.PaperDesktopPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try TeamLog.PaperDesktopPolicySerializer().deserialize(dict["previous_value"] ?? .null) + return PaperDesktopPolicyChangedDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: PaperDesktopPolicyChangedDetails.self, json: json) } } } - /// The MemberSuggestionsChangePolicyType struct - public class MemberSuggestionsChangePolicyType: CustomStringConvertible, JSONRepresentable { + /// The PaperDesktopPolicyChangedType struct + public class PaperDesktopPolicyChangedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -38681,269 +51719,261 @@ public class TeamLog { } func json() throws -> JSON { - try MemberSuggestionsChangePolicyTypeSerializer().serialize(self) + try PaperDesktopPolicyChangedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MemberSuggestionsChangePolicyTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperDesktopPolicyChangedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for MemberSuggestionsChangePolicyType: \(error)" + return "Failed to generate description for PaperDesktopPolicyChangedType: \(error)" } } } - - public class MemberSuggestionsChangePolicyTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MemberSuggestionsChangePolicyType) throws -> JSON { + public class PaperDesktopPolicyChangedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperDesktopPolicyChangedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MemberSuggestionsChangePolicyType { + public func deserialize(_ json: JSON) throws -> PaperDesktopPolicyChangedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return MemberSuggestionsChangePolicyType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: MemberSuggestionsChangePolicyType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return PaperDesktopPolicyChangedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: PaperDesktopPolicyChangedType.self, json: json) } } } - /// Member suggestions policy - public enum MemberSuggestionsPolicy: CustomStringConvertible, JSONRepresentable { - /// An unspecified error. - case disabled - /// An unspecified error. - case enabled - /// An unspecified error. - case other + /// Added Paper doc comment. + public class PaperDocAddCommentDetails: CustomStringConvertible, JSONRepresentable { + /// Event unique identifier. + public let eventUuid: String + /// Comment text. + public let commentText: String? + public init(eventUuid: String, commentText: String? = nil) { + stringValidator()(eventUuid) + self.eventUuid = eventUuid + nullableValidator(stringValidator())(commentText) + self.commentText = commentText + } func json() throws -> JSON { - try MemberSuggestionsPolicySerializer().serialize(self) + try PaperDocAddCommentDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MemberSuggestionsPolicySerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocAddCommentDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for MemberSuggestionsPolicy: \(error)" + return "Failed to generate description for PaperDocAddCommentDetails: \(error)" } } } - - public class MemberSuggestionsPolicySerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MemberSuggestionsPolicy) throws -> JSON { - switch value { - case .disabled: - var d = [String: JSON]() - d[".tag"] = .str("disabled") - return .dictionary(d) - case .enabled: - var d = [String: JSON]() - d[".tag"] = .str("enabled") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) - } + public class PaperDocAddCommentDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperDocAddCommentDetails) throws -> JSON { + let output = [ + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + "comment_text": try NullableSerializer(Serialization._StringSerializer).serialize(value.commentText), + ] + return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MemberSuggestionsPolicy { + public func deserialize(_ json: JSON) throws -> PaperDocAddCommentDetails { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "disabled": - return MemberSuggestionsPolicy.disabled - case "enabled": - return MemberSuggestionsPolicy.enabled - case "other": - return MemberSuggestionsPolicy.other + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + let commentText = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["comment_text"] ?? .null) + return PaperDocAddCommentDetails(eventUuid: eventUuid, commentText: commentText) default: - return MemberSuggestionsPolicy.other - } - default: - throw JSONSerializerError.deserializeError(type: MemberSuggestionsPolicy.self, json: json) + throw JSONSerializerError.deserializeError(type: PaperDocAddCommentDetails.self, json: json) } } } - /// Transferred contents of deleted member account to another member. - public class MemberTransferAccountContentsDetails: CustomStringConvertible, JSONRepresentable { + /// The PaperDocAddCommentType struct + public class PaperDocAddCommentType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + func json() throws -> JSON { - try MemberTransferAccountContentsDetailsSerializer().serialize(self) + try PaperDocAddCommentTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MemberTransferAccountContentsDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocAddCommentTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for MemberTransferAccountContentsDetails: \(error)" + return "Failed to generate description for PaperDocAddCommentType: \(error)" } } } - - public class MemberTransferAccountContentsDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MemberTransferAccountContentsDetails) throws -> JSON { - let output = [String: JSON]() + public class PaperDocAddCommentTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperDocAddCommentType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MemberTransferAccountContentsDetails { + public func deserialize(_ json: JSON) throws -> PaperDocAddCommentType { switch json { - case .dictionary: - return MemberTransferAccountContentsDetails() - default: - throw JSONSerializerError.deserializeError(type: MemberTransferAccountContentsDetails.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return PaperDocAddCommentType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: PaperDocAddCommentType.self, json: json) } } } - /// The MemberTransferAccountContentsType struct - public class MemberTransferAccountContentsType: CustomStringConvertible, JSONRepresentable { - /// (no description) - public let description_: String - public init(description_: String) { - stringValidator()(description_) - self.description_ = description_ + /// Changed member permissions for Paper doc. + public class PaperDocChangeMemberRoleDetails: CustomStringConvertible, JSONRepresentable { + /// Event unique identifier. + public let eventUuid: String + /// Paper doc access type. + public let accessType: TeamLog.PaperAccessType + public init(eventUuid: String, accessType: TeamLog.PaperAccessType) { + stringValidator()(eventUuid) + self.eventUuid = eventUuid + self.accessType = accessType } func json() throws -> JSON { - try MemberTransferAccountContentsTypeSerializer().serialize(self) + try PaperDocChangeMemberRoleDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MemberTransferAccountContentsTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocChangeMemberRoleDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for MemberTransferAccountContentsType: \(error)" + return "Failed to generate description for PaperDocChangeMemberRoleDetails: \(error)" } } } - - public class MemberTransferAccountContentsTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MemberTransferAccountContentsType) throws -> JSON { + public class PaperDocChangeMemberRoleDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperDocChangeMemberRoleDetails) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + "access_type": try TeamLog.PaperAccessTypeSerializer().serialize(value.accessType), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MemberTransferAccountContentsType { + public func deserialize(_ json: JSON) throws -> PaperDocChangeMemberRoleDetails { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return MemberTransferAccountContentsType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: MemberTransferAccountContentsType.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + let accessType = try TeamLog.PaperAccessTypeSerializer().deserialize(dict["access_type"] ?? .null) + return PaperDocChangeMemberRoleDetails(eventUuid: eventUuid, accessType: accessType) + default: + throw JSONSerializerError.deserializeError(type: PaperDocChangeMemberRoleDetails.self, json: json) } } } - /// Internal only - fields for target team computations - public class MemberTransferredInternalFields: CustomStringConvertible, JSONRepresentable { - /// Internal only - team user was moved from. - public let sourceTeamId: String - /// Internal only - team user was moved to. - public let targetTeamId: String - public init(sourceTeamId: String, targetTeamId: String) { - stringValidator()(sourceTeamId) - self.sourceTeamId = sourceTeamId - stringValidator()(targetTeamId) - self.targetTeamId = targetTeamId + /// The PaperDocChangeMemberRoleType struct + public class PaperDocChangeMemberRoleType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ } func json() throws -> JSON { - try MemberTransferredInternalFieldsSerializer().serialize(self) + try PaperDocChangeMemberRoleTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MemberTransferredInternalFieldsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocChangeMemberRoleTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for MemberTransferredInternalFields: \(error)" + return "Failed to generate description for PaperDocChangeMemberRoleType: \(error)" } } } - - public class MemberTransferredInternalFieldsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MemberTransferredInternalFields) throws -> JSON { + public class PaperDocChangeMemberRoleTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperDocChangeMemberRoleType) throws -> JSON { let output = [ - "source_team_id": try Serialization._StringSerializer.serialize(value.sourceTeamId), - "target_team_id": try Serialization._StringSerializer.serialize(value.targetTeamId), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MemberTransferredInternalFields { + public func deserialize(_ json: JSON) throws -> PaperDocChangeMemberRoleType { switch json { - case .dictionary(let dict): - let sourceTeamId = try Serialization._StringSerializer.deserialize(dict["source_team_id"] ?? .null) - let targetTeamId = try Serialization._StringSerializer.deserialize(dict["target_team_id"] ?? .null) - return MemberTransferredInternalFields(sourceTeamId: sourceTeamId, targetTeamId: targetTeamId) - default: - throw JSONSerializerError.deserializeError(type: MemberTransferredInternalFields.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return PaperDocChangeMemberRoleType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: PaperDocChangeMemberRoleType.self, json: json) } } - } - - /// Enabled/disabled Microsoft Office add-in. - public class MicrosoftOfficeAddinChangePolicyDetails: CustomStringConvertible, JSONRepresentable { - /// New Microsoft Office addin policy. - public let newValue: TeamLog.MicrosoftOfficeAddinPolicy - /// Previous Microsoft Office addin policy. Might be missing due to historical data gap. - public let previousValue: TeamLog.MicrosoftOfficeAddinPolicy? - public init(newValue: TeamLog.MicrosoftOfficeAddinPolicy, previousValue: TeamLog.MicrosoftOfficeAddinPolicy? = nil) { - self.newValue = newValue - self.previousValue = previousValue + } + + /// Changed sharing setting for Paper doc. + public class PaperDocChangeSharingPolicyDetails: CustomStringConvertible, JSONRepresentable { + /// Event unique identifier. + public let eventUuid: String + /// Sharing policy with external users. + public let publicSharingPolicy: String? + /// Sharing policy with team. + public let teamSharingPolicy: String? + public init(eventUuid: String, publicSharingPolicy: String? = nil, teamSharingPolicy: String? = nil) { + stringValidator()(eventUuid) + self.eventUuid = eventUuid + nullableValidator(stringValidator())(publicSharingPolicy) + self.publicSharingPolicy = publicSharingPolicy + nullableValidator(stringValidator())(teamSharingPolicy) + self.teamSharingPolicy = teamSharingPolicy } func json() throws -> JSON { - try MicrosoftOfficeAddinChangePolicyDetailsSerializer().serialize(self) + try PaperDocChangeSharingPolicyDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MicrosoftOfficeAddinChangePolicyDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocChangeSharingPolicyDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for MicrosoftOfficeAddinChangePolicyDetails: \(error)" + return "Failed to generate description for PaperDocChangeSharingPolicyDetails: \(error)" } } } - - public class MicrosoftOfficeAddinChangePolicyDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MicrosoftOfficeAddinChangePolicyDetails) throws -> JSON { + public class PaperDocChangeSharingPolicyDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperDocChangeSharingPolicyDetails) throws -> JSON { let output = [ - "new_value": try TeamLog.MicrosoftOfficeAddinPolicySerializer().serialize(value.newValue), - "previous_value": try NullableSerializer(TeamLog.MicrosoftOfficeAddinPolicySerializer()).serialize(value.previousValue), + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + "public_sharing_policy": try NullableSerializer(Serialization._StringSerializer).serialize(value.publicSharingPolicy), + "team_sharing_policy": try NullableSerializer(Serialization._StringSerializer).serialize(value.teamSharingPolicy), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MicrosoftOfficeAddinChangePolicyDetails { + public func deserialize(_ json: JSON) throws -> PaperDocChangeSharingPolicyDetails { switch json { - case .dictionary(let dict): - let newValue = try TeamLog.MicrosoftOfficeAddinPolicySerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try NullableSerializer(TeamLog.MicrosoftOfficeAddinPolicySerializer()).deserialize(dict["previous_value"] ?? .null) - return MicrosoftOfficeAddinChangePolicyDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: MicrosoftOfficeAddinChangePolicyDetails.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + let publicSharingPolicy = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["public_sharing_policy"] ?? .null) + let teamSharingPolicy = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["team_sharing_policy"] ?? .null) + return PaperDocChangeSharingPolicyDetails(eventUuid: eventUuid, publicSharingPolicy: publicSharingPolicy, teamSharingPolicy: teamSharingPolicy) + default: + throw JSONSerializerError.deserializeError(type: PaperDocChangeSharingPolicyDetails.self, json: json) } } } - /// The MicrosoftOfficeAddinChangePolicyType struct - public class MicrosoftOfficeAddinChangePolicyType: CustomStringConvertible, JSONRepresentable { + /// The PaperDocChangeSharingPolicyType struct + public class PaperDocChangeSharingPolicyType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -38952,516 +51982,427 @@ public class TeamLog { } func json() throws -> JSON { - try MicrosoftOfficeAddinChangePolicyTypeSerializer().serialize(self) + try PaperDocChangeSharingPolicyTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MicrosoftOfficeAddinChangePolicyTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocChangeSharingPolicyTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for MicrosoftOfficeAddinChangePolicyType: \(error)" + return "Failed to generate description for PaperDocChangeSharingPolicyType: \(error)" } } } - - public class MicrosoftOfficeAddinChangePolicyTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MicrosoftOfficeAddinChangePolicyType) throws -> JSON { + public class PaperDocChangeSharingPolicyTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperDocChangeSharingPolicyType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MicrosoftOfficeAddinChangePolicyType { + public func deserialize(_ json: JSON) throws -> PaperDocChangeSharingPolicyType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return MicrosoftOfficeAddinChangePolicyType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: MicrosoftOfficeAddinChangePolicyType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return PaperDocChangeSharingPolicyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: PaperDocChangeSharingPolicyType.self, json: json) } } } - /// Microsoft Office addin policy - public enum MicrosoftOfficeAddinPolicy: CustomStringConvertible, JSONRepresentable { - /// An unspecified error. - case disabled - /// An unspecified error. - case enabled - /// An unspecified error. - case other + /// Followed/unfollowed Paper doc. + public class PaperDocChangeSubscriptionDetails: CustomStringConvertible, JSONRepresentable { + /// Event unique identifier. + public let eventUuid: String + /// New doc subscription level. + public let newSubscriptionLevel: String + /// Previous doc subscription level. Might be missing due to historical data gap. + public let previousSubscriptionLevel: String? + public init(eventUuid: String, newSubscriptionLevel: String, previousSubscriptionLevel: String? = nil) { + stringValidator()(eventUuid) + self.eventUuid = eventUuid + stringValidator()(newSubscriptionLevel) + self.newSubscriptionLevel = newSubscriptionLevel + nullableValidator(stringValidator())(previousSubscriptionLevel) + self.previousSubscriptionLevel = previousSubscriptionLevel + } func json() throws -> JSON { - try MicrosoftOfficeAddinPolicySerializer().serialize(self) + try PaperDocChangeSubscriptionDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MicrosoftOfficeAddinPolicySerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocChangeSubscriptionDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for MicrosoftOfficeAddinPolicy: \(error)" + return "Failed to generate description for PaperDocChangeSubscriptionDetails: \(error)" } } } - - public class MicrosoftOfficeAddinPolicySerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MicrosoftOfficeAddinPolicy) throws -> JSON { - switch value { - case .disabled: - var d = [String: JSON]() - d[".tag"] = .str("disabled") - return .dictionary(d) - case .enabled: - var d = [String: JSON]() - d[".tag"] = .str("enabled") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) - } + public class PaperDocChangeSubscriptionDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperDocChangeSubscriptionDetails) throws -> JSON { + let output = [ + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + "new_subscription_level": try Serialization._StringSerializer.serialize(value.newSubscriptionLevel), + "previous_subscription_level": try NullableSerializer(Serialization._StringSerializer).serialize(value.previousSubscriptionLevel), + ] + return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MicrosoftOfficeAddinPolicy { + public func deserialize(_ json: JSON) throws -> PaperDocChangeSubscriptionDetails { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "disabled": - return MicrosoftOfficeAddinPolicy.disabled - case "enabled": - return MicrosoftOfficeAddinPolicy.enabled - case "other": - return MicrosoftOfficeAddinPolicy.other + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + let newSubscriptionLevel = try Serialization._StringSerializer.deserialize(dict["new_subscription_level"] ?? .null) + let previousSubscriptionLevel = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["previous_subscription_level"] ?? .null) + return PaperDocChangeSubscriptionDetails(eventUuid: eventUuid, newSubscriptionLevel: newSubscriptionLevel, previousSubscriptionLevel: previousSubscriptionLevel) default: - return MicrosoftOfficeAddinPolicy.other - } - default: - throw JSONSerializerError.deserializeError(type: MicrosoftOfficeAddinPolicy.self, json: json) + throw JSONSerializerError.deserializeError(type: PaperDocChangeSubscriptionDetails.self, json: json) } } } - /// An indication that an error occurred while retrieving the event. Some attributes of the event may be omitted as - /// a result. - public class MissingDetails: CustomStringConvertible, JSONRepresentable { - /// All the data that could be retrieved and converted from the source event. - public let sourceEventFields: String? - public init(sourceEventFields: String? = nil) { - nullableValidator(stringValidator())(sourceEventFields) - self.sourceEventFields = sourceEventFields + /// The PaperDocChangeSubscriptionType struct + public class PaperDocChangeSubscriptionType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ } func json() throws -> JSON { - try MissingDetailsSerializer().serialize(self) + try PaperDocChangeSubscriptionTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MissingDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocChangeSubscriptionTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for MissingDetails: \(error)" + return "Failed to generate description for PaperDocChangeSubscriptionType: \(error)" } } } - - public class MissingDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MissingDetails) throws -> JSON { + public class PaperDocChangeSubscriptionTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperDocChangeSubscriptionType) throws -> JSON { let output = [ - "source_event_fields": try NullableSerializer(Serialization._StringSerializer).serialize(value.sourceEventFields), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MissingDetails { + public func deserialize(_ json: JSON) throws -> PaperDocChangeSubscriptionType { switch json { - case .dictionary(let dict): - let sourceEventFields = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["source_event_fields"] ?? .null) - return MissingDetails(sourceEventFields: sourceEventFields) - default: - throw JSONSerializerError.deserializeError(type: MissingDetails.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return PaperDocChangeSubscriptionType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: PaperDocChangeSubscriptionType.self, json: json) } } } - /// Information about linked Dropbox mobile client sessions - public class MobileDeviceSessionLogInfo: TeamLog.DeviceSessionLogInfo { - /// Mobile session unique id. - public let sessionInfo: TeamLog.MobileSessionLogInfo? - /// The device name. - public let deviceName: String - /// The mobile application type. - public let clientType: Team.MobileClientPlatform - /// The Dropbox client version. - public let clientVersion: String? - /// The hosting OS version. - public let osVersion: String? - /// last carrier used by the device. - public let lastCarrier: String? - public init( - deviceName: String, - clientType: Team.MobileClientPlatform, - ipAddress: String? = nil, - created: Date? = nil, - updated: Date? = nil, - sessionInfo: TeamLog.MobileSessionLogInfo? = nil, - clientVersion: String? = nil, - osVersion: String? = nil, - lastCarrier: String? = nil - ) { - self.sessionInfo = sessionInfo - stringValidator()(deviceName) - self.deviceName = deviceName - self.clientType = clientType - nullableValidator(stringValidator())(clientVersion) - self.clientVersion = clientVersion - nullableValidator(stringValidator())(osVersion) - self.osVersion = osVersion - nullableValidator(stringValidator())(lastCarrier) - self.lastCarrier = lastCarrier - super.init(ipAddress: ipAddress, created: created, updated: updated) + /// Deleted Paper doc comment. + public class PaperDocDeleteCommentDetails: CustomStringConvertible, JSONRepresentable { + /// Event unique identifier. + public let eventUuid: String + /// Comment text. + public let commentText: String? + public init(eventUuid: String, commentText: String? = nil) { + stringValidator()(eventUuid) + self.eventUuid = eventUuid + nullableValidator(stringValidator())(commentText) + self.commentText = commentText } - public override var description: String { + func json() throws -> JSON { + try PaperDocDeleteCommentDetailsSerializer().serialize(self) + } + + public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MobileDeviceSessionLogInfoSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocDeleteCommentDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for MobileDeviceSessionLogInfo: \(error)" + return "Failed to generate description for PaperDocDeleteCommentDetails: \(error)" } } } - - public class MobileDeviceSessionLogInfoSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MobileDeviceSessionLogInfo) throws -> JSON { + public class PaperDocDeleteCommentDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperDocDeleteCommentDetails) throws -> JSON { let output = [ - "device_name": try Serialization._StringSerializer.serialize(value.deviceName), - "client_type": try Team.MobileClientPlatformSerializer().serialize(value.clientType), - "ip_address": try NullableSerializer(Serialization._StringSerializer).serialize(value.ipAddress), - "created": try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).serialize(value.created), - "updated": try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).serialize(value.updated), - "session_info": try NullableSerializer(TeamLog.MobileSessionLogInfoSerializer()).serialize(value.sessionInfo), - "client_version": try NullableSerializer(Serialization._StringSerializer).serialize(value.clientVersion), - "os_version": try NullableSerializer(Serialization._StringSerializer).serialize(value.osVersion), - "last_carrier": try NullableSerializer(Serialization._StringSerializer).serialize(value.lastCarrier), + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + "comment_text": try NullableSerializer(Serialization._StringSerializer).serialize(value.commentText), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MobileDeviceSessionLogInfo { + public func deserialize(_ json: JSON) throws -> PaperDocDeleteCommentDetails { switch json { - case .dictionary(let dict): - let deviceName = try Serialization._StringSerializer.deserialize(dict["device_name"] ?? .null) - let clientType = try Team.MobileClientPlatformSerializer().deserialize(dict["client_type"] ?? .null) - let ipAddress = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["ip_address"] ?? .null) - let created = try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).deserialize(dict["created"] ?? .null) - let updated = try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).deserialize(dict["updated"] ?? .null) - let sessionInfo = try NullableSerializer(TeamLog.MobileSessionLogInfoSerializer()).deserialize(dict["session_info"] ?? .null) - let clientVersion = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["client_version"] ?? .null) - let osVersion = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["os_version"] ?? .null) - let lastCarrier = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["last_carrier"] ?? .null) - return MobileDeviceSessionLogInfo( - deviceName: deviceName, - clientType: clientType, - ipAddress: ipAddress, - created: created, - updated: updated, - sessionInfo: sessionInfo, - clientVersion: clientVersion, - osVersion: osVersion, - lastCarrier: lastCarrier - ) - default: - throw JSONSerializerError.deserializeError(type: MobileDeviceSessionLogInfo.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + let commentText = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["comment_text"] ?? .null) + return PaperDocDeleteCommentDetails(eventUuid: eventUuid, commentText: commentText) + default: + throw JSONSerializerError.deserializeError(type: PaperDocDeleteCommentDetails.self, json: json) } } } - /// Mobile session. - public class MobileSessionLogInfo: TeamLog.SessionLogInfo { - public override var description: String { + /// The PaperDocDeleteCommentType struct + public class PaperDocDeleteCommentType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try PaperDocDeleteCommentTypeSerializer().serialize(self) + } + + public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try MobileSessionLogInfoSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocDeleteCommentTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for MobileSessionLogInfo: \(error)" + return "Failed to generate description for PaperDocDeleteCommentType: \(error)" } } } - - public class MobileSessionLogInfoSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: MobileSessionLogInfo) throws -> JSON { + public class PaperDocDeleteCommentTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperDocDeleteCommentType) throws -> JSON { let output = [ - "session_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.sessionId), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> MobileSessionLogInfo { + public func deserialize(_ json: JSON) throws -> PaperDocDeleteCommentType { switch json { - case .dictionary(let dict): - let sessionId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["session_id"] ?? .null) - return MobileSessionLogInfo(sessionId: sessionId) - default: - throw JSONSerializerError.deserializeError(type: MobileSessionLogInfo.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return PaperDocDeleteCommentType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: PaperDocDeleteCommentType.self, json: json) } } } - /// Namespace relative path details. - public class NamespaceRelativePathLogInfo: CustomStringConvertible, JSONRepresentable { - /// Namespace ID. - public let nsId: String? - /// A path relative to the specified namespace ID. - public let relativePath: String? - /// True if the namespace is shared. - public let isSharedNamespace: Bool? - public init(nsId: String? = nil, relativePath: String? = nil, isSharedNamespace: Bool? = nil) { - nullableValidator(stringValidator())(nsId) - self.nsId = nsId - nullableValidator(stringValidator())(relativePath) - self.relativePath = relativePath - self.isSharedNamespace = isSharedNamespace + /// Archived Paper doc. + public class PaperDocDeletedDetails: CustomStringConvertible, JSONRepresentable { + /// Event unique identifier. + public let eventUuid: String + public init(eventUuid: String) { + stringValidator()(eventUuid) + self.eventUuid = eventUuid } func json() throws -> JSON { - try NamespaceRelativePathLogInfoSerializer().serialize(self) + try PaperDocDeletedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try NamespaceRelativePathLogInfoSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocDeletedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for NamespaceRelativePathLogInfo: \(error)" + return "Failed to generate description for PaperDocDeletedDetails: \(error)" } } } - - public class NamespaceRelativePathLogInfoSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: NamespaceRelativePathLogInfo) throws -> JSON { + public class PaperDocDeletedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperDocDeletedDetails) throws -> JSON { let output = [ - "ns_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.nsId), - "relative_path": try NullableSerializer(Serialization._StringSerializer).serialize(value.relativePath), - "is_shared_namespace": try NullableSerializer(Serialization._BoolSerializer).serialize(value.isSharedNamespace), + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> NamespaceRelativePathLogInfo { + public func deserialize(_ json: JSON) throws -> PaperDocDeletedDetails { switch json { - case .dictionary(let dict): - let nsId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["ns_id"] ?? .null) - let relativePath = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["relative_path"] ?? .null) - let isSharedNamespace = try NullableSerializer(Serialization._BoolSerializer).deserialize(dict["is_shared_namespace"] ?? .null) - return NamespaceRelativePathLogInfo(nsId: nsId, relativePath: relativePath, isSharedNamespace: isSharedNamespace) - default: - throw JSONSerializerError.deserializeError(type: NamespaceRelativePathLogInfo.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + return PaperDocDeletedDetails(eventUuid: eventUuid) + default: + throw JSONSerializerError.deserializeError(type: PaperDocDeletedDetails.self, json: json) } } } - /// Enabled/disabled network control. - public class NetworkControlChangePolicyDetails: CustomStringConvertible, JSONRepresentable { - /// New network control policy. - public let newValue: TeamLog.NetworkControlPolicy - /// Previous network control policy. Might be missing due to historical data gap. - public let previousValue: TeamLog.NetworkControlPolicy? - public init(newValue: TeamLog.NetworkControlPolicy, previousValue: TeamLog.NetworkControlPolicy? = nil) { - self.newValue = newValue - self.previousValue = previousValue + /// The PaperDocDeletedType struct + public class PaperDocDeletedType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ } func json() throws -> JSON { - try NetworkControlChangePolicyDetailsSerializer().serialize(self) + try PaperDocDeletedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try NetworkControlChangePolicyDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocDeletedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for NetworkControlChangePolicyDetails: \(error)" + return "Failed to generate description for PaperDocDeletedType: \(error)" } } } - - public class NetworkControlChangePolicyDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: NetworkControlChangePolicyDetails) throws -> JSON { + public class PaperDocDeletedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperDocDeletedType) throws -> JSON { let output = [ - "new_value": try TeamLog.NetworkControlPolicySerializer().serialize(value.newValue), - "previous_value": try NullableSerializer(TeamLog.NetworkControlPolicySerializer()).serialize(value.previousValue), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> NetworkControlChangePolicyDetails { + public func deserialize(_ json: JSON) throws -> PaperDocDeletedType { switch json { - case .dictionary(let dict): - let newValue = try TeamLog.NetworkControlPolicySerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try NullableSerializer(TeamLog.NetworkControlPolicySerializer()).deserialize(dict["previous_value"] ?? .null) - return NetworkControlChangePolicyDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: NetworkControlChangePolicyDetails.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return PaperDocDeletedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: PaperDocDeletedType.self, json: json) } } } - /// The NetworkControlChangePolicyType struct - public class NetworkControlChangePolicyType: CustomStringConvertible, JSONRepresentable { - /// (no description) - public let description_: String - public init(description_: String) { - stringValidator()(description_) - self.description_ = description_ + /// Downloaded Paper doc in specific format. + public class PaperDocDownloadDetails: CustomStringConvertible, JSONRepresentable { + /// Event unique identifier. + public let eventUuid: String + /// Export file format. + public let exportFileFormat: TeamLog.PaperDownloadFormat + public init(eventUuid: String, exportFileFormat: TeamLog.PaperDownloadFormat) { + stringValidator()(eventUuid) + self.eventUuid = eventUuid + self.exportFileFormat = exportFileFormat } func json() throws -> JSON { - try NetworkControlChangePolicyTypeSerializer().serialize(self) + try PaperDocDownloadDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try NetworkControlChangePolicyTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocDownloadDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for NetworkControlChangePolicyType: \(error)" + return "Failed to generate description for PaperDocDownloadDetails: \(error)" } } } - - public class NetworkControlChangePolicyTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: NetworkControlChangePolicyType) throws -> JSON { + public class PaperDocDownloadDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperDocDownloadDetails) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + "export_file_format": try TeamLog.PaperDownloadFormatSerializer().serialize(value.exportFileFormat), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> NetworkControlChangePolicyType { + public func deserialize(_ json: JSON) throws -> PaperDocDownloadDetails { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return NetworkControlChangePolicyType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: NetworkControlChangePolicyType.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + let exportFileFormat = try TeamLog.PaperDownloadFormatSerializer().deserialize(dict["export_file_format"] ?? .null) + return PaperDocDownloadDetails(eventUuid: eventUuid, exportFileFormat: exportFileFormat) + default: + throw JSONSerializerError.deserializeError(type: PaperDocDownloadDetails.self, json: json) } } } - /// Network control policy - public enum NetworkControlPolicy: CustomStringConvertible, JSONRepresentable { - /// An unspecified error. - case disabled - /// An unspecified error. - case enabled - /// An unspecified error. - case other + /// The PaperDocDownloadType struct + public class PaperDocDownloadType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } func json() throws -> JSON { - try NetworkControlPolicySerializer().serialize(self) + try PaperDocDownloadTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try NetworkControlPolicySerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocDownloadTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for NetworkControlPolicy: \(error)" + return "Failed to generate description for PaperDocDownloadType: \(error)" } } } - - public class NetworkControlPolicySerializer: JSONSerializer { - public init() {} - public func serialize(_ value: NetworkControlPolicy) throws -> JSON { - switch value { - case .disabled: - var d = [String: JSON]() - d[".tag"] = .str("disabled") - return .dictionary(d) - case .enabled: - var d = [String: JSON]() - d[".tag"] = .str("enabled") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) - } + public class PaperDocDownloadTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperDocDownloadType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> NetworkControlPolicy { + public func deserialize(_ json: JSON) throws -> PaperDocDownloadType { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "disabled": - return NetworkControlPolicy.disabled - case "enabled": - return NetworkControlPolicy.enabled - case "other": - return NetworkControlPolicy.other + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return PaperDocDownloadType(description_: description_) default: - return NetworkControlPolicy.other - } - default: - throw JSONSerializerError.deserializeError(type: NetworkControlPolicy.self, json: json) + throw JSONSerializerError.deserializeError(type: PaperDocDownloadType.self, json: json) } } } - /// Report created: Links created with no expiration. - public class NoExpirationLinkGenCreateReportDetails: CustomStringConvertible, JSONRepresentable { - /// Report start date. - public let startDate: Date - /// Report end date. - public let endDate: Date - public init(startDate: Date, endDate: Date) { - self.startDate = startDate - self.endDate = endDate + /// Edited Paper doc comment. + public class PaperDocEditCommentDetails: CustomStringConvertible, JSONRepresentable { + /// Event unique identifier. + public let eventUuid: String + /// Comment text. + public let commentText: String? + public init(eventUuid: String, commentText: String? = nil) { + stringValidator()(eventUuid) + self.eventUuid = eventUuid + nullableValidator(stringValidator())(commentText) + self.commentText = commentText } func json() throws -> JSON { - try NoExpirationLinkGenCreateReportDetailsSerializer().serialize(self) + try PaperDocEditCommentDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try NoExpirationLinkGenCreateReportDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocEditCommentDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for NoExpirationLinkGenCreateReportDetails: \(error)" + return "Failed to generate description for PaperDocEditCommentDetails: \(error)" } } } - - public class NoExpirationLinkGenCreateReportDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: NoExpirationLinkGenCreateReportDetails) throws -> JSON { + public class PaperDocEditCommentDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperDocEditCommentDetails) throws -> JSON { let output = [ - "start_date": try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").serialize(value.startDate), - "end_date": try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").serialize(value.endDate), + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + "comment_text": try NullableSerializer(Serialization._StringSerializer).serialize(value.commentText), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> NoExpirationLinkGenCreateReportDetails { + public func deserialize(_ json: JSON) throws -> PaperDocEditCommentDetails { switch json { - case .dictionary(let dict): - let startDate = try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").deserialize(dict["start_date"] ?? .null) - let endDate = try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").deserialize(dict["end_date"] ?? .null) - return NoExpirationLinkGenCreateReportDetails(startDate: startDate, endDate: endDate) - default: - throw JSONSerializerError.deserializeError(type: NoExpirationLinkGenCreateReportDetails.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + let commentText = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["comment_text"] ?? .null) + return PaperDocEditCommentDetails(eventUuid: eventUuid, commentText: commentText) + default: + throw JSONSerializerError.deserializeError(type: PaperDocEditCommentDetails.self, json: json) } } } - /// The NoExpirationLinkGenCreateReportType struct - public class NoExpirationLinkGenCreateReportType: CustomStringConvertible, JSONRepresentable { + /// The PaperDocEditCommentType struct + public class PaperDocEditCommentType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -39470,81 +52411,78 @@ public class TeamLog { } func json() throws -> JSON { - try NoExpirationLinkGenCreateReportTypeSerializer().serialize(self) + try PaperDocEditCommentTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try NoExpirationLinkGenCreateReportTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocEditCommentTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for NoExpirationLinkGenCreateReportType: \(error)" + return "Failed to generate description for PaperDocEditCommentType: \(error)" } } } - - public class NoExpirationLinkGenCreateReportTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: NoExpirationLinkGenCreateReportType) throws -> JSON { + public class PaperDocEditCommentTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperDocEditCommentType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> NoExpirationLinkGenCreateReportType { + public func deserialize(_ json: JSON) throws -> PaperDocEditCommentType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return NoExpirationLinkGenCreateReportType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: NoExpirationLinkGenCreateReportType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return PaperDocEditCommentType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: PaperDocEditCommentType.self, json: json) } } } - /// Couldn't create report: Links created with no expiration. - public class NoExpirationLinkGenReportFailedDetails: CustomStringConvertible, JSONRepresentable { - /// Failure reason. - public let failureReason: Team.TeamReportFailureReason - public init(failureReason: Team.TeamReportFailureReason) { - self.failureReason = failureReason + /// Edited Paper doc. + public class PaperDocEditDetails: CustomStringConvertible, JSONRepresentable { + /// Event unique identifier. + public let eventUuid: String + public init(eventUuid: String) { + stringValidator()(eventUuid) + self.eventUuid = eventUuid } func json() throws -> JSON { - try NoExpirationLinkGenReportFailedDetailsSerializer().serialize(self) + try PaperDocEditDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try NoExpirationLinkGenReportFailedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocEditDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for NoExpirationLinkGenReportFailedDetails: \(error)" + return "Failed to generate description for PaperDocEditDetails: \(error)" } } } - - public class NoExpirationLinkGenReportFailedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: NoExpirationLinkGenReportFailedDetails) throws -> JSON { + public class PaperDocEditDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperDocEditDetails) throws -> JSON { let output = [ - "failure_reason": try Team.TeamReportFailureReasonSerializer().serialize(value.failureReason), + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> NoExpirationLinkGenReportFailedDetails { + public func deserialize(_ json: JSON) throws -> PaperDocEditDetails { switch json { - case .dictionary(let dict): - let failureReason = try Team.TeamReportFailureReasonSerializer().deserialize(dict["failure_reason"] ?? .null) - return NoExpirationLinkGenReportFailedDetails(failureReason: failureReason) - default: - throw JSONSerializerError.deserializeError(type: NoExpirationLinkGenReportFailedDetails.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + return PaperDocEditDetails(eventUuid: eventUuid) + default: + throw JSONSerializerError.deserializeError(type: PaperDocEditDetails.self, json: json) } } } - /// The NoExpirationLinkGenReportFailedType struct - public class NoExpirationLinkGenReportFailedType: CustomStringConvertible, JSONRepresentable { + /// The PaperDocEditType struct + public class PaperDocEditType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -39553,86 +52491,78 @@ public class TeamLog { } func json() throws -> JSON { - try NoExpirationLinkGenReportFailedTypeSerializer().serialize(self) + try PaperDocEditTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try NoExpirationLinkGenReportFailedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocEditTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for NoExpirationLinkGenReportFailedType: \(error)" + return "Failed to generate description for PaperDocEditType: \(error)" } } } - - public class NoExpirationLinkGenReportFailedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: NoExpirationLinkGenReportFailedType) throws -> JSON { + public class PaperDocEditTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperDocEditType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> NoExpirationLinkGenReportFailedType { + public func deserialize(_ json: JSON) throws -> PaperDocEditType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return NoExpirationLinkGenReportFailedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: NoExpirationLinkGenReportFailedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return PaperDocEditType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: PaperDocEditType.self, json: json) } } } - /// Report created: Links created without passwords. - public class NoPasswordLinkGenCreateReportDetails: CustomStringConvertible, JSONRepresentable { - /// Report start date. - public let startDate: Date - /// Report end date. - public let endDate: Date - public init(startDate: Date, endDate: Date) { - self.startDate = startDate - self.endDate = endDate + /// Followed Paper doc. + public class PaperDocFollowedDetails: CustomStringConvertible, JSONRepresentable { + /// Event unique identifier. + public let eventUuid: String + public init(eventUuid: String) { + stringValidator()(eventUuid) + self.eventUuid = eventUuid } func json() throws -> JSON { - try NoPasswordLinkGenCreateReportDetailsSerializer().serialize(self) + try PaperDocFollowedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try NoPasswordLinkGenCreateReportDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocFollowedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for NoPasswordLinkGenCreateReportDetails: \(error)" + return "Failed to generate description for PaperDocFollowedDetails: \(error)" } } } - - public class NoPasswordLinkGenCreateReportDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: NoPasswordLinkGenCreateReportDetails) throws -> JSON { + public class PaperDocFollowedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperDocFollowedDetails) throws -> JSON { let output = [ - "start_date": try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").serialize(value.startDate), - "end_date": try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").serialize(value.endDate), + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> NoPasswordLinkGenCreateReportDetails { + public func deserialize(_ json: JSON) throws -> PaperDocFollowedDetails { switch json { - case .dictionary(let dict): - let startDate = try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").deserialize(dict["start_date"] ?? .null) - let endDate = try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").deserialize(dict["end_date"] ?? .null) - return NoPasswordLinkGenCreateReportDetails(startDate: startDate, endDate: endDate) - default: - throw JSONSerializerError.deserializeError(type: NoPasswordLinkGenCreateReportDetails.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + return PaperDocFollowedDetails(eventUuid: eventUuid) + default: + throw JSONSerializerError.deserializeError(type: PaperDocFollowedDetails.self, json: json) } } } - /// The NoPasswordLinkGenCreateReportType struct - public class NoPasswordLinkGenCreateReportType: CustomStringConvertible, JSONRepresentable { + /// The PaperDocFollowedType struct + public class PaperDocFollowedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -39641,81 +52571,78 @@ public class TeamLog { } func json() throws -> JSON { - try NoPasswordLinkGenCreateReportTypeSerializer().serialize(self) + try PaperDocFollowedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try NoPasswordLinkGenCreateReportTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocFollowedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for NoPasswordLinkGenCreateReportType: \(error)" + return "Failed to generate description for PaperDocFollowedType: \(error)" } } } - - public class NoPasswordLinkGenCreateReportTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: NoPasswordLinkGenCreateReportType) throws -> JSON { + public class PaperDocFollowedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperDocFollowedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> NoPasswordLinkGenCreateReportType { + public func deserialize(_ json: JSON) throws -> PaperDocFollowedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return NoPasswordLinkGenCreateReportType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: NoPasswordLinkGenCreateReportType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return PaperDocFollowedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: PaperDocFollowedType.self, json: json) } } } - /// Couldn't create report: Links created without passwords. - public class NoPasswordLinkGenReportFailedDetails: CustomStringConvertible, JSONRepresentable { - /// Failure reason. - public let failureReason: Team.TeamReportFailureReason - public init(failureReason: Team.TeamReportFailureReason) { - self.failureReason = failureReason + /// Mentioned user in Paper doc. + public class PaperDocMentionDetails: CustomStringConvertible, JSONRepresentable { + /// Event unique identifier. + public let eventUuid: String + public init(eventUuid: String) { + stringValidator()(eventUuid) + self.eventUuid = eventUuid } func json() throws -> JSON { - try NoPasswordLinkGenReportFailedDetailsSerializer().serialize(self) + try PaperDocMentionDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try NoPasswordLinkGenReportFailedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocMentionDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for NoPasswordLinkGenReportFailedDetails: \(error)" + return "Failed to generate description for PaperDocMentionDetails: \(error)" } } } - - public class NoPasswordLinkGenReportFailedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: NoPasswordLinkGenReportFailedDetails) throws -> JSON { + public class PaperDocMentionDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperDocMentionDetails) throws -> JSON { let output = [ - "failure_reason": try Team.TeamReportFailureReasonSerializer().serialize(value.failureReason), + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> NoPasswordLinkGenReportFailedDetails { + public func deserialize(_ json: JSON) throws -> PaperDocMentionDetails { switch json { - case .dictionary(let dict): - let failureReason = try Team.TeamReportFailureReasonSerializer().deserialize(dict["failure_reason"] ?? .null) - return NoPasswordLinkGenReportFailedDetails(failureReason: failureReason) - default: - throw JSONSerializerError.deserializeError(type: NoPasswordLinkGenReportFailedDetails.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + return PaperDocMentionDetails(eventUuid: eventUuid) + default: + throw JSONSerializerError.deserializeError(type: PaperDocMentionDetails.self, json: json) } } } - /// The NoPasswordLinkGenReportFailedType struct - public class NoPasswordLinkGenReportFailedType: CustomStringConvertible, JSONRepresentable { + /// The PaperDocMentionType struct + public class PaperDocMentionType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -39724,86 +52651,90 @@ public class TeamLog { } func json() throws -> JSON { - try NoPasswordLinkGenReportFailedTypeSerializer().serialize(self) + try PaperDocMentionTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try NoPasswordLinkGenReportFailedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocMentionTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for NoPasswordLinkGenReportFailedType: \(error)" + return "Failed to generate description for PaperDocMentionType: \(error)" } } } - - public class NoPasswordLinkGenReportFailedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: NoPasswordLinkGenReportFailedType) throws -> JSON { + public class PaperDocMentionTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperDocMentionType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> NoPasswordLinkGenReportFailedType { + public func deserialize(_ json: JSON) throws -> PaperDocMentionType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return NoPasswordLinkGenReportFailedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: NoPasswordLinkGenReportFailedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return PaperDocMentionType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: PaperDocMentionType.self, json: json) } } } - /// Report created: Views of links without passwords. - public class NoPasswordLinkViewCreateReportDetails: CustomStringConvertible, JSONRepresentable { - /// Report start date. - public let startDate: Date - /// Report end date. - public let endDate: Date - public init(startDate: Date, endDate: Date) { - self.startDate = startDate - self.endDate = endDate + /// Transferred ownership of Paper doc. + public class PaperDocOwnershipChangedDetails: CustomStringConvertible, JSONRepresentable { + /// Event unique identifier. + public let eventUuid: String + /// Previous owner. + public let oldOwnerUserId: String? + /// New owner. + public let newOwnerUserId: String + public init(eventUuid: String, newOwnerUserId: String, oldOwnerUserId: String? = nil) { + stringValidator()(eventUuid) + self.eventUuid = eventUuid + nullableValidator(stringValidator(minLength: 40, maxLength: 40))(oldOwnerUserId) + self.oldOwnerUserId = oldOwnerUserId + stringValidator(minLength: 40, maxLength: 40)(newOwnerUserId) + self.newOwnerUserId = newOwnerUserId } func json() throws -> JSON { - try NoPasswordLinkViewCreateReportDetailsSerializer().serialize(self) + try PaperDocOwnershipChangedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try NoPasswordLinkViewCreateReportDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocOwnershipChangedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for NoPasswordLinkViewCreateReportDetails: \(error)" + return "Failed to generate description for PaperDocOwnershipChangedDetails: \(error)" } } } - - public class NoPasswordLinkViewCreateReportDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: NoPasswordLinkViewCreateReportDetails) throws -> JSON { + public class PaperDocOwnershipChangedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperDocOwnershipChangedDetails) throws -> JSON { let output = [ - "start_date": try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").serialize(value.startDate), - "end_date": try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").serialize(value.endDate), + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + "new_owner_user_id": try Serialization._StringSerializer.serialize(value.newOwnerUserId), + "old_owner_user_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.oldOwnerUserId), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> NoPasswordLinkViewCreateReportDetails { + public func deserialize(_ json: JSON) throws -> PaperDocOwnershipChangedDetails { switch json { - case .dictionary(let dict): - let startDate = try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").deserialize(dict["start_date"] ?? .null) - let endDate = try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").deserialize(dict["end_date"] ?? .null) - return NoPasswordLinkViewCreateReportDetails(startDate: startDate, endDate: endDate) - default: - throw JSONSerializerError.deserializeError(type: NoPasswordLinkViewCreateReportDetails.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + let newOwnerUserId = try Serialization._StringSerializer.deserialize(dict["new_owner_user_id"] ?? .null) + let oldOwnerUserId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["old_owner_user_id"] ?? .null) + return PaperDocOwnershipChangedDetails(eventUuid: eventUuid, newOwnerUserId: newOwnerUserId, oldOwnerUserId: oldOwnerUserId) + default: + throw JSONSerializerError.deserializeError(type: PaperDocOwnershipChangedDetails.self, json: json) } } } - /// The NoPasswordLinkViewCreateReportType struct - public class NoPasswordLinkViewCreateReportType: CustomStringConvertible, JSONRepresentable { + /// The PaperDocOwnershipChangedType struct + public class PaperDocOwnershipChangedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -39812,81 +52743,78 @@ public class TeamLog { } func json() throws -> JSON { - try NoPasswordLinkViewCreateReportTypeSerializer().serialize(self) + try PaperDocOwnershipChangedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try NoPasswordLinkViewCreateReportTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocOwnershipChangedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for NoPasswordLinkViewCreateReportType: \(error)" + return "Failed to generate description for PaperDocOwnershipChangedType: \(error)" } } } - - public class NoPasswordLinkViewCreateReportTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: NoPasswordLinkViewCreateReportType) throws -> JSON { + public class PaperDocOwnershipChangedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperDocOwnershipChangedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> NoPasswordLinkViewCreateReportType { + public func deserialize(_ json: JSON) throws -> PaperDocOwnershipChangedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return NoPasswordLinkViewCreateReportType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: NoPasswordLinkViewCreateReportType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return PaperDocOwnershipChangedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: PaperDocOwnershipChangedType.self, json: json) } } } - /// Couldn't create report: Views of links without passwords. - public class NoPasswordLinkViewReportFailedDetails: CustomStringConvertible, JSONRepresentable { - /// Failure reason. - public let failureReason: Team.TeamReportFailureReason - public init(failureReason: Team.TeamReportFailureReason) { - self.failureReason = failureReason + /// Requested access to Paper doc. + public class PaperDocRequestAccessDetails: CustomStringConvertible, JSONRepresentable { + /// Event unique identifier. + public let eventUuid: String + public init(eventUuid: String) { + stringValidator()(eventUuid) + self.eventUuid = eventUuid } func json() throws -> JSON { - try NoPasswordLinkViewReportFailedDetailsSerializer().serialize(self) + try PaperDocRequestAccessDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try NoPasswordLinkViewReportFailedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocRequestAccessDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for NoPasswordLinkViewReportFailedDetails: \(error)" + return "Failed to generate description for PaperDocRequestAccessDetails: \(error)" } } } - - public class NoPasswordLinkViewReportFailedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: NoPasswordLinkViewReportFailedDetails) throws -> JSON { + public class PaperDocRequestAccessDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperDocRequestAccessDetails) throws -> JSON { let output = [ - "failure_reason": try Team.TeamReportFailureReasonSerializer().serialize(value.failureReason), + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> NoPasswordLinkViewReportFailedDetails { + public func deserialize(_ json: JSON) throws -> PaperDocRequestAccessDetails { switch json { - case .dictionary(let dict): - let failureReason = try Team.TeamReportFailureReasonSerializer().deserialize(dict["failure_reason"] ?? .null) - return NoPasswordLinkViewReportFailedDetails(failureReason: failureReason) - default: - throw JSONSerializerError.deserializeError(type: NoPasswordLinkViewReportFailedDetails.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + return PaperDocRequestAccessDetails(eventUuid: eventUuid) + default: + throw JSONSerializerError.deserializeError(type: PaperDocRequestAccessDetails.self, json: json) } } } - /// The NoPasswordLinkViewReportFailedType struct - public class NoPasswordLinkViewReportFailedType: CustomStringConvertible, JSONRepresentable { + /// The PaperDocRequestAccessType struct + public class PaperDocRequestAccessType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -39895,232 +52823,164 @@ public class TeamLog { } func json() throws -> JSON { - try NoPasswordLinkViewReportFailedTypeSerializer().serialize(self) + try PaperDocRequestAccessTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try NoPasswordLinkViewReportFailedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocRequestAccessTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for NoPasswordLinkViewReportFailedType: \(error)" + return "Failed to generate description for PaperDocRequestAccessType: \(error)" } } } - - public class NoPasswordLinkViewReportFailedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: NoPasswordLinkViewReportFailedType) throws -> JSON { + public class PaperDocRequestAccessTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperDocRequestAccessType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> NoPasswordLinkViewReportFailedType { + public func deserialize(_ json: JSON) throws -> PaperDocRequestAccessType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return NoPasswordLinkViewReportFailedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: NoPasswordLinkViewReportFailedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return PaperDocRequestAccessType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: PaperDocRequestAccessType.self, json: json) } } } - /// User's logged information. - public class UserLogInfo: CustomStringConvertible, JSONRepresentable { - /// User unique ID. - public let accountId: String? - /// User display name. - public let displayName: String? - /// User email address. - public let email: String? - public init(accountId: String? = nil, displayName: String? = nil, email: String? = nil) { - nullableValidator(stringValidator(minLength: 40, maxLength: 40))(accountId) - self.accountId = accountId - nullableValidator(stringValidator())(displayName) - self.displayName = displayName - nullableValidator(stringValidator(maxLength: 255))(email) - self.email = email + /// Resolved Paper doc comment. + public class PaperDocResolveCommentDetails: CustomStringConvertible, JSONRepresentable { + /// Event unique identifier. + public let eventUuid: String + /// Comment text. + public let commentText: String? + public init(eventUuid: String, commentText: String? = nil) { + stringValidator()(eventUuid) + self.eventUuid = eventUuid + nullableValidator(stringValidator())(commentText) + self.commentText = commentText } func json() throws -> JSON { - try UserLogInfoSerializer().serialize(self) + try PaperDocResolveCommentDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try UserLogInfoSerializer().serialize(self)))" - } catch { - return "Failed to generate description for UserLogInfo: \(error)" - } - } - } - - public class UserLogInfoSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: UserLogInfo) throws -> JSON { - var output = [ - "account_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.accountId), - "display_name": try NullableSerializer(Serialization._StringSerializer).serialize(value.displayName), - "email": try NullableSerializer(Serialization._StringSerializer).serialize(value.email), - ] - switch value { - case let teamMember as TeamLog.TeamMemberLogInfo: - for (k, v) in try Serialization.getFields(TeamLog.TeamMemberLogInfoSerializer().serialize(teamMember)) { - output[k] = v - } - output[".tag"] = .str("team_member") - case let trustedNonTeamMember as TeamLog.TrustedNonTeamMemberLogInfo: - for (k, v) in try Serialization.getFields(TeamLog.TrustedNonTeamMemberLogInfoSerializer().serialize(trustedNonTeamMember)) { - output[k] = v - } - output[".tag"] = .str("trusted_non_team_member") - case let nonTeamMember as TeamLog.NonTeamMemberLogInfo: - for (k, v) in try Serialization.getFields(TeamLog.NonTeamMemberLogInfoSerializer().serialize(nonTeamMember)) { - output[k] = v - } - output[".tag"] = .str("non_team_member") - default: - throw JSONSerializerError.unexpectedSubtype(type: UserLogInfo.self, subtype: value) - } - return .dictionary(output) - } - - public func deserialize(_ json: JSON) throws -> UserLogInfo { - switch json { - case .dictionary(let dict): - let tag = try Serialization.getTag(dict) - switch tag { - case "team_member": - return try TeamLog.TeamMemberLogInfoSerializer().deserialize(json) - case "trusted_non_team_member": - return try TeamLog.TrustedNonTeamMemberLogInfoSerializer().deserialize(json) - case "non_team_member": - return try TeamLog.NonTeamMemberLogInfoSerializer().deserialize(json) - default: - let accountId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["account_id"] ?? .null) - let displayName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["display_name"] ?? .null) - let email = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["email"] ?? .null) - return UserLogInfo(accountId: accountId, displayName: displayName, email: email) - } - default: - throw JSONSerializerError.deserializeError(type: UserLogInfo.self, json: json) - } - } - } - - /// Non team member's logged information. - public class NonTeamMemberLogInfo: TeamLog.UserLogInfo { - public override var description: String { - do { - return "\(SerializeUtil.prepareJSONForSerialization(try NonTeamMemberLogInfoSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocResolveCommentDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for NonTeamMemberLogInfo: \(error)" + return "Failed to generate description for PaperDocResolveCommentDetails: \(error)" } } } - - public class NonTeamMemberLogInfoSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: NonTeamMemberLogInfo) throws -> JSON { + public class PaperDocResolveCommentDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperDocResolveCommentDetails) throws -> JSON { let output = [ - "account_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.accountId), - "display_name": try NullableSerializer(Serialization._StringSerializer).serialize(value.displayName), - "email": try NullableSerializer(Serialization._StringSerializer).serialize(value.email), + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + "comment_text": try NullableSerializer(Serialization._StringSerializer).serialize(value.commentText), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> NonTeamMemberLogInfo { + public func deserialize(_ json: JSON) throws -> PaperDocResolveCommentDetails { switch json { - case .dictionary(let dict): - let accountId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["account_id"] ?? .null) - let displayName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["display_name"] ?? .null) - let email = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["email"] ?? .null) - return NonTeamMemberLogInfo(accountId: accountId, displayName: displayName, email: email) - default: - throw JSONSerializerError.deserializeError(type: NonTeamMemberLogInfo.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + let commentText = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["comment_text"] ?? .null) + return PaperDocResolveCommentDetails(eventUuid: eventUuid, commentText: commentText) + default: + throw JSONSerializerError.deserializeError(type: PaperDocResolveCommentDetails.self, json: json) } } } - /// The email to which the request was sent - public class NonTrustedTeamDetails: CustomStringConvertible, JSONRepresentable { - /// The email to which the request was sent. - public let team: String - public init(team: String) { - stringValidator()(team) - self.team = team + /// The PaperDocResolveCommentType struct + public class PaperDocResolveCommentType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ } func json() throws -> JSON { - try NonTrustedTeamDetailsSerializer().serialize(self) + try PaperDocResolveCommentTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try NonTrustedTeamDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocResolveCommentTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for NonTrustedTeamDetails: \(error)" + return "Failed to generate description for PaperDocResolveCommentType: \(error)" } } } - - public class NonTrustedTeamDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: NonTrustedTeamDetails) throws -> JSON { + public class PaperDocResolveCommentTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperDocResolveCommentType) throws -> JSON { let output = [ - "team": try Serialization._StringSerializer.serialize(value.team), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> NonTrustedTeamDetails { + public func deserialize(_ json: JSON) throws -> PaperDocResolveCommentType { switch json { - case .dictionary(let dict): - let team = try Serialization._StringSerializer.deserialize(dict["team"] ?? .null) - return NonTrustedTeamDetails(team: team) - default: - throw JSONSerializerError.deserializeError(type: NonTrustedTeamDetails.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return PaperDocResolveCommentType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: PaperDocResolveCommentType.self, json: json) } } } - /// Changed Paper doc to invite-only. - public class NoteAclInviteOnlyDetails: CustomStringConvertible, JSONRepresentable { + /// Restored Paper doc to previous version. + public class PaperDocRevertDetails: CustomStringConvertible, JSONRepresentable { + /// Event unique identifier. + public let eventUuid: String + public init(eventUuid: String) { + stringValidator()(eventUuid) + self.eventUuid = eventUuid + } + func json() throws -> JSON { - try NoteAclInviteOnlyDetailsSerializer().serialize(self) + try PaperDocRevertDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try NoteAclInviteOnlyDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocRevertDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for NoteAclInviteOnlyDetails: \(error)" + return "Failed to generate description for PaperDocRevertDetails: \(error)" } } } - - public class NoteAclInviteOnlyDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: NoteAclInviteOnlyDetails) throws -> JSON { - let output = [String: JSON]() + public class PaperDocRevertDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperDocRevertDetails) throws -> JSON { + let output = [ + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> NoteAclInviteOnlyDetails { + public func deserialize(_ json: JSON) throws -> PaperDocRevertDetails { switch json { - case .dictionary: - return NoteAclInviteOnlyDetails() - default: - throw JSONSerializerError.deserializeError(type: NoteAclInviteOnlyDetails.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + return PaperDocRevertDetails(eventUuid: eventUuid) + default: + throw JSONSerializerError.deserializeError(type: PaperDocRevertDetails.self, json: json) } } } - /// The NoteAclInviteOnlyType struct - public class NoteAclInviteOnlyType: CustomStringConvertible, JSONRepresentable { + /// The PaperDocRevertType struct + public class PaperDocRevertType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -40129,72 +52989,78 @@ public class TeamLog { } func json() throws -> JSON { - try NoteAclInviteOnlyTypeSerializer().serialize(self) + try PaperDocRevertTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try NoteAclInviteOnlyTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocRevertTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for NoteAclInviteOnlyType: \(error)" + return "Failed to generate description for PaperDocRevertType: \(error)" } } } - - public class NoteAclInviteOnlyTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: NoteAclInviteOnlyType) throws -> JSON { + public class PaperDocRevertTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperDocRevertType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> NoteAclInviteOnlyType { + public func deserialize(_ json: JSON) throws -> PaperDocRevertType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return NoteAclInviteOnlyType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: NoteAclInviteOnlyType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return PaperDocRevertType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: PaperDocRevertType.self, json: json) } } } - /// Changed Paper doc to link-accessible. - public class NoteAclLinkDetails: CustomStringConvertible, JSONRepresentable { + /// Shared Paper doc via Slack. + public class PaperDocSlackShareDetails: CustomStringConvertible, JSONRepresentable { + /// Event unique identifier. + public let eventUuid: String + public init(eventUuid: String) { + stringValidator()(eventUuid) + self.eventUuid = eventUuid + } + func json() throws -> JSON { - try NoteAclLinkDetailsSerializer().serialize(self) + try PaperDocSlackShareDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try NoteAclLinkDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocSlackShareDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for NoteAclLinkDetails: \(error)" + return "Failed to generate description for PaperDocSlackShareDetails: \(error)" } } } - - public class NoteAclLinkDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: NoteAclLinkDetails) throws -> JSON { - let output = [String: JSON]() + public class PaperDocSlackShareDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperDocSlackShareDetails) throws -> JSON { + let output = [ + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> NoteAclLinkDetails { + public func deserialize(_ json: JSON) throws -> PaperDocSlackShareDetails { switch json { - case .dictionary: - return NoteAclLinkDetails() - default: - throw JSONSerializerError.deserializeError(type: NoteAclLinkDetails.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + return PaperDocSlackShareDetails(eventUuid: eventUuid) + default: + throw JSONSerializerError.deserializeError(type: PaperDocSlackShareDetails.self, json: json) } } } - /// The NoteAclLinkType struct - public class NoteAclLinkType: CustomStringConvertible, JSONRepresentable { + /// The PaperDocSlackShareType struct + public class PaperDocSlackShareType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -40203,72 +53069,78 @@ public class TeamLog { } func json() throws -> JSON { - try NoteAclLinkTypeSerializer().serialize(self) + try PaperDocSlackShareTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try NoteAclLinkTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocSlackShareTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for NoteAclLinkType: \(error)" + return "Failed to generate description for PaperDocSlackShareType: \(error)" } } } - - public class NoteAclLinkTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: NoteAclLinkType) throws -> JSON { + public class PaperDocSlackShareTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperDocSlackShareType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> NoteAclLinkType { + public func deserialize(_ json: JSON) throws -> PaperDocSlackShareType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return NoteAclLinkType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: NoteAclLinkType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return PaperDocSlackShareType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: PaperDocSlackShareType.self, json: json) } } } - /// Changed Paper doc to link-accessible for team. - public class NoteAclTeamLinkDetails: CustomStringConvertible, JSONRepresentable { + /// Shared Paper doc with users and/or groups. + public class PaperDocTeamInviteDetails: CustomStringConvertible, JSONRepresentable { + /// Event unique identifier. + public let eventUuid: String + public init(eventUuid: String) { + stringValidator()(eventUuid) + self.eventUuid = eventUuid + } + func json() throws -> JSON { - try NoteAclTeamLinkDetailsSerializer().serialize(self) + try PaperDocTeamInviteDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try NoteAclTeamLinkDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocTeamInviteDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for NoteAclTeamLinkDetails: \(error)" + return "Failed to generate description for PaperDocTeamInviteDetails: \(error)" } } } - - public class NoteAclTeamLinkDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: NoteAclTeamLinkDetails) throws -> JSON { - let output = [String: JSON]() + public class PaperDocTeamInviteDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperDocTeamInviteDetails) throws -> JSON { + let output = [ + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> NoteAclTeamLinkDetails { + public func deserialize(_ json: JSON) throws -> PaperDocTeamInviteDetails { switch json { - case .dictionary: - return NoteAclTeamLinkDetails() - default: - throw JSONSerializerError.deserializeError(type: NoteAclTeamLinkDetails.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + return PaperDocTeamInviteDetails(eventUuid: eventUuid) + default: + throw JSONSerializerError.deserializeError(type: PaperDocTeamInviteDetails.self, json: json) } } } - /// The NoteAclTeamLinkType struct - public class NoteAclTeamLinkType: CustomStringConvertible, JSONRepresentable { + /// The PaperDocTeamInviteType struct + public class PaperDocTeamInviteType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -40277,72 +53149,78 @@ public class TeamLog { } func json() throws -> JSON { - try NoteAclTeamLinkTypeSerializer().serialize(self) + try PaperDocTeamInviteTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try NoteAclTeamLinkTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocTeamInviteTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for NoteAclTeamLinkType: \(error)" + return "Failed to generate description for PaperDocTeamInviteType: \(error)" } } } - - public class NoteAclTeamLinkTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: NoteAclTeamLinkType) throws -> JSON { + public class PaperDocTeamInviteTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperDocTeamInviteType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> NoteAclTeamLinkType { + public func deserialize(_ json: JSON) throws -> PaperDocTeamInviteType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return NoteAclTeamLinkType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: NoteAclTeamLinkType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return PaperDocTeamInviteType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: PaperDocTeamInviteType.self, json: json) } } } - /// Shared received Paper doc. - public class NoteShareReceiveDetails: CustomStringConvertible, JSONRepresentable { + /// Deleted Paper doc. + public class PaperDocTrashedDetails: CustomStringConvertible, JSONRepresentable { + /// Event unique identifier. + public let eventUuid: String + public init(eventUuid: String) { + stringValidator()(eventUuid) + self.eventUuid = eventUuid + } + func json() throws -> JSON { - try NoteShareReceiveDetailsSerializer().serialize(self) + try PaperDocTrashedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try NoteShareReceiveDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocTrashedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for NoteShareReceiveDetails: \(error)" + return "Failed to generate description for PaperDocTrashedDetails: \(error)" } } } - - public class NoteShareReceiveDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: NoteShareReceiveDetails) throws -> JSON { - let output = [String: JSON]() + public class PaperDocTrashedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperDocTrashedDetails) throws -> JSON { + let output = [ + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> NoteShareReceiveDetails { + public func deserialize(_ json: JSON) throws -> PaperDocTrashedDetails { switch json { - case .dictionary: - return NoteShareReceiveDetails() - default: - throw JSONSerializerError.deserializeError(type: NoteShareReceiveDetails.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + return PaperDocTrashedDetails(eventUuid: eventUuid) + default: + throw JSONSerializerError.deserializeError(type: PaperDocTrashedDetails.self, json: json) } } } - /// The NoteShareReceiveType struct - public class NoteShareReceiveType: CustomStringConvertible, JSONRepresentable { + /// The PaperDocTrashedType struct + public class PaperDocTrashedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -40351,72 +53229,84 @@ public class TeamLog { } func json() throws -> JSON { - try NoteShareReceiveTypeSerializer().serialize(self) + try PaperDocTrashedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try NoteShareReceiveTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocTrashedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for NoteShareReceiveType: \(error)" + return "Failed to generate description for PaperDocTrashedType: \(error)" } } } - - public class NoteShareReceiveTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: NoteShareReceiveType) throws -> JSON { + public class PaperDocTrashedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperDocTrashedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> NoteShareReceiveType { + public func deserialize(_ json: JSON) throws -> PaperDocTrashedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return NoteShareReceiveType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: NoteShareReceiveType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return PaperDocTrashedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: PaperDocTrashedType.self, json: json) } } } - /// Shared Paper doc. - public class NoteSharedDetails: CustomStringConvertible, JSONRepresentable { + /// Unresolved Paper doc comment. + public class PaperDocUnresolveCommentDetails: CustomStringConvertible, JSONRepresentable { + /// Event unique identifier. + public let eventUuid: String + /// Comment text. + public let commentText: String? + public init(eventUuid: String, commentText: String? = nil) { + stringValidator()(eventUuid) + self.eventUuid = eventUuid + nullableValidator(stringValidator())(commentText) + self.commentText = commentText + } + func json() throws -> JSON { - try NoteSharedDetailsSerializer().serialize(self) + try PaperDocUnresolveCommentDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try NoteSharedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocUnresolveCommentDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for NoteSharedDetails: \(error)" + return "Failed to generate description for PaperDocUnresolveCommentDetails: \(error)" } } } - - public class NoteSharedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: NoteSharedDetails) throws -> JSON { - let output = [String: JSON]() + public class PaperDocUnresolveCommentDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperDocUnresolveCommentDetails) throws -> JSON { + let output = [ + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + "comment_text": try NullableSerializer(Serialization._StringSerializer).serialize(value.commentText), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> NoteSharedDetails { + public func deserialize(_ json: JSON) throws -> PaperDocUnresolveCommentDetails { switch json { - case .dictionary: - return NoteSharedDetails() - default: - throw JSONSerializerError.deserializeError(type: NoteSharedDetails.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + let commentText = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["comment_text"] ?? .null) + return PaperDocUnresolveCommentDetails(eventUuid: eventUuid, commentText: commentText) + default: + throw JSONSerializerError.deserializeError(type: PaperDocUnresolveCommentDetails.self, json: json) } } } - /// The NoteSharedType struct - public class NoteSharedType: CustomStringConvertible, JSONRepresentable { + /// The PaperDocUnresolveCommentType struct + public class PaperDocUnresolveCommentType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -40425,81 +53315,78 @@ public class TeamLog { } func json() throws -> JSON { - try NoteSharedTypeSerializer().serialize(self) + try PaperDocUnresolveCommentTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try NoteSharedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocUnresolveCommentTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for NoteSharedType: \(error)" + return "Failed to generate description for PaperDocUnresolveCommentType: \(error)" } } } - - public class NoteSharedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: NoteSharedType) throws -> JSON { + public class PaperDocUnresolveCommentTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperDocUnresolveCommentType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> NoteSharedType { + public func deserialize(_ json: JSON) throws -> PaperDocUnresolveCommentType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return NoteSharedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: NoteSharedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return PaperDocUnresolveCommentType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: PaperDocUnresolveCommentType.self, json: json) } } } - /// Added a label. - public class ObjectLabelAddedDetails: CustomStringConvertible, JSONRepresentable { - /// Labels mark a file or folder. - public let labelType: TeamLog.LabelType - public init(labelType: TeamLog.LabelType) { - self.labelType = labelType + /// Restored Paper doc. + public class PaperDocUntrashedDetails: CustomStringConvertible, JSONRepresentable { + /// Event unique identifier. + public let eventUuid: String + public init(eventUuid: String) { + stringValidator()(eventUuid) + self.eventUuid = eventUuid } func json() throws -> JSON { - try ObjectLabelAddedDetailsSerializer().serialize(self) + try PaperDocUntrashedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ObjectLabelAddedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocUntrashedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for ObjectLabelAddedDetails: \(error)" + return "Failed to generate description for PaperDocUntrashedDetails: \(error)" } } } - - public class ObjectLabelAddedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ObjectLabelAddedDetails) throws -> JSON { + public class PaperDocUntrashedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperDocUntrashedDetails) throws -> JSON { let output = [ - "label_type": try TeamLog.LabelTypeSerializer().serialize(value.labelType), + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ObjectLabelAddedDetails { + public func deserialize(_ json: JSON) throws -> PaperDocUntrashedDetails { switch json { - case .dictionary(let dict): - let labelType = try TeamLog.LabelTypeSerializer().deserialize(dict["label_type"] ?? .null) - return ObjectLabelAddedDetails(labelType: labelType) - default: - throw JSONSerializerError.deserializeError(type: ObjectLabelAddedDetails.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + return PaperDocUntrashedDetails(eventUuid: eventUuid) + default: + throw JSONSerializerError.deserializeError(type: PaperDocUntrashedDetails.self, json: json) } } } - /// The ObjectLabelAddedType struct - public class ObjectLabelAddedType: CustomStringConvertible, JSONRepresentable { + /// The PaperDocUntrashedType struct + public class PaperDocUntrashedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -40508,81 +53395,78 @@ public class TeamLog { } func json() throws -> JSON { - try ObjectLabelAddedTypeSerializer().serialize(self) + try PaperDocUntrashedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ObjectLabelAddedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocUntrashedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for ObjectLabelAddedType: \(error)" + return "Failed to generate description for PaperDocUntrashedType: \(error)" } } } - - public class ObjectLabelAddedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ObjectLabelAddedType) throws -> JSON { + public class PaperDocUntrashedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperDocUntrashedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ObjectLabelAddedType { + public func deserialize(_ json: JSON) throws -> PaperDocUntrashedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return ObjectLabelAddedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: ObjectLabelAddedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return PaperDocUntrashedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: PaperDocUntrashedType.self, json: json) } } } - /// Removed a label. - public class ObjectLabelRemovedDetails: CustomStringConvertible, JSONRepresentable { - /// Labels mark a file or folder. - public let labelType: TeamLog.LabelType - public init(labelType: TeamLog.LabelType) { - self.labelType = labelType + /// Viewed Paper doc. + public class PaperDocViewDetails: CustomStringConvertible, JSONRepresentable { + /// Event unique identifier. + public let eventUuid: String + public init(eventUuid: String) { + stringValidator()(eventUuid) + self.eventUuid = eventUuid } func json() throws -> JSON { - try ObjectLabelRemovedDetailsSerializer().serialize(self) + try PaperDocViewDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ObjectLabelRemovedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocViewDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for ObjectLabelRemovedDetails: \(error)" + return "Failed to generate description for PaperDocViewDetails: \(error)" } } } - - public class ObjectLabelRemovedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ObjectLabelRemovedDetails) throws -> JSON { + public class PaperDocViewDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperDocViewDetails) throws -> JSON { let output = [ - "label_type": try TeamLog.LabelTypeSerializer().serialize(value.labelType), + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ObjectLabelRemovedDetails { + public func deserialize(_ json: JSON) throws -> PaperDocViewDetails { switch json { - case .dictionary(let dict): - let labelType = try TeamLog.LabelTypeSerializer().deserialize(dict["label_type"] ?? .null) - return ObjectLabelRemovedDetails(labelType: labelType) - default: - throw JSONSerializerError.deserializeError(type: ObjectLabelRemovedDetails.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + return PaperDocViewDetails(eventUuid: eventUuid) + default: + throw JSONSerializerError.deserializeError(type: PaperDocViewDetails.self, json: json) } } } - /// The ObjectLabelRemovedType struct - public class ObjectLabelRemovedType: CustomStringConvertible, JSONRepresentable { + /// The PaperDocViewType struct + public class PaperDocViewType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -40591,155 +53475,190 @@ public class TeamLog { } func json() throws -> JSON { - try ObjectLabelRemovedTypeSerializer().serialize(self) + try PaperDocViewTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ObjectLabelRemovedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocViewTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for ObjectLabelRemovedType: \(error)" + return "Failed to generate description for PaperDocViewType: \(error)" } } } - - public class ObjectLabelRemovedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ObjectLabelRemovedType) throws -> JSON { + public class PaperDocViewTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperDocViewType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ObjectLabelRemovedType { + public func deserialize(_ json: JSON) throws -> PaperDocViewType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return ObjectLabelRemovedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: ObjectLabelRemovedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return PaperDocViewType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: PaperDocViewType.self, json: json) } } } - /// Updated a label's value. - public class ObjectLabelUpdatedValueDetails: CustomStringConvertible, JSONRepresentable { - /// Labels mark a file or folder. - public let labelType: TeamLog.LabelType - public init(labelType: TeamLog.LabelType) { - self.labelType = labelType + /// Paper document's logged information. + public class PaperDocumentLogInfo: CustomStringConvertible, JSONRepresentable { + /// Papers document Id. + public let docId: String + /// Paper document title. + public let docTitle: String + public init(docId: String, docTitle: String) { + stringValidator()(docId) + self.docId = docId + stringValidator()(docTitle) + self.docTitle = docTitle } func json() throws -> JSON { - try ObjectLabelUpdatedValueDetailsSerializer().serialize(self) + try PaperDocumentLogInfoSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ObjectLabelUpdatedValueDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocumentLogInfoSerializer().serialize(self)))" } catch { - return "Failed to generate description for ObjectLabelUpdatedValueDetails: \(error)" + return "Failed to generate description for PaperDocumentLogInfo: \(error)" } } } - - public class ObjectLabelUpdatedValueDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ObjectLabelUpdatedValueDetails) throws -> JSON { + public class PaperDocumentLogInfoSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperDocumentLogInfo) throws -> JSON { let output = [ - "label_type": try TeamLog.LabelTypeSerializer().serialize(value.labelType), + "doc_id": try Serialization._StringSerializer.serialize(value.docId), + "doc_title": try Serialization._StringSerializer.serialize(value.docTitle), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ObjectLabelUpdatedValueDetails { + public func deserialize(_ json: JSON) throws -> PaperDocumentLogInfo { switch json { - case .dictionary(let dict): - let labelType = try TeamLog.LabelTypeSerializer().deserialize(dict["label_type"] ?? .null) - return ObjectLabelUpdatedValueDetails(labelType: labelType) - default: - throw JSONSerializerError.deserializeError(type: ObjectLabelUpdatedValueDetails.self, json: json) + case .dictionary(let dict): + let docId = try Serialization._StringSerializer.deserialize(dict["doc_id"] ?? .null) + let docTitle = try Serialization._StringSerializer.deserialize(dict["doc_title"] ?? .null) + return PaperDocumentLogInfo(docId: docId, docTitle: docTitle) + default: + throw JSONSerializerError.deserializeError(type: PaperDocumentLogInfo.self, json: json) } } } - /// The ObjectLabelUpdatedValueType struct - public class ObjectLabelUpdatedValueType: CustomStringConvertible, JSONRepresentable { - /// (no description) - public let description_: String - public init(description_: String) { - stringValidator()(description_) - self.description_ = description_ - } + /// The PaperDownloadFormat union + public enum PaperDownloadFormat: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case docx + /// An unspecified error. + case html + /// An unspecified error. + case markdown + /// An unspecified error. + case pdf + /// An unspecified error. + case other func json() throws -> JSON { - try ObjectLabelUpdatedValueTypeSerializer().serialize(self) + try PaperDownloadFormatSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ObjectLabelUpdatedValueTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperDownloadFormatSerializer().serialize(self)))" } catch { - return "Failed to generate description for ObjectLabelUpdatedValueType: \(error)" + return "Failed to generate description for PaperDownloadFormat: \(error)" } } } - - public class ObjectLabelUpdatedValueTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ObjectLabelUpdatedValueType) throws -> JSON { - let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), - ] - return .dictionary(output) + public class PaperDownloadFormatSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperDownloadFormat) throws -> JSON { + switch value { + case .docx: + var d = [String: JSON]() + d[".tag"] = .str("docx") + return .dictionary(d) + case .html: + var d = [String: JSON]() + d[".tag"] = .str("html") + return .dictionary(d) + case .markdown: + var d = [String: JSON]() + d[".tag"] = .str("markdown") + return .dictionary(d) + case .pdf: + var d = [String: JSON]() + d[".tag"] = .str("pdf") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } } - - public func deserialize(_ json: JSON) throws -> ObjectLabelUpdatedValueType { + public func deserialize(_ json: JSON) throws -> PaperDownloadFormat { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return ObjectLabelUpdatedValueType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: ObjectLabelUpdatedValueType.self, json: json) + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "docx": + return PaperDownloadFormat.docx + case "html": + return PaperDownloadFormat.html + case "markdown": + return PaperDownloadFormat.markdown + case "pdf": + return PaperDownloadFormat.pdf + case "other": + return PaperDownloadFormat.other + default: + return PaperDownloadFormat.other + } + default: + throw JSONSerializerError.deserializeError(type: PaperDownloadFormat.self, json: json) } } } - /// Opened shared Paper doc. - public class OpenNoteSharedDetails: CustomStringConvertible, JSONRepresentable { + /// Added users to Paper-enabled users list. + public class PaperEnabledUsersGroupAdditionDetails: CustomStringConvertible, JSONRepresentable { + func json() throws -> JSON { - try OpenNoteSharedDetailsSerializer().serialize(self) + try PaperEnabledUsersGroupAdditionDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try OpenNoteSharedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperEnabledUsersGroupAdditionDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for OpenNoteSharedDetails: \(error)" + return "Failed to generate description for PaperEnabledUsersGroupAdditionDetails: \(error)" } } } - - public class OpenNoteSharedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: OpenNoteSharedDetails) throws -> JSON { + public class PaperEnabledUsersGroupAdditionDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperEnabledUsersGroupAdditionDetails) throws -> JSON { let output = [String: JSON]() return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> OpenNoteSharedDetails { + public func deserialize(_ json: JSON) throws -> PaperEnabledUsersGroupAdditionDetails { switch json { - case .dictionary: - return OpenNoteSharedDetails() - default: - throw JSONSerializerError.deserializeError(type: OpenNoteSharedDetails.self, json: json) + case .dictionary(_): + return PaperEnabledUsersGroupAdditionDetails() + default: + throw JSONSerializerError.deserializeError(type: PaperEnabledUsersGroupAdditionDetails.self, json: json) } } } - /// The OpenNoteSharedType struct - public class OpenNoteSharedType: CustomStringConvertible, JSONRepresentable { + /// The PaperEnabledUsersGroupAdditionType struct + public class PaperEnabledUsersGroupAdditionType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -40748,156 +53667,149 @@ public class TeamLog { } func json() throws -> JSON { - try OpenNoteSharedTypeSerializer().serialize(self) + try PaperEnabledUsersGroupAdditionTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try OpenNoteSharedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperEnabledUsersGroupAdditionTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for OpenNoteSharedType: \(error)" + return "Failed to generate description for PaperEnabledUsersGroupAdditionType: \(error)" } } } - - public class OpenNoteSharedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: OpenNoteSharedType) throws -> JSON { + public class PaperEnabledUsersGroupAdditionTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperEnabledUsersGroupAdditionType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> OpenNoteSharedType { + public func deserialize(_ json: JSON) throws -> PaperEnabledUsersGroupAdditionType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return OpenNoteSharedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: OpenNoteSharedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return PaperEnabledUsersGroupAdditionType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: PaperEnabledUsersGroupAdditionType.self, json: json) } } } - /// More details about the organization. - public class OrganizationDetails: CustomStringConvertible, JSONRepresentable { - /// The name of the organization. - public let organization: String - public init(organization: String) { - stringValidator()(organization) - self.organization = organization - } + /// Removed users from Paper-enabled users list. + public class PaperEnabledUsersGroupRemovalDetails: CustomStringConvertible, JSONRepresentable { func json() throws -> JSON { - try OrganizationDetailsSerializer().serialize(self) + try PaperEnabledUsersGroupRemovalDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try OrganizationDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperEnabledUsersGroupRemovalDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for OrganizationDetails: \(error)" + return "Failed to generate description for PaperEnabledUsersGroupRemovalDetails: \(error)" } } } - - public class OrganizationDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: OrganizationDetails) throws -> JSON { - let output = [ - "organization": try Serialization._StringSerializer.serialize(value.organization), - ] + public class PaperEnabledUsersGroupRemovalDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperEnabledUsersGroupRemovalDetails) throws -> JSON { + let output = [String: JSON]() return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> OrganizationDetails { + public func deserialize(_ json: JSON) throws -> PaperEnabledUsersGroupRemovalDetails { switch json { - case .dictionary(let dict): - let organization = try Serialization._StringSerializer.deserialize(dict["organization"] ?? .null) - return OrganizationDetails(organization: organization) - default: - throw JSONSerializerError.deserializeError(type: OrganizationDetails.self, json: json) + case .dictionary(_): + return PaperEnabledUsersGroupRemovalDetails() + default: + throw JSONSerializerError.deserializeError(type: PaperEnabledUsersGroupRemovalDetails.self, json: json) } } } - /// The name of the organization - public class OrganizationName: CustomStringConvertible, JSONRepresentable { - /// The name of the organization. - public let organization: String - public init(organization: String) { - stringValidator()(organization) - self.organization = organization + /// The PaperEnabledUsersGroupRemovalType struct + public class PaperEnabledUsersGroupRemovalType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ } func json() throws -> JSON { - try OrganizationNameSerializer().serialize(self) + try PaperEnabledUsersGroupRemovalTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try OrganizationNameSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperEnabledUsersGroupRemovalTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for OrganizationName: \(error)" + return "Failed to generate description for PaperEnabledUsersGroupRemovalType: \(error)" } } } - - public class OrganizationNameSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: OrganizationName) throws -> JSON { + public class PaperEnabledUsersGroupRemovalTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperEnabledUsersGroupRemovalType) throws -> JSON { let output = [ - "organization": try Serialization._StringSerializer.serialize(value.organization), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> OrganizationName { + public func deserialize(_ json: JSON) throws -> PaperEnabledUsersGroupRemovalType { switch json { - case .dictionary(let dict): - let organization = try Serialization._StringSerializer.deserialize(dict["organization"] ?? .null) - return OrganizationName(organization: organization) - default: - throw JSONSerializerError.deserializeError(type: OrganizationName.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return PaperEnabledUsersGroupRemovalType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: PaperEnabledUsersGroupRemovalType.self, json: json) } } } - /// Organized a folder with multi-file organize. - public class OrganizeFolderWithTidyDetails: CustomStringConvertible, JSONRepresentable { + /// Changed Paper external sharing setting to anyone. + public class PaperExternalViewAllowDetails: CustomStringConvertible, JSONRepresentable { + /// Event unique identifier. + public let eventUuid: String + public init(eventUuid: String) { + stringValidator()(eventUuid) + self.eventUuid = eventUuid + } + func json() throws -> JSON { - try OrganizeFolderWithTidyDetailsSerializer().serialize(self) + try PaperExternalViewAllowDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try OrganizeFolderWithTidyDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperExternalViewAllowDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for OrganizeFolderWithTidyDetails: \(error)" + return "Failed to generate description for PaperExternalViewAllowDetails: \(error)" } } } - - public class OrganizeFolderWithTidyDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: OrganizeFolderWithTidyDetails) throws -> JSON { - let output = [String: JSON]() + public class PaperExternalViewAllowDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperExternalViewAllowDetails) throws -> JSON { + let output = [ + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> OrganizeFolderWithTidyDetails { + public func deserialize(_ json: JSON) throws -> PaperExternalViewAllowDetails { switch json { - case .dictionary: - return OrganizeFolderWithTidyDetails() - default: - throw JSONSerializerError.deserializeError(type: OrganizeFolderWithTidyDetails.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + return PaperExternalViewAllowDetails(eventUuid: eventUuid) + default: + throw JSONSerializerError.deserializeError(type: PaperExternalViewAllowDetails.self, json: json) } } } - /// The OrganizeFolderWithTidyType struct - public class OrganizeFolderWithTidyType: CustomStringConvertible, JSONRepresentable { + /// The PaperExternalViewAllowType struct + public class PaperExternalViewAllowType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -40906,358 +53818,330 @@ public class TeamLog { } func json() throws -> JSON { - try OrganizeFolderWithTidyTypeSerializer().serialize(self) + try PaperExternalViewAllowTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try OrganizeFolderWithTidyTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperExternalViewAllowTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for OrganizeFolderWithTidyType: \(error)" + return "Failed to generate description for PaperExternalViewAllowType: \(error)" } } } - - public class OrganizeFolderWithTidyTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: OrganizeFolderWithTidyType) throws -> JSON { + public class PaperExternalViewAllowTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperExternalViewAllowType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> OrganizeFolderWithTidyType { + public func deserialize(_ json: JSON) throws -> PaperExternalViewAllowType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return OrganizeFolderWithTidyType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: OrganizeFolderWithTidyType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return PaperExternalViewAllowType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: PaperExternalViewAllowType.self, json: json) } } } - /// The origin from which the actor performed the action. - public class OriginLogInfo: CustomStringConvertible, JSONRepresentable { - /// Geographic location details. - public let geoLocation: TeamLog.GeoLocationLogInfo? - /// The method that was used to perform the action. - public let accessMethod: TeamLog.AccessMethodLogInfo - public init(accessMethod: TeamLog.AccessMethodLogInfo, geoLocation: TeamLog.GeoLocationLogInfo? = nil) { - self.geoLocation = geoLocation - self.accessMethod = accessMethod + /// Changed Paper external sharing setting to default team. + public class PaperExternalViewDefaultTeamDetails: CustomStringConvertible, JSONRepresentable { + /// Event unique identifier. + public let eventUuid: String + public init(eventUuid: String) { + stringValidator()(eventUuid) + self.eventUuid = eventUuid } func json() throws -> JSON { - try OriginLogInfoSerializer().serialize(self) + try PaperExternalViewDefaultTeamDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try OriginLogInfoSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperExternalViewDefaultTeamDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for OriginLogInfo: \(error)" + return "Failed to generate description for PaperExternalViewDefaultTeamDetails: \(error)" } } } - - public class OriginLogInfoSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: OriginLogInfo) throws -> JSON { + public class PaperExternalViewDefaultTeamDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperExternalViewDefaultTeamDetails) throws -> JSON { let output = [ - "access_method": try TeamLog.AccessMethodLogInfoSerializer().serialize(value.accessMethod), - "geo_location": try NullableSerializer(TeamLog.GeoLocationLogInfoSerializer()).serialize(value.geoLocation), + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> OriginLogInfo { + public func deserialize(_ json: JSON) throws -> PaperExternalViewDefaultTeamDetails { switch json { - case .dictionary(let dict): - let accessMethod = try TeamLog.AccessMethodLogInfoSerializer().deserialize(dict["access_method"] ?? .null) - let geoLocation = try NullableSerializer(TeamLog.GeoLocationLogInfoSerializer()).deserialize(dict["geo_location"] ?? .null) - return OriginLogInfo(accessMethod: accessMethod, geoLocation: geoLocation) - default: - throw JSONSerializerError.deserializeError(type: OriginLogInfo.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + return PaperExternalViewDefaultTeamDetails(eventUuid: eventUuid) + default: + throw JSONSerializerError.deserializeError(type: PaperExternalViewDefaultTeamDetails.self, json: json) } } } - /// Report created: Views of old links. - public class OutdatedLinkViewCreateReportDetails: CustomStringConvertible, JSONRepresentable { - /// Report start date. - public let startDate: Date - /// Report end date. - public let endDate: Date - public init(startDate: Date, endDate: Date) { - self.startDate = startDate - self.endDate = endDate + /// The PaperExternalViewDefaultTeamType struct + public class PaperExternalViewDefaultTeamType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ } func json() throws -> JSON { - try OutdatedLinkViewCreateReportDetailsSerializer().serialize(self) + try PaperExternalViewDefaultTeamTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try OutdatedLinkViewCreateReportDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperExternalViewDefaultTeamTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for OutdatedLinkViewCreateReportDetails: \(error)" + return "Failed to generate description for PaperExternalViewDefaultTeamType: \(error)" } } } - - public class OutdatedLinkViewCreateReportDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: OutdatedLinkViewCreateReportDetails) throws -> JSON { + public class PaperExternalViewDefaultTeamTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperExternalViewDefaultTeamType) throws -> JSON { let output = [ - "start_date": try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").serialize(value.startDate), - "end_date": try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").serialize(value.endDate), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> OutdatedLinkViewCreateReportDetails { + public func deserialize(_ json: JSON) throws -> PaperExternalViewDefaultTeamType { switch json { - case .dictionary(let dict): - let startDate = try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").deserialize(dict["start_date"] ?? .null) - let endDate = try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").deserialize(dict["end_date"] ?? .null) - return OutdatedLinkViewCreateReportDetails(startDate: startDate, endDate: endDate) - default: - throw JSONSerializerError.deserializeError(type: OutdatedLinkViewCreateReportDetails.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return PaperExternalViewDefaultTeamType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: PaperExternalViewDefaultTeamType.self, json: json) } } } - /// The OutdatedLinkViewCreateReportType struct - public class OutdatedLinkViewCreateReportType: CustomStringConvertible, JSONRepresentable { - /// (no description) - public let description_: String - public init(description_: String) { - stringValidator()(description_) - self.description_ = description_ + /// Changed Paper external sharing setting to team-only. + public class PaperExternalViewForbidDetails: CustomStringConvertible, JSONRepresentable { + /// Event unique identifier. + public let eventUuid: String + public init(eventUuid: String) { + stringValidator()(eventUuid) + self.eventUuid = eventUuid } func json() throws -> JSON { - try OutdatedLinkViewCreateReportTypeSerializer().serialize(self) + try PaperExternalViewForbidDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try OutdatedLinkViewCreateReportTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperExternalViewForbidDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for OutdatedLinkViewCreateReportType: \(error)" + return "Failed to generate description for PaperExternalViewForbidDetails: \(error)" } } } - - public class OutdatedLinkViewCreateReportTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: OutdatedLinkViewCreateReportType) throws -> JSON { + public class PaperExternalViewForbidDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperExternalViewForbidDetails) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> OutdatedLinkViewCreateReportType { + public func deserialize(_ json: JSON) throws -> PaperExternalViewForbidDetails { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return OutdatedLinkViewCreateReportType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: OutdatedLinkViewCreateReportType.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + return PaperExternalViewForbidDetails(eventUuid: eventUuid) + default: + throw JSONSerializerError.deserializeError(type: PaperExternalViewForbidDetails.self, json: json) } } } - /// Couldn't create report: Views of old links. - public class OutdatedLinkViewReportFailedDetails: CustomStringConvertible, JSONRepresentable { - /// Failure reason. - public let failureReason: Team.TeamReportFailureReason - public init(failureReason: Team.TeamReportFailureReason) { - self.failureReason = failureReason + /// The PaperExternalViewForbidType struct + public class PaperExternalViewForbidType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ } func json() throws -> JSON { - try OutdatedLinkViewReportFailedDetailsSerializer().serialize(self) + try PaperExternalViewForbidTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try OutdatedLinkViewReportFailedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperExternalViewForbidTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for OutdatedLinkViewReportFailedDetails: \(error)" + return "Failed to generate description for PaperExternalViewForbidType: \(error)" } } } - - public class OutdatedLinkViewReportFailedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: OutdatedLinkViewReportFailedDetails) throws -> JSON { + public class PaperExternalViewForbidTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperExternalViewForbidType) throws -> JSON { let output = [ - "failure_reason": try Team.TeamReportFailureReasonSerializer().serialize(value.failureReason), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> OutdatedLinkViewReportFailedDetails { + public func deserialize(_ json: JSON) throws -> PaperExternalViewForbidType { switch json { - case .dictionary(let dict): - let failureReason = try Team.TeamReportFailureReasonSerializer().deserialize(dict["failure_reason"] ?? .null) - return OutdatedLinkViewReportFailedDetails(failureReason: failureReason) - default: - throw JSONSerializerError.deserializeError(type: OutdatedLinkViewReportFailedDetails.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return PaperExternalViewForbidType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: PaperExternalViewForbidType.self, json: json) } } } - /// The OutdatedLinkViewReportFailedType struct - public class OutdatedLinkViewReportFailedType: CustomStringConvertible, JSONRepresentable { - /// (no description) - public let description_: String - public init(description_: String) { - stringValidator()(description_) - self.description_ = description_ + /// Followed/unfollowed Paper folder. + public class PaperFolderChangeSubscriptionDetails: CustomStringConvertible, JSONRepresentable { + /// Event unique identifier. + public let eventUuid: String + /// New folder subscription level. + public let newSubscriptionLevel: String + /// Previous folder subscription level. Might be missing due to historical data gap. + public let previousSubscriptionLevel: String? + public init(eventUuid: String, newSubscriptionLevel: String, previousSubscriptionLevel: String? = nil) { + stringValidator()(eventUuid) + self.eventUuid = eventUuid + stringValidator()(newSubscriptionLevel) + self.newSubscriptionLevel = newSubscriptionLevel + nullableValidator(stringValidator())(previousSubscriptionLevel) + self.previousSubscriptionLevel = previousSubscriptionLevel } func json() throws -> JSON { - try OutdatedLinkViewReportFailedTypeSerializer().serialize(self) + try PaperFolderChangeSubscriptionDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try OutdatedLinkViewReportFailedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperFolderChangeSubscriptionDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for OutdatedLinkViewReportFailedType: \(error)" + return "Failed to generate description for PaperFolderChangeSubscriptionDetails: \(error)" } } } - - public class OutdatedLinkViewReportFailedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: OutdatedLinkViewReportFailedType) throws -> JSON { + public class PaperFolderChangeSubscriptionDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperFolderChangeSubscriptionDetails) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + "new_subscription_level": try Serialization._StringSerializer.serialize(value.newSubscriptionLevel), + "previous_subscription_level": try NullableSerializer(Serialization._StringSerializer).serialize(value.previousSubscriptionLevel), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> OutdatedLinkViewReportFailedType { + public func deserialize(_ json: JSON) throws -> PaperFolderChangeSubscriptionDetails { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return OutdatedLinkViewReportFailedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: OutdatedLinkViewReportFailedType.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + let newSubscriptionLevel = try Serialization._StringSerializer.deserialize(dict["new_subscription_level"] ?? .null) + let previousSubscriptionLevel = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["previous_subscription_level"] ?? .null) + return PaperFolderChangeSubscriptionDetails(eventUuid: eventUuid, newSubscriptionLevel: newSubscriptionLevel, previousSubscriptionLevel: previousSubscriptionLevel) + default: + throw JSONSerializerError.deserializeError(type: PaperFolderChangeSubscriptionDetails.self, json: json) } } } - /// The PaperAccessType union - public enum PaperAccessType: CustomStringConvertible, JSONRepresentable { - /// An unspecified error. - case commenter - /// An unspecified error. - case editor - /// An unspecified error. - case viewer - /// An unspecified error. - case other + /// The PaperFolderChangeSubscriptionType struct + public class PaperFolderChangeSubscriptionType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } func json() throws -> JSON { - try PaperAccessTypeSerializer().serialize(self) + try PaperFolderChangeSubscriptionTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperAccessTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperFolderChangeSubscriptionTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperAccessType: \(error)" + return "Failed to generate description for PaperFolderChangeSubscriptionType: \(error)" } } } - - public class PaperAccessTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperAccessType) throws -> JSON { - switch value { - case .commenter: - var d = [String: JSON]() - d[".tag"] = .str("commenter") - return .dictionary(d) - case .editor: - var d = [String: JSON]() - d[".tag"] = .str("editor") - return .dictionary(d) - case .viewer: - var d = [String: JSON]() - d[".tag"] = .str("viewer") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) - } + public class PaperFolderChangeSubscriptionTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperFolderChangeSubscriptionType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperAccessType { + public func deserialize(_ json: JSON) throws -> PaperFolderChangeSubscriptionType { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "commenter": - return PaperAccessType.commenter - case "editor": - return PaperAccessType.editor - case "viewer": - return PaperAccessType.viewer - case "other": - return PaperAccessType.other + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return PaperFolderChangeSubscriptionType(description_: description_) default: - return PaperAccessType.other - } - default: - throw JSONSerializerError.deserializeError(type: PaperAccessType.self, json: json) + throw JSONSerializerError.deserializeError(type: PaperFolderChangeSubscriptionType.self, json: json) } } } - /// Exported all team Paper docs. - public class PaperAdminExportStartDetails: CustomStringConvertible, JSONRepresentable { + /// Archived Paper folder. + public class PaperFolderDeletedDetails: CustomStringConvertible, JSONRepresentable { + /// Event unique identifier. + public let eventUuid: String + public init(eventUuid: String) { + stringValidator()(eventUuid) + self.eventUuid = eventUuid + } + func json() throws -> JSON { - try PaperAdminExportStartDetailsSerializer().serialize(self) + try PaperFolderDeletedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperAdminExportStartDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperFolderDeletedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperAdminExportStartDetails: \(error)" + return "Failed to generate description for PaperFolderDeletedDetails: \(error)" } } } - - public class PaperAdminExportStartDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperAdminExportStartDetails) throws -> JSON { - let output = [String: JSON]() + public class PaperFolderDeletedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperFolderDeletedDetails) throws -> JSON { + let output = [ + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperAdminExportStartDetails { + public func deserialize(_ json: JSON) throws -> PaperFolderDeletedDetails { switch json { - case .dictionary: - return PaperAdminExportStartDetails() - default: - throw JSONSerializerError.deserializeError(type: PaperAdminExportStartDetails.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + return PaperFolderDeletedDetails(eventUuid: eventUuid) + default: + throw JSONSerializerError.deserializeError(type: PaperFolderDeletedDetails.self, json: json) } } } - /// The PaperAdminExportStartType struct - public class PaperAdminExportStartType: CustomStringConvertible, JSONRepresentable { + /// The PaperFolderDeletedType struct + public class PaperFolderDeletedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -41266,86 +54150,78 @@ public class TeamLog { } func json() throws -> JSON { - try PaperAdminExportStartTypeSerializer().serialize(self) + try PaperFolderDeletedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperAdminExportStartTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperFolderDeletedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperAdminExportStartType: \(error)" + return "Failed to generate description for PaperFolderDeletedType: \(error)" } } - } - - public class PaperAdminExportStartTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperAdminExportStartType) throws -> JSON { + } + public class PaperFolderDeletedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperFolderDeletedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperAdminExportStartType { + public func deserialize(_ json: JSON) throws -> PaperFolderDeletedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return PaperAdminExportStartType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: PaperAdminExportStartType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return PaperFolderDeletedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: PaperFolderDeletedType.self, json: json) } } } - /// Changed whether Dropbox Paper, when enabled, is deployed to all members or to specific members. - public class PaperChangeDeploymentPolicyDetails: CustomStringConvertible, JSONRepresentable { - /// New Dropbox Paper deployment policy. - public let newValue: TeamPolicies.PaperDeploymentPolicy - /// Previous Dropbox Paper deployment policy. Might be missing due to historical data gap. - public let previousValue: TeamPolicies.PaperDeploymentPolicy? - public init(newValue: TeamPolicies.PaperDeploymentPolicy, previousValue: TeamPolicies.PaperDeploymentPolicy? = nil) { - self.newValue = newValue - self.previousValue = previousValue + /// Followed Paper folder. + public class PaperFolderFollowedDetails: CustomStringConvertible, JSONRepresentable { + /// Event unique identifier. + public let eventUuid: String + public init(eventUuid: String) { + stringValidator()(eventUuid) + self.eventUuid = eventUuid } func json() throws -> JSON { - try PaperChangeDeploymentPolicyDetailsSerializer().serialize(self) + try PaperFolderFollowedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperChangeDeploymentPolicyDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperFolderFollowedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperChangeDeploymentPolicyDetails: \(error)" + return "Failed to generate description for PaperFolderFollowedDetails: \(error)" } } } - - public class PaperChangeDeploymentPolicyDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperChangeDeploymentPolicyDetails) throws -> JSON { + public class PaperFolderFollowedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperFolderFollowedDetails) throws -> JSON { let output = [ - "new_value": try TeamPolicies.PaperDeploymentPolicySerializer().serialize(value.newValue), - "previous_value": try NullableSerializer(TeamPolicies.PaperDeploymentPolicySerializer()).serialize(value.previousValue), + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperChangeDeploymentPolicyDetails { + public func deserialize(_ json: JSON) throws -> PaperFolderFollowedDetails { switch json { - case .dictionary(let dict): - let newValue = try TeamPolicies.PaperDeploymentPolicySerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try NullableSerializer(TeamPolicies.PaperDeploymentPolicySerializer()).deserialize(dict["previous_value"] ?? .null) - return PaperChangeDeploymentPolicyDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: PaperChangeDeploymentPolicyDetails.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + return PaperFolderFollowedDetails(eventUuid: eventUuid) + default: + throw JSONSerializerError.deserializeError(type: PaperFolderFollowedDetails.self, json: json) } } } - /// The PaperChangeDeploymentPolicyType struct - public class PaperChangeDeploymentPolicyType: CustomStringConvertible, JSONRepresentable { + /// The PaperFolderFollowedType struct + public class PaperFolderFollowedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -41354,258 +54230,283 @@ public class TeamLog { } func json() throws -> JSON { - try PaperChangeDeploymentPolicyTypeSerializer().serialize(self) + try PaperFolderFollowedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperChangeDeploymentPolicyTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperFolderFollowedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperChangeDeploymentPolicyType: \(error)" + return "Failed to generate description for PaperFolderFollowedType: \(error)" } } } - - public class PaperChangeDeploymentPolicyTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperChangeDeploymentPolicyType) throws -> JSON { + public class PaperFolderFollowedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperFolderFollowedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperChangeDeploymentPolicyType { + public func deserialize(_ json: JSON) throws -> PaperFolderFollowedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return PaperChangeDeploymentPolicyType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: PaperChangeDeploymentPolicyType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return PaperFolderFollowedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: PaperFolderFollowedType.self, json: json) } } } - /// Changed whether non-members can view Paper docs with link. - public class PaperChangeMemberLinkPolicyDetails: CustomStringConvertible, JSONRepresentable { - /// New paper external link accessibility policy. - public let newValue: TeamLog.PaperMemberPolicy - public init(newValue: TeamLog.PaperMemberPolicy) { - self.newValue = newValue + /// Paper folder's logged information. + public class PaperFolderLogInfo: CustomStringConvertible, JSONRepresentable { + /// Papers folder Id. + public let folderId: String + /// Paper folder name. + public let folderName: String + public init(folderId: String, folderName: String) { + stringValidator()(folderId) + self.folderId = folderId + stringValidator()(folderName) + self.folderName = folderName } func json() throws -> JSON { - try PaperChangeMemberLinkPolicyDetailsSerializer().serialize(self) + try PaperFolderLogInfoSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperChangeMemberLinkPolicyDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperFolderLogInfoSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperChangeMemberLinkPolicyDetails: \(error)" + return "Failed to generate description for PaperFolderLogInfo: \(error)" } } } - - public class PaperChangeMemberLinkPolicyDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperChangeMemberLinkPolicyDetails) throws -> JSON { + public class PaperFolderLogInfoSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperFolderLogInfo) throws -> JSON { let output = [ - "new_value": try TeamLog.PaperMemberPolicySerializer().serialize(value.newValue), + "folder_id": try Serialization._StringSerializer.serialize(value.folderId), + "folder_name": try Serialization._StringSerializer.serialize(value.folderName), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperChangeMemberLinkPolicyDetails { + public func deserialize(_ json: JSON) throws -> PaperFolderLogInfo { switch json { - case .dictionary(let dict): - let newValue = try TeamLog.PaperMemberPolicySerializer().deserialize(dict["new_value"] ?? .null) - return PaperChangeMemberLinkPolicyDetails(newValue: newValue) - default: - throw JSONSerializerError.deserializeError(type: PaperChangeMemberLinkPolicyDetails.self, json: json) + case .dictionary(let dict): + let folderId = try Serialization._StringSerializer.deserialize(dict["folder_id"] ?? .null) + let folderName = try Serialization._StringSerializer.deserialize(dict["folder_name"] ?? .null) + return PaperFolderLogInfo(folderId: folderId, folderName: folderName) + default: + throw JSONSerializerError.deserializeError(type: PaperFolderLogInfo.self, json: json) } } } - /// The PaperChangeMemberLinkPolicyType struct - public class PaperChangeMemberLinkPolicyType: CustomStringConvertible, JSONRepresentable { - /// (no description) - public let description_: String - public init(description_: String) { - stringValidator()(description_) - self.description_ = description_ + /// Shared Paper folder with users and/or groups. + public class PaperFolderTeamInviteDetails: CustomStringConvertible, JSONRepresentable { + /// Event unique identifier. + public let eventUuid: String + public init(eventUuid: String) { + stringValidator()(eventUuid) + self.eventUuid = eventUuid } func json() throws -> JSON { - try PaperChangeMemberLinkPolicyTypeSerializer().serialize(self) + try PaperFolderTeamInviteDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperChangeMemberLinkPolicyTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperFolderTeamInviteDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperChangeMemberLinkPolicyType: \(error)" + return "Failed to generate description for PaperFolderTeamInviteDetails: \(error)" } } } - - public class PaperChangeMemberLinkPolicyTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperChangeMemberLinkPolicyType) throws -> JSON { + public class PaperFolderTeamInviteDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperFolderTeamInviteDetails) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperChangeMemberLinkPolicyType { + public func deserialize(_ json: JSON) throws -> PaperFolderTeamInviteDetails { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return PaperChangeMemberLinkPolicyType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: PaperChangeMemberLinkPolicyType.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + return PaperFolderTeamInviteDetails(eventUuid: eventUuid) + default: + throw JSONSerializerError.deserializeError(type: PaperFolderTeamInviteDetails.self, json: json) } } } - /// Changed whether members can share Paper docs outside team, and if docs are accessible only by team members or - /// anyone by default. - public class PaperChangeMemberPolicyDetails: CustomStringConvertible, JSONRepresentable { - /// New paper external accessibility policy. - public let newValue: TeamLog.PaperMemberPolicy - /// Previous paper external accessibility policy. Might be missing due to historical data gap. - public let previousValue: TeamLog.PaperMemberPolicy? - public init(newValue: TeamLog.PaperMemberPolicy, previousValue: TeamLog.PaperMemberPolicy? = nil) { - self.newValue = newValue - self.previousValue = previousValue + /// The PaperFolderTeamInviteType struct + public class PaperFolderTeamInviteType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ } func json() throws -> JSON { - try PaperChangeMemberPolicyDetailsSerializer().serialize(self) + try PaperFolderTeamInviteTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperChangeMemberPolicyDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperFolderTeamInviteTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperChangeMemberPolicyDetails: \(error)" + return "Failed to generate description for PaperFolderTeamInviteType: \(error)" } } } - - public class PaperChangeMemberPolicyDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperChangeMemberPolicyDetails) throws -> JSON { + public class PaperFolderTeamInviteTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperFolderTeamInviteType) throws -> JSON { let output = [ - "new_value": try TeamLog.PaperMemberPolicySerializer().serialize(value.newValue), - "previous_value": try NullableSerializer(TeamLog.PaperMemberPolicySerializer()).serialize(value.previousValue), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperChangeMemberPolicyDetails { + public func deserialize(_ json: JSON) throws -> PaperFolderTeamInviteType { switch json { - case .dictionary(let dict): - let newValue = try TeamLog.PaperMemberPolicySerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try NullableSerializer(TeamLog.PaperMemberPolicySerializer()).deserialize(dict["previous_value"] ?? .null) - return PaperChangeMemberPolicyDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: PaperChangeMemberPolicyDetails.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return PaperFolderTeamInviteType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: PaperFolderTeamInviteType.self, json: json) } } } - /// The PaperChangeMemberPolicyType struct - public class PaperChangeMemberPolicyType: CustomStringConvertible, JSONRepresentable { - /// (no description) - public let description_: String - public init(description_: String) { - stringValidator()(description_) - self.description_ = description_ - } + /// Policy for controlling if team members can share Paper documents externally. + public enum PaperMemberPolicy: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case anyoneWithLink + /// An unspecified error. + case onlyTeam + /// An unspecified error. + case teamAndExplicitlyShared + /// An unspecified error. + case other func json() throws -> JSON { - try PaperChangeMemberPolicyTypeSerializer().serialize(self) + try PaperMemberPolicySerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperChangeMemberPolicyTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperMemberPolicySerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperChangeMemberPolicyType: \(error)" + return "Failed to generate description for PaperMemberPolicy: \(error)" } } } - - public class PaperChangeMemberPolicyTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperChangeMemberPolicyType) throws -> JSON { - let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), - ] - return .dictionary(output) + public class PaperMemberPolicySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperMemberPolicy) throws -> JSON { + switch value { + case .anyoneWithLink: + var d = [String: JSON]() + d[".tag"] = .str("anyone_with_link") + return .dictionary(d) + case .onlyTeam: + var d = [String: JSON]() + d[".tag"] = .str("only_team") + return .dictionary(d) + case .teamAndExplicitlyShared: + var d = [String: JSON]() + d[".tag"] = .str("team_and_explicitly_shared") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } } - - public func deserialize(_ json: JSON) throws -> PaperChangeMemberPolicyType { + public func deserialize(_ json: JSON) throws -> PaperMemberPolicy { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return PaperChangeMemberPolicyType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: PaperChangeMemberPolicyType.self, json: json) + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "anyone_with_link": + return PaperMemberPolicy.anyoneWithLink + case "only_team": + return PaperMemberPolicy.onlyTeam + case "team_and_explicitly_shared": + return PaperMemberPolicy.teamAndExplicitlyShared + case "other": + return PaperMemberPolicy.other + default: + return PaperMemberPolicy.other + } + default: + throw JSONSerializerError.deserializeError(type: PaperMemberPolicy.self, json: json) } } } - /// Enabled/disabled Dropbox Paper for team. - public class PaperChangePolicyDetails: CustomStringConvertible, JSONRepresentable { - /// New Dropbox Paper policy. - public let newValue: TeamPolicies.PaperEnabledPolicy - /// Previous Dropbox Paper policy. Might be missing due to historical data gap. - public let previousValue: TeamPolicies.PaperEnabledPolicy? - public init(newValue: TeamPolicies.PaperEnabledPolicy, previousValue: TeamPolicies.PaperEnabledPolicy? = nil) { - self.newValue = newValue - self.previousValue = previousValue + /// Changed permissions for published doc. + public class PaperPublishedLinkChangePermissionDetails: CustomStringConvertible, JSONRepresentable { + /// Event unique identifier. + public let eventUuid: String + /// New permission level. + public let newPermissionLevel: String + /// Previous permission level. + public let previousPermissionLevel: String + public init(eventUuid: String, newPermissionLevel: String, previousPermissionLevel: String) { + stringValidator()(eventUuid) + self.eventUuid = eventUuid + stringValidator()(newPermissionLevel) + self.newPermissionLevel = newPermissionLevel + stringValidator()(previousPermissionLevel) + self.previousPermissionLevel = previousPermissionLevel } func json() throws -> JSON { - try PaperChangePolicyDetailsSerializer().serialize(self) + try PaperPublishedLinkChangePermissionDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperChangePolicyDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperPublishedLinkChangePermissionDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperChangePolicyDetails: \(error)" + return "Failed to generate description for PaperPublishedLinkChangePermissionDetails: \(error)" } } } - - public class PaperChangePolicyDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperChangePolicyDetails) throws -> JSON { + public class PaperPublishedLinkChangePermissionDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperPublishedLinkChangePermissionDetails) throws -> JSON { let output = [ - "new_value": try TeamPolicies.PaperEnabledPolicySerializer().serialize(value.newValue), - "previous_value": try NullableSerializer(TeamPolicies.PaperEnabledPolicySerializer()).serialize(value.previousValue), + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + "new_permission_level": try Serialization._StringSerializer.serialize(value.newPermissionLevel), + "previous_permission_level": try Serialization._StringSerializer.serialize(value.previousPermissionLevel), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperChangePolicyDetails { + public func deserialize(_ json: JSON) throws -> PaperPublishedLinkChangePermissionDetails { switch json { - case .dictionary(let dict): - let newValue = try TeamPolicies.PaperEnabledPolicySerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try NullableSerializer(TeamPolicies.PaperEnabledPolicySerializer()).deserialize(dict["previous_value"] ?? .null) - return PaperChangePolicyDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: PaperChangePolicyDetails.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + let newPermissionLevel = try Serialization._StringSerializer.deserialize(dict["new_permission_level"] ?? .null) + let previousPermissionLevel = try Serialization._StringSerializer.deserialize(dict["previous_permission_level"] ?? .null) + return PaperPublishedLinkChangePermissionDetails(eventUuid: eventUuid, newPermissionLevel: newPermissionLevel, previousPermissionLevel: previousPermissionLevel) + default: + throw JSONSerializerError.deserializeError(type: PaperPublishedLinkChangePermissionDetails.self, json: json) } } } - /// The PaperChangePolicyType struct - public class PaperChangePolicyType: CustomStringConvertible, JSONRepresentable { + /// The PaperPublishedLinkChangePermissionType struct + public class PaperPublishedLinkChangePermissionType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -41614,40 +54515,38 @@ public class TeamLog { } func json() throws -> JSON { - try PaperChangePolicyTypeSerializer().serialize(self) + try PaperPublishedLinkChangePermissionTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperChangePolicyTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperPublishedLinkChangePermissionTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperChangePolicyType: \(error)" + return "Failed to generate description for PaperPublishedLinkChangePermissionType: \(error)" } } } - - public class PaperChangePolicyTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperChangePolicyType) throws -> JSON { + public class PaperPublishedLinkChangePermissionTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperPublishedLinkChangePermissionType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperChangePolicyType { + public func deserialize(_ json: JSON) throws -> PaperPublishedLinkChangePermissionType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return PaperChangePolicyType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: PaperChangePolicyType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return PaperPublishedLinkChangePermissionType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: PaperPublishedLinkChangePermissionType.self, json: json) } } } - /// Added users and/or groups to Paper doc/folder. - public class PaperContentAddMemberDetails: CustomStringConvertible, JSONRepresentable { + /// Published doc. + public class PaperPublishedLinkCreateDetails: CustomStringConvertible, JSONRepresentable { /// Event unique identifier. public let eventUuid: String public init(eventUuid: String) { @@ -41656,40 +54555,38 @@ public class TeamLog { } func json() throws -> JSON { - try PaperContentAddMemberDetailsSerializer().serialize(self) + try PaperPublishedLinkCreateDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperContentAddMemberDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperPublishedLinkCreateDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperContentAddMemberDetails: \(error)" + return "Failed to generate description for PaperPublishedLinkCreateDetails: \(error)" } } } - - public class PaperContentAddMemberDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperContentAddMemberDetails) throws -> JSON { + public class PaperPublishedLinkCreateDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperPublishedLinkCreateDetails) throws -> JSON { let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperContentAddMemberDetails { + public func deserialize(_ json: JSON) throws -> PaperPublishedLinkCreateDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - return PaperContentAddMemberDetails(eventUuid: eventUuid) - default: - throw JSONSerializerError.deserializeError(type: PaperContentAddMemberDetails.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + return PaperPublishedLinkCreateDetails(eventUuid: eventUuid) + default: + throw JSONSerializerError.deserializeError(type: PaperPublishedLinkCreateDetails.self, json: json) } } } - /// The PaperContentAddMemberType struct - public class PaperContentAddMemberType: CustomStringConvertible, JSONRepresentable { + /// The PaperPublishedLinkCreateType struct + public class PaperPublishedLinkCreateType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -41698,94 +54595,78 @@ public class TeamLog { } func json() throws -> JSON { - try PaperContentAddMemberTypeSerializer().serialize(self) + try PaperPublishedLinkCreateTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperContentAddMemberTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperPublishedLinkCreateTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperContentAddMemberType: \(error)" + return "Failed to generate description for PaperPublishedLinkCreateType: \(error)" } } } - - public class PaperContentAddMemberTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperContentAddMemberType) throws -> JSON { + public class PaperPublishedLinkCreateTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperPublishedLinkCreateType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperContentAddMemberType { + public func deserialize(_ json: JSON) throws -> PaperPublishedLinkCreateType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return PaperContentAddMemberType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: PaperContentAddMemberType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return PaperPublishedLinkCreateType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: PaperPublishedLinkCreateType.self, json: json) } } } - /// Added Paper doc/folder to folder. - public class PaperContentAddToFolderDetails: CustomStringConvertible, JSONRepresentable { + /// Unpublished doc. + public class PaperPublishedLinkDisabledDetails: CustomStringConvertible, JSONRepresentable { /// Event unique identifier. public let eventUuid: String - /// Target asset position in the Assets list. - public let targetAssetIndex: UInt64 - /// Parent asset position in the Assets list. - public let parentAssetIndex: UInt64 - public init(eventUuid: String, targetAssetIndex: UInt64, parentAssetIndex: UInt64) { + public init(eventUuid: String) { stringValidator()(eventUuid) self.eventUuid = eventUuid - comparableValidator()(targetAssetIndex) - self.targetAssetIndex = targetAssetIndex - comparableValidator()(parentAssetIndex) - self.parentAssetIndex = parentAssetIndex } func json() throws -> JSON { - try PaperContentAddToFolderDetailsSerializer().serialize(self) + try PaperPublishedLinkDisabledDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperContentAddToFolderDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperPublishedLinkDisabledDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperContentAddToFolderDetails: \(error)" + return "Failed to generate description for PaperPublishedLinkDisabledDetails: \(error)" } } } - - public class PaperContentAddToFolderDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperContentAddToFolderDetails) throws -> JSON { + public class PaperPublishedLinkDisabledDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperPublishedLinkDisabledDetails) throws -> JSON { let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), - "target_asset_index": try Serialization._UInt64Serializer.serialize(value.targetAssetIndex), - "parent_asset_index": try Serialization._UInt64Serializer.serialize(value.parentAssetIndex), + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperContentAddToFolderDetails { + public func deserialize(_ json: JSON) throws -> PaperPublishedLinkDisabledDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - let targetAssetIndex = try Serialization._UInt64Serializer.deserialize(dict["target_asset_index"] ?? .null) - let parentAssetIndex = try Serialization._UInt64Serializer.deserialize(dict["parent_asset_index"] ?? .null) - return PaperContentAddToFolderDetails(eventUuid: eventUuid, targetAssetIndex: targetAssetIndex, parentAssetIndex: parentAssetIndex) - default: - throw JSONSerializerError.deserializeError(type: PaperContentAddToFolderDetails.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + return PaperPublishedLinkDisabledDetails(eventUuid: eventUuid) + default: + throw JSONSerializerError.deserializeError(type: PaperPublishedLinkDisabledDetails.self, json: json) } } } - /// The PaperContentAddToFolderType struct - public class PaperContentAddToFolderType: CustomStringConvertible, JSONRepresentable { + /// The PaperPublishedLinkDisabledType struct + public class PaperPublishedLinkDisabledType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -41794,40 +54675,38 @@ public class TeamLog { } func json() throws -> JSON { - try PaperContentAddToFolderTypeSerializer().serialize(self) + try PaperPublishedLinkDisabledTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperContentAddToFolderTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperPublishedLinkDisabledTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperContentAddToFolderType: \(error)" + return "Failed to generate description for PaperPublishedLinkDisabledType: \(error)" } } } - - public class PaperContentAddToFolderTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperContentAddToFolderType) throws -> JSON { + public class PaperPublishedLinkDisabledTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperPublishedLinkDisabledType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperContentAddToFolderType { + public func deserialize(_ json: JSON) throws -> PaperPublishedLinkDisabledType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return PaperContentAddToFolderType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: PaperContentAddToFolderType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return PaperPublishedLinkDisabledType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: PaperPublishedLinkDisabledType.self, json: json) } } } - /// Archived Paper doc/folder. - public class PaperContentArchiveDetails: CustomStringConvertible, JSONRepresentable { + /// Viewed published doc. + public class PaperPublishedLinkViewDetails: CustomStringConvertible, JSONRepresentable { /// Event unique identifier. public let eventUuid: String public init(eventUuid: String) { @@ -41836,40 +54715,38 @@ public class TeamLog { } func json() throws -> JSON { - try PaperContentArchiveDetailsSerializer().serialize(self) + try PaperPublishedLinkViewDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperContentArchiveDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperPublishedLinkViewDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperContentArchiveDetails: \(error)" + return "Failed to generate description for PaperPublishedLinkViewDetails: \(error)" } } } - - public class PaperContentArchiveDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperContentArchiveDetails) throws -> JSON { + public class PaperPublishedLinkViewDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperPublishedLinkViewDetails) throws -> JSON { let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperContentArchiveDetails { + public func deserialize(_ json: JSON) throws -> PaperPublishedLinkViewDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - return PaperContentArchiveDetails(eventUuid: eventUuid) - default: - throw JSONSerializerError.deserializeError(type: PaperContentArchiveDetails.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + return PaperPublishedLinkViewDetails(eventUuid: eventUuid) + default: + throw JSONSerializerError.deserializeError(type: PaperPublishedLinkViewDetails.self, json: json) } } } - /// The PaperContentArchiveType struct - public class PaperContentArchiveType: CustomStringConvertible, JSONRepresentable { + /// The PaperPublishedLinkViewType struct + public class PaperPublishedLinkViewType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -41878,166 +54755,197 @@ public class TeamLog { } func json() throws -> JSON { - try PaperContentArchiveTypeSerializer().serialize(self) + try PaperPublishedLinkViewTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperContentArchiveTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PaperPublishedLinkViewTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperContentArchiveType: \(error)" + return "Failed to generate description for PaperPublishedLinkViewType: \(error)" } } } - - public class PaperContentArchiveTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperContentArchiveType) throws -> JSON { + public class PaperPublishedLinkViewTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PaperPublishedLinkViewType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperContentArchiveType { + public func deserialize(_ json: JSON) throws -> PaperPublishedLinkViewType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return PaperContentArchiveType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: PaperContentArchiveType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return PaperPublishedLinkViewType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: PaperPublishedLinkViewType.self, json: json) } } } - /// Created Paper doc/folder. - public class PaperContentCreateDetails: CustomStringConvertible, JSONRepresentable { - /// Event unique identifier. - public let eventUuid: String - public init(eventUuid: String) { - stringValidator()(eventUuid) - self.eventUuid = eventUuid - } + /// A user or group + public enum ParticipantLogInfo: CustomStringConvertible, JSONRepresentable { + /// Group details. + case group(TeamLog.GroupLogInfo) + /// A user with a Dropbox account. + case user(TeamLog.UserLogInfo) + /// An unspecified error. + case other func json() throws -> JSON { - try PaperContentCreateDetailsSerializer().serialize(self) + try ParticipantLogInfoSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperContentCreateDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ParticipantLogInfoSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperContentCreateDetails: \(error)" + return "Failed to generate description for ParticipantLogInfo: \(error)" } } } - - public class PaperContentCreateDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperContentCreateDetails) throws -> JSON { - let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), - ] - return .dictionary(output) + public class ParticipantLogInfoSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ParticipantLogInfo) throws -> JSON { + switch value { + case .group(let arg): + var d = try Serialization.getFields(TeamLog.GroupLogInfoSerializer().serialize(arg)) + d[".tag"] = .str("group") + return .dictionary(d) + case .user(let arg): + var d = try ["user": TeamLog.UserLogInfoSerializer().serialize(arg)] + d[".tag"] = .str("user") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } } - - public func deserialize(_ json: JSON) throws -> PaperContentCreateDetails { + public func deserialize(_ json: JSON) throws -> ParticipantLogInfo { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - return PaperContentCreateDetails(eventUuid: eventUuid) - default: - throw JSONSerializerError.deserializeError(type: PaperContentCreateDetails.self, json: json) + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "group": + let v = try TeamLog.GroupLogInfoSerializer().deserialize(json) + return ParticipantLogInfo.group(v) + case "user": + let v = try TeamLog.UserLogInfoSerializer().deserialize(d["user"] ?? .null) + return ParticipantLogInfo.user(v) + case "other": + return ParticipantLogInfo.other + default: + return ParticipantLogInfo.other + } + default: + throw JSONSerializerError.deserializeError(type: ParticipantLogInfo.self, json: json) } } } - /// The PaperContentCreateType struct - public class PaperContentCreateType: CustomStringConvertible, JSONRepresentable { - /// (no description) - public let description_: String - public init(description_: String) { - stringValidator()(description_) - self.description_ = description_ - } + /// The PassPolicy union + public enum PassPolicy: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case allow + /// An unspecified error. + case disabled + /// An unspecified error. + case enabled + /// An unspecified error. + case other func json() throws -> JSON { - try PaperContentCreateTypeSerializer().serialize(self) + try PassPolicySerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperContentCreateTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PassPolicySerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperContentCreateType: \(error)" + return "Failed to generate description for PassPolicy: \(error)" } } } - - public class PaperContentCreateTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperContentCreateType) throws -> JSON { - let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), - ] - return .dictionary(output) + public class PassPolicySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PassPolicy) throws -> JSON { + switch value { + case .allow: + var d = [String: JSON]() + d[".tag"] = .str("allow") + return .dictionary(d) + case .disabled: + var d = [String: JSON]() + d[".tag"] = .str("disabled") + return .dictionary(d) + case .enabled: + var d = [String: JSON]() + d[".tag"] = .str("enabled") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } } - - public func deserialize(_ json: JSON) throws -> PaperContentCreateType { + public func deserialize(_ json: JSON) throws -> PassPolicy { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return PaperContentCreateType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: PaperContentCreateType.self, json: json) + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "allow": + return PassPolicy.allow + case "disabled": + return PassPolicy.disabled + case "enabled": + return PassPolicy.enabled + case "other": + return PassPolicy.other + default: + return PassPolicy.other + } + default: + throw JSONSerializerError.deserializeError(type: PassPolicy.self, json: json) } } } - /// Permanently deleted Paper doc/folder. - public class PaperContentPermanentlyDeleteDetails: CustomStringConvertible, JSONRepresentable { - /// Event unique identifier. - public let eventUuid: String - public init(eventUuid: String) { - stringValidator()(eventUuid) - self.eventUuid = eventUuid - } + /// Added passkey for login. + public class PasskeyAddDetails: CustomStringConvertible, JSONRepresentable { func json() throws -> JSON { - try PaperContentPermanentlyDeleteDetailsSerializer().serialize(self) + try PasskeyAddDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperContentPermanentlyDeleteDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PasskeyAddDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperContentPermanentlyDeleteDetails: \(error)" + return "Failed to generate description for PasskeyAddDetails: \(error)" } } } - - public class PaperContentPermanentlyDeleteDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperContentPermanentlyDeleteDetails) throws -> JSON { - let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), - ] + public class PasskeyAddDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PasskeyAddDetails) throws -> JSON { + let output = [String: JSON]() return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperContentPermanentlyDeleteDetails { + public func deserialize(_ json: JSON) throws -> PasskeyAddDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - return PaperContentPermanentlyDeleteDetails(eventUuid: eventUuid) - default: - throw JSONSerializerError.deserializeError(type: PaperContentPermanentlyDeleteDetails.self, json: json) + case .dictionary(_): + return PasskeyAddDetails() + default: + throw JSONSerializerError.deserializeError(type: PasskeyAddDetails.self, json: json) } } } - /// The PaperContentPermanentlyDeleteType struct - public class PaperContentPermanentlyDeleteType: CustomStringConvertible, JSONRepresentable { + /// The PasskeyAddType struct + public class PasskeyAddType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -42046,94 +54954,149 @@ public class TeamLog { } func json() throws -> JSON { - try PaperContentPermanentlyDeleteTypeSerializer().serialize(self) + try PasskeyAddTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperContentPermanentlyDeleteTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PasskeyAddTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperContentPermanentlyDeleteType: \(error)" + return "Failed to generate description for PasskeyAddType: \(error)" } } } - - public class PaperContentPermanentlyDeleteTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperContentPermanentlyDeleteType) throws -> JSON { + public class PasskeyAddTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PasskeyAddType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperContentPermanentlyDeleteType { + public func deserialize(_ json: JSON) throws -> PasskeyAddType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return PaperContentPermanentlyDeleteType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: PaperContentPermanentlyDeleteType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return PasskeyAddType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: PasskeyAddType.self, json: json) } } } - /// Removed Paper doc/folder from folder. - public class PaperContentRemoveFromFolderDetails: CustomStringConvertible, JSONRepresentable { - /// Event unique identifier. - public let eventUuid: String - /// Target asset position in the Assets list. - public let targetAssetIndex: UInt64? - /// Parent asset position in the Assets list. - public let parentAssetIndex: UInt64? - public init(eventUuid: String, targetAssetIndex: UInt64? = nil, parentAssetIndex: UInt64? = nil) { - stringValidator()(eventUuid) - self.eventUuid = eventUuid - nullableValidator(comparableValidator())(targetAssetIndex) - self.targetAssetIndex = targetAssetIndex - nullableValidator(comparableValidator())(parentAssetIndex) - self.parentAssetIndex = parentAssetIndex + /// Passkey login policy + public enum PasskeyLoginPolicy: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case default_ + /// An unspecified error. + case disabled + /// An unspecified error. + case enabled + /// An unspecified error. + case other + + func json() throws -> JSON { + try PasskeyLoginPolicySerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try PasskeyLoginPolicySerializer().serialize(self)))" + } catch { + return "Failed to generate description for PasskeyLoginPolicy: \(error)" + } + } + } + public class PasskeyLoginPolicySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PasskeyLoginPolicy) throws -> JSON { + switch value { + case .default_: + var d = [String: JSON]() + d[".tag"] = .str("default") + return .dictionary(d) + case .disabled: + var d = [String: JSON]() + d[".tag"] = .str("disabled") + return .dictionary(d) + case .enabled: + var d = [String: JSON]() + d[".tag"] = .str("enabled") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> PasskeyLoginPolicy { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "default": + return PasskeyLoginPolicy.default_ + case "disabled": + return PasskeyLoginPolicy.disabled + case "enabled": + return PasskeyLoginPolicy.enabled + case "other": + return PasskeyLoginPolicy.other + default: + return PasskeyLoginPolicy.other + } + default: + throw JSONSerializerError.deserializeError(type: PasskeyLoginPolicy.self, json: json) + } + } + } + + /// Changed passkey login policy for team. + public class PasskeyLoginPolicyChangedDetails: CustomStringConvertible, JSONRepresentable { + /// New passkey login policy. + public let newValue: TeamLog.PasskeyLoginPolicy + /// Previous passkey login policy. Might be missing due to historical data gap. + public let previousValue: TeamLog.PasskeyLoginPolicy? + public init(newValue: TeamLog.PasskeyLoginPolicy, previousValue: TeamLog.PasskeyLoginPolicy? = nil) { + self.newValue = newValue + self.previousValue = previousValue } func json() throws -> JSON { - try PaperContentRemoveFromFolderDetailsSerializer().serialize(self) + try PasskeyLoginPolicyChangedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperContentRemoveFromFolderDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PasskeyLoginPolicyChangedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperContentRemoveFromFolderDetails: \(error)" + return "Failed to generate description for PasskeyLoginPolicyChangedDetails: \(error)" } } } - - public class PaperContentRemoveFromFolderDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperContentRemoveFromFolderDetails) throws -> JSON { + public class PasskeyLoginPolicyChangedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PasskeyLoginPolicyChangedDetails) throws -> JSON { let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), - "target_asset_index": try NullableSerializer(Serialization._UInt64Serializer).serialize(value.targetAssetIndex), - "parent_asset_index": try NullableSerializer(Serialization._UInt64Serializer).serialize(value.parentAssetIndex), + "new_value": try TeamLog.PasskeyLoginPolicySerializer().serialize(value.newValue), + "previous_value": try NullableSerializer(TeamLog.PasskeyLoginPolicySerializer()).serialize(value.previousValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperContentRemoveFromFolderDetails { + public func deserialize(_ json: JSON) throws -> PasskeyLoginPolicyChangedDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - let targetAssetIndex = try NullableSerializer(Serialization._UInt64Serializer).deserialize(dict["target_asset_index"] ?? .null) - let parentAssetIndex = try NullableSerializer(Serialization._UInt64Serializer).deserialize(dict["parent_asset_index"] ?? .null) - return PaperContentRemoveFromFolderDetails(eventUuid: eventUuid, targetAssetIndex: targetAssetIndex, parentAssetIndex: parentAssetIndex) - default: - throw JSONSerializerError.deserializeError(type: PaperContentRemoveFromFolderDetails.self, json: json) + case .dictionary(let dict): + let newValue = try TeamLog.PasskeyLoginPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try NullableSerializer(TeamLog.PasskeyLoginPolicySerializer()).deserialize(dict["previous_value"] ?? .null) + return PasskeyLoginPolicyChangedDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: PasskeyLoginPolicyChangedDetails.self, json: json) } } } - /// The PaperContentRemoveFromFolderType struct - public class PaperContentRemoveFromFolderType: CustomStringConvertible, JSONRepresentable { + /// The PasskeyLoginPolicyChangedType struct + public class PasskeyLoginPolicyChangedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -42142,82 +55105,69 @@ public class TeamLog { } func json() throws -> JSON { - try PaperContentRemoveFromFolderTypeSerializer().serialize(self) + try PasskeyLoginPolicyChangedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperContentRemoveFromFolderTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PasskeyLoginPolicyChangedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperContentRemoveFromFolderType: \(error)" + return "Failed to generate description for PasskeyLoginPolicyChangedType: \(error)" } } } - - public class PaperContentRemoveFromFolderTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperContentRemoveFromFolderType) throws -> JSON { + public class PasskeyLoginPolicyChangedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PasskeyLoginPolicyChangedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperContentRemoveFromFolderType { + public func deserialize(_ json: JSON) throws -> PasskeyLoginPolicyChangedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return PaperContentRemoveFromFolderType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: PaperContentRemoveFromFolderType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return PasskeyLoginPolicyChangedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: PasskeyLoginPolicyChangedType.self, json: json) } } } - /// Removed users and/or groups from Paper doc/folder. - public class PaperContentRemoveMemberDetails: CustomStringConvertible, JSONRepresentable { - /// Event unique identifier. - public let eventUuid: String - public init(eventUuid: String) { - stringValidator()(eventUuid) - self.eventUuid = eventUuid - } + /// Removed passkey for login. + public class PasskeyRemoveDetails: CustomStringConvertible, JSONRepresentable { func json() throws -> JSON { - try PaperContentRemoveMemberDetailsSerializer().serialize(self) + try PasskeyRemoveDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperContentRemoveMemberDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PasskeyRemoveDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperContentRemoveMemberDetails: \(error)" + return "Failed to generate description for PasskeyRemoveDetails: \(error)" } } } - - public class PaperContentRemoveMemberDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperContentRemoveMemberDetails) throws -> JSON { - let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), - ] + public class PasskeyRemoveDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PasskeyRemoveDetails) throws -> JSON { + let output = [String: JSON]() return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperContentRemoveMemberDetails { + public func deserialize(_ json: JSON) throws -> PasskeyRemoveDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - return PaperContentRemoveMemberDetails(eventUuid: eventUuid) - default: - throw JSONSerializerError.deserializeError(type: PaperContentRemoveMemberDetails.self, json: json) + case .dictionary(_): + return PasskeyRemoveDetails() + default: + throw JSONSerializerError.deserializeError(type: PasskeyRemoveDetails.self, json: json) } } } - /// The PaperContentRemoveMemberType struct - public class PaperContentRemoveMemberType: CustomStringConvertible, JSONRepresentable { + /// The PasskeyRemoveType struct + public class PasskeyRemoveType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -42226,82 +55176,69 @@ public class TeamLog { } func json() throws -> JSON { - try PaperContentRemoveMemberTypeSerializer().serialize(self) + try PasskeyRemoveTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperContentRemoveMemberTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PasskeyRemoveTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperContentRemoveMemberType: \(error)" + return "Failed to generate description for PasskeyRemoveType: \(error)" } } } - - public class PaperContentRemoveMemberTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperContentRemoveMemberType) throws -> JSON { + public class PasskeyRemoveTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PasskeyRemoveType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperContentRemoveMemberType { + public func deserialize(_ json: JSON) throws -> PasskeyRemoveType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return PaperContentRemoveMemberType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: PaperContentRemoveMemberType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return PasskeyRemoveType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: PasskeyRemoveType.self, json: json) } } } - /// Renamed Paper doc/folder. - public class PaperContentRenameDetails: CustomStringConvertible, JSONRepresentable { - /// Event unique identifier. - public let eventUuid: String - public init(eventUuid: String) { - stringValidator()(eventUuid) - self.eventUuid = eventUuid - } + /// Changed password. + public class PasswordChangeDetails: CustomStringConvertible, JSONRepresentable { func json() throws -> JSON { - try PaperContentRenameDetailsSerializer().serialize(self) + try PasswordChangeDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperContentRenameDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PasswordChangeDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperContentRenameDetails: \(error)" + return "Failed to generate description for PasswordChangeDetails: \(error)" } } } - - public class PaperContentRenameDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperContentRenameDetails) throws -> JSON { - let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), - ] + public class PasswordChangeDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PasswordChangeDetails) throws -> JSON { + let output = [String: JSON]() return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperContentRenameDetails { + public func deserialize(_ json: JSON) throws -> PasswordChangeDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - return PaperContentRenameDetails(eventUuid: eventUuid) - default: - throw JSONSerializerError.deserializeError(type: PaperContentRenameDetails.self, json: json) + case .dictionary(_): + return PasswordChangeDetails() + default: + throw JSONSerializerError.deserializeError(type: PasswordChangeDetails.self, json: json) } } } - /// The PaperContentRenameType struct - public class PaperContentRenameType: CustomStringConvertible, JSONRepresentable { + /// The PasswordChangeType struct + public class PasswordChangeType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -42310,82 +55247,69 @@ public class TeamLog { } func json() throws -> JSON { - try PaperContentRenameTypeSerializer().serialize(self) + try PasswordChangeTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperContentRenameTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PasswordChangeTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperContentRenameType: \(error)" + return "Failed to generate description for PasswordChangeType: \(error)" } } } - - public class PaperContentRenameTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperContentRenameType) throws -> JSON { + public class PasswordChangeTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PasswordChangeType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperContentRenameType { + public func deserialize(_ json: JSON) throws -> PasswordChangeType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return PaperContentRenameType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: PaperContentRenameType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return PasswordChangeType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: PasswordChangeType.self, json: json) } } } - /// Restored archived Paper doc/folder. - public class PaperContentRestoreDetails: CustomStringConvertible, JSONRepresentable { - /// Event unique identifier. - public let eventUuid: String - public init(eventUuid: String) { - stringValidator()(eventUuid) - self.eventUuid = eventUuid - } + /// Reset all team member passwords. + public class PasswordResetAllDetails: CustomStringConvertible, JSONRepresentable { func json() throws -> JSON { - try PaperContentRestoreDetailsSerializer().serialize(self) + try PasswordResetAllDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperContentRestoreDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PasswordResetAllDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperContentRestoreDetails: \(error)" + return "Failed to generate description for PasswordResetAllDetails: \(error)" } } } - - public class PaperContentRestoreDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperContentRestoreDetails) throws -> JSON { - let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), - ] + public class PasswordResetAllDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PasswordResetAllDetails) throws -> JSON { + let output = [String: JSON]() return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperContentRestoreDetails { + public func deserialize(_ json: JSON) throws -> PasswordResetAllDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - return PaperContentRestoreDetails(eventUuid: eventUuid) - default: - throw JSONSerializerError.deserializeError(type: PaperContentRestoreDetails.self, json: json) + case .dictionary(_): + return PasswordResetAllDetails() + default: + throw JSONSerializerError.deserializeError(type: PasswordResetAllDetails.self, json: json) } } } - /// The PaperContentRestoreType struct - public class PaperContentRestoreType: CustomStringConvertible, JSONRepresentable { + /// The PasswordResetAllType struct + public class PasswordResetAllType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -42394,147 +55318,69 @@ public class TeamLog { } func json() throws -> JSON { - try PaperContentRestoreTypeSerializer().serialize(self) + try PasswordResetAllTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperContentRestoreTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PasswordResetAllTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperContentRestoreType: \(error)" + return "Failed to generate description for PasswordResetAllType: \(error)" } } } - - public class PaperContentRestoreTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperContentRestoreType) throws -> JSON { + public class PasswordResetAllTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PasswordResetAllType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperContentRestoreType { - switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return PaperContentRestoreType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: PaperContentRestoreType.self, json: json) - } - } - } - - /// Policy to set default access for newly created Paper folders. - public enum PaperDefaultFolderPolicy: CustomStringConvertible, JSONRepresentable { - /// An unspecified error. - case everyoneInTeam - /// An unspecified error. - case inviteOnly - /// An unspecified error. - case other - - func json() throws -> JSON { - try PaperDefaultFolderPolicySerializer().serialize(self) - } - - public var description: String { - do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperDefaultFolderPolicySerializer().serialize(self)))" - } catch { - return "Failed to generate description for PaperDefaultFolderPolicy: \(error)" - } - } - } - - public class PaperDefaultFolderPolicySerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperDefaultFolderPolicy) throws -> JSON { - switch value { - case .everyoneInTeam: - var d = [String: JSON]() - d[".tag"] = .str("everyone_in_team") - return .dictionary(d) - case .inviteOnly: - var d = [String: JSON]() - d[".tag"] = .str("invite_only") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) - } - } - - public func deserialize(_ json: JSON) throws -> PaperDefaultFolderPolicy { + public func deserialize(_ json: JSON) throws -> PasswordResetAllType { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "everyone_in_team": - return PaperDefaultFolderPolicy.everyoneInTeam - case "invite_only": - return PaperDefaultFolderPolicy.inviteOnly - case "other": - return PaperDefaultFolderPolicy.other + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return PasswordResetAllType(description_: description_) default: - return PaperDefaultFolderPolicy.other - } - default: - throw JSONSerializerError.deserializeError(type: PaperDefaultFolderPolicy.self, json: json) + throw JSONSerializerError.deserializeError(type: PasswordResetAllType.self, json: json) } } } - /// Changed Paper Default Folder Policy setting for team. - public class PaperDefaultFolderPolicyChangedDetails: CustomStringConvertible, JSONRepresentable { - /// New Paper Default Folder Policy. - public let newValue: TeamLog.PaperDefaultFolderPolicy - /// Previous Paper Default Folder Policy. - public let previousValue: TeamLog.PaperDefaultFolderPolicy - public init(newValue: TeamLog.PaperDefaultFolderPolicy, previousValue: TeamLog.PaperDefaultFolderPolicy) { - self.newValue = newValue - self.previousValue = previousValue - } + /// Reset password. + public class PasswordResetDetails: CustomStringConvertible, JSONRepresentable { func json() throws -> JSON { - try PaperDefaultFolderPolicyChangedDetailsSerializer().serialize(self) + try PasswordResetDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperDefaultFolderPolicyChangedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PasswordResetDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperDefaultFolderPolicyChangedDetails: \(error)" + return "Failed to generate description for PasswordResetDetails: \(error)" } } } - - public class PaperDefaultFolderPolicyChangedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperDefaultFolderPolicyChangedDetails) throws -> JSON { - let output = [ - "new_value": try TeamLog.PaperDefaultFolderPolicySerializer().serialize(value.newValue), - "previous_value": try TeamLog.PaperDefaultFolderPolicySerializer().serialize(value.previousValue), - ] + public class PasswordResetDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PasswordResetDetails) throws -> JSON { + let output = [String: JSON]() return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperDefaultFolderPolicyChangedDetails { + public func deserialize(_ json: JSON) throws -> PasswordResetDetails { switch json { - case .dictionary(let dict): - let newValue = try TeamLog.PaperDefaultFolderPolicySerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try TeamLog.PaperDefaultFolderPolicySerializer().deserialize(dict["previous_value"] ?? .null) - return PaperDefaultFolderPolicyChangedDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: PaperDefaultFolderPolicyChangedDetails.self, json: json) + case .dictionary(_): + return PasswordResetDetails() + default: + throw JSONSerializerError.deserializeError(type: PasswordResetDetails.self, json: json) } } } - /// The PaperDefaultFolderPolicyChangedType struct - public class PaperDefaultFolderPolicyChangedType: CustomStringConvertible, JSONRepresentable { + /// The PasswordResetType struct + public class PasswordResetType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -42543,237 +55389,207 @@ public class TeamLog { } func json() throws -> JSON { - try PaperDefaultFolderPolicyChangedTypeSerializer().serialize(self) + try PasswordResetTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperDefaultFolderPolicyChangedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PasswordResetTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperDefaultFolderPolicyChangedType: \(error)" + return "Failed to generate description for PasswordResetType: \(error)" } } } - - public class PaperDefaultFolderPolicyChangedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperDefaultFolderPolicyChangedType) throws -> JSON { + public class PasswordResetTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PasswordResetType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperDefaultFolderPolicyChangedType { + public func deserialize(_ json: JSON) throws -> PasswordResetType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return PaperDefaultFolderPolicyChangedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: PaperDefaultFolderPolicyChangedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return PasswordResetType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: PasswordResetType.self, json: json) } } } - /// Policy for controlling if team members can use Paper Desktop - public enum PaperDesktopPolicy: CustomStringConvertible, JSONRepresentable { - /// An unspecified error. - case disabled - /// An unspecified error. - case enabled - /// An unspecified error. - case other + /// Changed team password strength requirements. + public class PasswordStrengthRequirementsChangePolicyDetails: CustomStringConvertible, JSONRepresentable { + /// Old password strength policy. + public let previousValue: TeamPolicies.PasswordStrengthPolicy + /// New password strength policy. + public let newValue: TeamPolicies.PasswordStrengthPolicy + public init(previousValue: TeamPolicies.PasswordStrengthPolicy, newValue: TeamPolicies.PasswordStrengthPolicy) { + self.previousValue = previousValue + self.newValue = newValue + } func json() throws -> JSON { - try PaperDesktopPolicySerializer().serialize(self) + try PasswordStrengthRequirementsChangePolicyDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperDesktopPolicySerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PasswordStrengthRequirementsChangePolicyDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperDesktopPolicy: \(error)" + return "Failed to generate description for PasswordStrengthRequirementsChangePolicyDetails: \(error)" } } } - - public class PaperDesktopPolicySerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperDesktopPolicy) throws -> JSON { - switch value { - case .disabled: - var d = [String: JSON]() - d[".tag"] = .str("disabled") - return .dictionary(d) - case .enabled: - var d = [String: JSON]() - d[".tag"] = .str("enabled") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) - } + public class PasswordStrengthRequirementsChangePolicyDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PasswordStrengthRequirementsChangePolicyDetails) throws -> JSON { + let output = [ + "previous_value": try TeamPolicies.PasswordStrengthPolicySerializer().serialize(value.previousValue), + "new_value": try TeamPolicies.PasswordStrengthPolicySerializer().serialize(value.newValue), + ] + return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperDesktopPolicy { + public func deserialize(_ json: JSON) throws -> PasswordStrengthRequirementsChangePolicyDetails { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "disabled": - return PaperDesktopPolicy.disabled - case "enabled": - return PaperDesktopPolicy.enabled - case "other": - return PaperDesktopPolicy.other + case .dictionary(let dict): + let previousValue = try TeamPolicies.PasswordStrengthPolicySerializer().deserialize(dict["previous_value"] ?? .null) + let newValue = try TeamPolicies.PasswordStrengthPolicySerializer().deserialize(dict["new_value"] ?? .null) + return PasswordStrengthRequirementsChangePolicyDetails(previousValue: previousValue, newValue: newValue) default: - return PaperDesktopPolicy.other - } - default: - throw JSONSerializerError.deserializeError(type: PaperDesktopPolicy.self, json: json) + throw JSONSerializerError.deserializeError(type: PasswordStrengthRequirementsChangePolicyDetails.self, json: json) } } } - /// Enabled/disabled Paper Desktop for team. - public class PaperDesktopPolicyChangedDetails: CustomStringConvertible, JSONRepresentable { - /// New Paper Desktop policy. - public let newValue: TeamLog.PaperDesktopPolicy - /// Previous Paper Desktop policy. - public let previousValue: TeamLog.PaperDesktopPolicy - public init(newValue: TeamLog.PaperDesktopPolicy, previousValue: TeamLog.PaperDesktopPolicy) { - self.newValue = newValue - self.previousValue = previousValue + /// The PasswordStrengthRequirementsChangePolicyType struct + public class PasswordStrengthRequirementsChangePolicyType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ } func json() throws -> JSON { - try PaperDesktopPolicyChangedDetailsSerializer().serialize(self) + try PasswordStrengthRequirementsChangePolicyTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperDesktopPolicyChangedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PasswordStrengthRequirementsChangePolicyTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperDesktopPolicyChangedDetails: \(error)" + return "Failed to generate description for PasswordStrengthRequirementsChangePolicyType: \(error)" } } } - - public class PaperDesktopPolicyChangedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperDesktopPolicyChangedDetails) throws -> JSON { + public class PasswordStrengthRequirementsChangePolicyTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PasswordStrengthRequirementsChangePolicyType) throws -> JSON { let output = [ - "new_value": try TeamLog.PaperDesktopPolicySerializer().serialize(value.newValue), - "previous_value": try TeamLog.PaperDesktopPolicySerializer().serialize(value.previousValue), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperDesktopPolicyChangedDetails { + public func deserialize(_ json: JSON) throws -> PasswordStrengthRequirementsChangePolicyType { switch json { - case .dictionary(let dict): - let newValue = try TeamLog.PaperDesktopPolicySerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try TeamLog.PaperDesktopPolicySerializer().deserialize(dict["previous_value"] ?? .null) - return PaperDesktopPolicyChangedDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: PaperDesktopPolicyChangedDetails.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return PasswordStrengthRequirementsChangePolicyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: PasswordStrengthRequirementsChangePolicyType.self, json: json) } } } - /// The PaperDesktopPolicyChangedType struct - public class PaperDesktopPolicyChangedType: CustomStringConvertible, JSONRepresentable { - /// (no description) - public let description_: String - public init(description_: String) { - stringValidator()(description_) - self.description_ = description_ + /// Path's details. + public class PathLogInfo: CustomStringConvertible, JSONRepresentable { + /// Fully qualified path relative to event's context. + public let contextual: String? + /// Path relative to the namespace containing the content. + public let namespaceRelative: TeamLog.NamespaceRelativePathLogInfo + public init(namespaceRelative: TeamLog.NamespaceRelativePathLogInfo, contextual: String? = nil) { + nullableValidator(stringValidator())(contextual) + self.contextual = contextual + self.namespaceRelative = namespaceRelative } func json() throws -> JSON { - try PaperDesktopPolicyChangedTypeSerializer().serialize(self) + try PathLogInfoSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperDesktopPolicyChangedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PathLogInfoSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperDesktopPolicyChangedType: \(error)" + return "Failed to generate description for PathLogInfo: \(error)" } } } - - public class PaperDesktopPolicyChangedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperDesktopPolicyChangedType) throws -> JSON { + public class PathLogInfoSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PathLogInfo) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "namespace_relative": try TeamLog.NamespaceRelativePathLogInfoSerializer().serialize(value.namespaceRelative), + "contextual": try NullableSerializer(Serialization._StringSerializer).serialize(value.contextual), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperDesktopPolicyChangedType { + public func deserialize(_ json: JSON) throws -> PathLogInfo { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return PaperDesktopPolicyChangedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: PaperDesktopPolicyChangedType.self, json: json) + case .dictionary(let dict): + let namespaceRelative = try TeamLog.NamespaceRelativePathLogInfoSerializer().deserialize(dict["namespace_relative"] ?? .null) + let contextual = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["contextual"] ?? .null) + return PathLogInfo(namespaceRelative: namespaceRelative, contextual: contextual) + default: + throw JSONSerializerError.deserializeError(type: PathLogInfo.self, json: json) } } } - /// Added Paper doc comment. - public class PaperDocAddCommentDetails: CustomStringConvertible, JSONRepresentable { - /// Event unique identifier. - public let eventUuid: String - /// Comment text. - public let commentText: String? - public init(eventUuid: String, commentText: String? = nil) { - stringValidator()(eventUuid) - self.eventUuid = eventUuid - nullableValidator(stringValidator())(commentText) - self.commentText = commentText + /// Added pending secondary email. + public class PendingSecondaryEmailAddedDetails: CustomStringConvertible, JSONRepresentable { + /// New pending secondary email. + public let secondaryEmail: String + public init(secondaryEmail: String) { + stringValidator(maxLength: 255)(secondaryEmail) + self.secondaryEmail = secondaryEmail } func json() throws -> JSON { - try PaperDocAddCommentDetailsSerializer().serialize(self) + try PendingSecondaryEmailAddedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocAddCommentDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PendingSecondaryEmailAddedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperDocAddCommentDetails: \(error)" + return "Failed to generate description for PendingSecondaryEmailAddedDetails: \(error)" } } } - - public class PaperDocAddCommentDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperDocAddCommentDetails) throws -> JSON { + public class PendingSecondaryEmailAddedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PendingSecondaryEmailAddedDetails) throws -> JSON { let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), - "comment_text": try NullableSerializer(Serialization._StringSerializer).serialize(value.commentText), + "secondary_email": try Serialization._StringSerializer.serialize(value.secondaryEmail), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperDocAddCommentDetails { + public func deserialize(_ json: JSON) throws -> PendingSecondaryEmailAddedDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - let commentText = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["comment_text"] ?? .null) - return PaperDocAddCommentDetails(eventUuid: eventUuid, commentText: commentText) - default: - throw JSONSerializerError.deserializeError(type: PaperDocAddCommentDetails.self, json: json) + case .dictionary(let dict): + let secondaryEmail = try Serialization._StringSerializer.deserialize(dict["secondary_email"] ?? .null) + return PendingSecondaryEmailAddedDetails(secondaryEmail: secondaryEmail) + default: + throw JSONSerializerError.deserializeError(type: PendingSecondaryEmailAddedDetails.self, json: json) } } } - /// The PaperDocAddCommentType struct - public class PaperDocAddCommentType: CustomStringConvertible, JSONRepresentable { + /// The PendingSecondaryEmailAddedType struct + public class PendingSecondaryEmailAddedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -42782,87 +55598,82 @@ public class TeamLog { } func json() throws -> JSON { - try PaperDocAddCommentTypeSerializer().serialize(self) + try PendingSecondaryEmailAddedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocAddCommentTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PendingSecondaryEmailAddedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperDocAddCommentType: \(error)" + return "Failed to generate description for PendingSecondaryEmailAddedType: \(error)" } } } - - public class PaperDocAddCommentTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperDocAddCommentType) throws -> JSON { + public class PendingSecondaryEmailAddedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PendingSecondaryEmailAddedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperDocAddCommentType { + public func deserialize(_ json: JSON) throws -> PendingSecondaryEmailAddedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return PaperDocAddCommentType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: PaperDocAddCommentType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return PendingSecondaryEmailAddedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: PendingSecondaryEmailAddedType.self, json: json) } } } - /// Changed member permissions for Paper doc. - public class PaperDocChangeMemberRoleDetails: CustomStringConvertible, JSONRepresentable { - /// Event unique identifier. - public let eventUuid: String - /// Paper doc access type. - public let accessType: TeamLog.PaperAccessType - public init(eventUuid: String, accessType: TeamLog.PaperAccessType) { - stringValidator()(eventUuid) - self.eventUuid = eventUuid - self.accessType = accessType + /// Enabled/disabled ability of team members to permanently delete content. + public class PermanentDeleteChangePolicyDetails: CustomStringConvertible, JSONRepresentable { + /// New permanent delete content policy. + public let newValue: TeamLog.ContentPermanentDeletePolicy + /// Previous permanent delete content policy. Might be missing due to historical data gap. + public let previousValue: TeamLog.ContentPermanentDeletePolicy? + public init(newValue: TeamLog.ContentPermanentDeletePolicy, previousValue: TeamLog.ContentPermanentDeletePolicy? = nil) { + self.newValue = newValue + self.previousValue = previousValue } func json() throws -> JSON { - try PaperDocChangeMemberRoleDetailsSerializer().serialize(self) + try PermanentDeleteChangePolicyDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocChangeMemberRoleDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PermanentDeleteChangePolicyDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperDocChangeMemberRoleDetails: \(error)" + return "Failed to generate description for PermanentDeleteChangePolicyDetails: \(error)" } } } - - public class PaperDocChangeMemberRoleDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperDocChangeMemberRoleDetails) throws -> JSON { + public class PermanentDeleteChangePolicyDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PermanentDeleteChangePolicyDetails) throws -> JSON { let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), - "access_type": try TeamLog.PaperAccessTypeSerializer().serialize(value.accessType), + "new_value": try TeamLog.ContentPermanentDeletePolicySerializer().serialize(value.newValue), + "previous_value": try NullableSerializer(TeamLog.ContentPermanentDeletePolicySerializer()).serialize(value.previousValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperDocChangeMemberRoleDetails { + public func deserialize(_ json: JSON) throws -> PermanentDeleteChangePolicyDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - let accessType = try TeamLog.PaperAccessTypeSerializer().deserialize(dict["access_type"] ?? .null) - return PaperDocChangeMemberRoleDetails(eventUuid: eventUuid, accessType: accessType) - default: - throw JSONSerializerError.deserializeError(type: PaperDocChangeMemberRoleDetails.self, json: json) + case .dictionary(let dict): + let newValue = try TeamLog.ContentPermanentDeletePolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try NullableSerializer(TeamLog.ContentPermanentDeletePolicySerializer()).deserialize(dict["previous_value"] ?? .null) + return PermanentDeleteChangePolicyDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: PermanentDeleteChangePolicyDetails.self, json: json) } } } - /// The PaperDocChangeMemberRoleType struct - public class PaperDocChangeMemberRoleType: CustomStringConvertible, JSONRepresentable { + /// The PermanentDeleteChangePolicyType struct + public class PermanentDeleteChangePolicyType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -42871,199 +55682,307 @@ public class TeamLog { } func json() throws -> JSON { - try PaperDocChangeMemberRoleTypeSerializer().serialize(self) + try PermanentDeleteChangePolicyTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocChangeMemberRoleTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PermanentDeleteChangePolicyTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperDocChangeMemberRoleType: \(error)" + return "Failed to generate description for PermanentDeleteChangePolicyType: \(error)" } } } - - public class PaperDocChangeMemberRoleTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperDocChangeMemberRoleType) throws -> JSON { + public class PermanentDeleteChangePolicyTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PermanentDeleteChangePolicyType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperDocChangeMemberRoleType { + public func deserialize(_ json: JSON) throws -> PermanentDeleteChangePolicyType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return PaperDocChangeMemberRoleType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: PaperDocChangeMemberRoleType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return PermanentDeleteChangePolicyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: PermanentDeleteChangePolicyType.self, json: json) } } } - /// Changed sharing setting for Paper doc. - public class PaperDocChangeSharingPolicyDetails: CustomStringConvertible, JSONRepresentable { - /// Event unique identifier. - public let eventUuid: String - /// Sharing policy with external users. - public let publicSharingPolicy: String? - /// Sharing policy with team. - public let teamSharingPolicy: String? - public init(eventUuid: String, publicSharingPolicy: String? = nil, teamSharingPolicy: String? = nil) { - stringValidator()(eventUuid) - self.eventUuid = eventUuid - nullableValidator(stringValidator())(publicSharingPolicy) - self.publicSharingPolicy = publicSharingPolicy - nullableValidator(stringValidator())(teamSharingPolicy) - self.teamSharingPolicy = teamSharingPolicy + /// The PlacementRestriction union + public enum PlacementRestriction: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case australiaOnly + /// An unspecified error. + case canadaOnly + /// An unspecified error. + case europeOnly + /// An unspecified error. + case japanOnly + /// An unspecified error. + case none + /// An unspecified error. + case ukOnly + /// An unspecified error. + case usS3Only + /// An unspecified error. + case other + + func json() throws -> JSON { + try PlacementRestrictionSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try PlacementRestrictionSerializer().serialize(self)))" + } catch { + return "Failed to generate description for PlacementRestriction: \(error)" + } + } + } + public class PlacementRestrictionSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PlacementRestriction) throws -> JSON { + switch value { + case .australiaOnly: + var d = [String: JSON]() + d[".tag"] = .str("australia_only") + return .dictionary(d) + case .canadaOnly: + var d = [String: JSON]() + d[".tag"] = .str("canada_only") + return .dictionary(d) + case .europeOnly: + var d = [String: JSON]() + d[".tag"] = .str("europe_only") + return .dictionary(d) + case .japanOnly: + var d = [String: JSON]() + d[".tag"] = .str("japan_only") + return .dictionary(d) + case .none: + var d = [String: JSON]() + d[".tag"] = .str("none") + return .dictionary(d) + case .ukOnly: + var d = [String: JSON]() + d[".tag"] = .str("uk_only") + return .dictionary(d) + case .usS3Only: + var d = [String: JSON]() + d[".tag"] = .str("us_s3_only") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> PlacementRestriction { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "australia_only": + return PlacementRestriction.australiaOnly + case "canada_only": + return PlacementRestriction.canadaOnly + case "europe_only": + return PlacementRestriction.europeOnly + case "japan_only": + return PlacementRestriction.japanOnly + case "none": + return PlacementRestriction.none + case "uk_only": + return PlacementRestriction.ukOnly + case "us_s3_only": + return PlacementRestriction.usS3Only + case "other": + return PlacementRestriction.other + default: + return PlacementRestriction.other + } + default: + throw JSONSerializerError.deserializeError(type: PlacementRestriction.self, json: json) + } } + } + + /// The PolicyType union + public enum PolicyType: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case disposition + /// An unspecified error. + case retention + /// An unspecified error. + case other func json() throws -> JSON { - try PaperDocChangeSharingPolicyDetailsSerializer().serialize(self) + try PolicyTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocChangeSharingPolicyDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PolicyTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperDocChangeSharingPolicyDetails: \(error)" + return "Failed to generate description for PolicyType: \(error)" + } + } + } + public class PolicyTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PolicyType) throws -> JSON { + switch value { + case .disposition: + var d = [String: JSON]() + d[".tag"] = .str("disposition") + return .dictionary(d) + case .retention: + var d = [String: JSON]() + d[".tag"] = .str("retention") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) } } - } - - public class PaperDocChangeSharingPolicyDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperDocChangeSharingPolicyDetails) throws -> JSON { - let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), - "public_sharing_policy": try NullableSerializer(Serialization._StringSerializer).serialize(value.publicSharingPolicy), - "team_sharing_policy": try NullableSerializer(Serialization._StringSerializer).serialize(value.teamSharingPolicy), - ] - return .dictionary(output) - } - - public func deserialize(_ json: JSON) throws -> PaperDocChangeSharingPolicyDetails { + public func deserialize(_ json: JSON) throws -> PolicyType { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - let publicSharingPolicy = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["public_sharing_policy"] ?? .null) - let teamSharingPolicy = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["team_sharing_policy"] ?? .null) - return PaperDocChangeSharingPolicyDetails( - eventUuid: eventUuid, - publicSharingPolicy: publicSharingPolicy, - teamSharingPolicy: teamSharingPolicy - ) - default: - throw JSONSerializerError.deserializeError(type: PaperDocChangeSharingPolicyDetails.self, json: json) + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "disposition": + return PolicyType.disposition + case "retention": + return PolicyType.retention + case "other": + return PolicyType.other + default: + return PolicyType.other + } + default: + throw JSONSerializerError.deserializeError(type: PolicyType.self, json: json) } } } - /// The PaperDocChangeSharingPolicyType struct - public class PaperDocChangeSharingPolicyType: CustomStringConvertible, JSONRepresentable { - /// (no description) - public let description_: String - public init(description_: String) { - stringValidator()(description_) - self.description_ = description_ - } + /// Policy for deciding whether team users can use Previews AI + public enum PreviewsAiPolicy: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case default_ + /// An unspecified error. + case disabled + /// An unspecified error. + case enabled + /// An unspecified error. + case other func json() throws -> JSON { - try PaperDocChangeSharingPolicyTypeSerializer().serialize(self) + try PreviewsAiPolicySerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocChangeSharingPolicyTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PreviewsAiPolicySerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperDocChangeSharingPolicyType: \(error)" + return "Failed to generate description for PreviewsAiPolicy: \(error)" } } } - - public class PaperDocChangeSharingPolicyTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperDocChangeSharingPolicyType) throws -> JSON { - let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), - ] - return .dictionary(output) - } - - public func deserialize(_ json: JSON) throws -> PaperDocChangeSharingPolicyType { - switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return PaperDocChangeSharingPolicyType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: PaperDocChangeSharingPolicyType.self, json: json) + public class PreviewsAiPolicySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PreviewsAiPolicy) throws -> JSON { + switch value { + case .default_: + var d = [String: JSON]() + d[".tag"] = .str("default") + return .dictionary(d) + case .disabled: + var d = [String: JSON]() + d[".tag"] = .str("disabled") + return .dictionary(d) + case .enabled: + var d = [String: JSON]() + d[".tag"] = .str("enabled") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> PreviewsAiPolicy { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "default": + return PreviewsAiPolicy.default_ + case "disabled": + return PreviewsAiPolicy.disabled + case "enabled": + return PreviewsAiPolicy.enabled + case "other": + return PreviewsAiPolicy.other + default: + return PreviewsAiPolicy.other + } + default: + throw JSONSerializerError.deserializeError(type: PreviewsAiPolicy.self, json: json) } } } - /// Followed/unfollowed Paper doc. - public class PaperDocChangeSubscriptionDetails: CustomStringConvertible, JSONRepresentable { - /// Event unique identifier. - public let eventUuid: String - /// New doc subscription level. - public let newSubscriptionLevel: String - /// Previous doc subscription level. Might be missing due to historical data gap. - public let previousSubscriptionLevel: String? - public init(eventUuid: String, newSubscriptionLevel: String, previousSubscriptionLevel: String? = nil) { - stringValidator()(eventUuid) - self.eventUuid = eventUuid - stringValidator()(newSubscriptionLevel) - self.newSubscriptionLevel = newSubscriptionLevel - nullableValidator(stringValidator())(previousSubscriptionLevel) - self.previousSubscriptionLevel = previousSubscriptionLevel + /// Changed Dropbox AI policy for team. + public class PreviewsAiPolicyChangedDetails: CustomStringConvertible, JSONRepresentable { + /// To. + public let newValue: TeamLog.PreviewsAiPolicy + /// From. + public let previousValue: TeamLog.PreviewsAiPolicy + public init(newValue: TeamLog.PreviewsAiPolicy, previousValue: TeamLog.PreviewsAiPolicy) { + self.newValue = newValue + self.previousValue = previousValue } func json() throws -> JSON { - try PaperDocChangeSubscriptionDetailsSerializer().serialize(self) + try PreviewsAiPolicyChangedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocChangeSubscriptionDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PreviewsAiPolicyChangedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperDocChangeSubscriptionDetails: \(error)" + return "Failed to generate description for PreviewsAiPolicyChangedDetails: \(error)" } } } - - public class PaperDocChangeSubscriptionDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperDocChangeSubscriptionDetails) throws -> JSON { + public class PreviewsAiPolicyChangedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PreviewsAiPolicyChangedDetails) throws -> JSON { let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), - "new_subscription_level": try Serialization._StringSerializer.serialize(value.newSubscriptionLevel), - "previous_subscription_level": try NullableSerializer(Serialization._StringSerializer).serialize(value.previousSubscriptionLevel), + "new_value": try TeamLog.PreviewsAiPolicySerializer().serialize(value.newValue), + "previous_value": try TeamLog.PreviewsAiPolicySerializer().serialize(value.previousValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperDocChangeSubscriptionDetails { + public func deserialize(_ json: JSON) throws -> PreviewsAiPolicyChangedDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - let newSubscriptionLevel = try Serialization._StringSerializer.deserialize(dict["new_subscription_level"] ?? .null) - let previousSubscriptionLevel = try NullableSerializer(Serialization._StringSerializer) - .deserialize(dict["previous_subscription_level"] ?? .null) - return PaperDocChangeSubscriptionDetails( - eventUuid: eventUuid, - newSubscriptionLevel: newSubscriptionLevel, - previousSubscriptionLevel: previousSubscriptionLevel - ) - default: - throw JSONSerializerError.deserializeError(type: PaperDocChangeSubscriptionDetails.self, json: json) + case .dictionary(let dict): + let newValue = try TeamLog.PreviewsAiPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try TeamLog.PreviewsAiPolicySerializer().deserialize(dict["previous_value"] ?? .null) + return PreviewsAiPolicyChangedDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: PreviewsAiPolicyChangedDetails.self, json: json) } } } - /// The PaperDocChangeSubscriptionType struct - public class PaperDocChangeSubscriptionType: CustomStringConvertible, JSONRepresentable { + /// The PreviewsAiPolicyChangedType struct + public class PreviewsAiPolicyChangedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -43072,261 +55991,266 @@ public class TeamLog { } func json() throws -> JSON { - try PaperDocChangeSubscriptionTypeSerializer().serialize(self) + try PreviewsAiPolicyChangedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocChangeSubscriptionTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PreviewsAiPolicyChangedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperDocChangeSubscriptionType: \(error)" + return "Failed to generate description for PreviewsAiPolicyChangedType: \(error)" } } } - - public class PaperDocChangeSubscriptionTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperDocChangeSubscriptionType) throws -> JSON { + public class PreviewsAiPolicyChangedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PreviewsAiPolicyChangedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperDocChangeSubscriptionType { + public func deserialize(_ json: JSON) throws -> PreviewsAiPolicyChangedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return PaperDocChangeSubscriptionType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: PaperDocChangeSubscriptionType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return PreviewsAiPolicyChangedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: PreviewsAiPolicyChangedType.self, json: json) } } } - /// Deleted Paper doc comment. - public class PaperDocDeleteCommentDetails: CustomStringConvertible, JSONRepresentable { - /// Event unique identifier. - public let eventUuid: String - /// Comment text. - public let commentText: String? - public init(eventUuid: String, commentText: String? = nil) { - stringValidator()(eventUuid) - self.eventUuid = eventUuid - nullableValidator(stringValidator())(commentText) - self.commentText = commentText + /// Team merge request acceptance details shown to the primary team + public class PrimaryTeamRequestAcceptedDetails: CustomStringConvertible, JSONRepresentable { + /// The secondary team name. + public let secondaryTeam: String + /// The name of the secondary team admin who sent the request originally. + public let sentBy: String + public init(secondaryTeam: String, sentBy: String) { + stringValidator()(secondaryTeam) + self.secondaryTeam = secondaryTeam + stringValidator()(sentBy) + self.sentBy = sentBy } func json() throws -> JSON { - try PaperDocDeleteCommentDetailsSerializer().serialize(self) + try PrimaryTeamRequestAcceptedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocDeleteCommentDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PrimaryTeamRequestAcceptedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperDocDeleteCommentDetails: \(error)" + return "Failed to generate description for PrimaryTeamRequestAcceptedDetails: \(error)" } } } - - public class PaperDocDeleteCommentDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperDocDeleteCommentDetails) throws -> JSON { + public class PrimaryTeamRequestAcceptedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PrimaryTeamRequestAcceptedDetails) throws -> JSON { let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), - "comment_text": try NullableSerializer(Serialization._StringSerializer).serialize(value.commentText), + "secondary_team": try Serialization._StringSerializer.serialize(value.secondaryTeam), + "sent_by": try Serialization._StringSerializer.serialize(value.sentBy), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperDocDeleteCommentDetails { + public func deserialize(_ json: JSON) throws -> PrimaryTeamRequestAcceptedDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - let commentText = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["comment_text"] ?? .null) - return PaperDocDeleteCommentDetails(eventUuid: eventUuid, commentText: commentText) - default: - throw JSONSerializerError.deserializeError(type: PaperDocDeleteCommentDetails.self, json: json) + case .dictionary(let dict): + let secondaryTeam = try Serialization._StringSerializer.deserialize(dict["secondary_team"] ?? .null) + let sentBy = try Serialization._StringSerializer.deserialize(dict["sent_by"] ?? .null) + return PrimaryTeamRequestAcceptedDetails(secondaryTeam: secondaryTeam, sentBy: sentBy) + default: + throw JSONSerializerError.deserializeError(type: PrimaryTeamRequestAcceptedDetails.self, json: json) } } } - /// The PaperDocDeleteCommentType struct - public class PaperDocDeleteCommentType: CustomStringConvertible, JSONRepresentable { - /// (no description) - public let description_: String - public init(description_: String) { - stringValidator()(description_) - self.description_ = description_ + /// Team merge request cancellation details shown to the primary team + public class PrimaryTeamRequestCanceledDetails: CustomStringConvertible, JSONRepresentable { + /// The secondary team name. + public let secondaryTeam: String + /// The name of the secondary team admin who sent the request originally. + public let sentBy: String + public init(secondaryTeam: String, sentBy: String) { + stringValidator()(secondaryTeam) + self.secondaryTeam = secondaryTeam + stringValidator()(sentBy) + self.sentBy = sentBy } func json() throws -> JSON { - try PaperDocDeleteCommentTypeSerializer().serialize(self) + try PrimaryTeamRequestCanceledDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocDeleteCommentTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PrimaryTeamRequestCanceledDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperDocDeleteCommentType: \(error)" + return "Failed to generate description for PrimaryTeamRequestCanceledDetails: \(error)" } } } - - public class PaperDocDeleteCommentTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperDocDeleteCommentType) throws -> JSON { + public class PrimaryTeamRequestCanceledDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PrimaryTeamRequestCanceledDetails) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "secondary_team": try Serialization._StringSerializer.serialize(value.secondaryTeam), + "sent_by": try Serialization._StringSerializer.serialize(value.sentBy), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperDocDeleteCommentType { + public func deserialize(_ json: JSON) throws -> PrimaryTeamRequestCanceledDetails { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return PaperDocDeleteCommentType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: PaperDocDeleteCommentType.self, json: json) + case .dictionary(let dict): + let secondaryTeam = try Serialization._StringSerializer.deserialize(dict["secondary_team"] ?? .null) + let sentBy = try Serialization._StringSerializer.deserialize(dict["sent_by"] ?? .null) + return PrimaryTeamRequestCanceledDetails(secondaryTeam: secondaryTeam, sentBy: sentBy) + default: + throw JSONSerializerError.deserializeError(type: PrimaryTeamRequestCanceledDetails.self, json: json) } } } - /// Archived Paper doc. - public class PaperDocDeletedDetails: CustomStringConvertible, JSONRepresentable { - /// Event unique identifier. - public let eventUuid: String - public init(eventUuid: String) { - stringValidator()(eventUuid) - self.eventUuid = eventUuid + /// Team merge request expiration details shown to the primary team + public class PrimaryTeamRequestExpiredDetails: CustomStringConvertible, JSONRepresentable { + /// The secondary team name. + public let secondaryTeam: String + /// The name of the secondary team admin who sent the request originally. + public let sentBy: String + public init(secondaryTeam: String, sentBy: String) { + stringValidator()(secondaryTeam) + self.secondaryTeam = secondaryTeam + stringValidator()(sentBy) + self.sentBy = sentBy } func json() throws -> JSON { - try PaperDocDeletedDetailsSerializer().serialize(self) + try PrimaryTeamRequestExpiredDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocDeletedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PrimaryTeamRequestExpiredDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperDocDeletedDetails: \(error)" + return "Failed to generate description for PrimaryTeamRequestExpiredDetails: \(error)" } } } - - public class PaperDocDeletedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperDocDeletedDetails) throws -> JSON { + public class PrimaryTeamRequestExpiredDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PrimaryTeamRequestExpiredDetails) throws -> JSON { let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + "secondary_team": try Serialization._StringSerializer.serialize(value.secondaryTeam), + "sent_by": try Serialization._StringSerializer.serialize(value.sentBy), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperDocDeletedDetails { + public func deserialize(_ json: JSON) throws -> PrimaryTeamRequestExpiredDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - return PaperDocDeletedDetails(eventUuid: eventUuid) - default: - throw JSONSerializerError.deserializeError(type: PaperDocDeletedDetails.self, json: json) + case .dictionary(let dict): + let secondaryTeam = try Serialization._StringSerializer.deserialize(dict["secondary_team"] ?? .null) + let sentBy = try Serialization._StringSerializer.deserialize(dict["sent_by"] ?? .null) + return PrimaryTeamRequestExpiredDetails(secondaryTeam: secondaryTeam, sentBy: sentBy) + default: + throw JSONSerializerError.deserializeError(type: PrimaryTeamRequestExpiredDetails.self, json: json) } } } - /// The PaperDocDeletedType struct - public class PaperDocDeletedType: CustomStringConvertible, JSONRepresentable { - /// (no description) - public let description_: String - public init(description_: String) { - stringValidator()(description_) - self.description_ = description_ + /// Team merge request reminder details shown to the primary team + public class PrimaryTeamRequestReminderDetails: CustomStringConvertible, JSONRepresentable { + /// The secondary team name. + public let secondaryTeam: String + /// The name of the primary team admin the request was sent to. + public let sentTo: String + public init(secondaryTeam: String, sentTo: String) { + stringValidator()(secondaryTeam) + self.secondaryTeam = secondaryTeam + stringValidator()(sentTo) + self.sentTo = sentTo } func json() throws -> JSON { - try PaperDocDeletedTypeSerializer().serialize(self) + try PrimaryTeamRequestReminderDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocDeletedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try PrimaryTeamRequestReminderDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperDocDeletedType: \(error)" + return "Failed to generate description for PrimaryTeamRequestReminderDetails: \(error)" } } } - - public class PaperDocDeletedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperDocDeletedType) throws -> JSON { + public class PrimaryTeamRequestReminderDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: PrimaryTeamRequestReminderDetails) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "secondary_team": try Serialization._StringSerializer.serialize(value.secondaryTeam), + "sent_to": try Serialization._StringSerializer.serialize(value.sentTo), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperDocDeletedType { + public func deserialize(_ json: JSON) throws -> PrimaryTeamRequestReminderDetails { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return PaperDocDeletedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: PaperDocDeletedType.self, json: json) + case .dictionary(let dict): + let secondaryTeam = try Serialization._StringSerializer.deserialize(dict["secondary_team"] ?? .null) + let sentTo = try Serialization._StringSerializer.deserialize(dict["sent_to"] ?? .null) + return PrimaryTeamRequestReminderDetails(secondaryTeam: secondaryTeam, sentTo: sentTo) + default: + throw JSONSerializerError.deserializeError(type: PrimaryTeamRequestReminderDetails.self, json: json) } } } - /// Downloaded Paper doc in specific format. - public class PaperDocDownloadDetails: CustomStringConvertible, JSONRepresentable { - /// Event unique identifier. - public let eventUuid: String - /// Export file format. - public let exportFileFormat: TeamLog.PaperDownloadFormat - public init(eventUuid: String, exportFileFormat: TeamLog.PaperDownloadFormat) { - stringValidator()(eventUuid) - self.eventUuid = eventUuid - self.exportFileFormat = exportFileFormat + /// Product assigned to team member. + public class ProductAssignedToMemberDetails: CustomStringConvertible, JSONRepresentable { + /// User's name. + public let userName: TeamLog.UserNameLogInfo + /// Product name. + public let productName: TeamLog.ProductLogInfo + public init(userName: TeamLog.UserNameLogInfo, productName: TeamLog.ProductLogInfo) { + self.userName = userName + self.productName = productName } func json() throws -> JSON { - try PaperDocDownloadDetailsSerializer().serialize(self) + try ProductAssignedToMemberDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocDownloadDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ProductAssignedToMemberDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperDocDownloadDetails: \(error)" + return "Failed to generate description for ProductAssignedToMemberDetails: \(error)" } } } - - public class PaperDocDownloadDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperDocDownloadDetails) throws -> JSON { + public class ProductAssignedToMemberDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ProductAssignedToMemberDetails) throws -> JSON { let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), - "export_file_format": try TeamLog.PaperDownloadFormatSerializer().serialize(value.exportFileFormat), + "user_name": try TeamLog.UserNameLogInfoSerializer().serialize(value.userName), + "product_name": try TeamLog.ProductLogInfoSerializer().serialize(value.productName), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperDocDownloadDetails { + public func deserialize(_ json: JSON) throws -> ProductAssignedToMemberDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - let exportFileFormat = try TeamLog.PaperDownloadFormatSerializer().deserialize(dict["export_file_format"] ?? .null) - return PaperDocDownloadDetails(eventUuid: eventUuid, exportFileFormat: exportFileFormat) - default: - throw JSONSerializerError.deserializeError(type: PaperDocDownloadDetails.self, json: json) + case .dictionary(let dict): + let userName = try TeamLog.UserNameLogInfoSerializer().deserialize(dict["user_name"] ?? .null) + let productName = try TeamLog.ProductLogInfoSerializer().deserialize(dict["product_name"] ?? .null) + return ProductAssignedToMemberDetails(userName: userName, productName: productName) + default: + throw JSONSerializerError.deserializeError(type: ProductAssignedToMemberDetails.self, json: json) } } } - /// The PaperDocDownloadType struct - public class PaperDocDownloadType: CustomStringConvertible, JSONRepresentable { + /// The ProductAssignedToMemberType struct + public class ProductAssignedToMemberType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -43335,172 +56259,122 @@ public class TeamLog { } func json() throws -> JSON { - try PaperDocDownloadTypeSerializer().serialize(self) - } - - public var description: String { - do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocDownloadTypeSerializer().serialize(self)))" - } catch { - return "Failed to generate description for PaperDocDownloadType: \(error)" - } - } - } - - public class PaperDocDownloadTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperDocDownloadType) throws -> JSON { - let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), - ] - return .dictionary(output) - } - - public func deserialize(_ json: JSON) throws -> PaperDocDownloadType { - switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return PaperDocDownloadType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: PaperDocDownloadType.self, json: json) - } - } - } - - /// Edited Paper doc comment. - public class PaperDocEditCommentDetails: CustomStringConvertible, JSONRepresentable { - /// Event unique identifier. - public let eventUuid: String - /// Comment text. - public let commentText: String? - public init(eventUuid: String, commentText: String? = nil) { - stringValidator()(eventUuid) - self.eventUuid = eventUuid - nullableValidator(stringValidator())(commentText) - self.commentText = commentText - } - - func json() throws -> JSON { - try PaperDocEditCommentDetailsSerializer().serialize(self) + try ProductAssignedToMemberTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocEditCommentDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ProductAssignedToMemberTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperDocEditCommentDetails: \(error)" + return "Failed to generate description for ProductAssignedToMemberType: \(error)" } } } - - public class PaperDocEditCommentDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperDocEditCommentDetails) throws -> JSON { + public class ProductAssignedToMemberTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ProductAssignedToMemberType) throws -> JSON { let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), - "comment_text": try NullableSerializer(Serialization._StringSerializer).serialize(value.commentText), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperDocEditCommentDetails { + public func deserialize(_ json: JSON) throws -> ProductAssignedToMemberType { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - let commentText = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["comment_text"] ?? .null) - return PaperDocEditCommentDetails(eventUuid: eventUuid, commentText: commentText) - default: - throw JSONSerializerError.deserializeError(type: PaperDocEditCommentDetails.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ProductAssignedToMemberType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ProductAssignedToMemberType.self, json: json) } } } - /// The PaperDocEditCommentType struct - public class PaperDocEditCommentType: CustomStringConvertible, JSONRepresentable { - /// (no description) - public let description_: String - public init(description_: String) { - stringValidator()(description_) - self.description_ = description_ + /// Product logged information + public class ProductLogInfo: CustomStringConvertible, JSONRepresentable { + /// Product name. + public let productName: String + public init(productName: String) { + stringValidator()(productName) + self.productName = productName } func json() throws -> JSON { - try PaperDocEditCommentTypeSerializer().serialize(self) + try ProductLogInfoSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocEditCommentTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ProductLogInfoSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperDocEditCommentType: \(error)" + return "Failed to generate description for ProductLogInfo: \(error)" } } } - - public class PaperDocEditCommentTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperDocEditCommentType) throws -> JSON { + public class ProductLogInfoSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ProductLogInfo) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "product_name": try Serialization._StringSerializer.serialize(value.productName), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperDocEditCommentType { + public func deserialize(_ json: JSON) throws -> ProductLogInfo { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return PaperDocEditCommentType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: PaperDocEditCommentType.self, json: json) + case .dictionary(let dict): + let productName = try Serialization._StringSerializer.deserialize(dict["product_name"] ?? .null) + return ProductLogInfo(productName: productName) + default: + throw JSONSerializerError.deserializeError(type: ProductLogInfo.self, json: json) } } } - /// Edited Paper doc. - public class PaperDocEditDetails: CustomStringConvertible, JSONRepresentable { - /// Event unique identifier. - public let eventUuid: String - public init(eventUuid: String) { - stringValidator()(eventUuid) - self.eventUuid = eventUuid + /// Product removed from team member. + public class ProductRemovedFromMemberDetails: CustomStringConvertible, JSONRepresentable { + /// User's name. + public let userName: TeamLog.UserNameLogInfo + /// Product name. + public let productName: TeamLog.ProductLogInfo + public init(userName: TeamLog.UserNameLogInfo, productName: TeamLog.ProductLogInfo) { + self.userName = userName + self.productName = productName } func json() throws -> JSON { - try PaperDocEditDetailsSerializer().serialize(self) + try ProductRemovedFromMemberDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocEditDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ProductRemovedFromMemberDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperDocEditDetails: \(error)" + return "Failed to generate description for ProductRemovedFromMemberDetails: \(error)" } } } - - public class PaperDocEditDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperDocEditDetails) throws -> JSON { + public class ProductRemovedFromMemberDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ProductRemovedFromMemberDetails) throws -> JSON { let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + "user_name": try TeamLog.UserNameLogInfoSerializer().serialize(value.userName), + "product_name": try TeamLog.ProductLogInfoSerializer().serialize(value.productName), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperDocEditDetails { + public func deserialize(_ json: JSON) throws -> ProductRemovedFromMemberDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - return PaperDocEditDetails(eventUuid: eventUuid) - default: - throw JSONSerializerError.deserializeError(type: PaperDocEditDetails.self, json: json) + case .dictionary(let dict): + let userName = try TeamLog.UserNameLogInfoSerializer().deserialize(dict["user_name"] ?? .null) + let productName = try TeamLog.ProductLogInfoSerializer().deserialize(dict["product_name"] ?? .null) + return ProductRemovedFromMemberDetails(userName: userName, productName: productName) + default: + throw JSONSerializerError.deserializeError(type: ProductRemovedFromMemberDetails.self, json: json) } } } - /// The PaperDocEditType struct - public class PaperDocEditType: CustomStringConvertible, JSONRepresentable { + /// The ProductRemovedFromMemberType struct + public class ProductRemovedFromMemberType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -43509,82 +56383,78 @@ public class TeamLog { } func json() throws -> JSON { - try PaperDocEditTypeSerializer().serialize(self) + try ProductRemovedFromMemberTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocEditTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ProductRemovedFromMemberTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperDocEditType: \(error)" + return "Failed to generate description for ProductRemovedFromMemberType: \(error)" } } } - - public class PaperDocEditTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperDocEditType) throws -> JSON { + public class ProductRemovedFromMemberTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ProductRemovedFromMemberType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperDocEditType { + public func deserialize(_ json: JSON) throws -> ProductRemovedFromMemberType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return PaperDocEditType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: PaperDocEditType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ProductRemovedFromMemberType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ProductRemovedFromMemberType.self, json: json) } } } - /// Followed Paper doc. - public class PaperDocFollowedDetails: CustomStringConvertible, JSONRepresentable { - /// Event unique identifier. - public let eventUuid: String - public init(eventUuid: String) { - stringValidator()(eventUuid) - self.eventUuid = eventUuid + /// Added collaborators via Dropbox Protect. + public class ProtectActionAddCollaboratorDetails: CustomStringConvertible, JSONRepresentable { + /// Action ID. + public let actionId: String + public init(actionId: String) { + stringValidator()(actionId) + self.actionId = actionId } func json() throws -> JSON { - try PaperDocFollowedDetailsSerializer().serialize(self) + try ProtectActionAddCollaboratorDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocFollowedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ProtectActionAddCollaboratorDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperDocFollowedDetails: \(error)" + return "Failed to generate description for ProtectActionAddCollaboratorDetails: \(error)" } } } - - public class PaperDocFollowedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperDocFollowedDetails) throws -> JSON { + public class ProtectActionAddCollaboratorDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ProtectActionAddCollaboratorDetails) throws -> JSON { let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + "action_id": try Serialization._StringSerializer.serialize(value.actionId), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperDocFollowedDetails { + public func deserialize(_ json: JSON) throws -> ProtectActionAddCollaboratorDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - return PaperDocFollowedDetails(eventUuid: eventUuid) - default: - throw JSONSerializerError.deserializeError(type: PaperDocFollowedDetails.self, json: json) + case .dictionary(let dict): + let actionId = try Serialization._StringSerializer.deserialize(dict["action_id"] ?? .null) + return ProtectActionAddCollaboratorDetails(actionId: actionId) + default: + throw JSONSerializerError.deserializeError(type: ProtectActionAddCollaboratorDetails.self, json: json) } } } - /// The PaperDocFollowedType struct - public class PaperDocFollowedType: CustomStringConvertible, JSONRepresentable { + /// The ProtectActionAddCollaboratorType struct + public class ProtectActionAddCollaboratorType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -43593,82 +56463,78 @@ public class TeamLog { } func json() throws -> JSON { - try PaperDocFollowedTypeSerializer().serialize(self) + try ProtectActionAddCollaboratorTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocFollowedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ProtectActionAddCollaboratorTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperDocFollowedType: \(error)" + return "Failed to generate description for ProtectActionAddCollaboratorType: \(error)" } } } - - public class PaperDocFollowedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperDocFollowedType) throws -> JSON { + public class ProtectActionAddCollaboratorTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ProtectActionAddCollaboratorType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperDocFollowedType { + public func deserialize(_ json: JSON) throws -> ProtectActionAddCollaboratorType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return PaperDocFollowedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: PaperDocFollowedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ProtectActionAddCollaboratorType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ProtectActionAddCollaboratorType.self, json: json) } } } - /// Mentioned user in Paper doc. - public class PaperDocMentionDetails: CustomStringConvertible, JSONRepresentable { - /// Event unique identifier. - public let eventUuid: String - public init(eventUuid: String) { - stringValidator()(eventUuid) - self.eventUuid = eventUuid + /// Added a link via Dropbox Protect. + public class ProtectActionAddLinkDetails: CustomStringConvertible, JSONRepresentable { + /// Action ID. + public let actionId: String + public init(actionId: String) { + stringValidator()(actionId) + self.actionId = actionId } func json() throws -> JSON { - try PaperDocMentionDetailsSerializer().serialize(self) + try ProtectActionAddLinkDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocMentionDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ProtectActionAddLinkDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperDocMentionDetails: \(error)" + return "Failed to generate description for ProtectActionAddLinkDetails: \(error)" } } } - - public class PaperDocMentionDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperDocMentionDetails) throws -> JSON { + public class ProtectActionAddLinkDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ProtectActionAddLinkDetails) throws -> JSON { let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + "action_id": try Serialization._StringSerializer.serialize(value.actionId), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperDocMentionDetails { + public func deserialize(_ json: JSON) throws -> ProtectActionAddLinkDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - return PaperDocMentionDetails(eventUuid: eventUuid) - default: - throw JSONSerializerError.deserializeError(type: PaperDocMentionDetails.self, json: json) + case .dictionary(let dict): + let actionId = try Serialization._StringSerializer.deserialize(dict["action_id"] ?? .null) + return ProtectActionAddLinkDetails(actionId: actionId) + default: + throw JSONSerializerError.deserializeError(type: ProtectActionAddLinkDetails.self, json: json) } } } - /// The PaperDocMentionType struct - public class PaperDocMentionType: CustomStringConvertible, JSONRepresentable { + /// The ProtectActionAddLinkType struct + public class ProtectActionAddLinkType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -43677,94 +56543,78 @@ public class TeamLog { } func json() throws -> JSON { - try PaperDocMentionTypeSerializer().serialize(self) + try ProtectActionAddLinkTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocMentionTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ProtectActionAddLinkTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperDocMentionType: \(error)" + return "Failed to generate description for ProtectActionAddLinkType: \(error)" } } } - - public class PaperDocMentionTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperDocMentionType) throws -> JSON { + public class ProtectActionAddLinkTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ProtectActionAddLinkType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperDocMentionType { + public func deserialize(_ json: JSON) throws -> ProtectActionAddLinkType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return PaperDocMentionType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: PaperDocMentionType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ProtectActionAddLinkType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ProtectActionAddLinkType.self, json: json) } } } - /// Transferred ownership of Paper doc. - public class PaperDocOwnershipChangedDetails: CustomStringConvertible, JSONRepresentable { - /// Event unique identifier. - public let eventUuid: String - /// Previous owner. - public let oldOwnerUserId: String? - /// New owner. - public let newOwnerUserId: String - public init(eventUuid: String, newOwnerUserId: String, oldOwnerUserId: String? = nil) { - stringValidator()(eventUuid) - self.eventUuid = eventUuid - nullableValidator(stringValidator(minLength: 40, maxLength: 40))(oldOwnerUserId) - self.oldOwnerUserId = oldOwnerUserId - stringValidator(minLength: 40, maxLength: 40)(newOwnerUserId) - self.newOwnerUserId = newOwnerUserId + /// Deleted content via Dropbox Protect. + public class ProtectActionDeleteDetails: CustomStringConvertible, JSONRepresentable { + /// Action ID. + public let actionId: String + public init(actionId: String) { + stringValidator()(actionId) + self.actionId = actionId } func json() throws -> JSON { - try PaperDocOwnershipChangedDetailsSerializer().serialize(self) + try ProtectActionDeleteDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocOwnershipChangedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ProtectActionDeleteDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperDocOwnershipChangedDetails: \(error)" + return "Failed to generate description for ProtectActionDeleteDetails: \(error)" } } } - - public class PaperDocOwnershipChangedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperDocOwnershipChangedDetails) throws -> JSON { + public class ProtectActionDeleteDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ProtectActionDeleteDetails) throws -> JSON { let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), - "new_owner_user_id": try Serialization._StringSerializer.serialize(value.newOwnerUserId), - "old_owner_user_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.oldOwnerUserId), + "action_id": try Serialization._StringSerializer.serialize(value.actionId), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperDocOwnershipChangedDetails { + public func deserialize(_ json: JSON) throws -> ProtectActionDeleteDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - let newOwnerUserId = try Serialization._StringSerializer.deserialize(dict["new_owner_user_id"] ?? .null) - let oldOwnerUserId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["old_owner_user_id"] ?? .null) - return PaperDocOwnershipChangedDetails(eventUuid: eventUuid, newOwnerUserId: newOwnerUserId, oldOwnerUserId: oldOwnerUserId) - default: - throw JSONSerializerError.deserializeError(type: PaperDocOwnershipChangedDetails.self, json: json) + case .dictionary(let dict): + let actionId = try Serialization._StringSerializer.deserialize(dict["action_id"] ?? .null) + return ProtectActionDeleteDetails(actionId: actionId) + default: + throw JSONSerializerError.deserializeError(type: ProtectActionDeleteDetails.self, json: json) } } } - /// The PaperDocOwnershipChangedType struct - public class PaperDocOwnershipChangedType: CustomStringConvertible, JSONRepresentable { + /// The ProtectActionDeleteType struct + public class ProtectActionDeleteType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -43773,82 +56623,78 @@ public class TeamLog { } func json() throws -> JSON { - try PaperDocOwnershipChangedTypeSerializer().serialize(self) + try ProtectActionDeleteTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocOwnershipChangedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ProtectActionDeleteTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperDocOwnershipChangedType: \(error)" + return "Failed to generate description for ProtectActionDeleteType: \(error)" } } } - - public class PaperDocOwnershipChangedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperDocOwnershipChangedType) throws -> JSON { + public class ProtectActionDeleteTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ProtectActionDeleteType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperDocOwnershipChangedType { + public func deserialize(_ json: JSON) throws -> ProtectActionDeleteType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return PaperDocOwnershipChangedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: PaperDocOwnershipChangedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ProtectActionDeleteType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ProtectActionDeleteType.self, json: json) } } } - /// Requested access to Paper doc. - public class PaperDocRequestAccessDetails: CustomStringConvertible, JSONRepresentable { - /// Event unique identifier. - public let eventUuid: String - public init(eventUuid: String) { - stringValidator()(eventUuid) - self.eventUuid = eventUuid + /// Exported content via Dropbox Protect. + public class ProtectActionExportDetails: CustomStringConvertible, JSONRepresentable { + /// Action ID. + public let actionId: String + public init(actionId: String) { + stringValidator()(actionId) + self.actionId = actionId } func json() throws -> JSON { - try PaperDocRequestAccessDetailsSerializer().serialize(self) + try ProtectActionExportDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocRequestAccessDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ProtectActionExportDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperDocRequestAccessDetails: \(error)" + return "Failed to generate description for ProtectActionExportDetails: \(error)" } } } - - public class PaperDocRequestAccessDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperDocRequestAccessDetails) throws -> JSON { + public class ProtectActionExportDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ProtectActionExportDetails) throws -> JSON { let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + "action_id": try Serialization._StringSerializer.serialize(value.actionId), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperDocRequestAccessDetails { + public func deserialize(_ json: JSON) throws -> ProtectActionExportDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - return PaperDocRequestAccessDetails(eventUuid: eventUuid) - default: - throw JSONSerializerError.deserializeError(type: PaperDocRequestAccessDetails.self, json: json) + case .dictionary(let dict): + let actionId = try Serialization._StringSerializer.deserialize(dict["action_id"] ?? .null) + return ProtectActionExportDetails(actionId: actionId) + default: + throw JSONSerializerError.deserializeError(type: ProtectActionExportDetails.self, json: json) } } } - /// The PaperDocRequestAccessType struct - public class PaperDocRequestAccessType: CustomStringConvertible, JSONRepresentable { + /// The ProtectActionExportType struct + public class ProtectActionExportType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -43857,88 +56703,78 @@ public class TeamLog { } func json() throws -> JSON { - try PaperDocRequestAccessTypeSerializer().serialize(self) + try ProtectActionExportTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocRequestAccessTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ProtectActionExportTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperDocRequestAccessType: \(error)" + return "Failed to generate description for ProtectActionExportType: \(error)" } } } - - public class PaperDocRequestAccessTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperDocRequestAccessType) throws -> JSON { + public class ProtectActionExportTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ProtectActionExportType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperDocRequestAccessType { + public func deserialize(_ json: JSON) throws -> ProtectActionExportType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return PaperDocRequestAccessType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: PaperDocRequestAccessType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ProtectActionExportType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ProtectActionExportType.self, json: json) } } } - /// Resolved Paper doc comment. - public class PaperDocResolveCommentDetails: CustomStringConvertible, JSONRepresentable { - /// Event unique identifier. - public let eventUuid: String - /// Comment text. - public let commentText: String? - public init(eventUuid: String, commentText: String? = nil) { - stringValidator()(eventUuid) - self.eventUuid = eventUuid - nullableValidator(stringValidator())(commentText) - self.commentText = commentText + /// Removed collaborators via Dropbox Protect. + public class ProtectActionRemoveCollaboratorDetails: CustomStringConvertible, JSONRepresentable { + /// Action ID. + public let actionId: String + public init(actionId: String) { + stringValidator()(actionId) + self.actionId = actionId } func json() throws -> JSON { - try PaperDocResolveCommentDetailsSerializer().serialize(self) + try ProtectActionRemoveCollaboratorDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocResolveCommentDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ProtectActionRemoveCollaboratorDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperDocResolveCommentDetails: \(error)" + return "Failed to generate description for ProtectActionRemoveCollaboratorDetails: \(error)" } } } - - public class PaperDocResolveCommentDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperDocResolveCommentDetails) throws -> JSON { + public class ProtectActionRemoveCollaboratorDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ProtectActionRemoveCollaboratorDetails) throws -> JSON { let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), - "comment_text": try NullableSerializer(Serialization._StringSerializer).serialize(value.commentText), + "action_id": try Serialization._StringSerializer.serialize(value.actionId), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperDocResolveCommentDetails { + public func deserialize(_ json: JSON) throws -> ProtectActionRemoveCollaboratorDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - let commentText = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["comment_text"] ?? .null) - return PaperDocResolveCommentDetails(eventUuid: eventUuid, commentText: commentText) - default: - throw JSONSerializerError.deserializeError(type: PaperDocResolveCommentDetails.self, json: json) + case .dictionary(let dict): + let actionId = try Serialization._StringSerializer.deserialize(dict["action_id"] ?? .null) + return ProtectActionRemoveCollaboratorDetails(actionId: actionId) + default: + throw JSONSerializerError.deserializeError(type: ProtectActionRemoveCollaboratorDetails.self, json: json) } } } - /// The PaperDocResolveCommentType struct - public class PaperDocResolveCommentType: CustomStringConvertible, JSONRepresentable { + /// The ProtectActionRemoveCollaboratorType struct + public class ProtectActionRemoveCollaboratorType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -43947,82 +56783,78 @@ public class TeamLog { } func json() throws -> JSON { - try PaperDocResolveCommentTypeSerializer().serialize(self) + try ProtectActionRemoveCollaboratorTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocResolveCommentTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ProtectActionRemoveCollaboratorTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperDocResolveCommentType: \(error)" + return "Failed to generate description for ProtectActionRemoveCollaboratorType: \(error)" } } } - - public class PaperDocResolveCommentTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperDocResolveCommentType) throws -> JSON { + public class ProtectActionRemoveCollaboratorTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ProtectActionRemoveCollaboratorType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperDocResolveCommentType { + public func deserialize(_ json: JSON) throws -> ProtectActionRemoveCollaboratorType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return PaperDocResolveCommentType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: PaperDocResolveCommentType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ProtectActionRemoveCollaboratorType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ProtectActionRemoveCollaboratorType.self, json: json) } } } - /// Restored Paper doc to previous version. - public class PaperDocRevertDetails: CustomStringConvertible, JSONRepresentable { - /// Event unique identifier. - public let eventUuid: String - public init(eventUuid: String) { - stringValidator()(eventUuid) - self.eventUuid = eventUuid + /// Removed a link via Dropbox Protect. + public class ProtectActionRemoveLinkDetails: CustomStringConvertible, JSONRepresentable { + /// Action ID. + public let actionId: String + public init(actionId: String) { + stringValidator()(actionId) + self.actionId = actionId } func json() throws -> JSON { - try PaperDocRevertDetailsSerializer().serialize(self) + try ProtectActionRemoveLinkDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocRevertDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ProtectActionRemoveLinkDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperDocRevertDetails: \(error)" + return "Failed to generate description for ProtectActionRemoveLinkDetails: \(error)" } } } - - public class PaperDocRevertDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperDocRevertDetails) throws -> JSON { + public class ProtectActionRemoveLinkDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ProtectActionRemoveLinkDetails) throws -> JSON { let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + "action_id": try Serialization._StringSerializer.serialize(value.actionId), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperDocRevertDetails { + public func deserialize(_ json: JSON) throws -> ProtectActionRemoveLinkDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - return PaperDocRevertDetails(eventUuid: eventUuid) - default: - throw JSONSerializerError.deserializeError(type: PaperDocRevertDetails.self, json: json) + case .dictionary(let dict): + let actionId = try Serialization._StringSerializer.deserialize(dict["action_id"] ?? .null) + return ProtectActionRemoveLinkDetails(actionId: actionId) + default: + throw JSONSerializerError.deserializeError(type: ProtectActionRemoveLinkDetails.self, json: json) } } } - /// The PaperDocRevertType struct - public class PaperDocRevertType: CustomStringConvertible, JSONRepresentable { + /// The ProtectActionRemoveLinkType struct + public class ProtectActionRemoveLinkType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -44031,82 +56863,78 @@ public class TeamLog { } func json() throws -> JSON { - try PaperDocRevertTypeSerializer().serialize(self) + try ProtectActionRemoveLinkTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocRevertTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ProtectActionRemoveLinkTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperDocRevertType: \(error)" + return "Failed to generate description for ProtectActionRemoveLinkType: \(error)" } } } - - public class PaperDocRevertTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperDocRevertType) throws -> JSON { + public class ProtectActionRemoveLinkTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ProtectActionRemoveLinkType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperDocRevertType { + public func deserialize(_ json: JSON) throws -> ProtectActionRemoveLinkType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return PaperDocRevertType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: PaperDocRevertType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ProtectActionRemoveLinkType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ProtectActionRemoveLinkType.self, json: json) } } } - /// Shared Paper doc via Slack. - public class PaperDocSlackShareDetails: CustomStringConvertible, JSONRepresentable { - /// Event unique identifier. - public let eventUuid: String - public init(eventUuid: String) { - stringValidator()(eventUuid) - self.eventUuid = eventUuid + /// Stopped sharing content via Dropbox Protect. + public class ProtectActionStopSharingDetails: CustomStringConvertible, JSONRepresentable { + /// Action ID. + public let actionId: String + public init(actionId: String) { + stringValidator()(actionId) + self.actionId = actionId } func json() throws -> JSON { - try PaperDocSlackShareDetailsSerializer().serialize(self) + try ProtectActionStopSharingDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocSlackShareDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ProtectActionStopSharingDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperDocSlackShareDetails: \(error)" + return "Failed to generate description for ProtectActionStopSharingDetails: \(error)" } } } - - public class PaperDocSlackShareDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperDocSlackShareDetails) throws -> JSON { + public class ProtectActionStopSharingDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ProtectActionStopSharingDetails) throws -> JSON { let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + "action_id": try Serialization._StringSerializer.serialize(value.actionId), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperDocSlackShareDetails { + public func deserialize(_ json: JSON) throws -> ProtectActionStopSharingDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - return PaperDocSlackShareDetails(eventUuid: eventUuid) - default: - throw JSONSerializerError.deserializeError(type: PaperDocSlackShareDetails.self, json: json) + case .dictionary(let dict): + let actionId = try Serialization._StringSerializer.deserialize(dict["action_id"] ?? .null) + return ProtectActionStopSharingDetails(actionId: actionId) + default: + throw JSONSerializerError.deserializeError(type: ProtectActionStopSharingDetails.self, json: json) } } } - /// The PaperDocSlackShareType struct - public class PaperDocSlackShareType: CustomStringConvertible, JSONRepresentable { + /// The ProtectActionStopSharingType struct + public class ProtectActionStopSharingType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -44115,82 +56943,84 @@ public class TeamLog { } func json() throws -> JSON { - try PaperDocSlackShareTypeSerializer().serialize(self) + try ProtectActionStopSharingTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocSlackShareTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ProtectActionStopSharingTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperDocSlackShareType: \(error)" + return "Failed to generate description for ProtectActionStopSharingType: \(error)" } } } - - public class PaperDocSlackShareTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperDocSlackShareType) throws -> JSON { + public class ProtectActionStopSharingTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ProtectActionStopSharingType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperDocSlackShareType { + public func deserialize(_ json: JSON) throws -> ProtectActionStopSharingType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return PaperDocSlackShareType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: PaperDocSlackShareType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ProtectActionStopSharingType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ProtectActionStopSharingType.self, json: json) } } } - /// Shared Paper doc with users and/or groups. - public class PaperDocTeamInviteDetails: CustomStringConvertible, JSONRepresentable { - /// Event unique identifier. - public let eventUuid: String - public init(eventUuid: String) { - stringValidator()(eventUuid) - self.eventUuid = eventUuid + /// Modified Protect internal domains list. + public class ProtectInternalDomainsChangedDetails: CustomStringConvertible, JSONRepresentable { + /// Domains added to the internal domains list. + public let domainsAdded: Array? + /// Domains removed from the internal domains list. + public let domainsRemoved: Array? + public init(domainsAdded: Array? = nil, domainsRemoved: Array? = nil) { + nullableValidator(arrayValidator(itemValidator: stringValidator()))(domainsAdded) + self.domainsAdded = domainsAdded + nullableValidator(arrayValidator(itemValidator: stringValidator()))(domainsRemoved) + self.domainsRemoved = domainsRemoved } func json() throws -> JSON { - try PaperDocTeamInviteDetailsSerializer().serialize(self) + try ProtectInternalDomainsChangedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocTeamInviteDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ProtectInternalDomainsChangedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperDocTeamInviteDetails: \(error)" + return "Failed to generate description for ProtectInternalDomainsChangedDetails: \(error)" } } } - - public class PaperDocTeamInviteDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperDocTeamInviteDetails) throws -> JSON { + public class ProtectInternalDomainsChangedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ProtectInternalDomainsChangedDetails) throws -> JSON { let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + "domains_added": try NullableSerializer(ArraySerializer(Serialization._StringSerializer)).serialize(value.domainsAdded), + "domains_removed": try NullableSerializer(ArraySerializer(Serialization._StringSerializer)).serialize(value.domainsRemoved), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperDocTeamInviteDetails { + public func deserialize(_ json: JSON) throws -> ProtectInternalDomainsChangedDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - return PaperDocTeamInviteDetails(eventUuid: eventUuid) - default: - throw JSONSerializerError.deserializeError(type: PaperDocTeamInviteDetails.self, json: json) + case .dictionary(let dict): + let domainsAdded = try NullableSerializer(ArraySerializer(Serialization._StringSerializer)).deserialize(dict["domains_added"] ?? .null) + let domainsRemoved = try NullableSerializer(ArraySerializer(Serialization._StringSerializer)).deserialize(dict["domains_removed"] ?? .null) + return ProtectInternalDomainsChangedDetails(domainsAdded: domainsAdded, domainsRemoved: domainsRemoved) + default: + throw JSONSerializerError.deserializeError(type: ProtectInternalDomainsChangedDetails.self, json: json) } } } - /// The PaperDocTeamInviteType struct - public class PaperDocTeamInviteType: CustomStringConvertible, JSONRepresentable { + /// The ProtectInternalDomainsChangedType struct + public class ProtectInternalDomainsChangedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -44199,172 +57029,239 @@ public class TeamLog { } func json() throws -> JSON { - try PaperDocTeamInviteTypeSerializer().serialize(self) + try ProtectInternalDomainsChangedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocTeamInviteTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ProtectInternalDomainsChangedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperDocTeamInviteType: \(error)" + return "Failed to generate description for ProtectInternalDomainsChangedType: \(error)" } } } - - public class PaperDocTeamInviteTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperDocTeamInviteType) throws -> JSON { + public class ProtectInternalDomainsChangedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ProtectInternalDomainsChangedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperDocTeamInviteType { + public func deserialize(_ json: JSON) throws -> ProtectInternalDomainsChangedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return PaperDocTeamInviteType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: PaperDocTeamInviteType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ProtectInternalDomainsChangedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ProtectInternalDomainsChangedType.self, json: json) } } } - /// Deleted Paper doc. - public class PaperDocTrashedDetails: CustomStringConvertible, JSONRepresentable { - /// Event unique identifier. - public let eventUuid: String - public init(eventUuid: String) { - stringValidator()(eventUuid) - self.eventUuid = eventUuid - } + /// Quick action type. + public enum QuickActionType: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case deleteSharedLink + /// An unspecified error. + case resetPassword + /// An unspecified error. + case restoreFileOrFolder + /// An unspecified error. + case unlinkApp + /// An unspecified error. + case unlinkDevice + /// An unspecified error. + case unlinkSession + /// An unspecified error. + case other func json() throws -> JSON { - try PaperDocTrashedDetailsSerializer().serialize(self) + try QuickActionTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocTrashedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try QuickActionTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperDocTrashedDetails: \(error)" + return "Failed to generate description for QuickActionType: \(error)" + } + } + } + public class QuickActionTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: QuickActionType) throws -> JSON { + switch value { + case .deleteSharedLink: + var d = [String: JSON]() + d[".tag"] = .str("delete_shared_link") + return .dictionary(d) + case .resetPassword: + var d = [String: JSON]() + d[".tag"] = .str("reset_password") + return .dictionary(d) + case .restoreFileOrFolder: + var d = [String: JSON]() + d[".tag"] = .str("restore_file_or_folder") + return .dictionary(d) + case .unlinkApp: + var d = [String: JSON]() + d[".tag"] = .str("unlink_app") + return .dictionary(d) + case .unlinkDevice: + var d = [String: JSON]() + d[".tag"] = .str("unlink_device") + return .dictionary(d) + case .unlinkSession: + var d = [String: JSON]() + d[".tag"] = .str("unlink_session") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> QuickActionType { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "delete_shared_link": + return QuickActionType.deleteSharedLink + case "reset_password": + return QuickActionType.resetPassword + case "restore_file_or_folder": + return QuickActionType.restoreFileOrFolder + case "unlink_app": + return QuickActionType.unlinkApp + case "unlink_device": + return QuickActionType.unlinkDevice + case "unlink_session": + return QuickActionType.unlinkSession + case "other": + return QuickActionType.other + default: + return QuickActionType.other + } + default: + throw JSONSerializerError.deserializeError(type: QuickActionType.self, json: json) } } } - public class PaperDocTrashedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperDocTrashedDetails) throws -> JSON { - let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), - ] - return .dictionary(output) + /// Created ransomware report. + public class RansomwareAlertCreateReportDetails: CustomStringConvertible, JSONRepresentable { + + func json() throws -> JSON { + try RansomwareAlertCreateReportDetailsSerializer().serialize(self) } - public func deserialize(_ json: JSON) throws -> PaperDocTrashedDetails { + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try RansomwareAlertCreateReportDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for RansomwareAlertCreateReportDetails: \(error)" + } + } + } + public class RansomwareAlertCreateReportDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: RansomwareAlertCreateReportDetails) throws -> JSON { + let output = [String: JSON]() + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> RansomwareAlertCreateReportDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - return PaperDocTrashedDetails(eventUuid: eventUuid) - default: - throw JSONSerializerError.deserializeError(type: PaperDocTrashedDetails.self, json: json) + case .dictionary(_): + return RansomwareAlertCreateReportDetails() + default: + throw JSONSerializerError.deserializeError(type: RansomwareAlertCreateReportDetails.self, json: json) } } } - /// The PaperDocTrashedType struct - public class PaperDocTrashedType: CustomStringConvertible, JSONRepresentable { - /// (no description) - public let description_: String - public init(description_: String) { - stringValidator()(description_) - self.description_ = description_ + /// Couldn't generate ransomware report. + public class RansomwareAlertCreateReportFailedDetails: CustomStringConvertible, JSONRepresentable { + /// Failure reason. + public let failureReason: Team.TeamReportFailureReason + public init(failureReason: Team.TeamReportFailureReason) { + self.failureReason = failureReason } func json() throws -> JSON { - try PaperDocTrashedTypeSerializer().serialize(self) + try RansomwareAlertCreateReportFailedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocTrashedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try RansomwareAlertCreateReportFailedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperDocTrashedType: \(error)" + return "Failed to generate description for RansomwareAlertCreateReportFailedDetails: \(error)" } } } - - public class PaperDocTrashedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperDocTrashedType) throws -> JSON { + public class RansomwareAlertCreateReportFailedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: RansomwareAlertCreateReportFailedDetails) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "failure_reason": try Team.TeamReportFailureReasonSerializer().serialize(value.failureReason), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperDocTrashedType { + public func deserialize(_ json: JSON) throws -> RansomwareAlertCreateReportFailedDetails { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return PaperDocTrashedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: PaperDocTrashedType.self, json: json) + case .dictionary(let dict): + let failureReason = try Team.TeamReportFailureReasonSerializer().deserialize(dict["failure_reason"] ?? .null) + return RansomwareAlertCreateReportFailedDetails(failureReason: failureReason) + default: + throw JSONSerializerError.deserializeError(type: RansomwareAlertCreateReportFailedDetails.self, json: json) } } } - /// Unresolved Paper doc comment. - public class PaperDocUnresolveCommentDetails: CustomStringConvertible, JSONRepresentable { - /// Event unique identifier. - public let eventUuid: String - /// Comment text. - public let commentText: String? - public init(eventUuid: String, commentText: String? = nil) { - stringValidator()(eventUuid) - self.eventUuid = eventUuid - nullableValidator(stringValidator())(commentText) - self.commentText = commentText + /// The RansomwareAlertCreateReportFailedType struct + public class RansomwareAlertCreateReportFailedType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ } func json() throws -> JSON { - try PaperDocUnresolveCommentDetailsSerializer().serialize(self) + try RansomwareAlertCreateReportFailedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocUnresolveCommentDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try RansomwareAlertCreateReportFailedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperDocUnresolveCommentDetails: \(error)" + return "Failed to generate description for RansomwareAlertCreateReportFailedType: \(error)" } } } - - public class PaperDocUnresolveCommentDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperDocUnresolveCommentDetails) throws -> JSON { + public class RansomwareAlertCreateReportFailedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: RansomwareAlertCreateReportFailedType) throws -> JSON { let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), - "comment_text": try NullableSerializer(Serialization._StringSerializer).serialize(value.commentText), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperDocUnresolveCommentDetails { + public func deserialize(_ json: JSON) throws -> RansomwareAlertCreateReportFailedType { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - let commentText = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["comment_text"] ?? .null) - return PaperDocUnresolveCommentDetails(eventUuid: eventUuid, commentText: commentText) - default: - throw JSONSerializerError.deserializeError(type: PaperDocUnresolveCommentDetails.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return RansomwareAlertCreateReportFailedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: RansomwareAlertCreateReportFailedType.self, json: json) } } } - /// The PaperDocUnresolveCommentType struct - public class PaperDocUnresolveCommentType: CustomStringConvertible, JSONRepresentable { + /// The RansomwareAlertCreateReportType struct + public class RansomwareAlertCreateReportType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -44373,82 +57270,90 @@ public class TeamLog { } func json() throws -> JSON { - try PaperDocUnresolveCommentTypeSerializer().serialize(self) + try RansomwareAlertCreateReportTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocUnresolveCommentTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try RansomwareAlertCreateReportTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperDocUnresolveCommentType: \(error)" + return "Failed to generate description for RansomwareAlertCreateReportType: \(error)" } } } - - public class PaperDocUnresolveCommentTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperDocUnresolveCommentType) throws -> JSON { + public class RansomwareAlertCreateReportTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: RansomwareAlertCreateReportType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperDocUnresolveCommentType { + public func deserialize(_ json: JSON) throws -> RansomwareAlertCreateReportType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return PaperDocUnresolveCommentType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: PaperDocUnresolveCommentType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return RansomwareAlertCreateReportType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: RansomwareAlertCreateReportType.self, json: json) } } } - /// Restored Paper doc. - public class PaperDocUntrashedDetails: CustomStringConvertible, JSONRepresentable { - /// Event unique identifier. - public let eventUuid: String - public init(eventUuid: String) { - stringValidator()(eventUuid) - self.eventUuid = eventUuid + /// Completed ransomware restore process. + public class RansomwareRestoreProcessCompletedDetails: CustomStringConvertible, JSONRepresentable { + /// The status of the restore process. + public let status: String + /// Restored files count. + public let restoredFilesCount: Int64 + /// Restored files failed count. + public let restoredFilesFailedCount: Int64 + public init(status: String, restoredFilesCount: Int64, restoredFilesFailedCount: Int64) { + stringValidator()(status) + self.status = status + comparableValidator()(restoredFilesCount) + self.restoredFilesCount = restoredFilesCount + comparableValidator()(restoredFilesFailedCount) + self.restoredFilesFailedCount = restoredFilesFailedCount } func json() throws -> JSON { - try PaperDocUntrashedDetailsSerializer().serialize(self) + try RansomwareRestoreProcessCompletedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocUntrashedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try RansomwareRestoreProcessCompletedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperDocUntrashedDetails: \(error)" + return "Failed to generate description for RansomwareRestoreProcessCompletedDetails: \(error)" } } } - - public class PaperDocUntrashedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperDocUntrashedDetails) throws -> JSON { + public class RansomwareRestoreProcessCompletedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: RansomwareRestoreProcessCompletedDetails) throws -> JSON { let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + "status": try Serialization._StringSerializer.serialize(value.status), + "restored_files_count": try Serialization._Int64Serializer.serialize(value.restoredFilesCount), + "restored_files_failed_count": try Serialization._Int64Serializer.serialize(value.restoredFilesFailedCount), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperDocUntrashedDetails { + public func deserialize(_ json: JSON) throws -> RansomwareRestoreProcessCompletedDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - return PaperDocUntrashedDetails(eventUuid: eventUuid) - default: - throw JSONSerializerError.deserializeError(type: PaperDocUntrashedDetails.self, json: json) + case .dictionary(let dict): + let status = try Serialization._StringSerializer.deserialize(dict["status"] ?? .null) + let restoredFilesCount = try Serialization._Int64Serializer.deserialize(dict["restored_files_count"] ?? .null) + let restoredFilesFailedCount = try Serialization._Int64Serializer.deserialize(dict["restored_files_failed_count"] ?? .null) + return RansomwareRestoreProcessCompletedDetails(status: status, restoredFilesCount: restoredFilesCount, restoredFilesFailedCount: restoredFilesFailedCount) + default: + throw JSONSerializerError.deserializeError(type: RansomwareRestoreProcessCompletedDetails.self, json: json) } } } - /// The PaperDocUntrashedType struct - public class PaperDocUntrashedType: CustomStringConvertible, JSONRepresentable { + /// The RansomwareRestoreProcessCompletedType struct + public class RansomwareRestoreProcessCompletedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -44457,82 +57362,78 @@ public class TeamLog { } func json() throws -> JSON { - try PaperDocUntrashedTypeSerializer().serialize(self) + try RansomwareRestoreProcessCompletedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocUntrashedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try RansomwareRestoreProcessCompletedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperDocUntrashedType: \(error)" + return "Failed to generate description for RansomwareRestoreProcessCompletedType: \(error)" } } } - - public class PaperDocUntrashedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperDocUntrashedType) throws -> JSON { + public class RansomwareRestoreProcessCompletedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: RansomwareRestoreProcessCompletedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperDocUntrashedType { + public func deserialize(_ json: JSON) throws -> RansomwareRestoreProcessCompletedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return PaperDocUntrashedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: PaperDocUntrashedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return RansomwareRestoreProcessCompletedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: RansomwareRestoreProcessCompletedType.self, json: json) } } } - /// Viewed Paper doc. - public class PaperDocViewDetails: CustomStringConvertible, JSONRepresentable { - /// Event unique identifier. - public let eventUuid: String - public init(eventUuid: String) { - stringValidator()(eventUuid) - self.eventUuid = eventUuid + /// Started ransomware restore process. + public class RansomwareRestoreProcessStartedDetails: CustomStringConvertible, JSONRepresentable { + /// Ransomware filename extension. + public let extension_: String + public init(extension_: String) { + stringValidator()(extension_) + self.extension_ = extension_ } func json() throws -> JSON { - try PaperDocViewDetailsSerializer().serialize(self) + try RansomwareRestoreProcessStartedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocViewDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try RansomwareRestoreProcessStartedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperDocViewDetails: \(error)" + return "Failed to generate description for RansomwareRestoreProcessStartedDetails: \(error)" } } } - - public class PaperDocViewDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperDocViewDetails) throws -> JSON { + public class RansomwareRestoreProcessStartedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: RansomwareRestoreProcessStartedDetails) throws -> JSON { let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + "extension": try Serialization._StringSerializer.serialize(value.extension_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperDocViewDetails { + public func deserialize(_ json: JSON) throws -> RansomwareRestoreProcessStartedDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - return PaperDocViewDetails(eventUuid: eventUuid) - default: - throw JSONSerializerError.deserializeError(type: PaperDocViewDetails.self, json: json) + case .dictionary(let dict): + let extension_ = try Serialization._StringSerializer.deserialize(dict["extension"] ?? .null) + return RansomwareRestoreProcessStartedDetails(extension_: extension_) + default: + throw JSONSerializerError.deserializeError(type: RansomwareRestoreProcessStartedDetails.self, json: json) } } } - /// The PaperDocViewType struct - public class PaperDocViewType: CustomStringConvertible, JSONRepresentable { + /// The RansomwareRestoreProcessStartedType struct + public class RansomwareRestoreProcessStartedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -44541,197 +57442,246 @@ public class TeamLog { } func json() throws -> JSON { - try PaperDocViewTypeSerializer().serialize(self) + try RansomwareRestoreProcessStartedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocViewTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try RansomwareRestoreProcessStartedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperDocViewType: \(error)" + return "Failed to generate description for RansomwareRestoreProcessStartedType: \(error)" } } } - - public class PaperDocViewTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperDocViewType) throws -> JSON { + public class RansomwareRestoreProcessStartedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: RansomwareRestoreProcessStartedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperDocViewType { + public func deserialize(_ json: JSON) throws -> RansomwareRestoreProcessStartedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return PaperDocViewType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: PaperDocViewType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return RansomwareRestoreProcessStartedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: RansomwareRestoreProcessStartedType.self, json: json) } } } - /// Paper document's logged information. - public class PaperDocumentLogInfo: CustomStringConvertible, JSONRepresentable { - /// Papers document Id. - public let docId: String - /// Paper document title. - public let docTitle: String - public init(docId: String, docTitle: String) { - stringValidator()(docId) - self.docId = docId - stringValidator()(docTitle) - self.docTitle = docTitle + /// Recipients Configuration + public class RecipientsConfiguration: CustomStringConvertible, JSONRepresentable { + /// Recipients setting type. + public let recipientSettingType: TeamLog.AlertRecipientsSettingType? + /// A list of user emails to notify. + public let emails: Array? + /// A list of groups to notify. + public let groups: Array? + public init(recipientSettingType: TeamLog.AlertRecipientsSettingType? = nil, emails: Array? = nil, groups: Array? = nil) { + self.recipientSettingType = recipientSettingType + nullableValidator(arrayValidator(itemValidator: stringValidator(maxLength: 255)))(emails) + self.emails = emails + nullableValidator(arrayValidator(itemValidator: stringValidator()))(groups) + self.groups = groups } func json() throws -> JSON { - try PaperDocumentLogInfoSerializer().serialize(self) + try RecipientsConfigurationSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperDocumentLogInfoSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try RecipientsConfigurationSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperDocumentLogInfo: \(error)" + return "Failed to generate description for RecipientsConfiguration: \(error)" } } } - - public class PaperDocumentLogInfoSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperDocumentLogInfo) throws -> JSON { + public class RecipientsConfigurationSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: RecipientsConfiguration) throws -> JSON { let output = [ - "doc_id": try Serialization._StringSerializer.serialize(value.docId), - "doc_title": try Serialization._StringSerializer.serialize(value.docTitle), + "recipient_setting_type": try NullableSerializer(TeamLog.AlertRecipientsSettingTypeSerializer()).serialize(value.recipientSettingType), + "emails": try NullableSerializer(ArraySerializer(Serialization._StringSerializer)).serialize(value.emails), + "groups": try NullableSerializer(ArraySerializer(Serialization._StringSerializer)).serialize(value.groups), ] return .dictionary(output) } + public func deserialize(_ json: JSON) throws -> RecipientsConfiguration { + switch json { + case .dictionary(let dict): + let recipientSettingType = try NullableSerializer(TeamLog.AlertRecipientsSettingTypeSerializer()).deserialize(dict["recipient_setting_type"] ?? .null) + let emails = try NullableSerializer(ArraySerializer(Serialization._StringSerializer)).deserialize(dict["emails"] ?? .null) + let groups = try NullableSerializer(ArraySerializer(Serialization._StringSerializer)).deserialize(dict["groups"] ?? .null) + return RecipientsConfiguration(recipientSettingType: recipientSettingType, emails: emails, groups: groups) + default: + throw JSONSerializerError.deserializeError(type: RecipientsConfiguration.self, json: json) + } + } + } + + /// Provides the indices of the source asset and the destination asset for a relocate action. + public class RelocateAssetReferencesLogInfo: CustomStringConvertible, JSONRepresentable { + /// Source asset position in the Assets list. + public let srcAssetIndex: UInt64 + /// Destination asset position in the Assets list. + public let destAssetIndex: UInt64 + public init(srcAssetIndex: UInt64, destAssetIndex: UInt64) { + comparableValidator()(srcAssetIndex) + self.srcAssetIndex = srcAssetIndex + comparableValidator()(destAssetIndex) + self.destAssetIndex = destAssetIndex + } - public func deserialize(_ json: JSON) throws -> PaperDocumentLogInfo { + func json() throws -> JSON { + try RelocateAssetReferencesLogInfoSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try RelocateAssetReferencesLogInfoSerializer().serialize(self)))" + } catch { + return "Failed to generate description for RelocateAssetReferencesLogInfo: \(error)" + } + } + } + public class RelocateAssetReferencesLogInfoSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: RelocateAssetReferencesLogInfo) throws -> JSON { + let output = [ + "src_asset_index": try Serialization._UInt64Serializer.serialize(value.srcAssetIndex), + "dest_asset_index": try Serialization._UInt64Serializer.serialize(value.destAssetIndex), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> RelocateAssetReferencesLogInfo { switch json { - case .dictionary(let dict): - let docId = try Serialization._StringSerializer.deserialize(dict["doc_id"] ?? .null) - let docTitle = try Serialization._StringSerializer.deserialize(dict["doc_title"] ?? .null) - return PaperDocumentLogInfo(docId: docId, docTitle: docTitle) - default: - throw JSONSerializerError.deserializeError(type: PaperDocumentLogInfo.self, json: json) + case .dictionary(let dict): + let srcAssetIndex = try Serialization._UInt64Serializer.deserialize(dict["src_asset_index"] ?? .null) + let destAssetIndex = try Serialization._UInt64Serializer.deserialize(dict["dest_asset_index"] ?? .null) + return RelocateAssetReferencesLogInfo(srcAssetIndex: srcAssetIndex, destAssetIndex: destAssetIndex) + default: + throw JSONSerializerError.deserializeError(type: RelocateAssetReferencesLogInfo.self, json: json) } } } - /// The PaperDownloadFormat union - public enum PaperDownloadFormat: CustomStringConvertible, JSONRepresentable { + /// Policy for deciding who can be added to Replay content + public enum ReplayAddingPeoplePolicy: CustomStringConvertible, JSONRepresentable { /// An unspecified error. - case docx - /// An unspecified error. - case html + case anyone /// An unspecified error. - case markdown + case teamAndAllowlist /// An unspecified error. - case pdf + case teamOnly /// An unspecified error. case other func json() throws -> JSON { - try PaperDownloadFormatSerializer().serialize(self) + try ReplayAddingPeoplePolicySerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperDownloadFormatSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ReplayAddingPeoplePolicySerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperDownloadFormat: \(error)" + return "Failed to generate description for ReplayAddingPeoplePolicy: \(error)" } } } - - public class PaperDownloadFormatSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperDownloadFormat) throws -> JSON { + public class ReplayAddingPeoplePolicySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ReplayAddingPeoplePolicy) throws -> JSON { switch value { - case .docx: - var d = [String: JSON]() - d[".tag"] = .str("docx") - return .dictionary(d) - case .html: - var d = [String: JSON]() - d[".tag"] = .str("html") - return .dictionary(d) - case .markdown: - var d = [String: JSON]() - d[".tag"] = .str("markdown") - return .dictionary(d) - case .pdf: - var d = [String: JSON]() - d[".tag"] = .str("pdf") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) - } - } - - public func deserialize(_ json: JSON) throws -> PaperDownloadFormat { - switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "docx": - return PaperDownloadFormat.docx - case "html": - return PaperDownloadFormat.html - case "markdown": - return PaperDownloadFormat.markdown - case "pdf": - return PaperDownloadFormat.pdf - case "other": - return PaperDownloadFormat.other + case .anyone: + var d = [String: JSON]() + d[".tag"] = .str("anyone") + return .dictionary(d) + case .teamAndAllowlist: + var d = [String: JSON]() + d[".tag"] = .str("team_and_allowlist") + return .dictionary(d) + case .teamOnly: + var d = [String: JSON]() + d[".tag"] = .str("team_only") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> ReplayAddingPeoplePolicy { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "anyone": + return ReplayAddingPeoplePolicy.anyone + case "team_and_allowlist": + return ReplayAddingPeoplePolicy.teamAndAllowlist + case "team_only": + return ReplayAddingPeoplePolicy.teamOnly + case "other": + return ReplayAddingPeoplePolicy.other + default: + return ReplayAddingPeoplePolicy.other + } default: - return PaperDownloadFormat.other - } - default: - throw JSONSerializerError.deserializeError(type: PaperDownloadFormat.self, json: json) + throw JSONSerializerError.deserializeError(type: ReplayAddingPeoplePolicy.self, json: json) } } } - /// Added users to Paper-enabled users list. - public class PaperEnabledUsersGroupAdditionDetails: CustomStringConvertible, JSONRepresentable { + /// Changed the policy for adding people to Replay content. + public class ReplayAddingPeoplePolicyChangedDetails: CustomStringConvertible, JSONRepresentable { + /// To. + public let newValue: TeamLog.ReplayAddingPeoplePolicy + /// From. + public let previousValue: TeamLog.ReplayAddingPeoplePolicy + public init(newValue: TeamLog.ReplayAddingPeoplePolicy, previousValue: TeamLog.ReplayAddingPeoplePolicy) { + self.newValue = newValue + self.previousValue = previousValue + } + func json() throws -> JSON { - try PaperEnabledUsersGroupAdditionDetailsSerializer().serialize(self) + try ReplayAddingPeoplePolicyChangedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperEnabledUsersGroupAdditionDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ReplayAddingPeoplePolicyChangedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperEnabledUsersGroupAdditionDetails: \(error)" + return "Failed to generate description for ReplayAddingPeoplePolicyChangedDetails: \(error)" } } } - - public class PaperEnabledUsersGroupAdditionDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperEnabledUsersGroupAdditionDetails) throws -> JSON { - let output = [String: JSON]() + public class ReplayAddingPeoplePolicyChangedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ReplayAddingPeoplePolicyChangedDetails) throws -> JSON { + let output = [ + "new_value": try TeamLog.ReplayAddingPeoplePolicySerializer().serialize(value.newValue), + "previous_value": try TeamLog.ReplayAddingPeoplePolicySerializer().serialize(value.previousValue), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperEnabledUsersGroupAdditionDetails { + public func deserialize(_ json: JSON) throws -> ReplayAddingPeoplePolicyChangedDetails { switch json { - case .dictionary: - return PaperEnabledUsersGroupAdditionDetails() - default: - throw JSONSerializerError.deserializeError(type: PaperEnabledUsersGroupAdditionDetails.self, json: json) + case .dictionary(let dict): + let newValue = try TeamLog.ReplayAddingPeoplePolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try TeamLog.ReplayAddingPeoplePolicySerializer().deserialize(dict["previous_value"] ?? .null) + return ReplayAddingPeoplePolicyChangedDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: ReplayAddingPeoplePolicyChangedDetails.self, json: json) } } } - /// The PaperEnabledUsersGroupAdditionType struct - public class PaperEnabledUsersGroupAdditionType: CustomStringConvertible, JSONRepresentable { + /// The ReplayAddingPeoplePolicyChangedType struct + public class ReplayAddingPeoplePolicyChangedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -44740,72 +57690,69 @@ public class TeamLog { } func json() throws -> JSON { - try PaperEnabledUsersGroupAdditionTypeSerializer().serialize(self) + try ReplayAddingPeoplePolicyChangedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperEnabledUsersGroupAdditionTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ReplayAddingPeoplePolicyChangedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperEnabledUsersGroupAdditionType: \(error)" + return "Failed to generate description for ReplayAddingPeoplePolicyChangedType: \(error)" } } } - - public class PaperEnabledUsersGroupAdditionTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperEnabledUsersGroupAdditionType) throws -> JSON { + public class ReplayAddingPeoplePolicyChangedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ReplayAddingPeoplePolicyChangedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperEnabledUsersGroupAdditionType { + public func deserialize(_ json: JSON) throws -> ReplayAddingPeoplePolicyChangedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return PaperEnabledUsersGroupAdditionType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: PaperEnabledUsersGroupAdditionType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ReplayAddingPeoplePolicyChangedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ReplayAddingPeoplePolicyChangedType.self, json: json) } } } - /// Removed users from Paper-enabled users list. - public class PaperEnabledUsersGroupRemovalDetails: CustomStringConvertible, JSONRepresentable { + /// Deleted files in Replay. + public class ReplayFileDeleteDetails: CustomStringConvertible, JSONRepresentable { + func json() throws -> JSON { - try PaperEnabledUsersGroupRemovalDetailsSerializer().serialize(self) + try ReplayFileDeleteDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperEnabledUsersGroupRemovalDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ReplayFileDeleteDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperEnabledUsersGroupRemovalDetails: \(error)" + return "Failed to generate description for ReplayFileDeleteDetails: \(error)" } } } - - public class PaperEnabledUsersGroupRemovalDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperEnabledUsersGroupRemovalDetails) throws -> JSON { + public class ReplayFileDeleteDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ReplayFileDeleteDetails) throws -> JSON { let output = [String: JSON]() return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperEnabledUsersGroupRemovalDetails { + public func deserialize(_ json: JSON) throws -> ReplayFileDeleteDetails { switch json { - case .dictionary: - return PaperEnabledUsersGroupRemovalDetails() - default: - throw JSONSerializerError.deserializeError(type: PaperEnabledUsersGroupRemovalDetails.self, json: json) + case .dictionary(_): + return ReplayFileDeleteDetails() + default: + throw JSONSerializerError.deserializeError(type: ReplayFileDeleteDetails.self, json: json) } } } - /// The PaperEnabledUsersGroupRemovalType struct - public class PaperEnabledUsersGroupRemovalType: CustomStringConvertible, JSONRepresentable { + /// The ReplayFileDeleteType struct + public class ReplayFileDeleteType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -44814,82 +57761,69 @@ public class TeamLog { } func json() throws -> JSON { - try PaperEnabledUsersGroupRemovalTypeSerializer().serialize(self) + try ReplayFileDeleteTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperEnabledUsersGroupRemovalTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ReplayFileDeleteTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperEnabledUsersGroupRemovalType: \(error)" + return "Failed to generate description for ReplayFileDeleteType: \(error)" } } } - - public class PaperEnabledUsersGroupRemovalTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperEnabledUsersGroupRemovalType) throws -> JSON { + public class ReplayFileDeleteTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ReplayFileDeleteType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperEnabledUsersGroupRemovalType { + public func deserialize(_ json: JSON) throws -> ReplayFileDeleteType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return PaperEnabledUsersGroupRemovalType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: PaperEnabledUsersGroupRemovalType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ReplayFileDeleteType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ReplayFileDeleteType.self, json: json) } } } - /// Changed Paper external sharing setting to anyone. - public class PaperExternalViewAllowDetails: CustomStringConvertible, JSONRepresentable { - /// Event unique identifier. - public let eventUuid: String - public init(eventUuid: String) { - stringValidator()(eventUuid) - self.eventUuid = eventUuid - } + /// Downloaded files in Replay. + public class ReplayFileDownloadedDetails: CustomStringConvertible, JSONRepresentable { func json() throws -> JSON { - try PaperExternalViewAllowDetailsSerializer().serialize(self) + try ReplayFileDownloadedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperExternalViewAllowDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ReplayFileDownloadedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperExternalViewAllowDetails: \(error)" + return "Failed to generate description for ReplayFileDownloadedDetails: \(error)" } } } - - public class PaperExternalViewAllowDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperExternalViewAllowDetails) throws -> JSON { - let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), - ] + public class ReplayFileDownloadedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ReplayFileDownloadedDetails) throws -> JSON { + let output = [String: JSON]() return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperExternalViewAllowDetails { + public func deserialize(_ json: JSON) throws -> ReplayFileDownloadedDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - return PaperExternalViewAllowDetails(eventUuid: eventUuid) - default: - throw JSONSerializerError.deserializeError(type: PaperExternalViewAllowDetails.self, json: json) + case .dictionary(_): + return ReplayFileDownloadedDetails() + default: + throw JSONSerializerError.deserializeError(type: ReplayFileDownloadedDetails.self, json: json) } } } - /// The PaperExternalViewAllowType struct - public class PaperExternalViewAllowType: CustomStringConvertible, JSONRepresentable { + /// The ReplayFileDownloadedType struct + public class ReplayFileDownloadedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -44898,82 +57832,82 @@ public class TeamLog { } func json() throws -> JSON { - try PaperExternalViewAllowTypeSerializer().serialize(self) + try ReplayFileDownloadedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperExternalViewAllowTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ReplayFileDownloadedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperExternalViewAllowType: \(error)" + return "Failed to generate description for ReplayFileDownloadedType: \(error)" } } } - - public class PaperExternalViewAllowTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperExternalViewAllowType) throws -> JSON { + public class ReplayFileDownloadedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ReplayFileDownloadedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperExternalViewAllowType { + public func deserialize(_ json: JSON) throws -> ReplayFileDownloadedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return PaperExternalViewAllowType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: PaperExternalViewAllowType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ReplayFileDownloadedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ReplayFileDownloadedType.self, json: json) } } } - /// Changed Paper external sharing setting to default team. - public class PaperExternalViewDefaultTeamDetails: CustomStringConvertible, JSONRepresentable { - /// Event unique identifier. - public let eventUuid: String - public init(eventUuid: String) { - stringValidator()(eventUuid) - self.eventUuid = eventUuid + /// Created shared link in Replay. + public class ReplayFileSharedLinkCreatedDetails: CustomStringConvertible, JSONRepresentable { + /// Indicates whether it was a watermark share link. + public let isWatermarked: Bool? + /// The Replay sharing policy in place when the link was created. Might be missing due to historical data gap. + public let access: TeamLog.ReplayLinkAccess? + public init(isWatermarked: Bool? = nil, access: TeamLog.ReplayLinkAccess? = nil) { + self.isWatermarked = isWatermarked + self.access = access } func json() throws -> JSON { - try PaperExternalViewDefaultTeamDetailsSerializer().serialize(self) + try ReplayFileSharedLinkCreatedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperExternalViewDefaultTeamDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ReplayFileSharedLinkCreatedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperExternalViewDefaultTeamDetails: \(error)" + return "Failed to generate description for ReplayFileSharedLinkCreatedDetails: \(error)" } } } - - public class PaperExternalViewDefaultTeamDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperExternalViewDefaultTeamDetails) throws -> JSON { + public class ReplayFileSharedLinkCreatedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ReplayFileSharedLinkCreatedDetails) throws -> JSON { let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + "is_watermarked": try NullableSerializer(Serialization._BoolSerializer).serialize(value.isWatermarked), + "access": try NullableSerializer(TeamLog.ReplayLinkAccessSerializer()).serialize(value.access), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperExternalViewDefaultTeamDetails { + public func deserialize(_ json: JSON) throws -> ReplayFileSharedLinkCreatedDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - return PaperExternalViewDefaultTeamDetails(eventUuid: eventUuid) - default: - throw JSONSerializerError.deserializeError(type: PaperExternalViewDefaultTeamDetails.self, json: json) + case .dictionary(let dict): + let isWatermarked = try NullableSerializer(Serialization._BoolSerializer).deserialize(dict["is_watermarked"] ?? .null) + let access = try NullableSerializer(TeamLog.ReplayLinkAccessSerializer()).deserialize(dict["access"] ?? .null) + return ReplayFileSharedLinkCreatedDetails(isWatermarked: isWatermarked, access: access) + default: + throw JSONSerializerError.deserializeError(type: ReplayFileSharedLinkCreatedDetails.self, json: json) } } } - /// The PaperExternalViewDefaultTeamType struct - public class PaperExternalViewDefaultTeamType: CustomStringConvertible, JSONRepresentable { + /// The ReplayFileSharedLinkCreatedType struct + public class ReplayFileSharedLinkCreatedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -44982,82 +57916,82 @@ public class TeamLog { } func json() throws -> JSON { - try PaperExternalViewDefaultTeamTypeSerializer().serialize(self) + try ReplayFileSharedLinkCreatedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperExternalViewDefaultTeamTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ReplayFileSharedLinkCreatedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperExternalViewDefaultTeamType: \(error)" + return "Failed to generate description for ReplayFileSharedLinkCreatedType: \(error)" } } } - - public class PaperExternalViewDefaultTeamTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperExternalViewDefaultTeamType) throws -> JSON { + public class ReplayFileSharedLinkCreatedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ReplayFileSharedLinkCreatedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperExternalViewDefaultTeamType { + public func deserialize(_ json: JSON) throws -> ReplayFileSharedLinkCreatedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return PaperExternalViewDefaultTeamType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: PaperExternalViewDefaultTeamType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ReplayFileSharedLinkCreatedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ReplayFileSharedLinkCreatedType.self, json: json) } } } - /// Changed Paper external sharing setting to team-only. - public class PaperExternalViewForbidDetails: CustomStringConvertible, JSONRepresentable { - /// Event unique identifier. - public let eventUuid: String - public init(eventUuid: String) { - stringValidator()(eventUuid) - self.eventUuid = eventUuid + /// Changed shared link in Replay. + public class ReplayFileSharedLinkModifiedDetails: CustomStringConvertible, JSONRepresentable { + /// Indicates whether it was a watermark share link. + public let isWatermarked: Bool? + /// The Replay sharing policy in place when the link was modified. Might be missing due to historical data gap. + public let access: TeamLog.ReplayLinkAccess? + public init(isWatermarked: Bool? = nil, access: TeamLog.ReplayLinkAccess? = nil) { + self.isWatermarked = isWatermarked + self.access = access } func json() throws -> JSON { - try PaperExternalViewForbidDetailsSerializer().serialize(self) + try ReplayFileSharedLinkModifiedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperExternalViewForbidDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ReplayFileSharedLinkModifiedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperExternalViewForbidDetails: \(error)" + return "Failed to generate description for ReplayFileSharedLinkModifiedDetails: \(error)" } } } - - public class PaperExternalViewForbidDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperExternalViewForbidDetails) throws -> JSON { + public class ReplayFileSharedLinkModifiedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ReplayFileSharedLinkModifiedDetails) throws -> JSON { let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + "is_watermarked": try NullableSerializer(Serialization._BoolSerializer).serialize(value.isWatermarked), + "access": try NullableSerializer(TeamLog.ReplayLinkAccessSerializer()).serialize(value.access), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperExternalViewForbidDetails { + public func deserialize(_ json: JSON) throws -> ReplayFileSharedLinkModifiedDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - return PaperExternalViewForbidDetails(eventUuid: eventUuid) - default: - throw JSONSerializerError.deserializeError(type: PaperExternalViewForbidDetails.self, json: json) + case .dictionary(let dict): + let isWatermarked = try NullableSerializer(Serialization._BoolSerializer).deserialize(dict["is_watermarked"] ?? .null) + let access = try NullableSerializer(TeamLog.ReplayLinkAccessSerializer()).deserialize(dict["access"] ?? .null) + return ReplayFileSharedLinkModifiedDetails(isWatermarked: isWatermarked, access: access) + default: + throw JSONSerializerError.deserializeError(type: ReplayFileSharedLinkModifiedDetails.self, json: json) } } } - /// The PaperExternalViewForbidType struct - public class PaperExternalViewForbidType: CustomStringConvertible, JSONRepresentable { + /// The ReplayFileSharedLinkModifiedType struct + public class ReplayFileSharedLinkModifiedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -45066,99 +58000,144 @@ public class TeamLog { } func json() throws -> JSON { - try PaperExternalViewForbidTypeSerializer().serialize(self) + try ReplayFileSharedLinkModifiedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperExternalViewForbidTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ReplayFileSharedLinkModifiedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperExternalViewForbidType: \(error)" + return "Failed to generate description for ReplayFileSharedLinkModifiedType: \(error)" } } } - - public class PaperExternalViewForbidTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperExternalViewForbidType) throws -> JSON { + public class ReplayFileSharedLinkModifiedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ReplayFileSharedLinkModifiedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperExternalViewForbidType { + public func deserialize(_ json: JSON) throws -> ReplayFileSharedLinkModifiedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return PaperExternalViewForbidType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: PaperExternalViewForbidType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ReplayFileSharedLinkModifiedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ReplayFileSharedLinkModifiedType.self, json: json) } } } - /// Followed/unfollowed Paper folder. - public class PaperFolderChangeSubscriptionDetails: CustomStringConvertible, JSONRepresentable { - /// Event unique identifier. - public let eventUuid: String - /// New folder subscription level. - public let newSubscriptionLevel: String - /// Previous folder subscription level. Might be missing due to historical data gap. - public let previousSubscriptionLevel: String? - public init(eventUuid: String, newSubscriptionLevel: String, previousSubscriptionLevel: String? = nil) { - stringValidator()(eventUuid) - self.eventUuid = eventUuid - stringValidator()(newSubscriptionLevel) - self.newSubscriptionLevel = newSubscriptionLevel - nullableValidator(stringValidator())(previousSubscriptionLevel) - self.previousSubscriptionLevel = previousSubscriptionLevel - } + /// Who can access this Replay link + public enum ReplayLinkAccess: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case anyoneLoggedIn + /// An unspecified error. + case noLoginRequired + /// An unspecified error. + case teamAndApproved + /// An unspecified error. + case teamOnly + /// An unspecified error. + case other func json() throws -> JSON { - try PaperFolderChangeSubscriptionDetailsSerializer().serialize(self) + try ReplayLinkAccessSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperFolderChangeSubscriptionDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ReplayLinkAccessSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperFolderChangeSubscriptionDetails: \(error)" + return "Failed to generate description for ReplayLinkAccess: \(error)" + } + } + } + public class ReplayLinkAccessSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ReplayLinkAccess) throws -> JSON { + switch value { + case .anyoneLoggedIn: + var d = [String: JSON]() + d[".tag"] = .str("anyone_logged_in") + return .dictionary(d) + case .noLoginRequired: + var d = [String: JSON]() + d[".tag"] = .str("no_login_required") + return .dictionary(d) + case .teamAndApproved: + var d = [String: JSON]() + d[".tag"] = .str("team_and_approved") + return .dictionary(d) + case .teamOnly: + var d = [String: JSON]() + d[".tag"] = .str("team_only") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> ReplayLinkAccess { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "anyone_logged_in": + return ReplayLinkAccess.anyoneLoggedIn + case "no_login_required": + return ReplayLinkAccess.noLoginRequired + case "team_and_approved": + return ReplayLinkAccess.teamAndApproved + case "team_only": + return ReplayLinkAccess.teamOnly + case "other": + return ReplayLinkAccess.other + default: + return ReplayLinkAccess.other + } + default: + throw JSONSerializerError.deserializeError(type: ReplayLinkAccess.self, json: json) } } } - public class PaperFolderChangeSubscriptionDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperFolderChangeSubscriptionDetails) throws -> JSON { - let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), - "new_subscription_level": try Serialization._StringSerializer.serialize(value.newSubscriptionLevel), - "previous_subscription_level": try NullableSerializer(Serialization._StringSerializer).serialize(value.previousSubscriptionLevel), - ] - return .dictionary(output) + /// Added member to Replay Project. + public class ReplayProjectTeamAddDetails: CustomStringConvertible, JSONRepresentable { + + func json() throws -> JSON { + try ReplayProjectTeamAddDetailsSerializer().serialize(self) } - public func deserialize(_ json: JSON) throws -> PaperFolderChangeSubscriptionDetails { + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try ReplayProjectTeamAddDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for ReplayProjectTeamAddDetails: \(error)" + } + } + } + public class ReplayProjectTeamAddDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ReplayProjectTeamAddDetails) throws -> JSON { + let output = [String: JSON]() + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> ReplayProjectTeamAddDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - let newSubscriptionLevel = try Serialization._StringSerializer.deserialize(dict["new_subscription_level"] ?? .null) - let previousSubscriptionLevel = try NullableSerializer(Serialization._StringSerializer) - .deserialize(dict["previous_subscription_level"] ?? .null) - return PaperFolderChangeSubscriptionDetails( - eventUuid: eventUuid, - newSubscriptionLevel: newSubscriptionLevel, - previousSubscriptionLevel: previousSubscriptionLevel - ) - default: - throw JSONSerializerError.deserializeError(type: PaperFolderChangeSubscriptionDetails.self, json: json) + case .dictionary(_): + return ReplayProjectTeamAddDetails() + default: + throw JSONSerializerError.deserializeError(type: ReplayProjectTeamAddDetails.self, json: json) } } } - /// The PaperFolderChangeSubscriptionType struct - public class PaperFolderChangeSubscriptionType: CustomStringConvertible, JSONRepresentable { + /// The ReplayProjectTeamAddType struct + public class ReplayProjectTeamAddType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -45167,82 +58146,69 @@ public class TeamLog { } func json() throws -> JSON { - try PaperFolderChangeSubscriptionTypeSerializer().serialize(self) + try ReplayProjectTeamAddTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperFolderChangeSubscriptionTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ReplayProjectTeamAddTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperFolderChangeSubscriptionType: \(error)" + return "Failed to generate description for ReplayProjectTeamAddType: \(error)" } } } - - public class PaperFolderChangeSubscriptionTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperFolderChangeSubscriptionType) throws -> JSON { + public class ReplayProjectTeamAddTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ReplayProjectTeamAddType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperFolderChangeSubscriptionType { + public func deserialize(_ json: JSON) throws -> ReplayProjectTeamAddType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return PaperFolderChangeSubscriptionType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: PaperFolderChangeSubscriptionType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ReplayProjectTeamAddType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ReplayProjectTeamAddType.self, json: json) } } } - /// Archived Paper folder. - public class PaperFolderDeletedDetails: CustomStringConvertible, JSONRepresentable { - /// Event unique identifier. - public let eventUuid: String - public init(eventUuid: String) { - stringValidator()(eventUuid) - self.eventUuid = eventUuid - } + /// Removed member from Replay Project. + public class ReplayProjectTeamDeleteDetails: CustomStringConvertible, JSONRepresentable { func json() throws -> JSON { - try PaperFolderDeletedDetailsSerializer().serialize(self) + try ReplayProjectTeamDeleteDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperFolderDeletedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ReplayProjectTeamDeleteDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperFolderDeletedDetails: \(error)" + return "Failed to generate description for ReplayProjectTeamDeleteDetails: \(error)" } } } - - public class PaperFolderDeletedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperFolderDeletedDetails) throws -> JSON { - let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), - ] + public class ReplayProjectTeamDeleteDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ReplayProjectTeamDeleteDetails) throws -> JSON { + let output = [String: JSON]() return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperFolderDeletedDetails { + public func deserialize(_ json: JSON) throws -> ReplayProjectTeamDeleteDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - return PaperFolderDeletedDetails(eventUuid: eventUuid) - default: - throw JSONSerializerError.deserializeError(type: PaperFolderDeletedDetails.self, json: json) + case .dictionary(_): + return ReplayProjectTeamDeleteDetails() + default: + throw JSONSerializerError.deserializeError(type: ReplayProjectTeamDeleteDetails.self, json: json) } } } - /// The PaperFolderDeletedType struct - public class PaperFolderDeletedType: CustomStringConvertible, JSONRepresentable { + /// The ReplayProjectTeamDeleteType struct + public class ReplayProjectTeamDeleteType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -45251,82 +58217,149 @@ public class TeamLog { } func json() throws -> JSON { - try PaperFolderDeletedTypeSerializer().serialize(self) + try ReplayProjectTeamDeleteTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperFolderDeletedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ReplayProjectTeamDeleteTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperFolderDeletedType: \(error)" + return "Failed to generate description for ReplayProjectTeamDeleteType: \(error)" } } } - - public class PaperFolderDeletedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperFolderDeletedType) throws -> JSON { + public class ReplayProjectTeamDeleteTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ReplayProjectTeamDeleteType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperFolderDeletedType { + public func deserialize(_ json: JSON) throws -> ReplayProjectTeamDeleteType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return PaperFolderDeletedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: PaperFolderDeletedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ReplayProjectTeamDeleteType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ReplayProjectTeamDeleteType.self, json: json) } } } - /// Followed Paper folder. - public class PaperFolderFollowedDetails: CustomStringConvertible, JSONRepresentable { - /// Event unique identifier. - public let eventUuid: String - public init(eventUuid: String) { - stringValidator()(eventUuid) - self.eventUuid = eventUuid - } + /// Policy for deciding who Replay content can be shared with through links + public enum ReplaySharingPolicy: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case anyone + /// An unspecified error. + case teamAndAllowlist + /// An unspecified error. + case teamOnly + /// An unspecified error. + case other func json() throws -> JSON { - try PaperFolderFollowedDetailsSerializer().serialize(self) + try ReplaySharingPolicySerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperFolderFollowedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ReplaySharingPolicySerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperFolderFollowedDetails: \(error)" + return "Failed to generate description for ReplaySharingPolicy: \(error)" + } + } + } + public class ReplaySharingPolicySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ReplaySharingPolicy) throws -> JSON { + switch value { + case .anyone: + var d = [String: JSON]() + d[".tag"] = .str("anyone") + return .dictionary(d) + case .teamAndAllowlist: + var d = [String: JSON]() + d[".tag"] = .str("team_and_allowlist") + return .dictionary(d) + case .teamOnly: + var d = [String: JSON]() + d[".tag"] = .str("team_only") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> ReplaySharingPolicy { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "anyone": + return ReplaySharingPolicy.anyone + case "team_and_allowlist": + return ReplaySharingPolicy.teamAndAllowlist + case "team_only": + return ReplaySharingPolicy.teamOnly + case "other": + return ReplaySharingPolicy.other + default: + return ReplaySharingPolicy.other + } + default: + throw JSONSerializerError.deserializeError(type: ReplaySharingPolicy.self, json: json) } } } - public class PaperFolderFollowedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperFolderFollowedDetails) throws -> JSON { + /// Changed the policy for sharing Replay content. + public class ReplaySharingPolicyChangedDetails: CustomStringConvertible, JSONRepresentable { + /// To. + public let newValue: TeamLog.ReplaySharingPolicy + /// From. + public let previousValue: TeamLog.ReplaySharingPolicy + public init(newValue: TeamLog.ReplaySharingPolicy, previousValue: TeamLog.ReplaySharingPolicy) { + self.newValue = newValue + self.previousValue = previousValue + } + + func json() throws -> JSON { + try ReplaySharingPolicyChangedDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try ReplaySharingPolicyChangedDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for ReplaySharingPolicyChangedDetails: \(error)" + } + } + } + public class ReplaySharingPolicyChangedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ReplaySharingPolicyChangedDetails) throws -> JSON { let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + "new_value": try TeamLog.ReplaySharingPolicySerializer().serialize(value.newValue), + "previous_value": try TeamLog.ReplaySharingPolicySerializer().serialize(value.previousValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperFolderFollowedDetails { + public func deserialize(_ json: JSON) throws -> ReplaySharingPolicyChangedDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - return PaperFolderFollowedDetails(eventUuid: eventUuid) - default: - throw JSONSerializerError.deserializeError(type: PaperFolderFollowedDetails.self, json: json) + case .dictionary(let dict): + let newValue = try TeamLog.ReplaySharingPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try TeamLog.ReplaySharingPolicySerializer().deserialize(dict["previous_value"] ?? .null) + return ReplaySharingPolicyChangedDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: ReplaySharingPolicyChangedDetails.self, json: json) } } } - /// The PaperFolderFollowedType struct - public class PaperFolderFollowedType: CustomStringConvertible, JSONRepresentable { + /// The ReplaySharingPolicyChangedType struct + public class ReplaySharingPolicyChangedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -45335,299 +58368,267 @@ public class TeamLog { } func json() throws -> JSON { - try PaperFolderFollowedTypeSerializer().serialize(self) + try ReplaySharingPolicyChangedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperFolderFollowedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ReplaySharingPolicyChangedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperFolderFollowedType: \(error)" + return "Failed to generate description for ReplaySharingPolicyChangedType: \(error)" } } } - - public class PaperFolderFollowedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperFolderFollowedType) throws -> JSON { + public class ReplaySharingPolicyChangedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ReplaySharingPolicyChangedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperFolderFollowedType { + public func deserialize(_ json: JSON) throws -> ReplaySharingPolicyChangedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return PaperFolderFollowedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: PaperFolderFollowedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ReplaySharingPolicyChangedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ReplaySharingPolicyChangedType.self, json: json) } } } - /// Paper folder's logged information. - public class PaperFolderLogInfo: CustomStringConvertible, JSONRepresentable { - /// Papers folder Id. - public let folderId: String - /// Paper folder name. - public let folderName: String - public init(folderId: String, folderName: String) { - stringValidator()(folderId) - self.folderId = folderId - stringValidator()(folderName) - self.folderName = folderName + /// Created a team project in Replay. + public class ReplayTeamProjectCreatedDetails: CustomStringConvertible, JSONRepresentable { + /// Name of the newly created team project. + public let name: String + public init(name: String) { + stringValidator()(name) + self.name = name } func json() throws -> JSON { - try PaperFolderLogInfoSerializer().serialize(self) + try ReplayTeamProjectCreatedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperFolderLogInfoSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ReplayTeamProjectCreatedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperFolderLogInfo: \(error)" + return "Failed to generate description for ReplayTeamProjectCreatedDetails: \(error)" } } } - - public class PaperFolderLogInfoSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperFolderLogInfo) throws -> JSON { + public class ReplayTeamProjectCreatedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ReplayTeamProjectCreatedDetails) throws -> JSON { let output = [ - "folder_id": try Serialization._StringSerializer.serialize(value.folderId), - "folder_name": try Serialization._StringSerializer.serialize(value.folderName), + "name": try Serialization._StringSerializer.serialize(value.name), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperFolderLogInfo { + public func deserialize(_ json: JSON) throws -> ReplayTeamProjectCreatedDetails { switch json { - case .dictionary(let dict): - let folderId = try Serialization._StringSerializer.deserialize(dict["folder_id"] ?? .null) - let folderName = try Serialization._StringSerializer.deserialize(dict["folder_name"] ?? .null) - return PaperFolderLogInfo(folderId: folderId, folderName: folderName) - default: - throw JSONSerializerError.deserializeError(type: PaperFolderLogInfo.self, json: json) + case .dictionary(let dict): + let name = try Serialization._StringSerializer.deserialize(dict["name"] ?? .null) + return ReplayTeamProjectCreatedDetails(name: name) + default: + throw JSONSerializerError.deserializeError(type: ReplayTeamProjectCreatedDetails.self, json: json) } } } - /// Shared Paper folder with users and/or groups. - public class PaperFolderTeamInviteDetails: CustomStringConvertible, JSONRepresentable { - /// Event unique identifier. - public let eventUuid: String - public init(eventUuid: String) { - stringValidator()(eventUuid) - self.eventUuid = eventUuid + /// The ReplayTeamProjectCreatedType struct + public class ReplayTeamProjectCreatedType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ } func json() throws -> JSON { - try PaperFolderTeamInviteDetailsSerializer().serialize(self) + try ReplayTeamProjectCreatedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperFolderTeamInviteDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ReplayTeamProjectCreatedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperFolderTeamInviteDetails: \(error)" + return "Failed to generate description for ReplayTeamProjectCreatedType: \(error)" } } } - - public class PaperFolderTeamInviteDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperFolderTeamInviteDetails) throws -> JSON { + public class ReplayTeamProjectCreatedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ReplayTeamProjectCreatedType) throws -> JSON { let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperFolderTeamInviteDetails { + public func deserialize(_ json: JSON) throws -> ReplayTeamProjectCreatedType { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - return PaperFolderTeamInviteDetails(eventUuid: eventUuid) - default: - throw JSONSerializerError.deserializeError(type: PaperFolderTeamInviteDetails.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ReplayTeamProjectCreatedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ReplayTeamProjectCreatedType.self, json: json) } } } - /// The PaperFolderTeamInviteType struct - public class PaperFolderTeamInviteType: CustomStringConvertible, JSONRepresentable { - /// (no description) - public let description_: String - public init(description_: String) { - stringValidator()(description_) - self.description_ = description_ + /// Reseller information. + public class ResellerLogInfo: CustomStringConvertible, JSONRepresentable { + /// Reseller name. + public let resellerName: String + /// Reseller email. + public let resellerEmail: String + public init(resellerName: String, resellerEmail: String) { + stringValidator()(resellerName) + self.resellerName = resellerName + stringValidator(maxLength: 255)(resellerEmail) + self.resellerEmail = resellerEmail } func json() throws -> JSON { - try PaperFolderTeamInviteTypeSerializer().serialize(self) + try ResellerLogInfoSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperFolderTeamInviteTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ResellerLogInfoSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperFolderTeamInviteType: \(error)" + return "Failed to generate description for ResellerLogInfo: \(error)" } } } - - public class PaperFolderTeamInviteTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperFolderTeamInviteType) throws -> JSON { + public class ResellerLogInfoSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ResellerLogInfo) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "reseller_name": try Serialization._StringSerializer.serialize(value.resellerName), + "reseller_email": try Serialization._StringSerializer.serialize(value.resellerEmail), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperFolderTeamInviteType { + public func deserialize(_ json: JSON) throws -> ResellerLogInfo { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return PaperFolderTeamInviteType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: PaperFolderTeamInviteType.self, json: json) + case .dictionary(let dict): + let resellerName = try Serialization._StringSerializer.deserialize(dict["reseller_name"] ?? .null) + let resellerEmail = try Serialization._StringSerializer.deserialize(dict["reseller_email"] ?? .null) + return ResellerLogInfo(resellerName: resellerName, resellerEmail: resellerEmail) + default: + throw JSONSerializerError.deserializeError(type: ResellerLogInfo.self, json: json) } } } - /// Policy for controlling if team members can share Paper documents externally. - public enum PaperMemberPolicy: CustomStringConvertible, JSONRepresentable { - /// An unspecified error. - case anyoneWithLink + /// The ResellerRole union + public enum ResellerRole: CustomStringConvertible, JSONRepresentable { /// An unspecified error. - case onlyTeam + case notReseller /// An unspecified error. - case teamAndExplicitlyShared + case resellerAdmin /// An unspecified error. case other func json() throws -> JSON { - try PaperMemberPolicySerializer().serialize(self) + try ResellerRoleSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperMemberPolicySerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ResellerRoleSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperMemberPolicy: \(error)" + return "Failed to generate description for ResellerRole: \(error)" } } } - - public class PaperMemberPolicySerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperMemberPolicy) throws -> JSON { + public class ResellerRoleSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ResellerRole) throws -> JSON { switch value { - case .anyoneWithLink: - var d = [String: JSON]() - d[".tag"] = .str("anyone_with_link") - return .dictionary(d) - case .onlyTeam: - var d = [String: JSON]() - d[".tag"] = .str("only_team") - return .dictionary(d) - case .teamAndExplicitlyShared: - var d = [String: JSON]() - d[".tag"] = .str("team_and_explicitly_shared") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) + case .notReseller: + var d = [String: JSON]() + d[".tag"] = .str("not_reseller") + return .dictionary(d) + case .resellerAdmin: + var d = [String: JSON]() + d[".tag"] = .str("reseller_admin") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) } } - - public func deserialize(_ json: JSON) throws -> PaperMemberPolicy { + public func deserialize(_ json: JSON) throws -> ResellerRole { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "anyone_with_link": - return PaperMemberPolicy.anyoneWithLink - case "only_team": - return PaperMemberPolicy.onlyTeam - case "team_and_explicitly_shared": - return PaperMemberPolicy.teamAndExplicitlyShared - case "other": - return PaperMemberPolicy.other + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "not_reseller": + return ResellerRole.notReseller + case "reseller_admin": + return ResellerRole.resellerAdmin + case "other": + return ResellerRole.other + default: + return ResellerRole.other + } default: - return PaperMemberPolicy.other - } - default: - throw JSONSerializerError.deserializeError(type: PaperMemberPolicy.self, json: json) + throw JSONSerializerError.deserializeError(type: ResellerRole.self, json: json) } } } - /// Changed permissions for published doc. - public class PaperPublishedLinkChangePermissionDetails: CustomStringConvertible, JSONRepresentable { - /// Event unique identifier. - public let eventUuid: String - /// New permission level. - public let newPermissionLevel: String - /// Previous permission level. - public let previousPermissionLevel: String - public init(eventUuid: String, newPermissionLevel: String, previousPermissionLevel: String) { - stringValidator()(eventUuid) - self.eventUuid = eventUuid - stringValidator()(newPermissionLevel) - self.newPermissionLevel = newPermissionLevel - stringValidator()(previousPermissionLevel) - self.previousPermissionLevel = previousPermissionLevel + /// Enabled/disabled reseller support. + public class ResellerSupportChangePolicyDetails: CustomStringConvertible, JSONRepresentable { + /// New Reseller support policy. + public let newValue: TeamLog.ResellerSupportPolicy + /// Previous Reseller support policy. + public let previousValue: TeamLog.ResellerSupportPolicy + public init(newValue: TeamLog.ResellerSupportPolicy, previousValue: TeamLog.ResellerSupportPolicy) { + self.newValue = newValue + self.previousValue = previousValue } func json() throws -> JSON { - try PaperPublishedLinkChangePermissionDetailsSerializer().serialize(self) + try ResellerSupportChangePolicyDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperPublishedLinkChangePermissionDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ResellerSupportChangePolicyDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperPublishedLinkChangePermissionDetails: \(error)" + return "Failed to generate description for ResellerSupportChangePolicyDetails: \(error)" } } } - - public class PaperPublishedLinkChangePermissionDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperPublishedLinkChangePermissionDetails) throws -> JSON { + public class ResellerSupportChangePolicyDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ResellerSupportChangePolicyDetails) throws -> JSON { let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), - "new_permission_level": try Serialization._StringSerializer.serialize(value.newPermissionLevel), - "previous_permission_level": try Serialization._StringSerializer.serialize(value.previousPermissionLevel), + "new_value": try TeamLog.ResellerSupportPolicySerializer().serialize(value.newValue), + "previous_value": try TeamLog.ResellerSupportPolicySerializer().serialize(value.previousValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperPublishedLinkChangePermissionDetails { + public func deserialize(_ json: JSON) throws -> ResellerSupportChangePolicyDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - let newPermissionLevel = try Serialization._StringSerializer.deserialize(dict["new_permission_level"] ?? .null) - let previousPermissionLevel = try Serialization._StringSerializer.deserialize(dict["previous_permission_level"] ?? .null) - return PaperPublishedLinkChangePermissionDetails( - eventUuid: eventUuid, - newPermissionLevel: newPermissionLevel, - previousPermissionLevel: previousPermissionLevel - ) - default: - throw JSONSerializerError.deserializeError(type: PaperPublishedLinkChangePermissionDetails.self, json: json) + case .dictionary(let dict): + let newValue = try TeamLog.ResellerSupportPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try TeamLog.ResellerSupportPolicySerializer().deserialize(dict["previous_value"] ?? .null) + return ResellerSupportChangePolicyDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: ResellerSupportChangePolicyDetails.self, json: json) } } } - /// The PaperPublishedLinkChangePermissionType struct - public class PaperPublishedLinkChangePermissionType: CustomStringConvertible, JSONRepresentable { + /// The ResellerSupportChangePolicyType struct + public class ResellerSupportChangePolicyType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -45636,82 +58637,128 @@ public class TeamLog { } func json() throws -> JSON { - try PaperPublishedLinkChangePermissionTypeSerializer().serialize(self) + try ResellerSupportChangePolicyTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperPublishedLinkChangePermissionTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ResellerSupportChangePolicyTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperPublishedLinkChangePermissionType: \(error)" + return "Failed to generate description for ResellerSupportChangePolicyType: \(error)" } } } - - public class PaperPublishedLinkChangePermissionTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperPublishedLinkChangePermissionType) throws -> JSON { + public class ResellerSupportChangePolicyTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ResellerSupportChangePolicyType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperPublishedLinkChangePermissionType { + public func deserialize(_ json: JSON) throws -> ResellerSupportChangePolicyType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return PaperPublishedLinkChangePermissionType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: PaperPublishedLinkChangePermissionType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ResellerSupportChangePolicyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ResellerSupportChangePolicyType.self, json: json) } } } - /// Published doc. - public class PaperPublishedLinkCreateDetails: CustomStringConvertible, JSONRepresentable { - /// Event unique identifier. - public let eventUuid: String - public init(eventUuid: String) { - stringValidator()(eventUuid) - self.eventUuid = eventUuid - } + /// Policy for controlling if reseller can access the admin console as administrator + public enum ResellerSupportPolicy: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case disabled + /// An unspecified error. + case enabled + /// An unspecified error. + case other func json() throws -> JSON { - try PaperPublishedLinkCreateDetailsSerializer().serialize(self) + try ResellerSupportPolicySerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperPublishedLinkCreateDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ResellerSupportPolicySerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperPublishedLinkCreateDetails: \(error)" + return "Failed to generate description for ResellerSupportPolicy: \(error)" + } + } + } + public class ResellerSupportPolicySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ResellerSupportPolicy) throws -> JSON { + switch value { + case .disabled: + var d = [String: JSON]() + d[".tag"] = .str("disabled") + return .dictionary(d) + case .enabled: + var d = [String: JSON]() + d[".tag"] = .str("enabled") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> ResellerSupportPolicy { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "disabled": + return ResellerSupportPolicy.disabled + case "enabled": + return ResellerSupportPolicy.enabled + case "other": + return ResellerSupportPolicy.other + default: + return ResellerSupportPolicy.other + } + default: + throw JSONSerializerError.deserializeError(type: ResellerSupportPolicy.self, json: json) } } } - public class PaperPublishedLinkCreateDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperPublishedLinkCreateDetails) throws -> JSON { - let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), - ] - return .dictionary(output) + /// Ended reseller support session. + public class ResellerSupportSessionEndDetails: CustomStringConvertible, JSONRepresentable { + + func json() throws -> JSON { + try ResellerSupportSessionEndDetailsSerializer().serialize(self) } - public func deserialize(_ json: JSON) throws -> PaperPublishedLinkCreateDetails { + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try ResellerSupportSessionEndDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for ResellerSupportSessionEndDetails: \(error)" + } + } + } + public class ResellerSupportSessionEndDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ResellerSupportSessionEndDetails) throws -> JSON { + let output = [String: JSON]() + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> ResellerSupportSessionEndDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - return PaperPublishedLinkCreateDetails(eventUuid: eventUuid) - default: - throw JSONSerializerError.deserializeError(type: PaperPublishedLinkCreateDetails.self, json: json) + case .dictionary(_): + return ResellerSupportSessionEndDetails() + default: + throw JSONSerializerError.deserializeError(type: ResellerSupportSessionEndDetails.self, json: json) } } } - /// The PaperPublishedLinkCreateType struct - public class PaperPublishedLinkCreateType: CustomStringConvertible, JSONRepresentable { + /// The ResellerSupportSessionEndType struct + public class ResellerSupportSessionEndType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -45720,82 +58767,69 @@ public class TeamLog { } func json() throws -> JSON { - try PaperPublishedLinkCreateTypeSerializer().serialize(self) + try ResellerSupportSessionEndTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperPublishedLinkCreateTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ResellerSupportSessionEndTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperPublishedLinkCreateType: \(error)" + return "Failed to generate description for ResellerSupportSessionEndType: \(error)" } } } - - public class PaperPublishedLinkCreateTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperPublishedLinkCreateType) throws -> JSON { + public class ResellerSupportSessionEndTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ResellerSupportSessionEndType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperPublishedLinkCreateType { + public func deserialize(_ json: JSON) throws -> ResellerSupportSessionEndType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return PaperPublishedLinkCreateType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: PaperPublishedLinkCreateType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ResellerSupportSessionEndType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ResellerSupportSessionEndType.self, json: json) } } } - /// Unpublished doc. - public class PaperPublishedLinkDisabledDetails: CustomStringConvertible, JSONRepresentable { - /// Event unique identifier. - public let eventUuid: String - public init(eventUuid: String) { - stringValidator()(eventUuid) - self.eventUuid = eventUuid - } + /// Started reseller support session. + public class ResellerSupportSessionStartDetails: CustomStringConvertible, JSONRepresentable { func json() throws -> JSON { - try PaperPublishedLinkDisabledDetailsSerializer().serialize(self) + try ResellerSupportSessionStartDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperPublishedLinkDisabledDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ResellerSupportSessionStartDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperPublishedLinkDisabledDetails: \(error)" + return "Failed to generate description for ResellerSupportSessionStartDetails: \(error)" } } } - - public class PaperPublishedLinkDisabledDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperPublishedLinkDisabledDetails) throws -> JSON { - let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), - ] + public class ResellerSupportSessionStartDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ResellerSupportSessionStartDetails) throws -> JSON { + let output = [String: JSON]() return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperPublishedLinkDisabledDetails { + public func deserialize(_ json: JSON) throws -> ResellerSupportSessionStartDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - return PaperPublishedLinkDisabledDetails(eventUuid: eventUuid) - default: - throw JSONSerializerError.deserializeError(type: PaperPublishedLinkDisabledDetails.self, json: json) + case .dictionary(_): + return ResellerSupportSessionStartDetails() + default: + throw JSONSerializerError.deserializeError(type: ResellerSupportSessionStartDetails.self, json: json) } } } - /// The PaperPublishedLinkDisabledType struct - public class PaperPublishedLinkDisabledType: CustomStringConvertible, JSONRepresentable { + /// The ResellerSupportSessionStartType struct + public class ResellerSupportSessionStartType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -45804,82 +58838,77 @@ public class TeamLog { } func json() throws -> JSON { - try PaperPublishedLinkDisabledTypeSerializer().serialize(self) + try ResellerSupportSessionStartTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperPublishedLinkDisabledTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ResellerSupportSessionStartTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperPublishedLinkDisabledType: \(error)" + return "Failed to generate description for ResellerSupportSessionStartType: \(error)" } } } - - public class PaperPublishedLinkDisabledTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperPublishedLinkDisabledType) throws -> JSON { + public class ResellerSupportSessionStartTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ResellerSupportSessionStartType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperPublishedLinkDisabledType { + public func deserialize(_ json: JSON) throws -> ResellerSupportSessionStartType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return PaperPublishedLinkDisabledType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: PaperPublishedLinkDisabledType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ResellerSupportSessionStartType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ResellerSupportSessionStartType.self, json: json) } } } - /// Viewed published doc. - public class PaperPublishedLinkViewDetails: CustomStringConvertible, JSONRepresentable { - /// Event unique identifier. - public let eventUuid: String - public init(eventUuid: String) { - stringValidator()(eventUuid) - self.eventUuid = eventUuid + /// Rewound a folder. + public class RewindFolderDetails: CustomStringConvertible, JSONRepresentable { + /// Folder was Rewound to this date. + public let rewindFolderTargetTsMs: Date + public init(rewindFolderTargetTsMs: Date) { + self.rewindFolderTargetTsMs = rewindFolderTargetTsMs } func json() throws -> JSON { - try PaperPublishedLinkViewDetailsSerializer().serialize(self) + try RewindFolderDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperPublishedLinkViewDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try RewindFolderDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperPublishedLinkViewDetails: \(error)" + return "Failed to generate description for RewindFolderDetails: \(error)" } } } - - public class PaperPublishedLinkViewDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperPublishedLinkViewDetails) throws -> JSON { + public class RewindFolderDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: RewindFolderDetails) throws -> JSON { let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + "rewind_folder_target_ts_ms": try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").serialize(value.rewindFolderTargetTsMs), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperPublishedLinkViewDetails { + public func deserialize(_ json: JSON) throws -> RewindFolderDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - return PaperPublishedLinkViewDetails(eventUuid: eventUuid) - default: - throw JSONSerializerError.deserializeError(type: PaperPublishedLinkViewDetails.self, json: json) + case .dictionary(let dict): + let rewindFolderTargetTsMs = try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").deserialize(dict["rewind_folder_target_ts_ms"] ?? .null) + return RewindFolderDetails(rewindFolderTargetTsMs: rewindFolderTargetTsMs) + default: + throw JSONSerializerError.deserializeError(type: RewindFolderDetails.self, json: json) } } } - /// The PaperPublishedLinkViewType struct - public class PaperPublishedLinkViewType: CustomStringConvertible, JSONRepresentable { + /// The RewindFolderType struct + public class RewindFolderType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -45888,204 +58917,141 @@ public class TeamLog { } func json() throws -> JSON { - try PaperPublishedLinkViewTypeSerializer().serialize(self) + try RewindFolderTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PaperPublishedLinkViewTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try RewindFolderTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for PaperPublishedLinkViewType: \(error)" + return "Failed to generate description for RewindFolderType: \(error)" } } } - - public class PaperPublishedLinkViewTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PaperPublishedLinkViewType) throws -> JSON { + public class RewindFolderTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: RewindFolderType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PaperPublishedLinkViewType { - switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return PaperPublishedLinkViewType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: PaperPublishedLinkViewType.self, json: json) - } - } - } - - /// A user or group - public enum ParticipantLogInfo: CustomStringConvertible, JSONRepresentable { - /// Group details. - case group(TeamLog.GroupLogInfo) - /// A user with a Dropbox account. - case user(TeamLog.UserLogInfo) - /// An unspecified error. - case other - - func json() throws -> JSON { - try ParticipantLogInfoSerializer().serialize(self) - } - - public var description: String { - do { - return "\(SerializeUtil.prepareJSONForSerialization(try ParticipantLogInfoSerializer().serialize(self)))" - } catch { - return "Failed to generate description for ParticipantLogInfo: \(error)" - } - } - } - - public class ParticipantLogInfoSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ParticipantLogInfo) throws -> JSON { - switch value { - case .group(let arg): - var d = try Serialization.getFields(TeamLog.GroupLogInfoSerializer().serialize(arg)) - d[".tag"] = .str("group") - return .dictionary(d) - case .user(let arg): - var d = try ["user": TeamLog.UserLogInfoSerializer().serialize(arg)] - d[".tag"] = .str("user") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) - } - } - - public func deserialize(_ json: JSON) throws -> ParticipantLogInfo { + public func deserialize(_ json: JSON) throws -> RewindFolderType { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "group": - let v = try TeamLog.GroupLogInfoSerializer().deserialize(json) - return ParticipantLogInfo.group(v) - case "user": - let v = try TeamLog.UserLogInfoSerializer().deserialize(d["user"] ?? .null) - return ParticipantLogInfo.user(v) - case "other": - return ParticipantLogInfo.other + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return RewindFolderType(description_: description_) default: - return ParticipantLogInfo.other - } - default: - throw JSONSerializerError.deserializeError(type: ParticipantLogInfo.self, json: json) + throw JSONSerializerError.deserializeError(type: RewindFolderType.self, json: json) } } } - /// The PassPolicy union - public enum PassPolicy: CustomStringConvertible, JSONRepresentable { - /// An unspecified error. - case allow + /// Policy for controlling whether team members can rewind + public enum RewindPolicy: CustomStringConvertible, JSONRepresentable { /// An unspecified error. - case disabled + case adminsOnly /// An unspecified error. - case enabled + case everyone /// An unspecified error. case other func json() throws -> JSON { - try PassPolicySerializer().serialize(self) + try RewindPolicySerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PassPolicySerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try RewindPolicySerializer().serialize(self)))" } catch { - return "Failed to generate description for PassPolicy: \(error)" + return "Failed to generate description for RewindPolicy: \(error)" } } } - - public class PassPolicySerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PassPolicy) throws -> JSON { + public class RewindPolicySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: RewindPolicy) throws -> JSON { switch value { - case .allow: - var d = [String: JSON]() - d[".tag"] = .str("allow") - return .dictionary(d) - case .disabled: - var d = [String: JSON]() - d[".tag"] = .str("disabled") - return .dictionary(d) - case .enabled: - var d = [String: JSON]() - d[".tag"] = .str("enabled") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) + case .adminsOnly: + var d = [String: JSON]() + d[".tag"] = .str("admins_only") + return .dictionary(d) + case .everyone: + var d = [String: JSON]() + d[".tag"] = .str("everyone") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) } } - - public func deserialize(_ json: JSON) throws -> PassPolicy { + public func deserialize(_ json: JSON) throws -> RewindPolicy { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "allow": - return PassPolicy.allow - case "disabled": - return PassPolicy.disabled - case "enabled": - return PassPolicy.enabled - case "other": - return PassPolicy.other + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "admins_only": + return RewindPolicy.adminsOnly + case "everyone": + return RewindPolicy.everyone + case "other": + return RewindPolicy.other + default: + return RewindPolicy.other + } default: - return PassPolicy.other - } - default: - throw JSONSerializerError.deserializeError(type: PassPolicy.self, json: json) + throw JSONSerializerError.deserializeError(type: RewindPolicy.self, json: json) } } } - /// Changed password. - public class PasswordChangeDetails: CustomStringConvertible, JSONRepresentable { + /// Changed Rewind policy for team. + public class RewindPolicyChangedDetails: CustomStringConvertible, JSONRepresentable { + /// New Dropbox Rewind policy. + public let newValue: TeamLog.RewindPolicy + /// Previous Dropbox Rewind policy. + public let previousValue: TeamLog.RewindPolicy + public init(newValue: TeamLog.RewindPolicy, previousValue: TeamLog.RewindPolicy) { + self.newValue = newValue + self.previousValue = previousValue + } + func json() throws -> JSON { - try PasswordChangeDetailsSerializer().serialize(self) + try RewindPolicyChangedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PasswordChangeDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try RewindPolicyChangedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for PasswordChangeDetails: \(error)" + return "Failed to generate description for RewindPolicyChangedDetails: \(error)" } } } - - public class PasswordChangeDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PasswordChangeDetails) throws -> JSON { - let output = [String: JSON]() + public class RewindPolicyChangedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: RewindPolicyChangedDetails) throws -> JSON { + let output = [ + "new_value": try TeamLog.RewindPolicySerializer().serialize(value.newValue), + "previous_value": try TeamLog.RewindPolicySerializer().serialize(value.previousValue), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PasswordChangeDetails { + public func deserialize(_ json: JSON) throws -> RewindPolicyChangedDetails { switch json { - case .dictionary: - return PasswordChangeDetails() - default: - throw JSONSerializerError.deserializeError(type: PasswordChangeDetails.self, json: json) + case .dictionary(let dict): + let newValue = try TeamLog.RewindPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try TeamLog.RewindPolicySerializer().deserialize(dict["previous_value"] ?? .null) + return RewindPolicyChangedDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: RewindPolicyChangedDetails.self, json: json) } } } - /// The PasswordChangeType struct - public class PasswordChangeType: CustomStringConvertible, JSONRepresentable { + /// The RewindPolicyChangedType struct + public class RewindPolicyChangedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -46094,72 +59060,90 @@ public class TeamLog { } func json() throws -> JSON { - try PasswordChangeTypeSerializer().serialize(self) + try RewindPolicyChangedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PasswordChangeTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try RewindPolicyChangedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for PasswordChangeType: \(error)" + return "Failed to generate description for RewindPolicyChangedType: \(error)" } } } - - public class PasswordChangeTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PasswordChangeType) throws -> JSON { + public class RewindPolicyChangedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: RewindPolicyChangedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PasswordChangeType { + public func deserialize(_ json: JSON) throws -> RewindPolicyChangedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return PasswordChangeType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: PasswordChangeType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return RewindPolicyChangedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: RewindPolicyChangedType.self, json: json) } } } - /// Reset all team member passwords. - public class PasswordResetAllDetails: CustomStringConvertible, JSONRepresentable { + /// RISC security event received from external provider. + public class RiscSecurityEventDetails: CustomStringConvertible, JSONRepresentable { + /// RISC event type (e.g., account-disabled, token-revoked). + public let eventType: String + /// Reason for the RISC event. + public let reason: String + /// Identity provider issuer (e.g., https://accounts.google.com). + public let issuer: String + public init(eventType: String, reason: String, issuer: String) { + stringValidator()(eventType) + self.eventType = eventType + stringValidator()(reason) + self.reason = reason + stringValidator()(issuer) + self.issuer = issuer + } + func json() throws -> JSON { - try PasswordResetAllDetailsSerializer().serialize(self) + try RiscSecurityEventDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PasswordResetAllDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try RiscSecurityEventDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for PasswordResetAllDetails: \(error)" + return "Failed to generate description for RiscSecurityEventDetails: \(error)" } } } - - public class PasswordResetAllDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PasswordResetAllDetails) throws -> JSON { - let output = [String: JSON]() + public class RiscSecurityEventDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: RiscSecurityEventDetails) throws -> JSON { + let output = [ + "event_type": try Serialization._StringSerializer.serialize(value.eventType), + "reason": try Serialization._StringSerializer.serialize(value.reason), + "issuer": try Serialization._StringSerializer.serialize(value.issuer), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PasswordResetAllDetails { + public func deserialize(_ json: JSON) throws -> RiscSecurityEventDetails { switch json { - case .dictionary: - return PasswordResetAllDetails() - default: - throw JSONSerializerError.deserializeError(type: PasswordResetAllDetails.self, json: json) + case .dictionary(let dict): + let eventType = try Serialization._StringSerializer.deserialize(dict["event_type"] ?? .null) + let reason = try Serialization._StringSerializer.deserialize(dict["reason"] ?? .null) + let issuer = try Serialization._StringSerializer.deserialize(dict["issuer"] ?? .null) + return RiscSecurityEventDetails(eventType: eventType, reason: reason, issuer: issuer) + default: + throw JSONSerializerError.deserializeError(type: RiscSecurityEventDetails.self, json: json) } } } - /// The PasswordResetAllType struct - public class PasswordResetAllType: CustomStringConvertible, JSONRepresentable { + /// The RiscSecurityEventType struct + public class RiscSecurityEventType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -46168,72 +59152,78 @@ public class TeamLog { } func json() throws -> JSON { - try PasswordResetAllTypeSerializer().serialize(self) + try RiscSecurityEventTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PasswordResetAllTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try RiscSecurityEventTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for PasswordResetAllType: \(error)" + return "Failed to generate description for RiscSecurityEventType: \(error)" } } } - - public class PasswordResetAllTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PasswordResetAllType) throws -> JSON { + public class RiscSecurityEventTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: RiscSecurityEventType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PasswordResetAllType { + public func deserialize(_ json: JSON) throws -> RiscSecurityEventType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return PasswordResetAllType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: PasswordResetAllType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return RiscSecurityEventType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: RiscSecurityEventType.self, json: json) } } } - /// Reset password. - public class PasswordResetDetails: CustomStringConvertible, JSONRepresentable { + /// Deleted secondary email. + public class SecondaryEmailDeletedDetails: CustomStringConvertible, JSONRepresentable { + /// Deleted secondary email. + public let secondaryEmail: String + public init(secondaryEmail: String) { + stringValidator(maxLength: 255)(secondaryEmail) + self.secondaryEmail = secondaryEmail + } + func json() throws -> JSON { - try PasswordResetDetailsSerializer().serialize(self) + try SecondaryEmailDeletedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PasswordResetDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SecondaryEmailDeletedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for PasswordResetDetails: \(error)" + return "Failed to generate description for SecondaryEmailDeletedDetails: \(error)" } } } - - public class PasswordResetDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PasswordResetDetails) throws -> JSON { - let output = [String: JSON]() + public class SecondaryEmailDeletedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SecondaryEmailDeletedDetails) throws -> JSON { + let output = [ + "secondary_email": try Serialization._StringSerializer.serialize(value.secondaryEmail), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PasswordResetDetails { + public func deserialize(_ json: JSON) throws -> SecondaryEmailDeletedDetails { switch json { - case .dictionary: - return PasswordResetDetails() - default: - throw JSONSerializerError.deserializeError(type: PasswordResetDetails.self, json: json) + case .dictionary(let dict): + let secondaryEmail = try Serialization._StringSerializer.deserialize(dict["secondary_email"] ?? .null) + return SecondaryEmailDeletedDetails(secondaryEmail: secondaryEmail) + default: + throw JSONSerializerError.deserializeError(type: SecondaryEmailDeletedDetails.self, json: json) } } } - /// The PasswordResetType struct - public class PasswordResetType: CustomStringConvertible, JSONRepresentable { + /// The SecondaryEmailDeletedType struct + public class SecondaryEmailDeletedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -46242,86 +59232,78 @@ public class TeamLog { } func json() throws -> JSON { - try PasswordResetTypeSerializer().serialize(self) + try SecondaryEmailDeletedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PasswordResetTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SecondaryEmailDeletedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for PasswordResetType: \(error)" + return "Failed to generate description for SecondaryEmailDeletedType: \(error)" } } } - - public class PasswordResetTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PasswordResetType) throws -> JSON { + public class SecondaryEmailDeletedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SecondaryEmailDeletedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PasswordResetType { + public func deserialize(_ json: JSON) throws -> SecondaryEmailDeletedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return PasswordResetType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: PasswordResetType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SecondaryEmailDeletedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SecondaryEmailDeletedType.self, json: json) } } } - /// Changed team password strength requirements. - public class PasswordStrengthRequirementsChangePolicyDetails: CustomStringConvertible, JSONRepresentable { - /// Old password strength policy. - public let previousValue: TeamPolicies.PasswordStrengthPolicy - /// New password strength policy. - public let newValue: TeamPolicies.PasswordStrengthPolicy - public init(previousValue: TeamPolicies.PasswordStrengthPolicy, newValue: TeamPolicies.PasswordStrengthPolicy) { - self.previousValue = previousValue - self.newValue = newValue + /// Verified secondary email. + public class SecondaryEmailVerifiedDetails: CustomStringConvertible, JSONRepresentable { + /// Verified secondary email. + public let secondaryEmail: String + public init(secondaryEmail: String) { + stringValidator(maxLength: 255)(secondaryEmail) + self.secondaryEmail = secondaryEmail } func json() throws -> JSON { - try PasswordStrengthRequirementsChangePolicyDetailsSerializer().serialize(self) + try SecondaryEmailVerifiedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PasswordStrengthRequirementsChangePolicyDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SecondaryEmailVerifiedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for PasswordStrengthRequirementsChangePolicyDetails: \(error)" + return "Failed to generate description for SecondaryEmailVerifiedDetails: \(error)" } } } - - public class PasswordStrengthRequirementsChangePolicyDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PasswordStrengthRequirementsChangePolicyDetails) throws -> JSON { + public class SecondaryEmailVerifiedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SecondaryEmailVerifiedDetails) throws -> JSON { let output = [ - "previous_value": try TeamPolicies.PasswordStrengthPolicySerializer().serialize(value.previousValue), - "new_value": try TeamPolicies.PasswordStrengthPolicySerializer().serialize(value.newValue), + "secondary_email": try Serialization._StringSerializer.serialize(value.secondaryEmail), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PasswordStrengthRequirementsChangePolicyDetails { + public func deserialize(_ json: JSON) throws -> SecondaryEmailVerifiedDetails { switch json { - case .dictionary(let dict): - let previousValue = try TeamPolicies.PasswordStrengthPolicySerializer().deserialize(dict["previous_value"] ?? .null) - let newValue = try TeamPolicies.PasswordStrengthPolicySerializer().deserialize(dict["new_value"] ?? .null) - return PasswordStrengthRequirementsChangePolicyDetails(previousValue: previousValue, newValue: newValue) - default: - throw JSONSerializerError.deserializeError(type: PasswordStrengthRequirementsChangePolicyDetails.self, json: json) + case .dictionary(let dict): + let secondaryEmail = try Serialization._StringSerializer.deserialize(dict["secondary_email"] ?? .null) + return SecondaryEmailVerifiedDetails(secondaryEmail: secondaryEmail) + default: + throw JSONSerializerError.deserializeError(type: SecondaryEmailVerifiedDetails.self, json: json) } } } - /// The PasswordStrengthRequirementsChangePolicyType struct - public class PasswordStrengthRequirementsChangePolicyType: CustomStringConvertible, JSONRepresentable { + /// The SecondaryEmailVerifiedType struct + public class SecondaryEmailVerifiedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -46330,129 +59312,141 @@ public class TeamLog { } func json() throws -> JSON { - try PasswordStrengthRequirementsChangePolicyTypeSerializer().serialize(self) + try SecondaryEmailVerifiedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PasswordStrengthRequirementsChangePolicyTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SecondaryEmailVerifiedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for PasswordStrengthRequirementsChangePolicyType: \(error)" + return "Failed to generate description for SecondaryEmailVerifiedType: \(error)" } } } - - public class PasswordStrengthRequirementsChangePolicyTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PasswordStrengthRequirementsChangePolicyType) throws -> JSON { + public class SecondaryEmailVerifiedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SecondaryEmailVerifiedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PasswordStrengthRequirementsChangePolicyType { + public func deserialize(_ json: JSON) throws -> SecondaryEmailVerifiedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return PasswordStrengthRequirementsChangePolicyType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: PasswordStrengthRequirementsChangePolicyType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SecondaryEmailVerifiedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SecondaryEmailVerifiedType.self, json: json) } } } - /// Path's details. - public class PathLogInfo: CustomStringConvertible, JSONRepresentable { - /// Fully qualified path relative to event's context. - public let contextual: String? - /// Path relative to the namespace containing the content. - public let namespaceRelative: TeamLog.NamespaceRelativePathLogInfo - public init(namespaceRelative: TeamLog.NamespaceRelativePathLogInfo, contextual: String? = nil) { - nullableValidator(stringValidator())(contextual) - self.contextual = contextual - self.namespaceRelative = namespaceRelative - } + /// The SecondaryMailsPolicy union + public enum SecondaryMailsPolicy: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case disabled + /// An unspecified error. + case enabled + /// An unspecified error. + case other func json() throws -> JSON { - try PathLogInfoSerializer().serialize(self) + try SecondaryMailsPolicySerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PathLogInfoSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SecondaryMailsPolicySerializer().serialize(self)))" } catch { - return "Failed to generate description for PathLogInfo: \(error)" + return "Failed to generate description for SecondaryMailsPolicy: \(error)" } } } - - public class PathLogInfoSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PathLogInfo) throws -> JSON { - let output = [ - "namespace_relative": try TeamLog.NamespaceRelativePathLogInfoSerializer().serialize(value.namespaceRelative), - "contextual": try NullableSerializer(Serialization._StringSerializer).serialize(value.contextual), - ] - return .dictionary(output) + public class SecondaryMailsPolicySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SecondaryMailsPolicy) throws -> JSON { + switch value { + case .disabled: + var d = [String: JSON]() + d[".tag"] = .str("disabled") + return .dictionary(d) + case .enabled: + var d = [String: JSON]() + d[".tag"] = .str("enabled") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } } - - public func deserialize(_ json: JSON) throws -> PathLogInfo { + public func deserialize(_ json: JSON) throws -> SecondaryMailsPolicy { switch json { - case .dictionary(let dict): - let namespaceRelative = try TeamLog.NamespaceRelativePathLogInfoSerializer().deserialize(dict["namespace_relative"] ?? .null) - let contextual = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["contextual"] ?? .null) - return PathLogInfo(namespaceRelative: namespaceRelative, contextual: contextual) - default: - throw JSONSerializerError.deserializeError(type: PathLogInfo.self, json: json) + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "disabled": + return SecondaryMailsPolicy.disabled + case "enabled": + return SecondaryMailsPolicy.enabled + case "other": + return SecondaryMailsPolicy.other + default: + return SecondaryMailsPolicy.other + } + default: + throw JSONSerializerError.deserializeError(type: SecondaryMailsPolicy.self, json: json) } } } - /// Added pending secondary email. - public class PendingSecondaryEmailAddedDetails: CustomStringConvertible, JSONRepresentable { - /// New pending secondary email. - public let secondaryEmail: String - public init(secondaryEmail: String) { - stringValidator(maxLength: 255)(secondaryEmail) - self.secondaryEmail = secondaryEmail + /// Secondary mails policy changed. + public class SecondaryMailsPolicyChangedDetails: CustomStringConvertible, JSONRepresentable { + /// Previous secondary mails policy. + public let previousValue: TeamLog.SecondaryMailsPolicy + /// New secondary mails policy. + public let newValue: TeamLog.SecondaryMailsPolicy + public init(previousValue: TeamLog.SecondaryMailsPolicy, newValue: TeamLog.SecondaryMailsPolicy) { + self.previousValue = previousValue + self.newValue = newValue } func json() throws -> JSON { - try PendingSecondaryEmailAddedDetailsSerializer().serialize(self) + try SecondaryMailsPolicyChangedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PendingSecondaryEmailAddedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SecondaryMailsPolicyChangedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for PendingSecondaryEmailAddedDetails: \(error)" + return "Failed to generate description for SecondaryMailsPolicyChangedDetails: \(error)" } } } - - public class PendingSecondaryEmailAddedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PendingSecondaryEmailAddedDetails) throws -> JSON { + public class SecondaryMailsPolicyChangedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SecondaryMailsPolicyChangedDetails) throws -> JSON { let output = [ - "secondary_email": try Serialization._StringSerializer.serialize(value.secondaryEmail), + "previous_value": try TeamLog.SecondaryMailsPolicySerializer().serialize(value.previousValue), + "new_value": try TeamLog.SecondaryMailsPolicySerializer().serialize(value.newValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PendingSecondaryEmailAddedDetails { + public func deserialize(_ json: JSON) throws -> SecondaryMailsPolicyChangedDetails { switch json { - case .dictionary(let dict): - let secondaryEmail = try Serialization._StringSerializer.deserialize(dict["secondary_email"] ?? .null) - return PendingSecondaryEmailAddedDetails(secondaryEmail: secondaryEmail) - default: - throw JSONSerializerError.deserializeError(type: PendingSecondaryEmailAddedDetails.self, json: json) + case .dictionary(let dict): + let previousValue = try TeamLog.SecondaryMailsPolicySerializer().deserialize(dict["previous_value"] ?? .null) + let newValue = try TeamLog.SecondaryMailsPolicySerializer().deserialize(dict["new_value"] ?? .null) + return SecondaryMailsPolicyChangedDetails(previousValue: previousValue, newValue: newValue) + default: + throw JSONSerializerError.deserializeError(type: SecondaryMailsPolicyChangedDetails.self, json: json) } } } - /// The PendingSecondaryEmailAddedType struct - public class PendingSecondaryEmailAddedType: CustomStringConvertible, JSONRepresentable { + /// The SecondaryMailsPolicyChangedType struct + public class SecondaryMailsPolicyChangedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -46461,682 +59455,471 @@ public class TeamLog { } func json() throws -> JSON { - try PendingSecondaryEmailAddedTypeSerializer().serialize(self) + try SecondaryMailsPolicyChangedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PendingSecondaryEmailAddedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SecondaryMailsPolicyChangedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for PendingSecondaryEmailAddedType: \(error)" + return "Failed to generate description for SecondaryMailsPolicyChangedType: \(error)" } } } - - public class PendingSecondaryEmailAddedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PendingSecondaryEmailAddedType) throws -> JSON { + public class SecondaryMailsPolicyChangedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SecondaryMailsPolicyChangedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PendingSecondaryEmailAddedType { + public func deserialize(_ json: JSON) throws -> SecondaryMailsPolicyChangedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return PendingSecondaryEmailAddedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: PendingSecondaryEmailAddedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SecondaryMailsPolicyChangedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SecondaryMailsPolicyChangedType.self, json: json) } } } - /// Enabled/disabled ability of team members to permanently delete content. - public class PermanentDeleteChangePolicyDetails: CustomStringConvertible, JSONRepresentable { - /// New permanent delete content policy. - public let newValue: TeamLog.ContentPermanentDeletePolicy - /// Previous permanent delete content policy. Might be missing due to historical data gap. - public let previousValue: TeamLog.ContentPermanentDeletePolicy? - public init(newValue: TeamLog.ContentPermanentDeletePolicy, previousValue: TeamLog.ContentPermanentDeletePolicy? = nil) { - self.newValue = newValue - self.previousValue = previousValue + /// Team merge request acceptance details shown to the secondary team + public class SecondaryTeamRequestAcceptedDetails: CustomStringConvertible, JSONRepresentable { + /// The primary team name. + public let primaryTeam: String + /// The name of the secondary team admin who sent the request originally. + public let sentBy: String + public init(primaryTeam: String, sentBy: String) { + stringValidator()(primaryTeam) + self.primaryTeam = primaryTeam + stringValidator()(sentBy) + self.sentBy = sentBy } func json() throws -> JSON { - try PermanentDeleteChangePolicyDetailsSerializer().serialize(self) + try SecondaryTeamRequestAcceptedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PermanentDeleteChangePolicyDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SecondaryTeamRequestAcceptedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for PermanentDeleteChangePolicyDetails: \(error)" + return "Failed to generate description for SecondaryTeamRequestAcceptedDetails: \(error)" } } } - - public class PermanentDeleteChangePolicyDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PermanentDeleteChangePolicyDetails) throws -> JSON { + public class SecondaryTeamRequestAcceptedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SecondaryTeamRequestAcceptedDetails) throws -> JSON { let output = [ - "new_value": try TeamLog.ContentPermanentDeletePolicySerializer().serialize(value.newValue), - "previous_value": try NullableSerializer(TeamLog.ContentPermanentDeletePolicySerializer()).serialize(value.previousValue), + "primary_team": try Serialization._StringSerializer.serialize(value.primaryTeam), + "sent_by": try Serialization._StringSerializer.serialize(value.sentBy), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PermanentDeleteChangePolicyDetails { + public func deserialize(_ json: JSON) throws -> SecondaryTeamRequestAcceptedDetails { switch json { - case .dictionary(let dict): - let newValue = try TeamLog.ContentPermanentDeletePolicySerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try NullableSerializer(TeamLog.ContentPermanentDeletePolicySerializer()).deserialize(dict["previous_value"] ?? .null) - return PermanentDeleteChangePolicyDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: PermanentDeleteChangePolicyDetails.self, json: json) + case .dictionary(let dict): + let primaryTeam = try Serialization._StringSerializer.deserialize(dict["primary_team"] ?? .null) + let sentBy = try Serialization._StringSerializer.deserialize(dict["sent_by"] ?? .null) + return SecondaryTeamRequestAcceptedDetails(primaryTeam: primaryTeam, sentBy: sentBy) + default: + throw JSONSerializerError.deserializeError(type: SecondaryTeamRequestAcceptedDetails.self, json: json) } } } - /// The PermanentDeleteChangePolicyType struct - public class PermanentDeleteChangePolicyType: CustomStringConvertible, JSONRepresentable { - /// (no description) - public let description_: String - public init(description_: String) { - stringValidator()(description_) - self.description_ = description_ + /// Team merge request cancellation details shown to the secondary team + public class SecondaryTeamRequestCanceledDetails: CustomStringConvertible, JSONRepresentable { + /// The email of the primary team admin that the request was sent to. + public let sentTo: String + /// The name of the secondary team admin who sent the request originally. + public let sentBy: String + public init(sentTo: String, sentBy: String) { + stringValidator()(sentTo) + self.sentTo = sentTo + stringValidator()(sentBy) + self.sentBy = sentBy } func json() throws -> JSON { - try PermanentDeleteChangePolicyTypeSerializer().serialize(self) + try SecondaryTeamRequestCanceledDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PermanentDeleteChangePolicyTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SecondaryTeamRequestCanceledDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for PermanentDeleteChangePolicyType: \(error)" + return "Failed to generate description for SecondaryTeamRequestCanceledDetails: \(error)" } } } - - public class PermanentDeleteChangePolicyTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PermanentDeleteChangePolicyType) throws -> JSON { + public class SecondaryTeamRequestCanceledDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SecondaryTeamRequestCanceledDetails) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "sent_to": try Serialization._StringSerializer.serialize(value.sentTo), + "sent_by": try Serialization._StringSerializer.serialize(value.sentBy), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PermanentDeleteChangePolicyType { - switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return PermanentDeleteChangePolicyType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: PermanentDeleteChangePolicyType.self, json: json) - } - } - } - - /// The PlacementRestriction union - public enum PlacementRestriction: CustomStringConvertible, JSONRepresentable { - /// An unspecified error. - case australiaOnly - /// An unspecified error. - case europeOnly - /// An unspecified error. - case japanOnly - /// An unspecified error. - case none - /// An unspecified error. - case ukOnly - /// An unspecified error. - case usS3Only - /// An unspecified error. - case other - - func json() throws -> JSON { - try PlacementRestrictionSerializer().serialize(self) - } - - public var description: String { - do { - return "\(SerializeUtil.prepareJSONForSerialization(try PlacementRestrictionSerializer().serialize(self)))" - } catch { - return "Failed to generate description for PlacementRestriction: \(error)" - } - } - } - - public class PlacementRestrictionSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PlacementRestriction) throws -> JSON { - switch value { - case .australiaOnly: - var d = [String: JSON]() - d[".tag"] = .str("australia_only") - return .dictionary(d) - case .europeOnly: - var d = [String: JSON]() - d[".tag"] = .str("europe_only") - return .dictionary(d) - case .japanOnly: - var d = [String: JSON]() - d[".tag"] = .str("japan_only") - return .dictionary(d) - case .none: - var d = [String: JSON]() - d[".tag"] = .str("none") - return .dictionary(d) - case .ukOnly: - var d = [String: JSON]() - d[".tag"] = .str("uk_only") - return .dictionary(d) - case .usS3Only: - var d = [String: JSON]() - d[".tag"] = .str("us_s3_only") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) - } - } - - public func deserialize(_ json: JSON) throws -> PlacementRestriction { + public func deserialize(_ json: JSON) throws -> SecondaryTeamRequestCanceledDetails { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "australia_only": - return PlacementRestriction.australiaOnly - case "europe_only": - return PlacementRestriction.europeOnly - case "japan_only": - return PlacementRestriction.japanOnly - case "none": - return PlacementRestriction.none - case "uk_only": - return PlacementRestriction.ukOnly - case "us_s3_only": - return PlacementRestriction.usS3Only - case "other": - return PlacementRestriction.other + case .dictionary(let dict): + let sentTo = try Serialization._StringSerializer.deserialize(dict["sent_to"] ?? .null) + let sentBy = try Serialization._StringSerializer.deserialize(dict["sent_by"] ?? .null) + return SecondaryTeamRequestCanceledDetails(sentTo: sentTo, sentBy: sentBy) default: - return PlacementRestriction.other - } - default: - throw JSONSerializerError.deserializeError(type: PlacementRestriction.self, json: json) + throw JSONSerializerError.deserializeError(type: SecondaryTeamRequestCanceledDetails.self, json: json) } } } - /// The PolicyType union - public enum PolicyType: CustomStringConvertible, JSONRepresentable { - /// An unspecified error. - case disposition - /// An unspecified error. - case retention - /// An unspecified error. - case other + /// Team merge request expiration details shown to the secondary team + public class SecondaryTeamRequestExpiredDetails: CustomStringConvertible, JSONRepresentable { + /// The email of the primary team admin the request was sent to. + public let sentTo: String + public init(sentTo: String) { + stringValidator()(sentTo) + self.sentTo = sentTo + } func json() throws -> JSON { - try PolicyTypeSerializer().serialize(self) + try SecondaryTeamRequestExpiredDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PolicyTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SecondaryTeamRequestExpiredDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for PolicyType: \(error)" + return "Failed to generate description for SecondaryTeamRequestExpiredDetails: \(error)" } } } - - public class PolicyTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PolicyType) throws -> JSON { - switch value { - case .disposition: - var d = [String: JSON]() - d[".tag"] = .str("disposition") - return .dictionary(d) - case .retention: - var d = [String: JSON]() - d[".tag"] = .str("retention") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) - } + public class SecondaryTeamRequestExpiredDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SecondaryTeamRequestExpiredDetails) throws -> JSON { + let output = [ + "sent_to": try Serialization._StringSerializer.serialize(value.sentTo), + ] + return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PolicyType { + public func deserialize(_ json: JSON) throws -> SecondaryTeamRequestExpiredDetails { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "disposition": - return PolicyType.disposition - case "retention": - return PolicyType.retention - case "other": - return PolicyType.other + case .dictionary(let dict): + let sentTo = try Serialization._StringSerializer.deserialize(dict["sent_to"] ?? .null) + return SecondaryTeamRequestExpiredDetails(sentTo: sentTo) default: - return PolicyType.other - } - default: - throw JSONSerializerError.deserializeError(type: PolicyType.self, json: json) + throw JSONSerializerError.deserializeError(type: SecondaryTeamRequestExpiredDetails.self, json: json) } } } - /// Team merge request acceptance details shown to the primary team - public class PrimaryTeamRequestAcceptedDetails: CustomStringConvertible, JSONRepresentable { - /// The secondary team name. - public let secondaryTeam: String - /// The name of the secondary team admin who sent the request originally. - public let sentBy: String - public init(secondaryTeam: String, sentBy: String) { - stringValidator()(secondaryTeam) - self.secondaryTeam = secondaryTeam - stringValidator()(sentBy) - self.sentBy = sentBy + /// Team merge request reminder details shown to the secondary team + public class SecondaryTeamRequestReminderDetails: CustomStringConvertible, JSONRepresentable { + /// The email of the primary team admin the request was sent to. + public let sentTo: String + public init(sentTo: String) { + stringValidator()(sentTo) + self.sentTo = sentTo } func json() throws -> JSON { - try PrimaryTeamRequestAcceptedDetailsSerializer().serialize(self) + try SecondaryTeamRequestReminderDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PrimaryTeamRequestAcceptedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SecondaryTeamRequestReminderDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for PrimaryTeamRequestAcceptedDetails: \(error)" + return "Failed to generate description for SecondaryTeamRequestReminderDetails: \(error)" } } } - - public class PrimaryTeamRequestAcceptedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PrimaryTeamRequestAcceptedDetails) throws -> JSON { + public class SecondaryTeamRequestReminderDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SecondaryTeamRequestReminderDetails) throws -> JSON { let output = [ - "secondary_team": try Serialization._StringSerializer.serialize(value.secondaryTeam), - "sent_by": try Serialization._StringSerializer.serialize(value.sentBy), + "sent_to": try Serialization._StringSerializer.serialize(value.sentTo), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PrimaryTeamRequestAcceptedDetails { + public func deserialize(_ json: JSON) throws -> SecondaryTeamRequestReminderDetails { switch json { - case .dictionary(let dict): - let secondaryTeam = try Serialization._StringSerializer.deserialize(dict["secondary_team"] ?? .null) - let sentBy = try Serialization._StringSerializer.deserialize(dict["sent_by"] ?? .null) - return PrimaryTeamRequestAcceptedDetails(secondaryTeam: secondaryTeam, sentBy: sentBy) - default: - throw JSONSerializerError.deserializeError(type: PrimaryTeamRequestAcceptedDetails.self, json: json) + case .dictionary(let dict): + let sentTo = try Serialization._StringSerializer.deserialize(dict["sent_to"] ?? .null) + return SecondaryTeamRequestReminderDetails(sentTo: sentTo) + default: + throw JSONSerializerError.deserializeError(type: SecondaryTeamRequestReminderDetails.self, json: json) } } } - /// Team merge request cancellation details shown to the primary team - public class PrimaryTeamRequestCanceledDetails: CustomStringConvertible, JSONRepresentable { - /// The secondary team name. - public let secondaryTeam: String - /// The name of the secondary team admin who sent the request originally. - public let sentBy: String - public init(secondaryTeam: String, sentBy: String) { - stringValidator()(secondaryTeam) - self.secondaryTeam = secondaryTeam - stringValidator()(sentBy) - self.sentBy = sentBy - } + /// File added to Send and Track. + public class SendAndTrackFileAddedDetails: CustomStringConvertible, JSONRepresentable { func json() throws -> JSON { - try PrimaryTeamRequestCanceledDetailsSerializer().serialize(self) + try SendAndTrackFileAddedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PrimaryTeamRequestCanceledDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SendAndTrackFileAddedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for PrimaryTeamRequestCanceledDetails: \(error)" + return "Failed to generate description for SendAndTrackFileAddedDetails: \(error)" } } } - - public class PrimaryTeamRequestCanceledDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PrimaryTeamRequestCanceledDetails) throws -> JSON { - let output = [ - "secondary_team": try Serialization._StringSerializer.serialize(value.secondaryTeam), - "sent_by": try Serialization._StringSerializer.serialize(value.sentBy), - ] + public class SendAndTrackFileAddedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SendAndTrackFileAddedDetails) throws -> JSON { + let output = [String: JSON]() return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PrimaryTeamRequestCanceledDetails { + public func deserialize(_ json: JSON) throws -> SendAndTrackFileAddedDetails { switch json { - case .dictionary(let dict): - let secondaryTeam = try Serialization._StringSerializer.deserialize(dict["secondary_team"] ?? .null) - let sentBy = try Serialization._StringSerializer.deserialize(dict["sent_by"] ?? .null) - return PrimaryTeamRequestCanceledDetails(secondaryTeam: secondaryTeam, sentBy: sentBy) - default: - throw JSONSerializerError.deserializeError(type: PrimaryTeamRequestCanceledDetails.self, json: json) + case .dictionary(_): + return SendAndTrackFileAddedDetails() + default: + throw JSONSerializerError.deserializeError(type: SendAndTrackFileAddedDetails.self, json: json) } } } - /// Team merge request expiration details shown to the primary team - public class PrimaryTeamRequestExpiredDetails: CustomStringConvertible, JSONRepresentable { - /// The secondary team name. - public let secondaryTeam: String - /// The name of the secondary team admin who sent the request originally. - public let sentBy: String - public init(secondaryTeam: String, sentBy: String) { - stringValidator()(secondaryTeam) - self.secondaryTeam = secondaryTeam - stringValidator()(sentBy) - self.sentBy = sentBy + /// The SendAndTrackFileAddedType struct + public class SendAndTrackFileAddedType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ } func json() throws -> JSON { - try PrimaryTeamRequestExpiredDetailsSerializer().serialize(self) + try SendAndTrackFileAddedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PrimaryTeamRequestExpiredDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SendAndTrackFileAddedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for PrimaryTeamRequestExpiredDetails: \(error)" + return "Failed to generate description for SendAndTrackFileAddedType: \(error)" } } } - - public class PrimaryTeamRequestExpiredDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PrimaryTeamRequestExpiredDetails) throws -> JSON { + public class SendAndTrackFileAddedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SendAndTrackFileAddedType) throws -> JSON { let output = [ - "secondary_team": try Serialization._StringSerializer.serialize(value.secondaryTeam), - "sent_by": try Serialization._StringSerializer.serialize(value.sentBy), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PrimaryTeamRequestExpiredDetails { + public func deserialize(_ json: JSON) throws -> SendAndTrackFileAddedType { switch json { - case .dictionary(let dict): - let secondaryTeam = try Serialization._StringSerializer.deserialize(dict["secondary_team"] ?? .null) - let sentBy = try Serialization._StringSerializer.deserialize(dict["sent_by"] ?? .null) - return PrimaryTeamRequestExpiredDetails(secondaryTeam: secondaryTeam, sentBy: sentBy) - default: - throw JSONSerializerError.deserializeError(type: PrimaryTeamRequestExpiredDetails.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SendAndTrackFileAddedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SendAndTrackFileAddedType.self, json: json) } } } - /// Team merge request reminder details shown to the primary team - public class PrimaryTeamRequestReminderDetails: CustomStringConvertible, JSONRepresentable { - /// The secondary team name. - public let secondaryTeam: String - /// The name of the primary team admin the request was sent to. - public let sentTo: String - public init(secondaryTeam: String, sentTo: String) { - stringValidator()(secondaryTeam) - self.secondaryTeam = secondaryTeam - stringValidator()(sentTo) - self.sentTo = sentTo + /// File renamed in Send and Track. + public class SendAndTrackFileRenamedDetails: CustomStringConvertible, JSONRepresentable { + /// Previous file name. + public let previousValue: String? + public init(previousValue: String? = nil) { + nullableValidator(stringValidator())(previousValue) + self.previousValue = previousValue } func json() throws -> JSON { - try PrimaryTeamRequestReminderDetailsSerializer().serialize(self) + try SendAndTrackFileRenamedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try PrimaryTeamRequestReminderDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SendAndTrackFileRenamedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for PrimaryTeamRequestReminderDetails: \(error)" + return "Failed to generate description for SendAndTrackFileRenamedDetails: \(error)" } } } - - public class PrimaryTeamRequestReminderDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: PrimaryTeamRequestReminderDetails) throws -> JSON { + public class SendAndTrackFileRenamedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SendAndTrackFileRenamedDetails) throws -> JSON { let output = [ - "secondary_team": try Serialization._StringSerializer.serialize(value.secondaryTeam), - "sent_to": try Serialization._StringSerializer.serialize(value.sentTo), + "previous_value": try NullableSerializer(Serialization._StringSerializer).serialize(value.previousValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> PrimaryTeamRequestReminderDetails { + public func deserialize(_ json: JSON) throws -> SendAndTrackFileRenamedDetails { switch json { - case .dictionary(let dict): - let secondaryTeam = try Serialization._StringSerializer.deserialize(dict["secondary_team"] ?? .null) - let sentTo = try Serialization._StringSerializer.deserialize(dict["sent_to"] ?? .null) - return PrimaryTeamRequestReminderDetails(secondaryTeam: secondaryTeam, sentTo: sentTo) - default: - throw JSONSerializerError.deserializeError(type: PrimaryTeamRequestReminderDetails.self, json: json) + case .dictionary(let dict): + let previousValue = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["previous_value"] ?? .null) + return SendAndTrackFileRenamedDetails(previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: SendAndTrackFileRenamedDetails.self, json: json) } } } - /// Quick action type. - public enum QuickActionType: CustomStringConvertible, JSONRepresentable { - /// An unspecified error. - case deleteSharedLink - /// An unspecified error. - case resetPassword - /// An unspecified error. - case restoreFileOrFolder - /// An unspecified error. - case unlinkApp - /// An unspecified error. - case unlinkDevice - /// An unspecified error. - case unlinkSession - /// An unspecified error. - case other + /// The SendAndTrackFileRenamedType struct + public class SendAndTrackFileRenamedType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } func json() throws -> JSON { - try QuickActionTypeSerializer().serialize(self) + try SendAndTrackFileRenamedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try QuickActionTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SendAndTrackFileRenamedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for QuickActionType: \(error)" + return "Failed to generate description for SendAndTrackFileRenamedType: \(error)" } } } - - public class QuickActionTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: QuickActionType) throws -> JSON { - switch value { - case .deleteSharedLink: - var d = [String: JSON]() - d[".tag"] = .str("delete_shared_link") - return .dictionary(d) - case .resetPassword: - var d = [String: JSON]() - d[".tag"] = .str("reset_password") - return .dictionary(d) - case .restoreFileOrFolder: - var d = [String: JSON]() - d[".tag"] = .str("restore_file_or_folder") - return .dictionary(d) - case .unlinkApp: - var d = [String: JSON]() - d[".tag"] = .str("unlink_app") - return .dictionary(d) - case .unlinkDevice: - var d = [String: JSON]() - d[".tag"] = .str("unlink_device") - return .dictionary(d) - case .unlinkSession: - var d = [String: JSON]() - d[".tag"] = .str("unlink_session") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) - } + public class SendAndTrackFileRenamedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SendAndTrackFileRenamedType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> QuickActionType { + public func deserialize(_ json: JSON) throws -> SendAndTrackFileRenamedType { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "delete_shared_link": - return QuickActionType.deleteSharedLink - case "reset_password": - return QuickActionType.resetPassword - case "restore_file_or_folder": - return QuickActionType.restoreFileOrFolder - case "unlink_app": - return QuickActionType.unlinkApp - case "unlink_device": - return QuickActionType.unlinkDevice - case "unlink_session": - return QuickActionType.unlinkSession - case "other": - return QuickActionType.other + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SendAndTrackFileRenamedType(description_: description_) default: - return QuickActionType.other - } - default: - throw JSONSerializerError.deserializeError(type: QuickActionType.self, json: json) + throw JSONSerializerError.deserializeError(type: SendAndTrackFileRenamedType.self, json: json) } } } - /// Created ransomware report. - public class RansomwareAlertCreateReportDetails: CustomStringConvertible, JSONRepresentable { + /// File updated in Send and Track. + public class SendAndTrackFileUpdatedDetails: CustomStringConvertible, JSONRepresentable { + func json() throws -> JSON { - try RansomwareAlertCreateReportDetailsSerializer().serialize(self) + try SendAndTrackFileUpdatedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try RansomwareAlertCreateReportDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SendAndTrackFileUpdatedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for RansomwareAlertCreateReportDetails: \(error)" + return "Failed to generate description for SendAndTrackFileUpdatedDetails: \(error)" } } } - - public class RansomwareAlertCreateReportDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: RansomwareAlertCreateReportDetails) throws -> JSON { + public class SendAndTrackFileUpdatedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SendAndTrackFileUpdatedDetails) throws -> JSON { let output = [String: JSON]() return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> RansomwareAlertCreateReportDetails { + public func deserialize(_ json: JSON) throws -> SendAndTrackFileUpdatedDetails { switch json { - case .dictionary: - return RansomwareAlertCreateReportDetails() - default: - throw JSONSerializerError.deserializeError(type: RansomwareAlertCreateReportDetails.self, json: json) + case .dictionary(_): + return SendAndTrackFileUpdatedDetails() + default: + throw JSONSerializerError.deserializeError(type: SendAndTrackFileUpdatedDetails.self, json: json) } } } - /// Couldn't generate ransomware report. - public class RansomwareAlertCreateReportFailedDetails: CustomStringConvertible, JSONRepresentable { - /// Failure reason. - public let failureReason: Team.TeamReportFailureReason - public init(failureReason: Team.TeamReportFailureReason) { - self.failureReason = failureReason + /// The SendAndTrackFileUpdatedType struct + public class SendAndTrackFileUpdatedType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ } func json() throws -> JSON { - try RansomwareAlertCreateReportFailedDetailsSerializer().serialize(self) + try SendAndTrackFileUpdatedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try RansomwareAlertCreateReportFailedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SendAndTrackFileUpdatedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for RansomwareAlertCreateReportFailedDetails: \(error)" + return "Failed to generate description for SendAndTrackFileUpdatedType: \(error)" } } } - - public class RansomwareAlertCreateReportFailedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: RansomwareAlertCreateReportFailedDetails) throws -> JSON { + public class SendAndTrackFileUpdatedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SendAndTrackFileUpdatedType) throws -> JSON { let output = [ - "failure_reason": try Team.TeamReportFailureReasonSerializer().serialize(value.failureReason), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> RansomwareAlertCreateReportFailedDetails { + public func deserialize(_ json: JSON) throws -> SendAndTrackFileUpdatedType { switch json { - case .dictionary(let dict): - let failureReason = try Team.TeamReportFailureReasonSerializer().deserialize(dict["failure_reason"] ?? .null) - return RansomwareAlertCreateReportFailedDetails(failureReason: failureReason) - default: - throw JSONSerializerError.deserializeError(type: RansomwareAlertCreateReportFailedDetails.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SendAndTrackFileUpdatedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SendAndTrackFileUpdatedType.self, json: json) } } } - /// The RansomwareAlertCreateReportFailedType struct - public class RansomwareAlertCreateReportFailedType: CustomStringConvertible, JSONRepresentable { - /// (no description) - public let description_: String - public init(description_: String) { - stringValidator()(description_) - self.description_ = description_ + /// Link created in Send and Track. + public class SendAndTrackLinkCreatedDetails: CustomStringConvertible, JSONRepresentable { + /// Link Settings. + public let linkSettings: TeamLog.LinkSettingsLogInfo + public init(linkSettings: TeamLog.LinkSettingsLogInfo) { + self.linkSettings = linkSettings } func json() throws -> JSON { - try RansomwareAlertCreateReportFailedTypeSerializer().serialize(self) + try SendAndTrackLinkCreatedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try RansomwareAlertCreateReportFailedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SendAndTrackLinkCreatedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for RansomwareAlertCreateReportFailedType: \(error)" + return "Failed to generate description for SendAndTrackLinkCreatedDetails: \(error)" } } } - - public class RansomwareAlertCreateReportFailedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: RansomwareAlertCreateReportFailedType) throws -> JSON { + public class SendAndTrackLinkCreatedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SendAndTrackLinkCreatedDetails) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "link_settings": try TeamLog.LinkSettingsLogInfoSerializer().serialize(value.linkSettings), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> RansomwareAlertCreateReportFailedType { + public func deserialize(_ json: JSON) throws -> SendAndTrackLinkCreatedDetails { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return RansomwareAlertCreateReportFailedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: RansomwareAlertCreateReportFailedType.self, json: json) + case .dictionary(let dict): + let linkSettings = try TeamLog.LinkSettingsLogInfoSerializer().deserialize(dict["link_settings"] ?? .null) + return SendAndTrackLinkCreatedDetails(linkSettings: linkSettings) + default: + throw JSONSerializerError.deserializeError(type: SendAndTrackLinkCreatedDetails.self, json: json) } } } - /// The RansomwareAlertCreateReportType struct - public class RansomwareAlertCreateReportType: CustomStringConvertible, JSONRepresentable { + /// The SendAndTrackLinkCreatedType struct + public class SendAndTrackLinkCreatedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -47145,98 +59928,78 @@ public class TeamLog { } func json() throws -> JSON { - try RansomwareAlertCreateReportTypeSerializer().serialize(self) + try SendAndTrackLinkCreatedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try RansomwareAlertCreateReportTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SendAndTrackLinkCreatedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for RansomwareAlertCreateReportType: \(error)" + return "Failed to generate description for SendAndTrackLinkCreatedType: \(error)" } } } - - public class RansomwareAlertCreateReportTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: RansomwareAlertCreateReportType) throws -> JSON { + public class SendAndTrackLinkCreatedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SendAndTrackLinkCreatedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> RansomwareAlertCreateReportType { + public func deserialize(_ json: JSON) throws -> SendAndTrackLinkCreatedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return RansomwareAlertCreateReportType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: RansomwareAlertCreateReportType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SendAndTrackLinkCreatedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SendAndTrackLinkCreatedType.self, json: json) } } } - /// Completed ransomware restore process. - public class RansomwareRestoreProcessCompletedDetails: CustomStringConvertible, JSONRepresentable { - /// The status of the restore process. - public let status: String - /// Restored files count. - public let restoredFilesCount: Int64 - /// Restored files failed count. - public let restoredFilesFailedCount: Int64 - public init(status: String, restoredFilesCount: Int64, restoredFilesFailedCount: Int64) { - stringValidator()(status) - self.status = status - comparableValidator()(restoredFilesCount) - self.restoredFilesCount = restoredFilesCount - comparableValidator()(restoredFilesFailedCount) - self.restoredFilesFailedCount = restoredFilesFailedCount + /// Link deleted in Send and Track. + public class SendAndTrackLinkDeletedDetails: CustomStringConvertible, JSONRepresentable { + /// Shared content link. + public let sharedContentLink: String + public init(sharedContentLink: String) { + stringValidator()(sharedContentLink) + self.sharedContentLink = sharedContentLink } func json() throws -> JSON { - try RansomwareRestoreProcessCompletedDetailsSerializer().serialize(self) + try SendAndTrackLinkDeletedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try RansomwareRestoreProcessCompletedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SendAndTrackLinkDeletedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for RansomwareRestoreProcessCompletedDetails: \(error)" + return "Failed to generate description for SendAndTrackLinkDeletedDetails: \(error)" } } } - - public class RansomwareRestoreProcessCompletedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: RansomwareRestoreProcessCompletedDetails) throws -> JSON { + public class SendAndTrackLinkDeletedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SendAndTrackLinkDeletedDetails) throws -> JSON { let output = [ - "status": try Serialization._StringSerializer.serialize(value.status), - "restored_files_count": try Serialization._Int64Serializer.serialize(value.restoredFilesCount), - "restored_files_failed_count": try Serialization._Int64Serializer.serialize(value.restoredFilesFailedCount), + "shared_content_link": try Serialization._StringSerializer.serialize(value.sharedContentLink), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> RansomwareRestoreProcessCompletedDetails { + public func deserialize(_ json: JSON) throws -> SendAndTrackLinkDeletedDetails { switch json { - case .dictionary(let dict): - let status = try Serialization._StringSerializer.deserialize(dict["status"] ?? .null) - let restoredFilesCount = try Serialization._Int64Serializer.deserialize(dict["restored_files_count"] ?? .null) - let restoredFilesFailedCount = try Serialization._Int64Serializer.deserialize(dict["restored_files_failed_count"] ?? .null) - return RansomwareRestoreProcessCompletedDetails( - status: status, - restoredFilesCount: restoredFilesCount, - restoredFilesFailedCount: restoredFilesFailedCount - ) - default: - throw JSONSerializerError.deserializeError(type: RansomwareRestoreProcessCompletedDetails.self, json: json) + case .dictionary(let dict): + let sharedContentLink = try Serialization._StringSerializer.deserialize(dict["shared_content_link"] ?? .null) + return SendAndTrackLinkDeletedDetails(sharedContentLink: sharedContentLink) + default: + throw JSONSerializerError.deserializeError(type: SendAndTrackLinkDeletedDetails.self, json: json) } } } - /// The RansomwareRestoreProcessCompletedType struct - public class RansomwareRestoreProcessCompletedType: CustomStringConvertible, JSONRepresentable { + /// The SendAndTrackLinkDeletedType struct + public class SendAndTrackLinkDeletedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -47245,82 +60008,83 @@ public class TeamLog { } func json() throws -> JSON { - try RansomwareRestoreProcessCompletedTypeSerializer().serialize(self) + try SendAndTrackLinkDeletedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try RansomwareRestoreProcessCompletedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SendAndTrackLinkDeletedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for RansomwareRestoreProcessCompletedType: \(error)" + return "Failed to generate description for SendAndTrackLinkDeletedType: \(error)" } } } - - public class RansomwareRestoreProcessCompletedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: RansomwareRestoreProcessCompletedType) throws -> JSON { + public class SendAndTrackLinkDeletedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SendAndTrackLinkDeletedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> RansomwareRestoreProcessCompletedType { + public func deserialize(_ json: JSON) throws -> SendAndTrackLinkDeletedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return RansomwareRestoreProcessCompletedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: RansomwareRestoreProcessCompletedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SendAndTrackLinkDeletedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SendAndTrackLinkDeletedType.self, json: json) } } } - /// Started ransomware restore process. - public class RansomwareRestoreProcessStartedDetails: CustomStringConvertible, JSONRepresentable { - /// Ransomware filename extension. - public let extension_: String - public init(extension_: String) { - stringValidator()(extension_) - self.extension_ = extension_ + /// Send and Track Link Updated. + public class SendAndTrackLinkUpdatedDetails: CustomStringConvertible, JSONRepresentable { + /// Link Settings. + public let linkSettings: TeamLog.LinkSettingsLogInfo + /// Previous link name. + public let previousLinkName: String? + public init(linkSettings: TeamLog.LinkSettingsLogInfo, previousLinkName: String? = nil) { + self.linkSettings = linkSettings + nullableValidator(stringValidator())(previousLinkName) + self.previousLinkName = previousLinkName } func json() throws -> JSON { - try RansomwareRestoreProcessStartedDetailsSerializer().serialize(self) + try SendAndTrackLinkUpdatedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try RansomwareRestoreProcessStartedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SendAndTrackLinkUpdatedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for RansomwareRestoreProcessStartedDetails: \(error)" + return "Failed to generate description for SendAndTrackLinkUpdatedDetails: \(error)" } } } - - public class RansomwareRestoreProcessStartedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: RansomwareRestoreProcessStartedDetails) throws -> JSON { + public class SendAndTrackLinkUpdatedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SendAndTrackLinkUpdatedDetails) throws -> JSON { let output = [ - "extension": try Serialization._StringSerializer.serialize(value.extension_), + "link_settings": try TeamLog.LinkSettingsLogInfoSerializer().serialize(value.linkSettings), + "previous_link_name": try NullableSerializer(Serialization._StringSerializer).serialize(value.previousLinkName), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> RansomwareRestoreProcessStartedDetails { + public func deserialize(_ json: JSON) throws -> SendAndTrackLinkUpdatedDetails { switch json { - case .dictionary(let dict): - let extension_ = try Serialization._StringSerializer.deserialize(dict["extension"] ?? .null) - return RansomwareRestoreProcessStartedDetails(extension_: extension_) - default: - throw JSONSerializerError.deserializeError(type: RansomwareRestoreProcessStartedDetails.self, json: json) + case .dictionary(let dict): + let linkSettings = try TeamLog.LinkSettingsLogInfoSerializer().deserialize(dict["link_settings"] ?? .null) + let previousLinkName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["previous_link_name"] ?? .null) + return SendAndTrackLinkUpdatedDetails(linkSettings: linkSettings, previousLinkName: previousLinkName) + default: + throw JSONSerializerError.deserializeError(type: SendAndTrackLinkUpdatedDetails.self, json: json) } } } - /// The RansomwareRestoreProcessStartedType struct - public class RansomwareRestoreProcessStartedType: CustomStringConvertible, JSONRepresentable { + /// The SendAndTrackLinkUpdatedType struct + public class SendAndTrackLinkUpdatedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -47329,174 +60093,240 @@ public class TeamLog { } func json() throws -> JSON { - try RansomwareRestoreProcessStartedTypeSerializer().serialize(self) + try SendAndTrackLinkUpdatedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try RansomwareRestoreProcessStartedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SendAndTrackLinkUpdatedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for RansomwareRestoreProcessStartedType: \(error)" + return "Failed to generate description for SendAndTrackLinkUpdatedType: \(error)" } } } - - public class RansomwareRestoreProcessStartedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: RansomwareRestoreProcessStartedType) throws -> JSON { + public class SendAndTrackLinkUpdatedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SendAndTrackLinkUpdatedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> RansomwareRestoreProcessStartedType { + public func deserialize(_ json: JSON) throws -> SendAndTrackLinkUpdatedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return RansomwareRestoreProcessStartedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: RansomwareRestoreProcessStartedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SendAndTrackLinkUpdatedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SendAndTrackLinkUpdatedType.self, json: json) } } } - /// Recipients Configuration - public class RecipientsConfiguration: CustomStringConvertible, JSONRepresentable { - /// Recipients setting type. - public let recipientSettingType: TeamLog.AlertRecipientsSettingType? - /// A list of user emails to notify. - public let emails: [String]? - /// A list of groups to notify. - public let groups: [String]? - public init(recipientSettingType: TeamLog.AlertRecipientsSettingType? = nil, emails: [String]? = nil, groups: [String]? = nil) { - self.recipientSettingType = recipientSettingType - nullableValidator(arrayValidator(itemValidator: stringValidator(maxLength: 255)))(emails) - self.emails = emails - nullableValidator(arrayValidator(itemValidator: stringValidator()))(groups) - self.groups = groups + /// Send and Track Link Visited. + public class SendAndTrackLinkViewedDetails: CustomStringConvertible, JSONRepresentable { + /// Link Settings. + public let linkSettings: TeamLog.LinkSettingsLogInfo + /// Visitor Email address. + public let emailAddress: String? + /// Link Owner. + public let linkOwner: String? + public init(linkSettings: TeamLog.LinkSettingsLogInfo, emailAddress: String? = nil, linkOwner: String? = nil) { + self.linkSettings = linkSettings + nullableValidator(stringValidator())(emailAddress) + self.emailAddress = emailAddress + nullableValidator(stringValidator())(linkOwner) + self.linkOwner = linkOwner } func json() throws -> JSON { - try RecipientsConfigurationSerializer().serialize(self) + try SendAndTrackLinkViewedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try RecipientsConfigurationSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SendAndTrackLinkViewedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for RecipientsConfiguration: \(error)" + return "Failed to generate description for SendAndTrackLinkViewedDetails: \(error)" } } } - - public class RecipientsConfigurationSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: RecipientsConfiguration) throws -> JSON { + public class SendAndTrackLinkViewedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SendAndTrackLinkViewedDetails) throws -> JSON { let output = [ - "recipient_setting_type": try NullableSerializer(TeamLog.AlertRecipientsSettingTypeSerializer()).serialize(value.recipientSettingType), - "emails": try NullableSerializer(ArraySerializer(Serialization._StringSerializer)).serialize(value.emails), - "groups": try NullableSerializer(ArraySerializer(Serialization._StringSerializer)).serialize(value.groups), + "link_settings": try TeamLog.LinkSettingsLogInfoSerializer().serialize(value.linkSettings), + "email_address": try NullableSerializer(Serialization._StringSerializer).serialize(value.emailAddress), + "link_owner": try NullableSerializer(Serialization._StringSerializer).serialize(value.linkOwner), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> RecipientsConfiguration { + public func deserialize(_ json: JSON) throws -> SendAndTrackLinkViewedDetails { switch json { - case .dictionary(let dict): - let recipientSettingType = try NullableSerializer(TeamLog.AlertRecipientsSettingTypeSerializer()) - .deserialize(dict["recipient_setting_type"] ?? .null) - let emails = try NullableSerializer(ArraySerializer(Serialization._StringSerializer)).deserialize(dict["emails"] ?? .null) - let groups = try NullableSerializer(ArraySerializer(Serialization._StringSerializer)).deserialize(dict["groups"] ?? .null) - return RecipientsConfiguration(recipientSettingType: recipientSettingType, emails: emails, groups: groups) - default: - throw JSONSerializerError.deserializeError(type: RecipientsConfiguration.self, json: json) + case .dictionary(let dict): + let linkSettings = try TeamLog.LinkSettingsLogInfoSerializer().deserialize(dict["link_settings"] ?? .null) + let emailAddress = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["email_address"] ?? .null) + let linkOwner = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["link_owner"] ?? .null) + return SendAndTrackLinkViewedDetails(linkSettings: linkSettings, emailAddress: emailAddress, linkOwner: linkOwner) + default: + throw JSONSerializerError.deserializeError(type: SendAndTrackLinkViewedDetails.self, json: json) } } } - /// Provides the indices of the source asset and the destination asset for a relocate action. - public class RelocateAssetReferencesLogInfo: CustomStringConvertible, JSONRepresentable { - /// Source asset position in the Assets list. - public let srcAssetIndex: UInt64 - /// Destination asset position in the Assets list. - public let destAssetIndex: UInt64 - public init(srcAssetIndex: UInt64, destAssetIndex: UInt64) { - comparableValidator()(srcAssetIndex) - self.srcAssetIndex = srcAssetIndex - comparableValidator()(destAssetIndex) - self.destAssetIndex = destAssetIndex + /// The SendAndTrackLinkViewedType struct + public class SendAndTrackLinkViewedType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ } func json() throws -> JSON { - try RelocateAssetReferencesLogInfoSerializer().serialize(self) + try SendAndTrackLinkViewedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try RelocateAssetReferencesLogInfoSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SendAndTrackLinkViewedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for RelocateAssetReferencesLogInfo: \(error)" + return "Failed to generate description for SendAndTrackLinkViewedType: \(error)" } } } - - public class RelocateAssetReferencesLogInfoSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: RelocateAssetReferencesLogInfo) throws -> JSON { + public class SendAndTrackLinkViewedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SendAndTrackLinkViewedType) throws -> JSON { let output = [ - "src_asset_index": try Serialization._UInt64Serializer.serialize(value.srcAssetIndex), - "dest_asset_index": try Serialization._UInt64Serializer.serialize(value.destAssetIndex), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> RelocateAssetReferencesLogInfo { + public func deserialize(_ json: JSON) throws -> SendAndTrackLinkViewedType { switch json { - case .dictionary(let dict): - let srcAssetIndex = try Serialization._UInt64Serializer.deserialize(dict["src_asset_index"] ?? .null) - let destAssetIndex = try Serialization._UInt64Serializer.deserialize(dict["dest_asset_index"] ?? .null) - return RelocateAssetReferencesLogInfo(srcAssetIndex: srcAssetIndex, destAssetIndex: destAssetIndex) - default: - throw JSONSerializerError.deserializeError(type: RelocateAssetReferencesLogInfo.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SendAndTrackLinkViewedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SendAndTrackLinkViewedType.self, json: json) } } } - /// Deleted files in Replay. - public class ReplayFileDeleteDetails: CustomStringConvertible, JSONRepresentable { + /// Policy for deciding whether team users can use Send and Track + public enum SendAndTrackPolicy: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case default_ + /// An unspecified error. + case disabled + /// An unspecified error. + case enabled + /// An unspecified error. + case other + func json() throws -> JSON { - try ReplayFileDeleteDetailsSerializer().serialize(self) + try SendAndTrackPolicySerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ReplayFileDeleteDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SendAndTrackPolicySerializer().serialize(self)))" } catch { - return "Failed to generate description for ReplayFileDeleteDetails: \(error)" + return "Failed to generate description for SendAndTrackPolicy: \(error)" + } + } + } + public class SendAndTrackPolicySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SendAndTrackPolicy) throws -> JSON { + switch value { + case .default_: + var d = [String: JSON]() + d[".tag"] = .str("default") + return .dictionary(d) + case .disabled: + var d = [String: JSON]() + d[".tag"] = .str("disabled") + return .dictionary(d) + case .enabled: + var d = [String: JSON]() + d[".tag"] = .str("enabled") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> SendAndTrackPolicy { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "default": + return SendAndTrackPolicy.default_ + case "disabled": + return SendAndTrackPolicy.disabled + case "enabled": + return SendAndTrackPolicy.enabled + case "other": + return SendAndTrackPolicy.other + default: + return SendAndTrackPolicy.other + } + default: + throw JSONSerializerError.deserializeError(type: SendAndTrackPolicy.self, json: json) } } } - public class ReplayFileDeleteDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ReplayFileDeleteDetails) throws -> JSON { - let output = [String: JSON]() - return .dictionary(output) + /// Changed “Send and track” policy for team. + public class SendAndTrackPolicyChangedDetails: CustomStringConvertible, JSONRepresentable { + /// To. + public let newValue: TeamLog.SendAndTrackPolicy + /// From. + public let previousValue: TeamLog.SendAndTrackPolicy + public init(newValue: TeamLog.SendAndTrackPolicy, previousValue: TeamLog.SendAndTrackPolicy) { + self.newValue = newValue + self.previousValue = previousValue } - public func deserialize(_ json: JSON) throws -> ReplayFileDeleteDetails { + func json() throws -> JSON { + try SendAndTrackPolicyChangedDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try SendAndTrackPolicyChangedDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for SendAndTrackPolicyChangedDetails: \(error)" + } + } + } + public class SendAndTrackPolicyChangedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SendAndTrackPolicyChangedDetails) throws -> JSON { + let output = [ + "new_value": try TeamLog.SendAndTrackPolicySerializer().serialize(value.newValue), + "previous_value": try TeamLog.SendAndTrackPolicySerializer().serialize(value.previousValue), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> SendAndTrackPolicyChangedDetails { switch json { - case .dictionary: - return ReplayFileDeleteDetails() - default: - throw JSONSerializerError.deserializeError(type: ReplayFileDeleteDetails.self, json: json) + case .dictionary(let dict): + let newValue = try TeamLog.SendAndTrackPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try TeamLog.SendAndTrackPolicySerializer().deserialize(dict["previous_value"] ?? .null) + return SendAndTrackPolicyChangedDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: SendAndTrackPolicyChangedDetails.self, json: json) } } } - /// The ReplayFileDeleteType struct - public class ReplayFileDeleteType: CustomStringConvertible, JSONRepresentable { + /// The SendAndTrackPolicyChangedType struct + public class SendAndTrackPolicyChangedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -47505,72 +60335,69 @@ public class TeamLog { } func json() throws -> JSON { - try ReplayFileDeleteTypeSerializer().serialize(self) + try SendAndTrackPolicyChangedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ReplayFileDeleteTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SendAndTrackPolicyChangedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for ReplayFileDeleteType: \(error)" + return "Failed to generate description for SendAndTrackPolicyChangedType: \(error)" } } } - - public class ReplayFileDeleteTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ReplayFileDeleteType) throws -> JSON { + public class SendAndTrackPolicyChangedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SendAndTrackPolicyChangedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ReplayFileDeleteType { + public func deserialize(_ json: JSON) throws -> SendAndTrackPolicyChangedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return ReplayFileDeleteType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: ReplayFileDeleteType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SendAndTrackPolicyChangedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SendAndTrackPolicyChangedType.self, json: json) } } } - /// Created shared link in Replay. - public class ReplayFileSharedLinkCreatedDetails: CustomStringConvertible, JSONRepresentable { + /// Send and Track file and associated links deleted. + public class SendAndTrackRemovedFileAndAssociatedLinksDetails: CustomStringConvertible, JSONRepresentable { + func json() throws -> JSON { - try ReplayFileSharedLinkCreatedDetailsSerializer().serialize(self) + try SendAndTrackRemovedFileAndAssociatedLinksDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ReplayFileSharedLinkCreatedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SendAndTrackRemovedFileAndAssociatedLinksDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for ReplayFileSharedLinkCreatedDetails: \(error)" + return "Failed to generate description for SendAndTrackRemovedFileAndAssociatedLinksDetails: \(error)" } } } - - public class ReplayFileSharedLinkCreatedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ReplayFileSharedLinkCreatedDetails) throws -> JSON { + public class SendAndTrackRemovedFileAndAssociatedLinksDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SendAndTrackRemovedFileAndAssociatedLinksDetails) throws -> JSON { let output = [String: JSON]() return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ReplayFileSharedLinkCreatedDetails { + public func deserialize(_ json: JSON) throws -> SendAndTrackRemovedFileAndAssociatedLinksDetails { switch json { - case .dictionary: - return ReplayFileSharedLinkCreatedDetails() - default: - throw JSONSerializerError.deserializeError(type: ReplayFileSharedLinkCreatedDetails.self, json: json) + case .dictionary(_): + return SendAndTrackRemovedFileAndAssociatedLinksDetails() + default: + throw JSONSerializerError.deserializeError(type: SendAndTrackRemovedFileAndAssociatedLinksDetails.self, json: json) } } } - /// The ReplayFileSharedLinkCreatedType struct - public class ReplayFileSharedLinkCreatedType: CustomStringConvertible, JSONRepresentable { + /// The SendAndTrackRemovedFileAndAssociatedLinksType struct + public class SendAndTrackRemovedFileAndAssociatedLinksType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -47579,72 +60406,149 @@ public class TeamLog { } func json() throws -> JSON { - try ReplayFileSharedLinkCreatedTypeSerializer().serialize(self) + try SendAndTrackRemovedFileAndAssociatedLinksTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ReplayFileSharedLinkCreatedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SendAndTrackRemovedFileAndAssociatedLinksTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for ReplayFileSharedLinkCreatedType: \(error)" + return "Failed to generate description for SendAndTrackRemovedFileAndAssociatedLinksType: \(error)" } } } - - public class ReplayFileSharedLinkCreatedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ReplayFileSharedLinkCreatedType) throws -> JSON { + public class SendAndTrackRemovedFileAndAssociatedLinksTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SendAndTrackRemovedFileAndAssociatedLinksType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ReplayFileSharedLinkCreatedType { + public func deserialize(_ json: JSON) throws -> SendAndTrackRemovedFileAndAssociatedLinksType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return ReplayFileSharedLinkCreatedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: ReplayFileSharedLinkCreatedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SendAndTrackRemovedFileAndAssociatedLinksType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SendAndTrackRemovedFileAndAssociatedLinksType.self, json: json) } } } - /// Modified shared link in Replay. - public class ReplayFileSharedLinkModifiedDetails: CustomStringConvertible, JSONRepresentable { + /// Policy for deciding whether team users can share Send content externally + public enum SendExternalSharingPolicy: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case default_ + /// An unspecified error. + case disabled + /// An unspecified error. + case enabled + /// An unspecified error. + case other + func json() throws -> JSON { - try ReplayFileSharedLinkModifiedDetailsSerializer().serialize(self) + try SendExternalSharingPolicySerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ReplayFileSharedLinkModifiedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SendExternalSharingPolicySerializer().serialize(self)))" } catch { - return "Failed to generate description for ReplayFileSharedLinkModifiedDetails: \(error)" + return "Failed to generate description for SendExternalSharingPolicy: \(error)" + } + } + } + public class SendExternalSharingPolicySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SendExternalSharingPolicy) throws -> JSON { + switch value { + case .default_: + var d = [String: JSON]() + d[".tag"] = .str("default") + return .dictionary(d) + case .disabled: + var d = [String: JSON]() + d[".tag"] = .str("disabled") + return .dictionary(d) + case .enabled: + var d = [String: JSON]() + d[".tag"] = .str("enabled") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> SendExternalSharingPolicy { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "default": + return SendExternalSharingPolicy.default_ + case "disabled": + return SendExternalSharingPolicy.disabled + case "enabled": + return SendExternalSharingPolicy.enabled + case "other": + return SendExternalSharingPolicy.other + default: + return SendExternalSharingPolicy.other + } + default: + throw JSONSerializerError.deserializeError(type: SendExternalSharingPolicy.self, json: json) } } } - public class ReplayFileSharedLinkModifiedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ReplayFileSharedLinkModifiedDetails) throws -> JSON { - let output = [String: JSON]() - return .dictionary(output) + /// Changed “Send and track” external sharing policy for team. + public class SendExternalSharingPolicyChangedDetails: CustomStringConvertible, JSONRepresentable { + /// To. + public let newValue: TeamLog.SendExternalSharingPolicy + /// From. + public let previousValue: TeamLog.SendExternalSharingPolicy + public init(newValue: TeamLog.SendExternalSharingPolicy, previousValue: TeamLog.SendExternalSharingPolicy) { + self.newValue = newValue + self.previousValue = previousValue } - public func deserialize(_ json: JSON) throws -> ReplayFileSharedLinkModifiedDetails { + func json() throws -> JSON { + try SendExternalSharingPolicyChangedDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try SendExternalSharingPolicyChangedDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for SendExternalSharingPolicyChangedDetails: \(error)" + } + } + } + public class SendExternalSharingPolicyChangedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SendExternalSharingPolicyChangedDetails) throws -> JSON { + let output = [ + "new_value": try TeamLog.SendExternalSharingPolicySerializer().serialize(value.newValue), + "previous_value": try TeamLog.SendExternalSharingPolicySerializer().serialize(value.previousValue), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> SendExternalSharingPolicyChangedDetails { switch json { - case .dictionary: - return ReplayFileSharedLinkModifiedDetails() - default: - throw JSONSerializerError.deserializeError(type: ReplayFileSharedLinkModifiedDetails.self, json: json) + case .dictionary(let dict): + let newValue = try TeamLog.SendExternalSharingPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try TeamLog.SendExternalSharingPolicySerializer().deserialize(dict["previous_value"] ?? .null) + return SendExternalSharingPolicyChangedDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: SendExternalSharingPolicyChangedDetails.self, json: json) } } } - /// The ReplayFileSharedLinkModifiedType struct - public class ReplayFileSharedLinkModifiedType: CustomStringConvertible, JSONRepresentable { + /// The SendExternalSharingPolicyChangedType struct + public class SendExternalSharingPolicyChangedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -47653,72 +60557,141 @@ public class TeamLog { } func json() throws -> JSON { - try ReplayFileSharedLinkModifiedTypeSerializer().serialize(self) + try SendExternalSharingPolicyChangedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ReplayFileSharedLinkModifiedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SendExternalSharingPolicyChangedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for ReplayFileSharedLinkModifiedType: \(error)" + return "Failed to generate description for SendExternalSharingPolicyChangedType: \(error)" } } } - - public class ReplayFileSharedLinkModifiedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ReplayFileSharedLinkModifiedType) throws -> JSON { + public class SendExternalSharingPolicyChangedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SendExternalSharingPolicyChangedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ReplayFileSharedLinkModifiedType { + public func deserialize(_ json: JSON) throws -> SendExternalSharingPolicyChangedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return ReplayFileSharedLinkModifiedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: ReplayFileSharedLinkModifiedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SendExternalSharingPolicyChangedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SendExternalSharingPolicyChangedType.self, json: json) } } } - /// Added member to Replay Project. - public class ReplayProjectTeamAddDetails: CustomStringConvertible, JSONRepresentable { + /// Policy for controlling team access to send for signature feature + public enum SendForSignaturePolicy: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case disabled + /// An unspecified error. + case enabled + /// An unspecified error. + case other + func json() throws -> JSON { - try ReplayProjectTeamAddDetailsSerializer().serialize(self) + try SendForSignaturePolicySerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ReplayProjectTeamAddDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SendForSignaturePolicySerializer().serialize(self)))" } catch { - return "Failed to generate description for ReplayProjectTeamAddDetails: \(error)" + return "Failed to generate description for SendForSignaturePolicy: \(error)" + } + } + } + public class SendForSignaturePolicySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SendForSignaturePolicy) throws -> JSON { + switch value { + case .disabled: + var d = [String: JSON]() + d[".tag"] = .str("disabled") + return .dictionary(d) + case .enabled: + var d = [String: JSON]() + d[".tag"] = .str("enabled") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> SendForSignaturePolicy { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "disabled": + return SendForSignaturePolicy.disabled + case "enabled": + return SendForSignaturePolicy.enabled + case "other": + return SendForSignaturePolicy.other + default: + return SendForSignaturePolicy.other + } + default: + throw JSONSerializerError.deserializeError(type: SendForSignaturePolicy.self, json: json) } } } - public class ReplayProjectTeamAddDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ReplayProjectTeamAddDetails) throws -> JSON { - let output = [String: JSON]() + /// Changed send for signature policy for team. + public class SendForSignaturePolicyChangedDetails: CustomStringConvertible, JSONRepresentable { + /// New send for signature policy. + public let newValue: TeamLog.SendForSignaturePolicy + /// Previous send for signature policy. + public let previousValue: TeamLog.SendForSignaturePolicy + public init(newValue: TeamLog.SendForSignaturePolicy, previousValue: TeamLog.SendForSignaturePolicy) { + self.newValue = newValue + self.previousValue = previousValue + } + + func json() throws -> JSON { + try SendForSignaturePolicyChangedDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try SendForSignaturePolicyChangedDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for SendForSignaturePolicyChangedDetails: \(error)" + } + } + } + public class SendForSignaturePolicyChangedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SendForSignaturePolicyChangedDetails) throws -> JSON { + let output = [ + "new_value": try TeamLog.SendForSignaturePolicySerializer().serialize(value.newValue), + "previous_value": try TeamLog.SendForSignaturePolicySerializer().serialize(value.previousValue), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ReplayProjectTeamAddDetails { + public func deserialize(_ json: JSON) throws -> SendForSignaturePolicyChangedDetails { switch json { - case .dictionary: - return ReplayProjectTeamAddDetails() - default: - throw JSONSerializerError.deserializeError(type: ReplayProjectTeamAddDetails.self, json: json) + case .dictionary(let dict): + let newValue = try TeamLog.SendForSignaturePolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try TeamLog.SendForSignaturePolicySerializer().deserialize(dict["previous_value"] ?? .null) + return SendForSignaturePolicyChangedDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: SendForSignaturePolicyChangedDetails.self, json: json) } } } - /// The ReplayProjectTeamAddType struct - public class ReplayProjectTeamAddType: CustomStringConvertible, JSONRepresentable { + /// The SendForSignaturePolicyChangedType struct + public class SendForSignaturePolicyChangedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -47727,72 +60700,96 @@ public class TeamLog { } func json() throws -> JSON { - try ReplayProjectTeamAddTypeSerializer().serialize(self) + try SendForSignaturePolicyChangedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ReplayProjectTeamAddTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SendForSignaturePolicyChangedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for ReplayProjectTeamAddType: \(error)" + return "Failed to generate description for SendForSignaturePolicyChangedType: \(error)" } } } - - public class ReplayProjectTeamAddTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ReplayProjectTeamAddType) throws -> JSON { + public class SendForSignaturePolicyChangedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SendForSignaturePolicyChangedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ReplayProjectTeamAddType { + public func deserialize(_ json: JSON) throws -> SendForSignaturePolicyChangedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return ReplayProjectTeamAddType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: ReplayProjectTeamAddType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SendForSignaturePolicyChangedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SendForSignaturePolicyChangedType.self, json: json) } } } - /// Removed member from Replay Project. - public class ReplayProjectTeamDeleteDetails: CustomStringConvertible, JSONRepresentable { + /// Added team to shared folder. + public class SfAddGroupDetails: CustomStringConvertible, JSONRepresentable { + /// Target asset position in the Assets list. + public let targetAssetIndex: UInt64 + /// Original shared folder name. + public let originalFolderName: String + /// Sharing permission. + public let sharingPermission: String? + /// Team name. + public let teamName: String + public init(targetAssetIndex: UInt64, originalFolderName: String, teamName: String, sharingPermission: String? = nil) { + comparableValidator()(targetAssetIndex) + self.targetAssetIndex = targetAssetIndex + stringValidator()(originalFolderName) + self.originalFolderName = originalFolderName + nullableValidator(stringValidator())(sharingPermission) + self.sharingPermission = sharingPermission + stringValidator()(teamName) + self.teamName = teamName + } + func json() throws -> JSON { - try ReplayProjectTeamDeleteDetailsSerializer().serialize(self) + try SfAddGroupDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ReplayProjectTeamDeleteDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SfAddGroupDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for ReplayProjectTeamDeleteDetails: \(error)" + return "Failed to generate description for SfAddGroupDetails: \(error)" } } } - - public class ReplayProjectTeamDeleteDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ReplayProjectTeamDeleteDetails) throws -> JSON { - let output = [String: JSON]() + public class SfAddGroupDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SfAddGroupDetails) throws -> JSON { + let output = [ + "target_asset_index": try Serialization._UInt64Serializer.serialize(value.targetAssetIndex), + "original_folder_name": try Serialization._StringSerializer.serialize(value.originalFolderName), + "team_name": try Serialization._StringSerializer.serialize(value.teamName), + "sharing_permission": try NullableSerializer(Serialization._StringSerializer).serialize(value.sharingPermission), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ReplayProjectTeamDeleteDetails { + public func deserialize(_ json: JSON) throws -> SfAddGroupDetails { switch json { - case .dictionary: - return ReplayProjectTeamDeleteDetails() - default: - throw JSONSerializerError.deserializeError(type: ReplayProjectTeamDeleteDetails.self, json: json) + case .dictionary(let dict): + let targetAssetIndex = try Serialization._UInt64Serializer.deserialize(dict["target_asset_index"] ?? .null) + let originalFolderName = try Serialization._StringSerializer.deserialize(dict["original_folder_name"] ?? .null) + let teamName = try Serialization._StringSerializer.deserialize(dict["team_name"] ?? .null) + let sharingPermission = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["sharing_permission"] ?? .null) + return SfAddGroupDetails(targetAssetIndex: targetAssetIndex, originalFolderName: originalFolderName, teamName: teamName, sharingPermission: sharingPermission) + default: + throw JSONSerializerError.deserializeError(type: SfAddGroupDetails.self, json: json) } } } - /// The ReplayProjectTeamDeleteType struct - public class ReplayProjectTeamDeleteType: CustomStringConvertible, JSONRepresentable { + /// The SfAddGroupType struct + public class SfAddGroupType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -47801,195 +60798,188 @@ public class TeamLog { } func json() throws -> JSON { - try ReplayProjectTeamDeleteTypeSerializer().serialize(self) + try SfAddGroupTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ReplayProjectTeamDeleteTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SfAddGroupTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for ReplayProjectTeamDeleteType: \(error)" + return "Failed to generate description for SfAddGroupType: \(error)" } } } - - public class ReplayProjectTeamDeleteTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ReplayProjectTeamDeleteType) throws -> JSON { + public class SfAddGroupTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SfAddGroupType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ReplayProjectTeamDeleteType { + public func deserialize(_ json: JSON) throws -> SfAddGroupType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return ReplayProjectTeamDeleteType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: ReplayProjectTeamDeleteType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SfAddGroupType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SfAddGroupType.self, json: json) } } } - /// Reseller information. - public class ResellerLogInfo: CustomStringConvertible, JSONRepresentable { - /// Reseller name. - public let resellerName: String - /// Reseller email. - public let resellerEmail: String - public init(resellerName: String, resellerEmail: String) { - stringValidator()(resellerName) - self.resellerName = resellerName - stringValidator(maxLength: 255)(resellerEmail) - self.resellerEmail = resellerEmail + /// Allowed non-collaborators to view links to files in shared folder. + public class SfAllowNonMembersToViewSharedLinksDetails: CustomStringConvertible, JSONRepresentable { + /// Target asset position in the Assets list. + public let targetAssetIndex: UInt64 + /// Original shared folder name. + public let originalFolderName: String + /// Shared folder type. + public let sharedFolderType: String? + public init(targetAssetIndex: UInt64, originalFolderName: String, sharedFolderType: String? = nil) { + comparableValidator()(targetAssetIndex) + self.targetAssetIndex = targetAssetIndex + stringValidator()(originalFolderName) + self.originalFolderName = originalFolderName + nullableValidator(stringValidator())(sharedFolderType) + self.sharedFolderType = sharedFolderType } func json() throws -> JSON { - try ResellerLogInfoSerializer().serialize(self) + try SfAllowNonMembersToViewSharedLinksDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ResellerLogInfoSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SfAllowNonMembersToViewSharedLinksDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for ResellerLogInfo: \(error)" + return "Failed to generate description for SfAllowNonMembersToViewSharedLinksDetails: \(error)" } } } - - public class ResellerLogInfoSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ResellerLogInfo) throws -> JSON { + public class SfAllowNonMembersToViewSharedLinksDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SfAllowNonMembersToViewSharedLinksDetails) throws -> JSON { let output = [ - "reseller_name": try Serialization._StringSerializer.serialize(value.resellerName), - "reseller_email": try Serialization._StringSerializer.serialize(value.resellerEmail), + "target_asset_index": try Serialization._UInt64Serializer.serialize(value.targetAssetIndex), + "original_folder_name": try Serialization._StringSerializer.serialize(value.originalFolderName), + "shared_folder_type": try NullableSerializer(Serialization._StringSerializer).serialize(value.sharedFolderType), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ResellerLogInfo { + public func deserialize(_ json: JSON) throws -> SfAllowNonMembersToViewSharedLinksDetails { switch json { - case .dictionary(let dict): - let resellerName = try Serialization._StringSerializer.deserialize(dict["reseller_name"] ?? .null) - let resellerEmail = try Serialization._StringSerializer.deserialize(dict["reseller_email"] ?? .null) - return ResellerLogInfo(resellerName: resellerName, resellerEmail: resellerEmail) - default: - throw JSONSerializerError.deserializeError(type: ResellerLogInfo.self, json: json) + case .dictionary(let dict): + let targetAssetIndex = try Serialization._UInt64Serializer.deserialize(dict["target_asset_index"] ?? .null) + let originalFolderName = try Serialization._StringSerializer.deserialize(dict["original_folder_name"] ?? .null) + let sharedFolderType = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["shared_folder_type"] ?? .null) + return SfAllowNonMembersToViewSharedLinksDetails(targetAssetIndex: targetAssetIndex, originalFolderName: originalFolderName, sharedFolderType: sharedFolderType) + default: + throw JSONSerializerError.deserializeError(type: SfAllowNonMembersToViewSharedLinksDetails.self, json: json) } } } - /// The ResellerRole union - public enum ResellerRole: CustomStringConvertible, JSONRepresentable { - /// An unspecified error. - case notReseller - /// An unspecified error. - case resellerAdmin - /// An unspecified error. - case other + /// The SfAllowNonMembersToViewSharedLinksType struct + public class SfAllowNonMembersToViewSharedLinksType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } func json() throws -> JSON { - try ResellerRoleSerializer().serialize(self) + try SfAllowNonMembersToViewSharedLinksTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ResellerRoleSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SfAllowNonMembersToViewSharedLinksTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for ResellerRole: \(error)" + return "Failed to generate description for SfAllowNonMembersToViewSharedLinksType: \(error)" } } } - - public class ResellerRoleSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ResellerRole) throws -> JSON { - switch value { - case .notReseller: - var d = [String: JSON]() - d[".tag"] = .str("not_reseller") - return .dictionary(d) - case .resellerAdmin: - var d = [String: JSON]() - d[".tag"] = .str("reseller_admin") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) - } + public class SfAllowNonMembersToViewSharedLinksTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SfAllowNonMembersToViewSharedLinksType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ResellerRole { + public func deserialize(_ json: JSON) throws -> SfAllowNonMembersToViewSharedLinksType { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "not_reseller": - return ResellerRole.notReseller - case "reseller_admin": - return ResellerRole.resellerAdmin - case "other": - return ResellerRole.other + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SfAllowNonMembersToViewSharedLinksType(description_: description_) default: - return ResellerRole.other - } - default: - throw JSONSerializerError.deserializeError(type: ResellerRole.self, json: json) + throw JSONSerializerError.deserializeError(type: SfAllowNonMembersToViewSharedLinksType.self, json: json) } } } - /// Enabled/disabled reseller support. - public class ResellerSupportChangePolicyDetails: CustomStringConvertible, JSONRepresentable { - /// New Reseller support policy. - public let newValue: TeamLog.ResellerSupportPolicy - /// Previous Reseller support policy. - public let previousValue: TeamLog.ResellerSupportPolicy - public init(newValue: TeamLog.ResellerSupportPolicy, previousValue: TeamLog.ResellerSupportPolicy) { - self.newValue = newValue - self.previousValue = previousValue + /// Set team members to see warning before sharing folders outside team. + public class SfExternalInviteWarnDetails: CustomStringConvertible, JSONRepresentable { + /// Target asset position in the Assets list. + public let targetAssetIndex: UInt64 + /// Original shared folder name. + public let originalFolderName: String + /// New sharing permission. + public let newSharingPermission: String? + /// Previous sharing permission. + public let previousSharingPermission: String? + public init(targetAssetIndex: UInt64, originalFolderName: String, newSharingPermission: String? = nil, previousSharingPermission: String? = nil) { + comparableValidator()(targetAssetIndex) + self.targetAssetIndex = targetAssetIndex + stringValidator()(originalFolderName) + self.originalFolderName = originalFolderName + nullableValidator(stringValidator())(newSharingPermission) + self.newSharingPermission = newSharingPermission + nullableValidator(stringValidator())(previousSharingPermission) + self.previousSharingPermission = previousSharingPermission } func json() throws -> JSON { - try ResellerSupportChangePolicyDetailsSerializer().serialize(self) + try SfExternalInviteWarnDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ResellerSupportChangePolicyDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SfExternalInviteWarnDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for ResellerSupportChangePolicyDetails: \(error)" + return "Failed to generate description for SfExternalInviteWarnDetails: \(error)" } } } - - public class ResellerSupportChangePolicyDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ResellerSupportChangePolicyDetails) throws -> JSON { + public class SfExternalInviteWarnDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SfExternalInviteWarnDetails) throws -> JSON { let output = [ - "new_value": try TeamLog.ResellerSupportPolicySerializer().serialize(value.newValue), - "previous_value": try TeamLog.ResellerSupportPolicySerializer().serialize(value.previousValue), + "target_asset_index": try Serialization._UInt64Serializer.serialize(value.targetAssetIndex), + "original_folder_name": try Serialization._StringSerializer.serialize(value.originalFolderName), + "new_sharing_permission": try NullableSerializer(Serialization._StringSerializer).serialize(value.newSharingPermission), + "previous_sharing_permission": try NullableSerializer(Serialization._StringSerializer).serialize(value.previousSharingPermission), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ResellerSupportChangePolicyDetails { + public func deserialize(_ json: JSON) throws -> SfExternalInviteWarnDetails { switch json { - case .dictionary(let dict): - let newValue = try TeamLog.ResellerSupportPolicySerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try TeamLog.ResellerSupportPolicySerializer().deserialize(dict["previous_value"] ?? .null) - return ResellerSupportChangePolicyDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: ResellerSupportChangePolicyDetails.self, json: json) + case .dictionary(let dict): + let targetAssetIndex = try Serialization._UInt64Serializer.deserialize(dict["target_asset_index"] ?? .null) + let originalFolderName = try Serialization._StringSerializer.deserialize(dict["original_folder_name"] ?? .null) + let newSharingPermission = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["new_sharing_permission"] ?? .null) + let previousSharingPermission = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["previous_sharing_permission"] ?? .null) + return SfExternalInviteWarnDetails(targetAssetIndex: targetAssetIndex, originalFolderName: originalFolderName, newSharingPermission: newSharingPermission, previousSharingPermission: previousSharingPermission) + default: + throw JSONSerializerError.deserializeError(type: SfExternalInviteWarnDetails.self, json: json) } } } - /// The ResellerSupportChangePolicyType struct - public class ResellerSupportChangePolicyType: CustomStringConvertible, JSONRepresentable { + /// The SfExternalInviteWarnType struct + public class SfExternalInviteWarnType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -47998,133 +60988,96 @@ public class TeamLog { } func json() throws -> JSON { - try ResellerSupportChangePolicyTypeSerializer().serialize(self) + try SfExternalInviteWarnTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ResellerSupportChangePolicyTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SfExternalInviteWarnTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for ResellerSupportChangePolicyType: \(error)" + return "Failed to generate description for SfExternalInviteWarnType: \(error)" } } } - - public class ResellerSupportChangePolicyTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ResellerSupportChangePolicyType) throws -> JSON { + public class SfExternalInviteWarnTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SfExternalInviteWarnType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ResellerSupportChangePolicyType { + public func deserialize(_ json: JSON) throws -> SfExternalInviteWarnType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return ResellerSupportChangePolicyType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: ResellerSupportChangePolicyType.self, json: json) - } - } - } - - /// Policy for controlling if reseller can access the admin console as administrator - public enum ResellerSupportPolicy: CustomStringConvertible, JSONRepresentable { - /// An unspecified error. - case disabled - /// An unspecified error. - case enabled - /// An unspecified error. - case other - - func json() throws -> JSON { - try ResellerSupportPolicySerializer().serialize(self) - } - - public var description: String { - do { - return "\(SerializeUtil.prepareJSONForSerialization(try ResellerSupportPolicySerializer().serialize(self)))" - } catch { - return "Failed to generate description for ResellerSupportPolicy: \(error)" + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SfExternalInviteWarnType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SfExternalInviteWarnType.self, json: json) } } } - public class ResellerSupportPolicySerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ResellerSupportPolicy) throws -> JSON { - switch value { - case .disabled: - var d = [String: JSON]() - d[".tag"] = .str("disabled") - return .dictionary(d) - case .enabled: - var d = [String: JSON]() - d[".tag"] = .str("enabled") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) - } - } - - public func deserialize(_ json: JSON) throws -> ResellerSupportPolicy { - switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "disabled": - return ResellerSupportPolicy.disabled - case "enabled": - return ResellerSupportPolicy.enabled - case "other": - return ResellerSupportPolicy.other - default: - return ResellerSupportPolicy.other - } - default: - throw JSONSerializerError.deserializeError(type: ResellerSupportPolicy.self, json: json) - } + /// Changed Facebook user's role in shared folder. + public class SfFbInviteChangeRoleDetails: CustomStringConvertible, JSONRepresentable { + /// Target asset position in the Assets list. + public let targetAssetIndex: UInt64 + /// Original shared folder name. + public let originalFolderName: String + /// Previous sharing permission. + public let previousSharingPermission: String? + /// New sharing permission. + public let newSharingPermission: String? + public init(targetAssetIndex: UInt64, originalFolderName: String, previousSharingPermission: String? = nil, newSharingPermission: String? = nil) { + comparableValidator()(targetAssetIndex) + self.targetAssetIndex = targetAssetIndex + stringValidator()(originalFolderName) + self.originalFolderName = originalFolderName + nullableValidator(stringValidator())(previousSharingPermission) + self.previousSharingPermission = previousSharingPermission + nullableValidator(stringValidator())(newSharingPermission) + self.newSharingPermission = newSharingPermission } - } - /// Ended reseller support session. - public class ResellerSupportSessionEndDetails: CustomStringConvertible, JSONRepresentable { func json() throws -> JSON { - try ResellerSupportSessionEndDetailsSerializer().serialize(self) + try SfFbInviteChangeRoleDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ResellerSupportSessionEndDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SfFbInviteChangeRoleDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for ResellerSupportSessionEndDetails: \(error)" + return "Failed to generate description for SfFbInviteChangeRoleDetails: \(error)" } } } - - public class ResellerSupportSessionEndDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ResellerSupportSessionEndDetails) throws -> JSON { - let output = [String: JSON]() + public class SfFbInviteChangeRoleDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SfFbInviteChangeRoleDetails) throws -> JSON { + let output = [ + "target_asset_index": try Serialization._UInt64Serializer.serialize(value.targetAssetIndex), + "original_folder_name": try Serialization._StringSerializer.serialize(value.originalFolderName), + "previous_sharing_permission": try NullableSerializer(Serialization._StringSerializer).serialize(value.previousSharingPermission), + "new_sharing_permission": try NullableSerializer(Serialization._StringSerializer).serialize(value.newSharingPermission), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ResellerSupportSessionEndDetails { + public func deserialize(_ json: JSON) throws -> SfFbInviteChangeRoleDetails { switch json { - case .dictionary: - return ResellerSupportSessionEndDetails() - default: - throw JSONSerializerError.deserializeError(type: ResellerSupportSessionEndDetails.self, json: json) + case .dictionary(let dict): + let targetAssetIndex = try Serialization._UInt64Serializer.deserialize(dict["target_asset_index"] ?? .null) + let originalFolderName = try Serialization._StringSerializer.deserialize(dict["original_folder_name"] ?? .null) + let previousSharingPermission = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["previous_sharing_permission"] ?? .null) + let newSharingPermission = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["new_sharing_permission"] ?? .null) + return SfFbInviteChangeRoleDetails(targetAssetIndex: targetAssetIndex, originalFolderName: originalFolderName, previousSharingPermission: previousSharingPermission, newSharingPermission: newSharingPermission) + default: + throw JSONSerializerError.deserializeError(type: SfFbInviteChangeRoleDetails.self, json: json) } } } - /// The ResellerSupportSessionEndType struct - public class ResellerSupportSessionEndType: CustomStringConvertible, JSONRepresentable { + /// The SfFbInviteChangeRoleType struct + public class SfFbInviteChangeRoleType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -48133,72 +61086,90 @@ public class TeamLog { } func json() throws -> JSON { - try ResellerSupportSessionEndTypeSerializer().serialize(self) + try SfFbInviteChangeRoleTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ResellerSupportSessionEndTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SfFbInviteChangeRoleTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for ResellerSupportSessionEndType: \(error)" + return "Failed to generate description for SfFbInviteChangeRoleType: \(error)" } } } - - public class ResellerSupportSessionEndTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ResellerSupportSessionEndType) throws -> JSON { + public class SfFbInviteChangeRoleTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SfFbInviteChangeRoleType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ResellerSupportSessionEndType { + public func deserialize(_ json: JSON) throws -> SfFbInviteChangeRoleType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return ResellerSupportSessionEndType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: ResellerSupportSessionEndType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SfFbInviteChangeRoleType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SfFbInviteChangeRoleType.self, json: json) } } } - /// Started reseller support session. - public class ResellerSupportSessionStartDetails: CustomStringConvertible, JSONRepresentable { + /// Invited Facebook users to shared folder. + public class SfFbInviteDetails: CustomStringConvertible, JSONRepresentable { + /// Target asset position in the Assets list. + public let targetAssetIndex: UInt64 + /// Original shared folder name. + public let originalFolderName: String + /// Sharing permission. + public let sharingPermission: String? + public init(targetAssetIndex: UInt64, originalFolderName: String, sharingPermission: String? = nil) { + comparableValidator()(targetAssetIndex) + self.targetAssetIndex = targetAssetIndex + stringValidator()(originalFolderName) + self.originalFolderName = originalFolderName + nullableValidator(stringValidator())(sharingPermission) + self.sharingPermission = sharingPermission + } + func json() throws -> JSON { - try ResellerSupportSessionStartDetailsSerializer().serialize(self) + try SfFbInviteDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ResellerSupportSessionStartDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SfFbInviteDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for ResellerSupportSessionStartDetails: \(error)" + return "Failed to generate description for SfFbInviteDetails: \(error)" } } } - - public class ResellerSupportSessionStartDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ResellerSupportSessionStartDetails) throws -> JSON { - let output = [String: JSON]() + public class SfFbInviteDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SfFbInviteDetails) throws -> JSON { + let output = [ + "target_asset_index": try Serialization._UInt64Serializer.serialize(value.targetAssetIndex), + "original_folder_name": try Serialization._StringSerializer.serialize(value.originalFolderName), + "sharing_permission": try NullableSerializer(Serialization._StringSerializer).serialize(value.sharingPermission), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ResellerSupportSessionStartDetails { + public func deserialize(_ json: JSON) throws -> SfFbInviteDetails { switch json { - case .dictionary: - return ResellerSupportSessionStartDetails() - default: - throw JSONSerializerError.deserializeError(type: ResellerSupportSessionStartDetails.self, json: json) + case .dictionary(let dict): + let targetAssetIndex = try Serialization._UInt64Serializer.deserialize(dict["target_asset_index"] ?? .null) + let originalFolderName = try Serialization._StringSerializer.deserialize(dict["original_folder_name"] ?? .null) + let sharingPermission = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["sharing_permission"] ?? .null) + return SfFbInviteDetails(targetAssetIndex: targetAssetIndex, originalFolderName: originalFolderName, sharingPermission: sharingPermission) + default: + throw JSONSerializerError.deserializeError(type: SfFbInviteDetails.self, json: json) } } } - /// The ResellerSupportSessionStartType struct - public class ResellerSupportSessionStartType: CustomStringConvertible, JSONRepresentable { + /// The SfFbInviteType struct + public class SfFbInviteType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -48207,81 +61178,84 @@ public class TeamLog { } func json() throws -> JSON { - try ResellerSupportSessionStartTypeSerializer().serialize(self) + try SfFbInviteTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ResellerSupportSessionStartTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SfFbInviteTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for ResellerSupportSessionStartType: \(error)" + return "Failed to generate description for SfFbInviteType: \(error)" } } } - - public class ResellerSupportSessionStartTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ResellerSupportSessionStartType) throws -> JSON { + public class SfFbInviteTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SfFbInviteType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ResellerSupportSessionStartType { + public func deserialize(_ json: JSON) throws -> SfFbInviteType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return ResellerSupportSessionStartType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: ResellerSupportSessionStartType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SfFbInviteType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SfFbInviteType.self, json: json) } } } - /// Rewound a folder. - public class RewindFolderDetails: CustomStringConvertible, JSONRepresentable { - /// Folder was Rewound to this date. - public let rewindFolderTargetTsMs: Date - public init(rewindFolderTargetTsMs: Date) { - self.rewindFolderTargetTsMs = rewindFolderTargetTsMs + /// Uninvited Facebook user from shared folder. + public class SfFbUninviteDetails: CustomStringConvertible, JSONRepresentable { + /// Target asset position in the Assets list. + public let targetAssetIndex: UInt64 + /// Original shared folder name. + public let originalFolderName: String + public init(targetAssetIndex: UInt64, originalFolderName: String) { + comparableValidator()(targetAssetIndex) + self.targetAssetIndex = targetAssetIndex + stringValidator()(originalFolderName) + self.originalFolderName = originalFolderName } func json() throws -> JSON { - try RewindFolderDetailsSerializer().serialize(self) + try SfFbUninviteDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try RewindFolderDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SfFbUninviteDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for RewindFolderDetails: \(error)" + return "Failed to generate description for SfFbUninviteDetails: \(error)" } } } - - public class RewindFolderDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: RewindFolderDetails) throws -> JSON { + public class SfFbUninviteDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SfFbUninviteDetails) throws -> JSON { let output = [ - "rewind_folder_target_ts_ms": try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").serialize(value.rewindFolderTargetTsMs), + "target_asset_index": try Serialization._UInt64Serializer.serialize(value.targetAssetIndex), + "original_folder_name": try Serialization._StringSerializer.serialize(value.originalFolderName), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> RewindFolderDetails { + public func deserialize(_ json: JSON) throws -> SfFbUninviteDetails { switch json { - case .dictionary(let dict): - let rewindFolderTargetTsMs = try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").deserialize(dict["rewind_folder_target_ts_ms"] ?? .null) - return RewindFolderDetails(rewindFolderTargetTsMs: rewindFolderTargetTsMs) - default: - throw JSONSerializerError.deserializeError(type: RewindFolderDetails.self, json: json) + case .dictionary(let dict): + let targetAssetIndex = try Serialization._UInt64Serializer.deserialize(dict["target_asset_index"] ?? .null) + let originalFolderName = try Serialization._StringSerializer.deserialize(dict["original_folder_name"] ?? .null) + return SfFbUninviteDetails(targetAssetIndex: targetAssetIndex, originalFolderName: originalFolderName) + default: + throw JSONSerializerError.deserializeError(type: SfFbUninviteDetails.self, json: json) } } } - /// The RewindFolderType struct - public class RewindFolderType: CustomStringConvertible, JSONRepresentable { + /// The SfFbUninviteType struct + public class SfFbUninviteType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -48290,147 +61264,78 @@ public class TeamLog { } func json() throws -> JSON { - try RewindFolderTypeSerializer().serialize(self) + try SfFbUninviteTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try RewindFolderTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SfFbUninviteTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for RewindFolderType: \(error)" + return "Failed to generate description for SfFbUninviteType: \(error)" } } } - - public class RewindFolderTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: RewindFolderType) throws -> JSON { + public class SfFbUninviteTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SfFbUninviteType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> RewindFolderType { - switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return RewindFolderType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: RewindFolderType.self, json: json) - } - } - } - - /// Policy for controlling whether team members can rewind - public enum RewindPolicy: CustomStringConvertible, JSONRepresentable { - /// An unspecified error. - case adminsOnly - /// An unspecified error. - case everyone - /// An unspecified error. - case other - - func json() throws -> JSON { - try RewindPolicySerializer().serialize(self) - } - - public var description: String { - do { - return "\(SerializeUtil.prepareJSONForSerialization(try RewindPolicySerializer().serialize(self)))" - } catch { - return "Failed to generate description for RewindPolicy: \(error)" - } - } - } - - public class RewindPolicySerializer: JSONSerializer { - public init() {} - public func serialize(_ value: RewindPolicy) throws -> JSON { - switch value { - case .adminsOnly: - var d = [String: JSON]() - d[".tag"] = .str("admins_only") - return .dictionary(d) - case .everyone: - var d = [String: JSON]() - d[".tag"] = .str("everyone") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) - } - } - - public func deserialize(_ json: JSON) throws -> RewindPolicy { + public func deserialize(_ json: JSON) throws -> SfFbUninviteType { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "admins_only": - return RewindPolicy.adminsOnly - case "everyone": - return RewindPolicy.everyone - case "other": - return RewindPolicy.other + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SfFbUninviteType(description_: description_) default: - return RewindPolicy.other - } - default: - throw JSONSerializerError.deserializeError(type: RewindPolicy.self, json: json) + throw JSONSerializerError.deserializeError(type: SfFbUninviteType.self, json: json) } } } - /// Changed Rewind policy for team. - public class RewindPolicyChangedDetails: CustomStringConvertible, JSONRepresentable { - /// New Dropbox Rewind policy. - public let newValue: TeamLog.RewindPolicy - /// Previous Dropbox Rewind policy. - public let previousValue: TeamLog.RewindPolicy - public init(newValue: TeamLog.RewindPolicy, previousValue: TeamLog.RewindPolicy) { - self.newValue = newValue - self.previousValue = previousValue + /// Invited group to shared folder. + public class SfInviteGroupDetails: CustomStringConvertible, JSONRepresentable { + /// Target asset position in the Assets list. + public let targetAssetIndex: UInt64 + public init(targetAssetIndex: UInt64) { + comparableValidator()(targetAssetIndex) + self.targetAssetIndex = targetAssetIndex } func json() throws -> JSON { - try RewindPolicyChangedDetailsSerializer().serialize(self) + try SfInviteGroupDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try RewindPolicyChangedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SfInviteGroupDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for RewindPolicyChangedDetails: \(error)" + return "Failed to generate description for SfInviteGroupDetails: \(error)" } } } - - public class RewindPolicyChangedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: RewindPolicyChangedDetails) throws -> JSON { + public class SfInviteGroupDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SfInviteGroupDetails) throws -> JSON { let output = [ - "new_value": try TeamLog.RewindPolicySerializer().serialize(value.newValue), - "previous_value": try TeamLog.RewindPolicySerializer().serialize(value.previousValue), + "target_asset_index": try Serialization._UInt64Serializer.serialize(value.targetAssetIndex), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> RewindPolicyChangedDetails { + public func deserialize(_ json: JSON) throws -> SfInviteGroupDetails { switch json { - case .dictionary(let dict): - let newValue = try TeamLog.RewindPolicySerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try TeamLog.RewindPolicySerializer().deserialize(dict["previous_value"] ?? .null) - return RewindPolicyChangedDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: RewindPolicyChangedDetails.self, json: json) + case .dictionary(let dict): + let targetAssetIndex = try Serialization._UInt64Serializer.deserialize(dict["target_asset_index"] ?? .null) + return SfInviteGroupDetails(targetAssetIndex: targetAssetIndex) + default: + throw JSONSerializerError.deserializeError(type: SfInviteGroupDetails.self, json: json) } } } - /// The RewindPolicyChangedType struct - public class RewindPolicyChangedType: CustomStringConvertible, JSONRepresentable { + /// The SfInviteGroupType struct + public class SfInviteGroupType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -48439,82 +61344,84 @@ public class TeamLog { } func json() throws -> JSON { - try RewindPolicyChangedTypeSerializer().serialize(self) + try SfInviteGroupTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try RewindPolicyChangedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SfInviteGroupTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for RewindPolicyChangedType: \(error)" + return "Failed to generate description for SfInviteGroupType: \(error)" } } } - - public class RewindPolicyChangedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: RewindPolicyChangedType) throws -> JSON { + public class SfInviteGroupTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SfInviteGroupType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> RewindPolicyChangedType { + public func deserialize(_ json: JSON) throws -> SfInviteGroupType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return RewindPolicyChangedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: RewindPolicyChangedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SfInviteGroupType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SfInviteGroupType.self, json: json) } } } - /// Deleted secondary email. - public class SecondaryEmailDeletedDetails: CustomStringConvertible, JSONRepresentable { - /// Deleted secondary email. - public let secondaryEmail: String - public init(secondaryEmail: String) { - stringValidator(maxLength: 255)(secondaryEmail) - self.secondaryEmail = secondaryEmail + /// Granted access to shared folder. + public class SfTeamGrantAccessDetails: CustomStringConvertible, JSONRepresentable { + /// Target asset position in the Assets list. + public let targetAssetIndex: UInt64 + /// Original shared folder name. + public let originalFolderName: String + public init(targetAssetIndex: UInt64, originalFolderName: String) { + comparableValidator()(targetAssetIndex) + self.targetAssetIndex = targetAssetIndex + stringValidator()(originalFolderName) + self.originalFolderName = originalFolderName } func json() throws -> JSON { - try SecondaryEmailDeletedDetailsSerializer().serialize(self) + try SfTeamGrantAccessDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SecondaryEmailDeletedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SfTeamGrantAccessDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SecondaryEmailDeletedDetails: \(error)" + return "Failed to generate description for SfTeamGrantAccessDetails: \(error)" } } } - - public class SecondaryEmailDeletedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SecondaryEmailDeletedDetails) throws -> JSON { + public class SfTeamGrantAccessDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SfTeamGrantAccessDetails) throws -> JSON { let output = [ - "secondary_email": try Serialization._StringSerializer.serialize(value.secondaryEmail), + "target_asset_index": try Serialization._UInt64Serializer.serialize(value.targetAssetIndex), + "original_folder_name": try Serialization._StringSerializer.serialize(value.originalFolderName), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SecondaryEmailDeletedDetails { + public func deserialize(_ json: JSON) throws -> SfTeamGrantAccessDetails { switch json { - case .dictionary(let dict): - let secondaryEmail = try Serialization._StringSerializer.deserialize(dict["secondary_email"] ?? .null) - return SecondaryEmailDeletedDetails(secondaryEmail: secondaryEmail) - default: - throw JSONSerializerError.deserializeError(type: SecondaryEmailDeletedDetails.self, json: json) + case .dictionary(let dict): + let targetAssetIndex = try Serialization._UInt64Serializer.deserialize(dict["target_asset_index"] ?? .null) + let originalFolderName = try Serialization._StringSerializer.deserialize(dict["original_folder_name"] ?? .null) + return SfTeamGrantAccessDetails(targetAssetIndex: targetAssetIndex, originalFolderName: originalFolderName) + default: + throw JSONSerializerError.deserializeError(type: SfTeamGrantAccessDetails.self, json: json) } } } - /// The SecondaryEmailDeletedType struct - public class SecondaryEmailDeletedType: CustomStringConvertible, JSONRepresentable { + /// The SfTeamGrantAccessType struct + public class SfTeamGrantAccessType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -48523,82 +61430,96 @@ public class TeamLog { } func json() throws -> JSON { - try SecondaryEmailDeletedTypeSerializer().serialize(self) + try SfTeamGrantAccessTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SecondaryEmailDeletedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SfTeamGrantAccessTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SecondaryEmailDeletedType: \(error)" + return "Failed to generate description for SfTeamGrantAccessType: \(error)" } } } - - public class SecondaryEmailDeletedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SecondaryEmailDeletedType) throws -> JSON { + public class SfTeamGrantAccessTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SfTeamGrantAccessType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SecondaryEmailDeletedType { + public func deserialize(_ json: JSON) throws -> SfTeamGrantAccessType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SecondaryEmailDeletedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SecondaryEmailDeletedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SfTeamGrantAccessType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SfTeamGrantAccessType.self, json: json) } } } - /// Verified secondary email. - public class SecondaryEmailVerifiedDetails: CustomStringConvertible, JSONRepresentable { - /// Verified secondary email. - public let secondaryEmail: String - public init(secondaryEmail: String) { - stringValidator(maxLength: 255)(secondaryEmail) - self.secondaryEmail = secondaryEmail + /// Changed team member's role in shared folder. + public class SfTeamInviteChangeRoleDetails: CustomStringConvertible, JSONRepresentable { + /// Target asset position in the Assets list. + public let targetAssetIndex: UInt64 + /// Original shared folder name. + public let originalFolderName: String + /// New sharing permission. + public let newSharingPermission: String? + /// Previous sharing permission. + public let previousSharingPermission: String? + public init(targetAssetIndex: UInt64, originalFolderName: String, newSharingPermission: String? = nil, previousSharingPermission: String? = nil) { + comparableValidator()(targetAssetIndex) + self.targetAssetIndex = targetAssetIndex + stringValidator()(originalFolderName) + self.originalFolderName = originalFolderName + nullableValidator(stringValidator())(newSharingPermission) + self.newSharingPermission = newSharingPermission + nullableValidator(stringValidator())(previousSharingPermission) + self.previousSharingPermission = previousSharingPermission } func json() throws -> JSON { - try SecondaryEmailVerifiedDetailsSerializer().serialize(self) + try SfTeamInviteChangeRoleDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SecondaryEmailVerifiedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SfTeamInviteChangeRoleDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SecondaryEmailVerifiedDetails: \(error)" + return "Failed to generate description for SfTeamInviteChangeRoleDetails: \(error)" } } } - - public class SecondaryEmailVerifiedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SecondaryEmailVerifiedDetails) throws -> JSON { + public class SfTeamInviteChangeRoleDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SfTeamInviteChangeRoleDetails) throws -> JSON { let output = [ - "secondary_email": try Serialization._StringSerializer.serialize(value.secondaryEmail), + "target_asset_index": try Serialization._UInt64Serializer.serialize(value.targetAssetIndex), + "original_folder_name": try Serialization._StringSerializer.serialize(value.originalFolderName), + "new_sharing_permission": try NullableSerializer(Serialization._StringSerializer).serialize(value.newSharingPermission), + "previous_sharing_permission": try NullableSerializer(Serialization._StringSerializer).serialize(value.previousSharingPermission), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SecondaryEmailVerifiedDetails { + public func deserialize(_ json: JSON) throws -> SfTeamInviteChangeRoleDetails { switch json { - case .dictionary(let dict): - let secondaryEmail = try Serialization._StringSerializer.deserialize(dict["secondary_email"] ?? .null) - return SecondaryEmailVerifiedDetails(secondaryEmail: secondaryEmail) - default: - throw JSONSerializerError.deserializeError(type: SecondaryEmailVerifiedDetails.self, json: json) + case .dictionary(let dict): + let targetAssetIndex = try Serialization._UInt64Serializer.deserialize(dict["target_asset_index"] ?? .null) + let originalFolderName = try Serialization._StringSerializer.deserialize(dict["original_folder_name"] ?? .null) + let newSharingPermission = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["new_sharing_permission"] ?? .null) + let previousSharingPermission = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["previous_sharing_permission"] ?? .null) + return SfTeamInviteChangeRoleDetails(targetAssetIndex: targetAssetIndex, originalFolderName: originalFolderName, newSharingPermission: newSharingPermission, previousSharingPermission: previousSharingPermission) + default: + throw JSONSerializerError.deserializeError(type: SfTeamInviteChangeRoleDetails.self, json: json) } } } - /// The SecondaryEmailVerifiedType struct - public class SecondaryEmailVerifiedType: CustomStringConvertible, JSONRepresentable { + /// The SfTeamInviteChangeRoleType struct + public class SfTeamInviteChangeRoleType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -48607,476 +61528,445 @@ public class TeamLog { } func json() throws -> JSON { - try SecondaryEmailVerifiedTypeSerializer().serialize(self) + try SfTeamInviteChangeRoleTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SecondaryEmailVerifiedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SfTeamInviteChangeRoleTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SecondaryEmailVerifiedType: \(error)" + return "Failed to generate description for SfTeamInviteChangeRoleType: \(error)" } } } - - public class SecondaryEmailVerifiedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SecondaryEmailVerifiedType) throws -> JSON { + public class SfTeamInviteChangeRoleTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SfTeamInviteChangeRoleType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SecondaryEmailVerifiedType { + public func deserialize(_ json: JSON) throws -> SfTeamInviteChangeRoleType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SecondaryEmailVerifiedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SecondaryEmailVerifiedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SfTeamInviteChangeRoleType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SfTeamInviteChangeRoleType.self, json: json) } } } - /// The SecondaryMailsPolicy union - public enum SecondaryMailsPolicy: CustomStringConvertible, JSONRepresentable { - /// An unspecified error. - case disabled - /// An unspecified error. - case enabled - /// An unspecified error. - case other + /// Invited team members to shared folder. + public class SfTeamInviteDetails: CustomStringConvertible, JSONRepresentable { + /// Target asset position in the Assets list. + public let targetAssetIndex: UInt64 + /// Original shared folder name. + public let originalFolderName: String + /// Sharing permission. + public let sharingPermission: String? + public init(targetAssetIndex: UInt64, originalFolderName: String, sharingPermission: String? = nil) { + comparableValidator()(targetAssetIndex) + self.targetAssetIndex = targetAssetIndex + stringValidator()(originalFolderName) + self.originalFolderName = originalFolderName + nullableValidator(stringValidator())(sharingPermission) + self.sharingPermission = sharingPermission + } func json() throws -> JSON { - try SecondaryMailsPolicySerializer().serialize(self) + try SfTeamInviteDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SecondaryMailsPolicySerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SfTeamInviteDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SecondaryMailsPolicy: \(error)" + return "Failed to generate description for SfTeamInviteDetails: \(error)" } } } - - public class SecondaryMailsPolicySerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SecondaryMailsPolicy) throws -> JSON { - switch value { - case .disabled: - var d = [String: JSON]() - d[".tag"] = .str("disabled") - return .dictionary(d) - case .enabled: - var d = [String: JSON]() - d[".tag"] = .str("enabled") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) - } + public class SfTeamInviteDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SfTeamInviteDetails) throws -> JSON { + let output = [ + "target_asset_index": try Serialization._UInt64Serializer.serialize(value.targetAssetIndex), + "original_folder_name": try Serialization._StringSerializer.serialize(value.originalFolderName), + "sharing_permission": try NullableSerializer(Serialization._StringSerializer).serialize(value.sharingPermission), + ] + return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SecondaryMailsPolicy { + public func deserialize(_ json: JSON) throws -> SfTeamInviteDetails { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "disabled": - return SecondaryMailsPolicy.disabled - case "enabled": - return SecondaryMailsPolicy.enabled - case "other": - return SecondaryMailsPolicy.other + case .dictionary(let dict): + let targetAssetIndex = try Serialization._UInt64Serializer.deserialize(dict["target_asset_index"] ?? .null) + let originalFolderName = try Serialization._StringSerializer.deserialize(dict["original_folder_name"] ?? .null) + let sharingPermission = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["sharing_permission"] ?? .null) + return SfTeamInviteDetails(targetAssetIndex: targetAssetIndex, originalFolderName: originalFolderName, sharingPermission: sharingPermission) default: - return SecondaryMailsPolicy.other - } - default: - throw JSONSerializerError.deserializeError(type: SecondaryMailsPolicy.self, json: json) + throw JSONSerializerError.deserializeError(type: SfTeamInviteDetails.self, json: json) } } } - /// Secondary mails policy changed. - public class SecondaryMailsPolicyChangedDetails: CustomStringConvertible, JSONRepresentable { - /// Previous secondary mails policy. - public let previousValue: TeamLog.SecondaryMailsPolicy - /// New secondary mails policy. - public let newValue: TeamLog.SecondaryMailsPolicy - public init(previousValue: TeamLog.SecondaryMailsPolicy, newValue: TeamLog.SecondaryMailsPolicy) { - self.previousValue = previousValue - self.newValue = newValue + /// The SfTeamInviteType struct + public class SfTeamInviteType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ } func json() throws -> JSON { - try SecondaryMailsPolicyChangedDetailsSerializer().serialize(self) + try SfTeamInviteTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SecondaryMailsPolicyChangedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SfTeamInviteTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SecondaryMailsPolicyChangedDetails: \(error)" + return "Failed to generate description for SfTeamInviteType: \(error)" } } } - - public class SecondaryMailsPolicyChangedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SecondaryMailsPolicyChangedDetails) throws -> JSON { + public class SfTeamInviteTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SfTeamInviteType) throws -> JSON { let output = [ - "previous_value": try TeamLog.SecondaryMailsPolicySerializer().serialize(value.previousValue), - "new_value": try TeamLog.SecondaryMailsPolicySerializer().serialize(value.newValue), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SecondaryMailsPolicyChangedDetails { + public func deserialize(_ json: JSON) throws -> SfTeamInviteType { switch json { - case .dictionary(let dict): - let previousValue = try TeamLog.SecondaryMailsPolicySerializer().deserialize(dict["previous_value"] ?? .null) - let newValue = try TeamLog.SecondaryMailsPolicySerializer().deserialize(dict["new_value"] ?? .null) - return SecondaryMailsPolicyChangedDetails(previousValue: previousValue, newValue: newValue) - default: - throw JSONSerializerError.deserializeError(type: SecondaryMailsPolicyChangedDetails.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SfTeamInviteType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SfTeamInviteType.self, json: json) } } } - /// The SecondaryMailsPolicyChangedType struct - public class SecondaryMailsPolicyChangedType: CustomStringConvertible, JSONRepresentable { - /// (no description) - public let description_: String - public init(description_: String) { - stringValidator()(description_) - self.description_ = description_ + /// Joined team member's shared folder. + public class SfTeamJoinDetails: CustomStringConvertible, JSONRepresentable { + /// Target asset position in the Assets list. + public let targetAssetIndex: UInt64 + /// Original shared folder name. + public let originalFolderName: String + public init(targetAssetIndex: UInt64, originalFolderName: String) { + comparableValidator()(targetAssetIndex) + self.targetAssetIndex = targetAssetIndex + stringValidator()(originalFolderName) + self.originalFolderName = originalFolderName } func json() throws -> JSON { - try SecondaryMailsPolicyChangedTypeSerializer().serialize(self) + try SfTeamJoinDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SecondaryMailsPolicyChangedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SfTeamJoinDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SecondaryMailsPolicyChangedType: \(error)" + return "Failed to generate description for SfTeamJoinDetails: \(error)" } } } - - public class SecondaryMailsPolicyChangedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SecondaryMailsPolicyChangedType) throws -> JSON { + public class SfTeamJoinDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SfTeamJoinDetails) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "target_asset_index": try Serialization._UInt64Serializer.serialize(value.targetAssetIndex), + "original_folder_name": try Serialization._StringSerializer.serialize(value.originalFolderName), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SecondaryMailsPolicyChangedType { + public func deserialize(_ json: JSON) throws -> SfTeamJoinDetails { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SecondaryMailsPolicyChangedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SecondaryMailsPolicyChangedType.self, json: json) + case .dictionary(let dict): + let targetAssetIndex = try Serialization._UInt64Serializer.deserialize(dict["target_asset_index"] ?? .null) + let originalFolderName = try Serialization._StringSerializer.deserialize(dict["original_folder_name"] ?? .null) + return SfTeamJoinDetails(targetAssetIndex: targetAssetIndex, originalFolderName: originalFolderName) + default: + throw JSONSerializerError.deserializeError(type: SfTeamJoinDetails.self, json: json) } } } - /// Team merge request acceptance details shown to the secondary team - public class SecondaryTeamRequestAcceptedDetails: CustomStringConvertible, JSONRepresentable { - /// The primary team name. - public let primaryTeam: String - /// The name of the secondary team admin who sent the request originally. - public let sentBy: String - public init(primaryTeam: String, sentBy: String) { - stringValidator()(primaryTeam) - self.primaryTeam = primaryTeam - stringValidator()(sentBy) - self.sentBy = sentBy + /// Joined team member's shared folder from link. + public class SfTeamJoinFromOobLinkDetails: CustomStringConvertible, JSONRepresentable { + /// Target asset position in the Assets list. + public let targetAssetIndex: UInt64 + /// Original shared folder name. + public let originalFolderName: String + /// Shared link token key. + public let tokenKey: String? + /// Sharing permission. + public let sharingPermission: String? + public init(targetAssetIndex: UInt64, originalFolderName: String, tokenKey: String? = nil, sharingPermission: String? = nil) { + comparableValidator()(targetAssetIndex) + self.targetAssetIndex = targetAssetIndex + stringValidator()(originalFolderName) + self.originalFolderName = originalFolderName + nullableValidator(stringValidator())(tokenKey) + self.tokenKey = tokenKey + nullableValidator(stringValidator())(sharingPermission) + self.sharingPermission = sharingPermission } func json() throws -> JSON { - try SecondaryTeamRequestAcceptedDetailsSerializer().serialize(self) + try SfTeamJoinFromOobLinkDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SecondaryTeamRequestAcceptedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SfTeamJoinFromOobLinkDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SecondaryTeamRequestAcceptedDetails: \(error)" + return "Failed to generate description for SfTeamJoinFromOobLinkDetails: \(error)" } } } - - public class SecondaryTeamRequestAcceptedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SecondaryTeamRequestAcceptedDetails) throws -> JSON { + public class SfTeamJoinFromOobLinkDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SfTeamJoinFromOobLinkDetails) throws -> JSON { let output = [ - "primary_team": try Serialization._StringSerializer.serialize(value.primaryTeam), - "sent_by": try Serialization._StringSerializer.serialize(value.sentBy), + "target_asset_index": try Serialization._UInt64Serializer.serialize(value.targetAssetIndex), + "original_folder_name": try Serialization._StringSerializer.serialize(value.originalFolderName), + "token_key": try NullableSerializer(Serialization._StringSerializer).serialize(value.tokenKey), + "sharing_permission": try NullableSerializer(Serialization._StringSerializer).serialize(value.sharingPermission), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SecondaryTeamRequestAcceptedDetails { + public func deserialize(_ json: JSON) throws -> SfTeamJoinFromOobLinkDetails { switch json { - case .dictionary(let dict): - let primaryTeam = try Serialization._StringSerializer.deserialize(dict["primary_team"] ?? .null) - let sentBy = try Serialization._StringSerializer.deserialize(dict["sent_by"] ?? .null) - return SecondaryTeamRequestAcceptedDetails(primaryTeam: primaryTeam, sentBy: sentBy) - default: - throw JSONSerializerError.deserializeError(type: SecondaryTeamRequestAcceptedDetails.self, json: json) + case .dictionary(let dict): + let targetAssetIndex = try Serialization._UInt64Serializer.deserialize(dict["target_asset_index"] ?? .null) + let originalFolderName = try Serialization._StringSerializer.deserialize(dict["original_folder_name"] ?? .null) + let tokenKey = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["token_key"] ?? .null) + let sharingPermission = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["sharing_permission"] ?? .null) + return SfTeamJoinFromOobLinkDetails(targetAssetIndex: targetAssetIndex, originalFolderName: originalFolderName, tokenKey: tokenKey, sharingPermission: sharingPermission) + default: + throw JSONSerializerError.deserializeError(type: SfTeamJoinFromOobLinkDetails.self, json: json) } } } - /// Team merge request cancellation details shown to the secondary team - public class SecondaryTeamRequestCanceledDetails: CustomStringConvertible, JSONRepresentable { - /// The email of the primary team admin that the request was sent to. - public let sentTo: String - /// The name of the secondary team admin who sent the request originally. - public let sentBy: String - public init(sentTo: String, sentBy: String) { - stringValidator()(sentTo) - self.sentTo = sentTo - stringValidator()(sentBy) - self.sentBy = sentBy + /// The SfTeamJoinFromOobLinkType struct + public class SfTeamJoinFromOobLinkType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ } func json() throws -> JSON { - try SecondaryTeamRequestCanceledDetailsSerializer().serialize(self) + try SfTeamJoinFromOobLinkTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SecondaryTeamRequestCanceledDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SfTeamJoinFromOobLinkTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SecondaryTeamRequestCanceledDetails: \(error)" + return "Failed to generate description for SfTeamJoinFromOobLinkType: \(error)" } } } - - public class SecondaryTeamRequestCanceledDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SecondaryTeamRequestCanceledDetails) throws -> JSON { + public class SfTeamJoinFromOobLinkTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SfTeamJoinFromOobLinkType) throws -> JSON { let output = [ - "sent_to": try Serialization._StringSerializer.serialize(value.sentTo), - "sent_by": try Serialization._StringSerializer.serialize(value.sentBy), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SecondaryTeamRequestCanceledDetails { + public func deserialize(_ json: JSON) throws -> SfTeamJoinFromOobLinkType { switch json { - case .dictionary(let dict): - let sentTo = try Serialization._StringSerializer.deserialize(dict["sent_to"] ?? .null) - let sentBy = try Serialization._StringSerializer.deserialize(dict["sent_by"] ?? .null) - return SecondaryTeamRequestCanceledDetails(sentTo: sentTo, sentBy: sentBy) - default: - throw JSONSerializerError.deserializeError(type: SecondaryTeamRequestCanceledDetails.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SfTeamJoinFromOobLinkType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SfTeamJoinFromOobLinkType.self, json: json) } } } - /// Team merge request expiration details shown to the secondary team - public class SecondaryTeamRequestExpiredDetails: CustomStringConvertible, JSONRepresentable { - /// The email of the primary team admin the request was sent to. - public let sentTo: String - public init(sentTo: String) { - stringValidator()(sentTo) - self.sentTo = sentTo + /// The SfTeamJoinType struct + public class SfTeamJoinType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ } func json() throws -> JSON { - try SecondaryTeamRequestExpiredDetailsSerializer().serialize(self) + try SfTeamJoinTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SecondaryTeamRequestExpiredDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SfTeamJoinTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SecondaryTeamRequestExpiredDetails: \(error)" + return "Failed to generate description for SfTeamJoinType: \(error)" } } } - - public class SecondaryTeamRequestExpiredDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SecondaryTeamRequestExpiredDetails) throws -> JSON { + public class SfTeamJoinTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SfTeamJoinType) throws -> JSON { let output = [ - "sent_to": try Serialization._StringSerializer.serialize(value.sentTo), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SecondaryTeamRequestExpiredDetails { + public func deserialize(_ json: JSON) throws -> SfTeamJoinType { switch json { - case .dictionary(let dict): - let sentTo = try Serialization._StringSerializer.deserialize(dict["sent_to"] ?? .null) - return SecondaryTeamRequestExpiredDetails(sentTo: sentTo) - default: - throw JSONSerializerError.deserializeError(type: SecondaryTeamRequestExpiredDetails.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SfTeamJoinType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SfTeamJoinType.self, json: json) } } } - /// Team merge request reminder details shown to the secondary team - public class SecondaryTeamRequestReminderDetails: CustomStringConvertible, JSONRepresentable { - /// The email of the primary team admin the request was sent to. - public let sentTo: String - public init(sentTo: String) { - stringValidator()(sentTo) - self.sentTo = sentTo + /// Unshared folder with team member. + public class SfTeamUninviteDetails: CustomStringConvertible, JSONRepresentable { + /// Target asset position in the Assets list. + public let targetAssetIndex: UInt64 + /// Original shared folder name. + public let originalFolderName: String + public init(targetAssetIndex: UInt64, originalFolderName: String) { + comparableValidator()(targetAssetIndex) + self.targetAssetIndex = targetAssetIndex + stringValidator()(originalFolderName) + self.originalFolderName = originalFolderName } func json() throws -> JSON { - try SecondaryTeamRequestReminderDetailsSerializer().serialize(self) + try SfTeamUninviteDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SecondaryTeamRequestReminderDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SfTeamUninviteDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SecondaryTeamRequestReminderDetails: \(error)" + return "Failed to generate description for SfTeamUninviteDetails: \(error)" } } } - - public class SecondaryTeamRequestReminderDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SecondaryTeamRequestReminderDetails) throws -> JSON { + public class SfTeamUninviteDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SfTeamUninviteDetails) throws -> JSON { let output = [ - "sent_to": try Serialization._StringSerializer.serialize(value.sentTo), + "target_asset_index": try Serialization._UInt64Serializer.serialize(value.targetAssetIndex), + "original_folder_name": try Serialization._StringSerializer.serialize(value.originalFolderName), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SecondaryTeamRequestReminderDetails { + public func deserialize(_ json: JSON) throws -> SfTeamUninviteDetails { switch json { - case .dictionary(let dict): - let sentTo = try Serialization._StringSerializer.deserialize(dict["sent_to"] ?? .null) - return SecondaryTeamRequestReminderDetails(sentTo: sentTo) - default: - throw JSONSerializerError.deserializeError(type: SecondaryTeamRequestReminderDetails.self, json: json) + case .dictionary(let dict): + let targetAssetIndex = try Serialization._UInt64Serializer.deserialize(dict["target_asset_index"] ?? .null) + let originalFolderName = try Serialization._StringSerializer.deserialize(dict["original_folder_name"] ?? .null) + return SfTeamUninviteDetails(targetAssetIndex: targetAssetIndex, originalFolderName: originalFolderName) + default: + throw JSONSerializerError.deserializeError(type: SfTeamUninviteDetails.self, json: json) } } } - /// Policy for controlling team access to send for signature feature - public enum SendForSignaturePolicy: CustomStringConvertible, JSONRepresentable { - /// An unspecified error. - case disabled - /// An unspecified error. - case enabled - /// An unspecified error. - case other + /// The SfTeamUninviteType struct + public class SfTeamUninviteType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } func json() throws -> JSON { - try SendForSignaturePolicySerializer().serialize(self) + try SfTeamUninviteTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SendForSignaturePolicySerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SfTeamUninviteTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SendForSignaturePolicy: \(error)" + return "Failed to generate description for SfTeamUninviteType: \(error)" } } } - - public class SendForSignaturePolicySerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SendForSignaturePolicy) throws -> JSON { - switch value { - case .disabled: - var d = [String: JSON]() - d[".tag"] = .str("disabled") - return .dictionary(d) - case .enabled: - var d = [String: JSON]() - d[".tag"] = .str("enabled") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) - } + public class SfTeamUninviteTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SfTeamUninviteType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SendForSignaturePolicy { + public func deserialize(_ json: JSON) throws -> SfTeamUninviteType { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "disabled": - return SendForSignaturePolicy.disabled - case "enabled": - return SendForSignaturePolicy.enabled - case "other": - return SendForSignaturePolicy.other + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SfTeamUninviteType(description_: description_) default: - return SendForSignaturePolicy.other - } - default: - throw JSONSerializerError.deserializeError(type: SendForSignaturePolicy.self, json: json) + throw JSONSerializerError.deserializeError(type: SfTeamUninviteType.self, json: json) } } } - /// Changed send for signature policy for team. - public class SendForSignaturePolicyChangedDetails: CustomStringConvertible, JSONRepresentable { - /// New send for signature policy. - public let newValue: TeamLog.SendForSignaturePolicy - /// Previous send for signature policy. - public let previousValue: TeamLog.SendForSignaturePolicy - public init(newValue: TeamLog.SendForSignaturePolicy, previousValue: TeamLog.SendForSignaturePolicy) { - self.newValue = newValue - self.previousValue = previousValue + /// Invited user to Dropbox and added them to shared file/folder. + public class SharedContentAddInviteesDetails: CustomStringConvertible, JSONRepresentable { + /// Shared content access level. + public let sharedContentAccessLevel: Sharing.AccessLevel + /// A list of invitees. + public let invitees: Array + public init(sharedContentAccessLevel: Sharing.AccessLevel, invitees: Array) { + self.sharedContentAccessLevel = sharedContentAccessLevel + arrayValidator(itemValidator: stringValidator(maxLength: 255))(invitees) + self.invitees = invitees } func json() throws -> JSON { - try SendForSignaturePolicyChangedDetailsSerializer().serialize(self) + try SharedContentAddInviteesDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SendForSignaturePolicyChangedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentAddInviteesDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SendForSignaturePolicyChangedDetails: \(error)" + return "Failed to generate description for SharedContentAddInviteesDetails: \(error)" } } } - - public class SendForSignaturePolicyChangedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SendForSignaturePolicyChangedDetails) throws -> JSON { + public class SharedContentAddInviteesDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedContentAddInviteesDetails) throws -> JSON { let output = [ - "new_value": try TeamLog.SendForSignaturePolicySerializer().serialize(value.newValue), - "previous_value": try TeamLog.SendForSignaturePolicySerializer().serialize(value.previousValue), + "shared_content_access_level": try Sharing.AccessLevelSerializer().serialize(value.sharedContentAccessLevel), + "invitees": try ArraySerializer(Serialization._StringSerializer).serialize(value.invitees), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SendForSignaturePolicyChangedDetails { + public func deserialize(_ json: JSON) throws -> SharedContentAddInviteesDetails { switch json { - case .dictionary(let dict): - let newValue = try TeamLog.SendForSignaturePolicySerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try TeamLog.SendForSignaturePolicySerializer().deserialize(dict["previous_value"] ?? .null) - return SendForSignaturePolicyChangedDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: SendForSignaturePolicyChangedDetails.self, json: json) + case .dictionary(let dict): + let sharedContentAccessLevel = try Sharing.AccessLevelSerializer().deserialize(dict["shared_content_access_level"] ?? .null) + let invitees = try ArraySerializer(Serialization._StringSerializer).deserialize(dict["invitees"] ?? .null) + return SharedContentAddInviteesDetails(sharedContentAccessLevel: sharedContentAccessLevel, invitees: invitees) + default: + throw JSONSerializerError.deserializeError(type: SharedContentAddInviteesDetails.self, json: json) } } } - /// The SendForSignaturePolicyChangedType struct - public class SendForSignaturePolicyChangedType: CustomStringConvertible, JSONRepresentable { + /// The SharedContentAddInviteesType struct + public class SharedContentAddInviteesType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -49085,105 +61975,77 @@ public class TeamLog { } func json() throws -> JSON { - try SendForSignaturePolicyChangedTypeSerializer().serialize(self) + try SharedContentAddInviteesTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SendForSignaturePolicyChangedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentAddInviteesTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SendForSignaturePolicyChangedType: \(error)" + return "Failed to generate description for SharedContentAddInviteesType: \(error)" } } } - - public class SendForSignaturePolicyChangedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SendForSignaturePolicyChangedType) throws -> JSON { + public class SharedContentAddInviteesTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedContentAddInviteesType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SendForSignaturePolicyChangedType { + public func deserialize(_ json: JSON) throws -> SharedContentAddInviteesType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SendForSignaturePolicyChangedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SendForSignaturePolicyChangedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharedContentAddInviteesType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharedContentAddInviteesType.self, json: json) } } } - /// Added team to shared folder. - public class SfAddGroupDetails: CustomStringConvertible, JSONRepresentable { - /// Target asset position in the Assets list. - public let targetAssetIndex: UInt64 - /// Original shared folder name. - public let originalFolderName: String - /// Sharing permission. - public let sharingPermission: String? - /// Team name. - public let teamName: String - public init(targetAssetIndex: UInt64, originalFolderName: String, teamName: String, sharingPermission: String? = nil) { - comparableValidator()(targetAssetIndex) - self.targetAssetIndex = targetAssetIndex - stringValidator()(originalFolderName) - self.originalFolderName = originalFolderName - nullableValidator(stringValidator())(sharingPermission) - self.sharingPermission = sharingPermission - stringValidator()(teamName) - self.teamName = teamName + /// Added expiration date to link for shared file/folder. + public class SharedContentAddLinkExpiryDetails: CustomStringConvertible, JSONRepresentable { + /// New shared content link expiration date. Might be missing due to historical data gap. + public let newValue: Date? + public init(newValue: Date? = nil) { + self.newValue = newValue } func json() throws -> JSON { - try SfAddGroupDetailsSerializer().serialize(self) + try SharedContentAddLinkExpiryDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SfAddGroupDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentAddLinkExpiryDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SfAddGroupDetails: \(error)" + return "Failed to generate description for SharedContentAddLinkExpiryDetails: \(error)" } } } - - public class SfAddGroupDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SfAddGroupDetails) throws -> JSON { + public class SharedContentAddLinkExpiryDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedContentAddLinkExpiryDetails) throws -> JSON { let output = [ - "target_asset_index": try Serialization._UInt64Serializer.serialize(value.targetAssetIndex), - "original_folder_name": try Serialization._StringSerializer.serialize(value.originalFolderName), - "team_name": try Serialization._StringSerializer.serialize(value.teamName), - "sharing_permission": try NullableSerializer(Serialization._StringSerializer).serialize(value.sharingPermission), + "new_value": try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).serialize(value.newValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SfAddGroupDetails { + public func deserialize(_ json: JSON) throws -> SharedContentAddLinkExpiryDetails { switch json { - case .dictionary(let dict): - let targetAssetIndex = try Serialization._UInt64Serializer.deserialize(dict["target_asset_index"] ?? .null) - let originalFolderName = try Serialization._StringSerializer.deserialize(dict["original_folder_name"] ?? .null) - let teamName = try Serialization._StringSerializer.deserialize(dict["team_name"] ?? .null) - let sharingPermission = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["sharing_permission"] ?? .null) - return SfAddGroupDetails( - targetAssetIndex: targetAssetIndex, - originalFolderName: originalFolderName, - teamName: teamName, - sharingPermission: sharingPermission - ) - default: - throw JSONSerializerError.deserializeError(type: SfAddGroupDetails.self, json: json) + case .dictionary(let dict): + let newValue = try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).deserialize(dict["new_value"] ?? .null) + return SharedContentAddLinkExpiryDetails(newValue: newValue) + default: + throw JSONSerializerError.deserializeError(type: SharedContentAddLinkExpiryDetails.self, json: json) } } } - /// The SfAddGroupType struct - public class SfAddGroupType: CustomStringConvertible, JSONRepresentable { + /// The SharedContentAddLinkExpiryType struct + public class SharedContentAddLinkExpiryType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -49192,98 +62054,69 @@ public class TeamLog { } func json() throws -> JSON { - try SfAddGroupTypeSerializer().serialize(self) + try SharedContentAddLinkExpiryTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SfAddGroupTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentAddLinkExpiryTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SfAddGroupType: \(error)" + return "Failed to generate description for SharedContentAddLinkExpiryType: \(error)" } } } - - public class SfAddGroupTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SfAddGroupType) throws -> JSON { + public class SharedContentAddLinkExpiryTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedContentAddLinkExpiryType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SfAddGroupType { + public func deserialize(_ json: JSON) throws -> SharedContentAddLinkExpiryType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SfAddGroupType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SfAddGroupType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharedContentAddLinkExpiryType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharedContentAddLinkExpiryType.self, json: json) } } } - /// Allowed non-collaborators to view links to files in shared folder. - public class SfAllowNonMembersToViewSharedLinksDetails: CustomStringConvertible, JSONRepresentable { - /// Target asset position in the Assets list. - public let targetAssetIndex: UInt64 - /// Original shared folder name. - public let originalFolderName: String - /// Shared folder type. - public let sharedFolderType: String? - public init(targetAssetIndex: UInt64, originalFolderName: String, sharedFolderType: String? = nil) { - comparableValidator()(targetAssetIndex) - self.targetAssetIndex = targetAssetIndex - stringValidator()(originalFolderName) - self.originalFolderName = originalFolderName - nullableValidator(stringValidator())(sharedFolderType) - self.sharedFolderType = sharedFolderType - } + /// Added password to link for shared file/folder. + public class SharedContentAddLinkPasswordDetails: CustomStringConvertible, JSONRepresentable { func json() throws -> JSON { - try SfAllowNonMembersToViewSharedLinksDetailsSerializer().serialize(self) + try SharedContentAddLinkPasswordDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SfAllowNonMembersToViewSharedLinksDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentAddLinkPasswordDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SfAllowNonMembersToViewSharedLinksDetails: \(error)" + return "Failed to generate description for SharedContentAddLinkPasswordDetails: \(error)" } } } - - public class SfAllowNonMembersToViewSharedLinksDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SfAllowNonMembersToViewSharedLinksDetails) throws -> JSON { - let output = [ - "target_asset_index": try Serialization._UInt64Serializer.serialize(value.targetAssetIndex), - "original_folder_name": try Serialization._StringSerializer.serialize(value.originalFolderName), - "shared_folder_type": try NullableSerializer(Serialization._StringSerializer).serialize(value.sharedFolderType), - ] + public class SharedContentAddLinkPasswordDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedContentAddLinkPasswordDetails) throws -> JSON { + let output = [String: JSON]() return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SfAllowNonMembersToViewSharedLinksDetails { + public func deserialize(_ json: JSON) throws -> SharedContentAddLinkPasswordDetails { switch json { - case .dictionary(let dict): - let targetAssetIndex = try Serialization._UInt64Serializer.deserialize(dict["target_asset_index"] ?? .null) - let originalFolderName = try Serialization._StringSerializer.deserialize(dict["original_folder_name"] ?? .null) - let sharedFolderType = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["shared_folder_type"] ?? .null) - return SfAllowNonMembersToViewSharedLinksDetails( - targetAssetIndex: targetAssetIndex, - originalFolderName: originalFolderName, - sharedFolderType: sharedFolderType - ) - default: - throw JSONSerializerError.deserializeError(type: SfAllowNonMembersToViewSharedLinksDetails.self, json: json) + case .dictionary(_): + return SharedContentAddLinkPasswordDetails() + default: + throw JSONSerializerError.deserializeError(type: SharedContentAddLinkPasswordDetails.self, json: json) } } } - /// The SfAllowNonMembersToViewSharedLinksType struct - public class SfAllowNonMembersToViewSharedLinksType: CustomStringConvertible, JSONRepresentable { + /// The SharedContentAddLinkPasswordType struct + public class SharedContentAddLinkPasswordType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -49292,106 +62125,77 @@ public class TeamLog { } func json() throws -> JSON { - try SfAllowNonMembersToViewSharedLinksTypeSerializer().serialize(self) + try SharedContentAddLinkPasswordTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SfAllowNonMembersToViewSharedLinksTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentAddLinkPasswordTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SfAllowNonMembersToViewSharedLinksType: \(error)" + return "Failed to generate description for SharedContentAddLinkPasswordType: \(error)" } } } - - public class SfAllowNonMembersToViewSharedLinksTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SfAllowNonMembersToViewSharedLinksType) throws -> JSON { + public class SharedContentAddLinkPasswordTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedContentAddLinkPasswordType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SfAllowNonMembersToViewSharedLinksType { + public func deserialize(_ json: JSON) throws -> SharedContentAddLinkPasswordType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SfAllowNonMembersToViewSharedLinksType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SfAllowNonMembersToViewSharedLinksType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharedContentAddLinkPasswordType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharedContentAddLinkPasswordType.self, json: json) } } } - /// Set team members to see warning before sharing folders outside team. - public class SfExternalInviteWarnDetails: CustomStringConvertible, JSONRepresentable { - /// Target asset position in the Assets list. - public let targetAssetIndex: UInt64 - /// Original shared folder name. - public let originalFolderName: String - /// New sharing permission. - public let newSharingPermission: String? - /// Previous sharing permission. - public let previousSharingPermission: String? - public init(targetAssetIndex: UInt64, originalFolderName: String, newSharingPermission: String? = nil, previousSharingPermission: String? = nil) { - comparableValidator()(targetAssetIndex) - self.targetAssetIndex = targetAssetIndex - stringValidator()(originalFolderName) - self.originalFolderName = originalFolderName - nullableValidator(stringValidator())(newSharingPermission) - self.newSharingPermission = newSharingPermission - nullableValidator(stringValidator())(previousSharingPermission) - self.previousSharingPermission = previousSharingPermission + /// Added users and/or groups to shared file/folder. + public class SharedContentAddMemberDetails: CustomStringConvertible, JSONRepresentable { + /// Shared content access level. + public let sharedContentAccessLevel: Sharing.AccessLevel + public init(sharedContentAccessLevel: Sharing.AccessLevel) { + self.sharedContentAccessLevel = sharedContentAccessLevel } func json() throws -> JSON { - try SfExternalInviteWarnDetailsSerializer().serialize(self) + try SharedContentAddMemberDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SfExternalInviteWarnDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentAddMemberDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SfExternalInviteWarnDetails: \(error)" + return "Failed to generate description for SharedContentAddMemberDetails: \(error)" } } } - - public class SfExternalInviteWarnDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SfExternalInviteWarnDetails) throws -> JSON { + public class SharedContentAddMemberDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedContentAddMemberDetails) throws -> JSON { let output = [ - "target_asset_index": try Serialization._UInt64Serializer.serialize(value.targetAssetIndex), - "original_folder_name": try Serialization._StringSerializer.serialize(value.originalFolderName), - "new_sharing_permission": try NullableSerializer(Serialization._StringSerializer).serialize(value.newSharingPermission), - "previous_sharing_permission": try NullableSerializer(Serialization._StringSerializer).serialize(value.previousSharingPermission), + "shared_content_access_level": try Sharing.AccessLevelSerializer().serialize(value.sharedContentAccessLevel), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SfExternalInviteWarnDetails { + public func deserialize(_ json: JSON) throws -> SharedContentAddMemberDetails { switch json { - case .dictionary(let dict): - let targetAssetIndex = try Serialization._UInt64Serializer.deserialize(dict["target_asset_index"] ?? .null) - let originalFolderName = try Serialization._StringSerializer.deserialize(dict["original_folder_name"] ?? .null) - let newSharingPermission = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["new_sharing_permission"] ?? .null) - let previousSharingPermission = try NullableSerializer(Serialization._StringSerializer) - .deserialize(dict["previous_sharing_permission"] ?? .null) - return SfExternalInviteWarnDetails( - targetAssetIndex: targetAssetIndex, - originalFolderName: originalFolderName, - newSharingPermission: newSharingPermission, - previousSharingPermission: previousSharingPermission - ) - default: - throw JSONSerializerError.deserializeError(type: SfExternalInviteWarnDetails.self, json: json) + case .dictionary(let dict): + let sharedContentAccessLevel = try Sharing.AccessLevelSerializer().deserialize(dict["shared_content_access_level"] ?? .null) + return SharedContentAddMemberDetails(sharedContentAccessLevel: sharedContentAccessLevel) + default: + throw JSONSerializerError.deserializeError(type: SharedContentAddMemberDetails.self, json: json) } } } - /// The SfExternalInviteWarnType struct - public class SfExternalInviteWarnType: CustomStringConvertible, JSONRepresentable { + /// The SharedContentAddMemberType struct + public class SharedContentAddMemberType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -49400,106 +62204,82 @@ public class TeamLog { } func json() throws -> JSON { - try SfExternalInviteWarnTypeSerializer().serialize(self) + try SharedContentAddMemberTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SfExternalInviteWarnTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentAddMemberTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SfExternalInviteWarnType: \(error)" + return "Failed to generate description for SharedContentAddMemberType: \(error)" } } } - - public class SfExternalInviteWarnTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SfExternalInviteWarnType) throws -> JSON { + public class SharedContentAddMemberTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedContentAddMemberType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SfExternalInviteWarnType { + public func deserialize(_ json: JSON) throws -> SharedContentAddMemberType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SfExternalInviteWarnType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SfExternalInviteWarnType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharedContentAddMemberType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharedContentAddMemberType.self, json: json) } } } - /// Changed Facebook user's role in shared folder. - public class SfFbInviteChangeRoleDetails: CustomStringConvertible, JSONRepresentable { - /// Target asset position in the Assets list. - public let targetAssetIndex: UInt64 - /// Original shared folder name. - public let originalFolderName: String - /// Previous sharing permission. - public let previousSharingPermission: String? - /// New sharing permission. - public let newSharingPermission: String? - public init(targetAssetIndex: UInt64, originalFolderName: String, previousSharingPermission: String? = nil, newSharingPermission: String? = nil) { - comparableValidator()(targetAssetIndex) - self.targetAssetIndex = targetAssetIndex - stringValidator()(originalFolderName) - self.originalFolderName = originalFolderName - nullableValidator(stringValidator())(previousSharingPermission) - self.previousSharingPermission = previousSharingPermission - nullableValidator(stringValidator())(newSharingPermission) - self.newSharingPermission = newSharingPermission + /// Changed whether members can download shared file/folder. + public class SharedContentChangeDownloadsPolicyDetails: CustomStringConvertible, JSONRepresentable { + /// New downloads policy. + public let newValue: TeamLog.DownloadPolicyType + /// Previous downloads policy. Might be missing due to historical data gap. + public let previousValue: TeamLog.DownloadPolicyType? + public init(newValue: TeamLog.DownloadPolicyType, previousValue: TeamLog.DownloadPolicyType? = nil) { + self.newValue = newValue + self.previousValue = previousValue } func json() throws -> JSON { - try SfFbInviteChangeRoleDetailsSerializer().serialize(self) + try SharedContentChangeDownloadsPolicyDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SfFbInviteChangeRoleDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentChangeDownloadsPolicyDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SfFbInviteChangeRoleDetails: \(error)" + return "Failed to generate description for SharedContentChangeDownloadsPolicyDetails: \(error)" } } } - - public class SfFbInviteChangeRoleDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SfFbInviteChangeRoleDetails) throws -> JSON { + public class SharedContentChangeDownloadsPolicyDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedContentChangeDownloadsPolicyDetails) throws -> JSON { let output = [ - "target_asset_index": try Serialization._UInt64Serializer.serialize(value.targetAssetIndex), - "original_folder_name": try Serialization._StringSerializer.serialize(value.originalFolderName), - "previous_sharing_permission": try NullableSerializer(Serialization._StringSerializer).serialize(value.previousSharingPermission), - "new_sharing_permission": try NullableSerializer(Serialization._StringSerializer).serialize(value.newSharingPermission), + "new_value": try TeamLog.DownloadPolicyTypeSerializer().serialize(value.newValue), + "previous_value": try NullableSerializer(TeamLog.DownloadPolicyTypeSerializer()).serialize(value.previousValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SfFbInviteChangeRoleDetails { + public func deserialize(_ json: JSON) throws -> SharedContentChangeDownloadsPolicyDetails { switch json { - case .dictionary(let dict): - let targetAssetIndex = try Serialization._UInt64Serializer.deserialize(dict["target_asset_index"] ?? .null) - let originalFolderName = try Serialization._StringSerializer.deserialize(dict["original_folder_name"] ?? .null) - let previousSharingPermission = try NullableSerializer(Serialization._StringSerializer) - .deserialize(dict["previous_sharing_permission"] ?? .null) - let newSharingPermission = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["new_sharing_permission"] ?? .null) - return SfFbInviteChangeRoleDetails( - targetAssetIndex: targetAssetIndex, - originalFolderName: originalFolderName, - previousSharingPermission: previousSharingPermission, - newSharingPermission: newSharingPermission - ) - default: - throw JSONSerializerError.deserializeError(type: SfFbInviteChangeRoleDetails.self, json: json) + case .dictionary(let dict): + let newValue = try TeamLog.DownloadPolicyTypeSerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try NullableSerializer(TeamLog.DownloadPolicyTypeSerializer()).deserialize(dict["previous_value"] ?? .null) + return SharedContentChangeDownloadsPolicyDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: SharedContentChangeDownloadsPolicyDetails.self, json: json) } } } - /// The SfFbInviteChangeRoleType struct - public class SfFbInviteChangeRoleType: CustomStringConvertible, JSONRepresentable { + /// The SharedContentChangeDownloadsPolicyType struct + public class SharedContentChangeDownloadsPolicyType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -49508,94 +62288,88 @@ public class TeamLog { } func json() throws -> JSON { - try SfFbInviteChangeRoleTypeSerializer().serialize(self) + try SharedContentChangeDownloadsPolicyTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SfFbInviteChangeRoleTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentChangeDownloadsPolicyTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SfFbInviteChangeRoleType: \(error)" + return "Failed to generate description for SharedContentChangeDownloadsPolicyType: \(error)" } } } - - public class SfFbInviteChangeRoleTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SfFbInviteChangeRoleType) throws -> JSON { + public class SharedContentChangeDownloadsPolicyTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedContentChangeDownloadsPolicyType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SfFbInviteChangeRoleType { + public func deserialize(_ json: JSON) throws -> SharedContentChangeDownloadsPolicyType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SfFbInviteChangeRoleType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SfFbInviteChangeRoleType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharedContentChangeDownloadsPolicyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharedContentChangeDownloadsPolicyType.self, json: json) } } } - /// Invited Facebook users to shared folder. - public class SfFbInviteDetails: CustomStringConvertible, JSONRepresentable { - /// Target asset position in the Assets list. - public let targetAssetIndex: UInt64 - /// Original shared folder name. - public let originalFolderName: String - /// Sharing permission. - public let sharingPermission: String? - public init(targetAssetIndex: UInt64, originalFolderName: String, sharingPermission: String? = nil) { - comparableValidator()(targetAssetIndex) - self.targetAssetIndex = targetAssetIndex - stringValidator()(originalFolderName) - self.originalFolderName = originalFolderName - nullableValidator(stringValidator())(sharingPermission) - self.sharingPermission = sharingPermission + /// Changed access type of invitee to shared file/folder before invite was accepted. + public class SharedContentChangeInviteeRoleDetails: CustomStringConvertible, JSONRepresentable { + /// Previous access level. Might be missing due to historical data gap. + public let previousAccessLevel: Sharing.AccessLevel? + /// New access level. + public let newAccessLevel: Sharing.AccessLevel + /// The invitee whose role was changed. + public let invitee: String + public init(newAccessLevel: Sharing.AccessLevel, invitee: String, previousAccessLevel: Sharing.AccessLevel? = nil) { + self.previousAccessLevel = previousAccessLevel + self.newAccessLevel = newAccessLevel + stringValidator(maxLength: 255)(invitee) + self.invitee = invitee } func json() throws -> JSON { - try SfFbInviteDetailsSerializer().serialize(self) + try SharedContentChangeInviteeRoleDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SfFbInviteDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentChangeInviteeRoleDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SfFbInviteDetails: \(error)" + return "Failed to generate description for SharedContentChangeInviteeRoleDetails: \(error)" } } } - - public class SfFbInviteDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SfFbInviteDetails) throws -> JSON { + public class SharedContentChangeInviteeRoleDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedContentChangeInviteeRoleDetails) throws -> JSON { let output = [ - "target_asset_index": try Serialization._UInt64Serializer.serialize(value.targetAssetIndex), - "original_folder_name": try Serialization._StringSerializer.serialize(value.originalFolderName), - "sharing_permission": try NullableSerializer(Serialization._StringSerializer).serialize(value.sharingPermission), + "new_access_level": try Sharing.AccessLevelSerializer().serialize(value.newAccessLevel), + "invitee": try Serialization._StringSerializer.serialize(value.invitee), + "previous_access_level": try NullableSerializer(Sharing.AccessLevelSerializer()).serialize(value.previousAccessLevel), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SfFbInviteDetails { + public func deserialize(_ json: JSON) throws -> SharedContentChangeInviteeRoleDetails { switch json { - case .dictionary(let dict): - let targetAssetIndex = try Serialization._UInt64Serializer.deserialize(dict["target_asset_index"] ?? .null) - let originalFolderName = try Serialization._StringSerializer.deserialize(dict["original_folder_name"] ?? .null) - let sharingPermission = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["sharing_permission"] ?? .null) - return SfFbInviteDetails(targetAssetIndex: targetAssetIndex, originalFolderName: originalFolderName, sharingPermission: sharingPermission) - default: - throw JSONSerializerError.deserializeError(type: SfFbInviteDetails.self, json: json) + case .dictionary(let dict): + let newAccessLevel = try Sharing.AccessLevelSerializer().deserialize(dict["new_access_level"] ?? .null) + let invitee = try Serialization._StringSerializer.deserialize(dict["invitee"] ?? .null) + let previousAccessLevel = try NullableSerializer(Sharing.AccessLevelSerializer()).deserialize(dict["previous_access_level"] ?? .null) + return SharedContentChangeInviteeRoleDetails(newAccessLevel: newAccessLevel, invitee: invitee, previousAccessLevel: previousAccessLevel) + default: + throw JSONSerializerError.deserializeError(type: SharedContentChangeInviteeRoleDetails.self, json: json) } } } - /// The SfFbInviteType struct - public class SfFbInviteType: CustomStringConvertible, JSONRepresentable { + /// The SharedContentChangeInviteeRoleType struct + public class SharedContentChangeInviteeRoleType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -49604,88 +62378,82 @@ public class TeamLog { } func json() throws -> JSON { - try SfFbInviteTypeSerializer().serialize(self) + try SharedContentChangeInviteeRoleTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SfFbInviteTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentChangeInviteeRoleTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SfFbInviteType: \(error)" + return "Failed to generate description for SharedContentChangeInviteeRoleType: \(error)" } } } - - public class SfFbInviteTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SfFbInviteType) throws -> JSON { + public class SharedContentChangeInviteeRoleTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedContentChangeInviteeRoleType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SfFbInviteType { + public func deserialize(_ json: JSON) throws -> SharedContentChangeInviteeRoleType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SfFbInviteType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SfFbInviteType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharedContentChangeInviteeRoleType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharedContentChangeInviteeRoleType.self, json: json) } } } - /// Uninvited Facebook user from shared folder. - public class SfFbUninviteDetails: CustomStringConvertible, JSONRepresentable { - /// Target asset position in the Assets list. - public let targetAssetIndex: UInt64 - /// Original shared folder name. - public let originalFolderName: String - public init(targetAssetIndex: UInt64, originalFolderName: String) { - comparableValidator()(targetAssetIndex) - self.targetAssetIndex = targetAssetIndex - stringValidator()(originalFolderName) - self.originalFolderName = originalFolderName + /// Changed link audience of shared file/folder. + public class SharedContentChangeLinkAudienceDetails: CustomStringConvertible, JSONRepresentable { + /// New link audience value. + public let newValue: Sharing.LinkAudience + /// Previous link audience value. + public let previousValue: Sharing.LinkAudience? + public init(newValue: Sharing.LinkAudience, previousValue: Sharing.LinkAudience? = nil) { + self.newValue = newValue + self.previousValue = previousValue } func json() throws -> JSON { - try SfFbUninviteDetailsSerializer().serialize(self) + try SharedContentChangeLinkAudienceDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SfFbUninviteDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentChangeLinkAudienceDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SfFbUninviteDetails: \(error)" + return "Failed to generate description for SharedContentChangeLinkAudienceDetails: \(error)" } } } - - public class SfFbUninviteDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SfFbUninviteDetails) throws -> JSON { + public class SharedContentChangeLinkAudienceDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedContentChangeLinkAudienceDetails) throws -> JSON { let output = [ - "target_asset_index": try Serialization._UInt64Serializer.serialize(value.targetAssetIndex), - "original_folder_name": try Serialization._StringSerializer.serialize(value.originalFolderName), + "new_value": try Sharing.LinkAudienceSerializer().serialize(value.newValue), + "previous_value": try NullableSerializer(Sharing.LinkAudienceSerializer()).serialize(value.previousValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SfFbUninviteDetails { + public func deserialize(_ json: JSON) throws -> SharedContentChangeLinkAudienceDetails { switch json { - case .dictionary(let dict): - let targetAssetIndex = try Serialization._UInt64Serializer.deserialize(dict["target_asset_index"] ?? .null) - let originalFolderName = try Serialization._StringSerializer.deserialize(dict["original_folder_name"] ?? .null) - return SfFbUninviteDetails(targetAssetIndex: targetAssetIndex, originalFolderName: originalFolderName) - default: - throw JSONSerializerError.deserializeError(type: SfFbUninviteDetails.self, json: json) + case .dictionary(let dict): + let newValue = try Sharing.LinkAudienceSerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try NullableSerializer(Sharing.LinkAudienceSerializer()).deserialize(dict["previous_value"] ?? .null) + return SharedContentChangeLinkAudienceDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: SharedContentChangeLinkAudienceDetails.self, json: json) } } } - /// The SfFbUninviteType struct - public class SfFbUninviteType: CustomStringConvertible, JSONRepresentable { + /// The SharedContentChangeLinkAudienceType struct + public class SharedContentChangeLinkAudienceType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -49694,82 +62462,82 @@ public class TeamLog { } func json() throws -> JSON { - try SfFbUninviteTypeSerializer().serialize(self) + try SharedContentChangeLinkAudienceTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SfFbUninviteTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentChangeLinkAudienceTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SfFbUninviteType: \(error)" + return "Failed to generate description for SharedContentChangeLinkAudienceType: \(error)" } } } - - public class SfFbUninviteTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SfFbUninviteType) throws -> JSON { + public class SharedContentChangeLinkAudienceTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedContentChangeLinkAudienceType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SfFbUninviteType { + public func deserialize(_ json: JSON) throws -> SharedContentChangeLinkAudienceType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SfFbUninviteType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SfFbUninviteType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharedContentChangeLinkAudienceType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharedContentChangeLinkAudienceType.self, json: json) } } } - /// Invited group to shared folder. - public class SfInviteGroupDetails: CustomStringConvertible, JSONRepresentable { - /// Target asset position in the Assets list. - public let targetAssetIndex: UInt64 - public init(targetAssetIndex: UInt64) { - comparableValidator()(targetAssetIndex) - self.targetAssetIndex = targetAssetIndex + /// Changed link expiration of shared file/folder. + public class SharedContentChangeLinkExpiryDetails: CustomStringConvertible, JSONRepresentable { + /// New shared content link expiration date. Might be missing due to historical data gap. + public let newValue: Date? + /// Previous shared content link expiration date. Might be missing due to historical data gap. + public let previousValue: Date? + public init(newValue: Date? = nil, previousValue: Date? = nil) { + self.newValue = newValue + self.previousValue = previousValue } func json() throws -> JSON { - try SfInviteGroupDetailsSerializer().serialize(self) + try SharedContentChangeLinkExpiryDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SfInviteGroupDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentChangeLinkExpiryDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SfInviteGroupDetails: \(error)" + return "Failed to generate description for SharedContentChangeLinkExpiryDetails: \(error)" } } } - - public class SfInviteGroupDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SfInviteGroupDetails) throws -> JSON { + public class SharedContentChangeLinkExpiryDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedContentChangeLinkExpiryDetails) throws -> JSON { let output = [ - "target_asset_index": try Serialization._UInt64Serializer.serialize(value.targetAssetIndex), + "new_value": try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).serialize(value.newValue), + "previous_value": try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).serialize(value.previousValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SfInviteGroupDetails { + public func deserialize(_ json: JSON) throws -> SharedContentChangeLinkExpiryDetails { switch json { - case .dictionary(let dict): - let targetAssetIndex = try Serialization._UInt64Serializer.deserialize(dict["target_asset_index"] ?? .null) - return SfInviteGroupDetails(targetAssetIndex: targetAssetIndex) - default: - throw JSONSerializerError.deserializeError(type: SfInviteGroupDetails.self, json: json) + case .dictionary(let dict): + let newValue = try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).deserialize(dict["new_value"] ?? .null) + let previousValue = try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).deserialize(dict["previous_value"] ?? .null) + return SharedContentChangeLinkExpiryDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: SharedContentChangeLinkExpiryDetails.self, json: json) } } } - /// The SfInviteGroupType struct - public class SfInviteGroupType: CustomStringConvertible, JSONRepresentable { + /// The SharedContentChangeLinkExpiryType struct + public class SharedContentChangeLinkExpiryType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -49778,88 +62546,69 @@ public class TeamLog { } func json() throws -> JSON { - try SfInviteGroupTypeSerializer().serialize(self) + try SharedContentChangeLinkExpiryTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SfInviteGroupTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentChangeLinkExpiryTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SfInviteGroupType: \(error)" + return "Failed to generate description for SharedContentChangeLinkExpiryType: \(error)" } } } - - public class SfInviteGroupTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SfInviteGroupType) throws -> JSON { + public class SharedContentChangeLinkExpiryTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedContentChangeLinkExpiryType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SfInviteGroupType { + public func deserialize(_ json: JSON) throws -> SharedContentChangeLinkExpiryType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SfInviteGroupType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SfInviteGroupType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharedContentChangeLinkExpiryType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharedContentChangeLinkExpiryType.self, json: json) } } } - /// Granted access to shared folder. - public class SfTeamGrantAccessDetails: CustomStringConvertible, JSONRepresentable { - /// Target asset position in the Assets list. - public let targetAssetIndex: UInt64 - /// Original shared folder name. - public let originalFolderName: String - public init(targetAssetIndex: UInt64, originalFolderName: String) { - comparableValidator()(targetAssetIndex) - self.targetAssetIndex = targetAssetIndex - stringValidator()(originalFolderName) - self.originalFolderName = originalFolderName - } + /// Changed link password of shared file/folder. + public class SharedContentChangeLinkPasswordDetails: CustomStringConvertible, JSONRepresentable { func json() throws -> JSON { - try SfTeamGrantAccessDetailsSerializer().serialize(self) + try SharedContentChangeLinkPasswordDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SfTeamGrantAccessDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentChangeLinkPasswordDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SfTeamGrantAccessDetails: \(error)" + return "Failed to generate description for SharedContentChangeLinkPasswordDetails: \(error)" } } } - - public class SfTeamGrantAccessDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SfTeamGrantAccessDetails) throws -> JSON { - let output = [ - "target_asset_index": try Serialization._UInt64Serializer.serialize(value.targetAssetIndex), - "original_folder_name": try Serialization._StringSerializer.serialize(value.originalFolderName), - ] + public class SharedContentChangeLinkPasswordDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedContentChangeLinkPasswordDetails) throws -> JSON { + let output = [String: JSON]() return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SfTeamGrantAccessDetails { + public func deserialize(_ json: JSON) throws -> SharedContentChangeLinkPasswordDetails { switch json { - case .dictionary(let dict): - let targetAssetIndex = try Serialization._UInt64Serializer.deserialize(dict["target_asset_index"] ?? .null) - let originalFolderName = try Serialization._StringSerializer.deserialize(dict["original_folder_name"] ?? .null) - return SfTeamGrantAccessDetails(targetAssetIndex: targetAssetIndex, originalFolderName: originalFolderName) - default: - throw JSONSerializerError.deserializeError(type: SfTeamGrantAccessDetails.self, json: json) + case .dictionary(_): + return SharedContentChangeLinkPasswordDetails() + default: + throw JSONSerializerError.deserializeError(type: SharedContentChangeLinkPasswordDetails.self, json: json) } } } - /// The SfTeamGrantAccessType struct - public class SfTeamGrantAccessType: CustomStringConvertible, JSONRepresentable { + /// The SharedContentChangeLinkPasswordType struct + public class SharedContentChangeLinkPasswordType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -49868,106 +62617,82 @@ public class TeamLog { } func json() throws -> JSON { - try SfTeamGrantAccessTypeSerializer().serialize(self) + try SharedContentChangeLinkPasswordTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SfTeamGrantAccessTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentChangeLinkPasswordTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SfTeamGrantAccessType: \(error)" + return "Failed to generate description for SharedContentChangeLinkPasswordType: \(error)" } } } - - public class SfTeamGrantAccessTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SfTeamGrantAccessType) throws -> JSON { + public class SharedContentChangeLinkPasswordTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedContentChangeLinkPasswordType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SfTeamGrantAccessType { + public func deserialize(_ json: JSON) throws -> SharedContentChangeLinkPasswordType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SfTeamGrantAccessType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SfTeamGrantAccessType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharedContentChangeLinkPasswordType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharedContentChangeLinkPasswordType.self, json: json) } } } - /// Changed team member's role in shared folder. - public class SfTeamInviteChangeRoleDetails: CustomStringConvertible, JSONRepresentable { - /// Target asset position in the Assets list. - public let targetAssetIndex: UInt64 - /// Original shared folder name. - public let originalFolderName: String - /// New sharing permission. - public let newSharingPermission: String? - /// Previous sharing permission. - public let previousSharingPermission: String? - public init(targetAssetIndex: UInt64, originalFolderName: String, newSharingPermission: String? = nil, previousSharingPermission: String? = nil) { - comparableValidator()(targetAssetIndex) - self.targetAssetIndex = targetAssetIndex - stringValidator()(originalFolderName) - self.originalFolderName = originalFolderName - nullableValidator(stringValidator())(newSharingPermission) - self.newSharingPermission = newSharingPermission - nullableValidator(stringValidator())(previousSharingPermission) - self.previousSharingPermission = previousSharingPermission + /// Changed access type of shared file/folder member. + public class SharedContentChangeMemberRoleDetails: CustomStringConvertible, JSONRepresentable { + /// Previous access level. Might be missing due to historical data gap. + public let previousAccessLevel: Sharing.AccessLevel? + /// New access level. + public let newAccessLevel: Sharing.AccessLevel + public init(newAccessLevel: Sharing.AccessLevel, previousAccessLevel: Sharing.AccessLevel? = nil) { + self.previousAccessLevel = previousAccessLevel + self.newAccessLevel = newAccessLevel } func json() throws -> JSON { - try SfTeamInviteChangeRoleDetailsSerializer().serialize(self) + try SharedContentChangeMemberRoleDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SfTeamInviteChangeRoleDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentChangeMemberRoleDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SfTeamInviteChangeRoleDetails: \(error)" + return "Failed to generate description for SharedContentChangeMemberRoleDetails: \(error)" } } } - - public class SfTeamInviteChangeRoleDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SfTeamInviteChangeRoleDetails) throws -> JSON { + public class SharedContentChangeMemberRoleDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedContentChangeMemberRoleDetails) throws -> JSON { let output = [ - "target_asset_index": try Serialization._UInt64Serializer.serialize(value.targetAssetIndex), - "original_folder_name": try Serialization._StringSerializer.serialize(value.originalFolderName), - "new_sharing_permission": try NullableSerializer(Serialization._StringSerializer).serialize(value.newSharingPermission), - "previous_sharing_permission": try NullableSerializer(Serialization._StringSerializer).serialize(value.previousSharingPermission), + "new_access_level": try Sharing.AccessLevelSerializer().serialize(value.newAccessLevel), + "previous_access_level": try NullableSerializer(Sharing.AccessLevelSerializer()).serialize(value.previousAccessLevel), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SfTeamInviteChangeRoleDetails { + public func deserialize(_ json: JSON) throws -> SharedContentChangeMemberRoleDetails { switch json { - case .dictionary(let dict): - let targetAssetIndex = try Serialization._UInt64Serializer.deserialize(dict["target_asset_index"] ?? .null) - let originalFolderName = try Serialization._StringSerializer.deserialize(dict["original_folder_name"] ?? .null) - let newSharingPermission = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["new_sharing_permission"] ?? .null) - let previousSharingPermission = try NullableSerializer(Serialization._StringSerializer) - .deserialize(dict["previous_sharing_permission"] ?? .null) - return SfTeamInviteChangeRoleDetails( - targetAssetIndex: targetAssetIndex, - originalFolderName: originalFolderName, - newSharingPermission: newSharingPermission, - previousSharingPermission: previousSharingPermission - ) - default: - throw JSONSerializerError.deserializeError(type: SfTeamInviteChangeRoleDetails.self, json: json) + case .dictionary(let dict): + let newAccessLevel = try Sharing.AccessLevelSerializer().deserialize(dict["new_access_level"] ?? .null) + let previousAccessLevel = try NullableSerializer(Sharing.AccessLevelSerializer()).deserialize(dict["previous_access_level"] ?? .null) + return SharedContentChangeMemberRoleDetails(newAccessLevel: newAccessLevel, previousAccessLevel: previousAccessLevel) + default: + throw JSONSerializerError.deserializeError(type: SharedContentChangeMemberRoleDetails.self, json: json) } } } - /// The SfTeamInviteChangeRoleType struct - public class SfTeamInviteChangeRoleType: CustomStringConvertible, JSONRepresentable { + /// The SharedContentChangeMemberRoleType struct + public class SharedContentChangeMemberRoleType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -49976,94 +62701,82 @@ public class TeamLog { } func json() throws -> JSON { - try SfTeamInviteChangeRoleTypeSerializer().serialize(self) + try SharedContentChangeMemberRoleTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SfTeamInviteChangeRoleTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentChangeMemberRoleTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SfTeamInviteChangeRoleType: \(error)" + return "Failed to generate description for SharedContentChangeMemberRoleType: \(error)" } } } - - public class SfTeamInviteChangeRoleTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SfTeamInviteChangeRoleType) throws -> JSON { + public class SharedContentChangeMemberRoleTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedContentChangeMemberRoleType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SfTeamInviteChangeRoleType { + public func deserialize(_ json: JSON) throws -> SharedContentChangeMemberRoleType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SfTeamInviteChangeRoleType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SfTeamInviteChangeRoleType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharedContentChangeMemberRoleType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharedContentChangeMemberRoleType.self, json: json) } } } - /// Invited team members to shared folder. - public class SfTeamInviteDetails: CustomStringConvertible, JSONRepresentable { - /// Target asset position in the Assets list. - public let targetAssetIndex: UInt64 - /// Original shared folder name. - public let originalFolderName: String - /// Sharing permission. - public let sharingPermission: String? - public init(targetAssetIndex: UInt64, originalFolderName: String, sharingPermission: String? = nil) { - comparableValidator()(targetAssetIndex) - self.targetAssetIndex = targetAssetIndex - stringValidator()(originalFolderName) - self.originalFolderName = originalFolderName - nullableValidator(stringValidator())(sharingPermission) - self.sharingPermission = sharingPermission + /// Changed whether members can see who viewed shared file/folder. + public class SharedContentChangeViewerInfoPolicyDetails: CustomStringConvertible, JSONRepresentable { + /// New viewer info policy. + public let newValue: Sharing.ViewerInfoPolicy + /// Previous view info policy. + public let previousValue: Sharing.ViewerInfoPolicy? + public init(newValue: Sharing.ViewerInfoPolicy, previousValue: Sharing.ViewerInfoPolicy? = nil) { + self.newValue = newValue + self.previousValue = previousValue } func json() throws -> JSON { - try SfTeamInviteDetailsSerializer().serialize(self) + try SharedContentChangeViewerInfoPolicyDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SfTeamInviteDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentChangeViewerInfoPolicyDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SfTeamInviteDetails: \(error)" + return "Failed to generate description for SharedContentChangeViewerInfoPolicyDetails: \(error)" } } } - - public class SfTeamInviteDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SfTeamInviteDetails) throws -> JSON { + public class SharedContentChangeViewerInfoPolicyDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedContentChangeViewerInfoPolicyDetails) throws -> JSON { let output = [ - "target_asset_index": try Serialization._UInt64Serializer.serialize(value.targetAssetIndex), - "original_folder_name": try Serialization._StringSerializer.serialize(value.originalFolderName), - "sharing_permission": try NullableSerializer(Serialization._StringSerializer).serialize(value.sharingPermission), + "new_value": try Sharing.ViewerInfoPolicySerializer().serialize(value.newValue), + "previous_value": try NullableSerializer(Sharing.ViewerInfoPolicySerializer()).serialize(value.previousValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SfTeamInviteDetails { + public func deserialize(_ json: JSON) throws -> SharedContentChangeViewerInfoPolicyDetails { switch json { - case .dictionary(let dict): - let targetAssetIndex = try Serialization._UInt64Serializer.deserialize(dict["target_asset_index"] ?? .null) - let originalFolderName = try Serialization._StringSerializer.deserialize(dict["original_folder_name"] ?? .null) - let sharingPermission = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["sharing_permission"] ?? .null) - return SfTeamInviteDetails(targetAssetIndex: targetAssetIndex, originalFolderName: originalFolderName, sharingPermission: sharingPermission) - default: - throw JSONSerializerError.deserializeError(type: SfTeamInviteDetails.self, json: json) + case .dictionary(let dict): + let newValue = try Sharing.ViewerInfoPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try NullableSerializer(Sharing.ViewerInfoPolicySerializer()).deserialize(dict["previous_value"] ?? .null) + return SharedContentChangeViewerInfoPolicyDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: SharedContentChangeViewerInfoPolicyDetails.self, json: json) } } } - /// The SfTeamInviteType struct - public class SfTeamInviteType: CustomStringConvertible, JSONRepresentable { + /// The SharedContentChangeViewerInfoPolicyType struct + public class SharedContentChangeViewerInfoPolicyType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -50072,195 +62785,174 @@ public class TeamLog { } func json() throws -> JSON { - try SfTeamInviteTypeSerializer().serialize(self) + try SharedContentChangeViewerInfoPolicyTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SfTeamInviteTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentChangeViewerInfoPolicyTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SfTeamInviteType: \(error)" + return "Failed to generate description for SharedContentChangeViewerInfoPolicyType: \(error)" } } } - - public class SfTeamInviteTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SfTeamInviteType) throws -> JSON { + public class SharedContentChangeViewerInfoPolicyTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedContentChangeViewerInfoPolicyType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), - ] - return .dictionary(output) - } - - public func deserialize(_ json: JSON) throws -> SfTeamInviteType { - switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SfTeamInviteType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SfTeamInviteType.self, json: json) - } - } - } - - /// Joined team member's shared folder. - public class SfTeamJoinDetails: CustomStringConvertible, JSONRepresentable { - /// Target asset position in the Assets list. - public let targetAssetIndex: UInt64 - /// Original shared folder name. - public let originalFolderName: String - public init(targetAssetIndex: UInt64, originalFolderName: String) { - comparableValidator()(targetAssetIndex) - self.targetAssetIndex = targetAssetIndex - stringValidator()(originalFolderName) - self.originalFolderName = originalFolderName + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> SharedContentChangeViewerInfoPolicyType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharedContentChangeViewerInfoPolicyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharedContentChangeViewerInfoPolicyType.self, json: json) + } + } + } + + /// Acquired membership of shared file/folder by accepting invite. + public class SharedContentClaimInvitationDetails: CustomStringConvertible, JSONRepresentable { + /// Shared content link. + public let sharedContentLink: String? + public init(sharedContentLink: String? = nil) { + nullableValidator(stringValidator())(sharedContentLink) + self.sharedContentLink = sharedContentLink } func json() throws -> JSON { - try SfTeamJoinDetailsSerializer().serialize(self) + try SharedContentClaimInvitationDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SfTeamJoinDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentClaimInvitationDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SfTeamJoinDetails: \(error)" + return "Failed to generate description for SharedContentClaimInvitationDetails: \(error)" } } } - - public class SfTeamJoinDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SfTeamJoinDetails) throws -> JSON { + public class SharedContentClaimInvitationDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedContentClaimInvitationDetails) throws -> JSON { let output = [ - "target_asset_index": try Serialization._UInt64Serializer.serialize(value.targetAssetIndex), - "original_folder_name": try Serialization._StringSerializer.serialize(value.originalFolderName), + "shared_content_link": try NullableSerializer(Serialization._StringSerializer).serialize(value.sharedContentLink), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SfTeamJoinDetails { + public func deserialize(_ json: JSON) throws -> SharedContentClaimInvitationDetails { switch json { - case .dictionary(let dict): - let targetAssetIndex = try Serialization._UInt64Serializer.deserialize(dict["target_asset_index"] ?? .null) - let originalFolderName = try Serialization._StringSerializer.deserialize(dict["original_folder_name"] ?? .null) - return SfTeamJoinDetails(targetAssetIndex: targetAssetIndex, originalFolderName: originalFolderName) - default: - throw JSONSerializerError.deserializeError(type: SfTeamJoinDetails.self, json: json) + case .dictionary(let dict): + let sharedContentLink = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["shared_content_link"] ?? .null) + return SharedContentClaimInvitationDetails(sharedContentLink: sharedContentLink) + default: + throw JSONSerializerError.deserializeError(type: SharedContentClaimInvitationDetails.self, json: json) } } } - /// Joined team member's shared folder from link. - public class SfTeamJoinFromOobLinkDetails: CustomStringConvertible, JSONRepresentable { - /// Target asset position in the Assets list. - public let targetAssetIndex: UInt64 - /// Original shared folder name. - public let originalFolderName: String - /// Shared link token key. - public let tokenKey: String? - /// Sharing permission. - public let sharingPermission: String? - public init(targetAssetIndex: UInt64, originalFolderName: String, tokenKey: String? = nil, sharingPermission: String? = nil) { - comparableValidator()(targetAssetIndex) - self.targetAssetIndex = targetAssetIndex - stringValidator()(originalFolderName) - self.originalFolderName = originalFolderName - nullableValidator(stringValidator())(tokenKey) - self.tokenKey = tokenKey - nullableValidator(stringValidator())(sharingPermission) - self.sharingPermission = sharingPermission + /// The SharedContentClaimInvitationType struct + public class SharedContentClaimInvitationType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ } func json() throws -> JSON { - try SfTeamJoinFromOobLinkDetailsSerializer().serialize(self) + try SharedContentClaimInvitationTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SfTeamJoinFromOobLinkDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentClaimInvitationTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SfTeamJoinFromOobLinkDetails: \(error)" + return "Failed to generate description for SharedContentClaimInvitationType: \(error)" } } } - - public class SfTeamJoinFromOobLinkDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SfTeamJoinFromOobLinkDetails) throws -> JSON { + public class SharedContentClaimInvitationTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedContentClaimInvitationType) throws -> JSON { let output = [ - "target_asset_index": try Serialization._UInt64Serializer.serialize(value.targetAssetIndex), - "original_folder_name": try Serialization._StringSerializer.serialize(value.originalFolderName), - "token_key": try NullableSerializer(Serialization._StringSerializer).serialize(value.tokenKey), - "sharing_permission": try NullableSerializer(Serialization._StringSerializer).serialize(value.sharingPermission), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SfTeamJoinFromOobLinkDetails { + public func deserialize(_ json: JSON) throws -> SharedContentClaimInvitationType { switch json { - case .dictionary(let dict): - let targetAssetIndex = try Serialization._UInt64Serializer.deserialize(dict["target_asset_index"] ?? .null) - let originalFolderName = try Serialization._StringSerializer.deserialize(dict["original_folder_name"] ?? .null) - let tokenKey = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["token_key"] ?? .null) - let sharingPermission = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["sharing_permission"] ?? .null) - return SfTeamJoinFromOobLinkDetails( - targetAssetIndex: targetAssetIndex, - originalFolderName: originalFolderName, - tokenKey: tokenKey, - sharingPermission: sharingPermission - ) - default: - throw JSONSerializerError.deserializeError(type: SfTeamJoinFromOobLinkDetails.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharedContentClaimInvitationType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharedContentClaimInvitationType.self, json: json) } } } - /// The SfTeamJoinFromOobLinkType struct - public class SfTeamJoinFromOobLinkType: CustomStringConvertible, JSONRepresentable { - /// (no description) - public let description_: String - public init(description_: String) { - stringValidator()(description_) - self.description_ = description_ + /// Copied shared file/folder to own Dropbox. + public class SharedContentCopyDetails: CustomStringConvertible, JSONRepresentable { + /// Shared content link. + public let sharedContentLink: String + /// The shared content owner. + public let sharedContentOwner: TeamLog.UserLogInfo? + /// Shared content access level. + public let sharedContentAccessLevel: Sharing.AccessLevel + /// The path where the member saved the content. + public let destinationPath: String + public init(sharedContentLink: String, sharedContentAccessLevel: Sharing.AccessLevel, destinationPath: String, sharedContentOwner: TeamLog.UserLogInfo? = nil) { + stringValidator()(sharedContentLink) + self.sharedContentLink = sharedContentLink + self.sharedContentOwner = sharedContentOwner + self.sharedContentAccessLevel = sharedContentAccessLevel + stringValidator()(destinationPath) + self.destinationPath = destinationPath } func json() throws -> JSON { - try SfTeamJoinFromOobLinkTypeSerializer().serialize(self) + try SharedContentCopyDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SfTeamJoinFromOobLinkTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentCopyDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SfTeamJoinFromOobLinkType: \(error)" + return "Failed to generate description for SharedContentCopyDetails: \(error)" } } } - - public class SfTeamJoinFromOobLinkTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SfTeamJoinFromOobLinkType) throws -> JSON { + public class SharedContentCopyDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedContentCopyDetails) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "shared_content_link": try Serialization._StringSerializer.serialize(value.sharedContentLink), + "shared_content_access_level": try Sharing.AccessLevelSerializer().serialize(value.sharedContentAccessLevel), + "destination_path": try Serialization._StringSerializer.serialize(value.destinationPath), + "shared_content_owner": try NullableSerializer(TeamLog.UserLogInfoSerializer()).serialize(value.sharedContentOwner), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SfTeamJoinFromOobLinkType { + public func deserialize(_ json: JSON) throws -> SharedContentCopyDetails { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SfTeamJoinFromOobLinkType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SfTeamJoinFromOobLinkType.self, json: json) + case .dictionary(let dict): + let sharedContentLink = try Serialization._StringSerializer.deserialize(dict["shared_content_link"] ?? .null) + let sharedContentAccessLevel = try Sharing.AccessLevelSerializer().deserialize(dict["shared_content_access_level"] ?? .null) + let destinationPath = try Serialization._StringSerializer.deserialize(dict["destination_path"] ?? .null) + let sharedContentOwner = try NullableSerializer(TeamLog.UserLogInfoSerializer()).deserialize(dict["shared_content_owner"] ?? .null) + return SharedContentCopyDetails(sharedContentLink: sharedContentLink, sharedContentAccessLevel: sharedContentAccessLevel, destinationPath: destinationPath, sharedContentOwner: sharedContentOwner) + default: + throw JSONSerializerError.deserializeError(type: SharedContentCopyDetails.self, json: json) } } } - /// The SfTeamJoinType struct - public class SfTeamJoinType: CustomStringConvertible, JSONRepresentable { + /// The SharedContentCopyType struct + public class SharedContentCopyType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -50269,88 +62961,88 @@ public class TeamLog { } func json() throws -> JSON { - try SfTeamJoinTypeSerializer().serialize(self) + try SharedContentCopyTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SfTeamJoinTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentCopyTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SfTeamJoinType: \(error)" + return "Failed to generate description for SharedContentCopyType: \(error)" } } } - - public class SfTeamJoinTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SfTeamJoinType) throws -> JSON { + public class SharedContentCopyTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedContentCopyType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SfTeamJoinType { + public func deserialize(_ json: JSON) throws -> SharedContentCopyType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SfTeamJoinType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SfTeamJoinType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharedContentCopyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharedContentCopyType.self, json: json) } } } - /// Unshared folder with team member. - public class SfTeamUninviteDetails: CustomStringConvertible, JSONRepresentable { - /// Target asset position in the Assets list. - public let targetAssetIndex: UInt64 - /// Original shared folder name. - public let originalFolderName: String - public init(targetAssetIndex: UInt64, originalFolderName: String) { - comparableValidator()(targetAssetIndex) - self.targetAssetIndex = targetAssetIndex - stringValidator()(originalFolderName) - self.originalFolderName = originalFolderName + /// Downloaded shared file/folder. + public class SharedContentDownloadDetails: CustomStringConvertible, JSONRepresentable { + /// Shared content link. + public let sharedContentLink: String + /// The shared content owner. + public let sharedContentOwner: TeamLog.UserLogInfo? + /// Shared content access level. + public let sharedContentAccessLevel: Sharing.AccessLevel + public init(sharedContentLink: String, sharedContentAccessLevel: Sharing.AccessLevel, sharedContentOwner: TeamLog.UserLogInfo? = nil) { + stringValidator()(sharedContentLink) + self.sharedContentLink = sharedContentLink + self.sharedContentOwner = sharedContentOwner + self.sharedContentAccessLevel = sharedContentAccessLevel } func json() throws -> JSON { - try SfTeamUninviteDetailsSerializer().serialize(self) + try SharedContentDownloadDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SfTeamUninviteDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentDownloadDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SfTeamUninviteDetails: \(error)" + return "Failed to generate description for SharedContentDownloadDetails: \(error)" } } } - - public class SfTeamUninviteDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SfTeamUninviteDetails) throws -> JSON { + public class SharedContentDownloadDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedContentDownloadDetails) throws -> JSON { let output = [ - "target_asset_index": try Serialization._UInt64Serializer.serialize(value.targetAssetIndex), - "original_folder_name": try Serialization._StringSerializer.serialize(value.originalFolderName), + "shared_content_link": try Serialization._StringSerializer.serialize(value.sharedContentLink), + "shared_content_access_level": try Sharing.AccessLevelSerializer().serialize(value.sharedContentAccessLevel), + "shared_content_owner": try NullableSerializer(TeamLog.UserLogInfoSerializer()).serialize(value.sharedContentOwner), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SfTeamUninviteDetails { + public func deserialize(_ json: JSON) throws -> SharedContentDownloadDetails { switch json { - case .dictionary(let dict): - let targetAssetIndex = try Serialization._UInt64Serializer.deserialize(dict["target_asset_index"] ?? .null) - let originalFolderName = try Serialization._StringSerializer.deserialize(dict["original_folder_name"] ?? .null) - return SfTeamUninviteDetails(targetAssetIndex: targetAssetIndex, originalFolderName: originalFolderName) - default: - throw JSONSerializerError.deserializeError(type: SfTeamUninviteDetails.self, json: json) + case .dictionary(let dict): + let sharedContentLink = try Serialization._StringSerializer.deserialize(dict["shared_content_link"] ?? .null) + let sharedContentAccessLevel = try Sharing.AccessLevelSerializer().deserialize(dict["shared_content_access_level"] ?? .null) + let sharedContentOwner = try NullableSerializer(TeamLog.UserLogInfoSerializer()).deserialize(dict["shared_content_owner"] ?? .null) + return SharedContentDownloadDetails(sharedContentLink: sharedContentLink, sharedContentAccessLevel: sharedContentAccessLevel, sharedContentOwner: sharedContentOwner) + default: + throw JSONSerializerError.deserializeError(type: SharedContentDownloadDetails.self, json: json) } } } - /// The SfTeamUninviteType struct - public class SfTeamUninviteType: CustomStringConvertible, JSONRepresentable { + /// The SharedContentDownloadType struct + public class SharedContentDownloadType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -50359,87 +63051,69 @@ public class TeamLog { } func json() throws -> JSON { - try SfTeamUninviteTypeSerializer().serialize(self) + try SharedContentDownloadTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SfTeamUninviteTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentDownloadTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SfTeamUninviteType: \(error)" + return "Failed to generate description for SharedContentDownloadType: \(error)" } } } - - public class SfTeamUninviteTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SfTeamUninviteType) throws -> JSON { + public class SharedContentDownloadTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedContentDownloadType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SfTeamUninviteType { + public func deserialize(_ json: JSON) throws -> SharedContentDownloadType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SfTeamUninviteType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SfTeamUninviteType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharedContentDownloadType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharedContentDownloadType.self, json: json) } } } - /// Invited user to Dropbox and added them to shared file/folder. - public class SharedContentAddInviteesDetails: CustomStringConvertible, JSONRepresentable { - /// Shared content access level. - public let sharedContentAccessLevel: Sharing.AccessLevel - /// A list of invitees. - public let invitees: [String] - public init(sharedContentAccessLevel: Sharing.AccessLevel, invitees: [String]) { - self.sharedContentAccessLevel = sharedContentAccessLevel - arrayValidator(itemValidator: stringValidator(maxLength: 255))(invitees) - self.invitees = invitees - } + /// Left shared file/folder. + public class SharedContentRelinquishMembershipDetails: CustomStringConvertible, JSONRepresentable { func json() throws -> JSON { - try SharedContentAddInviteesDetailsSerializer().serialize(self) + try SharedContentRelinquishMembershipDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentAddInviteesDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentRelinquishMembershipDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedContentAddInviteesDetails: \(error)" + return "Failed to generate description for SharedContentRelinquishMembershipDetails: \(error)" } } } - - public class SharedContentAddInviteesDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedContentAddInviteesDetails) throws -> JSON { - let output = [ - "shared_content_access_level": try Sharing.AccessLevelSerializer().serialize(value.sharedContentAccessLevel), - "invitees": try ArraySerializer(Serialization._StringSerializer).serialize(value.invitees), - ] + public class SharedContentRelinquishMembershipDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedContentRelinquishMembershipDetails) throws -> JSON { + let output = [String: JSON]() return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedContentAddInviteesDetails { + public func deserialize(_ json: JSON) throws -> SharedContentRelinquishMembershipDetails { switch json { - case .dictionary(let dict): - let sharedContentAccessLevel = try Sharing.AccessLevelSerializer().deserialize(dict["shared_content_access_level"] ?? .null) - let invitees = try ArraySerializer(Serialization._StringSerializer).deserialize(dict["invitees"] ?? .null) - return SharedContentAddInviteesDetails(sharedContentAccessLevel: sharedContentAccessLevel, invitees: invitees) - default: - throw JSONSerializerError.deserializeError(type: SharedContentAddInviteesDetails.self, json: json) + case .dictionary(_): + return SharedContentRelinquishMembershipDetails() + default: + throw JSONSerializerError.deserializeError(type: SharedContentRelinquishMembershipDetails.self, json: json) } } } - /// The SharedContentAddInviteesType struct - public class SharedContentAddInviteesType: CustomStringConvertible, JSONRepresentable { + /// The SharedContentRelinquishMembershipType struct + public class SharedContentRelinquishMembershipType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -50448,81 +63122,78 @@ public class TeamLog { } func json() throws -> JSON { - try SharedContentAddInviteesTypeSerializer().serialize(self) + try SharedContentRelinquishMembershipTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentAddInviteesTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentRelinquishMembershipTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedContentAddInviteesType: \(error)" + return "Failed to generate description for SharedContentRelinquishMembershipType: \(error)" } } } - - public class SharedContentAddInviteesTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedContentAddInviteesType) throws -> JSON { + public class SharedContentRelinquishMembershipTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedContentRelinquishMembershipType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedContentAddInviteesType { + public func deserialize(_ json: JSON) throws -> SharedContentRelinquishMembershipType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SharedContentAddInviteesType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SharedContentAddInviteesType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharedContentRelinquishMembershipType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharedContentRelinquishMembershipType.self, json: json) } } } - /// Added expiration date to link for shared file/folder. - public class SharedContentAddLinkExpiryDetails: CustomStringConvertible, JSONRepresentable { - /// New shared content link expiration date. Might be missing due to historical data gap. - public let newValue: Date? - public init(newValue: Date? = nil) { - self.newValue = newValue + /// Removed invitee from shared file/folder before invite was accepted. + public class SharedContentRemoveInviteesDetails: CustomStringConvertible, JSONRepresentable { + /// A list of invitees. + public let invitees: Array + public init(invitees: Array) { + arrayValidator(itemValidator: stringValidator(maxLength: 255))(invitees) + self.invitees = invitees } func json() throws -> JSON { - try SharedContentAddLinkExpiryDetailsSerializer().serialize(self) + try SharedContentRemoveInviteesDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentAddLinkExpiryDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentRemoveInviteesDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedContentAddLinkExpiryDetails: \(error)" + return "Failed to generate description for SharedContentRemoveInviteesDetails: \(error)" } } } - - public class SharedContentAddLinkExpiryDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedContentAddLinkExpiryDetails) throws -> JSON { + public class SharedContentRemoveInviteesDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedContentRemoveInviteesDetails) throws -> JSON { let output = [ - "new_value": try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).serialize(value.newValue), + "invitees": try ArraySerializer(Serialization._StringSerializer).serialize(value.invitees), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedContentAddLinkExpiryDetails { + public func deserialize(_ json: JSON) throws -> SharedContentRemoveInviteesDetails { switch json { - case .dictionary(let dict): - let newValue = try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).deserialize(dict["new_value"] ?? .null) - return SharedContentAddLinkExpiryDetails(newValue: newValue) - default: - throw JSONSerializerError.deserializeError(type: SharedContentAddLinkExpiryDetails.self, json: json) + case .dictionary(let dict): + let invitees = try ArraySerializer(Serialization._StringSerializer).deserialize(dict["invitees"] ?? .null) + return SharedContentRemoveInviteesDetails(invitees: invitees) + default: + throw JSONSerializerError.deserializeError(type: SharedContentRemoveInviteesDetails.self, json: json) } } } - /// The SharedContentAddLinkExpiryType struct - public class SharedContentAddLinkExpiryType: CustomStringConvertible, JSONRepresentable { + /// The SharedContentRemoveInviteesType struct + public class SharedContentRemoveInviteesType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -50531,72 +63202,77 @@ public class TeamLog { } func json() throws -> JSON { - try SharedContentAddLinkExpiryTypeSerializer().serialize(self) + try SharedContentRemoveInviteesTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentAddLinkExpiryTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentRemoveInviteesTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedContentAddLinkExpiryType: \(error)" + return "Failed to generate description for SharedContentRemoveInviteesType: \(error)" } } } - - public class SharedContentAddLinkExpiryTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedContentAddLinkExpiryType) throws -> JSON { + public class SharedContentRemoveInviteesTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedContentRemoveInviteesType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedContentAddLinkExpiryType { + public func deserialize(_ json: JSON) throws -> SharedContentRemoveInviteesType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SharedContentAddLinkExpiryType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SharedContentAddLinkExpiryType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharedContentRemoveInviteesType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharedContentRemoveInviteesType.self, json: json) } } } - /// Added password to link for shared file/folder. - public class SharedContentAddLinkPasswordDetails: CustomStringConvertible, JSONRepresentable { + /// Removed link expiration date of shared file/folder. + public class SharedContentRemoveLinkExpiryDetails: CustomStringConvertible, JSONRepresentable { + /// Previous shared content link expiration date. Might be missing due to historical data gap. + public let previousValue: Date? + public init(previousValue: Date? = nil) { + self.previousValue = previousValue + } + func json() throws -> JSON { - try SharedContentAddLinkPasswordDetailsSerializer().serialize(self) + try SharedContentRemoveLinkExpiryDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentAddLinkPasswordDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentRemoveLinkExpiryDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedContentAddLinkPasswordDetails: \(error)" + return "Failed to generate description for SharedContentRemoveLinkExpiryDetails: \(error)" } } } - - public class SharedContentAddLinkPasswordDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedContentAddLinkPasswordDetails) throws -> JSON { - let output = [String: JSON]() + public class SharedContentRemoveLinkExpiryDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedContentRemoveLinkExpiryDetails) throws -> JSON { + let output = [ + "previous_value": try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).serialize(value.previousValue), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedContentAddLinkPasswordDetails { + public func deserialize(_ json: JSON) throws -> SharedContentRemoveLinkExpiryDetails { switch json { - case .dictionary: - return SharedContentAddLinkPasswordDetails() - default: - throw JSONSerializerError.deserializeError(type: SharedContentAddLinkPasswordDetails.self, json: json) + case .dictionary(let dict): + let previousValue = try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).deserialize(dict["previous_value"] ?? .null) + return SharedContentRemoveLinkExpiryDetails(previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: SharedContentRemoveLinkExpiryDetails.self, json: json) } } } - /// The SharedContentAddLinkPasswordType struct - public class SharedContentAddLinkPasswordType: CustomStringConvertible, JSONRepresentable { + /// The SharedContentRemoveLinkExpiryType struct + public class SharedContentRemoveLinkExpiryType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -50605,81 +63281,69 @@ public class TeamLog { } func json() throws -> JSON { - try SharedContentAddLinkPasswordTypeSerializer().serialize(self) + try SharedContentRemoveLinkExpiryTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentAddLinkPasswordTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentRemoveLinkExpiryTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedContentAddLinkPasswordType: \(error)" + return "Failed to generate description for SharedContentRemoveLinkExpiryType: \(error)" } } } - - public class SharedContentAddLinkPasswordTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedContentAddLinkPasswordType) throws -> JSON { + public class SharedContentRemoveLinkExpiryTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedContentRemoveLinkExpiryType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedContentAddLinkPasswordType { + public func deserialize(_ json: JSON) throws -> SharedContentRemoveLinkExpiryType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SharedContentAddLinkPasswordType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SharedContentAddLinkPasswordType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharedContentRemoveLinkExpiryType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharedContentRemoveLinkExpiryType.self, json: json) } } } - /// Added users and/or groups to shared file/folder. - public class SharedContentAddMemberDetails: CustomStringConvertible, JSONRepresentable { - /// Shared content access level. - public let sharedContentAccessLevel: Sharing.AccessLevel - public init(sharedContentAccessLevel: Sharing.AccessLevel) { - self.sharedContentAccessLevel = sharedContentAccessLevel - } + /// Removed link password of shared file/folder. + public class SharedContentRemoveLinkPasswordDetails: CustomStringConvertible, JSONRepresentable { func json() throws -> JSON { - try SharedContentAddMemberDetailsSerializer().serialize(self) + try SharedContentRemoveLinkPasswordDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentAddMemberDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentRemoveLinkPasswordDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedContentAddMemberDetails: \(error)" + return "Failed to generate description for SharedContentRemoveLinkPasswordDetails: \(error)" } } } - - public class SharedContentAddMemberDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedContentAddMemberDetails) throws -> JSON { - let output = [ - "shared_content_access_level": try Sharing.AccessLevelSerializer().serialize(value.sharedContentAccessLevel), - ] + public class SharedContentRemoveLinkPasswordDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedContentRemoveLinkPasswordDetails) throws -> JSON { + let output = [String: JSON]() return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedContentAddMemberDetails { + public func deserialize(_ json: JSON) throws -> SharedContentRemoveLinkPasswordDetails { switch json { - case .dictionary(let dict): - let sharedContentAccessLevel = try Sharing.AccessLevelSerializer().deserialize(dict["shared_content_access_level"] ?? .null) - return SharedContentAddMemberDetails(sharedContentAccessLevel: sharedContentAccessLevel) - default: - throw JSONSerializerError.deserializeError(type: SharedContentAddMemberDetails.self, json: json) + case .dictionary(_): + return SharedContentRemoveLinkPasswordDetails() + default: + throw JSONSerializerError.deserializeError(type: SharedContentRemoveLinkPasswordDetails.self, json: json) } } } - /// The SharedContentAddMemberType struct - public class SharedContentAddMemberType: CustomStringConvertible, JSONRepresentable { + /// The SharedContentRemoveLinkPasswordType struct + public class SharedContentRemoveLinkPasswordType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -50688,86 +63352,77 @@ public class TeamLog { } func json() throws -> JSON { - try SharedContentAddMemberTypeSerializer().serialize(self) + try SharedContentRemoveLinkPasswordTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentAddMemberTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentRemoveLinkPasswordTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedContentAddMemberType: \(error)" + return "Failed to generate description for SharedContentRemoveLinkPasswordType: \(error)" } } } - - public class SharedContentAddMemberTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedContentAddMemberType) throws -> JSON { + public class SharedContentRemoveLinkPasswordTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedContentRemoveLinkPasswordType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedContentAddMemberType { + public func deserialize(_ json: JSON) throws -> SharedContentRemoveLinkPasswordType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SharedContentAddMemberType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SharedContentAddMemberType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharedContentRemoveLinkPasswordType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharedContentRemoveLinkPasswordType.self, json: json) } } } - /// Changed whether members can download shared file/folder. - public class SharedContentChangeDownloadsPolicyDetails: CustomStringConvertible, JSONRepresentable { - /// New downloads policy. - public let newValue: TeamLog.DownloadPolicyType - /// Previous downloads policy. Might be missing due to historical data gap. - public let previousValue: TeamLog.DownloadPolicyType? - public init(newValue: TeamLog.DownloadPolicyType, previousValue: TeamLog.DownloadPolicyType? = nil) { - self.newValue = newValue - self.previousValue = previousValue + /// Removed user/group from shared file/folder. + public class SharedContentRemoveMemberDetails: CustomStringConvertible, JSONRepresentable { + /// Shared content access level. + public let sharedContentAccessLevel: Sharing.AccessLevel? + public init(sharedContentAccessLevel: Sharing.AccessLevel? = nil) { + self.sharedContentAccessLevel = sharedContentAccessLevel } func json() throws -> JSON { - try SharedContentChangeDownloadsPolicyDetailsSerializer().serialize(self) + try SharedContentRemoveMemberDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentChangeDownloadsPolicyDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentRemoveMemberDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedContentChangeDownloadsPolicyDetails: \(error)" + return "Failed to generate description for SharedContentRemoveMemberDetails: \(error)" } } } - - public class SharedContentChangeDownloadsPolicyDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedContentChangeDownloadsPolicyDetails) throws -> JSON { + public class SharedContentRemoveMemberDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedContentRemoveMemberDetails) throws -> JSON { let output = [ - "new_value": try TeamLog.DownloadPolicyTypeSerializer().serialize(value.newValue), - "previous_value": try NullableSerializer(TeamLog.DownloadPolicyTypeSerializer()).serialize(value.previousValue), + "shared_content_access_level": try NullableSerializer(Sharing.AccessLevelSerializer()).serialize(value.sharedContentAccessLevel), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedContentChangeDownloadsPolicyDetails { + public func deserialize(_ json: JSON) throws -> SharedContentRemoveMemberDetails { switch json { - case .dictionary(let dict): - let newValue = try TeamLog.DownloadPolicyTypeSerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try NullableSerializer(TeamLog.DownloadPolicyTypeSerializer()).deserialize(dict["previous_value"] ?? .null) - return SharedContentChangeDownloadsPolicyDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: SharedContentChangeDownloadsPolicyDetails.self, json: json) + case .dictionary(let dict): + let sharedContentAccessLevel = try NullableSerializer(Sharing.AccessLevelSerializer()).deserialize(dict["shared_content_access_level"] ?? .null) + return SharedContentRemoveMemberDetails(sharedContentAccessLevel: sharedContentAccessLevel) + default: + throw JSONSerializerError.deserializeError(type: SharedContentRemoveMemberDetails.self, json: json) } } } - /// The SharedContentChangeDownloadsPolicyType struct - public class SharedContentChangeDownloadsPolicyType: CustomStringConvertible, JSONRepresentable { + /// The SharedContentRemoveMemberType struct + public class SharedContentRemoveMemberType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -50776,92 +63431,78 @@ public class TeamLog { } func json() throws -> JSON { - try SharedContentChangeDownloadsPolicyTypeSerializer().serialize(self) + try SharedContentRemoveMemberTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentChangeDownloadsPolicyTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentRemoveMemberTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedContentChangeDownloadsPolicyType: \(error)" + return "Failed to generate description for SharedContentRemoveMemberType: \(error)" } } } - - public class SharedContentChangeDownloadsPolicyTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedContentChangeDownloadsPolicyType) throws -> JSON { + public class SharedContentRemoveMemberTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedContentRemoveMemberType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedContentChangeDownloadsPolicyType { + public func deserialize(_ json: JSON) throws -> SharedContentRemoveMemberType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SharedContentChangeDownloadsPolicyType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SharedContentChangeDownloadsPolicyType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharedContentRemoveMemberType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharedContentRemoveMemberType.self, json: json) } } } - /// Changed access type of invitee to shared file/folder before invite was accepted. - public class SharedContentChangeInviteeRoleDetails: CustomStringConvertible, JSONRepresentable { - /// Previous access level. Might be missing due to historical data gap. - public let previousAccessLevel: Sharing.AccessLevel? - /// New access level. - public let newAccessLevel: Sharing.AccessLevel - /// The invitee whose role was changed. - public let invitee: String - public init(newAccessLevel: Sharing.AccessLevel, invitee: String, previousAccessLevel: Sharing.AccessLevel? = nil) { - self.previousAccessLevel = previousAccessLevel - self.newAccessLevel = newAccessLevel - stringValidator(maxLength: 255)(invitee) - self.invitee = invitee + /// Requested access to shared file/folder. + public class SharedContentRequestAccessDetails: CustomStringConvertible, JSONRepresentable { + /// Shared content link. + public let sharedContentLink: String? + public init(sharedContentLink: String? = nil) { + nullableValidator(stringValidator())(sharedContentLink) + self.sharedContentLink = sharedContentLink } func json() throws -> JSON { - try SharedContentChangeInviteeRoleDetailsSerializer().serialize(self) + try SharedContentRequestAccessDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentChangeInviteeRoleDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentRequestAccessDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedContentChangeInviteeRoleDetails: \(error)" + return "Failed to generate description for SharedContentRequestAccessDetails: \(error)" } } } - - public class SharedContentChangeInviteeRoleDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedContentChangeInviteeRoleDetails) throws -> JSON { + public class SharedContentRequestAccessDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedContentRequestAccessDetails) throws -> JSON { let output = [ - "new_access_level": try Sharing.AccessLevelSerializer().serialize(value.newAccessLevel), - "invitee": try Serialization._StringSerializer.serialize(value.invitee), - "previous_access_level": try NullableSerializer(Sharing.AccessLevelSerializer()).serialize(value.previousAccessLevel), + "shared_content_link": try NullableSerializer(Serialization._StringSerializer).serialize(value.sharedContentLink), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedContentChangeInviteeRoleDetails { + public func deserialize(_ json: JSON) throws -> SharedContentRequestAccessDetails { switch json { - case .dictionary(let dict): - let newAccessLevel = try Sharing.AccessLevelSerializer().deserialize(dict["new_access_level"] ?? .null) - let invitee = try Serialization._StringSerializer.deserialize(dict["invitee"] ?? .null) - let previousAccessLevel = try NullableSerializer(Sharing.AccessLevelSerializer()).deserialize(dict["previous_access_level"] ?? .null) - return SharedContentChangeInviteeRoleDetails(newAccessLevel: newAccessLevel, invitee: invitee, previousAccessLevel: previousAccessLevel) - default: - throw JSONSerializerError.deserializeError(type: SharedContentChangeInviteeRoleDetails.self, json: json) + case .dictionary(let dict): + let sharedContentLink = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["shared_content_link"] ?? .null) + return SharedContentRequestAccessDetails(sharedContentLink: sharedContentLink) + default: + throw JSONSerializerError.deserializeError(type: SharedContentRequestAccessDetails.self, json: json) } } } - /// The SharedContentChangeInviteeRoleType struct - public class SharedContentChangeInviteeRoleType: CustomStringConvertible, JSONRepresentable { + /// The SharedContentRequestAccessType struct + public class SharedContentRequestAccessType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -50870,86 +63511,83 @@ public class TeamLog { } func json() throws -> JSON { - try SharedContentChangeInviteeRoleTypeSerializer().serialize(self) + try SharedContentRequestAccessTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentChangeInviteeRoleTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentRequestAccessTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedContentChangeInviteeRoleType: \(error)" + return "Failed to generate description for SharedContentRequestAccessType: \(error)" } } } - - public class SharedContentChangeInviteeRoleTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedContentChangeInviteeRoleType) throws -> JSON { + public class SharedContentRequestAccessTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedContentRequestAccessType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedContentChangeInviteeRoleType { + public func deserialize(_ json: JSON) throws -> SharedContentRequestAccessType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SharedContentChangeInviteeRoleType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SharedContentChangeInviteeRoleType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharedContentRequestAccessType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharedContentRequestAccessType.self, json: json) } } } - /// Changed link audience of shared file/folder. - public class SharedContentChangeLinkAudienceDetails: CustomStringConvertible, JSONRepresentable { - /// New link audience value. - public let newValue: Sharing.LinkAudience - /// Previous link audience value. - public let previousValue: Sharing.LinkAudience? - public init(newValue: Sharing.LinkAudience, previousValue: Sharing.LinkAudience? = nil) { - self.newValue = newValue - self.previousValue = previousValue + /// Restored shared file/folder invitees. + public class SharedContentRestoreInviteesDetails: CustomStringConvertible, JSONRepresentable { + /// Shared content access level. + public let sharedContentAccessLevel: Sharing.AccessLevel + /// A list of invitees. + public let invitees: Array + public init(sharedContentAccessLevel: Sharing.AccessLevel, invitees: Array) { + self.sharedContentAccessLevel = sharedContentAccessLevel + arrayValidator(itemValidator: stringValidator(maxLength: 255))(invitees) + self.invitees = invitees } func json() throws -> JSON { - try SharedContentChangeLinkAudienceDetailsSerializer().serialize(self) + try SharedContentRestoreInviteesDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentChangeLinkAudienceDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentRestoreInviteesDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedContentChangeLinkAudienceDetails: \(error)" + return "Failed to generate description for SharedContentRestoreInviteesDetails: \(error)" } } } - - public class SharedContentChangeLinkAudienceDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedContentChangeLinkAudienceDetails) throws -> JSON { + public class SharedContentRestoreInviteesDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedContentRestoreInviteesDetails) throws -> JSON { let output = [ - "new_value": try Sharing.LinkAudienceSerializer().serialize(value.newValue), - "previous_value": try NullableSerializer(Sharing.LinkAudienceSerializer()).serialize(value.previousValue), + "shared_content_access_level": try Sharing.AccessLevelSerializer().serialize(value.sharedContentAccessLevel), + "invitees": try ArraySerializer(Serialization._StringSerializer).serialize(value.invitees), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedContentChangeLinkAudienceDetails { + public func deserialize(_ json: JSON) throws -> SharedContentRestoreInviteesDetails { switch json { - case .dictionary(let dict): - let newValue = try Sharing.LinkAudienceSerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try NullableSerializer(Sharing.LinkAudienceSerializer()).deserialize(dict["previous_value"] ?? .null) - return SharedContentChangeLinkAudienceDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: SharedContentChangeLinkAudienceDetails.self, json: json) + case .dictionary(let dict): + let sharedContentAccessLevel = try Sharing.AccessLevelSerializer().deserialize(dict["shared_content_access_level"] ?? .null) + let invitees = try ArraySerializer(Serialization._StringSerializer).deserialize(dict["invitees"] ?? .null) + return SharedContentRestoreInviteesDetails(sharedContentAccessLevel: sharedContentAccessLevel, invitees: invitees) + default: + throw JSONSerializerError.deserializeError(type: SharedContentRestoreInviteesDetails.self, json: json) } } } - /// The SharedContentChangeLinkAudienceType struct - public class SharedContentChangeLinkAudienceType: CustomStringConvertible, JSONRepresentable { + /// The SharedContentRestoreInviteesType struct + public class SharedContentRestoreInviteesType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -50958,86 +63596,77 @@ public class TeamLog { } func json() throws -> JSON { - try SharedContentChangeLinkAudienceTypeSerializer().serialize(self) + try SharedContentRestoreInviteesTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentChangeLinkAudienceTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentRestoreInviteesTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedContentChangeLinkAudienceType: \(error)" + return "Failed to generate description for SharedContentRestoreInviteesType: \(error)" } } } - - public class SharedContentChangeLinkAudienceTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedContentChangeLinkAudienceType) throws -> JSON { + public class SharedContentRestoreInviteesTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedContentRestoreInviteesType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedContentChangeLinkAudienceType { + public func deserialize(_ json: JSON) throws -> SharedContentRestoreInviteesType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SharedContentChangeLinkAudienceType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SharedContentChangeLinkAudienceType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharedContentRestoreInviteesType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharedContentRestoreInviteesType.self, json: json) } } } - /// Changed link expiration of shared file/folder. - public class SharedContentChangeLinkExpiryDetails: CustomStringConvertible, JSONRepresentable { - /// New shared content link expiration date. Might be missing due to historical data gap. - public let newValue: Date? - /// Previous shared content link expiration date. Might be missing due to historical data gap. - public let previousValue: Date? - public init(newValue: Date? = nil, previousValue: Date? = nil) { - self.newValue = newValue - self.previousValue = previousValue + /// Restored users and/or groups to membership of shared file/folder. + public class SharedContentRestoreMemberDetails: CustomStringConvertible, JSONRepresentable { + /// Shared content access level. + public let sharedContentAccessLevel: Sharing.AccessLevel + public init(sharedContentAccessLevel: Sharing.AccessLevel) { + self.sharedContentAccessLevel = sharedContentAccessLevel } func json() throws -> JSON { - try SharedContentChangeLinkExpiryDetailsSerializer().serialize(self) + try SharedContentRestoreMemberDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentChangeLinkExpiryDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentRestoreMemberDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedContentChangeLinkExpiryDetails: \(error)" + return "Failed to generate description for SharedContentRestoreMemberDetails: \(error)" } } } - - public class SharedContentChangeLinkExpiryDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedContentChangeLinkExpiryDetails) throws -> JSON { + public class SharedContentRestoreMemberDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedContentRestoreMemberDetails) throws -> JSON { let output = [ - "new_value": try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).serialize(value.newValue), - "previous_value": try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).serialize(value.previousValue), + "shared_content_access_level": try Sharing.AccessLevelSerializer().serialize(value.sharedContentAccessLevel), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedContentChangeLinkExpiryDetails { + public func deserialize(_ json: JSON) throws -> SharedContentRestoreMemberDetails { switch json { - case .dictionary(let dict): - let newValue = try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).deserialize(dict["new_value"] ?? .null) - let previousValue = try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).deserialize(dict["previous_value"] ?? .null) - return SharedContentChangeLinkExpiryDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: SharedContentChangeLinkExpiryDetails.self, json: json) + case .dictionary(let dict): + let sharedContentAccessLevel = try Sharing.AccessLevelSerializer().deserialize(dict["shared_content_access_level"] ?? .null) + return SharedContentRestoreMemberDetails(sharedContentAccessLevel: sharedContentAccessLevel) + default: + throw JSONSerializerError.deserializeError(type: SharedContentRestoreMemberDetails.self, json: json) } } } - /// The SharedContentChangeLinkExpiryType struct - public class SharedContentChangeLinkExpiryType: CustomStringConvertible, JSONRepresentable { + /// The SharedContentRestoreMemberType struct + public class SharedContentRestoreMemberType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -51046,72 +63675,69 @@ public class TeamLog { } func json() throws -> JSON { - try SharedContentChangeLinkExpiryTypeSerializer().serialize(self) + try SharedContentRestoreMemberTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentChangeLinkExpiryTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentRestoreMemberTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedContentChangeLinkExpiryType: \(error)" + return "Failed to generate description for SharedContentRestoreMemberType: \(error)" } } } - - public class SharedContentChangeLinkExpiryTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedContentChangeLinkExpiryType) throws -> JSON { + public class SharedContentRestoreMemberTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedContentRestoreMemberType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedContentChangeLinkExpiryType { + public func deserialize(_ json: JSON) throws -> SharedContentRestoreMemberType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SharedContentChangeLinkExpiryType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SharedContentChangeLinkExpiryType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharedContentRestoreMemberType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharedContentRestoreMemberType.self, json: json) } } } - /// Changed link password of shared file/folder. - public class SharedContentChangeLinkPasswordDetails: CustomStringConvertible, JSONRepresentable { + /// Unshared file/folder by clearing membership. + public class SharedContentUnshareDetails: CustomStringConvertible, JSONRepresentable { + func json() throws -> JSON { - try SharedContentChangeLinkPasswordDetailsSerializer().serialize(self) + try SharedContentUnshareDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentChangeLinkPasswordDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentUnshareDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedContentChangeLinkPasswordDetails: \(error)" + return "Failed to generate description for SharedContentUnshareDetails: \(error)" } } } - - public class SharedContentChangeLinkPasswordDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedContentChangeLinkPasswordDetails) throws -> JSON { + public class SharedContentUnshareDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedContentUnshareDetails) throws -> JSON { let output = [String: JSON]() return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedContentChangeLinkPasswordDetails { + public func deserialize(_ json: JSON) throws -> SharedContentUnshareDetails { switch json { - case .dictionary: - return SharedContentChangeLinkPasswordDetails() - default: - throw JSONSerializerError.deserializeError(type: SharedContentChangeLinkPasswordDetails.self, json: json) + case .dictionary(_): + return SharedContentUnshareDetails() + default: + throw JSONSerializerError.deserializeError(type: SharedContentUnshareDetails.self, json: json) } } } - /// The SharedContentChangeLinkPasswordType struct - public class SharedContentChangeLinkPasswordType: CustomStringConvertible, JSONRepresentable { + /// The SharedContentUnshareType struct + public class SharedContentUnshareType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -51120,86 +63746,88 @@ public class TeamLog { } func json() throws -> JSON { - try SharedContentChangeLinkPasswordTypeSerializer().serialize(self) + try SharedContentUnshareTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentChangeLinkPasswordTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentUnshareTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedContentChangeLinkPasswordType: \(error)" + return "Failed to generate description for SharedContentUnshareType: \(error)" } } } - - public class SharedContentChangeLinkPasswordTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedContentChangeLinkPasswordType) throws -> JSON { + public class SharedContentUnshareTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedContentUnshareType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedContentChangeLinkPasswordType { + public func deserialize(_ json: JSON) throws -> SharedContentUnshareType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SharedContentChangeLinkPasswordType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SharedContentChangeLinkPasswordType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharedContentUnshareType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharedContentUnshareType.self, json: json) } } } - /// Changed access type of shared file/folder member. - public class SharedContentChangeMemberRoleDetails: CustomStringConvertible, JSONRepresentable { - /// Previous access level. Might be missing due to historical data gap. - public let previousAccessLevel: Sharing.AccessLevel? - /// New access level. - public let newAccessLevel: Sharing.AccessLevel - public init(newAccessLevel: Sharing.AccessLevel, previousAccessLevel: Sharing.AccessLevel? = nil) { - self.previousAccessLevel = previousAccessLevel - self.newAccessLevel = newAccessLevel + /// Previewed shared file/folder. + public class SharedContentViewDetails: CustomStringConvertible, JSONRepresentable { + /// Shared content link. + public let sharedContentLink: String + /// The shared content owner. + public let sharedContentOwner: TeamLog.UserLogInfo? + /// Shared content access level. + public let sharedContentAccessLevel: Sharing.AccessLevel + public init(sharedContentLink: String, sharedContentAccessLevel: Sharing.AccessLevel, sharedContentOwner: TeamLog.UserLogInfo? = nil) { + stringValidator()(sharedContentLink) + self.sharedContentLink = sharedContentLink + self.sharedContentOwner = sharedContentOwner + self.sharedContentAccessLevel = sharedContentAccessLevel } func json() throws -> JSON { - try SharedContentChangeMemberRoleDetailsSerializer().serialize(self) + try SharedContentViewDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentChangeMemberRoleDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentViewDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedContentChangeMemberRoleDetails: \(error)" + return "Failed to generate description for SharedContentViewDetails: \(error)" } } } - - public class SharedContentChangeMemberRoleDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedContentChangeMemberRoleDetails) throws -> JSON { + public class SharedContentViewDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedContentViewDetails) throws -> JSON { let output = [ - "new_access_level": try Sharing.AccessLevelSerializer().serialize(value.newAccessLevel), - "previous_access_level": try NullableSerializer(Sharing.AccessLevelSerializer()).serialize(value.previousAccessLevel), + "shared_content_link": try Serialization._StringSerializer.serialize(value.sharedContentLink), + "shared_content_access_level": try Sharing.AccessLevelSerializer().serialize(value.sharedContentAccessLevel), + "shared_content_owner": try NullableSerializer(TeamLog.UserLogInfoSerializer()).serialize(value.sharedContentOwner), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedContentChangeMemberRoleDetails { + public func deserialize(_ json: JSON) throws -> SharedContentViewDetails { switch json { - case .dictionary(let dict): - let newAccessLevel = try Sharing.AccessLevelSerializer().deserialize(dict["new_access_level"] ?? .null) - let previousAccessLevel = try NullableSerializer(Sharing.AccessLevelSerializer()).deserialize(dict["previous_access_level"] ?? .null) - return SharedContentChangeMemberRoleDetails(newAccessLevel: newAccessLevel, previousAccessLevel: previousAccessLevel) - default: - throw JSONSerializerError.deserializeError(type: SharedContentChangeMemberRoleDetails.self, json: json) + case .dictionary(let dict): + let sharedContentLink = try Serialization._StringSerializer.deserialize(dict["shared_content_link"] ?? .null) + let sharedContentAccessLevel = try Sharing.AccessLevelSerializer().deserialize(dict["shared_content_access_level"] ?? .null) + let sharedContentOwner = try NullableSerializer(TeamLog.UserLogInfoSerializer()).deserialize(dict["shared_content_owner"] ?? .null) + return SharedContentViewDetails(sharedContentLink: sharedContentLink, sharedContentAccessLevel: sharedContentAccessLevel, sharedContentOwner: sharedContentOwner) + default: + throw JSONSerializerError.deserializeError(type: SharedContentViewDetails.self, json: json) } } } - /// The SharedContentChangeMemberRoleType struct - public class SharedContentChangeMemberRoleType: CustomStringConvertible, JSONRepresentable { + /// The SharedContentViewType struct + public class SharedContentViewType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -51208,86 +63836,82 @@ public class TeamLog { } func json() throws -> JSON { - try SharedContentChangeMemberRoleTypeSerializer().serialize(self) + try SharedContentViewTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentChangeMemberRoleTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentViewTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedContentChangeMemberRoleType: \(error)" + return "Failed to generate description for SharedContentViewType: \(error)" } } } - - public class SharedContentChangeMemberRoleTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedContentChangeMemberRoleType) throws -> JSON { + public class SharedContentViewTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedContentViewType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedContentChangeMemberRoleType { + public func deserialize(_ json: JSON) throws -> SharedContentViewType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SharedContentChangeMemberRoleType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SharedContentChangeMemberRoleType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharedContentViewType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharedContentViewType.self, json: json) } } } - /// Changed whether members can see who viewed shared file/folder. - public class SharedContentChangeViewerInfoPolicyDetails: CustomStringConvertible, JSONRepresentable { - /// New viewer info policy. - public let newValue: Sharing.ViewerInfoPolicy - /// Previous view info policy. - public let previousValue: Sharing.ViewerInfoPolicy? - public init(newValue: Sharing.ViewerInfoPolicy, previousValue: Sharing.ViewerInfoPolicy? = nil) { + /// Changed who can access shared folder via link. + public class SharedFolderChangeLinkPolicyDetails: CustomStringConvertible, JSONRepresentable { + /// New shared folder link policy. + public let newValue: Sharing.SharedLinkPolicy + /// Previous shared folder link policy. Might be missing due to historical data gap. + public let previousValue: Sharing.SharedLinkPolicy? + public init(newValue: Sharing.SharedLinkPolicy, previousValue: Sharing.SharedLinkPolicy? = nil) { self.newValue = newValue self.previousValue = previousValue } func json() throws -> JSON { - try SharedContentChangeViewerInfoPolicyDetailsSerializer().serialize(self) + try SharedFolderChangeLinkPolicyDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentChangeViewerInfoPolicyDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedFolderChangeLinkPolicyDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedContentChangeViewerInfoPolicyDetails: \(error)" + return "Failed to generate description for SharedFolderChangeLinkPolicyDetails: \(error)" } } } - - public class SharedContentChangeViewerInfoPolicyDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedContentChangeViewerInfoPolicyDetails) throws -> JSON { + public class SharedFolderChangeLinkPolicyDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedFolderChangeLinkPolicyDetails) throws -> JSON { let output = [ - "new_value": try Sharing.ViewerInfoPolicySerializer().serialize(value.newValue), - "previous_value": try NullableSerializer(Sharing.ViewerInfoPolicySerializer()).serialize(value.previousValue), + "new_value": try Sharing.SharedLinkPolicySerializer().serialize(value.newValue), + "previous_value": try NullableSerializer(Sharing.SharedLinkPolicySerializer()).serialize(value.previousValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedContentChangeViewerInfoPolicyDetails { + public func deserialize(_ json: JSON) throws -> SharedFolderChangeLinkPolicyDetails { switch json { - case .dictionary(let dict): - let newValue = try Sharing.ViewerInfoPolicySerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try NullableSerializer(Sharing.ViewerInfoPolicySerializer()).deserialize(dict["previous_value"] ?? .null) - return SharedContentChangeViewerInfoPolicyDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: SharedContentChangeViewerInfoPolicyDetails.self, json: json) + case .dictionary(let dict): + let newValue = try Sharing.SharedLinkPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try NullableSerializer(Sharing.SharedLinkPolicySerializer()).deserialize(dict["previous_value"] ?? .null) + return SharedFolderChangeLinkPolicyDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: SharedFolderChangeLinkPolicyDetails.self, json: json) } } } - /// The SharedContentChangeViewerInfoPolicyType struct - public class SharedContentChangeViewerInfoPolicyType: CustomStringConvertible, JSONRepresentable { + /// The SharedFolderChangeLinkPolicyType struct + public class SharedFolderChangeLinkPolicyType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -51296,82 +63920,82 @@ public class TeamLog { } func json() throws -> JSON { - try SharedContentChangeViewerInfoPolicyTypeSerializer().serialize(self) + try SharedFolderChangeLinkPolicyTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentChangeViewerInfoPolicyTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedFolderChangeLinkPolicyTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedContentChangeViewerInfoPolicyType: \(error)" + return "Failed to generate description for SharedFolderChangeLinkPolicyType: \(error)" } } } - - public class SharedContentChangeViewerInfoPolicyTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedContentChangeViewerInfoPolicyType) throws -> JSON { + public class SharedFolderChangeLinkPolicyTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedFolderChangeLinkPolicyType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedContentChangeViewerInfoPolicyType { + public func deserialize(_ json: JSON) throws -> SharedFolderChangeLinkPolicyType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SharedContentChangeViewerInfoPolicyType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SharedContentChangeViewerInfoPolicyType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharedFolderChangeLinkPolicyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharedFolderChangeLinkPolicyType.self, json: json) } } } - /// Acquired membership of shared file/folder by accepting invite. - public class SharedContentClaimInvitationDetails: CustomStringConvertible, JSONRepresentable { - /// Shared content link. - public let sharedContentLink: String? - public init(sharedContentLink: String? = nil) { - nullableValidator(stringValidator())(sharedContentLink) - self.sharedContentLink = sharedContentLink + /// Changed whether shared folder inherits members from parent folder. + public class SharedFolderChangeMembersInheritancePolicyDetails: CustomStringConvertible, JSONRepresentable { + /// New member inheritance policy. + public let newValue: TeamLog.SharedFolderMembersInheritancePolicy + /// Previous member inheritance policy. Might be missing due to historical data gap. + public let previousValue: TeamLog.SharedFolderMembersInheritancePolicy? + public init(newValue: TeamLog.SharedFolderMembersInheritancePolicy, previousValue: TeamLog.SharedFolderMembersInheritancePolicy? = nil) { + self.newValue = newValue + self.previousValue = previousValue } func json() throws -> JSON { - try SharedContentClaimInvitationDetailsSerializer().serialize(self) + try SharedFolderChangeMembersInheritancePolicyDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentClaimInvitationDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedFolderChangeMembersInheritancePolicyDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedContentClaimInvitationDetails: \(error)" + return "Failed to generate description for SharedFolderChangeMembersInheritancePolicyDetails: \(error)" } } } - - public class SharedContentClaimInvitationDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedContentClaimInvitationDetails) throws -> JSON { + public class SharedFolderChangeMembersInheritancePolicyDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedFolderChangeMembersInheritancePolicyDetails) throws -> JSON { let output = [ - "shared_content_link": try NullableSerializer(Serialization._StringSerializer).serialize(value.sharedContentLink), + "new_value": try TeamLog.SharedFolderMembersInheritancePolicySerializer().serialize(value.newValue), + "previous_value": try NullableSerializer(TeamLog.SharedFolderMembersInheritancePolicySerializer()).serialize(value.previousValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedContentClaimInvitationDetails { + public func deserialize(_ json: JSON) throws -> SharedFolderChangeMembersInheritancePolicyDetails { switch json { - case .dictionary(let dict): - let sharedContentLink = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["shared_content_link"] ?? .null) - return SharedContentClaimInvitationDetails(sharedContentLink: sharedContentLink) - default: - throw JSONSerializerError.deserializeError(type: SharedContentClaimInvitationDetails.self, json: json) + case .dictionary(let dict): + let newValue = try TeamLog.SharedFolderMembersInheritancePolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try NullableSerializer(TeamLog.SharedFolderMembersInheritancePolicySerializer()).deserialize(dict["previous_value"] ?? .null) + return SharedFolderChangeMembersInheritancePolicyDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: SharedFolderChangeMembersInheritancePolicyDetails.self, json: json) } } } - /// The SharedContentClaimInvitationType struct - public class SharedContentClaimInvitationType: CustomStringConvertible, JSONRepresentable { + /// The SharedFolderChangeMembersInheritancePolicyType struct + public class SharedFolderChangeMembersInheritancePolicyType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -51380,108 +64004,82 @@ public class TeamLog { } func json() throws -> JSON { - try SharedContentClaimInvitationTypeSerializer().serialize(self) + try SharedFolderChangeMembersInheritancePolicyTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentClaimInvitationTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedFolderChangeMembersInheritancePolicyTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedContentClaimInvitationType: \(error)" + return "Failed to generate description for SharedFolderChangeMembersInheritancePolicyType: \(error)" } } } - - public class SharedContentClaimInvitationTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedContentClaimInvitationType) throws -> JSON { + public class SharedFolderChangeMembersInheritancePolicyTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedFolderChangeMembersInheritancePolicyType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedContentClaimInvitationType { + public func deserialize(_ json: JSON) throws -> SharedFolderChangeMembersInheritancePolicyType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SharedContentClaimInvitationType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SharedContentClaimInvitationType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharedFolderChangeMembersInheritancePolicyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharedFolderChangeMembersInheritancePolicyType.self, json: json) } } } - /// Copied shared file/folder to own Dropbox. - public class SharedContentCopyDetails: CustomStringConvertible, JSONRepresentable { - /// Shared content link. - public let sharedContentLink: String - /// The shared content owner. - public let sharedContentOwner: TeamLog.UserLogInfo? - /// Shared content access level. - public let sharedContentAccessLevel: Sharing.AccessLevel - /// The path where the member saved the content. - public let destinationPath: String - public init( - sharedContentLink: String, - sharedContentAccessLevel: Sharing.AccessLevel, - destinationPath: String, - sharedContentOwner: TeamLog.UserLogInfo? = nil - ) { - stringValidator()(sharedContentLink) - self.sharedContentLink = sharedContentLink - self.sharedContentOwner = sharedContentOwner - self.sharedContentAccessLevel = sharedContentAccessLevel - stringValidator()(destinationPath) - self.destinationPath = destinationPath + /// Changed who can add/remove members of shared folder. + public class SharedFolderChangeMembersManagementPolicyDetails: CustomStringConvertible, JSONRepresentable { + /// New members management policy. + public let newValue: Sharing.AclUpdatePolicy + /// Previous members management policy. Might be missing due to historical data gap. + public let previousValue: Sharing.AclUpdatePolicy? + public init(newValue: Sharing.AclUpdatePolicy, previousValue: Sharing.AclUpdatePolicy? = nil) { + self.newValue = newValue + self.previousValue = previousValue } func json() throws -> JSON { - try SharedContentCopyDetailsSerializer().serialize(self) + try SharedFolderChangeMembersManagementPolicyDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentCopyDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedFolderChangeMembersManagementPolicyDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedContentCopyDetails: \(error)" + return "Failed to generate description for SharedFolderChangeMembersManagementPolicyDetails: \(error)" } } } - - public class SharedContentCopyDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedContentCopyDetails) throws -> JSON { + public class SharedFolderChangeMembersManagementPolicyDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedFolderChangeMembersManagementPolicyDetails) throws -> JSON { let output = [ - "shared_content_link": try Serialization._StringSerializer.serialize(value.sharedContentLink), - "shared_content_access_level": try Sharing.AccessLevelSerializer().serialize(value.sharedContentAccessLevel), - "destination_path": try Serialization._StringSerializer.serialize(value.destinationPath), - "shared_content_owner": try NullableSerializer(TeamLog.UserLogInfoSerializer()).serialize(value.sharedContentOwner), + "new_value": try Sharing.AclUpdatePolicySerializer().serialize(value.newValue), + "previous_value": try NullableSerializer(Sharing.AclUpdatePolicySerializer()).serialize(value.previousValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedContentCopyDetails { + public func deserialize(_ json: JSON) throws -> SharedFolderChangeMembersManagementPolicyDetails { switch json { - case .dictionary(let dict): - let sharedContentLink = try Serialization._StringSerializer.deserialize(dict["shared_content_link"] ?? .null) - let sharedContentAccessLevel = try Sharing.AccessLevelSerializer().deserialize(dict["shared_content_access_level"] ?? .null) - let destinationPath = try Serialization._StringSerializer.deserialize(dict["destination_path"] ?? .null) - let sharedContentOwner = try NullableSerializer(TeamLog.UserLogInfoSerializer()).deserialize(dict["shared_content_owner"] ?? .null) - return SharedContentCopyDetails( - sharedContentLink: sharedContentLink, - sharedContentAccessLevel: sharedContentAccessLevel, - destinationPath: destinationPath, - sharedContentOwner: sharedContentOwner - ) - default: - throw JSONSerializerError.deserializeError(type: SharedContentCopyDetails.self, json: json) + case .dictionary(let dict): + let newValue = try Sharing.AclUpdatePolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try NullableSerializer(Sharing.AclUpdatePolicySerializer()).deserialize(dict["previous_value"] ?? .null) + return SharedFolderChangeMembersManagementPolicyDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: SharedFolderChangeMembersManagementPolicyDetails.self, json: json) } } } - /// The SharedContentCopyType struct - public class SharedContentCopyType: CustomStringConvertible, JSONRepresentable { + /// The SharedFolderChangeMembersManagementPolicyType struct + public class SharedFolderChangeMembersManagementPolicyType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -51490,96 +64088,82 @@ public class TeamLog { } func json() throws -> JSON { - try SharedContentCopyTypeSerializer().serialize(self) + try SharedFolderChangeMembersManagementPolicyTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentCopyTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedFolderChangeMembersManagementPolicyTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedContentCopyType: \(error)" + return "Failed to generate description for SharedFolderChangeMembersManagementPolicyType: \(error)" } } } - - public class SharedContentCopyTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedContentCopyType) throws -> JSON { + public class SharedFolderChangeMembersManagementPolicyTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedFolderChangeMembersManagementPolicyType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedContentCopyType { + public func deserialize(_ json: JSON) throws -> SharedFolderChangeMembersManagementPolicyType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SharedContentCopyType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SharedContentCopyType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharedFolderChangeMembersManagementPolicyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharedFolderChangeMembersManagementPolicyType.self, json: json) } } } - /// Downloaded shared file/folder. - public class SharedContentDownloadDetails: CustomStringConvertible, JSONRepresentable { - /// Shared content link. - public let sharedContentLink: String - /// The shared content owner. - public let sharedContentOwner: TeamLog.UserLogInfo? - /// Shared content access level. - public let sharedContentAccessLevel: Sharing.AccessLevel - public init(sharedContentLink: String, sharedContentAccessLevel: Sharing.AccessLevel, sharedContentOwner: TeamLog.UserLogInfo? = nil) { - stringValidator()(sharedContentLink) - self.sharedContentLink = sharedContentLink - self.sharedContentOwner = sharedContentOwner - self.sharedContentAccessLevel = sharedContentAccessLevel + /// Changed who can become member of shared folder. + public class SharedFolderChangeMembersPolicyDetails: CustomStringConvertible, JSONRepresentable { + /// New external invite policy. + public let newValue: Sharing.MemberPolicy + /// Previous external invite policy. Might be missing due to historical data gap. + public let previousValue: Sharing.MemberPolicy? + public init(newValue: Sharing.MemberPolicy, previousValue: Sharing.MemberPolicy? = nil) { + self.newValue = newValue + self.previousValue = previousValue } func json() throws -> JSON { - try SharedContentDownloadDetailsSerializer().serialize(self) + try SharedFolderChangeMembersPolicyDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentDownloadDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedFolderChangeMembersPolicyDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedContentDownloadDetails: \(error)" + return "Failed to generate description for SharedFolderChangeMembersPolicyDetails: \(error)" } } } - - public class SharedContentDownloadDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedContentDownloadDetails) throws -> JSON { + public class SharedFolderChangeMembersPolicyDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedFolderChangeMembersPolicyDetails) throws -> JSON { let output = [ - "shared_content_link": try Serialization._StringSerializer.serialize(value.sharedContentLink), - "shared_content_access_level": try Sharing.AccessLevelSerializer().serialize(value.sharedContentAccessLevel), - "shared_content_owner": try NullableSerializer(TeamLog.UserLogInfoSerializer()).serialize(value.sharedContentOwner), + "new_value": try Sharing.MemberPolicySerializer().serialize(value.newValue), + "previous_value": try NullableSerializer(Sharing.MemberPolicySerializer()).serialize(value.previousValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedContentDownloadDetails { + public func deserialize(_ json: JSON) throws -> SharedFolderChangeMembersPolicyDetails { switch json { - case .dictionary(let dict): - let sharedContentLink = try Serialization._StringSerializer.deserialize(dict["shared_content_link"] ?? .null) - let sharedContentAccessLevel = try Sharing.AccessLevelSerializer().deserialize(dict["shared_content_access_level"] ?? .null) - let sharedContentOwner = try NullableSerializer(TeamLog.UserLogInfoSerializer()).deserialize(dict["shared_content_owner"] ?? .null) - return SharedContentDownloadDetails( - sharedContentLink: sharedContentLink, - sharedContentAccessLevel: sharedContentAccessLevel, - sharedContentOwner: sharedContentOwner - ) - default: - throw JSONSerializerError.deserializeError(type: SharedContentDownloadDetails.self, json: json) + case .dictionary(let dict): + let newValue = try Sharing.MemberPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try NullableSerializer(Sharing.MemberPolicySerializer()).deserialize(dict["previous_value"] ?? .null) + return SharedFolderChangeMembersPolicyDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: SharedFolderChangeMembersPolicyDetails.self, json: json) } } } - /// The SharedContentDownloadType struct - public class SharedContentDownloadType: CustomStringConvertible, JSONRepresentable { + /// The SharedFolderChangeMembersPolicyType struct + public class SharedFolderChangeMembersPolicyType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -51588,72 +64172,78 @@ public class TeamLog { } func json() throws -> JSON { - try SharedContentDownloadTypeSerializer().serialize(self) + try SharedFolderChangeMembersPolicyTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentDownloadTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedFolderChangeMembersPolicyTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedContentDownloadType: \(error)" + return "Failed to generate description for SharedFolderChangeMembersPolicyType: \(error)" } } } - - public class SharedContentDownloadTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedContentDownloadType) throws -> JSON { + public class SharedFolderChangeMembersPolicyTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedFolderChangeMembersPolicyType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedContentDownloadType { + public func deserialize(_ json: JSON) throws -> SharedFolderChangeMembersPolicyType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SharedContentDownloadType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SharedContentDownloadType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharedFolderChangeMembersPolicyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharedFolderChangeMembersPolicyType.self, json: json) } } } - /// Left shared file/folder. - public class SharedContentRelinquishMembershipDetails: CustomStringConvertible, JSONRepresentable { + /// Created shared folder. + public class SharedFolderCreateDetails: CustomStringConvertible, JSONRepresentable { + /// Target namespace ID. + public let targetNsId: String? + public init(targetNsId: String? = nil) { + nullableValidator(stringValidator())(targetNsId) + self.targetNsId = targetNsId + } + func json() throws -> JSON { - try SharedContentRelinquishMembershipDetailsSerializer().serialize(self) + try SharedFolderCreateDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentRelinquishMembershipDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedFolderCreateDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedContentRelinquishMembershipDetails: \(error)" + return "Failed to generate description for SharedFolderCreateDetails: \(error)" } } } - - public class SharedContentRelinquishMembershipDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedContentRelinquishMembershipDetails) throws -> JSON { - let output = [String: JSON]() + public class SharedFolderCreateDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedFolderCreateDetails) throws -> JSON { + let output = [ + "target_ns_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.targetNsId), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedContentRelinquishMembershipDetails { + public func deserialize(_ json: JSON) throws -> SharedFolderCreateDetails { switch json { - case .dictionary: - return SharedContentRelinquishMembershipDetails() - default: - throw JSONSerializerError.deserializeError(type: SharedContentRelinquishMembershipDetails.self, json: json) + case .dictionary(let dict): + let targetNsId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["target_ns_id"] ?? .null) + return SharedFolderCreateDetails(targetNsId: targetNsId) + default: + throw JSONSerializerError.deserializeError(type: SharedFolderCreateDetails.self, json: json) } } } - /// The SharedContentRelinquishMembershipType struct - public class SharedContentRelinquishMembershipType: CustomStringConvertible, JSONRepresentable { + /// The SharedFolderCreateType struct + public class SharedFolderCreateType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -51662,82 +64252,69 @@ public class TeamLog { } func json() throws -> JSON { - try SharedContentRelinquishMembershipTypeSerializer().serialize(self) + try SharedFolderCreateTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentRelinquishMembershipTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedFolderCreateTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedContentRelinquishMembershipType: \(error)" + return "Failed to generate description for SharedFolderCreateType: \(error)" } } } - - public class SharedContentRelinquishMembershipTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedContentRelinquishMembershipType) throws -> JSON { + public class SharedFolderCreateTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedFolderCreateType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedContentRelinquishMembershipType { + public func deserialize(_ json: JSON) throws -> SharedFolderCreateType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SharedContentRelinquishMembershipType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SharedContentRelinquishMembershipType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharedFolderCreateType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharedFolderCreateType.self, json: json) } } } - /// Removed invitee from shared file/folder before invite was accepted. - public class SharedContentRemoveInviteesDetails: CustomStringConvertible, JSONRepresentable { - /// A list of invitees. - public let invitees: [String] - public init(invitees: [String]) { - arrayValidator(itemValidator: stringValidator(maxLength: 255))(invitees) - self.invitees = invitees - } + /// Declined team member's invite to shared folder. + public class SharedFolderDeclineInvitationDetails: CustomStringConvertible, JSONRepresentable { func json() throws -> JSON { - try SharedContentRemoveInviteesDetailsSerializer().serialize(self) + try SharedFolderDeclineInvitationDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentRemoveInviteesDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedFolderDeclineInvitationDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedContentRemoveInviteesDetails: \(error)" + return "Failed to generate description for SharedFolderDeclineInvitationDetails: \(error)" } } } - - public class SharedContentRemoveInviteesDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedContentRemoveInviteesDetails) throws -> JSON { - let output = [ - "invitees": try ArraySerializer(Serialization._StringSerializer).serialize(value.invitees), - ] + public class SharedFolderDeclineInvitationDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedFolderDeclineInvitationDetails) throws -> JSON { + let output = [String: JSON]() return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedContentRemoveInviteesDetails { + public func deserialize(_ json: JSON) throws -> SharedFolderDeclineInvitationDetails { switch json { - case .dictionary(let dict): - let invitees = try ArraySerializer(Serialization._StringSerializer).deserialize(dict["invitees"] ?? .null) - return SharedContentRemoveInviteesDetails(invitees: invitees) - default: - throw JSONSerializerError.deserializeError(type: SharedContentRemoveInviteesDetails.self, json: json) + case .dictionary(_): + return SharedFolderDeclineInvitationDetails() + default: + throw JSONSerializerError.deserializeError(type: SharedFolderDeclineInvitationDetails.self, json: json) } } } - /// The SharedContentRemoveInviteesType struct - public class SharedContentRemoveInviteesType: CustomStringConvertible, JSONRepresentable { + /// The SharedFolderDeclineInvitationType struct + public class SharedFolderDeclineInvitationType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -51746,81 +64323,128 @@ public class TeamLog { } func json() throws -> JSON { - try SharedContentRemoveInviteesTypeSerializer().serialize(self) + try SharedFolderDeclineInvitationTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentRemoveInviteesTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedFolderDeclineInvitationTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedContentRemoveInviteesType: \(error)" + return "Failed to generate description for SharedFolderDeclineInvitationType: \(error)" } } } - - public class SharedContentRemoveInviteesTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedContentRemoveInviteesType) throws -> JSON { + public class SharedFolderDeclineInvitationTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedFolderDeclineInvitationType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedContentRemoveInviteesType { + public func deserialize(_ json: JSON) throws -> SharedFolderDeclineInvitationType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SharedContentRemoveInviteesType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SharedContentRemoveInviteesType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharedFolderDeclineInvitationType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharedFolderDeclineInvitationType.self, json: json) } } } - /// Removed link expiration date of shared file/folder. - public class SharedContentRemoveLinkExpiryDetails: CustomStringConvertible, JSONRepresentable { - /// Previous shared content link expiration date. Might be missing due to historical data gap. - public let previousValue: Date? - public init(previousValue: Date? = nil) { - self.previousValue = previousValue + /// Specifies if a shared folder inherits its members from the parent folder. + public enum SharedFolderMembersInheritancePolicy: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case dontInheritMembers + /// An unspecified error. + case inheritMembers + /// An unspecified error. + case other + + func json() throws -> JSON { + try SharedFolderMembersInheritancePolicySerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try SharedFolderMembersInheritancePolicySerializer().serialize(self)))" + } catch { + return "Failed to generate description for SharedFolderMembersInheritancePolicy: \(error)" + } + } + } + public class SharedFolderMembersInheritancePolicySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedFolderMembersInheritancePolicy) throws -> JSON { + switch value { + case .dontInheritMembers: + var d = [String: JSON]() + d[".tag"] = .str("dont_inherit_members") + return .dictionary(d) + case .inheritMembers: + var d = [String: JSON]() + d[".tag"] = .str("inherit_members") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> SharedFolderMembersInheritancePolicy { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "dont_inherit_members": + return SharedFolderMembersInheritancePolicy.dontInheritMembers + case "inherit_members": + return SharedFolderMembersInheritancePolicy.inheritMembers + case "other": + return SharedFolderMembersInheritancePolicy.other + default: + return SharedFolderMembersInheritancePolicy.other + } + default: + throw JSONSerializerError.deserializeError(type: SharedFolderMembersInheritancePolicy.self, json: json) + } } + } + + /// Added shared folder to own Dropbox. + public class SharedFolderMountDetails: CustomStringConvertible, JSONRepresentable { func json() throws -> JSON { - try SharedContentRemoveLinkExpiryDetailsSerializer().serialize(self) + try SharedFolderMountDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentRemoveLinkExpiryDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedFolderMountDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedContentRemoveLinkExpiryDetails: \(error)" + return "Failed to generate description for SharedFolderMountDetails: \(error)" } } } - - public class SharedContentRemoveLinkExpiryDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedContentRemoveLinkExpiryDetails) throws -> JSON { - let output = [ - "previous_value": try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).serialize(value.previousValue), - ] + public class SharedFolderMountDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedFolderMountDetails) throws -> JSON { + let output = [String: JSON]() return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedContentRemoveLinkExpiryDetails { + public func deserialize(_ json: JSON) throws -> SharedFolderMountDetails { switch json { - case .dictionary(let dict): - let previousValue = try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).deserialize(dict["previous_value"] ?? .null) - return SharedContentRemoveLinkExpiryDetails(previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: SharedContentRemoveLinkExpiryDetails.self, json: json) + case .dictionary(_): + return SharedFolderMountDetails() + default: + throw JSONSerializerError.deserializeError(type: SharedFolderMountDetails.self, json: json) } } } - /// The SharedContentRemoveLinkExpiryType struct - public class SharedContentRemoveLinkExpiryType: CustomStringConvertible, JSONRepresentable { + /// The SharedFolderMountType struct + public class SharedFolderMountType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -51829,72 +64453,96 @@ public class TeamLog { } func json() throws -> JSON { - try SharedContentRemoveLinkExpiryTypeSerializer().serialize(self) + try SharedFolderMountTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentRemoveLinkExpiryTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedFolderMountTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedContentRemoveLinkExpiryType: \(error)" + return "Failed to generate description for SharedFolderMountType: \(error)" } } } - - public class SharedContentRemoveLinkExpiryTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedContentRemoveLinkExpiryType) throws -> JSON { + public class SharedFolderMountTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedFolderMountType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedContentRemoveLinkExpiryType { + public func deserialize(_ json: JSON) throws -> SharedFolderMountType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SharedContentRemoveLinkExpiryType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SharedContentRemoveLinkExpiryType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharedFolderMountType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharedFolderMountType.self, json: json) } } } - /// Removed link password of shared file/folder. - public class SharedContentRemoveLinkPasswordDetails: CustomStringConvertible, JSONRepresentable { + /// Changed parent of shared folder. + public class SharedFolderNestDetails: CustomStringConvertible, JSONRepresentable { + /// Previous parent namespace ID. + public let previousParentNsId: String? + /// New parent namespace ID. + public let newParentNsId: String? + /// Previous namespace path. + public let previousNsPath: String? + /// New namespace path. + public let newNsPath: String? + public init(previousParentNsId: String? = nil, newParentNsId: String? = nil, previousNsPath: String? = nil, newNsPath: String? = nil) { + nullableValidator(stringValidator())(previousParentNsId) + self.previousParentNsId = previousParentNsId + nullableValidator(stringValidator())(newParentNsId) + self.newParentNsId = newParentNsId + nullableValidator(stringValidator())(previousNsPath) + self.previousNsPath = previousNsPath + nullableValidator(stringValidator())(newNsPath) + self.newNsPath = newNsPath + } + func json() throws -> JSON { - try SharedContentRemoveLinkPasswordDetailsSerializer().serialize(self) + try SharedFolderNestDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentRemoveLinkPasswordDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedFolderNestDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedContentRemoveLinkPasswordDetails: \(error)" + return "Failed to generate description for SharedFolderNestDetails: \(error)" } } } - - public class SharedContentRemoveLinkPasswordDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedContentRemoveLinkPasswordDetails) throws -> JSON { - let output = [String: JSON]() + public class SharedFolderNestDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedFolderNestDetails) throws -> JSON { + let output = [ + "previous_parent_ns_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.previousParentNsId), + "new_parent_ns_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.newParentNsId), + "previous_ns_path": try NullableSerializer(Serialization._StringSerializer).serialize(value.previousNsPath), + "new_ns_path": try NullableSerializer(Serialization._StringSerializer).serialize(value.newNsPath), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedContentRemoveLinkPasswordDetails { + public func deserialize(_ json: JSON) throws -> SharedFolderNestDetails { switch json { - case .dictionary: - return SharedContentRemoveLinkPasswordDetails() - default: - throw JSONSerializerError.deserializeError(type: SharedContentRemoveLinkPasswordDetails.self, json: json) + case .dictionary(let dict): + let previousParentNsId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["previous_parent_ns_id"] ?? .null) + let newParentNsId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["new_parent_ns_id"] ?? .null) + let previousNsPath = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["previous_ns_path"] ?? .null) + let newNsPath = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["new_ns_path"] ?? .null) + return SharedFolderNestDetails(previousParentNsId: previousParentNsId, newParentNsId: newParentNsId, previousNsPath: previousNsPath, newNsPath: newNsPath) + default: + throw JSONSerializerError.deserializeError(type: SharedFolderNestDetails.self, json: json) } } } - /// The SharedContentRemoveLinkPasswordType struct - public class SharedContentRemoveLinkPasswordType: CustomStringConvertible, JSONRepresentable { + /// The SharedFolderNestType struct + public class SharedFolderNestType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -51903,82 +64551,84 @@ public class TeamLog { } func json() throws -> JSON { - try SharedContentRemoveLinkPasswordTypeSerializer().serialize(self) + try SharedFolderNestTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentRemoveLinkPasswordTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedFolderNestTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedContentRemoveLinkPasswordType: \(error)" + return "Failed to generate description for SharedFolderNestType: \(error)" } } } - - public class SharedContentRemoveLinkPasswordTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedContentRemoveLinkPasswordType) throws -> JSON { + public class SharedFolderNestTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedFolderNestType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedContentRemoveLinkPasswordType { + public func deserialize(_ json: JSON) throws -> SharedFolderNestType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SharedContentRemoveLinkPasswordType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SharedContentRemoveLinkPasswordType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharedFolderNestType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharedFolderNestType.self, json: json) } } } - /// Removed user/group from shared file/folder. - public class SharedContentRemoveMemberDetails: CustomStringConvertible, JSONRepresentable { - /// Shared content access level. - public let sharedContentAccessLevel: Sharing.AccessLevel? - public init(sharedContentAccessLevel: Sharing.AccessLevel? = nil) { - self.sharedContentAccessLevel = sharedContentAccessLevel + /// Transferred ownership of shared folder to another member. + public class SharedFolderTransferOwnershipDetails: CustomStringConvertible, JSONRepresentable { + /// The email address of the previous shared folder owner. + public let previousOwnerEmail: String? + /// The email address of the new shared folder owner. + public let newOwnerEmail: String + public init(newOwnerEmail: String, previousOwnerEmail: String? = nil) { + nullableValidator(stringValidator(maxLength: 255))(previousOwnerEmail) + self.previousOwnerEmail = previousOwnerEmail + stringValidator(maxLength: 255)(newOwnerEmail) + self.newOwnerEmail = newOwnerEmail } func json() throws -> JSON { - try SharedContentRemoveMemberDetailsSerializer().serialize(self) + try SharedFolderTransferOwnershipDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentRemoveMemberDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedFolderTransferOwnershipDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedContentRemoveMemberDetails: \(error)" + return "Failed to generate description for SharedFolderTransferOwnershipDetails: \(error)" } } } - - public class SharedContentRemoveMemberDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedContentRemoveMemberDetails) throws -> JSON { + public class SharedFolderTransferOwnershipDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedFolderTransferOwnershipDetails) throws -> JSON { let output = [ - "shared_content_access_level": try NullableSerializer(Sharing.AccessLevelSerializer()).serialize(value.sharedContentAccessLevel), + "new_owner_email": try Serialization._StringSerializer.serialize(value.newOwnerEmail), + "previous_owner_email": try NullableSerializer(Serialization._StringSerializer).serialize(value.previousOwnerEmail), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedContentRemoveMemberDetails { + public func deserialize(_ json: JSON) throws -> SharedFolderTransferOwnershipDetails { switch json { - case .dictionary(let dict): - let sharedContentAccessLevel = try NullableSerializer(Sharing.AccessLevelSerializer()) - .deserialize(dict["shared_content_access_level"] ?? .null) - return SharedContentRemoveMemberDetails(sharedContentAccessLevel: sharedContentAccessLevel) - default: - throw JSONSerializerError.deserializeError(type: SharedContentRemoveMemberDetails.self, json: json) + case .dictionary(let dict): + let newOwnerEmail = try Serialization._StringSerializer.deserialize(dict["new_owner_email"] ?? .null) + let previousOwnerEmail = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["previous_owner_email"] ?? .null) + return SharedFolderTransferOwnershipDetails(newOwnerEmail: newOwnerEmail, previousOwnerEmail: previousOwnerEmail) + default: + throw JSONSerializerError.deserializeError(type: SharedFolderTransferOwnershipDetails.self, json: json) } } } - /// The SharedContentRemoveMemberType struct - public class SharedContentRemoveMemberType: CustomStringConvertible, JSONRepresentable { + /// The SharedFolderTransferOwnershipType struct + public class SharedFolderTransferOwnershipType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -51987,82 +64637,69 @@ public class TeamLog { } func json() throws -> JSON { - try SharedContentRemoveMemberTypeSerializer().serialize(self) + try SharedFolderTransferOwnershipTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentRemoveMemberTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedFolderTransferOwnershipTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedContentRemoveMemberType: \(error)" + return "Failed to generate description for SharedFolderTransferOwnershipType: \(error)" } } } - - public class SharedContentRemoveMemberTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedContentRemoveMemberType) throws -> JSON { + public class SharedFolderTransferOwnershipTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedFolderTransferOwnershipType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedContentRemoveMemberType { + public func deserialize(_ json: JSON) throws -> SharedFolderTransferOwnershipType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SharedContentRemoveMemberType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SharedContentRemoveMemberType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharedFolderTransferOwnershipType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharedFolderTransferOwnershipType.self, json: json) } } } - /// Requested access to shared file/folder. - public class SharedContentRequestAccessDetails: CustomStringConvertible, JSONRepresentable { - /// Shared content link. - public let sharedContentLink: String? - public init(sharedContentLink: String? = nil) { - nullableValidator(stringValidator())(sharedContentLink) - self.sharedContentLink = sharedContentLink - } + /// Deleted shared folder from Dropbox. + public class SharedFolderUnmountDetails: CustomStringConvertible, JSONRepresentable { func json() throws -> JSON { - try SharedContentRequestAccessDetailsSerializer().serialize(self) + try SharedFolderUnmountDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentRequestAccessDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedFolderUnmountDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedContentRequestAccessDetails: \(error)" + return "Failed to generate description for SharedFolderUnmountDetails: \(error)" } } } - - public class SharedContentRequestAccessDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedContentRequestAccessDetails) throws -> JSON { - let output = [ - "shared_content_link": try NullableSerializer(Serialization._StringSerializer).serialize(value.sharedContentLink), - ] + public class SharedFolderUnmountDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedFolderUnmountDetails) throws -> JSON { + let output = [String: JSON]() return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedContentRequestAccessDetails { + public func deserialize(_ json: JSON) throws -> SharedFolderUnmountDetails { switch json { - case .dictionary(let dict): - let sharedContentLink = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["shared_content_link"] ?? .null) - return SharedContentRequestAccessDetails(sharedContentLink: sharedContentLink) - default: - throw JSONSerializerError.deserializeError(type: SharedContentRequestAccessDetails.self, json: json) + case .dictionary(_): + return SharedFolderUnmountDetails() + default: + throw JSONSerializerError.deserializeError(type: SharedFolderUnmountDetails.self, json: json) } } } - /// The SharedContentRequestAccessType struct - public class SharedContentRequestAccessType: CustomStringConvertible, JSONRepresentable { + /// The SharedFolderUnmountType struct + public class SharedFolderUnmountType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -52071,170 +64708,148 @@ public class TeamLog { } func json() throws -> JSON { - try SharedContentRequestAccessTypeSerializer().serialize(self) + try SharedFolderUnmountTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentRequestAccessTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedFolderUnmountTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedContentRequestAccessType: \(error)" + return "Failed to generate description for SharedFolderUnmountType: \(error)" } } } - - public class SharedContentRequestAccessTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedContentRequestAccessType) throws -> JSON { + public class SharedFolderUnmountTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedFolderUnmountType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedContentRequestAccessType { + public func deserialize(_ json: JSON) throws -> SharedFolderUnmountType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SharedContentRequestAccessType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SharedContentRequestAccessType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharedFolderUnmountType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharedFolderUnmountType.self, json: json) } } } - /// Restored shared file/folder invitees. - public class SharedContentRestoreInviteesDetails: CustomStringConvertible, JSONRepresentable { - /// Shared content access level. - public let sharedContentAccessLevel: Sharing.AccessLevel - /// A list of invitees. - public let invitees: [String] - public init(sharedContentAccessLevel: Sharing.AccessLevel, invitees: [String]) { - self.sharedContentAccessLevel = sharedContentAccessLevel - arrayValidator(itemValidator: stringValidator(maxLength: 255))(invitees) - self.invitees = invitees - } + /// Created shared folders report. + public class SharedFoldersCreateReportDetails: CustomStringConvertible, JSONRepresentable { func json() throws -> JSON { - try SharedContentRestoreInviteesDetailsSerializer().serialize(self) + try SharedFoldersCreateReportDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentRestoreInviteesDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedFoldersCreateReportDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedContentRestoreInviteesDetails: \(error)" + return "Failed to generate description for SharedFoldersCreateReportDetails: \(error)" } } } - - public class SharedContentRestoreInviteesDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedContentRestoreInviteesDetails) throws -> JSON { - let output = [ - "shared_content_access_level": try Sharing.AccessLevelSerializer().serialize(value.sharedContentAccessLevel), - "invitees": try ArraySerializer(Serialization._StringSerializer).serialize(value.invitees), - ] + public class SharedFoldersCreateReportDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedFoldersCreateReportDetails) throws -> JSON { + let output = [String: JSON]() return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedContentRestoreInviteesDetails { + public func deserialize(_ json: JSON) throws -> SharedFoldersCreateReportDetails { switch json { - case .dictionary(let dict): - let sharedContentAccessLevel = try Sharing.AccessLevelSerializer().deserialize(dict["shared_content_access_level"] ?? .null) - let invitees = try ArraySerializer(Serialization._StringSerializer).deserialize(dict["invitees"] ?? .null) - return SharedContentRestoreInviteesDetails(sharedContentAccessLevel: sharedContentAccessLevel, invitees: invitees) - default: - throw JSONSerializerError.deserializeError(type: SharedContentRestoreInviteesDetails.self, json: json) + case .dictionary(_): + return SharedFoldersCreateReportDetails() + default: + throw JSONSerializerError.deserializeError(type: SharedFoldersCreateReportDetails.self, json: json) } } } - /// The SharedContentRestoreInviteesType struct - public class SharedContentRestoreInviteesType: CustomStringConvertible, JSONRepresentable { - /// (no description) - public let description_: String - public init(description_: String) { - stringValidator()(description_) - self.description_ = description_ + /// Couldn't generate shared folders report. + public class SharedFoldersCreateReportFailedDetails: CustomStringConvertible, JSONRepresentable { + /// Failure reason. + public let failureReason: Team.TeamReportFailureReason + public init(failureReason: Team.TeamReportFailureReason) { + self.failureReason = failureReason } func json() throws -> JSON { - try SharedContentRestoreInviteesTypeSerializer().serialize(self) + try SharedFoldersCreateReportFailedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentRestoreInviteesTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedFoldersCreateReportFailedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedContentRestoreInviteesType: \(error)" + return "Failed to generate description for SharedFoldersCreateReportFailedDetails: \(error)" } } } - - public class SharedContentRestoreInviteesTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedContentRestoreInviteesType) throws -> JSON { + public class SharedFoldersCreateReportFailedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedFoldersCreateReportFailedDetails) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "failure_reason": try Team.TeamReportFailureReasonSerializer().serialize(value.failureReason), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedContentRestoreInviteesType { + public func deserialize(_ json: JSON) throws -> SharedFoldersCreateReportFailedDetails { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SharedContentRestoreInviteesType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SharedContentRestoreInviteesType.self, json: json) + case .dictionary(let dict): + let failureReason = try Team.TeamReportFailureReasonSerializer().deserialize(dict["failure_reason"] ?? .null) + return SharedFoldersCreateReportFailedDetails(failureReason: failureReason) + default: + throw JSONSerializerError.deserializeError(type: SharedFoldersCreateReportFailedDetails.self, json: json) } } } - /// Restored users and/or groups to membership of shared file/folder. - public class SharedContentRestoreMemberDetails: CustomStringConvertible, JSONRepresentable { - /// Shared content access level. - public let sharedContentAccessLevel: Sharing.AccessLevel - public init(sharedContentAccessLevel: Sharing.AccessLevel) { - self.sharedContentAccessLevel = sharedContentAccessLevel + /// The SharedFoldersCreateReportFailedType struct + public class SharedFoldersCreateReportFailedType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ } func json() throws -> JSON { - try SharedContentRestoreMemberDetailsSerializer().serialize(self) + try SharedFoldersCreateReportFailedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentRestoreMemberDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedFoldersCreateReportFailedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedContentRestoreMemberDetails: \(error)" + return "Failed to generate description for SharedFoldersCreateReportFailedType: \(error)" } } } - - public class SharedContentRestoreMemberDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedContentRestoreMemberDetails) throws -> JSON { + public class SharedFoldersCreateReportFailedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedFoldersCreateReportFailedType) throws -> JSON { let output = [ - "shared_content_access_level": try Sharing.AccessLevelSerializer().serialize(value.sharedContentAccessLevel), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedContentRestoreMemberDetails { + public func deserialize(_ json: JSON) throws -> SharedFoldersCreateReportFailedType { switch json { - case .dictionary(let dict): - let sharedContentAccessLevel = try Sharing.AccessLevelSerializer().deserialize(dict["shared_content_access_level"] ?? .null) - return SharedContentRestoreMemberDetails(sharedContentAccessLevel: sharedContentAccessLevel) - default: - throw JSONSerializerError.deserializeError(type: SharedContentRestoreMemberDetails.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharedFoldersCreateReportFailedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharedFoldersCreateReportFailedType.self, json: json) } } } - /// The SharedContentRestoreMemberType struct - public class SharedContentRestoreMemberType: CustomStringConvertible, JSONRepresentable { + /// The SharedFoldersCreateReportType struct + public class SharedFoldersCreateReportType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -52243,72 +64858,149 @@ public class TeamLog { } func json() throws -> JSON { - try SharedContentRestoreMemberTypeSerializer().serialize(self) + try SharedFoldersCreateReportTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentRestoreMemberTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedFoldersCreateReportTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedContentRestoreMemberType: \(error)" + return "Failed to generate description for SharedFoldersCreateReportType: \(error)" } } } - - public class SharedContentRestoreMemberTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedContentRestoreMemberType) throws -> JSON { + public class SharedFoldersCreateReportTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedFoldersCreateReportType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedContentRestoreMemberType { + public func deserialize(_ json: JSON) throws -> SharedFoldersCreateReportType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SharedContentRestoreMemberType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SharedContentRestoreMemberType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharedFoldersCreateReportType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharedFoldersCreateReportType.self, json: json) } } } - /// Unshared file/folder by clearing membership. - public class SharedContentUnshareDetails: CustomStringConvertible, JSONRepresentable { + /// Shared link access level. + public enum SharedLinkAccessLevel: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case none + /// An unspecified error. + case reader + /// An unspecified error. + case writer + /// An unspecified error. + case other + func json() throws -> JSON { - try SharedContentUnshareDetailsSerializer().serialize(self) + try SharedLinkAccessLevelSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentUnshareDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkAccessLevelSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedContentUnshareDetails: \(error)" + return "Failed to generate description for SharedLinkAccessLevel: \(error)" + } + } + } + public class SharedLinkAccessLevelSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedLinkAccessLevel) throws -> JSON { + switch value { + case .none: + var d = [String: JSON]() + d[".tag"] = .str("none") + return .dictionary(d) + case .reader: + var d = [String: JSON]() + d[".tag"] = .str("reader") + return .dictionary(d) + case .writer: + var d = [String: JSON]() + d[".tag"] = .str("writer") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> SharedLinkAccessLevel { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "none": + return SharedLinkAccessLevel.none + case "reader": + return SharedLinkAccessLevel.reader + case "writer": + return SharedLinkAccessLevel.writer + case "other": + return SharedLinkAccessLevel.other + default: + return SharedLinkAccessLevel.other + } + default: + throw JSONSerializerError.deserializeError(type: SharedLinkAccessLevel.self, json: json) } } } - public class SharedContentUnshareDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedContentUnshareDetails) throws -> JSON { - let output = [String: JSON]() - return .dictionary(output) + /// Added shared link expiration date. + public class SharedLinkAddExpiryDetails: CustomStringConvertible, JSONRepresentable { + /// New shared link expiration date. + public let newValue: Date + /// Indicates whether this was a consolidation action by system. + public let isConsolidationAction: Bool? + public init(newValue: Date, isConsolidationAction: Bool? = nil) { + self.newValue = newValue + self.isConsolidationAction = isConsolidationAction } - public func deserialize(_ json: JSON) throws -> SharedContentUnshareDetails { + func json() throws -> JSON { + try SharedLinkAddExpiryDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkAddExpiryDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for SharedLinkAddExpiryDetails: \(error)" + } + } + } + public class SharedLinkAddExpiryDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedLinkAddExpiryDetails) throws -> JSON { + let output = [ + "new_value": try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").serialize(value.newValue), + "is_consolidation_action": try NullableSerializer(Serialization._BoolSerializer).serialize(value.isConsolidationAction), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> SharedLinkAddExpiryDetails { switch json { - case .dictionary: - return SharedContentUnshareDetails() - default: - throw JSONSerializerError.deserializeError(type: SharedContentUnshareDetails.self, json: json) + case .dictionary(let dict): + let newValue = try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").deserialize(dict["new_value"] ?? .null) + let isConsolidationAction = try NullableSerializer(Serialization._BoolSerializer).deserialize(dict["is_consolidation_action"] ?? .null) + return SharedLinkAddExpiryDetails(newValue: newValue, isConsolidationAction: isConsolidationAction) + default: + throw JSONSerializerError.deserializeError(type: SharedLinkAddExpiryDetails.self, json: json) } } } - /// The SharedContentUnshareType struct - public class SharedContentUnshareType: CustomStringConvertible, JSONRepresentable { + /// The SharedLinkAddExpiryType struct + public class SharedLinkAddExpiryType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -52317,96 +65009,87 @@ public class TeamLog { } func json() throws -> JSON { - try SharedContentUnshareTypeSerializer().serialize(self) + try SharedLinkAddExpiryTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentUnshareTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkAddExpiryTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedContentUnshareType: \(error)" + return "Failed to generate description for SharedLinkAddExpiryType: \(error)" } } } - - public class SharedContentUnshareTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedContentUnshareType) throws -> JSON { + public class SharedLinkAddExpiryTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedLinkAddExpiryType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedContentUnshareType { + public func deserialize(_ json: JSON) throws -> SharedLinkAddExpiryType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SharedContentUnshareType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SharedContentUnshareType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharedLinkAddExpiryType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharedLinkAddExpiryType.self, json: json) } } } - /// Previewed shared file/folder. - public class SharedContentViewDetails: CustomStringConvertible, JSONRepresentable { - /// Shared content link. - public let sharedContentLink: String - /// The shared content owner. - public let sharedContentOwner: TeamLog.UserLogInfo? - /// Shared content access level. - public let sharedContentAccessLevel: Sharing.AccessLevel - public init(sharedContentLink: String, sharedContentAccessLevel: Sharing.AccessLevel, sharedContentOwner: TeamLog.UserLogInfo? = nil) { - stringValidator()(sharedContentLink) - self.sharedContentLink = sharedContentLink - self.sharedContentOwner = sharedContentOwner - self.sharedContentAccessLevel = sharedContentAccessLevel + /// Changed shared link expiration date. + public class SharedLinkChangeExpiryDetails: CustomStringConvertible, JSONRepresentable { + /// New shared link expiration date. Might be missing due to historical data gap. + public let newValue: Date? + /// Previous shared link expiration date. Might be missing due to historical data gap. + public let previousValue: Date? + /// Indicates whether this was a consolidation action by system. + public let isConsolidationAction: Bool? + public init(newValue: Date? = nil, previousValue: Date? = nil, isConsolidationAction: Bool? = nil) { + self.newValue = newValue + self.previousValue = previousValue + self.isConsolidationAction = isConsolidationAction } func json() throws -> JSON { - try SharedContentViewDetailsSerializer().serialize(self) + try SharedLinkChangeExpiryDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentViewDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkChangeExpiryDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedContentViewDetails: \(error)" + return "Failed to generate description for SharedLinkChangeExpiryDetails: \(error)" } } } - - public class SharedContentViewDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedContentViewDetails) throws -> JSON { + public class SharedLinkChangeExpiryDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedLinkChangeExpiryDetails) throws -> JSON { let output = [ - "shared_content_link": try Serialization._StringSerializer.serialize(value.sharedContentLink), - "shared_content_access_level": try Sharing.AccessLevelSerializer().serialize(value.sharedContentAccessLevel), - "shared_content_owner": try NullableSerializer(TeamLog.UserLogInfoSerializer()).serialize(value.sharedContentOwner), + "new_value": try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).serialize(value.newValue), + "previous_value": try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).serialize(value.previousValue), + "is_consolidation_action": try NullableSerializer(Serialization._BoolSerializer).serialize(value.isConsolidationAction), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedContentViewDetails { + public func deserialize(_ json: JSON) throws -> SharedLinkChangeExpiryDetails { switch json { - case .dictionary(let dict): - let sharedContentLink = try Serialization._StringSerializer.deserialize(dict["shared_content_link"] ?? .null) - let sharedContentAccessLevel = try Sharing.AccessLevelSerializer().deserialize(dict["shared_content_access_level"] ?? .null) - let sharedContentOwner = try NullableSerializer(TeamLog.UserLogInfoSerializer()).deserialize(dict["shared_content_owner"] ?? .null) - return SharedContentViewDetails( - sharedContentLink: sharedContentLink, - sharedContentAccessLevel: sharedContentAccessLevel, - sharedContentOwner: sharedContentOwner - ) - default: - throw JSONSerializerError.deserializeError(type: SharedContentViewDetails.self, json: json) + case .dictionary(let dict): + let newValue = try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).deserialize(dict["new_value"] ?? .null) + let previousValue = try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).deserialize(dict["previous_value"] ?? .null) + let isConsolidationAction = try NullableSerializer(Serialization._BoolSerializer).deserialize(dict["is_consolidation_action"] ?? .null) + return SharedLinkChangeExpiryDetails(newValue: newValue, previousValue: previousValue, isConsolidationAction: isConsolidationAction) + default: + throw JSONSerializerError.deserializeError(type: SharedLinkChangeExpiryDetails.self, json: json) } } } - /// The SharedContentViewType struct - public class SharedContentViewType: CustomStringConvertible, JSONRepresentable { + /// The SharedLinkChangeExpiryType struct + public class SharedLinkChangeExpiryType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -52415,86 +65098,87 @@ public class TeamLog { } func json() throws -> JSON { - try SharedContentViewTypeSerializer().serialize(self) + try SharedLinkChangeExpiryTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedContentViewTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkChangeExpiryTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedContentViewType: \(error)" + return "Failed to generate description for SharedLinkChangeExpiryType: \(error)" } } } - - public class SharedContentViewTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedContentViewType) throws -> JSON { + public class SharedLinkChangeExpiryTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedLinkChangeExpiryType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedContentViewType { + public func deserialize(_ json: JSON) throws -> SharedLinkChangeExpiryType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SharedContentViewType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SharedContentViewType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharedLinkChangeExpiryType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharedLinkChangeExpiryType.self, json: json) } } } - /// Changed who can access shared folder via link. - public class SharedFolderChangeLinkPolicyDetails: CustomStringConvertible, JSONRepresentable { - /// New shared folder link policy. - public let newValue: Sharing.SharedLinkPolicy - /// Previous shared folder link policy. Might be missing due to historical data gap. - public let previousValue: Sharing.SharedLinkPolicy? - public init(newValue: Sharing.SharedLinkPolicy, previousValue: Sharing.SharedLinkPolicy? = nil) { + /// Changed visibility of shared link. + public class SharedLinkChangeVisibilityDetails: CustomStringConvertible, JSONRepresentable { + /// New shared link visibility. + public let newValue: TeamLog.SharedLinkVisibility + /// Previous shared link visibility. Might be missing due to historical data gap. + public let previousValue: TeamLog.SharedLinkVisibility? + /// Indicates whether this was a consolidation action by system. + public let isConsolidationAction: Bool? + public init(newValue: TeamLog.SharedLinkVisibility, previousValue: TeamLog.SharedLinkVisibility? = nil, isConsolidationAction: Bool? = nil) { self.newValue = newValue self.previousValue = previousValue + self.isConsolidationAction = isConsolidationAction } func json() throws -> JSON { - try SharedFolderChangeLinkPolicyDetailsSerializer().serialize(self) + try SharedLinkChangeVisibilityDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedFolderChangeLinkPolicyDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkChangeVisibilityDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedFolderChangeLinkPolicyDetails: \(error)" + return "Failed to generate description for SharedLinkChangeVisibilityDetails: \(error)" } } } - - public class SharedFolderChangeLinkPolicyDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedFolderChangeLinkPolicyDetails) throws -> JSON { + public class SharedLinkChangeVisibilityDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedLinkChangeVisibilityDetails) throws -> JSON { let output = [ - "new_value": try Sharing.SharedLinkPolicySerializer().serialize(value.newValue), - "previous_value": try NullableSerializer(Sharing.SharedLinkPolicySerializer()).serialize(value.previousValue), + "new_value": try TeamLog.SharedLinkVisibilitySerializer().serialize(value.newValue), + "previous_value": try NullableSerializer(TeamLog.SharedLinkVisibilitySerializer()).serialize(value.previousValue), + "is_consolidation_action": try NullableSerializer(Serialization._BoolSerializer).serialize(value.isConsolidationAction), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedFolderChangeLinkPolicyDetails { + public func deserialize(_ json: JSON) throws -> SharedLinkChangeVisibilityDetails { switch json { - case .dictionary(let dict): - let newValue = try Sharing.SharedLinkPolicySerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try NullableSerializer(Sharing.SharedLinkPolicySerializer()).deserialize(dict["previous_value"] ?? .null) - return SharedFolderChangeLinkPolicyDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: SharedFolderChangeLinkPolicyDetails.self, json: json) + case .dictionary(let dict): + let newValue = try TeamLog.SharedLinkVisibilitySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try NullableSerializer(TeamLog.SharedLinkVisibilitySerializer()).deserialize(dict["previous_value"] ?? .null) + let isConsolidationAction = try NullableSerializer(Serialization._BoolSerializer).deserialize(dict["is_consolidation_action"] ?? .null) + return SharedLinkChangeVisibilityDetails(newValue: newValue, previousValue: previousValue, isConsolidationAction: isConsolidationAction) + default: + throw JSONSerializerError.deserializeError(type: SharedLinkChangeVisibilityDetails.self, json: json) } } } - /// The SharedFolderChangeLinkPolicyType struct - public class SharedFolderChangeLinkPolicyType: CustomStringConvertible, JSONRepresentable { + /// The SharedLinkChangeVisibilityType struct + public class SharedLinkChangeVisibilityType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -52503,87 +65187,77 @@ public class TeamLog { } func json() throws -> JSON { - try SharedFolderChangeLinkPolicyTypeSerializer().serialize(self) + try SharedLinkChangeVisibilityTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedFolderChangeLinkPolicyTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkChangeVisibilityTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedFolderChangeLinkPolicyType: \(error)" + return "Failed to generate description for SharedLinkChangeVisibilityType: \(error)" } } } - - public class SharedFolderChangeLinkPolicyTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedFolderChangeLinkPolicyType) throws -> JSON { + public class SharedLinkChangeVisibilityTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedLinkChangeVisibilityType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedFolderChangeLinkPolicyType { + public func deserialize(_ json: JSON) throws -> SharedLinkChangeVisibilityType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SharedFolderChangeLinkPolicyType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SharedFolderChangeLinkPolicyType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharedLinkChangeVisibilityType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharedLinkChangeVisibilityType.self, json: json) } } } - /// Changed whether shared folder inherits members from parent folder. - public class SharedFolderChangeMembersInheritancePolicyDetails: CustomStringConvertible, JSONRepresentable { - /// New member inheritance policy. - public let newValue: TeamLog.SharedFolderMembersInheritancePolicy - /// Previous member inheritance policy. Might be missing due to historical data gap. - public let previousValue: TeamLog.SharedFolderMembersInheritancePolicy? - public init(newValue: TeamLog.SharedFolderMembersInheritancePolicy, previousValue: TeamLog.SharedFolderMembersInheritancePolicy? = nil) { - self.newValue = newValue - self.previousValue = previousValue + /// Added file/folder to Dropbox from shared link. + public class SharedLinkCopyDetails: CustomStringConvertible, JSONRepresentable { + /// Shared link owner details. Might be missing due to historical data gap. + public let sharedLinkOwner: TeamLog.UserLogInfo? + public init(sharedLinkOwner: TeamLog.UserLogInfo? = nil) { + self.sharedLinkOwner = sharedLinkOwner } func json() throws -> JSON { - try SharedFolderChangeMembersInheritancePolicyDetailsSerializer().serialize(self) + try SharedLinkCopyDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedFolderChangeMembersInheritancePolicyDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkCopyDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedFolderChangeMembersInheritancePolicyDetails: \(error)" + return "Failed to generate description for SharedLinkCopyDetails: \(error)" } } } - - public class SharedFolderChangeMembersInheritancePolicyDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedFolderChangeMembersInheritancePolicyDetails) throws -> JSON { + public class SharedLinkCopyDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedLinkCopyDetails) throws -> JSON { let output = [ - "new_value": try TeamLog.SharedFolderMembersInheritancePolicySerializer().serialize(value.newValue), - "previous_value": try NullableSerializer(TeamLog.SharedFolderMembersInheritancePolicySerializer()).serialize(value.previousValue), + "shared_link_owner": try NullableSerializer(TeamLog.UserLogInfoSerializer()).serialize(value.sharedLinkOwner), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedFolderChangeMembersInheritancePolicyDetails { + public func deserialize(_ json: JSON) throws -> SharedLinkCopyDetails { switch json { - case .dictionary(let dict): - let newValue = try TeamLog.SharedFolderMembersInheritancePolicySerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try NullableSerializer(TeamLog.SharedFolderMembersInheritancePolicySerializer()) - .deserialize(dict["previous_value"] ?? .null) - return SharedFolderChangeMembersInheritancePolicyDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: SharedFolderChangeMembersInheritancePolicyDetails.self, json: json) + case .dictionary(let dict): + let sharedLinkOwner = try NullableSerializer(TeamLog.UserLogInfoSerializer()).deserialize(dict["shared_link_owner"] ?? .null) + return SharedLinkCopyDetails(sharedLinkOwner: sharedLinkOwner) + default: + throw JSONSerializerError.deserializeError(type: SharedLinkCopyDetails.self, json: json) } } } - /// The SharedFolderChangeMembersInheritancePolicyType struct - public class SharedFolderChangeMembersInheritancePolicyType: CustomStringConvertible, JSONRepresentable { + /// The SharedLinkCopyType struct + public class SharedLinkCopyType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -52592,86 +65266,77 @@ public class TeamLog { } func json() throws -> JSON { - try SharedFolderChangeMembersInheritancePolicyTypeSerializer().serialize(self) + try SharedLinkCopyTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedFolderChangeMembersInheritancePolicyTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkCopyTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedFolderChangeMembersInheritancePolicyType: \(error)" + return "Failed to generate description for SharedLinkCopyType: \(error)" } } } - - public class SharedFolderChangeMembersInheritancePolicyTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedFolderChangeMembersInheritancePolicyType) throws -> JSON { + public class SharedLinkCopyTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedLinkCopyType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedFolderChangeMembersInheritancePolicyType { + public func deserialize(_ json: JSON) throws -> SharedLinkCopyType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SharedFolderChangeMembersInheritancePolicyType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SharedFolderChangeMembersInheritancePolicyType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharedLinkCopyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharedLinkCopyType.self, json: json) } } } - /// Changed who can add/remove members of shared folder. - public class SharedFolderChangeMembersManagementPolicyDetails: CustomStringConvertible, JSONRepresentable { - /// New members management policy. - public let newValue: Sharing.AclUpdatePolicy - /// Previous members management policy. Might be missing due to historical data gap. - public let previousValue: Sharing.AclUpdatePolicy? - public init(newValue: Sharing.AclUpdatePolicy, previousValue: Sharing.AclUpdatePolicy? = nil) { - self.newValue = newValue - self.previousValue = previousValue + /// Created shared link. + public class SharedLinkCreateDetails: CustomStringConvertible, JSONRepresentable { + /// Defines who can access the shared link. Might be missing due to historical data gap. + public let sharedLinkAccessLevel: TeamLog.SharedLinkAccessLevel? + public init(sharedLinkAccessLevel: TeamLog.SharedLinkAccessLevel? = nil) { + self.sharedLinkAccessLevel = sharedLinkAccessLevel } func json() throws -> JSON { - try SharedFolderChangeMembersManagementPolicyDetailsSerializer().serialize(self) + try SharedLinkCreateDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedFolderChangeMembersManagementPolicyDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkCreateDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedFolderChangeMembersManagementPolicyDetails: \(error)" + return "Failed to generate description for SharedLinkCreateDetails: \(error)" } } } - - public class SharedFolderChangeMembersManagementPolicyDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedFolderChangeMembersManagementPolicyDetails) throws -> JSON { + public class SharedLinkCreateDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedLinkCreateDetails) throws -> JSON { let output = [ - "new_value": try Sharing.AclUpdatePolicySerializer().serialize(value.newValue), - "previous_value": try NullableSerializer(Sharing.AclUpdatePolicySerializer()).serialize(value.previousValue), + "shared_link_access_level": try NullableSerializer(TeamLog.SharedLinkAccessLevelSerializer()).serialize(value.sharedLinkAccessLevel), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedFolderChangeMembersManagementPolicyDetails { + public func deserialize(_ json: JSON) throws -> SharedLinkCreateDetails { switch json { - case .dictionary(let dict): - let newValue = try Sharing.AclUpdatePolicySerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try NullableSerializer(Sharing.AclUpdatePolicySerializer()).deserialize(dict["previous_value"] ?? .null) - return SharedFolderChangeMembersManagementPolicyDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: SharedFolderChangeMembersManagementPolicyDetails.self, json: json) + case .dictionary(let dict): + let sharedLinkAccessLevel = try NullableSerializer(TeamLog.SharedLinkAccessLevelSerializer()).deserialize(dict["shared_link_access_level"] ?? .null) + return SharedLinkCreateDetails(sharedLinkAccessLevel: sharedLinkAccessLevel) + default: + throw JSONSerializerError.deserializeError(type: SharedLinkCreateDetails.self, json: json) } } } - /// The SharedFolderChangeMembersManagementPolicyType struct - public class SharedFolderChangeMembersManagementPolicyType: CustomStringConvertible, JSONRepresentable { + /// The SharedLinkCreateType struct + public class SharedLinkCreateType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -52680,86 +65345,149 @@ public class TeamLog { } func json() throws -> JSON { - try SharedFolderChangeMembersManagementPolicyTypeSerializer().serialize(self) + try SharedLinkCreateTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedFolderChangeMembersManagementPolicyTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkCreateTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedFolderChangeMembersManagementPolicyType: \(error)" + return "Failed to generate description for SharedLinkCreateType: \(error)" } } } - - public class SharedFolderChangeMembersManagementPolicyTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedFolderChangeMembersManagementPolicyType) throws -> JSON { + public class SharedLinkCreateTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedLinkCreateType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedFolderChangeMembersManagementPolicyType { + public func deserialize(_ json: JSON) throws -> SharedLinkCreateType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SharedFolderChangeMembersManagementPolicyType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SharedFolderChangeMembersManagementPolicyType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharedLinkCreateType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharedLinkCreateType.self, json: json) } } } - /// Changed who can become member of shared folder. - public class SharedFolderChangeMembersPolicyDetails: CustomStringConvertible, JSONRepresentable { - /// New external invite policy. - public let newValue: Sharing.MemberPolicy - /// Previous external invite policy. Might be missing due to historical data gap. - public let previousValue: Sharing.MemberPolicy? - public init(newValue: Sharing.MemberPolicy, previousValue: Sharing.MemberPolicy? = nil) { + /// Policy for deciding the default permissions granted through shared links + public enum SharedLinkDefaultPermissionsPolicy: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case default_ + /// An unspecified error. + case edit + /// An unspecified error. + case view + /// An unspecified error. + case other + + func json() throws -> JSON { + try SharedLinkDefaultPermissionsPolicySerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkDefaultPermissionsPolicySerializer().serialize(self)))" + } catch { + return "Failed to generate description for SharedLinkDefaultPermissionsPolicy: \(error)" + } + } + } + public class SharedLinkDefaultPermissionsPolicySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedLinkDefaultPermissionsPolicy) throws -> JSON { + switch value { + case .default_: + var d = [String: JSON]() + d[".tag"] = .str("default") + return .dictionary(d) + case .edit: + var d = [String: JSON]() + d[".tag"] = .str("edit") + return .dictionary(d) + case .view: + var d = [String: JSON]() + d[".tag"] = .str("view") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> SharedLinkDefaultPermissionsPolicy { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "default": + return SharedLinkDefaultPermissionsPolicy.default_ + case "edit": + return SharedLinkDefaultPermissionsPolicy.edit + case "view": + return SharedLinkDefaultPermissionsPolicy.view + case "other": + return SharedLinkDefaultPermissionsPolicy.other + default: + return SharedLinkDefaultPermissionsPolicy.other + } + default: + throw JSONSerializerError.deserializeError(type: SharedLinkDefaultPermissionsPolicy.self, json: json) + } + } + } + + /// Changed shared link default permissions policy for team. + public class SharedLinkDefaultPermissionsPolicyChangedDetails: CustomStringConvertible, JSONRepresentable { + /// To. + public let newValue: TeamLog.SharedLinkDefaultPermissionsPolicy + /// From. + public let previousValue: TeamLog.SharedLinkDefaultPermissionsPolicy + public init(newValue: TeamLog.SharedLinkDefaultPermissionsPolicy, previousValue: TeamLog.SharedLinkDefaultPermissionsPolicy) { self.newValue = newValue self.previousValue = previousValue } func json() throws -> JSON { - try SharedFolderChangeMembersPolicyDetailsSerializer().serialize(self) + try SharedLinkDefaultPermissionsPolicyChangedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedFolderChangeMembersPolicyDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkDefaultPermissionsPolicyChangedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedFolderChangeMembersPolicyDetails: \(error)" + return "Failed to generate description for SharedLinkDefaultPermissionsPolicyChangedDetails: \(error)" } } } - - public class SharedFolderChangeMembersPolicyDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedFolderChangeMembersPolicyDetails) throws -> JSON { + public class SharedLinkDefaultPermissionsPolicyChangedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedLinkDefaultPermissionsPolicyChangedDetails) throws -> JSON { let output = [ - "new_value": try Sharing.MemberPolicySerializer().serialize(value.newValue), - "previous_value": try NullableSerializer(Sharing.MemberPolicySerializer()).serialize(value.previousValue), + "new_value": try TeamLog.SharedLinkDefaultPermissionsPolicySerializer().serialize(value.newValue), + "previous_value": try TeamLog.SharedLinkDefaultPermissionsPolicySerializer().serialize(value.previousValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedFolderChangeMembersPolicyDetails { + public func deserialize(_ json: JSON) throws -> SharedLinkDefaultPermissionsPolicyChangedDetails { switch json { - case .dictionary(let dict): - let newValue = try Sharing.MemberPolicySerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try NullableSerializer(Sharing.MemberPolicySerializer()).deserialize(dict["previous_value"] ?? .null) - return SharedFolderChangeMembersPolicyDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: SharedFolderChangeMembersPolicyDetails.self, json: json) + case .dictionary(let dict): + let newValue = try TeamLog.SharedLinkDefaultPermissionsPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try TeamLog.SharedLinkDefaultPermissionsPolicySerializer().deserialize(dict["previous_value"] ?? .null) + return SharedLinkDefaultPermissionsPolicyChangedDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: SharedLinkDefaultPermissionsPolicyChangedDetails.self, json: json) } } } - /// The SharedFolderChangeMembersPolicyType struct - public class SharedFolderChangeMembersPolicyType: CustomStringConvertible, JSONRepresentable { + /// The SharedLinkDefaultPermissionsPolicyChangedType struct + public class SharedLinkDefaultPermissionsPolicyChangedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -52768,82 +65496,77 @@ public class TeamLog { } func json() throws -> JSON { - try SharedFolderChangeMembersPolicyTypeSerializer().serialize(self) + try SharedLinkDefaultPermissionsPolicyChangedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedFolderChangeMembersPolicyTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkDefaultPermissionsPolicyChangedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedFolderChangeMembersPolicyType: \(error)" + return "Failed to generate description for SharedLinkDefaultPermissionsPolicyChangedType: \(error)" } } } - - public class SharedFolderChangeMembersPolicyTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedFolderChangeMembersPolicyType) throws -> JSON { + public class SharedLinkDefaultPermissionsPolicyChangedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedLinkDefaultPermissionsPolicyChangedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedFolderChangeMembersPolicyType { + public func deserialize(_ json: JSON) throws -> SharedLinkDefaultPermissionsPolicyChangedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SharedFolderChangeMembersPolicyType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SharedFolderChangeMembersPolicyType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharedLinkDefaultPermissionsPolicyChangedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharedLinkDefaultPermissionsPolicyChangedType.self, json: json) } } } - /// Created shared folder. - public class SharedFolderCreateDetails: CustomStringConvertible, JSONRepresentable { - /// Target namespace ID. - public let targetNsId: String? - public init(targetNsId: String? = nil) { - nullableValidator(stringValidator())(targetNsId) - self.targetNsId = targetNsId + /// Removed shared link. + public class SharedLinkDisableDetails: CustomStringConvertible, JSONRepresentable { + /// Shared link owner details. Might be missing due to historical data gap. + public let sharedLinkOwner: TeamLog.UserLogInfo? + public init(sharedLinkOwner: TeamLog.UserLogInfo? = nil) { + self.sharedLinkOwner = sharedLinkOwner } func json() throws -> JSON { - try SharedFolderCreateDetailsSerializer().serialize(self) + try SharedLinkDisableDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedFolderCreateDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkDisableDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedFolderCreateDetails: \(error)" + return "Failed to generate description for SharedLinkDisableDetails: \(error)" } } } - - public class SharedFolderCreateDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedFolderCreateDetails) throws -> JSON { + public class SharedLinkDisableDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedLinkDisableDetails) throws -> JSON { let output = [ - "target_ns_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.targetNsId), + "shared_link_owner": try NullableSerializer(TeamLog.UserLogInfoSerializer()).serialize(value.sharedLinkOwner), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedFolderCreateDetails { + public func deserialize(_ json: JSON) throws -> SharedLinkDisableDetails { switch json { - case .dictionary(let dict): - let targetNsId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["target_ns_id"] ?? .null) - return SharedFolderCreateDetails(targetNsId: targetNsId) - default: - throw JSONSerializerError.deserializeError(type: SharedFolderCreateDetails.self, json: json) + case .dictionary(let dict): + let sharedLinkOwner = try NullableSerializer(TeamLog.UserLogInfoSerializer()).deserialize(dict["shared_link_owner"] ?? .null) + return SharedLinkDisableDetails(sharedLinkOwner: sharedLinkOwner) + default: + throw JSONSerializerError.deserializeError(type: SharedLinkDisableDetails.self, json: json) } } } - /// The SharedFolderCreateType struct - public class SharedFolderCreateType: CustomStringConvertible, JSONRepresentable { + /// The SharedLinkDisableType struct + public class SharedLinkDisableType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -52852,72 +65575,77 @@ public class TeamLog { } func json() throws -> JSON { - try SharedFolderCreateTypeSerializer().serialize(self) + try SharedLinkDisableTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedFolderCreateTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkDisableTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedFolderCreateType: \(error)" + return "Failed to generate description for SharedLinkDisableType: \(error)" } } } - - public class SharedFolderCreateTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedFolderCreateType) throws -> JSON { + public class SharedLinkDisableTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedLinkDisableType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedFolderCreateType { + public func deserialize(_ json: JSON) throws -> SharedLinkDisableType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SharedFolderCreateType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SharedFolderCreateType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharedLinkDisableType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharedLinkDisableType.self, json: json) } } } - /// Declined team member's invite to shared folder. - public class SharedFolderDeclineInvitationDetails: CustomStringConvertible, JSONRepresentable { + /// Downloaded file/folder from shared link. + public class SharedLinkDownloadDetails: CustomStringConvertible, JSONRepresentable { + /// Shared link owner details. Might be missing due to historical data gap. + public let sharedLinkOwner: TeamLog.UserLogInfo? + public init(sharedLinkOwner: TeamLog.UserLogInfo? = nil) { + self.sharedLinkOwner = sharedLinkOwner + } + func json() throws -> JSON { - try SharedFolderDeclineInvitationDetailsSerializer().serialize(self) + try SharedLinkDownloadDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedFolderDeclineInvitationDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkDownloadDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedFolderDeclineInvitationDetails: \(error)" + return "Failed to generate description for SharedLinkDownloadDetails: \(error)" } } } - - public class SharedFolderDeclineInvitationDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedFolderDeclineInvitationDetails) throws -> JSON { - let output = [String: JSON]() + public class SharedLinkDownloadDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedLinkDownloadDetails) throws -> JSON { + let output = [ + "shared_link_owner": try NullableSerializer(TeamLog.UserLogInfoSerializer()).serialize(value.sharedLinkOwner), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedFolderDeclineInvitationDetails { + public func deserialize(_ json: JSON) throws -> SharedLinkDownloadDetails { switch json { - case .dictionary: - return SharedFolderDeclineInvitationDetails() - default: - throw JSONSerializerError.deserializeError(type: SharedFolderDeclineInvitationDetails.self, json: json) + case .dictionary(let dict): + let sharedLinkOwner = try NullableSerializer(TeamLog.UserLogInfoSerializer()).deserialize(dict["shared_link_owner"] ?? .null) + return SharedLinkDownloadDetails(sharedLinkOwner: sharedLinkOwner) + default: + throw JSONSerializerError.deserializeError(type: SharedLinkDownloadDetails.self, json: json) } } } - /// The SharedFolderDeclineInvitationType struct - public class SharedFolderDeclineInvitationType: CustomStringConvertible, JSONRepresentable { + /// The SharedLinkDownloadType struct + public class SharedLinkDownloadType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -52926,133 +65654,77 @@ public class TeamLog { } func json() throws -> JSON { - try SharedFolderDeclineInvitationTypeSerializer().serialize(self) + try SharedLinkDownloadTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedFolderDeclineInvitationTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkDownloadTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedFolderDeclineInvitationType: \(error)" + return "Failed to generate description for SharedLinkDownloadType: \(error)" } } } - - public class SharedFolderDeclineInvitationTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedFolderDeclineInvitationType) throws -> JSON { + public class SharedLinkDownloadTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedLinkDownloadType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedFolderDeclineInvitationType { + public func deserialize(_ json: JSON) throws -> SharedLinkDownloadType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SharedFolderDeclineInvitationType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SharedFolderDeclineInvitationType.self, json: json) - } - } - } - - /// Specifies if a shared folder inherits its members from the parent folder. - public enum SharedFolderMembersInheritancePolicy: CustomStringConvertible, JSONRepresentable { - /// An unspecified error. - case dontInheritMembers - /// An unspecified error. - case inheritMembers - /// An unspecified error. - case other - - func json() throws -> JSON { - try SharedFolderMembersInheritancePolicySerializer().serialize(self) - } - - public var description: String { - do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedFolderMembersInheritancePolicySerializer().serialize(self)))" - } catch { - return "Failed to generate description for SharedFolderMembersInheritancePolicy: \(error)" + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharedLinkDownloadType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharedLinkDownloadType.self, json: json) } } } - public class SharedFolderMembersInheritancePolicySerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedFolderMembersInheritancePolicy) throws -> JSON { - switch value { - case .dontInheritMembers: - var d = [String: JSON]() - d[".tag"] = .str("dont_inherit_members") - return .dictionary(d) - case .inheritMembers: - var d = [String: JSON]() - d[".tag"] = .str("inherit_members") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) - } - } - - public func deserialize(_ json: JSON) throws -> SharedFolderMembersInheritancePolicy { - switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "dont_inherit_members": - return SharedFolderMembersInheritancePolicy.dontInheritMembers - case "inherit_members": - return SharedFolderMembersInheritancePolicy.inheritMembers - case "other": - return SharedFolderMembersInheritancePolicy.other - default: - return SharedFolderMembersInheritancePolicy.other - } - default: - throw JSONSerializerError.deserializeError(type: SharedFolderMembersInheritancePolicy.self, json: json) - } + /// Removed shared link expiration date. + public class SharedLinkRemoveExpiryDetails: CustomStringConvertible, JSONRepresentable { + /// Previous shared link expiration date. Might be missing due to historical data gap. + public let previousValue: Date? + public init(previousValue: Date? = nil) { + self.previousValue = previousValue } - } - /// Added shared folder to own Dropbox. - public class SharedFolderMountDetails: CustomStringConvertible, JSONRepresentable { func json() throws -> JSON { - try SharedFolderMountDetailsSerializer().serialize(self) + try SharedLinkRemoveExpiryDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedFolderMountDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkRemoveExpiryDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedFolderMountDetails: \(error)" + return "Failed to generate description for SharedLinkRemoveExpiryDetails: \(error)" } } } - - public class SharedFolderMountDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedFolderMountDetails) throws -> JSON { - let output = [String: JSON]() + public class SharedLinkRemoveExpiryDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedLinkRemoveExpiryDetails) throws -> JSON { + let output = [ + "previous_value": try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).serialize(value.previousValue), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedFolderMountDetails { + public func deserialize(_ json: JSON) throws -> SharedLinkRemoveExpiryDetails { switch json { - case .dictionary: - return SharedFolderMountDetails() - default: - throw JSONSerializerError.deserializeError(type: SharedFolderMountDetails.self, json: json) + case .dictionary(let dict): + let previousValue = try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).deserialize(dict["previous_value"] ?? .null) + return SharedLinkRemoveExpiryDetails(previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: SharedLinkRemoveExpiryDetails.self, json: json) } } } - /// The SharedFolderMountType struct - public class SharedFolderMountType: CustomStringConvertible, JSONRepresentable { + /// The SharedLinkRemoveExpiryType struct + public class SharedLinkRemoveExpiryType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -53061,105 +65733,69 @@ public class TeamLog { } func json() throws -> JSON { - try SharedFolderMountTypeSerializer().serialize(self) + try SharedLinkRemoveExpiryTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedFolderMountTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkRemoveExpiryTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedFolderMountType: \(error)" + return "Failed to generate description for SharedLinkRemoveExpiryType: \(error)" } } } - - public class SharedFolderMountTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedFolderMountType) throws -> JSON { + public class SharedLinkRemoveExpiryTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedLinkRemoveExpiryType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedFolderMountType { + public func deserialize(_ json: JSON) throws -> SharedLinkRemoveExpiryType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SharedFolderMountType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SharedFolderMountType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharedLinkRemoveExpiryType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharedLinkRemoveExpiryType.self, json: json) } } } - /// Changed parent of shared folder. - public class SharedFolderNestDetails: CustomStringConvertible, JSONRepresentable { - /// Previous parent namespace ID. - public let previousParentNsId: String? - /// New parent namespace ID. - public let newParentNsId: String? - /// Previous namespace path. - public let previousNsPath: String? - /// New namespace path. - public let newNsPath: String? - public init(previousParentNsId: String? = nil, newParentNsId: String? = nil, previousNsPath: String? = nil, newNsPath: String? = nil) { - nullableValidator(stringValidator())(previousParentNsId) - self.previousParentNsId = previousParentNsId - nullableValidator(stringValidator())(newParentNsId) - self.newParentNsId = newParentNsId - nullableValidator(stringValidator())(previousNsPath) - self.previousNsPath = previousNsPath - nullableValidator(stringValidator())(newNsPath) - self.newNsPath = newNsPath - } + /// Removed link visitor. + public class SharedLinkRemoveVisitorDetails: CustomStringConvertible, JSONRepresentable { func json() throws -> JSON { - try SharedFolderNestDetailsSerializer().serialize(self) + try SharedLinkRemoveVisitorDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedFolderNestDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkRemoveVisitorDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedFolderNestDetails: \(error)" + return "Failed to generate description for SharedLinkRemoveVisitorDetails: \(error)" } } } - - public class SharedFolderNestDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedFolderNestDetails) throws -> JSON { - let output = [ - "previous_parent_ns_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.previousParentNsId), - "new_parent_ns_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.newParentNsId), - "previous_ns_path": try NullableSerializer(Serialization._StringSerializer).serialize(value.previousNsPath), - "new_ns_path": try NullableSerializer(Serialization._StringSerializer).serialize(value.newNsPath), - ] + public class SharedLinkRemoveVisitorDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedLinkRemoveVisitorDetails) throws -> JSON { + let output = [String: JSON]() return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedFolderNestDetails { + public func deserialize(_ json: JSON) throws -> SharedLinkRemoveVisitorDetails { switch json { - case .dictionary(let dict): - let previousParentNsId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["previous_parent_ns_id"] ?? .null) - let newParentNsId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["new_parent_ns_id"] ?? .null) - let previousNsPath = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["previous_ns_path"] ?? .null) - let newNsPath = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["new_ns_path"] ?? .null) - return SharedFolderNestDetails( - previousParentNsId: previousParentNsId, - newParentNsId: newParentNsId, - previousNsPath: previousNsPath, - newNsPath: newNsPath - ) - default: - throw JSONSerializerError.deserializeError(type: SharedFolderNestDetails.self, json: json) + case .dictionary(_): + return SharedLinkRemoveVisitorDetails() + default: + throw JSONSerializerError.deserializeError(type: SharedLinkRemoveVisitorDetails.self, json: json) } } } - /// The SharedFolderNestType struct - public class SharedFolderNestType: CustomStringConvertible, JSONRepresentable { + /// The SharedLinkRemoveVisitorType struct + public class SharedLinkRemoveVisitorType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -53168,88 +65804,88 @@ public class TeamLog { } func json() throws -> JSON { - try SharedFolderNestTypeSerializer().serialize(self) + try SharedLinkRemoveVisitorTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedFolderNestTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkRemoveVisitorTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedFolderNestType: \(error)" + return "Failed to generate description for SharedLinkRemoveVisitorType: \(error)" } } } - - public class SharedFolderNestTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedFolderNestType) throws -> JSON { + public class SharedLinkRemoveVisitorTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedLinkRemoveVisitorType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedFolderNestType { + public func deserialize(_ json: JSON) throws -> SharedLinkRemoveVisitorType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SharedFolderNestType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SharedFolderNestType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharedLinkRemoveVisitorType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharedLinkRemoveVisitorType.self, json: json) } } } - /// Transferred ownership of shared folder to another member. - public class SharedFolderTransferOwnershipDetails: CustomStringConvertible, JSONRepresentable { - /// The email address of the previous shared folder owner. - public let previousOwnerEmail: String? - /// The email address of the new shared folder owner. - public let newOwnerEmail: String - public init(newOwnerEmail: String, previousOwnerEmail: String? = nil) { - nullableValidator(stringValidator(maxLength: 255))(previousOwnerEmail) - self.previousOwnerEmail = previousOwnerEmail - stringValidator(maxLength: 255)(newOwnerEmail) - self.newOwnerEmail = newOwnerEmail + /// Added an expiration date to the shared link. + public class SharedLinkSettingsAddExpirationDetails: CustomStringConvertible, JSONRepresentable { + /// Shared content access level. + public let sharedContentAccessLevel: Sharing.AccessLevel + /// Shared content link. + public let sharedContentLink: String? + /// New shared content link expiration date. Might be missing due to historical data gap. + public let newValue: Date? + public init(sharedContentAccessLevel: Sharing.AccessLevel, sharedContentLink: String? = nil, newValue: Date? = nil) { + self.sharedContentAccessLevel = sharedContentAccessLevel + nullableValidator(stringValidator())(sharedContentLink) + self.sharedContentLink = sharedContentLink + self.newValue = newValue } func json() throws -> JSON { - try SharedFolderTransferOwnershipDetailsSerializer().serialize(self) + try SharedLinkSettingsAddExpirationDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedFolderTransferOwnershipDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkSettingsAddExpirationDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedFolderTransferOwnershipDetails: \(error)" + return "Failed to generate description for SharedLinkSettingsAddExpirationDetails: \(error)" } } } - - public class SharedFolderTransferOwnershipDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedFolderTransferOwnershipDetails) throws -> JSON { + public class SharedLinkSettingsAddExpirationDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedLinkSettingsAddExpirationDetails) throws -> JSON { let output = [ - "new_owner_email": try Serialization._StringSerializer.serialize(value.newOwnerEmail), - "previous_owner_email": try NullableSerializer(Serialization._StringSerializer).serialize(value.previousOwnerEmail), + "shared_content_access_level": try Sharing.AccessLevelSerializer().serialize(value.sharedContentAccessLevel), + "shared_content_link": try NullableSerializer(Serialization._StringSerializer).serialize(value.sharedContentLink), + "new_value": try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).serialize(value.newValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedFolderTransferOwnershipDetails { + public func deserialize(_ json: JSON) throws -> SharedLinkSettingsAddExpirationDetails { switch json { - case .dictionary(let dict): - let newOwnerEmail = try Serialization._StringSerializer.deserialize(dict["new_owner_email"] ?? .null) - let previousOwnerEmail = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["previous_owner_email"] ?? .null) - return SharedFolderTransferOwnershipDetails(newOwnerEmail: newOwnerEmail, previousOwnerEmail: previousOwnerEmail) - default: - throw JSONSerializerError.deserializeError(type: SharedFolderTransferOwnershipDetails.self, json: json) + case .dictionary(let dict): + let sharedContentAccessLevel = try Sharing.AccessLevelSerializer().deserialize(dict["shared_content_access_level"] ?? .null) + let sharedContentLink = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["shared_content_link"] ?? .null) + let newValue = try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).deserialize(dict["new_value"] ?? .null) + return SharedLinkSettingsAddExpirationDetails(sharedContentAccessLevel: sharedContentAccessLevel, sharedContentLink: sharedContentLink, newValue: newValue) + default: + throw JSONSerializerError.deserializeError(type: SharedLinkSettingsAddExpirationDetails.self, json: json) } } } - /// The SharedFolderTransferOwnershipType struct - public class SharedFolderTransferOwnershipType: CustomStringConvertible, JSONRepresentable { + /// The SharedLinkSettingsAddExpirationType struct + public class SharedLinkSettingsAddExpirationType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -53258,72 +65894,83 @@ public class TeamLog { } func json() throws -> JSON { - try SharedFolderTransferOwnershipTypeSerializer().serialize(self) + try SharedLinkSettingsAddExpirationTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedFolderTransferOwnershipTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkSettingsAddExpirationTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedFolderTransferOwnershipType: \(error)" + return "Failed to generate description for SharedLinkSettingsAddExpirationType: \(error)" } } } - - public class SharedFolderTransferOwnershipTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedFolderTransferOwnershipType) throws -> JSON { + public class SharedLinkSettingsAddExpirationTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedLinkSettingsAddExpirationType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedFolderTransferOwnershipType { + public func deserialize(_ json: JSON) throws -> SharedLinkSettingsAddExpirationType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SharedFolderTransferOwnershipType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SharedFolderTransferOwnershipType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharedLinkSettingsAddExpirationType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharedLinkSettingsAddExpirationType.self, json: json) } } } - /// Deleted shared folder from Dropbox. - public class SharedFolderUnmountDetails: CustomStringConvertible, JSONRepresentable { + /// Added a password to the shared link. + public class SharedLinkSettingsAddPasswordDetails: CustomStringConvertible, JSONRepresentable { + /// Shared content access level. + public let sharedContentAccessLevel: Sharing.AccessLevel + /// Shared content link. + public let sharedContentLink: String? + public init(sharedContentAccessLevel: Sharing.AccessLevel, sharedContentLink: String? = nil) { + self.sharedContentAccessLevel = sharedContentAccessLevel + nullableValidator(stringValidator())(sharedContentLink) + self.sharedContentLink = sharedContentLink + } + func json() throws -> JSON { - try SharedFolderUnmountDetailsSerializer().serialize(self) + try SharedLinkSettingsAddPasswordDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedFolderUnmountDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkSettingsAddPasswordDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedFolderUnmountDetails: \(error)" + return "Failed to generate description for SharedLinkSettingsAddPasswordDetails: \(error)" } } } - - public class SharedFolderUnmountDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedFolderUnmountDetails) throws -> JSON { - let output = [String: JSON]() + public class SharedLinkSettingsAddPasswordDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedLinkSettingsAddPasswordDetails) throws -> JSON { + let output = [ + "shared_content_access_level": try Sharing.AccessLevelSerializer().serialize(value.sharedContentAccessLevel), + "shared_content_link": try NullableSerializer(Serialization._StringSerializer).serialize(value.sharedContentLink), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedFolderUnmountDetails { + public func deserialize(_ json: JSON) throws -> SharedLinkSettingsAddPasswordDetails { switch json { - case .dictionary: - return SharedFolderUnmountDetails() - default: - throw JSONSerializerError.deserializeError(type: SharedFolderUnmountDetails.self, json: json) + case .dictionary(let dict): + let sharedContentAccessLevel = try Sharing.AccessLevelSerializer().deserialize(dict["shared_content_access_level"] ?? .null) + let sharedContentLink = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["shared_content_link"] ?? .null) + return SharedLinkSettingsAddPasswordDetails(sharedContentAccessLevel: sharedContentAccessLevel, sharedContentLink: sharedContentLink) + default: + throw JSONSerializerError.deserializeError(type: SharedLinkSettingsAddPasswordDetails.self, json: json) } } } - /// The SharedFolderUnmountType struct - public class SharedFolderUnmountType: CustomStringConvertible, JSONRepresentable { + /// The SharedLinkSettingsAddPasswordType struct + public class SharedLinkSettingsAddPasswordType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -53332,150 +65979,83 @@ public class TeamLog { } func json() throws -> JSON { - try SharedFolderUnmountTypeSerializer().serialize(self) + try SharedLinkSettingsAddPasswordTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedFolderUnmountTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkSettingsAddPasswordTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedFolderUnmountType: \(error)" + return "Failed to generate description for SharedLinkSettingsAddPasswordType: \(error)" } } } - - public class SharedFolderUnmountTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedFolderUnmountType) throws -> JSON { + public class SharedLinkSettingsAddPasswordTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedLinkSettingsAddPasswordType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedFolderUnmountType { - switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SharedFolderUnmountType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SharedFolderUnmountType.self, json: json) - } - } - } - - /// Shared link access level. - public enum SharedLinkAccessLevel: CustomStringConvertible, JSONRepresentable { - /// An unspecified error. - case none - /// An unspecified error. - case reader - /// An unspecified error. - case writer - /// An unspecified error. - case other - - func json() throws -> JSON { - try SharedLinkAccessLevelSerializer().serialize(self) - } - - public var description: String { - do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkAccessLevelSerializer().serialize(self)))" - } catch { - return "Failed to generate description for SharedLinkAccessLevel: \(error)" - } - } - } - - public class SharedLinkAccessLevelSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedLinkAccessLevel) throws -> JSON { - switch value { - case .none: - var d = [String: JSON]() - d[".tag"] = .str("none") - return .dictionary(d) - case .reader: - var d = [String: JSON]() - d[".tag"] = .str("reader") - return .dictionary(d) - case .writer: - var d = [String: JSON]() - d[".tag"] = .str("writer") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) - } - } - - public func deserialize(_ json: JSON) throws -> SharedLinkAccessLevel { + public func deserialize(_ json: JSON) throws -> SharedLinkSettingsAddPasswordType { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "none": - return SharedLinkAccessLevel.none - case "reader": - return SharedLinkAccessLevel.reader - case "writer": - return SharedLinkAccessLevel.writer - case "other": - return SharedLinkAccessLevel.other + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharedLinkSettingsAddPasswordType(description_: description_) default: - return SharedLinkAccessLevel.other - } - default: - throw JSONSerializerError.deserializeError(type: SharedLinkAccessLevel.self, json: json) + throw JSONSerializerError.deserializeError(type: SharedLinkSettingsAddPasswordType.self, json: json) } } } - /// Added shared link expiration date. - public class SharedLinkAddExpiryDetails: CustomStringConvertible, JSONRepresentable { - /// New shared link expiration date. - public let newValue: Date - public init(newValue: Date) { - self.newValue = newValue + /// Disabled downloads. + public class SharedLinkSettingsAllowDownloadDisabledDetails: CustomStringConvertible, JSONRepresentable { + /// Shared content access level. + public let sharedContentAccessLevel: Sharing.AccessLevel + /// Shared content link. + public let sharedContentLink: String? + public init(sharedContentAccessLevel: Sharing.AccessLevel, sharedContentLink: String? = nil) { + self.sharedContentAccessLevel = sharedContentAccessLevel + nullableValidator(stringValidator())(sharedContentLink) + self.sharedContentLink = sharedContentLink } func json() throws -> JSON { - try SharedLinkAddExpiryDetailsSerializer().serialize(self) + try SharedLinkSettingsAllowDownloadDisabledDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkAddExpiryDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkSettingsAllowDownloadDisabledDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedLinkAddExpiryDetails: \(error)" + return "Failed to generate description for SharedLinkSettingsAllowDownloadDisabledDetails: \(error)" } } } - - public class SharedLinkAddExpiryDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedLinkAddExpiryDetails) throws -> JSON { + public class SharedLinkSettingsAllowDownloadDisabledDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedLinkSettingsAllowDownloadDisabledDetails) throws -> JSON { let output = [ - "new_value": try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").serialize(value.newValue), + "shared_content_access_level": try Sharing.AccessLevelSerializer().serialize(value.sharedContentAccessLevel), + "shared_content_link": try NullableSerializer(Serialization._StringSerializer).serialize(value.sharedContentLink), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedLinkAddExpiryDetails { + public func deserialize(_ json: JSON) throws -> SharedLinkSettingsAllowDownloadDisabledDetails { switch json { - case .dictionary(let dict): - let newValue = try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").deserialize(dict["new_value"] ?? .null) - return SharedLinkAddExpiryDetails(newValue: newValue) - default: - throw JSONSerializerError.deserializeError(type: SharedLinkAddExpiryDetails.self, json: json) + case .dictionary(let dict): + let sharedContentAccessLevel = try Sharing.AccessLevelSerializer().deserialize(dict["shared_content_access_level"] ?? .null) + let sharedContentLink = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["shared_content_link"] ?? .null) + return SharedLinkSettingsAllowDownloadDisabledDetails(sharedContentAccessLevel: sharedContentAccessLevel, sharedContentLink: sharedContentLink) + default: + throw JSONSerializerError.deserializeError(type: SharedLinkSettingsAllowDownloadDisabledDetails.self, json: json) } } } - /// The SharedLinkAddExpiryType struct - public class SharedLinkAddExpiryType: CustomStringConvertible, JSONRepresentable { + /// The SharedLinkSettingsAllowDownloadDisabledType struct + public class SharedLinkSettingsAllowDownloadDisabledType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -53484,86 +66064,83 @@ public class TeamLog { } func json() throws -> JSON { - try SharedLinkAddExpiryTypeSerializer().serialize(self) + try SharedLinkSettingsAllowDownloadDisabledTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkAddExpiryTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkSettingsAllowDownloadDisabledTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedLinkAddExpiryType: \(error)" + return "Failed to generate description for SharedLinkSettingsAllowDownloadDisabledType: \(error)" } } } - - public class SharedLinkAddExpiryTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedLinkAddExpiryType) throws -> JSON { + public class SharedLinkSettingsAllowDownloadDisabledTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedLinkSettingsAllowDownloadDisabledType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedLinkAddExpiryType { + public func deserialize(_ json: JSON) throws -> SharedLinkSettingsAllowDownloadDisabledType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SharedLinkAddExpiryType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SharedLinkAddExpiryType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharedLinkSettingsAllowDownloadDisabledType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharedLinkSettingsAllowDownloadDisabledType.self, json: json) } } } - /// Changed shared link expiration date. - public class SharedLinkChangeExpiryDetails: CustomStringConvertible, JSONRepresentable { - /// New shared link expiration date. Might be missing due to historical data gap. - public let newValue: Date? - /// Previous shared link expiration date. Might be missing due to historical data gap. - public let previousValue: Date? - public init(newValue: Date? = nil, previousValue: Date? = nil) { - self.newValue = newValue - self.previousValue = previousValue + /// Enabled downloads. + public class SharedLinkSettingsAllowDownloadEnabledDetails: CustomStringConvertible, JSONRepresentable { + /// Shared content access level. + public let sharedContentAccessLevel: Sharing.AccessLevel + /// Shared content link. + public let sharedContentLink: String? + public init(sharedContentAccessLevel: Sharing.AccessLevel, sharedContentLink: String? = nil) { + self.sharedContentAccessLevel = sharedContentAccessLevel + nullableValidator(stringValidator())(sharedContentLink) + self.sharedContentLink = sharedContentLink } func json() throws -> JSON { - try SharedLinkChangeExpiryDetailsSerializer().serialize(self) + try SharedLinkSettingsAllowDownloadEnabledDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkChangeExpiryDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkSettingsAllowDownloadEnabledDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedLinkChangeExpiryDetails: \(error)" + return "Failed to generate description for SharedLinkSettingsAllowDownloadEnabledDetails: \(error)" } } } - - public class SharedLinkChangeExpiryDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedLinkChangeExpiryDetails) throws -> JSON { + public class SharedLinkSettingsAllowDownloadEnabledDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedLinkSettingsAllowDownloadEnabledDetails) throws -> JSON { let output = [ - "new_value": try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).serialize(value.newValue), - "previous_value": try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).serialize(value.previousValue), + "shared_content_access_level": try Sharing.AccessLevelSerializer().serialize(value.sharedContentAccessLevel), + "shared_content_link": try NullableSerializer(Serialization._StringSerializer).serialize(value.sharedContentLink), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedLinkChangeExpiryDetails { + public func deserialize(_ json: JSON) throws -> SharedLinkSettingsAllowDownloadEnabledDetails { switch json { - case .dictionary(let dict): - let newValue = try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).deserialize(dict["new_value"] ?? .null) - let previousValue = try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).deserialize(dict["previous_value"] ?? .null) - return SharedLinkChangeExpiryDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: SharedLinkChangeExpiryDetails.self, json: json) + case .dictionary(let dict): + let sharedContentAccessLevel = try Sharing.AccessLevelSerializer().deserialize(dict["shared_content_access_level"] ?? .null) + let sharedContentLink = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["shared_content_link"] ?? .null) + return SharedLinkSettingsAllowDownloadEnabledDetails(sharedContentAccessLevel: sharedContentAccessLevel, sharedContentLink: sharedContentLink) + default: + throw JSONSerializerError.deserializeError(type: SharedLinkSettingsAllowDownloadEnabledDetails.self, json: json) } } } - /// The SharedLinkChangeExpiryType struct - public class SharedLinkChangeExpiryType: CustomStringConvertible, JSONRepresentable { + /// The SharedLinkSettingsAllowDownloadEnabledType struct + public class SharedLinkSettingsAllowDownloadEnabledType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -53572,86 +66149,93 @@ public class TeamLog { } func json() throws -> JSON { - try SharedLinkChangeExpiryTypeSerializer().serialize(self) + try SharedLinkSettingsAllowDownloadEnabledTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkChangeExpiryTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkSettingsAllowDownloadEnabledTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedLinkChangeExpiryType: \(error)" + return "Failed to generate description for SharedLinkSettingsAllowDownloadEnabledType: \(error)" } } } - - public class SharedLinkChangeExpiryTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedLinkChangeExpiryType) throws -> JSON { + public class SharedLinkSettingsAllowDownloadEnabledTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedLinkSettingsAllowDownloadEnabledType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedLinkChangeExpiryType { + public func deserialize(_ json: JSON) throws -> SharedLinkSettingsAllowDownloadEnabledType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SharedLinkChangeExpiryType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SharedLinkChangeExpiryType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharedLinkSettingsAllowDownloadEnabledType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharedLinkSettingsAllowDownloadEnabledType.self, json: json) } } } - /// Changed visibility of shared link. - public class SharedLinkChangeVisibilityDetails: CustomStringConvertible, JSONRepresentable { - /// New shared link visibility. - public let newValue: TeamLog.SharedLinkVisibility - /// Previous shared link visibility. Might be missing due to historical data gap. - public let previousValue: TeamLog.SharedLinkVisibility? - public init(newValue: TeamLog.SharedLinkVisibility, previousValue: TeamLog.SharedLinkVisibility? = nil) { + /// Changed the audience of the shared link. + public class SharedLinkSettingsChangeAudienceDetails: CustomStringConvertible, JSONRepresentable { + /// Shared content access level. + public let sharedContentAccessLevel: Sharing.AccessLevel + /// Shared content link. + public let sharedContentLink: String? + /// New link audience value. + public let newValue: Sharing.LinkAudience + /// Previous link audience value. + public let previousValue: Sharing.LinkAudience? + public init(sharedContentAccessLevel: Sharing.AccessLevel, newValue: Sharing.LinkAudience, sharedContentLink: String? = nil, previousValue: Sharing.LinkAudience? = nil) { + self.sharedContentAccessLevel = sharedContentAccessLevel + nullableValidator(stringValidator())(sharedContentLink) + self.sharedContentLink = sharedContentLink self.newValue = newValue self.previousValue = previousValue } func json() throws -> JSON { - try SharedLinkChangeVisibilityDetailsSerializer().serialize(self) + try SharedLinkSettingsChangeAudienceDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkChangeVisibilityDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkSettingsChangeAudienceDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedLinkChangeVisibilityDetails: \(error)" + return "Failed to generate description for SharedLinkSettingsChangeAudienceDetails: \(error)" } } } - - public class SharedLinkChangeVisibilityDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedLinkChangeVisibilityDetails) throws -> JSON { + public class SharedLinkSettingsChangeAudienceDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedLinkSettingsChangeAudienceDetails) throws -> JSON { let output = [ - "new_value": try TeamLog.SharedLinkVisibilitySerializer().serialize(value.newValue), - "previous_value": try NullableSerializer(TeamLog.SharedLinkVisibilitySerializer()).serialize(value.previousValue), + "shared_content_access_level": try Sharing.AccessLevelSerializer().serialize(value.sharedContentAccessLevel), + "new_value": try Sharing.LinkAudienceSerializer().serialize(value.newValue), + "shared_content_link": try NullableSerializer(Serialization._StringSerializer).serialize(value.sharedContentLink), + "previous_value": try NullableSerializer(Sharing.LinkAudienceSerializer()).serialize(value.previousValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedLinkChangeVisibilityDetails { + public func deserialize(_ json: JSON) throws -> SharedLinkSettingsChangeAudienceDetails { switch json { - case .dictionary(let dict): - let newValue = try TeamLog.SharedLinkVisibilitySerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try NullableSerializer(TeamLog.SharedLinkVisibilitySerializer()).deserialize(dict["previous_value"] ?? .null) - return SharedLinkChangeVisibilityDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: SharedLinkChangeVisibilityDetails.self, json: json) + case .dictionary(let dict): + let sharedContentAccessLevel = try Sharing.AccessLevelSerializer().deserialize(dict["shared_content_access_level"] ?? .null) + let newValue = try Sharing.LinkAudienceSerializer().deserialize(dict["new_value"] ?? .null) + let sharedContentLink = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["shared_content_link"] ?? .null) + let previousValue = try NullableSerializer(Sharing.LinkAudienceSerializer()).deserialize(dict["previous_value"] ?? .null) + return SharedLinkSettingsChangeAudienceDetails(sharedContentAccessLevel: sharedContentAccessLevel, newValue: newValue, sharedContentLink: sharedContentLink, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: SharedLinkSettingsChangeAudienceDetails.self, json: json) } } } - /// The SharedLinkChangeVisibilityType struct - public class SharedLinkChangeVisibilityType: CustomStringConvertible, JSONRepresentable { + /// The SharedLinkSettingsChangeAudienceType struct + public class SharedLinkSettingsChangeAudienceType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -53660,81 +66244,93 @@ public class TeamLog { } func json() throws -> JSON { - try SharedLinkChangeVisibilityTypeSerializer().serialize(self) + try SharedLinkSettingsChangeAudienceTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkChangeVisibilityTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkSettingsChangeAudienceTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedLinkChangeVisibilityType: \(error)" + return "Failed to generate description for SharedLinkSettingsChangeAudienceType: \(error)" } } } - - public class SharedLinkChangeVisibilityTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedLinkChangeVisibilityType) throws -> JSON { + public class SharedLinkSettingsChangeAudienceTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedLinkSettingsChangeAudienceType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedLinkChangeVisibilityType { + public func deserialize(_ json: JSON) throws -> SharedLinkSettingsChangeAudienceType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SharedLinkChangeVisibilityType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SharedLinkChangeVisibilityType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharedLinkSettingsChangeAudienceType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharedLinkSettingsChangeAudienceType.self, json: json) } } } - /// Added file/folder to Dropbox from shared link. - public class SharedLinkCopyDetails: CustomStringConvertible, JSONRepresentable { - /// Shared link owner details. Might be missing due to historical data gap. - public let sharedLinkOwner: TeamLog.UserLogInfo? - public init(sharedLinkOwner: TeamLog.UserLogInfo? = nil) { - self.sharedLinkOwner = sharedLinkOwner + /// Changed the expiration date of the shared link. + public class SharedLinkSettingsChangeExpirationDetails: CustomStringConvertible, JSONRepresentable { + /// Shared content access level. + public let sharedContentAccessLevel: Sharing.AccessLevel + /// Shared content link. + public let sharedContentLink: String? + /// New shared content link expiration date. Might be missing due to historical data gap. + public let newValue: Date? + /// Previous shared content link expiration date. Might be missing due to historical data gap. + public let previousValue: Date? + public init(sharedContentAccessLevel: Sharing.AccessLevel, sharedContentLink: String? = nil, newValue: Date? = nil, previousValue: Date? = nil) { + self.sharedContentAccessLevel = sharedContentAccessLevel + nullableValidator(stringValidator())(sharedContentLink) + self.sharedContentLink = sharedContentLink + self.newValue = newValue + self.previousValue = previousValue } func json() throws -> JSON { - try SharedLinkCopyDetailsSerializer().serialize(self) + try SharedLinkSettingsChangeExpirationDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkCopyDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkSettingsChangeExpirationDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedLinkCopyDetails: \(error)" + return "Failed to generate description for SharedLinkSettingsChangeExpirationDetails: \(error)" } } } - - public class SharedLinkCopyDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedLinkCopyDetails) throws -> JSON { + public class SharedLinkSettingsChangeExpirationDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedLinkSettingsChangeExpirationDetails) throws -> JSON { let output = [ - "shared_link_owner": try NullableSerializer(TeamLog.UserLogInfoSerializer()).serialize(value.sharedLinkOwner), + "shared_content_access_level": try Sharing.AccessLevelSerializer().serialize(value.sharedContentAccessLevel), + "shared_content_link": try NullableSerializer(Serialization._StringSerializer).serialize(value.sharedContentLink), + "new_value": try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).serialize(value.newValue), + "previous_value": try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).serialize(value.previousValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedLinkCopyDetails { + public func deserialize(_ json: JSON) throws -> SharedLinkSettingsChangeExpirationDetails { switch json { - case .dictionary(let dict): - let sharedLinkOwner = try NullableSerializer(TeamLog.UserLogInfoSerializer()).deserialize(dict["shared_link_owner"] ?? .null) - return SharedLinkCopyDetails(sharedLinkOwner: sharedLinkOwner) - default: - throw JSONSerializerError.deserializeError(type: SharedLinkCopyDetails.self, json: json) + case .dictionary(let dict): + let sharedContentAccessLevel = try Sharing.AccessLevelSerializer().deserialize(dict["shared_content_access_level"] ?? .null) + let sharedContentLink = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["shared_content_link"] ?? .null) + let newValue = try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).deserialize(dict["new_value"] ?? .null) + let previousValue = try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).deserialize(dict["previous_value"] ?? .null) + return SharedLinkSettingsChangeExpirationDetails(sharedContentAccessLevel: sharedContentAccessLevel, sharedContentLink: sharedContentLink, newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: SharedLinkSettingsChangeExpirationDetails.self, json: json) } } } - /// The SharedLinkCopyType struct - public class SharedLinkCopyType: CustomStringConvertible, JSONRepresentable { + /// The SharedLinkSettingsChangeExpirationType struct + public class SharedLinkSettingsChangeExpirationType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -53743,82 +66339,83 @@ public class TeamLog { } func json() throws -> JSON { - try SharedLinkCopyTypeSerializer().serialize(self) + try SharedLinkSettingsChangeExpirationTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkCopyTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkSettingsChangeExpirationTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedLinkCopyType: \(error)" + return "Failed to generate description for SharedLinkSettingsChangeExpirationType: \(error)" } } } - - public class SharedLinkCopyTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedLinkCopyType) throws -> JSON { + public class SharedLinkSettingsChangeExpirationTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedLinkSettingsChangeExpirationType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedLinkCopyType { + public func deserialize(_ json: JSON) throws -> SharedLinkSettingsChangeExpirationType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SharedLinkCopyType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SharedLinkCopyType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharedLinkSettingsChangeExpirationType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharedLinkSettingsChangeExpirationType.self, json: json) } } } - /// Created shared link. - public class SharedLinkCreateDetails: CustomStringConvertible, JSONRepresentable { - /// Defines who can access the shared link. Might be missing due to historical data gap. - public let sharedLinkAccessLevel: TeamLog.SharedLinkAccessLevel? - public init(sharedLinkAccessLevel: TeamLog.SharedLinkAccessLevel? = nil) { - self.sharedLinkAccessLevel = sharedLinkAccessLevel + /// Changed the password of the shared link. + public class SharedLinkSettingsChangePasswordDetails: CustomStringConvertible, JSONRepresentable { + /// Shared content access level. + public let sharedContentAccessLevel: Sharing.AccessLevel + /// Shared content link. + public let sharedContentLink: String? + public init(sharedContentAccessLevel: Sharing.AccessLevel, sharedContentLink: String? = nil) { + self.sharedContentAccessLevel = sharedContentAccessLevel + nullableValidator(stringValidator())(sharedContentLink) + self.sharedContentLink = sharedContentLink } func json() throws -> JSON { - try SharedLinkCreateDetailsSerializer().serialize(self) + try SharedLinkSettingsChangePasswordDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkCreateDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkSettingsChangePasswordDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedLinkCreateDetails: \(error)" + return "Failed to generate description for SharedLinkSettingsChangePasswordDetails: \(error)" } } } - - public class SharedLinkCreateDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedLinkCreateDetails) throws -> JSON { + public class SharedLinkSettingsChangePasswordDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedLinkSettingsChangePasswordDetails) throws -> JSON { let output = [ - "shared_link_access_level": try NullableSerializer(TeamLog.SharedLinkAccessLevelSerializer()).serialize(value.sharedLinkAccessLevel), + "shared_content_access_level": try Sharing.AccessLevelSerializer().serialize(value.sharedContentAccessLevel), + "shared_content_link": try NullableSerializer(Serialization._StringSerializer).serialize(value.sharedContentLink), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedLinkCreateDetails { + public func deserialize(_ json: JSON) throws -> SharedLinkSettingsChangePasswordDetails { switch json { - case .dictionary(let dict): - let sharedLinkAccessLevel = try NullableSerializer(TeamLog.SharedLinkAccessLevelSerializer()) - .deserialize(dict["shared_link_access_level"] ?? .null) - return SharedLinkCreateDetails(sharedLinkAccessLevel: sharedLinkAccessLevel) - default: - throw JSONSerializerError.deserializeError(type: SharedLinkCreateDetails.self, json: json) + case .dictionary(let dict): + let sharedContentAccessLevel = try Sharing.AccessLevelSerializer().deserialize(dict["shared_content_access_level"] ?? .null) + let sharedContentLink = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["shared_content_link"] ?? .null) + return SharedLinkSettingsChangePasswordDetails(sharedContentAccessLevel: sharedContentAccessLevel, sharedContentLink: sharedContentLink) + default: + throw JSONSerializerError.deserializeError(type: SharedLinkSettingsChangePasswordDetails.self, json: json) } } } - /// The SharedLinkCreateType struct - public class SharedLinkCreateType: CustomStringConvertible, JSONRepresentable { + /// The SharedLinkSettingsChangePasswordType struct + public class SharedLinkSettingsChangePasswordType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -53827,81 +66424,88 @@ public class TeamLog { } func json() throws -> JSON { - try SharedLinkCreateTypeSerializer().serialize(self) + try SharedLinkSettingsChangePasswordTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkCreateTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkSettingsChangePasswordTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedLinkCreateType: \(error)" + return "Failed to generate description for SharedLinkSettingsChangePasswordType: \(error)" } } } - - public class SharedLinkCreateTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedLinkCreateType) throws -> JSON { + public class SharedLinkSettingsChangePasswordTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedLinkSettingsChangePasswordType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedLinkCreateType { + public func deserialize(_ json: JSON) throws -> SharedLinkSettingsChangePasswordType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SharedLinkCreateType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SharedLinkCreateType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharedLinkSettingsChangePasswordType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharedLinkSettingsChangePasswordType.self, json: json) } } } - /// Removed shared link. - public class SharedLinkDisableDetails: CustomStringConvertible, JSONRepresentable { - /// Shared link owner details. Might be missing due to historical data gap. - public let sharedLinkOwner: TeamLog.UserLogInfo? - public init(sharedLinkOwner: TeamLog.UserLogInfo? = nil) { - self.sharedLinkOwner = sharedLinkOwner + /// Removed the expiration date from the shared link. + public class SharedLinkSettingsRemoveExpirationDetails: CustomStringConvertible, JSONRepresentable { + /// Shared content access level. + public let sharedContentAccessLevel: Sharing.AccessLevel + /// Shared content link. + public let sharedContentLink: String? + /// Previous shared link expiration date. Might be missing due to historical data gap. + public let previousValue: Date? + public init(sharedContentAccessLevel: Sharing.AccessLevel, sharedContentLink: String? = nil, previousValue: Date? = nil) { + self.sharedContentAccessLevel = sharedContentAccessLevel + nullableValidator(stringValidator())(sharedContentLink) + self.sharedContentLink = sharedContentLink + self.previousValue = previousValue } func json() throws -> JSON { - try SharedLinkDisableDetailsSerializer().serialize(self) + try SharedLinkSettingsRemoveExpirationDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkDisableDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkSettingsRemoveExpirationDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedLinkDisableDetails: \(error)" + return "Failed to generate description for SharedLinkSettingsRemoveExpirationDetails: \(error)" } } } - - public class SharedLinkDisableDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedLinkDisableDetails) throws -> JSON { + public class SharedLinkSettingsRemoveExpirationDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedLinkSettingsRemoveExpirationDetails) throws -> JSON { let output = [ - "shared_link_owner": try NullableSerializer(TeamLog.UserLogInfoSerializer()).serialize(value.sharedLinkOwner), + "shared_content_access_level": try Sharing.AccessLevelSerializer().serialize(value.sharedContentAccessLevel), + "shared_content_link": try NullableSerializer(Serialization._StringSerializer).serialize(value.sharedContentLink), + "previous_value": try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).serialize(value.previousValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedLinkDisableDetails { + public func deserialize(_ json: JSON) throws -> SharedLinkSettingsRemoveExpirationDetails { switch json { - case .dictionary(let dict): - let sharedLinkOwner = try NullableSerializer(TeamLog.UserLogInfoSerializer()).deserialize(dict["shared_link_owner"] ?? .null) - return SharedLinkDisableDetails(sharedLinkOwner: sharedLinkOwner) - default: - throw JSONSerializerError.deserializeError(type: SharedLinkDisableDetails.self, json: json) + case .dictionary(let dict): + let sharedContentAccessLevel = try Sharing.AccessLevelSerializer().deserialize(dict["shared_content_access_level"] ?? .null) + let sharedContentLink = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["shared_content_link"] ?? .null) + let previousValue = try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).deserialize(dict["previous_value"] ?? .null) + return SharedLinkSettingsRemoveExpirationDetails(sharedContentAccessLevel: sharedContentAccessLevel, sharedContentLink: sharedContentLink, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: SharedLinkSettingsRemoveExpirationDetails.self, json: json) } } } - /// The SharedLinkDisableType struct - public class SharedLinkDisableType: CustomStringConvertible, JSONRepresentable { + /// The SharedLinkSettingsRemoveExpirationType struct + public class SharedLinkSettingsRemoveExpirationType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -53910,81 +66514,83 @@ public class TeamLog { } func json() throws -> JSON { - try SharedLinkDisableTypeSerializer().serialize(self) + try SharedLinkSettingsRemoveExpirationTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkDisableTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkSettingsRemoveExpirationTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedLinkDisableType: \(error)" + return "Failed to generate description for SharedLinkSettingsRemoveExpirationType: \(error)" } } } - - public class SharedLinkDisableTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedLinkDisableType) throws -> JSON { + public class SharedLinkSettingsRemoveExpirationTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedLinkSettingsRemoveExpirationType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedLinkDisableType { + public func deserialize(_ json: JSON) throws -> SharedLinkSettingsRemoveExpirationType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SharedLinkDisableType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SharedLinkDisableType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharedLinkSettingsRemoveExpirationType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharedLinkSettingsRemoveExpirationType.self, json: json) } } } - /// Downloaded file/folder from shared link. - public class SharedLinkDownloadDetails: CustomStringConvertible, JSONRepresentable { - /// Shared link owner details. Might be missing due to historical data gap. - public let sharedLinkOwner: TeamLog.UserLogInfo? - public init(sharedLinkOwner: TeamLog.UserLogInfo? = nil) { - self.sharedLinkOwner = sharedLinkOwner + /// Removed the password from the shared link. + public class SharedLinkSettingsRemovePasswordDetails: CustomStringConvertible, JSONRepresentable { + /// Shared content access level. + public let sharedContentAccessLevel: Sharing.AccessLevel + /// Shared content link. + public let sharedContentLink: String? + public init(sharedContentAccessLevel: Sharing.AccessLevel, sharedContentLink: String? = nil) { + self.sharedContentAccessLevel = sharedContentAccessLevel + nullableValidator(stringValidator())(sharedContentLink) + self.sharedContentLink = sharedContentLink } func json() throws -> JSON { - try SharedLinkDownloadDetailsSerializer().serialize(self) + try SharedLinkSettingsRemovePasswordDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkDownloadDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkSettingsRemovePasswordDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedLinkDownloadDetails: \(error)" + return "Failed to generate description for SharedLinkSettingsRemovePasswordDetails: \(error)" } } } - - public class SharedLinkDownloadDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedLinkDownloadDetails) throws -> JSON { + public class SharedLinkSettingsRemovePasswordDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedLinkSettingsRemovePasswordDetails) throws -> JSON { let output = [ - "shared_link_owner": try NullableSerializer(TeamLog.UserLogInfoSerializer()).serialize(value.sharedLinkOwner), + "shared_content_access_level": try Sharing.AccessLevelSerializer().serialize(value.sharedContentAccessLevel), + "shared_content_link": try NullableSerializer(Serialization._StringSerializer).serialize(value.sharedContentLink), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedLinkDownloadDetails { + public func deserialize(_ json: JSON) throws -> SharedLinkSettingsRemovePasswordDetails { switch json { - case .dictionary(let dict): - let sharedLinkOwner = try NullableSerializer(TeamLog.UserLogInfoSerializer()).deserialize(dict["shared_link_owner"] ?? .null) - return SharedLinkDownloadDetails(sharedLinkOwner: sharedLinkOwner) - default: - throw JSONSerializerError.deserializeError(type: SharedLinkDownloadDetails.self, json: json) + case .dictionary(let dict): + let sharedContentAccessLevel = try Sharing.AccessLevelSerializer().deserialize(dict["shared_content_access_level"] ?? .null) + let sharedContentLink = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["shared_content_link"] ?? .null) + return SharedLinkSettingsRemovePasswordDetails(sharedContentAccessLevel: sharedContentAccessLevel, sharedContentLink: sharedContentLink) + default: + throw JSONSerializerError.deserializeError(type: SharedLinkSettingsRemovePasswordDetails.self, json: json) } } } - /// The SharedLinkDownloadType struct - public class SharedLinkDownloadType: CustomStringConvertible, JSONRepresentable { + /// The SharedLinkSettingsRemovePasswordType struct + public class SharedLinkSettingsRemovePasswordType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -53993,81 +66599,82 @@ public class TeamLog { } func json() throws -> JSON { - try SharedLinkDownloadTypeSerializer().serialize(self) + try SharedLinkSettingsRemovePasswordTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkDownloadTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkSettingsRemovePasswordTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedLinkDownloadType: \(error)" + return "Failed to generate description for SharedLinkSettingsRemovePasswordType: \(error)" } } } - - public class SharedLinkDownloadTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedLinkDownloadType) throws -> JSON { + public class SharedLinkSettingsRemovePasswordTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedLinkSettingsRemovePasswordType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedLinkDownloadType { + public func deserialize(_ json: JSON) throws -> SharedLinkSettingsRemovePasswordType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SharedLinkDownloadType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SharedLinkDownloadType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharedLinkSettingsRemovePasswordType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharedLinkSettingsRemovePasswordType.self, json: json) } } } - /// Removed shared link expiration date. - public class SharedLinkRemoveExpiryDetails: CustomStringConvertible, JSONRepresentable { - /// Previous shared link expiration date. Might be missing due to historical data gap. - public let previousValue: Date? - public init(previousValue: Date? = nil) { - self.previousValue = previousValue + /// Added members as audience of shared link. + public class SharedLinkShareDetails: CustomStringConvertible, JSONRepresentable { + /// Shared link owner details. Might be missing due to historical data gap. + public let sharedLinkOwner: TeamLog.UserLogInfo? + /// Users without a Dropbox account that were added as shared link audience. + public let externalUsers: Array? + public init(sharedLinkOwner: TeamLog.UserLogInfo? = nil, externalUsers: Array? = nil) { + self.sharedLinkOwner = sharedLinkOwner + self.externalUsers = externalUsers } func json() throws -> JSON { - try SharedLinkRemoveExpiryDetailsSerializer().serialize(self) + try SharedLinkShareDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkRemoveExpiryDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkShareDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedLinkRemoveExpiryDetails: \(error)" + return "Failed to generate description for SharedLinkShareDetails: \(error)" } } } - - public class SharedLinkRemoveExpiryDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedLinkRemoveExpiryDetails) throws -> JSON { + public class SharedLinkShareDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedLinkShareDetails) throws -> JSON { let output = [ - "previous_value": try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).serialize(value.previousValue), + "shared_link_owner": try NullableSerializer(TeamLog.UserLogInfoSerializer()).serialize(value.sharedLinkOwner), + "external_users": try NullableSerializer(ArraySerializer(TeamLog.ExternalUserLogInfoSerializer())).serialize(value.externalUsers), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedLinkRemoveExpiryDetails { + public func deserialize(_ json: JSON) throws -> SharedLinkShareDetails { switch json { - case .dictionary(let dict): - let previousValue = try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).deserialize(dict["previous_value"] ?? .null) - return SharedLinkRemoveExpiryDetails(previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: SharedLinkRemoveExpiryDetails.self, json: json) + case .dictionary(let dict): + let sharedLinkOwner = try NullableSerializer(TeamLog.UserLogInfoSerializer()).deserialize(dict["shared_link_owner"] ?? .null) + let externalUsers = try NullableSerializer(ArraySerializer(TeamLog.ExternalUserLogInfoSerializer())).deserialize(dict["external_users"] ?? .null) + return SharedLinkShareDetails(sharedLinkOwner: sharedLinkOwner, externalUsers: externalUsers) + default: + throw JSONSerializerError.deserializeError(type: SharedLinkShareDetails.self, json: json) } } } - /// The SharedLinkRemoveExpiryType struct - public class SharedLinkRemoveExpiryType: CustomStringConvertible, JSONRepresentable { + /// The SharedLinkShareType struct + public class SharedLinkShareType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -54076,96 +66683,77 @@ public class TeamLog { } func json() throws -> JSON { - try SharedLinkRemoveExpiryTypeSerializer().serialize(self) + try SharedLinkShareTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkRemoveExpiryTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkShareTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedLinkRemoveExpiryType: \(error)" + return "Failed to generate description for SharedLinkShareType: \(error)" } } } - - public class SharedLinkRemoveExpiryTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedLinkRemoveExpiryType) throws -> JSON { + public class SharedLinkShareTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedLinkShareType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedLinkRemoveExpiryType { + public func deserialize(_ json: JSON) throws -> SharedLinkShareType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SharedLinkRemoveExpiryType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SharedLinkRemoveExpiryType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharedLinkShareType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharedLinkShareType.self, json: json) } } } - /// Added an expiration date to the shared link. - public class SharedLinkSettingsAddExpirationDetails: CustomStringConvertible, JSONRepresentable { - /// Shared content access level. - public let sharedContentAccessLevel: Sharing.AccessLevel - /// Shared content link. - public let sharedContentLink: String? - /// New shared content link expiration date. Might be missing due to historical data gap. - public let newValue: Date? - public init(sharedContentAccessLevel: Sharing.AccessLevel, sharedContentLink: String? = nil, newValue: Date? = nil) { - self.sharedContentAccessLevel = sharedContentAccessLevel - nullableValidator(stringValidator())(sharedContentLink) - self.sharedContentLink = sharedContentLink - self.newValue = newValue + /// Opened shared link. + public class SharedLinkViewDetails: CustomStringConvertible, JSONRepresentable { + /// Shared link owner details. Might be missing due to historical data gap. + public let sharedLinkOwner: TeamLog.UserLogInfo? + public init(sharedLinkOwner: TeamLog.UserLogInfo? = nil) { + self.sharedLinkOwner = sharedLinkOwner } func json() throws -> JSON { - try SharedLinkSettingsAddExpirationDetailsSerializer().serialize(self) + try SharedLinkViewDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkSettingsAddExpirationDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkViewDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedLinkSettingsAddExpirationDetails: \(error)" + return "Failed to generate description for SharedLinkViewDetails: \(error)" } } } - - public class SharedLinkSettingsAddExpirationDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedLinkSettingsAddExpirationDetails) throws -> JSON { + public class SharedLinkViewDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedLinkViewDetails) throws -> JSON { let output = [ - "shared_content_access_level": try Sharing.AccessLevelSerializer().serialize(value.sharedContentAccessLevel), - "shared_content_link": try NullableSerializer(Serialization._StringSerializer).serialize(value.sharedContentLink), - "new_value": try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).serialize(value.newValue), + "shared_link_owner": try NullableSerializer(TeamLog.UserLogInfoSerializer()).serialize(value.sharedLinkOwner), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedLinkSettingsAddExpirationDetails { + public func deserialize(_ json: JSON) throws -> SharedLinkViewDetails { switch json { - case .dictionary(let dict): - let sharedContentAccessLevel = try Sharing.AccessLevelSerializer().deserialize(dict["shared_content_access_level"] ?? .null) - let sharedContentLink = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["shared_content_link"] ?? .null) - let newValue = try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).deserialize(dict["new_value"] ?? .null) - return SharedLinkSettingsAddExpirationDetails( - sharedContentAccessLevel: sharedContentAccessLevel, - sharedContentLink: sharedContentLink, - newValue: newValue - ) - default: - throw JSONSerializerError.deserializeError(type: SharedLinkSettingsAddExpirationDetails.self, json: json) + case .dictionary(let dict): + let sharedLinkOwner = try NullableSerializer(TeamLog.UserLogInfoSerializer()).deserialize(dict["shared_link_owner"] ?? .null) + return SharedLinkViewDetails(sharedLinkOwner: sharedLinkOwner) + default: + throw JSONSerializerError.deserializeError(type: SharedLinkViewDetails.self, json: json) } } } - /// The SharedLinkSettingsAddExpirationType struct - public class SharedLinkSettingsAddExpirationType: CustomStringConvertible, JSONRepresentable { + /// The SharedLinkViewType struct + public class SharedLinkViewType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -54174,87 +66762,144 @@ public class TeamLog { } func json() throws -> JSON { - try SharedLinkSettingsAddExpirationTypeSerializer().serialize(self) + try SharedLinkViewTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkSettingsAddExpirationTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkViewTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedLinkSettingsAddExpirationType: \(error)" + return "Failed to generate description for SharedLinkViewType: \(error)" } } } - - public class SharedLinkSettingsAddExpirationTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedLinkSettingsAddExpirationType) throws -> JSON { + public class SharedLinkViewTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedLinkViewType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedLinkSettingsAddExpirationType { + public func deserialize(_ json: JSON) throws -> SharedLinkViewType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SharedLinkSettingsAddExpirationType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SharedLinkSettingsAddExpirationType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharedLinkViewType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharedLinkViewType.self, json: json) } } } - /// Added a password to the shared link. - public class SharedLinkSettingsAddPasswordDetails: CustomStringConvertible, JSONRepresentable { - /// Shared content access level. - public let sharedContentAccessLevel: Sharing.AccessLevel - /// Shared content link. - public let sharedContentLink: String? - public init(sharedContentAccessLevel: Sharing.AccessLevel, sharedContentLink: String? = nil) { - self.sharedContentAccessLevel = sharedContentAccessLevel - nullableValidator(stringValidator())(sharedContentLink) - self.sharedContentLink = sharedContentLink - } + /// Defines who has access to a shared link. + public enum SharedLinkVisibility: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case noOne + /// An unspecified error. + case password + /// An unspecified error. + case public_ + /// An unspecified error. + case teamOnly + /// An unspecified error. + case other func json() throws -> JSON { - try SharedLinkSettingsAddPasswordDetailsSerializer().serialize(self) + try SharedLinkVisibilitySerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkSettingsAddPasswordDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkVisibilitySerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedLinkSettingsAddPasswordDetails: \(error)" + return "Failed to generate description for SharedLinkVisibility: \(error)" + } + } + } + public class SharedLinkVisibilitySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedLinkVisibility) throws -> JSON { + switch value { + case .noOne: + var d = [String: JSON]() + d[".tag"] = .str("no_one") + return .dictionary(d) + case .password: + var d = [String: JSON]() + d[".tag"] = .str("password") + return .dictionary(d) + case .public_: + var d = [String: JSON]() + d[".tag"] = .str("public") + return .dictionary(d) + case .teamOnly: + var d = [String: JSON]() + d[".tag"] = .str("team_only") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> SharedLinkVisibility { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "no_one": + return SharedLinkVisibility.noOne + case "password": + return SharedLinkVisibility.password + case "public": + return SharedLinkVisibility.public_ + case "team_only": + return SharedLinkVisibility.teamOnly + case "other": + return SharedLinkVisibility.other + default: + return SharedLinkVisibility.other + } + default: + throw JSONSerializerError.deserializeError(type: SharedLinkVisibility.self, json: json) } } } - public class SharedLinkSettingsAddPasswordDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedLinkSettingsAddPasswordDetails) throws -> JSON { - let output = [ - "shared_content_access_level": try Sharing.AccessLevelSerializer().serialize(value.sharedContentAccessLevel), - "shared_content_link": try NullableSerializer(Serialization._StringSerializer).serialize(value.sharedContentLink), - ] - return .dictionary(output) + /// Opened shared Paper doc. + public class SharedNoteOpenedDetails: CustomStringConvertible, JSONRepresentable { + + func json() throws -> JSON { + try SharedNoteOpenedDetailsSerializer().serialize(self) } - public func deserialize(_ json: JSON) throws -> SharedLinkSettingsAddPasswordDetails { + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try SharedNoteOpenedDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for SharedNoteOpenedDetails: \(error)" + } + } + } + public class SharedNoteOpenedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedNoteOpenedDetails) throws -> JSON { + let output = [String: JSON]() + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> SharedNoteOpenedDetails { switch json { - case .dictionary(let dict): - let sharedContentAccessLevel = try Sharing.AccessLevelSerializer().deserialize(dict["shared_content_access_level"] ?? .null) - let sharedContentLink = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["shared_content_link"] ?? .null) - return SharedLinkSettingsAddPasswordDetails(sharedContentAccessLevel: sharedContentAccessLevel, sharedContentLink: sharedContentLink) - default: - throw JSONSerializerError.deserializeError(type: SharedLinkSettingsAddPasswordDetails.self, json: json) + case .dictionary(_): + return SharedNoteOpenedDetails() + default: + throw JSONSerializerError.deserializeError(type: SharedNoteOpenedDetails.self, json: json) } } } - /// The SharedLinkSettingsAddPasswordType struct - public class SharedLinkSettingsAddPasswordType: CustomStringConvertible, JSONRepresentable { + /// The SharedNoteOpenedType struct + public class SharedNoteOpenedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -54263,90 +66908,82 @@ public class TeamLog { } func json() throws -> JSON { - try SharedLinkSettingsAddPasswordTypeSerializer().serialize(self) + try SharedNoteOpenedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkSettingsAddPasswordTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharedNoteOpenedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedLinkSettingsAddPasswordType: \(error)" + return "Failed to generate description for SharedNoteOpenedType: \(error)" } } } - - public class SharedLinkSettingsAddPasswordTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedLinkSettingsAddPasswordType) throws -> JSON { + public class SharedNoteOpenedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharedNoteOpenedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedLinkSettingsAddPasswordType { + public func deserialize(_ json: JSON) throws -> SharedNoteOpenedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SharedLinkSettingsAddPasswordType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SharedLinkSettingsAddPasswordType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharedNoteOpenedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharedNoteOpenedType.self, json: json) } } } - /// Disabled downloads. - public class SharedLinkSettingsAllowDownloadDisabledDetails: CustomStringConvertible, JSONRepresentable { - /// Shared content access level. - public let sharedContentAccessLevel: Sharing.AccessLevel - /// Shared content link. - public let sharedContentLink: String? - public init(sharedContentAccessLevel: Sharing.AccessLevel, sharedContentLink: String? = nil) { - self.sharedContentAccessLevel = sharedContentAccessLevel - nullableValidator(stringValidator())(sharedContentLink) - self.sharedContentLink = sharedContentLink + /// Changed whether team members can join shared folders owned outside team. + public class SharingChangeFolderJoinPolicyDetails: CustomStringConvertible, JSONRepresentable { + /// New external join policy. + public let newValue: TeamLog.SharingFolderJoinPolicy + /// Previous external join policy. Might be missing due to historical data gap. + public let previousValue: TeamLog.SharingFolderJoinPolicy? + public init(newValue: TeamLog.SharingFolderJoinPolicy, previousValue: TeamLog.SharingFolderJoinPolicy? = nil) { + self.newValue = newValue + self.previousValue = previousValue } func json() throws -> JSON { - try SharedLinkSettingsAllowDownloadDisabledDetailsSerializer().serialize(self) + try SharingChangeFolderJoinPolicyDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkSettingsAllowDownloadDisabledDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharingChangeFolderJoinPolicyDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedLinkSettingsAllowDownloadDisabledDetails: \(error)" + return "Failed to generate description for SharingChangeFolderJoinPolicyDetails: \(error)" } } } - - public class SharedLinkSettingsAllowDownloadDisabledDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedLinkSettingsAllowDownloadDisabledDetails) throws -> JSON { + public class SharingChangeFolderJoinPolicyDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharingChangeFolderJoinPolicyDetails) throws -> JSON { let output = [ - "shared_content_access_level": try Sharing.AccessLevelSerializer().serialize(value.sharedContentAccessLevel), - "shared_content_link": try NullableSerializer(Serialization._StringSerializer).serialize(value.sharedContentLink), + "new_value": try TeamLog.SharingFolderJoinPolicySerializer().serialize(value.newValue), + "previous_value": try NullableSerializer(TeamLog.SharingFolderJoinPolicySerializer()).serialize(value.previousValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedLinkSettingsAllowDownloadDisabledDetails { + public func deserialize(_ json: JSON) throws -> SharingChangeFolderJoinPolicyDetails { switch json { - case .dictionary(let dict): - let sharedContentAccessLevel = try Sharing.AccessLevelSerializer().deserialize(dict["shared_content_access_level"] ?? .null) - let sharedContentLink = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["shared_content_link"] ?? .null) - return SharedLinkSettingsAllowDownloadDisabledDetails( - sharedContentAccessLevel: sharedContentAccessLevel, - sharedContentLink: sharedContentLink - ) - default: - throw JSONSerializerError.deserializeError(type: SharedLinkSettingsAllowDownloadDisabledDetails.self, json: json) + case .dictionary(let dict): + let newValue = try TeamLog.SharingFolderJoinPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try NullableSerializer(TeamLog.SharingFolderJoinPolicySerializer()).deserialize(dict["previous_value"] ?? .null) + return SharingChangeFolderJoinPolicyDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: SharingChangeFolderJoinPolicyDetails.self, json: json) } } } - /// The SharedLinkSettingsAllowDownloadDisabledType struct - public class SharedLinkSettingsAllowDownloadDisabledType: CustomStringConvertible, JSONRepresentable { + /// The SharingChangeFolderJoinPolicyType struct + public class SharingChangeFolderJoinPolicyType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -54355,90 +66992,82 @@ public class TeamLog { } func json() throws -> JSON { - try SharedLinkSettingsAllowDownloadDisabledTypeSerializer().serialize(self) + try SharingChangeFolderJoinPolicyTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkSettingsAllowDownloadDisabledTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharingChangeFolderJoinPolicyTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedLinkSettingsAllowDownloadDisabledType: \(error)" + return "Failed to generate description for SharingChangeFolderJoinPolicyType: \(error)" } } } - - public class SharedLinkSettingsAllowDownloadDisabledTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedLinkSettingsAllowDownloadDisabledType) throws -> JSON { + public class SharingChangeFolderJoinPolicyTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharingChangeFolderJoinPolicyType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedLinkSettingsAllowDownloadDisabledType { + public func deserialize(_ json: JSON) throws -> SharingChangeFolderJoinPolicyType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SharedLinkSettingsAllowDownloadDisabledType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SharedLinkSettingsAllowDownloadDisabledType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharingChangeFolderJoinPolicyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharingChangeFolderJoinPolicyType.self, json: json) } } } - /// Enabled downloads. - public class SharedLinkSettingsAllowDownloadEnabledDetails: CustomStringConvertible, JSONRepresentable { - /// Shared content access level. - public let sharedContentAccessLevel: Sharing.AccessLevel - /// Shared content link. - public let sharedContentLink: String? - public init(sharedContentAccessLevel: Sharing.AccessLevel, sharedContentLink: String? = nil) { - self.sharedContentAccessLevel = sharedContentAccessLevel - nullableValidator(stringValidator())(sharedContentLink) - self.sharedContentLink = sharedContentLink + /// Changed the allow remove or change expiration policy for the links shared outside of the team. + public class SharingChangeLinkAllowChangeExpirationPolicyDetails: CustomStringConvertible, JSONRepresentable { + /// To. + public let newValue: TeamLog.EnforceLinkPasswordPolicy + /// From. + public let previousValue: TeamLog.EnforceLinkPasswordPolicy? + public init(newValue: TeamLog.EnforceLinkPasswordPolicy, previousValue: TeamLog.EnforceLinkPasswordPolicy? = nil) { + self.newValue = newValue + self.previousValue = previousValue } func json() throws -> JSON { - try SharedLinkSettingsAllowDownloadEnabledDetailsSerializer().serialize(self) + try SharingChangeLinkAllowChangeExpirationPolicyDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkSettingsAllowDownloadEnabledDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharingChangeLinkAllowChangeExpirationPolicyDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedLinkSettingsAllowDownloadEnabledDetails: \(error)" + return "Failed to generate description for SharingChangeLinkAllowChangeExpirationPolicyDetails: \(error)" } } } - - public class SharedLinkSettingsAllowDownloadEnabledDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedLinkSettingsAllowDownloadEnabledDetails) throws -> JSON { + public class SharingChangeLinkAllowChangeExpirationPolicyDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharingChangeLinkAllowChangeExpirationPolicyDetails) throws -> JSON { let output = [ - "shared_content_access_level": try Sharing.AccessLevelSerializer().serialize(value.sharedContentAccessLevel), - "shared_content_link": try NullableSerializer(Serialization._StringSerializer).serialize(value.sharedContentLink), + "new_value": try TeamLog.EnforceLinkPasswordPolicySerializer().serialize(value.newValue), + "previous_value": try NullableSerializer(TeamLog.EnforceLinkPasswordPolicySerializer()).serialize(value.previousValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedLinkSettingsAllowDownloadEnabledDetails { + public func deserialize(_ json: JSON) throws -> SharingChangeLinkAllowChangeExpirationPolicyDetails { switch json { - case .dictionary(let dict): - let sharedContentAccessLevel = try Sharing.AccessLevelSerializer().deserialize(dict["shared_content_access_level"] ?? .null) - let sharedContentLink = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["shared_content_link"] ?? .null) - return SharedLinkSettingsAllowDownloadEnabledDetails( - sharedContentAccessLevel: sharedContentAccessLevel, - sharedContentLink: sharedContentLink - ) - default: - throw JSONSerializerError.deserializeError(type: SharedLinkSettingsAllowDownloadEnabledDetails.self, json: json) + case .dictionary(let dict): + let newValue = try TeamLog.EnforceLinkPasswordPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try NullableSerializer(TeamLog.EnforceLinkPasswordPolicySerializer()).deserialize(dict["previous_value"] ?? .null) + return SharingChangeLinkAllowChangeExpirationPolicyDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: SharingChangeLinkAllowChangeExpirationPolicyDetails.self, json: json) } } } - /// The SharedLinkSettingsAllowDownloadEnabledType struct - public class SharedLinkSettingsAllowDownloadEnabledType: CustomStringConvertible, JSONRepresentable { + /// The SharingChangeLinkAllowChangeExpirationPolicyType struct + public class SharingChangeLinkAllowChangeExpirationPolicyType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -54447,107 +67076,82 @@ public class TeamLog { } func json() throws -> JSON { - try SharedLinkSettingsAllowDownloadEnabledTypeSerializer().serialize(self) + try SharingChangeLinkAllowChangeExpirationPolicyTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkSettingsAllowDownloadEnabledTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharingChangeLinkAllowChangeExpirationPolicyTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedLinkSettingsAllowDownloadEnabledType: \(error)" + return "Failed to generate description for SharingChangeLinkAllowChangeExpirationPolicyType: \(error)" } } } - - public class SharedLinkSettingsAllowDownloadEnabledTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedLinkSettingsAllowDownloadEnabledType) throws -> JSON { + public class SharingChangeLinkAllowChangeExpirationPolicyTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharingChangeLinkAllowChangeExpirationPolicyType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedLinkSettingsAllowDownloadEnabledType { + public func deserialize(_ json: JSON) throws -> SharingChangeLinkAllowChangeExpirationPolicyType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SharedLinkSettingsAllowDownloadEnabledType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SharedLinkSettingsAllowDownloadEnabledType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharingChangeLinkAllowChangeExpirationPolicyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharingChangeLinkAllowChangeExpirationPolicyType.self, json: json) } } } - /// Changed the audience of the shared link. - public class SharedLinkSettingsChangeAudienceDetails: CustomStringConvertible, JSONRepresentable { - /// Shared content access level. - public let sharedContentAccessLevel: Sharing.AccessLevel - /// Shared content link. - public let sharedContentLink: String? - /// New link audience value. - public let newValue: Sharing.LinkAudience - /// Previous link audience value. - public let previousValue: Sharing.LinkAudience? - public init( - sharedContentAccessLevel: Sharing.AccessLevel, - newValue: Sharing.LinkAudience, - sharedContentLink: String? = nil, - previousValue: Sharing.LinkAudience? = nil - ) { - self.sharedContentAccessLevel = sharedContentAccessLevel - nullableValidator(stringValidator())(sharedContentLink) - self.sharedContentLink = sharedContentLink + /// Changed the default expiration for the links shared outside of the team. + public class SharingChangeLinkDefaultExpirationPolicyDetails: CustomStringConvertible, JSONRepresentable { + /// To. + public let newValue: TeamLog.DefaultLinkExpirationDaysPolicy + /// From. + public let previousValue: TeamLog.DefaultLinkExpirationDaysPolicy? + public init(newValue: TeamLog.DefaultLinkExpirationDaysPolicy, previousValue: TeamLog.DefaultLinkExpirationDaysPolicy? = nil) { self.newValue = newValue self.previousValue = previousValue } func json() throws -> JSON { - try SharedLinkSettingsChangeAudienceDetailsSerializer().serialize(self) + try SharingChangeLinkDefaultExpirationPolicyDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkSettingsChangeAudienceDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharingChangeLinkDefaultExpirationPolicyDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedLinkSettingsChangeAudienceDetails: \(error)" + return "Failed to generate description for SharingChangeLinkDefaultExpirationPolicyDetails: \(error)" } } } - - public class SharedLinkSettingsChangeAudienceDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedLinkSettingsChangeAudienceDetails) throws -> JSON { + public class SharingChangeLinkDefaultExpirationPolicyDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharingChangeLinkDefaultExpirationPolicyDetails) throws -> JSON { let output = [ - "shared_content_access_level": try Sharing.AccessLevelSerializer().serialize(value.sharedContentAccessLevel), - "new_value": try Sharing.LinkAudienceSerializer().serialize(value.newValue), - "shared_content_link": try NullableSerializer(Serialization._StringSerializer).serialize(value.sharedContentLink), - "previous_value": try NullableSerializer(Sharing.LinkAudienceSerializer()).serialize(value.previousValue), + "new_value": try TeamLog.DefaultLinkExpirationDaysPolicySerializer().serialize(value.newValue), + "previous_value": try NullableSerializer(TeamLog.DefaultLinkExpirationDaysPolicySerializer()).serialize(value.previousValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedLinkSettingsChangeAudienceDetails { + public func deserialize(_ json: JSON) throws -> SharingChangeLinkDefaultExpirationPolicyDetails { switch json { - case .dictionary(let dict): - let sharedContentAccessLevel = try Sharing.AccessLevelSerializer().deserialize(dict["shared_content_access_level"] ?? .null) - let newValue = try Sharing.LinkAudienceSerializer().deserialize(dict["new_value"] ?? .null) - let sharedContentLink = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["shared_content_link"] ?? .null) - let previousValue = try NullableSerializer(Sharing.LinkAudienceSerializer()).deserialize(dict["previous_value"] ?? .null) - return SharedLinkSettingsChangeAudienceDetails( - sharedContentAccessLevel: sharedContentAccessLevel, - newValue: newValue, - sharedContentLink: sharedContentLink, - previousValue: previousValue - ) - default: - throw JSONSerializerError.deserializeError(type: SharedLinkSettingsChangeAudienceDetails.self, json: json) + case .dictionary(let dict): + let newValue = try TeamLog.DefaultLinkExpirationDaysPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try NullableSerializer(TeamLog.DefaultLinkExpirationDaysPolicySerializer()).deserialize(dict["previous_value"] ?? .null) + return SharingChangeLinkDefaultExpirationPolicyDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: SharingChangeLinkDefaultExpirationPolicyDetails.self, json: json) } } } - /// The SharedLinkSettingsChangeAudienceType struct - public class SharedLinkSettingsChangeAudienceType: CustomStringConvertible, JSONRepresentable { + /// The SharingChangeLinkDefaultExpirationPolicyType struct + public class SharingChangeLinkDefaultExpirationPolicyType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -54556,102 +67160,82 @@ public class TeamLog { } func json() throws -> JSON { - try SharedLinkSettingsChangeAudienceTypeSerializer().serialize(self) + try SharingChangeLinkDefaultExpirationPolicyTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkSettingsChangeAudienceTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharingChangeLinkDefaultExpirationPolicyTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedLinkSettingsChangeAudienceType: \(error)" + return "Failed to generate description for SharingChangeLinkDefaultExpirationPolicyType: \(error)" } } } - - public class SharedLinkSettingsChangeAudienceTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedLinkSettingsChangeAudienceType) throws -> JSON { + public class SharingChangeLinkDefaultExpirationPolicyTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharingChangeLinkDefaultExpirationPolicyType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedLinkSettingsChangeAudienceType { + public func deserialize(_ json: JSON) throws -> SharingChangeLinkDefaultExpirationPolicyType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SharedLinkSettingsChangeAudienceType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SharedLinkSettingsChangeAudienceType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharingChangeLinkDefaultExpirationPolicyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharingChangeLinkDefaultExpirationPolicyType.self, json: json) } } } - /// Changed the expiration date of the shared link. - public class SharedLinkSettingsChangeExpirationDetails: CustomStringConvertible, JSONRepresentable { - /// Shared content access level. - public let sharedContentAccessLevel: Sharing.AccessLevel - /// Shared content link. - public let sharedContentLink: String? - /// New shared content link expiration date. Might be missing due to historical data gap. - public let newValue: Date? - /// Previous shared content link expiration date. Might be missing due to historical data gap. - public let previousValue: Date? - public init(sharedContentAccessLevel: Sharing.AccessLevel, sharedContentLink: String? = nil, newValue: Date? = nil, previousValue: Date? = nil) { - self.sharedContentAccessLevel = sharedContentAccessLevel - nullableValidator(stringValidator())(sharedContentLink) - self.sharedContentLink = sharedContentLink + /// Changed the password requirement for the links shared outside of the team. + public class SharingChangeLinkEnforcePasswordPolicyDetails: CustomStringConvertible, JSONRepresentable { + /// To. + public let newValue: TeamLog.ChangeLinkExpirationPolicy + /// From. + public let previousValue: TeamLog.ChangeLinkExpirationPolicy? + public init(newValue: TeamLog.ChangeLinkExpirationPolicy, previousValue: TeamLog.ChangeLinkExpirationPolicy? = nil) { self.newValue = newValue self.previousValue = previousValue } func json() throws -> JSON { - try SharedLinkSettingsChangeExpirationDetailsSerializer().serialize(self) + try SharingChangeLinkEnforcePasswordPolicyDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkSettingsChangeExpirationDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharingChangeLinkEnforcePasswordPolicyDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedLinkSettingsChangeExpirationDetails: \(error)" + return "Failed to generate description for SharingChangeLinkEnforcePasswordPolicyDetails: \(error)" } } } - - public class SharedLinkSettingsChangeExpirationDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedLinkSettingsChangeExpirationDetails) throws -> JSON { + public class SharingChangeLinkEnforcePasswordPolicyDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharingChangeLinkEnforcePasswordPolicyDetails) throws -> JSON { let output = [ - "shared_content_access_level": try Sharing.AccessLevelSerializer().serialize(value.sharedContentAccessLevel), - "shared_content_link": try NullableSerializer(Serialization._StringSerializer).serialize(value.sharedContentLink), - "new_value": try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).serialize(value.newValue), - "previous_value": try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).serialize(value.previousValue), + "new_value": try TeamLog.ChangeLinkExpirationPolicySerializer().serialize(value.newValue), + "previous_value": try NullableSerializer(TeamLog.ChangeLinkExpirationPolicySerializer()).serialize(value.previousValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedLinkSettingsChangeExpirationDetails { + public func deserialize(_ json: JSON) throws -> SharingChangeLinkEnforcePasswordPolicyDetails { switch json { - case .dictionary(let dict): - let sharedContentAccessLevel = try Sharing.AccessLevelSerializer().deserialize(dict["shared_content_access_level"] ?? .null) - let sharedContentLink = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["shared_content_link"] ?? .null) - let newValue = try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).deserialize(dict["new_value"] ?? .null) - let previousValue = try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).deserialize(dict["previous_value"] ?? .null) - return SharedLinkSettingsChangeExpirationDetails( - sharedContentAccessLevel: sharedContentAccessLevel, - sharedContentLink: sharedContentLink, - newValue: newValue, - previousValue: previousValue - ) - default: - throw JSONSerializerError.deserializeError(type: SharedLinkSettingsChangeExpirationDetails.self, json: json) + case .dictionary(let dict): + let newValue = try TeamLog.ChangeLinkExpirationPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try NullableSerializer(TeamLog.ChangeLinkExpirationPolicySerializer()).deserialize(dict["previous_value"] ?? .null) + return SharingChangeLinkEnforcePasswordPolicyDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: SharingChangeLinkEnforcePasswordPolicyDetails.self, json: json) } } } - /// The SharedLinkSettingsChangeExpirationType struct - public class SharedLinkSettingsChangeExpirationType: CustomStringConvertible, JSONRepresentable { + /// The SharingChangeLinkEnforcePasswordPolicyType struct + public class SharingChangeLinkEnforcePasswordPolicyType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -54660,87 +67244,83 @@ public class TeamLog { } func json() throws -> JSON { - try SharedLinkSettingsChangeExpirationTypeSerializer().serialize(self) + try SharingChangeLinkEnforcePasswordPolicyTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkSettingsChangeExpirationTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharingChangeLinkEnforcePasswordPolicyTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedLinkSettingsChangeExpirationType: \(error)" + return "Failed to generate description for SharingChangeLinkEnforcePasswordPolicyType: \(error)" } } } - - public class SharedLinkSettingsChangeExpirationTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedLinkSettingsChangeExpirationType) throws -> JSON { + public class SharingChangeLinkEnforcePasswordPolicyTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharingChangeLinkEnforcePasswordPolicyType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedLinkSettingsChangeExpirationType { + public func deserialize(_ json: JSON) throws -> SharingChangeLinkEnforcePasswordPolicyType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SharedLinkSettingsChangeExpirationType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SharedLinkSettingsChangeExpirationType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharingChangeLinkEnforcePasswordPolicyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharingChangeLinkEnforcePasswordPolicyType.self, json: json) } } } - /// Changed the password of the shared link. - public class SharedLinkSettingsChangePasswordDetails: CustomStringConvertible, JSONRepresentable { - /// Shared content access level. - public let sharedContentAccessLevel: Sharing.AccessLevel - /// Shared content link. - public let sharedContentLink: String? - public init(sharedContentAccessLevel: Sharing.AccessLevel, sharedContentLink: String? = nil) { - self.sharedContentAccessLevel = sharedContentAccessLevel - nullableValidator(stringValidator())(sharedContentLink) - self.sharedContentLink = sharedContentLink + /// Changed whether members can share links outside team, and if links are accessible only by team members or anyone + /// by default. + public class SharingChangeLinkPolicyDetails: CustomStringConvertible, JSONRepresentable { + /// New external link accessibility policy. + public let newValue: TeamLog.SharingLinkPolicy + /// Previous external link accessibility policy. Might be missing due to historical data gap. + public let previousValue: TeamLog.SharingLinkPolicy? + public init(newValue: TeamLog.SharingLinkPolicy, previousValue: TeamLog.SharingLinkPolicy? = nil) { + self.newValue = newValue + self.previousValue = previousValue } func json() throws -> JSON { - try SharedLinkSettingsChangePasswordDetailsSerializer().serialize(self) + try SharingChangeLinkPolicyDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkSettingsChangePasswordDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharingChangeLinkPolicyDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedLinkSettingsChangePasswordDetails: \(error)" + return "Failed to generate description for SharingChangeLinkPolicyDetails: \(error)" } } } - - public class SharedLinkSettingsChangePasswordDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedLinkSettingsChangePasswordDetails) throws -> JSON { + public class SharingChangeLinkPolicyDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharingChangeLinkPolicyDetails) throws -> JSON { let output = [ - "shared_content_access_level": try Sharing.AccessLevelSerializer().serialize(value.sharedContentAccessLevel), - "shared_content_link": try NullableSerializer(Serialization._StringSerializer).serialize(value.sharedContentLink), + "new_value": try TeamLog.SharingLinkPolicySerializer().serialize(value.newValue), + "previous_value": try NullableSerializer(TeamLog.SharingLinkPolicySerializer()).serialize(value.previousValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedLinkSettingsChangePasswordDetails { + public func deserialize(_ json: JSON) throws -> SharingChangeLinkPolicyDetails { switch json { - case .dictionary(let dict): - let sharedContentAccessLevel = try Sharing.AccessLevelSerializer().deserialize(dict["shared_content_access_level"] ?? .null) - let sharedContentLink = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["shared_content_link"] ?? .null) - return SharedLinkSettingsChangePasswordDetails(sharedContentAccessLevel: sharedContentAccessLevel, sharedContentLink: sharedContentLink) - default: - throw JSONSerializerError.deserializeError(type: SharedLinkSettingsChangePasswordDetails.self, json: json) + case .dictionary(let dict): + let newValue = try TeamLog.SharingLinkPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try NullableSerializer(TeamLog.SharingLinkPolicySerializer()).deserialize(dict["previous_value"] ?? .null) + return SharingChangeLinkPolicyDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: SharingChangeLinkPolicyDetails.self, json: json) } } } - /// The SharedLinkSettingsChangePasswordType struct - public class SharedLinkSettingsChangePasswordType: CustomStringConvertible, JSONRepresentable { + /// The SharingChangeLinkPolicyType struct + public class SharingChangeLinkPolicyType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -54749,96 +67329,82 @@ public class TeamLog { } func json() throws -> JSON { - try SharedLinkSettingsChangePasswordTypeSerializer().serialize(self) + try SharingChangeLinkPolicyTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkSettingsChangePasswordTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharingChangeLinkPolicyTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedLinkSettingsChangePasswordType: \(error)" + return "Failed to generate description for SharingChangeLinkPolicyType: \(error)" } } } - - public class SharedLinkSettingsChangePasswordTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedLinkSettingsChangePasswordType) throws -> JSON { + public class SharingChangeLinkPolicyTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharingChangeLinkPolicyType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedLinkSettingsChangePasswordType { + public func deserialize(_ json: JSON) throws -> SharingChangeLinkPolicyType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SharedLinkSettingsChangePasswordType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SharedLinkSettingsChangePasswordType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharingChangeLinkPolicyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharingChangeLinkPolicyType.self, json: json) } } } - /// Removed the expiration date from the shared link. - public class SharedLinkSettingsRemoveExpirationDetails: CustomStringConvertible, JSONRepresentable { - /// Shared content access level. - public let sharedContentAccessLevel: Sharing.AccessLevel - /// Shared content link. - public let sharedContentLink: String? - /// Previous shared link expiration date. Might be missing due to historical data gap. - public let previousValue: Date? - public init(sharedContentAccessLevel: Sharing.AccessLevel, sharedContentLink: String? = nil, previousValue: Date? = nil) { - self.sharedContentAccessLevel = sharedContentAccessLevel - nullableValidator(stringValidator())(sharedContentLink) - self.sharedContentLink = sharedContentLink + /// Changed whether members can share files/folders outside team. + public class SharingChangeMemberPolicyDetails: CustomStringConvertible, JSONRepresentable { + /// New external invite policy. + public let newValue: TeamLog.SharingMemberPolicy + /// Previous external invite policy. Might be missing due to historical data gap. + public let previousValue: TeamLog.SharingMemberPolicy? + public init(newValue: TeamLog.SharingMemberPolicy, previousValue: TeamLog.SharingMemberPolicy? = nil) { + self.newValue = newValue self.previousValue = previousValue } func json() throws -> JSON { - try SharedLinkSettingsRemoveExpirationDetailsSerializer().serialize(self) + try SharingChangeMemberPolicyDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkSettingsRemoveExpirationDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharingChangeMemberPolicyDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedLinkSettingsRemoveExpirationDetails: \(error)" + return "Failed to generate description for SharingChangeMemberPolicyDetails: \(error)" } } } - - public class SharedLinkSettingsRemoveExpirationDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedLinkSettingsRemoveExpirationDetails) throws -> JSON { + public class SharingChangeMemberPolicyDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharingChangeMemberPolicyDetails) throws -> JSON { let output = [ - "shared_content_access_level": try Sharing.AccessLevelSerializer().serialize(value.sharedContentAccessLevel), - "shared_content_link": try NullableSerializer(Serialization._StringSerializer).serialize(value.sharedContentLink), - "previous_value": try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).serialize(value.previousValue), + "new_value": try TeamLog.SharingMemberPolicySerializer().serialize(value.newValue), + "previous_value": try NullableSerializer(TeamLog.SharingMemberPolicySerializer()).serialize(value.previousValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedLinkSettingsRemoveExpirationDetails { + public func deserialize(_ json: JSON) throws -> SharingChangeMemberPolicyDetails { switch json { - case .dictionary(let dict): - let sharedContentAccessLevel = try Sharing.AccessLevelSerializer().deserialize(dict["shared_content_access_level"] ?? .null) - let sharedContentLink = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["shared_content_link"] ?? .null) - let previousValue = try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).deserialize(dict["previous_value"] ?? .null) - return SharedLinkSettingsRemoveExpirationDetails( - sharedContentAccessLevel: sharedContentAccessLevel, - sharedContentLink: sharedContentLink, - previousValue: previousValue - ) - default: - throw JSONSerializerError.deserializeError(type: SharedLinkSettingsRemoveExpirationDetails.self, json: json) + case .dictionary(let dict): + let newValue = try TeamLog.SharingMemberPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try NullableSerializer(TeamLog.SharingMemberPolicySerializer()).deserialize(dict["previous_value"] ?? .null) + return SharingChangeMemberPolicyDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: SharingChangeMemberPolicyDetails.self, json: json) } } } - /// The SharedLinkSettingsRemoveExpirationType struct - public class SharedLinkSettingsRemoveExpirationType: CustomStringConvertible, JSONRepresentable { + /// The SharingChangeMemberPolicyType struct + public class SharingChangeMemberPolicyType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -54847,176 +67413,278 @@ public class TeamLog { } func json() throws -> JSON { - try SharedLinkSettingsRemoveExpirationTypeSerializer().serialize(self) + try SharingChangeMemberPolicyTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkSettingsRemoveExpirationTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharingChangeMemberPolicyTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedLinkSettingsRemoveExpirationType: \(error)" + return "Failed to generate description for SharingChangeMemberPolicyType: \(error)" } } } - - public class SharedLinkSettingsRemoveExpirationTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedLinkSettingsRemoveExpirationType) throws -> JSON { + public class SharingChangeMemberPolicyTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharingChangeMemberPolicyType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedLinkSettingsRemoveExpirationType { + public func deserialize(_ json: JSON) throws -> SharingChangeMemberPolicyType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SharedLinkSettingsRemoveExpirationType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SharedLinkSettingsRemoveExpirationType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SharingChangeMemberPolicyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SharingChangeMemberPolicyType.self, json: json) } } } - /// Removed the password from the shared link. - public class SharedLinkSettingsRemovePasswordDetails: CustomStringConvertible, JSONRepresentable { - /// Shared content access level. - public let sharedContentAccessLevel: Sharing.AccessLevel - /// Shared content link. - public let sharedContentLink: String? - public init(sharedContentAccessLevel: Sharing.AccessLevel, sharedContentLink: String? = nil) { - self.sharedContentAccessLevel = sharedContentAccessLevel - nullableValidator(stringValidator())(sharedContentLink) - self.sharedContentLink = sharedContentLink - } + /// Policy for controlling if team members can join shared folders owned by non team members. + public enum SharingFolderJoinPolicy: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case fromAnyone + /// An unspecified error. + case fromTeamOnly + /// An unspecified error. + case other func json() throws -> JSON { - try SharedLinkSettingsRemovePasswordDetailsSerializer().serialize(self) + try SharingFolderJoinPolicySerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkSettingsRemovePasswordDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharingFolderJoinPolicySerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedLinkSettingsRemovePasswordDetails: \(error)" + return "Failed to generate description for SharingFolderJoinPolicy: \(error)" } } } - - public class SharedLinkSettingsRemovePasswordDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedLinkSettingsRemovePasswordDetails) throws -> JSON { - let output = [ - "shared_content_access_level": try Sharing.AccessLevelSerializer().serialize(value.sharedContentAccessLevel), - "shared_content_link": try NullableSerializer(Serialization._StringSerializer).serialize(value.sharedContentLink), - ] - return .dictionary(output) + public class SharingFolderJoinPolicySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharingFolderJoinPolicy) throws -> JSON { + switch value { + case .fromAnyone: + var d = [String: JSON]() + d[".tag"] = .str("from_anyone") + return .dictionary(d) + case .fromTeamOnly: + var d = [String: JSON]() + d[".tag"] = .str("from_team_only") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } } - - public func deserialize(_ json: JSON) throws -> SharedLinkSettingsRemovePasswordDetails { + public func deserialize(_ json: JSON) throws -> SharingFolderJoinPolicy { switch json { - case .dictionary(let dict): - let sharedContentAccessLevel = try Sharing.AccessLevelSerializer().deserialize(dict["shared_content_access_level"] ?? .null) - let sharedContentLink = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["shared_content_link"] ?? .null) - return SharedLinkSettingsRemovePasswordDetails(sharedContentAccessLevel: sharedContentAccessLevel, sharedContentLink: sharedContentLink) - default: - throw JSONSerializerError.deserializeError(type: SharedLinkSettingsRemovePasswordDetails.self, json: json) + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "from_anyone": + return SharingFolderJoinPolicy.fromAnyone + case "from_team_only": + return SharingFolderJoinPolicy.fromTeamOnly + case "other": + return SharingFolderJoinPolicy.other + default: + return SharingFolderJoinPolicy.other + } + default: + throw JSONSerializerError.deserializeError(type: SharingFolderJoinPolicy.self, json: json) } } } - /// The SharedLinkSettingsRemovePasswordType struct - public class SharedLinkSettingsRemovePasswordType: CustomStringConvertible, JSONRepresentable { - /// (no description) - public let description_: String - public init(description_: String) { - stringValidator()(description_) - self.description_ = description_ - } + /// Policy for controlling if team members can share links externally + public enum SharingLinkPolicy: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case defaultNoOne + /// An unspecified error. + case defaultPrivate + /// An unspecified error. + case defaultPublic + /// An unspecified error. + case onlyPrivate + /// An unspecified error. + case other func json() throws -> JSON { - try SharedLinkSettingsRemovePasswordTypeSerializer().serialize(self) + try SharingLinkPolicySerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkSettingsRemovePasswordTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SharingLinkPolicySerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedLinkSettingsRemovePasswordType: \(error)" + return "Failed to generate description for SharingLinkPolicy: \(error)" + } + } + } + public class SharingLinkPolicySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharingLinkPolicy) throws -> JSON { + switch value { + case .defaultNoOne: + var d = [String: JSON]() + d[".tag"] = .str("default_no_one") + return .dictionary(d) + case .defaultPrivate: + var d = [String: JSON]() + d[".tag"] = .str("default_private") + return .dictionary(d) + case .defaultPublic: + var d = [String: JSON]() + d[".tag"] = .str("default_public") + return .dictionary(d) + case .onlyPrivate: + var d = [String: JSON]() + d[".tag"] = .str("only_private") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> SharingLinkPolicy { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "default_no_one": + return SharingLinkPolicy.defaultNoOne + case "default_private": + return SharingLinkPolicy.defaultPrivate + case "default_public": + return SharingLinkPolicy.defaultPublic + case "only_private": + return SharingLinkPolicy.onlyPrivate + case "other": + return SharingLinkPolicy.other + default: + return SharingLinkPolicy.other + } + default: + throw JSONSerializerError.deserializeError(type: SharingLinkPolicy.self, json: json) } } } - public class SharedLinkSettingsRemovePasswordTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedLinkSettingsRemovePasswordType) throws -> JSON { - let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), - ] - return .dictionary(output) + /// External sharing policy + public enum SharingMemberPolicy: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case allow + /// An unspecified error. + case forbid + /// An unspecified error. + case forbidWithExclusions + /// An unspecified error. + case other + + func json() throws -> JSON { + try SharingMemberPolicySerializer().serialize(self) } - public func deserialize(_ json: JSON) throws -> SharedLinkSettingsRemovePasswordType { + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try SharingMemberPolicySerializer().serialize(self)))" + } catch { + return "Failed to generate description for SharingMemberPolicy: \(error)" + } + } + } + public class SharingMemberPolicySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SharingMemberPolicy) throws -> JSON { + switch value { + case .allow: + var d = [String: JSON]() + d[".tag"] = .str("allow") + return .dictionary(d) + case .forbid: + var d = [String: JSON]() + d[".tag"] = .str("forbid") + return .dictionary(d) + case .forbidWithExclusions: + var d = [String: JSON]() + d[".tag"] = .str("forbid_with_exclusions") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> SharingMemberPolicy { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SharedLinkSettingsRemovePasswordType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SharedLinkSettingsRemovePasswordType.self, json: json) + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "allow": + return SharingMemberPolicy.allow + case "forbid": + return SharingMemberPolicy.forbid + case "forbid_with_exclusions": + return SharingMemberPolicy.forbidWithExclusions + case "other": + return SharingMemberPolicy.other + default: + return SharingMemberPolicy.other + } + default: + throw JSONSerializerError.deserializeError(type: SharingMemberPolicy.self, json: json) } } } - /// Added members as audience of shared link. - public class SharedLinkShareDetails: CustomStringConvertible, JSONRepresentable { + /// Disabled downloads for link. + public class ShmodelDisableDownloadsDetails: CustomStringConvertible, JSONRepresentable { /// Shared link owner details. Might be missing due to historical data gap. public let sharedLinkOwner: TeamLog.UserLogInfo? - /// Users without a Dropbox account that were added as shared link audience. - public let externalUsers: [TeamLog.ExternalUserLogInfo]? - public init(sharedLinkOwner: TeamLog.UserLogInfo? = nil, externalUsers: [TeamLog.ExternalUserLogInfo]? = nil) { + public init(sharedLinkOwner: TeamLog.UserLogInfo? = nil) { self.sharedLinkOwner = sharedLinkOwner - self.externalUsers = externalUsers } func json() throws -> JSON { - try SharedLinkShareDetailsSerializer().serialize(self) + try ShmodelDisableDownloadsDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkShareDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShmodelDisableDownloadsDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedLinkShareDetails: \(error)" + return "Failed to generate description for ShmodelDisableDownloadsDetails: \(error)" } } } - - public class SharedLinkShareDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedLinkShareDetails) throws -> JSON { + public class ShmodelDisableDownloadsDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShmodelDisableDownloadsDetails) throws -> JSON { let output = [ - "shared_link_owner": try NullableSerializer(TeamLog.UserLogInfoSerializer()).serialize(value.sharedLinkOwner), - "external_users": try NullableSerializer(ArraySerializer(TeamLog.ExternalUserLogInfoSerializer())).serialize(value.externalUsers), + "shared_link_owner": try NullableSerializer(TeamLog.UserLogInfoSerializer()).serialize(value.sharedLinkOwner), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedLinkShareDetails { + public func deserialize(_ json: JSON) throws -> ShmodelDisableDownloadsDetails { switch json { - case .dictionary(let dict): - let sharedLinkOwner = try NullableSerializer(TeamLog.UserLogInfoSerializer()).deserialize(dict["shared_link_owner"] ?? .null) - let externalUsers = try NullableSerializer(ArraySerializer(TeamLog.ExternalUserLogInfoSerializer())) - .deserialize(dict["external_users"] ?? .null) - return SharedLinkShareDetails(sharedLinkOwner: sharedLinkOwner, externalUsers: externalUsers) - default: - throw JSONSerializerError.deserializeError(type: SharedLinkShareDetails.self, json: json) + case .dictionary(let dict): + let sharedLinkOwner = try NullableSerializer(TeamLog.UserLogInfoSerializer()).deserialize(dict["shared_link_owner"] ?? .null) + return ShmodelDisableDownloadsDetails(sharedLinkOwner: sharedLinkOwner) + default: + throw JSONSerializerError.deserializeError(type: ShmodelDisableDownloadsDetails.self, json: json) } } } - /// The SharedLinkShareType struct - public class SharedLinkShareType: CustomStringConvertible, JSONRepresentable { + /// The ShmodelDisableDownloadsType struct + public class ShmodelDisableDownloadsType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -55025,40 +67693,38 @@ public class TeamLog { } func json() throws -> JSON { - try SharedLinkShareTypeSerializer().serialize(self) + try ShmodelDisableDownloadsTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkShareTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShmodelDisableDownloadsTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedLinkShareType: \(error)" + return "Failed to generate description for ShmodelDisableDownloadsType: \(error)" } } } - - public class SharedLinkShareTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedLinkShareType) throws -> JSON { + public class ShmodelDisableDownloadsTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShmodelDisableDownloadsType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedLinkShareType { + public func deserialize(_ json: JSON) throws -> ShmodelDisableDownloadsType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SharedLinkShareType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SharedLinkShareType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ShmodelDisableDownloadsType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ShmodelDisableDownloadsType.self, json: json) } } } - /// Opened shared link. - public class SharedLinkViewDetails: CustomStringConvertible, JSONRepresentable { + /// Enabled downloads for link. + public class ShmodelEnableDownloadsDetails: CustomStringConvertible, JSONRepresentable { /// Shared link owner details. Might be missing due to historical data gap. public let sharedLinkOwner: TeamLog.UserLogInfo? public init(sharedLinkOwner: TeamLog.UserLogInfo? = nil) { @@ -55066,40 +67732,38 @@ public class TeamLog { } func json() throws -> JSON { - try SharedLinkViewDetailsSerializer().serialize(self) + try ShmodelEnableDownloadsDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkViewDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShmodelEnableDownloadsDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedLinkViewDetails: \(error)" + return "Failed to generate description for ShmodelEnableDownloadsDetails: \(error)" } } } - - public class SharedLinkViewDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedLinkViewDetails) throws -> JSON { + public class ShmodelEnableDownloadsDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShmodelEnableDownloadsDetails) throws -> JSON { let output = [ - "shared_link_owner": try NullableSerializer(TeamLog.UserLogInfoSerializer()).serialize(value.sharedLinkOwner), + "shared_link_owner": try NullableSerializer(TeamLog.UserLogInfoSerializer()).serialize(value.sharedLinkOwner), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedLinkViewDetails { + public func deserialize(_ json: JSON) throws -> ShmodelEnableDownloadsDetails { switch json { - case .dictionary(let dict): - let sharedLinkOwner = try NullableSerializer(TeamLog.UserLogInfoSerializer()).deserialize(dict["shared_link_owner"] ?? .null) - return SharedLinkViewDetails(sharedLinkOwner: sharedLinkOwner) - default: - throw JSONSerializerError.deserializeError(type: SharedLinkViewDetails.self, json: json) + case .dictionary(let dict): + let sharedLinkOwner = try NullableSerializer(TeamLog.UserLogInfoSerializer()).deserialize(dict["shared_link_owner"] ?? .null) + return ShmodelEnableDownloadsDetails(sharedLinkOwner: sharedLinkOwner) + default: + throw JSONSerializerError.deserializeError(type: ShmodelEnableDownloadsDetails.self, json: json) } } } - /// The SharedLinkViewType struct - public class SharedLinkViewType: CustomStringConvertible, JSONRepresentable { + /// The ShmodelEnableDownloadsType struct + public class ShmodelEnableDownloadsType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -55108,149 +67772,69 @@ public class TeamLog { } func json() throws -> JSON { - try SharedLinkViewTypeSerializer().serialize(self) + try ShmodelEnableDownloadsTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkViewTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShmodelEnableDownloadsTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedLinkViewType: \(error)" + return "Failed to generate description for ShmodelEnableDownloadsType: \(error)" } } } - - public class SharedLinkViewTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedLinkViewType) throws -> JSON { + public class ShmodelEnableDownloadsTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShmodelEnableDownloadsType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) - } - - public func deserialize(_ json: JSON) throws -> SharedLinkViewType { - switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SharedLinkViewType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SharedLinkViewType.self, json: json) - } - } - } - - /// Defines who has access to a shared link. - public enum SharedLinkVisibility: CustomStringConvertible, JSONRepresentable { - /// An unspecified error. - case noOne - /// An unspecified error. - case password - /// An unspecified error. - case public_ - /// An unspecified error. - case teamOnly - /// An unspecified error. - case other - - func json() throws -> JSON { - try SharedLinkVisibilitySerializer().serialize(self) - } - - public var description: String { - do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkVisibilitySerializer().serialize(self)))" - } catch { - return "Failed to generate description for SharedLinkVisibility: \(error)" - } - } - } - - public class SharedLinkVisibilitySerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedLinkVisibility) throws -> JSON { - switch value { - case .noOne: - var d = [String: JSON]() - d[".tag"] = .str("no_one") - return .dictionary(d) - case .password: - var d = [String: JSON]() - d[".tag"] = .str("password") - return .dictionary(d) - case .public_: - var d = [String: JSON]() - d[".tag"] = .str("public") - return .dictionary(d) - case .teamOnly: - var d = [String: JSON]() - d[".tag"] = .str("team_only") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) - } - } - - public func deserialize(_ json: JSON) throws -> SharedLinkVisibility { + } + public func deserialize(_ json: JSON) throws -> ShmodelEnableDownloadsType { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "no_one": - return SharedLinkVisibility.noOne - case "password": - return SharedLinkVisibility.password - case "public": - return SharedLinkVisibility.public_ - case "team_only": - return SharedLinkVisibility.teamOnly - case "other": - return SharedLinkVisibility.other + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ShmodelEnableDownloadsType(description_: description_) default: - return SharedLinkVisibility.other - } - default: - throw JSONSerializerError.deserializeError(type: SharedLinkVisibility.self, json: json) + throw JSONSerializerError.deserializeError(type: ShmodelEnableDownloadsType.self, json: json) } } } - /// Opened shared Paper doc. - public class SharedNoteOpenedDetails: CustomStringConvertible, JSONRepresentable { + /// Shared link with group. + public class ShmodelGroupShareDetails: CustomStringConvertible, JSONRepresentable { + func json() throws -> JSON { - try SharedNoteOpenedDetailsSerializer().serialize(self) + try ShmodelGroupShareDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedNoteOpenedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShmodelGroupShareDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedNoteOpenedDetails: \(error)" + return "Failed to generate description for ShmodelGroupShareDetails: \(error)" } } } - - public class SharedNoteOpenedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedNoteOpenedDetails) throws -> JSON { + public class ShmodelGroupShareDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShmodelGroupShareDetails) throws -> JSON { let output = [String: JSON]() return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedNoteOpenedDetails { + public func deserialize(_ json: JSON) throws -> ShmodelGroupShareDetails { switch json { - case .dictionary: - return SharedNoteOpenedDetails() - default: - throw JSONSerializerError.deserializeError(type: SharedNoteOpenedDetails.self, json: json) + case .dictionary(_): + return ShmodelGroupShareDetails() + default: + throw JSONSerializerError.deserializeError(type: ShmodelGroupShareDetails.self, json: json) } } } - /// The SharedNoteOpenedType struct - public class SharedNoteOpenedType: CustomStringConvertible, JSONRepresentable { + /// The ShmodelGroupShareType struct + public class ShmodelGroupShareType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -55259,86 +67843,78 @@ public class TeamLog { } func json() throws -> JSON { - try SharedNoteOpenedTypeSerializer().serialize(self) + try ShmodelGroupShareTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharedNoteOpenedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShmodelGroupShareTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharedNoteOpenedType: \(error)" + return "Failed to generate description for ShmodelGroupShareType: \(error)" } } } - - public class SharedNoteOpenedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharedNoteOpenedType) throws -> JSON { + public class ShmodelGroupShareTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShmodelGroupShareType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharedNoteOpenedType { + public func deserialize(_ json: JSON) throws -> ShmodelGroupShareType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SharedNoteOpenedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SharedNoteOpenedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ShmodelGroupShareType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ShmodelGroupShareType.self, json: json) } } } - /// Changed whether team members can join shared folders owned outside team. - public class SharingChangeFolderJoinPolicyDetails: CustomStringConvertible, JSONRepresentable { - /// New external join policy. - public let newValue: TeamLog.SharingFolderJoinPolicy - /// Previous external join policy. Might be missing due to historical data gap. - public let previousValue: TeamLog.SharingFolderJoinPolicy? - public init(newValue: TeamLog.SharingFolderJoinPolicy, previousValue: TeamLog.SharingFolderJoinPolicy? = nil) { - self.newValue = newValue - self.previousValue = previousValue + /// Granted access to showcase. + public class ShowcaseAccessGrantedDetails: CustomStringConvertible, JSONRepresentable { + /// Event unique identifier. + public let eventUuid: String + public init(eventUuid: String) { + stringValidator()(eventUuid) + self.eventUuid = eventUuid } func json() throws -> JSON { - try SharingChangeFolderJoinPolicyDetailsSerializer().serialize(self) + try ShowcaseAccessGrantedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharingChangeFolderJoinPolicyDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseAccessGrantedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharingChangeFolderJoinPolicyDetails: \(error)" + return "Failed to generate description for ShowcaseAccessGrantedDetails: \(error)" } } } - - public class SharingChangeFolderJoinPolicyDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharingChangeFolderJoinPolicyDetails) throws -> JSON { + public class ShowcaseAccessGrantedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShowcaseAccessGrantedDetails) throws -> JSON { let output = [ - "new_value": try TeamLog.SharingFolderJoinPolicySerializer().serialize(value.newValue), - "previous_value": try NullableSerializer(TeamLog.SharingFolderJoinPolicySerializer()).serialize(value.previousValue), + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharingChangeFolderJoinPolicyDetails { + public func deserialize(_ json: JSON) throws -> ShowcaseAccessGrantedDetails { switch json { - case .dictionary(let dict): - let newValue = try TeamLog.SharingFolderJoinPolicySerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try NullableSerializer(TeamLog.SharingFolderJoinPolicySerializer()).deserialize(dict["previous_value"] ?? .null) - return SharingChangeFolderJoinPolicyDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: SharingChangeFolderJoinPolicyDetails.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + return ShowcaseAccessGrantedDetails(eventUuid: eventUuid) + default: + throw JSONSerializerError.deserializeError(type: ShowcaseAccessGrantedDetails.self, json: json) } } } - /// The SharingChangeFolderJoinPolicyType struct - public class SharingChangeFolderJoinPolicyType: CustomStringConvertible, JSONRepresentable { + /// The ShowcaseAccessGrantedType struct + public class ShowcaseAccessGrantedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -55347,86 +67923,78 @@ public class TeamLog { } func json() throws -> JSON { - try SharingChangeFolderJoinPolicyTypeSerializer().serialize(self) + try ShowcaseAccessGrantedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharingChangeFolderJoinPolicyTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseAccessGrantedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharingChangeFolderJoinPolicyType: \(error)" + return "Failed to generate description for ShowcaseAccessGrantedType: \(error)" } } } - - public class SharingChangeFolderJoinPolicyTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharingChangeFolderJoinPolicyType) throws -> JSON { + public class ShowcaseAccessGrantedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShowcaseAccessGrantedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharingChangeFolderJoinPolicyType { + public func deserialize(_ json: JSON) throws -> ShowcaseAccessGrantedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SharingChangeFolderJoinPolicyType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SharingChangeFolderJoinPolicyType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ShowcaseAccessGrantedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ShowcaseAccessGrantedType.self, json: json) } } } - /// Changed the allow remove or change expiration policy for the links shared outside of the team. - public class SharingChangeLinkAllowChangeExpirationPolicyDetails: CustomStringConvertible, JSONRepresentable { - /// To. - public let newValue: TeamLog.EnforceLinkPasswordPolicy - /// From. - public let previousValue: TeamLog.EnforceLinkPasswordPolicy? - public init(newValue: TeamLog.EnforceLinkPasswordPolicy, previousValue: TeamLog.EnforceLinkPasswordPolicy? = nil) { - self.newValue = newValue - self.previousValue = previousValue + /// Added member to showcase. + public class ShowcaseAddMemberDetails: CustomStringConvertible, JSONRepresentable { + /// Event unique identifier. + public let eventUuid: String + public init(eventUuid: String) { + stringValidator()(eventUuid) + self.eventUuid = eventUuid } func json() throws -> JSON { - try SharingChangeLinkAllowChangeExpirationPolicyDetailsSerializer().serialize(self) + try ShowcaseAddMemberDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharingChangeLinkAllowChangeExpirationPolicyDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseAddMemberDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharingChangeLinkAllowChangeExpirationPolicyDetails: \(error)" + return "Failed to generate description for ShowcaseAddMemberDetails: \(error)" } } } - - public class SharingChangeLinkAllowChangeExpirationPolicyDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharingChangeLinkAllowChangeExpirationPolicyDetails) throws -> JSON { + public class ShowcaseAddMemberDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShowcaseAddMemberDetails) throws -> JSON { let output = [ - "new_value": try TeamLog.EnforceLinkPasswordPolicySerializer().serialize(value.newValue), - "previous_value": try NullableSerializer(TeamLog.EnforceLinkPasswordPolicySerializer()).serialize(value.previousValue), + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharingChangeLinkAllowChangeExpirationPolicyDetails { + public func deserialize(_ json: JSON) throws -> ShowcaseAddMemberDetails { switch json { - case .dictionary(let dict): - let newValue = try TeamLog.EnforceLinkPasswordPolicySerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try NullableSerializer(TeamLog.EnforceLinkPasswordPolicySerializer()).deserialize(dict["previous_value"] ?? .null) - return SharingChangeLinkAllowChangeExpirationPolicyDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: SharingChangeLinkAllowChangeExpirationPolicyDetails.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + return ShowcaseAddMemberDetails(eventUuid: eventUuid) + default: + throw JSONSerializerError.deserializeError(type: ShowcaseAddMemberDetails.self, json: json) } } } - /// The SharingChangeLinkAllowChangeExpirationPolicyType struct - public class SharingChangeLinkAllowChangeExpirationPolicyType: CustomStringConvertible, JSONRepresentable { + /// The ShowcaseAddMemberType struct + public class ShowcaseAddMemberType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -55435,86 +68003,78 @@ public class TeamLog { } func json() throws -> JSON { - try SharingChangeLinkAllowChangeExpirationPolicyTypeSerializer().serialize(self) + try ShowcaseAddMemberTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharingChangeLinkAllowChangeExpirationPolicyTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseAddMemberTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharingChangeLinkAllowChangeExpirationPolicyType: \(error)" + return "Failed to generate description for ShowcaseAddMemberType: \(error)" } } } - - public class SharingChangeLinkAllowChangeExpirationPolicyTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharingChangeLinkAllowChangeExpirationPolicyType) throws -> JSON { + public class ShowcaseAddMemberTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShowcaseAddMemberType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharingChangeLinkAllowChangeExpirationPolicyType { + public func deserialize(_ json: JSON) throws -> ShowcaseAddMemberType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SharingChangeLinkAllowChangeExpirationPolicyType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SharingChangeLinkAllowChangeExpirationPolicyType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ShowcaseAddMemberType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ShowcaseAddMemberType.self, json: json) } } } - /// Changed the default expiration for the links shared outside of the team. - public class SharingChangeLinkDefaultExpirationPolicyDetails: CustomStringConvertible, JSONRepresentable { - /// To. - public let newValue: TeamLog.DefaultLinkExpirationDaysPolicy - /// From. - public let previousValue: TeamLog.DefaultLinkExpirationDaysPolicy? - public init(newValue: TeamLog.DefaultLinkExpirationDaysPolicy, previousValue: TeamLog.DefaultLinkExpirationDaysPolicy? = nil) { - self.newValue = newValue - self.previousValue = previousValue + /// Archived showcase. + public class ShowcaseArchivedDetails: CustomStringConvertible, JSONRepresentable { + /// Event unique identifier. + public let eventUuid: String + public init(eventUuid: String) { + stringValidator()(eventUuid) + self.eventUuid = eventUuid } func json() throws -> JSON { - try SharingChangeLinkDefaultExpirationPolicyDetailsSerializer().serialize(self) + try ShowcaseArchivedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharingChangeLinkDefaultExpirationPolicyDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseArchivedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharingChangeLinkDefaultExpirationPolicyDetails: \(error)" + return "Failed to generate description for ShowcaseArchivedDetails: \(error)" } } } - - public class SharingChangeLinkDefaultExpirationPolicyDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharingChangeLinkDefaultExpirationPolicyDetails) throws -> JSON { + public class ShowcaseArchivedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShowcaseArchivedDetails) throws -> JSON { let output = [ - "new_value": try TeamLog.DefaultLinkExpirationDaysPolicySerializer().serialize(value.newValue), - "previous_value": try NullableSerializer(TeamLog.DefaultLinkExpirationDaysPolicySerializer()).serialize(value.previousValue), + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharingChangeLinkDefaultExpirationPolicyDetails { + public func deserialize(_ json: JSON) throws -> ShowcaseArchivedDetails { switch json { - case .dictionary(let dict): - let newValue = try TeamLog.DefaultLinkExpirationDaysPolicySerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try NullableSerializer(TeamLog.DefaultLinkExpirationDaysPolicySerializer()).deserialize(dict["previous_value"] ?? .null) - return SharingChangeLinkDefaultExpirationPolicyDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: SharingChangeLinkDefaultExpirationPolicyDetails.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + return ShowcaseArchivedDetails(eventUuid: eventUuid) + default: + throw JSONSerializerError.deserializeError(type: ShowcaseArchivedDetails.self, json: json) } } } - /// The SharingChangeLinkDefaultExpirationPolicyType struct - public class SharingChangeLinkDefaultExpirationPolicyType: CustomStringConvertible, JSONRepresentable { + /// The ShowcaseArchivedType struct + public class ShowcaseArchivedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -55523,86 +68083,82 @@ public class TeamLog { } func json() throws -> JSON { - try SharingChangeLinkDefaultExpirationPolicyTypeSerializer().serialize(self) + try ShowcaseArchivedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharingChangeLinkDefaultExpirationPolicyTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseArchivedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharingChangeLinkDefaultExpirationPolicyType: \(error)" + return "Failed to generate description for ShowcaseArchivedType: \(error)" } } } - - public class SharingChangeLinkDefaultExpirationPolicyTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharingChangeLinkDefaultExpirationPolicyType) throws -> JSON { + public class ShowcaseArchivedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShowcaseArchivedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharingChangeLinkDefaultExpirationPolicyType { + public func deserialize(_ json: JSON) throws -> ShowcaseArchivedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SharingChangeLinkDefaultExpirationPolicyType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SharingChangeLinkDefaultExpirationPolicyType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ShowcaseArchivedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ShowcaseArchivedType.self, json: json) } } } - /// Changed the password requirement for the links shared outside of the team. - public class SharingChangeLinkEnforcePasswordPolicyDetails: CustomStringConvertible, JSONRepresentable { - /// To. - public let newValue: TeamLog.ChangeLinkExpirationPolicy - /// From. - public let previousValue: TeamLog.ChangeLinkExpirationPolicy? - public init(newValue: TeamLog.ChangeLinkExpirationPolicy, previousValue: TeamLog.ChangeLinkExpirationPolicy? = nil) { + /// Enabled/disabled downloading files from Dropbox Showcase for team. + public class ShowcaseChangeDownloadPolicyDetails: CustomStringConvertible, JSONRepresentable { + /// New Dropbox Showcase download policy. + public let newValue: TeamLog.ShowcaseDownloadPolicy + /// Previous Dropbox Showcase download policy. + public let previousValue: TeamLog.ShowcaseDownloadPolicy + public init(newValue: TeamLog.ShowcaseDownloadPolicy, previousValue: TeamLog.ShowcaseDownloadPolicy) { self.newValue = newValue self.previousValue = previousValue } func json() throws -> JSON { - try SharingChangeLinkEnforcePasswordPolicyDetailsSerializer().serialize(self) + try ShowcaseChangeDownloadPolicyDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharingChangeLinkEnforcePasswordPolicyDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseChangeDownloadPolicyDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharingChangeLinkEnforcePasswordPolicyDetails: \(error)" + return "Failed to generate description for ShowcaseChangeDownloadPolicyDetails: \(error)" } } } - - public class SharingChangeLinkEnforcePasswordPolicyDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharingChangeLinkEnforcePasswordPolicyDetails) throws -> JSON { + public class ShowcaseChangeDownloadPolicyDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShowcaseChangeDownloadPolicyDetails) throws -> JSON { let output = [ - "new_value": try TeamLog.ChangeLinkExpirationPolicySerializer().serialize(value.newValue), - "previous_value": try NullableSerializer(TeamLog.ChangeLinkExpirationPolicySerializer()).serialize(value.previousValue), + "new_value": try TeamLog.ShowcaseDownloadPolicySerializer().serialize(value.newValue), + "previous_value": try TeamLog.ShowcaseDownloadPolicySerializer().serialize(value.previousValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharingChangeLinkEnforcePasswordPolicyDetails { + public func deserialize(_ json: JSON) throws -> ShowcaseChangeDownloadPolicyDetails { switch json { - case .dictionary(let dict): - let newValue = try TeamLog.ChangeLinkExpirationPolicySerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try NullableSerializer(TeamLog.ChangeLinkExpirationPolicySerializer()).deserialize(dict["previous_value"] ?? .null) - return SharingChangeLinkEnforcePasswordPolicyDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: SharingChangeLinkEnforcePasswordPolicyDetails.self, json: json) + case .dictionary(let dict): + let newValue = try TeamLog.ShowcaseDownloadPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try TeamLog.ShowcaseDownloadPolicySerializer().deserialize(dict["previous_value"] ?? .null) + return ShowcaseChangeDownloadPolicyDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: ShowcaseChangeDownloadPolicyDetails.self, json: json) } } } - /// The SharingChangeLinkEnforcePasswordPolicyType struct - public class SharingChangeLinkEnforcePasswordPolicyType: CustomStringConvertible, JSONRepresentable { + /// The ShowcaseChangeDownloadPolicyType struct + public class ShowcaseChangeDownloadPolicyType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -55611,87 +68167,82 @@ public class TeamLog { } func json() throws -> JSON { - try SharingChangeLinkEnforcePasswordPolicyTypeSerializer().serialize(self) + try ShowcaseChangeDownloadPolicyTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharingChangeLinkEnforcePasswordPolicyTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseChangeDownloadPolicyTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharingChangeLinkEnforcePasswordPolicyType: \(error)" + return "Failed to generate description for ShowcaseChangeDownloadPolicyType: \(error)" } } } - - public class SharingChangeLinkEnforcePasswordPolicyTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharingChangeLinkEnforcePasswordPolicyType) throws -> JSON { + public class ShowcaseChangeDownloadPolicyTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShowcaseChangeDownloadPolicyType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharingChangeLinkEnforcePasswordPolicyType { + public func deserialize(_ json: JSON) throws -> ShowcaseChangeDownloadPolicyType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SharingChangeLinkEnforcePasswordPolicyType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SharingChangeLinkEnforcePasswordPolicyType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ShowcaseChangeDownloadPolicyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ShowcaseChangeDownloadPolicyType.self, json: json) } } } - /// Changed whether members can share links outside team, and if links are accessible only by team members or anyone - /// by default. - public class SharingChangeLinkPolicyDetails: CustomStringConvertible, JSONRepresentable { - /// New external link accessibility policy. - public let newValue: TeamLog.SharingLinkPolicy - /// Previous external link accessibility policy. Might be missing due to historical data gap. - public let previousValue: TeamLog.SharingLinkPolicy? - public init(newValue: TeamLog.SharingLinkPolicy, previousValue: TeamLog.SharingLinkPolicy? = nil) { + /// Enabled/disabled Dropbox Showcase for team. + public class ShowcaseChangeEnabledPolicyDetails: CustomStringConvertible, JSONRepresentable { + /// New Dropbox Showcase policy. + public let newValue: TeamLog.ShowcaseEnabledPolicy + /// Previous Dropbox Showcase policy. + public let previousValue: TeamLog.ShowcaseEnabledPolicy + public init(newValue: TeamLog.ShowcaseEnabledPolicy, previousValue: TeamLog.ShowcaseEnabledPolicy) { self.newValue = newValue self.previousValue = previousValue } func json() throws -> JSON { - try SharingChangeLinkPolicyDetailsSerializer().serialize(self) + try ShowcaseChangeEnabledPolicyDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharingChangeLinkPolicyDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseChangeEnabledPolicyDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharingChangeLinkPolicyDetails: \(error)" + return "Failed to generate description for ShowcaseChangeEnabledPolicyDetails: \(error)" } } } - - public class SharingChangeLinkPolicyDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharingChangeLinkPolicyDetails) throws -> JSON { + public class ShowcaseChangeEnabledPolicyDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShowcaseChangeEnabledPolicyDetails) throws -> JSON { let output = [ - "new_value": try TeamLog.SharingLinkPolicySerializer().serialize(value.newValue), - "previous_value": try NullableSerializer(TeamLog.SharingLinkPolicySerializer()).serialize(value.previousValue), + "new_value": try TeamLog.ShowcaseEnabledPolicySerializer().serialize(value.newValue), + "previous_value": try TeamLog.ShowcaseEnabledPolicySerializer().serialize(value.previousValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharingChangeLinkPolicyDetails { + public func deserialize(_ json: JSON) throws -> ShowcaseChangeEnabledPolicyDetails { switch json { - case .dictionary(let dict): - let newValue = try TeamLog.SharingLinkPolicySerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try NullableSerializer(TeamLog.SharingLinkPolicySerializer()).deserialize(dict["previous_value"] ?? .null) - return SharingChangeLinkPolicyDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: SharingChangeLinkPolicyDetails.self, json: json) + case .dictionary(let dict): + let newValue = try TeamLog.ShowcaseEnabledPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try TeamLog.ShowcaseEnabledPolicySerializer().deserialize(dict["previous_value"] ?? .null) + return ShowcaseChangeEnabledPolicyDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: ShowcaseChangeEnabledPolicyDetails.self, json: json) } } } - /// The SharingChangeLinkPolicyType struct - public class SharingChangeLinkPolicyType: CustomStringConvertible, JSONRepresentable { + /// The ShowcaseChangeEnabledPolicyType struct + public class ShowcaseChangeEnabledPolicyType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -55700,86 +68251,82 @@ public class TeamLog { } func json() throws -> JSON { - try SharingChangeLinkPolicyTypeSerializer().serialize(self) + try ShowcaseChangeEnabledPolicyTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharingChangeLinkPolicyTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseChangeEnabledPolicyTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharingChangeLinkPolicyType: \(error)" + return "Failed to generate description for ShowcaseChangeEnabledPolicyType: \(error)" } } } - - public class SharingChangeLinkPolicyTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharingChangeLinkPolicyType) throws -> JSON { + public class ShowcaseChangeEnabledPolicyTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShowcaseChangeEnabledPolicyType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharingChangeLinkPolicyType { + public func deserialize(_ json: JSON) throws -> ShowcaseChangeEnabledPolicyType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SharingChangeLinkPolicyType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SharingChangeLinkPolicyType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ShowcaseChangeEnabledPolicyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ShowcaseChangeEnabledPolicyType.self, json: json) } } } - /// Changed whether members can share files/folders outside team. - public class SharingChangeMemberPolicyDetails: CustomStringConvertible, JSONRepresentable { - /// New external invite policy. - public let newValue: TeamLog.SharingMemberPolicy - /// Previous external invite policy. Might be missing due to historical data gap. - public let previousValue: TeamLog.SharingMemberPolicy? - public init(newValue: TeamLog.SharingMemberPolicy, previousValue: TeamLog.SharingMemberPolicy? = nil) { + /// Enabled/disabled sharing Dropbox Showcase externally for team. + public class ShowcaseChangeExternalSharingPolicyDetails: CustomStringConvertible, JSONRepresentable { + /// New Dropbox Showcase external sharing policy. + public let newValue: TeamLog.ShowcaseExternalSharingPolicy + /// Previous Dropbox Showcase external sharing policy. + public let previousValue: TeamLog.ShowcaseExternalSharingPolicy + public init(newValue: TeamLog.ShowcaseExternalSharingPolicy, previousValue: TeamLog.ShowcaseExternalSharingPolicy) { self.newValue = newValue self.previousValue = previousValue } func json() throws -> JSON { - try SharingChangeMemberPolicyDetailsSerializer().serialize(self) + try ShowcaseChangeExternalSharingPolicyDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharingChangeMemberPolicyDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseChangeExternalSharingPolicyDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharingChangeMemberPolicyDetails: \(error)" + return "Failed to generate description for ShowcaseChangeExternalSharingPolicyDetails: \(error)" } } } - - public class SharingChangeMemberPolicyDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharingChangeMemberPolicyDetails) throws -> JSON { + public class ShowcaseChangeExternalSharingPolicyDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShowcaseChangeExternalSharingPolicyDetails) throws -> JSON { let output = [ - "new_value": try TeamLog.SharingMemberPolicySerializer().serialize(value.newValue), - "previous_value": try NullableSerializer(TeamLog.SharingMemberPolicySerializer()).serialize(value.previousValue), + "new_value": try TeamLog.ShowcaseExternalSharingPolicySerializer().serialize(value.newValue), + "previous_value": try TeamLog.ShowcaseExternalSharingPolicySerializer().serialize(value.previousValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharingChangeMemberPolicyDetails { + public func deserialize(_ json: JSON) throws -> ShowcaseChangeExternalSharingPolicyDetails { switch json { - case .dictionary(let dict): - let newValue = try TeamLog.SharingMemberPolicySerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try NullableSerializer(TeamLog.SharingMemberPolicySerializer()).deserialize(dict["previous_value"] ?? .null) - return SharingChangeMemberPolicyDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: SharingChangeMemberPolicyDetails.self, json: json) + case .dictionary(let dict): + let newValue = try TeamLog.ShowcaseExternalSharingPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try TeamLog.ShowcaseExternalSharingPolicySerializer().deserialize(dict["previous_value"] ?? .null) + return ShowcaseChangeExternalSharingPolicyDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: ShowcaseChangeExternalSharingPolicyDetails.self, json: json) } } } - /// The SharingChangeMemberPolicyType struct - public class SharingChangeMemberPolicyType: CustomStringConvertible, JSONRepresentable { + /// The ShowcaseChangeExternalSharingPolicyType struct + public class ShowcaseChangeExternalSharingPolicyType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -55788,371 +68335,355 @@ public class TeamLog { } func json() throws -> JSON { - try SharingChangeMemberPolicyTypeSerializer().serialize(self) + try ShowcaseChangeExternalSharingPolicyTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharingChangeMemberPolicyTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseChangeExternalSharingPolicyTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharingChangeMemberPolicyType: \(error)" + return "Failed to generate description for ShowcaseChangeExternalSharingPolicyType: \(error)" } } } - - public class SharingChangeMemberPolicyTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharingChangeMemberPolicyType) throws -> JSON { + public class ShowcaseChangeExternalSharingPolicyTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShowcaseChangeExternalSharingPolicyType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharingChangeMemberPolicyType { + public func deserialize(_ json: JSON) throws -> ShowcaseChangeExternalSharingPolicyType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SharingChangeMemberPolicyType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SharingChangeMemberPolicyType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ShowcaseChangeExternalSharingPolicyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ShowcaseChangeExternalSharingPolicyType.self, json: json) } } } - /// Policy for controlling if team members can join shared folders owned by non team members. - public enum SharingFolderJoinPolicy: CustomStringConvertible, JSONRepresentable { - /// An unspecified error. - case fromAnyone - /// An unspecified error. - case fromTeamOnly - /// An unspecified error. - case other + /// Created showcase. + public class ShowcaseCreatedDetails: CustomStringConvertible, JSONRepresentable { + /// Event unique identifier. + public let eventUuid: String + public init(eventUuid: String) { + stringValidator()(eventUuid) + self.eventUuid = eventUuid + } func json() throws -> JSON { - try SharingFolderJoinPolicySerializer().serialize(self) + try ShowcaseCreatedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharingFolderJoinPolicySerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseCreatedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharingFolderJoinPolicy: \(error)" + return "Failed to generate description for ShowcaseCreatedDetails: \(error)" } } } - - public class SharingFolderJoinPolicySerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharingFolderJoinPolicy) throws -> JSON { - switch value { - case .fromAnyone: - var d = [String: JSON]() - d[".tag"] = .str("from_anyone") - return .dictionary(d) - case .fromTeamOnly: - var d = [String: JSON]() - d[".tag"] = .str("from_team_only") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) - } + public class ShowcaseCreatedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShowcaseCreatedDetails) throws -> JSON { + let output = [ + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + ] + return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharingFolderJoinPolicy { + public func deserialize(_ json: JSON) throws -> ShowcaseCreatedDetails { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "from_anyone": - return SharingFolderJoinPolicy.fromAnyone - case "from_team_only": - return SharingFolderJoinPolicy.fromTeamOnly - case "other": - return SharingFolderJoinPolicy.other + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + return ShowcaseCreatedDetails(eventUuid: eventUuid) default: - return SharingFolderJoinPolicy.other - } - default: - throw JSONSerializerError.deserializeError(type: SharingFolderJoinPolicy.self, json: json) + throw JSONSerializerError.deserializeError(type: ShowcaseCreatedDetails.self, json: json) } } } - /// Policy for controlling if team members can share links externally - public enum SharingLinkPolicy: CustomStringConvertible, JSONRepresentable { - /// An unspecified error. - case defaultNoOne - /// An unspecified error. - case defaultPrivate - /// An unspecified error. - case defaultPublic - /// An unspecified error. - case onlyPrivate - /// An unspecified error. - case other + /// The ShowcaseCreatedType struct + public class ShowcaseCreatedType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } func json() throws -> JSON { - try SharingLinkPolicySerializer().serialize(self) + try ShowcaseCreatedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharingLinkPolicySerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseCreatedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharingLinkPolicy: \(error)" + return "Failed to generate description for ShowcaseCreatedType: \(error)" } } } - - public class SharingLinkPolicySerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharingLinkPolicy) throws -> JSON { - switch value { - case .defaultNoOne: - var d = [String: JSON]() - d[".tag"] = .str("default_no_one") - return .dictionary(d) - case .defaultPrivate: - var d = [String: JSON]() - d[".tag"] = .str("default_private") - return .dictionary(d) - case .defaultPublic: - var d = [String: JSON]() - d[".tag"] = .str("default_public") - return .dictionary(d) - case .onlyPrivate: - var d = [String: JSON]() - d[".tag"] = .str("only_private") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) - } + public class ShowcaseCreatedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShowcaseCreatedType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SharingLinkPolicy { + public func deserialize(_ json: JSON) throws -> ShowcaseCreatedType { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "default_no_one": - return SharingLinkPolicy.defaultNoOne - case "default_private": - return SharingLinkPolicy.defaultPrivate - case "default_public": - return SharingLinkPolicy.defaultPublic - case "only_private": - return SharingLinkPolicy.onlyPrivate - case "other": - return SharingLinkPolicy.other + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ShowcaseCreatedType(description_: description_) default: - return SharingLinkPolicy.other - } - default: - throw JSONSerializerError.deserializeError(type: SharingLinkPolicy.self, json: json) + throw JSONSerializerError.deserializeError(type: ShowcaseCreatedType.self, json: json) } } } - /// External sharing policy - public enum SharingMemberPolicy: CustomStringConvertible, JSONRepresentable { - /// An unspecified error. - case allow - /// An unspecified error. - case forbid - /// An unspecified error. - case forbidWithExclusions - /// An unspecified error. - case other + /// Deleted showcase comment. + public class ShowcaseDeleteCommentDetails: CustomStringConvertible, JSONRepresentable { + /// Event unique identifier. + public let eventUuid: String + /// Comment text. + public let commentText: String? + public init(eventUuid: String, commentText: String? = nil) { + stringValidator()(eventUuid) + self.eventUuid = eventUuid + nullableValidator(stringValidator())(commentText) + self.commentText = commentText + } func json() throws -> JSON { - try SharingMemberPolicySerializer().serialize(self) + try ShowcaseDeleteCommentDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SharingMemberPolicySerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseDeleteCommentDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SharingMemberPolicy: \(error)" + return "Failed to generate description for ShowcaseDeleteCommentDetails: \(error)" } } } - - public class SharingMemberPolicySerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SharingMemberPolicy) throws -> JSON { - switch value { - case .allow: - var d = [String: JSON]() - d[".tag"] = .str("allow") - return .dictionary(d) - case .forbid: - var d = [String: JSON]() - d[".tag"] = .str("forbid") - return .dictionary(d) - case .forbidWithExclusions: - var d = [String: JSON]() - d[".tag"] = .str("forbid_with_exclusions") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) + public class ShowcaseDeleteCommentDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShowcaseDeleteCommentDetails) throws -> JSON { + let output = [ + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + "comment_text": try NullableSerializer(Serialization._StringSerializer).serialize(value.commentText), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> ShowcaseDeleteCommentDetails { + switch json { + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + let commentText = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["comment_text"] ?? .null) + return ShowcaseDeleteCommentDetails(eventUuid: eventUuid, commentText: commentText) + default: + throw JSONSerializerError.deserializeError(type: ShowcaseDeleteCommentDetails.self, json: json) } } + } - public func deserialize(_ json: JSON) throws -> SharingMemberPolicy { + /// The ShowcaseDeleteCommentType struct + public class ShowcaseDeleteCommentType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try ShowcaseDeleteCommentTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseDeleteCommentTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for ShowcaseDeleteCommentType: \(error)" + } + } + } + public class ShowcaseDeleteCommentTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShowcaseDeleteCommentType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> ShowcaseDeleteCommentType { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "allow": - return SharingMemberPolicy.allow - case "forbid": - return SharingMemberPolicy.forbid - case "forbid_with_exclusions": - return SharingMemberPolicy.forbidWithExclusions - case "other": - return SharingMemberPolicy.other + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ShowcaseDeleteCommentType(description_: description_) default: - return SharingMemberPolicy.other - } - default: - throw JSONSerializerError.deserializeError(type: SharingMemberPolicy.self, json: json) + throw JSONSerializerError.deserializeError(type: ShowcaseDeleteCommentType.self, json: json) } } } - /// Disabled downloads for link. - public class ShmodelDisableDownloadsDetails: CustomStringConvertible, JSONRepresentable { - /// Shared link owner details. Might be missing due to historical data gap. - public let sharedLinkOwner: TeamLog.UserLogInfo? - public init(sharedLinkOwner: TeamLog.UserLogInfo? = nil) { - self.sharedLinkOwner = sharedLinkOwner + /// Showcase document's logged information. + public class ShowcaseDocumentLogInfo: CustomStringConvertible, JSONRepresentable { + /// Showcase document Id. + public let showcaseId: String + /// Showcase document title. + public let showcaseTitle: String + public init(showcaseId: String, showcaseTitle: String) { + stringValidator()(showcaseId) + self.showcaseId = showcaseId + stringValidator()(showcaseTitle) + self.showcaseTitle = showcaseTitle } func json() throws -> JSON { - try ShmodelDisableDownloadsDetailsSerializer().serialize(self) + try ShowcaseDocumentLogInfoSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShmodelDisableDownloadsDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseDocumentLogInfoSerializer().serialize(self)))" } catch { - return "Failed to generate description for ShmodelDisableDownloadsDetails: \(error)" + return "Failed to generate description for ShowcaseDocumentLogInfo: \(error)" } } } - - public class ShmodelDisableDownloadsDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShmodelDisableDownloadsDetails) throws -> JSON { + public class ShowcaseDocumentLogInfoSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShowcaseDocumentLogInfo) throws -> JSON { let output = [ - "shared_link_owner": try NullableSerializer(TeamLog.UserLogInfoSerializer()).serialize(value.sharedLinkOwner), + "showcase_id": try Serialization._StringSerializer.serialize(value.showcaseId), + "showcase_title": try Serialization._StringSerializer.serialize(value.showcaseTitle), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ShmodelDisableDownloadsDetails { + public func deserialize(_ json: JSON) throws -> ShowcaseDocumentLogInfo { switch json { - case .dictionary(let dict): - let sharedLinkOwner = try NullableSerializer(TeamLog.UserLogInfoSerializer()).deserialize(dict["shared_link_owner"] ?? .null) - return ShmodelDisableDownloadsDetails(sharedLinkOwner: sharedLinkOwner) - default: - throw JSONSerializerError.deserializeError(type: ShmodelDisableDownloadsDetails.self, json: json) + case .dictionary(let dict): + let showcaseId = try Serialization._StringSerializer.deserialize(dict["showcase_id"] ?? .null) + let showcaseTitle = try Serialization._StringSerializer.deserialize(dict["showcase_title"] ?? .null) + return ShowcaseDocumentLogInfo(showcaseId: showcaseId, showcaseTitle: showcaseTitle) + default: + throw JSONSerializerError.deserializeError(type: ShowcaseDocumentLogInfo.self, json: json) } } } - /// The ShmodelDisableDownloadsType struct - public class ShmodelDisableDownloadsType: CustomStringConvertible, JSONRepresentable { - /// (no description) - public let description_: String - public init(description_: String) { - stringValidator()(description_) - self.description_ = description_ - } + /// Policy for controlling if files can be downloaded from Showcases by team members + public enum ShowcaseDownloadPolicy: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case disabled + /// An unspecified error. + case enabled + /// An unspecified error. + case other func json() throws -> JSON { - try ShmodelDisableDownloadsTypeSerializer().serialize(self) + try ShowcaseDownloadPolicySerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShmodelDisableDownloadsTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseDownloadPolicySerializer().serialize(self)))" } catch { - return "Failed to generate description for ShmodelDisableDownloadsType: \(error)" + return "Failed to generate description for ShowcaseDownloadPolicy: \(error)" } } } - - public class ShmodelDisableDownloadsTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShmodelDisableDownloadsType) throws -> JSON { - let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), - ] - return .dictionary(output) + public class ShowcaseDownloadPolicySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShowcaseDownloadPolicy) throws -> JSON { + switch value { + case .disabled: + var d = [String: JSON]() + d[".tag"] = .str("disabled") + return .dictionary(d) + case .enabled: + var d = [String: JSON]() + d[".tag"] = .str("enabled") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } } - - public func deserialize(_ json: JSON) throws -> ShmodelDisableDownloadsType { + public func deserialize(_ json: JSON) throws -> ShowcaseDownloadPolicy { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return ShmodelDisableDownloadsType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: ShmodelDisableDownloadsType.self, json: json) + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "disabled": + return ShowcaseDownloadPolicy.disabled + case "enabled": + return ShowcaseDownloadPolicy.enabled + case "other": + return ShowcaseDownloadPolicy.other + default: + return ShowcaseDownloadPolicy.other + } + default: + throw JSONSerializerError.deserializeError(type: ShowcaseDownloadPolicy.self, json: json) } } } - /// Enabled downloads for link. - public class ShmodelEnableDownloadsDetails: CustomStringConvertible, JSONRepresentable { - /// Shared link owner details. Might be missing due to historical data gap. - public let sharedLinkOwner: TeamLog.UserLogInfo? - public init(sharedLinkOwner: TeamLog.UserLogInfo? = nil) { - self.sharedLinkOwner = sharedLinkOwner + /// Edited showcase comment. + public class ShowcaseEditCommentDetails: CustomStringConvertible, JSONRepresentable { + /// Event unique identifier. + public let eventUuid: String + /// Comment text. + public let commentText: String? + public init(eventUuid: String, commentText: String? = nil) { + stringValidator()(eventUuid) + self.eventUuid = eventUuid + nullableValidator(stringValidator())(commentText) + self.commentText = commentText } func json() throws -> JSON { - try ShmodelEnableDownloadsDetailsSerializer().serialize(self) + try ShowcaseEditCommentDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShmodelEnableDownloadsDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseEditCommentDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for ShmodelEnableDownloadsDetails: \(error)" + return "Failed to generate description for ShowcaseEditCommentDetails: \(error)" } } } - - public class ShmodelEnableDownloadsDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShmodelEnableDownloadsDetails) throws -> JSON { + public class ShowcaseEditCommentDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShowcaseEditCommentDetails) throws -> JSON { let output = [ - "shared_link_owner": try NullableSerializer(TeamLog.UserLogInfoSerializer()).serialize(value.sharedLinkOwner), + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + "comment_text": try NullableSerializer(Serialization._StringSerializer).serialize(value.commentText), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ShmodelEnableDownloadsDetails { + public func deserialize(_ json: JSON) throws -> ShowcaseEditCommentDetails { switch json { - case .dictionary(let dict): - let sharedLinkOwner = try NullableSerializer(TeamLog.UserLogInfoSerializer()).deserialize(dict["shared_link_owner"] ?? .null) - return ShmodelEnableDownloadsDetails(sharedLinkOwner: sharedLinkOwner) - default: - throw JSONSerializerError.deserializeError(type: ShmodelEnableDownloadsDetails.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + let commentText = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["comment_text"] ?? .null) + return ShowcaseEditCommentDetails(eventUuid: eventUuid, commentText: commentText) + default: + throw JSONSerializerError.deserializeError(type: ShowcaseEditCommentDetails.self, json: json) } } } - /// The ShmodelEnableDownloadsType struct - public class ShmodelEnableDownloadsType: CustomStringConvertible, JSONRepresentable { + /// The ShowcaseEditCommentType struct + public class ShowcaseEditCommentType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -56161,72 +68692,78 @@ public class TeamLog { } func json() throws -> JSON { - try ShmodelEnableDownloadsTypeSerializer().serialize(self) + try ShowcaseEditCommentTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShmodelEnableDownloadsTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseEditCommentTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for ShmodelEnableDownloadsType: \(error)" + return "Failed to generate description for ShowcaseEditCommentType: \(error)" } } } - - public class ShmodelEnableDownloadsTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShmodelEnableDownloadsType) throws -> JSON { + public class ShowcaseEditCommentTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShowcaseEditCommentType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ShmodelEnableDownloadsType { + public func deserialize(_ json: JSON) throws -> ShowcaseEditCommentType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return ShmodelEnableDownloadsType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: ShmodelEnableDownloadsType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ShowcaseEditCommentType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ShowcaseEditCommentType.self, json: json) } } } - /// Shared link with group. - public class ShmodelGroupShareDetails: CustomStringConvertible, JSONRepresentable { + /// Edited showcase. + public class ShowcaseEditedDetails: CustomStringConvertible, JSONRepresentable { + /// Event unique identifier. + public let eventUuid: String + public init(eventUuid: String) { + stringValidator()(eventUuid) + self.eventUuid = eventUuid + } + func json() throws -> JSON { - try ShmodelGroupShareDetailsSerializer().serialize(self) + try ShowcaseEditedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShmodelGroupShareDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseEditedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for ShmodelGroupShareDetails: \(error)" + return "Failed to generate description for ShowcaseEditedDetails: \(error)" } } } - - public class ShmodelGroupShareDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShmodelGroupShareDetails) throws -> JSON { - let output = [String: JSON]() + public class ShowcaseEditedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShowcaseEditedDetails) throws -> JSON { + let output = [ + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ShmodelGroupShareDetails { + public func deserialize(_ json: JSON) throws -> ShowcaseEditedDetails { switch json { - case .dictionary: - return ShmodelGroupShareDetails() - default: - throw JSONSerializerError.deserializeError(type: ShmodelGroupShareDetails.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + return ShowcaseEditedDetails(eventUuid: eventUuid) + default: + throw JSONSerializerError.deserializeError(type: ShowcaseEditedDetails.self, json: json) } } } - /// The ShmodelGroupShareType struct - public class ShmodelGroupShareType: CustomStringConvertible, JSONRepresentable { + /// The ShowcaseEditedType struct + public class ShowcaseEditedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -56235,124 +68772,156 @@ public class TeamLog { } func json() throws -> JSON { - try ShmodelGroupShareTypeSerializer().serialize(self) + try ShowcaseEditedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShmodelGroupShareTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseEditedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for ShmodelGroupShareType: \(error)" + return "Failed to generate description for ShowcaseEditedType: \(error)" } } } - - public class ShmodelGroupShareTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShmodelGroupShareType) throws -> JSON { + public class ShowcaseEditedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShowcaseEditedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ShmodelGroupShareType { + public func deserialize(_ json: JSON) throws -> ShowcaseEditedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return ShmodelGroupShareType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: ShmodelGroupShareType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ShowcaseEditedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ShowcaseEditedType.self, json: json) } } } - /// Granted access to showcase. - public class ShowcaseAccessGrantedDetails: CustomStringConvertible, JSONRepresentable { - /// Event unique identifier. - public let eventUuid: String - public init(eventUuid: String) { - stringValidator()(eventUuid) - self.eventUuid = eventUuid - } + /// Policy for controlling whether Showcase is enabled. + public enum ShowcaseEnabledPolicy: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case disabled + /// An unspecified error. + case enabled + /// An unspecified error. + case other func json() throws -> JSON { - try ShowcaseAccessGrantedDetailsSerializer().serialize(self) + try ShowcaseEnabledPolicySerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseAccessGrantedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseEnabledPolicySerializer().serialize(self)))" } catch { - return "Failed to generate description for ShowcaseAccessGrantedDetails: \(error)" + return "Failed to generate description for ShowcaseEnabledPolicy: \(error)" } } } - - public class ShowcaseAccessGrantedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShowcaseAccessGrantedDetails) throws -> JSON { - let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), - ] - return .dictionary(output) + public class ShowcaseEnabledPolicySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShowcaseEnabledPolicy) throws -> JSON { + switch value { + case .disabled: + var d = [String: JSON]() + d[".tag"] = .str("disabled") + return .dictionary(d) + case .enabled: + var d = [String: JSON]() + d[".tag"] = .str("enabled") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } } - - public func deserialize(_ json: JSON) throws -> ShowcaseAccessGrantedDetails { + public func deserialize(_ json: JSON) throws -> ShowcaseEnabledPolicy { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - return ShowcaseAccessGrantedDetails(eventUuid: eventUuid) - default: - throw JSONSerializerError.deserializeError(type: ShowcaseAccessGrantedDetails.self, json: json) + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "disabled": + return ShowcaseEnabledPolicy.disabled + case "enabled": + return ShowcaseEnabledPolicy.enabled + case "other": + return ShowcaseEnabledPolicy.other + default: + return ShowcaseEnabledPolicy.other + } + default: + throw JSONSerializerError.deserializeError(type: ShowcaseEnabledPolicy.self, json: json) } } } - /// The ShowcaseAccessGrantedType struct - public class ShowcaseAccessGrantedType: CustomStringConvertible, JSONRepresentable { - /// (no description) - public let description_: String - public init(description_: String) { - stringValidator()(description_) - self.description_ = description_ - } + /// Policy for controlling if team members can share Showcases externally. + public enum ShowcaseExternalSharingPolicy: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case disabled + /// An unspecified error. + case enabled + /// An unspecified error. + case other func json() throws -> JSON { - try ShowcaseAccessGrantedTypeSerializer().serialize(self) + try ShowcaseExternalSharingPolicySerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseAccessGrantedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseExternalSharingPolicySerializer().serialize(self)))" } catch { - return "Failed to generate description for ShowcaseAccessGrantedType: \(error)" + return "Failed to generate description for ShowcaseExternalSharingPolicy: \(error)" } } } - - public class ShowcaseAccessGrantedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShowcaseAccessGrantedType) throws -> JSON { - let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), - ] - return .dictionary(output) + public class ShowcaseExternalSharingPolicySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShowcaseExternalSharingPolicy) throws -> JSON { + switch value { + case .disabled: + var d = [String: JSON]() + d[".tag"] = .str("disabled") + return .dictionary(d) + case .enabled: + var d = [String: JSON]() + d[".tag"] = .str("enabled") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } } - - public func deserialize(_ json: JSON) throws -> ShowcaseAccessGrantedType { + public func deserialize(_ json: JSON) throws -> ShowcaseExternalSharingPolicy { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return ShowcaseAccessGrantedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: ShowcaseAccessGrantedType.self, json: json) + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "disabled": + return ShowcaseExternalSharingPolicy.disabled + case "enabled": + return ShowcaseExternalSharingPolicy.enabled + case "other": + return ShowcaseExternalSharingPolicy.other + default: + return ShowcaseExternalSharingPolicy.other + } + default: + throw JSONSerializerError.deserializeError(type: ShowcaseExternalSharingPolicy.self, json: json) } } } - /// Added member to showcase. - public class ShowcaseAddMemberDetails: CustomStringConvertible, JSONRepresentable { + /// Added file to showcase. + public class ShowcaseFileAddedDetails: CustomStringConvertible, JSONRepresentable { /// Event unique identifier. public let eventUuid: String public init(eventUuid: String) { @@ -56361,40 +68930,38 @@ public class TeamLog { } func json() throws -> JSON { - try ShowcaseAddMemberDetailsSerializer().serialize(self) + try ShowcaseFileAddedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseAddMemberDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseFileAddedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for ShowcaseAddMemberDetails: \(error)" + return "Failed to generate description for ShowcaseFileAddedDetails: \(error)" } } } - - public class ShowcaseAddMemberDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShowcaseAddMemberDetails) throws -> JSON { + public class ShowcaseFileAddedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShowcaseFileAddedDetails) throws -> JSON { let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ShowcaseAddMemberDetails { + public func deserialize(_ json: JSON) throws -> ShowcaseFileAddedDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - return ShowcaseAddMemberDetails(eventUuid: eventUuid) - default: - throw JSONSerializerError.deserializeError(type: ShowcaseAddMemberDetails.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + return ShowcaseFileAddedDetails(eventUuid: eventUuid) + default: + throw JSONSerializerError.deserializeError(type: ShowcaseFileAddedDetails.self, json: json) } } } - /// The ShowcaseAddMemberType struct - public class ShowcaseAddMemberType: CustomStringConvertible, JSONRepresentable { + /// The ShowcaseFileAddedType struct + public class ShowcaseFileAddedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -56403,82 +68970,84 @@ public class TeamLog { } func json() throws -> JSON { - try ShowcaseAddMemberTypeSerializer().serialize(self) + try ShowcaseFileAddedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseAddMemberTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseFileAddedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for ShowcaseAddMemberType: \(error)" + return "Failed to generate description for ShowcaseFileAddedType: \(error)" } } } - - public class ShowcaseAddMemberTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShowcaseAddMemberType) throws -> JSON { + public class ShowcaseFileAddedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShowcaseFileAddedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ShowcaseAddMemberType { + public func deserialize(_ json: JSON) throws -> ShowcaseFileAddedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return ShowcaseAddMemberType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: ShowcaseAddMemberType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ShowcaseFileAddedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ShowcaseFileAddedType.self, json: json) } } } - /// Archived showcase. - public class ShowcaseArchivedDetails: CustomStringConvertible, JSONRepresentable { + /// Downloaded file from showcase. + public class ShowcaseFileDownloadDetails: CustomStringConvertible, JSONRepresentable { /// Event unique identifier. public let eventUuid: String - public init(eventUuid: String) { + /// Showcase download type. + public let downloadType: String + public init(eventUuid: String, downloadType: String) { stringValidator()(eventUuid) self.eventUuid = eventUuid + stringValidator()(downloadType) + self.downloadType = downloadType } func json() throws -> JSON { - try ShowcaseArchivedDetailsSerializer().serialize(self) + try ShowcaseFileDownloadDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseArchivedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseFileDownloadDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for ShowcaseArchivedDetails: \(error)" + return "Failed to generate description for ShowcaseFileDownloadDetails: \(error)" } } } - - public class ShowcaseArchivedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShowcaseArchivedDetails) throws -> JSON { + public class ShowcaseFileDownloadDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShowcaseFileDownloadDetails) throws -> JSON { let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + "download_type": try Serialization._StringSerializer.serialize(value.downloadType), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ShowcaseArchivedDetails { + public func deserialize(_ json: JSON) throws -> ShowcaseFileDownloadDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - return ShowcaseArchivedDetails(eventUuid: eventUuid) - default: - throw JSONSerializerError.deserializeError(type: ShowcaseArchivedDetails.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + let downloadType = try Serialization._StringSerializer.deserialize(dict["download_type"] ?? .null) + return ShowcaseFileDownloadDetails(eventUuid: eventUuid, downloadType: downloadType) + default: + throw JSONSerializerError.deserializeError(type: ShowcaseFileDownloadDetails.self, json: json) } } } - /// The ShowcaseArchivedType struct - public class ShowcaseArchivedType: CustomStringConvertible, JSONRepresentable { + /// The ShowcaseFileDownloadType struct + public class ShowcaseFileDownloadType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -56487,86 +69056,78 @@ public class TeamLog { } func json() throws -> JSON { - try ShowcaseArchivedTypeSerializer().serialize(self) + try ShowcaseFileDownloadTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseArchivedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseFileDownloadTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for ShowcaseArchivedType: \(error)" + return "Failed to generate description for ShowcaseFileDownloadType: \(error)" } } } - - public class ShowcaseArchivedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShowcaseArchivedType) throws -> JSON { + public class ShowcaseFileDownloadTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShowcaseFileDownloadType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ShowcaseArchivedType { + public func deserialize(_ json: JSON) throws -> ShowcaseFileDownloadType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return ShowcaseArchivedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: ShowcaseArchivedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ShowcaseFileDownloadType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ShowcaseFileDownloadType.self, json: json) } } } - /// Enabled/disabled downloading files from Dropbox Showcase for team. - public class ShowcaseChangeDownloadPolicyDetails: CustomStringConvertible, JSONRepresentable { - /// New Dropbox Showcase download policy. - public let newValue: TeamLog.ShowcaseDownloadPolicy - /// Previous Dropbox Showcase download policy. - public let previousValue: TeamLog.ShowcaseDownloadPolicy - public init(newValue: TeamLog.ShowcaseDownloadPolicy, previousValue: TeamLog.ShowcaseDownloadPolicy) { - self.newValue = newValue - self.previousValue = previousValue + /// Removed file from showcase. + public class ShowcaseFileRemovedDetails: CustomStringConvertible, JSONRepresentable { + /// Event unique identifier. + public let eventUuid: String + public init(eventUuid: String) { + stringValidator()(eventUuid) + self.eventUuid = eventUuid } func json() throws -> JSON { - try ShowcaseChangeDownloadPolicyDetailsSerializer().serialize(self) + try ShowcaseFileRemovedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseChangeDownloadPolicyDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseFileRemovedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for ShowcaseChangeDownloadPolicyDetails: \(error)" + return "Failed to generate description for ShowcaseFileRemovedDetails: \(error)" } } } - - public class ShowcaseChangeDownloadPolicyDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShowcaseChangeDownloadPolicyDetails) throws -> JSON { + public class ShowcaseFileRemovedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShowcaseFileRemovedDetails) throws -> JSON { let output = [ - "new_value": try TeamLog.ShowcaseDownloadPolicySerializer().serialize(value.newValue), - "previous_value": try TeamLog.ShowcaseDownloadPolicySerializer().serialize(value.previousValue), + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ShowcaseChangeDownloadPolicyDetails { + public func deserialize(_ json: JSON) throws -> ShowcaseFileRemovedDetails { switch json { - case .dictionary(let dict): - let newValue = try TeamLog.ShowcaseDownloadPolicySerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try TeamLog.ShowcaseDownloadPolicySerializer().deserialize(dict["previous_value"] ?? .null) - return ShowcaseChangeDownloadPolicyDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: ShowcaseChangeDownloadPolicyDetails.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + return ShowcaseFileRemovedDetails(eventUuid: eventUuid) + default: + throw JSONSerializerError.deserializeError(type: ShowcaseFileRemovedDetails.self, json: json) } } } - /// The ShowcaseChangeDownloadPolicyType struct - public class ShowcaseChangeDownloadPolicyType: CustomStringConvertible, JSONRepresentable { + /// The ShowcaseFileRemovedType struct + public class ShowcaseFileRemovedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -56575,86 +69136,78 @@ public class TeamLog { } func json() throws -> JSON { - try ShowcaseChangeDownloadPolicyTypeSerializer().serialize(self) + try ShowcaseFileRemovedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseChangeDownloadPolicyTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseFileRemovedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for ShowcaseChangeDownloadPolicyType: \(error)" + return "Failed to generate description for ShowcaseFileRemovedType: \(error)" } } } - - public class ShowcaseChangeDownloadPolicyTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShowcaseChangeDownloadPolicyType) throws -> JSON { + public class ShowcaseFileRemovedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShowcaseFileRemovedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ShowcaseChangeDownloadPolicyType { + public func deserialize(_ json: JSON) throws -> ShowcaseFileRemovedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return ShowcaseChangeDownloadPolicyType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: ShowcaseChangeDownloadPolicyType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ShowcaseFileRemovedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ShowcaseFileRemovedType.self, json: json) } } } - /// Enabled/disabled Dropbox Showcase for team. - public class ShowcaseChangeEnabledPolicyDetails: CustomStringConvertible, JSONRepresentable { - /// New Dropbox Showcase policy. - public let newValue: TeamLog.ShowcaseEnabledPolicy - /// Previous Dropbox Showcase policy. - public let previousValue: TeamLog.ShowcaseEnabledPolicy - public init(newValue: TeamLog.ShowcaseEnabledPolicy, previousValue: TeamLog.ShowcaseEnabledPolicy) { - self.newValue = newValue - self.previousValue = previousValue + /// Viewed file in showcase. + public class ShowcaseFileViewDetails: CustomStringConvertible, JSONRepresentable { + /// Event unique identifier. + public let eventUuid: String + public init(eventUuid: String) { + stringValidator()(eventUuid) + self.eventUuid = eventUuid } func json() throws -> JSON { - try ShowcaseChangeEnabledPolicyDetailsSerializer().serialize(self) + try ShowcaseFileViewDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseChangeEnabledPolicyDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseFileViewDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for ShowcaseChangeEnabledPolicyDetails: \(error)" + return "Failed to generate description for ShowcaseFileViewDetails: \(error)" } } } - - public class ShowcaseChangeEnabledPolicyDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShowcaseChangeEnabledPolicyDetails) throws -> JSON { + public class ShowcaseFileViewDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShowcaseFileViewDetails) throws -> JSON { let output = [ - "new_value": try TeamLog.ShowcaseEnabledPolicySerializer().serialize(value.newValue), - "previous_value": try TeamLog.ShowcaseEnabledPolicySerializer().serialize(value.previousValue), + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ShowcaseChangeEnabledPolicyDetails { + public func deserialize(_ json: JSON) throws -> ShowcaseFileViewDetails { switch json { - case .dictionary(let dict): - let newValue = try TeamLog.ShowcaseEnabledPolicySerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try TeamLog.ShowcaseEnabledPolicySerializer().deserialize(dict["previous_value"] ?? .null) - return ShowcaseChangeEnabledPolicyDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: ShowcaseChangeEnabledPolicyDetails.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + return ShowcaseFileViewDetails(eventUuid: eventUuid) + default: + throw JSONSerializerError.deserializeError(type: ShowcaseFileViewDetails.self, json: json) } } } - /// The ShowcaseChangeEnabledPolicyType struct - public class ShowcaseChangeEnabledPolicyType: CustomStringConvertible, JSONRepresentable { + /// The ShowcaseFileViewType struct + public class ShowcaseFileViewType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -56663,86 +69216,78 @@ public class TeamLog { } func json() throws -> JSON { - try ShowcaseChangeEnabledPolicyTypeSerializer().serialize(self) + try ShowcaseFileViewTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseChangeEnabledPolicyTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseFileViewTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for ShowcaseChangeEnabledPolicyType: \(error)" + return "Failed to generate description for ShowcaseFileViewType: \(error)" } } } - - public class ShowcaseChangeEnabledPolicyTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShowcaseChangeEnabledPolicyType) throws -> JSON { + public class ShowcaseFileViewTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShowcaseFileViewType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ShowcaseChangeEnabledPolicyType { + public func deserialize(_ json: JSON) throws -> ShowcaseFileViewType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return ShowcaseChangeEnabledPolicyType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: ShowcaseChangeEnabledPolicyType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ShowcaseFileViewType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ShowcaseFileViewType.self, json: json) } } } - /// Enabled/disabled sharing Dropbox Showcase externally for team. - public class ShowcaseChangeExternalSharingPolicyDetails: CustomStringConvertible, JSONRepresentable { - /// New Dropbox Showcase external sharing policy. - public let newValue: TeamLog.ShowcaseExternalSharingPolicy - /// Previous Dropbox Showcase external sharing policy. - public let previousValue: TeamLog.ShowcaseExternalSharingPolicy - public init(newValue: TeamLog.ShowcaseExternalSharingPolicy, previousValue: TeamLog.ShowcaseExternalSharingPolicy) { - self.newValue = newValue - self.previousValue = previousValue + /// Permanently deleted showcase. + public class ShowcasePermanentlyDeletedDetails: CustomStringConvertible, JSONRepresentable { + /// Event unique identifier. + public let eventUuid: String + public init(eventUuid: String) { + stringValidator()(eventUuid) + self.eventUuid = eventUuid } func json() throws -> JSON { - try ShowcaseChangeExternalSharingPolicyDetailsSerializer().serialize(self) + try ShowcasePermanentlyDeletedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseChangeExternalSharingPolicyDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShowcasePermanentlyDeletedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for ShowcaseChangeExternalSharingPolicyDetails: \(error)" + return "Failed to generate description for ShowcasePermanentlyDeletedDetails: \(error)" } } } - - public class ShowcaseChangeExternalSharingPolicyDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShowcaseChangeExternalSharingPolicyDetails) throws -> JSON { + public class ShowcasePermanentlyDeletedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShowcasePermanentlyDeletedDetails) throws -> JSON { let output = [ - "new_value": try TeamLog.ShowcaseExternalSharingPolicySerializer().serialize(value.newValue), - "previous_value": try TeamLog.ShowcaseExternalSharingPolicySerializer().serialize(value.previousValue), + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ShowcaseChangeExternalSharingPolicyDetails { + public func deserialize(_ json: JSON) throws -> ShowcasePermanentlyDeletedDetails { switch json { - case .dictionary(let dict): - let newValue = try TeamLog.ShowcaseExternalSharingPolicySerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try TeamLog.ShowcaseExternalSharingPolicySerializer().deserialize(dict["previous_value"] ?? .null) - return ShowcaseChangeExternalSharingPolicyDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: ShowcaseChangeExternalSharingPolicyDetails.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + return ShowcasePermanentlyDeletedDetails(eventUuid: eventUuid) + default: + throw JSONSerializerError.deserializeError(type: ShowcasePermanentlyDeletedDetails.self, json: json) } } } - /// The ShowcaseChangeExternalSharingPolicyType struct - public class ShowcaseChangeExternalSharingPolicyType: CustomStringConvertible, JSONRepresentable { + /// The ShowcasePermanentlyDeletedType struct + public class ShowcasePermanentlyDeletedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -56751,82 +69296,84 @@ public class TeamLog { } func json() throws -> JSON { - try ShowcaseChangeExternalSharingPolicyTypeSerializer().serialize(self) + try ShowcasePermanentlyDeletedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseChangeExternalSharingPolicyTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShowcasePermanentlyDeletedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for ShowcaseChangeExternalSharingPolicyType: \(error)" + return "Failed to generate description for ShowcasePermanentlyDeletedType: \(error)" } } } - - public class ShowcaseChangeExternalSharingPolicyTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShowcaseChangeExternalSharingPolicyType) throws -> JSON { + public class ShowcasePermanentlyDeletedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShowcasePermanentlyDeletedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ShowcaseChangeExternalSharingPolicyType { + public func deserialize(_ json: JSON) throws -> ShowcasePermanentlyDeletedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return ShowcaseChangeExternalSharingPolicyType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: ShowcaseChangeExternalSharingPolicyType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ShowcasePermanentlyDeletedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ShowcasePermanentlyDeletedType.self, json: json) } } } - /// Created showcase. - public class ShowcaseCreatedDetails: CustomStringConvertible, JSONRepresentable { + /// Added showcase comment. + public class ShowcasePostCommentDetails: CustomStringConvertible, JSONRepresentable { /// Event unique identifier. public let eventUuid: String - public init(eventUuid: String) { + /// Comment text. + public let commentText: String? + public init(eventUuid: String, commentText: String? = nil) { stringValidator()(eventUuid) self.eventUuid = eventUuid + nullableValidator(stringValidator())(commentText) + self.commentText = commentText } func json() throws -> JSON { - try ShowcaseCreatedDetailsSerializer().serialize(self) + try ShowcasePostCommentDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseCreatedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShowcasePostCommentDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for ShowcaseCreatedDetails: \(error)" + return "Failed to generate description for ShowcasePostCommentDetails: \(error)" } } } - - public class ShowcaseCreatedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShowcaseCreatedDetails) throws -> JSON { + public class ShowcasePostCommentDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShowcasePostCommentDetails) throws -> JSON { let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + "comment_text": try NullableSerializer(Serialization._StringSerializer).serialize(value.commentText), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ShowcaseCreatedDetails { + public func deserialize(_ json: JSON) throws -> ShowcasePostCommentDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - return ShowcaseCreatedDetails(eventUuid: eventUuid) - default: - throw JSONSerializerError.deserializeError(type: ShowcaseCreatedDetails.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + let commentText = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["comment_text"] ?? .null) + return ShowcasePostCommentDetails(eventUuid: eventUuid, commentText: commentText) + default: + throw JSONSerializerError.deserializeError(type: ShowcasePostCommentDetails.self, json: json) } } } - /// The ShowcaseCreatedType struct - public class ShowcaseCreatedType: CustomStringConvertible, JSONRepresentable { + /// The ShowcasePostCommentType struct + public class ShowcasePostCommentType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -56835,88 +69382,78 @@ public class TeamLog { } func json() throws -> JSON { - try ShowcaseCreatedTypeSerializer().serialize(self) + try ShowcasePostCommentTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseCreatedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShowcasePostCommentTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for ShowcaseCreatedType: \(error)" + return "Failed to generate description for ShowcasePostCommentType: \(error)" } } } - - public class ShowcaseCreatedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShowcaseCreatedType) throws -> JSON { + public class ShowcasePostCommentTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShowcasePostCommentType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ShowcaseCreatedType { + public func deserialize(_ json: JSON) throws -> ShowcasePostCommentType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return ShowcaseCreatedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: ShowcaseCreatedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ShowcasePostCommentType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ShowcasePostCommentType.self, json: json) } } } - /// Deleted showcase comment. - public class ShowcaseDeleteCommentDetails: CustomStringConvertible, JSONRepresentable { + /// Removed member from showcase. + public class ShowcaseRemoveMemberDetails: CustomStringConvertible, JSONRepresentable { /// Event unique identifier. public let eventUuid: String - /// Comment text. - public let commentText: String? - public init(eventUuid: String, commentText: String? = nil) { + public init(eventUuid: String) { stringValidator()(eventUuid) self.eventUuid = eventUuid - nullableValidator(stringValidator())(commentText) - self.commentText = commentText } func json() throws -> JSON { - try ShowcaseDeleteCommentDetailsSerializer().serialize(self) + try ShowcaseRemoveMemberDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseDeleteCommentDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseRemoveMemberDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for ShowcaseDeleteCommentDetails: \(error)" + return "Failed to generate description for ShowcaseRemoveMemberDetails: \(error)" } } } - - public class ShowcaseDeleteCommentDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShowcaseDeleteCommentDetails) throws -> JSON { + public class ShowcaseRemoveMemberDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShowcaseRemoveMemberDetails) throws -> JSON { let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), - "comment_text": try NullableSerializer(Serialization._StringSerializer).serialize(value.commentText), + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ShowcaseDeleteCommentDetails { + public func deserialize(_ json: JSON) throws -> ShowcaseRemoveMemberDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - let commentText = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["comment_text"] ?? .null) - return ShowcaseDeleteCommentDetails(eventUuid: eventUuid, commentText: commentText) - default: - throw JSONSerializerError.deserializeError(type: ShowcaseDeleteCommentDetails.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + return ShowcaseRemoveMemberDetails(eventUuid: eventUuid) + default: + throw JSONSerializerError.deserializeError(type: ShowcaseRemoveMemberDetails.self, json: json) } } } - /// The ShowcaseDeleteCommentType struct - public class ShowcaseDeleteCommentType: CustomStringConvertible, JSONRepresentable { + /// The ShowcaseRemoveMemberType struct + public class ShowcaseRemoveMemberType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -56925,197 +69462,158 @@ public class TeamLog { } func json() throws -> JSON { - try ShowcaseDeleteCommentTypeSerializer().serialize(self) + try ShowcaseRemoveMemberTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseDeleteCommentTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseRemoveMemberTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for ShowcaseDeleteCommentType: \(error)" + return "Failed to generate description for ShowcaseRemoveMemberType: \(error)" } } } - - public class ShowcaseDeleteCommentTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShowcaseDeleteCommentType) throws -> JSON { + public class ShowcaseRemoveMemberTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShowcaseRemoveMemberType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ShowcaseDeleteCommentType { + public func deserialize(_ json: JSON) throws -> ShowcaseRemoveMemberType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return ShowcaseDeleteCommentType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: ShowcaseDeleteCommentType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ShowcaseRemoveMemberType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ShowcaseRemoveMemberType.self, json: json) } } } - /// Showcase document's logged information. - public class ShowcaseDocumentLogInfo: CustomStringConvertible, JSONRepresentable { - /// Showcase document Id. - public let showcaseId: String - /// Showcase document title. - public let showcaseTitle: String - public init(showcaseId: String, showcaseTitle: String) { - stringValidator()(showcaseId) - self.showcaseId = showcaseId - stringValidator()(showcaseTitle) - self.showcaseTitle = showcaseTitle + /// Renamed showcase. + public class ShowcaseRenamedDetails: CustomStringConvertible, JSONRepresentable { + /// Event unique identifier. + public let eventUuid: String + public init(eventUuid: String) { + stringValidator()(eventUuid) + self.eventUuid = eventUuid } func json() throws -> JSON { - try ShowcaseDocumentLogInfoSerializer().serialize(self) + try ShowcaseRenamedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseDocumentLogInfoSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseRenamedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for ShowcaseDocumentLogInfo: \(error)" + return "Failed to generate description for ShowcaseRenamedDetails: \(error)" } } } - - public class ShowcaseDocumentLogInfoSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShowcaseDocumentLogInfo) throws -> JSON { + public class ShowcaseRenamedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShowcaseRenamedDetails) throws -> JSON { let output = [ - "showcase_id": try Serialization._StringSerializer.serialize(value.showcaseId), - "showcase_title": try Serialization._StringSerializer.serialize(value.showcaseTitle), + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ShowcaseDocumentLogInfo { + public func deserialize(_ json: JSON) throws -> ShowcaseRenamedDetails { switch json { - case .dictionary(let dict): - let showcaseId = try Serialization._StringSerializer.deserialize(dict["showcase_id"] ?? .null) - let showcaseTitle = try Serialization._StringSerializer.deserialize(dict["showcase_title"] ?? .null) - return ShowcaseDocumentLogInfo(showcaseId: showcaseId, showcaseTitle: showcaseTitle) - default: - throw JSONSerializerError.deserializeError(type: ShowcaseDocumentLogInfo.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + return ShowcaseRenamedDetails(eventUuid: eventUuid) + default: + throw JSONSerializerError.deserializeError(type: ShowcaseRenamedDetails.self, json: json) } } } - /// Policy for controlling if files can be downloaded from Showcases by team members - public enum ShowcaseDownloadPolicy: CustomStringConvertible, JSONRepresentable { - /// An unspecified error. - case disabled - /// An unspecified error. - case enabled - /// An unspecified error. - case other + /// The ShowcaseRenamedType struct + public class ShowcaseRenamedType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } func json() throws -> JSON { - try ShowcaseDownloadPolicySerializer().serialize(self) + try ShowcaseRenamedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseDownloadPolicySerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseRenamedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for ShowcaseDownloadPolicy: \(error)" + return "Failed to generate description for ShowcaseRenamedType: \(error)" } } } - - public class ShowcaseDownloadPolicySerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShowcaseDownloadPolicy) throws -> JSON { - switch value { - case .disabled: - var d = [String: JSON]() - d[".tag"] = .str("disabled") - return .dictionary(d) - case .enabled: - var d = [String: JSON]() - d[".tag"] = .str("enabled") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) - } + public class ShowcaseRenamedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShowcaseRenamedType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ShowcaseDownloadPolicy { + public func deserialize(_ json: JSON) throws -> ShowcaseRenamedType { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "disabled": - return ShowcaseDownloadPolicy.disabled - case "enabled": - return ShowcaseDownloadPolicy.enabled - case "other": - return ShowcaseDownloadPolicy.other + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ShowcaseRenamedType(description_: description_) default: - return ShowcaseDownloadPolicy.other - } - default: - throw JSONSerializerError.deserializeError(type: ShowcaseDownloadPolicy.self, json: json) + throw JSONSerializerError.deserializeError(type: ShowcaseRenamedType.self, json: json) } } } - /// Edited showcase comment. - public class ShowcaseEditCommentDetails: CustomStringConvertible, JSONRepresentable { + /// Requested access to showcase. + public class ShowcaseRequestAccessDetails: CustomStringConvertible, JSONRepresentable { /// Event unique identifier. public let eventUuid: String - /// Comment text. - public let commentText: String? - public init(eventUuid: String, commentText: String? = nil) { + public init(eventUuid: String) { stringValidator()(eventUuid) self.eventUuid = eventUuid - nullableValidator(stringValidator())(commentText) - self.commentText = commentText } func json() throws -> JSON { - try ShowcaseEditCommentDetailsSerializer().serialize(self) + try ShowcaseRequestAccessDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseEditCommentDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseRequestAccessDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for ShowcaseEditCommentDetails: \(error)" + return "Failed to generate description for ShowcaseRequestAccessDetails: \(error)" } } } - - public class ShowcaseEditCommentDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShowcaseEditCommentDetails) throws -> JSON { + public class ShowcaseRequestAccessDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShowcaseRequestAccessDetails) throws -> JSON { let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), - "comment_text": try NullableSerializer(Serialization._StringSerializer).serialize(value.commentText), + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ShowcaseEditCommentDetails { + public func deserialize(_ json: JSON) throws -> ShowcaseRequestAccessDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - let commentText = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["comment_text"] ?? .null) - return ShowcaseEditCommentDetails(eventUuid: eventUuid, commentText: commentText) - default: - throw JSONSerializerError.deserializeError(type: ShowcaseEditCommentDetails.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + return ShowcaseRequestAccessDetails(eventUuid: eventUuid) + default: + throw JSONSerializerError.deserializeError(type: ShowcaseRequestAccessDetails.self, json: json) } } } - /// The ShowcaseEditCommentType struct - public class ShowcaseEditCommentType: CustomStringConvertible, JSONRepresentable { + /// The ShowcaseRequestAccessType struct + public class ShowcaseRequestAccessType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -57124,82 +69622,84 @@ public class TeamLog { } func json() throws -> JSON { - try ShowcaseEditCommentTypeSerializer().serialize(self) + try ShowcaseRequestAccessTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseEditCommentTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseRequestAccessTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for ShowcaseEditCommentType: \(error)" + return "Failed to generate description for ShowcaseRequestAccessType: \(error)" } } } - - public class ShowcaseEditCommentTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShowcaseEditCommentType) throws -> JSON { + public class ShowcaseRequestAccessTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShowcaseRequestAccessType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ShowcaseEditCommentType { + public func deserialize(_ json: JSON) throws -> ShowcaseRequestAccessType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return ShowcaseEditCommentType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: ShowcaseEditCommentType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ShowcaseRequestAccessType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ShowcaseRequestAccessType.self, json: json) } } } - /// Edited showcase. - public class ShowcaseEditedDetails: CustomStringConvertible, JSONRepresentable { + /// Resolved showcase comment. + public class ShowcaseResolveCommentDetails: CustomStringConvertible, JSONRepresentable { /// Event unique identifier. public let eventUuid: String - public init(eventUuid: String) { + /// Comment text. + public let commentText: String? + public init(eventUuid: String, commentText: String? = nil) { stringValidator()(eventUuid) self.eventUuid = eventUuid + nullableValidator(stringValidator())(commentText) + self.commentText = commentText } func json() throws -> JSON { - try ShowcaseEditedDetailsSerializer().serialize(self) + try ShowcaseResolveCommentDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseEditedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseResolveCommentDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for ShowcaseEditedDetails: \(error)" + return "Failed to generate description for ShowcaseResolveCommentDetails: \(error)" } } } - - public class ShowcaseEditedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShowcaseEditedDetails) throws -> JSON { + public class ShowcaseResolveCommentDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShowcaseResolveCommentDetails) throws -> JSON { let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + "comment_text": try NullableSerializer(Serialization._StringSerializer).serialize(value.commentText), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ShowcaseEditedDetails { + public func deserialize(_ json: JSON) throws -> ShowcaseResolveCommentDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - return ShowcaseEditedDetails(eventUuid: eventUuid) - default: - throw JSONSerializerError.deserializeError(type: ShowcaseEditedDetails.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + let commentText = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["comment_text"] ?? .null) + return ShowcaseResolveCommentDetails(eventUuid: eventUuid, commentText: commentText) + default: + throw JSONSerializerError.deserializeError(type: ShowcaseResolveCommentDetails.self, json: json) } } } - /// The ShowcaseEditedType struct - public class ShowcaseEditedType: CustomStringConvertible, JSONRepresentable { + /// The ShowcaseResolveCommentType struct + public class ShowcaseResolveCommentType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -57208,162 +69708,118 @@ public class TeamLog { } func json() throws -> JSON { - try ShowcaseEditedTypeSerializer().serialize(self) + try ShowcaseResolveCommentTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseEditedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseResolveCommentTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for ShowcaseEditedType: \(error)" + return "Failed to generate description for ShowcaseResolveCommentType: \(error)" } } } - - public class ShowcaseEditedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShowcaseEditedType) throws -> JSON { + public class ShowcaseResolveCommentTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShowcaseResolveCommentType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ShowcaseEditedType { + public func deserialize(_ json: JSON) throws -> ShowcaseResolveCommentType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return ShowcaseEditedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: ShowcaseEditedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ShowcaseResolveCommentType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ShowcaseResolveCommentType.self, json: json) } } } - /// Policy for controlling whether Showcase is enabled. - public enum ShowcaseEnabledPolicy: CustomStringConvertible, JSONRepresentable { - /// An unspecified error. - case disabled - /// An unspecified error. - case enabled - /// An unspecified error. - case other + /// Unarchived showcase. + public class ShowcaseRestoredDetails: CustomStringConvertible, JSONRepresentable { + /// Event unique identifier. + public let eventUuid: String + public init(eventUuid: String) { + stringValidator()(eventUuid) + self.eventUuid = eventUuid + } func json() throws -> JSON { - try ShowcaseEnabledPolicySerializer().serialize(self) + try ShowcaseRestoredDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseEnabledPolicySerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseRestoredDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for ShowcaseEnabledPolicy: \(error)" + return "Failed to generate description for ShowcaseRestoredDetails: \(error)" } } } - - public class ShowcaseEnabledPolicySerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShowcaseEnabledPolicy) throws -> JSON { - switch value { - case .disabled: - var d = [String: JSON]() - d[".tag"] = .str("disabled") - return .dictionary(d) - case .enabled: - var d = [String: JSON]() - d[".tag"] = .str("enabled") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) - } + public class ShowcaseRestoredDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShowcaseRestoredDetails) throws -> JSON { + let output = [ + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + ] + return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ShowcaseEnabledPolicy { + public func deserialize(_ json: JSON) throws -> ShowcaseRestoredDetails { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "disabled": - return ShowcaseEnabledPolicy.disabled - case "enabled": - return ShowcaseEnabledPolicy.enabled - case "other": - return ShowcaseEnabledPolicy.other + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + return ShowcaseRestoredDetails(eventUuid: eventUuid) default: - return ShowcaseEnabledPolicy.other - } - default: - throw JSONSerializerError.deserializeError(type: ShowcaseEnabledPolicy.self, json: json) + throw JSONSerializerError.deserializeError(type: ShowcaseRestoredDetails.self, json: json) } } } - /// Policy for controlling if team members can share Showcases externally. - public enum ShowcaseExternalSharingPolicy: CustomStringConvertible, JSONRepresentable { - /// An unspecified error. - case disabled - /// An unspecified error. - case enabled - /// An unspecified error. - case other + /// The ShowcaseRestoredType struct + public class ShowcaseRestoredType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } func json() throws -> JSON { - try ShowcaseExternalSharingPolicySerializer().serialize(self) + try ShowcaseRestoredTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseExternalSharingPolicySerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseRestoredTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for ShowcaseExternalSharingPolicy: \(error)" + return "Failed to generate description for ShowcaseRestoredType: \(error)" } } } - - public class ShowcaseExternalSharingPolicySerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShowcaseExternalSharingPolicy) throws -> JSON { - switch value { - case .disabled: - var d = [String: JSON]() - d[".tag"] = .str("disabled") - return .dictionary(d) - case .enabled: - var d = [String: JSON]() - d[".tag"] = .str("enabled") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) - } + public class ShowcaseRestoredTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShowcaseRestoredType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ShowcaseExternalSharingPolicy { + public func deserialize(_ json: JSON) throws -> ShowcaseRestoredType { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "disabled": - return ShowcaseExternalSharingPolicy.disabled - case "enabled": - return ShowcaseExternalSharingPolicy.enabled - case "other": - return ShowcaseExternalSharingPolicy.other + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ShowcaseRestoredType(description_: description_) default: - return ShowcaseExternalSharingPolicy.other - } - default: - throw JSONSerializerError.deserializeError(type: ShowcaseExternalSharingPolicy.self, json: json) + throw JSONSerializerError.deserializeError(type: ShowcaseRestoredType.self, json: json) } } } - /// Added file to showcase. - public class ShowcaseFileAddedDetails: CustomStringConvertible, JSONRepresentable { + /// Deleted showcase (old version). + public class ShowcaseTrashedDeprecatedDetails: CustomStringConvertible, JSONRepresentable { /// Event unique identifier. public let eventUuid: String public init(eventUuid: String) { @@ -57372,40 +69828,38 @@ public class TeamLog { } func json() throws -> JSON { - try ShowcaseFileAddedDetailsSerializer().serialize(self) + try ShowcaseTrashedDeprecatedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseFileAddedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseTrashedDeprecatedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for ShowcaseFileAddedDetails: \(error)" + return "Failed to generate description for ShowcaseTrashedDeprecatedDetails: \(error)" } } } - - public class ShowcaseFileAddedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShowcaseFileAddedDetails) throws -> JSON { + public class ShowcaseTrashedDeprecatedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShowcaseTrashedDeprecatedDetails) throws -> JSON { let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ShowcaseFileAddedDetails { + public func deserialize(_ json: JSON) throws -> ShowcaseTrashedDeprecatedDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - return ShowcaseFileAddedDetails(eventUuid: eventUuid) - default: - throw JSONSerializerError.deserializeError(type: ShowcaseFileAddedDetails.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + return ShowcaseTrashedDeprecatedDetails(eventUuid: eventUuid) + default: + throw JSONSerializerError.deserializeError(type: ShowcaseTrashedDeprecatedDetails.self, json: json) } } } - /// The ShowcaseFileAddedType struct - public class ShowcaseFileAddedType: CustomStringConvertible, JSONRepresentable { + /// The ShowcaseTrashedDeprecatedType struct + public class ShowcaseTrashedDeprecatedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -57414,88 +69868,78 @@ public class TeamLog { } func json() throws -> JSON { - try ShowcaseFileAddedTypeSerializer().serialize(self) + try ShowcaseTrashedDeprecatedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseFileAddedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseTrashedDeprecatedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for ShowcaseFileAddedType: \(error)" + return "Failed to generate description for ShowcaseTrashedDeprecatedType: \(error)" } } } - - public class ShowcaseFileAddedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShowcaseFileAddedType) throws -> JSON { + public class ShowcaseTrashedDeprecatedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShowcaseTrashedDeprecatedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ShowcaseFileAddedType { + public func deserialize(_ json: JSON) throws -> ShowcaseTrashedDeprecatedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return ShowcaseFileAddedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: ShowcaseFileAddedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ShowcaseTrashedDeprecatedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ShowcaseTrashedDeprecatedType.self, json: json) } } } - /// Downloaded file from showcase. - public class ShowcaseFileDownloadDetails: CustomStringConvertible, JSONRepresentable { + /// Deleted showcase. + public class ShowcaseTrashedDetails: CustomStringConvertible, JSONRepresentable { /// Event unique identifier. public let eventUuid: String - /// Showcase download type. - public let downloadType: String - public init(eventUuid: String, downloadType: String) { + public init(eventUuid: String) { stringValidator()(eventUuid) self.eventUuid = eventUuid - stringValidator()(downloadType) - self.downloadType = downloadType } func json() throws -> JSON { - try ShowcaseFileDownloadDetailsSerializer().serialize(self) + try ShowcaseTrashedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseFileDownloadDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseTrashedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for ShowcaseFileDownloadDetails: \(error)" + return "Failed to generate description for ShowcaseTrashedDetails: \(error)" } } } - - public class ShowcaseFileDownloadDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShowcaseFileDownloadDetails) throws -> JSON { + public class ShowcaseTrashedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShowcaseTrashedDetails) throws -> JSON { let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), - "download_type": try Serialization._StringSerializer.serialize(value.downloadType), + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ShowcaseFileDownloadDetails { + public func deserialize(_ json: JSON) throws -> ShowcaseTrashedDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - let downloadType = try Serialization._StringSerializer.deserialize(dict["download_type"] ?? .null) - return ShowcaseFileDownloadDetails(eventUuid: eventUuid, downloadType: downloadType) - default: - throw JSONSerializerError.deserializeError(type: ShowcaseFileDownloadDetails.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + return ShowcaseTrashedDetails(eventUuid: eventUuid) + default: + throw JSONSerializerError.deserializeError(type: ShowcaseTrashedDetails.self, json: json) } } } - /// The ShowcaseFileDownloadType struct - public class ShowcaseFileDownloadType: CustomStringConvertible, JSONRepresentable { + /// The ShowcaseTrashedType struct + public class ShowcaseTrashedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -57504,82 +69948,84 @@ public class TeamLog { } func json() throws -> JSON { - try ShowcaseFileDownloadTypeSerializer().serialize(self) + try ShowcaseTrashedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseFileDownloadTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseTrashedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for ShowcaseFileDownloadType: \(error)" + return "Failed to generate description for ShowcaseTrashedType: \(error)" } } } - - public class ShowcaseFileDownloadTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShowcaseFileDownloadType) throws -> JSON { + public class ShowcaseTrashedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShowcaseTrashedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ShowcaseFileDownloadType { + public func deserialize(_ json: JSON) throws -> ShowcaseTrashedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return ShowcaseFileDownloadType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: ShowcaseFileDownloadType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ShowcaseTrashedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ShowcaseTrashedType.self, json: json) } } } - /// Removed file from showcase. - public class ShowcaseFileRemovedDetails: CustomStringConvertible, JSONRepresentable { + /// Unresolved showcase comment. + public class ShowcaseUnresolveCommentDetails: CustomStringConvertible, JSONRepresentable { /// Event unique identifier. public let eventUuid: String - public init(eventUuid: String) { + /// Comment text. + public let commentText: String? + public init(eventUuid: String, commentText: String? = nil) { stringValidator()(eventUuid) self.eventUuid = eventUuid + nullableValidator(stringValidator())(commentText) + self.commentText = commentText } func json() throws -> JSON { - try ShowcaseFileRemovedDetailsSerializer().serialize(self) + try ShowcaseUnresolveCommentDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseFileRemovedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseUnresolveCommentDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for ShowcaseFileRemovedDetails: \(error)" + return "Failed to generate description for ShowcaseUnresolveCommentDetails: \(error)" } } } - - public class ShowcaseFileRemovedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShowcaseFileRemovedDetails) throws -> JSON { + public class ShowcaseUnresolveCommentDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShowcaseUnresolveCommentDetails) throws -> JSON { let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + "comment_text": try NullableSerializer(Serialization._StringSerializer).serialize(value.commentText), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ShowcaseFileRemovedDetails { + public func deserialize(_ json: JSON) throws -> ShowcaseUnresolveCommentDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - return ShowcaseFileRemovedDetails(eventUuid: eventUuid) - default: - throw JSONSerializerError.deserializeError(type: ShowcaseFileRemovedDetails.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + let commentText = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["comment_text"] ?? .null) + return ShowcaseUnresolveCommentDetails(eventUuid: eventUuid, commentText: commentText) + default: + throw JSONSerializerError.deserializeError(type: ShowcaseUnresolveCommentDetails.self, json: json) } } } - /// The ShowcaseFileRemovedType struct - public class ShowcaseFileRemovedType: CustomStringConvertible, JSONRepresentable { + /// The ShowcaseUnresolveCommentType struct + public class ShowcaseUnresolveCommentType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -57588,40 +70034,38 @@ public class TeamLog { } func json() throws -> JSON { - try ShowcaseFileRemovedTypeSerializer().serialize(self) + try ShowcaseUnresolveCommentTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseFileRemovedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseUnresolveCommentTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for ShowcaseFileRemovedType: \(error)" + return "Failed to generate description for ShowcaseUnresolveCommentType: \(error)" } } } - - public class ShowcaseFileRemovedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShowcaseFileRemovedType) throws -> JSON { + public class ShowcaseUnresolveCommentTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShowcaseUnresolveCommentType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ShowcaseFileRemovedType { + public func deserialize(_ json: JSON) throws -> ShowcaseUnresolveCommentType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return ShowcaseFileRemovedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: ShowcaseFileRemovedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ShowcaseUnresolveCommentType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ShowcaseUnresolveCommentType.self, json: json) } } } - /// Viewed file in showcase. - public class ShowcaseFileViewDetails: CustomStringConvertible, JSONRepresentable { + /// Restored showcase (old version). + public class ShowcaseUntrashedDeprecatedDetails: CustomStringConvertible, JSONRepresentable { /// Event unique identifier. public let eventUuid: String public init(eventUuid: String) { @@ -57630,40 +70074,38 @@ public class TeamLog { } func json() throws -> JSON { - try ShowcaseFileViewDetailsSerializer().serialize(self) + try ShowcaseUntrashedDeprecatedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseFileViewDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseUntrashedDeprecatedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for ShowcaseFileViewDetails: \(error)" + return "Failed to generate description for ShowcaseUntrashedDeprecatedDetails: \(error)" } } } - - public class ShowcaseFileViewDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShowcaseFileViewDetails) throws -> JSON { + public class ShowcaseUntrashedDeprecatedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShowcaseUntrashedDeprecatedDetails) throws -> JSON { let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ShowcaseFileViewDetails { + public func deserialize(_ json: JSON) throws -> ShowcaseUntrashedDeprecatedDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - return ShowcaseFileViewDetails(eventUuid: eventUuid) - default: - throw JSONSerializerError.deserializeError(type: ShowcaseFileViewDetails.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + return ShowcaseUntrashedDeprecatedDetails(eventUuid: eventUuid) + default: + throw JSONSerializerError.deserializeError(type: ShowcaseUntrashedDeprecatedDetails.self, json: json) } } } - /// The ShowcaseFileViewType struct - public class ShowcaseFileViewType: CustomStringConvertible, JSONRepresentable { + /// The ShowcaseUntrashedDeprecatedType struct + public class ShowcaseUntrashedDeprecatedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -57672,40 +70114,38 @@ public class TeamLog { } func json() throws -> JSON { - try ShowcaseFileViewTypeSerializer().serialize(self) + try ShowcaseUntrashedDeprecatedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseFileViewTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseUntrashedDeprecatedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for ShowcaseFileViewType: \(error)" + return "Failed to generate description for ShowcaseUntrashedDeprecatedType: \(error)" } } } - - public class ShowcaseFileViewTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShowcaseFileViewType) throws -> JSON { + public class ShowcaseUntrashedDeprecatedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShowcaseUntrashedDeprecatedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ShowcaseFileViewType { + public func deserialize(_ json: JSON) throws -> ShowcaseUntrashedDeprecatedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return ShowcaseFileViewType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: ShowcaseFileViewType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ShowcaseUntrashedDeprecatedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ShowcaseUntrashedDeprecatedType.self, json: json) } } } - /// Permanently deleted showcase. - public class ShowcasePermanentlyDeletedDetails: CustomStringConvertible, JSONRepresentable { + /// Restored showcase. + public class ShowcaseUntrashedDetails: CustomStringConvertible, JSONRepresentable { /// Event unique identifier. public let eventUuid: String public init(eventUuid: String) { @@ -57714,40 +70154,38 @@ public class TeamLog { } func json() throws -> JSON { - try ShowcasePermanentlyDeletedDetailsSerializer().serialize(self) + try ShowcaseUntrashedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShowcasePermanentlyDeletedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseUntrashedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for ShowcasePermanentlyDeletedDetails: \(error)" + return "Failed to generate description for ShowcaseUntrashedDetails: \(error)" } } } - - public class ShowcasePermanentlyDeletedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShowcasePermanentlyDeletedDetails) throws -> JSON { + public class ShowcaseUntrashedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShowcaseUntrashedDetails) throws -> JSON { let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ShowcasePermanentlyDeletedDetails { + public func deserialize(_ json: JSON) throws -> ShowcaseUntrashedDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - return ShowcasePermanentlyDeletedDetails(eventUuid: eventUuid) - default: - throw JSONSerializerError.deserializeError(type: ShowcasePermanentlyDeletedDetails.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + return ShowcaseUntrashedDetails(eventUuid: eventUuid) + default: + throw JSONSerializerError.deserializeError(type: ShowcaseUntrashedDetails.self, json: json) } } } - /// The ShowcasePermanentlyDeletedType struct - public class ShowcasePermanentlyDeletedType: CustomStringConvertible, JSONRepresentable { + /// The ShowcaseUntrashedType struct + public class ShowcaseUntrashedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -57756,88 +70194,78 @@ public class TeamLog { } func json() throws -> JSON { - try ShowcasePermanentlyDeletedTypeSerializer().serialize(self) + try ShowcaseUntrashedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShowcasePermanentlyDeletedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseUntrashedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for ShowcasePermanentlyDeletedType: \(error)" + return "Failed to generate description for ShowcaseUntrashedType: \(error)" } } } - - public class ShowcasePermanentlyDeletedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShowcasePermanentlyDeletedType) throws -> JSON { + public class ShowcaseUntrashedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShowcaseUntrashedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ShowcasePermanentlyDeletedType { + public func deserialize(_ json: JSON) throws -> ShowcaseUntrashedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return ShowcasePermanentlyDeletedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: ShowcasePermanentlyDeletedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ShowcaseUntrashedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ShowcaseUntrashedType.self, json: json) } } } - /// Added showcase comment. - public class ShowcasePostCommentDetails: CustomStringConvertible, JSONRepresentable { + /// Viewed showcase. + public class ShowcaseViewDetails: CustomStringConvertible, JSONRepresentable { /// Event unique identifier. public let eventUuid: String - /// Comment text. - public let commentText: String? - public init(eventUuid: String, commentText: String? = nil) { + public init(eventUuid: String) { stringValidator()(eventUuid) self.eventUuid = eventUuid - nullableValidator(stringValidator())(commentText) - self.commentText = commentText } func json() throws -> JSON { - try ShowcasePostCommentDetailsSerializer().serialize(self) + try ShowcaseViewDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShowcasePostCommentDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseViewDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for ShowcasePostCommentDetails: \(error)" + return "Failed to generate description for ShowcaseViewDetails: \(error)" } } } - - public class ShowcasePostCommentDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShowcasePostCommentDetails) throws -> JSON { + public class ShowcaseViewDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShowcaseViewDetails) throws -> JSON { let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), - "comment_text": try NullableSerializer(Serialization._StringSerializer).serialize(value.commentText), + "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ShowcasePostCommentDetails { + public func deserialize(_ json: JSON) throws -> ShowcaseViewDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - let commentText = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["comment_text"] ?? .null) - return ShowcasePostCommentDetails(eventUuid: eventUuid, commentText: commentText) - default: - throw JSONSerializerError.deserializeError(type: ShowcasePostCommentDetails.self, json: json) + case .dictionary(let dict): + let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) + return ShowcaseViewDetails(eventUuid: eventUuid) + default: + throw JSONSerializerError.deserializeError(type: ShowcaseViewDetails.self, json: json) } } } - /// The ShowcasePostCommentType struct - public class ShowcasePostCommentType: CustomStringConvertible, JSONRepresentable { + /// The ShowcaseViewType struct + public class ShowcaseViewType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -57846,82 +70274,149 @@ public class TeamLog { } func json() throws -> JSON { - try ShowcasePostCommentTypeSerializer().serialize(self) + try ShowcaseViewTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShowcasePostCommentTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseViewTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for ShowcasePostCommentType: \(error)" + return "Failed to generate description for ShowcaseViewType: \(error)" } } } - - public class ShowcasePostCommentTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShowcasePostCommentType) throws -> JSON { + public class ShowcaseViewTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: ShowcaseViewType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ShowcasePostCommentType { + public func deserialize(_ json: JSON) throws -> ShowcaseViewType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return ShowcasePostCommentType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: ShowcasePostCommentType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ShowcaseViewType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ShowcaseViewType.self, json: json) + } + } + } + + /// Policy for deciding whether team users can share Sign content externally + public enum SignExternalSharingPolicy: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case default_ + /// An unspecified error. + case disabled + /// An unspecified error. + case enabled + /// An unspecified error. + case other + + func json() throws -> JSON { + try SignExternalSharingPolicySerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try SignExternalSharingPolicySerializer().serialize(self)))" + } catch { + return "Failed to generate description for SignExternalSharingPolicy: \(error)" + } + } + } + public class SignExternalSharingPolicySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SignExternalSharingPolicy) throws -> JSON { + switch value { + case .default_: + var d = [String: JSON]() + d[".tag"] = .str("default") + return .dictionary(d) + case .disabled: + var d = [String: JSON]() + d[".tag"] = .str("disabled") + return .dictionary(d) + case .enabled: + var d = [String: JSON]() + d[".tag"] = .str("enabled") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> SignExternalSharingPolicy { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "default": + return SignExternalSharingPolicy.default_ + case "disabled": + return SignExternalSharingPolicy.disabled + case "enabled": + return SignExternalSharingPolicy.enabled + case "other": + return SignExternalSharingPolicy.other + default: + return SignExternalSharingPolicy.other + } + default: + throw JSONSerializerError.deserializeError(type: SignExternalSharingPolicy.self, json: json) } } } - /// Removed member from showcase. - public class ShowcaseRemoveMemberDetails: CustomStringConvertible, JSONRepresentable { - /// Event unique identifier. - public let eventUuid: String - public init(eventUuid: String) { - stringValidator()(eventUuid) - self.eventUuid = eventUuid + /// Changed Signatures external sharing policy for team. + public class SignExternalSharingPolicyChangedDetails: CustomStringConvertible, JSONRepresentable { + /// To. + public let newValue: TeamLog.SignExternalSharingPolicy + /// From. + public let previousValue: TeamLog.SignExternalSharingPolicy + public init(newValue: TeamLog.SignExternalSharingPolicy, previousValue: TeamLog.SignExternalSharingPolicy) { + self.newValue = newValue + self.previousValue = previousValue } func json() throws -> JSON { - try ShowcaseRemoveMemberDetailsSerializer().serialize(self) + try SignExternalSharingPolicyChangedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseRemoveMemberDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SignExternalSharingPolicyChangedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for ShowcaseRemoveMemberDetails: \(error)" + return "Failed to generate description for SignExternalSharingPolicyChangedDetails: \(error)" } } } - - public class ShowcaseRemoveMemberDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShowcaseRemoveMemberDetails) throws -> JSON { + public class SignExternalSharingPolicyChangedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SignExternalSharingPolicyChangedDetails) throws -> JSON { let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + "new_value": try TeamLog.SignExternalSharingPolicySerializer().serialize(value.newValue), + "previous_value": try TeamLog.SignExternalSharingPolicySerializer().serialize(value.previousValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ShowcaseRemoveMemberDetails { + public func deserialize(_ json: JSON) throws -> SignExternalSharingPolicyChangedDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - return ShowcaseRemoveMemberDetails(eventUuid: eventUuid) - default: - throw JSONSerializerError.deserializeError(type: ShowcaseRemoveMemberDetails.self, json: json) + case .dictionary(let dict): + let newValue = try TeamLog.SignExternalSharingPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try TeamLog.SignExternalSharingPolicySerializer().deserialize(dict["previous_value"] ?? .null) + return SignExternalSharingPolicyChangedDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: SignExternalSharingPolicyChangedDetails.self, json: json) } } } - /// The ShowcaseRemoveMemberType struct - public class ShowcaseRemoveMemberType: CustomStringConvertible, JSONRepresentable { + /// The SignExternalSharingPolicyChangedType struct + public class SignExternalSharingPolicyChangedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -57930,82 +70425,69 @@ public class TeamLog { } func json() throws -> JSON { - try ShowcaseRemoveMemberTypeSerializer().serialize(self) + try SignExternalSharingPolicyChangedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseRemoveMemberTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SignExternalSharingPolicyChangedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for ShowcaseRemoveMemberType: \(error)" + return "Failed to generate description for SignExternalSharingPolicyChangedType: \(error)" } } } - - public class ShowcaseRemoveMemberTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShowcaseRemoveMemberType) throws -> JSON { + public class SignExternalSharingPolicyChangedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SignExternalSharingPolicyChangedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ShowcaseRemoveMemberType { + public func deserialize(_ json: JSON) throws -> SignExternalSharingPolicyChangedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return ShowcaseRemoveMemberType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: ShowcaseRemoveMemberType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SignExternalSharingPolicyChangedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SignExternalSharingPolicyChangedType.self, json: json) } } } - /// Renamed showcase. - public class ShowcaseRenamedDetails: CustomStringConvertible, JSONRepresentable { - /// Event unique identifier. - public let eventUuid: String - public init(eventUuid: String) { - stringValidator()(eventUuid) - self.eventUuid = eventUuid - } + /// Ended admin sign-in-as session. + public class SignInAsSessionEndDetails: CustomStringConvertible, JSONRepresentable { func json() throws -> JSON { - try ShowcaseRenamedDetailsSerializer().serialize(self) + try SignInAsSessionEndDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseRenamedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SignInAsSessionEndDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for ShowcaseRenamedDetails: \(error)" + return "Failed to generate description for SignInAsSessionEndDetails: \(error)" } } } - - public class ShowcaseRenamedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShowcaseRenamedDetails) throws -> JSON { - let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), - ] + public class SignInAsSessionEndDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SignInAsSessionEndDetails) throws -> JSON { + let output = [String: JSON]() return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ShowcaseRenamedDetails { + public func deserialize(_ json: JSON) throws -> SignInAsSessionEndDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - return ShowcaseRenamedDetails(eventUuid: eventUuid) - default: - throw JSONSerializerError.deserializeError(type: ShowcaseRenamedDetails.self, json: json) + case .dictionary(_): + return SignInAsSessionEndDetails() + default: + throw JSONSerializerError.deserializeError(type: SignInAsSessionEndDetails.self, json: json) } } } - /// The ShowcaseRenamedType struct - public class ShowcaseRenamedType: CustomStringConvertible, JSONRepresentable { + /// The SignInAsSessionEndType struct + public class SignInAsSessionEndType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -58014,82 +70496,69 @@ public class TeamLog { } func json() throws -> JSON { - try ShowcaseRenamedTypeSerializer().serialize(self) + try SignInAsSessionEndTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseRenamedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SignInAsSessionEndTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for ShowcaseRenamedType: \(error)" + return "Failed to generate description for SignInAsSessionEndType: \(error)" } } } - - public class ShowcaseRenamedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShowcaseRenamedType) throws -> JSON { + public class SignInAsSessionEndTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SignInAsSessionEndType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ShowcaseRenamedType { + public func deserialize(_ json: JSON) throws -> SignInAsSessionEndType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return ShowcaseRenamedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: ShowcaseRenamedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SignInAsSessionEndType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SignInAsSessionEndType.self, json: json) } } } - /// Requested access to showcase. - public class ShowcaseRequestAccessDetails: CustomStringConvertible, JSONRepresentable { - /// Event unique identifier. - public let eventUuid: String - public init(eventUuid: String) { - stringValidator()(eventUuid) - self.eventUuid = eventUuid - } + /// Started admin sign-in-as session. + public class SignInAsSessionStartDetails: CustomStringConvertible, JSONRepresentable { func json() throws -> JSON { - try ShowcaseRequestAccessDetailsSerializer().serialize(self) + try SignInAsSessionStartDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseRequestAccessDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SignInAsSessionStartDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for ShowcaseRequestAccessDetails: \(error)" + return "Failed to generate description for SignInAsSessionStartDetails: \(error)" } } } - - public class ShowcaseRequestAccessDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShowcaseRequestAccessDetails) throws -> JSON { - let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), - ] + public class SignInAsSessionStartDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SignInAsSessionStartDetails) throws -> JSON { + let output = [String: JSON]() return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ShowcaseRequestAccessDetails { + public func deserialize(_ json: JSON) throws -> SignInAsSessionStartDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - return ShowcaseRequestAccessDetails(eventUuid: eventUuid) - default: - throw JSONSerializerError.deserializeError(type: ShowcaseRequestAccessDetails.self, json: json) + case .dictionary(_): + return SignInAsSessionStartDetails() + default: + throw JSONSerializerError.deserializeError(type: SignInAsSessionStartDetails.self, json: json) } } } - /// The ShowcaseRequestAccessType struct - public class ShowcaseRequestAccessType: CustomStringConvertible, JSONRepresentable { + /// The SignInAsSessionStartType struct + public class SignInAsSessionStartType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -58098,88 +70567,84 @@ public class TeamLog { } func json() throws -> JSON { - try ShowcaseRequestAccessTypeSerializer().serialize(self) + try SignInAsSessionStartTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseRequestAccessTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SignInAsSessionStartTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for ShowcaseRequestAccessType: \(error)" + return "Failed to generate description for SignInAsSessionStartType: \(error)" } } } - - public class ShowcaseRequestAccessTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShowcaseRequestAccessType) throws -> JSON { + public class SignInAsSessionStartTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SignInAsSessionStartType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ShowcaseRequestAccessType { + public func deserialize(_ json: JSON) throws -> SignInAsSessionStartType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return ShowcaseRequestAccessType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: ShowcaseRequestAccessType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SignInAsSessionStartType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SignInAsSessionStartType.self, json: json) } } } - /// Resolved showcase comment. - public class ShowcaseResolveCommentDetails: CustomStringConvertible, JSONRepresentable { - /// Event unique identifier. - public let eventUuid: String - /// Comment text. - public let commentText: String? - public init(eventUuid: String, commentText: String? = nil) { - stringValidator()(eventUuid) - self.eventUuid = eventUuid - nullableValidator(stringValidator())(commentText) - self.commentText = commentText + /// Canceled signature request. + public class SignSignatureRequestCanceledDetails: CustomStringConvertible, JSONRepresentable { + /// The recipient of the signature request. + public let recipient: String + /// The name of the related file. + public let fileName: String + public init(recipient: String, fileName: String) { + stringValidator()(recipient) + self.recipient = recipient + stringValidator()(fileName) + self.fileName = fileName } func json() throws -> JSON { - try ShowcaseResolveCommentDetailsSerializer().serialize(self) + try SignSignatureRequestCanceledDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseResolveCommentDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SignSignatureRequestCanceledDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for ShowcaseResolveCommentDetails: \(error)" + return "Failed to generate description for SignSignatureRequestCanceledDetails: \(error)" } } } - - public class ShowcaseResolveCommentDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShowcaseResolveCommentDetails) throws -> JSON { + public class SignSignatureRequestCanceledDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SignSignatureRequestCanceledDetails) throws -> JSON { let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), - "comment_text": try NullableSerializer(Serialization._StringSerializer).serialize(value.commentText), + "recipient": try Serialization._StringSerializer.serialize(value.recipient), + "file_name": try Serialization._StringSerializer.serialize(value.fileName), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ShowcaseResolveCommentDetails { + public func deserialize(_ json: JSON) throws -> SignSignatureRequestCanceledDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - let commentText = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["comment_text"] ?? .null) - return ShowcaseResolveCommentDetails(eventUuid: eventUuid, commentText: commentText) - default: - throw JSONSerializerError.deserializeError(type: ShowcaseResolveCommentDetails.self, json: json) + case .dictionary(let dict): + let recipient = try Serialization._StringSerializer.deserialize(dict["recipient"] ?? .null) + let fileName = try Serialization._StringSerializer.deserialize(dict["file_name"] ?? .null) + return SignSignatureRequestCanceledDetails(recipient: recipient, fileName: fileName) + default: + throw JSONSerializerError.deserializeError(type: SignSignatureRequestCanceledDetails.self, json: json) } } } - /// The ShowcaseResolveCommentType struct - public class ShowcaseResolveCommentType: CustomStringConvertible, JSONRepresentable { + /// The SignSignatureRequestCanceledType struct + public class SignSignatureRequestCanceledType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -58188,82 +70653,84 @@ public class TeamLog { } func json() throws -> JSON { - try ShowcaseResolveCommentTypeSerializer().serialize(self) + try SignSignatureRequestCanceledTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseResolveCommentTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SignSignatureRequestCanceledTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for ShowcaseResolveCommentType: \(error)" + return "Failed to generate description for SignSignatureRequestCanceledType: \(error)" } } } - - public class ShowcaseResolveCommentTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShowcaseResolveCommentType) throws -> JSON { + public class SignSignatureRequestCanceledTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SignSignatureRequestCanceledType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ShowcaseResolveCommentType { + public func deserialize(_ json: JSON) throws -> SignSignatureRequestCanceledType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return ShowcaseResolveCommentType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: ShowcaseResolveCommentType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SignSignatureRequestCanceledType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SignSignatureRequestCanceledType.self, json: json) } } } - /// Unarchived showcase. - public class ShowcaseRestoredDetails: CustomStringConvertible, JSONRepresentable { - /// Event unique identifier. - public let eventUuid: String - public init(eventUuid: String) { - stringValidator()(eventUuid) - self.eventUuid = eventUuid + /// Completed signature request. + public class SignSignatureRequestCompletedDetails: CustomStringConvertible, JSONRepresentable { + /// The recipient of the signature request. + public let recipient: String + /// The name of the related file. + public let fileName: String + public init(recipient: String, fileName: String) { + stringValidator()(recipient) + self.recipient = recipient + stringValidator()(fileName) + self.fileName = fileName } func json() throws -> JSON { - try ShowcaseRestoredDetailsSerializer().serialize(self) + try SignSignatureRequestCompletedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseRestoredDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SignSignatureRequestCompletedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for ShowcaseRestoredDetails: \(error)" + return "Failed to generate description for SignSignatureRequestCompletedDetails: \(error)" } } } - - public class ShowcaseRestoredDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShowcaseRestoredDetails) throws -> JSON { + public class SignSignatureRequestCompletedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SignSignatureRequestCompletedDetails) throws -> JSON { let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + "recipient": try Serialization._StringSerializer.serialize(value.recipient), + "file_name": try Serialization._StringSerializer.serialize(value.fileName), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ShowcaseRestoredDetails { + public func deserialize(_ json: JSON) throws -> SignSignatureRequestCompletedDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - return ShowcaseRestoredDetails(eventUuid: eventUuid) - default: - throw JSONSerializerError.deserializeError(type: ShowcaseRestoredDetails.self, json: json) + case .dictionary(let dict): + let recipient = try Serialization._StringSerializer.deserialize(dict["recipient"] ?? .null) + let fileName = try Serialization._StringSerializer.deserialize(dict["file_name"] ?? .null) + return SignSignatureRequestCompletedDetails(recipient: recipient, fileName: fileName) + default: + throw JSONSerializerError.deserializeError(type: SignSignatureRequestCompletedDetails.self, json: json) } } } - /// The ShowcaseRestoredType struct - public class ShowcaseRestoredType: CustomStringConvertible, JSONRepresentable { + /// The SignSignatureRequestCompletedType struct + public class SignSignatureRequestCompletedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -58272,82 +70739,84 @@ public class TeamLog { } func json() throws -> JSON { - try ShowcaseRestoredTypeSerializer().serialize(self) + try SignSignatureRequestCompletedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseRestoredTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SignSignatureRequestCompletedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for ShowcaseRestoredType: \(error)" + return "Failed to generate description for SignSignatureRequestCompletedType: \(error)" } } } - - public class ShowcaseRestoredTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShowcaseRestoredType) throws -> JSON { + public class SignSignatureRequestCompletedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SignSignatureRequestCompletedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ShowcaseRestoredType { + public func deserialize(_ json: JSON) throws -> SignSignatureRequestCompletedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return ShowcaseRestoredType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: ShowcaseRestoredType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SignSignatureRequestCompletedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SignSignatureRequestCompletedType.self, json: json) } } } - /// Deleted showcase (old version). - public class ShowcaseTrashedDeprecatedDetails: CustomStringConvertible, JSONRepresentable { - /// Event unique identifier. - public let eventUuid: String - public init(eventUuid: String) { - stringValidator()(eventUuid) - self.eventUuid = eventUuid + /// Declined signature request. + public class SignSignatureRequestDeclinedDetails: CustomStringConvertible, JSONRepresentable { + /// The recipient of the signature request. + public let recipient: String + /// The name of the related file. + public let fileName: String + public init(recipient: String, fileName: String) { + stringValidator()(recipient) + self.recipient = recipient + stringValidator()(fileName) + self.fileName = fileName } func json() throws -> JSON { - try ShowcaseTrashedDeprecatedDetailsSerializer().serialize(self) + try SignSignatureRequestDeclinedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseTrashedDeprecatedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SignSignatureRequestDeclinedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for ShowcaseTrashedDeprecatedDetails: \(error)" + return "Failed to generate description for SignSignatureRequestDeclinedDetails: \(error)" } } } - - public class ShowcaseTrashedDeprecatedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShowcaseTrashedDeprecatedDetails) throws -> JSON { + public class SignSignatureRequestDeclinedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SignSignatureRequestDeclinedDetails) throws -> JSON { let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + "recipient": try Serialization._StringSerializer.serialize(value.recipient), + "file_name": try Serialization._StringSerializer.serialize(value.fileName), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ShowcaseTrashedDeprecatedDetails { + public func deserialize(_ json: JSON) throws -> SignSignatureRequestDeclinedDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - return ShowcaseTrashedDeprecatedDetails(eventUuid: eventUuid) - default: - throw JSONSerializerError.deserializeError(type: ShowcaseTrashedDeprecatedDetails.self, json: json) + case .dictionary(let dict): + let recipient = try Serialization._StringSerializer.deserialize(dict["recipient"] ?? .null) + let fileName = try Serialization._StringSerializer.deserialize(dict["file_name"] ?? .null) + return SignSignatureRequestDeclinedDetails(recipient: recipient, fileName: fileName) + default: + throw JSONSerializerError.deserializeError(type: SignSignatureRequestDeclinedDetails.self, json: json) } } } - /// The ShowcaseTrashedDeprecatedType struct - public class ShowcaseTrashedDeprecatedType: CustomStringConvertible, JSONRepresentable { + /// The SignSignatureRequestDeclinedType struct + public class SignSignatureRequestDeclinedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -58356,82 +70825,84 @@ public class TeamLog { } func json() throws -> JSON { - try ShowcaseTrashedDeprecatedTypeSerializer().serialize(self) + try SignSignatureRequestDeclinedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseTrashedDeprecatedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SignSignatureRequestDeclinedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for ShowcaseTrashedDeprecatedType: \(error)" + return "Failed to generate description for SignSignatureRequestDeclinedType: \(error)" } } } - - public class ShowcaseTrashedDeprecatedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShowcaseTrashedDeprecatedType) throws -> JSON { + public class SignSignatureRequestDeclinedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SignSignatureRequestDeclinedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ShowcaseTrashedDeprecatedType { + public func deserialize(_ json: JSON) throws -> SignSignatureRequestDeclinedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return ShowcaseTrashedDeprecatedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: ShowcaseTrashedDeprecatedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SignSignatureRequestDeclinedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SignSignatureRequestDeclinedType.self, json: json) } } } - /// Deleted showcase. - public class ShowcaseTrashedDetails: CustomStringConvertible, JSONRepresentable { - /// Event unique identifier. - public let eventUuid: String - public init(eventUuid: String) { - stringValidator()(eventUuid) - self.eventUuid = eventUuid + /// Opened signature request. + public class SignSignatureRequestOpenedDetails: CustomStringConvertible, JSONRepresentable { + /// The recipient of the signature request. + public let recipient: String + /// The name of the related file. + public let fileName: String + public init(recipient: String, fileName: String) { + stringValidator()(recipient) + self.recipient = recipient + stringValidator()(fileName) + self.fileName = fileName } func json() throws -> JSON { - try ShowcaseTrashedDetailsSerializer().serialize(self) + try SignSignatureRequestOpenedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseTrashedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SignSignatureRequestOpenedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for ShowcaseTrashedDetails: \(error)" + return "Failed to generate description for SignSignatureRequestOpenedDetails: \(error)" } } } - - public class ShowcaseTrashedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShowcaseTrashedDetails) throws -> JSON { + public class SignSignatureRequestOpenedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SignSignatureRequestOpenedDetails) throws -> JSON { let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + "recipient": try Serialization._StringSerializer.serialize(value.recipient), + "file_name": try Serialization._StringSerializer.serialize(value.fileName), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ShowcaseTrashedDetails { + public func deserialize(_ json: JSON) throws -> SignSignatureRequestOpenedDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - return ShowcaseTrashedDetails(eventUuid: eventUuid) - default: - throw JSONSerializerError.deserializeError(type: ShowcaseTrashedDetails.self, json: json) + case .dictionary(let dict): + let recipient = try Serialization._StringSerializer.deserialize(dict["recipient"] ?? .null) + let fileName = try Serialization._StringSerializer.deserialize(dict["file_name"] ?? .null) + return SignSignatureRequestOpenedDetails(recipient: recipient, fileName: fileName) + default: + throw JSONSerializerError.deserializeError(type: SignSignatureRequestOpenedDetails.self, json: json) } } } - /// The ShowcaseTrashedType struct - public class ShowcaseTrashedType: CustomStringConvertible, JSONRepresentable { + /// The SignSignatureRequestOpenedType struct + public class SignSignatureRequestOpenedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -58440,88 +70911,84 @@ public class TeamLog { } func json() throws -> JSON { - try ShowcaseTrashedTypeSerializer().serialize(self) + try SignSignatureRequestOpenedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseTrashedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SignSignatureRequestOpenedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for ShowcaseTrashedType: \(error)" + return "Failed to generate description for SignSignatureRequestOpenedType: \(error)" } } } - - public class ShowcaseTrashedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShowcaseTrashedType) throws -> JSON { + public class SignSignatureRequestOpenedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SignSignatureRequestOpenedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ShowcaseTrashedType { + public func deserialize(_ json: JSON) throws -> SignSignatureRequestOpenedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return ShowcaseTrashedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: ShowcaseTrashedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SignSignatureRequestOpenedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SignSignatureRequestOpenedType.self, json: json) } } } - /// Unresolved showcase comment. - public class ShowcaseUnresolveCommentDetails: CustomStringConvertible, JSONRepresentable { - /// Event unique identifier. - public let eventUuid: String - /// Comment text. - public let commentText: String? - public init(eventUuid: String, commentText: String? = nil) { - stringValidator()(eventUuid) - self.eventUuid = eventUuid - nullableValidator(stringValidator())(commentText) - self.commentText = commentText + /// Sent signature request reminder. + public class SignSignatureRequestReminderSentDetails: CustomStringConvertible, JSONRepresentable { + /// The recipient of the signature request. + public let recipient: String + /// The name of the related file. + public let fileName: String + public init(recipient: String, fileName: String) { + stringValidator()(recipient) + self.recipient = recipient + stringValidator()(fileName) + self.fileName = fileName } func json() throws -> JSON { - try ShowcaseUnresolveCommentDetailsSerializer().serialize(self) + try SignSignatureRequestReminderSentDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseUnresolveCommentDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SignSignatureRequestReminderSentDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for ShowcaseUnresolveCommentDetails: \(error)" + return "Failed to generate description for SignSignatureRequestReminderSentDetails: \(error)" } } } - - public class ShowcaseUnresolveCommentDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShowcaseUnresolveCommentDetails) throws -> JSON { + public class SignSignatureRequestReminderSentDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SignSignatureRequestReminderSentDetails) throws -> JSON { let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), - "comment_text": try NullableSerializer(Serialization._StringSerializer).serialize(value.commentText), + "recipient": try Serialization._StringSerializer.serialize(value.recipient), + "file_name": try Serialization._StringSerializer.serialize(value.fileName), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ShowcaseUnresolveCommentDetails { + public func deserialize(_ json: JSON) throws -> SignSignatureRequestReminderSentDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - let commentText = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["comment_text"] ?? .null) - return ShowcaseUnresolveCommentDetails(eventUuid: eventUuid, commentText: commentText) - default: - throw JSONSerializerError.deserializeError(type: ShowcaseUnresolveCommentDetails.self, json: json) + case .dictionary(let dict): + let recipient = try Serialization._StringSerializer.deserialize(dict["recipient"] ?? .null) + let fileName = try Serialization._StringSerializer.deserialize(dict["file_name"] ?? .null) + return SignSignatureRequestReminderSentDetails(recipient: recipient, fileName: fileName) + default: + throw JSONSerializerError.deserializeError(type: SignSignatureRequestReminderSentDetails.self, json: json) } } } - /// The ShowcaseUnresolveCommentType struct - public class ShowcaseUnresolveCommentType: CustomStringConvertible, JSONRepresentable { + /// The SignSignatureRequestReminderSentType struct + public class SignSignatureRequestReminderSentType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -58530,82 +70997,84 @@ public class TeamLog { } func json() throws -> JSON { - try ShowcaseUnresolveCommentTypeSerializer().serialize(self) + try SignSignatureRequestReminderSentTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseUnresolveCommentTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SignSignatureRequestReminderSentTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for ShowcaseUnresolveCommentType: \(error)" + return "Failed to generate description for SignSignatureRequestReminderSentType: \(error)" } } } - - public class ShowcaseUnresolveCommentTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShowcaseUnresolveCommentType) throws -> JSON { + public class SignSignatureRequestReminderSentTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SignSignatureRequestReminderSentType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ShowcaseUnresolveCommentType { + public func deserialize(_ json: JSON) throws -> SignSignatureRequestReminderSentType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return ShowcaseUnresolveCommentType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: ShowcaseUnresolveCommentType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SignSignatureRequestReminderSentType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SignSignatureRequestReminderSentType.self, json: json) } } } - /// Restored showcase (old version). - public class ShowcaseUntrashedDeprecatedDetails: CustomStringConvertible, JSONRepresentable { - /// Event unique identifier. - public let eventUuid: String - public init(eventUuid: String) { - stringValidator()(eventUuid) - self.eventUuid = eventUuid + /// Sent signature request. + public class SignSignatureRequestSentDetails: CustomStringConvertible, JSONRepresentable { + /// The recipient of the signature request. + public let recipient: String + /// The name of the related file. + public let fileName: String + public init(recipient: String, fileName: String) { + stringValidator()(recipient) + self.recipient = recipient + stringValidator()(fileName) + self.fileName = fileName } func json() throws -> JSON { - try ShowcaseUntrashedDeprecatedDetailsSerializer().serialize(self) + try SignSignatureRequestSentDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseUntrashedDeprecatedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SignSignatureRequestSentDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for ShowcaseUntrashedDeprecatedDetails: \(error)" + return "Failed to generate description for SignSignatureRequestSentDetails: \(error)" } } } - - public class ShowcaseUntrashedDeprecatedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShowcaseUntrashedDeprecatedDetails) throws -> JSON { + public class SignSignatureRequestSentDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SignSignatureRequestSentDetails) throws -> JSON { let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + "recipient": try Serialization._StringSerializer.serialize(value.recipient), + "file_name": try Serialization._StringSerializer.serialize(value.fileName), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ShowcaseUntrashedDeprecatedDetails { + public func deserialize(_ json: JSON) throws -> SignSignatureRequestSentDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - return ShowcaseUntrashedDeprecatedDetails(eventUuid: eventUuid) - default: - throw JSONSerializerError.deserializeError(type: ShowcaseUntrashedDeprecatedDetails.self, json: json) + case .dictionary(let dict): + let recipient = try Serialization._StringSerializer.deserialize(dict["recipient"] ?? .null) + let fileName = try Serialization._StringSerializer.deserialize(dict["file_name"] ?? .null) + return SignSignatureRequestSentDetails(recipient: recipient, fileName: fileName) + default: + throw JSONSerializerError.deserializeError(type: SignSignatureRequestSentDetails.self, json: json) } } } - /// The ShowcaseUntrashedDeprecatedType struct - public class ShowcaseUntrashedDeprecatedType: CustomStringConvertible, JSONRepresentable { + /// The SignSignatureRequestSentType struct + public class SignSignatureRequestSentType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -58614,82 +71083,84 @@ public class TeamLog { } func json() throws -> JSON { - try ShowcaseUntrashedDeprecatedTypeSerializer().serialize(self) + try SignSignatureRequestSentTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseUntrashedDeprecatedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SignSignatureRequestSentTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for ShowcaseUntrashedDeprecatedType: \(error)" + return "Failed to generate description for SignSignatureRequestSentType: \(error)" } } } - - public class ShowcaseUntrashedDeprecatedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShowcaseUntrashedDeprecatedType) throws -> JSON { + public class SignSignatureRequestSentTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SignSignatureRequestSentType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ShowcaseUntrashedDeprecatedType { + public func deserialize(_ json: JSON) throws -> SignSignatureRequestSentType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return ShowcaseUntrashedDeprecatedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: ShowcaseUntrashedDeprecatedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SignSignatureRequestSentType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SignSignatureRequestSentType.self, json: json) } } } - /// Restored showcase. - public class ShowcaseUntrashedDetails: CustomStringConvertible, JSONRepresentable { - /// Event unique identifier. - public let eventUuid: String - public init(eventUuid: String) { - stringValidator()(eventUuid) - self.eventUuid = eventUuid + /// Created template. + public class SignTemplateCreatedDetails: CustomStringConvertible, JSONRepresentable { + /// The access level of the template. + public let accessLevel: String + /// The name of the related file. + public let fileName: String + public init(accessLevel: String, fileName: String) { + stringValidator()(accessLevel) + self.accessLevel = accessLevel + stringValidator()(fileName) + self.fileName = fileName } func json() throws -> JSON { - try ShowcaseUntrashedDetailsSerializer().serialize(self) + try SignTemplateCreatedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseUntrashedDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SignTemplateCreatedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for ShowcaseUntrashedDetails: \(error)" + return "Failed to generate description for SignTemplateCreatedDetails: \(error)" } } } - - public class ShowcaseUntrashedDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShowcaseUntrashedDetails) throws -> JSON { + public class SignTemplateCreatedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SignTemplateCreatedDetails) throws -> JSON { let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + "access_level": try Serialization._StringSerializer.serialize(value.accessLevel), + "file_name": try Serialization._StringSerializer.serialize(value.fileName), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ShowcaseUntrashedDetails { + public func deserialize(_ json: JSON) throws -> SignTemplateCreatedDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - return ShowcaseUntrashedDetails(eventUuid: eventUuid) - default: - throw JSONSerializerError.deserializeError(type: ShowcaseUntrashedDetails.self, json: json) + case .dictionary(let dict): + let accessLevel = try Serialization._StringSerializer.deserialize(dict["access_level"] ?? .null) + let fileName = try Serialization._StringSerializer.deserialize(dict["file_name"] ?? .null) + return SignTemplateCreatedDetails(accessLevel: accessLevel, fileName: fileName) + default: + throw JSONSerializerError.deserializeError(type: SignTemplateCreatedDetails.self, json: json) } } } - /// The ShowcaseUntrashedType struct - public class ShowcaseUntrashedType: CustomStringConvertible, JSONRepresentable { + /// The SignTemplateCreatedType struct + public class SignTemplateCreatedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -58698,82 +71169,82 @@ public class TeamLog { } func json() throws -> JSON { - try ShowcaseUntrashedTypeSerializer().serialize(self) + try SignTemplateCreatedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseUntrashedTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SignTemplateCreatedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for ShowcaseUntrashedType: \(error)" + return "Failed to generate description for SignTemplateCreatedType: \(error)" } } } - - public class ShowcaseUntrashedTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShowcaseUntrashedType) throws -> JSON { + public class SignTemplateCreatedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SignTemplateCreatedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ShowcaseUntrashedType { + public func deserialize(_ json: JSON) throws -> SignTemplateCreatedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return ShowcaseUntrashedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: ShowcaseUntrashedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SignTemplateCreatedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SignTemplateCreatedType.self, json: json) } } } - /// Viewed showcase. - public class ShowcaseViewDetails: CustomStringConvertible, JSONRepresentable { - /// Event unique identifier. - public let eventUuid: String - public init(eventUuid: String) { - stringValidator()(eventUuid) - self.eventUuid = eventUuid + /// Changed template creation permission. + public class SignTemplateCreationPermissionChangedDetails: CustomStringConvertible, JSONRepresentable { + /// New template creation permission policy. + public let newValue: TeamLog.SignTemplateCreationPermissionPolicy + /// Previous template creation permission policy. + public let previousValue: TeamLog.SignTemplateCreationPermissionPolicy + public init(newValue: TeamLog.SignTemplateCreationPermissionPolicy, previousValue: TeamLog.SignTemplateCreationPermissionPolicy) { + self.newValue = newValue + self.previousValue = previousValue } func json() throws -> JSON { - try ShowcaseViewDetailsSerializer().serialize(self) + try SignTemplateCreationPermissionChangedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseViewDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SignTemplateCreationPermissionChangedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for ShowcaseViewDetails: \(error)" + return "Failed to generate description for SignTemplateCreationPermissionChangedDetails: \(error)" } } } - - public class ShowcaseViewDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShowcaseViewDetails) throws -> JSON { + public class SignTemplateCreationPermissionChangedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SignTemplateCreationPermissionChangedDetails) throws -> JSON { let output = [ - "event_uuid": try Serialization._StringSerializer.serialize(value.eventUuid), + "new_value": try TeamLog.SignTemplateCreationPermissionPolicySerializer().serialize(value.newValue), + "previous_value": try TeamLog.SignTemplateCreationPermissionPolicySerializer().serialize(value.previousValue), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ShowcaseViewDetails { + public func deserialize(_ json: JSON) throws -> SignTemplateCreationPermissionChangedDetails { switch json { - case .dictionary(let dict): - let eventUuid = try Serialization._StringSerializer.deserialize(dict["event_uuid"] ?? .null) - return ShowcaseViewDetails(eventUuid: eventUuid) - default: - throw JSONSerializerError.deserializeError(type: ShowcaseViewDetails.self, json: json) + case .dictionary(let dict): + let newValue = try TeamLog.SignTemplateCreationPermissionPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try TeamLog.SignTemplateCreationPermissionPolicySerializer().deserialize(dict["previous_value"] ?? .null) + return SignTemplateCreationPermissionChangedDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: SignTemplateCreationPermissionChangedDetails.self, json: json) } } } - /// The ShowcaseViewType struct - public class ShowcaseViewType: CustomStringConvertible, JSONRepresentable { + /// The SignTemplateCreationPermissionChangedType struct + public class SignTemplateCreationPermissionChangedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -58782,146 +71253,143 @@ public class TeamLog { } func json() throws -> JSON { - try ShowcaseViewTypeSerializer().serialize(self) + try SignTemplateCreationPermissionChangedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try ShowcaseViewTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SignTemplateCreationPermissionChangedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for ShowcaseViewType: \(error)" + return "Failed to generate description for SignTemplateCreationPermissionChangedType: \(error)" } } } - - public class ShowcaseViewTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: ShowcaseViewType) throws -> JSON { + public class SignTemplateCreationPermissionChangedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SignTemplateCreationPermissionChangedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> ShowcaseViewType { + public func deserialize(_ json: JSON) throws -> SignTemplateCreationPermissionChangedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return ShowcaseViewType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: ShowcaseViewType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SignTemplateCreationPermissionChangedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SignTemplateCreationPermissionChangedType.self, json: json) } } } - /// Ended admin sign-in-as session. - public class SignInAsSessionEndDetails: CustomStringConvertible, JSONRepresentable { + /// Policy for controlling if team members can create templates + public enum SignTemplateCreationPermissionPolicy: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case disabled + /// An unspecified error. + case enabled + /// An unspecified error. + case other + func json() throws -> JSON { - try SignInAsSessionEndDetailsSerializer().serialize(self) + try SignTemplateCreationPermissionPolicySerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SignInAsSessionEndDetailsSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SignTemplateCreationPermissionPolicySerializer().serialize(self)))" } catch { - return "Failed to generate description for SignInAsSessionEndDetails: \(error)" + return "Failed to generate description for SignTemplateCreationPermissionPolicy: \(error)" } } } - - public class SignInAsSessionEndDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SignInAsSessionEndDetails) throws -> JSON { - let output = [String: JSON]() - return .dictionary(output) - } - - public func deserialize(_ json: JSON) throws -> SignInAsSessionEndDetails { - switch json { - case .dictionary: - return SignInAsSessionEndDetails() - default: - throw JSONSerializerError.deserializeError(type: SignInAsSessionEndDetails.self, json: json) + public class SignTemplateCreationPermissionPolicySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SignTemplateCreationPermissionPolicy) throws -> JSON { + switch value { + case .disabled: + var d = [String: JSON]() + d[".tag"] = .str("disabled") + return .dictionary(d) + case .enabled: + var d = [String: JSON]() + d[".tag"] = .str("enabled") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> SignTemplateCreationPermissionPolicy { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "disabled": + return SignTemplateCreationPermissionPolicy.disabled + case "enabled": + return SignTemplateCreationPermissionPolicy.enabled + case "other": + return SignTemplateCreationPermissionPolicy.other + default: + return SignTemplateCreationPermissionPolicy.other + } + default: + throw JSONSerializerError.deserializeError(type: SignTemplateCreationPermissionPolicy.self, json: json) } } } - /// The SignInAsSessionEndType struct - public class SignInAsSessionEndType: CustomStringConvertible, JSONRepresentable { - /// (no description) - public let description_: String - public init(description_: String) { - stringValidator()(description_) - self.description_ = description_ + /// Shared template. + public class SignTemplateSharedDetails: CustomStringConvertible, JSONRepresentable { + /// The access level of the template. + public let accessLevel: String + /// The name of the related file. + public let fileName: String + public init(accessLevel: String, fileName: String) { + stringValidator()(accessLevel) + self.accessLevel = accessLevel + stringValidator()(fileName) + self.fileName = fileName } func json() throws -> JSON { - try SignInAsSessionEndTypeSerializer().serialize(self) + try SignTemplateSharedDetailsSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SignInAsSessionEndTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SignTemplateSharedDetailsSerializer().serialize(self)))" } catch { - return "Failed to generate description for SignInAsSessionEndType: \(error)" + return "Failed to generate description for SignTemplateSharedDetails: \(error)" } } } - - public class SignInAsSessionEndTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SignInAsSessionEndType) throws -> JSON { + public class SignTemplateSharedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SignTemplateSharedDetails) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "access_level": try Serialization._StringSerializer.serialize(value.accessLevel), + "file_name": try Serialization._StringSerializer.serialize(value.fileName), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SignInAsSessionEndType { - switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SignInAsSessionEndType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SignInAsSessionEndType.self, json: json) - } - } - } - - /// Started admin sign-in-as session. - public class SignInAsSessionStartDetails: CustomStringConvertible, JSONRepresentable { - func json() throws -> JSON { - try SignInAsSessionStartDetailsSerializer().serialize(self) - } - - public var description: String { - do { - return "\(SerializeUtil.prepareJSONForSerialization(try SignInAsSessionStartDetailsSerializer().serialize(self)))" - } catch { - return "Failed to generate description for SignInAsSessionStartDetails: \(error)" - } - } - } - - public class SignInAsSessionStartDetailsSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SignInAsSessionStartDetails) throws -> JSON { - let output = [String: JSON]() - return .dictionary(output) - } - - public func deserialize(_ json: JSON) throws -> SignInAsSessionStartDetails { + public func deserialize(_ json: JSON) throws -> SignTemplateSharedDetails { switch json { - case .dictionary: - return SignInAsSessionStartDetails() - default: - throw JSONSerializerError.deserializeError(type: SignInAsSessionStartDetails.self, json: json) + case .dictionary(let dict): + let accessLevel = try Serialization._StringSerializer.deserialize(dict["access_level"] ?? .null) + let fileName = try Serialization._StringSerializer.deserialize(dict["file_name"] ?? .null) + return SignTemplateSharedDetails(accessLevel: accessLevel, fileName: fileName) + default: + throw JSONSerializerError.deserializeError(type: SignTemplateSharedDetails.self, json: json) } } } - /// The SignInAsSessionStartType struct - public class SignInAsSessionStartType: CustomStringConvertible, JSONRepresentable { + /// The SignTemplateSharedType struct + public class SignTemplateSharedType: CustomStringConvertible, JSONRepresentable { /// (no description) public let description_: String public init(description_: String) { @@ -58930,34 +71398,32 @@ public class TeamLog { } func json() throws -> JSON { - try SignInAsSessionStartTypeSerializer().serialize(self) + try SignTemplateSharedTypeSerializer().serialize(self) } public var description: String { do { - return "\(SerializeUtil.prepareJSONForSerialization(try SignInAsSessionStartTypeSerializer().serialize(self)))" + return "\(SerializeUtil.prepareJSONForSerialization(try SignTemplateSharedTypeSerializer().serialize(self)))" } catch { - return "Failed to generate description for SignInAsSessionStartType: \(error)" + return "Failed to generate description for SignTemplateSharedType: \(error)" } } } - - public class SignInAsSessionStartTypeSerializer: JSONSerializer { - public init() {} - public func serialize(_ value: SignInAsSessionStartType) throws -> JSON { + public class SignTemplateSharedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: SignTemplateSharedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - - public func deserialize(_ json: JSON) throws -> SignInAsSessionStartType { + public func deserialize(_ json: JSON) throws -> SignTemplateSharedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SignInAsSessionStartType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SignInAsSessionStartType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SignTemplateSharedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SignTemplateSharedType.self, json: json) } } } @@ -58985,25 +71451,23 @@ public class TeamLog { } } } - public class SmartSyncChangePolicyDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: SmartSyncChangePolicyDetails) throws -> JSON { let output = [ - "new_value": try NullableSerializer(TeamPolicies.SmartSyncPolicySerializer()).serialize(value.newValue), - "previous_value": try NullableSerializer(TeamPolicies.SmartSyncPolicySerializer()).serialize(value.previousValue), + "new_value": try NullableSerializer(TeamPolicies.SmartSyncPolicySerializer()).serialize(value.newValue), + "previous_value": try NullableSerializer(TeamPolicies.SmartSyncPolicySerializer()).serialize(value.previousValue), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> SmartSyncChangePolicyDetails { switch json { - case .dictionary(let dict): - let newValue = try NullableSerializer(TeamPolicies.SmartSyncPolicySerializer()).deserialize(dict["new_value"] ?? .null) - let previousValue = try NullableSerializer(TeamPolicies.SmartSyncPolicySerializer()).deserialize(dict["previous_value"] ?? .null) - return SmartSyncChangePolicyDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: SmartSyncChangePolicyDetails.self, json: json) + case .dictionary(let dict): + let newValue = try NullableSerializer(TeamPolicies.SmartSyncPolicySerializer()).deserialize(dict["new_value"] ?? .null) + let previousValue = try NullableSerializer(TeamPolicies.SmartSyncPolicySerializer()).deserialize(dict["previous_value"] ?? .null) + return SmartSyncChangePolicyDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: SmartSyncChangePolicyDetails.self, json: json) } } } @@ -59029,29 +71493,28 @@ public class TeamLog { } } } - public class SmartSyncChangePolicyTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: SmartSyncChangePolicyType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> SmartSyncChangePolicyType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SmartSyncChangePolicyType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SmartSyncChangePolicyType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SmartSyncChangePolicyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SmartSyncChangePolicyType.self, json: json) } } } /// Created Smart Sync non-admin devices report. public class SmartSyncCreateAdminPrivilegeReportDetails: CustomStringConvertible, JSONRepresentable { + func json() throws -> JSON { try SmartSyncCreateAdminPrivilegeReportDetailsSerializer().serialize(self) } @@ -59064,20 +71527,18 @@ public class TeamLog { } } } - public class SmartSyncCreateAdminPrivilegeReportDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: SmartSyncCreateAdminPrivilegeReportDetails) throws -> JSON { let output = [String: JSON]() return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> SmartSyncCreateAdminPrivilegeReportDetails { switch json { - case .dictionary: - return SmartSyncCreateAdminPrivilegeReportDetails() - default: - throw JSONSerializerError.deserializeError(type: SmartSyncCreateAdminPrivilegeReportDetails.self, json: json) + case .dictionary(_): + return SmartSyncCreateAdminPrivilegeReportDetails() + default: + throw JSONSerializerError.deserializeError(type: SmartSyncCreateAdminPrivilegeReportDetails.self, json: json) } } } @@ -59103,23 +71564,21 @@ public class TeamLog { } } } - public class SmartSyncCreateAdminPrivilegeReportTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: SmartSyncCreateAdminPrivilegeReportType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> SmartSyncCreateAdminPrivilegeReportType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SmartSyncCreateAdminPrivilegeReportType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SmartSyncCreateAdminPrivilegeReportType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SmartSyncCreateAdminPrivilegeReportType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SmartSyncCreateAdminPrivilegeReportType.self, json: json) } } } @@ -59147,25 +71606,23 @@ public class TeamLog { } } } - public class SmartSyncNotOptOutDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: SmartSyncNotOptOutDetails) throws -> JSON { let output = [ - "previous_value": try TeamLog.SmartSyncOptOutPolicySerializer().serialize(value.previousValue), - "new_value": try TeamLog.SmartSyncOptOutPolicySerializer().serialize(value.newValue), + "previous_value": try TeamLog.SmartSyncOptOutPolicySerializer().serialize(value.previousValue), + "new_value": try TeamLog.SmartSyncOptOutPolicySerializer().serialize(value.newValue), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> SmartSyncNotOptOutDetails { switch json { - case .dictionary(let dict): - let previousValue = try TeamLog.SmartSyncOptOutPolicySerializer().deserialize(dict["previous_value"] ?? .null) - let newValue = try TeamLog.SmartSyncOptOutPolicySerializer().deserialize(dict["new_value"] ?? .null) - return SmartSyncNotOptOutDetails(previousValue: previousValue, newValue: newValue) - default: - throw JSONSerializerError.deserializeError(type: SmartSyncNotOptOutDetails.self, json: json) + case .dictionary(let dict): + let previousValue = try TeamLog.SmartSyncOptOutPolicySerializer().deserialize(dict["previous_value"] ?? .null) + let newValue = try TeamLog.SmartSyncOptOutPolicySerializer().deserialize(dict["new_value"] ?? .null) + return SmartSyncNotOptOutDetails(previousValue: previousValue, newValue: newValue) + default: + throw JSONSerializerError.deserializeError(type: SmartSyncNotOptOutDetails.self, json: json) } } } @@ -59191,23 +71648,21 @@ public class TeamLog { } } } - public class SmartSyncNotOptOutTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: SmartSyncNotOptOutType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> SmartSyncNotOptOutType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SmartSyncNotOptOutType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SmartSyncNotOptOutType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SmartSyncNotOptOutType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SmartSyncNotOptOutType.self, json: json) } } } @@ -59235,25 +71690,23 @@ public class TeamLog { } } } - public class SmartSyncOptOutDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: SmartSyncOptOutDetails) throws -> JSON { let output = [ - "previous_value": try TeamLog.SmartSyncOptOutPolicySerializer().serialize(value.previousValue), - "new_value": try TeamLog.SmartSyncOptOutPolicySerializer().serialize(value.newValue), + "previous_value": try TeamLog.SmartSyncOptOutPolicySerializer().serialize(value.previousValue), + "new_value": try TeamLog.SmartSyncOptOutPolicySerializer().serialize(value.newValue), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> SmartSyncOptOutDetails { switch json { - case .dictionary(let dict): - let previousValue = try TeamLog.SmartSyncOptOutPolicySerializer().deserialize(dict["previous_value"] ?? .null) - let newValue = try TeamLog.SmartSyncOptOutPolicySerializer().deserialize(dict["new_value"] ?? .null) - return SmartSyncOptOutDetails(previousValue: previousValue, newValue: newValue) - default: - throw JSONSerializerError.deserializeError(type: SmartSyncOptOutDetails.self, json: json) + case .dictionary(let dict): + let previousValue = try TeamLog.SmartSyncOptOutPolicySerializer().deserialize(dict["previous_value"] ?? .null) + let newValue = try TeamLog.SmartSyncOptOutPolicySerializer().deserialize(dict["new_value"] ?? .null) + return SmartSyncOptOutDetails(previousValue: previousValue, newValue: newValue) + default: + throw JSONSerializerError.deserializeError(type: SmartSyncOptOutDetails.self, json: json) } } } @@ -59279,42 +71732,40 @@ public class TeamLog { } } } - public class SmartSyncOptOutPolicySerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: SmartSyncOptOutPolicy) throws -> JSON { switch value { - case .default_: - var d = [String: JSON]() - d[".tag"] = .str("default") - return .dictionary(d) - case .optedOut: - var d = [String: JSON]() - d[".tag"] = .str("opted_out") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) + case .default_: + var d = [String: JSON]() + d[".tag"] = .str("default") + return .dictionary(d) + case .optedOut: + var d = [String: JSON]() + d[".tag"] = .str("opted_out") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) } } - public func deserialize(_ json: JSON) throws -> SmartSyncOptOutPolicy { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "default": - return SmartSyncOptOutPolicy.default_ - case "opted_out": - return SmartSyncOptOutPolicy.optedOut - case "other": - return SmartSyncOptOutPolicy.other + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "default": + return SmartSyncOptOutPolicy.default_ + case "opted_out": + return SmartSyncOptOutPolicy.optedOut + case "other": + return SmartSyncOptOutPolicy.other + default: + return SmartSyncOptOutPolicy.other + } default: - return SmartSyncOptOutPolicy.other - } - default: - throw JSONSerializerError.deserializeError(type: SmartSyncOptOutPolicy.self, json: json) + throw JSONSerializerError.deserializeError(type: SmartSyncOptOutPolicy.self, json: json) } } } @@ -59340,23 +71791,21 @@ public class TeamLog { } } } - public class SmartSyncOptOutTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: SmartSyncOptOutType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> SmartSyncOptOutType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SmartSyncOptOutType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SmartSyncOptOutType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SmartSyncOptOutType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SmartSyncOptOutType.self, json: json) } } } @@ -59384,25 +71833,23 @@ public class TeamLog { } } } - public class SmarterSmartSyncPolicyChangedDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: SmarterSmartSyncPolicyChangedDetails) throws -> JSON { let output = [ - "previous_value": try TeamPolicies.SmarterSmartSyncPolicyStateSerializer().serialize(value.previousValue), - "new_value": try TeamPolicies.SmarterSmartSyncPolicyStateSerializer().serialize(value.newValue), + "previous_value": try TeamPolicies.SmarterSmartSyncPolicyStateSerializer().serialize(value.previousValue), + "new_value": try TeamPolicies.SmarterSmartSyncPolicyStateSerializer().serialize(value.newValue), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> SmarterSmartSyncPolicyChangedDetails { switch json { - case .dictionary(let dict): - let previousValue = try TeamPolicies.SmarterSmartSyncPolicyStateSerializer().deserialize(dict["previous_value"] ?? .null) - let newValue = try TeamPolicies.SmarterSmartSyncPolicyStateSerializer().deserialize(dict["new_value"] ?? .null) - return SmarterSmartSyncPolicyChangedDetails(previousValue: previousValue, newValue: newValue) - default: - throw JSONSerializerError.deserializeError(type: SmarterSmartSyncPolicyChangedDetails.self, json: json) + case .dictionary(let dict): + let previousValue = try TeamPolicies.SmarterSmartSyncPolicyStateSerializer().deserialize(dict["previous_value"] ?? .null) + let newValue = try TeamPolicies.SmarterSmartSyncPolicyStateSerializer().deserialize(dict["new_value"] ?? .null) + return SmarterSmartSyncPolicyChangedDetails(previousValue: previousValue, newValue: newValue) + default: + throw JSONSerializerError.deserializeError(type: SmarterSmartSyncPolicyChangedDetails.self, json: json) } } } @@ -59428,23 +71875,21 @@ public class TeamLog { } } } - public class SmarterSmartSyncPolicyChangedTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: SmarterSmartSyncPolicyChangedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> SmarterSmartSyncPolicyChangedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SmarterSmartSyncPolicyChangedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SmarterSmartSyncPolicyChangedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SmarterSmartSyncPolicyChangedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SmarterSmartSyncPolicyChangedType.self, json: json) } } } @@ -59472,48 +71917,46 @@ public class TeamLog { } } } - public class SpaceCapsTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: SpaceCapsType) throws -> JSON { switch value { - case .hard: - var d = [String: JSON]() - d[".tag"] = .str("hard") - return .dictionary(d) - case .off: - var d = [String: JSON]() - d[".tag"] = .str("off") - return .dictionary(d) - case .soft: - var d = [String: JSON]() - d[".tag"] = .str("soft") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) + case .hard: + var d = [String: JSON]() + d[".tag"] = .str("hard") + return .dictionary(d) + case .off: + var d = [String: JSON]() + d[".tag"] = .str("off") + return .dictionary(d) + case .soft: + var d = [String: JSON]() + d[".tag"] = .str("soft") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) } } - public func deserialize(_ json: JSON) throws -> SpaceCapsType { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "hard": - return SpaceCapsType.hard - case "off": - return SpaceCapsType.off - case "soft": - return SpaceCapsType.soft - case "other": - return SpaceCapsType.other + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "hard": + return SpaceCapsType.hard + case "off": + return SpaceCapsType.off + case "soft": + return SpaceCapsType.soft + case "other": + return SpaceCapsType.other + default: + return SpaceCapsType.other + } default: - return SpaceCapsType.other - } - default: - throw JSONSerializerError.deserializeError(type: SpaceCapsType.self, json: json) + throw JSONSerializerError.deserializeError(type: SpaceCapsType.self, json: json) } } } @@ -59541,48 +71984,46 @@ public class TeamLog { } } } - public class SpaceLimitsStatusSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: SpaceLimitsStatus) throws -> JSON { switch value { - case .nearQuota: - var d = [String: JSON]() - d[".tag"] = .str("near_quota") - return .dictionary(d) - case .overQuota: - var d = [String: JSON]() - d[".tag"] = .str("over_quota") - return .dictionary(d) - case .withinQuota: - var d = [String: JSON]() - d[".tag"] = .str("within_quota") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) + case .nearQuota: + var d = [String: JSON]() + d[".tag"] = .str("near_quota") + return .dictionary(d) + case .overQuota: + var d = [String: JSON]() + d[".tag"] = .str("over_quota") + return .dictionary(d) + case .withinQuota: + var d = [String: JSON]() + d[".tag"] = .str("within_quota") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) } } - public func deserialize(_ json: JSON) throws -> SpaceLimitsStatus { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "near_quota": - return SpaceLimitsStatus.nearQuota - case "over_quota": - return SpaceLimitsStatus.overQuota - case "within_quota": - return SpaceLimitsStatus.withinQuota - case "other": - return SpaceLimitsStatus.other + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "near_quota": + return SpaceLimitsStatus.nearQuota + case "over_quota": + return SpaceLimitsStatus.overQuota + case "within_quota": + return SpaceLimitsStatus.withinQuota + case "other": + return SpaceLimitsStatus.other + default: + return SpaceLimitsStatus.other + } default: - return SpaceLimitsStatus.other - } - default: - throw JSONSerializerError.deserializeError(type: SpaceLimitsStatus.self, json: json) + throw JSONSerializerError.deserializeError(type: SpaceLimitsStatus.self, json: json) } } } @@ -59607,23 +72048,21 @@ public class TeamLog { } } } - public class SsoAddCertDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: SsoAddCertDetails) throws -> JSON { let output = [ - "certificate_details": try TeamLog.CertificateSerializer().serialize(value.certificateDetails), + "certificate_details": try TeamLog.CertificateSerializer().serialize(value.certificateDetails), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> SsoAddCertDetails { switch json { - case .dictionary(let dict): - let certificateDetails = try TeamLog.CertificateSerializer().deserialize(dict["certificate_details"] ?? .null) - return SsoAddCertDetails(certificateDetails: certificateDetails) - default: - throw JSONSerializerError.deserializeError(type: SsoAddCertDetails.self, json: json) + case .dictionary(let dict): + let certificateDetails = try TeamLog.CertificateSerializer().deserialize(dict["certificate_details"] ?? .null) + return SsoAddCertDetails(certificateDetails: certificateDetails) + default: + throw JSONSerializerError.deserializeError(type: SsoAddCertDetails.self, json: json) } } } @@ -59649,23 +72088,21 @@ public class TeamLog { } } } - public class SsoAddCertTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: SsoAddCertType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> SsoAddCertType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SsoAddCertType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SsoAddCertType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SsoAddCertType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SsoAddCertType.self, json: json) } } } @@ -59691,23 +72128,21 @@ public class TeamLog { } } } - public class SsoAddLoginUrlDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: SsoAddLoginUrlDetails) throws -> JSON { let output = [ - "new_value": try Serialization._StringSerializer.serialize(value.newValue), + "new_value": try Serialization._StringSerializer.serialize(value.newValue), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> SsoAddLoginUrlDetails { switch json { - case .dictionary(let dict): - let newValue = try Serialization._StringSerializer.deserialize(dict["new_value"] ?? .null) - return SsoAddLoginUrlDetails(newValue: newValue) - default: - throw JSONSerializerError.deserializeError(type: SsoAddLoginUrlDetails.self, json: json) + case .dictionary(let dict): + let newValue = try Serialization._StringSerializer.deserialize(dict["new_value"] ?? .null) + return SsoAddLoginUrlDetails(newValue: newValue) + default: + throw JSONSerializerError.deserializeError(type: SsoAddLoginUrlDetails.self, json: json) } } } @@ -59733,23 +72168,21 @@ public class TeamLog { } } } - public class SsoAddLoginUrlTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: SsoAddLoginUrlType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> SsoAddLoginUrlType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SsoAddLoginUrlType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SsoAddLoginUrlType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SsoAddLoginUrlType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SsoAddLoginUrlType.self, json: json) } } } @@ -59775,23 +72208,21 @@ public class TeamLog { } } } - public class SsoAddLogoutUrlDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: SsoAddLogoutUrlDetails) throws -> JSON { let output = [ - "new_value": try NullableSerializer(Serialization._StringSerializer).serialize(value.newValue), + "new_value": try NullableSerializer(Serialization._StringSerializer).serialize(value.newValue), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> SsoAddLogoutUrlDetails { switch json { - case .dictionary(let dict): - let newValue = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["new_value"] ?? .null) - return SsoAddLogoutUrlDetails(newValue: newValue) - default: - throw JSONSerializerError.deserializeError(type: SsoAddLogoutUrlDetails.self, json: json) + case .dictionary(let dict): + let newValue = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["new_value"] ?? .null) + return SsoAddLogoutUrlDetails(newValue: newValue) + default: + throw JSONSerializerError.deserializeError(type: SsoAddLogoutUrlDetails.self, json: json) } } } @@ -59817,23 +72248,21 @@ public class TeamLog { } } } - public class SsoAddLogoutUrlTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: SsoAddLogoutUrlType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> SsoAddLogoutUrlType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SsoAddLogoutUrlType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SsoAddLogoutUrlType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SsoAddLogoutUrlType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SsoAddLogoutUrlType.self, json: json) } } } @@ -59861,26 +72290,23 @@ public class TeamLog { } } } - public class SsoChangeCertDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: SsoChangeCertDetails) throws -> JSON { let output = [ - "new_certificate_details": try TeamLog.CertificateSerializer().serialize(value.newCertificateDetails), - "previous_certificate_details": try NullableSerializer(TeamLog.CertificateSerializer()).serialize(value.previousCertificateDetails), + "new_certificate_details": try TeamLog.CertificateSerializer().serialize(value.newCertificateDetails), + "previous_certificate_details": try NullableSerializer(TeamLog.CertificateSerializer()).serialize(value.previousCertificateDetails), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> SsoChangeCertDetails { switch json { - case .dictionary(let dict): - let newCertificateDetails = try TeamLog.CertificateSerializer().deserialize(dict["new_certificate_details"] ?? .null) - let previousCertificateDetails = try NullableSerializer(TeamLog.CertificateSerializer()) - .deserialize(dict["previous_certificate_details"] ?? .null) - return SsoChangeCertDetails(newCertificateDetails: newCertificateDetails, previousCertificateDetails: previousCertificateDetails) - default: - throw JSONSerializerError.deserializeError(type: SsoChangeCertDetails.self, json: json) + case .dictionary(let dict): + let newCertificateDetails = try TeamLog.CertificateSerializer().deserialize(dict["new_certificate_details"] ?? .null) + let previousCertificateDetails = try NullableSerializer(TeamLog.CertificateSerializer()).deserialize(dict["previous_certificate_details"] ?? .null) + return SsoChangeCertDetails(newCertificateDetails: newCertificateDetails, previousCertificateDetails: previousCertificateDetails) + default: + throw JSONSerializerError.deserializeError(type: SsoChangeCertDetails.self, json: json) } } } @@ -59906,23 +72332,21 @@ public class TeamLog { } } } - public class SsoChangeCertTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: SsoChangeCertType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> SsoChangeCertType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SsoChangeCertType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SsoChangeCertType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SsoChangeCertType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SsoChangeCertType.self, json: json) } } } @@ -59952,25 +72376,23 @@ public class TeamLog { } } } - public class SsoChangeLoginUrlDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: SsoChangeLoginUrlDetails) throws -> JSON { let output = [ - "previous_value": try Serialization._StringSerializer.serialize(value.previousValue), - "new_value": try Serialization._StringSerializer.serialize(value.newValue), + "previous_value": try Serialization._StringSerializer.serialize(value.previousValue), + "new_value": try Serialization._StringSerializer.serialize(value.newValue), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> SsoChangeLoginUrlDetails { switch json { - case .dictionary(let dict): - let previousValue = try Serialization._StringSerializer.deserialize(dict["previous_value"] ?? .null) - let newValue = try Serialization._StringSerializer.deserialize(dict["new_value"] ?? .null) - return SsoChangeLoginUrlDetails(previousValue: previousValue, newValue: newValue) - default: - throw JSONSerializerError.deserializeError(type: SsoChangeLoginUrlDetails.self, json: json) + case .dictionary(let dict): + let previousValue = try Serialization._StringSerializer.deserialize(dict["previous_value"] ?? .null) + let newValue = try Serialization._StringSerializer.deserialize(dict["new_value"] ?? .null) + return SsoChangeLoginUrlDetails(previousValue: previousValue, newValue: newValue) + default: + throw JSONSerializerError.deserializeError(type: SsoChangeLoginUrlDetails.self, json: json) } } } @@ -59996,23 +72418,21 @@ public class TeamLog { } } } - public class SsoChangeLoginUrlTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: SsoChangeLoginUrlType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> SsoChangeLoginUrlType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SsoChangeLoginUrlType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SsoChangeLoginUrlType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SsoChangeLoginUrlType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SsoChangeLoginUrlType.self, json: json) } } } @@ -60042,25 +72462,23 @@ public class TeamLog { } } } - public class SsoChangeLogoutUrlDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: SsoChangeLogoutUrlDetails) throws -> JSON { let output = [ - "previous_value": try NullableSerializer(Serialization._StringSerializer).serialize(value.previousValue), - "new_value": try NullableSerializer(Serialization._StringSerializer).serialize(value.newValue), + "previous_value": try NullableSerializer(Serialization._StringSerializer).serialize(value.previousValue), + "new_value": try NullableSerializer(Serialization._StringSerializer).serialize(value.newValue), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> SsoChangeLogoutUrlDetails { switch json { - case .dictionary(let dict): - let previousValue = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["previous_value"] ?? .null) - let newValue = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["new_value"] ?? .null) - return SsoChangeLogoutUrlDetails(previousValue: previousValue, newValue: newValue) - default: - throw JSONSerializerError.deserializeError(type: SsoChangeLogoutUrlDetails.self, json: json) + case .dictionary(let dict): + let previousValue = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["previous_value"] ?? .null) + let newValue = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["new_value"] ?? .null) + return SsoChangeLogoutUrlDetails(previousValue: previousValue, newValue: newValue) + default: + throw JSONSerializerError.deserializeError(type: SsoChangeLogoutUrlDetails.self, json: json) } } } @@ -60086,23 +72504,21 @@ public class TeamLog { } } } - public class SsoChangeLogoutUrlTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: SsoChangeLogoutUrlType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> SsoChangeLogoutUrlType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SsoChangeLogoutUrlType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SsoChangeLogoutUrlType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SsoChangeLogoutUrlType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SsoChangeLogoutUrlType.self, json: json) } } } @@ -60130,25 +72546,23 @@ public class TeamLog { } } } - public class SsoChangePolicyDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: SsoChangePolicyDetails) throws -> JSON { let output = [ - "new_value": try TeamPolicies.SsoPolicySerializer().serialize(value.newValue), - "previous_value": try NullableSerializer(TeamPolicies.SsoPolicySerializer()).serialize(value.previousValue), + "new_value": try TeamPolicies.SsoPolicySerializer().serialize(value.newValue), + "previous_value": try NullableSerializer(TeamPolicies.SsoPolicySerializer()).serialize(value.previousValue), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> SsoChangePolicyDetails { switch json { - case .dictionary(let dict): - let newValue = try TeamPolicies.SsoPolicySerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try NullableSerializer(TeamPolicies.SsoPolicySerializer()).deserialize(dict["previous_value"] ?? .null) - return SsoChangePolicyDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: SsoChangePolicyDetails.self, json: json) + case .dictionary(let dict): + let newValue = try TeamPolicies.SsoPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try NullableSerializer(TeamPolicies.SsoPolicySerializer()).deserialize(dict["previous_value"] ?? .null) + return SsoChangePolicyDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: SsoChangePolicyDetails.self, json: json) } } } @@ -60174,23 +72588,21 @@ public class TeamLog { } } } - public class SsoChangePolicyTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: SsoChangePolicyType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> SsoChangePolicyType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SsoChangePolicyType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SsoChangePolicyType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SsoChangePolicyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SsoChangePolicyType.self, json: json) } } } @@ -60220,25 +72632,23 @@ public class TeamLog { } } } - public class SsoChangeSamlIdentityModeDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: SsoChangeSamlIdentityModeDetails) throws -> JSON { let output = [ - "previous_value": try Serialization._Int64Serializer.serialize(value.previousValue), - "new_value": try Serialization._Int64Serializer.serialize(value.newValue), + "previous_value": try Serialization._Int64Serializer.serialize(value.previousValue), + "new_value": try Serialization._Int64Serializer.serialize(value.newValue), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> SsoChangeSamlIdentityModeDetails { switch json { - case .dictionary(let dict): - let previousValue = try Serialization._Int64Serializer.deserialize(dict["previous_value"] ?? .null) - let newValue = try Serialization._Int64Serializer.deserialize(dict["new_value"] ?? .null) - return SsoChangeSamlIdentityModeDetails(previousValue: previousValue, newValue: newValue) - default: - throw JSONSerializerError.deserializeError(type: SsoChangeSamlIdentityModeDetails.self, json: json) + case .dictionary(let dict): + let previousValue = try Serialization._Int64Serializer.deserialize(dict["previous_value"] ?? .null) + let newValue = try Serialization._Int64Serializer.deserialize(dict["new_value"] ?? .null) + return SsoChangeSamlIdentityModeDetails(previousValue: previousValue, newValue: newValue) + default: + throw JSONSerializerError.deserializeError(type: SsoChangeSamlIdentityModeDetails.self, json: json) } } } @@ -60264,23 +72674,21 @@ public class TeamLog { } } } - public class SsoChangeSamlIdentityModeTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: SsoChangeSamlIdentityModeType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> SsoChangeSamlIdentityModeType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SsoChangeSamlIdentityModeType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SsoChangeSamlIdentityModeType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SsoChangeSamlIdentityModeType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SsoChangeSamlIdentityModeType.self, json: json) } } } @@ -60305,23 +72713,21 @@ public class TeamLog { } } } - public class SsoErrorDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: SsoErrorDetails) throws -> JSON { let output = [ - "error_details": try TeamLog.FailureDetailsLogInfoSerializer().serialize(value.errorDetails), + "error_details": try TeamLog.FailureDetailsLogInfoSerializer().serialize(value.errorDetails), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> SsoErrorDetails { switch json { - case .dictionary(let dict): - let errorDetails = try TeamLog.FailureDetailsLogInfoSerializer().deserialize(dict["error_details"] ?? .null) - return SsoErrorDetails(errorDetails: errorDetails) - default: - throw JSONSerializerError.deserializeError(type: SsoErrorDetails.self, json: json) + case .dictionary(let dict): + let errorDetails = try TeamLog.FailureDetailsLogInfoSerializer().deserialize(dict["error_details"] ?? .null) + return SsoErrorDetails(errorDetails: errorDetails) + default: + throw JSONSerializerError.deserializeError(type: SsoErrorDetails.self, json: json) } } } @@ -60347,29 +72753,28 @@ public class TeamLog { } } } - public class SsoErrorTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: SsoErrorType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> SsoErrorType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SsoErrorType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SsoErrorType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SsoErrorType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SsoErrorType.self, json: json) } } } /// Removed X.509 certificate for SSO. public class SsoRemoveCertDetails: CustomStringConvertible, JSONRepresentable { + func json() throws -> JSON { try SsoRemoveCertDetailsSerializer().serialize(self) } @@ -60382,20 +72787,18 @@ public class TeamLog { } } } - public class SsoRemoveCertDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: SsoRemoveCertDetails) throws -> JSON { let output = [String: JSON]() return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> SsoRemoveCertDetails { switch json { - case .dictionary: - return SsoRemoveCertDetails() - default: - throw JSONSerializerError.deserializeError(type: SsoRemoveCertDetails.self, json: json) + case .dictionary(_): + return SsoRemoveCertDetails() + default: + throw JSONSerializerError.deserializeError(type: SsoRemoveCertDetails.self, json: json) } } } @@ -60421,23 +72824,21 @@ public class TeamLog { } } } - public class SsoRemoveCertTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: SsoRemoveCertType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> SsoRemoveCertType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SsoRemoveCertType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SsoRemoveCertType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SsoRemoveCertType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SsoRemoveCertType.self, json: json) } } } @@ -60463,23 +72864,21 @@ public class TeamLog { } } } - public class SsoRemoveLoginUrlDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: SsoRemoveLoginUrlDetails) throws -> JSON { let output = [ - "previous_value": try Serialization._StringSerializer.serialize(value.previousValue), + "previous_value": try Serialization._StringSerializer.serialize(value.previousValue), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> SsoRemoveLoginUrlDetails { switch json { - case .dictionary(let dict): - let previousValue = try Serialization._StringSerializer.deserialize(dict["previous_value"] ?? .null) - return SsoRemoveLoginUrlDetails(previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: SsoRemoveLoginUrlDetails.self, json: json) + case .dictionary(let dict): + let previousValue = try Serialization._StringSerializer.deserialize(dict["previous_value"] ?? .null) + return SsoRemoveLoginUrlDetails(previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: SsoRemoveLoginUrlDetails.self, json: json) } } } @@ -60505,23 +72904,21 @@ public class TeamLog { } } } - public class SsoRemoveLoginUrlTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: SsoRemoveLoginUrlType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> SsoRemoveLoginUrlType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SsoRemoveLoginUrlType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SsoRemoveLoginUrlType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SsoRemoveLoginUrlType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SsoRemoveLoginUrlType.self, json: json) } } } @@ -60547,23 +72944,21 @@ public class TeamLog { } } } - public class SsoRemoveLogoutUrlDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: SsoRemoveLogoutUrlDetails) throws -> JSON { let output = [ - "previous_value": try Serialization._StringSerializer.serialize(value.previousValue), + "previous_value": try Serialization._StringSerializer.serialize(value.previousValue), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> SsoRemoveLogoutUrlDetails { switch json { - case .dictionary(let dict): - let previousValue = try Serialization._StringSerializer.deserialize(dict["previous_value"] ?? .null) - return SsoRemoveLogoutUrlDetails(previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: SsoRemoveLogoutUrlDetails.self, json: json) + case .dictionary(let dict): + let previousValue = try Serialization._StringSerializer.deserialize(dict["previous_value"] ?? .null) + return SsoRemoveLogoutUrlDetails(previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: SsoRemoveLogoutUrlDetails.self, json: json) } } } @@ -60589,23 +72984,172 @@ public class TeamLog { } } } - public class SsoRemoveLogoutUrlTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: SsoRemoveLogoutUrlType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> SsoRemoveLogoutUrlType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return SsoRemoveLogoutUrlType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: SsoRemoveLogoutUrlType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return SsoRemoveLogoutUrlType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: SsoRemoveLogoutUrlType.self, json: json) + } + } + } + + /// Policy for whether a team's content can be reached via Stacks owned by other teams + public enum StackCrossTeamAccessPolicy: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case allowed + /// An unspecified error. + case default_ + /// An unspecified error. + case disallowed + /// An unspecified error. + case other + + func json() throws -> JSON { + try StackCrossTeamAccessPolicySerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try StackCrossTeamAccessPolicySerializer().serialize(self)))" + } catch { + return "Failed to generate description for StackCrossTeamAccessPolicy: \(error)" + } + } + } + public class StackCrossTeamAccessPolicySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: StackCrossTeamAccessPolicy) throws -> JSON { + switch value { + case .allowed: + var d = [String: JSON]() + d[".tag"] = .str("allowed") + return .dictionary(d) + case .default_: + var d = [String: JSON]() + d[".tag"] = .str("default") + return .dictionary(d) + case .disallowed: + var d = [String: JSON]() + d[".tag"] = .str("disallowed") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> StackCrossTeamAccessPolicy { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "allowed": + return StackCrossTeamAccessPolicy.allowed + case "default": + return StackCrossTeamAccessPolicy.default_ + case "disallowed": + return StackCrossTeamAccessPolicy.disallowed + case "other": + return StackCrossTeamAccessPolicy.other + default: + return StackCrossTeamAccessPolicy.other + } + default: + throw JSONSerializerError.deserializeError(type: StackCrossTeamAccessPolicy.self, json: json) + } + } + } + + /// Changed cross-team Stack access policy for team. + public class StackCrossTeamAccessPolicyChangedDetails: CustomStringConvertible, JSONRepresentable { + /// New cross-team Stack access policy. + public let newValue: TeamLog.StackCrossTeamAccessPolicy + /// Previous cross-team Stack access policy. Might be missing due to historical data gap. + public let previousValue: TeamLog.StackCrossTeamAccessPolicy? + public init(newValue: TeamLog.StackCrossTeamAccessPolicy, previousValue: TeamLog.StackCrossTeamAccessPolicy? = nil) { + self.newValue = newValue + self.previousValue = previousValue + } + + func json() throws -> JSON { + try StackCrossTeamAccessPolicyChangedDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try StackCrossTeamAccessPolicyChangedDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for StackCrossTeamAccessPolicyChangedDetails: \(error)" + } + } + } + public class StackCrossTeamAccessPolicyChangedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: StackCrossTeamAccessPolicyChangedDetails) throws -> JSON { + let output = [ + "new_value": try TeamLog.StackCrossTeamAccessPolicySerializer().serialize(value.newValue), + "previous_value": try NullableSerializer(TeamLog.StackCrossTeamAccessPolicySerializer()).serialize(value.previousValue), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> StackCrossTeamAccessPolicyChangedDetails { + switch json { + case .dictionary(let dict): + let newValue = try TeamLog.StackCrossTeamAccessPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try NullableSerializer(TeamLog.StackCrossTeamAccessPolicySerializer()).deserialize(dict["previous_value"] ?? .null) + return StackCrossTeamAccessPolicyChangedDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: StackCrossTeamAccessPolicyChangedDetails.self, json: json) + } + } + } + + /// The StackCrossTeamAccessPolicyChangedType struct + public class StackCrossTeamAccessPolicyChangedType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try StackCrossTeamAccessPolicyChangedTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try StackCrossTeamAccessPolicyChangedTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for StackCrossTeamAccessPolicyChangedType: \(error)" + } + } + } + public class StackCrossTeamAccessPolicyChangedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: StackCrossTeamAccessPolicyChangedType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> StackCrossTeamAccessPolicyChangedType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return StackCrossTeamAccessPolicyChangedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: StackCrossTeamAccessPolicyChangedType.self, json: json) } } } @@ -60630,23 +73174,21 @@ public class TeamLog { } } } - public class StartedEnterpriseAdminSessionDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: StartedEnterpriseAdminSessionDetails) throws -> JSON { let output = [ - "federation_extra_details": try TeamLog.FedExtraDetailsSerializer().serialize(value.federationExtraDetails), + "federation_extra_details": try TeamLog.FedExtraDetailsSerializer().serialize(value.federationExtraDetails), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> StartedEnterpriseAdminSessionDetails { switch json { - case .dictionary(let dict): - let federationExtraDetails = try TeamLog.FedExtraDetailsSerializer().deserialize(dict["federation_extra_details"] ?? .null) - return StartedEnterpriseAdminSessionDetails(federationExtraDetails: federationExtraDetails) - default: - throw JSONSerializerError.deserializeError(type: StartedEnterpriseAdminSessionDetails.self, json: json) + case .dictionary(let dict): + let federationExtraDetails = try TeamLog.FedExtraDetailsSerializer().deserialize(dict["federation_extra_details"] ?? .null) + return StartedEnterpriseAdminSessionDetails(federationExtraDetails: federationExtraDetails) + default: + throw JSONSerializerError.deserializeError(type: StartedEnterpriseAdminSessionDetails.self, json: json) } } } @@ -60672,23 +73214,21 @@ public class TeamLog { } } } - public class StartedEnterpriseAdminSessionTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: StartedEnterpriseAdminSessionType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> StartedEnterpriseAdminSessionType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return StartedEnterpriseAdminSessionType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: StartedEnterpriseAdminSessionType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return StartedEnterpriseAdminSessionType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: StartedEnterpriseAdminSessionType.self, json: json) } } } @@ -60716,25 +73256,23 @@ public class TeamLog { } } } - public class TeamActivityCreateReportDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamActivityCreateReportDetails) throws -> JSON { let output = [ - "start_date": try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").serialize(value.startDate), - "end_date": try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").serialize(value.endDate), + "start_date": try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").serialize(value.startDate), + "end_date": try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").serialize(value.endDate), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamActivityCreateReportDetails { switch json { - case .dictionary(let dict): - let startDate = try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").deserialize(dict["start_date"] ?? .null) - let endDate = try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").deserialize(dict["end_date"] ?? .null) - return TeamActivityCreateReportDetails(startDate: startDate, endDate: endDate) - default: - throw JSONSerializerError.deserializeError(type: TeamActivityCreateReportDetails.self, json: json) + case .dictionary(let dict): + let startDate = try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").deserialize(dict["start_date"] ?? .null) + let endDate = try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").deserialize(dict["end_date"] ?? .null) + return TeamActivityCreateReportDetails(startDate: startDate, endDate: endDate) + default: + throw JSONSerializerError.deserializeError(type: TeamActivityCreateReportDetails.self, json: json) } } } @@ -60759,23 +73297,21 @@ public class TeamLog { } } } - public class TeamActivityCreateReportFailDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamActivityCreateReportFailDetails) throws -> JSON { let output = [ - "failure_reason": try Team.TeamReportFailureReasonSerializer().serialize(value.failureReason), + "failure_reason": try Team.TeamReportFailureReasonSerializer().serialize(value.failureReason), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamActivityCreateReportFailDetails { switch json { - case .dictionary(let dict): - let failureReason = try Team.TeamReportFailureReasonSerializer().deserialize(dict["failure_reason"] ?? .null) - return TeamActivityCreateReportFailDetails(failureReason: failureReason) - default: - throw JSONSerializerError.deserializeError(type: TeamActivityCreateReportFailDetails.self, json: json) + case .dictionary(let dict): + let failureReason = try Team.TeamReportFailureReasonSerializer().deserialize(dict["failure_reason"] ?? .null) + return TeamActivityCreateReportFailDetails(failureReason: failureReason) + default: + throw JSONSerializerError.deserializeError(type: TeamActivityCreateReportFailDetails.self, json: json) } } } @@ -60801,23 +73337,21 @@ public class TeamLog { } } } - public class TeamActivityCreateReportFailTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamActivityCreateReportFailType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamActivityCreateReportFailType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return TeamActivityCreateReportFailType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: TeamActivityCreateReportFailType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TeamActivityCreateReportFailType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TeamActivityCreateReportFailType.self, json: json) } } } @@ -60843,23 +73377,21 @@ public class TeamLog { } } } - public class TeamActivityCreateReportTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamActivityCreateReportType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamActivityCreateReportType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return TeamActivityCreateReportType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: TeamActivityCreateReportType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TeamActivityCreateReportType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TeamActivityCreateReportType.self, json: json) } } } @@ -60885,42 +73417,40 @@ public class TeamLog { } } } - public class TeamBrandingPolicySerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamBrandingPolicy) throws -> JSON { switch value { - case .disabled: - var d = [String: JSON]() - d[".tag"] = .str("disabled") - return .dictionary(d) - case .enabled: - var d = [String: JSON]() - d[".tag"] = .str("enabled") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) + case .disabled: + var d = [String: JSON]() + d[".tag"] = .str("disabled") + return .dictionary(d) + case .enabled: + var d = [String: JSON]() + d[".tag"] = .str("enabled") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) } } - public func deserialize(_ json: JSON) throws -> TeamBrandingPolicy { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "disabled": - return TeamBrandingPolicy.disabled - case "enabled": - return TeamBrandingPolicy.enabled - case "other": - return TeamBrandingPolicy.other + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "disabled": + return TeamBrandingPolicy.disabled + case "enabled": + return TeamBrandingPolicy.enabled + case "other": + return TeamBrandingPolicy.other + default: + return TeamBrandingPolicy.other + } default: - return TeamBrandingPolicy.other - } - default: - throw JSONSerializerError.deserializeError(type: TeamBrandingPolicy.self, json: json) + throw JSONSerializerError.deserializeError(type: TeamBrandingPolicy.self, json: json) } } } @@ -60948,25 +73478,23 @@ public class TeamLog { } } } - public class TeamBrandingPolicyChangedDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamBrandingPolicyChangedDetails) throws -> JSON { let output = [ - "new_value": try TeamLog.TeamBrandingPolicySerializer().serialize(value.newValue), - "previous_value": try TeamLog.TeamBrandingPolicySerializer().serialize(value.previousValue), + "new_value": try TeamLog.TeamBrandingPolicySerializer().serialize(value.newValue), + "previous_value": try TeamLog.TeamBrandingPolicySerializer().serialize(value.previousValue), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamBrandingPolicyChangedDetails { switch json { - case .dictionary(let dict): - let newValue = try TeamLog.TeamBrandingPolicySerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try TeamLog.TeamBrandingPolicySerializer().deserialize(dict["previous_value"] ?? .null) - return TeamBrandingPolicyChangedDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: TeamBrandingPolicyChangedDetails.self, json: json) + case .dictionary(let dict): + let newValue = try TeamLog.TeamBrandingPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try TeamLog.TeamBrandingPolicySerializer().deserialize(dict["previous_value"] ?? .null) + return TeamBrandingPolicyChangedDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: TeamBrandingPolicyChangedDetails.self, json: json) } } } @@ -60992,23 +73520,21 @@ public class TeamLog { } } } - public class TeamBrandingPolicyChangedTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamBrandingPolicyChangedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamBrandingPolicyChangedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return TeamBrandingPolicyChangedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: TeamBrandingPolicyChangedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TeamBrandingPolicyChangedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TeamBrandingPolicyChangedType.self, json: json) } } } @@ -61034,29 +73560,108 @@ public class TeamLog { } } } - public class TeamDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamDetails) throws -> JSON { let output = [ - "team": try Serialization._StringSerializer.serialize(value.team), + "team": try Serialization._StringSerializer.serialize(value.team), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamDetails { switch json { - case .dictionary(let dict): - let team = try Serialization._StringSerializer.deserialize(dict["team"] ?? .null) - return TeamDetails(team: team) - default: - throw JSONSerializerError.deserializeError(type: TeamDetails.self, json: json) + case .dictionary(let dict): + let team = try Serialization._StringSerializer.deserialize(dict["team"] ?? .null) + return TeamDetails(team: team) + default: + throw JSONSerializerError.deserializeError(type: TeamDetails.self, json: json) + } + } + } + + /// Activated team encryption key. + public class TeamEncryptionKeyActivateKeyDetails: CustomStringConvertible, JSONRepresentable { + /// Type of key management. + public let keyManagementType: String + public init(keyManagementType: String) { + stringValidator()(keyManagementType) + self.keyManagementType = keyManagementType + } + + func json() throws -> JSON { + try TeamEncryptionKeyActivateKeyDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try TeamEncryptionKeyActivateKeyDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for TeamEncryptionKeyActivateKeyDetails: \(error)" + } + } + } + public class TeamEncryptionKeyActivateKeyDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: TeamEncryptionKeyActivateKeyDetails) throws -> JSON { + let output = [ + "key_management_type": try Serialization._StringSerializer.serialize(value.keyManagementType), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> TeamEncryptionKeyActivateKeyDetails { + switch json { + case .dictionary(let dict): + let keyManagementType = try Serialization._StringSerializer.deserialize(dict["key_management_type"] ?? .null) + return TeamEncryptionKeyActivateKeyDetails(keyManagementType: keyManagementType) + default: + throw JSONSerializerError.deserializeError(type: TeamEncryptionKeyActivateKeyDetails.self, json: json) + } + } + } + + /// The TeamEncryptionKeyActivateKeyType struct + public class TeamEncryptionKeyActivateKeyType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try TeamEncryptionKeyActivateKeyTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try TeamEncryptionKeyActivateKeyTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for TeamEncryptionKeyActivateKeyType: \(error)" + } + } + } + public class TeamEncryptionKeyActivateKeyTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: TeamEncryptionKeyActivateKeyType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> TeamEncryptionKeyActivateKeyType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TeamEncryptionKeyActivateKeyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TeamEncryptionKeyActivateKeyType.self, json: json) } } } /// Canceled team encryption key deletion. public class TeamEncryptionKeyCancelKeyDeletionDetails: CustomStringConvertible, JSONRepresentable { + func json() throws -> JSON { try TeamEncryptionKeyCancelKeyDeletionDetailsSerializer().serialize(self) } @@ -61069,20 +73674,18 @@ public class TeamLog { } } } - public class TeamEncryptionKeyCancelKeyDeletionDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamEncryptionKeyCancelKeyDeletionDetails) throws -> JSON { let output = [String: JSON]() return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamEncryptionKeyCancelKeyDeletionDetails { switch json { - case .dictionary: - return TeamEncryptionKeyCancelKeyDeletionDetails() - default: - throw JSONSerializerError.deserializeError(type: TeamEncryptionKeyCancelKeyDeletionDetails.self, json: json) + case .dictionary(_): + return TeamEncryptionKeyCancelKeyDeletionDetails() + default: + throw JSONSerializerError.deserializeError(type: TeamEncryptionKeyCancelKeyDeletionDetails.self, json: json) } } } @@ -61108,29 +73711,28 @@ public class TeamLog { } } } - public class TeamEncryptionKeyCancelKeyDeletionTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamEncryptionKeyCancelKeyDeletionType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamEncryptionKeyCancelKeyDeletionType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return TeamEncryptionKeyCancelKeyDeletionType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: TeamEncryptionKeyCancelKeyDeletionType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TeamEncryptionKeyCancelKeyDeletionType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TeamEncryptionKeyCancelKeyDeletionType.self, json: json) } } } /// Created team encryption key. public class TeamEncryptionKeyCreateKeyDetails: CustomStringConvertible, JSONRepresentable { + func json() throws -> JSON { try TeamEncryptionKeyCreateKeyDetailsSerializer().serialize(self) } @@ -61143,20 +73745,18 @@ public class TeamLog { } } } - public class TeamEncryptionKeyCreateKeyDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamEncryptionKeyCreateKeyDetails) throws -> JSON { let output = [String: JSON]() return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamEncryptionKeyCreateKeyDetails { switch json { - case .dictionary: - return TeamEncryptionKeyCreateKeyDetails() - default: - throw JSONSerializerError.deserializeError(type: TeamEncryptionKeyCreateKeyDetails.self, json: json) + case .dictionary(_): + return TeamEncryptionKeyCreateKeyDetails() + default: + throw JSONSerializerError.deserializeError(type: TeamEncryptionKeyCreateKeyDetails.self, json: json) } } } @@ -61182,29 +73782,99 @@ public class TeamLog { } } } - public class TeamEncryptionKeyCreateKeyTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamEncryptionKeyCreateKeyType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamEncryptionKeyCreateKeyType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return TeamEncryptionKeyCreateKeyType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: TeamEncryptionKeyCreateKeyType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TeamEncryptionKeyCreateKeyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TeamEncryptionKeyCreateKeyType.self, json: json) + } + } + } + + /// Deactivated team encryption key. + public class TeamEncryptionKeyDeactivateKeyDetails: CustomStringConvertible, JSONRepresentable { + + func json() throws -> JSON { + try TeamEncryptionKeyDeactivateKeyDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try TeamEncryptionKeyDeactivateKeyDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for TeamEncryptionKeyDeactivateKeyDetails: \(error)" + } + } + } + public class TeamEncryptionKeyDeactivateKeyDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: TeamEncryptionKeyDeactivateKeyDetails) throws -> JSON { + let output = [String: JSON]() + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> TeamEncryptionKeyDeactivateKeyDetails { + switch json { + case .dictionary(_): + return TeamEncryptionKeyDeactivateKeyDetails() + default: + throw JSONSerializerError.deserializeError(type: TeamEncryptionKeyDeactivateKeyDetails.self, json: json) + } + } + } + + /// The TeamEncryptionKeyDeactivateKeyType struct + public class TeamEncryptionKeyDeactivateKeyType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try TeamEncryptionKeyDeactivateKeyTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try TeamEncryptionKeyDeactivateKeyTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for TeamEncryptionKeyDeactivateKeyType: \(error)" + } + } + } + public class TeamEncryptionKeyDeactivateKeyTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: TeamEncryptionKeyDeactivateKeyType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> TeamEncryptionKeyDeactivateKeyType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TeamEncryptionKeyDeactivateKeyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TeamEncryptionKeyDeactivateKeyType.self, json: json) } } } /// Deleted team encryption key. public class TeamEncryptionKeyDeleteKeyDetails: CustomStringConvertible, JSONRepresentable { + func json() throws -> JSON { try TeamEncryptionKeyDeleteKeyDetailsSerializer().serialize(self) } @@ -61217,20 +73887,18 @@ public class TeamLog { } } } - public class TeamEncryptionKeyDeleteKeyDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamEncryptionKeyDeleteKeyDetails) throws -> JSON { let output = [String: JSON]() return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamEncryptionKeyDeleteKeyDetails { switch json { - case .dictionary: - return TeamEncryptionKeyDeleteKeyDetails() - default: - throw JSONSerializerError.deserializeError(type: TeamEncryptionKeyDeleteKeyDetails.self, json: json) + case .dictionary(_): + return TeamEncryptionKeyDeleteKeyDetails() + default: + throw JSONSerializerError.deserializeError(type: TeamEncryptionKeyDeleteKeyDetails.self, json: json) } } } @@ -61256,29 +73924,28 @@ public class TeamLog { } } } - public class TeamEncryptionKeyDeleteKeyTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamEncryptionKeyDeleteKeyType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamEncryptionKeyDeleteKeyType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return TeamEncryptionKeyDeleteKeyType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: TeamEncryptionKeyDeleteKeyType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TeamEncryptionKeyDeleteKeyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TeamEncryptionKeyDeleteKeyType.self, json: json) } } } /// Disabled team encryption key. public class TeamEncryptionKeyDisableKeyDetails: CustomStringConvertible, JSONRepresentable { + func json() throws -> JSON { try TeamEncryptionKeyDisableKeyDetailsSerializer().serialize(self) } @@ -61291,20 +73958,18 @@ public class TeamLog { } } } - public class TeamEncryptionKeyDisableKeyDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamEncryptionKeyDisableKeyDetails) throws -> JSON { let output = [String: JSON]() return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamEncryptionKeyDisableKeyDetails { switch json { - case .dictionary: - return TeamEncryptionKeyDisableKeyDetails() - default: - throw JSONSerializerError.deserializeError(type: TeamEncryptionKeyDisableKeyDetails.self, json: json) + case .dictionary(_): + return TeamEncryptionKeyDisableKeyDetails() + default: + throw JSONSerializerError.deserializeError(type: TeamEncryptionKeyDisableKeyDetails.self, json: json) } } } @@ -61330,29 +73995,28 @@ public class TeamLog { } } } - public class TeamEncryptionKeyDisableKeyTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamEncryptionKeyDisableKeyType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamEncryptionKeyDisableKeyType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return TeamEncryptionKeyDisableKeyType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: TeamEncryptionKeyDisableKeyType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TeamEncryptionKeyDisableKeyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TeamEncryptionKeyDisableKeyType.self, json: json) } } } /// Enabled team encryption key. public class TeamEncryptionKeyEnableKeyDetails: CustomStringConvertible, JSONRepresentable { + func json() throws -> JSON { try TeamEncryptionKeyEnableKeyDetailsSerializer().serialize(self) } @@ -61365,20 +74029,18 @@ public class TeamLog { } } } - public class TeamEncryptionKeyEnableKeyDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamEncryptionKeyEnableKeyDetails) throws -> JSON { let output = [String: JSON]() return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamEncryptionKeyEnableKeyDetails { switch json { - case .dictionary: - return TeamEncryptionKeyEnableKeyDetails() - default: - throw JSONSerializerError.deserializeError(type: TeamEncryptionKeyEnableKeyDetails.self, json: json) + case .dictionary(_): + return TeamEncryptionKeyEnableKeyDetails() + default: + throw JSONSerializerError.deserializeError(type: TeamEncryptionKeyEnableKeyDetails.self, json: json) } } } @@ -61404,29 +74066,28 @@ public class TeamLog { } } } - public class TeamEncryptionKeyEnableKeyTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamEncryptionKeyEnableKeyType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamEncryptionKeyEnableKeyType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return TeamEncryptionKeyEnableKeyType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: TeamEncryptionKeyEnableKeyType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TeamEncryptionKeyEnableKeyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TeamEncryptionKeyEnableKeyType.self, json: json) } } } /// Rotated team encryption key. public class TeamEncryptionKeyRotateKeyDetails: CustomStringConvertible, JSONRepresentable { + func json() throws -> JSON { try TeamEncryptionKeyRotateKeyDetailsSerializer().serialize(self) } @@ -61439,20 +74100,18 @@ public class TeamLog { } } } - public class TeamEncryptionKeyRotateKeyDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamEncryptionKeyRotateKeyDetails) throws -> JSON { let output = [String: JSON]() return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamEncryptionKeyRotateKeyDetails { switch json { - case .dictionary: - return TeamEncryptionKeyRotateKeyDetails() - default: - throw JSONSerializerError.deserializeError(type: TeamEncryptionKeyRotateKeyDetails.self, json: json) + case .dictionary(_): + return TeamEncryptionKeyRotateKeyDetails() + default: + throw JSONSerializerError.deserializeError(type: TeamEncryptionKeyRotateKeyDetails.self, json: json) } } } @@ -61478,29 +74137,28 @@ public class TeamLog { } } } - public class TeamEncryptionKeyRotateKeyTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamEncryptionKeyRotateKeyType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamEncryptionKeyRotateKeyType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return TeamEncryptionKeyRotateKeyType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: TeamEncryptionKeyRotateKeyType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TeamEncryptionKeyRotateKeyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TeamEncryptionKeyRotateKeyType.self, json: json) } } } /// Scheduled encryption key deletion. public class TeamEncryptionKeyScheduleKeyDeletionDetails: CustomStringConvertible, JSONRepresentable { + func json() throws -> JSON { try TeamEncryptionKeyScheduleKeyDeletionDetailsSerializer().serialize(self) } @@ -61513,20 +74171,18 @@ public class TeamLog { } } } - public class TeamEncryptionKeyScheduleKeyDeletionDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamEncryptionKeyScheduleKeyDeletionDetails) throws -> JSON { let output = [String: JSON]() return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamEncryptionKeyScheduleKeyDeletionDetails { switch json { - case .dictionary: - return TeamEncryptionKeyScheduleKeyDeletionDetails() - default: - throw JSONSerializerError.deserializeError(type: TeamEncryptionKeyScheduleKeyDeletionDetails.self, json: json) + case .dictionary(_): + return TeamEncryptionKeyScheduleKeyDeletionDetails() + default: + throw JSONSerializerError.deserializeError(type: TeamEncryptionKeyScheduleKeyDeletionDetails.self, json: json) } } } @@ -61552,23 +74208,21 @@ public class TeamLog { } } } - public class TeamEncryptionKeyScheduleKeyDeletionTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamEncryptionKeyScheduleKeyDeletionType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamEncryptionKeyScheduleKeyDeletionType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return TeamEncryptionKeyScheduleKeyDeletionType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: TeamEncryptionKeyScheduleKeyDeletionType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TeamEncryptionKeyScheduleKeyDeletionType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TeamEncryptionKeyScheduleKeyDeletionType.self, json: json) } } } @@ -61579,41 +74233,28 @@ public class TeamLog { public let timestamp_: Date /// The category that this type of action belongs to. public let eventCategory: TeamLog.EventCategory - /// The entity who actually performed the action. Might be missing due to historical data gap. + /// The entity who actually performed the action. public let actor: TeamLog.ActorLogInfo? /// The origin from which the actor performed the action including information about host, ip address, location, /// session, etc. If the action was performed programmatically via the API the origin represents the API /// client. public let origin: TeamLog.OriginLogInfo? - /// True if the action involved a non team member either as the actor or as one of the affected users. Might be - /// missing due to historical data gap. + /// True if the action involved a non team member either as the actor or as one of the affected users. public let involveNonTeamMember: Bool? - /// The user or team on whose behalf the actor performed the action. Might be missing due to historical data - /// gap. + /// The user or team on whose behalf the actor performed the action. public let context: TeamLog.ContextLogInfo? /// Zero or more users and/or groups that are affected by the action. Note that this list doesn't include any /// actors or users in context. - public let participants: [TeamLog.ParticipantLogInfo]? + public let participants: Array? /// Zero or more content assets involved in the action. Currently these include Dropbox files and folders but in /// the future we might add other asset types such as Paper documents, folders, projects, etc. - public let assets: [TeamLog.AssetLogInfo]? + public let assets: Array? /// The particular type of action taken. public let eventType: TeamLog.EventType /// The variable event schema applicable to this type of action, instantiated with respect to this particular /// action. public let details: TeamLog.EventDetails - public init( - timestamp_: Date, - eventCategory: TeamLog.EventCategory, - eventType: TeamLog.EventType, - details: TeamLog.EventDetails, - actor: TeamLog.ActorLogInfo? = nil, - origin: TeamLog.OriginLogInfo? = nil, - involveNonTeamMember: Bool? = nil, - context: TeamLog.ContextLogInfo? = nil, - participants: [TeamLog.ParticipantLogInfo]? = nil, - assets: [TeamLog.AssetLogInfo]? = nil - ) { + public init(timestamp_: Date, eventCategory: TeamLog.EventCategory, eventType: TeamLog.EventType, details: TeamLog.EventDetails, actor: TeamLog.ActorLogInfo? = nil, origin: TeamLog.OriginLogInfo? = nil, involveNonTeamMember: Bool? = nil, context: TeamLog.ContextLogInfo? = nil, participants: Array? = nil, assets: Array? = nil) { self.timestamp_ = timestamp_ self.eventCategory = eventCategory self.actor = actor @@ -61638,53 +74279,39 @@ public class TeamLog { } } } - public class TeamEventSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamEvent) throws -> JSON { let output = [ - "timestamp": try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").serialize(value.timestamp_), - "event_category": try TeamLog.EventCategorySerializer().serialize(value.eventCategory), - "event_type": try TeamLog.EventTypeSerializer().serialize(value.eventType), - "details": try TeamLog.EventDetailsSerializer().serialize(value.details), - "actor": try NullableSerializer(TeamLog.ActorLogInfoSerializer()).serialize(value.actor), - "origin": try NullableSerializer(TeamLog.OriginLogInfoSerializer()).serialize(value.origin), - "involve_non_team_member": try NullableSerializer(Serialization._BoolSerializer).serialize(value.involveNonTeamMember), - "context": try NullableSerializer(TeamLog.ContextLogInfoSerializer()).serialize(value.context), - "participants": try NullableSerializer(ArraySerializer(TeamLog.ParticipantLogInfoSerializer())).serialize(value.participants), - "assets": try NullableSerializer(ArraySerializer(TeamLog.AssetLogInfoSerializer())).serialize(value.assets), + "timestamp": try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").serialize(value.timestamp_), + "event_category": try TeamLog.EventCategorySerializer().serialize(value.eventCategory), + "event_type": try TeamLog.EventTypeSerializer().serialize(value.eventType), + "details": try TeamLog.EventDetailsSerializer().serialize(value.details), + "actor": try NullableSerializer(TeamLog.ActorLogInfoSerializer()).serialize(value.actor), + "origin": try NullableSerializer(TeamLog.OriginLogInfoSerializer()).serialize(value.origin), + "involve_non_team_member": try NullableSerializer(Serialization._BoolSerializer).serialize(value.involveNonTeamMember), + "context": try NullableSerializer(TeamLog.ContextLogInfoSerializer()).serialize(value.context), + "participants": try NullableSerializer(ArraySerializer(TeamLog.ParticipantLogInfoSerializer())).serialize(value.participants), + "assets": try NullableSerializer(ArraySerializer(TeamLog.AssetLogInfoSerializer())).serialize(value.assets), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamEvent { switch json { - case .dictionary(let dict): - let timestamp_ = try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").deserialize(dict["timestamp"] ?? .null) - let eventCategory = try TeamLog.EventCategorySerializer().deserialize(dict["event_category"] ?? .null) - let eventType = try TeamLog.EventTypeSerializer().deserialize(dict["event_type"] ?? .null) - let details = try TeamLog.EventDetailsSerializer().deserialize(dict["details"] ?? .null) - let actor = try NullableSerializer(TeamLog.ActorLogInfoSerializer()).deserialize(dict["actor"] ?? .null) - let origin = try NullableSerializer(TeamLog.OriginLogInfoSerializer()).deserialize(dict["origin"] ?? .null) - let involveNonTeamMember = try NullableSerializer(Serialization._BoolSerializer).deserialize(dict["involve_non_team_member"] ?? .null) - let context = try NullableSerializer(TeamLog.ContextLogInfoSerializer()).deserialize(dict["context"] ?? .null) - let participants = try NullableSerializer(ArraySerializer(TeamLog.ParticipantLogInfoSerializer())) - .deserialize(dict["participants"] ?? .null) - let assets = try NullableSerializer(ArraySerializer(TeamLog.AssetLogInfoSerializer())).deserialize(dict["assets"] ?? .null) - return TeamEvent( - timestamp_: timestamp_, - eventCategory: eventCategory, - eventType: eventType, - details: details, - actor: actor, - origin: origin, - involveNonTeamMember: involveNonTeamMember, - context: context, - participants: participants, - assets: assets - ) - default: - throw JSONSerializerError.deserializeError(type: TeamEvent.self, json: json) + case .dictionary(let dict): + let timestamp_ = try NSDateSerializer("%Y-%m-%dT%H:%M:%SZ").deserialize(dict["timestamp"] ?? .null) + let eventCategory = try TeamLog.EventCategorySerializer().deserialize(dict["event_category"] ?? .null) + let eventType = try TeamLog.EventTypeSerializer().deserialize(dict["event_type"] ?? .null) + let details = try TeamLog.EventDetailsSerializer().deserialize(dict["details"] ?? .null) + let actor = try NullableSerializer(TeamLog.ActorLogInfoSerializer()).deserialize(dict["actor"] ?? .null) + let origin = try NullableSerializer(TeamLog.OriginLogInfoSerializer()).deserialize(dict["origin"] ?? .null) + let involveNonTeamMember = try NullableSerializer(Serialization._BoolSerializer).deserialize(dict["involve_non_team_member"] ?? .null) + let context = try NullableSerializer(TeamLog.ContextLogInfoSerializer()).deserialize(dict["context"] ?? .null) + let participants = try NullableSerializer(ArraySerializer(TeamLog.ParticipantLogInfoSerializer())).deserialize(dict["participants"] ?? .null) + let assets = try NullableSerializer(ArraySerializer(TeamLog.AssetLogInfoSerializer())).deserialize(dict["assets"] ?? .null) + return TeamEvent(timestamp_: timestamp_, eventCategory: eventCategory, eventType: eventType, details: details, actor: actor, origin: origin, involveNonTeamMember: involveNonTeamMember, context: context, participants: participants, assets: assets) + default: + throw JSONSerializerError.deserializeError(type: TeamEvent.self, json: json) } } } @@ -61710,42 +74337,40 @@ public class TeamLog { } } } - public class TeamExtensionsPolicySerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamExtensionsPolicy) throws -> JSON { switch value { - case .disabled: - var d = [String: JSON]() - d[".tag"] = .str("disabled") - return .dictionary(d) - case .enabled: - var d = [String: JSON]() - d[".tag"] = .str("enabled") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) + case .disabled: + var d = [String: JSON]() + d[".tag"] = .str("disabled") + return .dictionary(d) + case .enabled: + var d = [String: JSON]() + d[".tag"] = .str("enabled") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) } } - public func deserialize(_ json: JSON) throws -> TeamExtensionsPolicy { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "disabled": - return TeamExtensionsPolicy.disabled - case "enabled": - return TeamExtensionsPolicy.enabled - case "other": - return TeamExtensionsPolicy.other + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "disabled": + return TeamExtensionsPolicy.disabled + case "enabled": + return TeamExtensionsPolicy.enabled + case "other": + return TeamExtensionsPolicy.other + default: + return TeamExtensionsPolicy.other + } default: - return TeamExtensionsPolicy.other - } - default: - throw JSONSerializerError.deserializeError(type: TeamExtensionsPolicy.self, json: json) + throw JSONSerializerError.deserializeError(type: TeamExtensionsPolicy.self, json: json) } } } @@ -61773,25 +74398,23 @@ public class TeamLog { } } } - public class TeamExtensionsPolicyChangedDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamExtensionsPolicyChangedDetails) throws -> JSON { let output = [ - "new_value": try TeamLog.TeamExtensionsPolicySerializer().serialize(value.newValue), - "previous_value": try TeamLog.TeamExtensionsPolicySerializer().serialize(value.previousValue), + "new_value": try TeamLog.TeamExtensionsPolicySerializer().serialize(value.newValue), + "previous_value": try TeamLog.TeamExtensionsPolicySerializer().serialize(value.previousValue), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamExtensionsPolicyChangedDetails { switch json { - case .dictionary(let dict): - let newValue = try TeamLog.TeamExtensionsPolicySerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try TeamLog.TeamExtensionsPolicySerializer().deserialize(dict["previous_value"] ?? .null) - return TeamExtensionsPolicyChangedDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: TeamExtensionsPolicyChangedDetails.self, json: json) + case .dictionary(let dict): + let newValue = try TeamLog.TeamExtensionsPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try TeamLog.TeamExtensionsPolicySerializer().deserialize(dict["previous_value"] ?? .null) + return TeamExtensionsPolicyChangedDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: TeamExtensionsPolicyChangedDetails.self, json: json) } } } @@ -61817,23 +74440,21 @@ public class TeamLog { } } } - public class TeamExtensionsPolicyChangedTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamExtensionsPolicyChangedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamExtensionsPolicyChangedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return TeamExtensionsPolicyChangedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: TeamExtensionsPolicyChangedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TeamExtensionsPolicyChangedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TeamExtensionsPolicyChangedType.self, json: json) } } } @@ -61861,25 +74482,23 @@ public class TeamLog { } } } - public class TeamFolderChangeStatusDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamFolderChangeStatusDetails) throws -> JSON { let output = [ - "new_value": try Team.TeamFolderStatusSerializer().serialize(value.newValue), - "previous_value": try NullableSerializer(Team.TeamFolderStatusSerializer()).serialize(value.previousValue), + "new_value": try Team.TeamFolderStatusSerializer().serialize(value.newValue), + "previous_value": try NullableSerializer(Team.TeamFolderStatusSerializer()).serialize(value.previousValue), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamFolderChangeStatusDetails { switch json { - case .dictionary(let dict): - let newValue = try Team.TeamFolderStatusSerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try NullableSerializer(Team.TeamFolderStatusSerializer()).deserialize(dict["previous_value"] ?? .null) - return TeamFolderChangeStatusDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: TeamFolderChangeStatusDetails.self, json: json) + case .dictionary(let dict): + let newValue = try Team.TeamFolderStatusSerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try NullableSerializer(Team.TeamFolderStatusSerializer()).deserialize(dict["previous_value"] ?? .null) + return TeamFolderChangeStatusDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: TeamFolderChangeStatusDetails.self, json: json) } } } @@ -61905,29 +74524,28 @@ public class TeamLog { } } } - public class TeamFolderChangeStatusTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamFolderChangeStatusType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamFolderChangeStatusType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return TeamFolderChangeStatusType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: TeamFolderChangeStatusType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TeamFolderChangeStatusType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TeamFolderChangeStatusType.self, json: json) } } } /// Created team folder in active status. public class TeamFolderCreateDetails: CustomStringConvertible, JSONRepresentable { + func json() throws -> JSON { try TeamFolderCreateDetailsSerializer().serialize(self) } @@ -61940,20 +74558,18 @@ public class TeamLog { } } } - public class TeamFolderCreateDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamFolderCreateDetails) throws -> JSON { let output = [String: JSON]() return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamFolderCreateDetails { switch json { - case .dictionary: - return TeamFolderCreateDetails() - default: - throw JSONSerializerError.deserializeError(type: TeamFolderCreateDetails.self, json: json) + case .dictionary(_): + return TeamFolderCreateDetails() + default: + throw JSONSerializerError.deserializeError(type: TeamFolderCreateDetails.self, json: json) } } } @@ -61979,23 +74595,21 @@ public class TeamLog { } } } - public class TeamFolderCreateTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamFolderCreateType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamFolderCreateType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return TeamFolderCreateType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: TeamFolderCreateType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TeamFolderCreateType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TeamFolderCreateType.self, json: json) } } } @@ -62021,23 +74635,21 @@ public class TeamLog { } } } - public class TeamFolderDowngradeDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamFolderDowngradeDetails) throws -> JSON { let output = [ - "target_asset_index": try Serialization._UInt64Serializer.serialize(value.targetAssetIndex), + "target_asset_index": try Serialization._UInt64Serializer.serialize(value.targetAssetIndex), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamFolderDowngradeDetails { switch json { - case .dictionary(let dict): - let targetAssetIndex = try Serialization._UInt64Serializer.deserialize(dict["target_asset_index"] ?? .null) - return TeamFolderDowngradeDetails(targetAssetIndex: targetAssetIndex) - default: - throw JSONSerializerError.deserializeError(type: TeamFolderDowngradeDetails.self, json: json) + case .dictionary(let dict): + let targetAssetIndex = try Serialization._UInt64Serializer.deserialize(dict["target_asset_index"] ?? .null) + return TeamFolderDowngradeDetails(targetAssetIndex: targetAssetIndex) + default: + throw JSONSerializerError.deserializeError(type: TeamFolderDowngradeDetails.self, json: json) } } } @@ -62063,29 +74675,103 @@ public class TeamLog { } } } - public class TeamFolderDowngradeTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamFolderDowngradeType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamFolderDowngradeType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return TeamFolderDowngradeType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: TeamFolderDowngradeType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TeamFolderDowngradeType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TeamFolderDowngradeType.self, json: json) + } + } + } + + /// Team folder space limit notification target + public enum TeamFolderNotificationTarget: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case admins + /// An unspecified error. + case both + /// An unspecified error. + case editors + /// An unspecified error. + case silent + /// An unspecified error. + case other + + func json() throws -> JSON { + try TeamFolderNotificationTargetSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try TeamFolderNotificationTargetSerializer().serialize(self)))" + } catch { + return "Failed to generate description for TeamFolderNotificationTarget: \(error)" + } + } + } + public class TeamFolderNotificationTargetSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: TeamFolderNotificationTarget) throws -> JSON { + switch value { + case .admins: + var d = [String: JSON]() + d[".tag"] = .str("admins") + return .dictionary(d) + case .both: + var d = [String: JSON]() + d[".tag"] = .str("both") + return .dictionary(d) + case .editors: + var d = [String: JSON]() + d[".tag"] = .str("editors") + return .dictionary(d) + case .silent: + var d = [String: JSON]() + d[".tag"] = .str("silent") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> TeamFolderNotificationTarget { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "admins": + return TeamFolderNotificationTarget.admins + case "both": + return TeamFolderNotificationTarget.both + case "editors": + return TeamFolderNotificationTarget.editors + case "silent": + return TeamFolderNotificationTarget.silent + case "other": + return TeamFolderNotificationTarget.other + default: + return TeamFolderNotificationTarget.other + } + default: + throw JSONSerializerError.deserializeError(type: TeamFolderNotificationTarget.self, json: json) } } } /// Permanently deleted archived team folder. public class TeamFolderPermanentlyDeleteDetails: CustomStringConvertible, JSONRepresentable { + func json() throws -> JSON { try TeamFolderPermanentlyDeleteDetailsSerializer().serialize(self) } @@ -62098,20 +74784,18 @@ public class TeamLog { } } } - public class TeamFolderPermanentlyDeleteDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamFolderPermanentlyDeleteDetails) throws -> JSON { let output = [String: JSON]() return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamFolderPermanentlyDeleteDetails { switch json { - case .dictionary: - return TeamFolderPermanentlyDeleteDetails() - default: - throw JSONSerializerError.deserializeError(type: TeamFolderPermanentlyDeleteDetails.self, json: json) + case .dictionary(_): + return TeamFolderPermanentlyDeleteDetails() + default: + throw JSONSerializerError.deserializeError(type: TeamFolderPermanentlyDeleteDetails.self, json: json) } } } @@ -62137,23 +74821,21 @@ public class TeamLog { } } } - public class TeamFolderPermanentlyDeleteTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamFolderPermanentlyDeleteType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamFolderPermanentlyDeleteType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return TeamFolderPermanentlyDeleteType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: TeamFolderPermanentlyDeleteType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TeamFolderPermanentlyDeleteType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TeamFolderPermanentlyDeleteType.self, json: json) } } } @@ -62183,25 +74865,23 @@ public class TeamLog { } } } - public class TeamFolderRenameDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamFolderRenameDetails) throws -> JSON { let output = [ - "previous_folder_name": try Serialization._StringSerializer.serialize(value.previousFolderName), - "new_folder_name": try Serialization._StringSerializer.serialize(value.newFolderName), + "previous_folder_name": try Serialization._StringSerializer.serialize(value.previousFolderName), + "new_folder_name": try Serialization._StringSerializer.serialize(value.newFolderName), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamFolderRenameDetails { switch json { - case .dictionary(let dict): - let previousFolderName = try Serialization._StringSerializer.deserialize(dict["previous_folder_name"] ?? .null) - let newFolderName = try Serialization._StringSerializer.deserialize(dict["new_folder_name"] ?? .null) - return TeamFolderRenameDetails(previousFolderName: previousFolderName, newFolderName: newFolderName) - default: - throw JSONSerializerError.deserializeError(type: TeamFolderRenameDetails.self, json: json) + case .dictionary(let dict): + let previousFolderName = try Serialization._StringSerializer.deserialize(dict["previous_folder_name"] ?? .null) + let newFolderName = try Serialization._StringSerializer.deserialize(dict["new_folder_name"] ?? .null) + return TeamFolderRenameDetails(previousFolderName: previousFolderName, newFolderName: newFolderName) + default: + throw JSONSerializerError.deserializeError(type: TeamFolderRenameDetails.self, json: json) } } } @@ -62227,23 +74907,492 @@ public class TeamLog { } } } - public class TeamFolderRenameTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamFolderRenameType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamFolderRenameType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return TeamFolderRenameType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: TeamFolderRenameType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TeamFolderRenameType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TeamFolderRenameType.self, json: json) + } + } + } + + /// Team folder space limit enforcement type + public enum TeamFolderSpaceCapsType: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case hard + /// An unspecified error. + case off + /// An unspecified error. + case soft + /// An unspecified error. + case other + + func json() throws -> JSON { + try TeamFolderSpaceCapsTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try TeamFolderSpaceCapsTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for TeamFolderSpaceCapsType: \(error)" + } + } + } + public class TeamFolderSpaceCapsTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: TeamFolderSpaceCapsType) throws -> JSON { + switch value { + case .hard: + var d = [String: JSON]() + d[".tag"] = .str("hard") + return .dictionary(d) + case .off: + var d = [String: JSON]() + d[".tag"] = .str("off") + return .dictionary(d) + case .soft: + var d = [String: JSON]() + d[".tag"] = .str("soft") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> TeamFolderSpaceCapsType { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "hard": + return TeamFolderSpaceCapsType.hard + case "off": + return TeamFolderSpaceCapsType.off + case "soft": + return TeamFolderSpaceCapsType.soft + case "other": + return TeamFolderSpaceCapsType.other + default: + return TeamFolderSpaceCapsType.other + } + default: + throw JSONSerializerError.deserializeError(type: TeamFolderSpaceCapsType.self, json: json) + } + } + } + + /// Changed team folder space limit enforcement type. + public class TeamFolderSpaceLimitsChangeCapsTypeDetails: CustomStringConvertible, JSONRepresentable { + /// Previous enforcement type. + public let previousCapsType: TeamLog.TeamFolderSpaceCapsType? + /// New enforcement type. + public let newCapsType: TeamLog.TeamFolderSpaceCapsType + public init(newCapsType: TeamLog.TeamFolderSpaceCapsType, previousCapsType: TeamLog.TeamFolderSpaceCapsType? = nil) { + self.previousCapsType = previousCapsType + self.newCapsType = newCapsType + } + + func json() throws -> JSON { + try TeamFolderSpaceLimitsChangeCapsTypeDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try TeamFolderSpaceLimitsChangeCapsTypeDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for TeamFolderSpaceLimitsChangeCapsTypeDetails: \(error)" + } + } + } + public class TeamFolderSpaceLimitsChangeCapsTypeDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: TeamFolderSpaceLimitsChangeCapsTypeDetails) throws -> JSON { + let output = [ + "new_caps_type": try TeamLog.TeamFolderSpaceCapsTypeSerializer().serialize(value.newCapsType), + "previous_caps_type": try NullableSerializer(TeamLog.TeamFolderSpaceCapsTypeSerializer()).serialize(value.previousCapsType), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> TeamFolderSpaceLimitsChangeCapsTypeDetails { + switch json { + case .dictionary(let dict): + let newCapsType = try TeamLog.TeamFolderSpaceCapsTypeSerializer().deserialize(dict["new_caps_type"] ?? .null) + let previousCapsType = try NullableSerializer(TeamLog.TeamFolderSpaceCapsTypeSerializer()).deserialize(dict["previous_caps_type"] ?? .null) + return TeamFolderSpaceLimitsChangeCapsTypeDetails(newCapsType: newCapsType, previousCapsType: previousCapsType) + default: + throw JSONSerializerError.deserializeError(type: TeamFolderSpaceLimitsChangeCapsTypeDetails.self, json: json) + } + } + } + + /// The TeamFolderSpaceLimitsChangeCapsTypeType struct + public class TeamFolderSpaceLimitsChangeCapsTypeType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try TeamFolderSpaceLimitsChangeCapsTypeTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try TeamFolderSpaceLimitsChangeCapsTypeTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for TeamFolderSpaceLimitsChangeCapsTypeType: \(error)" + } + } + } + public class TeamFolderSpaceLimitsChangeCapsTypeTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: TeamFolderSpaceLimitsChangeCapsTypeType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> TeamFolderSpaceLimitsChangeCapsTypeType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TeamFolderSpaceLimitsChangeCapsTypeType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TeamFolderSpaceLimitsChangeCapsTypeType.self, json: json) + } + } + } + + /// Changed team folder space limit. + public class TeamFolderSpaceLimitsChangeLimitDetails: CustomStringConvertible, JSONRepresentable { + /// Previous limit in bytes. + public let previousLimitBytes: Int64? + /// New limit in bytes. + public let newLimitBytes: Int64 + public init(newLimitBytes: Int64, previousLimitBytes: Int64? = nil) { + nullableValidator(comparableValidator())(previousLimitBytes) + self.previousLimitBytes = previousLimitBytes + comparableValidator()(newLimitBytes) + self.newLimitBytes = newLimitBytes + } + + func json() throws -> JSON { + try TeamFolderSpaceLimitsChangeLimitDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try TeamFolderSpaceLimitsChangeLimitDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for TeamFolderSpaceLimitsChangeLimitDetails: \(error)" + } + } + } + public class TeamFolderSpaceLimitsChangeLimitDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: TeamFolderSpaceLimitsChangeLimitDetails) throws -> JSON { + let output = [ + "new_limit_bytes": try Serialization._Int64Serializer.serialize(value.newLimitBytes), + "previous_limit_bytes": try NullableSerializer(Serialization._Int64Serializer).serialize(value.previousLimitBytes), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> TeamFolderSpaceLimitsChangeLimitDetails { + switch json { + case .dictionary(let dict): + let newLimitBytes = try Serialization._Int64Serializer.deserialize(dict["new_limit_bytes"] ?? .null) + let previousLimitBytes = try NullableSerializer(Serialization._Int64Serializer).deserialize(dict["previous_limit_bytes"] ?? .null) + return TeamFolderSpaceLimitsChangeLimitDetails(newLimitBytes: newLimitBytes, previousLimitBytes: previousLimitBytes) + default: + throw JSONSerializerError.deserializeError(type: TeamFolderSpaceLimitsChangeLimitDetails.self, json: json) + } + } + } + + /// The TeamFolderSpaceLimitsChangeLimitType struct + public class TeamFolderSpaceLimitsChangeLimitType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try TeamFolderSpaceLimitsChangeLimitTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try TeamFolderSpaceLimitsChangeLimitTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for TeamFolderSpaceLimitsChangeLimitType: \(error)" + } + } + } + public class TeamFolderSpaceLimitsChangeLimitTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: TeamFolderSpaceLimitsChangeLimitType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> TeamFolderSpaceLimitsChangeLimitType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TeamFolderSpaceLimitsChangeLimitType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TeamFolderSpaceLimitsChangeLimitType.self, json: json) + } + } + } + + /// Changed team folder space limit notification target. + public class TeamFolderSpaceLimitsChangeNotificationTargetDetails: CustomStringConvertible, JSONRepresentable { + /// Previous notification target. + public let previousTarget: TeamLog.TeamFolderNotificationTarget? + /// New notification target. + public let newTarget: TeamLog.TeamFolderNotificationTarget + public init(newTarget: TeamLog.TeamFolderNotificationTarget, previousTarget: TeamLog.TeamFolderNotificationTarget? = nil) { + self.previousTarget = previousTarget + self.newTarget = newTarget + } + + func json() throws -> JSON { + try TeamFolderSpaceLimitsChangeNotificationTargetDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try TeamFolderSpaceLimitsChangeNotificationTargetDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for TeamFolderSpaceLimitsChangeNotificationTargetDetails: \(error)" + } + } + } + public class TeamFolderSpaceLimitsChangeNotificationTargetDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: TeamFolderSpaceLimitsChangeNotificationTargetDetails) throws -> JSON { + let output = [ + "new_target": try TeamLog.TeamFolderNotificationTargetSerializer().serialize(value.newTarget), + "previous_target": try NullableSerializer(TeamLog.TeamFolderNotificationTargetSerializer()).serialize(value.previousTarget), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> TeamFolderSpaceLimitsChangeNotificationTargetDetails { + switch json { + case .dictionary(let dict): + let newTarget = try TeamLog.TeamFolderNotificationTargetSerializer().deserialize(dict["new_target"] ?? .null) + let previousTarget = try NullableSerializer(TeamLog.TeamFolderNotificationTargetSerializer()).deserialize(dict["previous_target"] ?? .null) + return TeamFolderSpaceLimitsChangeNotificationTargetDetails(newTarget: newTarget, previousTarget: previousTarget) + default: + throw JSONSerializerError.deserializeError(type: TeamFolderSpaceLimitsChangeNotificationTargetDetails.self, json: json) + } + } + } + + /// The TeamFolderSpaceLimitsChangeNotificationTargetType struct + public class TeamFolderSpaceLimitsChangeNotificationTargetType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try TeamFolderSpaceLimitsChangeNotificationTargetTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try TeamFolderSpaceLimitsChangeNotificationTargetTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for TeamFolderSpaceLimitsChangeNotificationTargetType: \(error)" + } + } + } + public class TeamFolderSpaceLimitsChangeNotificationTargetTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: TeamFolderSpaceLimitsChangeNotificationTargetType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> TeamFolderSpaceLimitsChangeNotificationTargetType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TeamFolderSpaceLimitsChangeNotificationTargetType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TeamFolderSpaceLimitsChangeNotificationTargetType.self, json: json) + } + } + } + + /// Created team folders report. + public class TeamFoldersCreateReportDetails: CustomStringConvertible, JSONRepresentable { + + func json() throws -> JSON { + try TeamFoldersCreateReportDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try TeamFoldersCreateReportDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for TeamFoldersCreateReportDetails: \(error)" + } + } + } + public class TeamFoldersCreateReportDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: TeamFoldersCreateReportDetails) throws -> JSON { + let output = [String: JSON]() + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> TeamFoldersCreateReportDetails { + switch json { + case .dictionary(_): + return TeamFoldersCreateReportDetails() + default: + throw JSONSerializerError.deserializeError(type: TeamFoldersCreateReportDetails.self, json: json) + } + } + } + + /// Couldn't generate team folders report. + public class TeamFoldersCreateReportFailedDetails: CustomStringConvertible, JSONRepresentable { + /// Failure reason. + public let failureReason: Team.TeamReportFailureReason + public init(failureReason: Team.TeamReportFailureReason) { + self.failureReason = failureReason + } + + func json() throws -> JSON { + try TeamFoldersCreateReportFailedDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try TeamFoldersCreateReportFailedDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for TeamFoldersCreateReportFailedDetails: \(error)" + } + } + } + public class TeamFoldersCreateReportFailedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: TeamFoldersCreateReportFailedDetails) throws -> JSON { + let output = [ + "failure_reason": try Team.TeamReportFailureReasonSerializer().serialize(value.failureReason), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> TeamFoldersCreateReportFailedDetails { + switch json { + case .dictionary(let dict): + let failureReason = try Team.TeamReportFailureReasonSerializer().deserialize(dict["failure_reason"] ?? .null) + return TeamFoldersCreateReportFailedDetails(failureReason: failureReason) + default: + throw JSONSerializerError.deserializeError(type: TeamFoldersCreateReportFailedDetails.self, json: json) + } + } + } + + /// The TeamFoldersCreateReportFailedType struct + public class TeamFoldersCreateReportFailedType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try TeamFoldersCreateReportFailedTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try TeamFoldersCreateReportFailedTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for TeamFoldersCreateReportFailedType: \(error)" + } + } + } + public class TeamFoldersCreateReportFailedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: TeamFoldersCreateReportFailedType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> TeamFoldersCreateReportFailedType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TeamFoldersCreateReportFailedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TeamFoldersCreateReportFailedType.self, json: json) + } + } + } + + /// The TeamFoldersCreateReportType struct + public class TeamFoldersCreateReportType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try TeamFoldersCreateReportTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try TeamFoldersCreateReportTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for TeamFoldersCreateReportType: \(error)" + } + } + } + public class TeamFoldersCreateReportTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: TeamFoldersCreateReportType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> TeamFoldersCreateReportType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TeamFoldersCreateReportType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TeamFoldersCreateReportType.self, json: json) } } } @@ -62271,32 +75420,31 @@ public class TeamLog { } } } - public class TeamInviteDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamInviteDetails) throws -> JSON { let output = [ - "invite_method": try TeamLog.InviteMethodSerializer().serialize(value.inviteMethod), - "additional_license_purchase": try NullableSerializer(Serialization._BoolSerializer).serialize(value.additionalLicensePurchase), + "invite_method": try TeamLog.InviteMethodSerializer().serialize(value.inviteMethod), + "additional_license_purchase": try NullableSerializer(Serialization._BoolSerializer).serialize(value.additionalLicensePurchase), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamInviteDetails { switch json { - case .dictionary(let dict): - let inviteMethod = try TeamLog.InviteMethodSerializer().deserialize(dict["invite_method"] ?? .null) - let additionalLicensePurchase = try NullableSerializer(Serialization._BoolSerializer) - .deserialize(dict["additional_license_purchase"] ?? .null) - return TeamInviteDetails(inviteMethod: inviteMethod, additionalLicensePurchase: additionalLicensePurchase) - default: - throw JSONSerializerError.deserializeError(type: TeamInviteDetails.self, json: json) + case .dictionary(let dict): + let inviteMethod = try TeamLog.InviteMethodSerializer().deserialize(dict["invite_method"] ?? .null) + let additionalLicensePurchase = try NullableSerializer(Serialization._BoolSerializer).deserialize(dict["additional_license_purchase"] ?? .null) + return TeamInviteDetails(inviteMethod: inviteMethod, additionalLicensePurchase: additionalLicensePurchase) + default: + throw JSONSerializerError.deserializeError(type: TeamInviteDetails.self, json: json) } } } /// Team linked app public class TeamLinkedAppLogInfo: TeamLog.AppLogInfo { + + public override var description: String { do { return "\(SerializeUtil.prepareJSONForSerialization(try TeamLinkedAppLogInfoSerializer().serialize(self)))" @@ -62305,25 +75453,23 @@ public class TeamLog { } } } - public class TeamLinkedAppLogInfoSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamLinkedAppLogInfo) throws -> JSON { let output = [ - "app_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.appId), - "display_name": try NullableSerializer(Serialization._StringSerializer).serialize(value.displayName), + "app_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.appId), + "display_name": try NullableSerializer(Serialization._StringSerializer).serialize(value.displayName), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamLinkedAppLogInfo { switch json { - case .dictionary(let dict): - let appId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["app_id"] ?? .null) - let displayName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["display_name"] ?? .null) - return TeamLinkedAppLogInfo(appId: appId, displayName: displayName) - default: - throw JSONSerializerError.deserializeError(type: TeamLinkedAppLogInfo.self, json: json) + case .dictionary(let dict): + let appId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["app_id"] ?? .null) + let displayName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["display_name"] ?? .null) + return TeamLinkedAppLogInfo(appId: appId, displayName: displayName) + default: + throw JSONSerializerError.deserializeError(type: TeamLinkedAppLogInfo.self, json: json) } } } @@ -62349,23 +75495,21 @@ public class TeamLog { } } } - public class TeamLogInfoSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamLogInfo) throws -> JSON { let output = [ - "display_name": try Serialization._StringSerializer.serialize(value.displayName), + "display_name": try Serialization._StringSerializer.serialize(value.displayName), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamLogInfo { switch json { - case .dictionary(let dict): - let displayName = try Serialization._StringSerializer.deserialize(dict["display_name"] ?? .null) - return TeamLogInfo(displayName: displayName) - default: - throw JSONSerializerError.deserializeError(type: TeamLogInfo.self, json: json) + case .dictionary(let dict): + let displayName = try Serialization._StringSerializer.deserialize(dict["display_name"] ?? .null) + return TeamLogInfo(displayName: displayName) + default: + throw JSONSerializerError.deserializeError(type: TeamLogInfo.self, json: json) } } } @@ -62378,14 +75522,7 @@ public class TeamLog { public let memberExternalId: String? /// Details about this user’s team for enterprise event. public let team: TeamLog.TeamLogInfo? - public init( - accountId: String? = nil, - displayName: String? = nil, - email: String? = nil, - teamMemberId: String? = nil, - memberExternalId: String? = nil, - team: TeamLog.TeamLogInfo? = nil - ) { + public init(accountId: String? = nil, displayName: String? = nil, email: String? = nil, teamMemberId: String? = nil, memberExternalId: String? = nil, team: TeamLog.TeamLogInfo? = nil) { nullableValidator(stringValidator())(teamMemberId) self.teamMemberId = teamMemberId nullableValidator(stringValidator(maxLength: 64))(memberExternalId) @@ -62394,6 +75531,7 @@ public class TeamLog { super.init(accountId: accountId, displayName: displayName, email: email) } + public override var description: String { do { return "\(SerializeUtil.prepareJSONForSerialization(try TeamMemberLogInfoSerializer().serialize(self)))" @@ -62402,40 +75540,182 @@ public class TeamLog { } } } - public class TeamMemberLogInfoSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamMemberLogInfo) throws -> JSON { let output = [ - "account_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.accountId), - "display_name": try NullableSerializer(Serialization._StringSerializer).serialize(value.displayName), - "email": try NullableSerializer(Serialization._StringSerializer).serialize(value.email), - "team_member_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.teamMemberId), - "member_external_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.memberExternalId), - "team": try NullableSerializer(TeamLog.TeamLogInfoSerializer()).serialize(value.team), + "account_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.accountId), + "display_name": try NullableSerializer(Serialization._StringSerializer).serialize(value.displayName), + "email": try NullableSerializer(Serialization._StringSerializer).serialize(value.email), + "team_member_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.teamMemberId), + "member_external_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.memberExternalId), + "team": try NullableSerializer(TeamLog.TeamLogInfoSerializer()).serialize(value.team), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamMemberLogInfo { switch json { - case .dictionary(let dict): - let accountId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["account_id"] ?? .null) - let displayName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["display_name"] ?? .null) - let email = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["email"] ?? .null) - let teamMemberId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["team_member_id"] ?? .null) - let memberExternalId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["member_external_id"] ?? .null) - let team = try NullableSerializer(TeamLog.TeamLogInfoSerializer()).deserialize(dict["team"] ?? .null) - return TeamMemberLogInfo( - accountId: accountId, - displayName: displayName, - email: email, - teamMemberId: teamMemberId, - memberExternalId: memberExternalId, - team: team - ) - default: - throw JSONSerializerError.deserializeError(type: TeamMemberLogInfo.self, json: json) + case .dictionary(let dict): + let accountId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["account_id"] ?? .null) + let displayName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["display_name"] ?? .null) + let email = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["email"] ?? .null) + let teamMemberId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["team_member_id"] ?? .null) + let memberExternalId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["member_external_id"] ?? .null) + let team = try NullableSerializer(TeamLog.TeamLogInfoSerializer()).deserialize(dict["team"] ?? .null) + return TeamMemberLogInfo(accountId: accountId, displayName: displayName, email: email, teamMemberId: teamMemberId, memberExternalId: memberExternalId, team: team) + default: + throw JSONSerializerError.deserializeError(type: TeamMemberLogInfo.self, json: json) + } + } + } + + /// Policy for deciding whether team members can request increased storage limits from admins + public enum TeamMemberStorageRequestPolicy: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case default_ + /// An unspecified error. + case disabled + /// An unspecified error. + case enabled + /// An unspecified error. + case other + + func json() throws -> JSON { + try TeamMemberStorageRequestPolicySerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try TeamMemberStorageRequestPolicySerializer().serialize(self)))" + } catch { + return "Failed to generate description for TeamMemberStorageRequestPolicy: \(error)" + } + } + } + public class TeamMemberStorageRequestPolicySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: TeamMemberStorageRequestPolicy) throws -> JSON { + switch value { + case .default_: + var d = [String: JSON]() + d[".tag"] = .str("default") + return .dictionary(d) + case .disabled: + var d = [String: JSON]() + d[".tag"] = .str("disabled") + return .dictionary(d) + case .enabled: + var d = [String: JSON]() + d[".tag"] = .str("enabled") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> TeamMemberStorageRequestPolicy { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "default": + return TeamMemberStorageRequestPolicy.default_ + case "disabled": + return TeamMemberStorageRequestPolicy.disabled + case "enabled": + return TeamMemberStorageRequestPolicy.enabled + case "other": + return TeamMemberStorageRequestPolicy.other + default: + return TeamMemberStorageRequestPolicy.other + } + default: + throw JSONSerializerError.deserializeError(type: TeamMemberStorageRequestPolicy.self, json: json) + } + } + } + + /// Changed team member storage request policy for team. + public class TeamMemberStorageRequestPolicyChangedDetails: CustomStringConvertible, JSONRepresentable { + /// New team member storage request policy. + public let newValue: TeamLog.TeamMemberStorageRequestPolicy + /// Previous team member storage request policy. Might be missing due to historical data gap. + public let previousValue: TeamLog.TeamMemberStorageRequestPolicy? + public init(newValue: TeamLog.TeamMemberStorageRequestPolicy, previousValue: TeamLog.TeamMemberStorageRequestPolicy? = nil) { + self.newValue = newValue + self.previousValue = previousValue + } + + func json() throws -> JSON { + try TeamMemberStorageRequestPolicyChangedDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try TeamMemberStorageRequestPolicyChangedDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for TeamMemberStorageRequestPolicyChangedDetails: \(error)" + } + } + } + public class TeamMemberStorageRequestPolicyChangedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: TeamMemberStorageRequestPolicyChangedDetails) throws -> JSON { + let output = [ + "new_value": try TeamLog.TeamMemberStorageRequestPolicySerializer().serialize(value.newValue), + "previous_value": try NullableSerializer(TeamLog.TeamMemberStorageRequestPolicySerializer()).serialize(value.previousValue), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> TeamMemberStorageRequestPolicyChangedDetails { + switch json { + case .dictionary(let dict): + let newValue = try TeamLog.TeamMemberStorageRequestPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try NullableSerializer(TeamLog.TeamMemberStorageRequestPolicySerializer()).deserialize(dict["previous_value"] ?? .null) + return TeamMemberStorageRequestPolicyChangedDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: TeamMemberStorageRequestPolicyChangedDetails.self, json: json) + } + } + } + + /// The TeamMemberStorageRequestPolicyChangedType struct + public class TeamMemberStorageRequestPolicyChangedType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try TeamMemberStorageRequestPolicyChangedTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try TeamMemberStorageRequestPolicyChangedTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for TeamMemberStorageRequestPolicyChangedType: \(error)" + } + } + } + public class TeamMemberStorageRequestPolicyChangedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: TeamMemberStorageRequestPolicyChangedType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> TeamMemberStorageRequestPolicyChangedType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TeamMemberStorageRequestPolicyChangedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TeamMemberStorageRequestPolicyChangedType.self, json: json) } } } @@ -62463,48 +75743,46 @@ public class TeamLog { } } } - public class TeamMembershipTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamMembershipType) throws -> JSON { switch value { - case .free: - var d = [String: JSON]() - d[".tag"] = .str("free") - return .dictionary(d) - case .full: - var d = [String: JSON]() - d[".tag"] = .str("full") - return .dictionary(d) - case .guest: - var d = [String: JSON]() - d[".tag"] = .str("guest") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) + case .free: + var d = [String: JSON]() + d[".tag"] = .str("free") + return .dictionary(d) + case .full: + var d = [String: JSON]() + d[".tag"] = .str("full") + return .dictionary(d) + case .guest: + var d = [String: JSON]() + d[".tag"] = .str("guest") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) } } - public func deserialize(_ json: JSON) throws -> TeamMembershipType { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "free": - return TeamMembershipType.free - case "full": - return TeamMembershipType.full - case "guest": - return TeamMembershipType.guest - case "other": - return TeamMembershipType.other + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "free": + return TeamMembershipType.free + case "full": + return TeamMembershipType.full + case "guest": + return TeamMembershipType.guest + case "other": + return TeamMembershipType.other + default: + return TeamMembershipType.other + } default: - return TeamMembershipType.other - } - default: - throw JSONSerializerError.deserializeError(type: TeamMembershipType.self, json: json) + throw JSONSerializerError.deserializeError(type: TeamMembershipType.self, json: json) } } } @@ -62530,23 +75808,21 @@ public class TeamLog { } } } - public class TeamMergeFromDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamMergeFromDetails) throws -> JSON { let output = [ - "team_name": try Serialization._StringSerializer.serialize(value.teamName), + "team_name": try Serialization._StringSerializer.serialize(value.teamName), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamMergeFromDetails { switch json { - case .dictionary(let dict): - let teamName = try Serialization._StringSerializer.deserialize(dict["team_name"] ?? .null) - return TeamMergeFromDetails(teamName: teamName) - default: - throw JSONSerializerError.deserializeError(type: TeamMergeFromDetails.self, json: json) + case .dictionary(let dict): + let teamName = try Serialization._StringSerializer.deserialize(dict["team_name"] ?? .null) + return TeamMergeFromDetails(teamName: teamName) + default: + throw JSONSerializerError.deserializeError(type: TeamMergeFromDetails.self, json: json) } } } @@ -62572,23 +75848,21 @@ public class TeamLog { } } } - public class TeamMergeFromTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamMergeFromType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamMergeFromType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return TeamMergeFromType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: TeamMergeFromType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TeamMergeFromType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TeamMergeFromType.self, json: json) } } } @@ -62613,33 +75887,30 @@ public class TeamLog { } } } - public class TeamMergeRequestAcceptedDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamMergeRequestAcceptedDetails) throws -> JSON { let output = [ - "request_accepted_details": try TeamLog.TeamMergeRequestAcceptedExtraDetailsSerializer().serialize(value.requestAcceptedDetails), + "request_accepted_details": try TeamLog.TeamMergeRequestAcceptedExtraDetailsSerializer().serialize(value.requestAcceptedDetails), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamMergeRequestAcceptedDetails { switch json { - case .dictionary(let dict): - let requestAcceptedDetails = try TeamLog.TeamMergeRequestAcceptedExtraDetailsSerializer() - .deserialize(dict["request_accepted_details"] ?? .null) - return TeamMergeRequestAcceptedDetails(requestAcceptedDetails: requestAcceptedDetails) - default: - throw JSONSerializerError.deserializeError(type: TeamMergeRequestAcceptedDetails.self, json: json) + case .dictionary(let dict): + let requestAcceptedDetails = try TeamLog.TeamMergeRequestAcceptedExtraDetailsSerializer().deserialize(dict["request_accepted_details"] ?? .null) + return TeamMergeRequestAcceptedDetails(requestAcceptedDetails: requestAcceptedDetails) + default: + throw JSONSerializerError.deserializeError(type: TeamMergeRequestAcceptedDetails.self, json: json) } } } /// Team merge request acceptance details public enum TeamMergeRequestAcceptedExtraDetails: CustomStringConvertible, JSONRepresentable { - /// Team merge request accepted details shown to the primary team. + /// Team merge request accepted details shown to the primary team case primaryTeam(TeamLog.PrimaryTeamRequestAcceptedDetails) - /// Team merge request accepted details shown to the secondary team. + /// Team merge request accepted details shown to the secondary team case secondaryTeam(TeamLog.SecondaryTeamRequestAcceptedDetails) /// An unspecified error. case other @@ -62656,44 +75927,42 @@ public class TeamLog { } } } - public class TeamMergeRequestAcceptedExtraDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamMergeRequestAcceptedExtraDetails) throws -> JSON { switch value { - case .primaryTeam(let arg): - var d = try Serialization.getFields(TeamLog.PrimaryTeamRequestAcceptedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("primary_team") - return .dictionary(d) - case .secondaryTeam(let arg): - var d = try Serialization.getFields(TeamLog.SecondaryTeamRequestAcceptedDetailsSerializer().serialize(arg)) - d[".tag"] = .str("secondary_team") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) + case .primaryTeam(let arg): + var d = try Serialization.getFields(TeamLog.PrimaryTeamRequestAcceptedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("primary_team") + return .dictionary(d) + case .secondaryTeam(let arg): + var d = try Serialization.getFields(TeamLog.SecondaryTeamRequestAcceptedDetailsSerializer().serialize(arg)) + d[".tag"] = .str("secondary_team") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) } } - public func deserialize(_ json: JSON) throws -> TeamMergeRequestAcceptedExtraDetails { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "primary_team": - let v = try TeamLog.PrimaryTeamRequestAcceptedDetailsSerializer().deserialize(json) - return TeamMergeRequestAcceptedExtraDetails.primaryTeam(v) - case "secondary_team": - let v = try TeamLog.SecondaryTeamRequestAcceptedDetailsSerializer().deserialize(json) - return TeamMergeRequestAcceptedExtraDetails.secondaryTeam(v) - case "other": - return TeamMergeRequestAcceptedExtraDetails.other + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "primary_team": + let v = try TeamLog.PrimaryTeamRequestAcceptedDetailsSerializer().deserialize(json) + return TeamMergeRequestAcceptedExtraDetails.primaryTeam(v) + case "secondary_team": + let v = try TeamLog.SecondaryTeamRequestAcceptedDetailsSerializer().deserialize(json) + return TeamMergeRequestAcceptedExtraDetails.secondaryTeam(v) + case "other": + return TeamMergeRequestAcceptedExtraDetails.other + default: + return TeamMergeRequestAcceptedExtraDetails.other + } default: - return TeamMergeRequestAcceptedExtraDetails.other - } - default: - throw JSONSerializerError.deserializeError(type: TeamMergeRequestAcceptedExtraDetails.self, json: json) + throw JSONSerializerError.deserializeError(type: TeamMergeRequestAcceptedExtraDetails.self, json: json) } } } @@ -62723,25 +75992,23 @@ public class TeamLog { } } } - public class TeamMergeRequestAcceptedShownToPrimaryTeamDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamMergeRequestAcceptedShownToPrimaryTeamDetails) throws -> JSON { let output = [ - "secondary_team": try Serialization._StringSerializer.serialize(value.secondaryTeam), - "sent_by": try Serialization._StringSerializer.serialize(value.sentBy), + "secondary_team": try Serialization._StringSerializer.serialize(value.secondaryTeam), + "sent_by": try Serialization._StringSerializer.serialize(value.sentBy), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamMergeRequestAcceptedShownToPrimaryTeamDetails { switch json { - case .dictionary(let dict): - let secondaryTeam = try Serialization._StringSerializer.deserialize(dict["secondary_team"] ?? .null) - let sentBy = try Serialization._StringSerializer.deserialize(dict["sent_by"] ?? .null) - return TeamMergeRequestAcceptedShownToPrimaryTeamDetails(secondaryTeam: secondaryTeam, sentBy: sentBy) - default: - throw JSONSerializerError.deserializeError(type: TeamMergeRequestAcceptedShownToPrimaryTeamDetails.self, json: json) + case .dictionary(let dict): + let secondaryTeam = try Serialization._StringSerializer.deserialize(dict["secondary_team"] ?? .null) + let sentBy = try Serialization._StringSerializer.deserialize(dict["sent_by"] ?? .null) + return TeamMergeRequestAcceptedShownToPrimaryTeamDetails(secondaryTeam: secondaryTeam, sentBy: sentBy) + default: + throw JSONSerializerError.deserializeError(type: TeamMergeRequestAcceptedShownToPrimaryTeamDetails.self, json: json) } } } @@ -62767,23 +76034,21 @@ public class TeamLog { } } } - public class TeamMergeRequestAcceptedShownToPrimaryTeamTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamMergeRequestAcceptedShownToPrimaryTeamType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamMergeRequestAcceptedShownToPrimaryTeamType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return TeamMergeRequestAcceptedShownToPrimaryTeamType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: TeamMergeRequestAcceptedShownToPrimaryTeamType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TeamMergeRequestAcceptedShownToPrimaryTeamType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TeamMergeRequestAcceptedShownToPrimaryTeamType.self, json: json) } } } @@ -62813,25 +76078,23 @@ public class TeamLog { } } } - public class TeamMergeRequestAcceptedShownToSecondaryTeamDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamMergeRequestAcceptedShownToSecondaryTeamDetails) throws -> JSON { let output = [ - "primary_team": try Serialization._StringSerializer.serialize(value.primaryTeam), - "sent_by": try Serialization._StringSerializer.serialize(value.sentBy), + "primary_team": try Serialization._StringSerializer.serialize(value.primaryTeam), + "sent_by": try Serialization._StringSerializer.serialize(value.sentBy), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamMergeRequestAcceptedShownToSecondaryTeamDetails { switch json { - case .dictionary(let dict): - let primaryTeam = try Serialization._StringSerializer.deserialize(dict["primary_team"] ?? .null) - let sentBy = try Serialization._StringSerializer.deserialize(dict["sent_by"] ?? .null) - return TeamMergeRequestAcceptedShownToSecondaryTeamDetails(primaryTeam: primaryTeam, sentBy: sentBy) - default: - throw JSONSerializerError.deserializeError(type: TeamMergeRequestAcceptedShownToSecondaryTeamDetails.self, json: json) + case .dictionary(let dict): + let primaryTeam = try Serialization._StringSerializer.deserialize(dict["primary_team"] ?? .null) + let sentBy = try Serialization._StringSerializer.deserialize(dict["sent_by"] ?? .null) + return TeamMergeRequestAcceptedShownToSecondaryTeamDetails(primaryTeam: primaryTeam, sentBy: sentBy) + default: + throw JSONSerializerError.deserializeError(type: TeamMergeRequestAcceptedShownToSecondaryTeamDetails.self, json: json) } } } @@ -62857,23 +76120,21 @@ public class TeamLog { } } } - public class TeamMergeRequestAcceptedShownToSecondaryTeamTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamMergeRequestAcceptedShownToSecondaryTeamType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamMergeRequestAcceptedShownToSecondaryTeamType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return TeamMergeRequestAcceptedShownToSecondaryTeamType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: TeamMergeRequestAcceptedShownToSecondaryTeamType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TeamMergeRequestAcceptedShownToSecondaryTeamType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TeamMergeRequestAcceptedShownToSecondaryTeamType.self, json: json) } } } @@ -62899,23 +76160,21 @@ public class TeamLog { } } } - public class TeamMergeRequestAcceptedTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamMergeRequestAcceptedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamMergeRequestAcceptedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return TeamMergeRequestAcceptedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: TeamMergeRequestAcceptedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TeamMergeRequestAcceptedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TeamMergeRequestAcceptedType.self, json: json) } } } @@ -62941,23 +76200,21 @@ public class TeamLog { } } } - public class TeamMergeRequestAutoCanceledDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamMergeRequestAutoCanceledDetails) throws -> JSON { let output = [ - "details": try NullableSerializer(Serialization._StringSerializer).serialize(value.details), + "details": try NullableSerializer(Serialization._StringSerializer).serialize(value.details), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamMergeRequestAutoCanceledDetails { switch json { - case .dictionary(let dict): - let details = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["details"] ?? .null) - return TeamMergeRequestAutoCanceledDetails(details: details) - default: - throw JSONSerializerError.deserializeError(type: TeamMergeRequestAutoCanceledDetails.self, json: json) + case .dictionary(let dict): + let details = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["details"] ?? .null) + return TeamMergeRequestAutoCanceledDetails(details: details) + default: + throw JSONSerializerError.deserializeError(type: TeamMergeRequestAutoCanceledDetails.self, json: json) } } } @@ -62983,23 +76240,21 @@ public class TeamLog { } } } - public class TeamMergeRequestAutoCanceledTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamMergeRequestAutoCanceledType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamMergeRequestAutoCanceledType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return TeamMergeRequestAutoCanceledType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: TeamMergeRequestAutoCanceledType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TeamMergeRequestAutoCanceledType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TeamMergeRequestAutoCanceledType.self, json: json) } } } @@ -63024,33 +76279,30 @@ public class TeamLog { } } } - public class TeamMergeRequestCanceledDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamMergeRequestCanceledDetails) throws -> JSON { let output = [ - "request_canceled_details": try TeamLog.TeamMergeRequestCanceledExtraDetailsSerializer().serialize(value.requestCanceledDetails), + "request_canceled_details": try TeamLog.TeamMergeRequestCanceledExtraDetailsSerializer().serialize(value.requestCanceledDetails), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamMergeRequestCanceledDetails { switch json { - case .dictionary(let dict): - let requestCanceledDetails = try TeamLog.TeamMergeRequestCanceledExtraDetailsSerializer() - .deserialize(dict["request_canceled_details"] ?? .null) - return TeamMergeRequestCanceledDetails(requestCanceledDetails: requestCanceledDetails) - default: - throw JSONSerializerError.deserializeError(type: TeamMergeRequestCanceledDetails.self, json: json) + case .dictionary(let dict): + let requestCanceledDetails = try TeamLog.TeamMergeRequestCanceledExtraDetailsSerializer().deserialize(dict["request_canceled_details"] ?? .null) + return TeamMergeRequestCanceledDetails(requestCanceledDetails: requestCanceledDetails) + default: + throw JSONSerializerError.deserializeError(type: TeamMergeRequestCanceledDetails.self, json: json) } } } /// Team merge request cancellation details public enum TeamMergeRequestCanceledExtraDetails: CustomStringConvertible, JSONRepresentable { - /// Team merge request cancellation details shown to the primary team. + /// Team merge request cancellation details shown to the primary team case primaryTeam(TeamLog.PrimaryTeamRequestCanceledDetails) - /// Team merge request cancellation details shown to the secondary team. + /// Team merge request cancellation details shown to the secondary team case secondaryTeam(TeamLog.SecondaryTeamRequestCanceledDetails) /// An unspecified error. case other @@ -63067,44 +76319,42 @@ public class TeamLog { } } } - public class TeamMergeRequestCanceledExtraDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamMergeRequestCanceledExtraDetails) throws -> JSON { switch value { - case .primaryTeam(let arg): - var d = try Serialization.getFields(TeamLog.PrimaryTeamRequestCanceledDetailsSerializer().serialize(arg)) - d[".tag"] = .str("primary_team") - return .dictionary(d) - case .secondaryTeam(let arg): - var d = try Serialization.getFields(TeamLog.SecondaryTeamRequestCanceledDetailsSerializer().serialize(arg)) - d[".tag"] = .str("secondary_team") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) + case .primaryTeam(let arg): + var d = try Serialization.getFields(TeamLog.PrimaryTeamRequestCanceledDetailsSerializer().serialize(arg)) + d[".tag"] = .str("primary_team") + return .dictionary(d) + case .secondaryTeam(let arg): + var d = try Serialization.getFields(TeamLog.SecondaryTeamRequestCanceledDetailsSerializer().serialize(arg)) + d[".tag"] = .str("secondary_team") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) } } - public func deserialize(_ json: JSON) throws -> TeamMergeRequestCanceledExtraDetails { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "primary_team": - let v = try TeamLog.PrimaryTeamRequestCanceledDetailsSerializer().deserialize(json) - return TeamMergeRequestCanceledExtraDetails.primaryTeam(v) - case "secondary_team": - let v = try TeamLog.SecondaryTeamRequestCanceledDetailsSerializer().deserialize(json) - return TeamMergeRequestCanceledExtraDetails.secondaryTeam(v) - case "other": - return TeamMergeRequestCanceledExtraDetails.other + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "primary_team": + let v = try TeamLog.PrimaryTeamRequestCanceledDetailsSerializer().deserialize(json) + return TeamMergeRequestCanceledExtraDetails.primaryTeam(v) + case "secondary_team": + let v = try TeamLog.SecondaryTeamRequestCanceledDetailsSerializer().deserialize(json) + return TeamMergeRequestCanceledExtraDetails.secondaryTeam(v) + case "other": + return TeamMergeRequestCanceledExtraDetails.other + default: + return TeamMergeRequestCanceledExtraDetails.other + } default: - return TeamMergeRequestCanceledExtraDetails.other - } - default: - throw JSONSerializerError.deserializeError(type: TeamMergeRequestCanceledExtraDetails.self, json: json) + throw JSONSerializerError.deserializeError(type: TeamMergeRequestCanceledExtraDetails.self, json: json) } } } @@ -63134,25 +76384,23 @@ public class TeamLog { } } } - public class TeamMergeRequestCanceledShownToPrimaryTeamDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamMergeRequestCanceledShownToPrimaryTeamDetails) throws -> JSON { let output = [ - "secondary_team": try Serialization._StringSerializer.serialize(value.secondaryTeam), - "sent_by": try Serialization._StringSerializer.serialize(value.sentBy), + "secondary_team": try Serialization._StringSerializer.serialize(value.secondaryTeam), + "sent_by": try Serialization._StringSerializer.serialize(value.sentBy), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamMergeRequestCanceledShownToPrimaryTeamDetails { switch json { - case .dictionary(let dict): - let secondaryTeam = try Serialization._StringSerializer.deserialize(dict["secondary_team"] ?? .null) - let sentBy = try Serialization._StringSerializer.deserialize(dict["sent_by"] ?? .null) - return TeamMergeRequestCanceledShownToPrimaryTeamDetails(secondaryTeam: secondaryTeam, sentBy: sentBy) - default: - throw JSONSerializerError.deserializeError(type: TeamMergeRequestCanceledShownToPrimaryTeamDetails.self, json: json) + case .dictionary(let dict): + let secondaryTeam = try Serialization._StringSerializer.deserialize(dict["secondary_team"] ?? .null) + let sentBy = try Serialization._StringSerializer.deserialize(dict["sent_by"] ?? .null) + return TeamMergeRequestCanceledShownToPrimaryTeamDetails(secondaryTeam: secondaryTeam, sentBy: sentBy) + default: + throw JSONSerializerError.deserializeError(type: TeamMergeRequestCanceledShownToPrimaryTeamDetails.self, json: json) } } } @@ -63178,23 +76426,21 @@ public class TeamLog { } } } - public class TeamMergeRequestCanceledShownToPrimaryTeamTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamMergeRequestCanceledShownToPrimaryTeamType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamMergeRequestCanceledShownToPrimaryTeamType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return TeamMergeRequestCanceledShownToPrimaryTeamType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: TeamMergeRequestCanceledShownToPrimaryTeamType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TeamMergeRequestCanceledShownToPrimaryTeamType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TeamMergeRequestCanceledShownToPrimaryTeamType.self, json: json) } } } @@ -63224,25 +76470,23 @@ public class TeamLog { } } } - public class TeamMergeRequestCanceledShownToSecondaryTeamDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamMergeRequestCanceledShownToSecondaryTeamDetails) throws -> JSON { let output = [ - "sent_to": try Serialization._StringSerializer.serialize(value.sentTo), - "sent_by": try Serialization._StringSerializer.serialize(value.sentBy), + "sent_to": try Serialization._StringSerializer.serialize(value.sentTo), + "sent_by": try Serialization._StringSerializer.serialize(value.sentBy), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamMergeRequestCanceledShownToSecondaryTeamDetails { switch json { - case .dictionary(let dict): - let sentTo = try Serialization._StringSerializer.deserialize(dict["sent_to"] ?? .null) - let sentBy = try Serialization._StringSerializer.deserialize(dict["sent_by"] ?? .null) - return TeamMergeRequestCanceledShownToSecondaryTeamDetails(sentTo: sentTo, sentBy: sentBy) - default: - throw JSONSerializerError.deserializeError(type: TeamMergeRequestCanceledShownToSecondaryTeamDetails.self, json: json) + case .dictionary(let dict): + let sentTo = try Serialization._StringSerializer.deserialize(dict["sent_to"] ?? .null) + let sentBy = try Serialization._StringSerializer.deserialize(dict["sent_by"] ?? .null) + return TeamMergeRequestCanceledShownToSecondaryTeamDetails(sentTo: sentTo, sentBy: sentBy) + default: + throw JSONSerializerError.deserializeError(type: TeamMergeRequestCanceledShownToSecondaryTeamDetails.self, json: json) } } } @@ -63268,23 +76512,21 @@ public class TeamLog { } } } - public class TeamMergeRequestCanceledShownToSecondaryTeamTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamMergeRequestCanceledShownToSecondaryTeamType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamMergeRequestCanceledShownToSecondaryTeamType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return TeamMergeRequestCanceledShownToSecondaryTeamType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: TeamMergeRequestCanceledShownToSecondaryTeamType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TeamMergeRequestCanceledShownToSecondaryTeamType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TeamMergeRequestCanceledShownToSecondaryTeamType.self, json: json) } } } @@ -63310,23 +76552,21 @@ public class TeamLog { } } } - public class TeamMergeRequestCanceledTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamMergeRequestCanceledType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamMergeRequestCanceledType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return TeamMergeRequestCanceledType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: TeamMergeRequestCanceledType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TeamMergeRequestCanceledType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TeamMergeRequestCanceledType.self, json: json) } } } @@ -63351,33 +76591,30 @@ public class TeamLog { } } } - public class TeamMergeRequestExpiredDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamMergeRequestExpiredDetails) throws -> JSON { let output = [ - "request_expired_details": try TeamLog.TeamMergeRequestExpiredExtraDetailsSerializer().serialize(value.requestExpiredDetails), + "request_expired_details": try TeamLog.TeamMergeRequestExpiredExtraDetailsSerializer().serialize(value.requestExpiredDetails), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamMergeRequestExpiredDetails { switch json { - case .dictionary(let dict): - let requestExpiredDetails = try TeamLog.TeamMergeRequestExpiredExtraDetailsSerializer() - .deserialize(dict["request_expired_details"] ?? .null) - return TeamMergeRequestExpiredDetails(requestExpiredDetails: requestExpiredDetails) - default: - throw JSONSerializerError.deserializeError(type: TeamMergeRequestExpiredDetails.self, json: json) + case .dictionary(let dict): + let requestExpiredDetails = try TeamLog.TeamMergeRequestExpiredExtraDetailsSerializer().deserialize(dict["request_expired_details"] ?? .null) + return TeamMergeRequestExpiredDetails(requestExpiredDetails: requestExpiredDetails) + default: + throw JSONSerializerError.deserializeError(type: TeamMergeRequestExpiredDetails.self, json: json) } } } /// Team merge request expiration details public enum TeamMergeRequestExpiredExtraDetails: CustomStringConvertible, JSONRepresentable { - /// Team merge request canceled details shown to the primary team. + /// Team merge request canceled details shown to the primary team case primaryTeam(TeamLog.PrimaryTeamRequestExpiredDetails) - /// Team merge request canceled details shown to the secondary team. + /// Team merge request canceled details shown to the secondary team case secondaryTeam(TeamLog.SecondaryTeamRequestExpiredDetails) /// An unspecified error. case other @@ -63394,44 +76631,42 @@ public class TeamLog { } } } - public class TeamMergeRequestExpiredExtraDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamMergeRequestExpiredExtraDetails) throws -> JSON { switch value { - case .primaryTeam(let arg): - var d = try Serialization.getFields(TeamLog.PrimaryTeamRequestExpiredDetailsSerializer().serialize(arg)) - d[".tag"] = .str("primary_team") - return .dictionary(d) - case .secondaryTeam(let arg): - var d = try Serialization.getFields(TeamLog.SecondaryTeamRequestExpiredDetailsSerializer().serialize(arg)) - d[".tag"] = .str("secondary_team") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) + case .primaryTeam(let arg): + var d = try Serialization.getFields(TeamLog.PrimaryTeamRequestExpiredDetailsSerializer().serialize(arg)) + d[".tag"] = .str("primary_team") + return .dictionary(d) + case .secondaryTeam(let arg): + var d = try Serialization.getFields(TeamLog.SecondaryTeamRequestExpiredDetailsSerializer().serialize(arg)) + d[".tag"] = .str("secondary_team") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) } } - public func deserialize(_ json: JSON) throws -> TeamMergeRequestExpiredExtraDetails { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "primary_team": - let v = try TeamLog.PrimaryTeamRequestExpiredDetailsSerializer().deserialize(json) - return TeamMergeRequestExpiredExtraDetails.primaryTeam(v) - case "secondary_team": - let v = try TeamLog.SecondaryTeamRequestExpiredDetailsSerializer().deserialize(json) - return TeamMergeRequestExpiredExtraDetails.secondaryTeam(v) - case "other": - return TeamMergeRequestExpiredExtraDetails.other + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "primary_team": + let v = try TeamLog.PrimaryTeamRequestExpiredDetailsSerializer().deserialize(json) + return TeamMergeRequestExpiredExtraDetails.primaryTeam(v) + case "secondary_team": + let v = try TeamLog.SecondaryTeamRequestExpiredDetailsSerializer().deserialize(json) + return TeamMergeRequestExpiredExtraDetails.secondaryTeam(v) + case "other": + return TeamMergeRequestExpiredExtraDetails.other + default: + return TeamMergeRequestExpiredExtraDetails.other + } default: - return TeamMergeRequestExpiredExtraDetails.other - } - default: - throw JSONSerializerError.deserializeError(type: TeamMergeRequestExpiredExtraDetails.self, json: json) + throw JSONSerializerError.deserializeError(type: TeamMergeRequestExpiredExtraDetails.self, json: json) } } } @@ -63461,25 +76696,23 @@ public class TeamLog { } } } - public class TeamMergeRequestExpiredShownToPrimaryTeamDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamMergeRequestExpiredShownToPrimaryTeamDetails) throws -> JSON { let output = [ - "secondary_team": try Serialization._StringSerializer.serialize(value.secondaryTeam), - "sent_by": try Serialization._StringSerializer.serialize(value.sentBy), + "secondary_team": try Serialization._StringSerializer.serialize(value.secondaryTeam), + "sent_by": try Serialization._StringSerializer.serialize(value.sentBy), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamMergeRequestExpiredShownToPrimaryTeamDetails { switch json { - case .dictionary(let dict): - let secondaryTeam = try Serialization._StringSerializer.deserialize(dict["secondary_team"] ?? .null) - let sentBy = try Serialization._StringSerializer.deserialize(dict["sent_by"] ?? .null) - return TeamMergeRequestExpiredShownToPrimaryTeamDetails(secondaryTeam: secondaryTeam, sentBy: sentBy) - default: - throw JSONSerializerError.deserializeError(type: TeamMergeRequestExpiredShownToPrimaryTeamDetails.self, json: json) + case .dictionary(let dict): + let secondaryTeam = try Serialization._StringSerializer.deserialize(dict["secondary_team"] ?? .null) + let sentBy = try Serialization._StringSerializer.deserialize(dict["sent_by"] ?? .null) + return TeamMergeRequestExpiredShownToPrimaryTeamDetails(secondaryTeam: secondaryTeam, sentBy: sentBy) + default: + throw JSONSerializerError.deserializeError(type: TeamMergeRequestExpiredShownToPrimaryTeamDetails.self, json: json) } } } @@ -63505,23 +76738,21 @@ public class TeamLog { } } } - public class TeamMergeRequestExpiredShownToPrimaryTeamTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamMergeRequestExpiredShownToPrimaryTeamType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamMergeRequestExpiredShownToPrimaryTeamType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return TeamMergeRequestExpiredShownToPrimaryTeamType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: TeamMergeRequestExpiredShownToPrimaryTeamType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TeamMergeRequestExpiredShownToPrimaryTeamType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TeamMergeRequestExpiredShownToPrimaryTeamType.self, json: json) } } } @@ -63547,23 +76778,21 @@ public class TeamLog { } } } - public class TeamMergeRequestExpiredShownToSecondaryTeamDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamMergeRequestExpiredShownToSecondaryTeamDetails) throws -> JSON { let output = [ - "sent_to": try Serialization._StringSerializer.serialize(value.sentTo), + "sent_to": try Serialization._StringSerializer.serialize(value.sentTo), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamMergeRequestExpiredShownToSecondaryTeamDetails { switch json { - case .dictionary(let dict): - let sentTo = try Serialization._StringSerializer.deserialize(dict["sent_to"] ?? .null) - return TeamMergeRequestExpiredShownToSecondaryTeamDetails(sentTo: sentTo) - default: - throw JSONSerializerError.deserializeError(type: TeamMergeRequestExpiredShownToSecondaryTeamDetails.self, json: json) + case .dictionary(let dict): + let sentTo = try Serialization._StringSerializer.deserialize(dict["sent_to"] ?? .null) + return TeamMergeRequestExpiredShownToSecondaryTeamDetails(sentTo: sentTo) + default: + throw JSONSerializerError.deserializeError(type: TeamMergeRequestExpiredShownToSecondaryTeamDetails.self, json: json) } } } @@ -63589,23 +76818,21 @@ public class TeamLog { } } } - public class TeamMergeRequestExpiredShownToSecondaryTeamTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamMergeRequestExpiredShownToSecondaryTeamType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamMergeRequestExpiredShownToSecondaryTeamType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return TeamMergeRequestExpiredShownToSecondaryTeamType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: TeamMergeRequestExpiredShownToSecondaryTeamType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TeamMergeRequestExpiredShownToSecondaryTeamType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TeamMergeRequestExpiredShownToSecondaryTeamType.self, json: json) } } } @@ -63631,23 +76858,21 @@ public class TeamLog { } } } - public class TeamMergeRequestExpiredTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamMergeRequestExpiredType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamMergeRequestExpiredType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return TeamMergeRequestExpiredType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: TeamMergeRequestExpiredType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TeamMergeRequestExpiredType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TeamMergeRequestExpiredType.self, json: json) } } } @@ -63677,25 +76902,23 @@ public class TeamLog { } } } - public class TeamMergeRequestRejectedShownToPrimaryTeamDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamMergeRequestRejectedShownToPrimaryTeamDetails) throws -> JSON { let output = [ - "secondary_team": try Serialization._StringSerializer.serialize(value.secondaryTeam), - "sent_by": try Serialization._StringSerializer.serialize(value.sentBy), + "secondary_team": try Serialization._StringSerializer.serialize(value.secondaryTeam), + "sent_by": try Serialization._StringSerializer.serialize(value.sentBy), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamMergeRequestRejectedShownToPrimaryTeamDetails { switch json { - case .dictionary(let dict): - let secondaryTeam = try Serialization._StringSerializer.deserialize(dict["secondary_team"] ?? .null) - let sentBy = try Serialization._StringSerializer.deserialize(dict["sent_by"] ?? .null) - return TeamMergeRequestRejectedShownToPrimaryTeamDetails(secondaryTeam: secondaryTeam, sentBy: sentBy) - default: - throw JSONSerializerError.deserializeError(type: TeamMergeRequestRejectedShownToPrimaryTeamDetails.self, json: json) + case .dictionary(let dict): + let secondaryTeam = try Serialization._StringSerializer.deserialize(dict["secondary_team"] ?? .null) + let sentBy = try Serialization._StringSerializer.deserialize(dict["sent_by"] ?? .null) + return TeamMergeRequestRejectedShownToPrimaryTeamDetails(secondaryTeam: secondaryTeam, sentBy: sentBy) + default: + throw JSONSerializerError.deserializeError(type: TeamMergeRequestRejectedShownToPrimaryTeamDetails.self, json: json) } } } @@ -63721,23 +76944,21 @@ public class TeamLog { } } } - public class TeamMergeRequestRejectedShownToPrimaryTeamTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamMergeRequestRejectedShownToPrimaryTeamType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamMergeRequestRejectedShownToPrimaryTeamType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return TeamMergeRequestRejectedShownToPrimaryTeamType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: TeamMergeRequestRejectedShownToPrimaryTeamType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TeamMergeRequestRejectedShownToPrimaryTeamType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TeamMergeRequestRejectedShownToPrimaryTeamType.self, json: json) } } } @@ -63763,23 +76984,21 @@ public class TeamLog { } } } - public class TeamMergeRequestRejectedShownToSecondaryTeamDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamMergeRequestRejectedShownToSecondaryTeamDetails) throws -> JSON { let output = [ - "sent_by": try Serialization._StringSerializer.serialize(value.sentBy), + "sent_by": try Serialization._StringSerializer.serialize(value.sentBy), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamMergeRequestRejectedShownToSecondaryTeamDetails { switch json { - case .dictionary(let dict): - let sentBy = try Serialization._StringSerializer.deserialize(dict["sent_by"] ?? .null) - return TeamMergeRequestRejectedShownToSecondaryTeamDetails(sentBy: sentBy) - default: - throw JSONSerializerError.deserializeError(type: TeamMergeRequestRejectedShownToSecondaryTeamDetails.self, json: json) + case .dictionary(let dict): + let sentBy = try Serialization._StringSerializer.deserialize(dict["sent_by"] ?? .null) + return TeamMergeRequestRejectedShownToSecondaryTeamDetails(sentBy: sentBy) + default: + throw JSONSerializerError.deserializeError(type: TeamMergeRequestRejectedShownToSecondaryTeamDetails.self, json: json) } } } @@ -63805,23 +77024,21 @@ public class TeamLog { } } } - public class TeamMergeRequestRejectedShownToSecondaryTeamTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamMergeRequestRejectedShownToSecondaryTeamType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamMergeRequestRejectedShownToSecondaryTeamType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return TeamMergeRequestRejectedShownToSecondaryTeamType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: TeamMergeRequestRejectedShownToSecondaryTeamType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TeamMergeRequestRejectedShownToSecondaryTeamType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TeamMergeRequestRejectedShownToSecondaryTeamType.self, json: json) } } } @@ -63846,33 +77063,30 @@ public class TeamLog { } } } - public class TeamMergeRequestReminderDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamMergeRequestReminderDetails) throws -> JSON { let output = [ - "request_reminder_details": try TeamLog.TeamMergeRequestReminderExtraDetailsSerializer().serialize(value.requestReminderDetails), + "request_reminder_details": try TeamLog.TeamMergeRequestReminderExtraDetailsSerializer().serialize(value.requestReminderDetails), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamMergeRequestReminderDetails { switch json { - case .dictionary(let dict): - let requestReminderDetails = try TeamLog.TeamMergeRequestReminderExtraDetailsSerializer() - .deserialize(dict["request_reminder_details"] ?? .null) - return TeamMergeRequestReminderDetails(requestReminderDetails: requestReminderDetails) - default: - throw JSONSerializerError.deserializeError(type: TeamMergeRequestReminderDetails.self, json: json) + case .dictionary(let dict): + let requestReminderDetails = try TeamLog.TeamMergeRequestReminderExtraDetailsSerializer().deserialize(dict["request_reminder_details"] ?? .null) + return TeamMergeRequestReminderDetails(requestReminderDetails: requestReminderDetails) + default: + throw JSONSerializerError.deserializeError(type: TeamMergeRequestReminderDetails.self, json: json) } } } /// Team merge request reminder details public enum TeamMergeRequestReminderExtraDetails: CustomStringConvertible, JSONRepresentable { - /// Team merge request reminder details shown to the primary team. + /// Team merge request reminder details shown to the primary team case primaryTeam(TeamLog.PrimaryTeamRequestReminderDetails) - /// Team merge request reminder details shown to the secondary team. + /// Team merge request reminder details shown to the secondary team case secondaryTeam(TeamLog.SecondaryTeamRequestReminderDetails) /// An unspecified error. case other @@ -63889,44 +77103,42 @@ public class TeamLog { } } } - public class TeamMergeRequestReminderExtraDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamMergeRequestReminderExtraDetails) throws -> JSON { switch value { - case .primaryTeam(let arg): - var d = try Serialization.getFields(TeamLog.PrimaryTeamRequestReminderDetailsSerializer().serialize(arg)) - d[".tag"] = .str("primary_team") - return .dictionary(d) - case .secondaryTeam(let arg): - var d = try Serialization.getFields(TeamLog.SecondaryTeamRequestReminderDetailsSerializer().serialize(arg)) - d[".tag"] = .str("secondary_team") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) + case .primaryTeam(let arg): + var d = try Serialization.getFields(TeamLog.PrimaryTeamRequestReminderDetailsSerializer().serialize(arg)) + d[".tag"] = .str("primary_team") + return .dictionary(d) + case .secondaryTeam(let arg): + var d = try Serialization.getFields(TeamLog.SecondaryTeamRequestReminderDetailsSerializer().serialize(arg)) + d[".tag"] = .str("secondary_team") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) } } - public func deserialize(_ json: JSON) throws -> TeamMergeRequestReminderExtraDetails { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "primary_team": - let v = try TeamLog.PrimaryTeamRequestReminderDetailsSerializer().deserialize(json) - return TeamMergeRequestReminderExtraDetails.primaryTeam(v) - case "secondary_team": - let v = try TeamLog.SecondaryTeamRequestReminderDetailsSerializer().deserialize(json) - return TeamMergeRequestReminderExtraDetails.secondaryTeam(v) - case "other": - return TeamMergeRequestReminderExtraDetails.other + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "primary_team": + let v = try TeamLog.PrimaryTeamRequestReminderDetailsSerializer().deserialize(json) + return TeamMergeRequestReminderExtraDetails.primaryTeam(v) + case "secondary_team": + let v = try TeamLog.SecondaryTeamRequestReminderDetailsSerializer().deserialize(json) + return TeamMergeRequestReminderExtraDetails.secondaryTeam(v) + case "other": + return TeamMergeRequestReminderExtraDetails.other + default: + return TeamMergeRequestReminderExtraDetails.other + } default: - return TeamMergeRequestReminderExtraDetails.other - } - default: - throw JSONSerializerError.deserializeError(type: TeamMergeRequestReminderExtraDetails.self, json: json) + throw JSONSerializerError.deserializeError(type: TeamMergeRequestReminderExtraDetails.self, json: json) } } } @@ -63956,25 +77168,23 @@ public class TeamLog { } } } - public class TeamMergeRequestReminderShownToPrimaryTeamDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamMergeRequestReminderShownToPrimaryTeamDetails) throws -> JSON { let output = [ - "secondary_team": try Serialization._StringSerializer.serialize(value.secondaryTeam), - "sent_to": try Serialization._StringSerializer.serialize(value.sentTo), + "secondary_team": try Serialization._StringSerializer.serialize(value.secondaryTeam), + "sent_to": try Serialization._StringSerializer.serialize(value.sentTo), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamMergeRequestReminderShownToPrimaryTeamDetails { switch json { - case .dictionary(let dict): - let secondaryTeam = try Serialization._StringSerializer.deserialize(dict["secondary_team"] ?? .null) - let sentTo = try Serialization._StringSerializer.deserialize(dict["sent_to"] ?? .null) - return TeamMergeRequestReminderShownToPrimaryTeamDetails(secondaryTeam: secondaryTeam, sentTo: sentTo) - default: - throw JSONSerializerError.deserializeError(type: TeamMergeRequestReminderShownToPrimaryTeamDetails.self, json: json) + case .dictionary(let dict): + let secondaryTeam = try Serialization._StringSerializer.deserialize(dict["secondary_team"] ?? .null) + let sentTo = try Serialization._StringSerializer.deserialize(dict["sent_to"] ?? .null) + return TeamMergeRequestReminderShownToPrimaryTeamDetails(secondaryTeam: secondaryTeam, sentTo: sentTo) + default: + throw JSONSerializerError.deserializeError(type: TeamMergeRequestReminderShownToPrimaryTeamDetails.self, json: json) } } } @@ -64000,23 +77210,21 @@ public class TeamLog { } } } - public class TeamMergeRequestReminderShownToPrimaryTeamTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamMergeRequestReminderShownToPrimaryTeamType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamMergeRequestReminderShownToPrimaryTeamType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return TeamMergeRequestReminderShownToPrimaryTeamType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: TeamMergeRequestReminderShownToPrimaryTeamType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TeamMergeRequestReminderShownToPrimaryTeamType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TeamMergeRequestReminderShownToPrimaryTeamType.self, json: json) } } } @@ -64042,23 +77250,21 @@ public class TeamLog { } } } - public class TeamMergeRequestReminderShownToSecondaryTeamDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamMergeRequestReminderShownToSecondaryTeamDetails) throws -> JSON { let output = [ - "sent_to": try Serialization._StringSerializer.serialize(value.sentTo), + "sent_to": try Serialization._StringSerializer.serialize(value.sentTo), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamMergeRequestReminderShownToSecondaryTeamDetails { switch json { - case .dictionary(let dict): - let sentTo = try Serialization._StringSerializer.deserialize(dict["sent_to"] ?? .null) - return TeamMergeRequestReminderShownToSecondaryTeamDetails(sentTo: sentTo) - default: - throw JSONSerializerError.deserializeError(type: TeamMergeRequestReminderShownToSecondaryTeamDetails.self, json: json) + case .dictionary(let dict): + let sentTo = try Serialization._StringSerializer.deserialize(dict["sent_to"] ?? .null) + return TeamMergeRequestReminderShownToSecondaryTeamDetails(sentTo: sentTo) + default: + throw JSONSerializerError.deserializeError(type: TeamMergeRequestReminderShownToSecondaryTeamDetails.self, json: json) } } } @@ -64084,23 +77290,21 @@ public class TeamLog { } } } - public class TeamMergeRequestReminderShownToSecondaryTeamTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamMergeRequestReminderShownToSecondaryTeamType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamMergeRequestReminderShownToSecondaryTeamType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return TeamMergeRequestReminderShownToSecondaryTeamType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: TeamMergeRequestReminderShownToSecondaryTeamType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TeamMergeRequestReminderShownToSecondaryTeamType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TeamMergeRequestReminderShownToSecondaryTeamType.self, json: json) } } } @@ -64126,23 +77330,21 @@ public class TeamLog { } } } - public class TeamMergeRequestReminderTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamMergeRequestReminderType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamMergeRequestReminderType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return TeamMergeRequestReminderType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: TeamMergeRequestReminderType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TeamMergeRequestReminderType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TeamMergeRequestReminderType.self, json: json) } } } @@ -64168,23 +77370,21 @@ public class TeamLog { } } } - public class TeamMergeRequestRevokedDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamMergeRequestRevokedDetails) throws -> JSON { let output = [ - "team": try Serialization._StringSerializer.serialize(value.team), + "team": try Serialization._StringSerializer.serialize(value.team), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamMergeRequestRevokedDetails { switch json { - case .dictionary(let dict): - let team = try Serialization._StringSerializer.deserialize(dict["team"] ?? .null) - return TeamMergeRequestRevokedDetails(team: team) - default: - throw JSONSerializerError.deserializeError(type: TeamMergeRequestRevokedDetails.self, json: json) + case .dictionary(let dict): + let team = try Serialization._StringSerializer.deserialize(dict["team"] ?? .null) + return TeamMergeRequestRevokedDetails(team: team) + default: + throw JSONSerializerError.deserializeError(type: TeamMergeRequestRevokedDetails.self, json: json) } } } @@ -64210,23 +77410,21 @@ public class TeamLog { } } } - public class TeamMergeRequestRevokedTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamMergeRequestRevokedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamMergeRequestRevokedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return TeamMergeRequestRevokedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: TeamMergeRequestRevokedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TeamMergeRequestRevokedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TeamMergeRequestRevokedType.self, json: json) } } } @@ -64256,25 +77454,23 @@ public class TeamLog { } } } - public class TeamMergeRequestSentShownToPrimaryTeamDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamMergeRequestSentShownToPrimaryTeamDetails) throws -> JSON { let output = [ - "secondary_team": try Serialization._StringSerializer.serialize(value.secondaryTeam), - "sent_to": try Serialization._StringSerializer.serialize(value.sentTo), + "secondary_team": try Serialization._StringSerializer.serialize(value.secondaryTeam), + "sent_to": try Serialization._StringSerializer.serialize(value.sentTo), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamMergeRequestSentShownToPrimaryTeamDetails { switch json { - case .dictionary(let dict): - let secondaryTeam = try Serialization._StringSerializer.deserialize(dict["secondary_team"] ?? .null) - let sentTo = try Serialization._StringSerializer.deserialize(dict["sent_to"] ?? .null) - return TeamMergeRequestSentShownToPrimaryTeamDetails(secondaryTeam: secondaryTeam, sentTo: sentTo) - default: - throw JSONSerializerError.deserializeError(type: TeamMergeRequestSentShownToPrimaryTeamDetails.self, json: json) + case .dictionary(let dict): + let secondaryTeam = try Serialization._StringSerializer.deserialize(dict["secondary_team"] ?? .null) + let sentTo = try Serialization._StringSerializer.deserialize(dict["sent_to"] ?? .null) + return TeamMergeRequestSentShownToPrimaryTeamDetails(secondaryTeam: secondaryTeam, sentTo: sentTo) + default: + throw JSONSerializerError.deserializeError(type: TeamMergeRequestSentShownToPrimaryTeamDetails.self, json: json) } } } @@ -64300,23 +77496,21 @@ public class TeamLog { } } } - public class TeamMergeRequestSentShownToPrimaryTeamTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamMergeRequestSentShownToPrimaryTeamType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamMergeRequestSentShownToPrimaryTeamType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return TeamMergeRequestSentShownToPrimaryTeamType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: TeamMergeRequestSentShownToPrimaryTeamType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TeamMergeRequestSentShownToPrimaryTeamType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TeamMergeRequestSentShownToPrimaryTeamType.self, json: json) } } } @@ -64342,23 +77536,21 @@ public class TeamLog { } } } - public class TeamMergeRequestSentShownToSecondaryTeamDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamMergeRequestSentShownToSecondaryTeamDetails) throws -> JSON { let output = [ - "sent_to": try Serialization._StringSerializer.serialize(value.sentTo), + "sent_to": try Serialization._StringSerializer.serialize(value.sentTo), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamMergeRequestSentShownToSecondaryTeamDetails { switch json { - case .dictionary(let dict): - let sentTo = try Serialization._StringSerializer.deserialize(dict["sent_to"] ?? .null) - return TeamMergeRequestSentShownToSecondaryTeamDetails(sentTo: sentTo) - default: - throw JSONSerializerError.deserializeError(type: TeamMergeRequestSentShownToSecondaryTeamDetails.self, json: json) + case .dictionary(let dict): + let sentTo = try Serialization._StringSerializer.deserialize(dict["sent_to"] ?? .null) + return TeamMergeRequestSentShownToSecondaryTeamDetails(sentTo: sentTo) + default: + throw JSONSerializerError.deserializeError(type: TeamMergeRequestSentShownToSecondaryTeamDetails.self, json: json) } } } @@ -64384,23 +77576,21 @@ public class TeamLog { } } } - public class TeamMergeRequestSentShownToSecondaryTeamTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamMergeRequestSentShownToSecondaryTeamType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamMergeRequestSentShownToSecondaryTeamType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return TeamMergeRequestSentShownToSecondaryTeamType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: TeamMergeRequestSentShownToSecondaryTeamType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TeamMergeRequestSentShownToSecondaryTeamType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TeamMergeRequestSentShownToSecondaryTeamType.self, json: json) } } } @@ -64426,23 +77616,21 @@ public class TeamLog { } } } - public class TeamMergeToDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamMergeToDetails) throws -> JSON { let output = [ - "team_name": try Serialization._StringSerializer.serialize(value.teamName), + "team_name": try Serialization._StringSerializer.serialize(value.teamName), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamMergeToDetails { switch json { - case .dictionary(let dict): - let teamName = try Serialization._StringSerializer.deserialize(dict["team_name"] ?? .null) - return TeamMergeToDetails(teamName: teamName) - default: - throw JSONSerializerError.deserializeError(type: TeamMergeToDetails.self, json: json) + case .dictionary(let dict): + let teamName = try Serialization._StringSerializer.deserialize(dict["team_name"] ?? .null) + return TeamMergeToDetails(teamName: teamName) + default: + throw JSONSerializerError.deserializeError(type: TeamMergeToDetails.self, json: json) } } } @@ -64468,23 +77656,21 @@ public class TeamLog { } } } - public class TeamMergeToTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamMergeToType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamMergeToType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return TeamMergeToType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: TeamMergeToType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TeamMergeToType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TeamMergeToType.self, json: json) } } } @@ -64514,31 +77700,30 @@ public class TeamLog { } } } - public class TeamNameSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamName) throws -> JSON { let output = [ - "team_display_name": try Serialization._StringSerializer.serialize(value.teamDisplayName), - "team_legal_name": try Serialization._StringSerializer.serialize(value.teamLegalName), + "team_display_name": try Serialization._StringSerializer.serialize(value.teamDisplayName), + "team_legal_name": try Serialization._StringSerializer.serialize(value.teamLegalName), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamName { switch json { - case .dictionary(let dict): - let teamDisplayName = try Serialization._StringSerializer.deserialize(dict["team_display_name"] ?? .null) - let teamLegalName = try Serialization._StringSerializer.deserialize(dict["team_legal_name"] ?? .null) - return TeamName(teamDisplayName: teamDisplayName, teamLegalName: teamLegalName) - default: - throw JSONSerializerError.deserializeError(type: TeamName.self, json: json) + case .dictionary(let dict): + let teamDisplayName = try Serialization._StringSerializer.deserialize(dict["team_display_name"] ?? .null) + let teamLegalName = try Serialization._StringSerializer.deserialize(dict["team_legal_name"] ?? .null) + return TeamName(teamDisplayName: teamDisplayName, teamLegalName: teamLegalName) + default: + throw JSONSerializerError.deserializeError(type: TeamName.self, json: json) } } } /// Added team background to display on shared link headers. public class TeamProfileAddBackgroundDetails: CustomStringConvertible, JSONRepresentable { + func json() throws -> JSON { try TeamProfileAddBackgroundDetailsSerializer().serialize(self) } @@ -64551,20 +77736,18 @@ public class TeamLog { } } } - public class TeamProfileAddBackgroundDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamProfileAddBackgroundDetails) throws -> JSON { let output = [String: JSON]() return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamProfileAddBackgroundDetails { switch json { - case .dictionary: - return TeamProfileAddBackgroundDetails() - default: - throw JSONSerializerError.deserializeError(type: TeamProfileAddBackgroundDetails.self, json: json) + case .dictionary(_): + return TeamProfileAddBackgroundDetails() + default: + throw JSONSerializerError.deserializeError(type: TeamProfileAddBackgroundDetails.self, json: json) } } } @@ -64590,29 +77773,28 @@ public class TeamLog { } } } - public class TeamProfileAddBackgroundTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamProfileAddBackgroundType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamProfileAddBackgroundType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return TeamProfileAddBackgroundType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: TeamProfileAddBackgroundType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TeamProfileAddBackgroundType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TeamProfileAddBackgroundType.self, json: json) } } } /// Added team logo to display on shared link headers. public class TeamProfileAddLogoDetails: CustomStringConvertible, JSONRepresentable { + func json() throws -> JSON { try TeamProfileAddLogoDetailsSerializer().serialize(self) } @@ -64625,20 +77807,18 @@ public class TeamLog { } } } - public class TeamProfileAddLogoDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamProfileAddLogoDetails) throws -> JSON { let output = [String: JSON]() return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamProfileAddLogoDetails { switch json { - case .dictionary: - return TeamProfileAddLogoDetails() - default: - throw JSONSerializerError.deserializeError(type: TeamProfileAddLogoDetails.self, json: json) + case .dictionary(_): + return TeamProfileAddLogoDetails() + default: + throw JSONSerializerError.deserializeError(type: TeamProfileAddLogoDetails.self, json: json) } } } @@ -64664,29 +77844,28 @@ public class TeamLog { } } } - public class TeamProfileAddLogoTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamProfileAddLogoType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamProfileAddLogoType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return TeamProfileAddLogoType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: TeamProfileAddLogoType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TeamProfileAddLogoType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TeamProfileAddLogoType.self, json: json) } } } /// Changed team background displayed on shared link headers. public class TeamProfileChangeBackgroundDetails: CustomStringConvertible, JSONRepresentable { + func json() throws -> JSON { try TeamProfileChangeBackgroundDetailsSerializer().serialize(self) } @@ -64699,20 +77878,18 @@ public class TeamLog { } } } - public class TeamProfileChangeBackgroundDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamProfileChangeBackgroundDetails) throws -> JSON { let output = [String: JSON]() return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamProfileChangeBackgroundDetails { switch json { - case .dictionary: - return TeamProfileChangeBackgroundDetails() - default: - throw JSONSerializerError.deserializeError(type: TeamProfileChangeBackgroundDetails.self, json: json) + case .dictionary(_): + return TeamProfileChangeBackgroundDetails() + default: + throw JSONSerializerError.deserializeError(type: TeamProfileChangeBackgroundDetails.self, json: json) } } } @@ -64738,23 +77915,21 @@ public class TeamLog { } } } - public class TeamProfileChangeBackgroundTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamProfileChangeBackgroundType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamProfileChangeBackgroundType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return TeamProfileChangeBackgroundType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: TeamProfileChangeBackgroundType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TeamProfileChangeBackgroundType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TeamProfileChangeBackgroundType.self, json: json) } } } @@ -64784,25 +77959,23 @@ public class TeamLog { } } } - public class TeamProfileChangeDefaultLanguageDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamProfileChangeDefaultLanguageDetails) throws -> JSON { let output = [ - "new_value": try Serialization._StringSerializer.serialize(value.newValue), - "previous_value": try Serialization._StringSerializer.serialize(value.previousValue), + "new_value": try Serialization._StringSerializer.serialize(value.newValue), + "previous_value": try Serialization._StringSerializer.serialize(value.previousValue), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamProfileChangeDefaultLanguageDetails { switch json { - case .dictionary(let dict): - let newValue = try Serialization._StringSerializer.deserialize(dict["new_value"] ?? .null) - let previousValue = try Serialization._StringSerializer.deserialize(dict["previous_value"] ?? .null) - return TeamProfileChangeDefaultLanguageDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: TeamProfileChangeDefaultLanguageDetails.self, json: json) + case .dictionary(let dict): + let newValue = try Serialization._StringSerializer.deserialize(dict["new_value"] ?? .null) + let previousValue = try Serialization._StringSerializer.deserialize(dict["previous_value"] ?? .null) + return TeamProfileChangeDefaultLanguageDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: TeamProfileChangeDefaultLanguageDetails.self, json: json) } } } @@ -64828,29 +78001,28 @@ public class TeamLog { } } } - public class TeamProfileChangeDefaultLanguageTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamProfileChangeDefaultLanguageType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamProfileChangeDefaultLanguageType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return TeamProfileChangeDefaultLanguageType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: TeamProfileChangeDefaultLanguageType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TeamProfileChangeDefaultLanguageType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TeamProfileChangeDefaultLanguageType.self, json: json) } } } /// Changed team logo displayed on shared link headers. public class TeamProfileChangeLogoDetails: CustomStringConvertible, JSONRepresentable { + func json() throws -> JSON { try TeamProfileChangeLogoDetailsSerializer().serialize(self) } @@ -64863,20 +78035,18 @@ public class TeamLog { } } } - public class TeamProfileChangeLogoDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamProfileChangeLogoDetails) throws -> JSON { let output = [String: JSON]() return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamProfileChangeLogoDetails { switch json { - case .dictionary: - return TeamProfileChangeLogoDetails() - default: - throw JSONSerializerError.deserializeError(type: TeamProfileChangeLogoDetails.self, json: json) + case .dictionary(_): + return TeamProfileChangeLogoDetails() + default: + throw JSONSerializerError.deserializeError(type: TeamProfileChangeLogoDetails.self, json: json) } } } @@ -64902,23 +78072,21 @@ public class TeamLog { } } } - public class TeamProfileChangeLogoTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamProfileChangeLogoType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamProfileChangeLogoType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return TeamProfileChangeLogoType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: TeamProfileChangeLogoType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TeamProfileChangeLogoType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TeamProfileChangeLogoType.self, json: json) } } } @@ -64946,25 +78114,23 @@ public class TeamLog { } } } - public class TeamProfileChangeNameDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamProfileChangeNameDetails) throws -> JSON { let output = [ - "new_value": try TeamLog.TeamNameSerializer().serialize(value.newValue), - "previous_value": try NullableSerializer(TeamLog.TeamNameSerializer()).serialize(value.previousValue), + "new_value": try TeamLog.TeamNameSerializer().serialize(value.newValue), + "previous_value": try NullableSerializer(TeamLog.TeamNameSerializer()).serialize(value.previousValue), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamProfileChangeNameDetails { switch json { - case .dictionary(let dict): - let newValue = try TeamLog.TeamNameSerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try NullableSerializer(TeamLog.TeamNameSerializer()).deserialize(dict["previous_value"] ?? .null) - return TeamProfileChangeNameDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: TeamProfileChangeNameDetails.self, json: json) + case .dictionary(let dict): + let newValue = try TeamLog.TeamNameSerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try NullableSerializer(TeamLog.TeamNameSerializer()).deserialize(dict["previous_value"] ?? .null) + return TeamProfileChangeNameDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: TeamProfileChangeNameDetails.self, json: json) } } } @@ -64990,29 +78156,28 @@ public class TeamLog { } } } - public class TeamProfileChangeNameTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamProfileChangeNameType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamProfileChangeNameType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return TeamProfileChangeNameType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: TeamProfileChangeNameType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TeamProfileChangeNameType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TeamProfileChangeNameType.self, json: json) } } } /// Removed team background displayed on shared link headers. public class TeamProfileRemoveBackgroundDetails: CustomStringConvertible, JSONRepresentable { + func json() throws -> JSON { try TeamProfileRemoveBackgroundDetailsSerializer().serialize(self) } @@ -65025,20 +78190,18 @@ public class TeamLog { } } } - public class TeamProfileRemoveBackgroundDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamProfileRemoveBackgroundDetails) throws -> JSON { let output = [String: JSON]() return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamProfileRemoveBackgroundDetails { switch json { - case .dictionary: - return TeamProfileRemoveBackgroundDetails() - default: - throw JSONSerializerError.deserializeError(type: TeamProfileRemoveBackgroundDetails.self, json: json) + case .dictionary(_): + return TeamProfileRemoveBackgroundDetails() + default: + throw JSONSerializerError.deserializeError(type: TeamProfileRemoveBackgroundDetails.self, json: json) } } } @@ -65064,29 +78227,28 @@ public class TeamLog { } } } - public class TeamProfileRemoveBackgroundTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamProfileRemoveBackgroundType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamProfileRemoveBackgroundType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return TeamProfileRemoveBackgroundType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: TeamProfileRemoveBackgroundType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TeamProfileRemoveBackgroundType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TeamProfileRemoveBackgroundType.self, json: json) } } } /// Removed team logo displayed on shared link headers. public class TeamProfileRemoveLogoDetails: CustomStringConvertible, JSONRepresentable { + func json() throws -> JSON { try TeamProfileRemoveLogoDetailsSerializer().serialize(self) } @@ -65099,20 +78261,18 @@ public class TeamLog { } } } - public class TeamProfileRemoveLogoDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamProfileRemoveLogoDetails) throws -> JSON { let output = [String: JSON]() return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamProfileRemoveLogoDetails { switch json { - case .dictionary: - return TeamProfileRemoveLogoDetails() - default: - throw JSONSerializerError.deserializeError(type: TeamProfileRemoveLogoDetails.self, json: json) + case .dictionary(_): + return TeamProfileRemoveLogoDetails() + default: + throw JSONSerializerError.deserializeError(type: TeamProfileRemoveLogoDetails.self, json: json) } } } @@ -65138,23 +78298,21 @@ public class TeamLog { } } } - public class TeamProfileRemoveLogoTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamProfileRemoveLogoType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamProfileRemoveLogoType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return TeamProfileRemoveLogoType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: TeamProfileRemoveLogoType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TeamProfileRemoveLogoType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TeamProfileRemoveLogoType.self, json: json) } } } @@ -65180,42 +78338,40 @@ public class TeamLog { } } } - public class TeamSelectiveSyncPolicySerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamSelectiveSyncPolicy) throws -> JSON { switch value { - case .disabled: - var d = [String: JSON]() - d[".tag"] = .str("disabled") - return .dictionary(d) - case .enabled: - var d = [String: JSON]() - d[".tag"] = .str("enabled") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) + case .disabled: + var d = [String: JSON]() + d[".tag"] = .str("disabled") + return .dictionary(d) + case .enabled: + var d = [String: JSON]() + d[".tag"] = .str("enabled") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) } } - public func deserialize(_ json: JSON) throws -> TeamSelectiveSyncPolicy { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "disabled": - return TeamSelectiveSyncPolicy.disabled - case "enabled": - return TeamSelectiveSyncPolicy.enabled - case "other": - return TeamSelectiveSyncPolicy.other + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "disabled": + return TeamSelectiveSyncPolicy.disabled + case "enabled": + return TeamSelectiveSyncPolicy.enabled + case "other": + return TeamSelectiveSyncPolicy.other + default: + return TeamSelectiveSyncPolicy.other + } default: - return TeamSelectiveSyncPolicy.other - } - default: - throw JSONSerializerError.deserializeError(type: TeamSelectiveSyncPolicy.self, json: json) + throw JSONSerializerError.deserializeError(type: TeamSelectiveSyncPolicy.self, json: json) } } } @@ -65243,25 +78399,23 @@ public class TeamLog { } } } - public class TeamSelectiveSyncPolicyChangedDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamSelectiveSyncPolicyChangedDetails) throws -> JSON { let output = [ - "new_value": try TeamLog.TeamSelectiveSyncPolicySerializer().serialize(value.newValue), - "previous_value": try TeamLog.TeamSelectiveSyncPolicySerializer().serialize(value.previousValue), + "new_value": try TeamLog.TeamSelectiveSyncPolicySerializer().serialize(value.newValue), + "previous_value": try TeamLog.TeamSelectiveSyncPolicySerializer().serialize(value.previousValue), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamSelectiveSyncPolicyChangedDetails { switch json { - case .dictionary(let dict): - let newValue = try TeamLog.TeamSelectiveSyncPolicySerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try TeamLog.TeamSelectiveSyncPolicySerializer().deserialize(dict["previous_value"] ?? .null) - return TeamSelectiveSyncPolicyChangedDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: TeamSelectiveSyncPolicyChangedDetails.self, json: json) + case .dictionary(let dict): + let newValue = try TeamLog.TeamSelectiveSyncPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try TeamLog.TeamSelectiveSyncPolicySerializer().deserialize(dict["previous_value"] ?? .null) + return TeamSelectiveSyncPolicyChangedDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: TeamSelectiveSyncPolicyChangedDetails.self, json: json) } } } @@ -65287,23 +78441,21 @@ public class TeamLog { } } } - public class TeamSelectiveSyncPolicyChangedTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamSelectiveSyncPolicyChangedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamSelectiveSyncPolicyChangedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return TeamSelectiveSyncPolicyChangedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: TeamSelectiveSyncPolicyChangedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TeamSelectiveSyncPolicyChangedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TeamSelectiveSyncPolicyChangedType.self, json: json) } } } @@ -65331,25 +78483,23 @@ public class TeamLog { } } } - public class TeamSelectiveSyncSettingsChangedDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamSelectiveSyncSettingsChangedDetails) throws -> JSON { let output = [ - "previous_value": try Files.SyncSettingSerializer().serialize(value.previousValue), - "new_value": try Files.SyncSettingSerializer().serialize(value.newValue), + "previous_value": try Files.SyncSettingSerializer().serialize(value.previousValue), + "new_value": try Files.SyncSettingSerializer().serialize(value.newValue), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamSelectiveSyncSettingsChangedDetails { switch json { - case .dictionary(let dict): - let previousValue = try Files.SyncSettingSerializer().deserialize(dict["previous_value"] ?? .null) - let newValue = try Files.SyncSettingSerializer().deserialize(dict["new_value"] ?? .null) - return TeamSelectiveSyncSettingsChangedDetails(previousValue: previousValue, newValue: newValue) - default: - throw JSONSerializerError.deserializeError(type: TeamSelectiveSyncSettingsChangedDetails.self, json: json) + case .dictionary(let dict): + let previousValue = try Files.SyncSettingSerializer().deserialize(dict["previous_value"] ?? .null) + let newValue = try Files.SyncSettingSerializer().deserialize(dict["new_value"] ?? .null) + return TeamSelectiveSyncSettingsChangedDetails(previousValue: previousValue, newValue: newValue) + default: + throw JSONSerializerError.deserializeError(type: TeamSelectiveSyncSettingsChangedDetails.self, json: json) } } } @@ -65375,23 +78525,21 @@ public class TeamLog { } } } - public class TeamSelectiveSyncSettingsChangedTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamSelectiveSyncSettingsChangedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamSelectiveSyncSettingsChangedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return TeamSelectiveSyncSettingsChangedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: TeamSelectiveSyncSettingsChangedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TeamSelectiveSyncSettingsChangedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TeamSelectiveSyncSettingsChangedType.self, json: json) } } } @@ -65399,10 +78547,10 @@ public class TeamLog { /// Edited the approved list for sharing externally. public class TeamSharingWhitelistSubjectsChangedDetails: CustomStringConvertible, JSONRepresentable { /// Domains or emails added to the approved list for sharing externally. - public let addedWhitelistSubjects: [String] + public let addedWhitelistSubjects: Array /// Domains or emails removed from the approved list for sharing externally. - public let removedWhitelistSubjects: [String] - public init(addedWhitelistSubjects: [String], removedWhitelistSubjects: [String]) { + public let removedWhitelistSubjects: Array + public init(addedWhitelistSubjects: Array, removedWhitelistSubjects: Array) { arrayValidator(itemValidator: stringValidator())(addedWhitelistSubjects) self.addedWhitelistSubjects = addedWhitelistSubjects arrayValidator(itemValidator: stringValidator())(removedWhitelistSubjects) @@ -65421,28 +78569,23 @@ public class TeamLog { } } } - public class TeamSharingWhitelistSubjectsChangedDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamSharingWhitelistSubjectsChangedDetails) throws -> JSON { let output = [ - "added_whitelist_subjects": try ArraySerializer(Serialization._StringSerializer).serialize(value.addedWhitelistSubjects), - "removed_whitelist_subjects": try ArraySerializer(Serialization._StringSerializer).serialize(value.removedWhitelistSubjects), + "added_whitelist_subjects": try ArraySerializer(Serialization._StringSerializer).serialize(value.addedWhitelistSubjects), + "removed_whitelist_subjects": try ArraySerializer(Serialization._StringSerializer).serialize(value.removedWhitelistSubjects), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamSharingWhitelistSubjectsChangedDetails { switch json { - case .dictionary(let dict): - let addedWhitelistSubjects = try ArraySerializer(Serialization._StringSerializer).deserialize(dict["added_whitelist_subjects"] ?? .null) - let removedWhitelistSubjects = try ArraySerializer(Serialization._StringSerializer).deserialize(dict["removed_whitelist_subjects"] ?? .null) - return TeamSharingWhitelistSubjectsChangedDetails( - addedWhitelistSubjects: addedWhitelistSubjects, - removedWhitelistSubjects: removedWhitelistSubjects - ) - default: - throw JSONSerializerError.deserializeError(type: TeamSharingWhitelistSubjectsChangedDetails.self, json: json) + case .dictionary(let dict): + let addedWhitelistSubjects = try ArraySerializer(Serialization._StringSerializer).deserialize(dict["added_whitelist_subjects"] ?? .null) + let removedWhitelistSubjects = try ArraySerializer(Serialization._StringSerializer).deserialize(dict["removed_whitelist_subjects"] ?? .null) + return TeamSharingWhitelistSubjectsChangedDetails(addedWhitelistSubjects: addedWhitelistSubjects, removedWhitelistSubjects: removedWhitelistSubjects) + default: + throw JSONSerializerError.deserializeError(type: TeamSharingWhitelistSubjectsChangedDetails.self, json: json) } } } @@ -65468,29 +78611,178 @@ public class TeamLog { } } } - public class TeamSharingWhitelistSubjectsChangedTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TeamSharingWhitelistSubjectsChangedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TeamSharingWhitelistSubjectsChangedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return TeamSharingWhitelistSubjectsChangedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: TeamSharingWhitelistSubjectsChangedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TeamSharingWhitelistSubjectsChangedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TeamSharingWhitelistSubjectsChangedType.self, json: json) + } + } + } + + /// Created team storage report. + public class TeamStorageCreateReportDetails: CustomStringConvertible, JSONRepresentable { + + func json() throws -> JSON { + try TeamStorageCreateReportDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try TeamStorageCreateReportDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for TeamStorageCreateReportDetails: \(error)" + } + } + } + public class TeamStorageCreateReportDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: TeamStorageCreateReportDetails) throws -> JSON { + let output = [String: JSON]() + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> TeamStorageCreateReportDetails { + switch json { + case .dictionary(_): + return TeamStorageCreateReportDetails() + default: + throw JSONSerializerError.deserializeError(type: TeamStorageCreateReportDetails.self, json: json) + } + } + } + + /// Couldn't generate team storage report. + public class TeamStorageCreateReportFailedDetails: CustomStringConvertible, JSONRepresentable { + /// Failure reason. + public let failureReason: Team.TeamReportFailureReason + public init(failureReason: Team.TeamReportFailureReason) { + self.failureReason = failureReason + } + + func json() throws -> JSON { + try TeamStorageCreateReportFailedDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try TeamStorageCreateReportFailedDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for TeamStorageCreateReportFailedDetails: \(error)" + } + } + } + public class TeamStorageCreateReportFailedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: TeamStorageCreateReportFailedDetails) throws -> JSON { + let output = [ + "failure_reason": try Team.TeamReportFailureReasonSerializer().serialize(value.failureReason), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> TeamStorageCreateReportFailedDetails { + switch json { + case .dictionary(let dict): + let failureReason = try Team.TeamReportFailureReasonSerializer().deserialize(dict["failure_reason"] ?? .null) + return TeamStorageCreateReportFailedDetails(failureReason: failureReason) + default: + throw JSONSerializerError.deserializeError(type: TeamStorageCreateReportFailedDetails.self, json: json) + } + } + } + + /// The TeamStorageCreateReportFailedType struct + public class TeamStorageCreateReportFailedType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try TeamStorageCreateReportFailedTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try TeamStorageCreateReportFailedTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for TeamStorageCreateReportFailedType: \(error)" + } + } + } + public class TeamStorageCreateReportFailedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: TeamStorageCreateReportFailedType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> TeamStorageCreateReportFailedType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TeamStorageCreateReportFailedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TeamStorageCreateReportFailedType.self, json: json) + } + } + } + + /// The TeamStorageCreateReportType struct + public class TeamStorageCreateReportType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try TeamStorageCreateReportTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try TeamStorageCreateReportTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for TeamStorageCreateReportType: \(error)" + } + } + } + public class TeamStorageCreateReportTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: TeamStorageCreateReportType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> TeamStorageCreateReportType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TeamStorageCreateReportType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TeamStorageCreateReportType.self, json: json) } } } - /// Added backup phone for two-step verification. + /// Added backup phone for two-factor authentication. public class TfaAddBackupPhoneDetails: CustomStringConvertible, JSONRepresentable { + func json() throws -> JSON { try TfaAddBackupPhoneDetailsSerializer().serialize(self) } @@ -65503,20 +78795,18 @@ public class TeamLog { } } } - public class TfaAddBackupPhoneDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TfaAddBackupPhoneDetails) throws -> JSON { let output = [String: JSON]() return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TfaAddBackupPhoneDetails { switch json { - case .dictionary: - return TfaAddBackupPhoneDetails() - default: - throw JSONSerializerError.deserializeError(type: TfaAddBackupPhoneDetails.self, json: json) + case .dictionary(_): + return TfaAddBackupPhoneDetails() + default: + throw JSONSerializerError.deserializeError(type: TfaAddBackupPhoneDetails.self, json: json) } } } @@ -65542,29 +78832,28 @@ public class TeamLog { } } } - public class TfaAddBackupPhoneTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TfaAddBackupPhoneType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TfaAddBackupPhoneType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return TfaAddBackupPhoneType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: TfaAddBackupPhoneType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TfaAddBackupPhoneType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TfaAddBackupPhoneType.self, json: json) } } } /// Added members to two factor authentication exception list. public class TfaAddExceptionDetails: CustomStringConvertible, JSONRepresentable { + func json() throws -> JSON { try TfaAddExceptionDetailsSerializer().serialize(self) } @@ -65577,20 +78866,18 @@ public class TeamLog { } } } - public class TfaAddExceptionDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TfaAddExceptionDetails) throws -> JSON { let output = [String: JSON]() return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TfaAddExceptionDetails { switch json { - case .dictionary: - return TfaAddExceptionDetails() - default: - throw JSONSerializerError.deserializeError(type: TfaAddExceptionDetails.self, json: json) + case .dictionary(_): + return TfaAddExceptionDetails() + default: + throw JSONSerializerError.deserializeError(type: TfaAddExceptionDetails.self, json: json) } } } @@ -65616,29 +78903,28 @@ public class TeamLog { } } } - public class TfaAddExceptionTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TfaAddExceptionType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TfaAddExceptionType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return TfaAddExceptionType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: TfaAddExceptionType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TfaAddExceptionType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TfaAddExceptionType.self, json: json) } } } - /// Added security key for two-step verification. + /// Added security key for two-factor authentication. public class TfaAddSecurityKeyDetails: CustomStringConvertible, JSONRepresentable { + func json() throws -> JSON { try TfaAddSecurityKeyDetailsSerializer().serialize(self) } @@ -65651,20 +78937,18 @@ public class TeamLog { } } } - public class TfaAddSecurityKeyDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TfaAddSecurityKeyDetails) throws -> JSON { let output = [String: JSON]() return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TfaAddSecurityKeyDetails { switch json { - case .dictionary: - return TfaAddSecurityKeyDetails() - default: - throw JSONSerializerError.deserializeError(type: TfaAddSecurityKeyDetails.self, json: json) + case .dictionary(_): + return TfaAddSecurityKeyDetails() + default: + throw JSONSerializerError.deserializeError(type: TfaAddSecurityKeyDetails.self, json: json) } } } @@ -65690,29 +78974,28 @@ public class TeamLog { } } } - public class TfaAddSecurityKeyTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TfaAddSecurityKeyType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TfaAddSecurityKeyType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return TfaAddSecurityKeyType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: TfaAddSecurityKeyType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TfaAddSecurityKeyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TfaAddSecurityKeyType.self, json: json) } } } - /// Changed backup phone for two-step verification. + /// Changed backup phone for two-factor authentication. public class TfaChangeBackupPhoneDetails: CustomStringConvertible, JSONRepresentable { + func json() throws -> JSON { try TfaChangeBackupPhoneDetailsSerializer().serialize(self) } @@ -65725,20 +79008,18 @@ public class TeamLog { } } } - public class TfaChangeBackupPhoneDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TfaChangeBackupPhoneDetails) throws -> JSON { let output = [String: JSON]() return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TfaChangeBackupPhoneDetails { switch json { - case .dictionary: - return TfaChangeBackupPhoneDetails() - default: - throw JSONSerializerError.deserializeError(type: TfaChangeBackupPhoneDetails.self, json: json) + case .dictionary(_): + return TfaChangeBackupPhoneDetails() + default: + throw JSONSerializerError.deserializeError(type: TfaChangeBackupPhoneDetails.self, json: json) } } } @@ -65764,28 +79045,26 @@ public class TeamLog { } } } - public class TfaChangeBackupPhoneTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TfaChangeBackupPhoneType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TfaChangeBackupPhoneType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return TfaChangeBackupPhoneType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: TfaChangeBackupPhoneType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TfaChangeBackupPhoneType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TfaChangeBackupPhoneType.self, json: json) } } } - /// Changed two-step verification setting for team. + /// Changed two-factor authentication setting for team. public class TfaChangePolicyDetails: CustomStringConvertible, JSONRepresentable { /// New change policy. public let newValue: TeamPolicies.TwoStepVerificationPolicy @@ -65808,25 +79087,23 @@ public class TeamLog { } } } - public class TfaChangePolicyDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TfaChangePolicyDetails) throws -> JSON { let output = [ - "new_value": try TeamPolicies.TwoStepVerificationPolicySerializer().serialize(value.newValue), - "previous_value": try NullableSerializer(TeamPolicies.TwoStepVerificationPolicySerializer()).serialize(value.previousValue), + "new_value": try TeamPolicies.TwoStepVerificationPolicySerializer().serialize(value.newValue), + "previous_value": try NullableSerializer(TeamPolicies.TwoStepVerificationPolicySerializer()).serialize(value.previousValue), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TfaChangePolicyDetails { switch json { - case .dictionary(let dict): - let newValue = try TeamPolicies.TwoStepVerificationPolicySerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try NullableSerializer(TeamPolicies.TwoStepVerificationPolicySerializer()).deserialize(dict["previous_value"] ?? .null) - return TfaChangePolicyDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: TfaChangePolicyDetails.self, json: json) + case .dictionary(let dict): + let newValue = try TeamPolicies.TwoStepVerificationPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try NullableSerializer(TeamPolicies.TwoStepVerificationPolicySerializer()).deserialize(dict["previous_value"] ?? .null) + return TfaChangePolicyDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: TfaChangePolicyDetails.self, json: json) } } } @@ -65852,28 +79129,26 @@ public class TeamLog { } } } - public class TfaChangePolicyTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TfaChangePolicyType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TfaChangePolicyType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return TfaChangePolicyType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: TfaChangePolicyType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TfaChangePolicyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TfaChangePolicyType.self, json: json) } } } - /// Enabled/disabled/changed two-step verification setting. + /// Enabled/disabled/changed two-factor authentication setting. public class TfaChangeStatusDetails: CustomStringConvertible, JSONRepresentable { /// The new two factor authentication configuration. public let newValue: TeamLog.TfaConfiguration @@ -65900,27 +79175,25 @@ public class TeamLog { } } } - public class TfaChangeStatusDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TfaChangeStatusDetails) throws -> JSON { let output = [ - "new_value": try TeamLog.TfaConfigurationSerializer().serialize(value.newValue), - "previous_value": try NullableSerializer(TeamLog.TfaConfigurationSerializer()).serialize(value.previousValue), - "used_rescue_code": try NullableSerializer(Serialization._BoolSerializer).serialize(value.usedRescueCode), + "new_value": try TeamLog.TfaConfigurationSerializer().serialize(value.newValue), + "previous_value": try NullableSerializer(TeamLog.TfaConfigurationSerializer()).serialize(value.previousValue), + "used_rescue_code": try NullableSerializer(Serialization._BoolSerializer).serialize(value.usedRescueCode), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TfaChangeStatusDetails { switch json { - case .dictionary(let dict): - let newValue = try TeamLog.TfaConfigurationSerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try NullableSerializer(TeamLog.TfaConfigurationSerializer()).deserialize(dict["previous_value"] ?? .null) - let usedRescueCode = try NullableSerializer(Serialization._BoolSerializer).deserialize(dict["used_rescue_code"] ?? .null) - return TfaChangeStatusDetails(newValue: newValue, previousValue: previousValue, usedRescueCode: usedRescueCode) - default: - throw JSONSerializerError.deserializeError(type: TfaChangeStatusDetails.self, json: json) + case .dictionary(let dict): + let newValue = try TeamLog.TfaConfigurationSerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try NullableSerializer(TeamLog.TfaConfigurationSerializer()).deserialize(dict["previous_value"] ?? .null) + let usedRescueCode = try NullableSerializer(Serialization._BoolSerializer).deserialize(dict["used_rescue_code"] ?? .null) + return TfaChangeStatusDetails(newValue: newValue, previousValue: previousValue, usedRescueCode: usedRescueCode) + default: + throw JSONSerializerError.deserializeError(type: TfaChangeStatusDetails.self, json: json) } } } @@ -65946,23 +79219,21 @@ public class TeamLog { } } } - public class TfaChangeStatusTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TfaChangeStatusType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TfaChangeStatusType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return TfaChangeStatusType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: TfaChangeStatusType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TfaChangeStatusType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TfaChangeStatusType.self, json: json) } } } @@ -65992,60 +79263,59 @@ public class TeamLog { } } } - public class TfaConfigurationSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TfaConfiguration) throws -> JSON { switch value { - case .authenticator: - var d = [String: JSON]() - d[".tag"] = .str("authenticator") - return .dictionary(d) - case .disabled: - var d = [String: JSON]() - d[".tag"] = .str("disabled") - return .dictionary(d) - case .enabled: - var d = [String: JSON]() - d[".tag"] = .str("enabled") - return .dictionary(d) - case .sms: - var d = [String: JSON]() - d[".tag"] = .str("sms") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) + case .authenticator: + var d = [String: JSON]() + d[".tag"] = .str("authenticator") + return .dictionary(d) + case .disabled: + var d = [String: JSON]() + d[".tag"] = .str("disabled") + return .dictionary(d) + case .enabled: + var d = [String: JSON]() + d[".tag"] = .str("enabled") + return .dictionary(d) + case .sms: + var d = [String: JSON]() + d[".tag"] = .str("sms") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) } } - public func deserialize(_ json: JSON) throws -> TfaConfiguration { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "authenticator": - return TfaConfiguration.authenticator - case "disabled": - return TfaConfiguration.disabled - case "enabled": - return TfaConfiguration.enabled - case "sms": - return TfaConfiguration.sms - case "other": - return TfaConfiguration.other + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "authenticator": + return TfaConfiguration.authenticator + case "disabled": + return TfaConfiguration.disabled + case "enabled": + return TfaConfiguration.enabled + case "sms": + return TfaConfiguration.sms + case "other": + return TfaConfiguration.other + default: + return TfaConfiguration.other + } default: - return TfaConfiguration.other - } - default: - throw JSONSerializerError.deserializeError(type: TfaConfiguration.self, json: json) + throw JSONSerializerError.deserializeError(type: TfaConfiguration.self, json: json) } } } - /// Removed backup phone for two-step verification. + /// Removed backup phone for two-factor authentication. public class TfaRemoveBackupPhoneDetails: CustomStringConvertible, JSONRepresentable { + func json() throws -> JSON { try TfaRemoveBackupPhoneDetailsSerializer().serialize(self) } @@ -66058,20 +79328,18 @@ public class TeamLog { } } } - public class TfaRemoveBackupPhoneDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TfaRemoveBackupPhoneDetails) throws -> JSON { let output = [String: JSON]() return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TfaRemoveBackupPhoneDetails { switch json { - case .dictionary: - return TfaRemoveBackupPhoneDetails() - default: - throw JSONSerializerError.deserializeError(type: TfaRemoveBackupPhoneDetails.self, json: json) + case .dictionary(_): + return TfaRemoveBackupPhoneDetails() + default: + throw JSONSerializerError.deserializeError(type: TfaRemoveBackupPhoneDetails.self, json: json) } } } @@ -66097,29 +79365,28 @@ public class TeamLog { } } } - public class TfaRemoveBackupPhoneTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TfaRemoveBackupPhoneType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TfaRemoveBackupPhoneType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return TfaRemoveBackupPhoneType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: TfaRemoveBackupPhoneType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TfaRemoveBackupPhoneType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TfaRemoveBackupPhoneType.self, json: json) } } } /// Removed members from two factor authentication exception list. public class TfaRemoveExceptionDetails: CustomStringConvertible, JSONRepresentable { + func json() throws -> JSON { try TfaRemoveExceptionDetailsSerializer().serialize(self) } @@ -66132,20 +79399,18 @@ public class TeamLog { } } } - public class TfaRemoveExceptionDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TfaRemoveExceptionDetails) throws -> JSON { let output = [String: JSON]() return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TfaRemoveExceptionDetails { switch json { - case .dictionary: - return TfaRemoveExceptionDetails() - default: - throw JSONSerializerError.deserializeError(type: TfaRemoveExceptionDetails.self, json: json) + case .dictionary(_): + return TfaRemoveExceptionDetails() + default: + throw JSONSerializerError.deserializeError(type: TfaRemoveExceptionDetails.self, json: json) } } } @@ -66171,29 +79436,28 @@ public class TeamLog { } } } - public class TfaRemoveExceptionTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TfaRemoveExceptionType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TfaRemoveExceptionType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return TfaRemoveExceptionType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: TfaRemoveExceptionType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TfaRemoveExceptionType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TfaRemoveExceptionType.self, json: json) } } } - /// Removed security key for two-step verification. + /// Removed security key for two-factor authentication. public class TfaRemoveSecurityKeyDetails: CustomStringConvertible, JSONRepresentable { + func json() throws -> JSON { try TfaRemoveSecurityKeyDetailsSerializer().serialize(self) } @@ -66206,20 +79470,18 @@ public class TeamLog { } } } - public class TfaRemoveSecurityKeyDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TfaRemoveSecurityKeyDetails) throws -> JSON { let output = [String: JSON]() return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TfaRemoveSecurityKeyDetails { switch json { - case .dictionary: - return TfaRemoveSecurityKeyDetails() - default: - throw JSONSerializerError.deserializeError(type: TfaRemoveSecurityKeyDetails.self, json: json) + case .dictionary(_): + return TfaRemoveSecurityKeyDetails() + default: + throw JSONSerializerError.deserializeError(type: TfaRemoveSecurityKeyDetails.self, json: json) } } } @@ -66245,29 +79507,28 @@ public class TeamLog { } } } - public class TfaRemoveSecurityKeyTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TfaRemoveSecurityKeyType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TfaRemoveSecurityKeyType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return TfaRemoveSecurityKeyType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: TfaRemoveSecurityKeyType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TfaRemoveSecurityKeyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TfaRemoveSecurityKeyType.self, json: json) } } } - /// Reset two-step verification for team member. + /// Reset two-factor authentication for team member. public class TfaResetDetails: CustomStringConvertible, JSONRepresentable { + func json() throws -> JSON { try TfaResetDetailsSerializer().serialize(self) } @@ -66280,20 +79541,18 @@ public class TeamLog { } } } - public class TfaResetDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TfaResetDetails) throws -> JSON { let output = [String: JSON]() return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TfaResetDetails { switch json { - case .dictionary: - return TfaResetDetails() - default: - throw JSONSerializerError.deserializeError(type: TfaResetDetails.self, json: json) + case .dictionary(_): + return TfaResetDetails() + default: + throw JSONSerializerError.deserializeError(type: TfaResetDetails.self, json: json) } } } @@ -66319,23 +79578,21 @@ public class TeamLog { } } } - public class TfaResetTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TfaResetType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TfaResetType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return TfaResetType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: TfaResetType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TfaResetType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TfaResetType.self, json: json) } } } @@ -66373,78 +79630,219 @@ public class TeamLog { } } } - public class TimeUnitSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TimeUnit) throws -> JSON { switch value { - case .days: - var d = [String: JSON]() - d[".tag"] = .str("days") - return .dictionary(d) - case .hours: - var d = [String: JSON]() - d[".tag"] = .str("hours") - return .dictionary(d) - case .milliseconds: - var d = [String: JSON]() - d[".tag"] = .str("milliseconds") - return .dictionary(d) - case .minutes: - var d = [String: JSON]() - d[".tag"] = .str("minutes") - return .dictionary(d) - case .months: - var d = [String: JSON]() - d[".tag"] = .str("months") - return .dictionary(d) - case .seconds: - var d = [String: JSON]() - d[".tag"] = .str("seconds") - return .dictionary(d) - case .weeks: - var d = [String: JSON]() - d[".tag"] = .str("weeks") - return .dictionary(d) - case .years: - var d = [String: JSON]() - d[".tag"] = .str("years") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) + case .days: + var d = [String: JSON]() + d[".tag"] = .str("days") + return .dictionary(d) + case .hours: + var d = [String: JSON]() + d[".tag"] = .str("hours") + return .dictionary(d) + case .milliseconds: + var d = [String: JSON]() + d[".tag"] = .str("milliseconds") + return .dictionary(d) + case .minutes: + var d = [String: JSON]() + d[".tag"] = .str("minutes") + return .dictionary(d) + case .months: + var d = [String: JSON]() + d[".tag"] = .str("months") + return .dictionary(d) + case .seconds: + var d = [String: JSON]() + d[".tag"] = .str("seconds") + return .dictionary(d) + case .weeks: + var d = [String: JSON]() + d[".tag"] = .str("weeks") + return .dictionary(d) + case .years: + var d = [String: JSON]() + d[".tag"] = .str("years") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) } } - public func deserialize(_ json: JSON) throws -> TimeUnit { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "days": - return TimeUnit.days - case "hours": - return TimeUnit.hours - case "milliseconds": - return TimeUnit.milliseconds - case "minutes": - return TimeUnit.minutes - case "months": - return TimeUnit.months - case "seconds": - return TimeUnit.seconds - case "weeks": - return TimeUnit.weeks - case "years": - return TimeUnit.years - case "other": - return TimeUnit.other - default: - return TimeUnit.other - } - default: - throw JSONSerializerError.deserializeError(type: TimeUnit.self, json: json) + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "days": + return TimeUnit.days + case "hours": + return TimeUnit.hours + case "milliseconds": + return TimeUnit.milliseconds + case "minutes": + return TimeUnit.minutes + case "months": + return TimeUnit.months + case "seconds": + return TimeUnit.seconds + case "weeks": + return TimeUnit.weeks + case "years": + return TimeUnit.years + case "other": + return TimeUnit.other + default: + return TimeUnit.other + } + default: + throw JSONSerializerError.deserializeError(type: TimeUnit.self, json: json) + } + } + } + + /// Policy for deciding whether members can edit team folders at the top level of the team space + public enum TopLevelContentPolicy: CustomStringConvertible, JSONRepresentable { + /// An unspecified error. + case adminsOnly + /// An unspecified error. + case everyone + /// An unspecified error. + case other + + func json() throws -> JSON { + try TopLevelContentPolicySerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try TopLevelContentPolicySerializer().serialize(self)))" + } catch { + return "Failed to generate description for TopLevelContentPolicy: \(error)" + } + } + } + public class TopLevelContentPolicySerializer: JSONSerializer { + public init() { } + public func serialize(_ value: TopLevelContentPolicy) throws -> JSON { + switch value { + case .adminsOnly: + var d = [String: JSON]() + d[".tag"] = .str("admins_only") + return .dictionary(d) + case .everyone: + var d = [String: JSON]() + d[".tag"] = .str("everyone") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + public func deserialize(_ json: JSON) throws -> TopLevelContentPolicy { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "admins_only": + return TopLevelContentPolicy.adminsOnly + case "everyone": + return TopLevelContentPolicy.everyone + case "other": + return TopLevelContentPolicy.other + default: + return TopLevelContentPolicy.other + } + default: + throw JSONSerializerError.deserializeError(type: TopLevelContentPolicy.self, json: json) + } + } + } + + /// Changed top level content setting for team. + public class TopLevelContentPolicyChangedDetails: CustomStringConvertible, JSONRepresentable { + /// To. + public let newValue: TeamLog.TopLevelContentPolicy + /// From. + public let previousValue: TeamLog.TopLevelContentPolicy + public init(newValue: TeamLog.TopLevelContentPolicy, previousValue: TeamLog.TopLevelContentPolicy) { + self.newValue = newValue + self.previousValue = previousValue + } + + func json() throws -> JSON { + try TopLevelContentPolicyChangedDetailsSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try TopLevelContentPolicyChangedDetailsSerializer().serialize(self)))" + } catch { + return "Failed to generate description for TopLevelContentPolicyChangedDetails: \(error)" + } + } + } + public class TopLevelContentPolicyChangedDetailsSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: TopLevelContentPolicyChangedDetails) throws -> JSON { + let output = [ + "new_value": try TeamLog.TopLevelContentPolicySerializer().serialize(value.newValue), + "previous_value": try TeamLog.TopLevelContentPolicySerializer().serialize(value.previousValue), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> TopLevelContentPolicyChangedDetails { + switch json { + case .dictionary(let dict): + let newValue = try TeamLog.TopLevelContentPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try TeamLog.TopLevelContentPolicySerializer().deserialize(dict["previous_value"] ?? .null) + return TopLevelContentPolicyChangedDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: TopLevelContentPolicyChangedDetails.self, json: json) + } + } + } + + /// The TopLevelContentPolicyChangedType struct + public class TopLevelContentPolicyChangedType: CustomStringConvertible, JSONRepresentable { + /// (no description) + public let description_: String + public init(description_: String) { + stringValidator()(description_) + self.description_ = description_ + } + + func json() throws -> JSON { + try TopLevelContentPolicyChangedTypeSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try TopLevelContentPolicyChangedTypeSerializer().serialize(self)))" + } catch { + return "Failed to generate description for TopLevelContentPolicyChangedType: \(error)" + } + } + } + public class TopLevelContentPolicyChangedTypeSerializer: JSONSerializer { + public init() { } + public func serialize(_ value: TopLevelContentPolicyChangedType) throws -> JSON { + let output = [ + "description": try Serialization._StringSerializer.serialize(value.description_), + ] + return .dictionary(output) + } + public func deserialize(_ json: JSON) throws -> TopLevelContentPolicyChangedType { + switch json { + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TopLevelContentPolicyChangedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TopLevelContentPolicyChangedType.self, json: json) } } } @@ -66455,18 +79853,13 @@ public class TeamLog { public let trustedNonTeamMemberType: TeamLog.TrustedNonTeamMemberType /// Details about this user's trusted team. public let team: TeamLog.TeamLogInfo? - public init( - trustedNonTeamMemberType: TeamLog.TrustedNonTeamMemberType, - accountId: String? = nil, - displayName: String? = nil, - email: String? = nil, - team: TeamLog.TeamLogInfo? = nil - ) { + public init(trustedNonTeamMemberType: TeamLog.TrustedNonTeamMemberType, accountId: String? = nil, displayName: String? = nil, email: String? = nil, team: TeamLog.TeamLogInfo? = nil) { self.trustedNonTeamMemberType = trustedNonTeamMemberType self.team = team super.init(accountId: accountId, displayName: displayName, email: email) } + public override var description: String { do { return "\(SerializeUtil.prepareJSONForSerialization(try TrustedNonTeamMemberLogInfoSerializer().serialize(self)))" @@ -66475,37 +79868,29 @@ public class TeamLog { } } } - public class TrustedNonTeamMemberLogInfoSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TrustedNonTeamMemberLogInfo) throws -> JSON { let output = [ - "trusted_non_team_member_type": try TeamLog.TrustedNonTeamMemberTypeSerializer().serialize(value.trustedNonTeamMemberType), - "account_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.accountId), - "display_name": try NullableSerializer(Serialization._StringSerializer).serialize(value.displayName), - "email": try NullableSerializer(Serialization._StringSerializer).serialize(value.email), - "team": try NullableSerializer(TeamLog.TeamLogInfoSerializer()).serialize(value.team), + "trusted_non_team_member_type": try TeamLog.TrustedNonTeamMemberTypeSerializer().serialize(value.trustedNonTeamMemberType), + "account_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.accountId), + "display_name": try NullableSerializer(Serialization._StringSerializer).serialize(value.displayName), + "email": try NullableSerializer(Serialization._StringSerializer).serialize(value.email), + "team": try NullableSerializer(TeamLog.TeamLogInfoSerializer()).serialize(value.team), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TrustedNonTeamMemberLogInfo { switch json { - case .dictionary(let dict): - let trustedNonTeamMemberType = try TeamLog.TrustedNonTeamMemberTypeSerializer().deserialize(dict["trusted_non_team_member_type"] ?? .null) - let accountId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["account_id"] ?? .null) - let displayName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["display_name"] ?? .null) - let email = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["email"] ?? .null) - let team = try NullableSerializer(TeamLog.TeamLogInfoSerializer()).deserialize(dict["team"] ?? .null) - return TrustedNonTeamMemberLogInfo( - trustedNonTeamMemberType: trustedNonTeamMemberType, - accountId: accountId, - displayName: displayName, - email: email, - team: team - ) - default: - throw JSONSerializerError.deserializeError(type: TrustedNonTeamMemberLogInfo.self, json: json) + case .dictionary(let dict): + let trustedNonTeamMemberType = try TeamLog.TrustedNonTeamMemberTypeSerializer().deserialize(dict["trusted_non_team_member_type"] ?? .null) + let accountId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["account_id"] ?? .null) + let displayName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["display_name"] ?? .null) + let email = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["email"] ?? .null) + let team = try NullableSerializer(TeamLog.TeamLogInfoSerializer()).deserialize(dict["team"] ?? .null) + return TrustedNonTeamMemberLogInfo(trustedNonTeamMemberType: trustedNonTeamMemberType, accountId: accountId, displayName: displayName, email: email, team: team) + default: + throw JSONSerializerError.deserializeError(type: TrustedNonTeamMemberLogInfo.self, json: json) } } } @@ -66531,42 +79916,40 @@ public class TeamLog { } } } - public class TrustedNonTeamMemberTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TrustedNonTeamMemberType) throws -> JSON { switch value { - case .enterpriseAdmin: - var d = [String: JSON]() - d[".tag"] = .str("enterprise_admin") - return .dictionary(d) - case .multiInstanceAdmin: - var d = [String: JSON]() - d[".tag"] = .str("multi_instance_admin") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) + case .enterpriseAdmin: + var d = [String: JSON]() + d[".tag"] = .str("enterprise_admin") + return .dictionary(d) + case .multiInstanceAdmin: + var d = [String: JSON]() + d[".tag"] = .str("multi_instance_admin") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) } } - public func deserialize(_ json: JSON) throws -> TrustedNonTeamMemberType { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "enterprise_admin": - return TrustedNonTeamMemberType.enterpriseAdmin - case "multi_instance_admin": - return TrustedNonTeamMemberType.multiInstanceAdmin - case "other": - return TrustedNonTeamMemberType.other + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "enterprise_admin": + return TrustedNonTeamMemberType.enterpriseAdmin + case "multi_instance_admin": + return TrustedNonTeamMemberType.multiInstanceAdmin + case "other": + return TrustedNonTeamMemberType.other + default: + return TrustedNonTeamMemberType.other + } default: - return TrustedNonTeamMemberType.other - } - default: - throw JSONSerializerError.deserializeError(type: TrustedNonTeamMemberType.self, json: json) + throw JSONSerializerError.deserializeError(type: TrustedNonTeamMemberType.self, json: json) } } } @@ -66598,60 +79981,58 @@ public class TeamLog { } } } - public class TrustedTeamsRequestActionSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TrustedTeamsRequestAction) throws -> JSON { switch value { - case .accepted: - var d = [String: JSON]() - d[".tag"] = .str("accepted") - return .dictionary(d) - case .declined: - var d = [String: JSON]() - d[".tag"] = .str("declined") - return .dictionary(d) - case .expired: - var d = [String: JSON]() - d[".tag"] = .str("expired") - return .dictionary(d) - case .invited: - var d = [String: JSON]() - d[".tag"] = .str("invited") - return .dictionary(d) - case .revoked: - var d = [String: JSON]() - d[".tag"] = .str("revoked") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) + case .accepted: + var d = [String: JSON]() + d[".tag"] = .str("accepted") + return .dictionary(d) + case .declined: + var d = [String: JSON]() + d[".tag"] = .str("declined") + return .dictionary(d) + case .expired: + var d = [String: JSON]() + d[".tag"] = .str("expired") + return .dictionary(d) + case .invited: + var d = [String: JSON]() + d[".tag"] = .str("invited") + return .dictionary(d) + case .revoked: + var d = [String: JSON]() + d[".tag"] = .str("revoked") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) } } - public func deserialize(_ json: JSON) throws -> TrustedTeamsRequestAction { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "accepted": - return TrustedTeamsRequestAction.accepted - case "declined": - return TrustedTeamsRequestAction.declined - case "expired": - return TrustedTeamsRequestAction.expired - case "invited": - return TrustedTeamsRequestAction.invited - case "revoked": - return TrustedTeamsRequestAction.revoked - case "other": - return TrustedTeamsRequestAction.other + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "accepted": + return TrustedTeamsRequestAction.accepted + case "declined": + return TrustedTeamsRequestAction.declined + case "expired": + return TrustedTeamsRequestAction.expired + case "invited": + return TrustedTeamsRequestAction.invited + case "revoked": + return TrustedTeamsRequestAction.revoked + case "other": + return TrustedTeamsRequestAction.other + default: + return TrustedTeamsRequestAction.other + } default: - return TrustedTeamsRequestAction.other - } - default: - throw JSONSerializerError.deserializeError(type: TrustedTeamsRequestAction.self, json: json) + throw JSONSerializerError.deserializeError(type: TrustedTeamsRequestAction.self, json: json) } } } @@ -66679,48 +80060,46 @@ public class TeamLog { } } } - public class TrustedTeamsRequestStateSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TrustedTeamsRequestState) throws -> JSON { switch value { - case .invited: - var d = [String: JSON]() - d[".tag"] = .str("invited") - return .dictionary(d) - case .linked: - var d = [String: JSON]() - d[".tag"] = .str("linked") - return .dictionary(d) - case .unlinked: - var d = [String: JSON]() - d[".tag"] = .str("unlinked") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) + case .invited: + var d = [String: JSON]() + d[".tag"] = .str("invited") + return .dictionary(d) + case .linked: + var d = [String: JSON]() + d[".tag"] = .str("linked") + return .dictionary(d) + case .unlinked: + var d = [String: JSON]() + d[".tag"] = .str("unlinked") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) } } - public func deserialize(_ json: JSON) throws -> TrustedTeamsRequestState { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "invited": - return TrustedTeamsRequestState.invited - case "linked": - return TrustedTeamsRequestState.linked - case "unlinked": - return TrustedTeamsRequestState.unlinked - case "other": - return TrustedTeamsRequestState.other + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "invited": + return TrustedTeamsRequestState.invited + case "linked": + return TrustedTeamsRequestState.linked + case "unlinked": + return TrustedTeamsRequestState.unlinked + case "other": + return TrustedTeamsRequestState.other + default: + return TrustedTeamsRequestState.other + } default: - return TrustedTeamsRequestState.other - } - default: - throw JSONSerializerError.deserializeError(type: TrustedTeamsRequestState.self, json: json) + throw JSONSerializerError.deserializeError(type: TrustedTeamsRequestState.self, json: json) } } } @@ -66748,25 +80127,23 @@ public class TeamLog { } } } - public class TwoAccountChangePolicyDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TwoAccountChangePolicyDetails) throws -> JSON { let output = [ - "new_value": try TeamLog.TwoAccountPolicySerializer().serialize(value.newValue), - "previous_value": try NullableSerializer(TeamLog.TwoAccountPolicySerializer()).serialize(value.previousValue), + "new_value": try TeamLog.TwoAccountPolicySerializer().serialize(value.newValue), + "previous_value": try NullableSerializer(TeamLog.TwoAccountPolicySerializer()).serialize(value.previousValue), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TwoAccountChangePolicyDetails { switch json { - case .dictionary(let dict): - let newValue = try TeamLog.TwoAccountPolicySerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try NullableSerializer(TeamLog.TwoAccountPolicySerializer()).deserialize(dict["previous_value"] ?? .null) - return TwoAccountChangePolicyDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: TwoAccountChangePolicyDetails.self, json: json) + case .dictionary(let dict): + let newValue = try TeamLog.TwoAccountPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try NullableSerializer(TeamLog.TwoAccountPolicySerializer()).deserialize(dict["previous_value"] ?? .null) + return TwoAccountChangePolicyDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: TwoAccountChangePolicyDetails.self, json: json) } } } @@ -66792,23 +80169,21 @@ public class TeamLog { } } } - public class TwoAccountChangePolicyTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TwoAccountChangePolicyType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> TwoAccountChangePolicyType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return TwoAccountChangePolicyType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: TwoAccountChangePolicyType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return TwoAccountChangePolicyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: TwoAccountChangePolicyType.self, json: json) } } } @@ -66834,48 +80209,47 @@ public class TeamLog { } } } - public class TwoAccountPolicySerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: TwoAccountPolicy) throws -> JSON { switch value { - case .disabled: - var d = [String: JSON]() - d[".tag"] = .str("disabled") - return .dictionary(d) - case .enabled: - var d = [String: JSON]() - d[".tag"] = .str("enabled") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) + case .disabled: + var d = [String: JSON]() + d[".tag"] = .str("disabled") + return .dictionary(d) + case .enabled: + var d = [String: JSON]() + d[".tag"] = .str("enabled") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) } } - public func deserialize(_ json: JSON) throws -> TwoAccountPolicy { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "disabled": - return TwoAccountPolicy.disabled - case "enabled": - return TwoAccountPolicy.enabled - case "other": - return TwoAccountPolicy.other + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "disabled": + return TwoAccountPolicy.disabled + case "enabled": + return TwoAccountPolicy.enabled + case "other": + return TwoAccountPolicy.other + default: + return TwoAccountPolicy.other + } default: - return TwoAccountPolicy.other - } - default: - throw JSONSerializerError.deserializeError(type: TwoAccountPolicy.self, json: json) + throw JSONSerializerError.deserializeError(type: TwoAccountPolicy.self, json: json) } } } /// Reverted naming convention. public class UndoNamingConventionDetails: CustomStringConvertible, JSONRepresentable { + func json() throws -> JSON { try UndoNamingConventionDetailsSerializer().serialize(self) } @@ -66888,20 +80262,18 @@ public class TeamLog { } } } - public class UndoNamingConventionDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: UndoNamingConventionDetails) throws -> JSON { let output = [String: JSON]() return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> UndoNamingConventionDetails { switch json { - case .dictionary: - return UndoNamingConventionDetails() - default: - throw JSONSerializerError.deserializeError(type: UndoNamingConventionDetails.self, json: json) + case .dictionary(_): + return UndoNamingConventionDetails() + default: + throw JSONSerializerError.deserializeError(type: UndoNamingConventionDetails.self, json: json) } } } @@ -66927,29 +80299,28 @@ public class TeamLog { } } } - public class UndoNamingConventionTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: UndoNamingConventionType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> UndoNamingConventionType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return UndoNamingConventionType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: UndoNamingConventionType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return UndoNamingConventionType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: UndoNamingConventionType.self, json: json) } } } /// Removed multi-file organize. public class UndoOrganizeFolderWithTidyDetails: CustomStringConvertible, JSONRepresentable { + func json() throws -> JSON { try UndoOrganizeFolderWithTidyDetailsSerializer().serialize(self) } @@ -66962,20 +80333,18 @@ public class TeamLog { } } } - public class UndoOrganizeFolderWithTidyDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: UndoOrganizeFolderWithTidyDetails) throws -> JSON { let output = [String: JSON]() return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> UndoOrganizeFolderWithTidyDetails { switch json { - case .dictionary: - return UndoOrganizeFolderWithTidyDetails() - default: - throw JSONSerializerError.deserializeError(type: UndoOrganizeFolderWithTidyDetails.self, json: json) + case .dictionary(_): + return UndoOrganizeFolderWithTidyDetails() + default: + throw JSONSerializerError.deserializeError(type: UndoOrganizeFolderWithTidyDetails.self, json: json) } } } @@ -67001,29 +80370,29 @@ public class TeamLog { } } } - public class UndoOrganizeFolderWithTidyTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: UndoOrganizeFolderWithTidyType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> UndoOrganizeFolderWithTidyType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return UndoOrganizeFolderWithTidyType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: UndoOrganizeFolderWithTidyType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return UndoOrganizeFolderWithTidyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: UndoOrganizeFolderWithTidyType.self, json: json) } } } /// User linked app public class UserLinkedAppLogInfo: TeamLog.AppLogInfo { + + public override var description: String { do { return "\(SerializeUtil.prepareJSONForSerialization(try UserLinkedAppLogInfoSerializer().serialize(self)))" @@ -67032,25 +80401,23 @@ public class TeamLog { } } } - public class UserLinkedAppLogInfoSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: UserLinkedAppLogInfo) throws -> JSON { let output = [ - "app_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.appId), - "display_name": try NullableSerializer(Serialization._StringSerializer).serialize(value.displayName), + "app_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.appId), + "display_name": try NullableSerializer(Serialization._StringSerializer).serialize(value.displayName), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> UserLinkedAppLogInfo { switch json { - case .dictionary(let dict): - let appId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["app_id"] ?? .null) - let displayName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["display_name"] ?? .null) - return UserLinkedAppLogInfo(appId: appId, displayName: displayName) - default: - throw JSONSerializerError.deserializeError(type: UserLinkedAppLogInfo.self, json: json) + case .dictionary(let dict): + let appId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["app_id"] ?? .null) + let displayName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["display_name"] ?? .null) + return UserLinkedAppLogInfo(appId: appId, displayName: displayName) + default: + throw JSONSerializerError.deserializeError(type: UserLinkedAppLogInfo.self, json: json) } } } @@ -67084,33 +80451,33 @@ public class TeamLog { } } } - public class UserNameLogInfoSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: UserNameLogInfo) throws -> JSON { let output = [ - "given_name": try Serialization._StringSerializer.serialize(value.givenName), - "surname": try Serialization._StringSerializer.serialize(value.surname), - "locale": try NullableSerializer(Serialization._StringSerializer).serialize(value.locale), + "given_name": try Serialization._StringSerializer.serialize(value.givenName), + "surname": try Serialization._StringSerializer.serialize(value.surname), + "locale": try NullableSerializer(Serialization._StringSerializer).serialize(value.locale), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> UserNameLogInfo { switch json { - case .dictionary(let dict): - let givenName = try Serialization._StringSerializer.deserialize(dict["given_name"] ?? .null) - let surname = try Serialization._StringSerializer.deserialize(dict["surname"] ?? .null) - let locale = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["locale"] ?? .null) - return UserNameLogInfo(givenName: givenName, surname: surname, locale: locale) - default: - throw JSONSerializerError.deserializeError(type: UserNameLogInfo.self, json: json) + case .dictionary(let dict): + let givenName = try Serialization._StringSerializer.deserialize(dict["given_name"] ?? .null) + let surname = try Serialization._StringSerializer.deserialize(dict["surname"] ?? .null) + let locale = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["locale"] ?? .null) + return UserNameLogInfo(givenName: givenName, surname: surname, locale: locale) + default: + throw JSONSerializerError.deserializeError(type: UserNameLogInfo.self, json: json) } } } /// User or team linked app. Used when linked type is missing due to historical data gap. public class UserOrTeamLinkedAppLogInfo: TeamLog.AppLogInfo { + + public override var description: String { do { return "\(SerializeUtil.prepareJSONForSerialization(try UserOrTeamLinkedAppLogInfoSerializer().serialize(self)))" @@ -67119,25 +80486,23 @@ public class TeamLog { } } } - public class UserOrTeamLinkedAppLogInfoSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: UserOrTeamLinkedAppLogInfo) throws -> JSON { let output = [ - "app_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.appId), - "display_name": try NullableSerializer(Serialization._StringSerializer).serialize(value.displayName), + "app_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.appId), + "display_name": try NullableSerializer(Serialization._StringSerializer).serialize(value.displayName), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> UserOrTeamLinkedAppLogInfo { switch json { - case .dictionary(let dict): - let appId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["app_id"] ?? .null) - let displayName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["display_name"] ?? .null) - return UserOrTeamLinkedAppLogInfo(appId: appId, displayName: displayName) - default: - throw JSONSerializerError.deserializeError(type: UserOrTeamLinkedAppLogInfo.self, json: json) + case .dictionary(let dict): + let appId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["app_id"] ?? .null) + let displayName = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["display_name"] ?? .null) + return UserOrTeamLinkedAppLogInfo(appId: appId, displayName: displayName) + default: + throw JSONSerializerError.deserializeError(type: UserOrTeamLinkedAppLogInfo.self, json: json) } } } @@ -67145,8 +80510,8 @@ public class TeamLog { /// Tagged a file. public class UserTagsAddedDetails: CustomStringConvertible, JSONRepresentable { /// values. - public let values: [String] - public init(values: [String]) { + public let values: Array + public init(values: Array) { arrayValidator(itemValidator: stringValidator())(values) self.values = values } @@ -67163,23 +80528,21 @@ public class TeamLog { } } } - public class UserTagsAddedDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: UserTagsAddedDetails) throws -> JSON { let output = [ - "values": try ArraySerializer(Serialization._StringSerializer).serialize(value.values), + "values": try ArraySerializer(Serialization._StringSerializer).serialize(value.values), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> UserTagsAddedDetails { switch json { - case .dictionary(let dict): - let values = try ArraySerializer(Serialization._StringSerializer).deserialize(dict["values"] ?? .null) - return UserTagsAddedDetails(values: values) - default: - throw JSONSerializerError.deserializeError(type: UserTagsAddedDetails.self, json: json) + case .dictionary(let dict): + let values = try ArraySerializer(Serialization._StringSerializer).deserialize(dict["values"] ?? .null) + return UserTagsAddedDetails(values: values) + default: + throw JSONSerializerError.deserializeError(type: UserTagsAddedDetails.self, json: json) } } } @@ -67205,23 +80568,21 @@ public class TeamLog { } } } - public class UserTagsAddedTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: UserTagsAddedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> UserTagsAddedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return UserTagsAddedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: UserTagsAddedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return UserTagsAddedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: UserTagsAddedType.self, json: json) } } } @@ -67229,8 +80590,8 @@ public class TeamLog { /// Removed tags. public class UserTagsRemovedDetails: CustomStringConvertible, JSONRepresentable { /// values. - public let values: [String] - public init(values: [String]) { + public let values: Array + public init(values: Array) { arrayValidator(itemValidator: stringValidator())(values) self.values = values } @@ -67247,23 +80608,21 @@ public class TeamLog { } } } - public class UserTagsRemovedDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: UserTagsRemovedDetails) throws -> JSON { let output = [ - "values": try ArraySerializer(Serialization._StringSerializer).serialize(value.values), + "values": try ArraySerializer(Serialization._StringSerializer).serialize(value.values), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> UserTagsRemovedDetails { switch json { - case .dictionary(let dict): - let values = try ArraySerializer(Serialization._StringSerializer).deserialize(dict["values"] ?? .null) - return UserTagsRemovedDetails(values: values) - default: - throw JSONSerializerError.deserializeError(type: UserTagsRemovedDetails.self, json: json) + case .dictionary(let dict): + let values = try ArraySerializer(Serialization._StringSerializer).deserialize(dict["values"] ?? .null) + return UserTagsRemovedDetails(values: values) + default: + throw JSONSerializerError.deserializeError(type: UserTagsRemovedDetails.self, json: json) } } } @@ -67289,23 +80648,21 @@ public class TeamLog { } } } - public class UserTagsRemovedTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: UserTagsRemovedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> UserTagsRemovedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return UserTagsRemovedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: UserTagsRemovedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return UserTagsRemovedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: UserTagsRemovedType.self, json: json) } } } @@ -67333,25 +80690,23 @@ public class TeamLog { } } } - public class ViewerInfoPolicyChangedDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: ViewerInfoPolicyChangedDetails) throws -> JSON { let output = [ - "previous_value": try TeamLog.PassPolicySerializer().serialize(value.previousValue), - "new_value": try TeamLog.PassPolicySerializer().serialize(value.newValue), + "previous_value": try TeamLog.PassPolicySerializer().serialize(value.previousValue), + "new_value": try TeamLog.PassPolicySerializer().serialize(value.newValue), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> ViewerInfoPolicyChangedDetails { switch json { - case .dictionary(let dict): - let previousValue = try TeamLog.PassPolicySerializer().deserialize(dict["previous_value"] ?? .null) - let newValue = try TeamLog.PassPolicySerializer().deserialize(dict["new_value"] ?? .null) - return ViewerInfoPolicyChangedDetails(previousValue: previousValue, newValue: newValue) - default: - throw JSONSerializerError.deserializeError(type: ViewerInfoPolicyChangedDetails.self, json: json) + case .dictionary(let dict): + let previousValue = try TeamLog.PassPolicySerializer().deserialize(dict["previous_value"] ?? .null) + let newValue = try TeamLog.PassPolicySerializer().deserialize(dict["new_value"] ?? .null) + return ViewerInfoPolicyChangedDetails(previousValue: previousValue, newValue: newValue) + default: + throw JSONSerializerError.deserializeError(type: ViewerInfoPolicyChangedDetails.self, json: json) } } } @@ -67377,23 +80732,21 @@ public class TeamLog { } } } - public class ViewerInfoPolicyChangedTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: ViewerInfoPolicyChangedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> ViewerInfoPolicyChangedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return ViewerInfoPolicyChangedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: ViewerInfoPolicyChangedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return ViewerInfoPolicyChangedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: ViewerInfoPolicyChangedType.self, json: json) } } } @@ -67419,42 +80772,40 @@ public class TeamLog { } } } - public class WatermarkingPolicySerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: WatermarkingPolicy) throws -> JSON { switch value { - case .disabled: - var d = [String: JSON]() - d[".tag"] = .str("disabled") - return .dictionary(d) - case .enabled: - var d = [String: JSON]() - d[".tag"] = .str("enabled") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) + case .disabled: + var d = [String: JSON]() + d[".tag"] = .str("disabled") + return .dictionary(d) + case .enabled: + var d = [String: JSON]() + d[".tag"] = .str("enabled") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) } } - public func deserialize(_ json: JSON) throws -> WatermarkingPolicy { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "disabled": - return WatermarkingPolicy.disabled - case "enabled": - return WatermarkingPolicy.enabled - case "other": - return WatermarkingPolicy.other + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "disabled": + return WatermarkingPolicy.disabled + case "enabled": + return WatermarkingPolicy.enabled + case "other": + return WatermarkingPolicy.other + default: + return WatermarkingPolicy.other + } default: - return WatermarkingPolicy.other - } - default: - throw JSONSerializerError.deserializeError(type: WatermarkingPolicy.self, json: json) + throw JSONSerializerError.deserializeError(type: WatermarkingPolicy.self, json: json) } } } @@ -67482,25 +80833,23 @@ public class TeamLog { } } } - public class WatermarkingPolicyChangedDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: WatermarkingPolicyChangedDetails) throws -> JSON { let output = [ - "new_value": try TeamLog.WatermarkingPolicySerializer().serialize(value.newValue), - "previous_value": try TeamLog.WatermarkingPolicySerializer().serialize(value.previousValue), + "new_value": try TeamLog.WatermarkingPolicySerializer().serialize(value.newValue), + "previous_value": try TeamLog.WatermarkingPolicySerializer().serialize(value.previousValue), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> WatermarkingPolicyChangedDetails { switch json { - case .dictionary(let dict): - let newValue = try TeamLog.WatermarkingPolicySerializer().deserialize(dict["new_value"] ?? .null) - let previousValue = try TeamLog.WatermarkingPolicySerializer().deserialize(dict["previous_value"] ?? .null) - return WatermarkingPolicyChangedDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: WatermarkingPolicyChangedDetails.self, json: json) + case .dictionary(let dict): + let newValue = try TeamLog.WatermarkingPolicySerializer().deserialize(dict["new_value"] ?? .null) + let previousValue = try TeamLog.WatermarkingPolicySerializer().deserialize(dict["previous_value"] ?? .null) + return WatermarkingPolicyChangedDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: WatermarkingPolicyChangedDetails.self, json: json) } } } @@ -67526,23 +80875,21 @@ public class TeamLog { } } } - public class WatermarkingPolicyChangedTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: WatermarkingPolicyChangedType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> WatermarkingPolicyChangedType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return WatermarkingPolicyChangedType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: WatermarkingPolicyChangedType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return WatermarkingPolicyChangedType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: WatermarkingPolicyChangedType.self, json: json) } } } @@ -67557,15 +80904,7 @@ public class TeamLog { public let os: String /// Information on the browser used for this web session. public let browser: String - public init( - userAgent: String, - os: String, - browser: String, - ipAddress: String? = nil, - created: Date? = nil, - updated: Date? = nil, - sessionInfo: TeamLog.WebSessionLogInfo? = nil - ) { + public init(userAgent: String, os: String, browser: String, ipAddress: String? = nil, created: Date? = nil, updated: Date? = nil, sessionInfo: TeamLog.WebSessionLogInfo? = nil) { self.sessionInfo = sessionInfo stringValidator()(userAgent) self.userAgent = userAgent @@ -67576,6 +80915,7 @@ public class TeamLog { super.init(ipAddress: ipAddress, created: created, updated: updated) } + public override var description: String { do { return "\(SerializeUtil.prepareJSONForSerialization(try WebDeviceSessionLogInfoSerializer().serialize(self)))" @@ -67584,49 +80924,41 @@ public class TeamLog { } } } - public class WebDeviceSessionLogInfoSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: WebDeviceSessionLogInfo) throws -> JSON { let output = [ - "user_agent": try Serialization._StringSerializer.serialize(value.userAgent), - "os": try Serialization._StringSerializer.serialize(value.os), - "browser": try Serialization._StringSerializer.serialize(value.browser), - "ip_address": try NullableSerializer(Serialization._StringSerializer).serialize(value.ipAddress), - "created": try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).serialize(value.created), - "updated": try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).serialize(value.updated), - "session_info": try NullableSerializer(TeamLog.WebSessionLogInfoSerializer()).serialize(value.sessionInfo), + "user_agent": try Serialization._StringSerializer.serialize(value.userAgent), + "os": try Serialization._StringSerializer.serialize(value.os), + "browser": try Serialization._StringSerializer.serialize(value.browser), + "ip_address": try NullableSerializer(Serialization._StringSerializer).serialize(value.ipAddress), + "created": try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).serialize(value.created), + "updated": try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).serialize(value.updated), + "session_info": try NullableSerializer(TeamLog.WebSessionLogInfoSerializer()).serialize(value.sessionInfo), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> WebDeviceSessionLogInfo { switch json { - case .dictionary(let dict): - let userAgent = try Serialization._StringSerializer.deserialize(dict["user_agent"] ?? .null) - let os = try Serialization._StringSerializer.deserialize(dict["os"] ?? .null) - let browser = try Serialization._StringSerializer.deserialize(dict["browser"] ?? .null) - let ipAddress = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["ip_address"] ?? .null) - let created = try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).deserialize(dict["created"] ?? .null) - let updated = try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).deserialize(dict["updated"] ?? .null) - let sessionInfo = try NullableSerializer(TeamLog.WebSessionLogInfoSerializer()).deserialize(dict["session_info"] ?? .null) - return WebDeviceSessionLogInfo( - userAgent: userAgent, - os: os, - browser: browser, - ipAddress: ipAddress, - created: created, - updated: updated, - sessionInfo: sessionInfo - ) - default: - throw JSONSerializerError.deserializeError(type: WebDeviceSessionLogInfo.self, json: json) + case .dictionary(let dict): + let userAgent = try Serialization._StringSerializer.deserialize(dict["user_agent"] ?? .null) + let os = try Serialization._StringSerializer.deserialize(dict["os"] ?? .null) + let browser = try Serialization._StringSerializer.deserialize(dict["browser"] ?? .null) + let ipAddress = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["ip_address"] ?? .null) + let created = try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).deserialize(dict["created"] ?? .null) + let updated = try NullableSerializer(NSDateSerializer("%Y-%m-%dT%H:%M:%SZ")).deserialize(dict["updated"] ?? .null) + let sessionInfo = try NullableSerializer(TeamLog.WebSessionLogInfoSerializer()).deserialize(dict["session_info"] ?? .null) + return WebDeviceSessionLogInfo(userAgent: userAgent, os: os, browser: browser, ipAddress: ipAddress, created: created, updated: updated, sessionInfo: sessionInfo) + default: + throw JSONSerializerError.deserializeError(type: WebDeviceSessionLogInfo.self, json: json) } } } /// Web session. public class WebSessionLogInfo: TeamLog.SessionLogInfo { + + public override var description: String { do { return "\(SerializeUtil.prepareJSONForSerialization(try WebSessionLogInfoSerializer().serialize(self)))" @@ -67635,23 +80967,21 @@ public class TeamLog { } } } - public class WebSessionLogInfoSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: WebSessionLogInfo) throws -> JSON { let output = [ - "session_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.sessionId), + "session_id": try NullableSerializer(Serialization._StringSerializer).serialize(value.sessionId), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> WebSessionLogInfo { switch json { - case .dictionary(let dict): - let sessionId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["session_id"] ?? .null) - return WebSessionLogInfo(sessionId: sessionId) - default: - throw JSONSerializerError.deserializeError(type: WebSessionLogInfo.self, json: json) + case .dictionary(let dict): + let sessionId = try NullableSerializer(Serialization._StringSerializer).deserialize(dict["session_id"] ?? .null) + return WebSessionLogInfo(sessionId: sessionId) + default: + throw JSONSerializerError.deserializeError(type: WebSessionLogInfo.self, json: json) } } } @@ -67681,25 +81011,23 @@ public class TeamLog { } } } - public class WebSessionsChangeActiveSessionLimitDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: WebSessionsChangeActiveSessionLimitDetails) throws -> JSON { let output = [ - "previous_value": try Serialization._StringSerializer.serialize(value.previousValue), - "new_value": try Serialization._StringSerializer.serialize(value.newValue), + "previous_value": try Serialization._StringSerializer.serialize(value.previousValue), + "new_value": try Serialization._StringSerializer.serialize(value.newValue), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> WebSessionsChangeActiveSessionLimitDetails { switch json { - case .dictionary(let dict): - let previousValue = try Serialization._StringSerializer.deserialize(dict["previous_value"] ?? .null) - let newValue = try Serialization._StringSerializer.deserialize(dict["new_value"] ?? .null) - return WebSessionsChangeActiveSessionLimitDetails(previousValue: previousValue, newValue: newValue) - default: - throw JSONSerializerError.deserializeError(type: WebSessionsChangeActiveSessionLimitDetails.self, json: json) + case .dictionary(let dict): + let previousValue = try Serialization._StringSerializer.deserialize(dict["previous_value"] ?? .null) + let newValue = try Serialization._StringSerializer.deserialize(dict["new_value"] ?? .null) + return WebSessionsChangeActiveSessionLimitDetails(previousValue: previousValue, newValue: newValue) + default: + throw JSONSerializerError.deserializeError(type: WebSessionsChangeActiveSessionLimitDetails.self, json: json) } } } @@ -67725,23 +81053,21 @@ public class TeamLog { } } } - public class WebSessionsChangeActiveSessionLimitTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: WebSessionsChangeActiveSessionLimitType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> WebSessionsChangeActiveSessionLimitType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return WebSessionsChangeActiveSessionLimitType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: WebSessionsChangeActiveSessionLimitType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return WebSessionsChangeActiveSessionLimitType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: WebSessionsChangeActiveSessionLimitType.self, json: json) } } } @@ -67769,25 +81095,23 @@ public class TeamLog { } } } - public class WebSessionsChangeFixedLengthPolicyDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: WebSessionsChangeFixedLengthPolicyDetails) throws -> JSON { let output = [ - "new_value": try NullableSerializer(TeamLog.WebSessionsFixedLengthPolicySerializer()).serialize(value.newValue), - "previous_value": try NullableSerializer(TeamLog.WebSessionsFixedLengthPolicySerializer()).serialize(value.previousValue), + "new_value": try NullableSerializer(TeamLog.WebSessionsFixedLengthPolicySerializer()).serialize(value.newValue), + "previous_value": try NullableSerializer(TeamLog.WebSessionsFixedLengthPolicySerializer()).serialize(value.previousValue), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> WebSessionsChangeFixedLengthPolicyDetails { switch json { - case .dictionary(let dict): - let newValue = try NullableSerializer(TeamLog.WebSessionsFixedLengthPolicySerializer()).deserialize(dict["new_value"] ?? .null) - let previousValue = try NullableSerializer(TeamLog.WebSessionsFixedLengthPolicySerializer()).deserialize(dict["previous_value"] ?? .null) - return WebSessionsChangeFixedLengthPolicyDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: WebSessionsChangeFixedLengthPolicyDetails.self, json: json) + case .dictionary(let dict): + let newValue = try NullableSerializer(TeamLog.WebSessionsFixedLengthPolicySerializer()).deserialize(dict["new_value"] ?? .null) + let previousValue = try NullableSerializer(TeamLog.WebSessionsFixedLengthPolicySerializer()).deserialize(dict["previous_value"] ?? .null) + return WebSessionsChangeFixedLengthPolicyDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: WebSessionsChangeFixedLengthPolicyDetails.self, json: json) } } } @@ -67813,23 +81137,21 @@ public class TeamLog { } } } - public class WebSessionsChangeFixedLengthPolicyTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: WebSessionsChangeFixedLengthPolicyType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> WebSessionsChangeFixedLengthPolicyType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return WebSessionsChangeFixedLengthPolicyType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: WebSessionsChangeFixedLengthPolicyType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return WebSessionsChangeFixedLengthPolicyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: WebSessionsChangeFixedLengthPolicyType.self, json: json) } } } @@ -67857,25 +81179,23 @@ public class TeamLog { } } } - public class WebSessionsChangeIdleLengthPolicyDetailsSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: WebSessionsChangeIdleLengthPolicyDetails) throws -> JSON { let output = [ - "new_value": try NullableSerializer(TeamLog.WebSessionsIdleLengthPolicySerializer()).serialize(value.newValue), - "previous_value": try NullableSerializer(TeamLog.WebSessionsIdleLengthPolicySerializer()).serialize(value.previousValue), + "new_value": try NullableSerializer(TeamLog.WebSessionsIdleLengthPolicySerializer()).serialize(value.newValue), + "previous_value": try NullableSerializer(TeamLog.WebSessionsIdleLengthPolicySerializer()).serialize(value.previousValue), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> WebSessionsChangeIdleLengthPolicyDetails { switch json { - case .dictionary(let dict): - let newValue = try NullableSerializer(TeamLog.WebSessionsIdleLengthPolicySerializer()).deserialize(dict["new_value"] ?? .null) - let previousValue = try NullableSerializer(TeamLog.WebSessionsIdleLengthPolicySerializer()).deserialize(dict["previous_value"] ?? .null) - return WebSessionsChangeIdleLengthPolicyDetails(newValue: newValue, previousValue: previousValue) - default: - throw JSONSerializerError.deserializeError(type: WebSessionsChangeIdleLengthPolicyDetails.self, json: json) + case .dictionary(let dict): + let newValue = try NullableSerializer(TeamLog.WebSessionsIdleLengthPolicySerializer()).deserialize(dict["new_value"] ?? .null) + let previousValue = try NullableSerializer(TeamLog.WebSessionsIdleLengthPolicySerializer()).deserialize(dict["previous_value"] ?? .null) + return WebSessionsChangeIdleLengthPolicyDetails(newValue: newValue, previousValue: previousValue) + default: + throw JSONSerializerError.deserializeError(type: WebSessionsChangeIdleLengthPolicyDetails.self, json: json) } } } @@ -67901,23 +81221,21 @@ public class TeamLog { } } } - public class WebSessionsChangeIdleLengthPolicyTypeSerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: WebSessionsChangeIdleLengthPolicyType) throws -> JSON { let output = [ - "description": try Serialization._StringSerializer.serialize(value.description_), + "description": try Serialization._StringSerializer.serialize(value.description_), ] return .dictionary(output) } - public func deserialize(_ json: JSON) throws -> WebSessionsChangeIdleLengthPolicyType { switch json { - case .dictionary(let dict): - let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) - return WebSessionsChangeIdleLengthPolicyType(description_: description_) - default: - throw JSONSerializerError.deserializeError(type: WebSessionsChangeIdleLengthPolicyType.self, json: json) + case .dictionary(let dict): + let description_ = try Serialization._StringSerializer.deserialize(dict["description"] ?? .null) + return WebSessionsChangeIdleLengthPolicyType(description_: description_) + default: + throw JSONSerializerError.deserializeError(type: WebSessionsChangeIdleLengthPolicyType.self, json: json) } } } @@ -67943,43 +81261,41 @@ public class TeamLog { } } } - public class WebSessionsFixedLengthPolicySerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: WebSessionsFixedLengthPolicy) throws -> JSON { switch value { - case .defined(let arg): - var d = try Serialization.getFields(TeamLog.DurationLogInfoSerializer().serialize(arg)) - d[".tag"] = .str("defined") - return .dictionary(d) - case .undefined: - var d = [String: JSON]() - d[".tag"] = .str("undefined") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) + case .defined(let arg): + var d = try Serialization.getFields(TeamLog.DurationLogInfoSerializer().serialize(arg)) + d[".tag"] = .str("defined") + return .dictionary(d) + case .undefined: + var d = [String: JSON]() + d[".tag"] = .str("undefined") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) } } - public func deserialize(_ json: JSON) throws -> WebSessionsFixedLengthPolicy { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "defined": - let v = try TeamLog.DurationLogInfoSerializer().deserialize(json) - return WebSessionsFixedLengthPolicy.defined(v) - case "undefined": - return WebSessionsFixedLengthPolicy.undefined - case "other": - return WebSessionsFixedLengthPolicy.other + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "defined": + let v = try TeamLog.DurationLogInfoSerializer().deserialize(json) + return WebSessionsFixedLengthPolicy.defined(v) + case "undefined": + return WebSessionsFixedLengthPolicy.undefined + case "other": + return WebSessionsFixedLengthPolicy.other + default: + return WebSessionsFixedLengthPolicy.other + } default: - return WebSessionsFixedLengthPolicy.other - } - default: - throw JSONSerializerError.deserializeError(type: WebSessionsFixedLengthPolicy.self, json: json) + throw JSONSerializerError.deserializeError(type: WebSessionsFixedLengthPolicy.self, json: json) } } } @@ -68005,47 +81321,46 @@ public class TeamLog { } } } - public class WebSessionsIdleLengthPolicySerializer: JSONSerializer { - public init() {} + public init() { } public func serialize(_ value: WebSessionsIdleLengthPolicy) throws -> JSON { switch value { - case .defined(let arg): - var d = try Serialization.getFields(TeamLog.DurationLogInfoSerializer().serialize(arg)) - d[".tag"] = .str("defined") - return .dictionary(d) - case .undefined: - var d = [String: JSON]() - d[".tag"] = .str("undefined") - return .dictionary(d) - case .other: - var d = [String: JSON]() - d[".tag"] = .str("other") - return .dictionary(d) + case .defined(let arg): + var d = try Serialization.getFields(TeamLog.DurationLogInfoSerializer().serialize(arg)) + d[".tag"] = .str("defined") + return .dictionary(d) + case .undefined: + var d = [String: JSON]() + d[".tag"] = .str("undefined") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) } } - public func deserialize(_ json: JSON) throws -> WebSessionsIdleLengthPolicy { switch json { - case .dictionary(let d): - let tag = try Serialization.getTag(d) - switch tag { - case "defined": - let v = try TeamLog.DurationLogInfoSerializer().deserialize(json) - return WebSessionsIdleLengthPolicy.defined(v) - case "undefined": - return WebSessionsIdleLengthPolicy.undefined - case "other": - return WebSessionsIdleLengthPolicy.other + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "defined": + let v = try TeamLog.DurationLogInfoSerializer().deserialize(json) + return WebSessionsIdleLengthPolicy.defined(v) + case "undefined": + return WebSessionsIdleLengthPolicy.undefined + case "other": + return WebSessionsIdleLengthPolicy.other + default: + return WebSessionsIdleLengthPolicy.other + } default: - return WebSessionsIdleLengthPolicy.other - } - default: - throw JSONSerializerError.deserializeError(type: WebSessionsIdleLengthPolicy.self, json: json) + throw JSONSerializerError.deserializeError(type: WebSessionsIdleLengthPolicy.self, json: json) } } } + /// Stone Route Objects static let getEvents = Route( @@ -68056,11 +81371,9 @@ public class TeamLog { argSerializer: TeamLog.GetTeamEventsArgSerializer(), responseSerializer: TeamLog.GetTeamEventsResultSerializer(), errorSerializer: TeamLog.GetTeamEventsErrorSerializer(), - attributes: RouteAttributes( - auth: [.team], - host: .api, - style: .rpc - ) + attributes: RouteAttributes(auth: [.team], + host: .api, + style: .rpc) ) static let getEventsContinue = Route( name: "get_events/continue", @@ -68070,10 +81383,8 @@ public class TeamLog { argSerializer: TeamLog.GetTeamEventsContinueArgSerializer(), responseSerializer: TeamLog.GetTeamEventsResultSerializer(), errorSerializer: TeamLog.GetTeamEventsContinueErrorSerializer(), - attributes: RouteAttributes( - auth: [.team], - host: .api, - style: .rpc - ) + attributes: RouteAttributes(auth: [.team], + host: .api, + style: .rpc) ) } diff --git a/Source/SwiftyDropbox/Shared/Generated/TeamLogRoutes.swift b/Source/SwiftyDropbox/Shared/Generated/TeamLogRoutes.swift index 16bfffea..3f7b8afc 100644 --- a/Source/SwiftyDropbox/Shared/Generated/TeamLogRoutes.swift +++ b/Source/SwiftyDropbox/Shared/Generated/TeamLogRoutes.swift @@ -58,8 +58,10 @@ public class TeamLogRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `TeamLog.GetTeamEventsResult` object on /// success or a `TeamLog.GetTeamEventsContinueError` object on failure. - @discardableResult public func getEventsContinue(cursor: String) - -> RpcRequest { + @discardableResult public func getEventsContinue(cursor: String) -> RpcRequest< + TeamLog.GetTeamEventsResultSerializer, + TeamLog.GetTeamEventsContinueErrorSerializer + > { let route = TeamLog.getEventsContinue let serverArgs = TeamLog.GetTeamEventsContinueArg(cursor: cursor) return client.request(route, serverArgs: serverArgs) diff --git a/Source/SwiftyDropbox/Shared/Generated/TeamPolicies.swift b/Source/SwiftyDropbox/Shared/Generated/TeamPolicies.swift index 1a67f512..02cff576 100644 --- a/Source/SwiftyDropbox/Shared/Generated/TeamPolicies.swift +++ b/Source/SwiftyDropbox/Shared/Generated/TeamPolicies.swift @@ -138,6 +138,115 @@ public class TeamPolicies { } } + /// Policy governing default expiration date for new links shared outside the team. + public enum DefaultLinkExpirationDaysPolicy: CustomStringConvertible, JSONRepresentable { + /// New links shared outside the team default to no expiration date. + case none + /// New links shared outside the team default to expire in one day. + case day1 + /// New links shared outside the team default to expire in three days. + case day3 + /// New links shared outside the team default to expire in seven days. + case day7 + /// New links shared outside the team default to expire in 30 days. + case day30 + /// New links shared outside the team default to expire in 90 days. + case day90 + /// New links shared outside the team default to expire in 180 days. + case day180 + /// New links shared outside the team default to expire in 365 days. + case year1 + /// An unspecified error. + case other + + func json() throws -> JSON { + try DefaultLinkExpirationDaysPolicySerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try DefaultLinkExpirationDaysPolicySerializer().serialize(self)))" + } catch { + return "Failed to generate description for DefaultLinkExpirationDaysPolicy: \(error)" + } + } + } + + public class DefaultLinkExpirationDaysPolicySerializer: JSONSerializer { + public init() {} + public func serialize(_ value: DefaultLinkExpirationDaysPolicy) throws -> JSON { + switch value { + case .none: + var d = [String: JSON]() + d[".tag"] = .str("none") + return .dictionary(d) + case .day1: + var d = [String: JSON]() + d[".tag"] = .str("day_1") + return .dictionary(d) + case .day3: + var d = [String: JSON]() + d[".tag"] = .str("day_3") + return .dictionary(d) + case .day7: + var d = [String: JSON]() + d[".tag"] = .str("day_7") + return .dictionary(d) + case .day30: + var d = [String: JSON]() + d[".tag"] = .str("day_30") + return .dictionary(d) + case .day90: + var d = [String: JSON]() + d[".tag"] = .str("day_90") + return .dictionary(d) + case .day180: + var d = [String: JSON]() + d[".tag"] = .str("day_180") + return .dictionary(d) + case .year1: + var d = [String: JSON]() + d[".tag"] = .str("year_1") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + + public func deserialize(_ json: JSON) throws -> DefaultLinkExpirationDaysPolicy { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "none": + return DefaultLinkExpirationDaysPolicy.none + case "day_1": + return DefaultLinkExpirationDaysPolicy.day1 + case "day_3": + return DefaultLinkExpirationDaysPolicy.day3 + case "day_7": + return DefaultLinkExpirationDaysPolicy.day7 + case "day_30": + return DefaultLinkExpirationDaysPolicy.day30 + case "day_90": + return DefaultLinkExpirationDaysPolicy.day90 + case "day_180": + return DefaultLinkExpirationDaysPolicy.day180 + case "year_1": + return DefaultLinkExpirationDaysPolicy.year1 + case "other": + return DefaultLinkExpirationDaysPolicy.other + default: + return DefaultLinkExpirationDaysPolicy.other + } + default: + throw JSONSerializerError.deserializeError(type: DefaultLinkExpirationDaysPolicy.self, json: json) + } + } + } + /// The EmmState union public enum EmmState: CustomStringConvertible, JSONRepresentable { /// Emm token is disabled. @@ -207,6 +316,67 @@ public class TeamPolicies { } } + /// Policy governing whether new links shared outside the team require passwords. + public enum EnforceLinkPasswordPolicy: CustomStringConvertible, JSONRepresentable { + /// New links shared outside the team do not require passwords. + case optional + /// New links shared outside the team require passwords. + case required + /// An unspecified error. + case other + + func json() throws -> JSON { + try EnforceLinkPasswordPolicySerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try EnforceLinkPasswordPolicySerializer().serialize(self)))" + } catch { + return "Failed to generate description for EnforceLinkPasswordPolicy: \(error)" + } + } + } + + public class EnforceLinkPasswordPolicySerializer: JSONSerializer { + public init() {} + public func serialize(_ value: EnforceLinkPasswordPolicy) throws -> JSON { + switch value { + case .optional: + var d = [String: JSON]() + d[".tag"] = .str("optional") + return .dictionary(d) + case .required: + var d = [String: JSON]() + d[".tag"] = .str("required") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + + public func deserialize(_ json: JSON) throws -> EnforceLinkPasswordPolicy { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "optional": + return EnforceLinkPasswordPolicy.optional + case "required": + return EnforceLinkPasswordPolicy.required + case "other": + return EnforceLinkPasswordPolicy.other + default: + return EnforceLinkPasswordPolicy.other + } + default: + throw JSONSerializerError.deserializeError(type: EnforceLinkPasswordPolicy.self, json: json) + } + } + } + /// The ExternalDriveBackupPolicyState union public enum ExternalDriveBackupPolicyState: CustomStringConvertible, JSONRepresentable { /// External Drive Backup feature is disabled. @@ -345,6 +515,8 @@ public class TeamPolicies { case enabled /// Team admin has default value based on team tier. case default_ + /// Team admin has chosen to do File Provider Migration immediately for the team. + case immediate /// An unspecified error. case other @@ -377,6 +549,10 @@ public class TeamPolicies { var d = [String: JSON]() d[".tag"] = .str("default") return .dictionary(d) + case .immediate: + var d = [String: JSON]() + d[".tag"] = .str("immediate") + return .dictionary(d) case .other: var d = [String: JSON]() d[".tag"] = .str("other") @@ -395,6 +571,8 @@ public class TeamPolicies { return FileProviderMigrationPolicyState.enabled case "default": return FileProviderMigrationPolicyState.default_ + case "immediate": + return FileProviderMigrationPolicyState.immediate case "other": return FileProviderMigrationPolicyState.other default: @@ -836,11 +1014,13 @@ public class TeamPolicies { /// The PasswordStrengthPolicy union public enum PasswordStrengthPolicy: CustomStringConvertible, JSONRepresentable { - /// User passwords will adhere to the minimal password strength policy. + /// User passwords will not adhere to a password strength policy. case minimalRequirements - /// User passwords will adhere to the moderate password strength policy. + /// User passwords will adhere to the strong password strength policy. Note that product surfaces refer to this + /// as the strong policy but the value must be kept as is for backwards compatability. case moderatePassword - /// User passwords will adhere to the very strong password strength policy. + /// User passwords will adhere to the very strong password strength policy. Note that product surfaces refer to + /// this as the very strong policy but the value must be kept as is for backwards compatability. case strongPassword /// An unspecified error. case other @@ -1092,6 +1272,8 @@ public class TeamPolicies { case team /// Anyone can be a member of a folder shared by a team member. case anyone + /// Only a teammate and approved people can be a member of a folder shared by a team member. + case teamAndApproved /// An unspecified error. case other @@ -1120,6 +1302,10 @@ public class TeamPolicies { var d = [String: JSON]() d[".tag"] = .str("anyone") return .dictionary(d) + case .teamAndApproved: + var d = [String: JSON]() + d[".tag"] = .str("team_and_approved") + return .dictionary(d) case .other: var d = [String: JSON]() d[".tag"] = .str("other") @@ -1136,6 +1322,8 @@ public class TeamPolicies { return SharedFolderMemberPolicy.team case "anyone": return SharedFolderMemberPolicy.anyone + case "team_and_approved": + return SharedFolderMemberPolicy.teamAndApproved case "other": return SharedFolderMemberPolicy.other default: @@ -1229,6 +1417,75 @@ public class TeamPolicies { } } + /// The SharedLinkDefaultPermissionsPolicy union + public enum SharedLinkDefaultPermissionsPolicy: CustomStringConvertible, JSONRepresentable { + /// No team default. Member defaults used instead. + case default_ + /// Default to edit when creating new sharing links + case edit + /// Default to view-only when creating new sharing links + case view + /// An unspecified error. + case other + + func json() throws -> JSON { + try SharedLinkDefaultPermissionsPolicySerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try SharedLinkDefaultPermissionsPolicySerializer().serialize(self)))" + } catch { + return "Failed to generate description for SharedLinkDefaultPermissionsPolicy: \(error)" + } + } + } + + public class SharedLinkDefaultPermissionsPolicySerializer: JSONSerializer { + public init() {} + public func serialize(_ value: SharedLinkDefaultPermissionsPolicy) throws -> JSON { + switch value { + case .default_: + var d = [String: JSON]() + d[".tag"] = .str("default") + return .dictionary(d) + case .edit: + var d = [String: JSON]() + d[".tag"] = .str("edit") + return .dictionary(d) + case .view: + var d = [String: JSON]() + d[".tag"] = .str("view") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + + public func deserialize(_ json: JSON) throws -> SharedLinkDefaultPermissionsPolicy { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "default": + return SharedLinkDefaultPermissionsPolicy.default_ + case "edit": + return SharedLinkDefaultPermissionsPolicy.edit + case "view": + return SharedLinkDefaultPermissionsPolicy.view + case "other": + return SharedLinkDefaultPermissionsPolicy.other + default: + return SharedLinkDefaultPermissionsPolicy.other + } + default: + throw JSONSerializerError.deserializeError(type: SharedLinkDefaultPermissionsPolicy.self, json: json) + } + } + } + /// The ShowcaseDownloadPolicy union public enum ShowcaseDownloadPolicy: CustomStringConvertible, JSONRepresentable { /// Do not allow files to be downloaded from Showcases. @@ -1677,16 +1934,20 @@ public class TeamPolicies { public let officeAddin: TeamPolicies.OfficeAddInPolicy /// The team policy on if teammembers are allowed to suggest users for admins to invite to the team. public let suggestMembersPolicy: TeamPolicies.SuggestMembersPolicy + /// Policy for deciding whether members can edit team folders at the top level of the team space. + public let topLevelContentPolicy: TeamPolicies.TopLevelContentPolicy public init( sharing: TeamPolicies.TeamSharingPolicies, emmState: TeamPolicies.EmmState, officeAddin: TeamPolicies.OfficeAddInPolicy, - suggestMembersPolicy: TeamPolicies.SuggestMembersPolicy + suggestMembersPolicy: TeamPolicies.SuggestMembersPolicy, + topLevelContentPolicy: TeamPolicies.TopLevelContentPolicy ) { self.sharing = sharing self.emmState = emmState self.officeAddin = officeAddin self.suggestMembersPolicy = suggestMembersPolicy + self.topLevelContentPolicy = topLevelContentPolicy } func json() throws -> JSON { @@ -1710,6 +1971,7 @@ public class TeamPolicies { "emm_state": try TeamPolicies.EmmStateSerializer().serialize(value.emmState), "office_addin": try TeamPolicies.OfficeAddInPolicySerializer().serialize(value.officeAddin), "suggest_members_policy": try TeamPolicies.SuggestMembersPolicySerializer().serialize(value.suggestMembersPolicy), + "top_level_content_policy": try TeamPolicies.TopLevelContentPolicySerializer().serialize(value.topLevelContentPolicy), ] return .dictionary(output) } @@ -1721,7 +1983,14 @@ public class TeamPolicies { let emmState = try TeamPolicies.EmmStateSerializer().deserialize(dict["emm_state"] ?? .null) let officeAddin = try TeamPolicies.OfficeAddInPolicySerializer().deserialize(dict["office_addin"] ?? .null) let suggestMembersPolicy = try TeamPolicies.SuggestMembersPolicySerializer().deserialize(dict["suggest_members_policy"] ?? .null) - return TeamMemberPolicies(sharing: sharing, emmState: emmState, officeAddin: officeAddin, suggestMembersPolicy: suggestMembersPolicy) + let topLevelContentPolicy = try TeamPolicies.TopLevelContentPolicySerializer().deserialize(dict["top_level_content_policy"] ?? .null) + return TeamMemberPolicies( + sharing: sharing, + emmState: emmState, + officeAddin: officeAddin, + suggestMembersPolicy: suggestMembersPolicy, + topLevelContentPolicy: topLevelContentPolicy + ) default: throw JSONSerializerError.deserializeError(type: TeamMemberPolicies.self, json: json) } @@ -1740,18 +2009,30 @@ public class TeamPolicies { public let groupCreationPolicy: TeamPolicies.GroupCreation /// Who can view links to content in shared folders. public let sharedFolderLinkRestrictionPolicy: TeamPolicies.SharedFolderBlanketLinkRestrictionPolicy + /// If passwords are required for new links shared outside the team. + public let enforceLinkPasswordPolicy: TeamPolicies.EnforceLinkPasswordPolicy + /// Default expiration date for new links shared outside the team. + public let defaultLinkExpirationDaysPolicy: TeamPolicies.DefaultLinkExpirationDaysPolicy + /// Default access level for new links shared by team members. + public let sharedLinkDefaultPermissionsPolicy: TeamPolicies.SharedLinkDefaultPermissionsPolicy public init( sharedFolderMemberPolicy: TeamPolicies.SharedFolderMemberPolicy, sharedFolderJoinPolicy: TeamPolicies.SharedFolderJoinPolicy, sharedLinkCreatePolicy: TeamPolicies.SharedLinkCreatePolicy, groupCreationPolicy: TeamPolicies.GroupCreation, - sharedFolderLinkRestrictionPolicy: TeamPolicies.SharedFolderBlanketLinkRestrictionPolicy + sharedFolderLinkRestrictionPolicy: TeamPolicies.SharedFolderBlanketLinkRestrictionPolicy, + enforceLinkPasswordPolicy: TeamPolicies.EnforceLinkPasswordPolicy, + defaultLinkExpirationDaysPolicy: TeamPolicies.DefaultLinkExpirationDaysPolicy, + sharedLinkDefaultPermissionsPolicy: TeamPolicies.SharedLinkDefaultPermissionsPolicy ) { self.sharedFolderMemberPolicy = sharedFolderMemberPolicy self.sharedFolderJoinPolicy = sharedFolderJoinPolicy self.sharedLinkCreatePolicy = sharedLinkCreatePolicy self.groupCreationPolicy = groupCreationPolicy self.sharedFolderLinkRestrictionPolicy = sharedFolderLinkRestrictionPolicy + self.enforceLinkPasswordPolicy = enforceLinkPasswordPolicy + self.defaultLinkExpirationDaysPolicy = defaultLinkExpirationDaysPolicy + self.sharedLinkDefaultPermissionsPolicy = sharedLinkDefaultPermissionsPolicy } func json() throws -> JSON { @@ -1775,8 +2056,16 @@ public class TeamPolicies { "shared_folder_join_policy": try TeamPolicies.SharedFolderJoinPolicySerializer().serialize(value.sharedFolderJoinPolicy), "shared_link_create_policy": try TeamPolicies.SharedLinkCreatePolicySerializer().serialize(value.sharedLinkCreatePolicy), "group_creation_policy": try TeamPolicies.GroupCreationSerializer().serialize(value.groupCreationPolicy), - "shared_folder_link_restriction_policy": try TeamPolicies.SharedFolderBlanketLinkRestrictionPolicySerializer() - .serialize(value.sharedFolderLinkRestrictionPolicy), + "shared_folder_link_restriction_policy": try TeamPolicies.SharedFolderBlanketLinkRestrictionPolicySerializer().serialize( + value.sharedFolderLinkRestrictionPolicy + ), + "enforce_link_password_policy": try TeamPolicies.EnforceLinkPasswordPolicySerializer().serialize(value.enforceLinkPasswordPolicy), + "default_link_expiration_days_policy": try TeamPolicies.DefaultLinkExpirationDaysPolicySerializer().serialize( + value.defaultLinkExpirationDaysPolicy + ), + "shared_link_default_permissions_policy": try TeamPolicies.SharedLinkDefaultPermissionsPolicySerializer().serialize( + value.sharedLinkDefaultPermissionsPolicy + ), ] return .dictionary(output) } @@ -1784,19 +2073,29 @@ public class TeamPolicies { public func deserialize(_ json: JSON) throws -> TeamSharingPolicies { switch json { case .dictionary(let dict): - let sharedFolderMemberPolicy = try TeamPolicies.SharedFolderMemberPolicySerializer() - .deserialize(dict["shared_folder_member_policy"] ?? .null) + let sharedFolderMemberPolicy = try TeamPolicies.SharedFolderMemberPolicySerializer().deserialize(dict["shared_folder_member_policy"] ?? .null) let sharedFolderJoinPolicy = try TeamPolicies.SharedFolderJoinPolicySerializer().deserialize(dict["shared_folder_join_policy"] ?? .null) let sharedLinkCreatePolicy = try TeamPolicies.SharedLinkCreatePolicySerializer().deserialize(dict["shared_link_create_policy"] ?? .null) let groupCreationPolicy = try TeamPolicies.GroupCreationSerializer().deserialize(dict["group_creation_policy"] ?? .null) - let sharedFolderLinkRestrictionPolicy = try TeamPolicies.SharedFolderBlanketLinkRestrictionPolicySerializer() - .deserialize(dict["shared_folder_link_restriction_policy"] ?? .null) + let sharedFolderLinkRestrictionPolicy = try TeamPolicies.SharedFolderBlanketLinkRestrictionPolicySerializer().deserialize( + dict["shared_folder_link_restriction_policy"] ?? .null + ) + let enforceLinkPasswordPolicy = try TeamPolicies.EnforceLinkPasswordPolicySerializer().deserialize(dict["enforce_link_password_policy"] ?? .null) + let defaultLinkExpirationDaysPolicy = try TeamPolicies.DefaultLinkExpirationDaysPolicySerializer().deserialize( + dict["default_link_expiration_days_policy"] ?? .null + ) + let sharedLinkDefaultPermissionsPolicy = try TeamPolicies.SharedLinkDefaultPermissionsPolicySerializer().deserialize( + dict["shared_link_default_permissions_policy"] ?? .null + ) return TeamSharingPolicies( sharedFolderMemberPolicy: sharedFolderMemberPolicy, sharedFolderJoinPolicy: sharedFolderJoinPolicy, sharedLinkCreatePolicy: sharedLinkCreatePolicy, groupCreationPolicy: groupCreationPolicy, - sharedFolderLinkRestrictionPolicy: sharedFolderLinkRestrictionPolicy + sharedFolderLinkRestrictionPolicy: sharedFolderLinkRestrictionPolicy, + enforceLinkPasswordPolicy: enforceLinkPasswordPolicy, + defaultLinkExpirationDaysPolicy: defaultLinkExpirationDaysPolicy, + sharedLinkDefaultPermissionsPolicy: sharedLinkDefaultPermissionsPolicy ) default: throw JSONSerializerError.deserializeError(type: TeamSharingPolicies.self, json: json) @@ -1804,6 +2103,67 @@ public class TeamPolicies { } } + /// The TopLevelContentPolicy union + public enum TopLevelContentPolicy: CustomStringConvertible, JSONRepresentable { + /// Only admins can edit team folders at the top level of the team space. + case adminOnly + /// Everyone on the team can edit team folders at the top level of the team space. + case everyone + /// An unspecified error. + case other + + func json() throws -> JSON { + try TopLevelContentPolicySerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try TopLevelContentPolicySerializer().serialize(self)))" + } catch { + return "Failed to generate description for TopLevelContentPolicy: \(error)" + } + } + } + + public class TopLevelContentPolicySerializer: JSONSerializer { + public init() {} + public func serialize(_ value: TopLevelContentPolicy) throws -> JSON { + switch value { + case .adminOnly: + var d = [String: JSON]() + d[".tag"] = .str("admin_only") + return .dictionary(d) + case .everyone: + var d = [String: JSON]() + d[".tag"] = .str("everyone") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + + public func deserialize(_ json: JSON) throws -> TopLevelContentPolicy { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "admin_only": + return TopLevelContentPolicy.adminOnly + case "everyone": + return TopLevelContentPolicy.everyone + case "other": + return TopLevelContentPolicy.other + default: + return TopLevelContentPolicy.other + } + default: + throw JSONSerializerError.deserializeError(type: TopLevelContentPolicy.self, json: json) + } + } + } + /// The TwoStepVerificationPolicy union public enum TwoStepVerificationPolicy: CustomStringConvertible, JSONRepresentable { /// Enabled require two factor authorization. diff --git a/Source/SwiftyDropbox/Shared/Generated/TeamRoutes.swift b/Source/SwiftyDropbox/Shared/Generated/TeamRoutes.swift index 179a489b..758a1160 100644 --- a/Source/SwiftyDropbox/Shared/Generated/TeamRoutes.swift +++ b/Source/SwiftyDropbox/Shared/Generated/TeamRoutes.swift @@ -83,7 +83,7 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Team.ListTeamDevicesResult` object on /// success or a `Team.ListTeamDevicesError` object on failure. - @available(*, unavailable, message: "devicesListTeamDevices is deprecated. Use devicesListMembersDevices.") + @available(*, unavailable, message: "devicesListTeamDevices is deprecated.") @discardableResult public func devicesListTeamDevices( cursor: String? = nil, includeWebSessions: Bool = true, @@ -108,10 +108,10 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Void` object on success or a /// `Team.RevokeDeviceSessionError` object on failure. - @discardableResult public func devicesRevokeDeviceSession( - revokeDeviceSessionArg: Team - .RevokeDeviceSessionArg - ) -> RpcRequest { + @discardableResult public func devicesRevokeDeviceSession(revokeDeviceSessionArg: Team.RevokeDeviceSessionArg) -> RpcRequest< + VoidSerializer, + Team.RevokeDeviceSessionErrorSerializer + > { let route = Team.devicesRevokeDeviceSession let serverArgs = revokeDeviceSessionArg return client.request(route, serverArgs: serverArgs) @@ -124,14 +124,16 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Team.RevokeDeviceSessionBatchResult` object /// on success or a `Team.RevokeDeviceSessionBatchError` object on failure. - @discardableResult public func devicesRevokeDeviceSessionBatch(revokeDevices: [Team.RevokeDeviceSessionArg]) - -> RpcRequest { + @discardableResult public func devicesRevokeDeviceSessionBatch(revokeDevices: [Team.RevokeDeviceSessionArg]) -> RpcRequest< + Team.RevokeDeviceSessionBatchResultSerializer, + Team.RevokeDeviceSessionBatchErrorSerializer + > { let route = Team.devicesRevokeDeviceSessionBatch let serverArgs = Team.RevokeDeviceSessionBatchArg(revokeDevices: revokeDevices) return client.request(route, serverArgs: serverArgs) } - /// Get the values for one or more featues. This route allows you to check your account's capability for what + /// Get the values for one or more features. This route allows you to check your account's capability for what /// feature you can access or what value you have for certain features. Permission : Team information. /// /// - scope: team_info.read @@ -141,8 +143,10 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Team.FeaturesGetValuesBatchResult` object /// on success or a `Team.FeaturesGetValuesBatchError` object on failure. - @discardableResult public func featuresGetValues(features: [Team.Feature]) - -> RpcRequest { + @discardableResult public func featuresGetValues(features: [Team.Feature]) -> RpcRequest< + Team.FeaturesGetValuesBatchResultSerializer, + Team.FeaturesGetValuesBatchErrorSerializer + > { let route = Team.featuresGetValues let serverArgs = Team.FeaturesGetValuesBatchArg(features: features) return client.request(route, serverArgs: serverArgs) @@ -197,16 +201,16 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Async.LaunchEmptyResult` object on success /// or a `Team.GroupDeleteError` object on failure. - @discardableResult public func groupsDelete( - groupSelector: Team - .GroupSelector - ) -> RpcRequest { + @discardableResult public func groupsDelete(groupSelector: Team.GroupSelector) -> RpcRequest< + Async.LaunchEmptyResultSerializer, + Team.GroupDeleteErrorSerializer + > { let route = Team.groupsDelete let serverArgs = groupSelector return client.request(route, serverArgs: serverArgs) } - /// Retrieves information about one or more groups. Note that the optional field members in GroupFullInfo is not + /// Retrieves information about one or more groups. Note that the optional field members in GroupFullInfo is not /// returned for system-managed groups. Permission : Team Information. /// /// - scope: groups.read @@ -215,10 +219,10 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Array` object on /// success or a `Team.GroupsGetInfoError` object on failure. - @discardableResult public func groupsGetInfo( - groupsSelector: Team - .GroupsSelector - ) -> RpcRequest, Team.GroupsGetInfoErrorSerializer> { + @discardableResult public func groupsGetInfo(groupsSelector: Team.GroupsSelector) -> RpcRequest< + ArraySerializer, + Team.GroupsGetInfoErrorSerializer + > { let route = Team.groupsGetInfo let serverArgs = groupsSelector return client.request(route, serverArgs: serverArgs) @@ -281,11 +285,10 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Team.GroupMembersChangeResult` object on /// success or a `Team.GroupMembersAddError` object on failure. - @discardableResult public func groupsMembersAdd( - group: Team.GroupSelector, - members: [Team.MemberAccess], - returnMembers: Bool = true - ) -> RpcRequest { + @discardableResult public func groupsMembersAdd(group: Team.GroupSelector, members: [Team.MemberAccess], returnMembers: Bool = true) -> RpcRequest< + Team.GroupMembersChangeResultSerializer, + Team.GroupMembersAddErrorSerializer + > { let route = Team.groupsMembersAdd let serverArgs = Team.GroupMembersAddArg(group: group, members: members, returnMembers: returnMembers) return client.request(route, serverArgs: serverArgs) @@ -300,10 +303,10 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Team.GroupsMembersListResult` object on /// success or a `Team.GroupSelectorError` object on failure. - @discardableResult public func groupsMembersList( - group: Team.GroupSelector, - limit: UInt32 = 1_000 - ) -> RpcRequest { + @discardableResult public func groupsMembersList(group: Team.GroupSelector, limit: UInt32 = 1_000) -> RpcRequest< + Team.GroupsMembersListResultSerializer, + Team.GroupSelectorErrorSerializer + > { let route = Team.groupsMembersList let serverArgs = Team.GroupsMembersListArg(group: group, limit: limit) return client.request(route, serverArgs: serverArgs) @@ -318,8 +321,10 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Team.GroupsMembersListResult` object on /// success or a `Team.GroupsMembersListContinueError` object on failure. - @discardableResult public func groupsMembersListContinue(cursor: String) - -> RpcRequest { + @discardableResult public func groupsMembersListContinue(cursor: String) -> RpcRequest< + Team.GroupsMembersListResultSerializer, + Team.GroupsMembersListContinueErrorSerializer + > { let route = Team.groupsMembersListContinue let serverArgs = Team.GroupsMembersListContinueArg(cursor: cursor) return client.request(route, serverArgs: serverArgs) @@ -337,11 +342,10 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Team.GroupMembersChangeResult` object on /// success or a `Team.GroupMembersRemoveError` object on failure. - @discardableResult public func groupsMembersRemove( - group: Team.GroupSelector, - users: [Team.UserSelectorArg], - returnMembers: Bool = true - ) -> RpcRequest { + @discardableResult public func groupsMembersRemove(group: Team.GroupSelector, users: [Team.UserSelectorArg], returnMembers: Bool = true) -> RpcRequest< + Team.GroupMembersChangeResultSerializer, + Team.GroupMembersRemoveErrorSerializer + > { let route = Team.groupsMembersRemove let serverArgs = Team.GroupMembersRemoveArg(group: group, users: users, returnMembers: returnMembers) return client.request(route, serverArgs: serverArgs) @@ -352,8 +356,8 @@ public class TeamRoutes: DropboxTransportClientOwning { /// - scope: groups.write /// /// - parameter accessType: New group access type the user will have. - /// - parameter returnMembers: Whether to return the list of members in the group. Note that the default value will - /// cause all the group members to be returned in the response. This may take a long time for large groups. + /// - parameter returnMembers: Whether to return the list of members in the group. Note that the default value will + /// cause all the group members to be returned in the response. This may take a long time for large groups. /// /// - returns: Through the response callback, the caller will receive a `Array` object on /// success or a `Team.GroupMemberSetAccessTypeError` object on failure. @@ -447,8 +451,10 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Team.LegalHoldsListHeldRevisionResult` /// object on success or a `Team.LegalHoldsListHeldRevisionsError` object on failure. - @discardableResult public func legalHoldsListHeldRevisions(id: String) - -> RpcRequest { + @discardableResult public func legalHoldsListHeldRevisions(id: String) -> RpcRequest< + Team.LegalHoldsListHeldRevisionResultSerializer, + Team.LegalHoldsListHeldRevisionsErrorSerializer + > { let route = Team.legalHoldsListHeldRevisions let serverArgs = Team.LegalHoldsListHeldRevisionsArg(id: id) return client.request(route, serverArgs: serverArgs) @@ -465,10 +471,10 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Team.LegalHoldsListHeldRevisionResult` /// object on success or a `Team.LegalHoldsListHeldRevisionsError` object on failure. - @discardableResult public func legalHoldsListHeldRevisionsContinue( - id: String, - cursor: String? = nil - ) -> RpcRequest { + @discardableResult public func legalHoldsListHeldRevisionsContinue(id: String, cursor: String? = nil) -> RpcRequest< + Team.LegalHoldsListHeldRevisionResultSerializer, + Team.LegalHoldsListHeldRevisionsErrorSerializer + > { let route = Team.legalHoldsListHeldRevisionsContinue let serverArgs = Team.LegalHoldsListHeldRevisionsContinueArg(id: id, cursor: cursor) return client.request(route, serverArgs: serverArgs) @@ -483,8 +489,10 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Team.LegalHoldsListPoliciesResult` object /// on success or a `Team.LegalHoldsListPoliciesError` object on failure. - @discardableResult public func legalHoldsListPolicies(includeReleased: Bool = false) - -> RpcRequest { + @discardableResult public func legalHoldsListPolicies(includeReleased: Bool = false) -> RpcRequest< + Team.LegalHoldsListPoliciesResultSerializer, + Team.LegalHoldsListPoliciesErrorSerializer + > { let route = Team.legalHoldsListPolicies let serverArgs = Team.LegalHoldsListPoliciesArg(includeReleased: includeReleased) return client.request(route, serverArgs: serverArgs) @@ -517,12 +525,10 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Team.LegalHoldPolicy` object on success or /// a `Team.LegalHoldsPolicyUpdateError` object on failure. - @discardableResult public func legalHoldsUpdatePolicy( - id: String, - name: String? = nil, - description_: String? = nil, - members: [String]? = nil - ) -> RpcRequest { + @discardableResult public func legalHoldsUpdatePolicy(id: String, name: String? = nil, description_: String? = nil, members: [String]? = nil) -> RpcRequest< + Team.LegalHoldPolicySerializer, + Team.LegalHoldsPolicyUpdateErrorSerializer + > { let route = Team.legalHoldsUpdatePolicy let serverArgs = Team.LegalHoldsPolicyUpdateArg(id: id, name: name, description_: description_, members: members) return client.request(route, serverArgs: serverArgs) @@ -536,8 +542,10 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Team.ListMemberAppsResult` object on /// success or a `Team.ListMemberAppsError` object on failure. - @discardableResult public func linkedAppsListMemberLinkedApps(teamMemberId: String) - -> RpcRequest { + @discardableResult public func linkedAppsListMemberLinkedApps(teamMemberId: String) -> RpcRequest< + Team.ListMemberAppsResultSerializer, + Team.ListMemberAppsErrorSerializer + > { let route = Team.linkedAppsListMemberLinkedApps let serverArgs = Team.ListMemberAppsArg(teamMemberId: teamMemberId) return client.request(route, serverArgs: serverArgs) @@ -554,8 +562,10 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Team.ListMembersAppsResult` object on /// success or a `Team.ListMembersAppsError` object on failure. - @discardableResult public func linkedAppsListMembersLinkedApps(cursor: String? = nil) - -> RpcRequest { + @discardableResult public func linkedAppsListMembersLinkedApps(cursor: String? = nil) -> RpcRequest< + Team.ListMembersAppsResultSerializer, + Team.ListMembersAppsErrorSerializer + > { let route = Team.linkedAppsListMembersLinkedApps let serverArgs = Team.ListMembersAppsArg(cursor: cursor) return client.request(route, serverArgs: serverArgs) @@ -572,9 +582,11 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Team.ListTeamAppsResult` object on success /// or a `Team.ListTeamAppsError` object on failure. - @available(*, unavailable, message: "linkedAppsListTeamLinkedApps is deprecated. Use linkedAppsListMembersLinkedApps.") - @discardableResult public func linkedAppsListTeamLinkedApps(cursor: String? = nil) - -> RpcRequest { + @available(*, unavailable, message: "linkedAppsListTeamLinkedApps is deprecated.") + @discardableResult public func linkedAppsListTeamLinkedApps(cursor: String? = nil) -> RpcRequest< + Team.ListTeamAppsResultSerializer, + Team.ListTeamAppsErrorSerializer + > { let route = Team.linkedAppsListTeamLinkedApps let serverArgs = Team.ListTeamAppsArg(cursor: cursor) return client.request(route, serverArgs: serverArgs) @@ -586,16 +598,15 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - parameter appId: The application's unique id. /// - parameter teamMemberId: The unique id of the member owning the device. - /// - parameter keepAppFolder: This flag is not longer supported, the application dedicated folder (in case the - /// application uses one) will be kept. + /// - parameter keepAppFolder: Field is deprecated. This flag is not longer supported, the application dedicated + /// folder (in case the application uses one) will be kept. /// /// - returns: Through the response callback, the caller will receive a `Void` object on success or a /// `Team.RevokeLinkedAppError` object on failure. - @discardableResult public func linkedAppsRevokeLinkedApp( - appId: String, - teamMemberId: String, - keepAppFolder: Bool = true - ) -> RpcRequest { + @discardableResult public func linkedAppsRevokeLinkedApp(appId: String, teamMemberId: String, keepAppFolder: Bool = true) -> RpcRequest< + VoidSerializer, + Team.RevokeLinkedAppErrorSerializer + > { let route = Team.linkedAppsRevokeLinkedApp let serverArgs = Team.RevokeLinkedApiAppArg(appId: appId, teamMemberId: teamMemberId, keepAppFolder: keepAppFolder) return client.request(route, serverArgs: serverArgs) @@ -608,8 +619,10 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Team.RevokeLinkedAppBatchResult` object on /// success or a `Team.RevokeLinkedAppBatchError` object on failure. - @discardableResult public func linkedAppsRevokeLinkedAppBatch(revokeLinkedApp: [Team.RevokeLinkedApiAppArg]) - -> RpcRequest { + @discardableResult public func linkedAppsRevokeLinkedAppBatch(revokeLinkedApp: [Team.RevokeLinkedApiAppArg]) -> RpcRequest< + Team.RevokeLinkedAppBatchResultSerializer, + Team.RevokeLinkedAppBatchErrorSerializer + > { let route = Team.linkedAppsRevokeLinkedAppBatch let serverArgs = Team.RevokeLinkedApiAppBatchArg(revokeLinkedApp: revokeLinkedApp) return client.request(route, serverArgs: serverArgs) @@ -623,8 +636,10 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Team.ExcludedUsersUpdateResult` object on /// success or a `Team.ExcludedUsersUpdateError` object on failure. - @discardableResult public func memberSpaceLimitsExcludedUsersAdd(users: [Team.UserSelectorArg]? = nil) - -> RpcRequest { + @discardableResult public func memberSpaceLimitsExcludedUsersAdd(users: [Team.UserSelectorArg]? = nil) -> RpcRequest< + Team.ExcludedUsersUpdateResultSerializer, + Team.ExcludedUsersUpdateErrorSerializer + > { let route = Team.memberSpaceLimitsExcludedUsersAdd let serverArgs = Team.ExcludedUsersUpdateArg(users: users) return client.request(route, serverArgs: serverArgs) @@ -638,8 +653,10 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Team.ExcludedUsersListResult` object on /// success or a `Team.ExcludedUsersListError` object on failure. - @discardableResult public func memberSpaceLimitsExcludedUsersList(limit: UInt32 = 1_000) - -> RpcRequest { + @discardableResult public func memberSpaceLimitsExcludedUsersList(limit: UInt32 = 1_000) -> RpcRequest< + Team.ExcludedUsersListResultSerializer, + Team.ExcludedUsersListErrorSerializer + > { let route = Team.memberSpaceLimitsExcludedUsersList let serverArgs = Team.ExcludedUsersListArg(limit: limit) return client.request(route, serverArgs: serverArgs) @@ -653,8 +670,10 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Team.ExcludedUsersListResult` object on /// success or a `Team.ExcludedUsersListContinueError` object on failure. - @discardableResult public func memberSpaceLimitsExcludedUsersListContinue(cursor: String) - -> RpcRequest { + @discardableResult public func memberSpaceLimitsExcludedUsersListContinue(cursor: String) -> RpcRequest< + Team.ExcludedUsersListResultSerializer, + Team.ExcludedUsersListContinueErrorSerializer + > { let route = Team.memberSpaceLimitsExcludedUsersListContinue let serverArgs = Team.ExcludedUsersListContinueArg(cursor: cursor) return client.request(route, serverArgs: serverArgs) @@ -668,8 +687,10 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Team.ExcludedUsersUpdateResult` object on /// success or a `Team.ExcludedUsersUpdateError` object on failure. - @discardableResult public func memberSpaceLimitsExcludedUsersRemove(users: [Team.UserSelectorArg]? = nil) - -> RpcRequest { + @discardableResult public func memberSpaceLimitsExcludedUsersRemove(users: [Team.UserSelectorArg]? = nil) -> RpcRequest< + Team.ExcludedUsersUpdateResultSerializer, + Team.ExcludedUsersUpdateErrorSerializer + > { let route = Team.memberSpaceLimitsExcludedUsersRemove let serverArgs = Team.ExcludedUsersUpdateArg(users: users) return client.request(route, serverArgs: serverArgs) @@ -685,8 +706,10 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Array` object on /// success or a `Team.CustomQuotaError` object on failure. - @discardableResult public func memberSpaceLimitsGetCustomQuota(users: [Team.UserSelectorArg]) - -> RpcRequest, Team.CustomQuotaErrorSerializer> { + @discardableResult public func memberSpaceLimitsGetCustomQuota(users: [Team.UserSelectorArg]) -> RpcRequest< + ArraySerializer, + Team.CustomQuotaErrorSerializer + > { let route = Team.memberSpaceLimitsGetCustomQuota let serverArgs = Team.CustomQuotaUsersArg(users: users) return client.request(route, serverArgs: serverArgs) @@ -702,14 +725,16 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Array` object /// on success or a `Team.CustomQuotaError` object on failure. - @discardableResult public func memberSpaceLimitsRemoveCustomQuota(users: [Team.UserSelectorArg]) - -> RpcRequest, Team.CustomQuotaErrorSerializer> { + @discardableResult public func memberSpaceLimitsRemoveCustomQuota(users: [Team.UserSelectorArg]) -> RpcRequest< + ArraySerializer, + Team.CustomQuotaErrorSerializer + > { let route = Team.memberSpaceLimitsRemoveCustomQuota let serverArgs = Team.CustomQuotaUsersArg(users: users) return client.request(route, serverArgs: serverArgs) } - /// Set users custom quota. Custom quota has to be at least 15GB. A maximum of 1000 members can be specified in a + /// Set users custom quota. Custom quota has to be at least 2GB. A maximum of 1000 members can be specified in a /// single call. Note: to apply a custom space limit, a team admin needs to set a member space limit for the /// team first. (the team admin can check the settings here: https://www.dropbox.com/team/admin/settings/space). /// @@ -719,8 +744,10 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Array` object on /// success or a `Team.SetCustomQuotaError` object on failure. - @discardableResult public func memberSpaceLimitsSetCustomQuota(usersAndQuotas: [Team.UserCustomQuotaArg]) - -> RpcRequest, Team.SetCustomQuotaErrorSerializer> { + @discardableResult public func memberSpaceLimitsSetCustomQuota(usersAndQuotas: [Team.UserCustomQuotaArg]) -> RpcRequest< + ArraySerializer, + Team.SetCustomQuotaErrorSerializer + > { let route = Team.memberSpaceLimitsSetCustomQuota let serverArgs = Team.SetCustomQuotaArg(usersAndQuotas: usersAndQuotas) return client.request(route, serverArgs: serverArgs) @@ -740,10 +767,10 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Team.MembersAddLaunch` object on success or /// a `Void` object on failure. - @discardableResult public func membersAdd( - newMembers: [Team.MemberAddArg], - forceAsync: Bool = false - ) -> RpcRequest { + @discardableResult public func membersAdd(newMembers: [Team.MemberAddArg], forceAsync: Bool = false) -> RpcRequest< + Team.MembersAddLaunchSerializer, + VoidSerializer + > { let route = Team.membersAdd let serverArgs = Team.MembersAddArg(newMembers: newMembers, forceAsync: forceAsync) return client.request(route, serverArgs: serverArgs) @@ -754,8 +781,7 @@ public class TeamRoutes: DropboxTransportClientOwning { /// with the given email address, and that account will be invited to the team. If a personal Dropbox account /// exists with the email address specified in the call, this call will create a placeholder Dropbox account for /// the user on the team and send an email inviting the user to migrate their existing personal account onto the - /// team. Team member management apps are required to set an initial given_name and surname for a user to use in - /// the team invitation and for 'Perform as team member' actions taken on the user before they become 'active'. + /// team. /// /// - scope: members.write /// @@ -763,10 +789,10 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Team.MembersAddLaunchV2Result` object on /// success or a `Void` object on failure. - @discardableResult public func membersAddV2( - newMembers: [Team.MemberAddV2Arg], - forceAsync: Bool = false - ) -> RpcRequest { + @discardableResult public func membersAddV2(newMembers: [Team.MemberAddV2Arg], forceAsync: Bool = false) -> RpcRequest< + Team.MembersAddLaunchV2ResultSerializer, + VoidSerializer + > { let route = Team.membersAddV2 let serverArgs = Team.MembersAddV2Arg(newMembers: newMembers, forceAsync: forceAsync) return client.request(route, serverArgs: serverArgs) @@ -798,13 +824,70 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Team.MembersAddJobStatusV2Result` object on /// success or a `Async.PollError` object on failure. - @discardableResult public func membersAddJobStatusGetV2(asyncJobId: String) - -> RpcRequest { + @discardableResult public func membersAddJobStatusGetV2(asyncJobId: String) -> RpcRequest< + Team.MembersAddJobStatusV2ResultSerializer, + Async.PollErrorSerializer + > { let route = Team.membersAddJobStatusGetV2 let serverArgs = Async.PollArg(asyncJobId: asyncJobId) return client.request(route, serverArgs: serverArgs) } + /// Launch a bulk suspend job. The server enforces a maximum of 500 members. + /// + /// - scope: members.write + /// + /// - parameter members: Must contain between 1 and 500 targets. The launch handler also rejects duplicate client + /// item IDs and duplicate member selectors. + /// + /// - returns: Through the response callback, the caller will receive a `Async.LaunchResultBase` object on success + /// or a `Team.BulkSuspendError` object on failure. + @discardableResult public func membersBulkSuspend(members: [Team.BulkSuspendMemberTarget]) -> RpcRequest< + Async.LaunchResultBaseSerializer, + Team.BulkSuspendErrorSerializer + > { + let route = Team.membersBulkSuspend + let serverArgs = Team.BulkSuspendArg(members: members) + return client.request(route, serverArgs: serverArgs) + } + + /// Poll a previously launched bulk suspend job. + /// + /// - scope: members.write + /// + /// - parameter asyncJobId: Id of the asynchronous job. This is the value of a response returned from the method + /// that launched the job. + /// + /// - returns: Through the response callback, the caller will receive a `Team.BulkSuspendJobStatus` object on + /// success or a `Async.PollError` object on failure. + @discardableResult public func membersBulkSuspendJobStatusCheck(asyncJobId: String) -> RpcRequest< + Team.BulkSuspendJobStatusSerializer, + Async.PollErrorSerializer + > { + let route = Team.membersBulkSuspendJobStatusCheck + let serverArgs = Async.PollArg(asyncJobId: asyncJobId) + return client.request(route, serverArgs: serverArgs) + } + + /// Permanently delete the files of a user who has been removed from the team. After permanent deletion, those files + /// will not be available to be transferred to another team member. Permission : Team member management Exactly + /// one of team_member_id, email, or external_id must be provided to identify the user account. + /// + /// - scope: members.write + /// + /// - parameter user: Identity of user whose files will be permanently deleted. + /// + /// - returns: Through the response callback, the caller will receive a `Void` object on success or a + /// `Team.MembersDeleteFormerMemberFilesError` object on failure. + @discardableResult public func membersDeleteFormerMemberFiles(user: Team.UserSelectorArg) -> RpcRequest< + VoidSerializer, + Team.MembersDeleteFormerMemberFilesErrorSerializer + > { + let route = Team.membersDeleteFormerMemberFiles + let serverArgs = Team.MembersFormerMemberArg(user: user) + return client.request(route, serverArgs: serverArgs) + } + /// Deletes a team member's profile photo. Permission : Team member management. /// /// - scope: members.write @@ -813,10 +896,10 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Team.TeamMemberInfo` object on success or a /// `Team.MembersDeleteProfilePhotoError` object on failure. - @discardableResult public func membersDeleteProfilePhoto( - user: Team - .UserSelectorArg - ) -> RpcRequest { + @discardableResult public func membersDeleteProfilePhoto(user: Team.UserSelectorArg) -> RpcRequest< + Team.TeamMemberInfoSerializer, + Team.MembersDeleteProfilePhotoErrorSerializer + > { let route = Team.membersDeleteProfilePhoto let serverArgs = Team.MembersDeleteProfilePhotoArg(user: user) return client.request(route, serverArgs: serverArgs) @@ -830,10 +913,10 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Team.TeamMemberInfoV2Result` object on /// success or a `Team.MembersDeleteProfilePhotoError` object on failure. - @discardableResult public func membersDeleteProfilePhotoV2( - user: Team - .UserSelectorArg - ) -> RpcRequest { + @discardableResult public func membersDeleteProfilePhotoV2(user: Team.UserSelectorArg) -> RpcRequest< + Team.TeamMemberInfoV2ResultSerializer, + Team.MembersDeleteProfilePhotoErrorSerializer + > { let route = Team.membersDeleteProfilePhotoV2 let serverArgs = Team.MembersDeleteProfilePhotoArg(user: user) return client.request(route, serverArgs: serverArgs) @@ -861,8 +944,10 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Array` object on /// success or a `Team.MembersGetInfoError` object on failure. - @discardableResult public func membersGetInfo(members: [Team.UserSelectorArg]) - -> RpcRequest, Team.MembersGetInfoErrorSerializer> { + @discardableResult public func membersGetInfo(members: [Team.UserSelectorArg]) -> RpcRequest< + ArraySerializer, + Team.MembersGetInfoErrorSerializer + > { let route = Team.membersGetInfo let serverArgs = Team.MembersGetInfoArgs(members: members) return client.request(route, serverArgs: serverArgs) @@ -877,8 +962,10 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Team.MembersGetInfoV2Result` object on /// success or a `Team.MembersGetInfoError` object on failure. - @discardableResult public func membersGetInfoV2(members: [Team.UserSelectorArg]) - -> RpcRequest { + @discardableResult public func membersGetInfoV2(members: [Team.UserSelectorArg]) -> RpcRequest< + Team.MembersGetInfoV2ResultSerializer, + Team.MembersGetInfoErrorSerializer + > { let route = Team.membersGetInfoV2 let serverArgs = Team.MembersGetInfoV2Arg(members: members) return client.request(route, serverArgs: serverArgs) @@ -893,10 +980,10 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Team.MembersListResult` object on success /// or a `Team.MembersListError` object on failure. - @discardableResult public func membersList( - limit: UInt32 = 1_000, - includeRemoved: Bool = false - ) -> RpcRequest { + @discardableResult public func membersList(limit: UInt32 = 1_000, includeRemoved: Bool = false) -> RpcRequest< + Team.MembersListResultSerializer, + Team.MembersListErrorSerializer + > { let route = Team.membersList let serverArgs = Team.MembersListArg(limit: limit, includeRemoved: includeRemoved) return client.request(route, serverArgs: serverArgs) @@ -911,10 +998,10 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Team.MembersListV2Result` object on success /// or a `Team.MembersListError` object on failure. - @discardableResult public func membersListV2( - limit: UInt32 = 1_000, - includeRemoved: Bool = false - ) -> RpcRequest { + @discardableResult public func membersListV2(limit: UInt32 = 1_000, includeRemoved: Bool = false) -> RpcRequest< + Team.MembersListV2ResultSerializer, + Team.MembersListErrorSerializer + > { let route = Team.membersListV2 let serverArgs = Team.MembersListArg(limit: limit, includeRemoved: includeRemoved) return client.request(route, serverArgs: serverArgs) @@ -929,8 +1016,7 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Team.MembersListResult` object on success /// or a `Team.MembersListContinueError` object on failure. - @discardableResult public func membersListContinue(cursor: String) - -> RpcRequest { + @discardableResult public func membersListContinue(cursor: String) -> RpcRequest { let route = Team.membersListContinue let serverArgs = Team.MembersListContinueArg(cursor: cursor) return client.request(route, serverArgs: serverArgs) @@ -945,8 +1031,10 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Team.MembersListV2Result` object on success /// or a `Team.MembersListContinueError` object on failure. - @discardableResult public func membersListContinueV2(cursor: String) - -> RpcRequest { + @discardableResult public func membersListContinueV2(cursor: String) -> RpcRequest< + Team.MembersListV2ResultSerializer, + Team.MembersListContinueErrorSerializer + > { let route = Team.membersListContinueV2 let serverArgs = Team.MembersListContinueArg(cursor: cursor) return client.request(route, serverArgs: serverArgs) @@ -983,8 +1071,10 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Async.PollEmptyResult` object on success or /// a `Async.PollError` object on failure. - @discardableResult public func membersMoveFormerMemberFilesJobStatusCheck(asyncJobId: String) - -> RpcRequest { + @discardableResult public func membersMoveFormerMemberFilesJobStatusCheck(asyncJobId: String) -> RpcRequest< + Async.PollEmptyResultSerializer, + Async.PollErrorSerializer + > { let route = Team.membersMoveFormerMemberFilesJobStatusCheck let serverArgs = Async.PollArg(asyncJobId: asyncJobId) return client.request(route, serverArgs: serverArgs) @@ -1010,9 +1100,10 @@ public class TeamRoutes: DropboxTransportClientOwning { /// a 7 day period or until the account has been permanently deleted or transferred to another account /// (whichever comes first). Calling membersAdd while a user is still recoverable on your team will return with /// userAlreadyOnTeam in MemberAddResult. Accounts can have their files transferred via the admin console for a - /// limited time, based on the version history length associated with the team (180 days for most teams). This - /// endpoint may initiate an asynchronous job. To obtain the final result of the job, the client should - /// periodically poll membersRemoveJobStatusGet. + /// limited time, based on the version history length associated with the team (180 days for most teams). + /// Accounts can have their stacks transferred through the admin console. This only transfers stacks that they + /// have created. This endpoint may initiate an asynchronous job. To obtain the final result of the job, the + /// client should periodically poll membersRemoveJobStatusGet. /// /// - scope: members.delete /// @@ -1020,12 +1111,14 @@ public class TeamRoutes: DropboxTransportClientOwning { /// - parameter transferAdminId: If provided, errors during the transfer process will be sent via email to this /// user. If the transfer_dest_id argument was provided, then this argument must be provided as well. /// - parameter keepAccount: Downgrade the member to a Basic account. The user will retain the email address - /// associated with their Dropbox account and data in their account that is not restricted to team members. In + /// associated with their Dropbox account and data in their account that is not restricted to team members. In /// order to keep the account the argument wipeData should be set to false. /// - parameter retainTeamShares: If provided, allows removed users to keep access to Dropbox folders (not Dropbox /// Paper folders) already explicitly shared with them (not via a group) when they are downgraded to a Basic /// account. Users will not retain access to folders that do not allow external sharing. In order to keep the /// sharing relationships, the arguments wipeData should be set to false and keepAccount should be set to true. + /// - parameter permanentlyDeleteFiles: Permanently delete the data in the deleted member's account. After permanent + /// deletion, the data is no longer available to be transferred to a different user. /// /// - returns: Through the response callback, the caller will receive a `Async.LaunchEmptyResult` object on success /// or a `Team.MembersRemoveError` object on failure. @@ -1035,7 +1128,8 @@ public class TeamRoutes: DropboxTransportClientOwning { transferDestId: Team.UserSelectorArg? = nil, transferAdminId: Team.UserSelectorArg? = nil, keepAccount: Bool = false, - retainTeamShares: Bool = false + retainTeamShares: Bool = false, + permanentlyDeleteFiles: Bool = false ) -> RpcRequest { let route = Team.membersRemove let serverArgs = Team.MembersRemoveArg( @@ -1044,7 +1138,8 @@ public class TeamRoutes: DropboxTransportClientOwning { transferDestId: transferDestId, transferAdminId: transferAdminId, keepAccount: keepAccount, - retainTeamShares: retainTeamShares + retainTeamShares: retainTeamShares, + permanentlyDeleteFiles: permanentlyDeleteFiles ) return client.request(route, serverArgs: serverArgs) } @@ -1074,8 +1169,10 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Team.AddSecondaryEmailsResult` object on /// success or a `Team.AddSecondaryEmailsError` object on failure. - @discardableResult public func membersSecondaryEmailsAdd(newSecondaryEmails: [Team.UserSecondaryEmailsArg]) - -> RpcRequest { + @discardableResult public func membersSecondaryEmailsAdd(newSecondaryEmails: [Team.UserSecondaryEmailsArg]) -> RpcRequest< + Team.AddSecondaryEmailsResultSerializer, + Team.AddSecondaryEmailsErrorSerializer + > { let route = Team.membersSecondaryEmailsAdd let serverArgs = Team.AddSecondaryEmailsArg(newSecondaryEmails: newSecondaryEmails) return client.request(route, serverArgs: serverArgs) @@ -1090,8 +1187,10 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Team.DeleteSecondaryEmailsResult` object on /// success or a `Void` object on failure. - @discardableResult public func membersSecondaryEmailsDelete(emailsToDelete: [Team.UserSecondaryEmailsArg]) - -> RpcRequest { + @discardableResult public func membersSecondaryEmailsDelete(emailsToDelete: [Team.UserSecondaryEmailsArg]) -> RpcRequest< + Team.DeleteSecondaryEmailsResultSerializer, + VoidSerializer + > { let route = Team.membersSecondaryEmailsDelete let serverArgs = Team.DeleteSecondaryEmailsArg(emailsToDelete: emailsToDelete) return client.request(route, serverArgs: serverArgs) @@ -1105,8 +1204,10 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Team.ResendVerificationEmailResult` object /// on success or a `Void` object on failure. - @discardableResult public func membersSecondaryEmailsResendVerificationEmails(emailsToResend: [Team.UserSecondaryEmailsArg]) - -> RpcRequest { + @discardableResult public func membersSecondaryEmailsResendVerificationEmails(emailsToResend: [Team.UserSecondaryEmailsArg]) -> RpcRequest< + Team.ResendVerificationEmailResultSerializer, + VoidSerializer + > { let route = Team.membersSecondaryEmailsResendVerificationEmails let serverArgs = Team.ResendVerificationEmailArg(emailsToResend: emailsToResend) return client.request(route, serverArgs: serverArgs) @@ -1122,10 +1223,10 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Void` object on success or a /// `Team.MembersSendWelcomeError` object on failure. - @discardableResult public func membersSendWelcomeEmail( - userSelectorArg: Team - .UserSelectorArg - ) -> RpcRequest { + @discardableResult public func membersSendWelcomeEmail(userSelectorArg: Team.UserSelectorArg) -> RpcRequest< + VoidSerializer, + Team.MembersSendWelcomeErrorSerializer + > { let route = Team.membersSendWelcomeEmail let serverArgs = userSelectorArg return client.request(route, serverArgs: serverArgs) @@ -1140,10 +1241,10 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Team.MembersSetPermissionsResult` object on /// success or a `Team.MembersSetPermissionsError` object on failure. - @discardableResult public func membersSetAdminPermissions( - user: Team.UserSelectorArg, - newRole: Team.AdminTier - ) -> RpcRequest { + @discardableResult public func membersSetAdminPermissions(user: Team.UserSelectorArg, newRole: Team.AdminTier) -> RpcRequest< + Team.MembersSetPermissionsResultSerializer, + Team.MembersSetPermissionsErrorSerializer + > { let route = Team.membersSetAdminPermissions let serverArgs = Team.MembersSetPermissionsArg(user: user, newRole: newRole) return client.request(route, serverArgs: serverArgs) @@ -1159,10 +1260,10 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Team.MembersSetPermissions2Result` object /// on success or a `Team.MembersSetPermissions2Error` object on failure. - @discardableResult public func membersSetAdminPermissionsV2( - user: Team.UserSelectorArg, - newRoles: [String]? = nil - ) -> RpcRequest { + @discardableResult public func membersSetAdminPermissionsV2(user: Team.UserSelectorArg, newRoles: [String]? = nil) -> RpcRequest< + Team.MembersSetPermissions2ResultSerializer, + Team.MembersSetPermissions2ErrorSerializer + > { let route = Team.membersSetAdminPermissionsV2 let serverArgs = Team.MembersSetPermissions2Arg(user: user, newRoles: newRoles) return client.request(route, serverArgs: serverArgs) @@ -1251,10 +1352,10 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Team.TeamMemberInfo` object on success or a /// `Team.MembersSetProfilePhotoError` object on failure. - @discardableResult public func membersSetProfilePhoto( - user: Team.UserSelectorArg, - photo: Account.PhotoSourceArg - ) -> RpcRequest { + @discardableResult public func membersSetProfilePhoto(user: Team.UserSelectorArg, photo: Account.PhotoSourceArg) -> RpcRequest< + Team.TeamMemberInfoSerializer, + Team.MembersSetProfilePhotoErrorSerializer + > { let route = Team.membersSetProfilePhoto let serverArgs = Team.MembersSetProfilePhotoArg(user: user, photo: photo) return client.request(route, serverArgs: serverArgs) @@ -1269,10 +1370,10 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Team.TeamMemberInfoV2Result` object on /// success or a `Team.MembersSetProfilePhotoError` object on failure. - @discardableResult public func membersSetProfilePhotoV2( - user: Team.UserSelectorArg, - photo: Account.PhotoSourceArg - ) -> RpcRequest { + @discardableResult public func membersSetProfilePhotoV2(user: Team.UserSelectorArg, photo: Account.PhotoSourceArg) -> RpcRequest< + Team.TeamMemberInfoV2ResultSerializer, + Team.MembersSetProfilePhotoErrorSerializer + > { let route = Team.membersSetProfilePhotoV2 let serverArgs = Team.MembersSetProfilePhotoArg(user: user, photo: photo) return client.request(route, serverArgs: serverArgs) @@ -1287,10 +1388,10 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Void` object on success or a /// `Team.MembersSuspendError` object on failure. - @discardableResult public func membersSuspend( - user: Team.UserSelectorArg, - wipeData: Bool = true - ) -> RpcRequest { + @discardableResult public func membersSuspend(user: Team.UserSelectorArg, wipeData: Bool = true) -> RpcRequest< + VoidSerializer, + Team.MembersSuspendErrorSerializer + > { let route = Team.membersSuspend let serverArgs = Team.MembersDeactivateArg(user: user, wipeData: wipeData) return client.request(route, serverArgs: serverArgs) @@ -1318,12 +1419,14 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - scope: team_data.member /// - /// - parameter limit: Specifying a value here has no effect. + /// - parameter limit: Field is deprecated. Specifying a value here has no effect. /// /// - returns: Through the response callback, the caller will receive a `Team.TeamNamespacesListResult` object on /// success or a `Team.TeamNamespacesListError` object on failure. - @discardableResult public func namespacesList(limit: UInt32 = 1_000) - -> RpcRequest { + @discardableResult public func namespacesList(limit: UInt32 = 1_000) -> RpcRequest< + Team.TeamNamespacesListResultSerializer, + Team.TeamNamespacesListErrorSerializer + > { let route = Team.namespacesList let serverArgs = Team.TeamNamespacesListArg(limit: limit) return client.request(route, serverArgs: serverArgs) @@ -1338,8 +1441,10 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Team.TeamNamespacesListResult` object on /// success or a `Team.TeamNamespacesListContinueError` object on failure. - @discardableResult public func namespacesListContinue(cursor: String) - -> RpcRequest { + @discardableResult public func namespacesListContinue(cursor: String) -> RpcRequest< + Team.TeamNamespacesListResultSerializer, + Team.TeamNamespacesListContinueErrorSerializer + > { let route = Team.namespacesListContinue let serverArgs = Team.TeamNamespacesListContinueArg(cursor: cursor) return client.request(route, serverArgs: serverArgs) @@ -1353,12 +1458,10 @@ public class TeamRoutes: DropboxTransportClientOwning { /// - returns: Through the response callback, the caller will receive a `FileProperties.AddTemplateResult` object on /// success or a `FileProperties.ModifyTemplateError` object on failure. @available(*, unavailable, message: "propertiesTemplateAdd is deprecated.") - @discardableResult public func propertiesTemplateAdd( - name: String, - description_: String, - fields: [FileProperties.PropertyFieldTemplate] - ) - -> RpcRequest { + @discardableResult public func propertiesTemplateAdd(name: String, description_: String, fields: [FileProperties.PropertyFieldTemplate]) -> RpcRequest< + FileProperties.AddTemplateResultSerializer, + FileProperties.ModifyTemplateErrorSerializer + > { let route = Team.propertiesTemplateAdd let serverArgs = FileProperties.AddTemplateArg(name: name, description_: description_, fields: fields) return client.request(route, serverArgs: serverArgs) @@ -1374,65 +1477,30 @@ public class TeamRoutes: DropboxTransportClientOwning { /// - returns: Through the response callback, the caller will receive a `FileProperties.GetTemplateResult` object on /// success or a `FileProperties.TemplateError` object on failure. @available(*, unavailable, message: "propertiesTemplateGet is deprecated.") - @discardableResult public func propertiesTemplateGet(templateId: String) - -> RpcRequest { + @discardableResult public func propertiesTemplateGet(templateId: String) -> RpcRequest< + FileProperties.GetTemplateResultSerializer, + FileProperties.TemplateErrorSerializer + > { let route = Team.propertiesTemplateGet let serverArgs = FileProperties.GetTemplateArg(templateId: templateId) return client.request(route, serverArgs: serverArgs) } - /// Permission : Team member file access. The scope for the route is files.team_metadata.write. - /// - /// - scope: files.team_metadata.write - /// - /// - /// - returns: Through the response callback, the caller will receive a `FileProperties.ListTemplateResult` object - /// on success or a `FileProperties.TemplateError` object on failure. - @available(*, unavailable, message: "propertiesTemplateList is deprecated.") - @discardableResult public func propertiesTemplateList() -> RpcRequest { - let route = Team.propertiesTemplateList - return client.request(route) - } - - /// Permission : Team member file access. - /// - /// - scope: files.team_metadata.write - /// - /// - parameter templateId: An identifier for template added by See templatesAddForUser or templatesAddForTeam. - /// - parameter name: A display name for the template. template names can be up to 256 bytes. - /// - parameter description_: Description for the new template. Template descriptions can be up to 1024 bytes. - /// - parameter addFields: Property field templates to be added to the group template. There can be up to 32 - /// properties in a single template. - /// - /// - returns: Through the response callback, the caller will receive a `FileProperties.UpdateTemplateResult` object - /// on success or a `FileProperties.ModifyTemplateError` object on failure. - @available(*, unavailable, message: "propertiesTemplateUpdate is deprecated.") - @discardableResult public func propertiesTemplateUpdate( - templateId: String, - name: String? = nil, - description_: String? = nil, - addFields: [FileProperties.PropertyFieldTemplate]? = nil - ) -> RpcRequest { - let route = Team.propertiesTemplateUpdate - let serverArgs = FileProperties.UpdateTemplateArg(templateId: templateId, name: name, description_: description_, addFields: addFields) - return client.request(route, serverArgs: serverArgs) - } - /// Retrieves reporting data about a team's user activity. Deprecated: Will be removed on July 1st 2021. /// /// - scope: team_info.read /// /// - parameter startDate: Optional starting date (inclusive). If start_date is None or too long ago, this field - /// will be set to 6 months ago. + /// will be set to 6 months ago. /// - parameter endDate: Optional ending date (exclusive). /// /// - returns: Through the response callback, the caller will receive a `Team.GetActivityReport` object on success /// or a `Team.DateRangeError` object on failure. @available(*, unavailable, message: "reportsGetActivity is deprecated.") - @discardableResult public func reportsGetActivity( - startDate: Date? = nil, - endDate: Date? = nil - ) -> RpcRequest { + @discardableResult public func reportsGetActivity(startDate: Date? = nil, endDate: Date? = nil) -> RpcRequest< + Team.GetActivityReportSerializer, + Team.DateRangeErrorSerializer + > { let route = Team.reportsGetActivity let serverArgs = Team.DateRange(startDate: startDate, endDate: endDate) return client.request(route, serverArgs: serverArgs) @@ -1443,16 +1511,16 @@ public class TeamRoutes: DropboxTransportClientOwning { /// - scope: team_info.read /// /// - parameter startDate: Optional starting date (inclusive). If start_date is None or too long ago, this field - /// will be set to 6 months ago. + /// will be set to 6 months ago. /// - parameter endDate: Optional ending date (exclusive). /// /// - returns: Through the response callback, the caller will receive a `Team.GetDevicesReport` object on success or /// a `Team.DateRangeError` object on failure. @available(*, unavailable, message: "reportsGetDevices is deprecated.") - @discardableResult public func reportsGetDevices( - startDate: Date? = nil, - endDate: Date? = nil - ) -> RpcRequest { + @discardableResult public func reportsGetDevices(startDate: Date? = nil, endDate: Date? = nil) -> RpcRequest< + Team.GetDevicesReportSerializer, + Team.DateRangeErrorSerializer + > { let route = Team.reportsGetDevices let serverArgs = Team.DateRange(startDate: startDate, endDate: endDate) return client.request(route, serverArgs: serverArgs) @@ -1463,16 +1531,16 @@ public class TeamRoutes: DropboxTransportClientOwning { /// - scope: team_info.read /// /// - parameter startDate: Optional starting date (inclusive). If start_date is None or too long ago, this field - /// will be set to 6 months ago. + /// will be set to 6 months ago. /// - parameter endDate: Optional ending date (exclusive). /// /// - returns: Through the response callback, the caller will receive a `Team.GetMembershipReport` object on success /// or a `Team.DateRangeError` object on failure. @available(*, unavailable, message: "reportsGetMembership is deprecated.") - @discardableResult public func reportsGetMembership( - startDate: Date? = nil, - endDate: Date? = nil - ) -> RpcRequest { + @discardableResult public func reportsGetMembership(startDate: Date? = nil, endDate: Date? = nil) -> RpcRequest< + Team.GetMembershipReportSerializer, + Team.DateRangeErrorSerializer + > { let route = Team.reportsGetMembership let serverArgs = Team.DateRange(startDate: startDate, endDate: endDate) return client.request(route, serverArgs: serverArgs) @@ -1483,16 +1551,16 @@ public class TeamRoutes: DropboxTransportClientOwning { /// - scope: team_info.read /// /// - parameter startDate: Optional starting date (inclusive). If start_date is None or too long ago, this field - /// will be set to 6 months ago. + /// will be set to 6 months ago. /// - parameter endDate: Optional ending date (exclusive). /// /// - returns: Through the response callback, the caller will receive a `Team.GetStorageReport` object on success or /// a `Team.DateRangeError` object on failure. @available(*, unavailable, message: "reportsGetStorage is deprecated.") - @discardableResult public func reportsGetStorage( - startDate: Date? = nil, - endDate: Date? = nil - ) -> RpcRequest { + @discardableResult public func reportsGetStorage(startDate: Date? = nil, endDate: Date? = nil) -> RpcRequest< + Team.GetStorageReportSerializer, + Team.DateRangeErrorSerializer + > { let route = Team.reportsGetStorage let serverArgs = Team.DateRange(startDate: startDate, endDate: endDate) return client.request(route, serverArgs: serverArgs) @@ -1510,10 +1578,10 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Team.SharingAllowlistAddResponse` object on /// success or a `Team.SharingAllowlistAddError` object on failure. - @discardableResult public func sharingAllowlistAdd( - domains: [String]? = nil, - emails: [String]? = nil - ) -> RpcRequest { + @discardableResult public func sharingAllowlistAdd(domains: [String]? = nil, emails: [String]? = nil) -> RpcRequest< + Team.SharingAllowlistAddResponseSerializer, + Team.SharingAllowlistAddErrorSerializer + > { let route = Team.sharingAllowlistAdd let serverArgs = Team.SharingAllowlistAddArgs(domains: domains, emails: emails) return client.request(route, serverArgs: serverArgs) @@ -1529,8 +1597,10 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Team.SharingAllowlistListResponse` object /// on success or a `Team.SharingAllowlistListError` object on failure. - @discardableResult public func sharingAllowlistList(limit: UInt32 = 1_000) - -> RpcRequest { + @discardableResult public func sharingAllowlistList(limit: UInt32 = 1_000) -> RpcRequest< + Team.SharingAllowlistListResponseSerializer, + Team.SharingAllowlistListErrorSerializer + > { let route = Team.sharingAllowlistList let serverArgs = Team.SharingAllowlistListArg(limit: limit) return client.request(route, serverArgs: serverArgs) @@ -1545,8 +1615,10 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Team.SharingAllowlistListResponse` object /// on success or a `Team.SharingAllowlistListContinueError` object on failure. - @discardableResult public func sharingAllowlistListContinue(cursor: String) - -> RpcRequest { + @discardableResult public func sharingAllowlistListContinue(cursor: String) -> RpcRequest< + Team.SharingAllowlistListResponseSerializer, + Team.SharingAllowlistListContinueErrorSerializer + > { let route = Team.sharingAllowlistListContinue let serverArgs = Team.SharingAllowlistListContinueArg(cursor: cursor) return client.request(route, serverArgs: serverArgs) @@ -1564,10 +1636,10 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Team.SharingAllowlistRemoveResponse` object /// on success or a `Team.SharingAllowlistRemoveError` object on failure. - @discardableResult public func sharingAllowlistRemove( - domains: [String]? = nil, - emails: [String]? = nil - ) -> RpcRequest { + @discardableResult public func sharingAllowlistRemove(domains: [String]? = nil, emails: [String]? = nil) -> RpcRequest< + Team.SharingAllowlistRemoveResponseSerializer, + Team.SharingAllowlistRemoveErrorSerializer + > { let route = Team.sharingAllowlistRemove let serverArgs = Team.SharingAllowlistRemoveArgs(domains: domains, emails: emails) return client.request(route, serverArgs: serverArgs) @@ -1581,15 +1653,19 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Team.TeamFolderMetadata` object on success /// or a `Team.TeamFolderActivateError` object on failure. - @discardableResult public func teamFolderActivate(teamFolderId: String) - -> RpcRequest { + @discardableResult public func teamFolderActivate(teamFolderId: String) -> RpcRequest< + Team.TeamFolderMetadataSerializer, + Team.TeamFolderActivateErrorSerializer + > { let route = Team.teamFolderActivate let serverArgs = Team.TeamFolderIdArg(teamFolderId: teamFolderId) return client.request(route, serverArgs: serverArgs) } /// Sets an active team folder's status to archived and removes all folder and file members. This endpoint cannot be - /// used for teams that have a shared team space. Permission : Team member file access. + /// used for teams that have a shared team space. This route will either finish synchronously, or return a job + /// ID and do the async archive job in background. Please use team_folder/archive/check to check the job status. + /// Permission : Team member file access. /// /// - scope: team_data.content.write /// @@ -1597,16 +1673,19 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Team.TeamFolderArchiveLaunch` object on /// success or a `Team.TeamFolderArchiveError` object on failure. - @discardableResult public func teamFolderArchive( - teamFolderId: String, - forceAsyncOff: Bool = false - ) -> RpcRequest { + @discardableResult public func teamFolderArchive(teamFolderId: String, forceAsyncOff: Bool = false) -> RpcRequest< + Team.TeamFolderArchiveLaunchSerializer, + Team.TeamFolderArchiveErrorSerializer + > { let route = Team.teamFolderArchive let serverArgs = Team.TeamFolderArchiveArg(teamFolderId: teamFolderId, forceAsyncOff: forceAsyncOff) return client.request(route, serverArgs: serverArgs) } - /// Returns the status of an asynchronous job for archiving a team folder. Permission : Team member file access. + /// Returns the status of an asynchronous job for archiving a team folder. The job may show '.tag' as complete, but + /// the team folder could still be in the process of archiving (indicated by status in TeamFolderMetadata with + /// 'archive_in_progress'). To confirm that the team folder is fully archived, check the field status in + /// TeamFolderMetadata in the response for the value 'archived'. Permission : Team member file access. /// /// - scope: team_data.content.write /// @@ -1615,8 +1694,7 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Team.TeamFolderArchiveJobStatus` object on /// success or a `Async.PollError` object on failure. - @discardableResult public func teamFolderArchiveCheck(asyncJobId: String) - -> RpcRequest { + @discardableResult public func teamFolderArchiveCheck(asyncJobId: String) -> RpcRequest { let route = Team.teamFolderArchiveCheck let serverArgs = Async.PollArg(asyncJobId: asyncJobId) return client.request(route, serverArgs: serverArgs) @@ -1633,10 +1711,10 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Team.TeamFolderMetadata` object on success /// or a `Team.TeamFolderCreateError` object on failure. - @discardableResult public func teamFolderCreate( - name: String, - syncSetting: Files.SyncSettingArg? = nil - ) -> RpcRequest { + @discardableResult public func teamFolderCreate(name: String, syncSetting: Files.SyncSettingArg? = nil) -> RpcRequest< + Team.TeamFolderMetadataSerializer, + Team.TeamFolderCreateErrorSerializer + > { let route = Team.teamFolderCreate let serverArgs = Team.TeamFolderCreateArg(name: name, syncSetting: syncSetting) return client.request(route, serverArgs: serverArgs) @@ -1650,8 +1728,10 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Array` object /// on success or a `Void` object on failure. - @discardableResult public func teamFolderGetInfo(teamFolderIds: [String]) - -> RpcRequest, VoidSerializer> { + @discardableResult public func teamFolderGetInfo(teamFolderIds: [String]) -> RpcRequest< + ArraySerializer, + VoidSerializer + > { let route = Team.teamFolderGetInfo let serverArgs = Team.TeamFolderIdListArg(teamFolderIds: teamFolderIds) return client.request(route, serverArgs: serverArgs) @@ -1665,8 +1745,7 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Team.TeamFolderListResult` object on /// success or a `Team.TeamFolderListError` object on failure. - @discardableResult public func teamFolderList(limit: UInt32 = 1_000) - -> RpcRequest { + @discardableResult public func teamFolderList(limit: UInt32 = 1_000) -> RpcRequest { let route = Team.teamFolderList let serverArgs = Team.TeamFolderListArg(limit: limit) return client.request(route, serverArgs: serverArgs) @@ -1681,8 +1760,10 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Team.TeamFolderListResult` object on /// success or a `Team.TeamFolderListContinueError` object on failure. - @discardableResult public func teamFolderListContinue(cursor: String) - -> RpcRequest { + @discardableResult public func teamFolderListContinue(cursor: String) -> RpcRequest< + Team.TeamFolderListResultSerializer, + Team.TeamFolderListContinueErrorSerializer + > { let route = Team.teamFolderListContinue let serverArgs = Team.TeamFolderListContinueArg(cursor: cursor) return client.request(route, serverArgs: serverArgs) @@ -1697,8 +1778,10 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Void` object on success or a /// `Team.TeamFolderPermanentlyDeleteError` object on failure. - @discardableResult public func teamFolderPermanentlyDelete(teamFolderId: String) - -> RpcRequest { + @discardableResult public func teamFolderPermanentlyDelete(teamFolderId: String) -> RpcRequest< + VoidSerializer, + Team.TeamFolderPermanentlyDeleteErrorSerializer + > { let route = Team.teamFolderPermanentlyDelete let serverArgs = Team.TeamFolderIdArg(teamFolderId: teamFolderId) return client.request(route, serverArgs: serverArgs) @@ -1712,15 +1795,32 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Team.TeamFolderMetadata` object on success /// or a `Team.TeamFolderRenameError` object on failure. - @discardableResult public func teamFolderRename( - teamFolderId: String, - name: String - ) -> RpcRequest { + @discardableResult public func teamFolderRename(teamFolderId: String, name: String) -> RpcRequest< + Team.TeamFolderMetadataSerializer, + Team.TeamFolderRenameErrorSerializer + > { let route = Team.teamFolderRename let serverArgs = Team.TeamFolderRenameArg(teamFolderId: teamFolderId, name: name) return client.request(route, serverArgs: serverArgs) } + /// Sets an inactive team folder's status to active. Permission: Team member file access. + /// + /// - scope: team_data.content.write + /// + /// - parameter teamFolderId: The ID of the team folder. + /// + /// - returns: Through the response callback, the caller will receive a `Team.TeamFolderMetadata` object on success + /// or a `Team.TeamFolderRestoreError` object on failure. + @discardableResult public func teamFolderRestore(teamFolderId: String) -> RpcRequest< + Team.TeamFolderMetadataSerializer, + Team.TeamFolderRestoreErrorSerializer + > { + let route = Team.teamFolderRestore + let serverArgs = Team.TeamFolderIdArg(teamFolderId: teamFolderId) + return client.request(route, serverArgs: serverArgs) + } + /// Updates the sync settings on a team folder or its contents. Use of this endpoint requires that the team has /// team selective sync enabled. /// @@ -1749,8 +1849,10 @@ public class TeamRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Team.TokenGetAuthenticatedAdminResult` /// object on success or a `Team.TokenGetAuthenticatedAdminError` object on failure. - @discardableResult public func tokenGetAuthenticatedAdmin() - -> RpcRequest { + @discardableResult public func tokenGetAuthenticatedAdmin() -> RpcRequest< + Team.TokenGetAuthenticatedAdminResultSerializer, + Team.TokenGetAuthenticatedAdminErrorSerializer + > { let route = Team.tokenGetAuthenticatedAdmin return client.request(route) } diff --git a/Source/SwiftyDropbox/Shared/Generated/Users.swift b/Source/SwiftyDropbox/Shared/Generated/Users.swift index 1ad5a496..bead4efb 100644 --- a/Source/SwiftyDropbox/Shared/Generated/Users.swift +++ b/Source/SwiftyDropbox/Shared/Generated/Users.swift @@ -161,6 +161,61 @@ public class Users { } } + /// The value for distinctMemberHome in UserFeature. + public enum DistinctMemberHomeValue: CustomStringConvertible, JSONRepresentable { + /// When this value is True, the user have distinct home and root ns. When the value is False the user's home ns + /// and root ns are the same. + case enabled(Bool) + /// An unspecified error. + case other + + func json() throws -> JSON { + try DistinctMemberHomeValueSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try DistinctMemberHomeValueSerializer().serialize(self)))" + } catch { + return "Failed to generate description for DistinctMemberHomeValue: \(error)" + } + } + } + + public class DistinctMemberHomeValueSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: DistinctMemberHomeValue) throws -> JSON { + switch value { + case .enabled(let arg): + var d = try ["enabled": Serialization._BoolSerializer.serialize(arg)] + d[".tag"] = .str("enabled") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + + public func deserialize(_ json: JSON) throws -> DistinctMemberHomeValue { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "enabled": + let v = try Serialization._BoolSerializer.deserialize(d["enabled"] ?? .null) + return DistinctMemberHomeValue.enabled(v) + case "other": + return DistinctMemberHomeValue.other + default: + return DistinctMemberHomeValue.other + } + default: + throw JSONSerializerError.deserializeError(type: DistinctMemberHomeValue.self, json: json) + } + } + } + /// The value for fileLocking in UserFeature. public enum FileLockingValue: CustomStringConvertible, JSONRepresentable { /// When this value is True, the user can lock files in shared directories. When the value is False the user can @@ -392,9 +447,18 @@ public class Users { public let sharingPolicies: TeamPolicies.TeamSharingPolicies /// Team policy governing the use of the Office Add-In. public let officeAddinPolicy: TeamPolicies.OfficeAddInPolicy - public init(id: String, name: String, sharingPolicies: TeamPolicies.TeamSharingPolicies, officeAddinPolicy: TeamPolicies.OfficeAddInPolicy) { + /// Team policy governing whether members can edit team folders at the top level of the team space. + public let topLevelContentPolicy: TeamPolicies.TopLevelContentPolicy + public init( + id: String, + name: String, + sharingPolicies: TeamPolicies.TeamSharingPolicies, + officeAddinPolicy: TeamPolicies.OfficeAddInPolicy, + topLevelContentPolicy: TeamPolicies.TopLevelContentPolicy + ) { self.sharingPolicies = sharingPolicies self.officeAddinPolicy = officeAddinPolicy + self.topLevelContentPolicy = topLevelContentPolicy super.init(id: id, name: name) } @@ -415,6 +479,7 @@ public class Users { "name": try Serialization._StringSerializer.serialize(value.name), "sharing_policies": try TeamPolicies.TeamSharingPoliciesSerializer().serialize(value.sharingPolicies), "office_addin_policy": try TeamPolicies.OfficeAddInPolicySerializer().serialize(value.officeAddinPolicy), + "top_level_content_policy": try TeamPolicies.TopLevelContentPolicySerializer().serialize(value.topLevelContentPolicy), ] return .dictionary(output) } @@ -426,7 +491,14 @@ public class Users { let name = try Serialization._StringSerializer.deserialize(dict["name"] ?? .null) let sharingPolicies = try TeamPolicies.TeamSharingPoliciesSerializer().deserialize(dict["sharing_policies"] ?? .null) let officeAddinPolicy = try TeamPolicies.OfficeAddInPolicySerializer().deserialize(dict["office_addin_policy"] ?? .null) - return FullTeam(id: id, name: name, sharingPolicies: sharingPolicies, officeAddinPolicy: officeAddinPolicy) + let topLevelContentPolicy = try TeamPolicies.TopLevelContentPolicySerializer().deserialize(dict["top_level_content_policy"] ?? .null) + return FullTeam( + id: id, + name: name, + sharingPolicies: sharingPolicies, + officeAddinPolicy: officeAddinPolicy, + topLevelContentPolicy: topLevelContentPolicy + ) default: throw JSONSerializerError.deserializeError(type: FullTeam.self, json: json) } @@ -899,6 +971,61 @@ public class Users { } } + /// The value for teamSharedDropbox in UserFeature. + public enum TeamSharedDropboxValue: CustomStringConvertible, JSONRepresentable { + /// When this value is True, the user have a shared team root. When the value is False the user have distinct + /// root. + case enabled(Bool) + /// An unspecified error. + case other + + func json() throws -> JSON { + try TeamSharedDropboxValueSerializer().serialize(self) + } + + public var description: String { + do { + return "\(SerializeUtil.prepareJSONForSerialization(try TeamSharedDropboxValueSerializer().serialize(self)))" + } catch { + return "Failed to generate description for TeamSharedDropboxValue: \(error)" + } + } + } + + public class TeamSharedDropboxValueSerializer: JSONSerializer { + public init() {} + public func serialize(_ value: TeamSharedDropboxValue) throws -> JSON { + switch value { + case .enabled(let arg): + var d = try ["enabled": Serialization._BoolSerializer.serialize(arg)] + d[".tag"] = .str("enabled") + return .dictionary(d) + case .other: + var d = [String: JSON]() + d[".tag"] = .str("other") + return .dictionary(d) + } + } + + public func deserialize(_ json: JSON) throws -> TeamSharedDropboxValue { + switch json { + case .dictionary(let d): + let tag = try Serialization.getTag(d) + switch tag { + case "enabled": + let v = try Serialization._BoolSerializer.deserialize(d["enabled"] ?? .null) + return TeamSharedDropboxValue.enabled(v) + case "other": + return TeamSharedDropboxValue.other + default: + return TeamSharedDropboxValue.other + } + default: + throw JSONSerializerError.deserializeError(type: TeamSharedDropboxValue.self, json: json) + } + } + } + /// The TeamSpaceAllocation struct public class TeamSpaceAllocation: CustomStringConvertible, JSONRepresentable { /// The total space currently used by the user's team (bytes). @@ -962,8 +1089,9 @@ public class Users { let used = try Serialization._UInt64Serializer.deserialize(dict["used"] ?? .null) let allocated = try Serialization._UInt64Serializer.deserialize(dict["allocated"] ?? .null) let userWithinTeamSpaceAllocated = try Serialization._UInt64Serializer.deserialize(dict["user_within_team_space_allocated"] ?? .null) - let userWithinTeamSpaceLimitType = try TeamCommon.MemberSpaceLimitTypeSerializer() - .deserialize(dict["user_within_team_space_limit_type"] ?? .null) + let userWithinTeamSpaceLimitType = try TeamCommon.MemberSpaceLimitTypeSerializer().deserialize( + dict["user_within_team_space_limit_type"] ?? .null + ) let userWithinTeamSpaceUsedCached = try Serialization._UInt64Serializer.deserialize(dict["user_within_team_space_used_cached"] ?? .null) return TeamSpaceAllocation( used: used, @@ -984,6 +1112,11 @@ public class Users { case paperAsFiles /// This feature allows users to lock files in order to restrict other users from editing them. case fileLocking + /// This feature contains information about whether or not the user is part of a team with a shared team root. + case teamSharedDropbox + /// This feature contains information about whether or not the user's home namespace is distinct from their root + /// namespace. + case distinctMemberHome /// An unspecified error. case other @@ -1012,6 +1145,14 @@ public class Users { var d = [String: JSON]() d[".tag"] = .str("file_locking") return .dictionary(d) + case .teamSharedDropbox: + var d = [String: JSON]() + d[".tag"] = .str("team_shared_dropbox") + return .dictionary(d) + case .distinctMemberHome: + var d = [String: JSON]() + d[".tag"] = .str("distinct_member_home") + return .dictionary(d) case .other: var d = [String: JSON]() d[".tag"] = .str("other") @@ -1028,6 +1169,10 @@ public class Users { return UserFeature.paperAsFiles case "file_locking": return UserFeature.fileLocking + case "team_shared_dropbox": + return UserFeature.teamSharedDropbox + case "distinct_member_home": + return UserFeature.distinctMemberHome case "other": return UserFeature.other default: @@ -1046,6 +1191,10 @@ public class Users { /// An unspecified error. case fileLocking(Users.FileLockingValue) /// An unspecified error. + case teamSharedDropbox(Users.TeamSharedDropboxValue) + /// An unspecified error. + case distinctMemberHome(Users.DistinctMemberHomeValue) + /// An unspecified error. case other func json() throws -> JSON { @@ -1073,6 +1222,14 @@ public class Users { var d = try ["file_locking": Users.FileLockingValueSerializer().serialize(arg)] d[".tag"] = .str("file_locking") return .dictionary(d) + case .teamSharedDropbox(let arg): + var d = try ["team_shared_dropbox": Users.TeamSharedDropboxValueSerializer().serialize(arg)] + d[".tag"] = .str("team_shared_dropbox") + return .dictionary(d) + case .distinctMemberHome(let arg): + var d = try ["distinct_member_home": Users.DistinctMemberHomeValueSerializer().serialize(arg)] + d[".tag"] = .str("distinct_member_home") + return .dictionary(d) case .other: var d = [String: JSON]() d[".tag"] = .str("other") @@ -1091,6 +1248,12 @@ public class Users { case "file_locking": let v = try Users.FileLockingValueSerializer().deserialize(d["file_locking"] ?? .null) return UserFeatureValue.fileLocking(v) + case "team_shared_dropbox": + let v = try Users.TeamSharedDropboxValueSerializer().deserialize(d["team_shared_dropbox"] ?? .null) + return UserFeatureValue.teamSharedDropbox(v) + case "distinct_member_home": + let v = try Users.DistinctMemberHomeValueSerializer().deserialize(d["distinct_member_home"] ?? .null) + return UserFeatureValue.distinctMemberHome(v) case "other": return UserFeatureValue.other default: diff --git a/Source/SwiftyDropbox/Shared/Generated/UsersRoutes.swift b/Source/SwiftyDropbox/Shared/Generated/UsersRoutes.swift index 7c3abd37..ec142aff 100644 --- a/Source/SwiftyDropbox/Shared/Generated/UsersRoutes.swift +++ b/Source/SwiftyDropbox/Shared/Generated/UsersRoutes.swift @@ -23,8 +23,10 @@ public class UsersRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Users.UserFeaturesGetValuesBatchResult` /// object on success or a `Users.UserFeaturesGetValuesBatchError` object on failure. - @discardableResult public func featuresGetValues(features: [Users.UserFeature]) - -> RpcRequest { + @discardableResult public func featuresGetValues(features: [Users.UserFeature]) -> RpcRequest< + Users.UserFeaturesGetValuesBatchResultSerializer, + Users.UserFeaturesGetValuesBatchErrorSerializer + > { let route = Users.featuresGetValues let serverArgs = Users.UserFeaturesGetValuesBatchArg(features: features) return client.request(route, serverArgs: serverArgs) @@ -44,7 +46,7 @@ public class UsersRoutes: DropboxTransportClientOwning { return client.request(route, serverArgs: serverArgs) } - /// Get information about multiple user accounts. At most 300 accounts may be queried per request. + /// Get information about multiple user accounts. At most 300 accounts may be queried per request. /// /// - scope: sharing.read /// @@ -52,8 +54,10 @@ public class UsersRoutes: DropboxTransportClientOwning { /// /// - returns: Through the response callback, the caller will receive a `Array` object on /// success or a `Users.GetAccountBatchError` object on failure. - @discardableResult public func getAccountBatch(accountIds: [String]) - -> RpcRequest, Users.GetAccountBatchErrorSerializer> { + @discardableResult public func getAccountBatch(accountIds: [String]) -> RpcRequest< + ArraySerializer, + Users.GetAccountBatchErrorSerializer + > { let route = Users.getAccountBatch let serverArgs = Users.GetAccountBatchArg(accountIds: accountIds) return client.request(route, serverArgs: serverArgs) diff --git a/Source/SwiftyDropboxObjC/Shared/Generated/DBXAccount.swift b/Source/SwiftyDropboxObjC/Shared/Generated/DBXAccount.swift index b8da5cde..03a2f93c 100644 --- a/Source/SwiftyDropboxObjC/Shared/Generated/DBXAccount.swift +++ b/Source/SwiftyDropboxObjC/Shared/Generated/DBXAccount.swift @@ -10,6 +10,216 @@ import SwiftyDropbox /// Objective-C compatible datatypes for the account namespace /// For Swift see account +/// Objective-C compatible AccountPhotoGetArg struct +@objc +public class DBXAccountAccountPhotoGetArg: NSObject { + /// Encoded ID of the user. Must start either with 'dbid:' or 'dbaphid:'. + @objc + public var dbxAccountId: String { swift.dbxAccountId } + /// A string representing the size of the photo. + @objc + public var size: String { swift.size } + /// True if the photo should be cropped and false otherwise. + @objc + public var circleCrop: NSNumber { swift.circleCrop as NSNumber } + /// True if we expect account photo to exist. + @objc + public var expectAccountPhoto: NSNumber { swift.expectAccountPhoto as NSNumber } + + @objc + public init(dbxAccountId: String, size: String, circleCrop: NSNumber, expectAccountPhoto: NSNumber) { + self.swift = Account.AccountPhotoGetArg( + dbxAccountId: dbxAccountId, + size: size, + circleCrop: circleCrop.boolValue, + expectAccountPhoto: expectAccountPhoto.boolValue + ) + } + + let swift: Account.AccountPhotoGetArg + + public init(swift: Account.AccountPhotoGetArg) { + self.swift = swift + } + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible AccountPhotoGetError union +@objc +public class DBXAccountAccountPhotoGetError: NSObject { + let swift: Account.AccountPhotoGetError + + public init(swift: Account.AccountPhotoGetError) { + self.swift = swift + } + + public static func factory(swift: Account.AccountPhotoGetError) -> DBXAccountAccountPhotoGetError { + switch swift { + case .thumbnailError(let swiftArg): + let arg = DBXAccountThumbnailError(swift: swiftArg) + return DBXAccountAccountPhotoGetErrorThumbnailError(arg) + case .accountPhotoMissing: + return DBXAccountAccountPhotoGetErrorAccountPhotoMissing() + case .expectedAccountPhotoMissing: + return DBXAccountAccountPhotoGetErrorExpectedAccountPhotoMissing() + case .other: + return DBXAccountAccountPhotoGetErrorOther() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asThumbnailError: DBXAccountAccountPhotoGetErrorThumbnailError? { + self as? DBXAccountAccountPhotoGetErrorThumbnailError + } + + @objc + public var asAccountPhotoMissing: DBXAccountAccountPhotoGetErrorAccountPhotoMissing? { + self as? DBXAccountAccountPhotoGetErrorAccountPhotoMissing + } + + @objc + public var asExpectedAccountPhotoMissing: DBXAccountAccountPhotoGetErrorExpectedAccountPhotoMissing? { + self as? DBXAccountAccountPhotoGetErrorExpectedAccountPhotoMissing + } + + @objc + public var asOther: DBXAccountAccountPhotoGetErrorOther? { + self as? DBXAccountAccountPhotoGetErrorOther + } +} + +/// Indicates infrastructural failure. +@objc +public class DBXAccountAccountPhotoGetErrorThumbnailError: DBXAccountAccountPhotoGetError { + @objc + public var thumbnailError: DBXAccountThumbnailError + + @objc + public init(_ arg: DBXAccountThumbnailError) { + self.thumbnailError = arg + let swift = Account.AccountPhotoGetError.thumbnailError(arg.swift) + super.init(swift: swift) + } +} + +/// Account photo is missing (but we did not expect it to exist). +@objc +public class DBXAccountAccountPhotoGetErrorAccountPhotoMissing: DBXAccountAccountPhotoGetError { + @objc + public init() { + let swift = Account.AccountPhotoGetError.accountPhotoMissing + super.init(swift: swift) + } +} + +/// Account photo was expected to exist, but it's missing. +@objc +public class DBXAccountAccountPhotoGetErrorExpectedAccountPhotoMissing: DBXAccountAccountPhotoGetError { + @objc + public init() { + let swift = Account.AccountPhotoGetError.expectedAccountPhotoMissing + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXAccountAccountPhotoGetErrorOther: DBXAccountAccountPhotoGetError { + @objc + public init() { + let swift = Account.AccountPhotoGetError.other + super.init(swift: swift) + } +} + +/// Objective-C compatible AccountPhotoGetResult struct +@objc +public class DBXAccountAccountPhotoGetResult: NSObject { + /// The data returned by get_photo. + @objc + public var contentType: String { swift.contentType } + + @objc + public init(contentType: String) { + self.swift = Account.AccountPhotoGetResult(contentType: contentType) + } + + let swift: Account.AccountPhotoGetResult + + public init(swift: Account.AccountPhotoGetResult) { + self.swift = swift + } + + @objc + public override var description: String { swift.description } +} + +/// This struct is empty. The comment here is intentionally emitted to avoid indentation issues with Stone. +@objc +public class DBXAccountDeleteProfilePhotoArg: NSObject { + let swift: Account.DeleteProfilePhotoArg + + public init(swift: Account.DeleteProfilePhotoArg) { + self.swift = swift + } + + @objc + public override var description: String { swift.description } +} + +/// This union is empty. The comment here is intentionally emitted to avoid indentation issues with Stone. +@objc +public class DBXAccountDeleteProfilePhotoError: NSObject { + let swift: Account.DeleteProfilePhotoError + + public init(swift: Account.DeleteProfilePhotoError) { + self.swift = swift + } + + public static func factory(swift: Account.DeleteProfilePhotoError) -> DBXAccountDeleteProfilePhotoError { + switch swift { + case .other: + return DBXAccountDeleteProfilePhotoErrorOther() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asOther: DBXAccountDeleteProfilePhotoErrorOther? { + self as? DBXAccountDeleteProfilePhotoErrorOther + } +} + +/// An unspecified error. +@objc +public class DBXAccountDeleteProfilePhotoErrorOther: DBXAccountDeleteProfilePhotoError { + @objc + public init() { + let swift = Account.DeleteProfilePhotoError.other + super.init(swift: swift) + } +} + +/// This struct is empty. The comment here is intentionally emitted to avoid indentation issues with Stone. +@objc +public class DBXAccountDeleteProfilePhotoResult: NSObject { + let swift: Account.DeleteProfilePhotoResult + + public init(swift: Account.DeleteProfilePhotoResult) { + self.swift = swift + } + + @objc + public override var description: String { swift.description } +} + /// Objective-C compatible PhotoSourceArg union @objc public class DBXAccountPhotoSourceArg: NSObject { @@ -230,3 +440,72 @@ public class DBXAccountSetProfilePhotoResult: NSObject { @objc public override var description: String { swift.description } } + +/// Objective-C compatible ThumbnailError union +@objc +public class DBXAccountThumbnailError: NSObject { + let swift: Account.ThumbnailError + + public init(swift: Account.ThumbnailError) { + self.swift = swift + } + + public static func factory(swift: Account.ThumbnailError) -> DBXAccountThumbnailError { + switch swift { + case .permanentFailure: + return DBXAccountThumbnailErrorPermanentFailure() + case .temporaryFailure: + return DBXAccountThumbnailErrorTemporaryFailure() + case .other: + return DBXAccountThumbnailErrorOther() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asPermanentFailure: DBXAccountThumbnailErrorPermanentFailure? { + self as? DBXAccountThumbnailErrorPermanentFailure + } + + @objc + public var asTemporaryFailure: DBXAccountThumbnailErrorTemporaryFailure? { + self as? DBXAccountThumbnailErrorTemporaryFailure + } + + @objc + public var asOther: DBXAccountThumbnailErrorOther? { + self as? DBXAccountThumbnailErrorOther + } +} + +/// Indicates permanent infrastructural failure. +@objc +public class DBXAccountThumbnailErrorPermanentFailure: DBXAccountThumbnailError { + @objc + public init() { + let swift = Account.ThumbnailError.permanentFailure + super.init(swift: swift) + } +} + +/// Indicates temporary infrastructural failure. +@objc +public class DBXAccountThumbnailErrorTemporaryFailure: DBXAccountThumbnailError { + @objc + public init() { + let swift = Account.ThumbnailError.temporaryFailure + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXAccountThumbnailErrorOther: DBXAccountThumbnailError { + @objc + public init() { + let swift = Account.ThumbnailError.other + super.init(swift: swift) + } +} diff --git a/Source/SwiftyDropboxObjC/Shared/Generated/DBXAccountId.swift b/Source/SwiftyDropboxObjC/Shared/Generated/DBXAccountId.swift new file mode 100644 index 00000000..83d7996d --- /dev/null +++ b/Source/SwiftyDropboxObjC/Shared/Generated/DBXAccountId.swift @@ -0,0 +1,11 @@ +/// +/// Copyright (c) 2022 Dropbox, Inc. All rights reserved. +/// +/// Auto-generated by Stone, do not modify. +/// + +import Foundation +import SwiftyDropbox + +/// Objective-C compatible datatypes for the account_id namespace +/// For Swift see account_id diff --git a/Source/SwiftyDropboxObjC/Shared/Generated/DBXAccountRoutes.swift b/Source/SwiftyDropboxObjC/Shared/Generated/DBXAccountRoutes.swift index 9fcf9237..d0fda07d 100644 --- a/Source/SwiftyDropboxObjC/Shared/Generated/DBXAccountRoutes.swift +++ b/Source/SwiftyDropboxObjC/Shared/Generated/DBXAccountRoutes.swift @@ -19,6 +19,71 @@ public class DBXAccountRoutes: NSObject { public let client: DBXDropboxTransportClient + /// Deletes the current user's profile photo. + /// + /// - scope: account_info.write + /// + /// + /// - returns: Through the response callback, the caller will receive a `Account.DeleteProfilePhotoResult` object on + /// success or a `Account.DeleteProfilePhotoError` object on failure. + @objc + @discardableResult public func deleteProfilePhoto() -> DBXAccountDeleteProfilePhotoRpcRequest { + let swift = swift.deleteProfilePhoto() + return DBXAccountDeleteProfilePhotoRpcRequest(swift: swift) + } + + /// This lovely endpoint gets the account photo of a given user. + /// + /// - scope: account_info.read + /// + /// - parameter dbxAccountId: Encoded ID of the user. Must start either with 'dbid:' or 'dbaphid:'. + /// - parameter size: A string representing the size of the photo. + /// - parameter circleCrop: True if the photo should be cropped and false otherwise. + /// - parameter expectAccountPhoto: True if we expect account photo to exist. + /// - parameter overwrite: A boolean to set behavior in the event of a naming conflict. `True` will overwrite + /// conflicting file at destination. `False` will take no action (but if left unhandled in destination closure, + /// an NSError will be thrown). + /// - parameter destination: The location to write the download to. + /// + /// - returns: Through the response callback, the caller will receive a `Account.AccountPhotoGetResult` object on + /// success or a `Account.AccountPhotoGetError` object on failure. + @objc + @discardableResult public func getPhotoURL( + dbxAccountId: String, + size: String, + circleCrop: NSNumber, + expectAccountPhoto: NSNumber, + overwrite: Bool, + destination: URL + ) -> DBXAccountGetPhotoDownloadRequestFile { + let swift = swift.getPhoto( + dbxAccountId: dbxAccountId, + size: size, + circleCrop: circleCrop.boolValue, + expectAccountPhoto: expectAccountPhoto.boolValue, + overwrite: overwrite, + destination: destination + ) + return DBXAccountGetPhotoDownloadRequestFile(swift: swift) + } + + /// This lovely endpoint gets the account photo of a given user. + /// + /// - scope: account_info.read + /// + /// - parameter dbxAccountId: Encoded ID of the user. Must start either with 'dbid:' or 'dbaphid:'. + /// - parameter size: A string representing the size of the photo. + /// - parameter circleCrop: True if the photo should be cropped and false otherwise. + /// - parameter expectAccountPhoto: True if we expect account photo to exist. + /// + /// - returns: Through the response callback, the caller will receive a `Account.AccountPhotoGetResult` object on + /// success or a `Account.AccountPhotoGetError` object on failure. + @objc + @discardableResult public func getPhoto(dbxAccountId: String, size: String, circleCrop: NSNumber, expectAccountPhoto: NSNumber) -> DBXAccountGetPhotoDownloadRequestMemory { + let swift = swift.getPhoto(dbxAccountId: dbxAccountId, size: size, circleCrop: circleCrop.boolValue, expectAccountPhoto: expectAccountPhoto.boolValue) + return DBXAccountGetPhotoDownloadRequestMemory(swift: swift) + } + /// Sets a user's profile photo. /// /// - scope: account_info.write @@ -34,6 +99,223 @@ public class DBXAccountRoutes: NSObject { } } +@objc +public class DBXAccountDeleteProfilePhotoRpcRequest: NSObject, DBXRequest { + var swift: RpcRequest + + init(swift: RpcRequest) { + self.swift = swift + } + + @objc + @discardableResult public func response( + completionHandler: @escaping (DBXAccountDeleteProfilePhotoResult?, DBXAccountDeleteProfilePhotoError?, DBXCallError?) -> Void + ) -> Self { + response(queue: nil, completionHandler: completionHandler) + } + + @objc + @discardableResult public func response( + queue: DispatchQueue?, + completionHandler: @escaping (DBXAccountDeleteProfilePhotoResult?, DBXAccountDeleteProfilePhotoError?, DBXCallError?) -> Void + ) -> Self { + swift.response(queue: queue) { result, error in + var routeError: DBXAccountDeleteProfilePhotoError? + var callError: DBXCallError? + switch error { + case .routeError(let box, _, _, _): + routeError = DBXAccountDeleteProfilePhotoError(swift: box.unboxed) + callError = nil + default: + routeError = nil + callError = error?.objc + } + + var objc: DBXAccountDeleteProfilePhotoResult? = nil + if let swift = result { + objc = DBXAccountDeleteProfilePhotoResult(swift: swift) + } + completionHandler(objc, routeError, callError) + } + return self + } + + @objc + public var clientPersistedString: String? { swift.clientPersistedString } + + @available(iOS 13.0, macOS 10.13, *) + @objc + public var earliestBeginDate: Date? { swift.earliestBeginDate } + + @objc + public func persistingString(string: String?) -> Self { + swift.persistingString(string: string) + return self + } + + @available(iOS 13.0, macOS 10.13, *) + @objc + public func settingEarliestBeginDate(date: Date?) -> Self { + swift.settingEarliestBeginDate(date: date) + return self + } + + @objc + public func cancel() { + swift.cancel() + } +} + +@objc +public class DBXAccountGetPhotoDownloadRequestFile: NSObject, DBXRequest { + var swift: DownloadRequestFile + + init(swift: DownloadRequestFile) { + self.swift = swift + } + + @objc + @discardableResult public func response( + completionHandler: @escaping (DBXAccountAccountPhotoGetResult?, URL?, DBXAccountAccountPhotoGetError?, DBXCallError?) -> Void + ) -> Self { + response(queue: nil, completionHandler: completionHandler) + } + + @objc + @discardableResult public func response( + queue: DispatchQueue?, + completionHandler: @escaping (DBXAccountAccountPhotoGetResult?, URL?, DBXAccountAccountPhotoGetError?, DBXCallError?) -> Void + ) -> Self { + swift.response(queue: queue) { result, error in + var routeError: DBXAccountAccountPhotoGetError? + var callError: DBXCallError? + switch error { + case .routeError(let box, _, _, _): + routeError = DBXAccountAccountPhotoGetError(swift: box.unboxed) + callError = nil + default: + routeError = nil + callError = error?.objc + } + + var objc: DBXAccountAccountPhotoGetResult? = nil + var destination: URL? = nil + if let swift = result { + objc = DBXAccountAccountPhotoGetResult(swift: swift.0) + destination = swift.1 + } + completionHandler(objc, destination, routeError, callError) + } + return self + } + + @objc + public func progress(_ progressHandler: @escaping ((Progress) -> Void)) -> Self { + swift.progress(progressHandler) + return self + } + + @objc + public var clientPersistedString: String? { swift.clientPersistedString } + + @available(iOS 13.0, macOS 10.13, *) + @objc + public var earliestBeginDate: Date? { swift.earliestBeginDate } + + @objc + public func persistingString(string: String?) -> Self { + swift.persistingString(string: string) + return self + } + + @available(iOS 13.0, macOS 10.13, *) + @objc + public func settingEarliestBeginDate(date: Date?) -> Self { + swift.settingEarliestBeginDate(date: date) + return self + } + + @objc + public func cancel() { + swift.cancel() + } +} + +@objc +public class DBXAccountGetPhotoDownloadRequestMemory: NSObject, DBXRequest { + var swift: DownloadRequestMemory + + init(swift: DownloadRequestMemory) { + self.swift = swift + } + + @objc + @discardableResult public func response( + completionHandler: @escaping (DBXAccountAccountPhotoGetResult?, Data?, DBXAccountAccountPhotoGetError?, DBXCallError?) -> Void + ) -> Self { + response(queue: nil, completionHandler: completionHandler) + } + + @objc + @discardableResult public func response( + queue: DispatchQueue?, + completionHandler: @escaping (DBXAccountAccountPhotoGetResult?, Data?, DBXAccountAccountPhotoGetError?, DBXCallError?) -> Void + ) -> Self { + swift.response(queue: queue) { result, error in + var routeError: DBXAccountAccountPhotoGetError? + var callError: DBXCallError? + switch error { + case .routeError(let box, _, _, _): + routeError = DBXAccountAccountPhotoGetError(swift: box.unboxed) + callError = nil + default: + routeError = nil + callError = error?.objc + } + + var objc: DBXAccountAccountPhotoGetResult? = nil + var destination: Data? = nil + if let swift = result { + objc = DBXAccountAccountPhotoGetResult(swift: swift.0) + destination = swift.1 + } + completionHandler(objc, destination, routeError, callError) + } + return self + } + + @objc + public func progress(_ progressHandler: @escaping ((Progress) -> Void)) -> Self { + swift.progress(progressHandler) + return self + } + + @objc + public var clientPersistedString: String? { swift.clientPersistedString } + + @available(iOS 13.0, macOS 10.13, *) + @objc + public var earliestBeginDate: Date? { swift.earliestBeginDate } + + @objc + public func persistingString(string: String?) -> Self { + swift.persistingString(string: string) + return self + } + + @available(iOS 13.0, macOS 10.13, *) + @objc + public func settingEarliestBeginDate(date: Date?) -> Self { + swift.settingEarliestBeginDate(date: date) + return self + } + + @objc + public func cancel() { + swift.cancel() + } +} + @objc public class DBXAccountSetProfilePhotoRpcRequest: NSObject, DBXRequest { var swift: RpcRequest @@ -66,7 +348,7 @@ public class DBXAccountSetProfilePhotoRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXAccountSetProfilePhotoResult? + var objc: DBXAccountSetProfilePhotoResult? = nil if let swift = result { objc = DBXAccountSetProfilePhotoResult(swift: swift) } diff --git a/Source/SwiftyDropboxObjC/Shared/Generated/DBXAsync.swift b/Source/SwiftyDropboxObjC/Shared/Generated/DBXAsync.swift index 023c9389..846e739b 100644 --- a/Source/SwiftyDropboxObjC/Shared/Generated/DBXAsync.swift +++ b/Source/SwiftyDropboxObjC/Shared/Generated/DBXAsync.swift @@ -136,7 +136,7 @@ public class DBXAsyncPollArg: NSObject { /// Result returned by methods that poll for the status of an asynchronous job. Unions that extend this union should /// add a 'complete' field with a type of the information returned upon job completion. See PollEmptyResult for an -/// example. +/// example @objc public class DBXAsyncPollResultBase: NSObject { let swift: Async.PollResultBase diff --git a/Source/SwiftyDropboxObjC/Shared/Generated/DBXAuth.swift b/Source/SwiftyDropboxObjC/Shared/Generated/DBXAuth.swift index 49fb2277..8a306461 100644 --- a/Source/SwiftyDropboxObjC/Shared/Generated/DBXAuth.swift +++ b/Source/SwiftyDropboxObjC/Shared/Generated/DBXAuth.swift @@ -27,6 +27,11 @@ public class DBXAuthAccessError: NSObject { case .paperAccessDenied(let swiftArg): let arg = DBXAuthPaperAccessError(swift: swiftArg) return DBXAuthAccessErrorPaperAccessDenied(arg) + case .teamAccessDenied: + return DBXAuthAccessErrorTeamAccessDenied() + case .noPermission(let swiftArg): + let arg = DBXAuthNoPermissionError(swift: swiftArg) + return DBXAuthAccessErrorNoPermission(arg) case .other: return DBXAuthAccessErrorOther() } @@ -45,6 +50,16 @@ public class DBXAuthAccessError: NSObject { self as? DBXAuthAccessErrorPaperAccessDenied } + @objc + public var asTeamAccessDenied: DBXAuthAccessErrorTeamAccessDenied? { + self as? DBXAuthAccessErrorTeamAccessDenied + } + + @objc + public var asNoPermission: DBXAuthAccessErrorNoPermission? { + self as? DBXAuthAccessErrorNoPermission + } + @objc public var asOther: DBXAuthAccessErrorOther? { self as? DBXAuthAccessErrorOther @@ -79,6 +94,30 @@ public class DBXAuthAccessErrorPaperAccessDenied: DBXAuthAccessError { } } +/// Team doesn't have permission to access. +@objc +public class DBXAuthAccessErrorTeamAccessDenied: DBXAuthAccessError { + @objc + public init() { + let swift = Auth.AccessError.teamAccessDenied + super.init(swift: swift) + } +} + +/// Caller does not have permission to access the resource. +@objc +public class DBXAuthAccessErrorNoPermission: DBXAuthAccessError { + @objc + public var noPermission: DBXAuthNoPermissionError + + @objc + public init(_ arg: DBXAuthNoPermissionError) { + self.noPermission = arg + let swift = Auth.AccessError.noPermission(arg.swift) + super.init(swift: swift) + } +} + /// An unspecified error. @objc public class DBXAuthAccessErrorOther: DBXAuthAccessError { @@ -317,6 +356,64 @@ public class DBXAuthInvalidAccountTypeErrorOther: DBXAuthInvalidAccountTypeError } } +/// Objective-C compatible NoPermissionError union +@objc +public class DBXAuthNoPermissionError: NSObject { + let swift: Auth.NoPermissionError + + public init(swift: Auth.NoPermissionError) { + self.swift = swift + } + + public static func factory(swift: Auth.NoPermissionError) -> DBXAuthNoPermissionError { + switch swift { + case .unauthorizedAccountIdUsage(let swiftArg): + let arg = DBXAuthUnauthorizedAccountIdUsageError(swift: swiftArg) + return DBXAuthNoPermissionErrorUnauthorizedAccountIdUsage(arg) + case .other: + return DBXAuthNoPermissionErrorOther() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asUnauthorizedAccountIdUsage: DBXAuthNoPermissionErrorUnauthorizedAccountIdUsage? { + self as? DBXAuthNoPermissionErrorUnauthorizedAccountIdUsage + } + + @objc + public var asOther: DBXAuthNoPermissionErrorOther? { + self as? DBXAuthNoPermissionErrorOther + } +} + +/// Current caller does not have permission to access the account information for one or more of the specified +/// account IDs. +@objc +public class DBXAuthNoPermissionErrorUnauthorizedAccountIdUsage: DBXAuthNoPermissionError { + @objc + public var unauthorizedAccountIdUsage: DBXAuthUnauthorizedAccountIdUsageError + + @objc + public init(_ arg: DBXAuthUnauthorizedAccountIdUsageError) { + self.unauthorizedAccountIdUsage = arg + let swift = Auth.NoPermissionError.unauthorizedAccountIdUsage(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXAuthNoPermissionErrorOther: DBXAuthNoPermissionError { + @objc + public init() { + let swift = Auth.NoPermissionError.other + super.init(swift: swift) + } +} + /// Objective-C compatible PaperAccessError union @objc public class DBXAuthPaperAccessError: NSObject { @@ -617,3 +714,25 @@ public class DBXAuthTokenScopeError: NSObject { @objc public override var description: String { swift.description } } + +/// Objective-C compatible UnauthorizedAccountIdUsageError struct +@objc +public class DBXAuthUnauthorizedAccountIdUsageError: NSObject { + /// The account IDs that the caller does not have permission to use. + @objc + public var unauthorizedAccountIds: [String] { swift.unauthorizedAccountIds } + + @objc + public init(unauthorizedAccountIds: [String]) { + self.swift = Auth.UnauthorizedAccountIdUsageError(unauthorizedAccountIds: unauthorizedAccountIds) + } + + let swift: Auth.UnauthorizedAccountIdUsageError + + public init(swift: Auth.UnauthorizedAccountIdUsageError) { + self.swift = swift + } + + @objc + public override var description: String { swift.description } +} diff --git a/Source/SwiftyDropboxObjC/Shared/Generated/DBXAuthAppAuthRoutes.swift b/Source/SwiftyDropboxObjC/Shared/Generated/DBXAuthAppAuthRoutes.swift index d0390e12..ff10b430 100644 --- a/Source/SwiftyDropboxObjC/Shared/Generated/DBXAuthAppAuthRoutes.swift +++ b/Source/SwiftyDropboxObjC/Shared/Generated/DBXAuthAppAuthRoutes.swift @@ -52,7 +52,7 @@ public class DBXAuthTokenFromOauth1RpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXAuthTokenFromOAuth1Result? + var objc: DBXAuthTokenFromOAuth1Result? = nil if let swift = result { objc = DBXAuthTokenFromOAuth1Result(swift: swift) } diff --git a/Source/SwiftyDropboxObjC/Shared/Generated/DBXBase.swift b/Source/SwiftyDropboxObjC/Shared/Generated/DBXBase.swift index f1368e34..64ec4688 100644 --- a/Source/SwiftyDropboxObjC/Shared/Generated/DBXBase.swift +++ b/Source/SwiftyDropboxObjC/Shared/Generated/DBXBase.swift @@ -40,6 +40,9 @@ public class DBXDropboxBase: NSObject { /// Routes within the paper namespace. See DBPaperRoutes for details. @objc public var paper: DBXPaperRoutes! + /// Routes within the riviera namespace. See DBRivieraRoutes for details. + @objc + public var riviera: DBXRivieraRoutes! /// Routes within the sharing namespace. See DBSharingRoutes for details. @objc public var sharing: DBXSharingRoutes! @@ -67,6 +70,7 @@ public class DBXDropboxBase: NSObject { self.files = DBXFilesRoutes(swift: swift.files) self.openid = DBXOpenidRoutes(swift: swift.openid) self.paper = DBXPaperRoutes(swift: swift.paper) + self.riviera = DBXRivieraRoutes(swift: swift.riviera) self.sharing = DBXSharingRoutes(swift: swift.sharing) self.teamLog = DBXTeamLogRoutes(swift: swift.teamLog) self.users = DBXUsersRoutes(swift: swift.users) diff --git a/Source/SwiftyDropboxObjC/Shared/Generated/DBXBaseApp.swift b/Source/SwiftyDropboxObjC/Shared/Generated/DBXBaseApp.swift index 773248df..1bf71d5e 100644 --- a/Source/SwiftyDropboxObjC/Shared/Generated/DBXBaseApp.swift +++ b/Source/SwiftyDropboxObjC/Shared/Generated/DBXBaseApp.swift @@ -22,6 +22,9 @@ public class DBXDropboxAppBase: NSObject { /// Routes within the files namespace. See DBFilesAppAuthRoutes for details. @objc public var files: DBXFilesAppAuthRoutes! + /// Routes within the riviera namespace. See DBRivieraAppAuthRoutes for details. + @objc + public var riviera: DBXRivieraAppAuthRoutes! /// Routes within the sharing namespace. See DBSharingAppAuthRoutes for details. @objc public var sharing: DBXSharingAppAuthRoutes! @@ -37,6 +40,7 @@ public class DBXDropboxAppBase: NSObject { self.auth = DBXAuthAppAuthRoutes(swift: swift.auth) self.check = DBXCheckAppAuthRoutes(swift: swift.check) self.files = DBXFilesAppAuthRoutes(swift: swift.files) + self.riviera = DBXRivieraAppAuthRoutes(swift: swift.riviera) self.sharing = DBXSharingAppAuthRoutes(swift: swift.sharing) } } diff --git a/Source/SwiftyDropboxObjC/Shared/Generated/DBXCheck.swift b/Source/SwiftyDropboxObjC/Shared/Generated/DBXCheck.swift index 7a8deb7c..3e4f6bfd 100644 --- a/Source/SwiftyDropboxObjC/Shared/Generated/DBXCheck.swift +++ b/Source/SwiftyDropboxObjC/Shared/Generated/DBXCheck.swift @@ -32,6 +32,58 @@ public class DBXCheckEchoArg: NSObject { public override var description: String { swift.description } } +/// EchoError contains the error returned from the Dropbox servers. +@objc +public class DBXCheckEchoError: NSObject { + let swift: Check.EchoError + + public init(swift: Check.EchoError) { + self.swift = swift + } + + public static func factory(swift: Check.EchoError) -> DBXCheckEchoError { + switch swift { + case .userRequested: + return DBXCheckEchoErrorUserRequested() + case .other: + return DBXCheckEchoErrorOther() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asUserRequested: DBXCheckEchoErrorUserRequested? { + self as? DBXCheckEchoErrorUserRequested + } + + @objc + public var asOther: DBXCheckEchoErrorOther? { + self as? DBXCheckEchoErrorOther + } +} + +/// The request was successful. +@objc +public class DBXCheckEchoErrorUserRequested: DBXCheckEchoError { + @objc + public init() { + let swift = Check.EchoError.userRequested + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXCheckEchoErrorOther: DBXCheckEchoError { + @objc + public init() { + let swift = Check.EchoError.other + super.init(swift: swift) + } +} + /// EchoResult contains the result returned from the Dropbox servers. @objc public class DBXCheckEchoResult: NSObject { diff --git a/Source/SwiftyDropboxObjC/Shared/Generated/DBXCheckAppAuthRoutes.swift b/Source/SwiftyDropboxObjC/Shared/Generated/DBXCheckAppAuthRoutes.swift index ee221591..0175f8de 100644 --- a/Source/SwiftyDropboxObjC/Shared/Generated/DBXCheckAppAuthRoutes.swift +++ b/Source/SwiftyDropboxObjC/Shared/Generated/DBXCheckAppAuthRoutes.swift @@ -27,7 +27,7 @@ public class DBXCheckAppAuthRoutes: NSObject { /// - parameter query: The string that you'd like to be echoed back to you. /// /// - returns: Through the response callback, the caller will receive a `Check.EchoResult` object on success or a - /// `Void` object on failure. + /// `Check.EchoError` object on failure. @objc @discardableResult public func app(query: String) -> DBXCheckAppRpcRequest { let swift = swift.app(query: query) @@ -40,7 +40,7 @@ public class DBXCheckAppAuthRoutes: NSObject { /// infrastructure is working and that the app key and secret valid. /// /// - returns: Through the response callback, the caller will receive a `Check.EchoResult` object on success or a - /// `Void` object on failure. + /// `Check.EchoError` object on failure. @objc @discardableResult public func app() -> DBXCheckAppRpcRequest { let swift = swift.app() @@ -50,15 +50,15 @@ public class DBXCheckAppAuthRoutes: NSObject { @objc public class DBXCheckAppRpcRequest: NSObject, DBXRequest { - var swift: RpcRequest + var swift: RpcRequest - init(swift: RpcRequest) { + init(swift: RpcRequest) { self.swift = swift } @objc @discardableResult public func response( - completionHandler: @escaping (DBXCheckEchoResult?, DBXCallError?) -> Void + completionHandler: @escaping (DBXCheckEchoResult?, DBXCheckEchoError?, DBXCallError?) -> Void ) -> Self { response(queue: nil, completionHandler: completionHandler) } @@ -66,14 +66,25 @@ public class DBXCheckAppRpcRequest: NSObject, DBXRequest { @objc @discardableResult public func response( queue: DispatchQueue?, - completionHandler: @escaping (DBXCheckEchoResult?, DBXCallError?) -> Void + completionHandler: @escaping (DBXCheckEchoResult?, DBXCheckEchoError?, DBXCallError?) -> Void ) -> Self { swift.response(queue: queue) { result, error in - var objc: DBXCheckEchoResult? + var routeError: DBXCheckEchoError? + var callError: DBXCallError? + switch error { + case .routeError(let box, _, _, _): + routeError = DBXCheckEchoError(swift: box.unboxed) + callError = nil + default: + routeError = nil + callError = error?.objc + } + + var objc: DBXCheckEchoResult? = nil if let swift = result { objc = DBXCheckEchoResult(swift: swift) } - completionHandler(objc, error?.objc) + completionHandler(objc, routeError, callError) } return self } diff --git a/Source/SwiftyDropboxObjC/Shared/Generated/DBXCheckRoutes.swift b/Source/SwiftyDropboxObjC/Shared/Generated/DBXCheckRoutes.swift index 4f7a16f1..89641227 100644 --- a/Source/SwiftyDropboxObjC/Shared/Generated/DBXCheckRoutes.swift +++ b/Source/SwiftyDropboxObjC/Shared/Generated/DBXCheckRoutes.swift @@ -29,7 +29,7 @@ public class DBXCheckRoutes: NSObject { /// - parameter query: The string that you'd like to be echoed back to you. /// /// - returns: Through the response callback, the caller will receive a `Check.EchoResult` object on success or a - /// `Void` object on failure. + /// `Check.EchoError` object on failure. @objc @discardableResult public func user(query: String) -> DBXCheckUserRpcRequest { let swift = swift.user(query: query) @@ -44,7 +44,7 @@ public class DBXCheckRoutes: NSObject { /// - scope: account_info.read /// /// - returns: Through the response callback, the caller will receive a `Check.EchoResult` object on success or a - /// `Void` object on failure. + /// `Check.EchoError` object on failure. @objc @discardableResult public func user() -> DBXCheckUserRpcRequest { let swift = swift.user() @@ -54,15 +54,15 @@ public class DBXCheckRoutes: NSObject { @objc public class DBXCheckUserRpcRequest: NSObject, DBXRequest { - var swift: RpcRequest + var swift: RpcRequest - init(swift: RpcRequest) { + init(swift: RpcRequest) { self.swift = swift } @objc @discardableResult public func response( - completionHandler: @escaping (DBXCheckEchoResult?, DBXCallError?) -> Void + completionHandler: @escaping (DBXCheckEchoResult?, DBXCheckEchoError?, DBXCallError?) -> Void ) -> Self { response(queue: nil, completionHandler: completionHandler) } @@ -70,14 +70,25 @@ public class DBXCheckUserRpcRequest: NSObject, DBXRequest { @objc @discardableResult public func response( queue: DispatchQueue?, - completionHandler: @escaping (DBXCheckEchoResult?, DBXCallError?) -> Void + completionHandler: @escaping (DBXCheckEchoResult?, DBXCheckEchoError?, DBXCallError?) -> Void ) -> Self { swift.response(queue: queue) { result, error in - var objc: DBXCheckEchoResult? + var routeError: DBXCheckEchoError? + var callError: DBXCallError? + switch error { + case .routeError(let box, _, _, _): + routeError = DBXCheckEchoError(swift: box.unboxed) + callError = nil + default: + routeError = nil + callError = error?.objc + } + + var objc: DBXCheckEchoResult? = nil if let swift = result { objc = DBXCheckEchoResult(swift: swift) } - completionHandler(objc, error?.objc) + completionHandler(objc, routeError, callError) } return self } diff --git a/Source/SwiftyDropboxObjC/Shared/Generated/DBXCommon.swift b/Source/SwiftyDropboxObjC/Shared/Generated/DBXCommon.swift index 44beb050..612823e2 100644 --- a/Source/SwiftyDropboxObjC/Shared/Generated/DBXCommon.swift +++ b/Source/SwiftyDropboxObjC/Shared/Generated/DBXCommon.swift @@ -10,6 +10,31 @@ import SwiftyDropbox /// Objective-C compatible datatypes for the common namespace /// For Swift see common +/// Objective-C compatible DropboxDuration struct +@objc +public class DBXCommonDropboxDuration: NSObject { + /// (no description) + @objc + public var seconds: NSNumber { swift.seconds as NSNumber } + /// (no description) + @objc + public var nanos: NSNumber { swift.nanos as NSNumber } + + @objc + public init(seconds: NSNumber, nanos: NSNumber) { + self.swift = Common.DropboxDuration(seconds: seconds.int64Value, nanos: nanos.int32Value) + } + + let swift: Common.DropboxDuration + + public init(swift: Common.DropboxDuration) { + self.swift = swift + } + + @objc + public override var description: String { swift.description } +} + /// Objective-C compatible PathRoot union @objc public class DBXCommonPathRoot: NSObject { @@ -163,7 +188,7 @@ public class DBXCommonPathRootErrorInvalidRoot: DBXCommonPathRootError { } } -/// You don't have permission to access the namespace id in Dropbox-API-Path-Root header. +/// You don't have permission to access the namespace id in Dropbox-API-Path-Root header. @objc public class DBXCommonPathRootErrorNoPermission: DBXCommonPathRootError { @objc @@ -187,7 +212,8 @@ public class DBXCommonPathRootErrorOther: DBXCommonPathRootError { @objc public class DBXCommonRootInfo: NSObject { /// The namespace ID for user's root namespace. It will be the namespace ID of the shared team root if the user - /// is member of a team with a separate team root. Otherwise it will be same as homeNamespaceId in RootInfo. + /// is member of a team with a separate team root, or the user root if user is member of a team with + /// separate distinct roots for users. Otherwise it will be the same as homeNamespaceId in RootInfo. @objc public var rootNamespaceId: String { swift.rootNamespaceId } /// The namespace ID for user's home namespace. @@ -249,6 +275,17 @@ public class DBXCommonTeamRootInfo: DBXCommonRootInfo { /// separate root namespace. @objc public class DBXCommonUserRootInfo: DBXCommonRootInfo { + /// The path for user's home directory under the distinct user root. + @objc + public var homePath: String? { subSwift.homePath } + + @objc + public init(rootNamespaceId: String, homeNamespaceId: String, homePath: String?) { + let swift = Common.UserRootInfo(rootNamespaceId: rootNamespaceId, homeNamespaceId: homeNamespaceId, homePath: homePath) + self.subSwift = swift + super.init(swift: swift) + } + let subSwift: Common.UserRootInfo public init(swift: Common.UserRootInfo) { diff --git a/Source/SwiftyDropboxObjC/Shared/Generated/DBXDropboxAppBaseRequestBox.swift b/Source/SwiftyDropboxObjC/Shared/Generated/DBXDropboxAppBaseRequestBox.swift index a9217e99..3d224cd7 100644 --- a/Source/SwiftyDropboxObjC/Shared/Generated/DBXDropboxAppBaseRequestBox.swift +++ b/Source/SwiftyDropboxObjC/Shared/Generated/DBXDropboxAppBaseRequestBox.swift @@ -11,6 +11,9 @@ extension DropboxAppBaseRequestBox { var objc: DBXRequest { if case .files_getThumbnailV2(let swift) = self { return DBXFilesGetThumbnailDownloadRequestFileV2(swift: swift) + } + if case .sharing_getSharedLinkFile(let swift) = self { + return DBXSharingGetSharedLinkFileDownloadRequestFile(swift: swift) } else { fatalError("For Obj-C compatibility, add this route to the Objective-C compatibility module allow-list") } diff --git a/Source/SwiftyDropboxObjC/Shared/Generated/DBXDropboxBaseRequestBox.swift b/Source/SwiftyDropboxObjC/Shared/Generated/DBXDropboxBaseRequestBox.swift index fb6f63c5..a3b785f3 100644 --- a/Source/SwiftyDropboxObjC/Shared/Generated/DBXDropboxBaseRequestBox.swift +++ b/Source/SwiftyDropboxObjC/Shared/Generated/DBXDropboxBaseRequestBox.swift @@ -9,6 +9,9 @@ import SwiftyDropbox extension DropboxBaseRequestBox { var objc: DBXRequest { + if case .account_getPhoto(let swift) = self { + return DBXAccountGetPhotoDownloadRequestFile(swift: swift) + } if case .files_alphaUpload(let swift) = self { return DBXFilesAlphaUploadUploadRequest(swift: swift) } @@ -45,6 +48,9 @@ extension DropboxBaseRequestBox { if case .files_uploadSessionAppendV2(let swift) = self { return DBXFilesUploadSessionAppendUploadRequestV2(swift: swift) } + if case .files_uploadSessionAppendBatch(let swift) = self { + return DBXFilesUploadSessionAppendBatchUploadRequest(swift: swift) + } if case .files_uploadSessionFinish(let swift) = self { return DBXFilesUploadSessionFinishUploadRequest(swift: swift) } diff --git a/Source/SwiftyDropboxObjC/Shared/Generated/DBXFileProperties.swift b/Source/SwiftyDropboxObjC/Shared/Generated/DBXFileProperties.swift index 9e7964b3..f3392a42 100644 --- a/Source/SwiftyDropboxObjC/Shared/Generated/DBXFileProperties.swift +++ b/Source/SwiftyDropboxObjC/Shared/Generated/DBXFileProperties.swift @@ -16,7 +16,7 @@ public class DBXFilePropertiesAddPropertiesArg: NSObject { /// A unique identifier for the file or folder. @objc public var path: String { swift.path } - /// The property groups which are to be added to a Dropbox file. No two groups in the input should refer to the + /// The property groups which are to be added to a Dropbox file. No two groups in the input should refer to the /// same template. @objc public var propertyGroups: [DBXFilePropertiesPropertyGroup] { swift.propertyGroups.map { DBXFilePropertiesPropertyGroup(swift: $0) } } @@ -1069,7 +1069,7 @@ public class DBXFilePropertiesOverwritePropertyGroupArg: NSObject { /// A unique identifier for the file or folder. @objc public var path: String { swift.path } - /// The property groups "snapshot" updates to force apply. No two groups in the input should refer to the same + /// The property groups "snapshot" updates to force apply. No two groups in the input should refer to the same /// template. @objc public var propertyGroups: [DBXFilePropertiesPropertyGroup] { swift.propertyGroups.map { DBXFilePropertiesPropertyGroup(swift: $0) } } @@ -1422,8 +1422,7 @@ public class DBXFilePropertiesPropertyFieldTemplate: NSObject { /// Description of the property field. Property field descriptions can be up to 1024 bytes. @objc public var description_: String { swift.description_ } - /// Data type of the value of this property field. This type will be enforced upon property creation and - /// modifications. + /// (no description) @objc public var type: DBXFilePropertiesPropertyType { DBXFilePropertiesPropertyType(swift: swift.type) } @@ -1469,14 +1468,14 @@ public class DBXFilePropertiesPropertyGroup: NSObject { public override var description: String { swift.description } } -/// Objective-C compatible PropertyGroupUpdate struct +/// Property routes @objc public class DBXFilePropertiesPropertyGroupUpdate: NSObject { /// A unique identifier for a property template. @objc public var templateId: String { swift.templateId } /// Property fields to update. If the property field already exists, it is updated. If the property field - /// doesn't exist, the property group is added. + /// doesn't exist, it will be created as long as the property group already exists. @objc public var addOrUpdateFields: [DBXFilePropertiesPropertyField]? { swift.addOrUpdateFields?.map { DBXFilePropertiesPropertyField(swift: $0) } } /// Property fields to remove (by name), provided they exist. @@ -1940,9 +1939,7 @@ public class DBXFilePropertiesUpdatePropertiesArg: NSObject { public var path: String { swift.path } /// The property groups "delta" updates to apply. @objc - public var updatePropertyGroups: [DBXFilePropertiesPropertyGroupUpdate] { - swift.updatePropertyGroups.map { DBXFilePropertiesPropertyGroupUpdate(swift: $0) } - } + public var updatePropertyGroups: [DBXFilePropertiesPropertyGroupUpdate] { swift.updatePropertyGroups.map { DBXFilePropertiesPropertyGroupUpdate(swift: $0) } } @objc public init(path: String, updatePropertyGroups: [DBXFilePropertiesPropertyGroupUpdate]) { diff --git a/Source/SwiftyDropboxObjC/Shared/Generated/DBXFilePropertiesRoutes.swift b/Source/SwiftyDropboxObjC/Shared/Generated/DBXFilePropertiesRoutes.swift index 706c7e37..535cd053 100644 --- a/Source/SwiftyDropboxObjC/Shared/Generated/DBXFilePropertiesRoutes.swift +++ b/Source/SwiftyDropboxObjC/Shared/Generated/DBXFilePropertiesRoutes.swift @@ -25,7 +25,7 @@ public class DBXFilePropertiesRoutes: NSObject { /// /// - parameter path: A unique identifier for the file or folder. /// - parameter propertyGroups: The property groups which are to be added to a Dropbox file. No two groups in the - /// input should refer to the same template. + /// input should refer to the same template. /// /// - returns: Through the response callback, the caller will receive a `Void` object on success or a /// `FileProperties.AddPropertiesError` object on failure. @@ -44,15 +44,12 @@ public class DBXFilePropertiesRoutes: NSObject { /// /// - parameter path: A unique identifier for the file or folder. /// - parameter propertyGroups: The property groups "snapshot" updates to force apply. No two groups in the input - /// should refer to the same template. + /// should refer to the same template. /// /// - returns: Through the response callback, the caller will receive a `Void` object on success or a /// `FileProperties.InvalidPropertyGroupError` object on failure. @objc - @discardableResult public func propertiesOverwrite( - path: String, - propertyGroups: [DBXFilePropertiesPropertyGroup] - ) -> DBXFilePropertiesPropertiesOverwriteRpcRequest { + @discardableResult public func propertiesOverwrite(path: String, propertyGroups: [DBXFilePropertiesPropertyGroup]) -> DBXFilePropertiesPropertiesOverwriteRpcRequest { let swift = swift.propertiesOverwrite(path: path, propertyGroups: propertyGroups.map(\.swift)) return DBXFilePropertiesPropertiesOverwriteRpcRequest(swift: swift) } @@ -85,10 +82,7 @@ public class DBXFilePropertiesRoutes: NSObject { /// - returns: Through the response callback, the caller will receive a `FileProperties.PropertiesSearchResult` /// object on success or a `FileProperties.PropertiesSearchError` object on failure. @objc - @discardableResult public func propertiesSearch( - queries: [DBXFilePropertiesPropertiesSearchQuery], - templateFilter: DBXFilePropertiesTemplateFilter - ) -> DBXFilePropertiesPropertiesSearchRpcRequest { + @discardableResult public func propertiesSearch(queries: [DBXFilePropertiesPropertiesSearchQuery], templateFilter: DBXFilePropertiesTemplateFilter) -> DBXFilePropertiesPropertiesSearchRpcRequest { let swift = swift.propertiesSearch(queries: queries.map(\.swift), templateFilter: templateFilter.swift) return DBXFilePropertiesPropertiesSearchRpcRequest(swift: swift) } @@ -132,10 +126,7 @@ public class DBXFilePropertiesRoutes: NSObject { /// - returns: Through the response callback, the caller will receive a `Void` object on success or a /// `FileProperties.UpdatePropertiesError` object on failure. @objc - @discardableResult public func propertiesUpdate( - path: String, - updatePropertyGroups: [DBXFilePropertiesPropertyGroupUpdate] - ) -> DBXFilePropertiesPropertiesUpdateRpcRequest { + @discardableResult public func propertiesUpdate(path: String, updatePropertyGroups: [DBXFilePropertiesPropertyGroupUpdate]) -> DBXFilePropertiesPropertiesUpdateRpcRequest { let swift = swift.propertiesUpdate(path: path, updatePropertyGroups: updatePropertyGroups.map(\.swift)) return DBXFilePropertiesPropertiesUpdateRpcRequest(swift: swift) } @@ -149,11 +140,7 @@ public class DBXFilePropertiesRoutes: NSObject { /// - returns: Through the response callback, the caller will receive a `FileProperties.AddTemplateResult` object on /// success or a `FileProperties.ModifyTemplateError` object on failure. @objc - @discardableResult public func templatesAddForTeam( - name: String, - description_: String, - fields: [DBXFilePropertiesPropertyFieldTemplate] - ) -> DBXFilePropertiesTemplatesAddForTeamRpcRequest { + @discardableResult public func templatesAddForTeam(name: String, description_: String, fields: [DBXFilePropertiesPropertyFieldTemplate]) -> DBXFilePropertiesTemplatesAddForTeamRpcRequest { let swift = swift.templatesAddForTeam(name: name, description_: description_, fields: fields.map(\.swift)) return DBXFilePropertiesTemplatesAddForTeamRpcRequest(swift: swift) } @@ -167,11 +154,7 @@ public class DBXFilePropertiesRoutes: NSObject { /// - returns: Through the response callback, the caller will receive a `FileProperties.AddTemplateResult` object on /// success or a `FileProperties.ModifyTemplateError` object on failure. @objc - @discardableResult public func templatesAddForUser( - name: String, - description_: String, - fields: [DBXFilePropertiesPropertyFieldTemplate] - ) -> DBXFilePropertiesTemplatesAddForUserRpcRequest { + @discardableResult public func templatesAddForUser(name: String, description_: String, fields: [DBXFilePropertiesPropertyFieldTemplate]) -> DBXFilePropertiesTemplatesAddForUserRpcRequest { let swift = swift.templatesAddForUser(name: name, description_: description_, fields: fields.map(\.swift)) return DBXFilePropertiesTemplatesAddForUserRpcRequest(swift: swift) } @@ -559,7 +542,7 @@ public class DBXFilePropertiesPropertiesSearchRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFilePropertiesPropertiesSearchResult? + var objc: DBXFilePropertiesPropertiesSearchResult? = nil if let swift = result { objc = DBXFilePropertiesPropertiesSearchResult(swift: swift) } @@ -626,7 +609,7 @@ public class DBXFilePropertiesPropertiesSearchContinueRpcRequest: NSObject, DBXR callError = error?.objc } - var objc: DBXFilePropertiesPropertiesSearchResult? + var objc: DBXFilePropertiesPropertiesSearchResult? = nil if let swift = result { objc = DBXFilePropertiesPropertiesSearchResult(swift: swift) } @@ -756,7 +739,7 @@ public class DBXFilePropertiesTemplatesAddForTeamRpcRequest: NSObject, DBXReques callError = error?.objc } - var objc: DBXFilePropertiesAddTemplateResult? + var objc: DBXFilePropertiesAddTemplateResult? = nil if let swift = result { objc = DBXFilePropertiesAddTemplateResult(swift: swift) } @@ -823,7 +806,7 @@ public class DBXFilePropertiesTemplatesAddForUserRpcRequest: NSObject, DBXReques callError = error?.objc } - var objc: DBXFilePropertiesAddTemplateResult? + var objc: DBXFilePropertiesAddTemplateResult? = nil if let swift = result { objc = DBXFilePropertiesAddTemplateResult(swift: swift) } @@ -890,7 +873,7 @@ public class DBXFilePropertiesTemplatesGetForTeamRpcRequest: NSObject, DBXReques callError = error?.objc } - var objc: DBXFilePropertiesGetTemplateResult? + var objc: DBXFilePropertiesGetTemplateResult? = nil if let swift = result { objc = DBXFilePropertiesGetTemplateResult(swift: swift) } @@ -957,7 +940,7 @@ public class DBXFilePropertiesTemplatesGetForUserRpcRequest: NSObject, DBXReques callError = error?.objc } - var objc: DBXFilePropertiesGetTemplateResult? + var objc: DBXFilePropertiesGetTemplateResult? = nil if let swift = result { objc = DBXFilePropertiesGetTemplateResult(swift: swift) } @@ -1024,7 +1007,7 @@ public class DBXFilePropertiesTemplatesListForTeamRpcRequest: NSObject, DBXReque callError = error?.objc } - var objc: DBXFilePropertiesListTemplateResult? + var objc: DBXFilePropertiesListTemplateResult? = nil if let swift = result { objc = DBXFilePropertiesListTemplateResult(swift: swift) } @@ -1091,7 +1074,7 @@ public class DBXFilePropertiesTemplatesListForUserRpcRequest: NSObject, DBXReque callError = error?.objc } - var objc: DBXFilePropertiesListTemplateResult? + var objc: DBXFilePropertiesListTemplateResult? = nil if let swift = result { objc = DBXFilePropertiesListTemplateResult(swift: swift) } @@ -1284,7 +1267,7 @@ public class DBXFilePropertiesTemplatesUpdateForTeamRpcRequest: NSObject, DBXReq callError = error?.objc } - var objc: DBXFilePropertiesUpdateTemplateResult? + var objc: DBXFilePropertiesUpdateTemplateResult? = nil if let swift = result { objc = DBXFilePropertiesUpdateTemplateResult(swift: swift) } @@ -1351,7 +1334,7 @@ public class DBXFilePropertiesTemplatesUpdateForUserRpcRequest: NSObject, DBXReq callError = error?.objc } - var objc: DBXFilePropertiesUpdateTemplateResult? + var objc: DBXFilePropertiesUpdateTemplateResult? = nil if let swift = result { objc = DBXFilePropertiesUpdateTemplateResult(swift: swift) } diff --git a/Source/SwiftyDropboxObjC/Shared/Generated/DBXFileRequests.swift b/Source/SwiftyDropboxObjC/Shared/Generated/DBXFileRequests.swift index b92ac3e1..45572f50 100644 --- a/Source/SwiftyDropboxObjC/Shared/Generated/DBXFileRequests.swift +++ b/Source/SwiftyDropboxObjC/Shared/Generated/DBXFileRequests.swift @@ -159,15 +159,26 @@ public class DBXFileRequestsCreateFileRequestArgs: NSObject { /// A description of the file request. @objc public var description_: String? { swift.description_ } + /// If this request was created from video project, its id. + @objc + public var videoProjectId: String? { swift.videoProjectId } @objc - public init(title: String, destination: String, deadline: DBXFileRequestsFileRequestDeadline?, open: NSNumber, description_: String?) { + public init( + title: String, + destination: String, + deadline: DBXFileRequestsFileRequestDeadline?, + open: NSNumber, + description_: String?, + videoProjectId: String? + ) { self.swift = FileRequests.CreateFileRequestArgs( title: title, destination: destination, deadline: deadline?.swift, open: open.boolValue, - description_: description_ + description_: description_, + videoProjectId: videoProjectId ) } @@ -208,6 +219,8 @@ public class DBXFileRequestsFileRequestError: NSObject { return DBXFileRequestsFileRequestErrorEmailUnverified() case .validationError: return DBXFileRequestsFileRequestErrorValidationError() + case .noWritePermission: + return DBXFileRequestsFileRequestErrorNoWritePermission() } } @@ -253,6 +266,11 @@ public class DBXFileRequestsFileRequestError: NSObject { public var asValidationError: DBXFileRequestsFileRequestErrorValidationError? { self as? DBXFileRequestsFileRequestErrorValidationError } + + @objc + public var asNoWritePermission: DBXFileRequestsFileRequestErrorNoWritePermission? { + self as? DBXFileRequestsFileRequestErrorNoWritePermission + } } /// This user's Dropbox Business team doesn't allow file requests. @@ -338,6 +356,16 @@ public class DBXFileRequestsFileRequestErrorValidationError: DBXFileRequestsFile } } +/// This user doesn't have permission to edit files in a destination folder +@objc +public class DBXFileRequestsFileRequestErrorNoWritePermission: DBXFileRequestsFileRequestError { + @objc + public init() { + let swift = FileRequests.FileRequestError.noWritePermission + super.init(swift: swift) + } +} + /// There was an error creating the file request. @objc public class DBXFileRequestsCreateFileRequestError: NSObject { @@ -365,6 +393,8 @@ public class DBXFileRequestsCreateFileRequestError: NSObject { return DBXFileRequestsCreateFileRequestErrorEmailUnverified() case .validationError: return DBXFileRequestsCreateFileRequestErrorValidationError() + case .noWritePermission: + return DBXFileRequestsCreateFileRequestErrorNoWritePermission() case .invalidLocation: return DBXFileRequestsCreateFileRequestErrorInvalidLocation() case .rateLimit: @@ -415,6 +445,11 @@ public class DBXFileRequestsCreateFileRequestError: NSObject { self as? DBXFileRequestsCreateFileRequestErrorValidationError } + @objc + public var asNoWritePermission: DBXFileRequestsCreateFileRequestErrorNoWritePermission? { + self as? DBXFileRequestsCreateFileRequestErrorNoWritePermission + } + @objc public var asInvalidLocation: DBXFileRequestsCreateFileRequestErrorInvalidLocation? { self as? DBXFileRequestsCreateFileRequestErrorInvalidLocation @@ -509,6 +544,16 @@ public class DBXFileRequestsCreateFileRequestErrorValidationError: DBXFileReques } } +/// This user doesn't have permission to edit files in a destination folder +@objc +public class DBXFileRequestsCreateFileRequestErrorNoWritePermission: DBXFileRequestsCreateFileRequestError { + @objc + public init() { + let swift = FileRequests.CreateFileRequestError.noWritePermission + super.init(swift: swift) + } +} + /// File requests are not available on the specified folder. @objc public class DBXFileRequestsCreateFileRequestErrorInvalidLocation: DBXFileRequestsCreateFileRequestError { @@ -557,6 +602,8 @@ public class DBXFileRequestsDeleteAllClosedFileRequestsError: NSObject { return DBXFileRequestsDeleteAllClosedFileRequestsErrorEmailUnverified() case .validationError: return DBXFileRequestsDeleteAllClosedFileRequestsErrorValidationError() + case .noWritePermission: + return DBXFileRequestsDeleteAllClosedFileRequestsErrorNoWritePermission() } } @@ -602,6 +649,11 @@ public class DBXFileRequestsDeleteAllClosedFileRequestsError: NSObject { public var asValidationError: DBXFileRequestsDeleteAllClosedFileRequestsErrorValidationError? { self as? DBXFileRequestsDeleteAllClosedFileRequestsErrorValidationError } + + @objc + public var asNoWritePermission: DBXFileRequestsDeleteAllClosedFileRequestsErrorNoWritePermission? { + self as? DBXFileRequestsDeleteAllClosedFileRequestsErrorNoWritePermission + } } /// This user's Dropbox Business team doesn't allow file requests. @@ -687,6 +739,16 @@ public class DBXFileRequestsDeleteAllClosedFileRequestsErrorValidationError: DBX } } +/// This user doesn't have permission to edit files in a destination folder +@objc +public class DBXFileRequestsDeleteAllClosedFileRequestsErrorNoWritePermission: DBXFileRequestsDeleteAllClosedFileRequestsError { + @objc + public init() { + let swift = FileRequests.DeleteAllClosedFileRequestsError.noWritePermission + super.init(swift: swift) + } +} + /// Result for deleteAllClosed. @objc public class DBXFileRequestsDeleteAllClosedFileRequestsResult: NSObject { @@ -758,6 +820,8 @@ public class DBXFileRequestsDeleteFileRequestError: NSObject { return DBXFileRequestsDeleteFileRequestErrorEmailUnverified() case .validationError: return DBXFileRequestsDeleteFileRequestErrorValidationError() + case .noWritePermission: + return DBXFileRequestsDeleteFileRequestErrorNoWritePermission() case .fileRequestOpen: return DBXFileRequestsDeleteFileRequestErrorFileRequestOpen() } @@ -806,6 +870,11 @@ public class DBXFileRequestsDeleteFileRequestError: NSObject { self as? DBXFileRequestsDeleteFileRequestErrorValidationError } + @objc + public var asNoWritePermission: DBXFileRequestsDeleteFileRequestErrorNoWritePermission? { + self as? DBXFileRequestsDeleteFileRequestErrorNoWritePermission + } + @objc public var asFileRequestOpen: DBXFileRequestsDeleteFileRequestErrorFileRequestOpen? { self as? DBXFileRequestsDeleteFileRequestErrorFileRequestOpen @@ -895,6 +964,16 @@ public class DBXFileRequestsDeleteFileRequestErrorValidationError: DBXFileReques } } +/// This user doesn't have permission to edit files in a destination folder +@objc +public class DBXFileRequestsDeleteFileRequestErrorNoWritePermission: DBXFileRequestsDeleteFileRequestError { + @objc + public init() { + let swift = FileRequests.DeleteFileRequestError.noWritePermission + super.init(swift: swift) + } +} + /// One or more file requests currently open. @objc public class DBXFileRequestsDeleteFileRequestErrorFileRequestOpen: DBXFileRequestsDeleteFileRequestError { @@ -962,6 +1041,9 @@ public class DBXFileRequestsFileRequest: NSObject { /// A description of the file request. @objc public var description_: String? { swift.description_ } + /// If this request was created from video project, its id. + @objc + public var videoProjectId: String? { swift.videoProjectId } @objc public init( @@ -973,7 +1055,8 @@ public class DBXFileRequestsFileRequest: NSObject { fileCount: NSNumber, destination: String?, deadline: DBXFileRequestsFileRequestDeadline?, - description_: String? + description_: String?, + videoProjectId: String? ) { self.swift = FileRequests.FileRequest( id: id, @@ -984,7 +1067,8 @@ public class DBXFileRequestsFileRequest: NSObject { fileCount: fileCount.int64Value, destination: destination, deadline: deadline?.swift, - description_: description_ + description_: description_, + videoProjectId: videoProjectId ) } @@ -1004,7 +1088,7 @@ public class DBXFileRequestsFileRequestDeadline: NSObject { /// The deadline for this file request. @objc public var deadline: Date { swift.deadline } - /// If set, allow uploads after the deadline has passed. These uploads will be marked overdue. + /// If set, allow uploads after the deadline has passed. These uploads will be marked overdue. @objc public var allowLateUploads: DBXFileRequestsGracePeriod? { guard let swift = swift.allowLateUploads else { return nil } return DBXFileRequestsGracePeriod(swift: swift) @@ -1074,6 +1158,8 @@ public class DBXFileRequestsGetFileRequestError: NSObject { return DBXFileRequestsGetFileRequestErrorEmailUnverified() case .validationError: return DBXFileRequestsGetFileRequestErrorValidationError() + case .noWritePermission: + return DBXFileRequestsGetFileRequestErrorNoWritePermission() } } @@ -1119,6 +1205,11 @@ public class DBXFileRequestsGetFileRequestError: NSObject { public var asValidationError: DBXFileRequestsGetFileRequestErrorValidationError? { self as? DBXFileRequestsGetFileRequestErrorValidationError } + + @objc + public var asNoWritePermission: DBXFileRequestsGetFileRequestErrorNoWritePermission? { + self as? DBXFileRequestsGetFileRequestErrorNoWritePermission + } } /// This user's Dropbox Business team doesn't allow file requests. @@ -1204,6 +1295,16 @@ public class DBXFileRequestsGetFileRequestErrorValidationError: DBXFileRequestsG } } +/// This user doesn't have permission to edit files in a destination folder +@objc +public class DBXFileRequestsGetFileRequestErrorNoWritePermission: DBXFileRequestsGetFileRequestError { + @objc + public init() { + let swift = FileRequests.GetFileRequestError.noWritePermission + super.init(swift: swift) + } +} + /// Objective-C compatible GracePeriod union @objc public class DBXFileRequestsGracePeriod: NSObject { @@ -1689,6 +1790,8 @@ public class DBXFileRequestsUpdateFileRequestError: NSObject { return DBXFileRequestsUpdateFileRequestErrorEmailUnverified() case .validationError: return DBXFileRequestsUpdateFileRequestErrorValidationError() + case .noWritePermission: + return DBXFileRequestsUpdateFileRequestErrorNoWritePermission() } } @@ -1734,6 +1837,11 @@ public class DBXFileRequestsUpdateFileRequestError: NSObject { public var asValidationError: DBXFileRequestsUpdateFileRequestErrorValidationError? { self as? DBXFileRequestsUpdateFileRequestErrorValidationError } + + @objc + public var asNoWritePermission: DBXFileRequestsUpdateFileRequestErrorNoWritePermission? { + self as? DBXFileRequestsUpdateFileRequestErrorNoWritePermission + } } /// This user's Dropbox Business team doesn't allow file requests. @@ -1818,3 +1926,13 @@ public class DBXFileRequestsUpdateFileRequestErrorValidationError: DBXFileReques super.init(swift: swift) } } + +/// This user doesn't have permission to edit files in a destination folder +@objc +public class DBXFileRequestsUpdateFileRequestErrorNoWritePermission: DBXFileRequestsUpdateFileRequestError { + @objc + public init() { + let swift = FileRequests.UpdateFileRequestError.noWritePermission + super.init(swift: swift) + } +} diff --git a/Source/SwiftyDropboxObjC/Shared/Generated/DBXFileRequestsRoutes.swift b/Source/SwiftyDropboxObjC/Shared/Generated/DBXFileRequestsRoutes.swift index d9deecc6..8ee35cc6 100644 --- a/Source/SwiftyDropboxObjC/Shared/Generated/DBXFileRequestsRoutes.swift +++ b/Source/SwiftyDropboxObjC/Shared/Generated/DBXFileRequestsRoutes.swift @@ -44,6 +44,7 @@ public class DBXFileRequestsRoutes: NSObject { /// - parameter open: Whether or not the file request should be open. If the file request is closed, it will not /// accept any file submissions, but it can be opened later. /// - parameter description_: A description of the file request. + /// - parameter videoProjectId: If this request was created from video project, its id. /// /// - returns: Through the response callback, the caller will receive a `FileRequests.FileRequest` object on success /// or a `FileRequests.CreateFileRequestError` object on failure. @@ -53,9 +54,17 @@ public class DBXFileRequestsRoutes: NSObject { destination: String, deadline: DBXFileRequestsFileRequestDeadline?, open: NSNumber, - description_: String? + description_: String?, + videoProjectId: String? ) -> DBXFileRequestsCreateRpcRequest { - let swift = swift.create(title: title, destination: destination, deadline: deadline?.swift, open: open.boolValue, description_: description_) + let swift = swift.create( + title: title, + destination: destination, + deadline: deadline?.swift, + open: open.boolValue, + description_: description_, + videoProjectId: videoProjectId + ) return DBXFileRequestsCreateRpcRequest(swift: swift) } @@ -243,7 +252,7 @@ public class DBXFileRequestsCountRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFileRequestsCountFileRequestsResult? + var objc: DBXFileRequestsCountFileRequestsResult? = nil if let swift = result { objc = DBXFileRequestsCountFileRequestsResult(swift: swift) } @@ -310,7 +319,7 @@ public class DBXFileRequestsCreateRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFileRequestsFileRequest? + var objc: DBXFileRequestsFileRequest? = nil if let swift = result { objc = DBXFileRequestsFileRequest(swift: swift) } @@ -377,7 +386,7 @@ public class DBXFileRequestsDeleteRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFileRequestsDeleteFileRequestsResult? + var objc: DBXFileRequestsDeleteFileRequestsResult? = nil if let swift = result { objc = DBXFileRequestsDeleteFileRequestsResult(swift: swift) } @@ -422,8 +431,7 @@ public class DBXFileRequestsDeleteAllClosedRpcRequest: NSObject, DBXRequest { @objc @discardableResult public func response( - completionHandler: @escaping (DBXFileRequestsDeleteAllClosedFileRequestsResult?, DBXFileRequestsDeleteAllClosedFileRequestsError?, DBXCallError?) - -> Void + completionHandler: @escaping (DBXFileRequestsDeleteAllClosedFileRequestsResult?, DBXFileRequestsDeleteAllClosedFileRequestsError?, DBXCallError?) -> Void ) -> Self { response(queue: nil, completionHandler: completionHandler) } @@ -431,8 +439,7 @@ public class DBXFileRequestsDeleteAllClosedRpcRequest: NSObject, DBXRequest { @objc @discardableResult public func response( queue: DispatchQueue?, - completionHandler: @escaping (DBXFileRequestsDeleteAllClosedFileRequestsResult?, DBXFileRequestsDeleteAllClosedFileRequestsError?, DBXCallError?) - -> Void + completionHandler: @escaping (DBXFileRequestsDeleteAllClosedFileRequestsResult?, DBXFileRequestsDeleteAllClosedFileRequestsError?, DBXCallError?) -> Void ) -> Self { swift.response(queue: queue) { result, error in var routeError: DBXFileRequestsDeleteAllClosedFileRequestsError? @@ -446,7 +453,7 @@ public class DBXFileRequestsDeleteAllClosedRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFileRequestsDeleteAllClosedFileRequestsResult? + var objc: DBXFileRequestsDeleteAllClosedFileRequestsResult? = nil if let swift = result { objc = DBXFileRequestsDeleteAllClosedFileRequestsResult(swift: swift) } @@ -513,7 +520,7 @@ public class DBXFileRequestsGetRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFileRequestsFileRequest? + var objc: DBXFileRequestsFileRequest? = nil if let swift = result { objc = DBXFileRequestsFileRequest(swift: swift) } @@ -580,7 +587,7 @@ public class DBXFileRequestsList_RpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFileRequestsListFileRequestsResult? + var objc: DBXFileRequestsListFileRequestsResult? = nil if let swift = result { objc = DBXFileRequestsListFileRequestsResult(swift: swift) } @@ -647,7 +654,7 @@ public class DBXFileRequestsList_RpcRequestV2: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFileRequestsListFileRequestsV2Result? + var objc: DBXFileRequestsListFileRequestsV2Result? = nil if let swift = result { objc = DBXFileRequestsListFileRequestsV2Result(swift: swift) } @@ -714,7 +721,7 @@ public class DBXFileRequestsListContinueRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFileRequestsListFileRequestsV2Result? + var objc: DBXFileRequestsListFileRequestsV2Result? = nil if let swift = result { objc = DBXFileRequestsListFileRequestsV2Result(swift: swift) } @@ -781,7 +788,7 @@ public class DBXFileRequestsUpdateRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFileRequestsFileRequest? + var objc: DBXFileRequestsFileRequest? = nil if let swift = result { objc = DBXFileRequestsFileRequest(swift: swift) } diff --git a/Source/SwiftyDropboxObjC/Shared/Generated/DBXFiles.swift b/Source/SwiftyDropboxObjC/Shared/Generated/DBXFiles.swift index b8844360..ea8741a6 100644 --- a/Source/SwiftyDropboxObjC/Shared/Generated/DBXFiles.swift +++ b/Source/SwiftyDropboxObjC/Shared/Generated/DBXFiles.swift @@ -179,7 +179,7 @@ public class DBXFilesGetMetadataArg: NSObject { /// be returned. @objc public var includeDeleted: NSNumber { swift.includeDeleted as NSNumber } - /// If true, the results will include a flag for each file indicating whether or not that file has any explicit + /// If true, the results will include a flag for each file indicating whether or not that file has any explicit /// members. @objc public var includeHasExplicitSharedMembers: NSNumber { swift.includeHasExplicitSharedMembers as NSNumber } @@ -220,8 +220,8 @@ public class DBXFilesGetMetadataArg: NSObject { /// Objective-C compatible AlphaGetMetadataArg struct @objc public class DBXFilesAlphaGetMetadataArg: DBXFilesGetMetadataArg { - /// If set to a valid list of template IDs, propertyGroups in FileMetadata is set for files with custom - /// properties. + /// Field is deprecated. If set to a valid list of template IDs, propertyGroups in FileMetadata is set for files + /// with custom properties. @objc public var includePropertyTemplates: [String]? { subSwift.includePropertyTemplates } @@ -755,7 +755,7 @@ public class DBXFilesCreateFolderBatchLaunchOther: DBXFilesCreateFolderBatchLaun } } -/// Objective-C compatible FileOpsResult struct +/// Result for File Operations @objc public class DBXFilesFileOpsResult: NSObject { let swift: Files.FileOpsResult @@ -1080,8 +1080,8 @@ public class DBXFilesDeleteBatchError: NSObject { } } -/// Use tooManyWriteOperations in DeleteError. deleteBatch now provides smaller granularity about which entry -/// has failed because of this. +/// Field is deprecated. Use tooManyWriteOperations in DeleteError. deleteBatch now provides smaller granularity +/// about which entry has failed because of this. @objc public class DBXFilesDeleteBatchErrorTooManyWriteOperations: DBXFilesDeleteBatchError { @objc @@ -1545,7 +1545,8 @@ public class DBXFilesMetadata: NSObject { /// returned by listFolderContinue. This field will be null if the file or folder is not mounted. @objc public var pathDisplay: String? { swift.pathDisplay } - /// Please use parentSharedFolderId in FileSharingInfo or parentSharedFolderId in FolderSharingInfo instead. + /// Field is deprecated. Please use parentSharedFolderId in FileSharingInfo or parentSharedFolderId in + /// FolderSharingInfo instead. @objc public var parentSharedFolderId: String? { swift.parentSharedFolderId } /// The preview URL of the file. @@ -1589,6 +1590,24 @@ public class DBXFilesMetadata: NSObject { /// Indicates that there used to be a file or folder at this path, but it no longer exists. @objc public class DBXFilesDeletedMetadata: DBXFilesMetadata { + /// If present, indicates whether this deleted entry can be restored. + @objc + public var isRestorable: NSNumber? { subSwift.isRestorable as NSNumber? } + + @objc + public init(name: String, pathLower: String?, pathDisplay: String?, parentSharedFolderId: String?, previewUrl: String?, isRestorable: NSNumber?) { + let swift = Files.DeletedMetadata( + name: name, + pathLower: pathLower, + pathDisplay: pathDisplay, + parentSharedFolderId: parentSharedFolderId, + previewUrl: previewUrl, + isRestorable: isRestorable?.boolValue + ) + self.subSwift = swift + super.init(swift: swift) + } + let subSwift: Files.DeletedMetadata public init(swift: Files.DeletedMetadata) { @@ -1631,7 +1650,7 @@ public class DBXFilesDownloadArg: NSObject { /// The path of the file to download. @objc public var path: String { swift.path } - /// Please specify revision in path instead. + /// Field is deprecated. Please specify revision in path instead. @objc public var rev: String? { swift.rev } @@ -2469,10 +2488,10 @@ public class DBXFilesFileMetadata: DBXFilesMetadata { /// Additional information if the file has custom properties with the property template specified. @objc public var propertyGroups: [DBXFilePropertiesPropertyGroup]? { subSwift.propertyGroups?.map { DBXFilePropertiesPropertyGroup(swift: $0) } } - /// This flag will only be present if include_has_explicit_shared_members is true in listFolder or getMetadata. - /// If this flag is present, it will be true if this file has any explicit shared members. This is - /// different from sharing_info in that this could be true in the case where a file has explicit members - /// but is not contained within a shared folder. + /// This flag will only be present if include_has_explicit_shared_members is true in listFolder or getMetadata. + /// If this flag is present, it will be true if this file has any explicit shared members. This is different + /// from sharing_info in that this could be true in the case where a file has explicit members but is not + /// contained within a shared folder. @objc public var hasExplicitSharedMembers: NSNumber? { subSwift.hasExplicitSharedMembers as NSNumber? } /// A hash of the file content. This field can be used to verify data integrity. For more information see our @@ -2485,6 +2504,10 @@ public class DBXFilesFileMetadata: DBXFilesMetadata { return DBXFilesFileLockMetadata(swift: swift) } + /// If present, indicates whether this file revision can be restored. + @objc + public var isRestorable: NSNumber? { subSwift.isRestorable as NSNumber? } + @objc public init( name: String, @@ -2505,7 +2528,8 @@ public class DBXFilesFileMetadata: DBXFilesMetadata { propertyGroups: [DBXFilePropertiesPropertyGroup]?, hasExplicitSharedMembers: NSNumber?, contentHash: String?, - fileLockInfo: DBXFilesFileLockMetadata? + fileLockInfo: DBXFilesFileLockMetadata?, + isRestorable: NSNumber? ) { let swift = Files.FileMetadata( name: name, @@ -2526,7 +2550,8 @@ public class DBXFilesFileMetadata: DBXFilesMetadata { propertyGroups: propertyGroups?.map(\.swift), hasExplicitSharedMembers: hasExplicitSharedMembers?.boolValue, contentHash: contentHash, - fileLockInfo: fileLockInfo?.swift + fileLockInfo: fileLockInfo?.swift, + isRestorable: isRestorable?.boolValue ) self.subSwift = swift super.init(swift: swift) @@ -2668,7 +2693,7 @@ public class DBXFilesFolderMetadata: DBXFilesMetadata { /// A unique identifier for the folder. @objc public var id: String { subSwift.id } - /// Please use sharingInfo instead. + /// Field is deprecated. Please use sharingInfo instead. @objc public var sharedFolderId: String? { subSwift.sharedFolderId } /// Set if the folder is contained in a shared folder or is a shared folder mount point. @@ -3083,8 +3108,8 @@ public class DBXFilesGetTemporaryUploadLinkArg: NSObject { /// provided to upload. @objc public var commitInfo: DBXFilesCommitInfo { DBXFilesCommitInfo(swift: swift.commitInfo) } - /// How long before this link expires, in seconds. Attempting to start an upload with this link longer than - /// this period of time after link creation will result in an error. + /// How long before this link expires, in seconds. Attempting to start an upload with this link longer than this + /// period of time after link creation will result in an error. @objc public var duration: NSNumber { swift.duration as NSNumber } @@ -3468,17 +3493,20 @@ public class DBXFilesListFolderArg: NSObject { @objc public var path: String { swift.path } /// If true, the list folder operation will be applied recursively to all subfolders and the response will - /// contain contents of all subfolders. + /// contain contents of all subfolders. In some cases, setting recursive in ListFolderArg to true may lead + /// to performance issues or errors, especially when traversing folder structures with a large number of + /// items. A workaround for such cases is to set recursive in ListFolderArg to false and traverse subfolders + /// one at a time. @objc public var recursive: NSNumber { swift.recursive as NSNumber } - /// If true, mediaInfo in FileMetadata is set for photo and video. This parameter will no longer have an effect - /// starting December 2, 2019. + /// Field is deprecated. If true, mediaInfo in FileMetadata is set for photo and video. This parameter will no + /// longer have an effect starting December 2, 2019. @objc public var includeMediaInfo: NSNumber { swift.includeMediaInfo as NSNumber } /// If true, the results will include entries for files and folders that used to exist but were deleted. @objc public var includeDeleted: NSNumber { swift.includeDeleted as NSNumber } - /// If true, the results will include a flag for each file indicating whether or not that file has any explicit + /// If true, the results will include a flag for each file indicating whether or not that file has any explicit /// members. @objc public var includeHasExplicitSharedMembers: NSNumber { swift.includeHasExplicitSharedMembers as NSNumber } @@ -3508,6 +3536,9 @@ public class DBXFilesListFolderArg: NSObject { /// If true, include files that are not downloadable, i.e. Google Docs. @objc public var includeNonDownloadableFiles: NSNumber { swift.includeNonDownloadableFiles as NSNumber } + /// If true, each returned deleted entry will include whether that entry can be restored. + @objc + public var includeRestorableInfo: NSNumber { swift.includeRestorableInfo as NSNumber } @objc public init( @@ -3520,7 +3551,8 @@ public class DBXFilesListFolderArg: NSObject { limit: NSNumber?, sharedLink: DBXFilesSharedLink?, includePropertyGroups: DBXFilePropertiesTemplateFilterBase?, - includeNonDownloadableFiles: NSNumber + includeNonDownloadableFiles: NSNumber, + includeRestorableInfo: NSNumber ) { self.swift = Files.ListFolderArg( path: path, @@ -3532,7 +3564,8 @@ public class DBXFilesListFolderArg: NSObject { limit: limit?.uint32Value, sharedLink: sharedLink?.swift, includePropertyGroups: includePropertyGroups?.swift, - includeNonDownloadableFiles: includeNonDownloadableFiles.boolValue + includeNonDownloadableFiles: includeNonDownloadableFiles.boolValue, + includeRestorableInfo: includeRestorableInfo.boolValue ) } @@ -3893,10 +3926,23 @@ public class DBXFilesListRevisionsArg: NSObject { /// The maximum number of revision entries returned. @objc public var limit: NSNumber { swift.limit as NSNumber } + /// If set, ListRevisions will only return revisions prior to before_rev. Can be set using the last revision + /// from a previous call to list_revisions to fetch the next page of revisions. Only supported in path mode. + @objc + public var beforeRev: String? { swift.beforeRev } + /// If true, each returned revision will include whether that revision can be restored. + @objc + public var includeRestorableInfo: NSNumber { swift.includeRestorableInfo as NSNumber } @objc - public init(path: String, mode: DBXFilesListRevisionsMode, limit: NSNumber) { - self.swift = Files.ListRevisionsArg(path: path, mode: mode.swift, limit: limit.uint64Value) + public init(path: String, mode: DBXFilesListRevisionsMode, limit: NSNumber, beforeRev: String?, includeRestorableInfo: NSNumber) { + self.swift = Files.ListRevisionsArg( + path: path, + mode: mode.swift, + limit: limit.uint64Value, + beforeRev: beforeRev, + includeRestorableInfo: includeRestorableInfo.boolValue + ) } let swift: Files.ListRevisionsArg @@ -3923,6 +3969,10 @@ public class DBXFilesListRevisionsError: NSObject { case .path(let swiftArg): let arg = DBXFilesLookupError(swift: swiftArg) return DBXFilesListRevisionsErrorPath(arg) + case .invalidBeforeRev: + return DBXFilesListRevisionsErrorInvalidBeforeRev() + case .beforeRevNotSupported: + return DBXFilesListRevisionsErrorBeforeRevNotSupported() case .other: return DBXFilesListRevisionsErrorOther() } @@ -3936,6 +3986,16 @@ public class DBXFilesListRevisionsError: NSObject { self as? DBXFilesListRevisionsErrorPath } + @objc + public var asInvalidBeforeRev: DBXFilesListRevisionsErrorInvalidBeforeRev? { + self as? DBXFilesListRevisionsErrorInvalidBeforeRev + } + + @objc + public var asBeforeRevNotSupported: DBXFilesListRevisionsErrorBeforeRevNotSupported? { + self as? DBXFilesListRevisionsErrorBeforeRevNotSupported + } + @objc public var asOther: DBXFilesListRevisionsErrorOther? { self as? DBXFilesListRevisionsErrorOther @@ -3956,6 +4016,26 @@ public class DBXFilesListRevisionsErrorPath: DBXFilesListRevisionsError { } } +/// The revision in before_rev is invalid. +@objc +public class DBXFilesListRevisionsErrorInvalidBeforeRev: DBXFilesListRevisionsError { + @objc + public init() { + let swift = Files.ListRevisionsError.invalidBeforeRev + super.init(swift: swift) + } +} + +/// The before_rev argument is only supported in path mode. +@objc +public class DBXFilesListRevisionsErrorBeforeRevNotSupported: DBXFilesListRevisionsError { + @objc + public init() { + let swift = Files.ListRevisionsError.beforeRevNotSupported + super.init(swift: swift) + } +} + /// An unspecified error. @objc public class DBXFilesListRevisionsErrorOther: DBXFilesListRevisionsError { @@ -4039,7 +4119,8 @@ public class DBXFilesListRevisionsModeOther: DBXFilesListRevisionsMode { /// Objective-C compatible ListRevisionsResult struct @objc public class DBXFilesListRevisionsResult: NSObject { - /// If the file identified by the latest revision in the response is either deleted or moved. + /// If the file identified by the latest revision in the response is either deleted or moved. If before_rev is + /// set, this refers to the latest revision of the file older than before_rev. @objc public var isDeleted: NSNumber { swift.isDeleted as NSNumber } /// The time of deletion if the file was deleted. @@ -4048,10 +4129,19 @@ public class DBXFilesListRevisionsResult: NSObject { /// The revisions for the file. Only revisions that are not deleted will show up here. @objc public var entries: [DBXFilesFileMetadata] { swift.entries.map { DBXFilesFileMetadata(swift: $0) } } + /// If true, then there are more entries available. Call list_revisions again with before_rev equal to the + /// revision of the last returned entry to retrieve the rest. + @objc + public var hasMore: NSNumber { swift.hasMore as NSNumber } @objc - public init(isDeleted: NSNumber, entries: [DBXFilesFileMetadata], serverDeleted: Date?) { - self.swift = Files.ListRevisionsResult(isDeleted: isDeleted.boolValue, entries: entries.map(\.subSwift), serverDeleted: serverDeleted) + public init(isDeleted: NSNumber, entries: [DBXFilesFileMetadata], hasMore: NSNumber, serverDeleted: Date?) { + self.swift = Files.ListRevisionsResult( + isDeleted: isDeleted.boolValue, + entries: entries.map(\.subSwift), + hasMore: hasMore.boolValue, + serverDeleted: serverDeleted + ) } let swift: Files.ListRevisionsResult @@ -4348,7 +4438,7 @@ public class DBXFilesLockFileResult: NSObject { DBXFilesMetadata.wrapPreservingSubtypes(swift: swift.metadata) } - /// The file lock state after the operation. + /// Field is deprecated. The file lock state after the operation. @objc public var lock: DBXFilesFileLock { DBXFilesFileLock(swift: swift.lock) } @@ -4634,7 +4724,8 @@ public class DBXFilesMediaInfoPending: DBXFilesMediaInfo { } } -/// The metadata for the photo/video. +/// The metadata for the photo/video. Uses MediaMetadataAbstract to preserve photo/video subtypes (e.g. +/// VideoMetadata.duration). @objc public class DBXFilesMediaInfoMetadata: DBXFilesMediaInfo { @objc @@ -4819,11 +4910,7 @@ public class DBXFilesMoveBatchArg: DBXFilesRelocationBatchArgBase { @objc public init(entries: [DBXFilesRelocationPath], autorename: NSNumber, allowOwnershipTransfer: NSNumber) { - let swift = Files.MoveBatchArg( - entries: entries.map(\.swift), - autorename: autorename.boolValue, - allowOwnershipTransfer: allowOwnershipTransfer.boolValue - ) + let swift = Files.MoveBatchArg(entries: entries.map(\.swift), autorename: autorename.boolValue, allowOwnershipTransfer: allowOwnershipTransfer.boolValue) self.subSwift = swift super.init(swift: swift) } @@ -5740,7 +5827,7 @@ public class DBXFilesPreviewArg: NSObject { /// The path of the file to preview. @objc public var path: String { swift.path } - /// Please specify revision in path instead. + /// Field is deprecated. Please specify revision in path instead. @objc public var rev: String? { swift.rev } @@ -5820,7 +5907,7 @@ public class DBXFilesPreviewErrorPath: DBXFilesPreviewError { } } -/// This preview generation is still in progress and the file is not ready for preview yet. +/// This preview generation is still in progress and the file is not ready for preview yet. @objc public class DBXFilesPreviewErrorInProgress: DBXFilesPreviewError { @objc @@ -5910,7 +5997,7 @@ public class DBXFilesRelocationPath: NSObject { /// Objective-C compatible RelocationArg struct @objc public class DBXFilesRelocationArg: DBXFilesRelocationPath { - /// This flag has no effect. + /// Field is deprecated. This flag has no effect. @objc public var allowSharedFolder: NSNumber { subSwift.allowSharedFolder as NSNumber } /// If there's a conflict, have the Dropbox server try to autorename the file to avoid the conflict. @@ -5948,7 +6035,7 @@ public class DBXFilesRelocationArg: DBXFilesRelocationPath { /// Objective-C compatible RelocationBatchArg struct @objc public class DBXFilesRelocationBatchArg: DBXFilesRelocationBatchArgBase { - /// This flag has no effect. + /// Field is deprecated. This flag has no effect. @objc public var allowSharedFolder: NSNumber { subSwift.allowSharedFolder as NSNumber } /// Allow moves by owner even if it would result in an ownership transfer for the content being moved. This does @@ -7655,8 +7742,8 @@ public class DBXFilesSaveUrlErrorPath: DBXFilesSaveUrlError { } } -/// Failed downloading the given URL. The URL may be password-protected and the password provided was -/// incorrect, or the link may be disabled. +/// Failed downloading the given URL. The URL may be password-protected and the password provided was incorrect, +/// or the link may be disabled. @objc public class DBXFilesSaveUrlErrorDownloadFailed: DBXFilesSaveUrlError { @objc @@ -8108,6 +8195,8 @@ public class DBXFilesSearchMatchTypeV2: NSObject { return DBXFilesSearchMatchTypeV2FilenameAndContent() case .imageContent: return DBXFilesSearchMatchTypeV2ImageContent() + case .metadata: + return DBXFilesSearchMatchTypeV2Metadata() case .other: return DBXFilesSearchMatchTypeV2Other() } @@ -8136,6 +8225,11 @@ public class DBXFilesSearchMatchTypeV2: NSObject { self as? DBXFilesSearchMatchTypeV2ImageContent } + @objc + public var asMetadata: DBXFilesSearchMatchTypeV2Metadata? { + self as? DBXFilesSearchMatchTypeV2Metadata + } + @objc public var asOther: DBXFilesSearchMatchTypeV2Other? { self as? DBXFilesSearchMatchTypeV2Other @@ -8182,6 +8276,16 @@ public class DBXFilesSearchMatchTypeV2ImageContent: DBXFilesSearchMatchTypeV2 { } } +/// This item was matched based on its metadata. +@objc +public class DBXFilesSearchMatchTypeV2Metadata: DBXFilesSearchMatchTypeV2 { + @objc + public init() { + let swift = Files.SearchMatchTypeV2.metadata + super.init(swift: swift) + } +} + /// An unspecified error. @objc public class DBXFilesSearchMatchTypeV2Other: DBXFilesSearchMatchTypeV2 { @@ -8472,7 +8576,7 @@ public class DBXFilesSearchV2Arg: NSObject { return DBXFilesSearchMatchFieldOptions(swift: swift) } - /// Deprecated and moved this option to SearchMatchFieldOptions. + /// Field is deprecated. Deprecated and moved this option to SearchMatchFieldOptions. @objc public var includeHighlights: NSNumber? { swift.includeHighlights as NSNumber? } @@ -8582,7 +8686,7 @@ public class DBXFilesSharedLinkFileInfo: NSObject { /// The path corresponding to a file in a shared link to a folder. Required for shared links to folders. @objc public var path: String? { swift.path } - /// Password for the shared link. Required for password-protected shared links to files unless it can be read + /// Password for the shared link. Required for password-protected shared links to files unless it can be read /// from a cookie. @objc public var password: String? { swift.password } @@ -8964,8 +9068,8 @@ public class DBXFilesThumbnailArg: NSObject { /// The path to the image file you want to thumbnail. @objc public var path: String { swift.path } - /// The format for the thumbnail image, jpeg (default) or png. For images that are photos, jpeg should be - /// preferred, while png is better for screenshots and digital arts. + /// The format for the thumbnail image, jpeg (default), png, or webp. For images that are photos, jpeg should be + /// preferred, while png is better for screenshots and digital arts, and web for compression. @objc public var format: DBXFilesThumbnailFormat { DBXFilesThumbnailFormat(swift: swift.format) } /// The size for the thumbnail image. @@ -8974,10 +9078,31 @@ public class DBXFilesThumbnailArg: NSObject { /// How to resize and crop the image to achieve the desired size. @objc public var mode: DBXFilesThumbnailMode { DBXFilesThumbnailMode(swift: swift.mode) } + /// Field is only returned for "internal" callers. Quality of the thumbnail image. + @objc + public var quality: DBXFilesThumbnailQuality { DBXFilesThumbnailQuality(swift: swift.quality) } + /// Normally, mediaInfo in FileMetadata is set for photo and video. When this flag is true, mediaInfo in + /// FileMetadata is not populated. This improves latency for use cases where `media_info` is not needed. + @objc + public var excludeMediaInfo: NSNumber? { swift.excludeMediaInfo as NSNumber? } @objc - public init(path: String, format: DBXFilesThumbnailFormat, size: DBXFilesThumbnailSize, mode: DBXFilesThumbnailMode) { - self.swift = Files.ThumbnailArg(path: path, format: format.swift, size: size.swift, mode: mode.swift) + public init( + path: String, + format: DBXFilesThumbnailFormat, + size: DBXFilesThumbnailSize, + mode: DBXFilesThumbnailMode, + quality: DBXFilesThumbnailQuality, + excludeMediaInfo: NSNumber? + ) { + self.swift = Files.ThumbnailArg( + path: path, + format: format.swift, + size: size.swift, + mode: mode.swift, + quality: quality.swift, + excludeMediaInfo: excludeMediaInfo?.boolValue + ) } let swift: Files.ThumbnailArg @@ -9008,6 +9133,8 @@ public class DBXFilesThumbnailError: NSObject { return DBXFilesThumbnailErrorUnsupportedExtension() case .unsupportedImage: return DBXFilesThumbnailErrorUnsupportedImage() + case .encryptedContent: + return DBXFilesThumbnailErrorEncryptedContent() case .conversionError: return DBXFilesThumbnailErrorConversionError() } @@ -9031,6 +9158,11 @@ public class DBXFilesThumbnailError: NSObject { self as? DBXFilesThumbnailErrorUnsupportedImage } + @objc + public var asEncryptedContent: DBXFilesThumbnailErrorEncryptedContent? { + self as? DBXFilesThumbnailErrorEncryptedContent + } + @objc public var asConversionError: DBXFilesThumbnailErrorConversionError? { self as? DBXFilesThumbnailErrorConversionError @@ -9071,6 +9203,16 @@ public class DBXFilesThumbnailErrorUnsupportedImage: DBXFilesThumbnailError { } } +/// Encrypted content cannot be converted to a thumbnail. +@objc +public class DBXFilesThumbnailErrorEncryptedContent: DBXFilesThumbnailError { + @objc + public init() { + let swift = Files.ThumbnailError.encryptedContent + super.init(swift: swift) + } +} + /// An error occurs during thumbnail conversion. @objc public class DBXFilesThumbnailErrorConversionError: DBXFilesThumbnailError { @@ -9096,6 +9238,8 @@ public class DBXFilesThumbnailFormat: NSObject { return DBXFilesThumbnailFormatJpeg() case .png: return DBXFilesThumbnailFormatPng() + case .webp: + return DBXFilesThumbnailFormatWebp() } } @@ -9111,6 +9255,11 @@ public class DBXFilesThumbnailFormat: NSObject { public var asPng: DBXFilesThumbnailFormatPng? { self as? DBXFilesThumbnailFormatPng } + + @objc + public var asWebp: DBXFilesThumbnailFormatWebp? { + self as? DBXFilesThumbnailFormatWebp + } } /// An unspecified error. @@ -9133,6 +9282,16 @@ public class DBXFilesThumbnailFormatPng: DBXFilesThumbnailFormat { } } +/// An unspecified error. +@objc +public class DBXFilesThumbnailFormatWebp: DBXFilesThumbnailFormat { + @objc + public init() { + let swift = Files.ThumbnailFormat.webp + super.init(swift: swift) + } +} + /// Objective-C compatible ThumbnailMode union @objc public class DBXFilesThumbnailMode: NSObject { @@ -9150,6 +9309,8 @@ public class DBXFilesThumbnailMode: NSObject { return DBXFilesThumbnailModeBestfit() case .fitoneBestfit: return DBXFilesThumbnailModeFitoneBestfit() + case .original: + return DBXFilesThumbnailModeOriginal() } } @@ -9170,6 +9331,11 @@ public class DBXFilesThumbnailMode: NSObject { public var asFitoneBestfit: DBXFilesThumbnailModeFitoneBestfit? { self as? DBXFilesThumbnailModeFitoneBestfit } + + @objc + public var asOriginal: DBXFilesThumbnailModeOriginal? { + self as? DBXFilesThumbnailModeOriginal + } } /// Scale down the image to fit within the given size. @@ -9202,6 +9368,68 @@ public class DBXFilesThumbnailModeFitoneBestfit: DBXFilesThumbnailMode { } } +/// Don't resize the image at all. +@objc +public class DBXFilesThumbnailModeOriginal: DBXFilesThumbnailMode { + @objc + public init() { + let swift = Files.ThumbnailMode.original + super.init(swift: swift) + } +} + +/// Objective-C compatible ThumbnailQuality union +@objc +public class DBXFilesThumbnailQuality: NSObject { + let swift: Files.ThumbnailQuality + + public init(swift: Files.ThumbnailQuality) { + self.swift = swift + } + + public static func factory(swift: Files.ThumbnailQuality) -> DBXFilesThumbnailQuality { + switch swift { + case .quality80: + return DBXFilesThumbnailQualityQuality80() + case .quality90: + return DBXFilesThumbnailQualityQuality90() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asQuality80: DBXFilesThumbnailQualityQuality80? { + self as? DBXFilesThumbnailQualityQuality80 + } + + @objc + public var asQuality90: DBXFilesThumbnailQualityQuality90? { + self as? DBXFilesThumbnailQualityQuality90 + } +} + +/// default thumbnail quality. +@objc +public class DBXFilesThumbnailQualityQuality80: DBXFilesThumbnailQuality { + @objc + public init() { + let swift = Files.ThumbnailQuality.quality80 + super.init(swift: swift) + } +} + +/// high thumbnail quality. +@objc +public class DBXFilesThumbnailQualityQuality90: DBXFilesThumbnailQuality { + @objc + public init() { + let swift = Files.ThumbnailQuality.quality90 + super.init(swift: swift) + } +} + /// Objective-C compatible ThumbnailSize union @objc public class DBXFilesThumbnailSize: NSObject { @@ -9231,6 +9459,8 @@ public class DBXFilesThumbnailSize: NSObject { return DBXFilesThumbnailSizeW1024h768() case .w2048h1536: return DBXFilesThumbnailSizeW2048h1536() + case .w3200h2400: + return DBXFilesThumbnailSizeW3200h2400() } } @@ -9281,6 +9511,11 @@ public class DBXFilesThumbnailSize: NSObject { public var asW2048h1536: DBXFilesThumbnailSizeW2048h1536? { self as? DBXFilesThumbnailSizeW2048h1536 } + + @objc + public var asW3200h2400: DBXFilesThumbnailSizeW3200h2400? { + self as? DBXFilesThumbnailSizeW3200h2400 + } } /// 32 by 32 px. @@ -9373,6 +9608,16 @@ public class DBXFilesThumbnailSizeW2048h1536: DBXFilesThumbnailSize { } } +/// Field is only returned for "internal" callers. 3200 by 2400 px. +@objc +public class DBXFilesThumbnailSizeW3200h2400: DBXFilesThumbnailSize { + @objc + public init() { + let swift = Files.ThumbnailSize.w3200h2400 + super.init(swift: swift) + } +} + /// Objective-C compatible ThumbnailV2Arg struct @objc public class DBXFilesThumbnailV2Arg: NSObject { @@ -9380,8 +9625,8 @@ public class DBXFilesThumbnailV2Arg: NSObject { /// file, or a shared link pointing to a folder, with a relative path. @objc public var resource: DBXFilesPathOrLink { DBXFilesPathOrLink(swift: swift.resource) } - /// The format for the thumbnail image, jpeg (default) or png. For images that are photos, jpeg should be - /// preferred, while png is better for screenshots and digital arts. + /// The format for the thumbnail image, jpeg (default), png, or webp. For images that are photos, jpeg should be + /// preferred, while png is better for screenshots and digital arts, and web for compression. @objc public var format: DBXFilesThumbnailFormat { DBXFilesThumbnailFormat(swift: swift.format) } /// The size for the thumbnail image. @@ -9390,10 +9635,31 @@ public class DBXFilesThumbnailV2Arg: NSObject { /// How to resize and crop the image to achieve the desired size. @objc public var mode: DBXFilesThumbnailMode { DBXFilesThumbnailMode(swift: swift.mode) } + /// Field is only returned for "internal" callers. Quality of the thumbnail image. + @objc + public var quality: DBXFilesThumbnailQuality { DBXFilesThumbnailQuality(swift: swift.quality) } + /// Normally, mediaInfo in FileMetadata is set for photo and video. When this flag is true, mediaInfo in + /// FileMetadata is not populated. This improves latency for use cases where `media_info` is not needed. + @objc + public var excludeMediaInfo: NSNumber? { swift.excludeMediaInfo as NSNumber? } @objc - public init(resource: DBXFilesPathOrLink, format: DBXFilesThumbnailFormat, size: DBXFilesThumbnailSize, mode: DBXFilesThumbnailMode) { - self.swift = Files.ThumbnailV2Arg(resource: resource.swift, format: format.swift, size: size.swift, mode: mode.swift) + public init( + resource: DBXFilesPathOrLink, + format: DBXFilesThumbnailFormat, + size: DBXFilesThumbnailSize, + mode: DBXFilesThumbnailMode, + quality: DBXFilesThumbnailQuality, + excludeMediaInfo: NSNumber? + ) { + self.swift = Files.ThumbnailV2Arg( + resource: resource.swift, + format: format.swift, + size: size.swift, + mode: mode.swift, + quality: quality.swift, + excludeMediaInfo: excludeMediaInfo?.boolValue + ) } let swift: Files.ThumbnailV2Arg @@ -9424,6 +9690,8 @@ public class DBXFilesThumbnailV2Error: NSObject { return DBXFilesThumbnailV2ErrorUnsupportedExtension() case .unsupportedImage: return DBXFilesThumbnailV2ErrorUnsupportedImage() + case .encryptedContent: + return DBXFilesThumbnailV2ErrorEncryptedContent() case .conversionError: return DBXFilesThumbnailV2ErrorConversionError() case .accessDenied: @@ -9453,6 +9721,11 @@ public class DBXFilesThumbnailV2Error: NSObject { self as? DBXFilesThumbnailV2ErrorUnsupportedImage } + @objc + public var asEncryptedContent: DBXFilesThumbnailV2ErrorEncryptedContent? { + self as? DBXFilesThumbnailV2ErrorEncryptedContent + } + @objc public var asConversionError: DBXFilesThumbnailV2ErrorConversionError? { self as? DBXFilesThumbnailV2ErrorConversionError @@ -9508,6 +9781,16 @@ public class DBXFilesThumbnailV2ErrorUnsupportedImage: DBXFilesThumbnailV2Error } } +/// Encrypted content cannot be converted to a thumbnail. +@objc +public class DBXFilesThumbnailV2ErrorEncryptedContent: DBXFilesThumbnailV2Error { + @objc + public init() { + let swift = Files.ThumbnailV2Error.encryptedContent + super.init(swift: swift) + } +} + /// An error occurred during thumbnail conversion. @objc public class DBXFilesThumbnailV2ErrorConversionError: DBXFilesThumbnailV2Error { @@ -9659,6 +9942,8 @@ public class DBXFilesUploadError: NSObject { return DBXFilesUploadErrorPayloadTooLarge() case .contentHashMismatch: return DBXFilesUploadErrorContentHashMismatch() + case .encryptionNotSupported: + return DBXFilesUploadErrorEncryptionNotSupported() case .other: return DBXFilesUploadErrorOther() } @@ -9687,6 +9972,11 @@ public class DBXFilesUploadError: NSObject { self as? DBXFilesUploadErrorContentHashMismatch } + @objc + public var asEncryptionNotSupported: DBXFilesUploadErrorEncryptionNotSupported? { + self as? DBXFilesUploadErrorEncryptionNotSupported + } + @objc public var asOther: DBXFilesUploadErrorOther? { self as? DBXFilesUploadErrorOther @@ -9721,7 +10011,7 @@ public class DBXFilesUploadErrorPropertiesError: DBXFilesUploadError { } } -/// The request payload must be at most 150 MB. +/// The request payload must be at most 150 MiB. @objc public class DBXFilesUploadErrorPayloadTooLarge: DBXFilesUploadError { @objc @@ -9741,6 +10031,16 @@ public class DBXFilesUploadErrorContentHashMismatch: DBXFilesUploadError { } } +/// The file is required to be encrypted, which is not supported in our public API. +@objc +public class DBXFilesUploadErrorEncryptionNotSupported: DBXFilesUploadError { + @objc + public init() { + let swift = Files.UploadError.encryptionNotSupported + super.init(swift: swift) + } +} + /// An unspecified error. @objc public class DBXFilesUploadErrorOther: DBXFilesUploadError { @@ -9782,36 +10082,89 @@ public class DBXFilesUploadSessionAppendArg: NSObject { public override var description: String { swift.description } } -/// Objective-C compatible UploadSessionLookupError union +/// Objective-C compatible UploadSessionAppendBatchArg struct @objc -public class DBXFilesUploadSessionLookupError: NSObject { - let swift: Files.UploadSessionLookupError +public class DBXFilesUploadSessionAppendBatchArg: NSObject { + /// Append information for each file in the batch. + @objc + public var entries: [DBXFilesUploadSessionAppendBatchArgEntry] { swift.entries.map { DBXFilesUploadSessionAppendBatchArgEntry(swift: $0) } } + /// A hash of the entire request body which is all the concatenated pieces of file content that were uploaded in + /// this call. If provided and the uploaded content does not match this hash, an error will be returned. For + /// more information see our Content hash https://www.dropbox.com/developers/reference/content-hash page. + @objc + public var contentHash: String? { swift.contentHash } - public init(swift: Files.UploadSessionLookupError) { + @objc + public init(entries: [DBXFilesUploadSessionAppendBatchArgEntry], contentHash: String?) { + self.swift = Files.UploadSessionAppendBatchArg(entries: entries.map(\.swift), contentHash: contentHash) + } + + let swift: Files.UploadSessionAppendBatchArg + + public init(swift: Files.UploadSessionAppendBatchArg) { self.swift = swift } - public static func factory(swift: Files.UploadSessionLookupError) -> DBXFilesUploadSessionLookupError { + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible UploadSessionAppendBatchArgEntry struct +@objc +public class DBXFilesUploadSessionAppendBatchArgEntry: NSObject { + /// Contains the upload session ID and the offset. + @objc + public var cursor: DBXFilesUploadSessionCursor { DBXFilesUploadSessionCursor(swift: swift.cursor) } + /// Length in bytes of the data that should be appended for this session. Used to split the batched upload data + /// for multiple upload sessions. + @objc + public var length: NSNumber { swift.length as NSNumber } + /// If true, the current session will be closed, at which point you won't be able to call + /// uploadSessionAppendBatch anymore with the current session. + @objc + public var close: NSNumber { swift.close as NSNumber } + + @objc + public init(cursor: DBXFilesUploadSessionCursor, length: NSNumber, close: NSNumber) { + self.swift = Files.UploadSessionAppendBatchArgEntry(cursor: cursor.swift, length: length.uint64Value, close: close.boolValue) + } + + let swift: Files.UploadSessionAppendBatchArgEntry + + public init(swift: Files.UploadSessionAppendBatchArgEntry) { + self.swift = swift + } + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible UploadSessionAppendBatchEntryError union +@objc +public class DBXFilesUploadSessionAppendBatchEntryError: NSObject { + let swift: Files.UploadSessionAppendBatchEntryError + + public init(swift: Files.UploadSessionAppendBatchEntryError) { + self.swift = swift + } + + public static func factory(swift: Files.UploadSessionAppendBatchEntryError) -> DBXFilesUploadSessionAppendBatchEntryError { switch swift { case .notFound: - return DBXFilesUploadSessionLookupErrorNotFound() + return DBXFilesUploadSessionAppendBatchEntryErrorNotFound() case .incorrectOffset(let swiftArg): let arg = DBXFilesUploadSessionOffsetError(swift: swiftArg) - return DBXFilesUploadSessionLookupErrorIncorrectOffset(arg) + return DBXFilesUploadSessionAppendBatchEntryErrorIncorrectOffset(arg) case .closed: - return DBXFilesUploadSessionLookupErrorClosed() - case .notClosed: - return DBXFilesUploadSessionLookupErrorNotClosed() + return DBXFilesUploadSessionAppendBatchEntryErrorClosed() case .tooLarge: - return DBXFilesUploadSessionLookupErrorTooLarge() + return DBXFilesUploadSessionAppendBatchEntryErrorTooLarge() case .concurrentSessionInvalidOffset: - return DBXFilesUploadSessionLookupErrorConcurrentSessionInvalidOffset() + return DBXFilesUploadSessionAppendBatchEntryErrorConcurrentSessionInvalidOffset() case .concurrentSessionInvalidDataSize: - return DBXFilesUploadSessionLookupErrorConcurrentSessionInvalidDataSize() - case .payloadTooLarge: - return DBXFilesUploadSessionLookupErrorPayloadTooLarge() + return DBXFilesUploadSessionAppendBatchEntryErrorConcurrentSessionInvalidDataSize() case .other: - return DBXFilesUploadSessionLookupErrorOther() + return DBXFilesUploadSessionAppendBatchEntryErrorOther() } } @@ -9819,57 +10172,47 @@ public class DBXFilesUploadSessionLookupError: NSObject { public override var description: String { swift.description } @objc - public var asNotFound: DBXFilesUploadSessionLookupErrorNotFound? { - self as? DBXFilesUploadSessionLookupErrorNotFound - } - - @objc - public var asIncorrectOffset: DBXFilesUploadSessionLookupErrorIncorrectOffset? { - self as? DBXFilesUploadSessionLookupErrorIncorrectOffset - } - - @objc - public var asClosed: DBXFilesUploadSessionLookupErrorClosed? { - self as? DBXFilesUploadSessionLookupErrorClosed + public var asNotFound: DBXFilesUploadSessionAppendBatchEntryErrorNotFound? { + self as? DBXFilesUploadSessionAppendBatchEntryErrorNotFound } @objc - public var asNotClosed: DBXFilesUploadSessionLookupErrorNotClosed? { - self as? DBXFilesUploadSessionLookupErrorNotClosed + public var asIncorrectOffset: DBXFilesUploadSessionAppendBatchEntryErrorIncorrectOffset? { + self as? DBXFilesUploadSessionAppendBatchEntryErrorIncorrectOffset } @objc - public var asTooLarge: DBXFilesUploadSessionLookupErrorTooLarge? { - self as? DBXFilesUploadSessionLookupErrorTooLarge + public var asClosed: DBXFilesUploadSessionAppendBatchEntryErrorClosed? { + self as? DBXFilesUploadSessionAppendBatchEntryErrorClosed } @objc - public var asConcurrentSessionInvalidOffset: DBXFilesUploadSessionLookupErrorConcurrentSessionInvalidOffset? { - self as? DBXFilesUploadSessionLookupErrorConcurrentSessionInvalidOffset + public var asTooLarge: DBXFilesUploadSessionAppendBatchEntryErrorTooLarge? { + self as? DBXFilesUploadSessionAppendBatchEntryErrorTooLarge } @objc - public var asConcurrentSessionInvalidDataSize: DBXFilesUploadSessionLookupErrorConcurrentSessionInvalidDataSize? { - self as? DBXFilesUploadSessionLookupErrorConcurrentSessionInvalidDataSize + public var asConcurrentSessionInvalidOffset: DBXFilesUploadSessionAppendBatchEntryErrorConcurrentSessionInvalidOffset? { + self as? DBXFilesUploadSessionAppendBatchEntryErrorConcurrentSessionInvalidOffset } @objc - public var asPayloadTooLarge: DBXFilesUploadSessionLookupErrorPayloadTooLarge? { - self as? DBXFilesUploadSessionLookupErrorPayloadTooLarge + public var asConcurrentSessionInvalidDataSize: DBXFilesUploadSessionAppendBatchEntryErrorConcurrentSessionInvalidDataSize? { + self as? DBXFilesUploadSessionAppendBatchEntryErrorConcurrentSessionInvalidDataSize } @objc - public var asOther: DBXFilesUploadSessionLookupErrorOther? { - self as? DBXFilesUploadSessionLookupErrorOther + public var asOther: DBXFilesUploadSessionAppendBatchEntryErrorOther? { + self as? DBXFilesUploadSessionAppendBatchEntryErrorOther } } /// The upload session ID was not found or has expired. Upload sessions are valid for 7 days. @objc -public class DBXFilesUploadSessionLookupErrorNotFound: DBXFilesUploadSessionLookupError { +public class DBXFilesUploadSessionAppendBatchEntryErrorNotFound: DBXFilesUploadSessionAppendBatchEntryError { @objc public init() { - let swift = Files.UploadSessionLookupError.notFound + let swift = Files.UploadSessionAppendBatchEntryError.notFound super.init(swift: swift) } } @@ -9878,85 +10221,232 @@ public class DBXFilesUploadSessionLookupErrorNotFound: DBXFilesUploadSessionLook /// previous request was received and processed successfully but the client did not receive the /// response, e.g. due to a network error. @objc -public class DBXFilesUploadSessionLookupErrorIncorrectOffset: DBXFilesUploadSessionLookupError { +public class DBXFilesUploadSessionAppendBatchEntryErrorIncorrectOffset: DBXFilesUploadSessionAppendBatchEntryError { @objc public var incorrectOffset: DBXFilesUploadSessionOffsetError @objc public init(_ arg: DBXFilesUploadSessionOffsetError) { self.incorrectOffset = arg - let swift = Files.UploadSessionLookupError.incorrectOffset(arg.swift) + let swift = Files.UploadSessionAppendBatchEntryError.incorrectOffset(arg.swift) super.init(swift: swift) } } /// You are attempting to append data to an upload session that has already been closed (i.e. committed). @objc -public class DBXFilesUploadSessionLookupErrorClosed: DBXFilesUploadSessionLookupError { +public class DBXFilesUploadSessionAppendBatchEntryErrorClosed: DBXFilesUploadSessionAppendBatchEntryError { @objc public init() { - let swift = Files.UploadSessionLookupError.closed + let swift = Files.UploadSessionAppendBatchEntryError.closed super.init(swift: swift) } } -/// The session must be closed before calling upload_session/finish_batch. +/// You can not append to the upload session because the size of a file should not exceed the max file size +/// limit (i.e. 2^41 - 2^22 or 2,199,019,061,248 bytes). @objc -public class DBXFilesUploadSessionLookupErrorNotClosed: DBXFilesUploadSessionLookupError { +public class DBXFilesUploadSessionAppendBatchEntryErrorTooLarge: DBXFilesUploadSessionAppendBatchEntryError { @objc public init() { - let swift = Files.UploadSessionLookupError.notClosed + let swift = Files.UploadSessionAppendBatchEntryError.tooLarge super.init(swift: swift) } } -/// You can not append to the upload session because the size of a file should not reach the max file size limit -/// (i.e. 350GB). +/// For concurrent upload sessions, offset needs to be multiple of 2^22 (4,194,304) bytes. @objc -public class DBXFilesUploadSessionLookupErrorTooLarge: DBXFilesUploadSessionLookupError { +public class DBXFilesUploadSessionAppendBatchEntryErrorConcurrentSessionInvalidOffset: DBXFilesUploadSessionAppendBatchEntryError { @objc public init() { - let swift = Files.UploadSessionLookupError.tooLarge + let swift = Files.UploadSessionAppendBatchEntryError.concurrentSessionInvalidOffset super.init(swift: swift) } } -/// For concurrent upload sessions, offset needs to be multiple of 4194304 bytes. +/// For concurrent upload sessions, only chunks with size multiple of 2^22 (4,194,304) bytes can be uploaded. @objc -public class DBXFilesUploadSessionLookupErrorConcurrentSessionInvalidOffset: DBXFilesUploadSessionLookupError { +public class DBXFilesUploadSessionAppendBatchEntryErrorConcurrentSessionInvalidDataSize: DBXFilesUploadSessionAppendBatchEntryError { @objc public init() { - let swift = Files.UploadSessionLookupError.concurrentSessionInvalidOffset + let swift = Files.UploadSessionAppendBatchEntryError.concurrentSessionInvalidDataSize super.init(swift: swift) } } -/// For concurrent upload sessions, only chunks with size multiple of 4194304 bytes can be uploaded. +/// An unspecified error. @objc -public class DBXFilesUploadSessionLookupErrorConcurrentSessionInvalidDataSize: DBXFilesUploadSessionLookupError { +public class DBXFilesUploadSessionAppendBatchEntryErrorOther: DBXFilesUploadSessionAppendBatchEntryError { @objc public init() { - let swift = Files.UploadSessionLookupError.concurrentSessionInvalidDataSize + let swift = Files.UploadSessionAppendBatchEntryError.other super.init(swift: swift) } } -/// The request payload must be at most 150 MB. +/// Objective-C compatible UploadSessionAppendBatchError union @objc -public class DBXFilesUploadSessionLookupErrorPayloadTooLarge: DBXFilesUploadSessionLookupError { +public class DBXFilesUploadSessionAppendBatchError: NSObject { + let swift: Files.UploadSessionAppendBatchError + + public init(swift: Files.UploadSessionAppendBatchError) { + self.swift = swift + } + + public static func factory(swift: Files.UploadSessionAppendBatchError) -> DBXFilesUploadSessionAppendBatchError { + switch swift { + case .payloadTooLarge: + return DBXFilesUploadSessionAppendBatchErrorPayloadTooLarge() + case .contentHashMismatch: + return DBXFilesUploadSessionAppendBatchErrorContentHashMismatch() + case .lengthMismatch: + return DBXFilesUploadSessionAppendBatchErrorLengthMismatch() + case .other: + return DBXFilesUploadSessionAppendBatchErrorOther() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asPayloadTooLarge: DBXFilesUploadSessionAppendBatchErrorPayloadTooLarge? { + self as? DBXFilesUploadSessionAppendBatchErrorPayloadTooLarge + } + + @objc + public var asContentHashMismatch: DBXFilesUploadSessionAppendBatchErrorContentHashMismatch? { + self as? DBXFilesUploadSessionAppendBatchErrorContentHashMismatch + } + + @objc + public var asLengthMismatch: DBXFilesUploadSessionAppendBatchErrorLengthMismatch? { + self as? DBXFilesUploadSessionAppendBatchErrorLengthMismatch + } + + @objc + public var asOther: DBXFilesUploadSessionAppendBatchErrorOther? { + self as? DBXFilesUploadSessionAppendBatchErrorOther + } +} + +/// The request payload must be at most 150 MiB. +@objc +public class DBXFilesUploadSessionAppendBatchErrorPayloadTooLarge: DBXFilesUploadSessionAppendBatchError { @objc public init() { - let swift = Files.UploadSessionLookupError.payloadTooLarge + let swift = Files.UploadSessionAppendBatchError.payloadTooLarge + super.init(swift: swift) + } +} + +/// The content received by the Dropbox server in this call does not match the provided content hash. +@objc +public class DBXFilesUploadSessionAppendBatchErrorContentHashMismatch: DBXFilesUploadSessionAppendBatchError { + @objc + public init() { + let swift = Files.UploadSessionAppendBatchError.contentHashMismatch + super.init(swift: swift) + } +} + +/// The total length of the content received by the Dropbox server in this call does not match the total of the +/// provided lengths in the batch arguments. +@objc +public class DBXFilesUploadSessionAppendBatchErrorLengthMismatch: DBXFilesUploadSessionAppendBatchError { + @objc + public init() { + let swift = Files.UploadSessionAppendBatchError.lengthMismatch super.init(swift: swift) } } /// An unspecified error. @objc -public class DBXFilesUploadSessionLookupErrorOther: DBXFilesUploadSessionLookupError { +public class DBXFilesUploadSessionAppendBatchErrorOther: DBXFilesUploadSessionAppendBatchError { @objc public init() { - let swift = Files.UploadSessionLookupError.other + let swift = Files.UploadSessionAppendBatchError.other + super.init(swift: swift) + } +} + +/// Objective-C compatible UploadSessionAppendBatchResult struct +@objc +public class DBXFilesUploadSessionAppendBatchResult: NSObject { + /// Each entry in entries in UploadSessionAppendBatchArg will appear at the same position inside entries in + /// UploadSessionAppendBatchResult. + @objc + public var entries: [DBXFilesUploadSessionAppendBatchResultEntry] { swift.entries.map { DBXFilesUploadSessionAppendBatchResultEntry(swift: $0) } } + + @objc + public init(entries: [DBXFilesUploadSessionAppendBatchResultEntry]) { + self.swift = Files.UploadSessionAppendBatchResult(entries: entries.map(\.swift)) + } + + let swift: Files.UploadSessionAppendBatchResult + + public init(swift: Files.UploadSessionAppendBatchResult) { + self.swift = swift + } + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible UploadSessionAppendBatchResultEntry union +@objc +public class DBXFilesUploadSessionAppendBatchResultEntry: NSObject { + let swift: Files.UploadSessionAppendBatchResultEntry + + public init(swift: Files.UploadSessionAppendBatchResultEntry) { + self.swift = swift + } + + public static func factory(swift: Files.UploadSessionAppendBatchResultEntry) -> DBXFilesUploadSessionAppendBatchResultEntry { + switch swift { + case .success: + return DBXFilesUploadSessionAppendBatchResultEntrySuccess() + case .failure(let swiftArg): + let arg = DBXFilesUploadSessionAppendBatchEntryError(swift: swiftArg) + return DBXFilesUploadSessionAppendBatchResultEntryFailure(arg) + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asSuccess: DBXFilesUploadSessionAppendBatchResultEntrySuccess? { + self as? DBXFilesUploadSessionAppendBatchResultEntrySuccess + } + + @objc + public var asFailure: DBXFilesUploadSessionAppendBatchResultEntryFailure? { + self as? DBXFilesUploadSessionAppendBatchResultEntryFailure + } +} + +/// An unspecified error. +@objc +public class DBXFilesUploadSessionAppendBatchResultEntrySuccess: DBXFilesUploadSessionAppendBatchResultEntry { + @objc + public init() { + let swift = Files.UploadSessionAppendBatchResultEntry.success + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXFilesUploadSessionAppendBatchResultEntryFailure: DBXFilesUploadSessionAppendBatchResultEntry { + @objc + public var failure: DBXFilesUploadSessionAppendBatchEntryError + + @objc + public init(_ arg: DBXFilesUploadSessionAppendBatchEntryError) { + self.failure = arg + let swift = Files.UploadSessionAppendBatchResultEntry.failure(arg.swift) super.init(swift: swift) } } @@ -9979,8 +10469,6 @@ public class DBXFilesUploadSessionAppendError: NSObject { return DBXFilesUploadSessionAppendErrorIncorrectOffset(arg) case .closed: return DBXFilesUploadSessionAppendErrorClosed() - case .notClosed: - return DBXFilesUploadSessionAppendErrorNotClosed() case .tooLarge: return DBXFilesUploadSessionAppendErrorTooLarge() case .concurrentSessionInvalidOffset: @@ -9989,10 +10477,10 @@ public class DBXFilesUploadSessionAppendError: NSObject { return DBXFilesUploadSessionAppendErrorConcurrentSessionInvalidDataSize() case .payloadTooLarge: return DBXFilesUploadSessionAppendErrorPayloadTooLarge() - case .other: - return DBXFilesUploadSessionAppendErrorOther() case .contentHashMismatch: return DBXFilesUploadSessionAppendErrorContentHashMismatch() + case .other: + return DBXFilesUploadSessionAppendErrorOther() } } @@ -10014,11 +10502,6 @@ public class DBXFilesUploadSessionAppendError: NSObject { self as? DBXFilesUploadSessionAppendErrorClosed } - @objc - public var asNotClosed: DBXFilesUploadSessionAppendErrorNotClosed? { - self as? DBXFilesUploadSessionAppendErrorNotClosed - } - @objc public var asTooLarge: DBXFilesUploadSessionAppendErrorTooLarge? { self as? DBXFilesUploadSessionAppendErrorTooLarge @@ -10040,13 +10523,13 @@ public class DBXFilesUploadSessionAppendError: NSObject { } @objc - public var asOther: DBXFilesUploadSessionAppendErrorOther? { - self as? DBXFilesUploadSessionAppendErrorOther + public var asContentHashMismatch: DBXFilesUploadSessionAppendErrorContentHashMismatch? { + self as? DBXFilesUploadSessionAppendErrorContentHashMismatch } @objc - public var asContentHashMismatch: DBXFilesUploadSessionAppendErrorContentHashMismatch? { - self as? DBXFilesUploadSessionAppendErrorContentHashMismatch + public var asOther: DBXFilesUploadSessionAppendErrorOther? { + self as? DBXFilesUploadSessionAppendErrorOther } } @@ -10086,18 +10569,8 @@ public class DBXFilesUploadSessionAppendErrorClosed: DBXFilesUploadSessionAppend } } -/// The session must be closed before calling upload_session/finish_batch. -@objc -public class DBXFilesUploadSessionAppendErrorNotClosed: DBXFilesUploadSessionAppendError { - @objc - public init() { - let swift = Files.UploadSessionAppendError.notClosed - super.init(swift: swift) - } -} - -/// You can not append to the upload session because the size of a file should not reach the max file size limit -/// (i.e. 350GB). +/// You can not append to the upload session because the size of a file should not exceed the max file size +/// limit (i.e. 2^41 - 2^22 or 2,199,019,061,248 bytes). @objc public class DBXFilesUploadSessionAppendErrorTooLarge: DBXFilesUploadSessionAppendError { @objc @@ -10107,7 +10580,7 @@ public class DBXFilesUploadSessionAppendErrorTooLarge: DBXFilesUploadSessionAppe } } -/// For concurrent upload sessions, offset needs to be multiple of 4194304 bytes. +/// For concurrent upload sessions, offset needs to be multiple of 2^22 (4,194,304) bytes. @objc public class DBXFilesUploadSessionAppendErrorConcurrentSessionInvalidOffset: DBXFilesUploadSessionAppendError { @objc @@ -10117,7 +10590,7 @@ public class DBXFilesUploadSessionAppendErrorConcurrentSessionInvalidOffset: DBX } } -/// For concurrent upload sessions, only chunks with size multiple of 4194304 bytes can be uploaded. +/// For concurrent upload sessions, only chunks with size multiple of 2^22 (4,194,304) bytes can be uploaded. @objc public class DBXFilesUploadSessionAppendErrorConcurrentSessionInvalidDataSize: DBXFilesUploadSessionAppendError { @objc @@ -10127,7 +10600,7 @@ public class DBXFilesUploadSessionAppendErrorConcurrentSessionInvalidDataSize: D } } -/// The request payload must be at most 150 MB. +/// The request payload must be at most 150 MiB. @objc public class DBXFilesUploadSessionAppendErrorPayloadTooLarge: DBXFilesUploadSessionAppendError { @objc @@ -10137,22 +10610,22 @@ public class DBXFilesUploadSessionAppendErrorPayloadTooLarge: DBXFilesUploadSess } } -/// An unspecified error. +/// The content received by the Dropbox server in this call does not match the provided content hash. @objc -public class DBXFilesUploadSessionAppendErrorOther: DBXFilesUploadSessionAppendError { +public class DBXFilesUploadSessionAppendErrorContentHashMismatch: DBXFilesUploadSessionAppendError { @objc public init() { - let swift = Files.UploadSessionAppendError.other + let swift = Files.UploadSessionAppendError.contentHashMismatch super.init(swift: swift) } } -/// The content received by the Dropbox server in this call does not match the provided content hash. +/// An unspecified error. @objc -public class DBXFilesUploadSessionAppendErrorContentHashMismatch: DBXFilesUploadSessionAppendError { +public class DBXFilesUploadSessionAppendErrorOther: DBXFilesUploadSessionAppendError { @objc public init() { - let swift = Files.UploadSessionAppendError.contentHashMismatch + let swift = Files.UploadSessionAppendError.other super.init(swift: swift) } } @@ -10492,6 +10965,8 @@ public class DBXFilesUploadSessionFinishError: NSObject { return DBXFilesUploadSessionFinishErrorPayloadTooLarge() case .contentHashMismatch: return DBXFilesUploadSessionFinishErrorContentHashMismatch() + case .encryptionNotSupported: + return DBXFilesUploadSessionFinishErrorEncryptionNotSupported() case .other: return DBXFilesUploadSessionFinishErrorOther() } @@ -10550,6 +11025,11 @@ public class DBXFilesUploadSessionFinishError: NSObject { self as? DBXFilesUploadSessionFinishErrorContentHashMismatch } + @objc + public var asEncryptionNotSupported: DBXFilesUploadSessionFinishErrorEncryptionNotSupported? { + self as? DBXFilesUploadSessionFinishErrorEncryptionNotSupported + } + @objc public var asOther: DBXFilesUploadSessionFinishErrorOther? { self as? DBXFilesUploadSessionFinishErrorOther @@ -10599,8 +11079,8 @@ public class DBXFilesUploadSessionFinishErrorPropertiesError: DBXFilesUploadSess } } -/// The batch request commits files into too many different shared folders. Please limit your batch request to -/// files contained in a single shared folder. +/// Field is deprecated. The batch request commits files into too many different shared folders. Please limit +/// your batch request to files contained in a single shared folder. @objc public class DBXFilesUploadSessionFinishErrorTooManySharedFolderTargets: DBXFilesUploadSessionFinishError { @objc @@ -10650,7 +11130,7 @@ public class DBXFilesUploadSessionFinishErrorConcurrentSessionMissingData: DBXFi } } -/// The request payload must be at most 150 MB. +/// The request payload must be at most 150 MiB. @objc public class DBXFilesUploadSessionFinishErrorPayloadTooLarge: DBXFilesUploadSessionFinishError { @objc @@ -10670,6 +11150,16 @@ public class DBXFilesUploadSessionFinishErrorContentHashMismatch: DBXFilesUpload } } +/// The file is required to be encrypted, which is not supported in our public API. +@objc +public class DBXFilesUploadSessionFinishErrorEncryptionNotSupported: DBXFilesUploadSessionFinishError { + @objc + public init() { + let swift = Files.UploadSessionFinishError.encryptionNotSupported + super.init(swift: swift) + } +} + /// An unspecified error. @objc public class DBXFilesUploadSessionFinishErrorOther: DBXFilesUploadSessionFinishError { @@ -10680,6 +11170,185 @@ public class DBXFilesUploadSessionFinishErrorOther: DBXFilesUploadSessionFinishE } } +/// Objective-C compatible UploadSessionLookupError union +@objc +public class DBXFilesUploadSessionLookupError: NSObject { + let swift: Files.UploadSessionLookupError + + public init(swift: Files.UploadSessionLookupError) { + self.swift = swift + } + + public static func factory(swift: Files.UploadSessionLookupError) -> DBXFilesUploadSessionLookupError { + switch swift { + case .notFound: + return DBXFilesUploadSessionLookupErrorNotFound() + case .incorrectOffset(let swiftArg): + let arg = DBXFilesUploadSessionOffsetError(swift: swiftArg) + return DBXFilesUploadSessionLookupErrorIncorrectOffset(arg) + case .closed: + return DBXFilesUploadSessionLookupErrorClosed() + case .notClosed: + return DBXFilesUploadSessionLookupErrorNotClosed() + case .tooLarge: + return DBXFilesUploadSessionLookupErrorTooLarge() + case .concurrentSessionInvalidOffset: + return DBXFilesUploadSessionLookupErrorConcurrentSessionInvalidOffset() + case .concurrentSessionInvalidDataSize: + return DBXFilesUploadSessionLookupErrorConcurrentSessionInvalidDataSize() + case .payloadTooLarge: + return DBXFilesUploadSessionLookupErrorPayloadTooLarge() + case .other: + return DBXFilesUploadSessionLookupErrorOther() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asNotFound: DBXFilesUploadSessionLookupErrorNotFound? { + self as? DBXFilesUploadSessionLookupErrorNotFound + } + + @objc + public var asIncorrectOffset: DBXFilesUploadSessionLookupErrorIncorrectOffset? { + self as? DBXFilesUploadSessionLookupErrorIncorrectOffset + } + + @objc + public var asClosed: DBXFilesUploadSessionLookupErrorClosed? { + self as? DBXFilesUploadSessionLookupErrorClosed + } + + @objc + public var asNotClosed: DBXFilesUploadSessionLookupErrorNotClosed? { + self as? DBXFilesUploadSessionLookupErrorNotClosed + } + + @objc + public var asTooLarge: DBXFilesUploadSessionLookupErrorTooLarge? { + self as? DBXFilesUploadSessionLookupErrorTooLarge + } + + @objc + public var asConcurrentSessionInvalidOffset: DBXFilesUploadSessionLookupErrorConcurrentSessionInvalidOffset? { + self as? DBXFilesUploadSessionLookupErrorConcurrentSessionInvalidOffset + } + + @objc + public var asConcurrentSessionInvalidDataSize: DBXFilesUploadSessionLookupErrorConcurrentSessionInvalidDataSize? { + self as? DBXFilesUploadSessionLookupErrorConcurrentSessionInvalidDataSize + } + + @objc + public var asPayloadTooLarge: DBXFilesUploadSessionLookupErrorPayloadTooLarge? { + self as? DBXFilesUploadSessionLookupErrorPayloadTooLarge + } + + @objc + public var asOther: DBXFilesUploadSessionLookupErrorOther? { + self as? DBXFilesUploadSessionLookupErrorOther + } +} + +/// The upload session ID was not found or has expired. Upload sessions are valid for 7 days. +@objc +public class DBXFilesUploadSessionLookupErrorNotFound: DBXFilesUploadSessionLookupError { + @objc + public init() { + let swift = Files.UploadSessionLookupError.notFound + super.init(swift: swift) + } +} + +/// The specified offset was incorrect. See the value for the correct offset. This error may occur when a +/// previous request was received and processed successfully but the client did not receive the +/// response, e.g. due to a network error. +@objc +public class DBXFilesUploadSessionLookupErrorIncorrectOffset: DBXFilesUploadSessionLookupError { + @objc + public var incorrectOffset: DBXFilesUploadSessionOffsetError + + @objc + public init(_ arg: DBXFilesUploadSessionOffsetError) { + self.incorrectOffset = arg + let swift = Files.UploadSessionLookupError.incorrectOffset(arg.swift) + super.init(swift: swift) + } +} + +/// You are attempting to append data to an upload session that has already been closed (i.e. committed). +@objc +public class DBXFilesUploadSessionLookupErrorClosed: DBXFilesUploadSessionLookupError { + @objc + public init() { + let swift = Files.UploadSessionLookupError.closed + super.init(swift: swift) + } +} + +/// The session must be closed before calling upload_session/finish_batch. +@objc +public class DBXFilesUploadSessionLookupErrorNotClosed: DBXFilesUploadSessionLookupError { + @objc + public init() { + let swift = Files.UploadSessionLookupError.notClosed + super.init(swift: swift) + } +} + +/// You can not append to the upload session because the size of a file should not exceed the max file size +/// limit (i.e. 2^41 - 2^22 or 2,199,019,061,248 bytes). +@objc +public class DBXFilesUploadSessionLookupErrorTooLarge: DBXFilesUploadSessionLookupError { + @objc + public init() { + let swift = Files.UploadSessionLookupError.tooLarge + super.init(swift: swift) + } +} + +/// For concurrent upload sessions, offset needs to be multiple of 2^22 (4,194,304) bytes. +@objc +public class DBXFilesUploadSessionLookupErrorConcurrentSessionInvalidOffset: DBXFilesUploadSessionLookupError { + @objc + public init() { + let swift = Files.UploadSessionLookupError.concurrentSessionInvalidOffset + super.init(swift: swift) + } +} + +/// For concurrent upload sessions, only chunks with size multiple of 2^22 (4,194,304) bytes can be uploaded. +@objc +public class DBXFilesUploadSessionLookupErrorConcurrentSessionInvalidDataSize: DBXFilesUploadSessionLookupError { + @objc + public init() { + let swift = Files.UploadSessionLookupError.concurrentSessionInvalidDataSize + super.init(swift: swift) + } +} + +/// The request payload must be at most 150 MiB. +@objc +public class DBXFilesUploadSessionLookupErrorPayloadTooLarge: DBXFilesUploadSessionLookupError { + @objc + public init() { + let swift = Files.UploadSessionLookupError.payloadTooLarge + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXFilesUploadSessionLookupErrorOther: DBXFilesUploadSessionLookupError { + @objc + public init() { + let swift = Files.UploadSessionLookupError.other + super.init(swift: swift) + } +} + /// Objective-C compatible UploadSessionOffsetError struct @objc public class DBXFilesUploadSessionOffsetError: NSObject { @@ -10860,7 +11529,7 @@ public class DBXFilesUploadSessionStartErrorConcurrentSessionCloseNotAllowed: DB } } -/// The request payload must be at most 150 MB. +/// The request payload must be at most 150 MiB. @objc public class DBXFilesUploadSessionStartErrorPayloadTooLarge: DBXFilesUploadSessionStartError { @objc @@ -11169,6 +11838,8 @@ public class DBXFilesWriteError: NSObject { return DBXFilesWriteErrorOperationSuppressed() case .tooManyWriteOperations: return DBXFilesWriteErrorTooManyWriteOperations() + case .accessRestricted: + return DBXFilesWriteErrorAccessRestricted() case .other: return DBXFilesWriteErrorOther() } @@ -11217,6 +11888,11 @@ public class DBXFilesWriteError: NSObject { self as? DBXFilesWriteErrorTooManyWriteOperations } + @objc + public var asAccessRestricted: DBXFilesWriteErrorAccessRestricted? { + self as? DBXFilesWriteErrorAccessRestricted + } + @objc public var asOther: DBXFilesWriteErrorOther? { self as? DBXFilesWriteErrorOther @@ -11313,6 +11989,16 @@ public class DBXFilesWriteErrorTooManyWriteOperations: DBXFilesWriteError { } } +/// The user doesn't have permission to perform the action due to restrictions set by a team administrator +@objc +public class DBXFilesWriteErrorAccessRestricted: DBXFilesWriteError { + @objc + public init() { + let swift = Files.WriteError.accessRestricted + super.init(swift: swift) + } +} + /// An unspecified error. @objc public class DBXFilesWriteErrorOther: DBXFilesWriteError { diff --git a/Source/SwiftyDropboxObjC/Shared/Generated/DBXFilesAppAuthRoutes.swift b/Source/SwiftyDropboxObjC/Shared/Generated/DBXFilesAppAuthRoutes.swift index 2dbc9877..78263eff 100644 --- a/Source/SwiftyDropboxObjC/Shared/Generated/DBXFilesAppAuthRoutes.swift +++ b/Source/SwiftyDropboxObjC/Shared/Generated/DBXFilesAppAuthRoutes.swift @@ -27,10 +27,15 @@ public class DBXFilesAppAuthRoutes: NSObject { /// /// - parameter resource: Information specifying which file to preview. This could be a path to a file, a shared /// link pointing to a file, or a shared link pointing to a folder, with a relative path. - /// - parameter format: The format for the thumbnail image, jpeg (default) or png. For images that are photos, jpeg - /// should be preferred, while png is better for screenshots and digital arts. + /// - parameter format: The format for the thumbnail image, jpeg (default), png, or webp. For images that are + /// photos, jpeg should be preferred, while png is better for screenshots and digital arts, and web for + /// compression. /// - parameter size: The size for the thumbnail image. /// - parameter mode: How to resize and crop the image to achieve the desired size. + /// - parameter quality: Field is only returned for "internal" callers. Quality of the thumbnail image. + /// - parameter excludeMediaInfo: Normally, mediaInfo in FileMetadata is set for photo and video. When this flag is + /// true, mediaInfo in FileMetadata is not populated. This improves latency for use cases where `media_info` is + /// not needed. /// - parameter overwrite: A boolean to set behavior in the event of a naming conflict. `True` will overwrite /// conflicting file at destination. `False` will take no action (but if left unhandled in destination closure, /// an NSError will be thrown). @@ -44,6 +49,8 @@ public class DBXFilesAppAuthRoutes: NSObject { format: DBXFilesThumbnailFormat, size: DBXFilesThumbnailSize, mode: DBXFilesThumbnailMode, + quality: DBXFilesThumbnailQuality, + excludeMediaInfo: NSNumber?, overwrite: Bool, destination: URL ) -> DBXFilesGetThumbnailDownloadRequestFileV2 { @@ -52,6 +59,8 @@ public class DBXFilesAppAuthRoutes: NSObject { format: format.swift, size: size.swift, mode: mode.swift, + quality: quality.swift, + excludeMediaInfo: excludeMediaInfo?.boolValue, overwrite: overwrite, destination: destination ) @@ -67,11 +76,7 @@ public class DBXFilesAppAuthRoutes: NSObject { /// - returns: Through the response callback, the caller will receive a `Files.PreviewResult` object on success or a /// `Files.ThumbnailV2Error` object on failure. @objc - @discardableResult public func getThumbnailV2URL( - resource: DBXFilesPathOrLink, - overwrite: Bool, - destination: URL - ) -> DBXFilesGetThumbnailDownloadRequestFileV2 { + @discardableResult public func getThumbnailV2URL(resource: DBXFilesPathOrLink, overwrite: Bool, destination: URL) -> DBXFilesGetThumbnailDownloadRequestFileV2 { let swift = swift.getThumbnailV2(resource: resource.swift, overwrite: overwrite, destination: destination) return DBXFilesGetThumbnailDownloadRequestFileV2(swift: swift) } @@ -84,10 +89,15 @@ public class DBXFilesAppAuthRoutes: NSObject { /// /// - parameter resource: Information specifying which file to preview. This could be a path to a file, a shared /// link pointing to a file, or a shared link pointing to a folder, with a relative path. - /// - parameter format: The format for the thumbnail image, jpeg (default) or png. For images that are photos, jpeg - /// should be preferred, while png is better for screenshots and digital arts. + /// - parameter format: The format for the thumbnail image, jpeg (default), png, or webp. For images that are + /// photos, jpeg should be preferred, while png is better for screenshots and digital arts, and web for + /// compression. /// - parameter size: The size for the thumbnail image. /// - parameter mode: How to resize and crop the image to achieve the desired size. + /// - parameter quality: Field is only returned for "internal" callers. Quality of the thumbnail image. + /// - parameter excludeMediaInfo: Normally, mediaInfo in FileMetadata is set for photo and video. When this flag is + /// true, mediaInfo in FileMetadata is not populated. This improves latency for use cases where `media_info` is + /// not needed. /// /// - returns: Through the response callback, the caller will receive a `Files.PreviewResult` object on success or a /// `Files.ThumbnailV2Error` object on failure. @@ -96,9 +106,18 @@ public class DBXFilesAppAuthRoutes: NSObject { resource: DBXFilesPathOrLink, format: DBXFilesThumbnailFormat, size: DBXFilesThumbnailSize, - mode: DBXFilesThumbnailMode + mode: DBXFilesThumbnailMode, + quality: DBXFilesThumbnailQuality, + excludeMediaInfo: NSNumber? ) -> DBXFilesGetThumbnailDownloadRequestMemoryV2 { - let swift = swift.getThumbnailV2(resource: resource.swift, format: format.swift, size: size.swift, mode: mode.swift) + let swift = swift.getThumbnailV2( + resource: resource.swift, + format: format.swift, + size: size.swift, + mode: mode.swift, + quality: quality.swift, + excludeMediaInfo: excludeMediaInfo?.boolValue + ) return DBXFilesGetThumbnailDownloadRequestMemoryV2(swift: swift) } @@ -117,16 +136,16 @@ public class DBXFilesAppAuthRoutes: NSObject { } /// Starts returning the contents of a folder. If the result's hasMore in ListFolderResult field is true, call - /// listFolderContinue with the returned cursor in ListFolderResult to retrieve more entries. If you're using - /// recursive in ListFolderArg set to true to keep a local cache of the contents of a Dropbox account, iterate + /// listFolderContinue with the returned ListFolderResult.cursor to retrieve more entries. If you're using + /// ListFolderArg.recursive set to true to keep a local cache of the contents of a Dropbox account, iterate /// through each entry in order and process them as follows to keep your local state in sync: For each /// FileMetadata, store the new entry at the given path in your local state. If the required parent folders /// don't exist yet, create them. If there's already something else at the given path, replace it and remove all /// its children. For each FolderMetadata, store the new entry at the given path in your local state. If the /// required parent folders don't exist yet, create them. If there's already something else at the given path, - /// replace it but leave the children as they are. Check the new entry's readOnly in FolderSharingInfo and set - /// all its children's read-only statuses to match. For each DeletedMetadata, if your local state has something - /// at the given path, remove it and all its children. If there's nothing at the given path, ignore this entry. + /// replace it but leave the children as they are. Check the new entry's FolderSharingInfo.read_only and set all + /// its children's read-only statuses to match. For each DeletedMetadata, if your local state has something at + /// the given path, remove it and all its children. If there's nothing at the given path, ignore this entry. /// Note: auth.RateLimitError may be returned if multiple listFolder or listFolderContinue calls with same /// parameters are made simultaneously by same API app for same user. If your app implements retry logic, please /// hold off the retry until the previous request finishes. @@ -135,13 +154,16 @@ public class DBXFilesAppAuthRoutes: NSObject { /// /// - parameter path: A unique identifier for the file. /// - parameter recursive: If true, the list folder operation will be applied recursively to all subfolders and the - /// response will contain contents of all subfolders. - /// - parameter includeMediaInfo: If true, mediaInfo in FileMetadata is set for photo and video. This parameter will - /// no longer have an effect starting December 2, 2019. + /// response will contain contents of all subfolders. In some cases, setting recursive in ListFolderArg to true + /// may lead to performance issues or errors, especially when traversing folder structures with a large number + /// of items. A workaround for such cases is to set recursive in ListFolderArg to false and traverse subfolders + /// one at a time. + /// - parameter includeMediaInfo: Field is deprecated. If true, mediaInfo in FileMetadata is set for photo and + /// video. This parameter will no longer have an effect starting December 2, 2019. /// - parameter includeDeleted: If true, the results will include entries for files and folders that used to exist /// but were deleted. /// - parameter includeHasExplicitSharedMembers: If true, the results will include a flag for each file indicating - /// whether or not that file has any explicit members. + /// whether or not that file has any explicit members. /// - parameter includeMountedFolders: If true, the results will include entries under mounted folders which /// includes app folder, shared folder and team folder. /// - parameter limit: The maximum number of results to return per request. Note: This is an approximate number and @@ -152,6 +174,8 @@ public class DBXFilesAppAuthRoutes: NSObject { /// - parameter includePropertyGroups: If set to a valid list of template IDs, propertyGroups in FileMetadata is set /// if there exists property data associated with the file and each of the listed templates. /// - parameter includeNonDownloadableFiles: If true, include files that are not downloadable, i.e. Google Docs. + /// - parameter includeRestorableInfo: If true, each returned deleted entry will include whether that entry can be + /// restored. /// /// - returns: Through the response callback, the caller will receive a `Files.ListFolderResult` object on success /// or a `Files.ListFolderError` object on failure. @@ -166,7 +190,8 @@ public class DBXFilesAppAuthRoutes: NSObject { limit: NSNumber?, sharedLink: DBXFilesSharedLink?, includePropertyGroups: DBXFilePropertiesTemplateFilterBase?, - includeNonDownloadableFiles: NSNumber + includeNonDownloadableFiles: NSNumber, + includeRestorableInfo: NSNumber ) -> DBXFilesListFolderRpcRequest { let swift = swift.listFolder( path: path, @@ -178,22 +203,23 @@ public class DBXFilesAppAuthRoutes: NSObject { limit: limit?.uint32Value, sharedLink: sharedLink?.swift, includePropertyGroups: includePropertyGroups?.swift, - includeNonDownloadableFiles: includeNonDownloadableFiles.boolValue + includeNonDownloadableFiles: includeNonDownloadableFiles.boolValue, + includeRestorableInfo: includeRestorableInfo.boolValue ) return DBXFilesListFolderRpcRequest(swift: swift) } /// Starts returning the contents of a folder. If the result's hasMore in ListFolderResult field is true, call - /// listFolderContinue with the returned cursor in ListFolderResult to retrieve more entries. If you're using - /// recursive in ListFolderArg set to true to keep a local cache of the contents of a Dropbox account, iterate + /// listFolderContinue with the returned ListFolderResult.cursor to retrieve more entries. If you're using + /// ListFolderArg.recursive set to true to keep a local cache of the contents of a Dropbox account, iterate /// through each entry in order and process them as follows to keep your local state in sync: For each /// FileMetadata, store the new entry at the given path in your local state. If the required parent folders /// don't exist yet, create them. If there's already something else at the given path, replace it and remove all /// its children. For each FolderMetadata, store the new entry at the given path in your local state. If the /// required parent folders don't exist yet, create them. If there's already something else at the given path, - /// replace it but leave the children as they are. Check the new entry's readOnly in FolderSharingInfo and set - /// all its children's read-only statuses to match. For each DeletedMetadata, if your local state has something - /// at the given path, remove it and all its children. If there's nothing at the given path, ignore this entry. + /// replace it but leave the children as they are. Check the new entry's FolderSharingInfo.read_only and set all + /// its children's read-only statuses to match. For each DeletedMetadata, if your local state has something at + /// the given path, remove it and all its children. If there's nothing at the given path, ignore this entry. /// Note: auth.RateLimitError may be returned if multiple listFolder or listFolderContinue calls with same /// parameters are made simultaneously by same API app for same user. If your app implements retry logic, please /// hold off the retry until the previous request finishes. diff --git a/Source/SwiftyDropboxObjC/Shared/Generated/DBXFilesRoutes.swift b/Source/SwiftyDropboxObjC/Shared/Generated/DBXFilesRoutes.swift index 326b4fbd..9228107c 100644 --- a/Source/SwiftyDropboxObjC/Shared/Generated/DBXFilesRoutes.swift +++ b/Source/SwiftyDropboxObjC/Shared/Generated/DBXFilesRoutes.swift @@ -24,7 +24,7 @@ public class DBXFilesRoutes: NSObject { /// /// - scope: files.content.write /// - /// - parameter allowSharedFolder: This flag has no effect. + /// - parameter allowSharedFolder: Field is deprecated. This flag has no effect. /// - parameter autorename: If there's a conflict, have the Dropbox server try to autorename the file to avoid the /// conflict. /// - parameter allowOwnershipTransfer: Allow moves by owner even if it would result in an ownership transfer for @@ -33,13 +33,7 @@ public class DBXFilesRoutes: NSObject { /// - returns: Through the response callback, the caller will receive a `Files.RelocationResult` object on success /// or a `Files.RelocationError` object on failure. @objc - @discardableResult public func copyV2( - fromPath: String, - toPath: String, - allowSharedFolder: NSNumber, - autorename: NSNumber, - allowOwnershipTransfer: NSNumber - ) -> DBXFilesCopyRpcRequestV2 { + @discardableResult public func copyV2(fromPath: String, toPath: String, allowSharedFolder: NSNumber, autorename: NSNumber, allowOwnershipTransfer: NSNumber) -> DBXFilesCopyRpcRequestV2 { let swift = swift.copyV2( fromPath: fromPath, toPath: toPath, @@ -172,8 +166,8 @@ public class DBXFilesRoutes: NSObject { /// Create multiple folders at once. This route is asynchronous for large batches, which returns a job ID /// immediately and runs the create folder batch asynchronously. Otherwise, creates the folders and returns the - /// result synchronously for smaller inputs. You can force asynchronous behaviour by using the forceAsync in - /// CreateFolderBatchArg flag. Use createFolderBatchCheck to check the job status. + /// result synchronously for smaller inputs. You can force asynchronous behaviour by using the + /// CreateFolderBatchArg.force_async flag. Use createFolderBatchCheck to check the job status. /// /// - scope: files.content.write /// @@ -193,8 +187,8 @@ public class DBXFilesRoutes: NSObject { /// Create multiple folders at once. This route is asynchronous for large batches, which returns a job ID /// immediately and runs the create folder batch asynchronously. Otherwise, creates the folders and returns the - /// result synchronously for smaller inputs. You can force asynchronous behaviour by using the forceAsync in - /// CreateFolderBatchArg flag. Use createFolderBatchCheck to check the job status. + /// result synchronously for smaller inputs. You can force asynchronous behaviour by using the + /// CreateFolderBatchArg.force_async flag. Use createFolderBatchCheck to check the job status. /// /// - scope: files.content.write /// @@ -290,7 +284,7 @@ public class DBXFilesRoutes: NSObject { /// - scope: files.content.read /// /// - parameter path: The path of the file to download. - /// - parameter rev: Please specify revision in path instead. + /// - parameter rev: Field is deprecated. Please specify revision in path instead. /// - parameter overwrite: A boolean to set behavior in the event of a naming conflict. `True` will overwrite /// conflicting file at destination. `False` will take no action (but if left unhandled in destination closure, /// an NSError will be thrown). @@ -321,7 +315,7 @@ public class DBXFilesRoutes: NSObject { /// - scope: files.content.read /// /// - parameter path: The path of the file to download. - /// - parameter rev: Please specify revision in path instead. + /// - parameter rev: Field is deprecated. Please specify revision in path instead. /// /// - returns: Through the response callback, the caller will receive a `Files.FileMetadata` object on success or a /// `Files.DownloadError` object on failure. @@ -382,7 +376,7 @@ public class DBXFilesRoutes: NSObject { } /// Export a file from a user's Dropbox. This route only supports exporting files that cannot be downloaded directly - /// and whose fileMetadata in ExportResult has exportAs in ExportInfo populated. + /// and whose ExportResult.file_metadata has ExportInfo.export_as populated. /// /// - scope: files.content.read /// @@ -404,7 +398,7 @@ public class DBXFilesRoutes: NSObject { } /// Export a file from a user's Dropbox. This route only supports exporting files that cannot be downloaded directly - /// and whose fileMetadata in ExportResult has exportAs in ExportInfo populated. + /// and whose ExportResult.file_metadata has ExportInfo.export_as populated. /// /// - scope: files.content.read /// @@ -417,7 +411,7 @@ public class DBXFilesRoutes: NSObject { } /// Export a file from a user's Dropbox. This route only supports exporting files that cannot be downloaded directly - /// and whose fileMetadata in ExportResult has exportAs in ExportInfo populated. + /// and whose ExportResult.file_metadata has ExportInfo.export_as populated. /// /// - scope: files.content.read /// @@ -435,7 +429,7 @@ public class DBXFilesRoutes: NSObject { } /// Export a file from a user's Dropbox. This route only supports exporting files that cannot be downloaded directly - /// and whose fileMetadata in ExportResult has exportAs in ExportInfo populated. + /// and whose ExportResult.file_metadata has ExportInfo.export_as populated. /// /// - scope: files.content.read /// @@ -471,7 +465,7 @@ public class DBXFilesRoutes: NSObject { /// - parameter includeDeleted: If true, DeletedMetadata will be returned for deleted file or folder, otherwise /// notFound in LookupError will be returned. /// - parameter includeHasExplicitSharedMembers: If true, the results will include a flag for each file indicating - /// whether or not that file has any explicit members. + /// whether or not that file has any explicit members. /// - parameter includePropertyGroups: If set to a valid list of template IDs, propertyGroups in FileMetadata is set /// if there exists property data associated with the file and each of the listed templates. /// @@ -509,13 +503,13 @@ public class DBXFilesRoutes: NSObject { /// Get a preview for a file. Currently, PDF previews are generated for files with the following extensions: .ai, /// .doc, .docm, .docx, .eps, .gdoc, .gslides, .odp, .odt, .pps, .ppsm, .ppsx, .ppt, .pptm, .pptx, .rtf. HTML - /// previews are generated for files with the following extensions: .csv, .ods, .xls, .xlsm, .gsheet, .xlsx. - /// Other formats will return an unsupported extension error. + /// previews are generated for .csv, .ods, .xls, .xlsm, .gsheet, .xlsx. Other formats will return an unsupported + /// extension error. /// /// - scope: files.content.read /// /// - parameter path: The path of the file to preview. - /// - parameter rev: Please specify revision in path instead. + /// - parameter rev: Field is deprecated. Please specify revision in path instead. /// - parameter overwrite: A boolean to set behavior in the event of a naming conflict. `True` will overwrite /// conflicting file at destination. `False` will take no action (but if left unhandled in destination closure, /// an NSError will be thrown). @@ -531,8 +525,8 @@ public class DBXFilesRoutes: NSObject { /// Get a preview for a file. Currently, PDF previews are generated for files with the following extensions: .ai, /// .doc, .docm, .docx, .eps, .gdoc, .gslides, .odp, .odt, .pps, .ppsm, .ppsx, .ppt, .pptm, .pptx, .rtf. HTML - /// previews are generated for files with the following extensions: .csv, .ods, .xls, .xlsm, .gsheet, .xlsx. - /// Other formats will return an unsupported extension error. + /// previews are generated for .csv, .ods, .xls, .xlsm, .gsheet, .xlsx. Other formats will return an unsupported + /// extension error. /// /// - scope: files.content.read /// @@ -546,13 +540,13 @@ public class DBXFilesRoutes: NSObject { /// Get a preview for a file. Currently, PDF previews are generated for files with the following extensions: .ai, /// .doc, .docm, .docx, .eps, .gdoc, .gslides, .odp, .odt, .pps, .ppsm, .ppsx, .ppt, .pptm, .pptx, .rtf. HTML - /// previews are generated for files with the following extensions: .csv, .ods, .xls, .xlsm, .gsheet, .xlsx. - /// Other formats will return an unsupported extension error. + /// previews are generated for .csv, .ods, .xls, .xlsm, .gsheet, .xlsx. Other formats will return an unsupported + /// extension error. /// /// - scope: files.content.read /// /// - parameter path: The path of the file to preview. - /// - parameter rev: Please specify revision in path instead. + /// - parameter rev: Field is deprecated. Please specify revision in path instead. /// /// - returns: Through the response callback, the caller will receive a `Files.FileMetadata` object on success or a /// `Files.PreviewError` object on failure. @@ -564,8 +558,8 @@ public class DBXFilesRoutes: NSObject { /// Get a preview for a file. Currently, PDF previews are generated for files with the following extensions: .ai, /// .doc, .docm, .docx, .eps, .gdoc, .gslides, .odp, .odt, .pps, .ppsm, .ppsx, .ppt, .pptm, .pptx, .rtf. HTML - /// previews are generated for files with the following extensions: .csv, .ods, .xls, .xlsm, .gsheet, .xlsx. - /// Other formats will return an unsupported extension error. + /// previews are generated for .csv, .ods, .xls, .xlsm, .gsheet, .xlsx. Other formats will return an unsupported + /// extension error. /// /// - scope: files.content.read /// @@ -594,30 +588,31 @@ public class DBXFilesRoutes: NSObject { } /// Get a one-time use temporary upload link to upload a file to a Dropbox location. This endpoint acts as a - /// delayed upload. The returned temporary upload link may be used to make a POST request with the data to be - /// uploaded. The upload will then be perfomed with the CommitInfo previously provided to getTemporaryUploadLink - /// but evaluated only upon consumption. Hence, errors stemming from invalid CommitInfo with respect to the - /// state of the user's Dropbox will only be communicated at consumption time. Additionally, these errors are - /// surfaced as generic HTTP 409 Conflict responses, potentially hiding issue details. The maximum temporary - /// upload link duration is 4 hours. Upon consumption or expiration, a new link will have to be generated. - /// Multiple links may exist for a specific upload path at any given time. The POST request on the temporary - /// upload link must have its Content-Type set to "application/octet-stream". Example temporary upload link - /// consumption request: curl -X POST https://content.dropboxapi.com/apitul/1/bNi2uIYF51cVBND --header - /// "Content-Type: application/octet-stream" --data-binary @local_file.txt A successful temporary upload link - /// consumption request returns the content hash of the uploaded data in JSON format. Example successful - /// temporary upload link consumption response: {"content-hash": "599d71033d700ac892a0e48fa61b125d2f5994"} An - /// unsuccessful temporary upload link consumption request returns any of the following status codes: HTTP 400 - /// Bad Request: Content-Type is not one of application/octet-stream and text/plain or request is invalid. HTTP - /// 409 Conflict: The temporary upload link does not exist or is currently unavailable, the upload failed, or - /// another error happened. HTTP 410 Gone: The temporary upload link is expired or consumed. Example - /// unsuccessful temporary upload link consumption response: Temporary upload link has been recently consumed. + /// delayed upload(). The returned temporary upload link may be used to make a POST request with the data to be + /// uploaded. The upload will then be perfomed with the CommitInfo previously provided to + /// getTemporaryUploadLink() but evaluated only upon consumption. Hence, errors stemming from invalid CommitInfo + /// with respect to the state of the user's Dropbox will only be communicated at consumption time. Additionally, + /// these errors are surfaced as generic HTTP 409 Conflict responses, potentially hiding issue details. The + /// maximum temporary upload link duration is 4 hours. Upon consumption or expiration, a new link will have to + /// be generated. Multiple links may exist for a specific upload path at any given time. The POST request on + /// the temporary upload link must have its Content-Type set to "application/octet-stream". Example temporary + /// upload link consumption request: curl -X POST https://content.dropboxapi.com/apitul/1/bNi2uIYF51cVBND + /// --header "Content-Type: application/octet-stream" --data-binary @local_file.txt A successful temporary + /// upload link consumption request returns the content hash of the uploaded data in JSON format. Example + /// successful temporary upload link consumption response: {"content-hash": + /// "599d71033d700ac892a0e48fa61b125d2f5994"} An unsuccessful temporary upload link consumption request returns + /// any of the following status codes: HTTP 400 Bad Request: Content-Type is not one of + /// application/octet-stream and text/plain or request is invalid. HTTP 409 Conflict: The temporary upload link + /// does not exist or is currently unavailable, the upload failed, or another error happened. HTTP 410 Gone: The + /// temporary upload link is expired or consumed. Example unsuccessful temporary upload link consumption + /// response: Temporary upload link has been recently consumed. /// /// - scope: files.content.write /// /// - parameter commitInfo: Contains the path and other optional modifiers for the future upload commit. Equivalent /// to the parameters provided to upload. - /// - parameter duration: How long before this link expires, in seconds. Attempting to start an upload with this - /// link longer than this period of time after link creation will result in an error. + /// - parameter duration: How long before this link expires, in seconds. Attempting to start an upload with this + /// link longer than this period of time after link creation will result in an error. /// /// - returns: Through the response callback, the caller will receive a `Files.GetTemporaryUploadLinkResult` object /// on success or a `Void` object on failure. @@ -628,23 +623,24 @@ public class DBXFilesRoutes: NSObject { } /// Get a one-time use temporary upload link to upload a file to a Dropbox location. This endpoint acts as a - /// delayed upload. The returned temporary upload link may be used to make a POST request with the data to be - /// uploaded. The upload will then be perfomed with the CommitInfo previously provided to getTemporaryUploadLink - /// but evaluated only upon consumption. Hence, errors stemming from invalid CommitInfo with respect to the - /// state of the user's Dropbox will only be communicated at consumption time. Additionally, these errors are - /// surfaced as generic HTTP 409 Conflict responses, potentially hiding issue details. The maximum temporary - /// upload link duration is 4 hours. Upon consumption or expiration, a new link will have to be generated. - /// Multiple links may exist for a specific upload path at any given time. The POST request on the temporary - /// upload link must have its Content-Type set to "application/octet-stream". Example temporary upload link - /// consumption request: curl -X POST https://content.dropboxapi.com/apitul/1/bNi2uIYF51cVBND --header - /// "Content-Type: application/octet-stream" --data-binary @local_file.txt A successful temporary upload link - /// consumption request returns the content hash of the uploaded data in JSON format. Example successful - /// temporary upload link consumption response: {"content-hash": "599d71033d700ac892a0e48fa61b125d2f5994"} An - /// unsuccessful temporary upload link consumption request returns any of the following status codes: HTTP 400 - /// Bad Request: Content-Type is not one of application/octet-stream and text/plain or request is invalid. HTTP - /// 409 Conflict: The temporary upload link does not exist or is currently unavailable, the upload failed, or - /// another error happened. HTTP 410 Gone: The temporary upload link is expired or consumed. Example - /// unsuccessful temporary upload link consumption response: Temporary upload link has been recently consumed. + /// delayed upload(). The returned temporary upload link may be used to make a POST request with the data to be + /// uploaded. The upload will then be perfomed with the CommitInfo previously provided to + /// getTemporaryUploadLink() but evaluated only upon consumption. Hence, errors stemming from invalid CommitInfo + /// with respect to the state of the user's Dropbox will only be communicated at consumption time. Additionally, + /// these errors are surfaced as generic HTTP 409 Conflict responses, potentially hiding issue details. The + /// maximum temporary upload link duration is 4 hours. Upon consumption or expiration, a new link will have to + /// be generated. Multiple links may exist for a specific upload path at any given time. The POST request on + /// the temporary upload link must have its Content-Type set to "application/octet-stream". Example temporary + /// upload link consumption request: curl -X POST https://content.dropboxapi.com/apitul/1/bNi2uIYF51cVBND + /// --header "Content-Type: application/octet-stream" --data-binary @local_file.txt A successful temporary + /// upload link consumption request returns the content hash of the uploaded data in JSON format. Example + /// successful temporary upload link consumption response: {"content-hash": + /// "599d71033d700ac892a0e48fa61b125d2f5994"} An unsuccessful temporary upload link consumption request returns + /// any of the following status codes: HTTP 400 Bad Request: Content-Type is not one of + /// application/octet-stream and text/plain or request is invalid. HTTP 409 Conflict: The temporary upload link + /// does not exist or is currently unavailable, the upload failed, or another error happened. HTTP 410 Gone: The + /// temporary upload link is expired or consumed. Example unsuccessful temporary upload link consumption + /// response: Temporary upload link has been recently consumed. /// /// - scope: files.content.write /// @@ -663,10 +659,15 @@ public class DBXFilesRoutes: NSObject { /// - scope: files.content.read /// /// - parameter path: The path to the image file you want to thumbnail. - /// - parameter format: The format for the thumbnail image, jpeg (default) or png. For images that are photos, jpeg - /// should be preferred, while png is better for screenshots and digital arts. + /// - parameter format: The format for the thumbnail image, jpeg (default), png, or webp. For images that are + /// photos, jpeg should be preferred, while png is better for screenshots and digital arts, and web for + /// compression. /// - parameter size: The size for the thumbnail image. /// - parameter mode: How to resize and crop the image to achieve the desired size. + /// - parameter quality: Field is only returned for "internal" callers. Quality of the thumbnail image. + /// - parameter excludeMediaInfo: Normally, mediaInfo in FileMetadata is set for photo and video. When this flag is + /// true, mediaInfo in FileMetadata is not populated. This improves latency for use cases where `media_info` is + /// not needed. /// - parameter overwrite: A boolean to set behavior in the event of a naming conflict. `True` will overwrite /// conflicting file at destination. `False` will take no action (but if left unhandled in destination closure, /// an NSError will be thrown). @@ -680,10 +681,21 @@ public class DBXFilesRoutes: NSObject { format: DBXFilesThumbnailFormat, size: DBXFilesThumbnailSize, mode: DBXFilesThumbnailMode, + quality: DBXFilesThumbnailQuality, + excludeMediaInfo: NSNumber?, overwrite: Bool, destination: URL ) -> DBXFilesGetThumbnailDownloadRequestFile { - let swift = swift.getThumbnail(path: path, format: format.swift, size: size.swift, mode: mode.swift, overwrite: overwrite, destination: destination) + let swift = swift.getThumbnail( + path: path, + format: format.swift, + size: size.swift, + mode: mode.swift, + quality: quality.swift, + excludeMediaInfo: excludeMediaInfo?.boolValue, + overwrite: overwrite, + destination: destination + ) return DBXFilesGetThumbnailDownloadRequestFile(swift: swift) } @@ -708,10 +720,15 @@ public class DBXFilesRoutes: NSObject { /// - scope: files.content.read /// /// - parameter path: The path to the image file you want to thumbnail. - /// - parameter format: The format for the thumbnail image, jpeg (default) or png. For images that are photos, jpeg - /// should be preferred, while png is better for screenshots and digital arts. + /// - parameter format: The format for the thumbnail image, jpeg (default), png, or webp. For images that are + /// photos, jpeg should be preferred, while png is better for screenshots and digital arts, and web for + /// compression. /// - parameter size: The size for the thumbnail image. /// - parameter mode: How to resize and crop the image to achieve the desired size. + /// - parameter quality: Field is only returned for "internal" callers. Quality of the thumbnail image. + /// - parameter excludeMediaInfo: Normally, mediaInfo in FileMetadata is set for photo and video. When this flag is + /// true, mediaInfo in FileMetadata is not populated. This improves latency for use cases where `media_info` is + /// not needed. /// /// - returns: Through the response callback, the caller will receive a `Files.FileMetadata` object on success or a /// `Files.ThumbnailError` object on failure. @@ -720,9 +737,18 @@ public class DBXFilesRoutes: NSObject { path: String, format: DBXFilesThumbnailFormat, size: DBXFilesThumbnailSize, - mode: DBXFilesThumbnailMode + mode: DBXFilesThumbnailMode, + quality: DBXFilesThumbnailQuality, + excludeMediaInfo: NSNumber? ) -> DBXFilesGetThumbnailDownloadRequestMemory { - let swift = swift.getThumbnail(path: path, format: format.swift, size: size.swift, mode: mode.swift) + let swift = swift.getThumbnail( + path: path, + format: format.swift, + size: size.swift, + mode: mode.swift, + quality: quality.swift, + excludeMediaInfo: excludeMediaInfo?.boolValue + ) return DBXFilesGetThumbnailDownloadRequestMemory(swift: swift) } @@ -748,10 +774,15 @@ public class DBXFilesRoutes: NSObject { /// /// - parameter resource: Information specifying which file to preview. This could be a path to a file, a shared /// link pointing to a file, or a shared link pointing to a folder, with a relative path. - /// - parameter format: The format for the thumbnail image, jpeg (default) or png. For images that are photos, jpeg - /// should be preferred, while png is better for screenshots and digital arts. + /// - parameter format: The format for the thumbnail image, jpeg (default), png, or webp. For images that are + /// photos, jpeg should be preferred, while png is better for screenshots and digital arts, and web for + /// compression. /// - parameter size: The size for the thumbnail image. /// - parameter mode: How to resize and crop the image to achieve the desired size. + /// - parameter quality: Field is only returned for "internal" callers. Quality of the thumbnail image. + /// - parameter excludeMediaInfo: Normally, mediaInfo in FileMetadata is set for photo and video. When this flag is + /// true, mediaInfo in FileMetadata is not populated. This improves latency for use cases where `media_info` is + /// not needed. /// - parameter overwrite: A boolean to set behavior in the event of a naming conflict. `True` will overwrite /// conflicting file at destination. `False` will take no action (but if left unhandled in destination closure, /// an NSError will be thrown). @@ -765,6 +796,8 @@ public class DBXFilesRoutes: NSObject { format: DBXFilesThumbnailFormat, size: DBXFilesThumbnailSize, mode: DBXFilesThumbnailMode, + quality: DBXFilesThumbnailQuality, + excludeMediaInfo: NSNumber?, overwrite: Bool, destination: URL ) -> DBXFilesGetThumbnailDownloadRequestFileV2 { @@ -773,6 +806,8 @@ public class DBXFilesRoutes: NSObject { format: format.swift, size: size.swift, mode: mode.swift, + quality: quality.swift, + excludeMediaInfo: excludeMediaInfo?.boolValue, overwrite: overwrite, destination: destination ) @@ -788,11 +823,7 @@ public class DBXFilesRoutes: NSObject { /// - returns: Through the response callback, the caller will receive a `Files.PreviewResult` object on success or a /// `Files.ThumbnailV2Error` object on failure. @objc - @discardableResult public func getThumbnailV2URL( - resource: DBXFilesPathOrLink, - overwrite: Bool, - destination: URL - ) -> DBXFilesGetThumbnailDownloadRequestFileV2 { + @discardableResult public func getThumbnailV2URL(resource: DBXFilesPathOrLink, overwrite: Bool, destination: URL) -> DBXFilesGetThumbnailDownloadRequestFileV2 { let swift = swift.getThumbnailV2(resource: resource.swift, overwrite: overwrite, destination: destination) return DBXFilesGetThumbnailDownloadRequestFileV2(swift: swift) } @@ -805,10 +836,15 @@ public class DBXFilesRoutes: NSObject { /// /// - parameter resource: Information specifying which file to preview. This could be a path to a file, a shared /// link pointing to a file, or a shared link pointing to a folder, with a relative path. - /// - parameter format: The format for the thumbnail image, jpeg (default) or png. For images that are photos, jpeg - /// should be preferred, while png is better for screenshots and digital arts. + /// - parameter format: The format for the thumbnail image, jpeg (default), png, or webp. For images that are + /// photos, jpeg should be preferred, while png is better for screenshots and digital arts, and web for + /// compression. /// - parameter size: The size for the thumbnail image. /// - parameter mode: How to resize and crop the image to achieve the desired size. + /// - parameter quality: Field is only returned for "internal" callers. Quality of the thumbnail image. + /// - parameter excludeMediaInfo: Normally, mediaInfo in FileMetadata is set for photo and video. When this flag is + /// true, mediaInfo in FileMetadata is not populated. This improves latency for use cases where `media_info` is + /// not needed. /// /// - returns: Through the response callback, the caller will receive a `Files.PreviewResult` object on success or a /// `Files.ThumbnailV2Error` object on failure. @@ -817,9 +853,18 @@ public class DBXFilesRoutes: NSObject { resource: DBXFilesPathOrLink, format: DBXFilesThumbnailFormat, size: DBXFilesThumbnailSize, - mode: DBXFilesThumbnailMode + mode: DBXFilesThumbnailMode, + quality: DBXFilesThumbnailQuality, + excludeMediaInfo: NSNumber? ) -> DBXFilesGetThumbnailDownloadRequestMemoryV2 { - let swift = swift.getThumbnailV2(resource: resource.swift, format: format.swift, size: size.swift, mode: mode.swift) + let swift = swift.getThumbnailV2( + resource: resource.swift, + format: format.swift, + size: size.swift, + mode: mode.swift, + quality: quality.swift, + excludeMediaInfo: excludeMediaInfo?.boolValue + ) return DBXFilesGetThumbnailDownloadRequestMemoryV2(swift: swift) } @@ -854,16 +899,16 @@ public class DBXFilesRoutes: NSObject { } /// Starts returning the contents of a folder. If the result's hasMore in ListFolderResult field is true, call - /// listFolderContinue with the returned cursor in ListFolderResult to retrieve more entries. If you're using - /// recursive in ListFolderArg set to true to keep a local cache of the contents of a Dropbox account, iterate + /// listFolderContinue with the returned ListFolderResult.cursor to retrieve more entries. If you're using + /// ListFolderArg.recursive set to true to keep a local cache of the contents of a Dropbox account, iterate /// through each entry in order and process them as follows to keep your local state in sync: For each /// FileMetadata, store the new entry at the given path in your local state. If the required parent folders /// don't exist yet, create them. If there's already something else at the given path, replace it and remove all /// its children. For each FolderMetadata, store the new entry at the given path in your local state. If the /// required parent folders don't exist yet, create them. If there's already something else at the given path, - /// replace it but leave the children as they are. Check the new entry's readOnly in FolderSharingInfo and set - /// all its children's read-only statuses to match. For each DeletedMetadata, if your local state has something - /// at the given path, remove it and all its children. If there's nothing at the given path, ignore this entry. + /// replace it but leave the children as they are. Check the new entry's FolderSharingInfo.read_only and set all + /// its children's read-only statuses to match. For each DeletedMetadata, if your local state has something at + /// the given path, remove it and all its children. If there's nothing at the given path, ignore this entry. /// Note: auth.RateLimitError may be returned if multiple listFolder or listFolderContinue calls with same /// parameters are made simultaneously by same API app for same user. If your app implements retry logic, please /// hold off the retry until the previous request finishes. @@ -872,13 +917,16 @@ public class DBXFilesRoutes: NSObject { /// /// - parameter path: A unique identifier for the file. /// - parameter recursive: If true, the list folder operation will be applied recursively to all subfolders and the - /// response will contain contents of all subfolders. - /// - parameter includeMediaInfo: If true, mediaInfo in FileMetadata is set for photo and video. This parameter will - /// no longer have an effect starting December 2, 2019. + /// response will contain contents of all subfolders. In some cases, setting recursive in ListFolderArg to true + /// may lead to performance issues or errors, especially when traversing folder structures with a large number + /// of items. A workaround for such cases is to set recursive in ListFolderArg to false and traverse subfolders + /// one at a time. + /// - parameter includeMediaInfo: Field is deprecated. If true, mediaInfo in FileMetadata is set for photo and + /// video. This parameter will no longer have an effect starting December 2, 2019. /// - parameter includeDeleted: If true, the results will include entries for files and folders that used to exist /// but were deleted. /// - parameter includeHasExplicitSharedMembers: If true, the results will include a flag for each file indicating - /// whether or not that file has any explicit members. + /// whether or not that file has any explicit members. /// - parameter includeMountedFolders: If true, the results will include entries under mounted folders which /// includes app folder, shared folder and team folder. /// - parameter limit: The maximum number of results to return per request. Note: This is an approximate number and @@ -889,6 +937,8 @@ public class DBXFilesRoutes: NSObject { /// - parameter includePropertyGroups: If set to a valid list of template IDs, propertyGroups in FileMetadata is set /// if there exists property data associated with the file and each of the listed templates. /// - parameter includeNonDownloadableFiles: If true, include files that are not downloadable, i.e. Google Docs. + /// - parameter includeRestorableInfo: If true, each returned deleted entry will include whether that entry can be + /// restored. /// /// - returns: Through the response callback, the caller will receive a `Files.ListFolderResult` object on success /// or a `Files.ListFolderError` object on failure. @@ -903,7 +953,8 @@ public class DBXFilesRoutes: NSObject { limit: NSNumber?, sharedLink: DBXFilesSharedLink?, includePropertyGroups: DBXFilePropertiesTemplateFilterBase?, - includeNonDownloadableFiles: NSNumber + includeNonDownloadableFiles: NSNumber, + includeRestorableInfo: NSNumber ) -> DBXFilesListFolderRpcRequest { let swift = swift.listFolder( path: path, @@ -915,22 +966,23 @@ public class DBXFilesRoutes: NSObject { limit: limit?.uint32Value, sharedLink: sharedLink?.swift, includePropertyGroups: includePropertyGroups?.swift, - includeNonDownloadableFiles: includeNonDownloadableFiles.boolValue + includeNonDownloadableFiles: includeNonDownloadableFiles.boolValue, + includeRestorableInfo: includeRestorableInfo.boolValue ) return DBXFilesListFolderRpcRequest(swift: swift) } /// Starts returning the contents of a folder. If the result's hasMore in ListFolderResult field is true, call - /// listFolderContinue with the returned cursor in ListFolderResult to retrieve more entries. If you're using - /// recursive in ListFolderArg set to true to keep a local cache of the contents of a Dropbox account, iterate + /// listFolderContinue with the returned ListFolderResult.cursor to retrieve more entries. If you're using + /// ListFolderArg.recursive set to true to keep a local cache of the contents of a Dropbox account, iterate /// through each entry in order and process them as follows to keep your local state in sync: For each /// FileMetadata, store the new entry at the given path in your local state. If the required parent folders /// don't exist yet, create them. If there's already something else at the given path, replace it and remove all /// its children. For each FolderMetadata, store the new entry at the given path in your local state. If the /// required parent folders don't exist yet, create them. If there's already something else at the given path, - /// replace it but leave the children as they are. Check the new entry's readOnly in FolderSharingInfo and set - /// all its children's read-only statuses to match. For each DeletedMetadata, if your local state has something - /// at the given path, remove it and all its children. If there's nothing at the given path, ignore this entry. + /// replace it but leave the children as they are. Check the new entry's FolderSharingInfo.read_only and set all + /// its children's read-only statuses to match. For each DeletedMetadata, if your local state has something at + /// the given path, remove it and all its children. If there's nothing at the given path, ignore this entry. /// Note: auth.RateLimitError may be returned if multiple listFolder or listFolderContinue calls with same /// parameters are made simultaneously by same API app for same user. If your app implements retry logic, please /// hold off the retry until the previous request finishes. @@ -968,13 +1020,16 @@ public class DBXFilesRoutes: NSObject { /// /// - parameter path: A unique identifier for the file. /// - parameter recursive: If true, the list folder operation will be applied recursively to all subfolders and the - /// response will contain contents of all subfolders. - /// - parameter includeMediaInfo: If true, mediaInfo in FileMetadata is set for photo and video. This parameter will - /// no longer have an effect starting December 2, 2019. + /// response will contain contents of all subfolders. In some cases, setting recursive in ListFolderArg to true + /// may lead to performance issues or errors, especially when traversing folder structures with a large number + /// of items. A workaround for such cases is to set recursive in ListFolderArg to false and traverse subfolders + /// one at a time. + /// - parameter includeMediaInfo: Field is deprecated. If true, mediaInfo in FileMetadata is set for photo and + /// video. This parameter will no longer have an effect starting December 2, 2019. /// - parameter includeDeleted: If true, the results will include entries for files and folders that used to exist /// but were deleted. /// - parameter includeHasExplicitSharedMembers: If true, the results will include a flag for each file indicating - /// whether or not that file has any explicit members. + /// whether or not that file has any explicit members. /// - parameter includeMountedFolders: If true, the results will include entries under mounted folders which /// includes app folder, shared folder and team folder. /// - parameter limit: The maximum number of results to return per request. Note: This is an approximate number and @@ -985,6 +1040,8 @@ public class DBXFilesRoutes: NSObject { /// - parameter includePropertyGroups: If set to a valid list of template IDs, propertyGroups in FileMetadata is set /// if there exists property data associated with the file and each of the listed templates. /// - parameter includeNonDownloadableFiles: If true, include files that are not downloadable, i.e. Google Docs. + /// - parameter includeRestorableInfo: If true, each returned deleted entry will include whether that entry can be + /// restored. /// /// - returns: Through the response callback, the caller will receive a `Files.ListFolderGetLatestCursorResult` /// object on success or a `Files.ListFolderError` object on failure. @@ -999,7 +1056,8 @@ public class DBXFilesRoutes: NSObject { limit: NSNumber?, sharedLink: DBXFilesSharedLink?, includePropertyGroups: DBXFilePropertiesTemplateFilterBase?, - includeNonDownloadableFiles: NSNumber + includeNonDownloadableFiles: NSNumber, + includeRestorableInfo: NSNumber ) -> DBXFilesListFolderGetLatestCursorRpcRequest { let swift = swift.listFolderGetLatestCursor( path: path, @@ -1011,7 +1069,8 @@ public class DBXFilesRoutes: NSObject { limit: limit?.uint32Value, sharedLink: sharedLink?.swift, includePropertyGroups: includePropertyGroups?.swift, - includeNonDownloadableFiles: includeNonDownloadableFiles.boolValue + includeNonDownloadableFiles: includeNonDownloadableFiles.boolValue, + includeRestorableInfo: includeRestorableInfo.boolValue ) return DBXFilesListFolderGetLatestCursorRpcRequest(swift: swift) } @@ -1032,9 +1091,7 @@ public class DBXFilesRoutes: NSObject { /// A longpoll endpoint to wait for changes on an account. In conjunction with listFolderContinue, this call gives /// you a low-latency way to monitor an account for file changes. The connection will block until there are - /// changes available or a timeout occurs. This endpoint is useful mostly for client-side apps. If you're - /// looking for server-side notifications, check out our webhooks documentation - /// https://www.dropbox.com/developers/reference/webhooks. + /// changes available or a timeout occurs. This endpoint is useful mostly for client-side apps. /// /// - scope: files.metadata.read /// @@ -1054,9 +1111,7 @@ public class DBXFilesRoutes: NSObject { /// A longpoll endpoint to wait for changes on an account. In conjunction with listFolderContinue, this call gives /// you a low-latency way to monitor an account for file changes. The connection will block until there are - /// changes available or a timeout occurs. This endpoint is useful mostly for client-side apps. If you're - /// looking for server-side notifications, check out our webhooks documentation - /// https://www.dropbox.com/developers/reference/webhooks. + /// changes available or a timeout occurs. This endpoint is useful mostly for client-side apps. /// /// - scope: files.metadata.read /// @@ -1070,9 +1125,9 @@ public class DBXFilesRoutes: NSObject { /// Returns revisions for files based on a file path or a file id. The file path or file id is identified from the /// latest file entry at the given file path or id. This end point allows your app to query either by file path - /// or file id by setting the mode parameter appropriately. In the path in ListRevisionsMode (default) mode, all + /// or file id by setting the mode parameter appropriately. In the ListRevisionsMode.path (default) mode, all /// revisions at the same file path as the latest file entry are returned. If revisions with the same file id - /// are desired, then mode must be set to id in ListRevisionsMode. The id in ListRevisionsMode mode is useful to + /// are desired, then mode must be set to ListRevisionsMode.id. The ListRevisionsMode.id mode is useful to /// retrieve revisions for a given file across moves or renames. /// /// - scope: files.metadata.read @@ -1080,20 +1135,37 @@ public class DBXFilesRoutes: NSObject { /// - parameter path: The path to the file you want to see the revisions of. /// - parameter mode: Determines the behavior of the API in listing the revisions for a given file path or id. /// - parameter limit: The maximum number of revision entries returned. + /// - parameter beforeRev: If set, ListRevisions will only return revisions prior to before_rev. Can be set using + /// the last revision from a previous call to list_revisions to fetch the next page of revisions. Only supported + /// in path mode. + /// - parameter includeRestorableInfo: If true, each returned revision will include whether that revision can be + /// restored. /// /// - returns: Through the response callback, the caller will receive a `Files.ListRevisionsResult` object on /// success or a `Files.ListRevisionsError` object on failure. @objc - @discardableResult public func listRevisions(path: String, mode: DBXFilesListRevisionsMode, limit: NSNumber) -> DBXFilesListRevisionsRpcRequest { - let swift = swift.listRevisions(path: path, mode: mode.swift, limit: limit.uint64Value) + @discardableResult public func listRevisions( + path: String, + mode: DBXFilesListRevisionsMode, + limit: NSNumber, + beforeRev: String?, + includeRestorableInfo: NSNumber + ) -> DBXFilesListRevisionsRpcRequest { + let swift = swift.listRevisions( + path: path, + mode: mode.swift, + limit: limit.uint64Value, + beforeRev: beforeRev, + includeRestorableInfo: includeRestorableInfo.boolValue + ) return DBXFilesListRevisionsRpcRequest(swift: swift) } /// Returns revisions for files based on a file path or a file id. The file path or file id is identified from the /// latest file entry at the given file path or id. This end point allows your app to query either by file path - /// or file id by setting the mode parameter appropriately. In the path in ListRevisionsMode (default) mode, all + /// or file id by setting the mode parameter appropriately. In the ListRevisionsMode.path (default) mode, all /// revisions at the same file path as the latest file entry are returned. If revisions with the same file id - /// are desired, then mode must be set to id in ListRevisionsMode. The id in ListRevisionsMode mode is useful to + /// are desired, then mode must be set to ListRevisionsMode.id. The ListRevisionsMode.id mode is useful to /// retrieve revisions for a given file across moves or renames. /// /// - scope: files.metadata.read @@ -1128,7 +1200,7 @@ public class DBXFilesRoutes: NSObject { /// /// - scope: files.content.write /// - /// - parameter allowSharedFolder: This flag has no effect. + /// - parameter allowSharedFolder: Field is deprecated. This flag has no effect. /// - parameter autorename: If there's a conflict, have the Dropbox server try to autorename the file to avoid the /// conflict. /// - parameter allowOwnershipTransfer: Allow moves by owner even if it would result in an ownership transfer for @@ -1137,13 +1209,7 @@ public class DBXFilesRoutes: NSObject { /// - returns: Through the response callback, the caller will receive a `Files.RelocationResult` object on success /// or a `Files.RelocationError` object on failure. @objc - @discardableResult public func moveV2( - fromPath: String, - toPath: String, - allowSharedFolder: NSNumber, - autorename: NSNumber, - allowOwnershipTransfer: NSNumber - ) -> DBXFilesMoveRpcRequestV2 { + @discardableResult public func moveV2(fromPath: String, toPath: String, allowSharedFolder: NSNumber, autorename: NSNumber, allowOwnershipTransfer: NSNumber) -> DBXFilesMoveRpcRequestV2 { let swift = swift.moveV2( fromPath: fromPath, toPath: toPath, @@ -1181,11 +1247,7 @@ public class DBXFilesRoutes: NSObject { /// - returns: Through the response callback, the caller will receive a `Files.RelocationBatchV2Launch` object on /// success or a `Void` object on failure. @objc - @discardableResult public func moveBatchV2( - entries: [DBXFilesRelocationPath], - autorename: NSNumber, - allowOwnershipTransfer: NSNumber - ) -> DBXFilesMoveBatchRpcRequestV2 { + @discardableResult public func moveBatchV2(entries: [DBXFilesRelocationPath], autorename: NSNumber, allowOwnershipTransfer: NSNumber) -> DBXFilesMoveBatchRpcRequestV2 { let swift = swift.moveBatchV2(entries: entries.map(\.swift), autorename: autorename.boolValue, allowOwnershipTransfer: allowOwnershipTransfer.boolValue) return DBXFilesMoveBatchRpcRequestV2(swift: swift) } @@ -1267,11 +1329,7 @@ public class DBXFilesRoutes: NSObject { /// - returns: Through the response callback, the caller will receive a `Files.PaperCreateResult` object on success /// or a `Files.PaperCreateError` object on failure. @objc - @discardableResult public func paperCreateInputStream( - path: String, - importFormat: DBXFilesImportFormat, - input: InputStream - ) -> DBXFilesPaperCreateUploadRequest { + @discardableResult public func paperCreateInputStream(path: String, importFormat: DBXFilesImportFormat, input: InputStream) -> DBXFilesPaperCreateUploadRequest { let swift = swift.paperCreate(path: path, importFormat: importFormat.swift, input: input) return DBXFilesPaperCreateUploadRequest(swift: swift) } @@ -1315,12 +1373,7 @@ public class DBXFilesRoutes: NSObject { /// - returns: Through the response callback, the caller will receive a `Files.PaperUpdateResult` object on success /// or a `Files.PaperUpdateError` object on failure. @objc - @discardableResult public func paperUpdateData( - path: String, - importFormat: DBXFilesImportFormat, - docUpdatePolicy: DBXFilesPaperDocUpdatePolicy, - input: Data - ) -> DBXFilesPaperUpdateUploadRequest { + @discardableResult public func paperUpdateData(path: String, importFormat: DBXFilesImportFormat, docUpdatePolicy: DBXFilesPaperDocUpdatePolicy, input: Data) -> DBXFilesPaperUpdateUploadRequest { let swift = swift.paperUpdate(path: path, importFormat: importFormat.swift, docUpdatePolicy: docUpdatePolicy.swift, input: input) return DBXFilesPaperUpdateUploadRequest(swift: swift) } @@ -1364,12 +1417,7 @@ public class DBXFilesRoutes: NSObject { /// - returns: Through the response callback, the caller will receive a `Files.PaperUpdateResult` object on success /// or a `Files.PaperUpdateError` object on failure. @objc - @discardableResult public func paperUpdateURL( - path: String, - importFormat: DBXFilesImportFormat, - docUpdatePolicy: DBXFilesPaperDocUpdatePolicy, - input: URL - ) -> DBXFilesPaperUpdateUploadRequest { + @discardableResult public func paperUpdateURL(path: String, importFormat: DBXFilesImportFormat, docUpdatePolicy: DBXFilesPaperDocUpdatePolicy, input: URL) -> DBXFilesPaperUpdateUploadRequest { let swift = swift.paperUpdate(path: path, importFormat: importFormat.swift, docUpdatePolicy: docUpdatePolicy.swift, input: input) return DBXFilesPaperUpdateUploadRequest(swift: swift) } @@ -1473,8 +1521,7 @@ public class DBXFilesRoutes: NSObject { } /// Save the data from a specified URL into a file in user's Dropbox. Note that the transfer from the URL must - /// complete within 15 minutes, or the operation will time out and the job will fail. If the given path already - /// exists, the file will be renamed to avoid the conflict (e.g. myfile (1).txt). + /// complete within 15 minutes, or the operation will time out and the job will fail. /// /// - scope: files.content.write /// @@ -1513,7 +1560,7 @@ public class DBXFilesRoutes: NSObject { /// - parameter query: The string to search for. May match across multiple fields based on the request arguments. /// - parameter options: Options for more targeted search results. /// - parameter matchFieldOptions: Options for search results match fields. - /// - parameter includeHighlights: Deprecated and moved this option to SearchMatchFieldOptions. + /// - parameter includeHighlights: Field is deprecated. Deprecated and moved this option to SearchMatchFieldOptions. /// /// - returns: Through the response callback, the caller will receive a `Files.SearchV2Result` object on success or /// a `Files.SearchError` object on failure. @@ -1627,7 +1674,7 @@ public class DBXFilesRoutes: NSObject { } /// Create a new file with the contents provided in the request. Do not use this to upload a file larger than 150 - /// MB. Instead, create an upload session with uploadSessionStart. Calls to this endpoint will count as data + /// MiB. Instead, create an upload session with uploadSessionStart. Calls to this endpoint will count as data /// transport calls for any Dropbox Business teams with a limit on the number of data transport calls allowed /// per month. For more information, see the Data transport limit page /// https://www.dropbox.com/developers/reference/data-transport-limit. @@ -1668,7 +1715,7 @@ public class DBXFilesRoutes: NSObject { } /// Create a new file with the contents provided in the request. Do not use this to upload a file larger than 150 - /// MB. Instead, create an upload session with uploadSessionStart. Calls to this endpoint will count as data + /// MiB. Instead, create an upload session with uploadSessionStart. Calls to this endpoint will count as data /// transport calls for any Dropbox Business teams with a limit on the number of data transport calls allowed /// per month. For more information, see the Data transport limit page /// https://www.dropbox.com/developers/reference/data-transport-limit. @@ -1684,7 +1731,7 @@ public class DBXFilesRoutes: NSObject { } /// Create a new file with the contents provided in the request. Do not use this to upload a file larger than 150 - /// MB. Instead, create an upload session with uploadSessionStart. Calls to this endpoint will count as data + /// MiB. Instead, create an upload session with uploadSessionStart. Calls to this endpoint will count as data /// transport calls for any Dropbox Business teams with a limit on the number of data transport calls allowed /// per month. For more information, see the Data transport limit page /// https://www.dropbox.com/developers/reference/data-transport-limit. @@ -1725,7 +1772,7 @@ public class DBXFilesRoutes: NSObject { } /// Create a new file with the contents provided in the request. Do not use this to upload a file larger than 150 - /// MB. Instead, create an upload session with uploadSessionStart. Calls to this endpoint will count as data + /// MiB. Instead, create an upload session with uploadSessionStart. Calls to this endpoint will count as data /// transport calls for any Dropbox Business teams with a limit on the number of data transport calls allowed /// per month. For more information, see the Data transport limit page /// https://www.dropbox.com/developers/reference/data-transport-limit. @@ -1741,7 +1788,7 @@ public class DBXFilesRoutes: NSObject { } /// Create a new file with the contents provided in the request. Do not use this to upload a file larger than 150 - /// MB. Instead, create an upload session with uploadSessionStart. Calls to this endpoint will count as data + /// MiB. Instead, create an upload session with uploadSessionStart. Calls to this endpoint will count as data /// transport calls for any Dropbox Business teams with a limit on the number of data transport calls allowed /// per month. For more information, see the Data transport limit page /// https://www.dropbox.com/developers/reference/data-transport-limit. @@ -1782,7 +1829,7 @@ public class DBXFilesRoutes: NSObject { } /// Create a new file with the contents provided in the request. Do not use this to upload a file larger than 150 - /// MB. Instead, create an upload session with uploadSessionStart. Calls to this endpoint will count as data + /// MiB. Instead, create an upload session with uploadSessionStart. Calls to this endpoint will count as data /// transport calls for any Dropbox Business teams with a limit on the number of data transport calls allowed /// per month. For more information, see the Data transport limit page /// https://www.dropbox.com/developers/reference/data-transport-limit. @@ -1798,10 +1845,11 @@ public class DBXFilesRoutes: NSObject { } /// Append more data to an upload session. When the parameter close is set, this call will close the session. A - /// single request should not upload more than 150 MB. The maximum size of a file one can upload to an upload - /// session is 350 GB. Calls to this endpoint will count as data transport calls for any Dropbox Business teams - /// with a limit on the number of data transport calls allowed per month. For more information, see the Data - /// transport limit page https://www.dropbox.com/developers/reference/data-transport-limit. + /// single request should not upload more than 150 MiB. The maximum size of a file one can upload to an upload + /// session is 2^41 - 2^22 (2,199,019,061,248) bytes. Calls to this endpoint will count as data transport calls + /// for any Dropbox Business teams with a limit on the number of data transport calls allowed per month. For + /// more information, see the Data transport limit page + /// https://www.dropbox.com/developers/reference/data-transport-limit. /// /// - scope: files.content.write /// @@ -1816,21 +1864,17 @@ public class DBXFilesRoutes: NSObject { /// - returns: Through the response callback, the caller will receive a `Void` object on success or a /// `Files.UploadSessionAppendError` object on failure. @objc - @discardableResult public func uploadSessionAppendV2Data( - cursor: DBXFilesUploadSessionCursor, - close: NSNumber, - contentHash: String?, - input: Data - ) -> DBXFilesUploadSessionAppendUploadRequestV2 { + @discardableResult public func uploadSessionAppendV2Data(cursor: DBXFilesUploadSessionCursor, close: NSNumber, contentHash: String?, input: Data) -> DBXFilesUploadSessionAppendUploadRequestV2 { let swift = swift.uploadSessionAppendV2(cursor: cursor.swift, close: close.boolValue, contentHash: contentHash, input: input) return DBXFilesUploadSessionAppendUploadRequestV2(swift: swift) } /// Append more data to an upload session. When the parameter close is set, this call will close the session. A - /// single request should not upload more than 150 MB. The maximum size of a file one can upload to an upload - /// session is 350 GB. Calls to this endpoint will count as data transport calls for any Dropbox Business teams - /// with a limit on the number of data transport calls allowed per month. For more information, see the Data - /// transport limit page https://www.dropbox.com/developers/reference/data-transport-limit. + /// single request should not upload more than 150 MiB. The maximum size of a file one can upload to an upload + /// session is 2^41 - 2^22 (2,199,019,061,248) bytes. Calls to this endpoint will count as data transport calls + /// for any Dropbox Business teams with a limit on the number of data transport calls allowed per month. For + /// more information, see the Data transport limit page + /// https://www.dropbox.com/developers/reference/data-transport-limit. /// /// - scope: files.content.write /// @@ -1843,10 +1887,11 @@ public class DBXFilesRoutes: NSObject { } /// Append more data to an upload session. When the parameter close is set, this call will close the session. A - /// single request should not upload more than 150 MB. The maximum size of a file one can upload to an upload - /// session is 350 GB. Calls to this endpoint will count as data transport calls for any Dropbox Business teams - /// with a limit on the number of data transport calls allowed per month. For more information, see the Data - /// transport limit page https://www.dropbox.com/developers/reference/data-transport-limit. + /// single request should not upload more than 150 MiB. The maximum size of a file one can upload to an upload + /// session is 2^41 - 2^22 (2,199,019,061,248) bytes. Calls to this endpoint will count as data transport calls + /// for any Dropbox Business teams with a limit on the number of data transport calls allowed per month. For + /// more information, see the Data transport limit page + /// https://www.dropbox.com/developers/reference/data-transport-limit. /// /// - scope: files.content.write /// @@ -1861,21 +1906,17 @@ public class DBXFilesRoutes: NSObject { /// - returns: Through the response callback, the caller will receive a `Void` object on success or a /// `Files.UploadSessionAppendError` object on failure. @objc - @discardableResult public func uploadSessionAppendV2URL( - cursor: DBXFilesUploadSessionCursor, - close: NSNumber, - contentHash: String?, - input: URL - ) -> DBXFilesUploadSessionAppendUploadRequestV2 { + @discardableResult public func uploadSessionAppendV2URL(cursor: DBXFilesUploadSessionCursor, close: NSNumber, contentHash: String?, input: URL) -> DBXFilesUploadSessionAppendUploadRequestV2 { let swift = swift.uploadSessionAppendV2(cursor: cursor.swift, close: close.boolValue, contentHash: contentHash, input: input) return DBXFilesUploadSessionAppendUploadRequestV2(swift: swift) } /// Append more data to an upload session. When the parameter close is set, this call will close the session. A - /// single request should not upload more than 150 MB. The maximum size of a file one can upload to an upload - /// session is 350 GB. Calls to this endpoint will count as data transport calls for any Dropbox Business teams - /// with a limit on the number of data transport calls allowed per month. For more information, see the Data - /// transport limit page https://www.dropbox.com/developers/reference/data-transport-limit. + /// single request should not upload more than 150 MiB. The maximum size of a file one can upload to an upload + /// session is 2^41 - 2^22 (2,199,019,061,248) bytes. Calls to this endpoint will count as data transport calls + /// for any Dropbox Business teams with a limit on the number of data transport calls allowed per month. For + /// more information, see the Data transport limit page + /// https://www.dropbox.com/developers/reference/data-transport-limit. /// /// - scope: files.content.write /// @@ -1888,10 +1929,11 @@ public class DBXFilesRoutes: NSObject { } /// Append more data to an upload session. When the parameter close is set, this call will close the session. A - /// single request should not upload more than 150 MB. The maximum size of a file one can upload to an upload - /// session is 350 GB. Calls to this endpoint will count as data transport calls for any Dropbox Business teams - /// with a limit on the number of data transport calls allowed per month. For more information, see the Data - /// transport limit page https://www.dropbox.com/developers/reference/data-transport-limit. + /// single request should not upload more than 150 MiB. The maximum size of a file one can upload to an upload + /// session is 2^41 - 2^22 (2,199,019,061,248) bytes. Calls to this endpoint will count as data transport calls + /// for any Dropbox Business teams with a limit on the number of data transport calls allowed per month. For + /// more information, see the Data transport limit page + /// https://www.dropbox.com/developers/reference/data-transport-limit. /// /// - scope: files.content.write /// @@ -1917,29 +1959,160 @@ public class DBXFilesRoutes: NSObject { } /// Append more data to an upload session. When the parameter close is set, this call will close the session. A - /// single request should not upload more than 150 MB. The maximum size of a file one can upload to an upload - /// session is 350 GB. Calls to this endpoint will count as data transport calls for any Dropbox Business teams - /// with a limit on the number of data transport calls allowed per month. For more information, see the Data - /// transport limit page https://www.dropbox.com/developers/reference/data-transport-limit. + /// single request should not upload more than 150 MiB. The maximum size of a file one can upload to an upload + /// session is 2^41 - 2^22 (2,199,019,061,248) bytes. Calls to this endpoint will count as data transport calls + /// for any Dropbox Business teams with a limit on the number of data transport calls allowed per month. For + /// more information, see the Data transport limit page + /// https://www.dropbox.com/developers/reference/data-transport-limit. /// /// - scope: files.content.write /// /// - returns: Through the response callback, the caller will receive a `Void` object on success or a /// `Files.UploadSessionAppendError` object on failure. @objc - @discardableResult public func uploadSessionAppendV2InputStream( - cursor: DBXFilesUploadSessionCursor, - input: InputStream - ) -> DBXFilesUploadSessionAppendUploadRequestV2 { + @discardableResult public func uploadSessionAppendV2InputStream(cursor: DBXFilesUploadSessionCursor, input: InputStream) -> DBXFilesUploadSessionAppendUploadRequestV2 { let swift = swift.uploadSessionAppendV2(cursor: cursor.swift, input: input) return DBXFilesUploadSessionAppendUploadRequestV2(swift: swift) } + /// Append more data to multiple upload sessions. Each piece of file content to append to each upload session should + /// be concatenated in the request body, in the order delineated by entries in UploadSessionAppendBatchArg and + /// their individual lengths indicated by length in UploadSessionAppendBatchArgEntry. A single request should + /// not upload more than 150 MiB. The maximum size of a file one can upload to an upload session is 2^41 - 2^22 + /// (2,199,019,061,248) bytes. Calls to this endpoint will count as data transport calls for any Dropbox + /// Business teams with a limit on the number of data transport calls allowed per month. For more information, + /// see the Data transport limit page https://www.dropbox.com/developers/reference/data-transport-limit. + /// + /// - scope: files.content.write + /// + /// - parameter entries: Append information for each file in the batch. + /// - parameter contentHash: A hash of the entire request body which is all the concatenated pieces of file content + /// that were uploaded in this call. If provided and the uploaded content does not match this hash, an error + /// will be returned. For more information see our Content hash + /// https://www.dropbox.com/developers/reference/content-hash page. + /// - parameter input: The file to upload, as an Data object. + /// + /// - returns: Through the response callback, the caller will receive a `Files.UploadSessionAppendBatchResult` + /// object on success or a `Files.UploadSessionAppendBatchError` object on failure. + @objc + @discardableResult public func uploadSessionAppendBatchData(entries: [DBXFilesUploadSessionAppendBatchArgEntry], contentHash: String?, input: Data) -> DBXFilesUploadSessionAppendBatchUploadRequest { + let swift = swift.uploadSessionAppendBatch(entries: entries.map(\.swift), contentHash: contentHash, input: input) + return DBXFilesUploadSessionAppendBatchUploadRequest(swift: swift) + } + + /// Append more data to multiple upload sessions. Each piece of file content to append to each upload session should + /// be concatenated in the request body, in the order delineated by entries in UploadSessionAppendBatchArg and + /// their individual lengths indicated by length in UploadSessionAppendBatchArgEntry. A single request should + /// not upload more than 150 MiB. The maximum size of a file one can upload to an upload session is 2^41 - 2^22 + /// (2,199,019,061,248) bytes. Calls to this endpoint will count as data transport calls for any Dropbox + /// Business teams with a limit on the number of data transport calls allowed per month. For more information, + /// see the Data transport limit page https://www.dropbox.com/developers/reference/data-transport-limit. + /// + /// - scope: files.content.write + /// + /// - returns: Through the response callback, the caller will receive a `Files.UploadSessionAppendBatchResult` + /// object on success or a `Files.UploadSessionAppendBatchError` object on failure. + @objc + @discardableResult public func uploadSessionAppendBatchData(entries: [DBXFilesUploadSessionAppendBatchArgEntry], input: Data) -> DBXFilesUploadSessionAppendBatchUploadRequest { + let swift = swift.uploadSessionAppendBatch(entries: entries.map(\.swift), input: input) + return DBXFilesUploadSessionAppendBatchUploadRequest(swift: swift) + } + + /// Append more data to multiple upload sessions. Each piece of file content to append to each upload session should + /// be concatenated in the request body, in the order delineated by entries in UploadSessionAppendBatchArg and + /// their individual lengths indicated by length in UploadSessionAppendBatchArgEntry. A single request should + /// not upload more than 150 MiB. The maximum size of a file one can upload to an upload session is 2^41 - 2^22 + /// (2,199,019,061,248) bytes. Calls to this endpoint will count as data transport calls for any Dropbox + /// Business teams with a limit on the number of data transport calls allowed per month. For more information, + /// see the Data transport limit page https://www.dropbox.com/developers/reference/data-transport-limit. + /// + /// - scope: files.content.write + /// + /// - parameter entries: Append information for each file in the batch. + /// - parameter contentHash: A hash of the entire request body which is all the concatenated pieces of file content + /// that were uploaded in this call. If provided and the uploaded content does not match this hash, an error + /// will be returned. For more information see our Content hash + /// https://www.dropbox.com/developers/reference/content-hash page. + /// - parameter input: The file to upload, as an URL object. + /// + /// - returns: Through the response callback, the caller will receive a `Files.UploadSessionAppendBatchResult` + /// object on success or a `Files.UploadSessionAppendBatchError` object on failure. + @objc + @discardableResult public func uploadSessionAppendBatchURL(entries: [DBXFilesUploadSessionAppendBatchArgEntry], contentHash: String?, input: URL) -> DBXFilesUploadSessionAppendBatchUploadRequest { + let swift = swift.uploadSessionAppendBatch(entries: entries.map(\.swift), contentHash: contentHash, input: input) + return DBXFilesUploadSessionAppendBatchUploadRequest(swift: swift) + } + + /// Append more data to multiple upload sessions. Each piece of file content to append to each upload session should + /// be concatenated in the request body, in the order delineated by entries in UploadSessionAppendBatchArg and + /// their individual lengths indicated by length in UploadSessionAppendBatchArgEntry. A single request should + /// not upload more than 150 MiB. The maximum size of a file one can upload to an upload session is 2^41 - 2^22 + /// (2,199,019,061,248) bytes. Calls to this endpoint will count as data transport calls for any Dropbox + /// Business teams with a limit on the number of data transport calls allowed per month. For more information, + /// see the Data transport limit page https://www.dropbox.com/developers/reference/data-transport-limit. + /// + /// - scope: files.content.write + /// + /// - returns: Through the response callback, the caller will receive a `Files.UploadSessionAppendBatchResult` + /// object on success or a `Files.UploadSessionAppendBatchError` object on failure. + @objc + @discardableResult public func uploadSessionAppendBatchURL(entries: [DBXFilesUploadSessionAppendBatchArgEntry], input: URL) -> DBXFilesUploadSessionAppendBatchUploadRequest { + let swift = swift.uploadSessionAppendBatch(entries: entries.map(\.swift), input: input) + return DBXFilesUploadSessionAppendBatchUploadRequest(swift: swift) + } + + /// Append more data to multiple upload sessions. Each piece of file content to append to each upload session should + /// be concatenated in the request body, in the order delineated by entries in UploadSessionAppendBatchArg and + /// their individual lengths indicated by length in UploadSessionAppendBatchArgEntry. A single request should + /// not upload more than 150 MiB. The maximum size of a file one can upload to an upload session is 2^41 - 2^22 + /// (2,199,019,061,248) bytes. Calls to this endpoint will count as data transport calls for any Dropbox + /// Business teams with a limit on the number of data transport calls allowed per month. For more information, + /// see the Data transport limit page https://www.dropbox.com/developers/reference/data-transport-limit. + /// + /// - scope: files.content.write + /// + /// - parameter entries: Append information for each file in the batch. + /// - parameter contentHash: A hash of the entire request body which is all the concatenated pieces of file content + /// that were uploaded in this call. If provided and the uploaded content does not match this hash, an error + /// will be returned. For more information see our Content hash + /// https://www.dropbox.com/developers/reference/content-hash page. + /// - parameter input: The file to upload, as an InputStream object. + /// + /// - returns: Through the response callback, the caller will receive a `Files.UploadSessionAppendBatchResult` + /// object on success or a `Files.UploadSessionAppendBatchError` object on failure. + @objc + @discardableResult public func uploadSessionAppendBatchInputStream( + entries: [DBXFilesUploadSessionAppendBatchArgEntry], + contentHash: String?, + input: InputStream + ) -> DBXFilesUploadSessionAppendBatchUploadRequest { + let swift = swift.uploadSessionAppendBatch(entries: entries.map(\.swift), contentHash: contentHash, input: input) + return DBXFilesUploadSessionAppendBatchUploadRequest(swift: swift) + } + + /// Append more data to multiple upload sessions. Each piece of file content to append to each upload session should + /// be concatenated in the request body, in the order delineated by entries in UploadSessionAppendBatchArg and + /// their individual lengths indicated by length in UploadSessionAppendBatchArgEntry. A single request should + /// not upload more than 150 MiB. The maximum size of a file one can upload to an upload session is 2^41 - 2^22 + /// (2,199,019,061,248) bytes. Calls to this endpoint will count as data transport calls for any Dropbox + /// Business teams with a limit on the number of data transport calls allowed per month. For more information, + /// see the Data transport limit page https://www.dropbox.com/developers/reference/data-transport-limit. + /// + /// - scope: files.content.write + /// + /// - returns: Through the response callback, the caller will receive a `Files.UploadSessionAppendBatchResult` + /// object on success or a `Files.UploadSessionAppendBatchError` object on failure. + @objc + @discardableResult public func uploadSessionAppendBatchInputStream(entries: [DBXFilesUploadSessionAppendBatchArgEntry], input: InputStream) -> DBXFilesUploadSessionAppendBatchUploadRequest { + let swift = swift.uploadSessionAppendBatch(entries: entries.map(\.swift), input: input) + return DBXFilesUploadSessionAppendBatchUploadRequest(swift: swift) + } + /// Finish an upload session and save the uploaded data to the given file path. A single request should not upload - /// more than 150 MB. The maximum size of a file one can upload to an upload session is 350 GB. Calls to this - /// endpoint will count as data transport calls for any Dropbox Business teams with a limit on the number of - /// data transport calls allowed per month. For more information, see the Data transport limit page - /// https://www.dropbox.com/developers/reference/data-transport-limit. + /// more than 150 MiB. The maximum size of a file one can upload to an upload session is 2^41 - 2^22 + /// (2,199,019,061,248) bytes. Calls to this endpoint will count as data transport calls for any Dropbox + /// Business teams with a limit on the number of data transport calls allowed per month. For more information, + /// see the Data transport limit page https://www.dropbox.com/developers/reference/data-transport-limit. /// /// - scope: files.content.write /// @@ -1953,41 +2126,32 @@ public class DBXFilesRoutes: NSObject { /// - returns: Through the response callback, the caller will receive a `Files.FileMetadata` object on success or a /// `Files.UploadSessionFinishError` object on failure. @objc - @discardableResult public func uploadSessionFinishData( - cursor: DBXFilesUploadSessionCursor, - commit: DBXFilesCommitInfo, - contentHash: String?, - input: Data - ) -> DBXFilesUploadSessionFinishUploadRequest { + @discardableResult public func uploadSessionFinishData(cursor: DBXFilesUploadSessionCursor, commit: DBXFilesCommitInfo, contentHash: String?, input: Data) -> DBXFilesUploadSessionFinishUploadRequest { let swift = swift.uploadSessionFinish(cursor: cursor.swift, commit: commit.swift, contentHash: contentHash, input: input) return DBXFilesUploadSessionFinishUploadRequest(swift: swift) } /// Finish an upload session and save the uploaded data to the given file path. A single request should not upload - /// more than 150 MB. The maximum size of a file one can upload to an upload session is 350 GB. Calls to this - /// endpoint will count as data transport calls for any Dropbox Business teams with a limit on the number of - /// data transport calls allowed per month. For more information, see the Data transport limit page - /// https://www.dropbox.com/developers/reference/data-transport-limit. + /// more than 150 MiB. The maximum size of a file one can upload to an upload session is 2^41 - 2^22 + /// (2,199,019,061,248) bytes. Calls to this endpoint will count as data transport calls for any Dropbox + /// Business teams with a limit on the number of data transport calls allowed per month. For more information, + /// see the Data transport limit page https://www.dropbox.com/developers/reference/data-transport-limit. /// /// - scope: files.content.write /// /// - returns: Through the response callback, the caller will receive a `Files.FileMetadata` object on success or a /// `Files.UploadSessionFinishError` object on failure. @objc - @discardableResult public func uploadSessionFinishData( - cursor: DBXFilesUploadSessionCursor, - commit: DBXFilesCommitInfo, - input: Data - ) -> DBXFilesUploadSessionFinishUploadRequest { + @discardableResult public func uploadSessionFinishData(cursor: DBXFilesUploadSessionCursor, commit: DBXFilesCommitInfo, input: Data) -> DBXFilesUploadSessionFinishUploadRequest { let swift = swift.uploadSessionFinish(cursor: cursor.swift, commit: commit.swift, input: input) return DBXFilesUploadSessionFinishUploadRequest(swift: swift) } /// Finish an upload session and save the uploaded data to the given file path. A single request should not upload - /// more than 150 MB. The maximum size of a file one can upload to an upload session is 350 GB. Calls to this - /// endpoint will count as data transport calls for any Dropbox Business teams with a limit on the number of - /// data transport calls allowed per month. For more information, see the Data transport limit page - /// https://www.dropbox.com/developers/reference/data-transport-limit. + /// more than 150 MiB. The maximum size of a file one can upload to an upload session is 2^41 - 2^22 + /// (2,199,019,061,248) bytes. Calls to this endpoint will count as data transport calls for any Dropbox + /// Business teams with a limit on the number of data transport calls allowed per month. For more information, + /// see the Data transport limit page https://www.dropbox.com/developers/reference/data-transport-limit. /// /// - scope: files.content.write /// @@ -2001,41 +2165,32 @@ public class DBXFilesRoutes: NSObject { /// - returns: Through the response callback, the caller will receive a `Files.FileMetadata` object on success or a /// `Files.UploadSessionFinishError` object on failure. @objc - @discardableResult public func uploadSessionFinishURL( - cursor: DBXFilesUploadSessionCursor, - commit: DBXFilesCommitInfo, - contentHash: String?, - input: URL - ) -> DBXFilesUploadSessionFinishUploadRequest { + @discardableResult public func uploadSessionFinishURL(cursor: DBXFilesUploadSessionCursor, commit: DBXFilesCommitInfo, contentHash: String?, input: URL) -> DBXFilesUploadSessionFinishUploadRequest { let swift = swift.uploadSessionFinish(cursor: cursor.swift, commit: commit.swift, contentHash: contentHash, input: input) return DBXFilesUploadSessionFinishUploadRequest(swift: swift) } /// Finish an upload session and save the uploaded data to the given file path. A single request should not upload - /// more than 150 MB. The maximum size of a file one can upload to an upload session is 350 GB. Calls to this - /// endpoint will count as data transport calls for any Dropbox Business teams with a limit on the number of - /// data transport calls allowed per month. For more information, see the Data transport limit page - /// https://www.dropbox.com/developers/reference/data-transport-limit. + /// more than 150 MiB. The maximum size of a file one can upload to an upload session is 2^41 - 2^22 + /// (2,199,019,061,248) bytes. Calls to this endpoint will count as data transport calls for any Dropbox + /// Business teams with a limit on the number of data transport calls allowed per month. For more information, + /// see the Data transport limit page https://www.dropbox.com/developers/reference/data-transport-limit. /// /// - scope: files.content.write /// /// - returns: Through the response callback, the caller will receive a `Files.FileMetadata` object on success or a /// `Files.UploadSessionFinishError` object on failure. @objc - @discardableResult public func uploadSessionFinishURL( - cursor: DBXFilesUploadSessionCursor, - commit: DBXFilesCommitInfo, - input: URL - ) -> DBXFilesUploadSessionFinishUploadRequest { + @discardableResult public func uploadSessionFinishURL(cursor: DBXFilesUploadSessionCursor, commit: DBXFilesCommitInfo, input: URL) -> DBXFilesUploadSessionFinishUploadRequest { let swift = swift.uploadSessionFinish(cursor: cursor.swift, commit: commit.swift, input: input) return DBXFilesUploadSessionFinishUploadRequest(swift: swift) } /// Finish an upload session and save the uploaded data to the given file path. A single request should not upload - /// more than 150 MB. The maximum size of a file one can upload to an upload session is 350 GB. Calls to this - /// endpoint will count as data transport calls for any Dropbox Business teams with a limit on the number of - /// data transport calls allowed per month. For more information, see the Data transport limit page - /// https://www.dropbox.com/developers/reference/data-transport-limit. + /// more than 150 MiB. The maximum size of a file one can upload to an upload session is 2^41 - 2^22 + /// (2,199,019,061,248) bytes. Calls to this endpoint will count as data transport calls for any Dropbox + /// Business teams with a limit on the number of data transport calls allowed per month. For more information, + /// see the Data transport limit page https://www.dropbox.com/developers/reference/data-transport-limit. /// /// - scope: files.content.write /// @@ -2060,21 +2215,17 @@ public class DBXFilesRoutes: NSObject { } /// Finish an upload session and save the uploaded data to the given file path. A single request should not upload - /// more than 150 MB. The maximum size of a file one can upload to an upload session is 350 GB. Calls to this - /// endpoint will count as data transport calls for any Dropbox Business teams with a limit on the number of - /// data transport calls allowed per month. For more information, see the Data transport limit page - /// https://www.dropbox.com/developers/reference/data-transport-limit. + /// more than 150 MiB. The maximum size of a file one can upload to an upload session is 2^41 - 2^22 + /// (2,199,019,061,248) bytes. Calls to this endpoint will count as data transport calls for any Dropbox + /// Business teams with a limit on the number of data transport calls allowed per month. For more information, + /// see the Data transport limit page https://www.dropbox.com/developers/reference/data-transport-limit. /// /// - scope: files.content.write /// /// - returns: Through the response callback, the caller will receive a `Files.FileMetadata` object on success or a /// `Files.UploadSessionFinishError` object on failure. @objc - @discardableResult public func uploadSessionFinishInputStream( - cursor: DBXFilesUploadSessionCursor, - commit: DBXFilesCommitInfo, - input: InputStream - ) -> DBXFilesUploadSessionFinishUploadRequest { + @discardableResult public func uploadSessionFinishInputStream(cursor: DBXFilesUploadSessionCursor, commit: DBXFilesCommitInfo, input: InputStream) -> DBXFilesUploadSessionFinishUploadRequest { let swift = swift.uploadSessionFinish(cursor: cursor.swift, commit: commit.swift, input: input) return DBXFilesUploadSessionFinishUploadRequest(swift: swift) } @@ -2084,10 +2235,10 @@ public class DBXFilesRoutes: NSObject { /// throughput. Once the file contents have been uploaded, rather than calling uploadSessionFinish, use this /// route to finish all your upload sessions in a single request. close in UploadSessionStartArg or close in /// UploadSessionAppendArg needs to be true for the last uploadSessionStart or uploadSessionAppendV2 call of - /// each upload session. The maximum size of a file one can upload to an upload session is 350 GB. We allow up - /// to 1000 entries in a single request. Calls to this endpoint will count as data transport calls for any - /// Dropbox Business teams with a limit on the number of data transport calls allowed per month. For more - /// information, see the Data transport limit page + /// each upload session. The maximum size of a file one can upload to an upload session is 2^41 - 2^22 + /// (2,199,019,061,248) bytes. We allow up to 1000 entries in a single request. Calls to this endpoint will + /// count as data transport calls for any Dropbox Business teams with a limit on the number of data transport + /// calls allowed per month. For more information, see the Data transport limit page /// https://www.dropbox.com/developers/reference/data-transport-limit. /// /// - scope: files.content.write @@ -2119,24 +2270,26 @@ public class DBXFilesRoutes: NSObject { } /// Upload sessions allow you to upload a single file in one or more requests, for example where the size of the - /// file is greater than 150 MB. This call starts a new upload session with the given data. You can then use - /// uploadSessionAppendV2 to add more data and uploadSessionFinish to save all the data to a file in Dropbox. A - /// single request should not upload more than 150 MB. The maximum size of a file one can upload to an upload - /// session is 350 GB. An upload session can be used for a maximum of 7 days. Attempting to use an sessionId in - /// UploadSessionStartResult with uploadSessionAppendV2 or uploadSessionFinish more than 7 days after its - /// creation will return a notFound in UploadSessionLookupError. Calls to this endpoint will count as data - /// transport calls for any Dropbox Business teams with a limit on the number of data transport calls allowed - /// per month. For more information, see the Data transport limit page + /// file is greater than 150 MiB. This call starts a new upload session with the given data. You can then use + /// uploadSessionAppendV2 or uploadSessionAppendBatch to add more data, then uploadSessionFinish or + /// uploadSessionFinishBatchV2 to save all the data to a file in Dropbox. A single request should not upload + /// more than 150 MiB. The maximum size of a file one can upload to an upload session is 2^41 - 2^22 + /// (2,199,019,061,248) bytes. An upload session can be used for a maximum of 7 days. Attempting to use a + /// sessionId in UploadSessionStartResult with uploadSessionAppendV2 or other upload session routes more than 7 + /// days after its creation will return notFound in UploadSessionLookupError. Calls to this endpoint will count + /// as data transport calls for any Dropbox Business teams with a limit on the number of data transport calls + /// allowed per month. For more information, see the Data transport limit page /// https://www.dropbox.com/developers/reference/data-transport-limit. By default, upload sessions require you /// to send content of the file in sequential order via consecutive uploadSessionStart, uploadSessionAppendV2, - /// uploadSessionFinish calls. For better performance, you can instead optionally use a concurrent in - /// UploadSessionType upload session. To start a new concurrent session, set sessionType in - /// UploadSessionStartArg to concurrent in UploadSessionType. After that, you can send file data in concurrent - /// uploadSessionAppendV2 requests. Finally finish the session with uploadSessionFinish. There are couple of - /// constraints with concurrent sessions to make them work. You can not send data with uploadSessionStart or - /// uploadSessionFinish call, only with uploadSessionAppendV2 call. Also data uploaded in uploadSessionAppendV2 - /// call must be multiple of 4194304 bytes (except for last uploadSessionAppendV2 with close in - /// UploadSessionStartArg to true, that may contain any remaining data). + /// and uploadSessionFinish calls (or their batch variants). For better performance, you can optionally set + /// sessionType in UploadSessionStartArg to concurrent in UploadSessionType to start a concurrent upload + /// session. Concurrent upload sessions may upload file data in concurrent uploadSessionAppendV2 requests, with + /// a few caveats. After all of the requests are complete, finish the session with uploadSessionFinish as + /// normal. You can not send data in a uploadSessionStart or uploadSessionFinish call, only with + /// uploadSessionAppendV2 or uploadSessionAppendBatch. Also, the length of the uploaded data in a call to + /// uploadSessionAppendV2 or uploadSessionAppendBatch must be a multiple of 2^22 (4,194,304) bytes, except for + /// the final append request with close in UploadSessionAppendArg or close in UploadSessionAppendBatchArgEntry + /// set to true that may contain any remaining data. /// /// - scope: files.content.write /// @@ -2152,35 +2305,32 @@ public class DBXFilesRoutes: NSObject { /// - returns: Through the response callback, the caller will receive a `Files.UploadSessionStartResult` object on /// success or a `Files.UploadSessionStartError` object on failure. @objc - @discardableResult public func uploadSessionStartData( - close: NSNumber, - sessionType: DBXFilesUploadSessionType?, - contentHash: String?, - input: Data - ) -> DBXFilesUploadSessionStartUploadRequest { + @discardableResult public func uploadSessionStartData(close: NSNumber, sessionType: DBXFilesUploadSessionType?, contentHash: String?, input: Data) -> DBXFilesUploadSessionStartUploadRequest { let swift = swift.uploadSessionStart(close: close.boolValue, sessionType: sessionType?.swift, contentHash: contentHash, input: input) return DBXFilesUploadSessionStartUploadRequest(swift: swift) } /// Upload sessions allow you to upload a single file in one or more requests, for example where the size of the - /// file is greater than 150 MB. This call starts a new upload session with the given data. You can then use - /// uploadSessionAppendV2 to add more data and uploadSessionFinish to save all the data to a file in Dropbox. A - /// single request should not upload more than 150 MB. The maximum size of a file one can upload to an upload - /// session is 350 GB. An upload session can be used for a maximum of 7 days. Attempting to use an sessionId in - /// UploadSessionStartResult with uploadSessionAppendV2 or uploadSessionFinish more than 7 days after its - /// creation will return a notFound in UploadSessionLookupError. Calls to this endpoint will count as data - /// transport calls for any Dropbox Business teams with a limit on the number of data transport calls allowed - /// per month. For more information, see the Data transport limit page + /// file is greater than 150 MiB. This call starts a new upload session with the given data. You can then use + /// uploadSessionAppendV2 or uploadSessionAppendBatch to add more data, then uploadSessionFinish or + /// uploadSessionFinishBatchV2 to save all the data to a file in Dropbox. A single request should not upload + /// more than 150 MiB. The maximum size of a file one can upload to an upload session is 2^41 - 2^22 + /// (2,199,019,061,248) bytes. An upload session can be used for a maximum of 7 days. Attempting to use a + /// sessionId in UploadSessionStartResult with uploadSessionAppendV2 or other upload session routes more than 7 + /// days after its creation will return notFound in UploadSessionLookupError. Calls to this endpoint will count + /// as data transport calls for any Dropbox Business teams with a limit on the number of data transport calls + /// allowed per month. For more information, see the Data transport limit page /// https://www.dropbox.com/developers/reference/data-transport-limit. By default, upload sessions require you /// to send content of the file in sequential order via consecutive uploadSessionStart, uploadSessionAppendV2, - /// uploadSessionFinish calls. For better performance, you can instead optionally use a concurrent in - /// UploadSessionType upload session. To start a new concurrent session, set sessionType in - /// UploadSessionStartArg to concurrent in UploadSessionType. After that, you can send file data in concurrent - /// uploadSessionAppendV2 requests. Finally finish the session with uploadSessionFinish. There are couple of - /// constraints with concurrent sessions to make them work. You can not send data with uploadSessionStart or - /// uploadSessionFinish call, only with uploadSessionAppendV2 call. Also data uploaded in uploadSessionAppendV2 - /// call must be multiple of 4194304 bytes (except for last uploadSessionAppendV2 with close in - /// UploadSessionStartArg to true, that may contain any remaining data). + /// and uploadSessionFinish calls (or their batch variants). For better performance, you can optionally set + /// sessionType in UploadSessionStartArg to concurrent in UploadSessionType to start a concurrent upload + /// session. Concurrent upload sessions may upload file data in concurrent uploadSessionAppendV2 requests, with + /// a few caveats. After all of the requests are complete, finish the session with uploadSessionFinish as + /// normal. You can not send data in a uploadSessionStart or uploadSessionFinish call, only with + /// uploadSessionAppendV2 or uploadSessionAppendBatch. Also, the length of the uploaded data in a call to + /// uploadSessionAppendV2 or uploadSessionAppendBatch must be a multiple of 2^22 (4,194,304) bytes, except for + /// the final append request with close in UploadSessionAppendArg or close in UploadSessionAppendBatchArgEntry + /// set to true that may contain any remaining data. /// /// - scope: files.content.write /// @@ -2193,24 +2343,26 @@ public class DBXFilesRoutes: NSObject { } /// Upload sessions allow you to upload a single file in one or more requests, for example where the size of the - /// file is greater than 150 MB. This call starts a new upload session with the given data. You can then use - /// uploadSessionAppendV2 to add more data and uploadSessionFinish to save all the data to a file in Dropbox. A - /// single request should not upload more than 150 MB. The maximum size of a file one can upload to an upload - /// session is 350 GB. An upload session can be used for a maximum of 7 days. Attempting to use an sessionId in - /// UploadSessionStartResult with uploadSessionAppendV2 or uploadSessionFinish more than 7 days after its - /// creation will return a notFound in UploadSessionLookupError. Calls to this endpoint will count as data - /// transport calls for any Dropbox Business teams with a limit on the number of data transport calls allowed - /// per month. For more information, see the Data transport limit page + /// file is greater than 150 MiB. This call starts a new upload session with the given data. You can then use + /// uploadSessionAppendV2 or uploadSessionAppendBatch to add more data, then uploadSessionFinish or + /// uploadSessionFinishBatchV2 to save all the data to a file in Dropbox. A single request should not upload + /// more than 150 MiB. The maximum size of a file one can upload to an upload session is 2^41 - 2^22 + /// (2,199,019,061,248) bytes. An upload session can be used for a maximum of 7 days. Attempting to use a + /// sessionId in UploadSessionStartResult with uploadSessionAppendV2 or other upload session routes more than 7 + /// days after its creation will return notFound in UploadSessionLookupError. Calls to this endpoint will count + /// as data transport calls for any Dropbox Business teams with a limit on the number of data transport calls + /// allowed per month. For more information, see the Data transport limit page /// https://www.dropbox.com/developers/reference/data-transport-limit. By default, upload sessions require you /// to send content of the file in sequential order via consecutive uploadSessionStart, uploadSessionAppendV2, - /// uploadSessionFinish calls. For better performance, you can instead optionally use a concurrent in - /// UploadSessionType upload session. To start a new concurrent session, set sessionType in - /// UploadSessionStartArg to concurrent in UploadSessionType. After that, you can send file data in concurrent - /// uploadSessionAppendV2 requests. Finally finish the session with uploadSessionFinish. There are couple of - /// constraints with concurrent sessions to make them work. You can not send data with uploadSessionStart or - /// uploadSessionFinish call, only with uploadSessionAppendV2 call. Also data uploaded in uploadSessionAppendV2 - /// call must be multiple of 4194304 bytes (except for last uploadSessionAppendV2 with close in - /// UploadSessionStartArg to true, that may contain any remaining data). + /// and uploadSessionFinish calls (or their batch variants). For better performance, you can optionally set + /// sessionType in UploadSessionStartArg to concurrent in UploadSessionType to start a concurrent upload + /// session. Concurrent upload sessions may upload file data in concurrent uploadSessionAppendV2 requests, with + /// a few caveats. After all of the requests are complete, finish the session with uploadSessionFinish as + /// normal. You can not send data in a uploadSessionStart or uploadSessionFinish call, only with + /// uploadSessionAppendV2 or uploadSessionAppendBatch. Also, the length of the uploaded data in a call to + /// uploadSessionAppendV2 or uploadSessionAppendBatch must be a multiple of 2^22 (4,194,304) bytes, except for + /// the final append request with close in UploadSessionAppendArg or close in UploadSessionAppendBatchArgEntry + /// set to true that may contain any remaining data. /// /// - scope: files.content.write /// @@ -2226,35 +2378,32 @@ public class DBXFilesRoutes: NSObject { /// - returns: Through the response callback, the caller will receive a `Files.UploadSessionStartResult` object on /// success or a `Files.UploadSessionStartError` object on failure. @objc - @discardableResult public func uploadSessionStartURL( - close: NSNumber, - sessionType: DBXFilesUploadSessionType?, - contentHash: String?, - input: URL - ) -> DBXFilesUploadSessionStartUploadRequest { + @discardableResult public func uploadSessionStartURL(close: NSNumber, sessionType: DBXFilesUploadSessionType?, contentHash: String?, input: URL) -> DBXFilesUploadSessionStartUploadRequest { let swift = swift.uploadSessionStart(close: close.boolValue, sessionType: sessionType?.swift, contentHash: contentHash, input: input) return DBXFilesUploadSessionStartUploadRequest(swift: swift) } /// Upload sessions allow you to upload a single file in one or more requests, for example where the size of the - /// file is greater than 150 MB. This call starts a new upload session with the given data. You can then use - /// uploadSessionAppendV2 to add more data and uploadSessionFinish to save all the data to a file in Dropbox. A - /// single request should not upload more than 150 MB. The maximum size of a file one can upload to an upload - /// session is 350 GB. An upload session can be used for a maximum of 7 days. Attempting to use an sessionId in - /// UploadSessionStartResult with uploadSessionAppendV2 or uploadSessionFinish more than 7 days after its - /// creation will return a notFound in UploadSessionLookupError. Calls to this endpoint will count as data - /// transport calls for any Dropbox Business teams with a limit on the number of data transport calls allowed - /// per month. For more information, see the Data transport limit page + /// file is greater than 150 MiB. This call starts a new upload session with the given data. You can then use + /// uploadSessionAppendV2 or uploadSessionAppendBatch to add more data, then uploadSessionFinish or + /// uploadSessionFinishBatchV2 to save all the data to a file in Dropbox. A single request should not upload + /// more than 150 MiB. The maximum size of a file one can upload to an upload session is 2^41 - 2^22 + /// (2,199,019,061,248) bytes. An upload session can be used for a maximum of 7 days. Attempting to use a + /// sessionId in UploadSessionStartResult with uploadSessionAppendV2 or other upload session routes more than 7 + /// days after its creation will return notFound in UploadSessionLookupError. Calls to this endpoint will count + /// as data transport calls for any Dropbox Business teams with a limit on the number of data transport calls + /// allowed per month. For more information, see the Data transport limit page /// https://www.dropbox.com/developers/reference/data-transport-limit. By default, upload sessions require you /// to send content of the file in sequential order via consecutive uploadSessionStart, uploadSessionAppendV2, - /// uploadSessionFinish calls. For better performance, you can instead optionally use a concurrent in - /// UploadSessionType upload session. To start a new concurrent session, set sessionType in - /// UploadSessionStartArg to concurrent in UploadSessionType. After that, you can send file data in concurrent - /// uploadSessionAppendV2 requests. Finally finish the session with uploadSessionFinish. There are couple of - /// constraints with concurrent sessions to make them work. You can not send data with uploadSessionStart or - /// uploadSessionFinish call, only with uploadSessionAppendV2 call. Also data uploaded in uploadSessionAppendV2 - /// call must be multiple of 4194304 bytes (except for last uploadSessionAppendV2 with close in - /// UploadSessionStartArg to true, that may contain any remaining data). + /// and uploadSessionFinish calls (or their batch variants). For better performance, you can optionally set + /// sessionType in UploadSessionStartArg to concurrent in UploadSessionType to start a concurrent upload + /// session. Concurrent upload sessions may upload file data in concurrent uploadSessionAppendV2 requests, with + /// a few caveats. After all of the requests are complete, finish the session with uploadSessionFinish as + /// normal. You can not send data in a uploadSessionStart or uploadSessionFinish call, only with + /// uploadSessionAppendV2 or uploadSessionAppendBatch. Also, the length of the uploaded data in a call to + /// uploadSessionAppendV2 or uploadSessionAppendBatch must be a multiple of 2^22 (4,194,304) bytes, except for + /// the final append request with close in UploadSessionAppendArg or close in UploadSessionAppendBatchArgEntry + /// set to true that may contain any remaining data. /// /// - scope: files.content.write /// @@ -2267,24 +2416,26 @@ public class DBXFilesRoutes: NSObject { } /// Upload sessions allow you to upload a single file in one or more requests, for example where the size of the - /// file is greater than 150 MB. This call starts a new upload session with the given data. You can then use - /// uploadSessionAppendV2 to add more data and uploadSessionFinish to save all the data to a file in Dropbox. A - /// single request should not upload more than 150 MB. The maximum size of a file one can upload to an upload - /// session is 350 GB. An upload session can be used for a maximum of 7 days. Attempting to use an sessionId in - /// UploadSessionStartResult with uploadSessionAppendV2 or uploadSessionFinish more than 7 days after its - /// creation will return a notFound in UploadSessionLookupError. Calls to this endpoint will count as data - /// transport calls for any Dropbox Business teams with a limit on the number of data transport calls allowed - /// per month. For more information, see the Data transport limit page + /// file is greater than 150 MiB. This call starts a new upload session with the given data. You can then use + /// uploadSessionAppendV2 or uploadSessionAppendBatch to add more data, then uploadSessionFinish or + /// uploadSessionFinishBatchV2 to save all the data to a file in Dropbox. A single request should not upload + /// more than 150 MiB. The maximum size of a file one can upload to an upload session is 2^41 - 2^22 + /// (2,199,019,061,248) bytes. An upload session can be used for a maximum of 7 days. Attempting to use a + /// sessionId in UploadSessionStartResult with uploadSessionAppendV2 or other upload session routes more than 7 + /// days after its creation will return notFound in UploadSessionLookupError. Calls to this endpoint will count + /// as data transport calls for any Dropbox Business teams with a limit on the number of data transport calls + /// allowed per month. For more information, see the Data transport limit page /// https://www.dropbox.com/developers/reference/data-transport-limit. By default, upload sessions require you /// to send content of the file in sequential order via consecutive uploadSessionStart, uploadSessionAppendV2, - /// uploadSessionFinish calls. For better performance, you can instead optionally use a concurrent in - /// UploadSessionType upload session. To start a new concurrent session, set sessionType in - /// UploadSessionStartArg to concurrent in UploadSessionType. After that, you can send file data in concurrent - /// uploadSessionAppendV2 requests. Finally finish the session with uploadSessionFinish. There are couple of - /// constraints with concurrent sessions to make them work. You can not send data with uploadSessionStart or - /// uploadSessionFinish call, only with uploadSessionAppendV2 call. Also data uploaded in uploadSessionAppendV2 - /// call must be multiple of 4194304 bytes (except for last uploadSessionAppendV2 with close in - /// UploadSessionStartArg to true, that may contain any remaining data). + /// and uploadSessionFinish calls (or their batch variants). For better performance, you can optionally set + /// sessionType in UploadSessionStartArg to concurrent in UploadSessionType to start a concurrent upload + /// session. Concurrent upload sessions may upload file data in concurrent uploadSessionAppendV2 requests, with + /// a few caveats. After all of the requests are complete, finish the session with uploadSessionFinish as + /// normal. You can not send data in a uploadSessionStart or uploadSessionFinish call, only with + /// uploadSessionAppendV2 or uploadSessionAppendBatch. Also, the length of the uploaded data in a call to + /// uploadSessionAppendV2 or uploadSessionAppendBatch must be a multiple of 2^22 (4,194,304) bytes, except for + /// the final append request with close in UploadSessionAppendArg or close in UploadSessionAppendBatchArgEntry + /// set to true that may contain any remaining data. /// /// - scope: files.content.write /// @@ -2311,24 +2462,26 @@ public class DBXFilesRoutes: NSObject { } /// Upload sessions allow you to upload a single file in one or more requests, for example where the size of the - /// file is greater than 150 MB. This call starts a new upload session with the given data. You can then use - /// uploadSessionAppendV2 to add more data and uploadSessionFinish to save all the data to a file in Dropbox. A - /// single request should not upload more than 150 MB. The maximum size of a file one can upload to an upload - /// session is 350 GB. An upload session can be used for a maximum of 7 days. Attempting to use an sessionId in - /// UploadSessionStartResult with uploadSessionAppendV2 or uploadSessionFinish more than 7 days after its - /// creation will return a notFound in UploadSessionLookupError. Calls to this endpoint will count as data - /// transport calls for any Dropbox Business teams with a limit on the number of data transport calls allowed - /// per month. For more information, see the Data transport limit page + /// file is greater than 150 MiB. This call starts a new upload session with the given data. You can then use + /// uploadSessionAppendV2 or uploadSessionAppendBatch to add more data, then uploadSessionFinish or + /// uploadSessionFinishBatchV2 to save all the data to a file in Dropbox. A single request should not upload + /// more than 150 MiB. The maximum size of a file one can upload to an upload session is 2^41 - 2^22 + /// (2,199,019,061,248) bytes. An upload session can be used for a maximum of 7 days. Attempting to use a + /// sessionId in UploadSessionStartResult with uploadSessionAppendV2 or other upload session routes more than 7 + /// days after its creation will return notFound in UploadSessionLookupError. Calls to this endpoint will count + /// as data transport calls for any Dropbox Business teams with a limit on the number of data transport calls + /// allowed per month. For more information, see the Data transport limit page /// https://www.dropbox.com/developers/reference/data-transport-limit. By default, upload sessions require you /// to send content of the file in sequential order via consecutive uploadSessionStart, uploadSessionAppendV2, - /// uploadSessionFinish calls. For better performance, you can instead optionally use a concurrent in - /// UploadSessionType upload session. To start a new concurrent session, set sessionType in - /// UploadSessionStartArg to concurrent in UploadSessionType. After that, you can send file data in concurrent - /// uploadSessionAppendV2 requests. Finally finish the session with uploadSessionFinish. There are couple of - /// constraints with concurrent sessions to make them work. You can not send data with uploadSessionStart or - /// uploadSessionFinish call, only with uploadSessionAppendV2 call. Also data uploaded in uploadSessionAppendV2 - /// call must be multiple of 4194304 bytes (except for last uploadSessionAppendV2 with close in - /// UploadSessionStartArg to true, that may contain any remaining data). + /// and uploadSessionFinish calls (or their batch variants). For better performance, you can optionally set + /// sessionType in UploadSessionStartArg to concurrent in UploadSessionType to start a concurrent upload + /// session. Concurrent upload sessions may upload file data in concurrent uploadSessionAppendV2 requests, with + /// a few caveats. After all of the requests are complete, finish the session with uploadSessionFinish as + /// normal. You can not send data in a uploadSessionStart or uploadSessionFinish call, only with + /// uploadSessionAppendV2 or uploadSessionAppendBatch. Also, the length of the uploaded data in a call to + /// uploadSessionAppendV2 or uploadSessionAppendBatch must be a multiple of 2^22 (4,194,304) bytes, except for + /// the final append request with close in UploadSessionAppendArg or close in UploadSessionAppendBatchArgEntry + /// set to true that may contain any remaining data. /// /// - scope: files.content.write /// @@ -2340,9 +2493,9 @@ public class DBXFilesRoutes: NSObject { return DBXFilesUploadSessionStartUploadRequest(swift: swift) } - /// This route starts batch of upload_sessions. Please refer to `upload_session/start` usage. Calls to this endpoint - /// will count as data transport calls for any Dropbox Business teams with a limit on the number of data - /// transport calls allowed per month. For more information, see the Data transport limit page + /// Start a batch of upload sessions. See uploadSessionStart. Calls to this endpoint will count as data transport + /// calls for any Dropbox Business teams with a limit on the number of data transport calls allowed per month. + /// For more information, see the Data transport limit page /// https://www.dropbox.com/developers/reference/data-transport-limit. /// /// - scope: files.content.write @@ -2354,17 +2507,14 @@ public class DBXFilesRoutes: NSObject { /// - returns: Through the response callback, the caller will receive a `Files.UploadSessionStartBatchResult` object /// on success or a `Void` object on failure. @objc - @discardableResult public func uploadSessionStartBatch( - numSessions: NSNumber, - sessionType: DBXFilesUploadSessionType? - ) -> DBXFilesUploadSessionStartBatchRpcRequest { + @discardableResult public func uploadSessionStartBatch(numSessions: NSNumber, sessionType: DBXFilesUploadSessionType?) -> DBXFilesUploadSessionStartBatchRpcRequest { let swift = swift.uploadSessionStartBatch(numSessions: numSessions.uint64Value, sessionType: sessionType?.swift) return DBXFilesUploadSessionStartBatchRpcRequest(swift: swift) } - /// This route starts batch of upload_sessions. Please refer to `upload_session/start` usage. Calls to this endpoint - /// will count as data transport calls for any Dropbox Business teams with a limit on the number of data - /// transport calls allowed per month. For more information, see the Data transport limit page + /// Start a batch of upload sessions. See uploadSessionStart. Calls to this endpoint will count as data transport + /// calls for any Dropbox Business teams with a limit on the number of data transport calls allowed per month. + /// For more information, see the Data transport limit page /// https://www.dropbox.com/developers/reference/data-transport-limit. /// /// - scope: files.content.write @@ -2410,7 +2560,7 @@ public class DBXFilesAlphaGetMetadataRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFilesMetadata? + var objc: DBXFilesMetadata? = nil if let swift = result { objc = DBXFilesMetadata.wrapPreservingSubtypes(swift: swift) } @@ -2477,7 +2627,7 @@ public class DBXFilesAlphaUploadUploadRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFilesFileMetadata? + var objc: DBXFilesFileMetadata? = nil if let swift = result { objc = DBXFilesFileMetadata(swift: swift) } @@ -2550,7 +2700,7 @@ public class DBXFilesCopyRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFilesMetadata? + var objc: DBXFilesMetadata? = nil if let swift = result { objc = DBXFilesMetadata.wrapPreservingSubtypes(swift: swift) } @@ -2617,7 +2767,7 @@ public class DBXFilesCopyRpcRequestV2: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFilesRelocationResult? + var objc: DBXFilesRelocationResult? = nil if let swift = result { objc = DBXFilesRelocationResult(swift: swift) } @@ -2673,7 +2823,7 @@ public class DBXFilesCopyBatchRpcRequest: NSObject, DBXRequest { completionHandler: @escaping (DBXFilesRelocationBatchLaunch?, DBXCallError?) -> Void ) -> Self { swift.response(queue: queue) { result, error in - var objc: DBXFilesRelocationBatchLaunch? + var objc: DBXFilesRelocationBatchLaunch? = nil if let swift = result { objc = DBXFilesRelocationBatchLaunch.factory(swift: swift) } @@ -2729,7 +2879,7 @@ public class DBXFilesCopyBatchRpcRequestV2: NSObject, DBXRequest { completionHandler: @escaping (DBXFilesRelocationBatchV2Launch?, DBXCallError?) -> Void ) -> Self { swift.response(queue: queue) { result, error in - var objc: DBXFilesRelocationBatchV2Launch? + var objc: DBXFilesRelocationBatchV2Launch? = nil if let swift = result { objc = DBXFilesRelocationBatchV2Launch.factory(swift: swift) } @@ -2796,7 +2946,7 @@ public class DBXFilesCopyBatchCheckRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFilesRelocationBatchJobStatus? + var objc: DBXFilesRelocationBatchJobStatus? = nil if let swift = result { objc = DBXFilesRelocationBatchJobStatus.factory(swift: swift) } @@ -2863,7 +3013,7 @@ public class DBXFilesCopyBatchCheckRpcRequestV2: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFilesRelocationBatchV2JobStatus? + var objc: DBXFilesRelocationBatchV2JobStatus? = nil if let swift = result { objc = DBXFilesRelocationBatchV2JobStatus.factory(swift: swift) } @@ -2930,7 +3080,7 @@ public class DBXFilesCopyReferenceGetRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFilesGetCopyReferenceResult? + var objc: DBXFilesGetCopyReferenceResult? = nil if let swift = result { objc = DBXFilesGetCopyReferenceResult(swift: swift) } @@ -2997,7 +3147,7 @@ public class DBXFilesCopyReferenceSaveRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFilesSaveCopyReferenceResult? + var objc: DBXFilesSaveCopyReferenceResult? = nil if let swift = result { objc = DBXFilesSaveCopyReferenceResult(swift: swift) } @@ -3064,7 +3214,7 @@ public class DBXFilesCreateFolderRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFilesFolderMetadata? + var objc: DBXFilesFolderMetadata? = nil if let swift = result { objc = DBXFilesFolderMetadata(swift: swift) } @@ -3131,7 +3281,7 @@ public class DBXFilesCreateFolderRpcRequestV2: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFilesCreateFolderResult? + var objc: DBXFilesCreateFolderResult? = nil if let swift = result { objc = DBXFilesCreateFolderResult(swift: swift) } @@ -3187,7 +3337,7 @@ public class DBXFilesCreateFolderBatchRpcRequest: NSObject, DBXRequest { completionHandler: @escaping (DBXFilesCreateFolderBatchLaunch?, DBXCallError?) -> Void ) -> Self { swift.response(queue: queue) { result, error in - var objc: DBXFilesCreateFolderBatchLaunch? + var objc: DBXFilesCreateFolderBatchLaunch? = nil if let swift = result { objc = DBXFilesCreateFolderBatchLaunch.factory(swift: swift) } @@ -3254,7 +3404,7 @@ public class DBXFilesCreateFolderBatchCheckRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFilesCreateFolderBatchJobStatus? + var objc: DBXFilesCreateFolderBatchJobStatus? = nil if let swift = result { objc = DBXFilesCreateFolderBatchJobStatus.factory(swift: swift) } @@ -3321,7 +3471,7 @@ public class DBXFilesDeleteRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFilesMetadata? + var objc: DBXFilesMetadata? = nil if let swift = result { objc = DBXFilesMetadata.wrapPreservingSubtypes(swift: swift) } @@ -3388,7 +3538,7 @@ public class DBXFilesDeleteRpcRequestV2: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFilesDeleteResult? + var objc: DBXFilesDeleteResult? = nil if let swift = result { objc = DBXFilesDeleteResult(swift: swift) } @@ -3444,7 +3594,7 @@ public class DBXFilesDeleteBatchRpcRequest: NSObject, DBXRequest { completionHandler: @escaping (DBXFilesDeleteBatchLaunch?, DBXCallError?) -> Void ) -> Self { swift.response(queue: queue) { result, error in - var objc: DBXFilesDeleteBatchLaunch? + var objc: DBXFilesDeleteBatchLaunch? = nil if let swift = result { objc = DBXFilesDeleteBatchLaunch.factory(swift: swift) } @@ -3511,7 +3661,7 @@ public class DBXFilesDeleteBatchCheckRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFilesDeleteBatchJobStatus? + var objc: DBXFilesDeleteBatchJobStatus? = nil if let swift = result { objc = DBXFilesDeleteBatchJobStatus.factory(swift: swift) } @@ -3578,8 +3728,8 @@ public class DBXFilesDownloadDownloadRequestFile: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFilesFileMetadata? - var destination: URL? + var objc: DBXFilesFileMetadata? = nil + var destination: URL? = nil if let swift = result { objc = DBXFilesFileMetadata(swift: swift.0) destination = swift.1 @@ -3653,8 +3803,8 @@ public class DBXFilesDownloadDownloadRequestMemory: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFilesFileMetadata? - var destination: Data? + var objc: DBXFilesFileMetadata? = nil + var destination: Data? = nil if let swift = result { objc = DBXFilesFileMetadata(swift: swift.0) destination = swift.1 @@ -3728,8 +3878,8 @@ public class DBXFilesDownloadZipDownloadRequestFile: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFilesDownloadZipResult? - var destination: URL? + var objc: DBXFilesDownloadZipResult? = nil + var destination: URL? = nil if let swift = result { objc = DBXFilesDownloadZipResult(swift: swift.0) destination = swift.1 @@ -3803,8 +3953,8 @@ public class DBXFilesDownloadZipDownloadRequestMemory: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFilesDownloadZipResult? - var destination: Data? + var objc: DBXFilesDownloadZipResult? = nil + var destination: Data? = nil if let swift = result { objc = DBXFilesDownloadZipResult(swift: swift.0) destination = swift.1 @@ -3878,8 +4028,8 @@ public class DBXFilesExportDownloadRequestFile: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFilesExportResult? - var destination: URL? + var objc: DBXFilesExportResult? = nil + var destination: URL? = nil if let swift = result { objc = DBXFilesExportResult(swift: swift.0) destination = swift.1 @@ -3953,8 +4103,8 @@ public class DBXFilesExportDownloadRequestMemory: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFilesExportResult? - var destination: Data? + var objc: DBXFilesExportResult? = nil + var destination: Data? = nil if let swift = result { objc = DBXFilesExportResult(swift: swift.0) destination = swift.1 @@ -4028,7 +4178,7 @@ public class DBXFilesGetFileLockBatchRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFilesLockFileBatchResult? + var objc: DBXFilesLockFileBatchResult? = nil if let swift = result { objc = DBXFilesLockFileBatchResult(swift: swift) } @@ -4095,7 +4245,7 @@ public class DBXFilesGetMetadataRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFilesMetadata? + var objc: DBXFilesMetadata? = nil if let swift = result { objc = DBXFilesMetadata.wrapPreservingSubtypes(swift: swift) } @@ -4162,8 +4312,8 @@ public class DBXFilesGetPreviewDownloadRequestFile: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFilesFileMetadata? - var destination: URL? + var objc: DBXFilesFileMetadata? = nil + var destination: URL? = nil if let swift = result { objc = DBXFilesFileMetadata(swift: swift.0) destination = swift.1 @@ -4237,8 +4387,8 @@ public class DBXFilesGetPreviewDownloadRequestMemory: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFilesFileMetadata? - var destination: Data? + var objc: DBXFilesFileMetadata? = nil + var destination: Data? = nil if let swift = result { objc = DBXFilesFileMetadata(swift: swift.0) destination = swift.1 @@ -4312,7 +4462,7 @@ public class DBXFilesGetTemporaryLinkRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFilesGetTemporaryLinkResult? + var objc: DBXFilesGetTemporaryLinkResult? = nil if let swift = result { objc = DBXFilesGetTemporaryLinkResult(swift: swift) } @@ -4368,7 +4518,7 @@ public class DBXFilesGetTemporaryUploadLinkRpcRequest: NSObject, DBXRequest { completionHandler: @escaping (DBXFilesGetTemporaryUploadLinkResult?, DBXCallError?) -> Void ) -> Self { swift.response(queue: queue) { result, error in - var objc: DBXFilesGetTemporaryUploadLinkResult? + var objc: DBXFilesGetTemporaryUploadLinkResult? = nil if let swift = result { objc = DBXFilesGetTemporaryUploadLinkResult(swift: swift) } @@ -4435,8 +4585,8 @@ public class DBXFilesGetThumbnailDownloadRequestFile: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFilesFileMetadata? - var destination: URL? + var objc: DBXFilesFileMetadata? = nil + var destination: URL? = nil if let swift = result { objc = DBXFilesFileMetadata(swift: swift.0) destination = swift.1 @@ -4510,8 +4660,8 @@ public class DBXFilesGetThumbnailDownloadRequestMemory: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFilesFileMetadata? - var destination: Data? + var objc: DBXFilesFileMetadata? = nil + var destination: Data? = nil if let swift = result { objc = DBXFilesFileMetadata(swift: swift.0) destination = swift.1 @@ -4585,8 +4735,8 @@ public class DBXFilesGetThumbnailDownloadRequestFileV2: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFilesPreviewResult? - var destination: URL? + var objc: DBXFilesPreviewResult? = nil + var destination: URL? = nil if let swift = result { objc = DBXFilesPreviewResult(swift: swift.0) destination = swift.1 @@ -4660,8 +4810,8 @@ public class DBXFilesGetThumbnailDownloadRequestMemoryV2: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFilesPreviewResult? - var destination: Data? + var objc: DBXFilesPreviewResult? = nil + var destination: Data? = nil if let swift = result { objc = DBXFilesPreviewResult(swift: swift.0) destination = swift.1 @@ -4735,7 +4885,7 @@ public class DBXFilesGetThumbnailBatchRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFilesGetThumbnailBatchResult? + var objc: DBXFilesGetThumbnailBatchResult? = nil if let swift = result { objc = DBXFilesGetThumbnailBatchResult(swift: swift) } @@ -4802,7 +4952,7 @@ public class DBXFilesListFolderRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFilesListFolderResult? + var objc: DBXFilesListFolderResult? = nil if let swift = result { objc = DBXFilesListFolderResult(swift: swift) } @@ -4869,7 +5019,7 @@ public class DBXFilesListFolderContinueRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFilesListFolderResult? + var objc: DBXFilesListFolderResult? = nil if let swift = result { objc = DBXFilesListFolderResult(swift: swift) } @@ -4936,7 +5086,7 @@ public class DBXFilesListFolderGetLatestCursorRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFilesListFolderGetLatestCursorResult? + var objc: DBXFilesListFolderGetLatestCursorResult? = nil if let swift = result { objc = DBXFilesListFolderGetLatestCursorResult(swift: swift) } @@ -5003,7 +5153,7 @@ public class DBXFilesListFolderLongpollRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFilesListFolderLongpollResult? + var objc: DBXFilesListFolderLongpollResult? = nil if let swift = result { objc = DBXFilesListFolderLongpollResult(swift: swift) } @@ -5070,7 +5220,7 @@ public class DBXFilesListRevisionsRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFilesListRevisionsResult? + var objc: DBXFilesListRevisionsResult? = nil if let swift = result { objc = DBXFilesListRevisionsResult(swift: swift) } @@ -5137,7 +5287,7 @@ public class DBXFilesLockFileBatchRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFilesLockFileBatchResult? + var objc: DBXFilesLockFileBatchResult? = nil if let swift = result { objc = DBXFilesLockFileBatchResult(swift: swift) } @@ -5204,7 +5354,7 @@ public class DBXFilesMoveRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFilesMetadata? + var objc: DBXFilesMetadata? = nil if let swift = result { objc = DBXFilesMetadata.wrapPreservingSubtypes(swift: swift) } @@ -5271,7 +5421,7 @@ public class DBXFilesMoveRpcRequestV2: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFilesRelocationResult? + var objc: DBXFilesRelocationResult? = nil if let swift = result { objc = DBXFilesRelocationResult(swift: swift) } @@ -5327,7 +5477,7 @@ public class DBXFilesMoveBatchRpcRequest: NSObject, DBXRequest { completionHandler: @escaping (DBXFilesRelocationBatchLaunch?, DBXCallError?) -> Void ) -> Self { swift.response(queue: queue) { result, error in - var objc: DBXFilesRelocationBatchLaunch? + var objc: DBXFilesRelocationBatchLaunch? = nil if let swift = result { objc = DBXFilesRelocationBatchLaunch.factory(swift: swift) } @@ -5383,7 +5533,7 @@ public class DBXFilesMoveBatchRpcRequestV2: NSObject, DBXRequest { completionHandler: @escaping (DBXFilesRelocationBatchV2Launch?, DBXCallError?) -> Void ) -> Self { swift.response(queue: queue) { result, error in - var objc: DBXFilesRelocationBatchV2Launch? + var objc: DBXFilesRelocationBatchV2Launch? = nil if let swift = result { objc = DBXFilesRelocationBatchV2Launch.factory(swift: swift) } @@ -5450,7 +5600,7 @@ public class DBXFilesMoveBatchCheckRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFilesRelocationBatchJobStatus? + var objc: DBXFilesRelocationBatchJobStatus? = nil if let swift = result { objc = DBXFilesRelocationBatchJobStatus.factory(swift: swift) } @@ -5517,7 +5667,7 @@ public class DBXFilesMoveBatchCheckRpcRequestV2: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFilesRelocationBatchV2JobStatus? + var objc: DBXFilesRelocationBatchV2JobStatus? = nil if let swift = result { objc = DBXFilesRelocationBatchV2JobStatus.factory(swift: swift) } @@ -5584,7 +5734,7 @@ public class DBXFilesPaperCreateUploadRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFilesPaperCreateResult? + var objc: DBXFilesPaperCreateResult? = nil if let swift = result { objc = DBXFilesPaperCreateResult(swift: swift) } @@ -5657,7 +5807,7 @@ public class DBXFilesPaperUpdateUploadRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFilesPaperUpdateResult? + var objc: DBXFilesPaperUpdateResult? = nil if let swift = result { objc = DBXFilesPaperUpdateResult(swift: swift) } @@ -5887,203 +6037,6 @@ public class DBXFilesPropertiesOverwriteRpcRequest: NSObject, DBXRequest { } } -@objc -public class DBXFilesPropertiesRemoveRpcRequest: NSObject, DBXRequest { - var swift: RpcRequest - - init(swift: RpcRequest) { - self.swift = swift - } - - @objc - @discardableResult public func response( - completionHandler: @escaping (DBXFilePropertiesRemovePropertiesError?, DBXCallError?) -> Void - ) -> Self { - response(queue: nil, completionHandler: completionHandler) - } - - @objc - @discardableResult public func response( - queue: DispatchQueue?, - completionHandler: @escaping (DBXFilePropertiesRemovePropertiesError?, DBXCallError?) -> Void - ) -> Self { - swift.response(queue: queue) { _, error in - var routeError: DBXFilePropertiesRemovePropertiesError? - var callError: DBXCallError? - switch error { - case .routeError(let box, _, _, _): - routeError = DBXFilePropertiesRemovePropertiesError(swift: box.unboxed) - callError = nil - default: - routeError = nil - callError = error?.objc - } - - completionHandler(routeError, callError) - } - return self - } - - @objc - public var clientPersistedString: String? { swift.clientPersistedString } - - @available(iOS 13.0, macOS 10.13, *) - @objc - public var earliestBeginDate: Date? { swift.earliestBeginDate } - - @objc - public func persistingString(string: String?) -> Self { - swift.persistingString(string: string) - return self - } - - @available(iOS 13.0, macOS 10.13, *) - @objc - public func settingEarliestBeginDate(date: Date?) -> Self { - swift.settingEarliestBeginDate(date: date) - return self - } - - @objc - public func cancel() { - swift.cancel() - } -} - -@objc -public class DBXFilesPropertiesTemplateGetRpcRequest: NSObject, DBXRequest { - var swift: RpcRequest - - init(swift: RpcRequest) { - self.swift = swift - } - - @objc - @discardableResult public func response( - completionHandler: @escaping (DBXFilePropertiesGetTemplateResult?, DBXFilePropertiesTemplateError?, DBXCallError?) -> Void - ) -> Self { - response(queue: nil, completionHandler: completionHandler) - } - - @objc - @discardableResult public func response( - queue: DispatchQueue?, - completionHandler: @escaping (DBXFilePropertiesGetTemplateResult?, DBXFilePropertiesTemplateError?, DBXCallError?) -> Void - ) -> Self { - swift.response(queue: queue) { result, error in - var routeError: DBXFilePropertiesTemplateError? - var callError: DBXCallError? - switch error { - case .routeError(let box, _, _, _): - routeError = DBXFilePropertiesTemplateError(swift: box.unboxed) - callError = nil - default: - routeError = nil - callError = error?.objc - } - - var objc: DBXFilePropertiesGetTemplateResult? - if let swift = result { - objc = DBXFilePropertiesGetTemplateResult(swift: swift) - } - completionHandler(objc, routeError, callError) - } - return self - } - - @objc - public var clientPersistedString: String? { swift.clientPersistedString } - - @available(iOS 13.0, macOS 10.13, *) - @objc - public var earliestBeginDate: Date? { swift.earliestBeginDate } - - @objc - public func persistingString(string: String?) -> Self { - swift.persistingString(string: string) - return self - } - - @available(iOS 13.0, macOS 10.13, *) - @objc - public func settingEarliestBeginDate(date: Date?) -> Self { - swift.settingEarliestBeginDate(date: date) - return self - } - - @objc - public func cancel() { - swift.cancel() - } -} - -@objc -public class DBXFilesPropertiesTemplateListRpcRequest: NSObject, DBXRequest { - var swift: RpcRequest - - init(swift: RpcRequest) { - self.swift = swift - } - - @objc - @discardableResult public func response( - completionHandler: @escaping (DBXFilePropertiesListTemplateResult?, DBXFilePropertiesTemplateError?, DBXCallError?) -> Void - ) -> Self { - response(queue: nil, completionHandler: completionHandler) - } - - @objc - @discardableResult public func response( - queue: DispatchQueue?, - completionHandler: @escaping (DBXFilePropertiesListTemplateResult?, DBXFilePropertiesTemplateError?, DBXCallError?) -> Void - ) -> Self { - swift.response(queue: queue) { result, error in - var routeError: DBXFilePropertiesTemplateError? - var callError: DBXCallError? - switch error { - case .routeError(let box, _, _, _): - routeError = DBXFilePropertiesTemplateError(swift: box.unboxed) - callError = nil - default: - routeError = nil - callError = error?.objc - } - - var objc: DBXFilePropertiesListTemplateResult? - if let swift = result { - objc = DBXFilePropertiesListTemplateResult(swift: swift) - } - completionHandler(objc, routeError, callError) - } - return self - } - - @objc - public var clientPersistedString: String? { swift.clientPersistedString } - - @available(iOS 13.0, macOS 10.13, *) - @objc - public var earliestBeginDate: Date? { swift.earliestBeginDate } - - @objc - public func persistingString(string: String?) -> Self { - swift.persistingString(string: string) - return self - } - - @available(iOS 13.0, macOS 10.13, *) - @objc - public func settingEarliestBeginDate(date: Date?) -> Self { - swift.settingEarliestBeginDate(date: date) - return self - } - - @objc - public func cancel() { - swift.cancel() - } -} - @objc public class DBXFilesPropertiesUpdateRpcRequest: NSObject, DBXRequest { var swift: RpcRequest @@ -6179,7 +6132,7 @@ public class DBXFilesRestoreRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFilesFileMetadata? + var objc: DBXFilesFileMetadata? = nil if let swift = result { objc = DBXFilesFileMetadata(swift: swift) } @@ -6246,7 +6199,7 @@ public class DBXFilesSaveUrlRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFilesSaveUrlResult? + var objc: DBXFilesSaveUrlResult? = nil if let swift = result { objc = DBXFilesSaveUrlResult.factory(swift: swift) } @@ -6313,7 +6266,7 @@ public class DBXFilesSaveUrlCheckJobStatusRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFilesSaveUrlJobStatus? + var objc: DBXFilesSaveUrlJobStatus? = nil if let swift = result { objc = DBXFilesSaveUrlJobStatus.factory(swift: swift) } @@ -6380,7 +6333,7 @@ public class DBXFilesSearchRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFilesSearchResult? + var objc: DBXFilesSearchResult? = nil if let swift = result { objc = DBXFilesSearchResult(swift: swift) } @@ -6447,7 +6400,7 @@ public class DBXFilesSearchRpcRequestV2: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFilesSearchV2Result? + var objc: DBXFilesSearchV2Result? = nil if let swift = result { objc = DBXFilesSearchV2Result(swift: swift) } @@ -6514,7 +6467,7 @@ public class DBXFilesSearchContinueRpcRequestV2: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFilesSearchV2Result? + var objc: DBXFilesSearchV2Result? = nil if let swift = result { objc = DBXFilesSearchV2Result(swift: swift) } @@ -6644,7 +6597,7 @@ public class DBXFilesTagsGetRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFilesGetTagsResult? + var objc: DBXFilesGetTagsResult? = nil if let swift = result { objc = DBXFilesGetTagsResult(swift: swift) } @@ -6774,7 +6727,7 @@ public class DBXFilesUnlockFileBatchRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFilesLockFileBatchResult? + var objc: DBXFilesLockFileBatchResult? = nil if let swift = result { objc = DBXFilesLockFileBatchResult(swift: swift) } @@ -6841,7 +6794,7 @@ public class DBXFilesUploadUploadRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFilesFileMetadata? + var objc: DBXFilesFileMetadata? = nil if let swift = result { objc = DBXFilesFileMetadata(swift: swift) } @@ -7020,6 +6973,79 @@ public class DBXFilesUploadSessionAppendUploadRequestV2: NSObject, DBXRequest { } } +@objc +public class DBXFilesUploadSessionAppendBatchUploadRequest: NSObject, DBXRequest { + var swift: UploadRequest + + init(swift: UploadRequest) { + self.swift = swift + } + + @objc + @discardableResult public func response( + completionHandler: @escaping (DBXFilesUploadSessionAppendBatchResult?, DBXFilesUploadSessionAppendBatchError?, DBXCallError?) -> Void + ) -> Self { + response(queue: nil, completionHandler: completionHandler) + } + + @objc + @discardableResult public func response( + queue: DispatchQueue?, + completionHandler: @escaping (DBXFilesUploadSessionAppendBatchResult?, DBXFilesUploadSessionAppendBatchError?, DBXCallError?) -> Void + ) -> Self { + swift.response(queue: queue) { result, error in + var routeError: DBXFilesUploadSessionAppendBatchError? + var callError: DBXCallError? + switch error { + case .routeError(let box, _, _, _): + routeError = DBXFilesUploadSessionAppendBatchError(swift: box.unboxed) + callError = nil + default: + routeError = nil + callError = error?.objc + } + + var objc: DBXFilesUploadSessionAppendBatchResult? = nil + if let swift = result { + objc = DBXFilesUploadSessionAppendBatchResult(swift: swift) + } + completionHandler(objc, routeError, callError) + } + return self + } + + @objc + public func progress(_ progressHandler: @escaping ((Progress) -> Void)) -> Self { + swift.progress(progressHandler) + return self + } + + @objc + public var clientPersistedString: String? { swift.clientPersistedString } + + @available(iOS 13.0, macOS 10.13, *) + @objc + public var earliestBeginDate: Date? { swift.earliestBeginDate } + + @objc + public func persistingString(string: String?) -> Self { + swift.persistingString(string: string) + return self + } + + @available(iOS 13.0, macOS 10.13, *) + @objc + public func settingEarliestBeginDate(date: Date?) -> Self { + swift.settingEarliestBeginDate(date: date) + return self + } + + @objc + public func cancel() { + swift.cancel() + } +} + @objc public class DBXFilesUploadSessionFinishUploadRequest: NSObject, DBXRequest { var swift: UploadRequest @@ -7052,7 +7078,7 @@ public class DBXFilesUploadSessionFinishUploadRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFilesFileMetadata? + var objc: DBXFilesFileMetadata? = nil if let swift = result { objc = DBXFilesFileMetadata(swift: swift) } @@ -7114,7 +7140,7 @@ public class DBXFilesUploadSessionFinishBatchRpcRequest: NSObject, DBXRequest { completionHandler: @escaping (DBXFilesUploadSessionFinishBatchLaunch?, DBXCallError?) -> Void ) -> Self { swift.response(queue: queue) { result, error in - var objc: DBXFilesUploadSessionFinishBatchLaunch? + var objc: DBXFilesUploadSessionFinishBatchLaunch? = nil if let swift = result { objc = DBXFilesUploadSessionFinishBatchLaunch.factory(swift: swift) } @@ -7170,7 +7196,7 @@ public class DBXFilesUploadSessionFinishBatchRpcRequestV2: NSObject, DBXRequest completionHandler: @escaping (DBXFilesUploadSessionFinishBatchResult?, DBXCallError?) -> Void ) -> Self { swift.response(queue: queue) { result, error in - var objc: DBXFilesUploadSessionFinishBatchResult? + var objc: DBXFilesUploadSessionFinishBatchResult? = nil if let swift = result { objc = DBXFilesUploadSessionFinishBatchResult(swift: swift) } @@ -7237,7 +7263,7 @@ public class DBXFilesUploadSessionFinishBatchCheckRpcRequest: NSObject, DBXReque callError = error?.objc } - var objc: DBXFilesUploadSessionFinishBatchJobStatus? + var objc: DBXFilesUploadSessionFinishBatchJobStatus? = nil if let swift = result { objc = DBXFilesUploadSessionFinishBatchJobStatus.factory(swift: swift) } @@ -7304,7 +7330,7 @@ public class DBXFilesUploadSessionStartUploadRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFilesUploadSessionStartResult? + var objc: DBXFilesUploadSessionStartResult? = nil if let swift = result { objc = DBXFilesUploadSessionStartResult(swift: swift) } @@ -7366,7 +7392,7 @@ public class DBXFilesUploadSessionStartBatchRpcRequest: NSObject, DBXRequest { completionHandler: @escaping (DBXFilesUploadSessionStartBatchResult?, DBXCallError?) -> Void ) -> Self { swift.response(queue: queue) { result, error in - var objc: DBXFilesUploadSessionStartBatchResult? + var objc: DBXFilesUploadSessionStartBatchResult? = nil if let swift = result { objc = DBXFilesUploadSessionStartBatchResult(swift: swift) } diff --git a/Source/SwiftyDropboxObjC/Shared/Generated/DBXOpenidRoutes.swift b/Source/SwiftyDropboxObjC/Shared/Generated/DBXOpenidRoutes.swift index 87498be5..f529798a 100644 --- a/Source/SwiftyDropboxObjC/Shared/Generated/DBXOpenidRoutes.swift +++ b/Source/SwiftyDropboxObjC/Shared/Generated/DBXOpenidRoutes.swift @@ -66,7 +66,7 @@ public class DBXOpenidUserinfoRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXOpenidUserInfoResult? + var objc: DBXOpenidUserInfoResult? = nil if let swift = result { objc = DBXOpenidUserInfoResult(swift: swift) } diff --git a/Source/SwiftyDropboxObjC/Shared/Generated/DBXPaper.swift b/Source/SwiftyDropboxObjC/Shared/Generated/DBXPaper.swift index 2ac008e2..362981c7 100644 --- a/Source/SwiftyDropboxObjC/Shared/Generated/DBXPaper.swift +++ b/Source/SwiftyDropboxObjC/Shared/Generated/DBXPaper.swift @@ -526,6 +526,8 @@ public class DBXPaperExportFormat: NSObject { return DBXPaperExportFormatHtml() case .markdown: return DBXPaperExportFormatMarkdown() + case .json: + return DBXPaperExportFormatJson() case .other: return DBXPaperExportFormatOther() } @@ -544,6 +546,11 @@ public class DBXPaperExportFormat: NSObject { self as? DBXPaperExportFormatMarkdown } + @objc + public var asJson: DBXPaperExportFormatJson? { + self as? DBXPaperExportFormatJson + } + @objc public var asOther: DBXPaperExportFormatOther? { self as? DBXPaperExportFormatOther @@ -570,6 +577,16 @@ public class DBXPaperExportFormatMarkdown: DBXPaperExportFormat { } } +/// Doc metadata JSON export format. +@objc +public class DBXPaperExportFormatJson: DBXPaperExportFormat { + @objc + public init() { + let swift = Paper.ExportFormat.json + super.init(swift: swift) + } +} + /// An unspecified error. @objc public class DBXPaperExportFormatOther: DBXPaperExportFormat { @@ -771,6 +788,31 @@ public class DBXPaperFoldersContainingPaperDoc: NSObject { public override var description: String { swift.description } } +/// Argument for retrieving Paper doc metadata. Accepts either a legacy Paper doc ID or a Cloud Doc file ID. +@objc +public class DBXPaperGetDocMetadataArg: NSObject { + /// Legacy Paper doc identifier. + @objc + public var docId: String? { swift.docId } + /// Dropbox file ID for Cloud Docs (post-PiFS migration). + @objc + public var fileId: String? { swift.fileId } + + @objc + public init(docId: String?, fileId: String?) { + self.swift = Paper.GetDocMetadataArg(docId: docId, fileId: fileId) + } + + let swift: Paper.GetDocMetadataArg + + public init(swift: Paper.GetDocMetadataArg) { + self.swift = swift + } + + @objc + public override var description: String { swift.description } +} + /// The import format of the incoming data. @objc public class DBXPaperImportFormat: NSObject { @@ -957,10 +999,25 @@ public class DBXPaperListPaperDocsArgs: NSObject { /// results in invalid arguments error. @objc public var limit: NSNumber { swift.limit as NSNumber } + /// Do not return results beyond this date. Behavior depends on sort order. + @objc + public var stopAtDate: Date? { swift.stopAtDate } @objc - public init(filterBy: DBXPaperListPaperDocsFilterBy, sortBy: DBXPaperListPaperDocsSortBy, sortOrder: DBXPaperListPaperDocsSortOrder, limit: NSNumber) { - self.swift = Paper.ListPaperDocsArgs(filterBy: filterBy.swift, sortBy: sortBy.swift, sortOrder: sortOrder.swift, limit: limit.int32Value) + public init( + filterBy: DBXPaperListPaperDocsFilterBy, + sortBy: DBXPaperListPaperDocsSortBy, + sortOrder: DBXPaperListPaperDocsSortOrder, + limit: NSNumber, + stopAtDate: Date? + ) { + self.swift = Paper.ListPaperDocsArgs( + filterBy: filterBy.swift, + sortBy: sortBy.swift, + sortOrder: sortOrder.swift, + limit: limit.int32Value, + stopAtDate: stopAtDate + ) } let swift: Paper.ListPaperDocsArgs @@ -1824,10 +1881,15 @@ public class DBXPaperPaperDocExport: DBXPaperRefPaperDoc { /// (no description) @objc public var exportFormat: DBXPaperExportFormat { DBXPaperExportFormat(swift: subSwift.exportFormat) } + /// When true, export includes comment threads (e.g. markdown footnotes). When false or omitted, body only. + /// Other formats may adopt this later; currently only markdown uses it. Plain bool (not optional): + /// protoc-gen-godbx does not support proto3 optional yet. + @objc + public var includeComments: NSNumber { subSwift.includeComments as NSNumber } @objc - public init(docId: String, exportFormat: DBXPaperExportFormat) { - let swift = Paper.PaperDocExport(docId: docId, exportFormat: exportFormat.swift) + public init(docId: String, exportFormat: DBXPaperExportFormat, includeComments: NSNumber) { + let swift = Paper.PaperDocExport(docId: docId, exportFormat: exportFormat.swift, includeComments: includeComments.boolValue) self.subSwift = swift super.init(swift: swift) } @@ -1874,6 +1936,67 @@ public class DBXPaperPaperDocExportResult: NSObject { public override var description: String { swift.description } } +/// Metadata returned by docs/get_metadata. +@objc +public class DBXPaperPaperDocGetMetadataResult: NSObject { + /// The Paper doc ID. + @objc + public var docId: String { swift.docId } + /// The Paper doc owner's email address. + @objc + public var owner: String { swift.owner } + /// The Paper doc title. + @objc + public var title: String { swift.title } + /// The Paper doc creation date. + @objc + public var createdDate: Date { swift.createdDate } + /// The Paper doc status. + @objc + public var status: DBXPaperPaperDocStatus { DBXPaperPaperDocStatus(swift: swift.status) } + /// The Paper doc revision. Simply an ever increasing number. + @objc + public var revision: NSNumber { swift.revision as NSNumber } + /// The date when the Paper doc was last edited. + @objc + public var lastUpdatedDate: Date { swift.lastUpdatedDate } + /// The email address of the last editor of the Paper doc. + @objc + public var lastEditor: String { swift.lastEditor } + + @objc + public init( + docId: String, + owner: String, + title: String, + createdDate: Date, + status: DBXPaperPaperDocStatus, + revision: NSNumber, + lastUpdatedDate: Date, + lastEditor: String + ) { + self.swift = Paper.PaperDocGetMetadataResult( + docId: docId, + owner: owner, + title: title, + createdDate: createdDate, + status: status.swift, + revision: revision.int64Value, + lastUpdatedDate: lastUpdatedDate, + lastEditor: lastEditor + ) + } + + let swift: Paper.PaperDocGetMetadataResult + + public init(swift: Paper.PaperDocGetMetadataResult) { + self.swift = swift + } + + @objc + public override var description: String { swift.description } +} + /// Objective-C compatible PaperDocPermissionLevel union @objc public class DBXPaperPaperDocPermissionLevel: NSObject { @@ -1968,6 +2091,75 @@ public class DBXPaperPaperDocSharingPolicy: DBXPaperRefPaperDoc { public override var description: String { subSwift.description } } +/// The status of a Paper doc. +@objc +public class DBXPaperPaperDocStatus: NSObject { + let swift: Paper.PaperDocStatus + + public init(swift: Paper.PaperDocStatus) { + self.swift = swift + } + + public static func factory(swift: Paper.PaperDocStatus) -> DBXPaperPaperDocStatus { + switch swift { + case .active: + return DBXPaperPaperDocStatusActive() + case .deleted: + return DBXPaperPaperDocStatusDeleted() + case .other: + return DBXPaperPaperDocStatusOther() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asActive: DBXPaperPaperDocStatusActive? { + self as? DBXPaperPaperDocStatusActive + } + + @objc + public var asDeleted: DBXPaperPaperDocStatusDeleted? { + self as? DBXPaperPaperDocStatusDeleted + } + + @objc + public var asOther: DBXPaperPaperDocStatusOther? { + self as? DBXPaperPaperDocStatusOther + } +} + +/// The Paper doc is active. +@objc +public class DBXPaperPaperDocStatusActive: DBXPaperPaperDocStatus { + @objc + public init() { + let swift = Paper.PaperDocStatus.active + super.init(swift: swift) + } +} + +/// The Paper doc is deleted. +@objc +public class DBXPaperPaperDocStatusDeleted: DBXPaperPaperDocStatus { + @objc + public init() { + let swift = Paper.PaperDocStatus.deleted + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXPaperPaperDocStatusOther: DBXPaperPaperDocStatus { + @objc + public init() { + let swift = Paper.PaperDocStatus.other + super.init(swift: swift) + } +} + /// Objective-C compatible PaperDocUpdateArgs struct @objc public class DBXPaperPaperDocUpdateArgs: DBXPaperRefPaperDoc { diff --git a/Source/SwiftyDropboxObjC/Shared/Generated/DBXPaperRoutes.swift b/Source/SwiftyDropboxObjC/Shared/Generated/DBXPaperRoutes.swift index 484d9376..cca61adf 100644 --- a/Source/SwiftyDropboxObjC/Shared/Generated/DBXPaperRoutes.swift +++ b/Source/SwiftyDropboxObjC/Shared/Generated/DBXPaperRoutes.swift @@ -18,6 +18,33 @@ public class DBXPaperRoutes: NSObject { } public let client: DBXDropboxTransportClient + + /// Returns metadata for a Paper doc or Cloud Doc. + /// + /// - scope: files.metadata.read + /// + /// - parameter docId: Legacy Paper doc identifier. + /// - parameter fileId: Dropbox file ID for Cloud Docs (post-PiFS migration). + /// + /// - returns: Through the response callback, the caller will receive a `Paper.PaperDocGetMetadataResult` object on + /// success or a `Paper.DocLookupError` object on failure. + @objc + @discardableResult public func docsGetMetadata(docId: String?, fileId: String?) -> DBXPaperDocsGetMetadataRpcRequest { + let swift = swift.docsGetMetadata(docId: docId, fileId: fileId) + return DBXPaperDocsGetMetadataRpcRequest(swift: swift) + } + + /// Returns metadata for a Paper doc or Cloud Doc. + /// + /// - scope: files.metadata.read + /// + /// - returns: Through the response callback, the caller will receive a `Paper.PaperDocGetMetadataResult` object on + /// success or a `Paper.DocLookupError` object on failure. + @objc + @discardableResult public func docsGetMetadata() -> DBXPaperDocsGetMetadataRpcRequest { + let swift = swift.docsGetMetadata() + return DBXPaperDocsGetMetadataRpcRequest(swift: swift) + } } @objc @@ -115,7 +142,7 @@ public class DBXPaperDocsCreateUploadRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXPaperPaperDocCreateUpdateResult? + var objc: DBXPaperPaperDocCreateUpdateResult? = nil if let swift = result { objc = DBXPaperPaperDocCreateUpdateResult(swift: swift) } @@ -188,8 +215,8 @@ public class DBXPaperDocsDownloadDownloadRequestFile: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXPaperPaperDocExportResult? - var destination: URL? + var objc: DBXPaperPaperDocExportResult? = nil + var destination: URL? = nil if let swift = result { objc = DBXPaperPaperDocExportResult(swift: swift.0) destination = swift.1 @@ -263,8 +290,8 @@ public class DBXPaperDocsDownloadDownloadRequestMemory: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXPaperPaperDocExportResult? - var destination: Data? + var objc: DBXPaperPaperDocExportResult? = nil + var destination: Data? = nil if let swift = result { objc = DBXPaperPaperDocExportResult(swift: swift.0) destination = swift.1 @@ -338,7 +365,7 @@ public class DBXPaperDocsFolderUsersListRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXPaperListUsersOnFolderResponse? + var objc: DBXPaperListUsersOnFolderResponse? = nil if let swift = result { objc = DBXPaperListUsersOnFolderResponse(swift: swift) } @@ -405,7 +432,7 @@ public class DBXPaperDocsFolderUsersListContinueRpcRequest: NSObject, DBXRequest callError = error?.objc } - var objc: DBXPaperListUsersOnFolderResponse? + var objc: DBXPaperListUsersOnFolderResponse? = nil if let swift = result { objc = DBXPaperListUsersOnFolderResponse(swift: swift) } @@ -472,7 +499,7 @@ public class DBXPaperDocsGetFolderInfoRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXPaperFoldersContainingPaperDoc? + var objc: DBXPaperFoldersContainingPaperDoc? = nil if let swift = result { objc = DBXPaperFoldersContainingPaperDoc(swift: swift) } @@ -507,6 +534,73 @@ public class DBXPaperDocsGetFolderInfoRpcRequest: NSObject, DBXRequest { } } +@objc +public class DBXPaperDocsGetMetadataRpcRequest: NSObject, DBXRequest { + var swift: RpcRequest + + init(swift: RpcRequest) { + self.swift = swift + } + + @objc + @discardableResult public func response( + completionHandler: @escaping (DBXPaperPaperDocGetMetadataResult?, DBXPaperDocLookupError?, DBXCallError?) -> Void + ) -> Self { + response(queue: nil, completionHandler: completionHandler) + } + + @objc + @discardableResult public func response( + queue: DispatchQueue?, + completionHandler: @escaping (DBXPaperPaperDocGetMetadataResult?, DBXPaperDocLookupError?, DBXCallError?) -> Void + ) -> Self { + swift.response(queue: queue) { result, error in + var routeError: DBXPaperDocLookupError? + var callError: DBXCallError? + switch error { + case .routeError(let box, _, _, _): + routeError = DBXPaperDocLookupError(swift: box.unboxed) + callError = nil + default: + routeError = nil + callError = error?.objc + } + + var objc: DBXPaperPaperDocGetMetadataResult? = nil + if let swift = result { + objc = DBXPaperPaperDocGetMetadataResult(swift: swift) + } + completionHandler(objc, routeError, callError) + } + return self + } + + @objc + public var clientPersistedString: String? { swift.clientPersistedString } + + @available(iOS 13.0, macOS 10.13, *) + @objc + public var earliestBeginDate: Date? { swift.earliestBeginDate } + + @objc + public func persistingString(string: String?) -> Self { + swift.persistingString(string: string) + return self + } + + @available(iOS 13.0, macOS 10.13, *) + @objc + public func settingEarliestBeginDate(date: Date?) -> Self { + swift.settingEarliestBeginDate(date: date) + return self + } + + @objc + public func cancel() { + swift.cancel() + } +} + @objc public class DBXPaperDocsListRpcRequest: NSObject, DBXRequest { var swift: RpcRequest @@ -528,7 +622,7 @@ public class DBXPaperDocsListRpcRequest: NSObject, DBXRequest { completionHandler: @escaping (DBXPaperListPaperDocsResponse?, DBXCallError?) -> Void ) -> Self { swift.response(queue: queue) { result, error in - var objc: DBXPaperListPaperDocsResponse? + var objc: DBXPaperListPaperDocsResponse? = nil if let swift = result { objc = DBXPaperListPaperDocsResponse(swift: swift) } @@ -595,7 +689,7 @@ public class DBXPaperDocsListContinueRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXPaperListPaperDocsResponse? + var objc: DBXPaperListPaperDocsResponse? = nil if let swift = result { objc = DBXPaperListPaperDocsResponse(swift: swift) } @@ -725,7 +819,7 @@ public class DBXPaperDocsSharingPolicyGetRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXPaperSharingPolicy? + var objc: DBXPaperSharingPolicy? = nil if let swift = result { objc = DBXPaperSharingPolicy(swift: swift) } @@ -855,7 +949,7 @@ public class DBXPaperDocsUpdateUploadRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXPaperPaperDocCreateUpdateResult? + var objc: DBXPaperPaperDocCreateUpdateResult? = nil if let swift = result { objc = DBXPaperPaperDocCreateUpdateResult(swift: swift) } @@ -928,7 +1022,7 @@ public class DBXPaperDocsUsersAddRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: [DBXPaperAddPaperDocUserMemberResult]? + var objc: [DBXPaperAddPaperDocUserMemberResult]? = nil if let swift = result { objc = swift.map { DBXPaperAddPaperDocUserMemberResult(swift: $0) } } @@ -995,7 +1089,7 @@ public class DBXPaperDocsUsersListRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXPaperListUsersOnPaperDocResponse? + var objc: DBXPaperListUsersOnPaperDocResponse? = nil if let swift = result { objc = DBXPaperListUsersOnPaperDocResponse(swift: swift) } @@ -1062,7 +1156,7 @@ public class DBXPaperDocsUsersListContinueRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXPaperListUsersOnPaperDocResponse? + var objc: DBXPaperListUsersOnPaperDocResponse? = nil if let swift = result { objc = DBXPaperListUsersOnPaperDocResponse(swift: swift) } @@ -1192,7 +1286,7 @@ public class DBXPaperFoldersCreateRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXPaperPaperFolderCreateResult? + var objc: DBXPaperPaperFolderCreateResult? = nil if let swift = result { objc = DBXPaperPaperFolderCreateResult(swift: swift) } diff --git a/Source/SwiftyDropboxObjC/Shared/Generated/DBXRiviera.swift b/Source/SwiftyDropboxObjC/Shared/Generated/DBXRiviera.swift new file mode 100644 index 00000000..ec275b1f --- /dev/null +++ b/Source/SwiftyDropboxObjC/Shared/Generated/DBXRiviera.swift @@ -0,0 +1,2078 @@ +/// +/// Copyright (c) 2022 Dropbox, Inc. All rights reserved. +/// +/// Auto-generated by Stone, do not modify. +/// + +import Foundation +import SwiftyDropbox + +/// Objective-C compatible datatypes for the riviera namespace +/// For Swift see riviera + +/// GPS coordinates and related tags extracted from image EXIF data. Fields are populated on a best-effort basis and +/// may be empty when absent from the source file. +@objc +public class DBXRivieraApiExifGpsMetadata: NSObject { + /// Latitude / longitude in decimal degrees (positive = N/E, negative = S/W). + @objc + public var latitude: NSNumber { swift.latitude as NSNumber } + /// (no description) + @objc + public var longitude: NSNumber { swift.longitude as NSNumber } + /// Altitude in meters, as reported by the source (string to preserve the original representation, which may + /// include a reference direction). + @objc + public var altitude: String { swift.altitude } + /// Timestamp / datestamp of the GPS fix, in the EXIF-provided format. + @objc + public var timestamp_: String { swift.timestamp_ } + /// (no description) + @objc + public var datestamp: String { swift.datestamp } + + @objc + public init(latitude: NSNumber, longitude: NSNumber, altitude: String, timestamp_: String, datestamp: String) { + self.swift = Riviera.ApiExifGpsMetadata( + latitude: latitude.floatValue, + longitude: longitude.floatValue, + altitude: altitude, + timestamp_: timestamp_, + datestamp: datestamp + ) + } + + let swift: Riviera.ApiExifGpsMetadata + + public init(swift: Riviera.ApiExifGpsMetadata) { + self.swift = swift + } + + @objc + public override var description: String { swift.description } +} + +/// Image EXIF metadata. Mirrors the useful subset of the internal `riviera.ExifMetadata` message. Fields are +/// best-effort and may be empty. +@objc +public class DBXRivieraApiExifMetadata: NSObject { + /// (no description) + @objc + public var imageWidth: NSNumber { swift.imageWidth as NSNumber } + /// (no description) + @objc + public var imageHeight: NSNumber { swift.imageHeight as NSNumber } + /// (no description) + @objc + public var cameraMake: String { swift.cameraMake } + /// (no description) + @objc + public var cameraModel: String { swift.cameraModel } + /// (no description) + @objc + public var lensModel: String { swift.lensModel } + /// Capture time in the EXIF-provided format (local time of the camera). + @objc + public var dateTimeOriginal: String { swift.dateTimeOriginal } + /// Timezone offset for `date_time_original`, e.g. "+09:00". + @objc + public var offsetTimeOriginal: String { swift.offsetTimeOriginal } + /// EXIF orientation value (1-8). See the EXIF spec; 1 is the normal upright orientation. + @objc + public var orientation: NSNumber { swift.orientation as NSNumber } + /// fraction in string form, e.g. "1/250" + @objc + public var exposureTime: String { swift.exposureTime } + /// (no description) + @objc + public var apertureValue: NSNumber { swift.apertureValue as NSNumber } + /// (no description) + @objc + public var isoSpeed: NSNumber { swift.isoSpeed as NSNumber } + /// e.g. "26.0 mm" + @objc + public var focalLength: String { swift.focalLength } + /// (no description) + @objc + public var megapixels: NSNumber { swift.megapixels as NSNumber } + /// (no description) + @objc + public var artist: String { swift.artist } + /// (no description) + @objc + public var copyright: String { swift.copyright } + /// (no description) + @objc + public var gpsMetadata: DBXRivieraApiExifGpsMetadata? { guard let swift = swift.gpsMetadata else { return nil } + return DBXRivieraApiExifGpsMetadata(swift: swift) + } + + @objc + public init( + imageWidth: NSNumber, + imageHeight: NSNumber, + cameraMake: String, + cameraModel: String, + lensModel: String, + dateTimeOriginal: String, + offsetTimeOriginal: String, + orientation: NSNumber, + exposureTime: String, + apertureValue: NSNumber, + isoSpeed: NSNumber, + focalLength: String, + megapixels: NSNumber, + artist: String, + copyright: String, + gpsMetadata: DBXRivieraApiExifGpsMetadata? + ) { + self.swift = Riviera.ApiExifMetadata( + imageWidth: imageWidth.uint32Value, + imageHeight: imageHeight.uint32Value, + cameraMake: cameraMake, + cameraModel: cameraModel, + lensModel: lensModel, + dateTimeOriginal: dateTimeOriginal, + offsetTimeOriginal: offsetTimeOriginal, + orientation: orientation.uint32Value, + exposureTime: exposureTime, + apertureValue: apertureValue.doubleValue, + isoSpeed: isoSpeed.uint32Value, + focalLength: focalLength, + megapixels: megapixels.doubleValue, + artist: artist, + copyright: copyright, + gpsMetadata: gpsMetadata?.swift + ) + } + + let swift: Riviera.ApiExifMetadata + + public init(swift: Riviera.ApiExifMetadata) { + self.swift = swift + } + + @objc + public override var description: String { swift.description } +} + +/// Audio/video container and per-stream metadata. Mirrors the useful subset of the internal `riviera.MediaMetadata` +/// message. +@objc +public class DBXRivieraApiMediaMetadata: NSObject { + /// (no description) + @objc + public var bitrateBps: NSNumber { swift.bitrateBps as NSNumber } + /// (no description) + @objc + public var durationS: NSNumber { swift.durationS as NSNumber } + /// Container-level creation time, when present. + @objc + public var creationTime: String { swift.creationTime } + /// (no description) + @objc + public var streams: [DBXRivieraApiMediaStream]? { swift.streams?.map { DBXRivieraApiMediaStream(swift: $0) } } + + @objc + public init(bitrateBps: NSNumber, durationS: NSNumber, creationTime: String, streams: [DBXRivieraApiMediaStream]?) { + self.swift = Riviera.ApiMediaMetadata( + bitrateBps: bitrateBps.uint64Value, + durationS: durationS.doubleValue, + creationTime: creationTime, + streams: streams?.map(\.swift) + ) + } + + let swift: Riviera.ApiMediaMetadata + + public init(swift: Riviera.ApiMediaMetadata) { + self.swift = swift + } + + @objc + public override var description: String { swift.description } +} + +/// A single audio or video stream within a media file. +@objc +public class DBXRivieraApiMediaStream: NSObject { + /// (no description) + @objc + public var index: NSNumber { swift.index as NSNumber } + /// "audio", "video", etc. + @objc + public var codecType: String { swift.codecType } + /// (no description) + @objc + public var codecName: String { swift.codecName } + /// (no description) + @objc + public var bitrateBps: NSNumber { swift.bitrateBps as NSNumber } + /// (no description) + @objc + public var durationS: NSNumber { swift.durationS as NSNumber } + /// Video-specific fields (zero / empty for audio streams). + @objc + public var width: NSNumber { swift.width as NSNumber } + /// (no description) + @objc + public var height: NSNumber { swift.height as NSNumber } + /// (no description) + @objc + public var framesPerSecond: NSNumber { swift.framesPerSecond as NSNumber } + /// (no description) + @objc + public var rotation: NSNumber { swift.rotation as NSNumber } + /// e.g. "16:9" + @objc + public var displayAspectRatio: String { swift.displayAspectRatio } + /// Audio-specific fields (zero / empty for video streams). + @objc + public var channels: NSNumber { swift.channels as NSNumber } + /// (no description) + @objc + public var channelLayout: String { swift.channelLayout } + /// (no description) + @objc + public var sampleRateS: NSNumber { swift.sampleRateS as NSNumber } + /// ISO 639 language code for the stream, when present. + @objc + public var languageIso639: String { swift.languageIso639 } + + @objc + public init( + index: NSNumber, + codecType: String, + codecName: String, + bitrateBps: NSNumber, + durationS: NSNumber, + width: NSNumber, + height: NSNumber, + framesPerSecond: NSNumber, + rotation: NSNumber, + displayAspectRatio: String, + channels: NSNumber, + channelLayout: String, + sampleRateS: NSNumber, + languageIso639: String + ) { + self.swift = Riviera.ApiMediaStream( + index: index.uint32Value, + codecType: codecType, + codecName: codecName, + bitrateBps: bitrateBps.uint64Value, + durationS: durationS.doubleValue, + width: width.uint32Value, + height: height.uint32Value, + framesPerSecond: framesPerSecond.doubleValue, + rotation: rotation.int32Value, + displayAspectRatio: displayAspectRatio, + channels: channels.uint32Value, + channelLayout: channelLayout, + sampleRateS: sampleRateS.uint64Value, + languageIso639: languageIso639 + ) + } + + let swift: Riviera.ApiMediaStream + + public init(swift: Riviera.ApiMediaStream) { + self.swift = swift + } + + @objc + public override var description: String { swift.description } +} + +/// MS Office document metadata. Mirrors the internal `riviera.OfficeMetadata` message. Some fields apply only to +/// specific document types (e.g. `slides` for PowerPoint, `words`/`pages` for Word). +@objc +public class DBXRivieraApiOfficeMetadata: NSObject { + /// (no description) + @objc + public var fileType: DBXRivieraOfficeFileType { DBXRivieraOfficeFileType(swift: swift.fileType) } + /// (no description) + @objc + public var creator: String { swift.creator } + /// (no description) + @objc + public var company: String { swift.company } + /// (no description) + @objc + public var title: String { swift.title } + /// (no description) + @objc + public var subject: String { swift.subject } + /// (no description) + @objc + public var keywords: String { swift.keywords } + /// (no description) + @objc + public var description_: String { swift.description_ } + /// (no description) + @objc + public var totalEditTimeMinutes: NSNumber { swift.totalEditTimeMinutes as NSNumber } + /// Word only. + @objc + public var pages: NSNumber { swift.pages as NSNumber } + /// (no description) + @objc + public var words: NSNumber { swift.words as NSNumber } + /// PowerPoint only. + @objc + public var slides: NSNumber { swift.slides as NSNumber } + /// (no description) + @objc + public var revisionNumber: String { swift.revisionNumber } + + @objc + public init( + fileType: DBXRivieraOfficeFileType, + creator: String, + company: String, + title: String, + subject: String, + keywords: String, + description_: String, + totalEditTimeMinutes: NSNumber, + pages: NSNumber, + words: NSNumber, + slides: NSNumber, + revisionNumber: String + ) { + self.swift = Riviera.ApiOfficeMetadata( + fileType: fileType.swift, + creator: creator, + company: company, + title: title, + subject: subject, + keywords: keywords, + description_: description_, + totalEditTimeMinutes: totalEditTimeMinutes.uint32Value, + pages: pages.uint32Value, + words: words.uint32Value, + slides: slides.uint32Value, + revisionNumber: revisionNumber + ) + } + + let swift: Riviera.ApiOfficeMetadata + + public init(swift: Riviera.ApiOfficeMetadata) { + self.swift = swift + } + + @objc + public override var description: String { swift.description } +} + +/// PDF document metadata. +@objc +public class DBXRivieraApiPdfMetadata: NSObject { + /// (no description) + @objc + public var pages: NSNumber { swift.pages as NSNumber } + /// Width / height of the first page, in PDF points. + @objc + public var width: NSNumber { swift.width as NSNumber } + /// (no description) + @objc + public var height: NSNumber { swift.height as NSNumber } + + @objc + public init(pages: NSNumber, width: NSNumber, height: NSNumber) { + self.swift = Riviera.ApiPdfMetadata(pages: pages.uint32Value, width: width.uint32Value, height: height.uint32Value) + } + + let swift: Riviera.ApiPdfMetadata + + public init(swift: Riviera.ApiPdfMetadata) { + self.swift = swift + } + + @objc + public override var description: String { swift.description } +} + +/// Structured transcript for APIv2 +@objc +public class DBXRivieraApiStructuredTranscript: NSObject { + /// (no description) + @objc + public var segments: [DBXRivieraApiTranscriptSegment]? { swift.segments?.map { DBXRivieraApiTranscriptSegment(swift: $0) } } + /// (no description) + @objc + public var transcriptLocale: String { swift.transcriptLocale } + + @objc + public init(segments: [DBXRivieraApiTranscriptSegment]?, transcriptLocale: String) { + self.swift = Riviera.ApiStructuredTranscript(segments: segments?.map(\.swift), transcriptLocale: transcriptLocale) + } + + let swift: Riviera.ApiStructuredTranscript + + public init(swift: Riviera.ApiStructuredTranscript) { + self.swift = swift + } + + @objc + public override var description: String { swift.description } +} + +/// Transcript segment for APIv2 +@objc +public class DBXRivieraApiTranscriptSegment: NSObject { + /// (no description) + @objc + public var text: String { swift.text } + /// (no description) + @objc + public var startTime: NSNumber { swift.startTime as NSNumber } + /// (no description) + @objc + public var endTime: NSNumber { swift.endTime as NSNumber } + + @objc + public init(text: String, startTime: NSNumber, endTime: NSNumber) { + self.swift = Riviera.ApiTranscriptSegment(text: text, startTime: startTime.doubleValue, endTime: endTime.doubleValue) + } + + let swift: Riviera.ApiTranscriptSegment + + public init(swift: Riviera.ApiTranscriptSegment) { + self.swift = swift + } + + @objc + public override var description: String { swift.description } +} + +/// Reason a transcript job failed. Returned in the `failed` variant of `GetTranscriptAsyncCheckResult`. This is a +/// semantic error union: the HTTP status of the poll request itself is unaffected (a poll that surfaces a failed +/// job is still a normal successful poll response). Callers should branch on the variant. +@objc +public class DBXRivieraContentApiV2Error: NSObject { + let swift: Riviera.ContentApiV2Error + + public init(swift: Riviera.ContentApiV2Error) { + self.swift = swift + } + + public static func factory(swift: Riviera.ContentApiV2Error) -> DBXRivieraContentApiV2Error { + switch swift { + case .serverError(let swiftArg): + let arg = swiftArg + return DBXRivieraContentApiV2ErrorServerError(arg) + case .userError(let swiftArg): + let arg = swiftArg + return DBXRivieraContentApiV2ErrorUserError(arg) + case .mediaDurationError(let swiftArg): + let arg = DBXRivieraMediaDurationError(swift: swiftArg) + return DBXRivieraContentApiV2ErrorMediaDurationError(arg) + case .noAudioError: + return DBXRivieraContentApiV2ErrorNoAudioError() + case .linkDownloadDisabledError: + return DBXRivieraContentApiV2ErrorLinkDownloadDisabledError() + case .sharedLinkPasswordProtected: + return DBXRivieraContentApiV2ErrorSharedLinkPasswordProtected() + case .limitExceededError: + return DBXRivieraContentApiV2ErrorLimitExceededError() + case .notFoundError: + return DBXRivieraContentApiV2ErrorNotFoundError() + case .isAFolderError: + return DBXRivieraContentApiV2ErrorIsAFolderError() + case .other: + return DBXRivieraContentApiV2ErrorOther() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asServerError: DBXRivieraContentApiV2ErrorServerError? { + self as? DBXRivieraContentApiV2ErrorServerError + } + + @objc + public var asUserError: DBXRivieraContentApiV2ErrorUserError? { + self as? DBXRivieraContentApiV2ErrorUserError + } + + @objc + public var asMediaDurationError: DBXRivieraContentApiV2ErrorMediaDurationError? { + self as? DBXRivieraContentApiV2ErrorMediaDurationError + } + + @objc + public var asNoAudioError: DBXRivieraContentApiV2ErrorNoAudioError? { + self as? DBXRivieraContentApiV2ErrorNoAudioError + } + + @objc + public var asLinkDownloadDisabledError: DBXRivieraContentApiV2ErrorLinkDownloadDisabledError? { + self as? DBXRivieraContentApiV2ErrorLinkDownloadDisabledError + } + + @objc + public var asSharedLinkPasswordProtected: DBXRivieraContentApiV2ErrorSharedLinkPasswordProtected? { + self as? DBXRivieraContentApiV2ErrorSharedLinkPasswordProtected + } + + @objc + public var asLimitExceededError: DBXRivieraContentApiV2ErrorLimitExceededError? { + self as? DBXRivieraContentApiV2ErrorLimitExceededError + } + + @objc + public var asNotFoundError: DBXRivieraContentApiV2ErrorNotFoundError? { + self as? DBXRivieraContentApiV2ErrorNotFoundError + } + + @objc + public var asIsAFolderError: DBXRivieraContentApiV2ErrorIsAFolderError? { + self as? DBXRivieraContentApiV2ErrorIsAFolderError + } + + @objc + public var asOther: DBXRivieraContentApiV2ErrorOther? { + self as? DBXRivieraContentApiV2ErrorOther + } +} + +/// An unexpected, typically transient, server-side failure. The string is a human-readable message; retrying +/// with backoff may succeed. +@objc +public class DBXRivieraContentApiV2ErrorServerError: DBXRivieraContentApiV2Error { + @objc + public var serverError: String + + @objc + public init(_ arg: String) { + self.serverError = arg + let swift = Riviera.ContentApiV2Error.serverError(arg) + super.init(swift: swift) + } +} + +/// The request could not be processed as supplied (a problem with the caller's input). The string is a +/// human-readable message; retrying the same request will not help. +@objc +public class DBXRivieraContentApiV2ErrorUserError: DBXRivieraContentApiV2Error { + @objc + public var userError: String + + @objc + public init(_ arg: String) { + self.userError = arg + let swift = Riviera.ContentApiV2Error.userError(arg) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXRivieraContentApiV2ErrorMediaDurationError: DBXRivieraContentApiV2Error { + @objc + public var mediaDurationError: DBXRivieraMediaDurationError + + @objc + public init(_ arg: DBXRivieraMediaDurationError) { + self.mediaDurationError = arg + let swift = Riviera.ContentApiV2Error.mediaDurationError(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXRivieraContentApiV2ErrorNoAudioError: DBXRivieraContentApiV2Error { + @objc + public init() { + let swift = Riviera.ContentApiV2Error.noAudioError + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXRivieraContentApiV2ErrorLinkDownloadDisabledError: DBXRivieraContentApiV2Error { + @objc + public init() { + let swift = Riviera.ContentApiV2Error.linkDownloadDisabledError + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXRivieraContentApiV2ErrorSharedLinkPasswordProtected: DBXRivieraContentApiV2Error { + @objc + public init() { + let swift = Riviera.ContentApiV2Error.sharedLinkPasswordProtected + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXRivieraContentApiV2ErrorLimitExceededError: DBXRivieraContentApiV2Error { + @objc + public init() { + let swift = Riviera.ContentApiV2Error.limitExceededError + super.init(swift: swift) + } +} + +/// The referenced file does not exist or is not accessible. +@objc +public class DBXRivieraContentApiV2ErrorNotFoundError: DBXRivieraContentApiV2Error { + @objc + public init() { + let swift = Riviera.ContentApiV2Error.notFoundError + super.init(swift: swift) + } +} + +/// The target is a folder, not a file. +@objc +public class DBXRivieraContentApiV2ErrorIsAFolderError: DBXRivieraContentApiV2Error { + @objc + public init() { + let swift = Riviera.ContentApiV2Error.isAFolderError + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXRivieraContentApiV2ErrorOther: DBXRivieraContentApiV2Error { + @objc + public init() { + let swift = Riviera.ContentApiV2Error.other + super.init(swift: swift) + } +} + +/// Objective-C compatible FileIdOrUrl union +@objc +public class DBXRivieraFileIdOrUrl: NSObject { + let swift: Riviera.FileIdOrUrl + + public init(swift: Riviera.FileIdOrUrl) { + self.swift = swift + } + + public static func factory(swift: Riviera.FileIdOrUrl) -> DBXRivieraFileIdOrUrl { + switch swift { + case .fileId(let swiftArg): + let arg = swiftArg + return DBXRivieraFileIdOrUrlFileId(arg) + case .url(let swiftArg): + let arg = swiftArg + return DBXRivieraFileIdOrUrlUrl(arg) + case .path(let swiftArg): + let arg = swiftArg + return DBXRivieraFileIdOrUrlPath(arg) + case .other: + return DBXRivieraFileIdOrUrlOther() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asFileId: DBXRivieraFileIdOrUrlFileId? { + self as? DBXRivieraFileIdOrUrlFileId + } + + @objc + public var asUrl: DBXRivieraFileIdOrUrlUrl? { + self as? DBXRivieraFileIdOrUrlUrl + } + + @objc + public var asPath: DBXRivieraFileIdOrUrlPath? { + self as? DBXRivieraFileIdOrUrlPath + } + + @objc + public var asOther: DBXRivieraFileIdOrUrlOther? { + self as? DBXRivieraFileIdOrUrlOther + } +} + +/// A Dropbox-issued file id (format: "id:") for a file the authenticated user has access to. +@objc +public class DBXRivieraFileIdOrUrlFileId: DBXRivieraFileIdOrUrl { + @objc + public var fileId: String + + @objc + public init(_ arg: String) { + self.fileId = arg + let swift = Riviera.FileIdOrUrl.fileId(arg) + super.init(swift: swift) + } +} + +/// Either a Dropbox shared link (www.dropbox.com) or an external HTTP or HTTPS URL pointing to a supported +/// file. - Dropbox shared links are resolved internally using the caller's authenticated identity and +/// the link's visibility / download settings. They therefore require an authenticated user context +/// (anonymous `url` requests against Dropbox links are rejected with an `access_error`). Links +/// protected by a password are rejected with `shared_link_password_protected`; links with downloads +/// disabled are rejected with `link_download_disabled_error`. - External URLs are fetched through the +/// backend's egress proxy and must point at a supported file extension. +@objc +public class DBXRivieraFileIdOrUrlUrl: DBXRivieraFileIdOrUrl { + @objc + public var url: String + + @objc + public init(_ arg: String) { + self.url = arg + let swift = Riviera.FileIdOrUrl.url(arg) + super.init(swift: swift) + } +} + +/// An absolute Dropbox path, e.g. "/folder/example.pdf". +@objc +public class DBXRivieraFileIdOrUrlPath: DBXRivieraFileIdOrUrl { + @objc + public var path: String + + @objc + public init(_ arg: String) { + self.path = arg + let swift = Riviera.FileIdOrUrl.path(arg) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXRivieraFileIdOrUrlOther: DBXRivieraFileIdOrUrl { + @objc + public init() { + let swift = Riviera.FileIdOrUrl.other + super.init(swift: swift) + } +} + +/// Arguments for the asynchronous `get_markdown_async` route. Exactly one of `file_id`, `path`, or `url` must be +/// supplied via `file_id_or_url` to identify the document to convert to markdown. +@objc +public class DBXRivieraGetMarkdownArgs: NSObject { + /// Identifier of the document to convert. Callers must set exactly one of the `FileIdOrUrl` variants. The + /// referenced file must be a document in a supported format (see the route description for the list); + /// requests against unsupported formats return `unsupported_format_error`. + @objc + public var fileIdOrUrl: DBXRivieraFileIdOrUrl? { guard let swift = swift.fileIdOrUrl else { return nil } + return DBXRivieraFileIdOrUrl(swift: swift) + } + + /// Enable OCR for PDF documents. Processing is slower when enabled. + @objc + public var enableOcr: NSNumber { swift.enableOcr as NSNumber } + /// When true, embed images as base64 data URIs in the markdown output. This can significantly increase output + /// size. + @objc + public var embedImages: NSNumber { swift.embedImages as NSNumber } + + @objc + public init(fileIdOrUrl: DBXRivieraFileIdOrUrl?, enableOcr: NSNumber, embedImages: NSNumber) { + self.swift = Riviera.GetMarkdownArgs(fileIdOrUrl: fileIdOrUrl?.swift, enableOcr: enableOcr.boolValue, embedImages: embedImages.boolValue) + } + + let swift: Riviera.GetMarkdownArgs + + public init(swift: Riviera.GetMarkdownArgs) { + self.swift = swift + } + + @objc + public override var description: String { swift.description } +} + +/// Result type for EventBus async check +@objc +public class DBXRivieraGetMarkdownAsyncCheckResult: NSObject { + let swift: Riviera.GetMarkdownAsyncCheckResult + + public init(swift: Riviera.GetMarkdownAsyncCheckResult) { + self.swift = swift + } + + public static func factory(swift: Riviera.GetMarkdownAsyncCheckResult) -> DBXRivieraGetMarkdownAsyncCheckResult { + switch swift { + case .inProgress: + return DBXRivieraGetMarkdownAsyncCheckResultInProgress() + case .complete(let swiftArg): + let arg = DBXRivieraGetMarkdownResult(swift: swiftArg) + return DBXRivieraGetMarkdownAsyncCheckResultComplete(arg) + case .failed(let swiftArg): + let arg = DBXRivieraMarkdownConversionApiV2Error(swift: swiftArg) + return DBXRivieraGetMarkdownAsyncCheckResultFailed(arg) + case .other: + return DBXRivieraGetMarkdownAsyncCheckResultOther() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asInProgress: DBXRivieraGetMarkdownAsyncCheckResultInProgress? { + self as? DBXRivieraGetMarkdownAsyncCheckResultInProgress + } + + @objc + public var asComplete: DBXRivieraGetMarkdownAsyncCheckResultComplete? { + self as? DBXRivieraGetMarkdownAsyncCheckResultComplete + } + + @objc + public var asFailed: DBXRivieraGetMarkdownAsyncCheckResultFailed? { + self as? DBXRivieraGetMarkdownAsyncCheckResultFailed + } + + @objc + public var asOther: DBXRivieraGetMarkdownAsyncCheckResultOther? { + self as? DBXRivieraGetMarkdownAsyncCheckResultOther + } +} + +/// An unspecified error. +@objc +public class DBXRivieraGetMarkdownAsyncCheckResultInProgress: DBXRivieraGetMarkdownAsyncCheckResult { + @objc + public init() { + let swift = Riviera.GetMarkdownAsyncCheckResult.inProgress + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXRivieraGetMarkdownAsyncCheckResultComplete: DBXRivieraGetMarkdownAsyncCheckResult { + @objc + public var complete: DBXRivieraGetMarkdownResult + + @objc + public init(_ arg: DBXRivieraGetMarkdownResult) { + self.complete = arg + let swift = Riviera.GetMarkdownAsyncCheckResult.complete(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXRivieraGetMarkdownAsyncCheckResultFailed: DBXRivieraGetMarkdownAsyncCheckResult { + @objc + public var failed: DBXRivieraMarkdownConversionApiV2Error + + @objc + public init(_ arg: DBXRivieraMarkdownConversionApiV2Error) { + self.failed = arg + let swift = Riviera.GetMarkdownAsyncCheckResult.failed(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXRivieraGetMarkdownAsyncCheckResultOther: DBXRivieraGetMarkdownAsyncCheckResult { + @objc + public init() { + let swift = Riviera.GetMarkdownAsyncCheckResult.other + super.init(swift: swift) + } +} + +/// Objective-C compatible GetMarkdownResult struct +@objc +public class DBXRivieraGetMarkdownResult: NSObject { + /// The converted markdown content + @objc + public var markdown: String { swift.markdown } + + @objc + public init(markdown: String) { + self.swift = Riviera.GetMarkdownResult(markdown: markdown) + } + + let swift: Riviera.GetMarkdownResult + + public init(swift: Riviera.GetMarkdownResult) { + self.swift = swift + } + + @objc + public override var description: String { swift.description } +} + +/// Arguments for the asynchronous `get_metadata_async` route. Exactly one of `file_id`, `path`, or `url` must be +/// supplied via `file_id_or_url` to identify the file whose metadata should be extracted. +@objc +public class DBXRivieraGetMetadataArgs: NSObject { + /// Identifier of the file to extract metadata from. Callers must set exactly one of the `FileIdOrUrl` variants. + /// The kind of metadata returned is determined by the file type: image files return EXIF metadata, + /// audio/video files return media metadata, PDFs return PDF metadata, and MS Office documents (docx, pptx, + /// xlsx) return Office metadata. See the route description for the supported formats. Requests against + /// unsupported formats return `unsupported_format_error`. + @objc + public var fileIdOrUrl: DBXRivieraFileIdOrUrl? { guard let swift = swift.fileIdOrUrl else { return nil } + return DBXRivieraFileIdOrUrl(swift: swift) + } + + @objc + public init(fileIdOrUrl: DBXRivieraFileIdOrUrl?) { + self.swift = Riviera.GetMetadataArgs(fileIdOrUrl: fileIdOrUrl?.swift) + } + + let swift: Riviera.GetMetadataArgs + + public init(swift: Riviera.GetMetadataArgs) { + self.swift = swift + } + + @objc + public override var description: String { swift.description } +} + +/// Result type for EventBus async check - must end in "CheckResult" +@objc +public class DBXRivieraGetMetadataAsyncCheckResult: NSObject { + let swift: Riviera.GetMetadataAsyncCheckResult + + public init(swift: Riviera.GetMetadataAsyncCheckResult) { + self.swift = swift + } + + public static func factory(swift: Riviera.GetMetadataAsyncCheckResult) -> DBXRivieraGetMetadataAsyncCheckResult { + switch swift { + case .inProgress: + return DBXRivieraGetMetadataAsyncCheckResultInProgress() + case .complete(let swiftArg): + let arg = DBXRivieraGetMetadataResult(swift: swiftArg) + return DBXRivieraGetMetadataAsyncCheckResultComplete(arg) + case .failed(let swiftArg): + let arg = DBXRivieraMetadataExtractionApiV2Error(swift: swiftArg) + return DBXRivieraGetMetadataAsyncCheckResultFailed(arg) + case .other: + return DBXRivieraGetMetadataAsyncCheckResultOther() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asInProgress: DBXRivieraGetMetadataAsyncCheckResultInProgress? { + self as? DBXRivieraGetMetadataAsyncCheckResultInProgress + } + + @objc + public var asComplete: DBXRivieraGetMetadataAsyncCheckResultComplete? { + self as? DBXRivieraGetMetadataAsyncCheckResultComplete + } + + @objc + public var asFailed: DBXRivieraGetMetadataAsyncCheckResultFailed? { + self as? DBXRivieraGetMetadataAsyncCheckResultFailed + } + + @objc + public var asOther: DBXRivieraGetMetadataAsyncCheckResultOther? { + self as? DBXRivieraGetMetadataAsyncCheckResultOther + } +} + +/// An unspecified error. +@objc +public class DBXRivieraGetMetadataAsyncCheckResultInProgress: DBXRivieraGetMetadataAsyncCheckResult { + @objc + public init() { + let swift = Riviera.GetMetadataAsyncCheckResult.inProgress + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXRivieraGetMetadataAsyncCheckResultComplete: DBXRivieraGetMetadataAsyncCheckResult { + @objc + public var complete: DBXRivieraGetMetadataResult + + @objc + public init(_ arg: DBXRivieraGetMetadataResult) { + self.complete = arg + let swift = Riviera.GetMetadataAsyncCheckResult.complete(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXRivieraGetMetadataAsyncCheckResultFailed: DBXRivieraGetMetadataAsyncCheckResult { + @objc + public var failed: DBXRivieraMetadataExtractionApiV2Error + + @objc + public init(_ arg: DBXRivieraMetadataExtractionApiV2Error) { + self.failed = arg + let swift = Riviera.GetMetadataAsyncCheckResult.failed(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXRivieraGetMetadataAsyncCheckResultOther: DBXRivieraGetMetadataAsyncCheckResult { + @objc + public init() { + let swift = Riviera.GetMetadataAsyncCheckResult.other + super.init(swift: swift) + } +} + +/// Objective-C compatible GetMetadataResult struct +@objc +public class DBXRivieraGetMetadataResult: NSObject { + /// The kind of metadata that was extracted for the requested file. Callers should read the matching field of + /// the `metadata` oneof. + @objc + public var metadataType: DBXRivieraMetadataType { DBXRivieraMetadataType(swift: swift.metadataType) } + /// (no description) + @objc + public var metadata: DBXRivieraMetadataUnion? { guard let swift = swift.metadata else { return nil } + return DBXRivieraMetadataUnion(swift: swift) + } + + @objc + public init(metadataType: DBXRivieraMetadataType, metadata: DBXRivieraMetadataUnion?) { + self.swift = Riviera.GetMetadataResult(metadataType: metadataType.swift, metadata: metadata?.swift) + } + + let swift: Riviera.GetMetadataResult + + public init(swift: Riviera.GetMetadataResult) { + self.swift = swift + } + + @objc + public override var description: String { swift.description } +} + +/// Arguments for the asynchronous `get_transcript_async` route. Exactly one of `file_id`, `path`, or `url` must be +/// supplied via `file_id_or_url` to identify the audio or video asset to transcribe. +@objc +public class DBXRivieraGetTranscriptArgs: NSObject { + /// Identifier of the media asset to transcribe. Callers must set exactly one of the `FileIdOrUrl` variants. The + /// referenced asset must be an audio or video file in a supported format (see the route description for the + /// list); requests against files with no audio track return a `no_audio_error`. + @objc + public var fileIdOrUrl: DBXRivieraFileIdOrUrl? { guard let swift = swift.fileIdOrUrl else { return nil } + return DBXRivieraFileIdOrUrl(swift: swift) + } + + /// Granularity of the time offsets returned for each transcript segment. Defaults to `SENTENCE` when the field + /// is omitted. - SENTENCE: one segment per spoken sentence (recommended). - WORD: one segment per word, + /// useful for fine-grained alignment such as captioning or highlight-as-you-listen experiences. + @objc + public var timestampLevel: DBXRivieraTimestampLevel { DBXRivieraTimestampLevel(swift: swift.timestampLevel) } + /// Comma-delimited list of non-lexical filler words to preserve in the transcript output, e.g. `"uh, ah, uhm"`. + /// By default these fillers are stripped. Unrecognized tokens are ignored. Leave empty to use the default + /// filtering behavior. + @objc + public var includedSpecialWords: String { swift.includedSpecialWords } + /// Optional ISO 639-1 two-letter language code hinting the spoken language of the source audio (e.g. "en", + /// "ja"). When empty, the service auto-detects the language; supplying a hint improves accuracy and latency + /// for short or ambiguous clips. Unsupported languages fall back to auto-detection. + @objc + public var audioLanguage: String { swift.audioLanguage } + + @objc + public init(fileIdOrUrl: DBXRivieraFileIdOrUrl?, timestampLevel: DBXRivieraTimestampLevel, includedSpecialWords: String, audioLanguage: String) { + self.swift = Riviera.GetTranscriptArgs( + fileIdOrUrl: fileIdOrUrl?.swift, + timestampLevel: timestampLevel.swift, + includedSpecialWords: includedSpecialWords, + audioLanguage: audioLanguage + ) + } + + let swift: Riviera.GetTranscriptArgs + + public init(swift: Riviera.GetTranscriptArgs) { + self.swift = swift + } + + @objc + public override var description: String { swift.description } +} + +/// Result type for EventBus async check - must end in "CheckResult" +@objc +public class DBXRivieraGetTranscriptAsyncCheckResult: NSObject { + let swift: Riviera.GetTranscriptAsyncCheckResult + + public init(swift: Riviera.GetTranscriptAsyncCheckResult) { + self.swift = swift + } + + public static func factory(swift: Riviera.GetTranscriptAsyncCheckResult) -> DBXRivieraGetTranscriptAsyncCheckResult { + switch swift { + case .inProgress: + return DBXRivieraGetTranscriptAsyncCheckResultInProgress() + case .complete(let swiftArg): + let arg = DBXRivieraGetTranscriptResult(swift: swiftArg) + return DBXRivieraGetTranscriptAsyncCheckResultComplete(arg) + case .failed(let swiftArg): + let arg = DBXRivieraContentApiV2Error(swift: swiftArg) + return DBXRivieraGetTranscriptAsyncCheckResultFailed(arg) + case .other: + return DBXRivieraGetTranscriptAsyncCheckResultOther() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asInProgress: DBXRivieraGetTranscriptAsyncCheckResultInProgress? { + self as? DBXRivieraGetTranscriptAsyncCheckResultInProgress + } + + @objc + public var asComplete: DBXRivieraGetTranscriptAsyncCheckResultComplete? { + self as? DBXRivieraGetTranscriptAsyncCheckResultComplete + } + + @objc + public var asFailed: DBXRivieraGetTranscriptAsyncCheckResultFailed? { + self as? DBXRivieraGetTranscriptAsyncCheckResultFailed + } + + @objc + public var asOther: DBXRivieraGetTranscriptAsyncCheckResultOther? { + self as? DBXRivieraGetTranscriptAsyncCheckResultOther + } +} + +/// An unspecified error. +@objc +public class DBXRivieraGetTranscriptAsyncCheckResultInProgress: DBXRivieraGetTranscriptAsyncCheckResult { + @objc + public init() { + let swift = Riviera.GetTranscriptAsyncCheckResult.inProgress + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXRivieraGetTranscriptAsyncCheckResultComplete: DBXRivieraGetTranscriptAsyncCheckResult { + @objc + public var complete: DBXRivieraGetTranscriptResult + + @objc + public init(_ arg: DBXRivieraGetTranscriptResult) { + self.complete = arg + let swift = Riviera.GetTranscriptAsyncCheckResult.complete(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXRivieraGetTranscriptAsyncCheckResultFailed: DBXRivieraGetTranscriptAsyncCheckResult { + @objc + public var failed: DBXRivieraContentApiV2Error + + @objc + public init(_ arg: DBXRivieraContentApiV2Error) { + self.failed = arg + let swift = Riviera.GetTranscriptAsyncCheckResult.failed(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXRivieraGetTranscriptAsyncCheckResultOther: DBXRivieraGetTranscriptAsyncCheckResult { + @objc + public init() { + let swift = Riviera.GetTranscriptAsyncCheckResult.other + super.init(swift: swift) + } +} + +/// Objective-C compatible GetTranscriptResult struct +@objc +public class DBXRivieraGetTranscriptResult: NSObject { + /// The structured transcript produced for the requested media asset, with per-segment text, start/end offsets + /// (in seconds from the beginning of the media), and the detected or caller-supplied locale. + @objc + public var structuredTranscript: DBXRivieraApiStructuredTranscript? { guard let swift = swift.structuredTranscript else { return nil } + return DBXRivieraApiStructuredTranscript(swift: swift) + } + + @objc + public init(structuredTranscript: DBXRivieraApiStructuredTranscript?) { + self.swift = Riviera.GetTranscriptResult(structuredTranscript: structuredTranscript?.swift) + } + + let swift: Riviera.GetTranscriptResult + + public init(swift: Riviera.GetTranscriptResult) { + self.swift = swift + } + + @objc + public override var description: String { swift.description } +} + +/// Reason a markdown conversion job failed. Returned in the `failed` variant of `GetMarkdownAsyncCheckResult`. This +/// is a semantic error union: the HTTP status of the poll request itself is unaffected (a poll that surfaces a +/// failed job is still a normal successful poll response). Callers should branch on the variant. +@objc +public class DBXRivieraMarkdownConversionApiV2Error: NSObject { + let swift: Riviera.MarkdownConversionApiV2Error + + public init(swift: Riviera.MarkdownConversionApiV2Error) { + self.swift = swift + } + + public static func factory(swift: Riviera.MarkdownConversionApiV2Error) -> DBXRivieraMarkdownConversionApiV2Error { + switch swift { + case .serverError(let swiftArg): + let arg = swiftArg + return DBXRivieraMarkdownConversionApiV2ErrorServerError(arg) + case .userError(let swiftArg): + let arg = swiftArg + return DBXRivieraMarkdownConversionApiV2ErrorUserError(arg) + case .unsupportedFormatError: + return DBXRivieraMarkdownConversionApiV2ErrorUnsupportedFormatError() + case .linkDownloadDisabledError: + return DBXRivieraMarkdownConversionApiV2ErrorLinkDownloadDisabledError() + case .sharedLinkPasswordProtected: + return DBXRivieraMarkdownConversionApiV2ErrorSharedLinkPasswordProtected() + case .limitExceededError: + return DBXRivieraMarkdownConversionApiV2ErrorLimitExceededError() + case .conversionFailureError: + return DBXRivieraMarkdownConversionApiV2ErrorConversionFailureError() + case .notFoundError: + return DBXRivieraMarkdownConversionApiV2ErrorNotFoundError() + case .isAFolderError: + return DBXRivieraMarkdownConversionApiV2ErrorIsAFolderError() + case .other: + return DBXRivieraMarkdownConversionApiV2ErrorOther() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asServerError: DBXRivieraMarkdownConversionApiV2ErrorServerError? { + self as? DBXRivieraMarkdownConversionApiV2ErrorServerError + } + + @objc + public var asUserError: DBXRivieraMarkdownConversionApiV2ErrorUserError? { + self as? DBXRivieraMarkdownConversionApiV2ErrorUserError + } + + @objc + public var asUnsupportedFormatError: DBXRivieraMarkdownConversionApiV2ErrorUnsupportedFormatError? { + self as? DBXRivieraMarkdownConversionApiV2ErrorUnsupportedFormatError + } + + @objc + public var asLinkDownloadDisabledError: DBXRivieraMarkdownConversionApiV2ErrorLinkDownloadDisabledError? { + self as? DBXRivieraMarkdownConversionApiV2ErrorLinkDownloadDisabledError + } + + @objc + public var asSharedLinkPasswordProtected: DBXRivieraMarkdownConversionApiV2ErrorSharedLinkPasswordProtected? { + self as? DBXRivieraMarkdownConversionApiV2ErrorSharedLinkPasswordProtected + } + + @objc + public var asLimitExceededError: DBXRivieraMarkdownConversionApiV2ErrorLimitExceededError? { + self as? DBXRivieraMarkdownConversionApiV2ErrorLimitExceededError + } + + @objc + public var asConversionFailureError: DBXRivieraMarkdownConversionApiV2ErrorConversionFailureError? { + self as? DBXRivieraMarkdownConversionApiV2ErrorConversionFailureError + } + + @objc + public var asNotFoundError: DBXRivieraMarkdownConversionApiV2ErrorNotFoundError? { + self as? DBXRivieraMarkdownConversionApiV2ErrorNotFoundError + } + + @objc + public var asIsAFolderError: DBXRivieraMarkdownConversionApiV2ErrorIsAFolderError? { + self as? DBXRivieraMarkdownConversionApiV2ErrorIsAFolderError + } + + @objc + public var asOther: DBXRivieraMarkdownConversionApiV2ErrorOther? { + self as? DBXRivieraMarkdownConversionApiV2ErrorOther + } +} + +/// An unexpected, typically transient, server-side failure. The string is a human-readable message; retrying +/// with backoff may succeed. +@objc +public class DBXRivieraMarkdownConversionApiV2ErrorServerError: DBXRivieraMarkdownConversionApiV2Error { + @objc + public var serverError: String + + @objc + public init(_ arg: String) { + self.serverError = arg + let swift = Riviera.MarkdownConversionApiV2Error.serverError(arg) + super.init(swift: swift) + } +} + +/// The request could not be processed as supplied (a problem with the caller's input). The string is a +/// human-readable message; retrying the same request will not help. +@objc +public class DBXRivieraMarkdownConversionApiV2ErrorUserError: DBXRivieraMarkdownConversionApiV2Error { + @objc + public var userError: String + + @objc + public init(_ arg: String) { + self.userError = arg + let swift = Riviera.MarkdownConversionApiV2Error.userError(arg) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXRivieraMarkdownConversionApiV2ErrorUnsupportedFormatError: DBXRivieraMarkdownConversionApiV2Error { + @objc + public init() { + let swift = Riviera.MarkdownConversionApiV2Error.unsupportedFormatError + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXRivieraMarkdownConversionApiV2ErrorLinkDownloadDisabledError: DBXRivieraMarkdownConversionApiV2Error { + @objc + public init() { + let swift = Riviera.MarkdownConversionApiV2Error.linkDownloadDisabledError + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXRivieraMarkdownConversionApiV2ErrorSharedLinkPasswordProtected: DBXRivieraMarkdownConversionApiV2Error { + @objc + public init() { + let swift = Riviera.MarkdownConversionApiV2Error.sharedLinkPasswordProtected + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXRivieraMarkdownConversionApiV2ErrorLimitExceededError: DBXRivieraMarkdownConversionApiV2Error { + @objc + public init() { + let swift = Riviera.MarkdownConversionApiV2Error.limitExceededError + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXRivieraMarkdownConversionApiV2ErrorConversionFailureError: DBXRivieraMarkdownConversionApiV2Error { + @objc + public init() { + let swift = Riviera.MarkdownConversionApiV2Error.conversionFailureError + super.init(swift: swift) + } +} + +/// The referenced file does not exist or is not accessible. +@objc +public class DBXRivieraMarkdownConversionApiV2ErrorNotFoundError: DBXRivieraMarkdownConversionApiV2Error { + @objc + public init() { + let swift = Riviera.MarkdownConversionApiV2Error.notFoundError + super.init(swift: swift) + } +} + +/// The target is a folder, not a file. +@objc +public class DBXRivieraMarkdownConversionApiV2ErrorIsAFolderError: DBXRivieraMarkdownConversionApiV2Error { + @objc + public init() { + let swift = Riviera.MarkdownConversionApiV2Error.isAFolderError + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXRivieraMarkdownConversionApiV2ErrorOther: DBXRivieraMarkdownConversionApiV2Error { + @objc + public init() { + let swift = Riviera.MarkdownConversionApiV2Error.other + super.init(swift: swift) + } +} + +/// Objective-C compatible MediaDurationError struct +@objc +public class DBXRivieraMediaDurationError: NSObject { + /// (no description) + @objc + public var limit: NSNumber { swift.limit as NSNumber } + + @objc + public init(limit: NSNumber) { + self.swift = Riviera.MediaDurationError(limit: limit.int32Value) + } + + let swift: Riviera.MediaDurationError + + public init(swift: Riviera.MediaDurationError) { + self.swift = swift + } + + @objc + public override var description: String { swift.description } +} + +/// Reason a metadata extraction job failed. Returned in the `failed` variant of `GetMetadataAsyncCheckResult`. This +/// is a semantic error union: the HTTP status of the poll request itself is unaffected (a poll that surfaces a +/// failed job is still a normal successful poll response). Callers should branch on the variant. +@objc +public class DBXRivieraMetadataExtractionApiV2Error: NSObject { + let swift: Riviera.MetadataExtractionApiV2Error + + public init(swift: Riviera.MetadataExtractionApiV2Error) { + self.swift = swift + } + + public static func factory(swift: Riviera.MetadataExtractionApiV2Error) -> DBXRivieraMetadataExtractionApiV2Error { + switch swift { + case .serverError(let swiftArg): + let arg = swiftArg + return DBXRivieraMetadataExtractionApiV2ErrorServerError(arg) + case .userError(let swiftArg): + let arg = swiftArg + return DBXRivieraMetadataExtractionApiV2ErrorUserError(arg) + case .unsupportedFormatError: + return DBXRivieraMetadataExtractionApiV2ErrorUnsupportedFormatError() + case .linkDownloadDisabledError: + return DBXRivieraMetadataExtractionApiV2ErrorLinkDownloadDisabledError() + case .sharedLinkPasswordProtected: + return DBXRivieraMetadataExtractionApiV2ErrorSharedLinkPasswordProtected() + case .limitExceededError: + return DBXRivieraMetadataExtractionApiV2ErrorLimitExceededError() + case .conversionFailureError: + return DBXRivieraMetadataExtractionApiV2ErrorConversionFailureError() + case .notFoundError: + return DBXRivieraMetadataExtractionApiV2ErrorNotFoundError() + case .isAFolderError: + return DBXRivieraMetadataExtractionApiV2ErrorIsAFolderError() + case .other: + return DBXRivieraMetadataExtractionApiV2ErrorOther() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asServerError: DBXRivieraMetadataExtractionApiV2ErrorServerError? { + self as? DBXRivieraMetadataExtractionApiV2ErrorServerError + } + + @objc + public var asUserError: DBXRivieraMetadataExtractionApiV2ErrorUserError? { + self as? DBXRivieraMetadataExtractionApiV2ErrorUserError + } + + @objc + public var asUnsupportedFormatError: DBXRivieraMetadataExtractionApiV2ErrorUnsupportedFormatError? { + self as? DBXRivieraMetadataExtractionApiV2ErrorUnsupportedFormatError + } + + @objc + public var asLinkDownloadDisabledError: DBXRivieraMetadataExtractionApiV2ErrorLinkDownloadDisabledError? { + self as? DBXRivieraMetadataExtractionApiV2ErrorLinkDownloadDisabledError + } + + @objc + public var asSharedLinkPasswordProtected: DBXRivieraMetadataExtractionApiV2ErrorSharedLinkPasswordProtected? { + self as? DBXRivieraMetadataExtractionApiV2ErrorSharedLinkPasswordProtected + } + + @objc + public var asLimitExceededError: DBXRivieraMetadataExtractionApiV2ErrorLimitExceededError? { + self as? DBXRivieraMetadataExtractionApiV2ErrorLimitExceededError + } + + @objc + public var asConversionFailureError: DBXRivieraMetadataExtractionApiV2ErrorConversionFailureError? { + self as? DBXRivieraMetadataExtractionApiV2ErrorConversionFailureError + } + + @objc + public var asNotFoundError: DBXRivieraMetadataExtractionApiV2ErrorNotFoundError? { + self as? DBXRivieraMetadataExtractionApiV2ErrorNotFoundError + } + + @objc + public var asIsAFolderError: DBXRivieraMetadataExtractionApiV2ErrorIsAFolderError? { + self as? DBXRivieraMetadataExtractionApiV2ErrorIsAFolderError + } + + @objc + public var asOther: DBXRivieraMetadataExtractionApiV2ErrorOther? { + self as? DBXRivieraMetadataExtractionApiV2ErrorOther + } +} + +/// An unexpected, typically transient, server-side failure. The string is a human-readable message; retrying +/// with backoff may succeed. +@objc +public class DBXRivieraMetadataExtractionApiV2ErrorServerError: DBXRivieraMetadataExtractionApiV2Error { + @objc + public var serverError: String + + @objc + public init(_ arg: String) { + self.serverError = arg + let swift = Riviera.MetadataExtractionApiV2Error.serverError(arg) + super.init(swift: swift) + } +} + +/// The request could not be processed as supplied (a problem with the caller's input). The string is a +/// human-readable message; retrying the same request will not help. +@objc +public class DBXRivieraMetadataExtractionApiV2ErrorUserError: DBXRivieraMetadataExtractionApiV2Error { + @objc + public var userError: String + + @objc + public init(_ arg: String) { + self.userError = arg + let swift = Riviera.MetadataExtractionApiV2Error.userError(arg) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXRivieraMetadataExtractionApiV2ErrorUnsupportedFormatError: DBXRivieraMetadataExtractionApiV2Error { + @objc + public init() { + let swift = Riviera.MetadataExtractionApiV2Error.unsupportedFormatError + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXRivieraMetadataExtractionApiV2ErrorLinkDownloadDisabledError: DBXRivieraMetadataExtractionApiV2Error { + @objc + public init() { + let swift = Riviera.MetadataExtractionApiV2Error.linkDownloadDisabledError + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXRivieraMetadataExtractionApiV2ErrorSharedLinkPasswordProtected: DBXRivieraMetadataExtractionApiV2Error { + @objc + public init() { + let swift = Riviera.MetadataExtractionApiV2Error.sharedLinkPasswordProtected + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXRivieraMetadataExtractionApiV2ErrorLimitExceededError: DBXRivieraMetadataExtractionApiV2Error { + @objc + public init() { + let swift = Riviera.MetadataExtractionApiV2Error.limitExceededError + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXRivieraMetadataExtractionApiV2ErrorConversionFailureError: DBXRivieraMetadataExtractionApiV2Error { + @objc + public init() { + let swift = Riviera.MetadataExtractionApiV2Error.conversionFailureError + super.init(swift: swift) + } +} + +/// The referenced file does not exist or is not accessible. +@objc +public class DBXRivieraMetadataExtractionApiV2ErrorNotFoundError: DBXRivieraMetadataExtractionApiV2Error { + @objc + public init() { + let swift = Riviera.MetadataExtractionApiV2Error.notFoundError + super.init(swift: swift) + } +} + +/// The target is a folder, not a file. +@objc +public class DBXRivieraMetadataExtractionApiV2ErrorIsAFolderError: DBXRivieraMetadataExtractionApiV2Error { + @objc + public init() { + let swift = Riviera.MetadataExtractionApiV2Error.isAFolderError + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXRivieraMetadataExtractionApiV2ErrorOther: DBXRivieraMetadataExtractionApiV2Error { + @objc + public init() { + let swift = Riviera.MetadataExtractionApiV2Error.other + super.init(swift: swift) + } +} + +/// Which metadata variant is populated in a `GetMetadataResult`, derived from the file type. +@objc +public class DBXRivieraMetadataType: NSObject { + let swift: Riviera.MetadataType + + public init(swift: Riviera.MetadataType) { + self.swift = swift + } + + public static func factory(swift: Riviera.MetadataType) -> DBXRivieraMetadataType { + switch swift { + case .metadataTypeUnknown: + return DBXRivieraMetadataTypeMetadataTypeUnknown() + case .metadataTypeExif: + return DBXRivieraMetadataTypeMetadataTypeExif() + case .metadataTypeMedia: + return DBXRivieraMetadataTypeMetadataTypeMedia() + case .metadataTypePdf: + return DBXRivieraMetadataTypeMetadataTypePdf() + case .metadataTypeOffice: + return DBXRivieraMetadataTypeMetadataTypeOffice() + case .other: + return DBXRivieraMetadataTypeOther() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asMetadataTypeUnknown: DBXRivieraMetadataTypeMetadataTypeUnknown? { + self as? DBXRivieraMetadataTypeMetadataTypeUnknown + } + + @objc + public var asMetadataTypeExif: DBXRivieraMetadataTypeMetadataTypeExif? { + self as? DBXRivieraMetadataTypeMetadataTypeExif + } + + @objc + public var asMetadataTypeMedia: DBXRivieraMetadataTypeMetadataTypeMedia? { + self as? DBXRivieraMetadataTypeMetadataTypeMedia + } + + @objc + public var asMetadataTypePdf: DBXRivieraMetadataTypeMetadataTypePdf? { + self as? DBXRivieraMetadataTypeMetadataTypePdf + } + + @objc + public var asMetadataTypeOffice: DBXRivieraMetadataTypeMetadataTypeOffice? { + self as? DBXRivieraMetadataTypeMetadataTypeOffice + } + + @objc + public var asOther: DBXRivieraMetadataTypeOther? { + self as? DBXRivieraMetadataTypeOther + } +} + +/// An unspecified error. +@objc +public class DBXRivieraMetadataTypeMetadataTypeUnknown: DBXRivieraMetadataType { + @objc + public init() { + let swift = Riviera.MetadataType.metadataTypeUnknown + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXRivieraMetadataTypeMetadataTypeExif: DBXRivieraMetadataType { + @objc + public init() { + let swift = Riviera.MetadataType.metadataTypeExif + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXRivieraMetadataTypeMetadataTypeMedia: DBXRivieraMetadataType { + @objc + public init() { + let swift = Riviera.MetadataType.metadataTypeMedia + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXRivieraMetadataTypeMetadataTypePdf: DBXRivieraMetadataType { + @objc + public init() { + let swift = Riviera.MetadataType.metadataTypePdf + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXRivieraMetadataTypeMetadataTypeOffice: DBXRivieraMetadataType { + @objc + public init() { + let swift = Riviera.MetadataType.metadataTypeOffice + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXRivieraMetadataTypeOther: DBXRivieraMetadataType { + @objc + public init() { + let swift = Riviera.MetadataType.other + super.init(swift: swift) + } +} + +/// The kind of MS Office document that produced an `ApiOfficeMetadata` result. +@objc +public class DBXRivieraOfficeFileType: NSObject { + let swift: Riviera.OfficeFileType + + public init(swift: Riviera.OfficeFileType) { + self.swift = swift + } + + public static func factory(swift: Riviera.OfficeFileType) -> DBXRivieraOfficeFileType { + switch swift { + case .officeFiletypeUnknown: + return DBXRivieraOfficeFileTypeOfficeFiletypeUnknown() + case .officeFiletypeWord: + return DBXRivieraOfficeFileTypeOfficeFiletypeWord() + case .officeFiletypePowerpoint: + return DBXRivieraOfficeFileTypeOfficeFiletypePowerpoint() + case .officeFiletypeExcel: + return DBXRivieraOfficeFileTypeOfficeFiletypeExcel() + case .other: + return DBXRivieraOfficeFileTypeOther() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asOfficeFiletypeUnknown: DBXRivieraOfficeFileTypeOfficeFiletypeUnknown? { + self as? DBXRivieraOfficeFileTypeOfficeFiletypeUnknown + } + + @objc + public var asOfficeFiletypeWord: DBXRivieraOfficeFileTypeOfficeFiletypeWord? { + self as? DBXRivieraOfficeFileTypeOfficeFiletypeWord + } + + @objc + public var asOfficeFiletypePowerpoint: DBXRivieraOfficeFileTypeOfficeFiletypePowerpoint? { + self as? DBXRivieraOfficeFileTypeOfficeFiletypePowerpoint + } + + @objc + public var asOfficeFiletypeExcel: DBXRivieraOfficeFileTypeOfficeFiletypeExcel? { + self as? DBXRivieraOfficeFileTypeOfficeFiletypeExcel + } + + @objc + public var asOther: DBXRivieraOfficeFileTypeOther? { + self as? DBXRivieraOfficeFileTypeOther + } +} + +/// An unspecified error. +@objc +public class DBXRivieraOfficeFileTypeOfficeFiletypeUnknown: DBXRivieraOfficeFileType { + @objc + public init() { + let swift = Riviera.OfficeFileType.officeFiletypeUnknown + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXRivieraOfficeFileTypeOfficeFiletypeWord: DBXRivieraOfficeFileType { + @objc + public init() { + let swift = Riviera.OfficeFileType.officeFiletypeWord + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXRivieraOfficeFileTypeOfficeFiletypePowerpoint: DBXRivieraOfficeFileType { + @objc + public init() { + let swift = Riviera.OfficeFileType.officeFiletypePowerpoint + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXRivieraOfficeFileTypeOfficeFiletypeExcel: DBXRivieraOfficeFileType { + @objc + public init() { + let swift = Riviera.OfficeFileType.officeFiletypeExcel + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXRivieraOfficeFileTypeOther: DBXRivieraOfficeFileType { + @objc + public init() { + let swift = Riviera.OfficeFileType.other + super.init(swift: swift) + } +} + +/// Objective-C compatible TimestampLevel union +@objc +public class DBXRivieraTimestampLevel: NSObject { + let swift: Riviera.TimestampLevel + + public init(swift: Riviera.TimestampLevel) { + self.swift = swift + } + + public static func factory(swift: Riviera.TimestampLevel) -> DBXRivieraTimestampLevel { + switch swift { + case .sentence: + return DBXRivieraTimestampLevelSentence() + case .word: + return DBXRivieraTimestampLevelWord() + case .other: + return DBXRivieraTimestampLevelOther() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asSentence: DBXRivieraTimestampLevelSentence? { + self as? DBXRivieraTimestampLevelSentence + } + + @objc + public var asWord: DBXRivieraTimestampLevelWord? { + self as? DBXRivieraTimestampLevelWord + } + + @objc + public var asOther: DBXRivieraTimestampLevelOther? { + self as? DBXRivieraTimestampLevelOther + } +} + +/// An unspecified error. +@objc +public class DBXRivieraTimestampLevelSentence: DBXRivieraTimestampLevel { + @objc + public init() { + let swift = Riviera.TimestampLevel.sentence + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXRivieraTimestampLevelWord: DBXRivieraTimestampLevel { + @objc + public init() { + let swift = Riviera.TimestampLevel.word + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXRivieraTimestampLevelOther: DBXRivieraTimestampLevel { + @objc + public init() { + let swift = Riviera.TimestampLevel.other + super.init(swift: swift) + } +} + +/// Exactly one variant is populated, corresponding to `metadata_type`. +@objc +public class DBXRivieraMetadataUnion: NSObject { + let swift: Riviera.MetadataUnion + + public init(swift: Riviera.MetadataUnion) { + self.swift = swift + } + + public static func factory(swift: Riviera.MetadataUnion) -> DBXRivieraMetadataUnion { + switch swift { + case .exif(let swiftArg): + let arg = DBXRivieraApiExifMetadata(swift: swiftArg) + return DBXRivieraMetadataUnionExif(arg) + case .media(let swiftArg): + let arg = DBXRivieraApiMediaMetadata(swift: swiftArg) + return DBXRivieraMetadataUnionMedia(arg) + case .pdf(let swiftArg): + let arg = DBXRivieraApiPdfMetadata(swift: swiftArg) + return DBXRivieraMetadataUnionPdf(arg) + case .office(let swiftArg): + let arg = DBXRivieraApiOfficeMetadata(swift: swiftArg) + return DBXRivieraMetadataUnionOffice(arg) + case .other: + return DBXRivieraMetadataUnionOther() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asExif: DBXRivieraMetadataUnionExif? { + self as? DBXRivieraMetadataUnionExif + } + + @objc + public var asMedia: DBXRivieraMetadataUnionMedia? { + self as? DBXRivieraMetadataUnionMedia + } + + @objc + public var asPdf: DBXRivieraMetadataUnionPdf? { + self as? DBXRivieraMetadataUnionPdf + } + + @objc + public var asOffice: DBXRivieraMetadataUnionOffice? { + self as? DBXRivieraMetadataUnionOffice + } + + @objc + public var asOther: DBXRivieraMetadataUnionOther? { + self as? DBXRivieraMetadataUnionOther + } +} + +/// An unspecified error. +@objc +public class DBXRivieraMetadataUnionExif: DBXRivieraMetadataUnion { + @objc + public var exif: DBXRivieraApiExifMetadata + + @objc + public init(_ arg: DBXRivieraApiExifMetadata) { + self.exif = arg + let swift = Riviera.MetadataUnion.exif(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXRivieraMetadataUnionMedia: DBXRivieraMetadataUnion { + @objc + public var media: DBXRivieraApiMediaMetadata + + @objc + public init(_ arg: DBXRivieraApiMediaMetadata) { + self.media = arg + let swift = Riviera.MetadataUnion.media(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXRivieraMetadataUnionPdf: DBXRivieraMetadataUnion { + @objc + public var pdf: DBXRivieraApiPdfMetadata + + @objc + public init(_ arg: DBXRivieraApiPdfMetadata) { + self.pdf = arg + let swift = Riviera.MetadataUnion.pdf(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXRivieraMetadataUnionOffice: DBXRivieraMetadataUnion { + @objc + public var office: DBXRivieraApiOfficeMetadata + + @objc + public init(_ arg: DBXRivieraApiOfficeMetadata) { + self.office = arg + let swift = Riviera.MetadataUnion.office(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXRivieraMetadataUnionOther: DBXRivieraMetadataUnion { + @objc + public init() { + let swift = Riviera.MetadataUnion.other + super.init(swift: swift) + } +} diff --git a/Source/SwiftyDropboxObjC/Shared/Generated/DBXRivieraAppAuthRoutes.swift b/Source/SwiftyDropboxObjC/Shared/Generated/DBXRivieraAppAuthRoutes.swift new file mode 100644 index 00000000..d2c78481 --- /dev/null +++ b/Source/SwiftyDropboxObjC/Shared/Generated/DBXRivieraAppAuthRoutes.swift @@ -0,0 +1,201 @@ +/// +/// Copyright (c) 2022 Dropbox, Inc. All rights reserved. +/// +/// Auto-generated by Stone, do not modify. +/// + +import Foundation +import SwiftyDropbox + +/// Objective-C compatible routes for the riviera namespace +/// For Swift routes see RivieraAppAuthRoutes +@objc +public class DBXRivieraAppAuthRoutes: NSObject { + private let swift: RivieraAppAuthRoutes + init(swift: RivieraAppAuthRoutes) { + self.swift = swift + self.client = swift.client.objc + } + + public let client: DBXDropboxTransportClient + + /// Asynchronous document-to-markdown conversion for supported file formats. Supported formats: .binder, .docx, + /// .html, .paper, .papert, .pptx, .xlsx, .gsheet, .ods, .pdf. Unsupported formats return an + /// `unsupported_format_error`. Size limit: the source file must be at most 50 MB. Larger files are rejected. + /// + /// - scope: files.content.read + /// + /// - parameter fileIdOrUrl: Identifier of the document to convert. Callers must set exactly one of the + /// `FileIdOrUrl` variants. The referenced file must be a document in a supported format (see the route + /// description for the list); requests against unsupported formats return `unsupported_format_error`. + /// - parameter enableOcr: Enable OCR for PDF documents. Processing is slower when enabled. + /// - parameter embedImages: When true, embed images as base64 data URIs in the markdown output. This can + /// significantly increase output size. + /// + /// - returns: Through the response callback, the caller will receive a `Async.LaunchResultBase` object on success + /// or a `Void` object on failure. + @objc + @discardableResult public func getMarkdownAsync(fileIdOrUrl: DBXRivieraFileIdOrUrl?, enableOcr: NSNumber, embedImages: NSNumber) -> DBXRivieraGetMarkdownAsyncRpcRequest { + let swift = swift.getMarkdownAsync(fileIdOrUrl: fileIdOrUrl?.swift, enableOcr: enableOcr.boolValue, embedImages: embedImages.boolValue) + return DBXRivieraGetMarkdownAsyncRpcRequest(swift: swift) + } + + /// Asynchronous document-to-markdown conversion for supported file formats. Supported formats: .binder, .docx, + /// .html, .paper, .papert, .pptx, .xlsx, .gsheet, .ods, .pdf. Unsupported formats return an + /// `unsupported_format_error`. Size limit: the source file must be at most 50 MB. Larger files are rejected. + /// + /// - scope: files.content.read + /// + /// - returns: Through the response callback, the caller will receive a `Async.LaunchResultBase` object on success + /// or a `Void` object on failure. + @objc + @discardableResult public func getMarkdownAsync() -> DBXRivieraGetMarkdownAsyncRpcRequest { + let swift = swift.getMarkdownAsync() + return DBXRivieraGetMarkdownAsyncRpcRequest(swift: swift) + } + + /// Returns the status or result of specified get_markdown_async task. + /// + /// - scope: files.content.read + /// + /// - parameter asyncJobId: Id of the asynchronous job. This is the value of a response returned from the method + /// that launched the job. + /// + /// - returns: Through the response callback, the caller will receive a `Riviera.GetMarkdownAsyncCheckResult` object + /// on success or a `Async.PollError` object on failure. + @objc + @discardableResult public func getMarkdownAsyncCheck(asyncJobId: String) -> DBXRivieraGetMarkdownAsyncCheckRpcRequest { + let swift = swift.getMarkdownAsyncCheck(asyncJobId: asyncJobId) + return DBXRivieraGetMarkdownAsyncCheckRpcRequest(swift: swift) + } + + /// Asynchronous file metadata extraction for supported file formats. The kind of metadata returned depends on the + /// file type: - Image (EXIF) formats: .3fr, .arw, .avif, .bmp, .cr2, .cr3, .crw, .dcr, .dcs, .dng, .erf, .gif, + /// .heic, .j2c, .j2k, .jp2, .jpc, .jpeg, .jpf, .jpg, .jpg2, .jpm, .jpx, .kdc, .mef, .mos, .mrw, .nef, .nrw, + /// .orf, .pef, .png, .ppm, .r3d, .raf, .rw2, .rwl, .sr2, .tga, .tif, .tiff, .wbmp, .web, .webp, .x3f. - + /// Audio/video (media) formats: .aac, .aif, .aiff, .flac, .m4a, .m4r, .mp3, .oga, .ogg, .wav, .wma, .3gp, + /// .3gpp, .3gpp2, .asf, .avi, .dv, .flv, .m2t, .m2ts, .m4v, .mkv, .mov, .mp4, .mpeg, .mpg, .mts, .mxf, + /// .oggtheora, .ogv, .rm, .ts, .vob, .webm, .wmv. - PDF format: .pdf. - MS Office formats: .docx, .pptx, .xlsx. + /// Unsupported formats return an `unsupported_format_error`. + /// + /// - scope: files.content.read + /// + /// - parameter fileIdOrUrl: Identifier of the file to extract metadata from. Callers must set exactly one of the + /// `FileIdOrUrl` variants. The kind of metadata returned is determined by the file type: image files return + /// EXIF metadata, audio/video files return media metadata, PDFs return PDF metadata, and MS Office documents + /// (docx, pptx, xlsx) return Office metadata. See the route description for the supported formats. Requests + /// against unsupported formats return `unsupported_format_error`. + /// + /// - returns: Through the response callback, the caller will receive a `Async.LaunchResultBase` object on success + /// or a `Void` object on failure. + @objc + @discardableResult public func getMetadataAsync(fileIdOrUrl: DBXRivieraFileIdOrUrl?) -> DBXRivieraGetMetadataAsyncRpcRequest { + let swift = swift.getMetadataAsync(fileIdOrUrl: fileIdOrUrl?.swift) + return DBXRivieraGetMetadataAsyncRpcRequest(swift: swift) + } + + /// Asynchronous file metadata extraction for supported file formats. The kind of metadata returned depends on the + /// file type: - Image (EXIF) formats: .3fr, .arw, .avif, .bmp, .cr2, .cr3, .crw, .dcr, .dcs, .dng, .erf, .gif, + /// .heic, .j2c, .j2k, .jp2, .jpc, .jpeg, .jpf, .jpg, .jpg2, .jpm, .jpx, .kdc, .mef, .mos, .mrw, .nef, .nrw, + /// .orf, .pef, .png, .ppm, .r3d, .raf, .rw2, .rwl, .sr2, .tga, .tif, .tiff, .wbmp, .web, .webp, .x3f. - + /// Audio/video (media) formats: .aac, .aif, .aiff, .flac, .m4a, .m4r, .mp3, .oga, .ogg, .wav, .wma, .3gp, + /// .3gpp, .3gpp2, .asf, .avi, .dv, .flv, .m2t, .m2ts, .m4v, .mkv, .mov, .mp4, .mpeg, .mpg, .mts, .mxf, + /// .oggtheora, .ogv, .rm, .ts, .vob, .webm, .wmv. - PDF format: .pdf. - MS Office formats: .docx, .pptx, .xlsx. + /// Unsupported formats return an `unsupported_format_error`. + /// + /// - scope: files.content.read + /// + /// - returns: Through the response callback, the caller will receive a `Async.LaunchResultBase` object on success + /// or a `Void` object on failure. + @objc + @discardableResult public func getMetadataAsync() -> DBXRivieraGetMetadataAsyncRpcRequest { + let swift = swift.getMetadataAsync() + return DBXRivieraGetMetadataAsyncRpcRequest(swift: swift) + } + + /// Returns the status or result of specified get_metadata_async task. + /// + /// - scope: files.content.read + /// + /// - parameter asyncJobId: Id of the asynchronous job. This is the value of a response returned from the method + /// that launched the job. + /// + /// - returns: Through the response callback, the caller will receive a `Riviera.GetMetadataAsyncCheckResult` object + /// on success or a `Async.PollError` object on failure. + @objc + @discardableResult public func getMetadataAsyncCheck(asyncJobId: String) -> DBXRivieraGetMetadataAsyncCheckRpcRequest { + let swift = swift.getMetadataAsyncCheck(asyncJobId: asyncJobId) + return DBXRivieraGetMetadataAsyncCheckRpcRequest(swift: swift) + } + + /// Asynchronous transcript generation for audio and video files. Supported audio formats: .aac, .aif, .aiff, .flac, + /// .m4a, .m4r, .mp3, .oga, .ogg, .wav, .wma. Supported video formats: .3gp, .3gpp, .3gpp2, .asf, .avi, .dv, + /// .flv, .m2t, .m2ts, .m4v, .mkv, .mov, .mp4, .mpeg, .mpg, .mts, .mxf, .oggtheora, .ogv, .rm, .ts, .vob, .webm, + /// .wmv. Unsupported formats return an `unsupported_format_error`. Size limits: the source file must be at most + /// 10 GB and its audio track at most 1 hour in duration. Files exceeding these limits are rejected. + /// + /// - scope: files.content.read + /// + /// - parameter fileIdOrUrl: Identifier of the media asset to transcribe. Callers must set exactly one of the + /// `FileIdOrUrl` variants. The referenced asset must be an audio or video file in a supported format (see the + /// route description for the list); requests against files with no audio track return a `no_audio_error`. + /// - parameter timestampLevel: Granularity of the time offsets returned for each transcript segment. Defaults to + /// `SENTENCE` when the field is omitted. - SENTENCE: one segment per spoken sentence (recommended). - WORD: one + /// segment per word, useful for fine-grained alignment such as captioning or highlight-as-you-listen + /// experiences. + /// - parameter includedSpecialWords: Comma-delimited list of non-lexical filler words to preserve in the transcript + /// output, e.g. `"uh, ah, uhm"`. By default these fillers are stripped. Unrecognized tokens are ignored. Leave + /// empty to use the default filtering behavior. + /// - parameter audioLanguage: Optional ISO 639-1 two-letter language code hinting the spoken language of the source + /// audio (e.g. "en", "ja"). When empty, the service auto-detects the language; supplying a hint improves + /// accuracy and latency for short or ambiguous clips. Unsupported languages fall back to auto-detection. + /// + /// - returns: Through the response callback, the caller will receive a `Async.LaunchResultBase` object on success + /// or a `Void` object on failure. + @objc + @discardableResult public func getTranscriptAsync( + fileIdOrUrl: DBXRivieraFileIdOrUrl?, + timestampLevel: DBXRivieraTimestampLevel, + includedSpecialWords: String, + audioLanguage: String + ) -> DBXRivieraGetTranscriptAsyncRpcRequest { + let swift = swift.getTranscriptAsync( + fileIdOrUrl: fileIdOrUrl?.swift, + timestampLevel: timestampLevel.swift, + includedSpecialWords: includedSpecialWords, + audioLanguage: audioLanguage + ) + return DBXRivieraGetTranscriptAsyncRpcRequest(swift: swift) + } + + /// Asynchronous transcript generation for audio and video files. Supported audio formats: .aac, .aif, .aiff, .flac, + /// .m4a, .m4r, .mp3, .oga, .ogg, .wav, .wma. Supported video formats: .3gp, .3gpp, .3gpp2, .asf, .avi, .dv, + /// .flv, .m2t, .m2ts, .m4v, .mkv, .mov, .mp4, .mpeg, .mpg, .mts, .mxf, .oggtheora, .ogv, .rm, .ts, .vob, .webm, + /// .wmv. Unsupported formats return an `unsupported_format_error`. Size limits: the source file must be at most + /// 10 GB and its audio track at most 1 hour in duration. Files exceeding these limits are rejected. + /// + /// - scope: files.content.read + /// + /// - returns: Through the response callback, the caller will receive a `Async.LaunchResultBase` object on success + /// or a `Void` object on failure. + @objc + @discardableResult public func getTranscriptAsync() -> DBXRivieraGetTranscriptAsyncRpcRequest { + let swift = swift.getTranscriptAsync() + return DBXRivieraGetTranscriptAsyncRpcRequest(swift: swift) + } + + /// Returns the status or result of specified get_transcript_async task. + /// + /// - scope: files.content.read + /// + /// - parameter asyncJobId: Id of the asynchronous job. This is the value of a response returned from the method + /// that launched the job. + /// + /// - returns: Through the response callback, the caller will receive a `Riviera.GetTranscriptAsyncCheckResult` + /// object on success or a `Async.PollError` object on failure. + @objc + @discardableResult public func getTranscriptAsyncCheck(asyncJobId: String) -> DBXRivieraGetTranscriptAsyncCheckRpcRequest { + let swift = swift.getTranscriptAsyncCheck(asyncJobId: asyncJobId) + return DBXRivieraGetTranscriptAsyncCheckRpcRequest(swift: swift) + } +} diff --git a/Source/SwiftyDropboxObjC/Shared/Generated/DBXRivieraRoutes.swift b/Source/SwiftyDropboxObjC/Shared/Generated/DBXRivieraRoutes.swift new file mode 100644 index 00000000..93a5c9d7 --- /dev/null +++ b/Source/SwiftyDropboxObjC/Shared/Generated/DBXRivieraRoutes.swift @@ -0,0 +1,570 @@ +/// +/// Copyright (c) 2022 Dropbox, Inc. All rights reserved. +/// +/// Auto-generated by Stone, do not modify. +/// + +import Foundation +import SwiftyDropbox + +/// Objective-C compatible routes for the riviera namespace +/// For Swift routes see RivieraRoutes +@objc +public class DBXRivieraRoutes: NSObject { + private let swift: RivieraRoutes + init(swift: RivieraRoutes) { + self.swift = swift + self.client = swift.client.objc + } + + public let client: DBXDropboxTransportClient + + /// Asynchronous document-to-markdown conversion for supported file formats. Supported formats: .binder, .docx, + /// .html, .paper, .papert, .pptx, .xlsx, .gsheet, .ods, .pdf. Unsupported formats return an + /// `unsupported_format_error`. Size limit: the source file must be at most 50 MB. Larger files are rejected. + /// + /// - scope: files.content.read + /// + /// - parameter fileIdOrUrl: Identifier of the document to convert. Callers must set exactly one of the + /// `FileIdOrUrl` variants. The referenced file must be a document in a supported format (see the route + /// description for the list); requests against unsupported formats return `unsupported_format_error`. + /// - parameter enableOcr: Enable OCR for PDF documents. Processing is slower when enabled. + /// - parameter embedImages: When true, embed images as base64 data URIs in the markdown output. This can + /// significantly increase output size. + /// + /// - returns: Through the response callback, the caller will receive a `Async.LaunchResultBase` object on success + /// or a `Void` object on failure. + @objc + @discardableResult public func getMarkdownAsync(fileIdOrUrl: DBXRivieraFileIdOrUrl?, enableOcr: NSNumber, embedImages: NSNumber) -> DBXRivieraGetMarkdownAsyncRpcRequest { + let swift = swift.getMarkdownAsync(fileIdOrUrl: fileIdOrUrl?.swift, enableOcr: enableOcr.boolValue, embedImages: embedImages.boolValue) + return DBXRivieraGetMarkdownAsyncRpcRequest(swift: swift) + } + + /// Asynchronous document-to-markdown conversion for supported file formats. Supported formats: .binder, .docx, + /// .html, .paper, .papert, .pptx, .xlsx, .gsheet, .ods, .pdf. Unsupported formats return an + /// `unsupported_format_error`. Size limit: the source file must be at most 50 MB. Larger files are rejected. + /// + /// - scope: files.content.read + /// + /// - returns: Through the response callback, the caller will receive a `Async.LaunchResultBase` object on success + /// or a `Void` object on failure. + @objc + @discardableResult public func getMarkdownAsync() -> DBXRivieraGetMarkdownAsyncRpcRequest { + let swift = swift.getMarkdownAsync() + return DBXRivieraGetMarkdownAsyncRpcRequest(swift: swift) + } + + /// Returns the status or result of specified get_markdown_async task. + /// + /// - scope: files.content.read + /// + /// - parameter asyncJobId: Id of the asynchronous job. This is the value of a response returned from the method + /// that launched the job. + /// + /// - returns: Through the response callback, the caller will receive a `Riviera.GetMarkdownAsyncCheckResult` object + /// on success or a `Async.PollError` object on failure. + @objc + @discardableResult public func getMarkdownAsyncCheck(asyncJobId: String) -> DBXRivieraGetMarkdownAsyncCheckRpcRequest { + let swift = swift.getMarkdownAsyncCheck(asyncJobId: asyncJobId) + return DBXRivieraGetMarkdownAsyncCheckRpcRequest(swift: swift) + } + + /// Asynchronous file metadata extraction for supported file formats. The kind of metadata returned depends on the + /// file type: - Image (EXIF) formats: .3fr, .arw, .avif, .bmp, .cr2, .cr3, .crw, .dcr, .dcs, .dng, .erf, .gif, + /// .heic, .j2c, .j2k, .jp2, .jpc, .jpeg, .jpf, .jpg, .jpg2, .jpm, .jpx, .kdc, .mef, .mos, .mrw, .nef, .nrw, + /// .orf, .pef, .png, .ppm, .r3d, .raf, .rw2, .rwl, .sr2, .tga, .tif, .tiff, .wbmp, .web, .webp, .x3f. - + /// Audio/video (media) formats: .aac, .aif, .aiff, .flac, .m4a, .m4r, .mp3, .oga, .ogg, .wav, .wma, .3gp, + /// .3gpp, .3gpp2, .asf, .avi, .dv, .flv, .m2t, .m2ts, .m4v, .mkv, .mov, .mp4, .mpeg, .mpg, .mts, .mxf, + /// .oggtheora, .ogv, .rm, .ts, .vob, .webm, .wmv. - PDF format: .pdf. - MS Office formats: .docx, .pptx, .xlsx. + /// Unsupported formats return an `unsupported_format_error`. + /// + /// - scope: files.content.read + /// + /// - parameter fileIdOrUrl: Identifier of the file to extract metadata from. Callers must set exactly one of the + /// `FileIdOrUrl` variants. The kind of metadata returned is determined by the file type: image files return + /// EXIF metadata, audio/video files return media metadata, PDFs return PDF metadata, and MS Office documents + /// (docx, pptx, xlsx) return Office metadata. See the route description for the supported formats. Requests + /// against unsupported formats return `unsupported_format_error`. + /// + /// - returns: Through the response callback, the caller will receive a `Async.LaunchResultBase` object on success + /// or a `Void` object on failure. + @objc + @discardableResult public func getMetadataAsync(fileIdOrUrl: DBXRivieraFileIdOrUrl?) -> DBXRivieraGetMetadataAsyncRpcRequest { + let swift = swift.getMetadataAsync(fileIdOrUrl: fileIdOrUrl?.swift) + return DBXRivieraGetMetadataAsyncRpcRequest(swift: swift) + } + + /// Asynchronous file metadata extraction for supported file formats. The kind of metadata returned depends on the + /// file type: - Image (EXIF) formats: .3fr, .arw, .avif, .bmp, .cr2, .cr3, .crw, .dcr, .dcs, .dng, .erf, .gif, + /// .heic, .j2c, .j2k, .jp2, .jpc, .jpeg, .jpf, .jpg, .jpg2, .jpm, .jpx, .kdc, .mef, .mos, .mrw, .nef, .nrw, + /// .orf, .pef, .png, .ppm, .r3d, .raf, .rw2, .rwl, .sr2, .tga, .tif, .tiff, .wbmp, .web, .webp, .x3f. - + /// Audio/video (media) formats: .aac, .aif, .aiff, .flac, .m4a, .m4r, .mp3, .oga, .ogg, .wav, .wma, .3gp, + /// .3gpp, .3gpp2, .asf, .avi, .dv, .flv, .m2t, .m2ts, .m4v, .mkv, .mov, .mp4, .mpeg, .mpg, .mts, .mxf, + /// .oggtheora, .ogv, .rm, .ts, .vob, .webm, .wmv. - PDF format: .pdf. - MS Office formats: .docx, .pptx, .xlsx. + /// Unsupported formats return an `unsupported_format_error`. + /// + /// - scope: files.content.read + /// + /// - returns: Through the response callback, the caller will receive a `Async.LaunchResultBase` object on success + /// or a `Void` object on failure. + @objc + @discardableResult public func getMetadataAsync() -> DBXRivieraGetMetadataAsyncRpcRequest { + let swift = swift.getMetadataAsync() + return DBXRivieraGetMetadataAsyncRpcRequest(swift: swift) + } + + /// Returns the status or result of specified get_metadata_async task. + /// + /// - scope: files.content.read + /// + /// - parameter asyncJobId: Id of the asynchronous job. This is the value of a response returned from the method + /// that launched the job. + /// + /// - returns: Through the response callback, the caller will receive a `Riviera.GetMetadataAsyncCheckResult` object + /// on success or a `Async.PollError` object on failure. + @objc + @discardableResult public func getMetadataAsyncCheck(asyncJobId: String) -> DBXRivieraGetMetadataAsyncCheckRpcRequest { + let swift = swift.getMetadataAsyncCheck(asyncJobId: asyncJobId) + return DBXRivieraGetMetadataAsyncCheckRpcRequest(swift: swift) + } + + /// Asynchronous transcript generation for audio and video files. Supported audio formats: .aac, .aif, .aiff, .flac, + /// .m4a, .m4r, .mp3, .oga, .ogg, .wav, .wma. Supported video formats: .3gp, .3gpp, .3gpp2, .asf, .avi, .dv, + /// .flv, .m2t, .m2ts, .m4v, .mkv, .mov, .mp4, .mpeg, .mpg, .mts, .mxf, .oggtheora, .ogv, .rm, .ts, .vob, .webm, + /// .wmv. Unsupported formats return an `unsupported_format_error`. Size limits: the source file must be at most + /// 10 GB and its audio track at most 1 hour in duration. Files exceeding these limits are rejected. + /// + /// - scope: files.content.read + /// + /// - parameter fileIdOrUrl: Identifier of the media asset to transcribe. Callers must set exactly one of the + /// `FileIdOrUrl` variants. The referenced asset must be an audio or video file in a supported format (see the + /// route description for the list); requests against files with no audio track return a `no_audio_error`. + /// - parameter timestampLevel: Granularity of the time offsets returned for each transcript segment. Defaults to + /// `SENTENCE` when the field is omitted. - SENTENCE: one segment per spoken sentence (recommended). - WORD: one + /// segment per word, useful for fine-grained alignment such as captioning or highlight-as-you-listen + /// experiences. + /// - parameter includedSpecialWords: Comma-delimited list of non-lexical filler words to preserve in the transcript + /// output, e.g. `"uh, ah, uhm"`. By default these fillers are stripped. Unrecognized tokens are ignored. Leave + /// empty to use the default filtering behavior. + /// - parameter audioLanguage: Optional ISO 639-1 two-letter language code hinting the spoken language of the source + /// audio (e.g. "en", "ja"). When empty, the service auto-detects the language; supplying a hint improves + /// accuracy and latency for short or ambiguous clips. Unsupported languages fall back to auto-detection. + /// + /// - returns: Through the response callback, the caller will receive a `Async.LaunchResultBase` object on success + /// or a `Void` object on failure. + @objc + @discardableResult public func getTranscriptAsync( + fileIdOrUrl: DBXRivieraFileIdOrUrl?, + timestampLevel: DBXRivieraTimestampLevel, + includedSpecialWords: String, + audioLanguage: String + ) -> DBXRivieraGetTranscriptAsyncRpcRequest { + let swift = swift.getTranscriptAsync( + fileIdOrUrl: fileIdOrUrl?.swift, + timestampLevel: timestampLevel.swift, + includedSpecialWords: includedSpecialWords, + audioLanguage: audioLanguage + ) + return DBXRivieraGetTranscriptAsyncRpcRequest(swift: swift) + } + + /// Asynchronous transcript generation for audio and video files. Supported audio formats: .aac, .aif, .aiff, .flac, + /// .m4a, .m4r, .mp3, .oga, .ogg, .wav, .wma. Supported video formats: .3gp, .3gpp, .3gpp2, .asf, .avi, .dv, + /// .flv, .m2t, .m2ts, .m4v, .mkv, .mov, .mp4, .mpeg, .mpg, .mts, .mxf, .oggtheora, .ogv, .rm, .ts, .vob, .webm, + /// .wmv. Unsupported formats return an `unsupported_format_error`. Size limits: the source file must be at most + /// 10 GB and its audio track at most 1 hour in duration. Files exceeding these limits are rejected. + /// + /// - scope: files.content.read + /// + /// - returns: Through the response callback, the caller will receive a `Async.LaunchResultBase` object on success + /// or a `Void` object on failure. + @objc + @discardableResult public func getTranscriptAsync() -> DBXRivieraGetTranscriptAsyncRpcRequest { + let swift = swift.getTranscriptAsync() + return DBXRivieraGetTranscriptAsyncRpcRequest(swift: swift) + } + + /// Returns the status or result of specified get_transcript_async task. + /// + /// - scope: files.content.read + /// + /// - parameter asyncJobId: Id of the asynchronous job. This is the value of a response returned from the method + /// that launched the job. + /// + /// - returns: Through the response callback, the caller will receive a `Riviera.GetTranscriptAsyncCheckResult` + /// object on success or a `Async.PollError` object on failure. + @objc + @discardableResult public func getTranscriptAsyncCheck(asyncJobId: String) -> DBXRivieraGetTranscriptAsyncCheckRpcRequest { + let swift = swift.getTranscriptAsyncCheck(asyncJobId: asyncJobId) + return DBXRivieraGetTranscriptAsyncCheckRpcRequest(swift: swift) + } +} + +@objc +public class DBXRivieraGetMarkdownAsyncRpcRequest: NSObject, DBXRequest { + var swift: RpcRequest + + init(swift: RpcRequest) { + self.swift = swift + } + + @objc + @discardableResult public func response( + completionHandler: @escaping (DBXAsyncLaunchResultBase?, DBXCallError?) -> Void + ) -> Self { + response(queue: nil, completionHandler: completionHandler) + } + + @objc + @discardableResult public func response( + queue: DispatchQueue?, + completionHandler: @escaping (DBXAsyncLaunchResultBase?, DBXCallError?) -> Void + ) -> Self { + swift.response(queue: queue) { result, error in + var objc: DBXAsyncLaunchResultBase? = nil + if let swift = result { + objc = DBXAsyncLaunchResultBase.factory(swift: swift) + } + completionHandler(objc, error?.objc) + } + return self + } + + @objc + public var clientPersistedString: String? { swift.clientPersistedString } + + @available(iOS 13.0, macOS 10.13, *) + @objc + public var earliestBeginDate: Date? { swift.earliestBeginDate } + + @objc + public func persistingString(string: String?) -> Self { + swift.persistingString(string: string) + return self + } + + @available(iOS 13.0, macOS 10.13, *) + @objc + public func settingEarliestBeginDate(date: Date?) -> Self { + swift.settingEarliestBeginDate(date: date) + return self + } + + @objc + public func cancel() { + swift.cancel() + } +} + +@objc +public class DBXRivieraGetMarkdownAsyncCheckRpcRequest: NSObject, DBXRequest { + var swift: RpcRequest + + init(swift: RpcRequest) { + self.swift = swift + } + + @objc + @discardableResult public func response( + completionHandler: @escaping (DBXRivieraGetMarkdownAsyncCheckResult?, DBXAsyncPollError?, DBXCallError?) -> Void + ) -> Self { + response(queue: nil, completionHandler: completionHandler) + } + + @objc + @discardableResult public func response( + queue: DispatchQueue?, + completionHandler: @escaping (DBXRivieraGetMarkdownAsyncCheckResult?, DBXAsyncPollError?, DBXCallError?) -> Void + ) -> Self { + swift.response(queue: queue) { result, error in + var routeError: DBXAsyncPollError? + var callError: DBXCallError? + switch error { + case .routeError(let box, _, _, _): + routeError = DBXAsyncPollError(swift: box.unboxed) + callError = nil + default: + routeError = nil + callError = error?.objc + } + + var objc: DBXRivieraGetMarkdownAsyncCheckResult? = nil + if let swift = result { + objc = DBXRivieraGetMarkdownAsyncCheckResult.factory(swift: swift) + } + completionHandler(objc, routeError, callError) + } + return self + } + + @objc + public var clientPersistedString: String? { swift.clientPersistedString } + + @available(iOS 13.0, macOS 10.13, *) + @objc + public var earliestBeginDate: Date? { swift.earliestBeginDate } + + @objc + public func persistingString(string: String?) -> Self { + swift.persistingString(string: string) + return self + } + + @available(iOS 13.0, macOS 10.13, *) + @objc + public func settingEarliestBeginDate(date: Date?) -> Self { + swift.settingEarliestBeginDate(date: date) + return self + } + + @objc + public func cancel() { + swift.cancel() + } +} + +@objc +public class DBXRivieraGetMetadataAsyncRpcRequest: NSObject, DBXRequest { + var swift: RpcRequest + + init(swift: RpcRequest) { + self.swift = swift + } + + @objc + @discardableResult public func response( + completionHandler: @escaping (DBXAsyncLaunchResultBase?, DBXCallError?) -> Void + ) -> Self { + response(queue: nil, completionHandler: completionHandler) + } + + @objc + @discardableResult public func response( + queue: DispatchQueue?, + completionHandler: @escaping (DBXAsyncLaunchResultBase?, DBXCallError?) -> Void + ) -> Self { + swift.response(queue: queue) { result, error in + var objc: DBXAsyncLaunchResultBase? = nil + if let swift = result { + objc = DBXAsyncLaunchResultBase.factory(swift: swift) + } + completionHandler(objc, error?.objc) + } + return self + } + + @objc + public var clientPersistedString: String? { swift.clientPersistedString } + + @available(iOS 13.0, macOS 10.13, *) + @objc + public var earliestBeginDate: Date? { swift.earliestBeginDate } + + @objc + public func persistingString(string: String?) -> Self { + swift.persistingString(string: string) + return self + } + + @available(iOS 13.0, macOS 10.13, *) + @objc + public func settingEarliestBeginDate(date: Date?) -> Self { + swift.settingEarliestBeginDate(date: date) + return self + } + + @objc + public func cancel() { + swift.cancel() + } +} + +@objc +public class DBXRivieraGetMetadataAsyncCheckRpcRequest: NSObject, DBXRequest { + var swift: RpcRequest + + init(swift: RpcRequest) { + self.swift = swift + } + + @objc + @discardableResult public func response( + completionHandler: @escaping (DBXRivieraGetMetadataAsyncCheckResult?, DBXAsyncPollError?, DBXCallError?) -> Void + ) -> Self { + response(queue: nil, completionHandler: completionHandler) + } + + @objc + @discardableResult public func response( + queue: DispatchQueue?, + completionHandler: @escaping (DBXRivieraGetMetadataAsyncCheckResult?, DBXAsyncPollError?, DBXCallError?) -> Void + ) -> Self { + swift.response(queue: queue) { result, error in + var routeError: DBXAsyncPollError? + var callError: DBXCallError? + switch error { + case .routeError(let box, _, _, _): + routeError = DBXAsyncPollError(swift: box.unboxed) + callError = nil + default: + routeError = nil + callError = error?.objc + } + + var objc: DBXRivieraGetMetadataAsyncCheckResult? = nil + if let swift = result { + objc = DBXRivieraGetMetadataAsyncCheckResult.factory(swift: swift) + } + completionHandler(objc, routeError, callError) + } + return self + } + + @objc + public var clientPersistedString: String? { swift.clientPersistedString } + + @available(iOS 13.0, macOS 10.13, *) + @objc + public var earliestBeginDate: Date? { swift.earliestBeginDate } + + @objc + public func persistingString(string: String?) -> Self { + swift.persistingString(string: string) + return self + } + + @available(iOS 13.0, macOS 10.13, *) + @objc + public func settingEarliestBeginDate(date: Date?) -> Self { + swift.settingEarliestBeginDate(date: date) + return self + } + + @objc + public func cancel() { + swift.cancel() + } +} + +@objc +public class DBXRivieraGetTranscriptAsyncRpcRequest: NSObject, DBXRequest { + var swift: RpcRequest + + init(swift: RpcRequest) { + self.swift = swift + } + + @objc + @discardableResult public func response( + completionHandler: @escaping (DBXAsyncLaunchResultBase?, DBXCallError?) -> Void + ) -> Self { + response(queue: nil, completionHandler: completionHandler) + } + + @objc + @discardableResult public func response( + queue: DispatchQueue?, + completionHandler: @escaping (DBXAsyncLaunchResultBase?, DBXCallError?) -> Void + ) -> Self { + swift.response(queue: queue) { result, error in + var objc: DBXAsyncLaunchResultBase? = nil + if let swift = result { + objc = DBXAsyncLaunchResultBase.factory(swift: swift) + } + completionHandler(objc, error?.objc) + } + return self + } + + @objc + public var clientPersistedString: String? { swift.clientPersistedString } + + @available(iOS 13.0, macOS 10.13, *) + @objc + public var earliestBeginDate: Date? { swift.earliestBeginDate } + + @objc + public func persistingString(string: String?) -> Self { + swift.persistingString(string: string) + return self + } + + @available(iOS 13.0, macOS 10.13, *) + @objc + public func settingEarliestBeginDate(date: Date?) -> Self { + swift.settingEarliestBeginDate(date: date) + return self + } + + @objc + public func cancel() { + swift.cancel() + } +} + +@objc +public class DBXRivieraGetTranscriptAsyncCheckRpcRequest: NSObject, DBXRequest { + var swift: RpcRequest + + init(swift: RpcRequest) { + self.swift = swift + } + + @objc + @discardableResult public func response( + completionHandler: @escaping (DBXRivieraGetTranscriptAsyncCheckResult?, DBXAsyncPollError?, DBXCallError?) -> Void + ) -> Self { + response(queue: nil, completionHandler: completionHandler) + } + + @objc + @discardableResult public func response( + queue: DispatchQueue?, + completionHandler: @escaping (DBXRivieraGetTranscriptAsyncCheckResult?, DBXAsyncPollError?, DBXCallError?) -> Void + ) -> Self { + swift.response(queue: queue) { result, error in + var routeError: DBXAsyncPollError? + var callError: DBXCallError? + switch error { + case .routeError(let box, _, _, _): + routeError = DBXAsyncPollError(swift: box.unboxed) + callError = nil + default: + routeError = nil + callError = error?.objc + } + + var objc: DBXRivieraGetTranscriptAsyncCheckResult? = nil + if let swift = result { + objc = DBXRivieraGetTranscriptAsyncCheckResult.factory(swift: swift) + } + completionHandler(objc, routeError, callError) + } + return self + } + + @objc + public var clientPersistedString: String? { swift.clientPersistedString } + + @available(iOS 13.0, macOS 10.13, *) + @objc + public var earliestBeginDate: Date? { swift.earliestBeginDate } + + @objc + public func persistingString(string: String?) -> Self { + swift.persistingString(string: string) + return self + } + + @available(iOS 13.0, macOS 10.13, *) + @objc + public func settingEarliestBeginDate(date: Date?) -> Self { + swift.settingEarliestBeginDate(date: date) + return self + } + + @objc + public func cancel() { + swift.cancel() + } +} diff --git a/Source/SwiftyDropboxObjC/Shared/Generated/DBXSharing.swift b/Source/SwiftyDropboxObjC/Shared/Generated/DBXSharing.swift index 88cc2f64..df1d9217 100644 --- a/Source/SwiftyDropboxObjC/Shared/Generated/DBXSharing.swift +++ b/Source/SwiftyDropboxObjC/Shared/Generated/DBXSharing.swift @@ -307,10 +307,16 @@ public class DBXSharingAddFileMemberArgs: NSObject { public var quiet: NSNumber { swift.quiet as NSNumber } /// AccessLevel union object, describing what access level we want to give new members. @objc - public var accessLevel: DBXSharingAccessLevel { DBXSharingAccessLevel(swift: swift.accessLevel) } - /// If the custom message should be added as a comment on the file. + public var accessLevel: DBXSharingAccessLevel? { guard let swift = swift.accessLevel else { return nil } + return DBXSharingAccessLevel(swift: swift) + } + + /// If the custom message should be added as a comment on the file. Only meant for Paper files. @objc public var addMessageAsComment: NSNumber { swift.addMessageAsComment as NSNumber } + /// Field is only returned for "internal" callers. The FingerprintJS Sealed Client Result value + @objc + public var fpSealedResult: String? { swift.fpSealedResult } @objc public init( @@ -318,16 +324,18 @@ public class DBXSharingAddFileMemberArgs: NSObject { members: [DBXSharingMemberSelector], customMessage: String?, quiet: NSNumber, - accessLevel: DBXSharingAccessLevel, - addMessageAsComment: NSNumber + accessLevel: DBXSharingAccessLevel?, + addMessageAsComment: NSNumber, + fpSealedResult: String? ) { self.swift = Sharing.AddFileMemberArgs( file: file, members: members.map(\.swift), customMessage: customMessage, quiet: quiet.boolValue, - accessLevel: accessLevel.swift, - addMessageAsComment: addMessageAsComment.boolValue + accessLevel: accessLevel?.swift, + addMessageAsComment: addMessageAsComment.boolValue, + fpSealedResult: fpSealedResult ) } @@ -362,6 +370,8 @@ public class DBXSharingAddFileMemberError: NSObject { return DBXSharingAddFileMemberErrorRateLimit() case .invalidComment: return DBXSharingAddFileMemberErrorInvalidComment() + case .bannedMember: + return DBXSharingAddFileMemberErrorBannedMember() case .other: return DBXSharingAddFileMemberErrorOther() } @@ -390,6 +400,11 @@ public class DBXSharingAddFileMemberError: NSObject { self as? DBXSharingAddFileMemberErrorInvalidComment } + @objc + public var asBannedMember: DBXSharingAddFileMemberErrorBannedMember? { + self as? DBXSharingAddFileMemberErrorBannedMember + } + @objc public var asOther: DBXSharingAddFileMemberErrorOther? { self as? DBXSharingAddFileMemberErrorOther @@ -444,6 +459,16 @@ public class DBXSharingAddFileMemberErrorInvalidComment: DBXSharingAddFileMember } } +/// The current user has been banned for abuse reasons. +@objc +public class DBXSharingAddFileMemberErrorBannedMember: DBXSharingAddFileMemberError { + @objc + public init() { + let swift = Sharing.AddFileMemberError.bannedMember + super.init(swift: swift) + } +} + /// An unspecified error. @objc public class DBXSharingAddFileMemberErrorOther: DBXSharingAddFileMemberError { @@ -469,14 +494,18 @@ public class DBXSharingAddFolderMemberArg: NSObject { /// Optional message to display to added members in their invitation. @objc public var customMessage: String? { swift.customMessage } + /// Field is only returned for "internal" callers. The FingerprintJS Sealed Client Result value + @objc + public var fpSealedResult: String? { swift.fpSealedResult } @objc - public init(sharedFolderId: String, members: [DBXSharingAddMember], quiet: NSNumber, customMessage: String?) { + public init(sharedFolderId: String, members: [DBXSharingAddMember], quiet: NSNumber, customMessage: String?, fpSealedResult: String?) { self.swift = Sharing.AddFolderMemberArg( sharedFolderId: sharedFolderId, members: members.map(\.swift), quiet: quiet.boolValue, - customMessage: customMessage + customMessage: customMessage, + fpSealedResult: fpSealedResult ) } @@ -748,7 +777,7 @@ public class DBXSharingAddFolderMemberErrorNoPermission: DBXSharingAddFolderMemb } } -/// Invalid shared folder error will be returned as an access_error. +/// Field is deprecated. Invalid shared folder error will be returned as an access_error. @objc public class DBXSharingAddFolderMemberErrorInvalidSharedFolder: DBXSharingAddFolderMemberError { @objc @@ -776,11 +805,13 @@ public class DBXSharingAddMember: NSObject { public var member: DBXSharingMemberSelector { DBXSharingMemberSelector(swift: swift.member) } /// The access level to grant member to the shared folder. owner in AccessLevel is disallowed. @objc - public var accessLevel: DBXSharingAccessLevel { DBXSharingAccessLevel(swift: swift.accessLevel) } + public var accessLevel: DBXSharingAccessLevel? { guard let swift = swift.accessLevel else { return nil } + return DBXSharingAccessLevel(swift: swift) + } @objc - public init(member: DBXSharingMemberSelector, accessLevel: DBXSharingAccessLevel) { - self.swift = Sharing.AddMember(member: member.swift, accessLevel: accessLevel.swift) + public init(member: DBXSharingMemberSelector, accessLevel: DBXSharingAccessLevel?) { + self.swift = Sharing.AddMember(member: member.swift, accessLevel: accessLevel?.swift) } let swift: Sharing.AddMember @@ -812,6 +843,8 @@ public class DBXSharingAddMemberSelectorError: NSObject { case .invalidEmail(let swiftArg): let arg = swiftArg return DBXSharingAddMemberSelectorErrorInvalidEmail(arg) + case .invalidGroup: + return DBXSharingAddMemberSelectorErrorInvalidGroup() case .unverifiedDropboxId(let swiftArg): let arg = swiftArg return DBXSharingAddMemberSelectorErrorUnverifiedDropboxId(arg) @@ -842,6 +875,11 @@ public class DBXSharingAddMemberSelectorError: NSObject { self as? DBXSharingAddMemberSelectorErrorInvalidEmail } + @objc + public var asInvalidGroup: DBXSharingAddMemberSelectorErrorInvalidGroup? { + self as? DBXSharingAddMemberSelectorErrorInvalidGroup + } + @objc public var asUnverifiedDropboxId: DBXSharingAddMemberSelectorErrorUnverifiedDropboxId? { self as? DBXSharingAddMemberSelectorErrorUnverifiedDropboxId @@ -901,6 +939,16 @@ public class DBXSharingAddMemberSelectorErrorInvalidEmail: DBXSharingAddMemberSe } } +/// Provided group is invalid. +@objc +public class DBXSharingAddMemberSelectorErrorInvalidGroup: DBXSharingAddMemberSelectorError { + @objc + public init() { + let swift = Sharing.AddMemberSelectorError.invalidGroup + super.init(swift: swift) + } +} + /// The value is the ID of the Dropbox user with an unverified email address. Invite unverified users by email /// address instead of by their Dropbox ID. @objc @@ -1408,6 +1456,75 @@ public class DBXSharingAudienceRestrictingSharedFolder: NSObject { public override var description: String { swift.description } } +/// Enumerates acceptable values for team's ChangeLinkExpirationPolicy setting. +@objc +public class DBXSharingChangeLinkExpirationPolicy: NSObject { + let swift: Sharing.ChangeLinkExpirationPolicy + + public init(swift: Sharing.ChangeLinkExpirationPolicy) { + self.swift = swift + } + + public static func factory(swift: Sharing.ChangeLinkExpirationPolicy) -> DBXSharingChangeLinkExpirationPolicy { + switch swift { + case .allowed: + return DBXSharingChangeLinkExpirationPolicyAllowed() + case .notAllowed: + return DBXSharingChangeLinkExpirationPolicyNotAllowed() + case .other: + return DBXSharingChangeLinkExpirationPolicyOther() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asAllowed: DBXSharingChangeLinkExpirationPolicyAllowed? { + self as? DBXSharingChangeLinkExpirationPolicyAllowed + } + + @objc + public var asNotAllowed: DBXSharingChangeLinkExpirationPolicyNotAllowed? { + self as? DBXSharingChangeLinkExpirationPolicyNotAllowed + } + + @objc + public var asOther: DBXSharingChangeLinkExpirationPolicyOther? { + self as? DBXSharingChangeLinkExpirationPolicyOther + } +} + +/// An unspecified error. +@objc +public class DBXSharingChangeLinkExpirationPolicyAllowed: DBXSharingChangeLinkExpirationPolicy { + @objc + public init() { + let swift = Sharing.ChangeLinkExpirationPolicy.allowed + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXSharingChangeLinkExpirationPolicyNotAllowed: DBXSharingChangeLinkExpirationPolicy { + @objc + public init() { + let swift = Sharing.ChangeLinkExpirationPolicy.notAllowed + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXSharingChangeLinkExpirationPolicyOther: DBXSharingChangeLinkExpirationPolicy { + @objc + public init() { + let swift = Sharing.ChangeLinkExpirationPolicy.other + super.init(swift: swift) + } +} + /// Metadata for a shared link. This can be either a PathLinkMetadata or CollectionLinkMetadata. @objc public class DBXSharingLinkMetadata: NSObject { @@ -1467,7 +1584,7 @@ public class DBXSharingCreateSharedLinkArg: NSObject { /// The path to share. @objc public var path: String { swift.path } - /// (no description) + /// Field is deprecated. None @objc public var shortUrl: NSNumber { swift.shortUrl as NSNumber } /// If it's okay to share a path that does not yet exist, set this to either file in PendingUploadMode or folder @@ -1601,6 +1718,10 @@ public class DBXSharingCreateSharedLinkWithSettingsError: NSObject { return DBXSharingCreateSharedLinkWithSettingsErrorSettingsError(arg) case .accessDenied: return DBXSharingCreateSharedLinkWithSettingsErrorAccessDenied() + case .bannedMember: + return DBXSharingCreateSharedLinkWithSettingsErrorBannedMember() + case .tooManySharedFolders: + return DBXSharingCreateSharedLinkWithSettingsErrorTooManySharedFolders() } } @@ -1631,6 +1752,16 @@ public class DBXSharingCreateSharedLinkWithSettingsError: NSObject { public var asAccessDenied: DBXSharingCreateSharedLinkWithSettingsErrorAccessDenied? { self as? DBXSharingCreateSharedLinkWithSettingsErrorAccessDenied } + + @objc + public var asBannedMember: DBXSharingCreateSharedLinkWithSettingsErrorBannedMember? { + self as? DBXSharingCreateSharedLinkWithSettingsErrorBannedMember + } + + @objc + public var asTooManySharedFolders: DBXSharingCreateSharedLinkWithSettingsErrorTooManySharedFolders? { + self as? DBXSharingCreateSharedLinkWithSettingsErrorTooManySharedFolders + } } /// An unspecified error. @@ -1658,8 +1789,9 @@ public class DBXSharingCreateSharedLinkWithSettingsErrorEmailNotVerified: DBXSha } } -/// The shared link already exists. You can call listSharedLinks to get the existing link, or use the provided -/// metadata if it is returned. +/// The shared link already exists. You can call listSharedLinks to get the existing link, or use the provided +/// metadata if it is returned. Existing link metadata will not be returned if custom settings were +/// specified in the request that could make the existing link incompatible with the requested settings. @objc public class DBXSharingCreateSharedLinkWithSettingsErrorSharedLinkAlreadyExists: DBXSharingCreateSharedLinkWithSettingsError { @objc @@ -1687,8 +1819,8 @@ public class DBXSharingCreateSharedLinkWithSettingsErrorSettingsError: DBXSharin } } -/// The user is not allowed to create a shared link to the specified file. For example, this can occur if the -/// file is restricted or if the user's links are banned +/// The user is not allowed to create a shared link to the specified file. For example, this can occur if the +/// file is restricted or if the user's links are banned /// https://help.dropbox.com/files-folders/share/banned-links. @objc public class DBXSharingCreateSharedLinkWithSettingsErrorAccessDenied: DBXSharingCreateSharedLinkWithSettingsError { @@ -1699,6 +1831,28 @@ public class DBXSharingCreateSharedLinkWithSettingsErrorAccessDenied: DBXSharing } } +/// The current user has been banned https://help.dropbox.com/files-folders/share/banned-links for abuse +/// reasons. +@objc +public class DBXSharingCreateSharedLinkWithSettingsErrorBannedMember: DBXSharingCreateSharedLinkWithSettingsError { + @objc + public init() { + let swift = Sharing.CreateSharedLinkWithSettingsError.bannedMember + super.init(swift: swift) + } +} + +/// Your Dropbox folder will have too many shared folders after the operation. +/// https://help.dropbox.com/share/shared-folder-faq#Is-there-a-limit-to-the-number-of-shared-folders-I-can-create +@objc +public class DBXSharingCreateSharedLinkWithSettingsErrorTooManySharedFolders: DBXSharingCreateSharedLinkWithSettingsError { + @objc + public init() { + let swift = Sharing.CreateSharedLinkWithSettingsError.tooManySharedFolders + super.init(swift: swift) + } +} + /// Objective-C compatible SharedContentLinkMetadataBase struct @objc public class DBXSharingSharedContentLinkMetadataBase: NSObject { @@ -1715,15 +1869,14 @@ public class DBXSharingSharedContentLinkMetadataBase: NSObject { public var audienceOptions: [DBXSharingLinkAudience] { swift.audienceOptions.map { DBXSharingLinkAudience(swift: $0) } } /// The shared folder that prevents the link audience for this link from being more restrictive. @objc - public var audienceRestrictingSharedFolder: DBXSharingAudienceRestrictingSharedFolder? { - guard let swift = swift.audienceRestrictingSharedFolder else { return nil } + public var audienceRestrictingSharedFolder: DBXSharingAudienceRestrictingSharedFolder? { guard let swift = swift.audienceRestrictingSharedFolder else { return nil } return DBXSharingAudienceRestrictingSharedFolder(swift: swift) } /// The current audience of the link. @objc public var currentAudience: DBXSharingLinkAudience { DBXSharingLinkAudience(swift: swift.currentAudience) } - /// Whether the link has an expiry set on it. A link with an expiry will have its audience changed to members + /// Whether the link has an expiry set on it. A link with an expiry will have its audience changed to members /// when the expiry is reached. @objc public var expiry: Date? { swift.expiry } @@ -1969,7 +2122,7 @@ public class DBXSharingFileActionRelinquishMembership: DBXSharingFileAction { } } -/// Use create_view_link and create_edit_link instead. +/// Field is deprecated. Use create_view_link and create_edit_link instead. @objc public class DBXSharingFileActionShareLink: DBXSharingFileAction { @objc @@ -1979,7 +2132,7 @@ public class DBXSharingFileActionShareLink: DBXSharingFileAction { } } -/// Use create_view_link and create_edit_link instead. +/// Field is deprecated. Use create_view_link and create_edit_link instead. @objc public class DBXSharingFileActionCreateLink: DBXSharingFileAction { @objc @@ -2136,14 +2289,15 @@ public class DBXSharingSharedLinkMetadata: NSObject { @objc public var expires: Date? { swift.expires } /// The lowercased full path in the user's Dropbox. This always starts with a slash. This field will only be - /// present only if the linked file is in the authenticated user's dropbox. + /// present only if the linked file is in the authenticated user's dropbox and the user is the owner of the + /// link. @objc public var pathLower: String? { swift.pathLower } /// The link's access permissions. @objc public var linkPermissions: DBXSharingLinkPermissions { DBXSharingLinkPermissions(swift: swift.linkPermissions) } - /// The team membership information of the link's owner. This field will only be present if the link's owner - /// is a team member. + /// The team membership information of the link's owner. This field will only be present if the link's owner is + /// a team member. @objc public var teamMemberInfo: DBXSharingTeamMemberInfo? { guard let swift = swift.teamMemberInfo else { return nil } return DBXSharingTeamMemberInfo(swift: swift) @@ -2621,6 +2775,10 @@ public class DBXSharingFolderAction: NSObject { return DBXSharingFolderActionShareLink() case .createLink: return DBXSharingFolderActionCreateLink() + case .createViewLink: + return DBXSharingFolderActionCreateViewLink() + case .createEditLink: + return DBXSharingFolderActionCreateEditLink() case .setAccessInheritance: return DBXSharingFolderActionSetAccessInheritance() case .other: @@ -2696,6 +2854,16 @@ public class DBXSharingFolderAction: NSObject { self as? DBXSharingFolderActionCreateLink } + @objc + public var asCreateViewLink: DBXSharingFolderActionCreateViewLink? { + self as? DBXSharingFolderActionCreateViewLink + } + + @objc + public var asCreateEditLink: DBXSharingFolderActionCreateEditLink? { + self as? DBXSharingFolderActionCreateEditLink + } + @objc public var asSetAccessInheritance: DBXSharingFolderActionSetAccessInheritance? { self as? DBXSharingFolderActionSetAccessInheritance @@ -2817,7 +2985,7 @@ public class DBXSharingFolderActionLeaveACopy: DBXSharingFolderAction { } } -/// Use create_link instead. +/// Field is deprecated. Use create_view_link and create_edit_link instead. @objc public class DBXSharingFolderActionShareLink: DBXSharingFolderAction { @objc @@ -2827,7 +2995,7 @@ public class DBXSharingFolderActionShareLink: DBXSharingFolderAction { } } -/// Create a shared link for folder. +/// Field is deprecated. Use create_view_link and create_edit_link instead. @objc public class DBXSharingFolderActionCreateLink: DBXSharingFolderAction { @objc @@ -2837,6 +3005,26 @@ public class DBXSharingFolderActionCreateLink: DBXSharingFolderAction { } } +/// Create a shared link that only allows users to view the content. +@objc +public class DBXSharingFolderActionCreateViewLink: DBXSharingFolderAction { + @objc + public init() { + let swift = Sharing.FolderAction.createViewLink + super.init(swift: swift) + } +} + +/// Create a shared link that allows users to edit the content. +@objc +public class DBXSharingFolderActionCreateEditLink: DBXSharingFolderAction { + @objc + public init() { + let swift = Sharing.FolderAction.createEditLink + super.init(swift: swift) + } +} + /// Set whether the folder inherits permissions from its parent. @objc public class DBXSharingFolderActionSetAccessInheritance: DBXSharingFolderAction { @@ -2965,8 +3153,8 @@ public class DBXSharingGetFileMetadataArg: NSObject { /// The file to query. @objc public var file: String { swift.file } - /// A list of `FileAction`s corresponding to `FilePermission`s that should appear in the response's permissions - /// in SharedFileMetadata field describing the actions the authenticated user can perform on the file. + /// A list of `FileAction`s corresponding to `FilePermission`s that should appear in the response's permissions + /// in SharedFileMetadata field describing the actions the authenticated user can perform on the file. @objc public var actions: [DBXSharingFileAction]? { swift.actions?.map { DBXSharingFileAction(swift: $0) } } @@ -2991,8 +3179,8 @@ public class DBXSharingGetFileMetadataBatchArg: NSObject { /// The files to query. @objc public var files: [String] { swift.files } - /// A list of `FileAction`s corresponding to `FilePermission`s that should appear in the response's permissions - /// in SharedFileMetadata field describing the actions the authenticated user can perform on the file. + /// A list of `FileAction`s corresponding to `FilePermission`s that should appear in the response's permissions + /// in SharedFileMetadata field describing the actions the authenticated user can perform on the file. @objc public var actions: [DBXSharingFileAction]? { swift.actions?.map { DBXSharingFileAction(swift: $0) } } @@ -3200,8 +3388,8 @@ public class DBXSharingGetMetadataArgs: NSObject { /// The ID for the shared folder. @objc public var sharedFolderId: String { swift.sharedFolderId } - /// A list of `FolderAction`s corresponding to `FolderPermission`s that should appear in the response's - /// permissions in SharedFolderMetadata field describing the actions the authenticated user can perform on + /// A list of `FolderAction`s corresponding to `FolderPermission`s that should appear in the response's + /// permissions in SharedFolderMetadata field describing the actions the authenticated user can perform on /// the folder. @objc public var actions: [DBXSharingFolderAction]? { swift.actions?.map { DBXSharingFolderAction(swift: $0) } } @@ -3238,6 +3426,8 @@ public class DBXSharingSharedLinkError: NSObject { return DBXSharingSharedLinkErrorSharedLinkAccessDenied() case .unsupportedLinkType: return DBXSharingSharedLinkErrorUnsupportedLinkType() + case .unsupportedParameterField: + return DBXSharingSharedLinkErrorUnsupportedParameterField() case .other: return DBXSharingSharedLinkErrorOther() } @@ -3261,6 +3451,11 @@ public class DBXSharingSharedLinkError: NSObject { self as? DBXSharingSharedLinkErrorUnsupportedLinkType } + @objc + public var asUnsupportedParameterField: DBXSharingSharedLinkErrorUnsupportedParameterField? { + self as? DBXSharingSharedLinkErrorUnsupportedParameterField + } + @objc public var asOther: DBXSharingSharedLinkErrorOther? { self as? DBXSharingSharedLinkErrorOther @@ -3297,6 +3492,16 @@ public class DBXSharingSharedLinkErrorUnsupportedLinkType: DBXSharingSharedLinkE } } +/// Private shared links do not support `path` or `link_password` parameter fields. +@objc +public class DBXSharingSharedLinkErrorUnsupportedParameterField: DBXSharingSharedLinkError { + @objc + public init() { + let swift = Sharing.SharedLinkError.unsupportedParameterField + super.init(swift: swift) + } +} + /// An unspecified error. @objc public class DBXSharingSharedLinkErrorOther: DBXSharingSharedLinkError { @@ -3324,6 +3529,8 @@ public class DBXSharingGetSharedLinkFileError: NSObject { return DBXSharingGetSharedLinkFileErrorSharedLinkAccessDenied() case .unsupportedLinkType: return DBXSharingGetSharedLinkFileErrorUnsupportedLinkType() + case .unsupportedParameterField: + return DBXSharingGetSharedLinkFileErrorUnsupportedParameterField() case .other: return DBXSharingGetSharedLinkFileErrorOther() case .sharedLinkIsDirectory: @@ -3349,6 +3556,11 @@ public class DBXSharingGetSharedLinkFileError: NSObject { self as? DBXSharingGetSharedLinkFileErrorUnsupportedLinkType } + @objc + public var asUnsupportedParameterField: DBXSharingGetSharedLinkFileErrorUnsupportedParameterField? { + self as? DBXSharingGetSharedLinkFileErrorUnsupportedParameterField + } + @objc public var asOther: DBXSharingGetSharedLinkFileErrorOther? { self as? DBXSharingGetSharedLinkFileErrorOther @@ -3390,6 +3602,16 @@ public class DBXSharingGetSharedLinkFileErrorUnsupportedLinkType: DBXSharingGetS } } +/// Private shared links do not support `path` or `link_password` parameter fields. +@objc +public class DBXSharingGetSharedLinkFileErrorUnsupportedParameterField: DBXSharingGetSharedLinkFileError { + @objc + public init() { + let swift = Sharing.GetSharedLinkFileError.unsupportedParameterField + super.init(swift: swift) + } +} + /// An unspecified error. @objc public class DBXSharingGetSharedLinkFileErrorOther: DBXSharingGetSharedLinkFileError { @@ -3544,11 +3766,11 @@ public class DBXSharingGetSharedLinksResult: NSObject { public override var description: String { swift.description } } -/// The information about a group. Groups is a way to manage a list of users who need same access permission to the +/// The information about a group. Groups is a way to manage a list of users who need same access permission to the /// shared folder. @objc public class DBXSharingGroupInfo: DBXTeamCommonGroupSummary { - /// The type of group. + /// Field is deprecated. The type of group. @objc public var groupType: DBXTeamCommonGroupType { DBXTeamCommonGroupType(swift: subSwift.groupType) } /// If the current user is a member of the group. @@ -3610,10 +3832,10 @@ public class DBXSharingMembershipInfo: NSObject { /// MemberActions in the request. @objc public var permissions: [DBXSharingMemberPermission]? { swift.permissions?.map { DBXSharingMemberPermission(swift: $0) } } - /// Never set. + /// Field is deprecated. Never set. @objc public var initials: String? { swift.initials } - /// True if the member has access from a parent folder. + /// True if the member has access on a parent folder. @objc public var isInherited: NSNumber { swift.isInherited as NSNumber } @@ -4306,8 +4528,8 @@ public class DBXSharingLinkAudienceNoOne: DBXSharingLinkAudience { } } -/// Use `require_password` instead. A link-specific password is required to access the link. Login is not -/// required. +/// Field is deprecated. Use `require_password` instead. A link-specific password is required to access the +/// link. Login is not required. @objc public class DBXSharingLinkAudiencePassword: DBXSharingLinkAudience { @objc @@ -4317,7 +4539,7 @@ public class DBXSharingLinkAudiencePassword: DBXSharingLinkAudience { } } -/// Link is accessible only by members of the content. +/// Field is deprecated. Link is accessible only by members of the content. @objc public class DBXSharingLinkAudienceMembers: DBXSharingLinkAudience { @objc @@ -4890,10 +5112,11 @@ public class DBXSharingLinkPermissions: NSObject { /// restriction on the link. @objc public var canDisallowDownload: NSNumber { swift.canDisallowDownload as NSNumber } - /// Whether comments are enabled for the linked file. This takes the team commenting policy into account. + /// Field is deprecated. Whether comments are enabled for the linked file. This takes the team commenting policy + /// into account. @objc public var allowComments: NSNumber { swift.allowComments as NSNumber } - /// Whether the team has disabled commenting globally. + /// Field is deprecated. Whether the team has disabled commenting globally. @objc public var teamRestrictsComments: NSNumber { swift.teamRestrictsComments as NSNumber } /// A list of link audience options the user might be able to set as the new audience. @@ -4911,6 +5134,34 @@ public class DBXSharingLinkPermissions: NSObject { /// Whether the user can use extended sharing controls, based on their account type. @objc public var canUseExtendedSharingControls: NSNumber? { swift.canUseExtendedSharingControls as NSNumber? } + /// Whether a user can save the content to their Dropbox account. + @objc + public var canSync: NSNumber? { swift.canSync as NSNumber? } + /// Whether the user can request access to the content. + @objc + public var canRequestAccess: NSNumber? { swift.canRequestAccess as NSNumber? } + /// Whether the updated externally available shared link must have password set. Not provided if the link is not + /// team owned. + @objc + public var enforceSharedLinkPasswordPolicy: DBXTeamPoliciesEnforceLinkPasswordPolicy? { guard let swift = swift.enforceSharedLinkPasswordPolicy else { return nil } + return DBXTeamPoliciesEnforceLinkPasswordPolicy(swift: swift) + } + + /// Existing owning team's policy for default number of days from today to link's expiration. Not provided if + /// the link is not team owned. + @objc + public var daysToExpirePolicy: DBXTeamPoliciesDefaultLinkExpirationDaysPolicy? { guard let swift = swift.daysToExpirePolicy else { return nil } + return DBXTeamPoliciesDefaultLinkExpirationDaysPolicy(swift: swift) + } + + /// When owning team's policy changeSharedLinkExpirationPolicy is notAllowed in ChangeLinkExpirationPolicy, the + /// updated externally available shared link expiration value cannot be less strict than daysToExpirePolicy. + /// In this case daysToExpirePolicy is expected to be different from `none`. Not provided if the link is not + /// team owned. + @objc + public var changeSharedLinkExpirationPolicy: DBXSharingChangeLinkExpirationPolicy? { guard let swift = swift.changeSharedLinkExpirationPolicy else { return nil } + return DBXSharingChangeLinkExpirationPolicy(swift: swift) + } @objc public init( @@ -4932,7 +5183,12 @@ public class DBXSharingLinkPermissions: NSObject { canSetPassword: NSNumber?, canRemovePassword: NSNumber?, requirePassword: NSNumber?, - canUseExtendedSharingControls: NSNumber? + canUseExtendedSharingControls: NSNumber?, + canSync: NSNumber?, + canRequestAccess: NSNumber?, + enforceSharedLinkPasswordPolicy: DBXTeamPoliciesEnforceLinkPasswordPolicy?, + daysToExpirePolicy: DBXTeamPoliciesDefaultLinkExpirationDaysPolicy?, + changeSharedLinkExpirationPolicy: DBXSharingChangeLinkExpirationPolicy? ) { self.swift = Sharing.LinkPermissions( canRevoke: canRevoke.boolValue, @@ -4953,7 +5209,12 @@ public class DBXSharingLinkPermissions: NSObject { canSetPassword: canSetPassword?.boolValue, canRemovePassword: canRemovePassword?.boolValue, requirePassword: requirePassword?.boolValue, - canUseExtendedSharingControls: canUseExtendedSharingControls?.boolValue + canUseExtendedSharingControls: canUseExtendedSharingControls?.boolValue, + canSync: canSync?.boolValue, + canRequestAccess: canRequestAccess?.boolValue, + enforceSharedLinkPasswordPolicy: enforceSharedLinkPasswordPolicy?.swift, + daysToExpirePolicy: daysToExpirePolicy?.swift, + changeSharedLinkExpirationPolicy: changeSharedLinkExpirationPolicy?.swift ) } @@ -5051,7 +5312,7 @@ public class DBXSharingListFileMembersBatchArg: NSObject { /// Files for which to return members. @objc public var files: [String] { swift.files } - /// Number of members to return max per query. Defaults to 10 if no limit is specified. + /// Number of members to return max per query. Defaults to 1000 if no limit is specified. @objc public var limit: NSNumber { swift.limit as NSNumber } @@ -5402,8 +5663,8 @@ public class DBXSharingListFilesArg: NSObject { /// Number of files to return max per query. Defaults to 100 if no limit is specified. @objc public var limit: NSNumber { swift.limit as NSNumber } - /// A list of `FileAction`s corresponding to `FilePermission`s that should appear in the response's permissions - /// in SharedFileMetadata field describing the actions the authenticated user can perform on the file. + /// A list of `FileAction`s corresponding to `FilePermission`s that should appear in the response's permissions + /// in SharedFileMetadata field describing the actions the authenticated user can perform on the file. @objc public var actions: [DBXSharingFileAction]? { swift.actions?.map { DBXSharingFileAction(swift: $0) } } @@ -5572,13 +5833,18 @@ public class DBXSharingListFolderMembersCursorArg: NSObject { /// Objective-C compatible ListFolderMembersArgs struct @objc public class DBXSharingListFolderMembersArgs: DBXSharingListFolderMembersCursorArg { - /// The ID for the shared folder. + /// The ID for the shared folder. When path is provided, the folder ID will be extracted from the path instead. @objc public var sharedFolderId: String { subSwift.sharedFolderId } + /// Optional path to get inherited members. When omitted, uses shared_folder_id to return direct members. When + /// provided, extracts folder ID from this path and returns users who have access through parent shared + /// folder. + @objc + public var path: String? { subSwift.path } @objc - public init(sharedFolderId: String, actions: [DBXSharingMemberAction]?, limit: NSNumber) { - let swift = Sharing.ListFolderMembersArgs(sharedFolderId: sharedFolderId, actions: actions?.map(\.swift), limit: limit.uint32Value) + public init(sharedFolderId: String, actions: [DBXSharingMemberAction]?, limit: NSNumber, path: String?) { + let swift = Sharing.ListFolderMembersArgs(sharedFolderId: sharedFolderId, actions: actions?.map(\.swift), limit: limit.uint32Value, path: path) self.subSwift = swift super.init(swift: swift) } @@ -5696,8 +5962,8 @@ public class DBXSharingListFoldersArgs: NSObject { /// The maximum number of results to return per request. @objc public var limit: NSNumber { swift.limit as NSNumber } - /// A list of `FolderAction`s corresponding to `FolderPermission`s that should appear in the response's - /// permissions in SharedFolderMetadata field describing the actions the authenticated user can perform on + /// A list of `FolderAction`s corresponding to `FolderPermission`s that should appear in the response's + /// permissions in SharedFolderMetadata field describing the actions the authenticated user can perform on /// the folder. @objc public var actions: [DBXSharingFolderAction]? { swift.actions?.map { DBXSharingFolderAction(swift: $0) } } @@ -6170,6 +6436,8 @@ public class DBXSharingMemberPolicy: NSObject { return DBXSharingMemberPolicyTeam() case .anyone: return DBXSharingMemberPolicyAnyone() + case .teamAndApproved: + return DBXSharingMemberPolicyTeamAndApproved() case .other: return DBXSharingMemberPolicyOther() } @@ -6188,6 +6456,11 @@ public class DBXSharingMemberPolicy: NSObject { self as? DBXSharingMemberPolicyAnyone } + @objc + public var asTeamAndApproved: DBXSharingMemberPolicyTeamAndApproved? { + self as? DBXSharingMemberPolicyTeamAndApproved + } + @objc public var asOther: DBXSharingMemberPolicyOther? { self as? DBXSharingMemberPolicyOther @@ -6214,6 +6487,16 @@ public class DBXSharingMemberPolicyAnyone: DBXSharingMemberPolicy { } } +/// Only a teammate and approved people can become a member. +@objc +public class DBXSharingMemberPolicyTeamAndApproved: DBXSharingMemberPolicy { + @objc + public init() { + let swift = Sharing.MemberPolicy.teamAndApproved + super.init(swift: swift) + } +} + /// An unspecified error. @objc public class DBXSharingMemberPolicyOther: DBXSharingMemberPolicy { @@ -6348,6 +6631,8 @@ public class DBXSharingModifySharedLinkSettingsError: NSObject { return DBXSharingModifySharedLinkSettingsErrorSharedLinkAccessDenied() case .unsupportedLinkType: return DBXSharingModifySharedLinkSettingsErrorUnsupportedLinkType() + case .unsupportedParameterField: + return DBXSharingModifySharedLinkSettingsErrorUnsupportedParameterField() case .other: return DBXSharingModifySharedLinkSettingsErrorOther() case .settingsError(let swiftArg): @@ -6376,6 +6661,11 @@ public class DBXSharingModifySharedLinkSettingsError: NSObject { self as? DBXSharingModifySharedLinkSettingsErrorUnsupportedLinkType } + @objc + public var asUnsupportedParameterField: DBXSharingModifySharedLinkSettingsErrorUnsupportedParameterField? { + self as? DBXSharingModifySharedLinkSettingsErrorUnsupportedParameterField + } + @objc public var asOther: DBXSharingModifySharedLinkSettingsErrorOther? { self as? DBXSharingModifySharedLinkSettingsErrorOther @@ -6422,6 +6712,16 @@ public class DBXSharingModifySharedLinkSettingsErrorUnsupportedLinkType: DBXShar } } +/// Private shared links do not support `path` or `link_password` parameter fields. +@objc +public class DBXSharingModifySharedLinkSettingsErrorUnsupportedParameterField: DBXSharingModifySharedLinkSettingsError { + @objc + public init() { + let swift = Sharing.ModifySharedLinkSettingsError.unsupportedParameterField + super.init(swift: swift) + } +} + /// An unspecified error. @objc public class DBXSharingModifySharedLinkSettingsErrorOther: DBXSharingModifySharedLinkSettingsError { @@ -6504,6 +6804,8 @@ public class DBXSharingMountFolderError: NSObject { return DBXSharingMountFolderErrorNoPermission() case .notMountable: return DBXSharingMountFolderErrorNotMountable() + case .mustAutomount: + return DBXSharingMountFolderErrorMustAutomount() case .other: return DBXSharingMountFolderErrorOther() } @@ -6542,6 +6844,11 @@ public class DBXSharingMountFolderError: NSObject { self as? DBXSharingMountFolderErrorNotMountable } + @objc + public var asMustAutomount: DBXSharingMountFolderErrorMustAutomount? { + self as? DBXSharingMountFolderErrorMustAutomount + } + @objc public var asOther: DBXSharingMountFolderErrorOther? { self as? DBXSharingMountFolderErrorOther @@ -6617,6 +6924,17 @@ public class DBXSharingMountFolderErrorNotMountable: DBXSharingMountFolderError } } +/// The shared folder is not mountable by directly call APIs, instead the automounter is responsible for +/// mounting it. +@objc +public class DBXSharingMountFolderErrorMustAutomount: DBXSharingMountFolderError { + @objc + public init() { + let swift = Sharing.MountFolderError.mustAutomount + super.init(swift: swift) + } +} + /// An unspecified error. @objc public class DBXSharingMountFolderErrorOther: DBXSharingMountFolderError { @@ -7030,21 +7348,23 @@ public class DBXSharingPermissionDeniedReasonOther: DBXSharingPermissionDeniedRe } } -/// Objective-C compatible RelinquishFileMembershipArg struct +/// Removes all self-removable access from a file or folder. For folders: always relinquishes without keeping a +/// local copy (leave_a_copy=false behavior). If you need control over keeping folder contents, use the +/// relinquish_folder_membership endpoint instead. @objc -public class DBXSharingRelinquishFileMembershipArg: NSObject { - /// The path or id for the file. +public class DBXSharingRelinquishAccessArg: NSObject { + /// The id for the file or folder. @objc - public var file: String { swift.file } + public var fileId: String { swift.fileId } @objc - public init(file: String) { - self.swift = Sharing.RelinquishFileMembershipArg(file: file) + public init(fileId: String) { + self.swift = Sharing.RelinquishAccessArg(fileId: fileId) } - let swift: Sharing.RelinquishFileMembershipArg + let swift: Sharing.RelinquishAccessArg - public init(swift: Sharing.RelinquishFileMembershipArg) { + public init(swift: Sharing.RelinquishAccessArg) { self.swift = swift } @@ -7052,26 +7372,31 @@ public class DBXSharingRelinquishFileMembershipArg: NSObject { public override var description: String { swift.description } } -/// Objective-C compatible RelinquishFileMembershipError union +/// Error result for the relinquish_access endpoint. @objc -public class DBXSharingRelinquishFileMembershipError: NSObject { - let swift: Sharing.RelinquishFileMembershipError +public class DBXSharingRelinquishAccessError: NSObject { + let swift: Sharing.RelinquishAccessError - public init(swift: Sharing.RelinquishFileMembershipError) { + public init(swift: Sharing.RelinquishAccessError) { self.swift = swift } - public static func factory(swift: Sharing.RelinquishFileMembershipError) -> DBXSharingRelinquishFileMembershipError { + public static func factory(swift: Sharing.RelinquishAccessError) -> DBXSharingRelinquishAccessError { switch swift { - case .accessError(let swiftArg): - let arg = DBXSharingSharingFileAccessError(swift: swiftArg) - return DBXSharingRelinquishFileMembershipErrorAccessError(arg) - case .groupAccess: - return DBXSharingRelinquishFileMembershipErrorGroupAccess() + case .invalidFileId: + return DBXSharingRelinquishAccessErrorInvalidFileId() + case .emailUnverified: + return DBXSharingRelinquishAccessErrorEmailUnverified() + case .owner: + return DBXSharingRelinquishAccessErrorOwner() + case .noExplicitAccess: + return DBXSharingRelinquishAccessErrorNoExplicitAccess() + case .teamFolder: + return DBXSharingRelinquishAccessErrorTeamFolder() case .noPermission: - return DBXSharingRelinquishFileMembershipErrorNoPermission() + return DBXSharingRelinquishAccessErrorNoPermission() case .other: - return DBXSharingRelinquishFileMembershipErrorOther() + return DBXSharingRelinquishAccessErrorOther() } } @@ -7079,77 +7404,246 @@ public class DBXSharingRelinquishFileMembershipError: NSObject { public override var description: String { swift.description } @objc - public var asAccessError: DBXSharingRelinquishFileMembershipErrorAccessError? { - self as? DBXSharingRelinquishFileMembershipErrorAccessError + public var asInvalidFileId: DBXSharingRelinquishAccessErrorInvalidFileId? { + self as? DBXSharingRelinquishAccessErrorInvalidFileId } @objc - public var asGroupAccess: DBXSharingRelinquishFileMembershipErrorGroupAccess? { - self as? DBXSharingRelinquishFileMembershipErrorGroupAccess + public var asEmailUnverified: DBXSharingRelinquishAccessErrorEmailUnverified? { + self as? DBXSharingRelinquishAccessErrorEmailUnverified } @objc - public var asNoPermission: DBXSharingRelinquishFileMembershipErrorNoPermission? { - self as? DBXSharingRelinquishFileMembershipErrorNoPermission + public var asOwner: DBXSharingRelinquishAccessErrorOwner? { + self as? DBXSharingRelinquishAccessErrorOwner } @objc - public var asOther: DBXSharingRelinquishFileMembershipErrorOther? { - self as? DBXSharingRelinquishFileMembershipErrorOther + public var asNoExplicitAccess: DBXSharingRelinquishAccessErrorNoExplicitAccess? { + self as? DBXSharingRelinquishAccessErrorNoExplicitAccess + } + + @objc + public var asTeamFolder: DBXSharingRelinquishAccessErrorTeamFolder? { + self as? DBXSharingRelinquishAccessErrorTeamFolder + } + + @objc + public var asNoPermission: DBXSharingRelinquishAccessErrorNoPermission? { + self as? DBXSharingRelinquishAccessErrorNoPermission + } + + @objc + public var asOther: DBXSharingRelinquishAccessErrorOther? { + self as? DBXSharingRelinquishAccessErrorOther } } -/// An unspecified error. +/// File or folder not found or has been deleted. @objc -public class DBXSharingRelinquishFileMembershipErrorAccessError: DBXSharingRelinquishFileMembershipError { +public class DBXSharingRelinquishAccessErrorInvalidFileId: DBXSharingRelinquishAccessError { @objc - public var accessError: DBXSharingSharingFileAccessError + public init() { + let swift = Sharing.RelinquishAccessError.invalidFileId + super.init(swift: swift) + } +} +/// Caller's email address is not verified. +@objc +public class DBXSharingRelinquishAccessErrorEmailUnverified: DBXSharingRelinquishAccessError { @objc - public init(_ arg: DBXSharingSharingFileAccessError) { - self.accessError = arg - let swift = Sharing.RelinquishFileMembershipError.accessError(arg.swift) + public init() { + let swift = Sharing.RelinquishAccessError.emailUnverified super.init(swift: swift) } } -/// The current user has access to the shared file via a group. You can't relinquish membership to a file -/// shared via groups. +/// User is the owner of the file/folder. @objc -public class DBXSharingRelinquishFileMembershipErrorGroupAccess: DBXSharingRelinquishFileMembershipError { +public class DBXSharingRelinquishAccessErrorOwner: DBXSharingRelinquishAccessError { @objc public init() { - let swift = Sharing.RelinquishFileMembershipError.groupAccess + let swift = Sharing.RelinquishAccessError.owner super.init(swift: swift) } } -/// The current user does not have permission to perform this action. +/// User has only non-removable access — inherited from a parent folder or via group membership. Either way, +/// relinquish_access cannot remove the caller's access from this surface; the caller must take action +/// on the source of the access (e.g. leave the parent shared folder, or be removed from the group). @objc -public class DBXSharingRelinquishFileMembershipErrorNoPermission: DBXSharingRelinquishFileMembershipError { +public class DBXSharingRelinquishAccessErrorNoExplicitAccess: DBXSharingRelinquishAccessError { @objc public init() { - let swift = Sharing.RelinquishFileMembershipError.noPermission + let swift = Sharing.RelinquishAccessError.noExplicitAccess super.init(swift: swift) } } -/// An unspecified error. +/// Team folder restrictions apply. @objc -public class DBXSharingRelinquishFileMembershipErrorOther: DBXSharingRelinquishFileMembershipError { +public class DBXSharingRelinquishAccessErrorTeamFolder: DBXSharingRelinquishAccessError { @objc public init() { - let swift = Sharing.RelinquishFileMembershipError.other + let swift = Sharing.RelinquishAccessError.teamFolder super.init(swift: swift) } } -/// Objective-C compatible RelinquishFolderMembershipArg struct +/// Caller does not have permission to perform this action. Generic fallback. @objc -public class DBXSharingRelinquishFolderMembershipArg: NSObject { - /// The ID for the shared folder. +public class DBXSharingRelinquishAccessErrorNoPermission: DBXSharingRelinquishAccessError { @objc - public var sharedFolderId: String { swift.sharedFolderId } + public init() { + let swift = Sharing.RelinquishAccessError.noPermission + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXSharingRelinquishAccessErrorOther: DBXSharingRelinquishAccessError { + @objc + public init() { + let swift = Sharing.RelinquishAccessError.other + super.init(swift: swift) + } +} + +/// Returns an empty response for the relinquish_access endpoint. +@objc +public class DBXSharingRelinquishAccessResult: NSObject { + let swift: Sharing.RelinquishAccessResult + + public init(swift: Sharing.RelinquishAccessResult) { + self.swift = swift + } + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible RelinquishFileMembershipArg struct +@objc +public class DBXSharingRelinquishFileMembershipArg: NSObject { + /// The path or id for the file. + @objc + public var file: String { swift.file } + + @objc + public init(file: String) { + self.swift = Sharing.RelinquishFileMembershipArg(file: file) + } + + let swift: Sharing.RelinquishFileMembershipArg + + public init(swift: Sharing.RelinquishFileMembershipArg) { + self.swift = swift + } + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible RelinquishFileMembershipError union +@objc +public class DBXSharingRelinquishFileMembershipError: NSObject { + let swift: Sharing.RelinquishFileMembershipError + + public init(swift: Sharing.RelinquishFileMembershipError) { + self.swift = swift + } + + public static func factory(swift: Sharing.RelinquishFileMembershipError) -> DBXSharingRelinquishFileMembershipError { + switch swift { + case .accessError(let swiftArg): + let arg = DBXSharingSharingFileAccessError(swift: swiftArg) + return DBXSharingRelinquishFileMembershipErrorAccessError(arg) + case .groupAccess: + return DBXSharingRelinquishFileMembershipErrorGroupAccess() + case .noPermission: + return DBXSharingRelinquishFileMembershipErrorNoPermission() + case .other: + return DBXSharingRelinquishFileMembershipErrorOther() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asAccessError: DBXSharingRelinquishFileMembershipErrorAccessError? { + self as? DBXSharingRelinquishFileMembershipErrorAccessError + } + + @objc + public var asGroupAccess: DBXSharingRelinquishFileMembershipErrorGroupAccess? { + self as? DBXSharingRelinquishFileMembershipErrorGroupAccess + } + + @objc + public var asNoPermission: DBXSharingRelinquishFileMembershipErrorNoPermission? { + self as? DBXSharingRelinquishFileMembershipErrorNoPermission + } + + @objc + public var asOther: DBXSharingRelinquishFileMembershipErrorOther? { + self as? DBXSharingRelinquishFileMembershipErrorOther + } +} + +/// An unspecified error. +@objc +public class DBXSharingRelinquishFileMembershipErrorAccessError: DBXSharingRelinquishFileMembershipError { + @objc + public var accessError: DBXSharingSharingFileAccessError + + @objc + public init(_ arg: DBXSharingSharingFileAccessError) { + self.accessError = arg + let swift = Sharing.RelinquishFileMembershipError.accessError(arg.swift) + super.init(swift: swift) + } +} + +/// The current user has access to the shared file via a group. You can't relinquish membership to a file +/// shared via groups. +@objc +public class DBXSharingRelinquishFileMembershipErrorGroupAccess: DBXSharingRelinquishFileMembershipError { + @objc + public init() { + let swift = Sharing.RelinquishFileMembershipError.groupAccess + super.init(swift: swift) + } +} + +/// The current user does not have permission to perform this action. +@objc +public class DBXSharingRelinquishFileMembershipErrorNoPermission: DBXSharingRelinquishFileMembershipError { + @objc + public init() { + let swift = Sharing.RelinquishFileMembershipError.noPermission + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXSharingRelinquishFileMembershipErrorOther: DBXSharingRelinquishFileMembershipError { + @objc + public init() { + let swift = Sharing.RelinquishFileMembershipError.other + super.init(swift: swift) + } +} + +/// Objective-C compatible RelinquishFolderMembershipArg struct +@objc +public class DBXSharingRelinquishFolderMembershipArg: NSObject { + /// The ID for the shared folder. + @objc + public var sharedFolderId: String { swift.sharedFolderId } /// Keep a copy of the folder's contents upon relinquishing membership. This must be set to false when the /// folder is within a team folder or another shared folder. @objc @@ -7879,6 +8373,8 @@ public class DBXSharingRevokeSharedLinkError: NSObject { return DBXSharingRevokeSharedLinkErrorSharedLinkAccessDenied() case .unsupportedLinkType: return DBXSharingRevokeSharedLinkErrorUnsupportedLinkType() + case .unsupportedParameterField: + return DBXSharingRevokeSharedLinkErrorUnsupportedParameterField() case .other: return DBXSharingRevokeSharedLinkErrorOther() case .sharedLinkMalformed: @@ -7904,6 +8400,11 @@ public class DBXSharingRevokeSharedLinkError: NSObject { self as? DBXSharingRevokeSharedLinkErrorUnsupportedLinkType } + @objc + public var asUnsupportedParameterField: DBXSharingRevokeSharedLinkErrorUnsupportedParameterField? { + self as? DBXSharingRevokeSharedLinkErrorUnsupportedParameterField + } + @objc public var asOther: DBXSharingRevokeSharedLinkErrorOther? { self as? DBXSharingRevokeSharedLinkErrorOther @@ -7945,6 +8446,16 @@ public class DBXSharingRevokeSharedLinkErrorUnsupportedLinkType: DBXSharingRevok } } +/// Private shared links do not support `path` or `link_password` parameter fields. +@objc +public class DBXSharingRevokeSharedLinkErrorUnsupportedParameterField: DBXSharingRevokeSharedLinkError { + @objc + public init() { + let swift = Sharing.RevokeSharedLinkError.unsupportedParameterField + super.init(swift: swift) + } +} + /// An unspecified error. @objc public class DBXSharingRevokeSharedLinkErrorOther: DBXSharingRevokeSharedLinkError { @@ -8136,8 +8647,8 @@ public class DBXSharingShareFolderArgBase: NSObject { /// Objective-C compatible ShareFolderArg struct @objc public class DBXSharingShareFolderArg: DBXSharingShareFolderArgBase { - /// A list of `FolderAction`s corresponding to `FolderPermission`s that should appear in the response's - /// permissions in SharedFolderMetadata field describing the actions the authenticated user can perform on + /// A list of `FolderAction`s corresponding to `FolderPermission`s that should appear in the response's + /// permissions in SharedFolderMetadata field describing the actions the authenticated user can perform on /// the folder. @objc public var actions: [DBXSharingFolderAction]? { subSwift.actions?.map { DBXSharingFolderAction(swift: $0) } } @@ -8264,7 +8775,7 @@ public class DBXSharingShareFolderErrorBaseBadPath: DBXSharingShareFolderErrorBa } } -/// Team policy is more restrictive than memberPolicy in ShareFolderArg. +/// Team policy or group sharing settings are more restrictive than memberPolicy in ShareFolderArg. @objc public class DBXSharingShareFolderErrorBaseTeamPolicyDisallowsMemberPolicy: DBXSharingShareFolderErrorBase { @objc @@ -8380,7 +8891,7 @@ public class DBXSharingShareFolderErrorBadPath: DBXSharingShareFolderError { } } -/// Team policy is more restrictive than memberPolicy in ShareFolderArg. +/// Team policy or group sharing settings are more restrictive than memberPolicy in ShareFolderArg. @objc public class DBXSharingShareFolderErrorTeamPolicyDisallowsMemberPolicy: DBXSharingShareFolderError { @objc @@ -8420,25 +8931,25 @@ public class DBXSharingShareFolderErrorNoPermission: DBXSharingShareFolderError } } -/// Objective-C compatible ShareFolderJobStatus union +/// Objective-C compatible ShareFolderErrorBaseV2 union @objc -public class DBXSharingShareFolderJobStatus: NSObject { - let swift: Sharing.ShareFolderJobStatus +public class DBXSharingShareFolderErrorBaseV2: NSObject { + let swift: Sharing.ShareFolderErrorBaseV2 - public init(swift: Sharing.ShareFolderJobStatus) { + public init(swift: Sharing.ShareFolderErrorBaseV2) { self.swift = swift } - public static func factory(swift: Sharing.ShareFolderJobStatus) -> DBXSharingShareFolderJobStatus { + public static func factory(swift: Sharing.ShareFolderErrorBaseV2) -> DBXSharingShareFolderErrorBaseV2 { switch swift { - case .inProgress: - return DBXSharingShareFolderJobStatusInProgress() - case .complete(let swiftArg): - let arg = DBXSharingSharedFolderMetadata(swift: swiftArg) - return DBXSharingShareFolderJobStatusComplete(arg) - case .failed(let swiftArg): - let arg = DBXSharingShareFolderError(swift: swiftArg) - return DBXSharingShareFolderJobStatusFailed(arg) + case .emailUnverified: + return DBXSharingShareFolderErrorBaseV2EmailUnverified() + case .teamPolicyDisallowsMemberPolicy: + return DBXSharingShareFolderErrorBaseV2TeamPolicyDisallowsMemberPolicy() + case .disallowedSharedLinkPolicy: + return DBXSharingShareFolderErrorBaseV2DisallowedSharedLinkPolicy() + case .other: + return DBXSharingShareFolderErrorBaseV2Other() } } @@ -8446,76 +8957,88 @@ public class DBXSharingShareFolderJobStatus: NSObject { public override var description: String { swift.description } @objc - public var asInProgress: DBXSharingShareFolderJobStatusInProgress? { - self as? DBXSharingShareFolderJobStatusInProgress + public var asEmailUnverified: DBXSharingShareFolderErrorBaseV2EmailUnverified? { + self as? DBXSharingShareFolderErrorBaseV2EmailUnverified } @objc - public var asComplete: DBXSharingShareFolderJobStatusComplete? { - self as? DBXSharingShareFolderJobStatusComplete + public var asTeamPolicyDisallowsMemberPolicy: DBXSharingShareFolderErrorBaseV2TeamPolicyDisallowsMemberPolicy? { + self as? DBXSharingShareFolderErrorBaseV2TeamPolicyDisallowsMemberPolicy } @objc - public var asFailed: DBXSharingShareFolderJobStatusFailed? { - self as? DBXSharingShareFolderJobStatusFailed + public var asDisallowedSharedLinkPolicy: DBXSharingShareFolderErrorBaseV2DisallowedSharedLinkPolicy? { + self as? DBXSharingShareFolderErrorBaseV2DisallowedSharedLinkPolicy + } + + @objc + public var asOther: DBXSharingShareFolderErrorBaseV2Other? { + self as? DBXSharingShareFolderErrorBaseV2Other } } -/// The asynchronous job is still in progress. +/// This user's email address is not verified. This functionality is only available on accounts with a verified +/// email address. Users can verify their email address here https://www.dropbox.com/help/317. @objc -public class DBXSharingShareFolderJobStatusInProgress: DBXSharingShareFolderJobStatus { +public class DBXSharingShareFolderErrorBaseV2EmailUnverified: DBXSharingShareFolderErrorBaseV2 { @objc public init() { - let swift = Sharing.ShareFolderJobStatus.inProgress + let swift = Sharing.ShareFolderErrorBaseV2.emailUnverified super.init(swift: swift) } } -/// The share job has finished. The value is the metadata for the folder. +/// Team policy or group sharing settings are more restrictive than memberPolicy in ShareFolderArg. @objc -public class DBXSharingShareFolderJobStatusComplete: DBXSharingShareFolderJobStatus { +public class DBXSharingShareFolderErrorBaseV2TeamPolicyDisallowsMemberPolicy: DBXSharingShareFolderErrorBaseV2 { @objc - public var complete: DBXSharingSharedFolderMetadata + public init() { + let swift = Sharing.ShareFolderErrorBaseV2.teamPolicyDisallowsMemberPolicy + super.init(swift: swift) + } +} +/// The current user's account is not allowed to select the specified sharedLinkPolicy in ShareFolderArg. +@objc +public class DBXSharingShareFolderErrorBaseV2DisallowedSharedLinkPolicy: DBXSharingShareFolderErrorBaseV2 { @objc - public init(_ arg: DBXSharingSharedFolderMetadata) { - self.complete = arg - let swift = Sharing.ShareFolderJobStatus.complete(arg.subSwift) + public init() { + let swift = Sharing.ShareFolderErrorBaseV2.disallowedSharedLinkPolicy super.init(swift: swift) } } /// An unspecified error. @objc -public class DBXSharingShareFolderJobStatusFailed: DBXSharingShareFolderJobStatus { - @objc - public var failed: DBXSharingShareFolderError - +public class DBXSharingShareFolderErrorBaseV2Other: DBXSharingShareFolderErrorBaseV2 { @objc - public init(_ arg: DBXSharingShareFolderError) { - self.failed = arg - let swift = Sharing.ShareFolderJobStatus.failed(arg.swift) + public init() { + let swift = Sharing.ShareFolderErrorBaseV2.other super.init(swift: swift) } } -/// Objective-C compatible ShareFolderLaunch union +/// Objective-C compatible ShareFolderErrorV2 union @objc -public class DBXSharingShareFolderLaunch: NSObject { - let swift: Sharing.ShareFolderLaunch +public class DBXSharingShareFolderErrorV2: NSObject { + let swift: Sharing.ShareFolderErrorV2 - public init(swift: Sharing.ShareFolderLaunch) { + public init(swift: Sharing.ShareFolderErrorV2) { self.swift = swift } - public static func factory(swift: Sharing.ShareFolderLaunch) -> DBXSharingShareFolderLaunch { + public static func factory(swift: Sharing.ShareFolderErrorV2) -> DBXSharingShareFolderErrorV2 { switch swift { - case .asyncJobId(let swiftArg): - let arg = swiftArg - return DBXSharingShareFolderLaunchAsyncJobId(arg) - case .complete(let swiftArg): - let arg = DBXSharingSharedFolderMetadata(swift: swiftArg) - return DBXSharingShareFolderLaunchComplete(arg) + case .emailUnverified: + return DBXSharingShareFolderErrorV2EmailUnverified() + case .teamPolicyDisallowsMemberPolicy: + return DBXSharingShareFolderErrorV2TeamPolicyDisallowsMemberPolicy() + case .disallowedSharedLinkPolicy: + return DBXSharingShareFolderErrorV2DisallowedSharedLinkPolicy() + case .other: + return DBXSharingShareFolderErrorV2Other() + case .noPermission: + return DBXSharingShareFolderErrorV2NoPermission() } } @@ -8523,49 +9046,228 @@ public class DBXSharingShareFolderLaunch: NSObject { public override var description: String { swift.description } @objc - public var asAsyncJobId: DBXSharingShareFolderLaunchAsyncJobId? { - self as? DBXSharingShareFolderLaunchAsyncJobId + public var asEmailUnverified: DBXSharingShareFolderErrorV2EmailUnverified? { + self as? DBXSharingShareFolderErrorV2EmailUnverified } @objc - public var asComplete: DBXSharingShareFolderLaunchComplete? { - self as? DBXSharingShareFolderLaunchComplete + public var asTeamPolicyDisallowsMemberPolicy: DBXSharingShareFolderErrorV2TeamPolicyDisallowsMemberPolicy? { + self as? DBXSharingShareFolderErrorV2TeamPolicyDisallowsMemberPolicy } -} -/// This response indicates that the processing is asynchronous. The string is an id that can be used to obtain -/// the status of the asynchronous job. -@objc -public class DBXSharingShareFolderLaunchAsyncJobId: DBXSharingShareFolderLaunch { @objc - public var asyncJobId: String + public var asDisallowedSharedLinkPolicy: DBXSharingShareFolderErrorV2DisallowedSharedLinkPolicy? { + self as? DBXSharingShareFolderErrorV2DisallowedSharedLinkPolicy + } @objc - public init(_ arg: String) { - self.asyncJobId = arg - let swift = Sharing.ShareFolderLaunch.asyncJobId(arg) - super.init(swift: swift) + public var asOther: DBXSharingShareFolderErrorV2Other? { + self as? DBXSharingShareFolderErrorV2Other + } + + @objc + public var asNoPermission: DBXSharingShareFolderErrorV2NoPermission? { + self as? DBXSharingShareFolderErrorV2NoPermission } } -/// An unspecified error. +/// This user's email address is not verified. This functionality is only available on accounts with a verified +/// email address. Users can verify their email address here https://www.dropbox.com/help/317. @objc -public class DBXSharingShareFolderLaunchComplete: DBXSharingShareFolderLaunch { +public class DBXSharingShareFolderErrorV2EmailUnverified: DBXSharingShareFolderErrorV2 { @objc - public var complete: DBXSharingSharedFolderMetadata + public init() { + let swift = Sharing.ShareFolderErrorV2.emailUnverified + super.init(swift: swift) + } +} +/// Team policy or group sharing settings are more restrictive than memberPolicy in ShareFolderArg. +@objc +public class DBXSharingShareFolderErrorV2TeamPolicyDisallowsMemberPolicy: DBXSharingShareFolderErrorV2 { @objc - public init(_ arg: DBXSharingSharedFolderMetadata) { - self.complete = arg - let swift = Sharing.ShareFolderLaunch.complete(arg.subSwift) + public init() { + let swift = Sharing.ShareFolderErrorV2.teamPolicyDisallowsMemberPolicy super.init(swift: swift) } } -/// Objective-C compatible SharePathError union +/// The current user's account is not allowed to select the specified sharedLinkPolicy in ShareFolderArg. @objc -public class DBXSharingSharePathError: NSObject { - let swift: Sharing.SharePathError +public class DBXSharingShareFolderErrorV2DisallowedSharedLinkPolicy: DBXSharingShareFolderErrorV2 { + @objc + public init() { + let swift = Sharing.ShareFolderErrorV2.disallowedSharedLinkPolicy + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXSharingShareFolderErrorV2Other: DBXSharingShareFolderErrorV2 { + @objc + public init() { + let swift = Sharing.ShareFolderErrorV2.other + super.init(swift: swift) + } +} + +/// The current user does not have permission to perform this action. +@objc +public class DBXSharingShareFolderErrorV2NoPermission: DBXSharingShareFolderErrorV2 { + @objc + public init() { + let swift = Sharing.ShareFolderErrorV2.noPermission + super.init(swift: swift) + } +} + +/// Objective-C compatible ShareFolderJobStatus union +@objc +public class DBXSharingShareFolderJobStatus: NSObject { + let swift: Sharing.ShareFolderJobStatus + + public init(swift: Sharing.ShareFolderJobStatus) { + self.swift = swift + } + + public static func factory(swift: Sharing.ShareFolderJobStatus) -> DBXSharingShareFolderJobStatus { + switch swift { + case .inProgress: + return DBXSharingShareFolderJobStatusInProgress() + case .complete(let swiftArg): + let arg = DBXSharingSharedFolderMetadata(swift: swiftArg) + return DBXSharingShareFolderJobStatusComplete(arg) + case .failed(let swiftArg): + let arg = DBXSharingShareFolderError(swift: swiftArg) + return DBXSharingShareFolderJobStatusFailed(arg) + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asInProgress: DBXSharingShareFolderJobStatusInProgress? { + self as? DBXSharingShareFolderJobStatusInProgress + } + + @objc + public var asComplete: DBXSharingShareFolderJobStatusComplete? { + self as? DBXSharingShareFolderJobStatusComplete + } + + @objc + public var asFailed: DBXSharingShareFolderJobStatusFailed? { + self as? DBXSharingShareFolderJobStatusFailed + } +} + +/// The asynchronous job is still in progress. +@objc +public class DBXSharingShareFolderJobStatusInProgress: DBXSharingShareFolderJobStatus { + @objc + public init() { + let swift = Sharing.ShareFolderJobStatus.inProgress + super.init(swift: swift) + } +} + +/// The share job has finished. The value is the metadata for the folder. +@objc +public class DBXSharingShareFolderJobStatusComplete: DBXSharingShareFolderJobStatus { + @objc + public var complete: DBXSharingSharedFolderMetadata + + @objc + public init(_ arg: DBXSharingSharedFolderMetadata) { + self.complete = arg + let swift = Sharing.ShareFolderJobStatus.complete(arg.subSwift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXSharingShareFolderJobStatusFailed: DBXSharingShareFolderJobStatus { + @objc + public var failed: DBXSharingShareFolderError + + @objc + public init(_ arg: DBXSharingShareFolderError) { + self.failed = arg + let swift = Sharing.ShareFolderJobStatus.failed(arg.swift) + super.init(swift: swift) + } +} + +/// Objective-C compatible ShareFolderLaunch union +@objc +public class DBXSharingShareFolderLaunch: NSObject { + let swift: Sharing.ShareFolderLaunch + + public init(swift: Sharing.ShareFolderLaunch) { + self.swift = swift + } + + public static func factory(swift: Sharing.ShareFolderLaunch) -> DBXSharingShareFolderLaunch { + switch swift { + case .asyncJobId(let swiftArg): + let arg = swiftArg + return DBXSharingShareFolderLaunchAsyncJobId(arg) + case .complete(let swiftArg): + let arg = DBXSharingSharedFolderMetadata(swift: swiftArg) + return DBXSharingShareFolderLaunchComplete(arg) + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asAsyncJobId: DBXSharingShareFolderLaunchAsyncJobId? { + self as? DBXSharingShareFolderLaunchAsyncJobId + } + + @objc + public var asComplete: DBXSharingShareFolderLaunchComplete? { + self as? DBXSharingShareFolderLaunchComplete + } +} + +/// This response indicates that the processing is asynchronous. The string is an id that can be used to obtain +/// the status of the asynchronous job. +@objc +public class DBXSharingShareFolderLaunchAsyncJobId: DBXSharingShareFolderLaunch { + @objc + public var asyncJobId: String + + @objc + public init(_ arg: String) { + self.asyncJobId = arg + let swift = Sharing.ShareFolderLaunch.asyncJobId(arg) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXSharingShareFolderLaunchComplete: DBXSharingShareFolderLaunch { + @objc + public var complete: DBXSharingSharedFolderMetadata + + @objc + public init(_ arg: DBXSharingSharedFolderMetadata) { + self.complete = arg + let swift = Sharing.ShareFolderLaunch.complete(arg.subSwift) + super.init(swift: swift) + } +} + +/// Objective-C compatible SharePathError union +@objc +public class DBXSharingSharePathError: NSObject { + let swift: Sharing.SharePathError public init(swift: Sharing.SharePathError) { self.swift = swift @@ -8625,251 +9327,841 @@ public class DBXSharingSharePathError: NSObject { } @objc - public var asContainsSharedFolder: DBXSharingSharePathErrorContainsSharedFolder? { - self as? DBXSharingSharePathErrorContainsSharedFolder + public var asContainsSharedFolder: DBXSharingSharePathErrorContainsSharedFolder? { + self as? DBXSharingSharePathErrorContainsSharedFolder + } + + @objc + public var asContainsAppFolder: DBXSharingSharePathErrorContainsAppFolder? { + self as? DBXSharingSharePathErrorContainsAppFolder + } + + @objc + public var asContainsTeamFolder: DBXSharingSharePathErrorContainsTeamFolder? { + self as? DBXSharingSharePathErrorContainsTeamFolder + } + + @objc + public var asIsAppFolder: DBXSharingSharePathErrorIsAppFolder? { + self as? DBXSharingSharePathErrorIsAppFolder + } + + @objc + public var asInsideAppFolder: DBXSharingSharePathErrorInsideAppFolder? { + self as? DBXSharingSharePathErrorInsideAppFolder + } + + @objc + public var asIsPublicFolder: DBXSharingSharePathErrorIsPublicFolder? { + self as? DBXSharingSharePathErrorIsPublicFolder + } + + @objc + public var asInsidePublicFolder: DBXSharingSharePathErrorInsidePublicFolder? { + self as? DBXSharingSharePathErrorInsidePublicFolder + } + + @objc + public var asAlreadyShared: DBXSharingSharePathErrorAlreadyShared? { + self as? DBXSharingSharePathErrorAlreadyShared + } + + @objc + public var asInvalidPath: DBXSharingSharePathErrorInvalidPath? { + self as? DBXSharingSharePathErrorInvalidPath + } + + @objc + public var asIsOsxPackage: DBXSharingSharePathErrorIsOsxPackage? { + self as? DBXSharingSharePathErrorIsOsxPackage + } + + @objc + public var asInsideOsxPackage: DBXSharingSharePathErrorInsideOsxPackage? { + self as? DBXSharingSharePathErrorInsideOsxPackage + } + + @objc + public var asIsVault: DBXSharingSharePathErrorIsVault? { + self as? DBXSharingSharePathErrorIsVault + } + + @objc + public var asIsVaultLocked: DBXSharingSharePathErrorIsVaultLocked? { + self as? DBXSharingSharePathErrorIsVaultLocked + } + + @objc + public var asIsFamily: DBXSharingSharePathErrorIsFamily? { + self as? DBXSharingSharePathErrorIsFamily + } + + @objc + public var asOther: DBXSharingSharePathErrorOther? { + self as? DBXSharingSharePathErrorOther + } +} + +/// A file is at the specified path. +@objc +public class DBXSharingSharePathErrorIsFile: DBXSharingSharePathError { + @objc + public init() { + let swift = Sharing.SharePathError.isFile + super.init(swift: swift) + } +} + +/// We do not support sharing a folder inside a shared folder. +@objc +public class DBXSharingSharePathErrorInsideSharedFolder: DBXSharingSharePathError { + @objc + public init() { + let swift = Sharing.SharePathError.insideSharedFolder + super.init(swift: swift) + } +} + +/// We do not support shared folders that contain shared folders. +@objc +public class DBXSharingSharePathErrorContainsSharedFolder: DBXSharingSharePathError { + @objc + public init() { + let swift = Sharing.SharePathError.containsSharedFolder + super.init(swift: swift) + } +} + +/// We do not support shared folders that contain app folders. +@objc +public class DBXSharingSharePathErrorContainsAppFolder: DBXSharingSharePathError { + @objc + public init() { + let swift = Sharing.SharePathError.containsAppFolder + super.init(swift: swift) + } +} + +/// We do not support shared folders that contain team folders. +@objc +public class DBXSharingSharePathErrorContainsTeamFolder: DBXSharingSharePathError { + @objc + public init() { + let swift = Sharing.SharePathError.containsTeamFolder + super.init(swift: swift) + } +} + +/// We do not support sharing an app folder. +@objc +public class DBXSharingSharePathErrorIsAppFolder: DBXSharingSharePathError { + @objc + public init() { + let swift = Sharing.SharePathError.isAppFolder + super.init(swift: swift) + } +} + +/// We do not support sharing a folder inside an app folder. +@objc +public class DBXSharingSharePathErrorInsideAppFolder: DBXSharingSharePathError { + @objc + public init() { + let swift = Sharing.SharePathError.insideAppFolder + super.init(swift: swift) + } +} + +/// A public folder can't be shared this way. Use a public link instead. +@objc +public class DBXSharingSharePathErrorIsPublicFolder: DBXSharingSharePathError { + @objc + public init() { + let swift = Sharing.SharePathError.isPublicFolder + super.init(swift: swift) + } +} + +/// A folder inside a public folder can't be shared this way. Use a public link instead. +@objc +public class DBXSharingSharePathErrorInsidePublicFolder: DBXSharingSharePathError { + @objc + public init() { + let swift = Sharing.SharePathError.insidePublicFolder + super.init(swift: swift) + } +} + +/// Folder is already shared. Contains metadata about the existing shared folder. +@objc +public class DBXSharingSharePathErrorAlreadyShared: DBXSharingSharePathError { + @objc + public var alreadyShared: DBXSharingSharedFolderMetadata + + @objc + public init(_ arg: DBXSharingSharedFolderMetadata) { + self.alreadyShared = arg + let swift = Sharing.SharePathError.alreadyShared(arg.subSwift) + super.init(swift: swift) + } +} + +/// Path is not valid. +@objc +public class DBXSharingSharePathErrorInvalidPath: DBXSharingSharePathError { + @objc + public init() { + let swift = Sharing.SharePathError.invalidPath + super.init(swift: swift) + } +} + +/// We do not support sharing a Mac OS X package. +@objc +public class DBXSharingSharePathErrorIsOsxPackage: DBXSharingSharePathError { + @objc + public init() { + let swift = Sharing.SharePathError.isOsxPackage + super.init(swift: swift) + } +} + +/// We do not support sharing a folder inside a Mac OS X package. +@objc +public class DBXSharingSharePathErrorInsideOsxPackage: DBXSharingSharePathError { + @objc + public init() { + let swift = Sharing.SharePathError.insideOsxPackage + super.init(swift: swift) + } +} + +/// We do not support sharing the Vault folder. +@objc +public class DBXSharingSharePathErrorIsVault: DBXSharingSharePathError { + @objc + public init() { + let swift = Sharing.SharePathError.isVault + super.init(swift: swift) + } +} + +/// We do not support sharing a folder inside a locked Vault. +@objc +public class DBXSharingSharePathErrorIsVaultLocked: DBXSharingSharePathError { + @objc + public init() { + let swift = Sharing.SharePathError.isVaultLocked + super.init(swift: swift) + } +} + +/// We do not support sharing the Family folder. +@objc +public class DBXSharingSharePathErrorIsFamily: DBXSharingSharePathError { + @objc + public init() { + let swift = Sharing.SharePathError.isFamily + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXSharingSharePathErrorOther: DBXSharingSharePathError { + @objc + public init() { + let swift = Sharing.SharePathError.other + super.init(swift: swift) + } +} + +/// Objective-C compatible SharePathErrorBaseV2 union +@objc +public class DBXSharingSharePathErrorBaseV2: NSObject { + let swift: Sharing.SharePathErrorBaseV2 + + public init(swift: Sharing.SharePathErrorBaseV2) { + self.swift = swift + } + + public static func factory(swift: Sharing.SharePathErrorBaseV2) -> DBXSharingSharePathErrorBaseV2 { + switch swift { + case .isFile: + return DBXSharingSharePathErrorBaseV2IsFile() + case .insideSharedFolder: + return DBXSharingSharePathErrorBaseV2InsideSharedFolder() + case .containsSharedFolder: + return DBXSharingSharePathErrorBaseV2ContainsSharedFolder() + case .containsTeamFolder: + return DBXSharingSharePathErrorBaseV2ContainsTeamFolder() + case .isAppFolder: + return DBXSharingSharePathErrorBaseV2IsAppFolder() + case .insideAppFolder: + return DBXSharingSharePathErrorBaseV2InsideAppFolder() + case .isPublicFolder: + return DBXSharingSharePathErrorBaseV2IsPublicFolder() + case .insidePublicFolder: + return DBXSharingSharePathErrorBaseV2InsidePublicFolder() + case .alreadyShared(let swiftArg): + let arg = DBXSharingSharedFolderMetadata(swift: swiftArg) + return DBXSharingSharePathErrorBaseV2AlreadyShared(arg) + case .invalidPath: + return DBXSharingSharePathErrorBaseV2InvalidPath() + case .isOsxPackage: + return DBXSharingSharePathErrorBaseV2IsOsxPackage() + case .insideOsxPackage: + return DBXSharingSharePathErrorBaseV2InsideOsxPackage() + case .isVault: + return DBXSharingSharePathErrorBaseV2IsVault() + case .isVaultLocked: + return DBXSharingSharePathErrorBaseV2IsVaultLocked() + case .other: + return DBXSharingSharePathErrorBaseV2Other() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asIsFile: DBXSharingSharePathErrorBaseV2IsFile? { + self as? DBXSharingSharePathErrorBaseV2IsFile + } + + @objc + public var asInsideSharedFolder: DBXSharingSharePathErrorBaseV2InsideSharedFolder? { + self as? DBXSharingSharePathErrorBaseV2InsideSharedFolder + } + + @objc + public var asContainsSharedFolder: DBXSharingSharePathErrorBaseV2ContainsSharedFolder? { + self as? DBXSharingSharePathErrorBaseV2ContainsSharedFolder + } + + @objc + public var asContainsTeamFolder: DBXSharingSharePathErrorBaseV2ContainsTeamFolder? { + self as? DBXSharingSharePathErrorBaseV2ContainsTeamFolder + } + + @objc + public var asIsAppFolder: DBXSharingSharePathErrorBaseV2IsAppFolder? { + self as? DBXSharingSharePathErrorBaseV2IsAppFolder + } + + @objc + public var asInsideAppFolder: DBXSharingSharePathErrorBaseV2InsideAppFolder? { + self as? DBXSharingSharePathErrorBaseV2InsideAppFolder + } + + @objc + public var asIsPublicFolder: DBXSharingSharePathErrorBaseV2IsPublicFolder? { + self as? DBXSharingSharePathErrorBaseV2IsPublicFolder + } + + @objc + public var asInsidePublicFolder: DBXSharingSharePathErrorBaseV2InsidePublicFolder? { + self as? DBXSharingSharePathErrorBaseV2InsidePublicFolder + } + + @objc + public var asAlreadyShared: DBXSharingSharePathErrorBaseV2AlreadyShared? { + self as? DBXSharingSharePathErrorBaseV2AlreadyShared + } + + @objc + public var asInvalidPath: DBXSharingSharePathErrorBaseV2InvalidPath? { + self as? DBXSharingSharePathErrorBaseV2InvalidPath + } + + @objc + public var asIsOsxPackage: DBXSharingSharePathErrorBaseV2IsOsxPackage? { + self as? DBXSharingSharePathErrorBaseV2IsOsxPackage + } + + @objc + public var asInsideOsxPackage: DBXSharingSharePathErrorBaseV2InsideOsxPackage? { + self as? DBXSharingSharePathErrorBaseV2InsideOsxPackage + } + + @objc + public var asIsVault: DBXSharingSharePathErrorBaseV2IsVault? { + self as? DBXSharingSharePathErrorBaseV2IsVault + } + + @objc + public var asIsVaultLocked: DBXSharingSharePathErrorBaseV2IsVaultLocked? { + self as? DBXSharingSharePathErrorBaseV2IsVaultLocked + } + + @objc + public var asOther: DBXSharingSharePathErrorBaseV2Other? { + self as? DBXSharingSharePathErrorBaseV2Other + } +} + +/// A file is at the specified path. +@objc +public class DBXSharingSharePathErrorBaseV2IsFile: DBXSharingSharePathErrorBaseV2 { + @objc + public init() { + let swift = Sharing.SharePathErrorBaseV2.isFile + super.init(swift: swift) + } +} + +/// We do not support sharing a folder inside a shared folder. +@objc +public class DBXSharingSharePathErrorBaseV2InsideSharedFolder: DBXSharingSharePathErrorBaseV2 { + @objc + public init() { + let swift = Sharing.SharePathErrorBaseV2.insideSharedFolder + super.init(swift: swift) + } +} + +/// We do not support shared folders that contain shared folders. +@objc +public class DBXSharingSharePathErrorBaseV2ContainsSharedFolder: DBXSharingSharePathErrorBaseV2 { + @objc + public init() { + let swift = Sharing.SharePathErrorBaseV2.containsSharedFolder + super.init(swift: swift) + } +} + +/// We do not support shared folders that contain team folders. +@objc +public class DBXSharingSharePathErrorBaseV2ContainsTeamFolder: DBXSharingSharePathErrorBaseV2 { + @objc + public init() { + let swift = Sharing.SharePathErrorBaseV2.containsTeamFolder + super.init(swift: swift) + } +} + +/// We do not support sharing an app folder. +@objc +public class DBXSharingSharePathErrorBaseV2IsAppFolder: DBXSharingSharePathErrorBaseV2 { + @objc + public init() { + let swift = Sharing.SharePathErrorBaseV2.isAppFolder + super.init(swift: swift) + } +} + +/// We do not support sharing a folder inside an app folder. +@objc +public class DBXSharingSharePathErrorBaseV2InsideAppFolder: DBXSharingSharePathErrorBaseV2 { + @objc + public init() { + let swift = Sharing.SharePathErrorBaseV2.insideAppFolder + super.init(swift: swift) + } +} + +/// A public folder can't be shared this way. Use a public link instead. +@objc +public class DBXSharingSharePathErrorBaseV2IsPublicFolder: DBXSharingSharePathErrorBaseV2 { + @objc + public init() { + let swift = Sharing.SharePathErrorBaseV2.isPublicFolder + super.init(swift: swift) + } +} + +/// A folder inside a public folder can't be shared this way. Use a public link instead. +@objc +public class DBXSharingSharePathErrorBaseV2InsidePublicFolder: DBXSharingSharePathErrorBaseV2 { + @objc + public init() { + let swift = Sharing.SharePathErrorBaseV2.insidePublicFolder + super.init(swift: swift) + } +} + +/// Folder is already shared. Contains metadata about the existing shared folder. +@objc +public class DBXSharingSharePathErrorBaseV2AlreadyShared: DBXSharingSharePathErrorBaseV2 { + @objc + public var alreadyShared: DBXSharingSharedFolderMetadata + + @objc + public init(_ arg: DBXSharingSharedFolderMetadata) { + self.alreadyShared = arg + let swift = Sharing.SharePathErrorBaseV2.alreadyShared(arg.subSwift) + super.init(swift: swift) + } +} + +/// Path is not valid. +@objc +public class DBXSharingSharePathErrorBaseV2InvalidPath: DBXSharingSharePathErrorBaseV2 { + @objc + public init() { + let swift = Sharing.SharePathErrorBaseV2.invalidPath + super.init(swift: swift) + } +} + +/// We do not support sharing a Mac OS X package. +@objc +public class DBXSharingSharePathErrorBaseV2IsOsxPackage: DBXSharingSharePathErrorBaseV2 { + @objc + public init() { + let swift = Sharing.SharePathErrorBaseV2.isOsxPackage + super.init(swift: swift) + } +} + +/// We do not support sharing a folder inside a Mac OS X package. +@objc +public class DBXSharingSharePathErrorBaseV2InsideOsxPackage: DBXSharingSharePathErrorBaseV2 { + @objc + public init() { + let swift = Sharing.SharePathErrorBaseV2.insideOsxPackage + super.init(swift: swift) + } +} + +/// We do not support sharing the Vault folder. +@objc +public class DBXSharingSharePathErrorBaseV2IsVault: DBXSharingSharePathErrorBaseV2 { + @objc + public init() { + let swift = Sharing.SharePathErrorBaseV2.isVault + super.init(swift: swift) + } +} + +/// We do not support sharing a folder inside a locked Vault. +@objc +public class DBXSharingSharePathErrorBaseV2IsVaultLocked: DBXSharingSharePathErrorBaseV2 { + @objc + public init() { + let swift = Sharing.SharePathErrorBaseV2.isVaultLocked + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXSharingSharePathErrorBaseV2Other: DBXSharingSharePathErrorBaseV2 { + @objc + public init() { + let swift = Sharing.SharePathErrorBaseV2.other + super.init(swift: swift) + } +} + +/// Objective-C compatible SharePathErrorV2 union +@objc +public class DBXSharingSharePathErrorV2: NSObject { + let swift: Sharing.SharePathErrorV2 + + public init(swift: Sharing.SharePathErrorV2) { + self.swift = swift + } + + public static func factory(swift: Sharing.SharePathErrorV2) -> DBXSharingSharePathErrorV2 { + switch swift { + case .isFile: + return DBXSharingSharePathErrorV2IsFile() + case .insideSharedFolder: + return DBXSharingSharePathErrorV2InsideSharedFolder() + case .containsSharedFolder: + return DBXSharingSharePathErrorV2ContainsSharedFolder() + case .containsTeamFolder: + return DBXSharingSharePathErrorV2ContainsTeamFolder() + case .isAppFolder: + return DBXSharingSharePathErrorV2IsAppFolder() + case .insideAppFolder: + return DBXSharingSharePathErrorV2InsideAppFolder() + case .isPublicFolder: + return DBXSharingSharePathErrorV2IsPublicFolder() + case .insidePublicFolder: + return DBXSharingSharePathErrorV2InsidePublicFolder() + case .alreadyShared(let swiftArg): + let arg = DBXSharingSharedFolderMetadata(swift: swiftArg) + return DBXSharingSharePathErrorV2AlreadyShared(arg) + case .invalidPath: + return DBXSharingSharePathErrorV2InvalidPath() + case .isOsxPackage: + return DBXSharingSharePathErrorV2IsOsxPackage() + case .insideOsxPackage: + return DBXSharingSharePathErrorV2InsideOsxPackage() + case .isVault: + return DBXSharingSharePathErrorV2IsVault() + case .isVaultLocked: + return DBXSharingSharePathErrorV2IsVaultLocked() + case .other: + return DBXSharingSharePathErrorV2Other() + case .isFamily: + return DBXSharingSharePathErrorV2IsFamily() + case .containsAppFolder: + return DBXSharingSharePathErrorV2ContainsAppFolder() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asIsFile: DBXSharingSharePathErrorV2IsFile? { + self as? DBXSharingSharePathErrorV2IsFile + } + + @objc + public var asInsideSharedFolder: DBXSharingSharePathErrorV2InsideSharedFolder? { + self as? DBXSharingSharePathErrorV2InsideSharedFolder + } + + @objc + public var asContainsSharedFolder: DBXSharingSharePathErrorV2ContainsSharedFolder? { + self as? DBXSharingSharePathErrorV2ContainsSharedFolder } @objc - public var asContainsAppFolder: DBXSharingSharePathErrorContainsAppFolder? { - self as? DBXSharingSharePathErrorContainsAppFolder + public var asContainsTeamFolder: DBXSharingSharePathErrorV2ContainsTeamFolder? { + self as? DBXSharingSharePathErrorV2ContainsTeamFolder } @objc - public var asContainsTeamFolder: DBXSharingSharePathErrorContainsTeamFolder? { - self as? DBXSharingSharePathErrorContainsTeamFolder + public var asIsAppFolder: DBXSharingSharePathErrorV2IsAppFolder? { + self as? DBXSharingSharePathErrorV2IsAppFolder } @objc - public var asIsAppFolder: DBXSharingSharePathErrorIsAppFolder? { - self as? DBXSharingSharePathErrorIsAppFolder + public var asInsideAppFolder: DBXSharingSharePathErrorV2InsideAppFolder? { + self as? DBXSharingSharePathErrorV2InsideAppFolder } @objc - public var asInsideAppFolder: DBXSharingSharePathErrorInsideAppFolder? { - self as? DBXSharingSharePathErrorInsideAppFolder + public var asIsPublicFolder: DBXSharingSharePathErrorV2IsPublicFolder? { + self as? DBXSharingSharePathErrorV2IsPublicFolder } @objc - public var asIsPublicFolder: DBXSharingSharePathErrorIsPublicFolder? { - self as? DBXSharingSharePathErrorIsPublicFolder + public var asInsidePublicFolder: DBXSharingSharePathErrorV2InsidePublicFolder? { + self as? DBXSharingSharePathErrorV2InsidePublicFolder } @objc - public var asInsidePublicFolder: DBXSharingSharePathErrorInsidePublicFolder? { - self as? DBXSharingSharePathErrorInsidePublicFolder + public var asAlreadyShared: DBXSharingSharePathErrorV2AlreadyShared? { + self as? DBXSharingSharePathErrorV2AlreadyShared } @objc - public var asAlreadyShared: DBXSharingSharePathErrorAlreadyShared? { - self as? DBXSharingSharePathErrorAlreadyShared + public var asInvalidPath: DBXSharingSharePathErrorV2InvalidPath? { + self as? DBXSharingSharePathErrorV2InvalidPath } @objc - public var asInvalidPath: DBXSharingSharePathErrorInvalidPath? { - self as? DBXSharingSharePathErrorInvalidPath + public var asIsOsxPackage: DBXSharingSharePathErrorV2IsOsxPackage? { + self as? DBXSharingSharePathErrorV2IsOsxPackage } @objc - public var asIsOsxPackage: DBXSharingSharePathErrorIsOsxPackage? { - self as? DBXSharingSharePathErrorIsOsxPackage + public var asInsideOsxPackage: DBXSharingSharePathErrorV2InsideOsxPackage? { + self as? DBXSharingSharePathErrorV2InsideOsxPackage } @objc - public var asInsideOsxPackage: DBXSharingSharePathErrorInsideOsxPackage? { - self as? DBXSharingSharePathErrorInsideOsxPackage + public var asIsVault: DBXSharingSharePathErrorV2IsVault? { + self as? DBXSharingSharePathErrorV2IsVault } @objc - public var asIsVault: DBXSharingSharePathErrorIsVault? { - self as? DBXSharingSharePathErrorIsVault + public var asIsVaultLocked: DBXSharingSharePathErrorV2IsVaultLocked? { + self as? DBXSharingSharePathErrorV2IsVaultLocked } @objc - public var asIsVaultLocked: DBXSharingSharePathErrorIsVaultLocked? { - self as? DBXSharingSharePathErrorIsVaultLocked + public var asOther: DBXSharingSharePathErrorV2Other? { + self as? DBXSharingSharePathErrorV2Other } @objc - public var asIsFamily: DBXSharingSharePathErrorIsFamily? { - self as? DBXSharingSharePathErrorIsFamily + public var asIsFamily: DBXSharingSharePathErrorV2IsFamily? { + self as? DBXSharingSharePathErrorV2IsFamily } @objc - public var asOther: DBXSharingSharePathErrorOther? { - self as? DBXSharingSharePathErrorOther + public var asContainsAppFolder: DBXSharingSharePathErrorV2ContainsAppFolder? { + self as? DBXSharingSharePathErrorV2ContainsAppFolder } } /// A file is at the specified path. @objc -public class DBXSharingSharePathErrorIsFile: DBXSharingSharePathError { +public class DBXSharingSharePathErrorV2IsFile: DBXSharingSharePathErrorV2 { @objc public init() { - let swift = Sharing.SharePathError.isFile + let swift = Sharing.SharePathErrorV2.isFile super.init(swift: swift) } } /// We do not support sharing a folder inside a shared folder. @objc -public class DBXSharingSharePathErrorInsideSharedFolder: DBXSharingSharePathError { +public class DBXSharingSharePathErrorV2InsideSharedFolder: DBXSharingSharePathErrorV2 { @objc public init() { - let swift = Sharing.SharePathError.insideSharedFolder + let swift = Sharing.SharePathErrorV2.insideSharedFolder super.init(swift: swift) } } /// We do not support shared folders that contain shared folders. @objc -public class DBXSharingSharePathErrorContainsSharedFolder: DBXSharingSharePathError { - @objc - public init() { - let swift = Sharing.SharePathError.containsSharedFolder - super.init(swift: swift) - } -} - -/// We do not support shared folders that contain app folders. -@objc -public class DBXSharingSharePathErrorContainsAppFolder: DBXSharingSharePathError { +public class DBXSharingSharePathErrorV2ContainsSharedFolder: DBXSharingSharePathErrorV2 { @objc public init() { - let swift = Sharing.SharePathError.containsAppFolder + let swift = Sharing.SharePathErrorV2.containsSharedFolder super.init(swift: swift) } } /// We do not support shared folders that contain team folders. @objc -public class DBXSharingSharePathErrorContainsTeamFolder: DBXSharingSharePathError { +public class DBXSharingSharePathErrorV2ContainsTeamFolder: DBXSharingSharePathErrorV2 { @objc public init() { - let swift = Sharing.SharePathError.containsTeamFolder + let swift = Sharing.SharePathErrorV2.containsTeamFolder super.init(swift: swift) } } /// We do not support sharing an app folder. @objc -public class DBXSharingSharePathErrorIsAppFolder: DBXSharingSharePathError { +public class DBXSharingSharePathErrorV2IsAppFolder: DBXSharingSharePathErrorV2 { @objc public init() { - let swift = Sharing.SharePathError.isAppFolder + let swift = Sharing.SharePathErrorV2.isAppFolder super.init(swift: swift) } } /// We do not support sharing a folder inside an app folder. @objc -public class DBXSharingSharePathErrorInsideAppFolder: DBXSharingSharePathError { +public class DBXSharingSharePathErrorV2InsideAppFolder: DBXSharingSharePathErrorV2 { @objc public init() { - let swift = Sharing.SharePathError.insideAppFolder + let swift = Sharing.SharePathErrorV2.insideAppFolder super.init(swift: swift) } } /// A public folder can't be shared this way. Use a public link instead. @objc -public class DBXSharingSharePathErrorIsPublicFolder: DBXSharingSharePathError { +public class DBXSharingSharePathErrorV2IsPublicFolder: DBXSharingSharePathErrorV2 { @objc public init() { - let swift = Sharing.SharePathError.isPublicFolder + let swift = Sharing.SharePathErrorV2.isPublicFolder super.init(swift: swift) } } /// A folder inside a public folder can't be shared this way. Use a public link instead. @objc -public class DBXSharingSharePathErrorInsidePublicFolder: DBXSharingSharePathError { +public class DBXSharingSharePathErrorV2InsidePublicFolder: DBXSharingSharePathErrorV2 { @objc public init() { - let swift = Sharing.SharePathError.insidePublicFolder + let swift = Sharing.SharePathErrorV2.insidePublicFolder super.init(swift: swift) } } /// Folder is already shared. Contains metadata about the existing shared folder. @objc -public class DBXSharingSharePathErrorAlreadyShared: DBXSharingSharePathError { +public class DBXSharingSharePathErrorV2AlreadyShared: DBXSharingSharePathErrorV2 { @objc public var alreadyShared: DBXSharingSharedFolderMetadata @objc public init(_ arg: DBXSharingSharedFolderMetadata) { self.alreadyShared = arg - let swift = Sharing.SharePathError.alreadyShared(arg.subSwift) + let swift = Sharing.SharePathErrorV2.alreadyShared(arg.subSwift) super.init(swift: swift) } } /// Path is not valid. @objc -public class DBXSharingSharePathErrorInvalidPath: DBXSharingSharePathError { +public class DBXSharingSharePathErrorV2InvalidPath: DBXSharingSharePathErrorV2 { @objc public init() { - let swift = Sharing.SharePathError.invalidPath + let swift = Sharing.SharePathErrorV2.invalidPath super.init(swift: swift) } } /// We do not support sharing a Mac OS X package. @objc -public class DBXSharingSharePathErrorIsOsxPackage: DBXSharingSharePathError { +public class DBXSharingSharePathErrorV2IsOsxPackage: DBXSharingSharePathErrorV2 { @objc public init() { - let swift = Sharing.SharePathError.isOsxPackage + let swift = Sharing.SharePathErrorV2.isOsxPackage super.init(swift: swift) } } /// We do not support sharing a folder inside a Mac OS X package. @objc -public class DBXSharingSharePathErrorInsideOsxPackage: DBXSharingSharePathError { +public class DBXSharingSharePathErrorV2InsideOsxPackage: DBXSharingSharePathErrorV2 { @objc public init() { - let swift = Sharing.SharePathError.insideOsxPackage + let swift = Sharing.SharePathErrorV2.insideOsxPackage super.init(swift: swift) } } /// We do not support sharing the Vault folder. @objc -public class DBXSharingSharePathErrorIsVault: DBXSharingSharePathError { +public class DBXSharingSharePathErrorV2IsVault: DBXSharingSharePathErrorV2 { @objc public init() { - let swift = Sharing.SharePathError.isVault + let swift = Sharing.SharePathErrorV2.isVault super.init(swift: swift) } } /// We do not support sharing a folder inside a locked Vault. @objc -public class DBXSharingSharePathErrorIsVaultLocked: DBXSharingSharePathError { +public class DBXSharingSharePathErrorV2IsVaultLocked: DBXSharingSharePathErrorV2 { @objc public init() { - let swift = Sharing.SharePathError.isVaultLocked + let swift = Sharing.SharePathErrorV2.isVaultLocked + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXSharingSharePathErrorV2Other: DBXSharingSharePathErrorV2 { + @objc + public init() { + let swift = Sharing.SharePathErrorV2.other super.init(swift: swift) } } /// We do not support sharing the Family folder. @objc -public class DBXSharingSharePathErrorIsFamily: DBXSharingSharePathError { +public class DBXSharingSharePathErrorV2IsFamily: DBXSharingSharePathErrorV2 { @objc public init() { - let swift = Sharing.SharePathError.isFamily + let swift = Sharing.SharePathErrorV2.isFamily super.init(swift: swift) } } -/// An unspecified error. +/// We do not support shared folders that contain app folders. @objc -public class DBXSharingSharePathErrorOther: DBXSharingSharePathError { +public class DBXSharingSharePathErrorV2ContainsAppFolder: DBXSharingSharePathErrorV2 { @objc public init() { - let swift = Sharing.SharePathError.other + let swift = Sharing.SharePathErrorV2.containsAppFolder super.init(swift: swift) } } @@ -8945,12 +10237,7 @@ public class DBXSharingSharedFileMembers: NSObject { public var cursor: String? { swift.cursor } @objc - public init( - users: [DBXSharingUserFileMembershipInfo], - groups: [DBXSharingGroupMembershipInfo], - invitees: [DBXSharingInviteeMembershipInfo], - cursor: String? - ) { + public init(users: [DBXSharingUserFileMembershipInfo], groups: [DBXSharingGroupMembershipInfo], invitees: [DBXSharingInviteeMembershipInfo], cursor: String?) { self.swift = Sharing.SharedFileMembers( users: users.map(\.subSubSwift), groups: groups.map(\.subSwift), @@ -9171,7 +10458,7 @@ public class DBXSharingSharedFolderAccessErrorInvalidMember: DBXSharingSharedFol } } -/// Never set. +/// Field is deprecated. Never set. @objc public class DBXSharingSharedFolderAccessErrorEmailUnverified: DBXSharingSharedFolderAccessError { @objc @@ -9432,6 +10719,9 @@ public class DBXSharingSharedFolderMetadata: DBXSharingSharedFolderMetadataBase /// Whether the folder inherits its members from its parent. @objc public var accessInheritance: DBXSharingAccessInheritance { DBXSharingAccessInheritance(swift: subSwift.accessInheritance) } + /// The ID of the content. + @objc + public var folderId: String? { subSwift.folderId } @objc public init( @@ -9451,7 +10741,8 @@ public class DBXSharingSharedFolderMetadata: DBXSharingSharedFolderMetadataBase parentFolderName: String?, linkMetadata: DBXSharingSharedContentLinkMetadata?, permissions: [DBXSharingFolderPermission]?, - accessInheritance: DBXSharingAccessInheritance + accessInheritance: DBXSharingAccessInheritance, + folderId: String? ) { let swift = Sharing.SharedFolderMetadata( accessType: accessType.swift, @@ -9470,7 +10761,8 @@ public class DBXSharingSharedFolderMetadata: DBXSharingSharedFolderMetadataBase parentFolderName: parentFolderName, linkMetadata: linkMetadata?.subSwift, permissions: permissions?.map(\.swift), - accessInheritance: accessInheritance.swift + accessInheritance: accessInheritance.swift, + folderId: folderId ) self.subSwift = swift super.init(swift: swift) @@ -9665,6 +10957,109 @@ public class DBXSharingSharedLinkAlreadyExistsMetadataOther: DBXSharingSharedLin } } +/// The potential errors for a call to get_shared_link_metadata. +@objc +public class DBXSharingSharedLinkMetadataError: NSObject { + let swift: Sharing.SharedLinkMetadataError + + public init(swift: Sharing.SharedLinkMetadataError) { + self.swift = swift + } + + public static func factory(swift: Sharing.SharedLinkMetadataError) -> DBXSharingSharedLinkMetadataError { + switch swift { + case .sharedLinkNotFound: + return DBXSharingSharedLinkMetadataErrorSharedLinkNotFound() + case .sharedLinkAccessDenied: + return DBXSharingSharedLinkMetadataErrorSharedLinkAccessDenied() + case .unsupportedLinkType: + return DBXSharingSharedLinkMetadataErrorUnsupportedLinkType() + case .unsupportedParameterField: + return DBXSharingSharedLinkMetadataErrorUnsupportedParameterField() + case .other: + return DBXSharingSharedLinkMetadataErrorOther() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asSharedLinkNotFound: DBXSharingSharedLinkMetadataErrorSharedLinkNotFound? { + self as? DBXSharingSharedLinkMetadataErrorSharedLinkNotFound + } + + @objc + public var asSharedLinkAccessDenied: DBXSharingSharedLinkMetadataErrorSharedLinkAccessDenied? { + self as? DBXSharingSharedLinkMetadataErrorSharedLinkAccessDenied + } + + @objc + public var asUnsupportedLinkType: DBXSharingSharedLinkMetadataErrorUnsupportedLinkType? { + self as? DBXSharingSharedLinkMetadataErrorUnsupportedLinkType + } + + @objc + public var asUnsupportedParameterField: DBXSharingSharedLinkMetadataErrorUnsupportedParameterField? { + self as? DBXSharingSharedLinkMetadataErrorUnsupportedParameterField + } + + @objc + public var asOther: DBXSharingSharedLinkMetadataErrorOther? { + self as? DBXSharingSharedLinkMetadataErrorOther + } +} + +/// The shared link wasn't found. +@objc +public class DBXSharingSharedLinkMetadataErrorSharedLinkNotFound: DBXSharingSharedLinkMetadataError { + @objc + public init() { + let swift = Sharing.SharedLinkMetadataError.sharedLinkNotFound + super.init(swift: swift) + } +} + +/// The caller is not allowed to access this shared link. +@objc +public class DBXSharingSharedLinkMetadataErrorSharedLinkAccessDenied: DBXSharingSharedLinkMetadataError { + @objc + public init() { + let swift = Sharing.SharedLinkMetadataError.sharedLinkAccessDenied + super.init(swift: swift) + } +} + +/// This type of link is not supported; use files instead. +@objc +public class DBXSharingSharedLinkMetadataErrorUnsupportedLinkType: DBXSharingSharedLinkMetadataError { + @objc + public init() { + let swift = Sharing.SharedLinkMetadataError.unsupportedLinkType + super.init(swift: swift) + } +} + +/// Private shared links do not support `path` or `link_password` parameter fields. +@objc +public class DBXSharingSharedLinkMetadataErrorUnsupportedParameterField: DBXSharingSharedLinkMetadataError { + @objc + public init() { + let swift = Sharing.SharedLinkMetadataError.unsupportedParameterField + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXSharingSharedLinkMetadataErrorOther: DBXSharingSharedLinkMetadataError { + @objc + public init() { + let swift = Sharing.SharedLinkMetadataError.other + super.init(swift: swift) + } +} + /// Who can view shared links in this folder. @objc public class DBXSharingSharedLinkPolicy: NSObject { @@ -9721,7 +11116,7 @@ public class DBXSharingSharedLinkPolicyAnyone: DBXSharingSharedLinkPolicy { } } -/// Links can be shared with anyone on the same team as the owner. +/// Field is deprecated. Links can be shared with anyone on the same team as the owner. @objc public class DBXSharingSharedLinkPolicyTeam: DBXSharingSharedLinkPolicy { @objc @@ -9766,7 +11161,7 @@ public class DBXSharingSharedLinkSettings: NSObject { /// The new audience who can benefit from the access level specified by the link's access level specified in the /// `link_access_level` field of `LinkPermissions`. This is used in conjunction with team policies and /// shared folder policies to determine the final effective audience type in the `effective_audience` field - /// of `LinkPermissions. + /// of `LinkPermissions`. @objc public var audience: DBXSharingLinkAudience? { guard let swift = swift.audience else { return nil } return DBXSharingLinkAudience(swift: swift) @@ -9779,7 +11174,7 @@ public class DBXSharingSharedLinkSettings: NSObject { return DBXSharingRequestedLinkAccessLevel(swift: swift) } - /// Use audience instead. The requested access for this shared link. + /// Field is deprecated. Use audience instead. The requested access for this shared link. @objc public var requestedVisibility: DBXSharingRequestedVisibility? { guard let swift = swift.requestedVisibility else { return nil } return DBXSharingRequestedVisibility(swift: swift) @@ -10641,6 +12036,139 @@ public class DBXSharingUpdateFileMemberArgs: NSObject { public override var description: String { swift.description } } +/// Arguments for updateFilePolicy. +@objc +public class DBXSharingUpdateFilePolicyArg: NSObject { + /// File that we are changing the policy for. + @objc + public var file: String { swift.file } + /// A list of `FileAction`s corresponding to `FilePermission`s that should appear in the response's permissions + /// in SharedFileMetadata field describing the actions the authenticated user can perform on the file. + @objc + public var actions: [DBXSharingFileAction]? { swift.actions?.map { DBXSharingFileAction(swift: $0) } } + /// Field is deprecated. Settings on the link for the file. + @objc + public var linkSettings: DBXSharingLinkSettings? { guard let swift = swift.linkSettings else { return nil } + return DBXSharingLinkSettings(swift: swift) + } + + /// The presence and seen state policy on the file. + @objc + public var viewerInfoPolicy: DBXSharingViewerInfoPolicy? { guard let swift = swift.viewerInfoPolicy else { return nil } + return DBXSharingViewerInfoPolicy(swift: swift) + } + + @objc + public init(file: String, actions: [DBXSharingFileAction]?, linkSettings: DBXSharingLinkSettings?, viewerInfoPolicy: DBXSharingViewerInfoPolicy?) { + self.swift = Sharing.UpdateFilePolicyArg( + file: file, + actions: actions?.map(\.swift), + linkSettings: linkSettings?.swift, + viewerInfoPolicy: viewerInfoPolicy?.swift + ) + } + + let swift: Sharing.UpdateFilePolicyArg + + public init(swift: Sharing.UpdateFilePolicyArg) { + self.swift = swift + } + + @objc + public override var description: String { swift.description } +} + +/// Error result for updateFilePolicy. +@objc +public class DBXSharingUpdateFilePolicyError: NSObject { + let swift: Sharing.UpdateFilePolicyError + + public init(swift: Sharing.UpdateFilePolicyError) { + self.swift = swift + } + + public static func factory(swift: Sharing.UpdateFilePolicyError) -> DBXSharingUpdateFilePolicyError { + switch swift { + case .accessError(let swiftArg): + let arg = DBXSharingSharingFileAccessError(swift: swiftArg) + return DBXSharingUpdateFilePolicyErrorAccessError(arg) + case .invalidFileSettings: + return DBXSharingUpdateFilePolicyErrorInvalidFileSettings() + case .noPermission: + return DBXSharingUpdateFilePolicyErrorNoPermission() + case .other: + return DBXSharingUpdateFilePolicyErrorOther() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asAccessError: DBXSharingUpdateFilePolicyErrorAccessError? { + self as? DBXSharingUpdateFilePolicyErrorAccessError + } + + @objc + public var asInvalidFileSettings: DBXSharingUpdateFilePolicyErrorInvalidFileSettings? { + self as? DBXSharingUpdateFilePolicyErrorInvalidFileSettings + } + + @objc + public var asNoPermission: DBXSharingUpdateFilePolicyErrorNoPermission? { + self as? DBXSharingUpdateFilePolicyErrorNoPermission + } + + @objc + public var asOther: DBXSharingUpdateFilePolicyErrorOther? { + self as? DBXSharingUpdateFilePolicyErrorOther + } +} + +/// An unspecified error. +@objc +public class DBXSharingUpdateFilePolicyErrorAccessError: DBXSharingUpdateFilePolicyError { + @objc + public var accessError: DBXSharingSharingFileAccessError + + @objc + public init(_ arg: DBXSharingSharingFileAccessError) { + self.accessError = arg + let swift = Sharing.UpdateFilePolicyError.accessError(arg.swift) + super.init(swift: swift) + } +} + +/// The file settings are invalid. +@objc +public class DBXSharingUpdateFilePolicyErrorInvalidFileSettings: DBXSharingUpdateFilePolicyError { + @objc + public init() { + let swift = Sharing.UpdateFilePolicyError.invalidFileSettings + super.init(swift: swift) + } +} + +/// The current user does not have permission to perform this action. +@objc +public class DBXSharingUpdateFilePolicyErrorNoPermission: DBXSharingUpdateFilePolicyError { + @objc + public init() { + let swift = Sharing.UpdateFilePolicyError.noPermission + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXSharingUpdateFilePolicyErrorOther: DBXSharingUpdateFilePolicyError { + @objc + public init() { + let swift = Sharing.UpdateFilePolicyError.other + super.init(swift: swift) + } +} + /// Objective-C compatible UpdateFolderMemberArg struct @objc public class DBXSharingUpdateFolderMemberArg: NSObject { @@ -10844,8 +12372,8 @@ public class DBXSharingUpdateFolderPolicyArg: NSObject { return DBXSharingLinkSettings(swift: swift) } - /// A list of `FolderAction`s corresponding to `FolderPermission`s that should appear in the response's - /// permissions in SharedFolderMetadata field describing the actions the authenticated user can perform on + /// A list of `FolderAction`s corresponding to `FolderPermission`s that should appear in the response's + /// permissions in SharedFolderMetadata field describing the actions the authenticated user can perform on /// the folder. @objc public var actions: [DBXSharingFolderAction]? { swift.actions?.map { DBXSharingFolderAction(swift: $0) } } @@ -10973,7 +12501,7 @@ public class DBXSharingUpdateFolderPolicyErrorNotOnTeam: DBXSharingUpdateFolderP } } -/// Team policy is more restrictive than memberPolicy in ShareFolderArg. +/// Team policy or group sharing settings are more restrictive than memberPolicy in ShareFolderArg. @objc public class DBXSharingUpdateFolderPolicyErrorTeamPolicyDisallowsMemberPolicy: DBXSharingUpdateFolderPolicyError { @objc diff --git a/Source/SwiftyDropboxObjC/Shared/Generated/DBXSharingAppAuthRoutes.swift b/Source/SwiftyDropboxObjC/Shared/Generated/DBXSharingAppAuthRoutes.swift index 5fcd60eb..221ddf94 100644 --- a/Source/SwiftyDropboxObjC/Shared/Generated/DBXSharingAppAuthRoutes.swift +++ b/Source/SwiftyDropboxObjC/Shared/Generated/DBXSharingAppAuthRoutes.swift @@ -19,6 +19,72 @@ public class DBXSharingAppAuthRoutes: NSObject { public let client: DBXDropboxTransportClient + /// Download the shared link's file from a user's Dropbox. This is a download-style endpoint that returns the file + /// content. + /// + /// - scope: sharing.read + /// + /// - parameter url: URL of the shared link. + /// - parameter path: If the shared link is to a folder, this parameter can be used to retrieve the metadata for a + /// specific file or sub-folder in this folder. A relative path should be used. + /// - parameter linkPassword: If the shared link has a password, this parameter can be used. + /// - parameter overwrite: A boolean to set behavior in the event of a naming conflict. `True` will overwrite + /// conflicting file at destination. `False` will take no action (but if left unhandled in destination closure, + /// an NSError will be thrown). + /// - parameter destination: The location to write the download to. + /// + /// - returns: Through the response callback, the caller will receive a `Sharing.SharedLinkMetadata` object on + /// success or a `Sharing.GetSharedLinkFileError` object on failure. + @objc + @discardableResult public func getSharedLinkFileURL(url: String, path: String?, linkPassword: String?, overwrite: Bool, destination: URL) -> DBXSharingGetSharedLinkFileDownloadRequestFile { + let swift = swift.getSharedLinkFile(url: url, path: path, linkPassword: linkPassword, overwrite: overwrite, destination: destination) + return DBXSharingGetSharedLinkFileDownloadRequestFile(swift: swift) + } + + /// Download the shared link's file from a user's Dropbox. This is a download-style endpoint that returns the file + /// content. + /// + /// - scope: sharing.read + /// + /// - returns: Through the response callback, the caller will receive a `Sharing.SharedLinkMetadata` object on + /// success or a `Sharing.GetSharedLinkFileError` object on failure. + @objc + @discardableResult public func getSharedLinkFileURL(url: String, overwrite: Bool, destination: URL) -> DBXSharingGetSharedLinkFileDownloadRequestFile { + let swift = swift.getSharedLinkFile(url: url, overwrite: overwrite, destination: destination) + return DBXSharingGetSharedLinkFileDownloadRequestFile(swift: swift) + } + + /// Download the shared link's file from a user's Dropbox. This is a download-style endpoint that returns the file + /// content. + /// + /// - scope: sharing.read + /// + /// - parameter url: URL of the shared link. + /// - parameter path: If the shared link is to a folder, this parameter can be used to retrieve the metadata for a + /// specific file or sub-folder in this folder. A relative path should be used. + /// - parameter linkPassword: If the shared link has a password, this parameter can be used. + /// + /// - returns: Through the response callback, the caller will receive a `Sharing.SharedLinkMetadata` object on + /// success or a `Sharing.GetSharedLinkFileError` object on failure. + @objc + @discardableResult public func getSharedLinkFile(url: String, path: String?, linkPassword: String?) -> DBXSharingGetSharedLinkFileDownloadRequestMemory { + let swift = swift.getSharedLinkFile(url: url, path: path, linkPassword: linkPassword) + return DBXSharingGetSharedLinkFileDownloadRequestMemory(swift: swift) + } + + /// Download the shared link's file from a user's Dropbox. This is a download-style endpoint that returns the file + /// content. + /// + /// - scope: sharing.read + /// + /// - returns: Through the response callback, the caller will receive a `Sharing.SharedLinkMetadata` object on + /// success or a `Sharing.GetSharedLinkFileError` object on failure. + @objc + @discardableResult public func getSharedLinkFile(url: String) -> DBXSharingGetSharedLinkFileDownloadRequestMemory { + let swift = swift.getSharedLinkFile(url: url) + return DBXSharingGetSharedLinkFileDownloadRequestMemory(swift: swift) + } + /// Get the shared link's metadata. /// /// - scope: sharing.read @@ -29,7 +95,7 @@ public class DBXSharingAppAuthRoutes: NSObject { /// - parameter linkPassword: If the shared link has a password, this parameter can be used. /// /// - returns: Through the response callback, the caller will receive a `Sharing.SharedLinkMetadata` object on - /// success or a `Sharing.SharedLinkError` object on failure. + /// success or a `Sharing.SharedLinkMetadataError` object on failure. @objc @discardableResult public func getSharedLinkMetadata(url: String, path: String?, linkPassword: String?) -> DBXSharingGetSharedLinkMetadataRpcRequest { let swift = swift.getSharedLinkMetadata(url: url, path: path, linkPassword: linkPassword) @@ -41,7 +107,7 @@ public class DBXSharingAppAuthRoutes: NSObject { /// - scope: sharing.read /// /// - returns: Through the response callback, the caller will receive a `Sharing.SharedLinkMetadata` object on - /// success or a `Sharing.SharedLinkError` object on failure. + /// success or a `Sharing.SharedLinkMetadataError` object on failure. @objc @discardableResult public func getSharedLinkMetadata(url: String) -> DBXSharingGetSharedLinkMetadataRpcRequest { let swift = swift.getSharedLinkMetadata(url: url) diff --git a/Source/SwiftyDropboxObjC/Shared/Generated/DBXSharingRoutes.swift b/Source/SwiftyDropboxObjC/Shared/Generated/DBXSharingRoutes.swift index e197b01c..3901a93c 100644 --- a/Source/SwiftyDropboxObjC/Shared/Generated/DBXSharingRoutes.swift +++ b/Source/SwiftyDropboxObjC/Shared/Generated/DBXSharingRoutes.swift @@ -30,7 +30,10 @@ public class DBXSharingRoutes: NSObject { /// - parameter quiet: Whether added members should be notified via email and device notifications of their /// invitation. /// - parameter accessLevel: AccessLevel union object, describing what access level we want to give new members. - /// - parameter addMessageAsComment: If the custom message should be added as a comment on the file. + /// - parameter addMessageAsComment: If the custom message should be added as a comment on the file. Only meant for + /// Paper files. + /// - parameter fpSealedResult: Field is only returned for "internal" callers. The FingerprintJS Sealed Client + /// Result value /// /// - returns: Through the response callback, the caller will receive a `Array` /// object on success or a `Sharing.AddFileMemberError` object on failure. @@ -40,16 +43,18 @@ public class DBXSharingRoutes: NSObject { members: [DBXSharingMemberSelector], customMessage: String?, quiet: NSNumber, - accessLevel: DBXSharingAccessLevel, - addMessageAsComment: NSNumber + accessLevel: DBXSharingAccessLevel?, + addMessageAsComment: NSNumber, + fpSealedResult: String? ) -> DBXSharingAddFileMemberRpcRequest { let swift = swift.addFileMember( file: file, members: members.map(\.swift), customMessage: customMessage, quiet: quiet.boolValue, - accessLevel: accessLevel.swift, - addMessageAsComment: addMessageAsComment.boolValue + accessLevel: accessLevel?.swift, + addMessageAsComment: addMessageAsComment.boolValue, + fpSealedResult: fpSealedResult ) return DBXSharingAddFileMemberRpcRequest(swift: swift) } @@ -77,6 +82,8 @@ public class DBXSharingRoutes: NSObject { /// folder. /// - parameter quiet: Whether added members should be notified via email and device notifications of their invite. /// - parameter customMessage: Optional message to display to added members in their invitation. + /// - parameter fpSealedResult: Field is only returned for "internal" callers. The FingerprintJS Sealed Client + /// Result value /// /// - returns: Through the response callback, the caller will receive a `Void` object on success or a /// `Sharing.AddFolderMemberError` object on failure. @@ -85,9 +92,16 @@ public class DBXSharingRoutes: NSObject { sharedFolderId: String, members: [DBXSharingAddMember], quiet: NSNumber, - customMessage: String? + customMessage: String?, + fpSealedResult: String? ) -> DBXSharingAddFolderMemberRpcRequest { - let swift = swift.addFolderMember(sharedFolderId: sharedFolderId, members: members.map(\.swift), quiet: quiet.boolValue, customMessage: customMessage) + let swift = swift.addFolderMember( + sharedFolderId: sharedFolderId, + members: members.map(\.swift), + quiet: quiet.boolValue, + customMessage: customMessage, + fpSealedResult: fpSealedResult + ) return DBXSharingAddFolderMemberRpcRequest(swift: swift) } @@ -150,9 +164,9 @@ public class DBXSharingRoutes: NSObject { return DBXSharingCheckShareJobStatusRpcRequest(swift: swift) } - /// Create a shared link with custom settings. If no settings are given then the default visibility is public_ in - /// RequestedVisibility (The resolved visibility, though, may depend on other aspects such as team and shared - /// folder settings). + /// Create a shared link with custom settings. If no settings are given then the default visibility is + /// RequestedVisibility.public (The resolved visibility, though, may depend on other aspects such as team and + /// shared folder settings). /// /// - scope: sharing.write /// @@ -162,17 +176,14 @@ public class DBXSharingRoutes: NSObject { /// - returns: Through the response callback, the caller will receive a `Sharing.SharedLinkMetadata` object on /// success or a `Sharing.CreateSharedLinkWithSettingsError` object on failure. @objc - @discardableResult public func createSharedLinkWithSettings( - path: String, - settings: DBXSharingSharedLinkSettings? - ) -> DBXSharingCreateSharedLinkWithSettingsRpcRequest { + @discardableResult public func createSharedLinkWithSettings(path: String, settings: DBXSharingSharedLinkSettings?) -> DBXSharingCreateSharedLinkWithSettingsRpcRequest { let swift = swift.createSharedLinkWithSettings(path: path, settings: settings?.swift) return DBXSharingCreateSharedLinkWithSettingsRpcRequest(swift: swift) } - /// Create a shared link with custom settings. If no settings are given then the default visibility is public_ in - /// RequestedVisibility (The resolved visibility, though, may depend on other aspects such as team and shared - /// folder settings). + /// Create a shared link with custom settings. If no settings are given then the default visibility is + /// RequestedVisibility.public (The resolved visibility, though, may depend on other aspects such as team and + /// shared folder settings). /// /// - scope: sharing.write /// @@ -190,8 +201,8 @@ public class DBXSharingRoutes: NSObject { /// /// - parameter file: The file to query. /// - parameter actions: A list of `FileAction`s corresponding to `FilePermission`s that should appear in the - /// response's permissions in SharedFileMetadata field describing the actions the authenticated user can - /// perform on the file. + /// response's permissions in SharedFileMetadata field describing the actions the authenticated user can perform + /// on the file. /// /// - returns: Through the response callback, the caller will receive a `Sharing.SharedFileMetadata` object on /// success or a `Sharing.GetFileMetadataError` object on failure. @@ -219,8 +230,8 @@ public class DBXSharingRoutes: NSObject { /// /// - parameter files: The files to query. /// - parameter actions: A list of `FileAction`s corresponding to `FilePermission`s that should appear in the - /// response's permissions in SharedFileMetadata field describing the actions the authenticated user can - /// perform on the file. + /// response's permissions in SharedFileMetadata field describing the actions the authenticated user can perform + /// on the file. /// /// - returns: Through the response callback, the caller will receive a `Array` /// object on success or a `Sharing.SharingUserError` object on failure. @@ -248,7 +259,7 @@ public class DBXSharingRoutes: NSObject { /// /// - parameter sharedFolderId: The ID for the shared folder. /// - parameter actions: A list of `FolderAction`s corresponding to `FolderPermission`s that should appear in the - /// response's permissions in SharedFolderMetadata field describing the actions the authenticated user can + /// response's permissions in SharedFolderMetadata field describing the actions the authenticated user can /// perform on the folder. /// /// - returns: Through the response callback, the caller will receive a `Sharing.SharedFolderMetadata` object on @@ -271,7 +282,8 @@ public class DBXSharingRoutes: NSObject { return DBXSharingGetFolderMetadataRpcRequest(swift: swift) } - /// Download the shared link's file from a user's Dropbox. + /// Download the shared link's file from a user's Dropbox. This is a download-style endpoint that returns the file + /// content. /// /// - scope: sharing.read /// @@ -287,18 +299,13 @@ public class DBXSharingRoutes: NSObject { /// - returns: Through the response callback, the caller will receive a `Sharing.SharedLinkMetadata` object on /// success or a `Sharing.GetSharedLinkFileError` object on failure. @objc - @discardableResult public func getSharedLinkFileURL( - url: String, - path: String?, - linkPassword: String?, - overwrite: Bool, - destination: URL - ) -> DBXSharingGetSharedLinkFileDownloadRequestFile { + @discardableResult public func getSharedLinkFileURL(url: String, path: String?, linkPassword: String?, overwrite: Bool, destination: URL) -> DBXSharingGetSharedLinkFileDownloadRequestFile { let swift = swift.getSharedLinkFile(url: url, path: path, linkPassword: linkPassword, overwrite: overwrite, destination: destination) return DBXSharingGetSharedLinkFileDownloadRequestFile(swift: swift) } - /// Download the shared link's file from a user's Dropbox. + /// Download the shared link's file from a user's Dropbox. This is a download-style endpoint that returns the file + /// content. /// /// - scope: sharing.read /// @@ -310,7 +317,8 @@ public class DBXSharingRoutes: NSObject { return DBXSharingGetSharedLinkFileDownloadRequestFile(swift: swift) } - /// Download the shared link's file from a user's Dropbox. + /// Download the shared link's file from a user's Dropbox. This is a download-style endpoint that returns the file + /// content. /// /// - scope: sharing.read /// @@ -327,7 +335,8 @@ public class DBXSharingRoutes: NSObject { return DBXSharingGetSharedLinkFileDownloadRequestMemory(swift: swift) } - /// Download the shared link's file from a user's Dropbox. + /// Download the shared link's file from a user's Dropbox. This is a download-style endpoint that returns the file + /// content. /// /// - scope: sharing.read /// @@ -349,7 +358,7 @@ public class DBXSharingRoutes: NSObject { /// - parameter linkPassword: If the shared link has a password, this parameter can be used. /// /// - returns: Through the response callback, the caller will receive a `Sharing.SharedLinkMetadata` object on - /// success or a `Sharing.SharedLinkError` object on failure. + /// success or a `Sharing.SharedLinkMetadataError` object on failure. @objc @discardableResult public func getSharedLinkMetadata(url: String, path: String?, linkPassword: String?) -> DBXSharingGetSharedLinkMetadataRpcRequest { let swift = swift.getSharedLinkMetadata(url: url, path: path, linkPassword: linkPassword) @@ -361,7 +370,7 @@ public class DBXSharingRoutes: NSObject { /// - scope: sharing.read /// /// - returns: Through the response callback, the caller will receive a `Sharing.SharedLinkMetadata` object on - /// success or a `Sharing.SharedLinkError` object on failure. + /// success or a `Sharing.SharedLinkMetadataError` object on failure. @objc @discardableResult public func getSharedLinkMetadata(url: String) -> DBXSharingGetSharedLinkMetadataRpcRequest { let swift = swift.getSharedLinkMetadata(url: url) @@ -380,12 +389,7 @@ public class DBXSharingRoutes: NSObject { /// - returns: Through the response callback, the caller will receive a `Sharing.SharedFileMembers` object on /// success or a `Sharing.ListFileMembersError` object on failure. @objc - @discardableResult public func listFileMembers( - file: String, - actions: [DBXSharingMemberAction]?, - includeInherited: NSNumber, - limit: NSNumber - ) -> DBXSharingListFileMembersRpcRequest { + @discardableResult public func listFileMembers(file: String, actions: [DBXSharingMemberAction]?, includeInherited: NSNumber, limit: NSNumber) -> DBXSharingListFileMembersRpcRequest { let swift = swift.listFileMembers(file: file, actions: actions?.map(\.swift), includeInherited: includeInherited.boolValue, limit: limit.uint32Value) return DBXSharingListFileMembersRpcRequest(swift: swift) } @@ -410,7 +414,7 @@ public class DBXSharingRoutes: NSObject { /// - scope: sharing.read /// /// - parameter files: Files for which to return members. - /// - parameter limit: Number of members to return max per query. Defaults to 10 if no limit is specified. + /// - parameter limit: Number of members to return max per query. Defaults to 1000 if no limit is specified. /// /// - returns: Through the response callback, the caller will receive a `Array` /// object on success or a `Sharing.SharingUserError` object on failure. @@ -455,17 +459,17 @@ public class DBXSharingRoutes: NSObject { /// /// - scope: sharing.read /// - /// - parameter sharedFolderId: The ID for the shared folder. + /// - parameter sharedFolderId: The ID for the shared folder. When path is provided, the folder ID will be extracted + /// from the path instead. + /// - parameter path: Optional path to get inherited members. When omitted, uses shared_folder_id to return direct + /// members. When provided, extracts folder ID from this path and returns users who have access through parent + /// shared folder. /// /// - returns: Through the response callback, the caller will receive a `Sharing.SharedFolderMembers` object on /// success or a `Sharing.SharedFolderAccessError` object on failure. @objc - @discardableResult public func listFolderMembers( - sharedFolderId: String, - actions: [DBXSharingMemberAction]?, - limit: NSNumber - ) -> DBXSharingListFolderMembersRpcRequest { - let swift = swift.listFolderMembers(sharedFolderId: sharedFolderId, actions: actions?.map(\.swift), limit: limit.uint32Value) + @discardableResult public func listFolderMembers(sharedFolderId: String, actions: [DBXSharingMemberAction]?, limit: NSNumber, path: String?) -> DBXSharingListFolderMembersRpcRequest { + let swift = swift.listFolderMembers(sharedFolderId: sharedFolderId, actions: actions?.map(\.swift), limit: limit.uint32Value, path: path) return DBXSharingListFolderMembersRpcRequest(swift: swift) } @@ -501,7 +505,7 @@ public class DBXSharingRoutes: NSObject { /// /// - parameter limit: The maximum number of results to return per request. /// - parameter actions: A list of `FolderAction`s corresponding to `FolderPermission`s that should appear in the - /// response's permissions in SharedFolderMetadata field describing the actions the authenticated user can + /// response's permissions in SharedFolderMetadata field describing the actions the authenticated user can /// perform on the folder. /// /// - returns: Through the response callback, the caller will receive a `Sharing.ListFoldersResult` object on @@ -545,7 +549,7 @@ public class DBXSharingRoutes: NSObject { /// /// - parameter limit: The maximum number of results to return per request. /// - parameter actions: A list of `FolderAction`s corresponding to `FolderPermission`s that should appear in the - /// response's permissions in SharedFolderMetadata field describing the actions the authenticated user can + /// response's permissions in SharedFolderMetadata field describing the actions the authenticated user can /// perform on the folder. /// /// - returns: Through the response callback, the caller will receive a `Sharing.ListFoldersResult` object on @@ -583,15 +587,14 @@ public class DBXSharingRoutes: NSObject { return DBXSharingListMountableFoldersContinueRpcRequest(swift: swift) } - /// Returns a list of all files shared with current user. Does not include files the user has received via shared - /// folders, and does not include unclaimed invitations. + /// Returns a list of all files shared with current user. /// /// - scope: sharing.read /// /// - parameter limit: Number of files to return max per query. Defaults to 100 if no limit is specified. /// - parameter actions: A list of `FileAction`s corresponding to `FilePermission`s that should appear in the - /// response's permissions in SharedFileMetadata field describing the actions the authenticated user can - /// perform on the file. + /// response's permissions in SharedFileMetadata field describing the actions the authenticated user can perform + /// on the file. /// /// - returns: Through the response callback, the caller will receive a `Sharing.ListFilesResult` object on success /// or a `Sharing.SharingUserError` object on failure. @@ -601,8 +604,7 @@ public class DBXSharingRoutes: NSObject { return DBXSharingListReceivedFilesRpcRequest(swift: swift) } - /// Returns a list of all files shared with current user. Does not include files the user has received via shared - /// folders, and does not include unclaimed invitations. + /// Returns a list of all files shared with current user. /// /// - scope: sharing.read /// @@ -630,11 +632,10 @@ public class DBXSharingRoutes: NSObject { /// List shared links of this user. If no path is given, returns a list of all shared links for the current user. /// For members of business teams using team space and member folders, returns all shared links in the team - /// member's home folder unless the team space ID is specified in the request header. For more information, - /// refer to the Namespace Guide https://www.dropbox.com/developers/reference/namespace-guide. If a non-empty - /// path is given, returns a list of all shared links that allow access to the given path - direct links to the - /// given path and links to parent folders of the given path. Links to parent folders can be suppressed by - /// setting direct_only to true. + /// member's home folder unless the team space ID is specified in the request header. If a non-empty path is + /// given, returns a list of all shared links that allow access to the given path - direct links to the given + /// path and links to parent folders of the given path. Links to parent folders can be suppressed by setting + /// direct_only to true. /// /// - scope: sharing.read /// @@ -652,11 +653,10 @@ public class DBXSharingRoutes: NSObject { /// List shared links of this user. If no path is given, returns a list of all shared links for the current user. /// For members of business teams using team space and member folders, returns all shared links in the team - /// member's home folder unless the team space ID is specified in the request header. For more information, - /// refer to the Namespace Guide https://www.dropbox.com/developers/reference/namespace-guide. If a non-empty - /// path is given, returns a list of all shared links that allow access to the given path - direct links to the - /// given path and links to parent folders of the given path. Links to parent folders can be suppressed by - /// setting direct_only to true. + /// member's home folder unless the team space ID is specified in the request header. If a non-empty path is + /// given, returns a list of all shared links that allow access to the given path - direct links to the given + /// path and links to parent folders of the given path. Links to parent folders can be suppressed by setting + /// direct_only to true. /// /// - scope: sharing.read /// @@ -669,9 +669,9 @@ public class DBXSharingRoutes: NSObject { } /// Modify the shared link's settings. If the requested visibility conflict with the shared links policy of the team - /// or the shared folder (in case the linked file is part of a shared folder) then the resolvedVisibility in - /// LinkPermissions of the returned SharedLinkMetadata will reflect the actual visibility of the shared link and - /// the requestedVisibility in LinkPermissions will reflect the requested visibility. + /// or the shared folder (in case the linked file is part of a shared folder) then the + /// LinkPermissions.resolved_visibility of the returned SharedLinkMetadata will reflect the actual visibility of + /// the shared link and the LinkPermissions.requested_visibility will reflect the requested visibility. /// /// - scope: sharing.write /// @@ -682,29 +682,22 @@ public class DBXSharingRoutes: NSObject { /// - returns: Through the response callback, the caller will receive a `Sharing.SharedLinkMetadata` object on /// success or a `Sharing.ModifySharedLinkSettingsError` object on failure. @objc - @discardableResult public func modifySharedLinkSettings( - url: String, - settings: DBXSharingSharedLinkSettings, - removeExpiration: NSNumber - ) -> DBXSharingModifySharedLinkSettingsRpcRequest { + @discardableResult public func modifySharedLinkSettings(url: String, settings: DBXSharingSharedLinkSettings, removeExpiration: NSNumber) -> DBXSharingModifySharedLinkSettingsRpcRequest { let swift = swift.modifySharedLinkSettings(url: url, settings: settings.swift, removeExpiration: removeExpiration.boolValue) return DBXSharingModifySharedLinkSettingsRpcRequest(swift: swift) } /// Modify the shared link's settings. If the requested visibility conflict with the shared links policy of the team - /// or the shared folder (in case the linked file is part of a shared folder) then the resolvedVisibility in - /// LinkPermissions of the returned SharedLinkMetadata will reflect the actual visibility of the shared link and - /// the requestedVisibility in LinkPermissions will reflect the requested visibility. + /// or the shared folder (in case the linked file is part of a shared folder) then the + /// LinkPermissions.resolved_visibility of the returned SharedLinkMetadata will reflect the actual visibility of + /// the shared link and the LinkPermissions.requested_visibility will reflect the requested visibility. /// /// - scope: sharing.write /// /// - returns: Through the response callback, the caller will receive a `Sharing.SharedLinkMetadata` object on /// success or a `Sharing.ModifySharedLinkSettingsError` object on failure. @objc - @discardableResult public func modifySharedLinkSettings( - url: String, - settings: DBXSharingSharedLinkSettings - ) -> DBXSharingModifySharedLinkSettingsRpcRequest { + @discardableResult public func modifySharedLinkSettings(url: String, settings: DBXSharingSharedLinkSettings) -> DBXSharingModifySharedLinkSettingsRpcRequest { let swift = swift.modifySharedLinkSettings(url: url, settings: settings.swift) return DBXSharingModifySharedLinkSettingsRpcRequest(swift: swift) } @@ -724,8 +717,22 @@ public class DBXSharingRoutes: NSObject { return DBXSharingMountFolderRpcRequest(swift: swift) } - /// The current user relinquishes their membership in the designated file. Note that the current user may still have - /// inherited access to this file through the parent folder. + /// Removes all self-removable access from a file or folder for the current user. Best-effort and idempotent: + /// attempts to drop link-visitor associations and explicit ACL membership. + /// + /// - scope: private:sharing.write + /// + /// - parameter fileId: The id for the file or folder. + /// + /// - returns: Through the response callback, the caller will receive a `Sharing.RelinquishAccessResult` object on + /// success or a `Sharing.RelinquishAccessError` object on failure. + @objc + @discardableResult public func relinquishAccess(fileId: String) -> DBXSharingRelinquishAccessRpcRequest { + let swift = swift.relinquishAccess(fileId: fileId) + return DBXSharingRelinquishAccessRpcRequest(swift: swift) + } + + /// The current user relinquishes their membership in the designated file. /// /// - scope: sharing.write /// @@ -800,18 +807,14 @@ public class DBXSharingRoutes: NSObject { /// - returns: Through the response callback, the caller will receive a `Async.LaunchResultBase` object on success /// or a `Sharing.RemoveFolderMemberError` object on failure. @objc - @discardableResult public func removeFolderMember( - sharedFolderId: String, - member: DBXSharingMemberSelector, - leaveACopy: NSNumber - ) -> DBXSharingRemoveFolderMemberRpcRequest { + @discardableResult public func removeFolderMember(sharedFolderId: String, member: DBXSharingMemberSelector, leaveACopy: NSNumber) -> DBXSharingRemoveFolderMemberRpcRequest { let swift = swift.removeFolderMember(sharedFolderId: sharedFolderId, member: member.swift, leaveACopy: leaveACopy.boolValue) return DBXSharingRemoveFolderMemberRpcRequest(swift: swift) } /// Revoke a shared link. Note that even after revoking a shared link to a file, the file may be accessible if there /// are shared links leading to any of the file parent folders. To list all shared links that enable access to a - /// specific file, you can use the listSharedLinks with the file as the path in ListSharedLinksArg argument. + /// specific file, you can use the list_shared_links with the file as the ListSharedLinksArg.path argument. /// /// - scope: sharing.write /// @@ -837,10 +840,7 @@ public class DBXSharingRoutes: NSObject { /// - returns: Through the response callback, the caller will receive a `Sharing.ShareFolderLaunch` object on /// success or a `Sharing.SetAccessInheritanceError` object on failure. @objc - @discardableResult public func setAccessInheritance( - sharedFolderId: String, - accessInheritance: DBXSharingAccessInheritance - ) -> DBXSharingSetAccessInheritanceRpcRequest { + @discardableResult public func setAccessInheritance(sharedFolderId: String, accessInheritance: DBXSharingAccessInheritance) -> DBXSharingSetAccessInheritanceRpcRequest { let swift = swift.setAccessInheritance(sharedFolderId: sharedFolderId, accessInheritance: accessInheritance.swift) return DBXSharingSetAccessInheritanceRpcRequest(swift: swift) } @@ -867,7 +867,7 @@ public class DBXSharingRoutes: NSObject { /// - scope: sharing.write /// /// - parameter actions: A list of `FolderAction`s corresponding to `FolderPermission`s that should appear in the - /// response's permissions in SharedFolderMetadata field describing the actions the authenticated user can + /// response's permissions in SharedFolderMetadata field describing the actions the authenticated user can /// perform on the folder. /// - parameter linkSettings: Settings on the link for this folder. /// @@ -958,8 +958,9 @@ public class DBXSharingRoutes: NSObject { return DBXSharingUnshareFileRpcRequest(swift: swift) } - /// Allows a shared folder owner to unshare the folder. You'll need to call checkJobStatus to determine if the - /// action has completed successfully. + /// Allows a shared folder owner to unshare the folder. Unshare will not work in following cases: The shared folder + /// contains shared folders OR the shared folder is inside another shared folder. You'll need to call + /// checkJobStatus to determine if the action has completed successfully. /// /// - scope: sharing.write /// @@ -976,8 +977,9 @@ public class DBXSharingRoutes: NSObject { return DBXSharingUnshareFolderRpcRequest(swift: swift) } - /// Allows a shared folder owner to unshare the folder. You'll need to call checkJobStatus to determine if the - /// action has completed successfully. + /// Allows a shared folder owner to unshare the folder. Unshare will not work in following cases: The shared folder + /// contains shared folders OR the shared folder is inside another shared folder. You'll need to call + /// checkJobStatus to determine if the action has completed successfully. /// /// - scope: sharing.write /// @@ -1000,15 +1002,52 @@ public class DBXSharingRoutes: NSObject { /// - returns: Through the response callback, the caller will receive a `Sharing.MemberAccessLevelResult` object on /// success or a `Sharing.FileMemberActionError` object on failure. @objc - @discardableResult public func updateFileMember( - file: String, - member: DBXSharingMemberSelector, - accessLevel: DBXSharingAccessLevel - ) -> DBXSharingUpdateFileMemberRpcRequest { + @discardableResult public func updateFileMember(file: String, member: DBXSharingMemberSelector, accessLevel: DBXSharingAccessLevel) -> DBXSharingUpdateFileMemberRpcRequest { let swift = swift.updateFileMember(file: file, member: member.swift, accessLevel: accessLevel.swift) return DBXSharingUpdateFileMemberRpcRequest(swift: swift) } + /// Update the viewer info policy of a file. + /// + /// - scope: sharing.write + /// + /// - parameter file: File that we are changing the policy for. + /// - parameter actions: A list of `FileAction`s corresponding to `FilePermission`s that should appear in the + /// response's permissions in SharedFileMetadata field describing the actions the authenticated user can perform + /// on the file. + /// - parameter linkSettings: Field is deprecated. Settings on the link for the file. + /// - parameter viewerInfoPolicy: The presence and seen state policy on the file. + /// + /// - returns: Through the response callback, the caller will receive a `Sharing.SharedFileMetadata` object on + /// success or a `Sharing.UpdateFilePolicyError` object on failure. + @objc + @discardableResult public func updateFilePolicy( + file: String, + actions: [DBXSharingFileAction]?, + linkSettings: DBXSharingLinkSettings?, + viewerInfoPolicy: DBXSharingViewerInfoPolicy? + ) -> DBXSharingUpdateFilePolicyRpcRequest { + let swift = swift.updateFilePolicy( + file: file, + actions: actions?.map(\.swift), + linkSettings: linkSettings?.swift, + viewerInfoPolicy: viewerInfoPolicy?.swift + ) + return DBXSharingUpdateFilePolicyRpcRequest(swift: swift) + } + + /// Update the viewer info policy of a file. + /// + /// - scope: sharing.write + /// + /// - returns: Through the response callback, the caller will receive a `Sharing.SharedFileMetadata` object on + /// success or a `Sharing.UpdateFilePolicyError` object on failure. + @objc + @discardableResult public func updateFilePolicy(file: String) -> DBXSharingUpdateFilePolicyRpcRequest { + let swift = swift.updateFilePolicy(file: file) + return DBXSharingUpdateFilePolicyRpcRequest(swift: swift) + } + /// Allows an owner or editor of a shared folder to update another member's permissions. /// /// - scope: sharing.write @@ -1021,11 +1060,7 @@ public class DBXSharingRoutes: NSObject { /// - returns: Through the response callback, the caller will receive a `Sharing.MemberAccessLevelResult` object on /// success or a `Sharing.UpdateFolderMemberError` object on failure. @objc - @discardableResult public func updateFolderMember( - sharedFolderId: String, - member: DBXSharingMemberSelector, - accessLevel: DBXSharingAccessLevel - ) -> DBXSharingUpdateFolderMemberRpcRequest { + @discardableResult public func updateFolderMember(sharedFolderId: String, member: DBXSharingMemberSelector, accessLevel: DBXSharingAccessLevel) -> DBXSharingUpdateFolderMemberRpcRequest { let swift = swift.updateFolderMember(sharedFolderId: sharedFolderId, member: member.swift, accessLevel: accessLevel.swift) return DBXSharingUpdateFolderMemberRpcRequest(swift: swift) } @@ -1044,7 +1079,7 @@ public class DBXSharingRoutes: NSObject { /// The current user must be on a team to set this policy to members in SharedLinkPolicy. /// - parameter linkSettings: Settings on the link for this folder. /// - parameter actions: A list of `FolderAction`s corresponding to `FolderPermission`s that should appear in the - /// response's permissions in SharedFolderMetadata field describing the actions the authenticated user can + /// response's permissions in SharedFolderMetadata field describing the actions the authenticated user can /// perform on the folder. /// /// - returns: Through the response callback, the caller will receive a `Sharing.SharedFolderMetadata` object on @@ -1117,7 +1152,7 @@ public class DBXSharingAddFileMemberRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: [DBXSharingFileMemberActionResult]? + var objc: [DBXSharingFileMemberActionResult]? = nil if let swift = result { objc = swift.map { DBXSharingFileMemberActionResult(swift: $0) } } @@ -1247,7 +1282,7 @@ public class DBXSharingCheckJobStatusRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXSharingJobStatus? + var objc: DBXSharingJobStatus? = nil if let swift = result { objc = DBXSharingJobStatus.factory(swift: swift) } @@ -1314,7 +1349,7 @@ public class DBXSharingCheckRemoveMemberJobStatusRpcRequest: NSObject, DBXReques callError = error?.objc } - var objc: DBXSharingRemoveMemberJobStatus? + var objc: DBXSharingRemoveMemberJobStatus? = nil if let swift = result { objc = DBXSharingRemoveMemberJobStatus.factory(swift: swift) } @@ -1381,7 +1416,7 @@ public class DBXSharingCheckShareJobStatusRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXSharingShareFolderJobStatus? + var objc: DBXSharingShareFolderJobStatus? = nil if let swift = result { objc = DBXSharingShareFolderJobStatus.factory(swift: swift) } @@ -1448,7 +1483,7 @@ public class DBXSharingCreateSharedLinkRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXSharingPathLinkMetadata? + var objc: DBXSharingPathLinkMetadata? = nil if let swift = result { objc = DBXSharingPathLinkMetadata(swift: swift) } @@ -1515,7 +1550,7 @@ public class DBXSharingCreateSharedLinkWithSettingsRpcRequest: NSObject, DBXRequ callError = error?.objc } - var objc: DBXSharingSharedLinkMetadata? + var objc: DBXSharingSharedLinkMetadata? = nil if let swift = result { objc = DBXSharingSharedLinkMetadata.wrapPreservingSubtypes(swift: swift) } @@ -1582,7 +1617,7 @@ public class DBXSharingGetFileMetadataRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXSharingSharedFileMetadata? + var objc: DBXSharingSharedFileMetadata? = nil if let swift = result { objc = DBXSharingSharedFileMetadata(swift: swift) } @@ -1649,7 +1684,7 @@ public class DBXSharingGetFileMetadataBatchRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: [DBXSharingGetFileMetadataBatchResult]? + var objc: [DBXSharingGetFileMetadataBatchResult]? = nil if let swift = result { objc = swift.map { DBXSharingGetFileMetadataBatchResult(swift: $0) } } @@ -1716,7 +1751,7 @@ public class DBXSharingGetFolderMetadataRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXSharingSharedFolderMetadata? + var objc: DBXSharingSharedFolderMetadata? = nil if let swift = result { objc = DBXSharingSharedFolderMetadata(swift: swift) } @@ -1783,8 +1818,8 @@ public class DBXSharingGetSharedLinkFileDownloadRequestFile: NSObject, DBXReques callError = error?.objc } - var objc: DBXSharingSharedLinkMetadata? - var destination: URL? + var objc: DBXSharingSharedLinkMetadata? = nil + var destination: URL? = nil if let swift = result { objc = DBXSharingSharedLinkMetadata.wrapPreservingSubtypes(swift: swift.0) destination = swift.1 @@ -1858,8 +1893,8 @@ public class DBXSharingGetSharedLinkFileDownloadRequestMemory: NSObject, DBXRequ callError = error?.objc } - var objc: DBXSharingSharedLinkMetadata? - var destination: Data? + var objc: DBXSharingSharedLinkMetadata? = nil + var destination: Data? = nil if let swift = result { objc = DBXSharingSharedLinkMetadata.wrapPreservingSubtypes(swift: swift.0) destination = swift.1 @@ -1903,15 +1938,15 @@ public class DBXSharingGetSharedLinkFileDownloadRequestMemory: NSObject, DBXRequ @objc public class DBXSharingGetSharedLinkMetadataRpcRequest: NSObject, DBXRequest { - var swift: RpcRequest + var swift: RpcRequest - init(swift: RpcRequest) { + init(swift: RpcRequest) { self.swift = swift } @objc @discardableResult public func response( - completionHandler: @escaping (DBXSharingSharedLinkMetadata?, DBXSharingSharedLinkError?, DBXCallError?) -> Void + completionHandler: @escaping (DBXSharingSharedLinkMetadata?, DBXSharingSharedLinkMetadataError?, DBXCallError?) -> Void ) -> Self { response(queue: nil, completionHandler: completionHandler) } @@ -1919,21 +1954,21 @@ public class DBXSharingGetSharedLinkMetadataRpcRequest: NSObject, DBXRequest { @objc @discardableResult public func response( queue: DispatchQueue?, - completionHandler: @escaping (DBXSharingSharedLinkMetadata?, DBXSharingSharedLinkError?, DBXCallError?) -> Void + completionHandler: @escaping (DBXSharingSharedLinkMetadata?, DBXSharingSharedLinkMetadataError?, DBXCallError?) -> Void ) -> Self { swift.response(queue: queue) { result, error in - var routeError: DBXSharingSharedLinkError? + var routeError: DBXSharingSharedLinkMetadataError? var callError: DBXCallError? switch error { case .routeError(let box, _, _, _): - routeError = DBXSharingSharedLinkError(swift: box.unboxed) + routeError = DBXSharingSharedLinkMetadataError(swift: box.unboxed) callError = nil default: routeError = nil callError = error?.objc } - var objc: DBXSharingSharedLinkMetadata? + var objc: DBXSharingSharedLinkMetadata? = nil if let swift = result { objc = DBXSharingSharedLinkMetadata.wrapPreservingSubtypes(swift: swift) } @@ -2000,7 +2035,7 @@ public class DBXSharingGetSharedLinksRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXSharingGetSharedLinksResult? + var objc: DBXSharingGetSharedLinksResult? = nil if let swift = result { objc = DBXSharingGetSharedLinksResult(swift: swift) } @@ -2067,7 +2102,7 @@ public class DBXSharingListFileMembersRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXSharingSharedFileMembers? + var objc: DBXSharingSharedFileMembers? = nil if let swift = result { objc = DBXSharingSharedFileMembers(swift: swift) } @@ -2134,7 +2169,7 @@ public class DBXSharingListFileMembersBatchRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: [DBXSharingListFileMembersBatchResult]? + var objc: [DBXSharingListFileMembersBatchResult]? = nil if let swift = result { objc = swift.map { DBXSharingListFileMembersBatchResult(swift: $0) } } @@ -2201,7 +2236,7 @@ public class DBXSharingListFileMembersContinueRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXSharingSharedFileMembers? + var objc: DBXSharingSharedFileMembers? = nil if let swift = result { objc = DBXSharingSharedFileMembers(swift: swift) } @@ -2268,7 +2303,7 @@ public class DBXSharingListFolderMembersRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXSharingSharedFolderMembers? + var objc: DBXSharingSharedFolderMembers? = nil if let swift = result { objc = DBXSharingSharedFolderMembers(swift: swift) } @@ -2335,7 +2370,7 @@ public class DBXSharingListFolderMembersContinueRpcRequest: NSObject, DBXRequest callError = error?.objc } - var objc: DBXSharingSharedFolderMembers? + var objc: DBXSharingSharedFolderMembers? = nil if let swift = result { objc = DBXSharingSharedFolderMembers(swift: swift) } @@ -2391,7 +2426,7 @@ public class DBXSharingListFoldersRpcRequest: NSObject, DBXRequest { completionHandler: @escaping (DBXSharingListFoldersResult?, DBXCallError?) -> Void ) -> Self { swift.response(queue: queue) { result, error in - var objc: DBXSharingListFoldersResult? + var objc: DBXSharingListFoldersResult? = nil if let swift = result { objc = DBXSharingListFoldersResult(swift: swift) } @@ -2458,7 +2493,7 @@ public class DBXSharingListFoldersContinueRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXSharingListFoldersResult? + var objc: DBXSharingListFoldersResult? = nil if let swift = result { objc = DBXSharingListFoldersResult(swift: swift) } @@ -2514,7 +2549,7 @@ public class DBXSharingListMountableFoldersRpcRequest: NSObject, DBXRequest { completionHandler: @escaping (DBXSharingListFoldersResult?, DBXCallError?) -> Void ) -> Self { swift.response(queue: queue) { result, error in - var objc: DBXSharingListFoldersResult? + var objc: DBXSharingListFoldersResult? = nil if let swift = result { objc = DBXSharingListFoldersResult(swift: swift) } @@ -2581,7 +2616,7 @@ public class DBXSharingListMountableFoldersContinueRpcRequest: NSObject, DBXRequ callError = error?.objc } - var objc: DBXSharingListFoldersResult? + var objc: DBXSharingListFoldersResult? = nil if let swift = result { objc = DBXSharingListFoldersResult(swift: swift) } @@ -2648,7 +2683,7 @@ public class DBXSharingListReceivedFilesRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXSharingListFilesResult? + var objc: DBXSharingListFilesResult? = nil if let swift = result { objc = DBXSharingListFilesResult(swift: swift) } @@ -2715,7 +2750,7 @@ public class DBXSharingListReceivedFilesContinueRpcRequest: NSObject, DBXRequest callError = error?.objc } - var objc: DBXSharingListFilesResult? + var objc: DBXSharingListFilesResult? = nil if let swift = result { objc = DBXSharingListFilesResult(swift: swift) } @@ -2782,7 +2817,7 @@ public class DBXSharingListSharedLinksRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXSharingListSharedLinksResult? + var objc: DBXSharingListSharedLinksResult? = nil if let swift = result { objc = DBXSharingListSharedLinksResult(swift: swift) } @@ -2849,7 +2884,7 @@ public class DBXSharingModifySharedLinkSettingsRpcRequest: NSObject, DBXRequest callError = error?.objc } - var objc: DBXSharingSharedLinkMetadata? + var objc: DBXSharingSharedLinkMetadata? = nil if let swift = result { objc = DBXSharingSharedLinkMetadata.wrapPreservingSubtypes(swift: swift) } @@ -2916,7 +2951,7 @@ public class DBXSharingMountFolderRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXSharingSharedFolderMetadata? + var objc: DBXSharingSharedFolderMetadata? = nil if let swift = result { objc = DBXSharingSharedFolderMetadata(swift: swift) } @@ -2951,6 +2986,73 @@ public class DBXSharingMountFolderRpcRequest: NSObject, DBXRequest { } } +@objc +public class DBXSharingRelinquishAccessRpcRequest: NSObject, DBXRequest { + var swift: RpcRequest + + init(swift: RpcRequest) { + self.swift = swift + } + + @objc + @discardableResult public func response( + completionHandler: @escaping (DBXSharingRelinquishAccessResult?, DBXSharingRelinquishAccessError?, DBXCallError?) -> Void + ) -> Self { + response(queue: nil, completionHandler: completionHandler) + } + + @objc + @discardableResult public func response( + queue: DispatchQueue?, + completionHandler: @escaping (DBXSharingRelinquishAccessResult?, DBXSharingRelinquishAccessError?, DBXCallError?) -> Void + ) -> Self { + swift.response(queue: queue) { result, error in + var routeError: DBXSharingRelinquishAccessError? + var callError: DBXCallError? + switch error { + case .routeError(let box, _, _, _): + routeError = DBXSharingRelinquishAccessError(swift: box.unboxed) + callError = nil + default: + routeError = nil + callError = error?.objc + } + + var objc: DBXSharingRelinquishAccessResult? = nil + if let swift = result { + objc = DBXSharingRelinquishAccessResult(swift: swift) + } + completionHandler(objc, routeError, callError) + } + return self + } + + @objc + public var clientPersistedString: String? { swift.clientPersistedString } + + @available(iOS 13.0, macOS 10.13, *) + @objc + public var earliestBeginDate: Date? { swift.earliestBeginDate } + + @objc + public func persistingString(string: String?) -> Self { + swift.persistingString(string: string) + return self + } + + @available(iOS 13.0, macOS 10.13, *) + @objc + public func settingEarliestBeginDate(date: Date?) -> Self { + swift.settingEarliestBeginDate(date: date) + return self + } + + @objc + public func cancel() { + swift.cancel() + } +} + @objc public class DBXSharingRelinquishFileMembershipRpcRequest: NSObject, DBXRequest { var swift: RpcRequest @@ -3046,7 +3148,7 @@ public class DBXSharingRelinquishFolderMembershipRpcRequest: NSObject, DBXReques callError = error?.objc } - var objc: DBXAsyncLaunchEmptyResult? + var objc: DBXAsyncLaunchEmptyResult? = nil if let swift = result { objc = DBXAsyncLaunchEmptyResult.factory(swift: swift) } @@ -3113,7 +3215,7 @@ public class DBXSharingRemoveFileMemberRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXSharingFileMemberActionIndividualResult? + var objc: DBXSharingFileMemberActionIndividualResult? = nil if let swift = result { objc = DBXSharingFileMemberActionIndividualResult.factory(swift: swift) } @@ -3180,7 +3282,7 @@ public class DBXSharingRemoveFileMember2RpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXSharingFileMemberRemoveActionResult? + var objc: DBXSharingFileMemberRemoveActionResult? = nil if let swift = result { objc = DBXSharingFileMemberRemoveActionResult.factory(swift: swift) } @@ -3247,7 +3349,7 @@ public class DBXSharingRemoveFolderMemberRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXAsyncLaunchResultBase? + var objc: DBXAsyncLaunchResultBase? = nil if let swift = result { objc = DBXAsyncLaunchResultBase.factory(swift: swift) } @@ -3377,7 +3479,7 @@ public class DBXSharingSetAccessInheritanceRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXSharingShareFolderLaunch? + var objc: DBXSharingShareFolderLaunch? = nil if let swift = result { objc = DBXSharingShareFolderLaunch.factory(swift: swift) } @@ -3444,7 +3546,7 @@ public class DBXSharingShareFolderRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXSharingShareFolderLaunch? + var objc: DBXSharingShareFolderLaunch? = nil if let swift = result { objc = DBXSharingShareFolderLaunch.factory(swift: swift) } @@ -3700,7 +3802,7 @@ public class DBXSharingUnshareFolderRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXAsyncLaunchEmptyResult? + var objc: DBXAsyncLaunchEmptyResult? = nil if let swift = result { objc = DBXAsyncLaunchEmptyResult.factory(swift: swift) } @@ -3767,7 +3869,7 @@ public class DBXSharingUpdateFileMemberRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXSharingMemberAccessLevelResult? + var objc: DBXSharingMemberAccessLevelResult? = nil if let swift = result { objc = DBXSharingMemberAccessLevelResult(swift: swift) } @@ -3802,6 +3904,73 @@ public class DBXSharingUpdateFileMemberRpcRequest: NSObject, DBXRequest { } } +@objc +public class DBXSharingUpdateFilePolicyRpcRequest: NSObject, DBXRequest { + var swift: RpcRequest + + init(swift: RpcRequest) { + self.swift = swift + } + + @objc + @discardableResult public func response( + completionHandler: @escaping (DBXSharingSharedFileMetadata?, DBXSharingUpdateFilePolicyError?, DBXCallError?) -> Void + ) -> Self { + response(queue: nil, completionHandler: completionHandler) + } + + @objc + @discardableResult public func response( + queue: DispatchQueue?, + completionHandler: @escaping (DBXSharingSharedFileMetadata?, DBXSharingUpdateFilePolicyError?, DBXCallError?) -> Void + ) -> Self { + swift.response(queue: queue) { result, error in + var routeError: DBXSharingUpdateFilePolicyError? + var callError: DBXCallError? + switch error { + case .routeError(let box, _, _, _): + routeError = DBXSharingUpdateFilePolicyError(swift: box.unboxed) + callError = nil + default: + routeError = nil + callError = error?.objc + } + + var objc: DBXSharingSharedFileMetadata? = nil + if let swift = result { + objc = DBXSharingSharedFileMetadata(swift: swift) + } + completionHandler(objc, routeError, callError) + } + return self + } + + @objc + public var clientPersistedString: String? { swift.clientPersistedString } + + @available(iOS 13.0, macOS 10.13, *) + @objc + public var earliestBeginDate: Date? { swift.earliestBeginDate } + + @objc + public func persistingString(string: String?) -> Self { + swift.persistingString(string: string) + return self + } + + @available(iOS 13.0, macOS 10.13, *) + @objc + public func settingEarliestBeginDate(date: Date?) -> Self { + swift.settingEarliestBeginDate(date: date) + return self + } + + @objc + public func cancel() { + swift.cancel() + } +} + @objc public class DBXSharingUpdateFolderMemberRpcRequest: NSObject, DBXRequest { var swift: RpcRequest @@ -3834,7 +4003,7 @@ public class DBXSharingUpdateFolderMemberRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXSharingMemberAccessLevelResult? + var objc: DBXSharingMemberAccessLevelResult? = nil if let swift = result { objc = DBXSharingMemberAccessLevelResult(swift: swift) } @@ -3901,7 +4070,7 @@ public class DBXSharingUpdateFolderPolicyRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXSharingSharedFolderMetadata? + var objc: DBXSharingSharedFolderMetadata? = nil if let swift = result { objc = DBXSharingSharedFolderMetadata(swift: swift) } diff --git a/Source/SwiftyDropboxObjC/Shared/Generated/DBXTeam.swift b/Source/SwiftyDropboxObjC/Shared/Generated/DBXTeam.swift index 53ed3747..1b59bcb3 100644 --- a/Source/SwiftyDropboxObjC/Shared/Generated/DBXTeam.swift +++ b/Source/SwiftyDropboxObjC/Shared/Generated/DBXTeam.swift @@ -267,7 +267,7 @@ public class DBXTeamAddSecondaryEmailResultReachedLimit: DBXTeamAddSecondaryEmai } } -/// A transient error occurred. Please try again later. +/// Field is deprecated. A transient error occurred. Please try again later. @objc public class DBXTeamAddSecondaryEmailResultTransientError: DBXTeamAddSecondaryEmailResult { @objc @@ -700,6 +700,972 @@ public class DBXTeamBaseTeamFolderErrorOther: DBXTeamBaseTeamFolderError { } } +/// Launches one action-specific bulk suspend job. +@objc +public class DBXTeamBulkSuspendArg: NSObject { + /// Must contain between 1 and 500 targets. The launch handler also rejects duplicate client item IDs and + /// duplicate member selectors. + @objc + public var members: [DBXTeamBulkSuspendMemberTarget] { swift.members.map { DBXTeamBulkSuspendMemberTarget(swift: $0) } } + + @objc + public init(members: [DBXTeamBulkSuspendMemberTarget]) { + self.swift = Team.BulkSuspendArg(members: members.map(\.swift)) + } + + let swift: Team.BulkSuspendArg + + public init(swift: Team.BulkSuspendArg) { + self.swift = swift + } + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible BulkSuspendComplete struct +@objc +public class DBXTeamBulkSuspendComplete: NSObject { + /// (no description) + @objc + public var requested: NSNumber { swift.requested as NSNumber } + /// (no description) + @objc + public var suspended: NSNumber { swift.suspended as NSNumber } + /// (no description) + @objc + public var failed: NSNumber { swift.failed as NSNumber } + /// (no description) + @objc + public var unknown: NSNumber { swift.unknown as NSNumber } + /// (no description) + @objc + public var reportDelivery: DBXTeamBulkSuspendReportDeliveryStatus { DBXTeamBulkSuspendReportDeliveryStatus(swift: swift.reportDelivery) } + + @objc + public init(requested: NSNumber, suspended: NSNumber, failed: NSNumber, unknown: NSNumber, reportDelivery: DBXTeamBulkSuspendReportDeliveryStatus) { + self.swift = Team.BulkSuspendComplete( + requested: requested.int64Value, + suspended: suspended.int64Value, + failed: failed.int64Value, + unknown: unknown.int64Value, + reportDelivery: reportDelivery.swift + ) + } + + let swift: Team.BulkSuspendComplete + + public init(swift: Team.BulkSuspendComplete) { + self.swift = swift + } + + @objc + public override var description: String { swift.description } +} + +/// A typed launch rejection. Authorization failures continue to use the API v2 authentication/permission error +/// surface. +@objc +public class DBXTeamBulkSuspendError: NSObject { + let swift: Team.BulkSuspendError + + public init(swift: Team.BulkSuspendError) { + self.swift = swift + } + + public static func factory(swift: Team.BulkSuspendError) -> DBXTeamBulkSuspendError { + switch swift { + case .invalidRequest: + return DBXTeamBulkSuspendErrorInvalidRequest() + case .tooManyMembers: + return DBXTeamBulkSuspendErrorTooManyMembers() + case .duplicateClientItemId: + return DBXTeamBulkSuspendErrorDuplicateClientItemId() + case .duplicateTeamMemberId: + return DBXTeamBulkSuspendErrorDuplicateTeamMemberId() + case .actingAdmin: + return DBXTeamBulkSuspendErrorActingAdmin() + case .lastAdmin: + return DBXTeamBulkSuspendErrorLastAdmin() + case .other: + return DBXTeamBulkSuspendErrorOther() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asInvalidRequest: DBXTeamBulkSuspendErrorInvalidRequest? { + self as? DBXTeamBulkSuspendErrorInvalidRequest + } + + @objc + public var asTooManyMembers: DBXTeamBulkSuspendErrorTooManyMembers? { + self as? DBXTeamBulkSuspendErrorTooManyMembers + } + + @objc + public var asDuplicateClientItemId: DBXTeamBulkSuspendErrorDuplicateClientItemId? { + self as? DBXTeamBulkSuspendErrorDuplicateClientItemId + } + + @objc + public var asDuplicateTeamMemberId: DBXTeamBulkSuspendErrorDuplicateTeamMemberId? { + self as? DBXTeamBulkSuspendErrorDuplicateTeamMemberId + } + + @objc + public var asActingAdmin: DBXTeamBulkSuspendErrorActingAdmin? { + self as? DBXTeamBulkSuspendErrorActingAdmin + } + + @objc + public var asLastAdmin: DBXTeamBulkSuspendErrorLastAdmin? { + self as? DBXTeamBulkSuspendErrorLastAdmin + } + + @objc + public var asOther: DBXTeamBulkSuspendErrorOther? { + self as? DBXTeamBulkSuspendErrorOther + } +} + +/// An unspecified error. +@objc +public class DBXTeamBulkSuspendErrorInvalidRequest: DBXTeamBulkSuspendError { + @objc + public init() { + let swift = Team.BulkSuspendError.invalidRequest + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamBulkSuspendErrorTooManyMembers: DBXTeamBulkSuspendError { + @objc + public init() { + let swift = Team.BulkSuspendError.tooManyMembers + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamBulkSuspendErrorDuplicateClientItemId: DBXTeamBulkSuspendError { + @objc + public init() { + let swift = Team.BulkSuspendError.duplicateClientItemId + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamBulkSuspendErrorDuplicateTeamMemberId: DBXTeamBulkSuspendError { + @objc + public init() { + let swift = Team.BulkSuspendError.duplicateTeamMemberId + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamBulkSuspendErrorActingAdmin: DBXTeamBulkSuspendError { + @objc + public init() { + let swift = Team.BulkSuspendError.actingAdmin + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamBulkSuspendErrorLastAdmin: DBXTeamBulkSuspendError { + @objc + public init() { + let swift = Team.BulkSuspendError.lastAdmin + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamBulkSuspendErrorOther: DBXTeamBulkSuspendError { + @objc + public init() { + let swift = Team.BulkSuspendError.other + super.init(swift: swift) + } +} + +/// Coarse job state. Live row progress and report contents are intentionally omitted; callers receive row details +/// in the terminal email report. +@objc +public class DBXTeamBulkSuspendJobStatus: NSObject { + let swift: Team.BulkSuspendJobStatus + + public init(swift: Team.BulkSuspendJobStatus) { + self.swift = swift + } + + public static func factory(swift: Team.BulkSuspendJobStatus) -> DBXTeamBulkSuspendJobStatus { + switch swift { + case .inProgress: + return DBXTeamBulkSuspendJobStatusInProgress() + case .complete(let swiftArg): + let arg = DBXTeamBulkSuspendComplete(swift: swiftArg) + return DBXTeamBulkSuspendJobStatusComplete(arg) + case .failed(let swiftArg): + let arg = DBXTeamBulkSuspendTaskFailure(swift: swiftArg) + return DBXTeamBulkSuspendJobStatusFailed(arg) + case .other: + return DBXTeamBulkSuspendJobStatusOther() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asInProgress: DBXTeamBulkSuspendJobStatusInProgress? { + self as? DBXTeamBulkSuspendJobStatusInProgress + } + + @objc + public var asComplete: DBXTeamBulkSuspendJobStatusComplete? { + self as? DBXTeamBulkSuspendJobStatusComplete + } + + @objc + public var asFailed: DBXTeamBulkSuspendJobStatusFailed? { + self as? DBXTeamBulkSuspendJobStatusFailed + } + + @objc + public var asOther: DBXTeamBulkSuspendJobStatusOther? { + self as? DBXTeamBulkSuspendJobStatusOther + } +} + +/// The asynchronous job is still in progress. +@objc +public class DBXTeamBulkSuspendJobStatusInProgress: DBXTeamBulkSuspendJobStatus { + @objc + public init() { + let swift = Team.BulkSuspendJobStatus.inProgress + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamBulkSuspendJobStatusComplete: DBXTeamBulkSuspendJobStatus { + @objc + public var complete: DBXTeamBulkSuspendComplete + + @objc + public init(_ arg: DBXTeamBulkSuspendComplete) { + self.complete = arg + let swift = Team.BulkSuspendJobStatus.complete(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamBulkSuspendJobStatusFailed: DBXTeamBulkSuspendJobStatus { + @objc + public var failed: DBXTeamBulkSuspendTaskFailure + + @objc + public init(_ arg: DBXTeamBulkSuspendTaskFailure) { + self.failed = arg + let swift = Team.BulkSuspendJobStatus.failed(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamBulkSuspendJobStatusOther: DBXTeamBulkSuspendJobStatus { + @objc + public init() { + let swift = Team.BulkSuspendJobStatus.other + super.init(swift: swift) + } +} + +/// One member selected for suspension. The opaque client item ID correlates the eventual report row with the +/// caller's input without sending CSV data. +@objc +public class DBXTeamBulkSuspendMemberTarget: NSObject { + /// (no description) + @objc + public var clientItemId: String { swift.clientItemId } + /// (no description) + @objc + public var suspendArg: DBXTeamMembersDeactivateArg { DBXTeamMembersDeactivateArg(swift: swift.suspendArg) } + + @objc + public init(clientItemId: String, suspendArg: DBXTeamMembersDeactivateArg) { + self.swift = Team.BulkSuspendMemberTarget(clientItemId: clientItemId, suspendArg: suspendArg.subSwift) + } + + let swift: Team.BulkSuspendMemberTarget + + public init(swift: Team.BulkSuspendMemberTarget) { + self.swift = swift + } + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible BulkSuspendReportDeliveryStatus union +@objc +public class DBXTeamBulkSuspendReportDeliveryStatus: NSObject { + let swift: Team.BulkSuspendReportDeliveryStatus + + public init(swift: Team.BulkSuspendReportDeliveryStatus) { + self.swift = swift + } + + public static func factory(swift: Team.BulkSuspendReportDeliveryStatus) -> DBXTeamBulkSuspendReportDeliveryStatus { + switch swift { + case .bulkSuspendReportDeliveryStatusUnspecified: + return DBXTeamBulkSuspendReportDeliveryStatusBulkSuspendReportDeliveryStatusUnspecified() + case .bulkSuspendReportDeliveryStatusPending: + return DBXTeamBulkSuspendReportDeliveryStatusBulkSuspendReportDeliveryStatusPending() + case .bulkSuspendReportDeliveryStatusDelivered: + return DBXTeamBulkSuspendReportDeliveryStatusBulkSuspendReportDeliveryStatusDelivered() + case .bulkSuspendReportDeliveryStatusFailed: + return DBXTeamBulkSuspendReportDeliveryStatusBulkSuspendReportDeliveryStatusFailed() + case .other: + return DBXTeamBulkSuspendReportDeliveryStatusOther() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asBulkSuspendReportDeliveryStatusUnspecified: DBXTeamBulkSuspendReportDeliveryStatusBulkSuspendReportDeliveryStatusUnspecified? { + self as? DBXTeamBulkSuspendReportDeliveryStatusBulkSuspendReportDeliveryStatusUnspecified + } + + @objc + public var asBulkSuspendReportDeliveryStatusPending: DBXTeamBulkSuspendReportDeliveryStatusBulkSuspendReportDeliveryStatusPending? { + self as? DBXTeamBulkSuspendReportDeliveryStatusBulkSuspendReportDeliveryStatusPending + } + + @objc + public var asBulkSuspendReportDeliveryStatusDelivered: DBXTeamBulkSuspendReportDeliveryStatusBulkSuspendReportDeliveryStatusDelivered? { + self as? DBXTeamBulkSuspendReportDeliveryStatusBulkSuspendReportDeliveryStatusDelivered + } + + @objc + public var asBulkSuspendReportDeliveryStatusFailed: DBXTeamBulkSuspendReportDeliveryStatusBulkSuspendReportDeliveryStatusFailed? { + self as? DBXTeamBulkSuspendReportDeliveryStatusBulkSuspendReportDeliveryStatusFailed + } + + @objc + public var asOther: DBXTeamBulkSuspendReportDeliveryStatusOther? { + self as? DBXTeamBulkSuspendReportDeliveryStatusOther + } +} + +/// An unspecified error. +@objc +public class DBXTeamBulkSuspendReportDeliveryStatusBulkSuspendReportDeliveryStatusUnspecified: DBXTeamBulkSuspendReportDeliveryStatus { + @objc + public init() { + let swift = Team.BulkSuspendReportDeliveryStatus.bulkSuspendReportDeliveryStatusUnspecified + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamBulkSuspendReportDeliveryStatusBulkSuspendReportDeliveryStatusPending: DBXTeamBulkSuspendReportDeliveryStatus { + @objc + public init() { + let swift = Team.BulkSuspendReportDeliveryStatus.bulkSuspendReportDeliveryStatusPending + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamBulkSuspendReportDeliveryStatusBulkSuspendReportDeliveryStatusDelivered: DBXTeamBulkSuspendReportDeliveryStatus { + @objc + public init() { + let swift = Team.BulkSuspendReportDeliveryStatus.bulkSuspendReportDeliveryStatusDelivered + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamBulkSuspendReportDeliveryStatusBulkSuspendReportDeliveryStatusFailed: DBXTeamBulkSuspendReportDeliveryStatus { + @objc + public init() { + let swift = Team.BulkSuspendReportDeliveryStatus.bulkSuspendReportDeliveryStatusFailed + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamBulkSuspendReportDeliveryStatusOther: DBXTeamBulkSuspendReportDeliveryStatus { + @objc + public init() { + let swift = Team.BulkSuspendReportDeliveryStatus.other + super.init(swift: swift) + } +} + +/// Error that can be returned whenever a struct derived from UserSelectorArg is used. +@objc +public class DBXTeamUserSelectorError: NSObject { + let swift: Team.UserSelectorError + + public init(swift: Team.UserSelectorError) { + self.swift = swift + } + + public static func factory(swift: Team.UserSelectorError) -> DBXTeamUserSelectorError { + switch swift { + case .userNotFound: + return DBXTeamUserSelectorErrorUserNotFound() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asUserNotFound: DBXTeamUserSelectorErrorUserNotFound? { + self as? DBXTeamUserSelectorErrorUserNotFound + } +} + +/// No matching user found. The provided team_member_id, email, or external_id does not exist on this team. +@objc +public class DBXTeamUserSelectorErrorUserNotFound: DBXTeamUserSelectorError { + @objc + public init() { + let swift = Team.UserSelectorError.userNotFound + super.init(swift: swift) + } +} + +/// Objective-C compatible MembersDeactivateError union +@objc +public class DBXTeamMembersDeactivateError: NSObject { + let swift: Team.MembersDeactivateError + + public init(swift: Team.MembersDeactivateError) { + self.swift = swift + } + + public static func factory(swift: Team.MembersDeactivateError) -> DBXTeamMembersDeactivateError { + switch swift { + case .userNotFound: + return DBXTeamMembersDeactivateErrorUserNotFound() + case .userNotInTeam: + return DBXTeamMembersDeactivateErrorUserNotInTeam() + case .other: + return DBXTeamMembersDeactivateErrorOther() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asUserNotFound: DBXTeamMembersDeactivateErrorUserNotFound? { + self as? DBXTeamMembersDeactivateErrorUserNotFound + } + + @objc + public var asUserNotInTeam: DBXTeamMembersDeactivateErrorUserNotInTeam? { + self as? DBXTeamMembersDeactivateErrorUserNotInTeam + } + + @objc + public var asOther: DBXTeamMembersDeactivateErrorOther? { + self as? DBXTeamMembersDeactivateErrorOther + } +} + +/// No matching user found. The provided team_member_id, email, or external_id does not exist on this team. +@objc +public class DBXTeamMembersDeactivateErrorUserNotFound: DBXTeamMembersDeactivateError { + @objc + public init() { + let swift = Team.MembersDeactivateError.userNotFound + super.init(swift: swift) + } +} + +/// The user is not a member of the team. +@objc +public class DBXTeamMembersDeactivateErrorUserNotInTeam: DBXTeamMembersDeactivateError { + @objc + public init() { + let swift = Team.MembersDeactivateError.userNotInTeam + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamMembersDeactivateErrorOther: DBXTeamMembersDeactivateError { + @objc + public init() { + let swift = Team.MembersDeactivateError.other + super.init(swift: swift) + } +} + +/// Objective-C compatible MembersSuspendError union +@objc +public class DBXTeamMembersSuspendError: NSObject { + let swift: Team.MembersSuspendError + + public init(swift: Team.MembersSuspendError) { + self.swift = swift + } + + public static func factory(swift: Team.MembersSuspendError) -> DBXTeamMembersSuspendError { + switch swift { + case .userNotFound: + return DBXTeamMembersSuspendErrorUserNotFound() + case .userNotInTeam: + return DBXTeamMembersSuspendErrorUserNotInTeam() + case .other: + return DBXTeamMembersSuspendErrorOther() + case .suspendInactiveUser: + return DBXTeamMembersSuspendErrorSuspendInactiveUser() + case .suspendLastAdmin: + return DBXTeamMembersSuspendErrorSuspendLastAdmin() + case .teamLicenseLimit: + return DBXTeamMembersSuspendErrorTeamLicenseLimit() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asUserNotFound: DBXTeamMembersSuspendErrorUserNotFound? { + self as? DBXTeamMembersSuspendErrorUserNotFound + } + + @objc + public var asUserNotInTeam: DBXTeamMembersSuspendErrorUserNotInTeam? { + self as? DBXTeamMembersSuspendErrorUserNotInTeam + } + + @objc + public var asOther: DBXTeamMembersSuspendErrorOther? { + self as? DBXTeamMembersSuspendErrorOther + } + + @objc + public var asSuspendInactiveUser: DBXTeamMembersSuspendErrorSuspendInactiveUser? { + self as? DBXTeamMembersSuspendErrorSuspendInactiveUser + } + + @objc + public var asSuspendLastAdmin: DBXTeamMembersSuspendErrorSuspendLastAdmin? { + self as? DBXTeamMembersSuspendErrorSuspendLastAdmin + } + + @objc + public var asTeamLicenseLimit: DBXTeamMembersSuspendErrorTeamLicenseLimit? { + self as? DBXTeamMembersSuspendErrorTeamLicenseLimit + } +} + +/// No matching user found. The provided team_member_id, email, or external_id does not exist on this team. +@objc +public class DBXTeamMembersSuspendErrorUserNotFound: DBXTeamMembersSuspendError { + @objc + public init() { + let swift = Team.MembersSuspendError.userNotFound + super.init(swift: swift) + } +} + +/// The user is not a member of the team. +@objc +public class DBXTeamMembersSuspendErrorUserNotInTeam: DBXTeamMembersSuspendError { + @objc + public init() { + let swift = Team.MembersSuspendError.userNotInTeam + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamMembersSuspendErrorOther: DBXTeamMembersSuspendError { + @objc + public init() { + let swift = Team.MembersSuspendError.other + super.init(swift: swift) + } +} + +/// The user is not active, so it cannot be suspended. +@objc +public class DBXTeamMembersSuspendErrorSuspendInactiveUser: DBXTeamMembersSuspendError { + @objc + public init() { + let swift = Team.MembersSuspendError.suspendInactiveUser + super.init(swift: swift) + } +} + +/// The user is the last admin of the team, so it cannot be suspended. +@objc +public class DBXTeamMembersSuspendErrorSuspendLastAdmin: DBXTeamMembersSuspendError { + @objc + public init() { + let swift = Team.MembersSuspendError.suspendLastAdmin + super.init(swift: swift) + } +} + +/// Team is full. The organization has no available licenses. +@objc +public class DBXTeamMembersSuspendErrorTeamLicenseLimit: DBXTeamMembersSuspendError { + @objc + public init() { + let swift = Team.MembersSuspendError.teamLicenseLimit + super.init(swift: swift) + } +} + +/// Stable machine-readable reasons used by the terminal row report. +@objc +public class DBXTeamBulkSuspendRowFailure: NSObject { + let swift: Team.BulkSuspendRowFailure + + public init(swift: Team.BulkSuspendRowFailure) { + self.swift = swift + } + + public static func factory(swift: Team.BulkSuspendRowFailure) -> DBXTeamBulkSuspendRowFailure { + switch swift { + case .userNotFound: + return DBXTeamBulkSuspendRowFailureUserNotFound() + case .userNotInTeam: + return DBXTeamBulkSuspendRowFailureUserNotInTeam() + case .other: + return DBXTeamBulkSuspendRowFailureOther() + case .suspendInactiveUser: + return DBXTeamBulkSuspendRowFailureSuspendInactiveUser() + case .suspendLastAdmin: + return DBXTeamBulkSuspendRowFailureSuspendLastAdmin() + case .teamLicenseLimit: + return DBXTeamBulkSuspendRowFailureTeamLicenseLimit() + case .protectedActingAdmin: + return DBXTeamBulkSuspendRowFailureProtectedActingAdmin() + case .permissionChanged: + return DBXTeamBulkSuspendRowFailurePermissionChanged() + case .suspendFailed: + return DBXTeamBulkSuspendRowFailureSuspendFailed() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asUserNotFound: DBXTeamBulkSuspendRowFailureUserNotFound? { + self as? DBXTeamBulkSuspendRowFailureUserNotFound + } + + @objc + public var asUserNotInTeam: DBXTeamBulkSuspendRowFailureUserNotInTeam? { + self as? DBXTeamBulkSuspendRowFailureUserNotInTeam + } + + @objc + public var asOther: DBXTeamBulkSuspendRowFailureOther? { + self as? DBXTeamBulkSuspendRowFailureOther + } + + @objc + public var asSuspendInactiveUser: DBXTeamBulkSuspendRowFailureSuspendInactiveUser? { + self as? DBXTeamBulkSuspendRowFailureSuspendInactiveUser + } + + @objc + public var asSuspendLastAdmin: DBXTeamBulkSuspendRowFailureSuspendLastAdmin? { + self as? DBXTeamBulkSuspendRowFailureSuspendLastAdmin + } + + @objc + public var asTeamLicenseLimit: DBXTeamBulkSuspendRowFailureTeamLicenseLimit? { + self as? DBXTeamBulkSuspendRowFailureTeamLicenseLimit + } + + @objc + public var asProtectedActingAdmin: DBXTeamBulkSuspendRowFailureProtectedActingAdmin? { + self as? DBXTeamBulkSuspendRowFailureProtectedActingAdmin + } + + @objc + public var asPermissionChanged: DBXTeamBulkSuspendRowFailurePermissionChanged? { + self as? DBXTeamBulkSuspendRowFailurePermissionChanged + } + + @objc + public var asSuspendFailed: DBXTeamBulkSuspendRowFailureSuspendFailed? { + self as? DBXTeamBulkSuspendRowFailureSuspendFailed + } +} + +/// No matching user found. The provided team_member_id, email, or external_id does not exist on this team. +@objc +public class DBXTeamBulkSuspendRowFailureUserNotFound: DBXTeamBulkSuspendRowFailure { + @objc + public init() { + let swift = Team.BulkSuspendRowFailure.userNotFound + super.init(swift: swift) + } +} + +/// The user is not a member of the team. +@objc +public class DBXTeamBulkSuspendRowFailureUserNotInTeam: DBXTeamBulkSuspendRowFailure { + @objc + public init() { + let swift = Team.BulkSuspendRowFailure.userNotInTeam + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamBulkSuspendRowFailureOther: DBXTeamBulkSuspendRowFailure { + @objc + public init() { + let swift = Team.BulkSuspendRowFailure.other + super.init(swift: swift) + } +} + +/// The user is not active, so it cannot be suspended. +@objc +public class DBXTeamBulkSuspendRowFailureSuspendInactiveUser: DBXTeamBulkSuspendRowFailure { + @objc + public init() { + let swift = Team.BulkSuspendRowFailure.suspendInactiveUser + super.init(swift: swift) + } +} + +/// The user is the last admin of the team, so it cannot be suspended. +@objc +public class DBXTeamBulkSuspendRowFailureSuspendLastAdmin: DBXTeamBulkSuspendRowFailure { + @objc + public init() { + let swift = Team.BulkSuspendRowFailure.suspendLastAdmin + super.init(swift: swift) + } +} + +/// Team is full. The organization has no available licenses. +@objc +public class DBXTeamBulkSuspendRowFailureTeamLicenseLimit: DBXTeamBulkSuspendRowFailure { + @objc + public init() { + let swift = Team.BulkSuspendRowFailure.teamLicenseLimit + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamBulkSuspendRowFailureProtectedActingAdmin: DBXTeamBulkSuspendRowFailure { + @objc + public init() { + let swift = Team.BulkSuspendRowFailure.protectedActingAdmin + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamBulkSuspendRowFailurePermissionChanged: DBXTeamBulkSuspendRowFailure { + @objc + public init() { + let swift = Team.BulkSuspendRowFailure.permissionChanged + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamBulkSuspendRowFailureSuspendFailed: DBXTeamBulkSuspendRowFailure { + @objc + public init() { + let swift = Team.BulkSuspendRowFailure.suspendFailed + super.init(swift: swift) + } +} + +/// The terminal outcome for one requested member. Row outcomes are delivered in the report rather than embedded in +/// the status response. +@objc +public class DBXTeamBulkSuspendRowOutcome: NSObject { + let swift: Team.BulkSuspendRowOutcome + + public init(swift: Team.BulkSuspendRowOutcome) { + self.swift = swift + } + + public static func factory(swift: Team.BulkSuspendRowOutcome) -> DBXTeamBulkSuspendRowOutcome { + switch swift { + case .suspended: + return DBXTeamBulkSuspendRowOutcomeSuspended() + case .failed(let swiftArg): + let arg = DBXTeamBulkSuspendRowFailure(swift: swiftArg) + return DBXTeamBulkSuspendRowOutcomeFailed(arg) + case .unknown: + return DBXTeamBulkSuspendRowOutcomeUnknown() + case .other: + return DBXTeamBulkSuspendRowOutcomeOther() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asSuspended: DBXTeamBulkSuspendRowOutcomeSuspended? { + self as? DBXTeamBulkSuspendRowOutcomeSuspended + } + + @objc + public var asFailed: DBXTeamBulkSuspendRowOutcomeFailed? { + self as? DBXTeamBulkSuspendRowOutcomeFailed + } + + @objc + public var asUnknown: DBXTeamBulkSuspendRowOutcomeUnknown? { + self as? DBXTeamBulkSuspendRowOutcomeUnknown + } + + @objc + public var asOther: DBXTeamBulkSuspendRowOutcomeOther? { + self as? DBXTeamBulkSuspendRowOutcomeOther + } +} + +/// An unspecified error. +@objc +public class DBXTeamBulkSuspendRowOutcomeSuspended: DBXTeamBulkSuspendRowOutcome { + @objc + public init() { + let swift = Team.BulkSuspendRowOutcome.suspended + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamBulkSuspendRowOutcomeFailed: DBXTeamBulkSuspendRowOutcome { + @objc + public var failed: DBXTeamBulkSuspendRowFailure + + @objc + public init(_ arg: DBXTeamBulkSuspendRowFailure) { + self.failed = arg + let swift = Team.BulkSuspendRowOutcome.failed(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamBulkSuspendRowOutcomeUnknown: DBXTeamBulkSuspendRowOutcome { + @objc + public init() { + let swift = Team.BulkSuspendRowOutcome.unknown + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamBulkSuspendRowOutcomeOther: DBXTeamBulkSuspendRowOutcome { + @objc + public init() { + let swift = Team.BulkSuspendRowOutcome.other + super.init(swift: swift) + } +} + +/// Objective-C compatible BulkSuspendTaskFailure union +@objc +public class DBXTeamBulkSuspendTaskFailure: NSObject { + let swift: Team.BulkSuspendTaskFailure + + public init(swift: Team.BulkSuspendTaskFailure) { + self.swift = swift + } + + public static func factory(swift: Team.BulkSuspendTaskFailure) -> DBXTeamBulkSuspendTaskFailure { + switch swift { + case .unusableResult: + return DBXTeamBulkSuspendTaskFailureUnusableResult() + case .other: + return DBXTeamBulkSuspendTaskFailureOther() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asUnusableResult: DBXTeamBulkSuspendTaskFailureUnusableResult? { + self as? DBXTeamBulkSuspendTaskFailureUnusableResult + } + + @objc + public var asOther: DBXTeamBulkSuspendTaskFailureOther? { + self as? DBXTeamBulkSuspendTaskFailureOther + } +} + +/// An unspecified error. +@objc +public class DBXTeamBulkSuspendTaskFailureUnusableResult: DBXTeamBulkSuspendTaskFailure { + @objc + public init() { + let swift = Team.BulkSuspendTaskFailure.unusableResult + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamBulkSuspendTaskFailureOther: DBXTeamBulkSuspendTaskFailure { + @objc + public init() { + let swift = Team.BulkSuspendTaskFailure.other + super.init(swift: swift) + } +} + /// Error returned when getting member custom quota. @objc public class DBXTeamCustomQuotaError: NSObject { @@ -856,7 +1822,7 @@ public class DBXTeamCustomQuotaUsersArg: NSObject { /// Input arguments that can be provided for most reports. @objc public class DBXTeamDateRange: NSObject { - /// Optional starting date (inclusive). If start_date is None or too long ago, this field will be set to 6 + /// Optional starting date (inclusive). If start_date is None or too long ago, this field will be set to 6 /// months ago. @objc public var startDate: Date? { swift.startDate } @@ -1250,7 +2216,7 @@ public class DBXTeamDevicesActive: NSObject { /// Array of number of linked android devices with activity. @objc public var android: [NSNumber] { swift.android.compactMap { $0 as NSNumber? } } - /// Array of number of other linked devices (blackberry, windows phone, etc) with activity. + /// Array of number of other linked devices (blackberry, windows phone, etc) with activity. @objc public var other: [NSNumber] { swift.other.compactMap { $0 as NSNumber? } } /// Array of total number of linked clients with activity. @@ -1642,6 +2608,8 @@ public class DBXTeamFeature: NSObject { return DBXTeamFeatureHasTeamFileEvents() case .hasTeamSelectiveSync: return DBXTeamFeatureHasTeamSelectiveSync() + case .hasDistinctMemberHomes: + return DBXTeamFeatureHasDistinctMemberHomes() case .other: return DBXTeamFeatureOther() } @@ -1670,6 +2638,11 @@ public class DBXTeamFeature: NSObject { self as? DBXTeamFeatureHasTeamSelectiveSync } + @objc + public var asHasDistinctMemberHomes: DBXTeamFeatureHasDistinctMemberHomes? { + self as? DBXTeamFeatureHasDistinctMemberHomes + } + @objc public var asOther: DBXTeamFeatureOther? { self as? DBXTeamFeatureOther @@ -1716,6 +2689,16 @@ public class DBXTeamFeatureHasTeamSelectiveSync: DBXTeamFeature { } } +/// Does this team have team member folder. +@objc +public class DBXTeamFeatureHasDistinctMemberHomes: DBXTeamFeature { + @objc + public init() { + let swift = Team.Feature.hasDistinctMemberHomes + super.init(swift: swift) + } +} + /// An unspecified error. @objc public class DBXTeamFeatureOther: DBXTeamFeature { @@ -1750,6 +2733,9 @@ public class DBXTeamFeatureValue: NSObject { case .hasTeamSelectiveSync(let swiftArg): let arg = DBXTeamHasTeamSelectiveSyncValue(swift: swiftArg) return DBXTeamFeatureValueHasTeamSelectiveSync(arg) + case .hasDistinctMemberHomes(let swiftArg): + let arg = DBXTeamHasDistinctMemberHomesValue(swift: swiftArg) + return DBXTeamFeatureValueHasDistinctMemberHomes(arg) case .other: return DBXTeamFeatureValueOther() } @@ -1778,6 +2764,11 @@ public class DBXTeamFeatureValue: NSObject { self as? DBXTeamFeatureValueHasTeamSelectiveSync } + @objc + public var asHasDistinctMemberHomes: DBXTeamFeatureValueHasDistinctMemberHomes? { + self as? DBXTeamFeatureValueHasDistinctMemberHomes + } + @objc public var asOther: DBXTeamFeatureValueOther? { self as? DBXTeamFeatureValueOther @@ -1840,6 +2831,20 @@ public class DBXTeamFeatureValueHasTeamSelectiveSync: DBXTeamFeatureValue { } } +/// An unspecified error. +@objc +public class DBXTeamFeatureValueHasDistinctMemberHomes: DBXTeamFeatureValue { + @objc + public var hasDistinctMemberHomes: DBXTeamHasDistinctMemberHomesValue + + @objc + public init(_ arg: DBXTeamHasDistinctMemberHomesValue) { + self.hasDistinctMemberHomes = arg + let swift = Team.FeatureValue.hasDistinctMemberHomes(arg.swift) + super.init(swift: swift) + } +} + /// An unspecified error. @objc public class DBXTeamFeatureValueOther: DBXTeamFeatureValue { @@ -2871,8 +3876,8 @@ public class DBXTeamGroupMemberSetAccessTypeErrorUserCannotBeManagerOfCompanyMan /// Objective-C compatible IncludeMembersArg struct @objc public class DBXTeamIncludeMembersArg: NSObject { - /// Whether to return the list of members in the group. Note that the default value will cause all the group - /// members to be returned in the response. This may take a long time for large groups. + /// Whether to return the list of members in the group. Note that the default value will cause all the group + /// members to be returned in the response. This may take a long time for large groups. @objc public var returnMembers: NSNumber { swift.returnMembers as NSNumber } @@ -3114,9 +4119,9 @@ public class DBXTeamGroupMembersChangeResult: NSObject { /// The group info after member change operation has been performed. @objc public var groupInfo: DBXTeamGroupFullInfo { DBXTeamGroupFullInfo(swift: swift.groupInfo) } - /// For legacy purposes async_job_id will always return one space ' '. Formerly, it was an ID that was used to - /// obtain the status of granting/revoking group-owned resources. It's no longer necessary because the async - /// processing now happens automatically. + /// Field is deprecated. For legacy purposes async_job_id will always return one space ' '. Formerly, it was an + /// ID that was used to obtain the status of granting/revoking group-owned resources. It's no longer + /// necessary because the async processing now happens automatically. @objc public var asyncJobId: String { swift.asyncJobId } @@ -3428,19 +4433,14 @@ public class DBXTeamGroupMembersSetAccessTypeArg: DBXTeamGroupMemberSelector { /// New group access type the user will have. @objc public var accessType: DBXTeamGroupAccessType { DBXTeamGroupAccessType(swift: subSwift.accessType) } - /// Whether to return the list of members in the group. Note that the default value will cause all the group - /// members to be returned in the response. This may take a long time for large groups. + /// Whether to return the list of members in the group. Note that the default value will cause all the group + /// members to be returned in the response. This may take a long time for large groups. @objc public var returnMembers: NSNumber { subSwift.returnMembers as NSNumber } @objc public init(group: DBXTeamGroupSelector, user: DBXTeamUserSelectorArg, accessType: DBXTeamGroupAccessType, returnMembers: NSNumber) { - let swift = Team.GroupMembersSetAccessTypeArg( - group: group.swift, - user: user.swift, - accessType: accessType.swift, - returnMembers: returnMembers.boolValue - ) + let swift = Team.GroupMembersSetAccessTypeArg(group: group.swift, user: user.swift, accessType: accessType.swift, returnMembers: returnMembers.boolValue) self.subSwift = swift super.init(swift: swift) } @@ -4204,6 +5204,63 @@ public class DBXTeamGroupsSelectorGroupExternalIds: DBXTeamGroupsSelector { } } +/// The value for hasDistinctMemberHomes in Feature. +@objc +public class DBXTeamHasDistinctMemberHomesValue: NSObject { + let swift: Team.HasDistinctMemberHomesValue + + public init(swift: Team.HasDistinctMemberHomesValue) { + self.swift = swift + } + + public static func factory(swift: Team.HasDistinctMemberHomesValue) -> DBXTeamHasDistinctMemberHomesValue { + switch swift { + case .hasDistinctMemberHomes(let swiftArg): + let arg = NSNumber(value: swiftArg) + return DBXTeamHasDistinctMemberHomesValueHasDistinctMemberHomes(arg) + case .other: + return DBXTeamHasDistinctMemberHomesValueOther() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asHasDistinctMemberHomes: DBXTeamHasDistinctMemberHomesValueHasDistinctMemberHomes? { + self as? DBXTeamHasDistinctMemberHomesValueHasDistinctMemberHomes + } + + @objc + public var asOther: DBXTeamHasDistinctMemberHomesValueOther? { + self as? DBXTeamHasDistinctMemberHomesValueOther + } +} + +/// Does this team have distinct team member homes. +@objc +public class DBXTeamHasDistinctMemberHomesValueHasDistinctMemberHomes: DBXTeamHasDistinctMemberHomesValue { + @objc + public var hasDistinctMemberHomes: NSNumber + + @objc + public init(_ arg: NSNumber) { + self.hasDistinctMemberHomes = arg + let swift = Team.HasDistinctMemberHomesValue.hasDistinctMemberHomes(arg.boolValue) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamHasDistinctMemberHomesValueOther: DBXTeamHasDistinctMemberHomesValue { + @objc + public init() { + let swift = Team.HasDistinctMemberHomesValue.other + super.init(swift: swift) + } +} + /// The value for hasTeamFileEvents in Feature. @objc public class DBXTeamHasTeamFileEventsValue: NSObject { @@ -7651,41 +8708,6 @@ public class DBXTeamMemberProfile: NSObject { public override var description: String { swift.description } } -/// Error that can be returned whenever a struct derived from UserSelectorArg is used. -@objc -public class DBXTeamUserSelectorError: NSObject { - let swift: Team.UserSelectorError - - public init(swift: Team.UserSelectorError) { - self.swift = swift - } - - public static func factory(swift: Team.UserSelectorError) -> DBXTeamUserSelectorError { - switch swift { - case .userNotFound: - return DBXTeamUserSelectorErrorUserNotFound() - } - } - - @objc - public override var description: String { swift.description } - - @objc - public var asUserNotFound: DBXTeamUserSelectorErrorUserNotFound? { - self as? DBXTeamUserSelectorErrorUserNotFound - } -} - -/// No matching user found. The provided team_member_id, email, or external_id does not exist on this team. -@objc -public class DBXTeamUserSelectorErrorUserNotFound: DBXTeamUserSelectorError { - @objc - public init() { - let swift = Team.UserSelectorError.userNotFound - super.init(swift: swift) - } -} - /// Objective-C compatible MemberSelectorError union @objc public class DBXTeamMemberSelectorError: NSObject { @@ -8205,71 +9227,259 @@ public class DBXTeamMembersDeactivateArg: DBXTeamMembersDeactivateBaseArg { public override var description: String { subSwift.description } } -/// Objective-C compatible MembersDeactivateError union +/// Objective-C compatible MembersPermanentlyDeleteFilesError union @objc -public class DBXTeamMembersDeactivateError: NSObject { - let swift: Team.MembersDeactivateError +public class DBXTeamMembersPermanentlyDeleteFilesError: NSObject { + let swift: Team.MembersPermanentlyDeleteFilesError - public init(swift: Team.MembersDeactivateError) { + public init(swift: Team.MembersPermanentlyDeleteFilesError) { self.swift = swift } - public static func factory(swift: Team.MembersDeactivateError) -> DBXTeamMembersDeactivateError { + public static func factory(swift: Team.MembersPermanentlyDeleteFilesError) -> DBXTeamMembersPermanentlyDeleteFilesError { switch swift { case .userNotFound: - return DBXTeamMembersDeactivateErrorUserNotFound() + return DBXTeamMembersPermanentlyDeleteFilesErrorUserNotFound() case .userNotInTeam: - return DBXTeamMembersDeactivateErrorUserNotInTeam() + return DBXTeamMembersPermanentlyDeleteFilesErrorUserNotInTeam() case .other: - return DBXTeamMembersDeactivateErrorOther() + return DBXTeamMembersPermanentlyDeleteFilesErrorOther() + case .transferInProgress: + return DBXTeamMembersPermanentlyDeleteFilesErrorTransferInProgress() + case .alreadyTransferred: + return DBXTeamMembersPermanentlyDeleteFilesErrorAlreadyTransferred() + case .alreadyTransferredOrDeleted: + return DBXTeamMembersPermanentlyDeleteFilesErrorAlreadyTransferredOrDeleted() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asUserNotFound: DBXTeamMembersPermanentlyDeleteFilesErrorUserNotFound? { + self as? DBXTeamMembersPermanentlyDeleteFilesErrorUserNotFound + } + + @objc + public var asUserNotInTeam: DBXTeamMembersPermanentlyDeleteFilesErrorUserNotInTeam? { + self as? DBXTeamMembersPermanentlyDeleteFilesErrorUserNotInTeam + } + + @objc + public var asOther: DBXTeamMembersPermanentlyDeleteFilesErrorOther? { + self as? DBXTeamMembersPermanentlyDeleteFilesErrorOther + } + + @objc + public var asTransferInProgress: DBXTeamMembersPermanentlyDeleteFilesErrorTransferInProgress? { + self as? DBXTeamMembersPermanentlyDeleteFilesErrorTransferInProgress + } + + @objc + public var asAlreadyTransferred: DBXTeamMembersPermanentlyDeleteFilesErrorAlreadyTransferred? { + self as? DBXTeamMembersPermanentlyDeleteFilesErrorAlreadyTransferred + } + + @objc + public var asAlreadyTransferredOrDeleted: DBXTeamMembersPermanentlyDeleteFilesErrorAlreadyTransferredOrDeleted? { + self as? DBXTeamMembersPermanentlyDeleteFilesErrorAlreadyTransferredOrDeleted + } +} + +/// No matching user found. The provided team_member_id, email, or external_id does not exist on this team. +@objc +public class DBXTeamMembersPermanentlyDeleteFilesErrorUserNotFound: DBXTeamMembersPermanentlyDeleteFilesError { + @objc + public init() { + let swift = Team.MembersPermanentlyDeleteFilesError.userNotFound + super.init(swift: swift) + } +} + +/// The user is not a member of the team. +@objc +public class DBXTeamMembersPermanentlyDeleteFilesErrorUserNotInTeam: DBXTeamMembersPermanentlyDeleteFilesError { + @objc + public init() { + let swift = Team.MembersPermanentlyDeleteFilesError.userNotInTeam + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamMembersPermanentlyDeleteFilesErrorOther: DBXTeamMembersPermanentlyDeleteFilesError { + @objc + public init() { + let swift = Team.MembersPermanentlyDeleteFilesError.other + super.init(swift: swift) + } +} + +/// Cannot permanently delete files while it's being transferred. +@objc +public class DBXTeamMembersPermanentlyDeleteFilesErrorTransferInProgress: DBXTeamMembersPermanentlyDeleteFilesError { + @objc + public init() { + let swift = Team.MembersPermanentlyDeleteFilesError.transferInProgress + super.init(swift: swift) + } +} + +/// Cannot permanently delete files that have already been transferred. +@objc +public class DBXTeamMembersPermanentlyDeleteFilesErrorAlreadyTransferred: DBXTeamMembersPermanentlyDeleteFilesError { + @objc + public init() { + let swift = Team.MembersPermanentlyDeleteFilesError.alreadyTransferred + super.init(swift: swift) + } +} + +/// Cannot permanently delete files that have already been transferred or deleted. +@objc +public class DBXTeamMembersPermanentlyDeleteFilesErrorAlreadyTransferredOrDeleted: DBXTeamMembersPermanentlyDeleteFilesError { + @objc + public init() { + let swift = Team.MembersPermanentlyDeleteFilesError.alreadyTransferredOrDeleted + super.init(swift: swift) + } +} + +/// Objective-C compatible MembersDeleteFormerMemberFilesError union +@objc +public class DBXTeamMembersDeleteFormerMemberFilesError: NSObject { + let swift: Team.MembersDeleteFormerMemberFilesError + + public init(swift: Team.MembersDeleteFormerMemberFilesError) { + self.swift = swift + } + + public static func factory(swift: Team.MembersDeleteFormerMemberFilesError) -> DBXTeamMembersDeleteFormerMemberFilesError { + switch swift { + case .userNotFound: + return DBXTeamMembersDeleteFormerMemberFilesErrorUserNotFound() + case .userNotInTeam: + return DBXTeamMembersDeleteFormerMemberFilesErrorUserNotInTeam() + case .other: + return DBXTeamMembersDeleteFormerMemberFilesErrorOther() + case .transferInProgress: + return DBXTeamMembersDeleteFormerMemberFilesErrorTransferInProgress() + case .alreadyTransferred: + return DBXTeamMembersDeleteFormerMemberFilesErrorAlreadyTransferred() + case .alreadyTransferredOrDeleted: + return DBXTeamMembersDeleteFormerMemberFilesErrorAlreadyTransferredOrDeleted() + case .userNotRemoved: + return DBXTeamMembersDeleteFormerMemberFilesErrorUserNotRemoved() } } @objc - public override var description: String { swift.description } + public override var description: String { swift.description } + + @objc + public var asUserNotFound: DBXTeamMembersDeleteFormerMemberFilesErrorUserNotFound? { + self as? DBXTeamMembersDeleteFormerMemberFilesErrorUserNotFound + } + + @objc + public var asUserNotInTeam: DBXTeamMembersDeleteFormerMemberFilesErrorUserNotInTeam? { + self as? DBXTeamMembersDeleteFormerMemberFilesErrorUserNotInTeam + } + + @objc + public var asOther: DBXTeamMembersDeleteFormerMemberFilesErrorOther? { + self as? DBXTeamMembersDeleteFormerMemberFilesErrorOther + } + + @objc + public var asTransferInProgress: DBXTeamMembersDeleteFormerMemberFilesErrorTransferInProgress? { + self as? DBXTeamMembersDeleteFormerMemberFilesErrorTransferInProgress + } + + @objc + public var asAlreadyTransferred: DBXTeamMembersDeleteFormerMemberFilesErrorAlreadyTransferred? { + self as? DBXTeamMembersDeleteFormerMemberFilesErrorAlreadyTransferred + } + + @objc + public var asAlreadyTransferredOrDeleted: DBXTeamMembersDeleteFormerMemberFilesErrorAlreadyTransferredOrDeleted? { + self as? DBXTeamMembersDeleteFormerMemberFilesErrorAlreadyTransferredOrDeleted + } + + @objc + public var asUserNotRemoved: DBXTeamMembersDeleteFormerMemberFilesErrorUserNotRemoved? { + self as? DBXTeamMembersDeleteFormerMemberFilesErrorUserNotRemoved + } +} +/// No matching user found. The provided team_member_id, email, or external_id does not exist on this team. +@objc +public class DBXTeamMembersDeleteFormerMemberFilesErrorUserNotFound: DBXTeamMembersDeleteFormerMemberFilesError { @objc - public var asUserNotFound: DBXTeamMembersDeactivateErrorUserNotFound? { - self as? DBXTeamMembersDeactivateErrorUserNotFound + public init() { + let swift = Team.MembersDeleteFormerMemberFilesError.userNotFound + super.init(swift: swift) } +} +/// The user is not a member of the team. +@objc +public class DBXTeamMembersDeleteFormerMemberFilesErrorUserNotInTeam: DBXTeamMembersDeleteFormerMemberFilesError { @objc - public var asUserNotInTeam: DBXTeamMembersDeactivateErrorUserNotInTeam? { - self as? DBXTeamMembersDeactivateErrorUserNotInTeam + public init() { + let swift = Team.MembersDeleteFormerMemberFilesError.userNotInTeam + super.init(swift: swift) } +} +/// An unspecified error. +@objc +public class DBXTeamMembersDeleteFormerMemberFilesErrorOther: DBXTeamMembersDeleteFormerMemberFilesError { @objc - public var asOther: DBXTeamMembersDeactivateErrorOther? { - self as? DBXTeamMembersDeactivateErrorOther + public init() { + let swift = Team.MembersDeleteFormerMemberFilesError.other + super.init(swift: swift) } } -/// No matching user found. The provided team_member_id, email, or external_id does not exist on this team. +/// Cannot permanently delete files while it's being transferred. @objc -public class DBXTeamMembersDeactivateErrorUserNotFound: DBXTeamMembersDeactivateError { +public class DBXTeamMembersDeleteFormerMemberFilesErrorTransferInProgress: DBXTeamMembersDeleteFormerMemberFilesError { @objc public init() { - let swift = Team.MembersDeactivateError.userNotFound + let swift = Team.MembersDeleteFormerMemberFilesError.transferInProgress super.init(swift: swift) } } -/// The user is not a member of the team. +/// Cannot permanently delete files that have already been transferred. @objc -public class DBXTeamMembersDeactivateErrorUserNotInTeam: DBXTeamMembersDeactivateError { +public class DBXTeamMembersDeleteFormerMemberFilesErrorAlreadyTransferred: DBXTeamMembersDeleteFormerMemberFilesError { @objc public init() { - let swift = Team.MembersDeactivateError.userNotInTeam + let swift = Team.MembersDeleteFormerMemberFilesError.alreadyTransferred super.init(swift: swift) } } -/// An unspecified error. +/// Cannot permanently delete files that have already been transferred or deleted. @objc -public class DBXTeamMembersDeactivateErrorOther: DBXTeamMembersDeactivateError { +public class DBXTeamMembersDeleteFormerMemberFilesErrorAlreadyTransferredOrDeleted: DBXTeamMembersDeleteFormerMemberFilesError { @objc public init() { - let swift = Team.MembersDeactivateError.other + let swift = Team.MembersDeleteFormerMemberFilesError.alreadyTransferredOrDeleted + super.init(swift: swift) + } +} + +/// User has not been removed from the team. +@objc +public class DBXTeamMembersDeleteFormerMemberFilesErrorUserNotRemoved: DBXTeamMembersDeleteFormerMemberFilesError { + @objc + public init() { + let swift = Team.MembersDeleteFormerMemberFilesError.userNotRemoved super.init(swift: swift) } } @@ -8382,6 +9592,28 @@ public class DBXTeamMembersDeleteProfilePhotoErrorOther: DBXTeamMembersDeletePro } } +/// Exactly one of team_member_id, email, or external_id must be provided to identify a former team member. +@objc +public class DBXTeamMembersFormerMemberArg: NSObject { + /// Identity of user whose files will be permanently deleted. + @objc + public var user: DBXTeamUserSelectorArg { DBXTeamUserSelectorArg(swift: swift.user) } + + @objc + public init(user: DBXTeamUserSelectorArg) { + self.swift = Team.MembersFormerMemberArg(user: user.swift) + } + + let swift: Team.MembersFormerMemberArg + + public init(swift: Team.MembersFormerMemberArg) { + self.swift = swift + } + + @objc + public override var description: String { swift.description } +} + /// Available TeamMemberRole for the connected team. To be used with membersSetAdminPermissionsV2. @objc public class DBXTeamMembersGetAvailableTeamMemberRolesResult: NSObject { @@ -9051,7 +10283,7 @@ public class DBXTeamMembersRemoveArg: DBXTeamMembersDeactivateArg { } /// Downgrade the member to a Basic account. The user will retain the email address associated with their - /// Dropbox account and data in their account that is not restricted to team members. In order to keep the + /// Dropbox account and data in their account that is not restricted to team members. In order to keep the /// account the argument wipeData should be set to false. @objc public var keepAccount: NSNumber { subSubSwift.keepAccount as NSNumber } @@ -9061,6 +10293,10 @@ public class DBXTeamMembersRemoveArg: DBXTeamMembersDeactivateArg { /// relationships, the arguments wipeData should be set to false and keepAccount should be set to true. @objc public var retainTeamShares: NSNumber { subSubSwift.retainTeamShares as NSNumber } + /// Permanently delete the data in the deleted member's account. After permanent deletion, the data is no longer + /// available to be transferred to a different user. + @objc + public var permanentlyDeleteFiles: NSNumber { subSubSwift.permanentlyDeleteFiles as NSNumber } @objc public init( @@ -9069,7 +10305,8 @@ public class DBXTeamMembersRemoveArg: DBXTeamMembersDeactivateArg { transferDestId: DBXTeamUserSelectorArg?, transferAdminId: DBXTeamUserSelectorArg?, keepAccount: NSNumber, - retainTeamShares: NSNumber + retainTeamShares: NSNumber, + permanentlyDeleteFiles: NSNumber ) { let swift = Team.MembersRemoveArg( user: user.swift, @@ -9077,7 +10314,8 @@ public class DBXTeamMembersRemoveArg: DBXTeamMembersDeactivateArg { transferDestId: transferDestId?.swift, transferAdminId: transferAdminId?.swift, keepAccount: keepAccount.boolValue, - retainTeamShares: retainTeamShares.boolValue + retainTeamShares: retainTeamShares.boolValue, + permanentlyDeleteFiles: permanentlyDeleteFiles.boolValue ) self.subSubSwift = swift super.init(swift: swift) @@ -9111,6 +10349,12 @@ public class DBXTeamMembersTransferFilesError: NSObject { return DBXTeamMembersTransferFilesErrorUserNotInTeam() case .other: return DBXTeamMembersTransferFilesErrorOther() + case .transferInProgress: + return DBXTeamMembersTransferFilesErrorTransferInProgress() + case .alreadyTransferred: + return DBXTeamMembersTransferFilesErrorAlreadyTransferred() + case .alreadyTransferredOrDeleted: + return DBXTeamMembersTransferFilesErrorAlreadyTransferredOrDeleted() case .removedAndTransferDestShouldDiffer: return DBXTeamMembersTransferFilesErrorRemovedAndTransferDestShouldDiffer() case .removedAndTransferAdminShouldDiffer: @@ -9150,6 +10394,21 @@ public class DBXTeamMembersTransferFilesError: NSObject { self as? DBXTeamMembersTransferFilesErrorOther } + @objc + public var asTransferInProgress: DBXTeamMembersTransferFilesErrorTransferInProgress? { + self as? DBXTeamMembersTransferFilesErrorTransferInProgress + } + + @objc + public var asAlreadyTransferred: DBXTeamMembersTransferFilesErrorAlreadyTransferred? { + self as? DBXTeamMembersTransferFilesErrorAlreadyTransferred + } + + @objc + public var asAlreadyTransferredOrDeleted: DBXTeamMembersTransferFilesErrorAlreadyTransferredOrDeleted? { + self as? DBXTeamMembersTransferFilesErrorAlreadyTransferredOrDeleted + } + @objc public var asRemovedAndTransferDestShouldDiffer: DBXTeamMembersTransferFilesErrorRemovedAndTransferDestShouldDiffer? { self as? DBXTeamMembersTransferFilesErrorRemovedAndTransferDestShouldDiffer @@ -9226,6 +10485,36 @@ public class DBXTeamMembersTransferFilesErrorOther: DBXTeamMembersTransferFilesE } } +/// Cannot permanently delete files while it's being transferred. +@objc +public class DBXTeamMembersTransferFilesErrorTransferInProgress: DBXTeamMembersTransferFilesError { + @objc + public init() { + let swift = Team.MembersTransferFilesError.transferInProgress + super.init(swift: swift) + } +} + +/// Cannot permanently delete files that have already been transferred. +@objc +public class DBXTeamMembersTransferFilesErrorAlreadyTransferred: DBXTeamMembersTransferFilesError { + @objc + public init() { + let swift = Team.MembersTransferFilesError.alreadyTransferred + super.init(swift: swift) + } +} + +/// Cannot permanently delete files that have already been transferred or deleted. +@objc +public class DBXTeamMembersTransferFilesErrorAlreadyTransferredOrDeleted: DBXTeamMembersTransferFilesError { + @objc + public init() { + let swift = Team.MembersTransferFilesError.alreadyTransferredOrDeleted + super.init(swift: swift) + } +} + /// Expected removed user and transfer_dest user to be different. @objc public class DBXTeamMembersTransferFilesErrorRemovedAndTransferDestShouldDiffer: DBXTeamMembersTransferFilesError { @@ -9333,6 +10622,12 @@ public class DBXTeamMembersRemoveError: NSObject { return DBXTeamMembersRemoveErrorUserNotInTeam() case .other: return DBXTeamMembersRemoveErrorOther() + case .transferInProgress: + return DBXTeamMembersRemoveErrorTransferInProgress() + case .alreadyTransferred: + return DBXTeamMembersRemoveErrorAlreadyTransferred() + case .alreadyTransferredOrDeleted: + return DBXTeamMembersRemoveErrorAlreadyTransferredOrDeleted() case .removedAndTransferDestShouldDiffer: return DBXTeamMembersRemoveErrorRemovedAndTransferDestShouldDiffer() case .removedAndTransferAdminShouldDiffer: @@ -9357,6 +10652,8 @@ public class DBXTeamMembersRemoveError: NSObject { return DBXTeamMembersRemoveErrorCannotKeepAccountAndTransfer() case .cannotKeepAccountAndDeleteData: return DBXTeamMembersRemoveErrorCannotKeepAccountAndDeleteData() + case .cannotKeepAccountAndPermanentlyDelete: + return DBXTeamMembersRemoveErrorCannotKeepAccountAndPermanentlyDelete() case .emailAddressTooLongToBeDisabled: return DBXTeamMembersRemoveErrorEmailAddressTooLongToBeDisabled() case .cannotKeepInvitedUserAccount: @@ -9373,6 +10670,10 @@ public class DBXTeamMembersRemoveError: NSObject { return DBXTeamMembersRemoveErrorCannotKeepAccountUnderLegalHold() case .cannotKeepAccountRequiredToSignTos: return DBXTeamMembersRemoveErrorCannotKeepAccountRequiredToSignTos() + case .cannotPermanentlyDeleteAndTransfer: + return DBXTeamMembersRemoveErrorCannotPermanentlyDeleteAndTransfer() + case .memberIsTransferDestination: + return DBXTeamMembersRemoveErrorMemberIsTransferDestination() } } @@ -9394,6 +10695,21 @@ public class DBXTeamMembersRemoveError: NSObject { self as? DBXTeamMembersRemoveErrorOther } + @objc + public var asTransferInProgress: DBXTeamMembersRemoveErrorTransferInProgress? { + self as? DBXTeamMembersRemoveErrorTransferInProgress + } + + @objc + public var asAlreadyTransferred: DBXTeamMembersRemoveErrorAlreadyTransferred? { + self as? DBXTeamMembersRemoveErrorAlreadyTransferred + } + + @objc + public var asAlreadyTransferredOrDeleted: DBXTeamMembersRemoveErrorAlreadyTransferredOrDeleted? { + self as? DBXTeamMembersRemoveErrorAlreadyTransferredOrDeleted + } + @objc public var asRemovedAndTransferDestShouldDiffer: DBXTeamMembersRemoveErrorRemovedAndTransferDestShouldDiffer? { self as? DBXTeamMembersRemoveErrorRemovedAndTransferDestShouldDiffer @@ -9454,6 +10770,11 @@ public class DBXTeamMembersRemoveError: NSObject { self as? DBXTeamMembersRemoveErrorCannotKeepAccountAndDeleteData } + @objc + public var asCannotKeepAccountAndPermanentlyDelete: DBXTeamMembersRemoveErrorCannotKeepAccountAndPermanentlyDelete? { + self as? DBXTeamMembersRemoveErrorCannotKeepAccountAndPermanentlyDelete + } + @objc public var asEmailAddressTooLongToBeDisabled: DBXTeamMembersRemoveErrorEmailAddressTooLongToBeDisabled? { self as? DBXTeamMembersRemoveErrorEmailAddressTooLongToBeDisabled @@ -9493,6 +10814,16 @@ public class DBXTeamMembersRemoveError: NSObject { public var asCannotKeepAccountRequiredToSignTos: DBXTeamMembersRemoveErrorCannotKeepAccountRequiredToSignTos? { self as? DBXTeamMembersRemoveErrorCannotKeepAccountRequiredToSignTos } + + @objc + public var asCannotPermanentlyDeleteAndTransfer: DBXTeamMembersRemoveErrorCannotPermanentlyDeleteAndTransfer? { + self as? DBXTeamMembersRemoveErrorCannotPermanentlyDeleteAndTransfer + } + + @objc + public var asMemberIsTransferDestination: DBXTeamMembersRemoveErrorMemberIsTransferDestination? { + self as? DBXTeamMembersRemoveErrorMemberIsTransferDestination + } } /// No matching user found. The provided team_member_id, email, or external_id does not exist on this team. @@ -9525,6 +10856,36 @@ public class DBXTeamMembersRemoveErrorOther: DBXTeamMembersRemoveError { } } +/// Cannot permanently delete files while it's being transferred. +@objc +public class DBXTeamMembersRemoveErrorTransferInProgress: DBXTeamMembersRemoveError { + @objc + public init() { + let swift = Team.MembersRemoveError.transferInProgress + super.init(swift: swift) + } +} + +/// Cannot permanently delete files that have already been transferred. +@objc +public class DBXTeamMembersRemoveErrorAlreadyTransferred: DBXTeamMembersRemoveError { + @objc + public init() { + let swift = Team.MembersRemoveError.alreadyTransferred + super.init(swift: swift) + } +} + +/// Cannot permanently delete files that have already been transferred or deleted. +@objc +public class DBXTeamMembersRemoveErrorAlreadyTransferredOrDeleted: DBXTeamMembersRemoveError { + @objc + public init() { + let swift = Team.MembersRemoveError.alreadyTransferredOrDeleted + super.init(swift: swift) + } +} + /// Expected removed user and transfer_dest user to be different. @objc public class DBXTeamMembersRemoveErrorRemovedAndTransferDestShouldDiffer: DBXTeamMembersRemoveError { @@ -9646,6 +11007,17 @@ public class DBXTeamMembersRemoveErrorCannotKeepAccountAndDeleteData: DBXTeamMem } } +/// Cannot keep account and permanently delete the data at the same time. To keep the account the argument +/// permanently_delete_files should be set to false. +@objc +public class DBXTeamMembersRemoveErrorCannotKeepAccountAndPermanentlyDelete: DBXTeamMembersRemoveError { + @objc + public init() { + let swift = Team.MembersRemoveError.cannotKeepAccountAndPermanentlyDelete + super.init(swift: swift) + } +} + /// The email address of the user is too long to be disabled. @objc public class DBXTeamMembersRemoveErrorEmailAddressTooLongToBeDisabled: DBXTeamMembersRemoveError { @@ -9731,6 +11103,27 @@ public class DBXTeamMembersRemoveErrorCannotKeepAccountRequiredToSignTos: DBXTea } } +/// Cannot permanently delete files and transfer the data to another user at the same time. +@objc +public class DBXTeamMembersRemoveErrorCannotPermanentlyDeleteAndTransfer: DBXTeamMembersRemoveError { + @objc + public init() { + let swift = Team.MembersRemoveError.cannotPermanentlyDeleteAndTransfer + super.init(swift: swift) + } +} + +/// This user is the active destination of an in-progress file transfer. Wait for the transfer to complete +/// before removing this member. +@objc +public class DBXTeamMembersRemoveErrorMemberIsTransferDestination: DBXTeamMembersRemoveError { + @objc + public init() { + let swift = Team.MembersRemoveError.memberIsTransferDestination + super.init(swift: swift) + } +} + /// Objective-C compatible MembersSendWelcomeError union @objc public class DBXTeamMembersSendWelcomeError: NSObject { @@ -10442,141 +11835,32 @@ public class DBXTeamMembersSetProfilePhotoArg: NSObject { self.swift = swift } - @objc - public override var description: String { swift.description } -} - -/// Objective-C compatible MembersSetProfilePhotoError union -@objc -public class DBXTeamMembersSetProfilePhotoError: NSObject { - let swift: Team.MembersSetProfilePhotoError - - public init(swift: Team.MembersSetProfilePhotoError) { - self.swift = swift - } - - public static func factory(swift: Team.MembersSetProfilePhotoError) -> DBXTeamMembersSetProfilePhotoError { - switch swift { - case .userNotFound: - return DBXTeamMembersSetProfilePhotoErrorUserNotFound() - case .userNotInTeam: - return DBXTeamMembersSetProfilePhotoErrorUserNotInTeam() - case .setProfileDisallowed: - return DBXTeamMembersSetProfilePhotoErrorSetProfileDisallowed() - case .photoError(let swiftArg): - let arg = DBXAccountSetProfilePhotoError(swift: swiftArg) - return DBXTeamMembersSetProfilePhotoErrorPhotoError(arg) - case .other: - return DBXTeamMembersSetProfilePhotoErrorOther() - } - } - - @objc - public override var description: String { swift.description } - - @objc - public var asUserNotFound: DBXTeamMembersSetProfilePhotoErrorUserNotFound? { - self as? DBXTeamMembersSetProfilePhotoErrorUserNotFound - } - - @objc - public var asUserNotInTeam: DBXTeamMembersSetProfilePhotoErrorUserNotInTeam? { - self as? DBXTeamMembersSetProfilePhotoErrorUserNotInTeam - } - - @objc - public var asSetProfileDisallowed: DBXTeamMembersSetProfilePhotoErrorSetProfileDisallowed? { - self as? DBXTeamMembersSetProfilePhotoErrorSetProfileDisallowed - } - - @objc - public var asPhotoError: DBXTeamMembersSetProfilePhotoErrorPhotoError? { - self as? DBXTeamMembersSetProfilePhotoErrorPhotoError - } - - @objc - public var asOther: DBXTeamMembersSetProfilePhotoErrorOther? { - self as? DBXTeamMembersSetProfilePhotoErrorOther - } -} - -/// No matching user found. The provided team_member_id, email, or external_id does not exist on this team. -@objc -public class DBXTeamMembersSetProfilePhotoErrorUserNotFound: DBXTeamMembersSetProfilePhotoError { - @objc - public init() { - let swift = Team.MembersSetProfilePhotoError.userNotFound - super.init(swift: swift) - } -} - -/// The user is not a member of the team. -@objc -public class DBXTeamMembersSetProfilePhotoErrorUserNotInTeam: DBXTeamMembersSetProfilePhotoError { - @objc - public init() { - let swift = Team.MembersSetProfilePhotoError.userNotInTeam - super.init(swift: swift) - } -} - -/// Modifying deleted users is not allowed. -@objc -public class DBXTeamMembersSetProfilePhotoErrorSetProfileDisallowed: DBXTeamMembersSetProfilePhotoError { - @objc - public init() { - let swift = Team.MembersSetProfilePhotoError.setProfileDisallowed - super.init(swift: swift) - } -} - -/// An unspecified error. -@objc -public class DBXTeamMembersSetProfilePhotoErrorPhotoError: DBXTeamMembersSetProfilePhotoError { - @objc - public var photoError: DBXAccountSetProfilePhotoError - - @objc - public init(_ arg: DBXAccountSetProfilePhotoError) { - self.photoError = arg - let swift = Team.MembersSetProfilePhotoError.photoError(arg.swift) - super.init(swift: swift) - } -} - -/// An unspecified error. -@objc -public class DBXTeamMembersSetProfilePhotoErrorOther: DBXTeamMembersSetProfilePhotoError { - @objc - public init() { - let swift = Team.MembersSetProfilePhotoError.other - super.init(swift: swift) - } + @objc + public override var description: String { swift.description } } -/// Objective-C compatible MembersSuspendError union +/// Objective-C compatible MembersSetProfilePhotoError union @objc -public class DBXTeamMembersSuspendError: NSObject { - let swift: Team.MembersSuspendError +public class DBXTeamMembersSetProfilePhotoError: NSObject { + let swift: Team.MembersSetProfilePhotoError - public init(swift: Team.MembersSuspendError) { + public init(swift: Team.MembersSetProfilePhotoError) { self.swift = swift } - public static func factory(swift: Team.MembersSuspendError) -> DBXTeamMembersSuspendError { + public static func factory(swift: Team.MembersSetProfilePhotoError) -> DBXTeamMembersSetProfilePhotoError { switch swift { case .userNotFound: - return DBXTeamMembersSuspendErrorUserNotFound() + return DBXTeamMembersSetProfilePhotoErrorUserNotFound() case .userNotInTeam: - return DBXTeamMembersSuspendErrorUserNotInTeam() + return DBXTeamMembersSetProfilePhotoErrorUserNotInTeam() + case .setProfileDisallowed: + return DBXTeamMembersSetProfilePhotoErrorSetProfileDisallowed() + case .photoError(let swiftArg): + let arg = DBXAccountSetProfilePhotoError(swift: swiftArg) + return DBXTeamMembersSetProfilePhotoErrorPhotoError(arg) case .other: - return DBXTeamMembersSuspendErrorOther() - case .suspendInactiveUser: - return DBXTeamMembersSuspendErrorSuspendInactiveUser() - case .suspendLastAdmin: - return DBXTeamMembersSuspendErrorSuspendLastAdmin() - case .teamLicenseLimit: - return DBXTeamMembersSuspendErrorTeamLicenseLimit() + return DBXTeamMembersSetProfilePhotoErrorOther() } } @@ -10584,92 +11868,81 @@ public class DBXTeamMembersSuspendError: NSObject { public override var description: String { swift.description } @objc - public var asUserNotFound: DBXTeamMembersSuspendErrorUserNotFound? { - self as? DBXTeamMembersSuspendErrorUserNotFound - } - - @objc - public var asUserNotInTeam: DBXTeamMembersSuspendErrorUserNotInTeam? { - self as? DBXTeamMembersSuspendErrorUserNotInTeam + public var asUserNotFound: DBXTeamMembersSetProfilePhotoErrorUserNotFound? { + self as? DBXTeamMembersSetProfilePhotoErrorUserNotFound } @objc - public var asOther: DBXTeamMembersSuspendErrorOther? { - self as? DBXTeamMembersSuspendErrorOther + public var asUserNotInTeam: DBXTeamMembersSetProfilePhotoErrorUserNotInTeam? { + self as? DBXTeamMembersSetProfilePhotoErrorUserNotInTeam } @objc - public var asSuspendInactiveUser: DBXTeamMembersSuspendErrorSuspendInactiveUser? { - self as? DBXTeamMembersSuspendErrorSuspendInactiveUser + public var asSetProfileDisallowed: DBXTeamMembersSetProfilePhotoErrorSetProfileDisallowed? { + self as? DBXTeamMembersSetProfilePhotoErrorSetProfileDisallowed } @objc - public var asSuspendLastAdmin: DBXTeamMembersSuspendErrorSuspendLastAdmin? { - self as? DBXTeamMembersSuspendErrorSuspendLastAdmin + public var asPhotoError: DBXTeamMembersSetProfilePhotoErrorPhotoError? { + self as? DBXTeamMembersSetProfilePhotoErrorPhotoError } @objc - public var asTeamLicenseLimit: DBXTeamMembersSuspendErrorTeamLicenseLimit? { - self as? DBXTeamMembersSuspendErrorTeamLicenseLimit + public var asOther: DBXTeamMembersSetProfilePhotoErrorOther? { + self as? DBXTeamMembersSetProfilePhotoErrorOther } } /// No matching user found. The provided team_member_id, email, or external_id does not exist on this team. @objc -public class DBXTeamMembersSuspendErrorUserNotFound: DBXTeamMembersSuspendError { +public class DBXTeamMembersSetProfilePhotoErrorUserNotFound: DBXTeamMembersSetProfilePhotoError { @objc public init() { - let swift = Team.MembersSuspendError.userNotFound + let swift = Team.MembersSetProfilePhotoError.userNotFound super.init(swift: swift) } } /// The user is not a member of the team. @objc -public class DBXTeamMembersSuspendErrorUserNotInTeam: DBXTeamMembersSuspendError { +public class DBXTeamMembersSetProfilePhotoErrorUserNotInTeam: DBXTeamMembersSetProfilePhotoError { @objc public init() { - let swift = Team.MembersSuspendError.userNotInTeam + let swift = Team.MembersSetProfilePhotoError.userNotInTeam super.init(swift: swift) } } -/// An unspecified error. +/// Modifying deleted users is not allowed. @objc -public class DBXTeamMembersSuspendErrorOther: DBXTeamMembersSuspendError { +public class DBXTeamMembersSetProfilePhotoErrorSetProfileDisallowed: DBXTeamMembersSetProfilePhotoError { @objc public init() { - let swift = Team.MembersSuspendError.other + let swift = Team.MembersSetProfilePhotoError.setProfileDisallowed super.init(swift: swift) } } -/// The user is not active, so it cannot be suspended. +/// An unspecified error. @objc -public class DBXTeamMembersSuspendErrorSuspendInactiveUser: DBXTeamMembersSuspendError { +public class DBXTeamMembersSetProfilePhotoErrorPhotoError: DBXTeamMembersSetProfilePhotoError { @objc - public init() { - let swift = Team.MembersSuspendError.suspendInactiveUser - super.init(swift: swift) - } -} + public var photoError: DBXAccountSetProfilePhotoError -/// The user is the last admin of the team, so it cannot be suspended. -@objc -public class DBXTeamMembersSuspendErrorSuspendLastAdmin: DBXTeamMembersSuspendError { @objc - public init() { - let swift = Team.MembersSuspendError.suspendLastAdmin + public init(_ arg: DBXAccountSetProfilePhotoError) { + self.photoError = arg + let swift = Team.MembersSetProfilePhotoError.photoError(arg.swift) super.init(swift: swift) } } -/// Team is full. The organization has no available licenses. +/// An unspecified error. @objc -public class DBXTeamMembersSuspendErrorTeamLicenseLimit: DBXTeamMembersSuspendError { +public class DBXTeamMembersSetProfilePhotoErrorOther: DBXTeamMembersSetProfilePhotoError { @objc public init() { - let swift = Team.MembersSuspendError.teamLicenseLimit + let swift = Team.MembersSetProfilePhotoError.other super.init(swift: swift) } } @@ -10691,6 +11964,12 @@ public class DBXTeamMembersTransferFormerMembersFilesError: NSObject { return DBXTeamMembersTransferFormerMembersFilesErrorUserNotInTeam() case .other: return DBXTeamMembersTransferFormerMembersFilesErrorOther() + case .transferInProgress: + return DBXTeamMembersTransferFormerMembersFilesErrorTransferInProgress() + case .alreadyTransferred: + return DBXTeamMembersTransferFormerMembersFilesErrorAlreadyTransferred() + case .alreadyTransferredOrDeleted: + return DBXTeamMembersTransferFormerMembersFilesErrorAlreadyTransferredOrDeleted() case .removedAndTransferDestShouldDiffer: return DBXTeamMembersTransferFormerMembersFilesErrorRemovedAndTransferDestShouldDiffer() case .removedAndTransferAdminShouldDiffer: @@ -10738,6 +12017,21 @@ public class DBXTeamMembersTransferFormerMembersFilesError: NSObject { self as? DBXTeamMembersTransferFormerMembersFilesErrorOther } + @objc + public var asTransferInProgress: DBXTeamMembersTransferFormerMembersFilesErrorTransferInProgress? { + self as? DBXTeamMembersTransferFormerMembersFilesErrorTransferInProgress + } + + @objc + public var asAlreadyTransferred: DBXTeamMembersTransferFormerMembersFilesErrorAlreadyTransferred? { + self as? DBXTeamMembersTransferFormerMembersFilesErrorAlreadyTransferred + } + + @objc + public var asAlreadyTransferredOrDeleted: DBXTeamMembersTransferFormerMembersFilesErrorAlreadyTransferredOrDeleted? { + self as? DBXTeamMembersTransferFormerMembersFilesErrorAlreadyTransferredOrDeleted + } + @objc public var asRemovedAndTransferDestShouldDiffer: DBXTeamMembersTransferFormerMembersFilesErrorRemovedAndTransferDestShouldDiffer? { self as? DBXTeamMembersTransferFormerMembersFilesErrorRemovedAndTransferDestShouldDiffer @@ -10834,6 +12128,36 @@ public class DBXTeamMembersTransferFormerMembersFilesErrorOther: DBXTeamMembersT } } +/// Cannot permanently delete files while it's being transferred. +@objc +public class DBXTeamMembersTransferFormerMembersFilesErrorTransferInProgress: DBXTeamMembersTransferFormerMembersFilesError { + @objc + public init() { + let swift = Team.MembersTransferFormerMembersFilesError.transferInProgress + super.init(swift: swift) + } +} + +/// Cannot permanently delete files that have already been transferred. +@objc +public class DBXTeamMembersTransferFormerMembersFilesErrorAlreadyTransferred: DBXTeamMembersTransferFormerMembersFilesError { + @objc + public init() { + let swift = Team.MembersTransferFormerMembersFilesError.alreadyTransferred + super.init(swift: swift) + } +} + +/// Cannot permanently delete files that have already been transferred or deleted. +@objc +public class DBXTeamMembersTransferFormerMembersFilesErrorAlreadyTransferredOrDeleted: DBXTeamMembersTransferFormerMembersFilesError { + @objc + public init() { + let swift = Team.MembersTransferFormerMembersFilesError.alreadyTransferredOrDeleted + super.init(swift: swift) + } +} + /// Expected removed user and transfer_dest user to be different. @objc public class DBXTeamMembersTransferFormerMembersFilesErrorRemovedAndTransferDestShouldDiffer: DBXTeamMembersTransferFormerMembersFilesError { @@ -11284,10 +12608,19 @@ public class DBXTeamNamespaceMetadata: NSObject { /// present. @objc public var teamMemberId: String? { swift.teamMemberId } + /// The quota limit in bytes for this namespace tree. Only applicable to team folders. + @objc + public var quotaLimit: NSNumber { swift.quotaLimit as NSNumber } @objc - public init(name: String, namespaceId: String, namespaceType: DBXTeamNamespaceType, teamMemberId: String?) { - self.swift = Team.NamespaceMetadata(name: name, namespaceId: namespaceId, namespaceType: namespaceType.swift, teamMemberId: teamMemberId) + public init(name: String, namespaceId: String, namespaceType: DBXTeamNamespaceType, teamMemberId: String?, quotaLimit: NSNumber) { + self.swift = Team.NamespaceMetadata( + name: name, + namespaceId: namespaceId, + namespaceType: namespaceType.swift, + teamMemberId: teamMemberId, + quotaLimit: quotaLimit.int64Value + ) } let swift: Team.NamespaceMetadata @@ -11319,6 +12652,8 @@ public class DBXTeamNamespaceType: NSObject { return DBXTeamNamespaceTypeTeamFolder() case .teamMemberFolder: return DBXTeamNamespaceTypeTeamMemberFolder() + case .teamMemberRoot: + return DBXTeamNamespaceTypeTeamMemberRoot() case .other: return DBXTeamNamespaceTypeOther() } @@ -11347,6 +12682,11 @@ public class DBXTeamNamespaceType: NSObject { self as? DBXTeamNamespaceTypeTeamMemberFolder } + @objc + public var asTeamMemberRoot: DBXTeamNamespaceTypeTeamMemberRoot? { + self as? DBXTeamNamespaceTypeTeamMemberRoot + } + @objc public var asOther: DBXTeamNamespaceTypeOther? { self as? DBXTeamNamespaceTypeOther @@ -11393,6 +12733,16 @@ public class DBXTeamNamespaceTypeTeamMemberFolder: DBXTeamNamespaceType { } } +/// Team member's root folder. +@objc +public class DBXTeamNamespaceTypeTeamMemberRoot: DBXTeamNamespaceType { + @objc + public init() { + let swift = Team.NamespaceType.teamMemberRoot + super.init(swift: swift) + } +} + /// An unspecified error. @objc public class DBXTeamNamespaceTypeOther: DBXTeamNamespaceType { @@ -11948,8 +13298,8 @@ public class DBXTeamRevokeLinkedApiAppArg: NSObject { /// The unique id of the member owning the device. @objc public var teamMemberId: String { swift.teamMemberId } - /// This flag is not longer supported, the application dedicated folder (in case the application uses one) will - /// be kept. + /// Field is deprecated. This flag is not longer supported, the application dedicated folder (in case the + /// application uses one) will be kept. @objc public var keepAppFolder: NSNumber { swift.keepAppFolder as NSNumber } @@ -12861,6 +14211,8 @@ public class DBXTeamTeamFolderActivateError: NSObject { return DBXTeamTeamFolderActivateErrorTeamSharedDropboxError(arg) case .other: return DBXTeamTeamFolderActivateErrorOther() + case .folderCountLimitExceeded: + return DBXTeamTeamFolderActivateErrorFolderCountLimitExceeded() } } @@ -12886,6 +14238,11 @@ public class DBXTeamTeamFolderActivateError: NSObject { public var asOther: DBXTeamTeamFolderActivateErrorOther? { self as? DBXTeamTeamFolderActivateErrorOther } + + @objc + public var asFolderCountLimitExceeded: DBXTeamTeamFolderActivateErrorFolderCountLimitExceeded? { + self as? DBXTeamTeamFolderActivateErrorFolderCountLimitExceeded + } } /// An unspecified error. @@ -12940,6 +14297,16 @@ public class DBXTeamTeamFolderActivateErrorOther: DBXTeamTeamFolderActivateError } } +/// The team has reached the maximum number of team folders allowed by its plan. +@objc +public class DBXTeamTeamFolderActivateErrorFolderCountLimitExceeded: DBXTeamTeamFolderActivateError { + @objc + public init() { + let swift = Team.TeamFolderActivateError.folderCountLimitExceeded + super.init(swift: swift) + } +} + /// Objective-C compatible TeamFolderIdArg struct @objc public class DBXTeamTeamFolderIdArg: NSObject { @@ -13277,6 +14644,8 @@ public class DBXTeamTeamFolderCreateError: NSObject { case .syncSettingsError(let swiftArg): let arg = DBXFilesSyncSettingsError(swift: swiftArg) return DBXTeamTeamFolderCreateErrorSyncSettingsError(arg) + case .folderCountLimitExceeded: + return DBXTeamTeamFolderCreateErrorFolderCountLimitExceeded() case .other: return DBXTeamTeamFolderCreateErrorOther() } @@ -13305,6 +14674,11 @@ public class DBXTeamTeamFolderCreateError: NSObject { self as? DBXTeamTeamFolderCreateErrorSyncSettingsError } + @objc + public var asFolderCountLimitExceeded: DBXTeamTeamFolderCreateErrorFolderCountLimitExceeded? { + self as? DBXTeamTeamFolderCreateErrorFolderCountLimitExceeded + } + @objc public var asOther: DBXTeamTeamFolderCreateErrorOther? { self as? DBXTeamTeamFolderCreateErrorOther @@ -13355,6 +14729,16 @@ public class DBXTeamTeamFolderCreateErrorSyncSettingsError: DBXTeamTeamFolderCre } } +/// The team has reached the maximum number of team folders allowed by its plan. +@objc +public class DBXTeamTeamFolderCreateErrorFolderCountLimitExceeded: DBXTeamTeamFolderCreateError { + @objc + public init() { + let swift = Team.TeamFolderCreateError.folderCountLimitExceeded + super.init(swift: swift) + } +} + /// An unspecified error. @objc public class DBXTeamTeamFolderCreateErrorOther: DBXTeamTeamFolderCreateError { @@ -13703,6 +15087,9 @@ public class DBXTeamTeamFolderMetadata: NSObject { /// Sync settings applied to contents of this team folder. @objc public var contentSyncSettings: [DBXFilesContentSyncSetting] { swift.contentSyncSettings.map { DBXFilesContentSyncSetting(swift: $0) } } + /// The quota limit in bytes for this team folder namespace tree. + @objc + public var quotaLimit: NSNumber { swift.quotaLimit as NSNumber } @objc public init( @@ -13711,7 +15098,8 @@ public class DBXTeamTeamFolderMetadata: NSObject { status: DBXTeamTeamFolderStatus, isTeamSharedDropbox: NSNumber, syncSetting: DBXFilesSyncSetting, - contentSyncSettings: [DBXFilesContentSyncSetting] + contentSyncSettings: [DBXFilesContentSyncSetting], + quotaLimit: NSNumber ) { self.swift = Team.TeamFolderMetadata( teamFolderId: teamFolderId, @@ -13719,7 +15107,8 @@ public class DBXTeamTeamFolderMetadata: NSObject { status: status.swift, isTeamSharedDropbox: isTeamSharedDropbox.boolValue, syncSetting: syncSetting.swift, - contentSyncSettings: contentSyncSettings.map(\.swift) + contentSyncSettings: contentSyncSettings.map(\.swift), + quotaLimit: quotaLimit.int64Value ) } @@ -14011,6 +15400,124 @@ public class DBXTeamTeamFolderRenameErrorFolderNameReserved: DBXTeamTeamFolderRe } } +/// Objective-C compatible TeamFolderRestoreError union +@objc +public class DBXTeamTeamFolderRestoreError: NSObject { + let swift: Team.TeamFolderRestoreError + + public init(swift: Team.TeamFolderRestoreError) { + self.swift = swift + } + + public static func factory(swift: Team.TeamFolderRestoreError) -> DBXTeamTeamFolderRestoreError { + switch swift { + case .accessError(let swiftArg): + let arg = DBXTeamTeamFolderAccessError(swift: swiftArg) + return DBXTeamTeamFolderRestoreErrorAccessError(arg) + case .statusError(let swiftArg): + let arg = DBXTeamTeamFolderInvalidStatusError(swift: swiftArg) + return DBXTeamTeamFolderRestoreErrorStatusError(arg) + case .teamSharedDropboxError(let swiftArg): + let arg = DBXTeamTeamFolderTeamSharedDropboxError(swift: swiftArg) + return DBXTeamTeamFolderRestoreErrorTeamSharedDropboxError(arg) + case .other: + return DBXTeamTeamFolderRestoreErrorOther() + case .folderCountLimitExceeded: + return DBXTeamTeamFolderRestoreErrorFolderCountLimitExceeded() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asAccessError: DBXTeamTeamFolderRestoreErrorAccessError? { + self as? DBXTeamTeamFolderRestoreErrorAccessError + } + + @objc + public var asStatusError: DBXTeamTeamFolderRestoreErrorStatusError? { + self as? DBXTeamTeamFolderRestoreErrorStatusError + } + + @objc + public var asTeamSharedDropboxError: DBXTeamTeamFolderRestoreErrorTeamSharedDropboxError? { + self as? DBXTeamTeamFolderRestoreErrorTeamSharedDropboxError + } + + @objc + public var asOther: DBXTeamTeamFolderRestoreErrorOther? { + self as? DBXTeamTeamFolderRestoreErrorOther + } + + @objc + public var asFolderCountLimitExceeded: DBXTeamTeamFolderRestoreErrorFolderCountLimitExceeded? { + self as? DBXTeamTeamFolderRestoreErrorFolderCountLimitExceeded + } +} + +/// An unspecified error. +@objc +public class DBXTeamTeamFolderRestoreErrorAccessError: DBXTeamTeamFolderRestoreError { + @objc + public var accessError: DBXTeamTeamFolderAccessError + + @objc + public init(_ arg: DBXTeamTeamFolderAccessError) { + self.accessError = arg + let swift = Team.TeamFolderRestoreError.accessError(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamTeamFolderRestoreErrorStatusError: DBXTeamTeamFolderRestoreError { + @objc + public var statusError: DBXTeamTeamFolderInvalidStatusError + + @objc + public init(_ arg: DBXTeamTeamFolderInvalidStatusError) { + self.statusError = arg + let swift = Team.TeamFolderRestoreError.statusError(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamTeamFolderRestoreErrorTeamSharedDropboxError: DBXTeamTeamFolderRestoreError { + @objc + public var teamSharedDropboxError: DBXTeamTeamFolderTeamSharedDropboxError + + @objc + public init(_ arg: DBXTeamTeamFolderTeamSharedDropboxError) { + self.teamSharedDropboxError = arg + let swift = Team.TeamFolderRestoreError.teamSharedDropboxError(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamTeamFolderRestoreErrorOther: DBXTeamTeamFolderRestoreError { + @objc + public init() { + let swift = Team.TeamFolderRestoreError.other + super.init(swift: swift) + } +} + +/// The team has reached the maximum number of team folders allowed by its plan. +@objc +public class DBXTeamTeamFolderRestoreErrorFolderCountLimitExceeded: DBXTeamTeamFolderRestoreError { + @objc + public init() { + let swift = Team.TeamFolderRestoreError.folderCountLimitExceeded + super.init(swift: swift) + } +} + /// Objective-C compatible TeamFolderStatus union @objc public class DBXTeamTeamFolderStatus: NSObject { @@ -14028,6 +15535,8 @@ public class DBXTeamTeamFolderStatus: NSObject { return DBXTeamTeamFolderStatusArchived() case .archiveInProgress: return DBXTeamTeamFolderStatusArchiveInProgress() + case .inactive: + return DBXTeamTeamFolderStatusInactive() case .other: return DBXTeamTeamFolderStatusOther() } @@ -14051,6 +15560,11 @@ public class DBXTeamTeamFolderStatus: NSObject { self as? DBXTeamTeamFolderStatusArchiveInProgress } + @objc + public var asInactive: DBXTeamTeamFolderStatusInactive? { + self as? DBXTeamTeamFolderStatusInactive + } + @objc public var asOther: DBXTeamTeamFolderStatusOther? { self as? DBXTeamTeamFolderStatusOther @@ -14067,7 +15581,7 @@ public class DBXTeamTeamFolderStatusActive: DBXTeamTeamFolderStatus { } } -/// The team folder is not accessible outside of the team folder manager. +/// The team folder is archived and is not accessible outside of the team folder manager. @objc public class DBXTeamTeamFolderStatusArchived: DBXTeamTeamFolderStatus { @objc @@ -14077,7 +15591,8 @@ public class DBXTeamTeamFolderStatusArchived: DBXTeamTeamFolderStatus { } } -/// The team folder is not accessible outside of the team folder manager. +/// The team folder is in the process of being archived and is not accessible outside of the team folder +/// manager. @objc public class DBXTeamTeamFolderStatusArchiveInProgress: DBXTeamTeamFolderStatus { @objc @@ -14087,6 +15602,16 @@ public class DBXTeamTeamFolderStatusArchiveInProgress: DBXTeamTeamFolderStatus { } } +/// The team folder is unmounted and can be restored. +@objc +public class DBXTeamTeamFolderStatusInactive: DBXTeamTeamFolderStatus { + @objc + public init() { + let swift = Team.TeamFolderStatus.inactive + super.init(swift: swift) + } +} + /// An unspecified error. @objc public class DBXTeamTeamFolderStatusOther: DBXTeamTeamFolderStatus { @@ -14437,9 +15962,12 @@ public class DBXTeamTeamMemberProfile: DBXTeamMemberProfile { /// List of group IDs of groups that the user belongs to. @objc public var groups: [String] { subSwift.groups } - /// The namespace id of the user's root folder. + /// The namespace id of the user's member folder. @objc public var memberFolderId: String { subSwift.memberFolderId } + /// The namespace id of the user's root folder. + @objc + public var rootFolderId: String { subSwift.rootFolderId } @objc public init( @@ -14451,6 +15979,7 @@ public class DBXTeamTeamMemberProfile: DBXTeamMemberProfile { membershipType: DBXTeamTeamMembershipType, groups: [String], memberFolderId: String, + rootFolderId: String, externalId: String?, accountId: String?, secondaryEmails: [DBXSecondaryEmailsSecondaryEmail]?, @@ -14470,6 +15999,7 @@ public class DBXTeamTeamMemberProfile: DBXTeamMemberProfile { membershipType: membershipType.swift, groups: groups, memberFolderId: memberFolderId, + rootFolderId: rootFolderId, externalId: externalId, accountId: accountId, secondaryEmails: secondaryEmails?.map(\.swift), @@ -14659,7 +16189,8 @@ public class DBXTeamTeamMembershipTypeFull: DBXTeamTeamMembershipType { } } -/// User does not have access to the shared quota and team admins have restricted administrative control. +/// Field is deprecated. User does not have access to the shared quota and team admins have restricted +/// administrative control. @objc public class DBXTeamTeamMembershipTypeLimited: DBXTeamTeamMembershipType { @objc @@ -14672,7 +16203,7 @@ public class DBXTeamTeamMembershipTypeLimited: DBXTeamTeamMembershipType { /// Objective-C compatible TeamNamespacesListArg struct @objc public class DBXTeamTeamNamespacesListArg: NSObject { - /// Specifying a value here has no effect. + /// Field is deprecated. Specifying a value here has no effect. @objc public var limit: NSNumber { swift.limit as NSNumber } @@ -15082,7 +16613,7 @@ public class DBXTeamUploadApiRateLimitValue: NSObject { } } -/// This team has unlimited upload API quota. So far both server version account and legacy account type have +/// This team has unlimited upload API quota. So far both server version account and legacy account type have /// unlimited monthly upload api quota. @objc public class DBXTeamUploadApiRateLimitValueUnlimited: DBXTeamUploadApiRateLimitValue { @@ -15267,7 +16798,7 @@ public class DBXTeamUserCustomQuotaArg: NSObject { public override var description: String { swift.description } } -/// User and their custom quota in GB (1 TB = 1024 GB). No quota returns if the user has no custom quota set. +/// User and their custom quota in GB (1 TB = 1024 GB). No quota returns if the user has no custom quota set. @objc public class DBXTeamUserCustomQuotaResult: NSObject { /// (no description) diff --git a/Source/SwiftyDropboxObjC/Shared/Generated/DBXTeamLog.swift b/Source/SwiftyDropboxObjC/Shared/Generated/DBXTeamLog.swift index 9165cf37..ad1423c7 100644 --- a/Source/SwiftyDropboxObjC/Shared/Generated/DBXTeamLog.swift +++ b/Source/SwiftyDropboxObjC/Shared/Generated/DBXTeamLog.swift @@ -49,37 +49,37 @@ public class DBXTeamLogAccessMethodLogInfo: NSObject { @objc public var asAdminConsole: DBXTeamLogAccessMethodLogInfoAdminConsole? { - self as? DBXTeamLogAccessMethodLogInfoAdminConsole + return self as? DBXTeamLogAccessMethodLogInfoAdminConsole } @objc public var asApi: DBXTeamLogAccessMethodLogInfoApi? { - self as? DBXTeamLogAccessMethodLogInfoApi + return self as? DBXTeamLogAccessMethodLogInfoApi } @objc public var asContentManager: DBXTeamLogAccessMethodLogInfoContentManager? { - self as? DBXTeamLogAccessMethodLogInfoContentManager + return self as? DBXTeamLogAccessMethodLogInfoContentManager } @objc public var asEndUser: DBXTeamLogAccessMethodLogInfoEndUser? { - self as? DBXTeamLogAccessMethodLogInfoEndUser + return self as? DBXTeamLogAccessMethodLogInfoEndUser } @objc public var asEnterpriseConsole: DBXTeamLogAccessMethodLogInfoEnterpriseConsole? { - self as? DBXTeamLogAccessMethodLogInfoEnterpriseConsole + return self as? DBXTeamLogAccessMethodLogInfoEnterpriseConsole } @objc public var asSignInAs: DBXTeamLogAccessMethodLogInfoSignInAs? { - self as? DBXTeamLogAccessMethodLogInfoSignInAs + return self as? DBXTeamLogAccessMethodLogInfoSignInAs } @objc public var asOther: DBXTeamLogAccessMethodLogInfoOther? { - self as? DBXTeamLogAccessMethodLogInfoOther + return self as? DBXTeamLogAccessMethodLogInfoOther } } @@ -91,7 +91,7 @@ public class DBXTeamLogAccessMethodLogInfoAdminConsole: DBXTeamLogAccessMethodLo @objc public init(_ arg: DBXTeamLogWebSessionLogInfo) { - self.adminConsole = arg + adminConsole = arg let swift = TeamLog.AccessMethodLogInfo.adminConsole(arg.subSwift) super.init(swift: swift) } @@ -105,7 +105,7 @@ public class DBXTeamLogAccessMethodLogInfoApi: DBXTeamLogAccessMethodLogInfo { @objc public init(_ arg: DBXTeamLogApiSessionLogInfo) { - self.api = arg + api = arg let swift = TeamLog.AccessMethodLogInfo.api(arg.swift) super.init(swift: swift) } @@ -119,7 +119,7 @@ public class DBXTeamLogAccessMethodLogInfoContentManager: DBXTeamLogAccessMethod @objc public init(_ arg: DBXTeamLogWebSessionLogInfo) { - self.contentManager = arg + contentManager = arg let swift = TeamLog.AccessMethodLogInfo.contentManager(arg.subSwift) super.init(swift: swift) } @@ -133,7 +133,7 @@ public class DBXTeamLogAccessMethodLogInfoEndUser: DBXTeamLogAccessMethodLogInfo @objc public init(_ arg: DBXTeamLogSessionLogInfo) { - self.endUser = arg + endUser = arg let swift = TeamLog.AccessMethodLogInfo.endUser(arg.swift) super.init(swift: swift) } @@ -147,7 +147,7 @@ public class DBXTeamLogAccessMethodLogInfoEnterpriseConsole: DBXTeamLogAccessMet @objc public init(_ arg: DBXTeamLogWebSessionLogInfo) { - self.enterpriseConsole = arg + enterpriseConsole = arg let swift = TeamLog.AccessMethodLogInfo.enterpriseConsole(arg.subSwift) super.init(swift: swift) } @@ -161,7 +161,7 @@ public class DBXTeamLogAccessMethodLogInfoSignInAs: DBXTeamLogAccessMethodLogInf @objc public init(_ arg: DBXTeamLogWebSessionLogInfo) { - self.signInAs = arg + signInAs = arg let swift = TeamLog.AccessMethodLogInfo.signInAs(arg.subSwift) super.init(swift: swift) } @@ -202,17 +202,17 @@ public class DBXTeamLogAccountCaptureAvailability: NSObject { @objc public var asAvailable: DBXTeamLogAccountCaptureAvailabilityAvailable? { - self as? DBXTeamLogAccountCaptureAvailabilityAvailable + return self as? DBXTeamLogAccountCaptureAvailabilityAvailable } @objc public var asUnavailable: DBXTeamLogAccountCaptureAvailabilityUnavailable? { - self as? DBXTeamLogAccountCaptureAvailabilityUnavailable + return self as? DBXTeamLogAccountCaptureAvailabilityUnavailable } @objc public var asOther: DBXTeamLogAccountCaptureAvailabilityOther? { - self as? DBXTeamLogAccountCaptureAvailabilityOther + return self as? DBXTeamLogAccountCaptureAvailabilityOther } } @@ -254,9 +254,7 @@ public class DBXTeamLogAccountCaptureChangeAvailabilityDetails: NSObject { public var newValue: DBXTeamLogAccountCaptureAvailability { DBXTeamLogAccountCaptureAvailability(swift: swift.newValue) } /// Previous account capture availabilty value. Might be missing due to historical data gap. @objc - public var previousValue: DBXTeamLogAccountCaptureAvailability? { guard let swift = swift.previousValue else { return nil } - return DBXTeamLogAccountCaptureAvailability(swift: swift) - } + public var previousValue: DBXTeamLogAccountCaptureAvailability? { guard let swift = swift.previousValue else { return nil }; return DBXTeamLogAccountCaptureAvailability(swift: swift) } @objc public init(newValue: DBXTeamLogAccountCaptureAvailability, previousValue: DBXTeamLogAccountCaptureAvailability?) { @@ -269,6 +267,7 @@ public class DBXTeamLogAccountCaptureChangeAvailabilityDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -291,6 +290,7 @@ public class DBXTeamLogAccountCaptureChangeAvailabilityType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -303,9 +303,7 @@ public class DBXTeamLogAccountCaptureChangePolicyDetails: NSObject { public var newValue: DBXTeamLogAccountCapturePolicy { DBXTeamLogAccountCapturePolicy(swift: swift.newValue) } /// Previous account capture policy. Might be missing due to historical data gap. @objc - public var previousValue: DBXTeamLogAccountCapturePolicy? { guard let swift = swift.previousValue else { return nil } - return DBXTeamLogAccountCapturePolicy(swift: swift) - } + public var previousValue: DBXTeamLogAccountCapturePolicy? { guard let swift = swift.previousValue else { return nil }; return DBXTeamLogAccountCapturePolicy(swift: swift) } @objc public init(newValue: DBXTeamLogAccountCapturePolicy, previousValue: DBXTeamLogAccountCapturePolicy?) { @@ -318,6 +316,7 @@ public class DBXTeamLogAccountCaptureChangePolicyDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -340,6 +339,7 @@ public class DBXTeamLogAccountCaptureChangePolicyType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -362,6 +362,7 @@ public class DBXTeamLogAccountCaptureMigrateAccountDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -384,6 +385,7 @@ public class DBXTeamLogAccountCaptureMigrateAccountType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -396,9 +398,7 @@ public class DBXTeamLogAccountCaptureNotificationEmailsSentDetails: NSObject { public var domainName: String { swift.domainName } /// Account-capture email notification type. @objc - public var notificationType: DBXTeamLogAccountCaptureNotificationType? { guard let swift = swift.notificationType else { return nil } - return DBXTeamLogAccountCaptureNotificationType(swift: swift) - } + public var notificationType: DBXTeamLogAccountCaptureNotificationType? { guard let swift = swift.notificationType else { return nil }; return DBXTeamLogAccountCaptureNotificationType(swift: swift) } @objc public init(domainName: String, notificationType: DBXTeamLogAccountCaptureNotificationType?) { @@ -411,6 +411,7 @@ public class DBXTeamLogAccountCaptureNotificationEmailsSentDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -433,6 +434,7 @@ public class DBXTeamLogAccountCaptureNotificationEmailsSentType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -462,17 +464,17 @@ public class DBXTeamLogAccountCaptureNotificationType: NSObject { @objc public var asActionableNotification: DBXTeamLogAccountCaptureNotificationTypeActionableNotification? { - self as? DBXTeamLogAccountCaptureNotificationTypeActionableNotification + return self as? DBXTeamLogAccountCaptureNotificationTypeActionableNotification } @objc public var asProactiveWarningNotification: DBXTeamLogAccountCaptureNotificationTypeProactiveWarningNotification? { - self as? DBXTeamLogAccountCaptureNotificationTypeProactiveWarningNotification + return self as? DBXTeamLogAccountCaptureNotificationTypeProactiveWarningNotification } @objc public var asOther: DBXTeamLogAccountCaptureNotificationTypeOther? { - self as? DBXTeamLogAccountCaptureNotificationTypeOther + return self as? DBXTeamLogAccountCaptureNotificationTypeOther } } @@ -523,8 +525,6 @@ public class DBXTeamLogAccountCapturePolicy: NSObject { return DBXTeamLogAccountCapturePolicyDisabled() case .invitedUsers: return DBXTeamLogAccountCapturePolicyInvitedUsers() - case .preventPersonalCreation: - return DBXTeamLogAccountCapturePolicyPreventPersonalCreation() case .other: return DBXTeamLogAccountCapturePolicyOther() } @@ -535,27 +535,22 @@ public class DBXTeamLogAccountCapturePolicy: NSObject { @objc public var asAllUsers: DBXTeamLogAccountCapturePolicyAllUsers? { - self as? DBXTeamLogAccountCapturePolicyAllUsers + return self as? DBXTeamLogAccountCapturePolicyAllUsers } @objc public var asDisabled: DBXTeamLogAccountCapturePolicyDisabled? { - self as? DBXTeamLogAccountCapturePolicyDisabled + return self as? DBXTeamLogAccountCapturePolicyDisabled } @objc public var asInvitedUsers: DBXTeamLogAccountCapturePolicyInvitedUsers? { - self as? DBXTeamLogAccountCapturePolicyInvitedUsers - } - - @objc - public var asPreventPersonalCreation: DBXTeamLogAccountCapturePolicyPreventPersonalCreation? { - self as? DBXTeamLogAccountCapturePolicyPreventPersonalCreation + return self as? DBXTeamLogAccountCapturePolicyInvitedUsers } @objc public var asOther: DBXTeamLogAccountCapturePolicyOther? { - self as? DBXTeamLogAccountCapturePolicyOther + return self as? DBXTeamLogAccountCapturePolicyOther } } @@ -589,16 +584,6 @@ public class DBXTeamLogAccountCapturePolicyInvitedUsers: DBXTeamLogAccountCaptur } } -/// An unspecified error. -@objc -public class DBXTeamLogAccountCapturePolicyPreventPersonalCreation: DBXTeamLogAccountCapturePolicy { - @objc - public init() { - let swift = TeamLog.AccountCapturePolicy.preventPersonalCreation - super.init(swift: swift) - } -} - /// An unspecified error. @objc public class DBXTeamLogAccountCapturePolicyOther: DBXTeamLogAccountCapturePolicy { @@ -627,6 +612,7 @@ public class DBXTeamLogAccountCaptureRelinquishAccountDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -649,6 +635,7 @@ public class DBXTeamLogAccountCaptureRelinquishAccountType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -674,6 +661,7 @@ public class DBXTeamLogAccountLockOrUnlockedDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -696,6 +684,7 @@ public class DBXTeamLogAccountLockOrUnlockedType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -725,17 +714,17 @@ public class DBXTeamLogAccountState: NSObject { @objc public var asLocked: DBXTeamLogAccountStateLocked? { - self as? DBXTeamLogAccountStateLocked + return self as? DBXTeamLogAccountStateLocked } @objc public var asUnlocked: DBXTeamLogAccountStateUnlocked? { - self as? DBXTeamLogAccountStateUnlocked + return self as? DBXTeamLogAccountStateUnlocked } @objc public var asOther: DBXTeamLogAccountStateOther? { - self as? DBXTeamLogAccountStateOther + return self as? DBXTeamLogAccountStateOther } } @@ -799,22 +788,22 @@ public class DBXTeamLogActionDetails: NSObject { @objc public var asRemoveAction: DBXTeamLogActionDetailsRemoveAction? { - self as? DBXTeamLogActionDetailsRemoveAction + return self as? DBXTeamLogActionDetailsRemoveAction } @objc public var asTeamInviteDetails: DBXTeamLogActionDetailsTeamInviteDetails? { - self as? DBXTeamLogActionDetailsTeamInviteDetails + return self as? DBXTeamLogActionDetailsTeamInviteDetails } @objc public var asTeamJoinDetails: DBXTeamLogActionDetailsTeamJoinDetails? { - self as? DBXTeamLogActionDetailsTeamJoinDetails + return self as? DBXTeamLogActionDetailsTeamJoinDetails } @objc public var asOther: DBXTeamLogActionDetailsOther? { - self as? DBXTeamLogActionDetailsOther + return self as? DBXTeamLogActionDetailsOther } } @@ -826,13 +815,13 @@ public class DBXTeamLogActionDetailsRemoveAction: DBXTeamLogActionDetails { @objc public init(_ arg: DBXTeamLogMemberRemoveActionType) { - self.removeAction = arg + removeAction = arg let swift = TeamLog.ActionDetails.removeAction(arg.swift) super.init(swift: swift) } } -/// Additional information relevant when someone is invited to the team. +/// Additional information relevant when someone is invited to the team @objc public class DBXTeamLogActionDetailsTeamInviteDetails: DBXTeamLogActionDetails { @objc @@ -840,7 +829,7 @@ public class DBXTeamLogActionDetailsTeamInviteDetails: DBXTeamLogActionDetails { @objc public init(_ arg: DBXTeamLogTeamInviteDetails) { - self.teamInviteDetails = arg + teamInviteDetails = arg let swift = TeamLog.ActionDetails.teamInviteDetails(arg.swift) super.init(swift: swift) } @@ -854,7 +843,7 @@ public class DBXTeamLogActionDetailsTeamJoinDetails: DBXTeamLogActionDetails { @objc public init(_ arg: DBXTeamLogJoinTeamDetails) { - self.teamJoinDetails = arg + teamJoinDetails = arg let swift = TeamLog.ActionDetails.teamJoinDetails(arg.swift) super.init(swift: swift) } @@ -907,37 +896,37 @@ public class DBXTeamLogActorLogInfo: NSObject { @objc public var asAdmin: DBXTeamLogActorLogInfoAdmin? { - self as? DBXTeamLogActorLogInfoAdmin + return self as? DBXTeamLogActorLogInfoAdmin } @objc public var asAnonymous: DBXTeamLogActorLogInfoAnonymous? { - self as? DBXTeamLogActorLogInfoAnonymous + return self as? DBXTeamLogActorLogInfoAnonymous } @objc public var asApp: DBXTeamLogActorLogInfoApp? { - self as? DBXTeamLogActorLogInfoApp + return self as? DBXTeamLogActorLogInfoApp } @objc public var asDropbox: DBXTeamLogActorLogInfoDropbox? { - self as? DBXTeamLogActorLogInfoDropbox + return self as? DBXTeamLogActorLogInfoDropbox } @objc public var asReseller: DBXTeamLogActorLogInfoReseller? { - self as? DBXTeamLogActorLogInfoReseller + return self as? DBXTeamLogActorLogInfoReseller } @objc public var asUser: DBXTeamLogActorLogInfoUser? { - self as? DBXTeamLogActorLogInfoUser + return self as? DBXTeamLogActorLogInfoUser } @objc public var asOther: DBXTeamLogActorLogInfoOther? { - self as? DBXTeamLogActorLogInfoOther + return self as? DBXTeamLogActorLogInfoOther } } @@ -949,7 +938,7 @@ public class DBXTeamLogActorLogInfoAdmin: DBXTeamLogActorLogInfo { @objc public init(_ arg: DBXTeamLogUserLogInfo) { - self.admin = arg + admin = arg let swift = TeamLog.ActorLogInfo.admin(arg.swift) super.init(swift: swift) } @@ -973,7 +962,7 @@ public class DBXTeamLogActorLogInfoApp: DBXTeamLogActorLogInfo { @objc public init(_ arg: DBXTeamLogAppLogInfo) { - self.app = arg + app = arg let swift = TeamLog.ActorLogInfo.app(arg.swift) super.init(swift: swift) } @@ -997,7 +986,7 @@ public class DBXTeamLogActorLogInfoReseller: DBXTeamLogActorLogInfo { @objc public init(_ arg: DBXTeamLogResellerLogInfo) { - self.reseller = arg + reseller = arg let swift = TeamLog.ActorLogInfo.reseller(arg.swift) super.init(swift: swift) } @@ -1011,7 +1000,7 @@ public class DBXTeamLogActorLogInfoUser: DBXTeamLogActorLogInfo { @objc public init(_ arg: DBXTeamLogUserLogInfo) { - self.user = arg + user = arg let swift = TeamLog.ActorLogInfo.user(arg.swift) super.init(swift: swift) } @@ -1027,6 +1016,127 @@ public class DBXTeamLogActorLogInfoOther: DBXTeamLogActorLogInfo { } } +/// Add-on Assigned. +@objc +public class DBXTeamLogAddonAssignedDetails: NSObject { + /// User's name. + @objc + public var userName: DBXTeamLogUserNameLogInfo { DBXTeamLogUserNameLogInfo(swift: swift.userName) } + /// Add-on name. + @objc + public var addonName: DBXTeamLogAddonLogInfo { DBXTeamLogAddonLogInfo(swift: swift.addonName) } + + @objc + public init(userName: DBXTeamLogUserNameLogInfo, addonName: DBXTeamLogAddonLogInfo) { + self.swift = TeamLog.AddonAssignedDetails(userName: userName.swift, addonName: addonName.swift) + } + + let swift: TeamLog.AddonAssignedDetails + + public init(swift: TeamLog.AddonAssignedDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible AddonAssignedType struct +@objc +public class DBXTeamLogAddonAssignedType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.AddonAssignedType(description_: description_) + } + + let swift: TeamLog.AddonAssignedType + + public init(swift: TeamLog.AddonAssignedType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Add-on logged information +@objc +public class DBXTeamLogAddonLogInfo: NSObject { + /// Add-on name. + @objc + public var addonName: String { swift.addonName } + + @objc + public init(addonName: String) { + self.swift = TeamLog.AddonLogInfo(addonName: addonName) + } + + let swift: TeamLog.AddonLogInfo + + public init(swift: TeamLog.AddonLogInfo) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Add-on Removed. +@objc +public class DBXTeamLogAddonRemovedDetails: NSObject { + /// User's name. + @objc + public var userName: DBXTeamLogUserNameLogInfo { DBXTeamLogUserNameLogInfo(swift: swift.userName) } + /// Add-on name. + @objc + public var addonName: DBXTeamLogAddonLogInfo { DBXTeamLogAddonLogInfo(swift: swift.addonName) } + + @objc + public init(userName: DBXTeamLogUserNameLogInfo, addonName: DBXTeamLogAddonLogInfo) { + self.swift = TeamLog.AddonRemovedDetails(userName: userName.swift, addonName: addonName.swift) + } + + let swift: TeamLog.AddonRemovedDetails + + public init(swift: TeamLog.AddonRemovedDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible AddonRemovedType struct +@objc +public class DBXTeamLogAddonRemovedType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.AddonRemovedType(description_: description_) + } + + let swift: TeamLog.AddonRemovedType + + public init(swift: TeamLog.AddonRemovedType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + /// Alert category @objc public class DBXTeamLogAdminAlertCategoryEnum: NSObject { @@ -1062,42 +1172,42 @@ public class DBXTeamLogAdminAlertCategoryEnum: NSObject { @objc public var asAccountTakeover: DBXTeamLogAdminAlertCategoryEnumAccountTakeover? { - self as? DBXTeamLogAdminAlertCategoryEnumAccountTakeover + return self as? DBXTeamLogAdminAlertCategoryEnumAccountTakeover } @objc public var asDataLossProtection: DBXTeamLogAdminAlertCategoryEnumDataLossProtection? { - self as? DBXTeamLogAdminAlertCategoryEnumDataLossProtection + return self as? DBXTeamLogAdminAlertCategoryEnumDataLossProtection } @objc public var asInformationGovernance: DBXTeamLogAdminAlertCategoryEnumInformationGovernance? { - self as? DBXTeamLogAdminAlertCategoryEnumInformationGovernance + return self as? DBXTeamLogAdminAlertCategoryEnumInformationGovernance } @objc public var asMalwareSharing: DBXTeamLogAdminAlertCategoryEnumMalwareSharing? { - self as? DBXTeamLogAdminAlertCategoryEnumMalwareSharing + return self as? DBXTeamLogAdminAlertCategoryEnumMalwareSharing } @objc public var asMassiveFileOperation: DBXTeamLogAdminAlertCategoryEnumMassiveFileOperation? { - self as? DBXTeamLogAdminAlertCategoryEnumMassiveFileOperation + return self as? DBXTeamLogAdminAlertCategoryEnumMassiveFileOperation } @objc public var asNa: DBXTeamLogAdminAlertCategoryEnumNa? { - self as? DBXTeamLogAdminAlertCategoryEnumNa + return self as? DBXTeamLogAdminAlertCategoryEnumNa } @objc public var asThreatManagement: DBXTeamLogAdminAlertCategoryEnumThreatManagement? { - self as? DBXTeamLogAdminAlertCategoryEnumThreatManagement + return self as? DBXTeamLogAdminAlertCategoryEnumThreatManagement } @objc public var asOther: DBXTeamLogAdminAlertCategoryEnumOther? { - self as? DBXTeamLogAdminAlertCategoryEnumOther + return self as? DBXTeamLogAdminAlertCategoryEnumOther } } @@ -1212,32 +1322,32 @@ public class DBXTeamLogAdminAlertGeneralStateEnum: NSObject { @objc public var asActive: DBXTeamLogAdminAlertGeneralStateEnumActive? { - self as? DBXTeamLogAdminAlertGeneralStateEnumActive + return self as? DBXTeamLogAdminAlertGeneralStateEnumActive } @objc public var asDismissed: DBXTeamLogAdminAlertGeneralStateEnumDismissed? { - self as? DBXTeamLogAdminAlertGeneralStateEnumDismissed + return self as? DBXTeamLogAdminAlertGeneralStateEnumDismissed } @objc public var asInProgress: DBXTeamLogAdminAlertGeneralStateEnumInProgress? { - self as? DBXTeamLogAdminAlertGeneralStateEnumInProgress + return self as? DBXTeamLogAdminAlertGeneralStateEnumInProgress } @objc public var asNa: DBXTeamLogAdminAlertGeneralStateEnumNa? { - self as? DBXTeamLogAdminAlertGeneralStateEnumNa + return self as? DBXTeamLogAdminAlertGeneralStateEnumNa } @objc public var asResolved: DBXTeamLogAdminAlertGeneralStateEnumResolved? { - self as? DBXTeamLogAdminAlertGeneralStateEnumResolved + return self as? DBXTeamLogAdminAlertGeneralStateEnumResolved } @objc public var asOther: DBXTeamLogAdminAlertGeneralStateEnumOther? { - self as? DBXTeamLogAdminAlertGeneralStateEnumOther + return self as? DBXTeamLogAdminAlertGeneralStateEnumOther } } @@ -1332,32 +1442,32 @@ public class DBXTeamLogAdminAlertSeverityEnum: NSObject { @objc public var asHigh: DBXTeamLogAdminAlertSeverityEnumHigh? { - self as? DBXTeamLogAdminAlertSeverityEnumHigh + return self as? DBXTeamLogAdminAlertSeverityEnumHigh } @objc public var asInfo: DBXTeamLogAdminAlertSeverityEnumInfo? { - self as? DBXTeamLogAdminAlertSeverityEnumInfo + return self as? DBXTeamLogAdminAlertSeverityEnumInfo } @objc public var asLow: DBXTeamLogAdminAlertSeverityEnumLow? { - self as? DBXTeamLogAdminAlertSeverityEnumLow + return self as? DBXTeamLogAdminAlertSeverityEnumLow } @objc public var asMedium: DBXTeamLogAdminAlertSeverityEnumMedium? { - self as? DBXTeamLogAdminAlertSeverityEnumMedium + return self as? DBXTeamLogAdminAlertSeverityEnumMedium } @objc public var asNa: DBXTeamLogAdminAlertSeverityEnumNa? { - self as? DBXTeamLogAdminAlertSeverityEnumNa + return self as? DBXTeamLogAdminAlertSeverityEnumNa } @objc public var asOther: DBXTeamLogAdminAlertSeverityEnumOther? { - self as? DBXTeamLogAdminAlertSeverityEnumOther + return self as? DBXTeamLogAdminAlertSeverityEnumOther } } @@ -1426,44 +1536,26 @@ public class DBXTeamLogAdminAlertSeverityEnumOther: DBXTeamLogAdminAlertSeverity public class DBXTeamLogAdminAlertingAlertConfiguration: NSObject { /// Alert state. @objc - public var alertState: DBXTeamLogAdminAlertingAlertStatePolicy? { guard let swift = swift.alertState else { return nil } - return DBXTeamLogAdminAlertingAlertStatePolicy(swift: swift) - } - + public var alertState: DBXTeamLogAdminAlertingAlertStatePolicy? { guard let swift = swift.alertState else { return nil }; return DBXTeamLogAdminAlertingAlertStatePolicy(swift: swift) } /// Sensitivity level. @objc - public var sensitivityLevel: DBXTeamLogAdminAlertingAlertSensitivity? { guard let swift = swift.sensitivityLevel else { return nil } - return DBXTeamLogAdminAlertingAlertSensitivity(swift: swift) - } - + public var sensitivityLevel: DBXTeamLogAdminAlertingAlertSensitivity? { guard let swift = swift.sensitivityLevel else { return nil }; return DBXTeamLogAdminAlertingAlertSensitivity(swift: swift) } /// Recipient settings. @objc - public var recipientsSettings: DBXTeamLogRecipientsConfiguration? { guard let swift = swift.recipientsSettings else { return nil } - return DBXTeamLogRecipientsConfiguration(swift: swift) - } - + public var recipientsSettings: DBXTeamLogRecipientsConfiguration? { guard let swift = swift.recipientsSettings else { return nil }; return DBXTeamLogRecipientsConfiguration(swift: swift) } /// Text. @objc public var text: String? { swift.text } /// Excluded file extensions. @objc public var excludedFileExtensions: String? { swift.excludedFileExtensions } + /// Malware exclusion list state. + @objc + public var malwareExclusionState: DBXTeamLogMalwareExclusionState? { guard let swift = swift.malwareExclusionState else { return nil }; return DBXTeamLogMalwareExclusionState(swift: swift) } @objc - public init( - alertState: DBXTeamLogAdminAlertingAlertStatePolicy?, - sensitivityLevel: DBXTeamLogAdminAlertingAlertSensitivity?, - recipientsSettings: DBXTeamLogRecipientsConfiguration?, - text: String?, - excludedFileExtensions: String? - ) { - self.swift = TeamLog.AdminAlertingAlertConfiguration( - alertState: alertState?.swift, - sensitivityLevel: sensitivityLevel?.swift, - recipientsSettings: recipientsSettings?.swift, - text: text, - excludedFileExtensions: excludedFileExtensions - ) + public init(alertState: DBXTeamLogAdminAlertingAlertStatePolicy?, sensitivityLevel: DBXTeamLogAdminAlertingAlertSensitivity?, recipientsSettings: DBXTeamLogRecipientsConfiguration?, text: String?, excludedFileExtensions: String?, malwareExclusionState: DBXTeamLogMalwareExclusionState?) { + self.swift = TeamLog.AdminAlertingAlertConfiguration(alertState: alertState?.swift, sensitivityLevel: sensitivityLevel?.swift, recipientsSettings: recipientsSettings?.swift, text: text, excludedFileExtensions: excludedFileExtensions, malwareExclusionState: malwareExclusionState?.swift) } let swift: TeamLog.AdminAlertingAlertConfiguration @@ -1472,6 +1564,7 @@ public class DBXTeamLogAdminAlertingAlertConfiguration: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -1509,37 +1602,37 @@ public class DBXTeamLogAdminAlertingAlertSensitivity: NSObject { @objc public var asHigh: DBXTeamLogAdminAlertingAlertSensitivityHigh? { - self as? DBXTeamLogAdminAlertingAlertSensitivityHigh + return self as? DBXTeamLogAdminAlertingAlertSensitivityHigh } @objc public var asHighest: DBXTeamLogAdminAlertingAlertSensitivityHighest? { - self as? DBXTeamLogAdminAlertingAlertSensitivityHighest + return self as? DBXTeamLogAdminAlertingAlertSensitivityHighest } @objc public var asInvalid: DBXTeamLogAdminAlertingAlertSensitivityInvalid? { - self as? DBXTeamLogAdminAlertingAlertSensitivityInvalid + return self as? DBXTeamLogAdminAlertingAlertSensitivityInvalid } @objc public var asLow: DBXTeamLogAdminAlertingAlertSensitivityLow? { - self as? DBXTeamLogAdminAlertingAlertSensitivityLow + return self as? DBXTeamLogAdminAlertingAlertSensitivityLow } @objc public var asLowest: DBXTeamLogAdminAlertingAlertSensitivityLowest? { - self as? DBXTeamLogAdminAlertingAlertSensitivityLowest + return self as? DBXTeamLogAdminAlertingAlertSensitivityLowest } @objc public var asMedium: DBXTeamLogAdminAlertingAlertSensitivityMedium? { - self as? DBXTeamLogAdminAlertingAlertSensitivityMedium + return self as? DBXTeamLogAdminAlertingAlertSensitivityMedium } @objc public var asOther: DBXTeamLogAdminAlertingAlertSensitivityOther? { - self as? DBXTeamLogAdminAlertingAlertSensitivityOther + return self as? DBXTeamLogAdminAlertingAlertSensitivityOther } } @@ -1636,22 +1729,8 @@ public class DBXTeamLogAdminAlertingAlertStateChangedDetails: NSObject { public var newValue: DBXTeamLogAdminAlertGeneralStateEnum { DBXTeamLogAdminAlertGeneralStateEnum(swift: swift.newValue) } @objc - public init( - alertName: String, - alertSeverity: DBXTeamLogAdminAlertSeverityEnum, - alertCategory: DBXTeamLogAdminAlertCategoryEnum, - alertInstanceId: String, - previousValue: DBXTeamLogAdminAlertGeneralStateEnum, - newValue: DBXTeamLogAdminAlertGeneralStateEnum - ) { - self.swift = TeamLog.AdminAlertingAlertStateChangedDetails( - alertName: alertName, - alertSeverity: alertSeverity.swift, - alertCategory: alertCategory.swift, - alertInstanceId: alertInstanceId, - previousValue: previousValue.swift, - newValue: newValue.swift - ) + public init(alertName: String, alertSeverity: DBXTeamLogAdminAlertSeverityEnum, alertCategory: DBXTeamLogAdminAlertCategoryEnum, alertInstanceId: String, previousValue: DBXTeamLogAdminAlertGeneralStateEnum, newValue: DBXTeamLogAdminAlertGeneralStateEnum) { + self.swift = TeamLog.AdminAlertingAlertStateChangedDetails(alertName: alertName, alertSeverity: alertSeverity.swift, alertCategory: alertCategory.swift, alertInstanceId: alertInstanceId, previousValue: previousValue.swift, newValue: newValue.swift) } let swift: TeamLog.AdminAlertingAlertStateChangedDetails @@ -1660,6 +1739,7 @@ public class DBXTeamLogAdminAlertingAlertStateChangedDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -1682,6 +1762,7 @@ public class DBXTeamLogAdminAlertingAlertStateChangedType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -1711,17 +1792,17 @@ public class DBXTeamLogAdminAlertingAlertStatePolicy: NSObject { @objc public var asOff: DBXTeamLogAdminAlertingAlertStatePolicyOff? { - self as? DBXTeamLogAdminAlertingAlertStatePolicyOff + return self as? DBXTeamLogAdminAlertingAlertStatePolicyOff } @objc public var asOn: DBXTeamLogAdminAlertingAlertStatePolicyOn? { - self as? DBXTeamLogAdminAlertingAlertStatePolicyOn + return self as? DBXTeamLogAdminAlertingAlertStatePolicyOn } @objc public var asOther: DBXTeamLogAdminAlertingAlertStatePolicyOther? { - self as? DBXTeamLogAdminAlertingAlertStatePolicyOther + return self as? DBXTeamLogAdminAlertingAlertStatePolicyOther } } @@ -1770,11 +1851,7 @@ public class DBXTeamLogAdminAlertingChangedAlertConfigDetails: NSObject { @objc public init(alertName: String, previousAlertConfig: DBXTeamLogAdminAlertingAlertConfiguration, newAlertConfig: DBXTeamLogAdminAlertingAlertConfiguration) { - self.swift = TeamLog.AdminAlertingChangedAlertConfigDetails( - alertName: alertName, - previousAlertConfig: previousAlertConfig.swift, - newAlertConfig: newAlertConfig.swift - ) + self.swift = TeamLog.AdminAlertingChangedAlertConfigDetails(alertName: alertName, previousAlertConfig: previousAlertConfig.swift, newAlertConfig: newAlertConfig.swift) } let swift: TeamLog.AdminAlertingChangedAlertConfigDetails @@ -1783,6 +1860,7 @@ public class DBXTeamLogAdminAlertingChangedAlertConfigDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -1805,6 +1883,7 @@ public class DBXTeamLogAdminAlertingChangedAlertConfigType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -1827,12 +1906,7 @@ public class DBXTeamLogAdminAlertingTriggeredAlertDetails: NSObject { @objc public init(alertName: String, alertSeverity: DBXTeamLogAdminAlertSeverityEnum, alertCategory: DBXTeamLogAdminAlertCategoryEnum, alertInstanceId: String) { - self.swift = TeamLog.AdminAlertingTriggeredAlertDetails( - alertName: alertName, - alertSeverity: alertSeverity.swift, - alertCategory: alertCategory.swift, - alertInstanceId: alertInstanceId - ) + self.swift = TeamLog.AdminAlertingTriggeredAlertDetails(alertName: alertName, alertSeverity: alertSeverity.swift, alertCategory: alertCategory.swift, alertInstanceId: alertInstanceId) } let swift: TeamLog.AdminAlertingTriggeredAlertDetails @@ -1841,6 +1915,7 @@ public class DBXTeamLogAdminAlertingTriggeredAlertDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -1863,6 +1938,7 @@ public class DBXTeamLogAdminAlertingTriggeredAlertType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -1892,17 +1968,17 @@ public class DBXTeamLogAdminConsoleAppPermission: NSObject { @objc public var asDefaultForListedApps: DBXTeamLogAdminConsoleAppPermissionDefaultForListedApps? { - self as? DBXTeamLogAdminConsoleAppPermissionDefaultForListedApps + return self as? DBXTeamLogAdminConsoleAppPermissionDefaultForListedApps } @objc public var asDefaultForUnlistedApps: DBXTeamLogAdminConsoleAppPermissionDefaultForUnlistedApps? { - self as? DBXTeamLogAdminConsoleAppPermissionDefaultForUnlistedApps + return self as? DBXTeamLogAdminConsoleAppPermissionDefaultForUnlistedApps } @objc public var asOther: DBXTeamLogAdminConsoleAppPermissionOther? { - self as? DBXTeamLogAdminConsoleAppPermissionOther + return self as? DBXTeamLogAdminConsoleAppPermissionOther } } @@ -1963,22 +2039,22 @@ public class DBXTeamLogAdminConsoleAppPolicy: NSObject { @objc public var asAllow: DBXTeamLogAdminConsoleAppPolicyAllow? { - self as? DBXTeamLogAdminConsoleAppPolicyAllow + return self as? DBXTeamLogAdminConsoleAppPolicyAllow } @objc public var asBlock: DBXTeamLogAdminConsoleAppPolicyBlock? { - self as? DBXTeamLogAdminConsoleAppPolicyBlock + return self as? DBXTeamLogAdminConsoleAppPolicyBlock } @objc public var asDefault_: DBXTeamLogAdminConsoleAppPolicyDefault_? { - self as? DBXTeamLogAdminConsoleAppPolicyDefault_ + return self as? DBXTeamLogAdminConsoleAppPolicyDefault_ } @objc public var asOther: DBXTeamLogAdminConsoleAppPolicyOther? { - self as? DBXTeamLogAdminConsoleAppPolicyOther + return self as? DBXTeamLogAdminConsoleAppPolicyOther } } @@ -2043,6 +2119,7 @@ public class DBXTeamLogAdminEmailRemindersChangedDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -2065,6 +2142,7 @@ public class DBXTeamLogAdminEmailRemindersChangedType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -2096,22 +2174,22 @@ public class DBXTeamLogAdminEmailRemindersPolicy: NSObject { @objc public var asDefault_: DBXTeamLogAdminEmailRemindersPolicyDefault_? { - self as? DBXTeamLogAdminEmailRemindersPolicyDefault_ + return self as? DBXTeamLogAdminEmailRemindersPolicyDefault_ } @objc public var asDisabled: DBXTeamLogAdminEmailRemindersPolicyDisabled? { - self as? DBXTeamLogAdminEmailRemindersPolicyDisabled + return self as? DBXTeamLogAdminEmailRemindersPolicyDisabled } @objc public var asEnabled: DBXTeamLogAdminEmailRemindersPolicyEnabled? { - self as? DBXTeamLogAdminEmailRemindersPolicyEnabled + return self as? DBXTeamLogAdminEmailRemindersPolicyEnabled } @objc public var asOther: DBXTeamLogAdminEmailRemindersPolicyOther? { - self as? DBXTeamLogAdminEmailRemindersPolicyOther + return self as? DBXTeamLogAdminEmailRemindersPolicyOther } } @@ -2172,6 +2250,10 @@ public class DBXTeamLogAdminRole: NSObject { return DBXTeamLogAdminRoleComplianceAdmin() case .contentAdmin: return DBXTeamLogAdminRoleContentAdmin() + case .deprecatedFreemiumTeamMember: + return DBXTeamLogAdminRoleDeprecatedFreemiumTeamMember() + case .freemiumTeamCreator: + return DBXTeamLogAdminRoleFreemiumTeamCreator() case .limitedAdmin: return DBXTeamLogAdminRoleLimitedAdmin() case .memberOnly: @@ -2196,57 +2278,67 @@ public class DBXTeamLogAdminRole: NSObject { @objc public var asBillingAdmin: DBXTeamLogAdminRoleBillingAdmin? { - self as? DBXTeamLogAdminRoleBillingAdmin + return self as? DBXTeamLogAdminRoleBillingAdmin } @objc public var asComplianceAdmin: DBXTeamLogAdminRoleComplianceAdmin? { - self as? DBXTeamLogAdminRoleComplianceAdmin + return self as? DBXTeamLogAdminRoleComplianceAdmin } @objc public var asContentAdmin: DBXTeamLogAdminRoleContentAdmin? { - self as? DBXTeamLogAdminRoleContentAdmin + return self as? DBXTeamLogAdminRoleContentAdmin + } + + @objc + public var asDeprecatedFreemiumTeamMember: DBXTeamLogAdminRoleDeprecatedFreemiumTeamMember? { + return self as? DBXTeamLogAdminRoleDeprecatedFreemiumTeamMember + } + + @objc + public var asFreemiumTeamCreator: DBXTeamLogAdminRoleFreemiumTeamCreator? { + return self as? DBXTeamLogAdminRoleFreemiumTeamCreator } @objc public var asLimitedAdmin: DBXTeamLogAdminRoleLimitedAdmin? { - self as? DBXTeamLogAdminRoleLimitedAdmin + return self as? DBXTeamLogAdminRoleLimitedAdmin } @objc public var asMemberOnly: DBXTeamLogAdminRoleMemberOnly? { - self as? DBXTeamLogAdminRoleMemberOnly + return self as? DBXTeamLogAdminRoleMemberOnly } @objc public var asReportingAdmin: DBXTeamLogAdminRoleReportingAdmin? { - self as? DBXTeamLogAdminRoleReportingAdmin + return self as? DBXTeamLogAdminRoleReportingAdmin } @objc public var asSecurityAdmin: DBXTeamLogAdminRoleSecurityAdmin? { - self as? DBXTeamLogAdminRoleSecurityAdmin + return self as? DBXTeamLogAdminRoleSecurityAdmin } @objc public var asSupportAdmin: DBXTeamLogAdminRoleSupportAdmin? { - self as? DBXTeamLogAdminRoleSupportAdmin + return self as? DBXTeamLogAdminRoleSupportAdmin } @objc public var asTeamAdmin: DBXTeamLogAdminRoleTeamAdmin? { - self as? DBXTeamLogAdminRoleTeamAdmin + return self as? DBXTeamLogAdminRoleTeamAdmin } @objc public var asUserManagementAdmin: DBXTeamLogAdminRoleUserManagementAdmin? { - self as? DBXTeamLogAdminRoleUserManagementAdmin + return self as? DBXTeamLogAdminRoleUserManagementAdmin } @objc public var asOther: DBXTeamLogAdminRoleOther? { - self as? DBXTeamLogAdminRoleOther + return self as? DBXTeamLogAdminRoleOther } } @@ -2280,6 +2372,26 @@ public class DBXTeamLogAdminRoleContentAdmin: DBXTeamLogAdminRole { } } +/// An unspecified error. +@objc +public class DBXTeamLogAdminRoleDeprecatedFreemiumTeamMember: DBXTeamLogAdminRole { + @objc + public init() { + let swift = TeamLog.AdminRole.deprecatedFreemiumTeamMember + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogAdminRoleFreemiumTeamCreator: DBXTeamLogAdminRole { + @objc + public init() { + let swift = TeamLog.AdminRole.freemiumTeamCreator + super.init(swift: swift) + } +} + /// An unspecified error. @objc public class DBXTeamLogAdminRoleLimitedAdmin: DBXTeamLogAdminRole { @@ -2360,6 +2472,158 @@ public class DBXTeamLogAdminRoleOther: DBXTeamLogAdminRole { } } +/// Policy for deciding whether team users can use third party AI services +@objc +public class DBXTeamLogAiThirdPartySharingDropboxBasePolicy: NSObject { + let swift: TeamLog.AiThirdPartySharingDropboxBasePolicy + + public init(swift: TeamLog.AiThirdPartySharingDropboxBasePolicy) { + self.swift = swift + } + + public static func factory(swift: TeamLog.AiThirdPartySharingDropboxBasePolicy) -> DBXTeamLogAiThirdPartySharingDropboxBasePolicy { + switch swift { + case .adminsOnly: + return DBXTeamLogAiThirdPartySharingDropboxBasePolicyAdminsOnly() + case .default_: + return DBXTeamLogAiThirdPartySharingDropboxBasePolicyDefault_() + case .disabled: + return DBXTeamLogAiThirdPartySharingDropboxBasePolicyDisabled() + case .enabled: + return DBXTeamLogAiThirdPartySharingDropboxBasePolicyEnabled() + case .other: + return DBXTeamLogAiThirdPartySharingDropboxBasePolicyOther() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asAdminsOnly: DBXTeamLogAiThirdPartySharingDropboxBasePolicyAdminsOnly? { + return self as? DBXTeamLogAiThirdPartySharingDropboxBasePolicyAdminsOnly + } + + @objc + public var asDefault_: DBXTeamLogAiThirdPartySharingDropboxBasePolicyDefault_? { + return self as? DBXTeamLogAiThirdPartySharingDropboxBasePolicyDefault_ + } + + @objc + public var asDisabled: DBXTeamLogAiThirdPartySharingDropboxBasePolicyDisabled? { + return self as? DBXTeamLogAiThirdPartySharingDropboxBasePolicyDisabled + } + + @objc + public var asEnabled: DBXTeamLogAiThirdPartySharingDropboxBasePolicyEnabled? { + return self as? DBXTeamLogAiThirdPartySharingDropboxBasePolicyEnabled + } + + @objc + public var asOther: DBXTeamLogAiThirdPartySharingDropboxBasePolicyOther? { + return self as? DBXTeamLogAiThirdPartySharingDropboxBasePolicyOther + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogAiThirdPartySharingDropboxBasePolicyAdminsOnly: DBXTeamLogAiThirdPartySharingDropboxBasePolicy { + @objc + public init() { + let swift = TeamLog.AiThirdPartySharingDropboxBasePolicy.adminsOnly + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogAiThirdPartySharingDropboxBasePolicyDefault_: DBXTeamLogAiThirdPartySharingDropboxBasePolicy { + @objc + public init() { + let swift = TeamLog.AiThirdPartySharingDropboxBasePolicy.default_ + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogAiThirdPartySharingDropboxBasePolicyDisabled: DBXTeamLogAiThirdPartySharingDropboxBasePolicy { + @objc + public init() { + let swift = TeamLog.AiThirdPartySharingDropboxBasePolicy.disabled + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogAiThirdPartySharingDropboxBasePolicyEnabled: DBXTeamLogAiThirdPartySharingDropboxBasePolicy { + @objc + public init() { + let swift = TeamLog.AiThirdPartySharingDropboxBasePolicy.enabled + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogAiThirdPartySharingDropboxBasePolicyOther: DBXTeamLogAiThirdPartySharingDropboxBasePolicy { + @objc + public init() { + let swift = TeamLog.AiThirdPartySharingDropboxBasePolicy.other + super.init(swift: swift) + } +} + +/// Changed AI third party sharing policy for team. +@objc +public class DBXTeamLogAiThirdPartySharingDropboxBasePolicyChangedDetails: NSObject { + /// To. + @objc + public var newValue: DBXTeamLogAiThirdPartySharingDropboxBasePolicy { DBXTeamLogAiThirdPartySharingDropboxBasePolicy(swift: swift.newValue) } + /// From. + @objc + public var previousValue: DBXTeamLogAiThirdPartySharingDropboxBasePolicy { DBXTeamLogAiThirdPartySharingDropboxBasePolicy(swift: swift.previousValue) } + + @objc + public init(newValue: DBXTeamLogAiThirdPartySharingDropboxBasePolicy, previousValue: DBXTeamLogAiThirdPartySharingDropboxBasePolicy) { + self.swift = TeamLog.AiThirdPartySharingDropboxBasePolicyChangedDetails(newValue: newValue.swift, previousValue: previousValue.swift) + } + + let swift: TeamLog.AiThirdPartySharingDropboxBasePolicyChangedDetails + + public init(swift: TeamLog.AiThirdPartySharingDropboxBasePolicyChangedDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible AiThirdPartySharingDropboxBasePolicyChangedType struct +@objc +public class DBXTeamLogAiThirdPartySharingDropboxBasePolicyChangedType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.AiThirdPartySharingDropboxBasePolicyChangedType(description_: description_) + } + + let swift: TeamLog.AiThirdPartySharingDropboxBasePolicyChangedType + + public init(swift: TeamLog.AiThirdPartySharingDropboxBasePolicyChangedType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + /// Alert recipients setting type @objc public class DBXTeamLogAlertRecipientsSettingType: NSObject { @@ -2389,27 +2653,27 @@ public class DBXTeamLogAlertRecipientsSettingType: NSObject { @objc public var asCustomList: DBXTeamLogAlertRecipientsSettingTypeCustomList? { - self as? DBXTeamLogAlertRecipientsSettingTypeCustomList + return self as? DBXTeamLogAlertRecipientsSettingTypeCustomList } @objc public var asInvalid: DBXTeamLogAlertRecipientsSettingTypeInvalid? { - self as? DBXTeamLogAlertRecipientsSettingTypeInvalid + return self as? DBXTeamLogAlertRecipientsSettingTypeInvalid } @objc public var asNone: DBXTeamLogAlertRecipientsSettingTypeNone? { - self as? DBXTeamLogAlertRecipientsSettingTypeNone + return self as? DBXTeamLogAlertRecipientsSettingTypeNone } @objc public var asTeamAdmins: DBXTeamLogAlertRecipientsSettingTypeTeamAdmins? { - self as? DBXTeamLogAlertRecipientsSettingTypeTeamAdmins + return self as? DBXTeamLogAlertRecipientsSettingTypeTeamAdmins } @objc public var asOther: DBXTeamLogAlertRecipientsSettingTypeOther? { - self as? DBXTeamLogAlertRecipientsSettingTypeOther + return self as? DBXTeamLogAlertRecipientsSettingTypeOther } } @@ -2466,12 +2730,14 @@ public class DBXTeamLogAlertRecipientsSettingTypeOther: DBXTeamLogAlertRecipient /// Disabled downloads. @objc public class DBXTeamLogAllowDownloadDisabledDetails: NSObject { + let swift: TeamLog.AllowDownloadDisabledDetails public init(swift: TeamLog.AllowDownloadDisabledDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -2494,6 +2760,7 @@ public class DBXTeamLogAllowDownloadDisabledType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -2501,12 +2768,14 @@ public class DBXTeamLogAllowDownloadDisabledType: NSObject { /// Enabled downloads. @objc public class DBXTeamLogAllowDownloadEnabledDetails: NSObject { + let swift: TeamLog.AllowDownloadEnabledDetails public init(swift: TeamLog.AllowDownloadEnabledDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -2529,6 +2798,7 @@ public class DBXTeamLogAllowDownloadEnabledType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -2551,6 +2821,7 @@ public class DBXTeamLogApiSessionLogInfo: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -2561,7 +2832,7 @@ public class DBXTeamLogAppBlockedByPermissionsDetails: NSObject { /// Relevant application details. @objc public var appInfo: DBXTeamLogAppLogInfo { - DBXTeamLogAppLogInfo.wrapPreservingSubtypes(swift: swift.appInfo) + return DBXTeamLogAppLogInfo.wrapPreservingSubtypes(swift: swift.appInfo) } @objc @@ -2575,6 +2846,7 @@ public class DBXTeamLogAppBlockedByPermissionsDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -2597,6 +2869,7 @@ public class DBXTeamLogAppBlockedByPermissionsType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -2607,7 +2880,7 @@ public class DBXTeamLogAppLinkTeamDetails: NSObject { /// Relevant application details. @objc public var appInfo: DBXTeamLogAppLogInfo { - DBXTeamLogAppLogInfo.wrapPreservingSubtypes(swift: swift.appInfo) + return DBXTeamLogAppLogInfo.wrapPreservingSubtypes(swift: swift.appInfo) } @objc @@ -2621,6 +2894,7 @@ public class DBXTeamLogAppLinkTeamDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -2643,6 +2917,7 @@ public class DBXTeamLogAppLinkTeamType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -2653,7 +2928,7 @@ public class DBXTeamLogAppLinkUserDetails: NSObject { /// Relevant application details. @objc public var appInfo: DBXTeamLogAppLogInfo { - DBXTeamLogAppLogInfo.wrapPreservingSubtypes(swift: swift.appInfo) + return DBXTeamLogAppLogInfo.wrapPreservingSubtypes(swift: swift.appInfo) } @objc @@ -2667,6 +2942,7 @@ public class DBXTeamLogAppLinkUserDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -2689,6 +2965,7 @@ public class DBXTeamLogAppLinkUserType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -2716,12 +2993,12 @@ public class DBXTeamLogAppLogInfo: NSObject { public static func wrapPreservingSubtypes(swift: TeamLog.AppLogInfo) -> DBXTeamLogAppLogInfo { switch swift { - case let userOrTeamLinkedAppLogInfo as TeamLog.UserOrTeamLinkedAppLogInfo: - return DBXTeamLogUserOrTeamLinkedAppLogInfo(swift: userOrTeamLinkedAppLogInfo) - case let userLinkedAppLogInfo as TeamLog.UserLinkedAppLogInfo: - return DBXTeamLogUserLinkedAppLogInfo(swift: userLinkedAppLogInfo) case let teamLinkedAppLogInfo as TeamLog.TeamLinkedAppLogInfo: return DBXTeamLogTeamLinkedAppLogInfo(swift: teamLinkedAppLogInfo) + case let userLinkedAppLogInfo as TeamLog.UserLinkedAppLogInfo: + return DBXTeamLogUserLinkedAppLogInfo(swift: userLinkedAppLogInfo) + case let userOrTeamLinkedAppLogInfo as TeamLog.UserOrTeamLinkedAppLogInfo: + return DBXTeamLogUserOrTeamLinkedAppLogInfo(swift: userOrTeamLinkedAppLogInfo) default: return DBXTeamLogAppLogInfo(swift: swift) } @@ -2739,10 +3016,7 @@ public class DBXTeamLogAppPermissionsChangedDetails: NSObject { public var appName: String? { swift.appName } /// Permission that was changed. @objc - public var permission: DBXTeamLogAdminConsoleAppPermission? { guard let swift = swift.permission else { return nil } - return DBXTeamLogAdminConsoleAppPermission(swift: swift) - } - + public var permission: DBXTeamLogAdminConsoleAppPermission? { guard let swift = swift.permission else { return nil }; return DBXTeamLogAdminConsoleAppPermission(swift: swift) } /// Previous policy. @objc public var previousValue: DBXTeamLogAdminConsoleAppPolicy { DBXTeamLogAdminConsoleAppPolicy(swift: swift.previousValue) } @@ -2751,18 +3025,8 @@ public class DBXTeamLogAppPermissionsChangedDetails: NSObject { public var newValue: DBXTeamLogAdminConsoleAppPolicy { DBXTeamLogAdminConsoleAppPolicy(swift: swift.newValue) } @objc - public init( - previousValue: DBXTeamLogAdminConsoleAppPolicy, - newValue: DBXTeamLogAdminConsoleAppPolicy, - appName: String?, - permission: DBXTeamLogAdminConsoleAppPermission? - ) { - self.swift = TeamLog.AppPermissionsChangedDetails( - previousValue: previousValue.swift, - newValue: newValue.swift, - appName: appName, - permission: permission?.swift - ) + public init(previousValue: DBXTeamLogAdminConsoleAppPolicy, newValue: DBXTeamLogAdminConsoleAppPolicy, appName: String?, permission: DBXTeamLogAdminConsoleAppPermission?) { + self.swift = TeamLog.AppPermissionsChangedDetails(previousValue: previousValue.swift, newValue: newValue.swift, appName: appName, permission: permission?.swift) } let swift: TeamLog.AppPermissionsChangedDetails @@ -2771,6 +3035,7 @@ public class DBXTeamLogAppPermissionsChangedDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -2793,6 +3058,7 @@ public class DBXTeamLogAppPermissionsChangedType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -2803,7 +3069,7 @@ public class DBXTeamLogAppUnlinkTeamDetails: NSObject { /// Relevant application details. @objc public var appInfo: DBXTeamLogAppLogInfo { - DBXTeamLogAppLogInfo.wrapPreservingSubtypes(swift: swift.appInfo) + return DBXTeamLogAppLogInfo.wrapPreservingSubtypes(swift: swift.appInfo) } @objc @@ -2817,6 +3083,7 @@ public class DBXTeamLogAppUnlinkTeamDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -2839,6 +3106,7 @@ public class DBXTeamLogAppUnlinkTeamType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -2849,7 +3117,7 @@ public class DBXTeamLogAppUnlinkUserDetails: NSObject { /// Relevant application details. @objc public var appInfo: DBXTeamLogAppLogInfo { - DBXTeamLogAppLogInfo.wrapPreservingSubtypes(swift: swift.appInfo) + return DBXTeamLogAppLogInfo.wrapPreservingSubtypes(swift: swift.appInfo) } @objc @@ -2863,6 +3131,7 @@ public class DBXTeamLogAppUnlinkUserDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -2885,19 +3154,157 @@ public class DBXTeamLogAppUnlinkUserType: NSObject { self.swift = swift } + + @objc + public override var description: String { swift.description } +} + +/// Enabled/disabled Apple login for team. +@objc +public class DBXTeamLogAppleLoginChangePolicyDetails: NSObject { + /// New Apple login policy. + @objc + public var newValue: DBXTeamLogAppleLoginPolicy { DBXTeamLogAppleLoginPolicy(swift: swift.newValue) } + /// Previous Apple login policy. Might be missing due to historical data gap. + @objc + public var previousValue: DBXTeamLogAppleLoginPolicy? { guard let swift = swift.previousValue else { return nil }; return DBXTeamLogAppleLoginPolicy(swift: swift) } + + @objc + public init(newValue: DBXTeamLogAppleLoginPolicy, previousValue: DBXTeamLogAppleLoginPolicy?) { + self.swift = TeamLog.AppleLoginChangePolicyDetails(newValue: newValue.swift, previousValue: previousValue?.swift) + } + + let swift: TeamLog.AppleLoginChangePolicyDetails + + public init(swift: TeamLog.AppleLoginChangePolicyDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible AppleLoginChangePolicyType struct +@objc +public class DBXTeamLogAppleLoginChangePolicyType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.AppleLoginChangePolicyType(description_: description_) + } + + let swift: TeamLog.AppleLoginChangePolicyType + + public init(swift: TeamLog.AppleLoginChangePolicyType) { + self.swift = swift + } + + @objc public override var description: String { swift.description } } +/// Apple login policy +@objc +public class DBXTeamLogAppleLoginPolicy: NSObject { + let swift: TeamLog.AppleLoginPolicy + + public init(swift: TeamLog.AppleLoginPolicy) { + self.swift = swift + } + + public static func factory(swift: TeamLog.AppleLoginPolicy) -> DBXTeamLogAppleLoginPolicy { + switch swift { + case .default_: + return DBXTeamLogAppleLoginPolicyDefault_() + case .disabled: + return DBXTeamLogAppleLoginPolicyDisabled() + case .enabled: + return DBXTeamLogAppleLoginPolicyEnabled() + case .other: + return DBXTeamLogAppleLoginPolicyOther() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asDefault_: DBXTeamLogAppleLoginPolicyDefault_? { + return self as? DBXTeamLogAppleLoginPolicyDefault_ + } + + @objc + public var asDisabled: DBXTeamLogAppleLoginPolicyDisabled? { + return self as? DBXTeamLogAppleLoginPolicyDisabled + } + + @objc + public var asEnabled: DBXTeamLogAppleLoginPolicyEnabled? { + return self as? DBXTeamLogAppleLoginPolicyEnabled + } + + @objc + public var asOther: DBXTeamLogAppleLoginPolicyOther? { + return self as? DBXTeamLogAppleLoginPolicyOther + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogAppleLoginPolicyDefault_: DBXTeamLogAppleLoginPolicy { + @objc + public init() { + let swift = TeamLog.AppleLoginPolicy.default_ + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogAppleLoginPolicyDisabled: DBXTeamLogAppleLoginPolicy { + @objc + public init() { + let swift = TeamLog.AppleLoginPolicy.disabled + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogAppleLoginPolicyEnabled: DBXTeamLogAppleLoginPolicy { + @objc + public init() { + let swift = TeamLog.AppleLoginPolicy.enabled + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogAppleLoginPolicyOther: DBXTeamLogAppleLoginPolicy { + @objc + public init() { + let swift = TeamLog.AppleLoginPolicy.other + super.init(swift: swift) + } +} + /// Applied naming convention. @objc public class DBXTeamLogApplyNamingConventionDetails: NSObject { + let swift: TeamLog.ApplyNamingConventionDetails public init(swift: TeamLog.ApplyNamingConventionDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -2920,6 +3327,7 @@ public class DBXTeamLogApplyNamingConventionType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -2960,32 +3368,32 @@ public class DBXTeamLogAssetLogInfo: NSObject { @objc public var asFile: DBXTeamLogAssetLogInfoFile? { - self as? DBXTeamLogAssetLogInfoFile + return self as? DBXTeamLogAssetLogInfoFile } @objc public var asFolder: DBXTeamLogAssetLogInfoFolder? { - self as? DBXTeamLogAssetLogInfoFolder + return self as? DBXTeamLogAssetLogInfoFolder } @objc public var asPaperDocument: DBXTeamLogAssetLogInfoPaperDocument? { - self as? DBXTeamLogAssetLogInfoPaperDocument + return self as? DBXTeamLogAssetLogInfoPaperDocument } @objc public var asPaperFolder: DBXTeamLogAssetLogInfoPaperFolder? { - self as? DBXTeamLogAssetLogInfoPaperFolder + return self as? DBXTeamLogAssetLogInfoPaperFolder } @objc public var asShowcaseDocument: DBXTeamLogAssetLogInfoShowcaseDocument? { - self as? DBXTeamLogAssetLogInfoShowcaseDocument + return self as? DBXTeamLogAssetLogInfoShowcaseDocument } @objc public var asOther: DBXTeamLogAssetLogInfoOther? { - self as? DBXTeamLogAssetLogInfoOther + return self as? DBXTeamLogAssetLogInfoOther } } @@ -2997,7 +3405,7 @@ public class DBXTeamLogAssetLogInfoFile: DBXTeamLogAssetLogInfo { @objc public init(_ arg: DBXTeamLogFileLogInfo) { - self.file = arg + file = arg let swift = TeamLog.AssetLogInfo.file(arg.subSwift) super.init(swift: swift) } @@ -3011,7 +3419,7 @@ public class DBXTeamLogAssetLogInfoFolder: DBXTeamLogAssetLogInfo { @objc public init(_ arg: DBXTeamLogFolderLogInfo) { - self.folder = arg + folder = arg let swift = TeamLog.AssetLogInfo.folder(arg.subSwift) super.init(swift: swift) } @@ -3025,7 +3433,7 @@ public class DBXTeamLogAssetLogInfoPaperDocument: DBXTeamLogAssetLogInfo { @objc public init(_ arg: DBXTeamLogPaperDocumentLogInfo) { - self.paperDocument = arg + paperDocument = arg let swift = TeamLog.AssetLogInfo.paperDocument(arg.swift) super.init(swift: swift) } @@ -3039,7 +3447,7 @@ public class DBXTeamLogAssetLogInfoPaperFolder: DBXTeamLogAssetLogInfo { @objc public init(_ arg: DBXTeamLogPaperFolderLogInfo) { - self.paperFolder = arg + paperFolder = arg let swift = TeamLog.AssetLogInfo.paperFolder(arg.swift) super.init(swift: swift) } @@ -3053,7 +3461,7 @@ public class DBXTeamLogAssetLogInfoShowcaseDocument: DBXTeamLogAssetLogInfo { @objc public init(_ arg: DBXTeamLogShowcaseDocumentLogInfo) { - self.showcaseDocument = arg + showcaseDocument = arg let swift = TeamLog.AssetLogInfo.showcaseDocument(arg.swift) super.init(swift: swift) } @@ -3072,12 +3480,14 @@ public class DBXTeamLogAssetLogInfoOther: DBXTeamLogAssetLogInfo { /// Invited members to activate Backup. @objc public class DBXTeamLogBackupAdminInvitationSentDetails: NSObject { + let swift: TeamLog.BackupAdminInvitationSentDetails public init(swift: TeamLog.BackupAdminInvitationSentDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -3100,6 +3510,7 @@ public class DBXTeamLogBackupAdminInvitationSentType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -3107,12 +3518,14 @@ public class DBXTeamLogBackupAdminInvitationSentType: NSObject { /// Opened Backup invite. @objc public class DBXTeamLogBackupInvitationOpenedDetails: NSObject { + let swift: TeamLog.BackupInvitationOpenedDetails public init(swift: TeamLog.BackupInvitationOpenedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -3135,6 +3548,7 @@ public class DBXTeamLogBackupInvitationOpenedType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -3164,17 +3578,17 @@ public class DBXTeamLogBackupStatus: NSObject { @objc public var asDisabled: DBXTeamLogBackupStatusDisabled? { - self as? DBXTeamLogBackupStatusDisabled + return self as? DBXTeamLogBackupStatusDisabled } @objc public var asEnabled: DBXTeamLogBackupStatusEnabled? { - self as? DBXTeamLogBackupStatusEnabled + return self as? DBXTeamLogBackupStatusEnabled } @objc public var asOther: DBXTeamLogBackupStatusOther? { - self as? DBXTeamLogBackupStatusOther + return self as? DBXTeamLogBackupStatusOther } } @@ -3232,6 +3646,7 @@ public class DBXTeamLogBinderAddPageDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -3254,6 +3669,7 @@ public class DBXTeamLogBinderAddPageType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -3282,6 +3698,7 @@ public class DBXTeamLogBinderAddSectionDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -3304,6 +3721,7 @@ public class DBXTeamLogBinderAddSectionType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -3332,6 +3750,7 @@ public class DBXTeamLogBinderRemovePageDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -3354,6 +3773,7 @@ public class DBXTeamLogBinderRemovePageType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -3382,6 +3802,7 @@ public class DBXTeamLogBinderRemoveSectionDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -3404,6 +3825,7 @@ public class DBXTeamLogBinderRemoveSectionType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -3426,12 +3848,7 @@ public class DBXTeamLogBinderRenamePageDetails: NSObject { @objc public init(eventUuid: String, docTitle: String, binderItemName: String, previousBinderItemName: String?) { - self.swift = TeamLog.BinderRenamePageDetails( - eventUuid: eventUuid, - docTitle: docTitle, - binderItemName: binderItemName, - previousBinderItemName: previousBinderItemName - ) + self.swift = TeamLog.BinderRenamePageDetails(eventUuid: eventUuid, docTitle: docTitle, binderItemName: binderItemName, previousBinderItemName: previousBinderItemName) } let swift: TeamLog.BinderRenamePageDetails @@ -3440,6 +3857,7 @@ public class DBXTeamLogBinderRenamePageDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -3462,6 +3880,7 @@ public class DBXTeamLogBinderRenamePageType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -3484,12 +3903,7 @@ public class DBXTeamLogBinderRenameSectionDetails: NSObject { @objc public init(eventUuid: String, docTitle: String, binderItemName: String, previousBinderItemName: String?) { - self.swift = TeamLog.BinderRenameSectionDetails( - eventUuid: eventUuid, - docTitle: docTitle, - binderItemName: binderItemName, - previousBinderItemName: previousBinderItemName - ) + self.swift = TeamLog.BinderRenameSectionDetails(eventUuid: eventUuid, docTitle: docTitle, binderItemName: binderItemName, previousBinderItemName: previousBinderItemName) } let swift: TeamLog.BinderRenameSectionDetails @@ -3498,6 +3912,7 @@ public class DBXTeamLogBinderRenameSectionDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -3520,6 +3935,7 @@ public class DBXTeamLogBinderRenameSectionType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -3548,6 +3964,7 @@ public class DBXTeamLogBinderReorderPageDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -3570,6 +3987,7 @@ public class DBXTeamLogBinderReorderPageType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -3598,6 +4016,7 @@ public class DBXTeamLogBinderReorderSectionDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -3620,6 +4039,7 @@ public class DBXTeamLogBinderReorderSectionType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -3649,17 +4069,17 @@ public class DBXTeamLogCameraUploadsPolicy: NSObject { @objc public var asDisabled: DBXTeamLogCameraUploadsPolicyDisabled? { - self as? DBXTeamLogCameraUploadsPolicyDisabled + return self as? DBXTeamLogCameraUploadsPolicyDisabled } @objc public var asEnabled: DBXTeamLogCameraUploadsPolicyEnabled? { - self as? DBXTeamLogCameraUploadsPolicyEnabled + return self as? DBXTeamLogCameraUploadsPolicyEnabled } @objc public var asOther: DBXTeamLogCameraUploadsPolicyOther? { - self as? DBXTeamLogCameraUploadsPolicyOther + return self as? DBXTeamLogCameraUploadsPolicyOther } } @@ -3714,6 +4134,7 @@ public class DBXTeamLogCameraUploadsPolicyChangedDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -3736,6 +4157,125 @@ public class DBXTeamLogCameraUploadsPolicyChangedType: NSObject { self.swift = swift } + + @objc + public override var description: String { swift.description } +} + +/// Policy for deciding whether team users have access to the Capture team space +@objc +public class DBXTeamLogCaptureTeamSpacePolicy: NSObject { + let swift: TeamLog.CaptureTeamSpacePolicy + + public init(swift: TeamLog.CaptureTeamSpacePolicy) { + self.swift = swift + } + + public static func factory(swift: TeamLog.CaptureTeamSpacePolicy) -> DBXTeamLogCaptureTeamSpacePolicy { + switch swift { + case .disabled: + return DBXTeamLogCaptureTeamSpacePolicyDisabled() + case .enabled: + return DBXTeamLogCaptureTeamSpacePolicyEnabled() + case .other: + return DBXTeamLogCaptureTeamSpacePolicyOther() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asDisabled: DBXTeamLogCaptureTeamSpacePolicyDisabled? { + return self as? DBXTeamLogCaptureTeamSpacePolicyDisabled + } + + @objc + public var asEnabled: DBXTeamLogCaptureTeamSpacePolicyEnabled? { + return self as? DBXTeamLogCaptureTeamSpacePolicyEnabled + } + + @objc + public var asOther: DBXTeamLogCaptureTeamSpacePolicyOther? { + return self as? DBXTeamLogCaptureTeamSpacePolicyOther + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogCaptureTeamSpacePolicyDisabled: DBXTeamLogCaptureTeamSpacePolicy { + @objc + public init() { + let swift = TeamLog.CaptureTeamSpacePolicy.disabled + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogCaptureTeamSpacePolicyEnabled: DBXTeamLogCaptureTeamSpacePolicy { + @objc + public init() { + let swift = TeamLog.CaptureTeamSpacePolicy.enabled + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogCaptureTeamSpacePolicyOther: DBXTeamLogCaptureTeamSpacePolicy { + @objc + public init() { + let swift = TeamLog.CaptureTeamSpacePolicy.other + super.init(swift: swift) + } +} + +/// Changed Capture team space policy for team. +@objc +public class DBXTeamLogCaptureTeamSpacePolicyChangedDetails: NSObject { + /// To. + @objc + public var newValue: DBXTeamLogCaptureTeamSpacePolicy { DBXTeamLogCaptureTeamSpacePolicy(swift: swift.newValue) } + /// From. + @objc + public var previousValue: DBXTeamLogCaptureTeamSpacePolicy { DBXTeamLogCaptureTeamSpacePolicy(swift: swift.previousValue) } + + @objc + public init(newValue: DBXTeamLogCaptureTeamSpacePolicy, previousValue: DBXTeamLogCaptureTeamSpacePolicy) { + self.swift = TeamLog.CaptureTeamSpacePolicyChangedDetails(newValue: newValue.swift, previousValue: previousValue.swift) + } + + let swift: TeamLog.CaptureTeamSpacePolicyChangedDetails + + public init(swift: TeamLog.CaptureTeamSpacePolicyChangedDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible CaptureTeamSpacePolicyChangedType struct +@objc +public class DBXTeamLogCaptureTeamSpacePolicyChangedType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.CaptureTeamSpacePolicyChangedType(description_: description_) + } + + let swift: TeamLog.CaptureTeamSpacePolicyChangedType + + public init(swift: TeamLog.CaptureTeamSpacePolicyChangedType) { + self.swift = swift + } + + @objc public override var description: String { swift.description } } @@ -3767,22 +4307,22 @@ public class DBXTeamLogCaptureTranscriptPolicy: NSObject { @objc public var asDefault_: DBXTeamLogCaptureTranscriptPolicyDefault_? { - self as? DBXTeamLogCaptureTranscriptPolicyDefault_ + return self as? DBXTeamLogCaptureTranscriptPolicyDefault_ } @objc public var asDisabled: DBXTeamLogCaptureTranscriptPolicyDisabled? { - self as? DBXTeamLogCaptureTranscriptPolicyDisabled + return self as? DBXTeamLogCaptureTranscriptPolicyDisabled } @objc public var asEnabled: DBXTeamLogCaptureTranscriptPolicyEnabled? { - self as? DBXTeamLogCaptureTranscriptPolicyEnabled + return self as? DBXTeamLogCaptureTranscriptPolicyEnabled } @objc public var asOther: DBXTeamLogCaptureTranscriptPolicyOther? { - self as? DBXTeamLogCaptureTranscriptPolicyOther + return self as? DBXTeamLogCaptureTranscriptPolicyOther } } @@ -3847,6 +4387,7 @@ public class DBXTeamLogCaptureTranscriptPolicyChangedDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -3869,6 +4410,7 @@ public class DBXTeamLogCaptureTranscriptPolicyChangedType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -3899,24 +4441,8 @@ public class DBXTeamLogCertificate: NSObject { public var commonName: String? { swift.commonName } @objc - public init( - subject: String, - issuer: String, - issueDate: String, - expirationDate: String, - serialNumber: String, - sha1Fingerprint: String, - commonName: String? - ) { - self.swift = TeamLog.Certificate( - subject: subject, - issuer: issuer, - issueDate: issueDate, - expirationDate: expirationDate, - serialNumber: serialNumber, - sha1Fingerprint: sha1Fingerprint, - commonName: commonName - ) + public init(subject: String, issuer: String, issueDate: String, expirationDate: String, serialNumber: String, sha1Fingerprint: String, commonName: String?) { + self.swift = TeamLog.Certificate(subject: subject, issuer: issuer, issueDate: issueDate, expirationDate: expirationDate, serialNumber: serialNumber, sha1Fingerprint: sha1Fingerprint, commonName: commonName) } let swift: TeamLog.Certificate @@ -3925,6 +4451,7 @@ public class DBXTeamLogCertificate: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -3955,17 +4482,17 @@ public class DBXTeamLogChangeLinkExpirationPolicy: NSObject { @objc public var asAllowed: DBXTeamLogChangeLinkExpirationPolicyAllowed? { - self as? DBXTeamLogChangeLinkExpirationPolicyAllowed + return self as? DBXTeamLogChangeLinkExpirationPolicyAllowed } @objc public var asNotAllowed: DBXTeamLogChangeLinkExpirationPolicyNotAllowed? { - self as? DBXTeamLogChangeLinkExpirationPolicyNotAllowed + return self as? DBXTeamLogChangeLinkExpirationPolicyNotAllowed } @objc public var asOther: DBXTeamLogChangeLinkExpirationPolicyOther? { - self as? DBXTeamLogChangeLinkExpirationPolicyOther + return self as? DBXTeamLogChangeLinkExpirationPolicyOther } } @@ -4023,6 +4550,7 @@ public class DBXTeamLogChangedEnterpriseAdminRoleDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -4045,6 +4573,7 @@ public class DBXTeamLogChangedEnterpriseAdminRoleType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -4066,18 +4595,8 @@ public class DBXTeamLogChangedEnterpriseConnectedTeamStatusDetails: NSObject { public var newValue: DBXTeamLogTrustedTeamsRequestState { DBXTeamLogTrustedTeamsRequestState(swift: swift.newValue) } @objc - public init( - action: DBXTeamLogFedHandshakeAction, - additionalInfo: DBXTeamLogFederationStatusChangeAdditionalInfo, - previousValue: DBXTeamLogTrustedTeamsRequestState, - newValue: DBXTeamLogTrustedTeamsRequestState - ) { - self.swift = TeamLog.ChangedEnterpriseConnectedTeamStatusDetails( - action: action.swift, - additionalInfo: additionalInfo.swift, - previousValue: previousValue.swift, - newValue: newValue.swift - ) + public init(action: DBXTeamLogFedHandshakeAction, additionalInfo: DBXTeamLogFederationStatusChangeAdditionalInfo, previousValue: DBXTeamLogTrustedTeamsRequestState, newValue: DBXTeamLogTrustedTeamsRequestState) { + self.swift = TeamLog.ChangedEnterpriseConnectedTeamStatusDetails(action: action.swift, additionalInfo: additionalInfo.swift, previousValue: previousValue.swift, newValue: newValue.swift) } let swift: TeamLog.ChangedEnterpriseConnectedTeamStatusDetails @@ -4086,6 +4605,7 @@ public class DBXTeamLogChangedEnterpriseConnectedTeamStatusDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -4108,6 +4628,7 @@ public class DBXTeamLogChangedEnterpriseConnectedTeamStatusType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -4126,16 +4647,8 @@ public class DBXTeamLogClassificationChangePolicyDetails: NSObject { public var classificationType: DBXTeamLogClassificationType { DBXTeamLogClassificationType(swift: swift.classificationType) } @objc - public init( - previousValue: DBXTeamLogClassificationPolicyEnumWrapper, - newValue: DBXTeamLogClassificationPolicyEnumWrapper, - classificationType: DBXTeamLogClassificationType - ) { - self.swift = TeamLog.ClassificationChangePolicyDetails( - previousValue: previousValue.swift, - newValue: newValue.swift, - classificationType: classificationType.swift - ) + public init(previousValue: DBXTeamLogClassificationPolicyEnumWrapper, newValue: DBXTeamLogClassificationPolicyEnumWrapper, classificationType: DBXTeamLogClassificationType) { + self.swift = TeamLog.ClassificationChangePolicyDetails(previousValue: previousValue.swift, newValue: newValue.swift, classificationType: classificationType.swift) } let swift: TeamLog.ClassificationChangePolicyDetails @@ -4144,6 +4657,7 @@ public class DBXTeamLogClassificationChangePolicyDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -4166,6 +4680,7 @@ public class DBXTeamLogClassificationChangePolicyType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -4173,12 +4688,14 @@ public class DBXTeamLogClassificationChangePolicyType: NSObject { /// Created Classification report. @objc public class DBXTeamLogClassificationCreateReportDetails: NSObject { + let swift: TeamLog.ClassificationCreateReportDetails public init(swift: TeamLog.ClassificationCreateReportDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -4201,6 +4718,7 @@ public class DBXTeamLogClassificationCreateReportFailDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -4223,6 +4741,7 @@ public class DBXTeamLogClassificationCreateReportFailType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -4245,6 +4764,7 @@ public class DBXTeamLogClassificationCreateReportType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -4278,27 +4798,27 @@ public class DBXTeamLogClassificationPolicyEnumWrapper: NSObject { @objc public var asDisabled: DBXTeamLogClassificationPolicyEnumWrapperDisabled? { - self as? DBXTeamLogClassificationPolicyEnumWrapperDisabled + return self as? DBXTeamLogClassificationPolicyEnumWrapperDisabled } @objc public var asEnabled: DBXTeamLogClassificationPolicyEnumWrapperEnabled? { - self as? DBXTeamLogClassificationPolicyEnumWrapperEnabled + return self as? DBXTeamLogClassificationPolicyEnumWrapperEnabled } @objc public var asMemberAndTeamFolders: DBXTeamLogClassificationPolicyEnumWrapperMemberAndTeamFolders? { - self as? DBXTeamLogClassificationPolicyEnumWrapperMemberAndTeamFolders + return self as? DBXTeamLogClassificationPolicyEnumWrapperMemberAndTeamFolders } @objc public var asTeamFolders: DBXTeamLogClassificationPolicyEnumWrapperTeamFolders? { - self as? DBXTeamLogClassificationPolicyEnumWrapperTeamFolders + return self as? DBXTeamLogClassificationPolicyEnumWrapperTeamFolders } @objc public var asOther: DBXTeamLogClassificationPolicyEnumWrapperOther? { - self as? DBXTeamLogClassificationPolicyEnumWrapperOther + return self as? DBXTeamLogClassificationPolicyEnumWrapperOther } } @@ -4377,17 +4897,17 @@ public class DBXTeamLogClassificationType: NSObject { @objc public var asPersonalInformation: DBXTeamLogClassificationTypePersonalInformation? { - self as? DBXTeamLogClassificationTypePersonalInformation + return self as? DBXTeamLogClassificationTypePersonalInformation } @objc public var asPii: DBXTeamLogClassificationTypePii? { - self as? DBXTeamLogClassificationTypePii + return self as? DBXTeamLogClassificationTypePii } @objc public var asOther: DBXTeamLogClassificationTypeOther? { - self as? DBXTeamLogClassificationTypeOther + return self as? DBXTeamLogClassificationTypeOther } } @@ -4439,6 +4959,7 @@ public class DBXTeamLogCollectionShareDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -4461,6 +4982,7 @@ public class DBXTeamLogCollectionShareType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -4492,22 +5014,22 @@ public class DBXTeamLogComputerBackupPolicy: NSObject { @objc public var asDefault_: DBXTeamLogComputerBackupPolicyDefault_? { - self as? DBXTeamLogComputerBackupPolicyDefault_ + return self as? DBXTeamLogComputerBackupPolicyDefault_ } @objc public var asDisabled: DBXTeamLogComputerBackupPolicyDisabled? { - self as? DBXTeamLogComputerBackupPolicyDisabled + return self as? DBXTeamLogComputerBackupPolicyDisabled } @objc public var asEnabled: DBXTeamLogComputerBackupPolicyEnabled? { - self as? DBXTeamLogComputerBackupPolicyEnabled + return self as? DBXTeamLogComputerBackupPolicyEnabled } @objc public var asOther: DBXTeamLogComputerBackupPolicyOther? { - self as? DBXTeamLogComputerBackupPolicyOther + return self as? DBXTeamLogComputerBackupPolicyOther } } @@ -4572,6 +5094,7 @@ public class DBXTeamLogComputerBackupPolicyChangedDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -4594,6 +5117,7 @@ public class DBXTeamLogComputerBackupPolicyChangedType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -4616,6 +5140,7 @@ public class DBXTeamLogConnectedTeamName: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -4641,6 +5166,7 @@ public class DBXTeamLogContentAdministrationPolicyChangedDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -4663,10 +5189,152 @@ public class DBXTeamLogContentAdministrationPolicyChangedType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } +/// Changed content deletion protection policy for team. +@objc +public class DBXTeamLogContentDeletionProtectionChangePolicyDetails: NSObject { + /// New content deletion protection policy. + @objc + public var newValue: DBXTeamLogContentDeletionProtectionPolicy { DBXTeamLogContentDeletionProtectionPolicy(swift: swift.newValue) } + /// New threshold value in bytes (only present when new policy is on_above_threshold). + @objc + public var newThresholdBytes: NSNumber? { swift.newThresholdBytes as NSNumber? } + /// Previous content deletion protection policy. Might be missing due to historical data gap. + @objc + public var previousValue: DBXTeamLogContentDeletionProtectionPolicy? { guard let swift = swift.previousValue else { return nil }; return DBXTeamLogContentDeletionProtectionPolicy(swift: swift) } + /// Previous threshold value in bytes (only present when previous policy was on_above_threshold). + @objc + public var previousThresholdBytes: NSNumber? { swift.previousThresholdBytes as NSNumber? } + + @objc + public init(newValue: DBXTeamLogContentDeletionProtectionPolicy, newThresholdBytes: NSNumber?, previousValue: DBXTeamLogContentDeletionProtectionPolicy?, previousThresholdBytes: NSNumber?) { + self.swift = TeamLog.ContentDeletionProtectionChangePolicyDetails(newValue: newValue.swift, newThresholdBytes: newThresholdBytes?.uint64Value, previousValue: previousValue?.swift, previousThresholdBytes: previousThresholdBytes?.uint64Value) + } + + let swift: TeamLog.ContentDeletionProtectionChangePolicyDetails + + public init(swift: TeamLog.ContentDeletionProtectionChangePolicyDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible ContentDeletionProtectionChangePolicyType struct +@objc +public class DBXTeamLogContentDeletionProtectionChangePolicyType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.ContentDeletionProtectionChangePolicyType(description_: description_) + } + + let swift: TeamLog.ContentDeletionProtectionChangePolicyType + + public init(swift: TeamLog.ContentDeletionProtectionChangePolicyType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Content deletion protection policy +@objc +public class DBXTeamLogContentDeletionProtectionPolicy: NSObject { + let swift: TeamLog.ContentDeletionProtectionPolicy + + public init(swift: TeamLog.ContentDeletionProtectionPolicy) { + self.swift = swift + } + + public static func factory(swift: TeamLog.ContentDeletionProtectionPolicy) -> DBXTeamLogContentDeletionProtectionPolicy { + switch swift { + case .off: + return DBXTeamLogContentDeletionProtectionPolicyOff() + case .onAboveThreshold: + return DBXTeamLogContentDeletionProtectionPolicyOnAboveThreshold() + case .onAllFiles: + return DBXTeamLogContentDeletionProtectionPolicyOnAllFiles() + case .other: + return DBXTeamLogContentDeletionProtectionPolicyOther() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asOff: DBXTeamLogContentDeletionProtectionPolicyOff? { + return self as? DBXTeamLogContentDeletionProtectionPolicyOff + } + + @objc + public var asOnAboveThreshold: DBXTeamLogContentDeletionProtectionPolicyOnAboveThreshold? { + return self as? DBXTeamLogContentDeletionProtectionPolicyOnAboveThreshold + } + + @objc + public var asOnAllFiles: DBXTeamLogContentDeletionProtectionPolicyOnAllFiles? { + return self as? DBXTeamLogContentDeletionProtectionPolicyOnAllFiles + } + + @objc + public var asOther: DBXTeamLogContentDeletionProtectionPolicyOther? { + return self as? DBXTeamLogContentDeletionProtectionPolicyOther + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogContentDeletionProtectionPolicyOff: DBXTeamLogContentDeletionProtectionPolicy { + @objc + public init() { + let swift = TeamLog.ContentDeletionProtectionPolicy.off + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogContentDeletionProtectionPolicyOnAboveThreshold: DBXTeamLogContentDeletionProtectionPolicy { + @objc + public init() { + let swift = TeamLog.ContentDeletionProtectionPolicy.onAboveThreshold + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogContentDeletionProtectionPolicyOnAllFiles: DBXTeamLogContentDeletionProtectionPolicy { + @objc + public init() { + let swift = TeamLog.ContentDeletionProtectionPolicy.onAllFiles + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogContentDeletionProtectionPolicyOther: DBXTeamLogContentDeletionProtectionPolicy { + @objc + public init() { + let swift = TeamLog.ContentDeletionProtectionPolicy.other + super.init(swift: swift) + } +} + /// Policy for pemanent content deletion @objc public class DBXTeamLogContentPermanentDeletePolicy: NSObject { @@ -4692,17 +5360,17 @@ public class DBXTeamLogContentPermanentDeletePolicy: NSObject { @objc public var asDisabled: DBXTeamLogContentPermanentDeletePolicyDisabled? { - self as? DBXTeamLogContentPermanentDeletePolicyDisabled + return self as? DBXTeamLogContentPermanentDeletePolicyDisabled } @objc public var asEnabled: DBXTeamLogContentPermanentDeletePolicyEnabled? { - self as? DBXTeamLogContentPermanentDeletePolicyEnabled + return self as? DBXTeamLogContentPermanentDeletePolicyEnabled } @objc public var asOther: DBXTeamLogContentPermanentDeletePolicyOther? { - self as? DBXTeamLogContentPermanentDeletePolicyOther + return self as? DBXTeamLogContentPermanentDeletePolicyOther } } @@ -4773,37 +5441,37 @@ public class DBXTeamLogContextLogInfo: NSObject { @objc public var asAnonymous: DBXTeamLogContextLogInfoAnonymous? { - self as? DBXTeamLogContextLogInfoAnonymous + return self as? DBXTeamLogContextLogInfoAnonymous } @objc public var asNonTeamMember: DBXTeamLogContextLogInfoNonTeamMember? { - self as? DBXTeamLogContextLogInfoNonTeamMember + return self as? DBXTeamLogContextLogInfoNonTeamMember } @objc public var asOrganizationTeam: DBXTeamLogContextLogInfoOrganizationTeam? { - self as? DBXTeamLogContextLogInfoOrganizationTeam + return self as? DBXTeamLogContextLogInfoOrganizationTeam } @objc public var asTeam: DBXTeamLogContextLogInfoTeam? { - self as? DBXTeamLogContextLogInfoTeam + return self as? DBXTeamLogContextLogInfoTeam } @objc public var asTeamMember: DBXTeamLogContextLogInfoTeamMember? { - self as? DBXTeamLogContextLogInfoTeamMember + return self as? DBXTeamLogContextLogInfoTeamMember } @objc public var asTrustedNonTeamMember: DBXTeamLogContextLogInfoTrustedNonTeamMember? { - self as? DBXTeamLogContextLogInfoTrustedNonTeamMember + return self as? DBXTeamLogContextLogInfoTrustedNonTeamMember } @objc public var asOther: DBXTeamLogContextLogInfoOther? { - self as? DBXTeamLogContextLogInfoOther + return self as? DBXTeamLogContextLogInfoOther } } @@ -4825,7 +5493,7 @@ public class DBXTeamLogContextLogInfoNonTeamMember: DBXTeamLogContextLogInfo { @objc public init(_ arg: DBXTeamLogNonTeamMemberLogInfo) { - self.nonTeamMember = arg + nonTeamMember = arg let swift = TeamLog.ContextLogInfo.nonTeamMember(arg.subSwift) super.init(swift: swift) } @@ -4839,7 +5507,7 @@ public class DBXTeamLogContextLogInfoOrganizationTeam: DBXTeamLogContextLogInfo @objc public init(_ arg: DBXTeamLogTeamLogInfo) { - self.organizationTeam = arg + organizationTeam = arg let swift = TeamLog.ContextLogInfo.organizationTeam(arg.swift) super.init(swift: swift) } @@ -4863,7 +5531,7 @@ public class DBXTeamLogContextLogInfoTeamMember: DBXTeamLogContextLogInfo { @objc public init(_ arg: DBXTeamLogTeamMemberLogInfo) { - self.teamMember = arg + teamMember = arg let swift = TeamLog.ContextLogInfo.teamMember(arg.subSwift) super.init(swift: swift) } @@ -4877,7 +5545,7 @@ public class DBXTeamLogContextLogInfoTrustedNonTeamMember: DBXTeamLogContextLogI @objc public init(_ arg: DBXTeamLogTrustedNonTeamMemberLogInfo) { - self.trustedNonTeamMember = arg + trustedNonTeamMember = arg let swift = TeamLog.ContextLogInfo.trustedNonTeamMember(arg.subSwift) super.init(swift: swift) } @@ -4896,12 +5564,14 @@ public class DBXTeamLogContextLogInfoOther: DBXTeamLogContextLogInfo { /// Created folders. @objc public class DBXTeamLogCreateFolderDetails: NSObject { + let swift: TeamLog.CreateFolderDetails public init(swift: TeamLog.CreateFolderDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -4924,6 +5594,7 @@ public class DBXTeamLogCreateFolderType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -4949,6 +5620,7 @@ public class DBXTeamLogCreateTeamInviteLinkDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -4971,801 +5643,579 @@ public class DBXTeamLogCreateTeamInviteLinkType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Set restrictions on data center locations where team data resides. +/// Added a comment to a stack. @objc -public class DBXTeamLogDataPlacementRestrictionChangePolicyDetails: NSObject { - /// Previous placement restriction. +public class DBXTeamLogDashAddedCommentToStackDetails: NSObject { + /// The name of the stack where the comment exists. @objc - public var previousValue: DBXTeamLogPlacementRestriction { DBXTeamLogPlacementRestriction(swift: swift.previousValue) } - /// New placement restriction. + public var stackName: String { swift.stackName } + /// The name of the stack item that the comment is tied to. @objc - public var newValue: DBXTeamLogPlacementRestriction { DBXTeamLogPlacementRestriction(swift: swift.newValue) } + public var stackItemName: String { swift.stackItemName } + /// The text of the comment. + @objc + public var commentText: String { swift.commentText } + /// The type of stack backend. + @objc + public var stackType: DBXTeamLogDashStackType? { guard let swift = swift.stackType else { return nil }; return DBXTeamLogDashStackType(swift: swift) } @objc - public init(previousValue: DBXTeamLogPlacementRestriction, newValue: DBXTeamLogPlacementRestriction) { - self.swift = TeamLog.DataPlacementRestrictionChangePolicyDetails(previousValue: previousValue.swift, newValue: newValue.swift) + public init(stackName: String, stackItemName: String, commentText: String, stackType: DBXTeamLogDashStackType?) { + self.swift = TeamLog.DashAddedCommentToStackDetails(stackName: stackName, stackItemName: stackItemName, commentText: commentText, stackType: stackType?.swift) } - let swift: TeamLog.DataPlacementRestrictionChangePolicyDetails + let swift: TeamLog.DashAddedCommentToStackDetails - public init(swift: TeamLog.DataPlacementRestrictionChangePolicyDetails) { + public init(swift: TeamLog.DashAddedCommentToStackDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible DataPlacementRestrictionChangePolicyType struct +/// Objective-C compatible DashAddedCommentToStackType struct @objc -public class DBXTeamLogDataPlacementRestrictionChangePolicyType: NSObject { +public class DBXTeamLogDashAddedCommentToStackType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.DataPlacementRestrictionChangePolicyType(description_: description_) + self.swift = TeamLog.DashAddedCommentToStackType(description_: description_) } - let swift: TeamLog.DataPlacementRestrictionChangePolicyType + let swift: TeamLog.DashAddedCommentToStackType - public init(swift: TeamLog.DataPlacementRestrictionChangePolicyType) { + public init(swift: TeamLog.DashAddedCommentToStackType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Completed restrictions on data center locations where team data resides. +/// Connected to a user connector. @objc -public class DBXTeamLogDataPlacementRestrictionSatisfyPolicyDetails: NSObject { - /// Placement restriction. +public class DBXTeamLogDashAddedConnectorDetails: NSObject { + /// The name of the Connector. @objc - public var placementRestriction: DBXTeamLogPlacementRestriction { DBXTeamLogPlacementRestriction(swift: swift.placementRestriction) } + public var connectorName: String { swift.connectorName } + /// The status of the Connector. + @objc + public var connectorStatus: DBXTeamLogDashConnectorStatus { DBXTeamLogDashConnectorStatus(swift: swift.connectorStatus) } @objc - public init(placementRestriction: DBXTeamLogPlacementRestriction) { - self.swift = TeamLog.DataPlacementRestrictionSatisfyPolicyDetails(placementRestriction: placementRestriction.swift) + public init(connectorName: String, connectorStatus: DBXTeamLogDashConnectorStatus) { + self.swift = TeamLog.DashAddedConnectorDetails(connectorName: connectorName, connectorStatus: connectorStatus.swift) } - let swift: TeamLog.DataPlacementRestrictionSatisfyPolicyDetails + let swift: TeamLog.DashAddedConnectorDetails - public init(swift: TeamLog.DataPlacementRestrictionSatisfyPolicyDetails) { + public init(swift: TeamLog.DashAddedConnectorDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible DataPlacementRestrictionSatisfyPolicyType struct +/// Objective-C compatible DashAddedConnectorType struct @objc -public class DBXTeamLogDataPlacementRestrictionSatisfyPolicyType: NSObject { +public class DBXTeamLogDashAddedConnectorType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.DataPlacementRestrictionSatisfyPolicyType(description_: description_) + self.swift = TeamLog.DashAddedConnectorType(description_: description_) } - let swift: TeamLog.DataPlacementRestrictionSatisfyPolicyType + let swift: TeamLog.DashAddedConnectorType - public init(swift: TeamLog.DataPlacementRestrictionSatisfyPolicyType) { + public init(swift: TeamLog.DashAddedConnectorType) { self.swift = swift } - @objc - public override var description: String { swift.description } -} - -/// Requested data residency migration for team data. -@objc -public class DBXTeamLogDataResidencyMigrationRequestSuccessfulDetails: NSObject { - let swift: TeamLog.DataResidencyMigrationRequestSuccessfulDetails - - public init(swift: TeamLog.DataResidencyMigrationRequestSuccessfulDetails) { - self.swift = swift - } @objc public override var description: String { swift.description } } -/// Objective-C compatible DataResidencyMigrationRequestSuccessfulType struct +/// Added a link to a stack. @objc -public class DBXTeamLogDataResidencyMigrationRequestSuccessfulType: NSObject { - /// (no description) +public class DBXTeamLogDashAddedLinkToStackDetails: NSObject { + /// The name of the stack. @objc - public var description_: String { swift.description_ } + public var stackName: String { swift.stackName } + /// The link to the item in the stack. + @objc + public var stackItemLink: String { swift.stackItemLink } + /// The type of stack backend. + @objc + public var stackType: DBXTeamLogDashStackType? { guard let swift = swift.stackType else { return nil }; return DBXTeamLogDashStackType(swift: swift) } @objc - public init(description_: String) { - self.swift = TeamLog.DataResidencyMigrationRequestSuccessfulType(description_: description_) + public init(stackName: String, stackItemLink: String, stackType: DBXTeamLogDashStackType?) { + self.swift = TeamLog.DashAddedLinkToStackDetails(stackName: stackName, stackItemLink: stackItemLink, stackType: stackType?.swift) } - let swift: TeamLog.DataResidencyMigrationRequestSuccessfulType + let swift: TeamLog.DashAddedLinkToStackDetails - public init(swift: TeamLog.DataResidencyMigrationRequestSuccessfulType) { + public init(swift: TeamLog.DashAddedLinkToStackDetails) { self.swift = swift } - @objc - public override var description: String { swift.description } -} - -/// Request for data residency migration for team data has failed. -@objc -public class DBXTeamLogDataResidencyMigrationRequestUnsuccessfulDetails: NSObject { - let swift: TeamLog.DataResidencyMigrationRequestUnsuccessfulDetails - - public init(swift: TeamLog.DataResidencyMigrationRequestUnsuccessfulDetails) { - self.swift = swift - } @objc public override var description: String { swift.description } } -/// Objective-C compatible DataResidencyMigrationRequestUnsuccessfulType struct +/// Objective-C compatible DashAddedLinkToStackType struct @objc -public class DBXTeamLogDataResidencyMigrationRequestUnsuccessfulType: NSObject { +public class DBXTeamLogDashAddedLinkToStackType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.DataResidencyMigrationRequestUnsuccessfulType(description_: description_) + self.swift = TeamLog.DashAddedLinkToStackType(description_: description_) } - let swift: TeamLog.DataResidencyMigrationRequestUnsuccessfulType + let swift: TeamLog.DashAddedLinkToStackType - public init(swift: TeamLog.DataResidencyMigrationRequestUnsuccessfulType) { + public init(swift: TeamLog.DashAddedLinkToStackType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Policy for the default number of days until an externally shared link expires +/// Admin added an email domain to the team allowlist. @objc -public class DBXTeamLogDefaultLinkExpirationDaysPolicy: NSObject { - let swift: TeamLog.DefaultLinkExpirationDaysPolicy - - public init(swift: TeamLog.DefaultLinkExpirationDaysPolicy) { - self.swift = swift - } - - public static func factory(swift: TeamLog.DefaultLinkExpirationDaysPolicy) -> DBXTeamLogDefaultLinkExpirationDaysPolicy { - switch swift { - case .day1: - return DBXTeamLogDefaultLinkExpirationDaysPolicyDay1() - case .day180: - return DBXTeamLogDefaultLinkExpirationDaysPolicyDay180() - case .day3: - return DBXTeamLogDefaultLinkExpirationDaysPolicyDay3() - case .day30: - return DBXTeamLogDefaultLinkExpirationDaysPolicyDay30() - case .day7: - return DBXTeamLogDefaultLinkExpirationDaysPolicyDay7() - case .day90: - return DBXTeamLogDefaultLinkExpirationDaysPolicyDay90() - case .none: - return DBXTeamLogDefaultLinkExpirationDaysPolicyNone() - case .year1: - return DBXTeamLogDefaultLinkExpirationDaysPolicyYear1() - case .other: - return DBXTeamLogDefaultLinkExpirationDaysPolicyOther() - } - } - - @objc - public override var description: String { swift.description } - - @objc - public var asDay1: DBXTeamLogDefaultLinkExpirationDaysPolicyDay1? { - self as? DBXTeamLogDefaultLinkExpirationDaysPolicyDay1 - } - - @objc - public var asDay180: DBXTeamLogDefaultLinkExpirationDaysPolicyDay180? { - self as? DBXTeamLogDefaultLinkExpirationDaysPolicyDay180 - } - - @objc - public var asDay3: DBXTeamLogDefaultLinkExpirationDaysPolicyDay3? { - self as? DBXTeamLogDefaultLinkExpirationDaysPolicyDay3 - } - - @objc - public var asDay30: DBXTeamLogDefaultLinkExpirationDaysPolicyDay30? { - self as? DBXTeamLogDefaultLinkExpirationDaysPolicyDay30 - } - - @objc - public var asDay7: DBXTeamLogDefaultLinkExpirationDaysPolicyDay7? { - self as? DBXTeamLogDefaultLinkExpirationDaysPolicyDay7 - } - +public class DBXTeamLogDashAddedTeamEmailDomainAllowlistDetails: NSObject { + /// The email domain that gets added/removed from the team allowlist. @objc - public var asDay90: DBXTeamLogDefaultLinkExpirationDaysPolicyDay90? { - self as? DBXTeamLogDefaultLinkExpirationDaysPolicyDay90 - } + public var emailDomain: String { swift.emailDomain } @objc - public var asNone: DBXTeamLogDefaultLinkExpirationDaysPolicyNone? { - self as? DBXTeamLogDefaultLinkExpirationDaysPolicyNone + public init(emailDomain: String) { + self.swift = TeamLog.DashAddedTeamEmailDomainAllowlistDetails(emailDomain: emailDomain) } - @objc - public var asYear1: DBXTeamLogDefaultLinkExpirationDaysPolicyYear1? { - self as? DBXTeamLogDefaultLinkExpirationDaysPolicyYear1 - } + let swift: TeamLog.DashAddedTeamEmailDomainAllowlistDetails - @objc - public var asOther: DBXTeamLogDefaultLinkExpirationDaysPolicyOther? { - self as? DBXTeamLogDefaultLinkExpirationDaysPolicyOther + public init(swift: TeamLog.DashAddedTeamEmailDomainAllowlistDetails) { + self.swift = swift } -} -/// An unspecified error. -@objc -public class DBXTeamLogDefaultLinkExpirationDaysPolicyDay1: DBXTeamLogDefaultLinkExpirationDaysPolicy { - @objc - public init() { - let swift = TeamLog.DefaultLinkExpirationDaysPolicy.day1 - super.init(swift: swift) - } -} -/// An unspecified error. -@objc -public class DBXTeamLogDefaultLinkExpirationDaysPolicyDay180: DBXTeamLogDefaultLinkExpirationDaysPolicy { @objc - public init() { - let swift = TeamLog.DefaultLinkExpirationDaysPolicy.day180 - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// An unspecified error. +/// Objective-C compatible DashAddedTeamEmailDomainAllowlistType struct @objc -public class DBXTeamLogDefaultLinkExpirationDaysPolicyDay3: DBXTeamLogDefaultLinkExpirationDaysPolicy { +public class DBXTeamLogDashAddedTeamEmailDomainAllowlistType: NSObject { + /// (no description) @objc - public init() { - let swift = TeamLog.DefaultLinkExpirationDaysPolicy.day3 - super.init(swift: swift) - } -} + public var description_: String { swift.description_ } -/// An unspecified error. -@objc -public class DBXTeamLogDefaultLinkExpirationDaysPolicyDay30: DBXTeamLogDefaultLinkExpirationDaysPolicy { @objc - public init() { - let swift = TeamLog.DefaultLinkExpirationDaysPolicy.day30 - super.init(swift: swift) + public init(description_: String) { + self.swift = TeamLog.DashAddedTeamEmailDomainAllowlistType(description_: description_) } -} -/// An unspecified error. -@objc -public class DBXTeamLogDefaultLinkExpirationDaysPolicyDay7: DBXTeamLogDefaultLinkExpirationDaysPolicy { - @objc - public init() { - let swift = TeamLog.DefaultLinkExpirationDaysPolicy.day7 - super.init(swift: swift) - } -} + let swift: TeamLog.DashAddedTeamEmailDomainAllowlistType -/// An unspecified error. -@objc -public class DBXTeamLogDefaultLinkExpirationDaysPolicyDay90: DBXTeamLogDefaultLinkExpirationDaysPolicy { - @objc - public init() { - let swift = TeamLog.DefaultLinkExpirationDaysPolicy.day90 - super.init(swift: swift) + public init(swift: TeamLog.DashAddedTeamEmailDomainAllowlistType) { + self.swift = swift } -} -/// An unspecified error. -@objc -public class DBXTeamLogDefaultLinkExpirationDaysPolicyNone: DBXTeamLogDefaultLinkExpirationDaysPolicy { - @objc - public init() { - let swift = TeamLog.DefaultLinkExpirationDaysPolicy.none - super.init(swift: swift) - } -} -/// An unspecified error. -@objc -public class DBXTeamLogDefaultLinkExpirationDaysPolicyYear1: DBXTeamLogDefaultLinkExpirationDaysPolicy { @objc - public init() { - let swift = TeamLog.DefaultLinkExpirationDaysPolicy.year1 - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// An unspecified error. +/// Admin added an admin connector. @objc -public class DBXTeamLogDefaultLinkExpirationDaysPolicyOther: DBXTeamLogDefaultLinkExpirationDaysPolicy { +public class DBXTeamLogDashAdminAddedOrgWideConnectorDetails: NSObject { + /// The name of the Connector. @objc - public init() { - let swift = TeamLog.DefaultLinkExpirationDaysPolicy.other - super.init(swift: swift) - } -} - -/// Deleted team invite link. -@objc -public class DBXTeamLogDeleteTeamInviteLinkDetails: NSObject { - /// The invite link url that was deleted. + public var connectorName: String { swift.connectorName } + /// The status of the Connector. @objc - public var linkUrl: String { swift.linkUrl } + public var connectorStatus: DBXTeamLogDashConnectorStatus { DBXTeamLogDashConnectorStatus(swift: swift.connectorStatus) } @objc - public init(linkUrl: String) { - self.swift = TeamLog.DeleteTeamInviteLinkDetails(linkUrl: linkUrl) + public init(connectorName: String, connectorStatus: DBXTeamLogDashConnectorStatus) { + self.swift = TeamLog.DashAdminAddedOrgWideConnectorDetails(connectorName: connectorName, connectorStatus: connectorStatus.swift) } - let swift: TeamLog.DeleteTeamInviteLinkDetails + let swift: TeamLog.DashAdminAddedOrgWideConnectorDetails - public init(swift: TeamLog.DeleteTeamInviteLinkDetails) { + public init(swift: TeamLog.DashAdminAddedOrgWideConnectorDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible DeleteTeamInviteLinkType struct +/// Objective-C compatible DashAdminAddedOrgWideConnectorType struct @objc -public class DBXTeamLogDeleteTeamInviteLinkType: NSObject { +public class DBXTeamLogDashAdminAddedOrgWideConnectorType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.DeleteTeamInviteLinkType(description_: description_) + self.swift = TeamLog.DashAdminAddedOrgWideConnectorType(description_: description_) } - let swift: TeamLog.DeleteTeamInviteLinkType + let swift: TeamLog.DashAdminAddedOrgWideConnectorType - public init(swift: TeamLog.DeleteTeamInviteLinkType) { + public init(swift: TeamLog.DashAdminAddedOrgWideConnectorType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Device's session logged information. +/// Admin disabled a user connector. @objc -public class DBXTeamLogDeviceSessionLogInfo: NSObject { - /// The IP address of the last activity from this session. - @objc - public var ipAddress: String? { swift.ipAddress } - /// The time this session was created. +public class DBXTeamLogDashAdminDisabledConnectorDetails: NSObject { + /// The name of the Connector. @objc - public var created: Date? { swift.created } - /// The time of the last activity from this session. + public var connectorName: String { swift.connectorName } + /// The status of the Connector. @objc - public var updated: Date? { swift.updated } + public var connectorStatus: DBXTeamLogDashConnectorStatus? { guard let swift = swift.connectorStatus else { return nil }; return DBXTeamLogDashConnectorStatus(swift: swift) } @objc - public init(ipAddress: String?, created: Date?, updated: Date?) { - self.swift = TeamLog.DeviceSessionLogInfo(ipAddress: ipAddress, created: created, updated: updated) + public init(connectorName: String, connectorStatus: DBXTeamLogDashConnectorStatus?) { + self.swift = TeamLog.DashAdminDisabledConnectorDetails(connectorName: connectorName, connectorStatus: connectorStatus?.swift) } - let swift: TeamLog.DeviceSessionLogInfo + let swift: TeamLog.DashAdminDisabledConnectorDetails - public init(swift: TeamLog.DeviceSessionLogInfo) { + public init(swift: TeamLog.DashAdminDisabledConnectorDetails) { self.swift = swift } - public static func wrapPreservingSubtypes(swift: TeamLog.DeviceSessionLogInfo) -> DBXTeamLogDeviceSessionLogInfo { - switch swift { - case let desktopDeviceSessionLogInfo as TeamLog.DesktopDeviceSessionLogInfo: - return DBXTeamLogDesktopDeviceSessionLogInfo(swift: desktopDeviceSessionLogInfo) - case let mobileDeviceSessionLogInfo as TeamLog.MobileDeviceSessionLogInfo: - return DBXTeamLogMobileDeviceSessionLogInfo(swift: mobileDeviceSessionLogInfo) - case let webDeviceSessionLogInfo as TeamLog.WebDeviceSessionLogInfo: - return DBXTeamLogWebDeviceSessionLogInfo(swift: webDeviceSessionLogInfo) - case let legacyDeviceSessionLogInfo as TeamLog.LegacyDeviceSessionLogInfo: - return DBXTeamLogLegacyDeviceSessionLogInfo(swift: legacyDeviceSessionLogInfo) - default: - return DBXTeamLogDeviceSessionLogInfo(swift: swift) - } - } @objc public override var description: String { swift.description } } -/// Information about linked Dropbox desktop client sessions -@objc -public class DBXTeamLogDesktopDeviceSessionLogInfo: DBXTeamLogDeviceSessionLogInfo { - /// Desktop session unique id. - @objc - public var sessionInfo: DBXTeamLogDesktopSessionLogInfo? { guard let swift = subSwift.sessionInfo else { return nil } - return DBXTeamLogDesktopSessionLogInfo(swift: swift) - } - - /// Name of the hosting desktop. - @objc - public var hostName: String { subSwift.hostName } - /// The Dropbox desktop client type. - @objc - public var clientType: DBXTeamDesktopPlatform { DBXTeamDesktopPlatform(swift: subSwift.clientType) } - /// The Dropbox client version. - @objc - public var clientVersion: String? { subSwift.clientVersion } - /// Information on the hosting platform. - @objc - public var platform: String { subSwift.platform } - /// Whether itu2019s possible to delete all of the account files upon unlinking. - @objc - public var isDeleteOnUnlinkSupported: NSNumber { subSwift.isDeleteOnUnlinkSupported as NSNumber } - - @objc - public init( - hostName: String, - clientType: DBXTeamDesktopPlatform, - platform: String, - isDeleteOnUnlinkSupported: NSNumber, - ipAddress: String?, - created: Date?, - updated: Date?, - sessionInfo: DBXTeamLogDesktopSessionLogInfo?, - clientVersion: String? - ) { - let swift = TeamLog.DesktopDeviceSessionLogInfo( - hostName: hostName, - clientType: clientType.swift, - platform: platform, - isDeleteOnUnlinkSupported: isDeleteOnUnlinkSupported.boolValue, - ipAddress: ipAddress, - created: created, - updated: updated, - sessionInfo: sessionInfo?.subSwift, - clientVersion: clientVersion - ) - self.subSwift = swift - super.init(swift: swift) - } - - let subSwift: TeamLog.DesktopDeviceSessionLogInfo - - public init(swift: TeamLog.DesktopDeviceSessionLogInfo) { - self.subSwift = swift - super.init(swift: swift) - } - - @objc - public override var description: String { subSwift.description } -} - -/// Session's logged information. +/// Objective-C compatible DashAdminDisabledConnectorType struct @objc -public class DBXTeamLogSessionLogInfo: NSObject { - /// Session ID. +public class DBXTeamLogDashAdminDisabledConnectorType: NSObject { + /// (no description) @objc - public var sessionId: String? { swift.sessionId } + public var description_: String { swift.description_ } @objc - public init(sessionId: String?) { - self.swift = TeamLog.SessionLogInfo(sessionId: sessionId) + public init(description_: String) { + self.swift = TeamLog.DashAdminDisabledConnectorType(description_: description_) } - let swift: TeamLog.SessionLogInfo + let swift: TeamLog.DashAdminDisabledConnectorType - public init(swift: TeamLog.SessionLogInfo) { + public init(swift: TeamLog.DashAdminDisabledConnectorType) { self.swift = swift } - public static func wrapPreservingSubtypes(swift: TeamLog.SessionLogInfo) -> DBXTeamLogSessionLogInfo { - switch swift { - case let webSessionLogInfo as TeamLog.WebSessionLogInfo: - return DBXTeamLogWebSessionLogInfo(swift: webSessionLogInfo) - case let desktopSessionLogInfo as TeamLog.DesktopSessionLogInfo: - return DBXTeamLogDesktopSessionLogInfo(swift: desktopSessionLogInfo) - case let mobileSessionLogInfo as TeamLog.MobileSessionLogInfo: - return DBXTeamLogMobileSessionLogInfo(swift: mobileSessionLogInfo) - default: - return DBXTeamLogSessionLogInfo(swift: swift) - } - } @objc public override var description: String { swift.description } } -/// Desktop session. +/// Admin enabled a user connector. @objc -public class DBXTeamLogDesktopSessionLogInfo: DBXTeamLogSessionLogInfo { - let subSwift: TeamLog.DesktopSessionLogInfo - - public init(swift: TeamLog.DesktopSessionLogInfo) { - self.subSwift = swift - super.init(swift: swift) - } +public class DBXTeamLogDashAdminEnabledConnectorDetails: NSObject { + /// The name of the Connector. + @objc + public var connectorName: String { swift.connectorName } + /// The status of the Connector. + @objc + public var connectorStatus: DBXTeamLogDashConnectorStatus? { guard let swift = swift.connectorStatus else { return nil }; return DBXTeamLogDashConnectorStatus(swift: swift) } @objc - public override var description: String { subSwift.description } -} + public init(connectorName: String, connectorStatus: DBXTeamLogDashConnectorStatus?) { + self.swift = TeamLog.DashAdminEnabledConnectorDetails(connectorName: connectorName, connectorStatus: connectorStatus?.swift) + } -/// Added members to device approvals exception list. -@objc -public class DBXTeamLogDeviceApprovalsAddExceptionDetails: NSObject { - let swift: TeamLog.DeviceApprovalsAddExceptionDetails + let swift: TeamLog.DashAdminEnabledConnectorDetails - public init(swift: TeamLog.DeviceApprovalsAddExceptionDetails) { + public init(swift: TeamLog.DashAdminEnabledConnectorDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible DeviceApprovalsAddExceptionType struct +/// Objective-C compatible DashAdminEnabledConnectorType struct @objc -public class DBXTeamLogDeviceApprovalsAddExceptionType: NSObject { +public class DBXTeamLogDashAdminEnabledConnectorType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.DeviceApprovalsAddExceptionType(description_: description_) + self.swift = TeamLog.DashAdminEnabledConnectorType(description_: description_) } - let swift: TeamLog.DeviceApprovalsAddExceptionType + let swift: TeamLog.DashAdminEnabledConnectorType - public init(swift: TeamLog.DeviceApprovalsAddExceptionType) { + public init(swift: TeamLog.DashAdminEnabledConnectorType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Set/removed limit on number of computers member can link to team Dropbox account. +/// Admin removed an admin connector. @objc -public class DBXTeamLogDeviceApprovalsChangeDesktopPolicyDetails: NSObject { - /// New desktop device approvals policy. Might be missing due to historical data gap. +public class DBXTeamLogDashAdminRemovedOrgWideConnectorDetails: NSObject { + /// The name of the Connector. @objc - public var newValue: DBXTeamLogDeviceApprovalsPolicy? { guard let swift = swift.newValue else { return nil } - return DBXTeamLogDeviceApprovalsPolicy(swift: swift) - } - - /// Previous desktop device approvals policy. Might be missing due to historical data gap. + public var connectorName: String { swift.connectorName } + /// The status of the Connector. @objc - public var previousValue: DBXTeamLogDeviceApprovalsPolicy? { guard let swift = swift.previousValue else { return nil } - return DBXTeamLogDeviceApprovalsPolicy(swift: swift) - } + public var connectorStatus: DBXTeamLogDashConnectorStatus { DBXTeamLogDashConnectorStatus(swift: swift.connectorStatus) } @objc - public init(newValue: DBXTeamLogDeviceApprovalsPolicy?, previousValue: DBXTeamLogDeviceApprovalsPolicy?) { - self.swift = TeamLog.DeviceApprovalsChangeDesktopPolicyDetails(newValue: newValue?.swift, previousValue: previousValue?.swift) + public init(connectorName: String, connectorStatus: DBXTeamLogDashConnectorStatus) { + self.swift = TeamLog.DashAdminRemovedOrgWideConnectorDetails(connectorName: connectorName, connectorStatus: connectorStatus.swift) } - let swift: TeamLog.DeviceApprovalsChangeDesktopPolicyDetails + let swift: TeamLog.DashAdminRemovedOrgWideConnectorDetails - public init(swift: TeamLog.DeviceApprovalsChangeDesktopPolicyDetails) { + public init(swift: TeamLog.DashAdminRemovedOrgWideConnectorDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible DeviceApprovalsChangeDesktopPolicyType struct +/// Objective-C compatible DashAdminRemovedOrgWideConnectorType struct @objc -public class DBXTeamLogDeviceApprovalsChangeDesktopPolicyType: NSObject { +public class DBXTeamLogDashAdminRemovedOrgWideConnectorType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.DeviceApprovalsChangeDesktopPolicyType(description_: description_) + self.swift = TeamLog.DashAdminRemovedOrgWideConnectorType(description_: description_) } - let swift: TeamLog.DeviceApprovalsChangeDesktopPolicyType + let swift: TeamLog.DashAdminRemovedOrgWideConnectorType - public init(swift: TeamLog.DeviceApprovalsChangeDesktopPolicyType) { + public init(swift: TeamLog.DashAdminRemovedOrgWideConnectorType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Set/removed limit on number of mobile devices member can link to team Dropbox account. +/// Archived a stack. @objc -public class DBXTeamLogDeviceApprovalsChangeMobilePolicyDetails: NSObject { - /// New mobile device approvals policy. Might be missing due to historical data gap. +public class DBXTeamLogDashArchivedStackDetails: NSObject { + /// The name of the stack. @objc - public var newValue: DBXTeamLogDeviceApprovalsPolicy? { guard let swift = swift.newValue else { return nil } - return DBXTeamLogDeviceApprovalsPolicy(swift: swift) - } - - /// Previous mobile device approvals policy. Might be missing due to historical data gap. + public var stackName: String { swift.stackName } + /// The type of stack backend. @objc - public var previousValue: DBXTeamLogDeviceApprovalsPolicy? { guard let swift = swift.previousValue else { return nil } - return DBXTeamLogDeviceApprovalsPolicy(swift: swift) - } + public var stackType: DBXTeamLogDashStackType? { guard let swift = swift.stackType else { return nil }; return DBXTeamLogDashStackType(swift: swift) } @objc - public init(newValue: DBXTeamLogDeviceApprovalsPolicy?, previousValue: DBXTeamLogDeviceApprovalsPolicy?) { - self.swift = TeamLog.DeviceApprovalsChangeMobilePolicyDetails(newValue: newValue?.swift, previousValue: previousValue?.swift) + public init(stackName: String, stackType: DBXTeamLogDashStackType?) { + self.swift = TeamLog.DashArchivedStackDetails(stackName: stackName, stackType: stackType?.swift) } - let swift: TeamLog.DeviceApprovalsChangeMobilePolicyDetails + let swift: TeamLog.DashArchivedStackDetails - public init(swift: TeamLog.DeviceApprovalsChangeMobilePolicyDetails) { + public init(swift: TeamLog.DashArchivedStackDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible DeviceApprovalsChangeMobilePolicyType struct +/// Objective-C compatible DashArchivedStackType struct @objc -public class DBXTeamLogDeviceApprovalsChangeMobilePolicyType: NSObject { +public class DBXTeamLogDashArchivedStackType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.DeviceApprovalsChangeMobilePolicyType(description_: description_) + self.swift = TeamLog.DashArchivedStackType(description_: description_) } - let swift: TeamLog.DeviceApprovalsChangeMobilePolicyType + let swift: TeamLog.DashArchivedStackType - public init(swift: TeamLog.DeviceApprovalsChangeMobilePolicyType) { + public init(swift: TeamLog.DashArchivedStackType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Changed device approvals setting when member is over limit. +/// Changed the audience of a shared link to a stack. @objc -public class DBXTeamLogDeviceApprovalsChangeOverageActionDetails: NSObject { - /// New over the limits policy. Might be missing due to historical data gap. +public class DBXTeamLogDashChangedAudienceOfSharedLinkToStackDetails: NSObject { + /// The name of the stack. @objc - public var newValue: DBXTeamPoliciesRolloutMethod? { guard let swift = swift.newValue else { return nil } - return DBXTeamPoliciesRolloutMethod(swift: swift) - } - - /// Previous over the limit policy. Might be missing due to historical data gap. + public var stackName: String { swift.stackName } + /// The type of stack backend. @objc - public var previousValue: DBXTeamPoliciesRolloutMethod? { guard let swift = swift.previousValue else { return nil } - return DBXTeamPoliciesRolloutMethod(swift: swift) - } + public var stackType: DBXTeamLogDashStackType? { guard let swift = swift.stackType else { return nil }; return DBXTeamLogDashStackType(swift: swift) } @objc - public init(newValue: DBXTeamPoliciesRolloutMethod?, previousValue: DBXTeamPoliciesRolloutMethod?) { - self.swift = TeamLog.DeviceApprovalsChangeOverageActionDetails(newValue: newValue?.swift, previousValue: previousValue?.swift) + public init(stackName: String, stackType: DBXTeamLogDashStackType?) { + self.swift = TeamLog.DashChangedAudienceOfSharedLinkToStackDetails(stackName: stackName, stackType: stackType?.swift) } - let swift: TeamLog.DeviceApprovalsChangeOverageActionDetails + let swift: TeamLog.DashChangedAudienceOfSharedLinkToStackDetails - public init(swift: TeamLog.DeviceApprovalsChangeOverageActionDetails) { + public init(swift: TeamLog.DashChangedAudienceOfSharedLinkToStackDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible DeviceApprovalsChangeOverageActionType struct +/// Objective-C compatible DashChangedAudienceOfSharedLinkToStackType struct @objc -public class DBXTeamLogDeviceApprovalsChangeOverageActionType: NSObject { +public class DBXTeamLogDashChangedAudienceOfSharedLinkToStackType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.DeviceApprovalsChangeOverageActionType(description_: description_) + self.swift = TeamLog.DashChangedAudienceOfSharedLinkToStackType(description_: description_) } - let swift: TeamLog.DeviceApprovalsChangeOverageActionType + let swift: TeamLog.DashChangedAudienceOfSharedLinkToStackType - public init(swift: TeamLog.DeviceApprovalsChangeOverageActionType) { + public init(swift: TeamLog.DashChangedAudienceOfSharedLinkToStackType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Changed device approvals setting when member unlinks approved device. +/// Cloned stack. @objc -public class DBXTeamLogDeviceApprovalsChangeUnlinkActionDetails: NSObject { - /// New device unlink policy. Might be missing due to historical data gap. +public class DBXTeamLogDashClonedStackDetails: NSObject { + /// The name of the stack. @objc - public var newValue: DBXTeamLogDeviceUnlinkPolicy? { guard let swift = swift.newValue else { return nil } - return DBXTeamLogDeviceUnlinkPolicy(swift: swift) - } - - /// Previous device unlink policy. Might be missing due to historical data gap. + public var stackName: String { swift.stackName } + /// Email of the actor. @objc - public var previousValue: DBXTeamLogDeviceUnlinkPolicy? { guard let swift = swift.previousValue else { return nil } - return DBXTeamLogDeviceUnlinkPolicy(swift: swift) - } + public var actorEmail: String { swift.actorEmail } + /// New cloned stack name. + @objc + public var newClonedStackName: String { swift.newClonedStackName } + /// The type of stack backend. + @objc + public var stackType: DBXTeamLogDashStackType? { guard let swift = swift.stackType else { return nil }; return DBXTeamLogDashStackType(swift: swift) } @objc - public init(newValue: DBXTeamLogDeviceUnlinkPolicy?, previousValue: DBXTeamLogDeviceUnlinkPolicy?) { - self.swift = TeamLog.DeviceApprovalsChangeUnlinkActionDetails(newValue: newValue?.swift, previousValue: previousValue?.swift) + public init(stackName: String, actorEmail: String, newClonedStackName: String, stackType: DBXTeamLogDashStackType?) { + self.swift = TeamLog.DashClonedStackDetails(stackName: stackName, actorEmail: actorEmail, newClonedStackName: newClonedStackName, stackType: stackType?.swift) } - let swift: TeamLog.DeviceApprovalsChangeUnlinkActionDetails + let swift: TeamLog.DashClonedStackDetails - public init(swift: TeamLog.DeviceApprovalsChangeUnlinkActionDetails) { + public init(swift: TeamLog.DashClonedStackDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible DeviceApprovalsChangeUnlinkActionType struct +/// Objective-C compatible DashClonedStackType struct @objc -public class DBXTeamLogDeviceApprovalsChangeUnlinkActionType: NSObject { +public class DBXTeamLogDashClonedStackType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.DeviceApprovalsChangeUnlinkActionType(description_: description_) + self.swift = TeamLog.DashClonedStackType(description_: description_) } - let swift: TeamLog.DeviceApprovalsChangeUnlinkActionType + let swift: TeamLog.DashClonedStackType - public init(swift: TeamLog.DeviceApprovalsChangeUnlinkActionType) { + public init(swift: TeamLog.DashClonedStackType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible DeviceApprovalsPolicy union +/// The status of the Connector @objc -public class DBXTeamLogDeviceApprovalsPolicy: NSObject { - let swift: TeamLog.DeviceApprovalsPolicy +public class DBXTeamLogDashConnectorStatus: NSObject { + let swift: TeamLog.DashConnectorStatus - public init(swift: TeamLog.DeviceApprovalsPolicy) { + public init(swift: TeamLog.DashConnectorStatus) { self.swift = swift } - public static func factory(swift: TeamLog.DeviceApprovalsPolicy) -> DBXTeamLogDeviceApprovalsPolicy { + public static func factory(swift: TeamLog.DashConnectorStatus) -> DBXTeamLogDashConnectorStatus { switch swift { - case .limited: - return DBXTeamLogDeviceApprovalsPolicyLimited() - case .unlimited: - return DBXTeamLogDeviceApprovalsPolicyUnlimited() + case .fail: + return DBXTeamLogDashConnectorStatusFail() + case .success: + return DBXTeamLogDashConnectorStatusSuccess() case .other: - return DBXTeamLogDeviceApprovalsPolicyOther() + return DBXTeamLogDashConnectorStatusOther() } } @@ -5773,659 +6223,757 @@ public class DBXTeamLogDeviceApprovalsPolicy: NSObject { public override var description: String { swift.description } @objc - public var asLimited: DBXTeamLogDeviceApprovalsPolicyLimited? { - self as? DBXTeamLogDeviceApprovalsPolicyLimited + public var asFail: DBXTeamLogDashConnectorStatusFail? { + return self as? DBXTeamLogDashConnectorStatusFail } @objc - public var asUnlimited: DBXTeamLogDeviceApprovalsPolicyUnlimited? { - self as? DBXTeamLogDeviceApprovalsPolicyUnlimited + public var asSuccess: DBXTeamLogDashConnectorStatusSuccess? { + return self as? DBXTeamLogDashConnectorStatusSuccess } @objc - public var asOther: DBXTeamLogDeviceApprovalsPolicyOther? { - self as? DBXTeamLogDeviceApprovalsPolicyOther + public var asOther: DBXTeamLogDashConnectorStatusOther? { + return self as? DBXTeamLogDashConnectorStatusOther } } /// An unspecified error. @objc -public class DBXTeamLogDeviceApprovalsPolicyLimited: DBXTeamLogDeviceApprovalsPolicy { +public class DBXTeamLogDashConnectorStatusFail: DBXTeamLogDashConnectorStatus { @objc public init() { - let swift = TeamLog.DeviceApprovalsPolicy.limited + let swift = TeamLog.DashConnectorStatus.fail super.init(swift: swift) } } /// An unspecified error. @objc -public class DBXTeamLogDeviceApprovalsPolicyUnlimited: DBXTeamLogDeviceApprovalsPolicy { +public class DBXTeamLogDashConnectorStatusSuccess: DBXTeamLogDashConnectorStatus { @objc public init() { - let swift = TeamLog.DeviceApprovalsPolicy.unlimited + let swift = TeamLog.DashConnectorStatus.success super.init(swift: swift) } } /// An unspecified error. @objc -public class DBXTeamLogDeviceApprovalsPolicyOther: DBXTeamLogDeviceApprovalsPolicy { +public class DBXTeamLogDashConnectorStatusOther: DBXTeamLogDashConnectorStatus { @objc public init() { - let swift = TeamLog.DeviceApprovalsPolicy.other + let swift = TeamLog.DashConnectorStatus.other super.init(swift: swift) } } -/// Removed members from device approvals exception list. +/// Called a tool on a connector. @objc -public class DBXTeamLogDeviceApprovalsRemoveExceptionDetails: NSObject { - let swift: TeamLog.DeviceApprovalsRemoveExceptionDetails +public class DBXTeamLogDashConnectorToolsCallDetails: NSObject { + /// The name of the connector. + @objc + public var connectorName: String { swift.connectorName } + /// The name of the tool that was called. + @objc + public var toolName: String { swift.toolName } + /// The surface from which the tool was called. + @objc + public var surface: String? { swift.surface } - public init(swift: TeamLog.DeviceApprovalsRemoveExceptionDetails) { + @objc + public init(connectorName: String, toolName: String, surface: String?) { + self.swift = TeamLog.DashConnectorToolsCallDetails(connectorName: connectorName, toolName: toolName, surface: surface) + } + + let swift: TeamLog.DashConnectorToolsCallDetails + + public init(swift: TeamLog.DashConnectorToolsCallDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible DeviceApprovalsRemoveExceptionType struct +/// Objective-C compatible DashConnectorToolsCallType struct @objc -public class DBXTeamLogDeviceApprovalsRemoveExceptionType: NSObject { +public class DBXTeamLogDashConnectorToolsCallType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.DeviceApprovalsRemoveExceptionType(description_: description_) + self.swift = TeamLog.DashConnectorToolsCallType(description_: description_) } - let swift: TeamLog.DeviceApprovalsRemoveExceptionType + let swift: TeamLog.DashConnectorToolsCallType - public init(swift: TeamLog.DeviceApprovalsRemoveExceptionType) { + public init(swift: TeamLog.DashConnectorToolsCallType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Changed IP address associated with active desktop session. +/// Created a stack. @objc -public class DBXTeamLogDeviceChangeIpDesktopDetails: NSObject { - /// Device's session logged information. +public class DBXTeamLogDashCreatedStackDetails: NSObject { + /// The name of the stack. @objc - public var deviceSessionInfo: DBXTeamLogDeviceSessionLogInfo { - DBXTeamLogDeviceSessionLogInfo.wrapPreservingSubtypes(swift: swift.deviceSessionInfo) - } + public var stackName: String { swift.stackName } + /// The type of stack backend. + @objc + public var stackType: DBXTeamLogDashStackType? { guard let swift = swift.stackType else { return nil }; return DBXTeamLogDashStackType(swift: swift) } @objc - public init(deviceSessionInfo: DBXTeamLogDeviceSessionLogInfo) { - self.swift = TeamLog.DeviceChangeIpDesktopDetails(deviceSessionInfo: deviceSessionInfo.swift) + public init(stackName: String, stackType: DBXTeamLogDashStackType?) { + self.swift = TeamLog.DashCreatedStackDetails(stackName: stackName, stackType: stackType?.swift) } - let swift: TeamLog.DeviceChangeIpDesktopDetails + let swift: TeamLog.DashCreatedStackDetails - public init(swift: TeamLog.DeviceChangeIpDesktopDetails) { + public init(swift: TeamLog.DashCreatedStackDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible DeviceChangeIpDesktopType struct +/// Objective-C compatible DashCreatedStackType struct @objc -public class DBXTeamLogDeviceChangeIpDesktopType: NSObject { +public class DBXTeamLogDashCreatedStackType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.DeviceChangeIpDesktopType(description_: description_) + self.swift = TeamLog.DashCreatedStackType(description_: description_) } - let swift: TeamLog.DeviceChangeIpDesktopType + let swift: TeamLog.DashCreatedStackType - public init(swift: TeamLog.DeviceChangeIpDesktopType) { + public init(swift: TeamLog.DashCreatedStackType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Changed IP address associated with active mobile session. +/// Deleted a comment from a stack. @objc -public class DBXTeamLogDeviceChangeIpMobileDetails: NSObject { - /// Device's session logged information. +public class DBXTeamLogDashDeletedCommentFromStackDetails: NSObject { + /// The name of the stack where the comment exists. @objc - public var deviceSessionInfo: DBXTeamLogDeviceSessionLogInfo? { guard let swift = swift.deviceSessionInfo else { return nil } - return DBXTeamLogDeviceSessionLogInfo(swift: swift) - } + public var stackName: String { swift.stackName } + /// The name of the stack item that the comment is tied to. + @objc + public var stackItemName: String { swift.stackItemName } + /// The type of stack backend. + @objc + public var stackType: DBXTeamLogDashStackType? { guard let swift = swift.stackType else { return nil }; return DBXTeamLogDashStackType(swift: swift) } @objc - public init(deviceSessionInfo: DBXTeamLogDeviceSessionLogInfo?) { - self.swift = TeamLog.DeviceChangeIpMobileDetails(deviceSessionInfo: deviceSessionInfo?.swift) + public init(stackName: String, stackItemName: String, stackType: DBXTeamLogDashStackType?) { + self.swift = TeamLog.DashDeletedCommentFromStackDetails(stackName: stackName, stackItemName: stackItemName, stackType: stackType?.swift) } - let swift: TeamLog.DeviceChangeIpMobileDetails + let swift: TeamLog.DashDeletedCommentFromStackDetails - public init(swift: TeamLog.DeviceChangeIpMobileDetails) { + public init(swift: TeamLog.DashDeletedCommentFromStackDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible DeviceChangeIpMobileType struct +/// Objective-C compatible DashDeletedCommentFromStackType struct @objc -public class DBXTeamLogDeviceChangeIpMobileType: NSObject { +public class DBXTeamLogDashDeletedCommentFromStackType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.DeviceChangeIpMobileType(description_: description_) + self.swift = TeamLog.DashDeletedCommentFromStackType(description_: description_) } - let swift: TeamLog.DeviceChangeIpMobileType + let swift: TeamLog.DashDeletedCommentFromStackType - public init(swift: TeamLog.DeviceChangeIpMobileType) { + public init(swift: TeamLog.DashDeletedCommentFromStackType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Changed IP address associated with active web session. +/// Deleted a stack. @objc -public class DBXTeamLogDeviceChangeIpWebDetails: NSObject { - /// Web browser name. +public class DBXTeamLogDashDeletedStackDetails: NSObject { + /// The name of the stack. @objc - public var userAgent: String { swift.userAgent } + public var stackName: String { swift.stackName } + /// The type of stack backend. + @objc + public var stackType: DBXTeamLogDashStackType? { guard let swift = swift.stackType else { return nil }; return DBXTeamLogDashStackType(swift: swift) } @objc - public init(userAgent: String) { - self.swift = TeamLog.DeviceChangeIpWebDetails(userAgent: userAgent) + public init(stackName: String, stackType: DBXTeamLogDashStackType?) { + self.swift = TeamLog.DashDeletedStackDetails(stackName: stackName, stackType: stackType?.swift) } - let swift: TeamLog.DeviceChangeIpWebDetails + let swift: TeamLog.DashDeletedStackDetails - public init(swift: TeamLog.DeviceChangeIpWebDetails) { + public init(swift: TeamLog.DashDeletedStackDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible DeviceChangeIpWebType struct +/// Objective-C compatible DashDeletedStackType struct @objc -public class DBXTeamLogDeviceChangeIpWebType: NSObject { +public class DBXTeamLogDashDeletedStackType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.DeviceChangeIpWebType(description_: description_) + self.swift = TeamLog.DashDeletedStackType(description_: description_) } - let swift: TeamLog.DeviceChangeIpWebType + let swift: TeamLog.DashDeletedStackType - public init(swift: TeamLog.DeviceChangeIpWebType) { + public init(swift: TeamLog.DashDeletedStackType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Failed to delete all files from unlinked device. +/// Edited a comment in a stack. @objc -public class DBXTeamLogDeviceDeleteOnUnlinkFailDetails: NSObject { - /// Session unique id. +public class DBXTeamLogDashEditedCommentInStackDetails: NSObject { + /// The name of the stack where the comment exists. @objc - public var sessionInfo: DBXTeamLogSessionLogInfo? { guard let swift = swift.sessionInfo else { return nil } - return DBXTeamLogSessionLogInfo(swift: swift) - } - - /// The device name. Might be missing due to historical data gap. + public var stackName: String { swift.stackName } + /// The name of the stack item that the comment is tied to. @objc - public var displayName: String? { swift.displayName } - /// The number of times that remote file deletion failed. + public var stackItemName: String { swift.stackItemName } + /// The text of the comment. @objc - public var numFailures: NSNumber { swift.numFailures as NSNumber } + public var commentText: String { swift.commentText } + /// The type of stack backend. + @objc + public var stackType: DBXTeamLogDashStackType? { guard let swift = swift.stackType else { return nil }; return DBXTeamLogDashStackType(swift: swift) } @objc - public init(numFailures: NSNumber, sessionInfo: DBXTeamLogSessionLogInfo?, displayName: String?) { - self.swift = TeamLog.DeviceDeleteOnUnlinkFailDetails(numFailures: numFailures.int64Value, sessionInfo: sessionInfo?.swift, displayName: displayName) + public init(stackName: String, stackItemName: String, commentText: String, stackType: DBXTeamLogDashStackType?) { + self.swift = TeamLog.DashEditedCommentInStackDetails(stackName: stackName, stackItemName: stackItemName, commentText: commentText, stackType: stackType?.swift) } - let swift: TeamLog.DeviceDeleteOnUnlinkFailDetails + let swift: TeamLog.DashEditedCommentInStackDetails - public init(swift: TeamLog.DeviceDeleteOnUnlinkFailDetails) { + public init(swift: TeamLog.DashEditedCommentInStackDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible DeviceDeleteOnUnlinkFailType struct +/// Objective-C compatible DashEditedCommentInStackType struct @objc -public class DBXTeamLogDeviceDeleteOnUnlinkFailType: NSObject { +public class DBXTeamLogDashEditedCommentInStackType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.DeviceDeleteOnUnlinkFailType(description_: description_) + self.swift = TeamLog.DashEditedCommentInStackType(description_: description_) } - let swift: TeamLog.DeviceDeleteOnUnlinkFailType + let swift: TeamLog.DashEditedCommentInStackType - public init(swift: TeamLog.DeviceDeleteOnUnlinkFailType) { + public init(swift: TeamLog.DashEditedCommentInStackType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Deleted all files from unlinked device. +/// Policy for deciding whether team users can share Dash content externally @objc -public class DBXTeamLogDeviceDeleteOnUnlinkSuccessDetails: NSObject { - /// Session unique id. - @objc - public var sessionInfo: DBXTeamLogSessionLogInfo? { guard let swift = swift.sessionInfo else { return nil } - return DBXTeamLogSessionLogInfo(swift: swift) +public class DBXTeamLogDashExternalSharingPolicy: NSObject { + let swift: TeamLog.DashExternalSharingPolicy + + public init(swift: TeamLog.DashExternalSharingPolicy) { + self.swift = swift + } + + public static func factory(swift: TeamLog.DashExternalSharingPolicy) -> DBXTeamLogDashExternalSharingPolicy { + switch swift { + case .default_: + return DBXTeamLogDashExternalSharingPolicyDefault_() + case .disabled: + return DBXTeamLogDashExternalSharingPolicyDisabled() + case .enabled: + return DBXTeamLogDashExternalSharingPolicyEnabled() + case .other: + return DBXTeamLogDashExternalSharingPolicyOther() + } } - /// The device name. Might be missing due to historical data gap. @objc - public var displayName: String? { swift.displayName } + public override var description: String { swift.description } @objc - public init(sessionInfo: DBXTeamLogSessionLogInfo?, displayName: String?) { - self.swift = TeamLog.DeviceDeleteOnUnlinkSuccessDetails(sessionInfo: sessionInfo?.swift, displayName: displayName) + public var asDefault_: DBXTeamLogDashExternalSharingPolicyDefault_? { + return self as? DBXTeamLogDashExternalSharingPolicyDefault_ } - let swift: TeamLog.DeviceDeleteOnUnlinkSuccessDetails + @objc + public var asDisabled: DBXTeamLogDashExternalSharingPolicyDisabled? { + return self as? DBXTeamLogDashExternalSharingPolicyDisabled + } - public init(swift: TeamLog.DeviceDeleteOnUnlinkSuccessDetails) { - self.swift = swift + @objc + public var asEnabled: DBXTeamLogDashExternalSharingPolicyEnabled? { + return self as? DBXTeamLogDashExternalSharingPolicyEnabled } @objc - public override var description: String { swift.description } + public var asOther: DBXTeamLogDashExternalSharingPolicyOther? { + return self as? DBXTeamLogDashExternalSharingPolicyOther + } } -/// Objective-C compatible DeviceDeleteOnUnlinkSuccessType struct +/// An unspecified error. @objc -public class DBXTeamLogDeviceDeleteOnUnlinkSuccessType: NSObject { - /// (no description) +public class DBXTeamLogDashExternalSharingPolicyDefault_: DBXTeamLogDashExternalSharingPolicy { @objc - public var description_: String { swift.description_ } + public init() { + let swift = TeamLog.DashExternalSharingPolicy.default_ + super.init(swift: swift) + } +} +/// An unspecified error. +@objc +public class DBXTeamLogDashExternalSharingPolicyDisabled: DBXTeamLogDashExternalSharingPolicy { @objc - public init(description_: String) { - self.swift = TeamLog.DeviceDeleteOnUnlinkSuccessType(description_: description_) + public init() { + let swift = TeamLog.DashExternalSharingPolicy.disabled + super.init(swift: swift) } +} - let swift: TeamLog.DeviceDeleteOnUnlinkSuccessType - - public init(swift: TeamLog.DeviceDeleteOnUnlinkSuccessType) { - self.swift = swift +/// An unspecified error. +@objc +public class DBXTeamLogDashExternalSharingPolicyEnabled: DBXTeamLogDashExternalSharingPolicy { + @objc + public init() { + let swift = TeamLog.DashExternalSharingPolicy.enabled + super.init(swift: swift) } +} +/// An unspecified error. +@objc +public class DBXTeamLogDashExternalSharingPolicyOther: DBXTeamLogDashExternalSharingPolicy { @objc - public override var description: String { swift.description } + public init() { + let swift = TeamLog.DashExternalSharingPolicy.other + super.init(swift: swift) + } } -/// Failed to link device. +/// Changed Dash external sharing policy for team. @objc -public class DBXTeamLogDeviceLinkFailDetails: NSObject { - /// IP address. Might be missing due to historical data gap. +public class DBXTeamLogDashExternalSharingPolicyChangedDetails: NSObject { + /// To. @objc - public var ipAddress: String? { swift.ipAddress } - /// A description of the device used while user approval blocked. + public var newValue: DBXTeamLogDashExternalSharingPolicy { DBXTeamLogDashExternalSharingPolicy(swift: swift.newValue) } + /// From. @objc - public var deviceType: DBXTeamLogDeviceType { DBXTeamLogDeviceType(swift: swift.deviceType) } + public var previousValue: DBXTeamLogDashExternalSharingPolicy { DBXTeamLogDashExternalSharingPolicy(swift: swift.previousValue) } @objc - public init(deviceType: DBXTeamLogDeviceType, ipAddress: String?) { - self.swift = TeamLog.DeviceLinkFailDetails(deviceType: deviceType.swift, ipAddress: ipAddress) + public init(newValue: DBXTeamLogDashExternalSharingPolicy, previousValue: DBXTeamLogDashExternalSharingPolicy) { + self.swift = TeamLog.DashExternalSharingPolicyChangedDetails(newValue: newValue.swift, previousValue: previousValue.swift) } - let swift: TeamLog.DeviceLinkFailDetails + let swift: TeamLog.DashExternalSharingPolicyChangedDetails - public init(swift: TeamLog.DeviceLinkFailDetails) { + public init(swift: TeamLog.DashExternalSharingPolicyChangedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible DeviceLinkFailType struct +/// Objective-C compatible DashExternalSharingPolicyChangedType struct @objc -public class DBXTeamLogDeviceLinkFailType: NSObject { +public class DBXTeamLogDashExternalSharingPolicyChangedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.DeviceLinkFailType(description_: description_) + self.swift = TeamLog.DashExternalSharingPolicyChangedType(description_: description_) } - let swift: TeamLog.DeviceLinkFailType + let swift: TeamLog.DashExternalSharingPolicyChangedType - public init(swift: TeamLog.DeviceLinkFailType) { + public init(swift: TeamLog.DashExternalSharingPolicyChangedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Linked device. +/// External user opened a stack. @objc -public class DBXTeamLogDeviceLinkSuccessDetails: NSObject { - /// Device's session logged information. +public class DBXTeamLogDashExternalUserOpenedStackDetails: NSObject { + /// The name of the stack. @objc - public var deviceSessionInfo: DBXTeamLogDeviceSessionLogInfo? { guard let swift = swift.deviceSessionInfo else { return nil } - return DBXTeamLogDeviceSessionLogInfo(swift: swift) - } + public var stackName: String { swift.stackName } + /// The sharing scope of the stack. + @objc + public var stackSharingScope: DBXTeamLogDashStackSharingScope { DBXTeamLogDashStackSharingScope(swift: swift.stackSharingScope) } + /// Whether the user was invited to the stack. + @objc + public var isInvited: NSNumber { swift.isInvited as NSNumber } + /// Whether the user has verified their email address. + @objc + public var isVerified: NSNumber { swift.isVerified as NSNumber } + /// The team ID of the stack owner. + @objc + public var stackOwnerTeamId: NSNumber? { swift.stackOwnerTeamId as NSNumber? } + /// The type of stack backend. + @objc + public var stackType: DBXTeamLogDashStackType? { guard let swift = swift.stackType else { return nil }; return DBXTeamLogDashStackType(swift: swift) } @objc - public init(deviceSessionInfo: DBXTeamLogDeviceSessionLogInfo?) { - self.swift = TeamLog.DeviceLinkSuccessDetails(deviceSessionInfo: deviceSessionInfo?.swift) + public init(stackName: String, stackSharingScope: DBXTeamLogDashStackSharingScope, isInvited: NSNumber, isVerified: NSNumber, stackOwnerTeamId: NSNumber?, stackType: DBXTeamLogDashStackType?) { + self.swift = TeamLog.DashExternalUserOpenedStackDetails(stackName: stackName, stackSharingScope: stackSharingScope.swift, isInvited: isInvited.boolValue, isVerified: isVerified.boolValue, stackOwnerTeamId: stackOwnerTeamId?.int64Value, stackType: stackType?.swift) } - let swift: TeamLog.DeviceLinkSuccessDetails + let swift: TeamLog.DashExternalUserOpenedStackDetails - public init(swift: TeamLog.DeviceLinkSuccessDetails) { + public init(swift: TeamLog.DashExternalUserOpenedStackDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible DeviceLinkSuccessType struct +/// Objective-C compatible DashExternalUserOpenedStackType struct @objc -public class DBXTeamLogDeviceLinkSuccessType: NSObject { +public class DBXTeamLogDashExternalUserOpenedStackType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.DeviceLinkSuccessType(description_: description_) + self.swift = TeamLog.DashExternalUserOpenedStackType(description_: description_) } - let swift: TeamLog.DeviceLinkSuccessType + let swift: TeamLog.DashExternalUserOpenedStackType - public init(swift: TeamLog.DeviceLinkSuccessType) { + public init(swift: TeamLog.DashExternalUserOpenedStackType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Disabled device management. +/// Opened the desktop app for the first time. @objc -public class DBXTeamLogDeviceManagementDisabledDetails: NSObject { - let swift: TeamLog.DeviceManagementDisabledDetails +public class DBXTeamLogDashFirstLaunchedDesktopDetails: NSObject { + /// The name of the operating system. + @objc + public var osName: String { swift.osName } - public init(swift: TeamLog.DeviceManagementDisabledDetails) { + @objc + public init(osName: String) { + self.swift = TeamLog.DashFirstLaunchedDesktopDetails(osName: osName) + } + + let swift: TeamLog.DashFirstLaunchedDesktopDetails + + public init(swift: TeamLog.DashFirstLaunchedDesktopDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible DeviceManagementDisabledType struct +/// Objective-C compatible DashFirstLaunchedDesktopType struct @objc -public class DBXTeamLogDeviceManagementDisabledType: NSObject { +public class DBXTeamLogDashFirstLaunchedDesktopType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.DeviceManagementDisabledType(description_: description_) + self.swift = TeamLog.DashFirstLaunchedDesktopType(description_: description_) } - let swift: TeamLog.DeviceManagementDisabledType + let swift: TeamLog.DashFirstLaunchedDesktopType - public init(swift: TeamLog.DeviceManagementDisabledType) { + public init(swift: TeamLog.DashFirstLaunchedDesktopType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Enabled device management. +/// Opened the extension for the first time. @objc -public class DBXTeamLogDeviceManagementEnabledDetails: NSObject { - let swift: TeamLog.DeviceManagementEnabledDetails +public class DBXTeamLogDashFirstLaunchedExtensionDetails: NSObject { + /// The name of the web browser. + @objc + public var browserName: String { swift.browserName } - public init(swift: TeamLog.DeviceManagementEnabledDetails) { + @objc + public init(browserName: String) { + self.swift = TeamLog.DashFirstLaunchedExtensionDetails(browserName: browserName) + } + + let swift: TeamLog.DashFirstLaunchedExtensionDetails + + public init(swift: TeamLog.DashFirstLaunchedExtensionDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible DeviceManagementEnabledType struct +/// Objective-C compatible DashFirstLaunchedExtensionType struct @objc -public class DBXTeamLogDeviceManagementEnabledType: NSObject { +public class DBXTeamLogDashFirstLaunchedExtensionType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.DeviceManagementEnabledType(description_: description_) + self.swift = TeamLog.DashFirstLaunchedExtensionType(description_: description_) } - let swift: TeamLog.DeviceManagementEnabledType + let swift: TeamLog.DashFirstLaunchedExtensionType - public init(swift: TeamLog.DeviceManagementEnabledType) { + public init(swift: TeamLog.DashFirstLaunchedExtensionType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Enabled/disabled backup for computer. +/// Opened the web Start Page for the first time. @objc -public class DBXTeamLogDeviceSyncBackupStatusChangedDetails: NSObject { - /// Device's session logged information. - @objc - public var desktopDeviceSessionInfo: DBXTeamLogDesktopDeviceSessionLogInfo { DBXTeamLogDesktopDeviceSessionLogInfo(swift: swift.desktopDeviceSessionInfo) } - /// Previous status of computer backup on the device. - @objc - public var previousValue: DBXTeamLogBackupStatus { DBXTeamLogBackupStatus(swift: swift.previousValue) } - /// Next status of computer backup on the device. +public class DBXTeamLogDashFirstLaunchedWebStartPageDetails: NSObject { + /// The name of the web browser. @objc - public var newValue: DBXTeamLogBackupStatus { DBXTeamLogBackupStatus(swift: swift.newValue) } + public var browserName: String { swift.browserName } @objc - public init(desktopDeviceSessionInfo: DBXTeamLogDesktopDeviceSessionLogInfo, previousValue: DBXTeamLogBackupStatus, newValue: DBXTeamLogBackupStatus) { - self.swift = TeamLog.DeviceSyncBackupStatusChangedDetails( - desktopDeviceSessionInfo: desktopDeviceSessionInfo.subSwift, - previousValue: previousValue.swift, - newValue: newValue.swift - ) + public init(browserName: String) { + self.swift = TeamLog.DashFirstLaunchedWebStartPageDetails(browserName: browserName) } - let swift: TeamLog.DeviceSyncBackupStatusChangedDetails + let swift: TeamLog.DashFirstLaunchedWebStartPageDetails - public init(swift: TeamLog.DeviceSyncBackupStatusChangedDetails) { + public init(swift: TeamLog.DashFirstLaunchedWebStartPageDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible DeviceSyncBackupStatusChangedType struct +/// Objective-C compatible DashFirstLaunchedWebStartPageType struct @objc -public class DBXTeamLogDeviceSyncBackupStatusChangedType: NSObject { +public class DBXTeamLogDashFirstLaunchedWebStartPageType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.DeviceSyncBackupStatusChangedType(description_: description_) + self.swift = TeamLog.DashFirstLaunchedWebStartPageType(description_: description_) } - let swift: TeamLog.DeviceSyncBackupStatusChangedType + let swift: TeamLog.DashFirstLaunchedWebStartPageType - public init(swift: TeamLog.DeviceSyncBackupStatusChangedType) { + public init(swift: TeamLog.DashFirstLaunchedWebStartPageType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible DeviceType union +/// Checked access permissions to a stack. @objc -public class DBXTeamLogDeviceType: NSObject { - let swift: TeamLog.DeviceType +public class DBXTeamLogDashOpenedSharedLinkToStackDetails: NSObject { + /// The name of the stack. + @objc + public var stackName: String { swift.stackName } + /// The type of stack backend. + @objc + public var stackType: DBXTeamLogDashStackType? { guard let swift = swift.stackType else { return nil }; return DBXTeamLogDashStackType(swift: swift) } - public init(swift: TeamLog.DeviceType) { - self.swift = swift + @objc + public init(stackName: String, stackType: DBXTeamLogDashStackType?) { + self.swift = TeamLog.DashOpenedSharedLinkToStackDetails(stackName: stackName, stackType: stackType?.swift) } - public static func factory(swift: TeamLog.DeviceType) -> DBXTeamLogDeviceType { - switch swift { - case .desktop: - return DBXTeamLogDeviceTypeDesktop() - case .mobile: - return DBXTeamLogDeviceTypeMobile() - case .other: - return DBXTeamLogDeviceTypeOther() - } + let swift: TeamLog.DashOpenedSharedLinkToStackDetails + + public init(swift: TeamLog.DashOpenedSharedLinkToStackDetails) { + self.swift = swift } + @objc public override var description: String { swift.description } +} +/// Objective-C compatible DashOpenedSharedLinkToStackType struct +@objc +public class DBXTeamLogDashOpenedSharedLinkToStackType: NSObject { + /// (no description) @objc - public var asDesktop: DBXTeamLogDeviceTypeDesktop? { - self as? DBXTeamLogDeviceTypeDesktop - } + public var description_: String { swift.description_ } @objc - public var asMobile: DBXTeamLogDeviceTypeMobile? { - self as? DBXTeamLogDeviceTypeMobile + public init(description_: String) { + self.swift = TeamLog.DashOpenedSharedLinkToStackType(description_: description_) } - @objc - public var asOther: DBXTeamLogDeviceTypeOther? { - self as? DBXTeamLogDeviceTypeOther + let swift: TeamLog.DashOpenedSharedLinkToStackType + + public init(swift: TeamLog.DashOpenedSharedLinkToStackType) { + self.swift = swift } -} -/// An unspecified error. -@objc -public class DBXTeamLogDeviceTypeDesktop: DBXTeamLogDeviceType { + @objc - public init() { - let swift = TeamLog.DeviceType.desktop - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// An unspecified error. +/// Opened a stack. @objc -public class DBXTeamLogDeviceTypeMobile: DBXTeamLogDeviceType { +public class DBXTeamLogDashOpenedStackDetails: NSObject { + /// The name of the stack. @objc - public init() { - let swift = TeamLog.DeviceType.mobile - super.init(swift: swift) - } -} + public var stackName: String { swift.stackName } + /// The type of stack backend. + @objc + public var stackType: DBXTeamLogDashStackType? { guard let swift = swift.stackType else { return nil }; return DBXTeamLogDashStackType(swift: swift) } -/// An unspecified error. -@objc -public class DBXTeamLogDeviceTypeOther: DBXTeamLogDeviceType { @objc - public init() { - let swift = TeamLog.DeviceType.other - super.init(swift: swift) + public init(stackName: String, stackType: DBXTeamLogDashStackType?) { + self.swift = TeamLog.DashOpenedStackDetails(stackName: stackName, stackType: stackType?.swift) } -} -/// Disconnected device. -@objc -public class DBXTeamLogDeviceUnlinkDetails: NSObject { - /// Session unique id. - @objc - public var sessionInfo: DBXTeamLogSessionLogInfo? { guard let swift = swift.sessionInfo else { return nil } - return DBXTeamLogSessionLogInfo(swift: swift) + let swift: TeamLog.DashOpenedStackDetails + + public init(swift: TeamLog.DashOpenedStackDetails) { + self.swift = swift } - /// The device name. Might be missing due to historical data gap. + @objc - public var displayName: String? { swift.displayName } - /// True if the user requested to delete data after device unlink, false otherwise. + public override var description: String { swift.description } +} + +/// Objective-C compatible DashOpenedStackType struct +@objc +public class DBXTeamLogDashOpenedStackType: NSObject { + /// (no description) @objc - public var deleteData: NSNumber { swift.deleteData as NSNumber } + public var description_: String { swift.description_ } @objc - public init(deleteData: NSNumber, sessionInfo: DBXTeamLogSessionLogInfo?, displayName: String?) { - self.swift = TeamLog.DeviceUnlinkDetails(deleteData: deleteData.boolValue, sessionInfo: sessionInfo?.swift, displayName: displayName) + public init(description_: String) { + self.swift = TeamLog.DashOpenedStackType(description_: description_) } - let swift: TeamLog.DeviceUnlinkDetails + let swift: TeamLog.DashOpenedStackType - public init(swift: TeamLog.DeviceUnlinkDetails) { + public init(swift: TeamLog.DashOpenedStackType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible DeviceUnlinkPolicy union +/// The new preview opt-out status @objc -public class DBXTeamLogDeviceUnlinkPolicy: NSObject { - let swift: TeamLog.DeviceUnlinkPolicy +public class DBXTeamLogDashPreviewOptOutStatus: NSObject { + let swift: TeamLog.DashPreviewOptOutStatus - public init(swift: TeamLog.DeviceUnlinkPolicy) { + public init(swift: TeamLog.DashPreviewOptOutStatus) { self.swift = swift } - public static func factory(swift: TeamLog.DeviceUnlinkPolicy) -> DBXTeamLogDeviceUnlinkPolicy { + public static func factory(swift: TeamLog.DashPreviewOptOutStatus) -> DBXTeamLogDashPreviewOptOutStatus { switch swift { - case .keep: - return DBXTeamLogDeviceUnlinkPolicyKeep() - case .remove: - return DBXTeamLogDeviceUnlinkPolicyRemove() + case .optedIn: + return DBXTeamLogDashPreviewOptOutStatusOptedIn() + case .optedOut: + return DBXTeamLogDashPreviewOptOutStatusOptedOut() case .other: - return DBXTeamLogDeviceUnlinkPolicyOther() + return DBXTeamLogDashPreviewOptOutStatusOther() } } @@ -6433,2429 +6981,5286 @@ public class DBXTeamLogDeviceUnlinkPolicy: NSObject { public override var description: String { swift.description } @objc - public var asKeep: DBXTeamLogDeviceUnlinkPolicyKeep? { - self as? DBXTeamLogDeviceUnlinkPolicyKeep + public var asOptedIn: DBXTeamLogDashPreviewOptOutStatusOptedIn? { + return self as? DBXTeamLogDashPreviewOptOutStatusOptedIn } @objc - public var asRemove: DBXTeamLogDeviceUnlinkPolicyRemove? { - self as? DBXTeamLogDeviceUnlinkPolicyRemove + public var asOptedOut: DBXTeamLogDashPreviewOptOutStatusOptedOut? { + return self as? DBXTeamLogDashPreviewOptOutStatusOptedOut } @objc - public var asOther: DBXTeamLogDeviceUnlinkPolicyOther? { - self as? DBXTeamLogDeviceUnlinkPolicyOther + public var asOther: DBXTeamLogDashPreviewOptOutStatusOther? { + return self as? DBXTeamLogDashPreviewOptOutStatusOther } } /// An unspecified error. @objc -public class DBXTeamLogDeviceUnlinkPolicyKeep: DBXTeamLogDeviceUnlinkPolicy { +public class DBXTeamLogDashPreviewOptOutStatusOptedIn: DBXTeamLogDashPreviewOptOutStatus { @objc public init() { - let swift = TeamLog.DeviceUnlinkPolicy.keep + let swift = TeamLog.DashPreviewOptOutStatus.optedIn super.init(swift: swift) } } /// An unspecified error. @objc -public class DBXTeamLogDeviceUnlinkPolicyRemove: DBXTeamLogDeviceUnlinkPolicy { +public class DBXTeamLogDashPreviewOptOutStatusOptedOut: DBXTeamLogDashPreviewOptOutStatus { @objc public init() { - let swift = TeamLog.DeviceUnlinkPolicy.remove + let swift = TeamLog.DashPreviewOptOutStatus.optedOut super.init(swift: swift) } } /// An unspecified error. @objc -public class DBXTeamLogDeviceUnlinkPolicyOther: DBXTeamLogDeviceUnlinkPolicy { +public class DBXTeamLogDashPreviewOptOutStatusOther: DBXTeamLogDashPreviewOptOutStatus { @objc public init() { - let swift = TeamLog.DeviceUnlinkPolicy.other + let swift = TeamLog.DashPreviewOptOutStatus.other super.init(swift: swift) } } -/// Objective-C compatible DeviceUnlinkType struct +/// Changed the preview opt-out status. @objc -public class DBXTeamLogDeviceUnlinkType: NSObject { - /// (no description) +public class DBXTeamLogDashPreviewOptOutStatusChangedDetails: NSObject { + /// The new preview opt-out status. @objc - public var description_: String { swift.description_ } + public var optOutStatus: DBXTeamLogDashPreviewOptOutStatus { DBXTeamLogDashPreviewOptOutStatus(swift: swift.optOutStatus) } @objc - public init(description_: String) { - self.swift = TeamLog.DeviceUnlinkType(description_: description_) + public init(optOutStatus: DBXTeamLogDashPreviewOptOutStatus) { + self.swift = TeamLog.DashPreviewOptOutStatusChangedDetails(optOutStatus: optOutStatus.swift) } - let swift: TeamLog.DeviceUnlinkType + let swift: TeamLog.DashPreviewOptOutStatusChangedDetails - public init(swift: TeamLog.DeviceUnlinkType) { + public init(swift: TeamLog.DashPreviewOptOutStatusChangedDetails) { self.swift = swift } - @objc - public override var description: String { swift.description } -} - -/// Added members to directory restrictions list. -@objc -public class DBXTeamLogDirectoryRestrictionsAddMembersDetails: NSObject { - let swift: TeamLog.DirectoryRestrictionsAddMembersDetails - - public init(swift: TeamLog.DirectoryRestrictionsAddMembersDetails) { - self.swift = swift - } @objc public override var description: String { swift.description } } -/// Objective-C compatible DirectoryRestrictionsAddMembersType struct +/// Objective-C compatible DashPreviewOptOutStatusChangedType struct @objc -public class DBXTeamLogDirectoryRestrictionsAddMembersType: NSObject { +public class DBXTeamLogDashPreviewOptOutStatusChangedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.DirectoryRestrictionsAddMembersType(description_: description_) + self.swift = TeamLog.DashPreviewOptOutStatusChangedType(description_: description_) } - let swift: TeamLog.DirectoryRestrictionsAddMembersType + let swift: TeamLog.DashPreviewOptOutStatusChangedType - public init(swift: TeamLog.DirectoryRestrictionsAddMembersType) { + public init(swift: TeamLog.DashPreviewOptOutStatusChangedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Removed members from directory restrictions list. +/// Disconnected a user connector. @objc -public class DBXTeamLogDirectoryRestrictionsRemoveMembersDetails: NSObject { - let swift: TeamLog.DirectoryRestrictionsRemoveMembersDetails +public class DBXTeamLogDashRemovedConnectorDetails: NSObject { + /// The name of the Connector. + @objc + public var connectorName: String { swift.connectorName } + /// The status of the Connector. + @objc + public var connectorStatus: DBXTeamLogDashConnectorStatus { DBXTeamLogDashConnectorStatus(swift: swift.connectorStatus) } - public init(swift: TeamLog.DirectoryRestrictionsRemoveMembersDetails) { + @objc + public init(connectorName: String, connectorStatus: DBXTeamLogDashConnectorStatus) { + self.swift = TeamLog.DashRemovedConnectorDetails(connectorName: connectorName, connectorStatus: connectorStatus.swift) + } + + let swift: TeamLog.DashRemovedConnectorDetails + + public init(swift: TeamLog.DashRemovedConnectorDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible DirectoryRestrictionsRemoveMembersType struct +/// Objective-C compatible DashRemovedConnectorType struct @objc -public class DBXTeamLogDirectoryRestrictionsRemoveMembersType: NSObject { +public class DBXTeamLogDashRemovedConnectorType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.DirectoryRestrictionsRemoveMembersType(description_: description_) + self.swift = TeamLog.DashRemovedConnectorType(description_: description_) } - let swift: TeamLog.DirectoryRestrictionsRemoveMembersType + let swift: TeamLog.DashRemovedConnectorType - public init(swift: TeamLog.DirectoryRestrictionsRemoveMembersType) { + public init(swift: TeamLog.DashRemovedConnectorType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Disabled domain invites. +/// Removed a link from a stack. @objc -public class DBXTeamLogDisabledDomainInvitesDetails: NSObject { - let swift: TeamLog.DisabledDomainInvitesDetails +public class DBXTeamLogDashRemovedLinkFromStackDetails: NSObject { + /// The name of the stack. + @objc + public var stackName: String { swift.stackName } + /// The link to the item in the stack. + @objc + public var stackItemLink: String { swift.stackItemLink } + /// The type of stack backend. + @objc + public var stackType: DBXTeamLogDashStackType? { guard let swift = swift.stackType else { return nil }; return DBXTeamLogDashStackType(swift: swift) } - public init(swift: TeamLog.DisabledDomainInvitesDetails) { + @objc + public init(stackName: String, stackItemLink: String, stackType: DBXTeamLogDashStackType?) { + self.swift = TeamLog.DashRemovedLinkFromStackDetails(stackName: stackName, stackItemLink: stackItemLink, stackType: stackType?.swift) + } + + let swift: TeamLog.DashRemovedLinkFromStackDetails + + public init(swift: TeamLog.DashRemovedLinkFromStackDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible DisabledDomainInvitesType struct +/// Objective-C compatible DashRemovedLinkFromStackType struct @objc -public class DBXTeamLogDisabledDomainInvitesType: NSObject { +public class DBXTeamLogDashRemovedLinkFromStackType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.DisabledDomainInvitesType(description_: description_) - } - - let swift: TeamLog.DisabledDomainInvitesType - - public init(swift: TeamLog.DisabledDomainInvitesType) { - self.swift = swift + self.swift = TeamLog.DashRemovedLinkFromStackType(description_: description_) } - @objc - public override var description: String { swift.description } -} - -/// Objective-C compatible DispositionActionType union -@objc -public class DBXTeamLogDispositionActionType: NSObject { - let swift: TeamLog.DispositionActionType + let swift: TeamLog.DashRemovedLinkFromStackType - public init(swift: TeamLog.DispositionActionType) { + public init(swift: TeamLog.DashRemovedLinkFromStackType) { self.swift = swift } - public static func factory(swift: TeamLog.DispositionActionType) -> DBXTeamLogDispositionActionType { - switch swift { - case .automaticDelete: - return DBXTeamLogDispositionActionTypeAutomaticDelete() - case .automaticPermanentlyDelete: - return DBXTeamLogDispositionActionTypeAutomaticPermanentlyDelete() - case .other: - return DBXTeamLogDispositionActionTypeOther() - } - } @objc public override var description: String { swift.description } - - @objc - public var asAutomaticDelete: DBXTeamLogDispositionActionTypeAutomaticDelete? { - self as? DBXTeamLogDispositionActionTypeAutomaticDelete - } - - @objc - public var asAutomaticPermanentlyDelete: DBXTeamLogDispositionActionTypeAutomaticPermanentlyDelete? { - self as? DBXTeamLogDispositionActionTypeAutomaticPermanentlyDelete - } - - @objc - public var asOther: DBXTeamLogDispositionActionTypeOther? { - self as? DBXTeamLogDispositionActionTypeOther - } } -/// An unspecified error. +/// Removed a shared link to a stack. @objc -public class DBXTeamLogDispositionActionTypeAutomaticDelete: DBXTeamLogDispositionActionType { +public class DBXTeamLogDashRemovedSharedLinkToStackDetails: NSObject { + /// The name of the stack. @objc - public init() { - let swift = TeamLog.DispositionActionType.automaticDelete - super.init(swift: swift) - } -} - -/// An unspecified error. -@objc -public class DBXTeamLogDispositionActionTypeAutomaticPermanentlyDelete: DBXTeamLogDispositionActionType { + public var stackName: String { swift.stackName } + /// The type of stack backend. @objc - public init() { - let swift = TeamLog.DispositionActionType.automaticPermanentlyDelete - super.init(swift: swift) - } -} + public var stackType: DBXTeamLogDashStackType? { guard let swift = swift.stackType else { return nil }; return DBXTeamLogDashStackType(swift: swift) } -/// An unspecified error. -@objc -public class DBXTeamLogDispositionActionTypeOther: DBXTeamLogDispositionActionType { @objc - public init() { - let swift = TeamLog.DispositionActionType.other - super.init(swift: swift) + public init(stackName: String, stackType: DBXTeamLogDashStackType?) { + self.swift = TeamLog.DashRemovedSharedLinkToStackDetails(stackName: stackName, stackType: stackType?.swift) } -} -/// Approved user's request to join team. -@objc -public class DBXTeamLogDomainInvitesApproveRequestToJoinTeamDetails: NSObject { - let swift: TeamLog.DomainInvitesApproveRequestToJoinTeamDetails + let swift: TeamLog.DashRemovedSharedLinkToStackDetails - public init(swift: TeamLog.DomainInvitesApproveRequestToJoinTeamDetails) { + public init(swift: TeamLog.DashRemovedSharedLinkToStackDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible DomainInvitesApproveRequestToJoinTeamType struct +/// Objective-C compatible DashRemovedSharedLinkToStackType struct @objc -public class DBXTeamLogDomainInvitesApproveRequestToJoinTeamType: NSObject { +public class DBXTeamLogDashRemovedSharedLinkToStackType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.DomainInvitesApproveRequestToJoinTeamType(description_: description_) + self.swift = TeamLog.DashRemovedSharedLinkToStackType(description_: description_) } - let swift: TeamLog.DomainInvitesApproveRequestToJoinTeamType + let swift: TeamLog.DashRemovedSharedLinkToStackType - public init(swift: TeamLog.DomainInvitesApproveRequestToJoinTeamType) { + public init(swift: TeamLog.DashRemovedSharedLinkToStackType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Declined user's request to join team. +/// Admin removed an email domain from the team allowlist. @objc -public class DBXTeamLogDomainInvitesDeclineRequestToJoinTeamDetails: NSObject { - let swift: TeamLog.DomainInvitesDeclineRequestToJoinTeamDetails +public class DBXTeamLogDashRemovedTeamEmailDomainAllowlistDetails: NSObject { + /// The email domain that gets added/removed from the team allowlist. + @objc + public var emailDomain: String { swift.emailDomain } - public init(swift: TeamLog.DomainInvitesDeclineRequestToJoinTeamDetails) { + @objc + public init(emailDomain: String) { + self.swift = TeamLog.DashRemovedTeamEmailDomainAllowlistDetails(emailDomain: emailDomain) + } + + let swift: TeamLog.DashRemovedTeamEmailDomainAllowlistDetails + + public init(swift: TeamLog.DashRemovedTeamEmailDomainAllowlistDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible DomainInvitesDeclineRequestToJoinTeamType struct +/// Objective-C compatible DashRemovedTeamEmailDomainAllowlistType struct @objc -public class DBXTeamLogDomainInvitesDeclineRequestToJoinTeamType: NSObject { +public class DBXTeamLogDashRemovedTeamEmailDomainAllowlistType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.DomainInvitesDeclineRequestToJoinTeamType(description_: description_) + self.swift = TeamLog.DashRemovedTeamEmailDomainAllowlistType(description_: description_) } - let swift: TeamLog.DomainInvitesDeclineRequestToJoinTeamType + let swift: TeamLog.DashRemovedTeamEmailDomainAllowlistType - public init(swift: TeamLog.DomainInvitesDeclineRequestToJoinTeamType) { + public init(swift: TeamLog.DashRemovedTeamEmailDomainAllowlistType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Sent domain invites to existing domain accounts. +/// Renamed a stack. @objc -public class DBXTeamLogDomainInvitesEmailExistingUsersDetails: NSObject { - /// Domain names. +public class DBXTeamLogDashRenamedStackDetails: NSObject { + /// The old name of the stack. @objc - public var domainName: String { swift.domainName } - /// Number of recipients. + public var oldName: String { swift.oldName } + /// The new name of the stack. @objc - public var numRecipients: NSNumber { swift.numRecipients as NSNumber } + public var newName: String { swift.newName } + /// The type of stack backend. + @objc + public var stackType: DBXTeamLogDashStackType? { guard let swift = swift.stackType else { return nil }; return DBXTeamLogDashStackType(swift: swift) } @objc - public init(domainName: String, numRecipients: NSNumber) { - self.swift = TeamLog.DomainInvitesEmailExistingUsersDetails(domainName: domainName, numRecipients: numRecipients.uint64Value) + public init(oldName: String, newName: String, stackType: DBXTeamLogDashStackType?) { + self.swift = TeamLog.DashRenamedStackDetails(oldName: oldName, newName: newName, stackType: stackType?.swift) } - let swift: TeamLog.DomainInvitesEmailExistingUsersDetails + let swift: TeamLog.DashRenamedStackDetails - public init(swift: TeamLog.DomainInvitesEmailExistingUsersDetails) { + public init(swift: TeamLog.DashRenamedStackDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible DomainInvitesEmailExistingUsersType struct +/// Objective-C compatible DashRenamedStackType struct @objc -public class DBXTeamLogDomainInvitesEmailExistingUsersType: NSObject { +public class DBXTeamLogDashRenamedStackType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.DomainInvitesEmailExistingUsersType(description_: description_) + self.swift = TeamLog.DashRenamedStackType(description_: description_) } - let swift: TeamLog.DomainInvitesEmailExistingUsersType + let swift: TeamLog.DashRenamedStackType - public init(swift: TeamLog.DomainInvitesEmailExistingUsersType) { + public init(swift: TeamLog.DashRenamedStackType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Requested to join team. +/// Shared a link to a stack. @objc -public class DBXTeamLogDomainInvitesRequestToJoinTeamDetails: NSObject { - let swift: TeamLog.DomainInvitesRequestToJoinTeamDetails +public class DBXTeamLogDashSharedLinkToStackDetails: NSObject { + /// The name of the stack. + @objc + public var stackName: String { swift.stackName } + /// The type of stack backend. + @objc + public var stackType: DBXTeamLogDashStackType? { guard let swift = swift.stackType else { return nil }; return DBXTeamLogDashStackType(swift: swift) } - public init(swift: TeamLog.DomainInvitesRequestToJoinTeamDetails) { + @objc + public init(stackName: String, stackType: DBXTeamLogDashStackType?) { + self.swift = TeamLog.DashSharedLinkToStackDetails(stackName: stackName, stackType: stackType?.swift) + } + + let swift: TeamLog.DashSharedLinkToStackDetails + + public init(swift: TeamLog.DashSharedLinkToStackDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible DomainInvitesRequestToJoinTeamType struct +/// Objective-C compatible DashSharedLinkToStackType struct @objc -public class DBXTeamLogDomainInvitesRequestToJoinTeamType: NSObject { +public class DBXTeamLogDashSharedLinkToStackType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.DomainInvitesRequestToJoinTeamType(description_: description_) + self.swift = TeamLog.DashSharedLinkToStackType(description_: description_) } - let swift: TeamLog.DomainInvitesRequestToJoinTeamType + let swift: TeamLog.DashSharedLinkToStackType - public init(swift: TeamLog.DomainInvitesRequestToJoinTeamType) { + public init(swift: TeamLog.DashSharedLinkToStackType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Disabled "Automatically invite new users". +/// The stack sharing scope @objc -public class DBXTeamLogDomainInvitesSetInviteNewUserPrefToNoDetails: NSObject { - let swift: TeamLog.DomainInvitesSetInviteNewUserPrefToNoDetails +public class DBXTeamLogDashStackSharingScope: NSObject { + let swift: TeamLog.DashStackSharingScope - public init(swift: TeamLog.DomainInvitesSetInviteNewUserPrefToNoDetails) { + public init(swift: TeamLog.DashStackSharingScope) { self.swift = swift } + public static func factory(swift: TeamLog.DashStackSharingScope) -> DBXTeamLogDashStackSharingScope { + switch swift { + case .invited: + return DBXTeamLogDashStackSharingScopeInvited() + case .public_: + return DBXTeamLogDashStackSharingScopePublic_() + case .team: + return DBXTeamLogDashStackSharingScopeTeam() + case .unknown: + return DBXTeamLogDashStackSharingScopeUnknown() + case .other: + return DBXTeamLogDashStackSharingScopeOther() + } + } + @objc public override var description: String { swift.description } -} -/// Objective-C compatible DomainInvitesSetInviteNewUserPrefToNoType struct -@objc -public class DBXTeamLogDomainInvitesSetInviteNewUserPrefToNoType: NSObject { - /// (no description) @objc - public var description_: String { swift.description_ } + public var asInvited: DBXTeamLogDashStackSharingScopeInvited? { + return self as? DBXTeamLogDashStackSharingScopeInvited + } @objc - public init(description_: String) { - self.swift = TeamLog.DomainInvitesSetInviteNewUserPrefToNoType(description_: description_) + public var asPublic_: DBXTeamLogDashStackSharingScopePublic_? { + return self as? DBXTeamLogDashStackSharingScopePublic_ } - let swift: TeamLog.DomainInvitesSetInviteNewUserPrefToNoType + @objc + public var asTeam: DBXTeamLogDashStackSharingScopeTeam? { + return self as? DBXTeamLogDashStackSharingScopeTeam + } - public init(swift: TeamLog.DomainInvitesSetInviteNewUserPrefToNoType) { - self.swift = swift + @objc + public var asUnknown: DBXTeamLogDashStackSharingScopeUnknown? { + return self as? DBXTeamLogDashStackSharingScopeUnknown } @objc - public override var description: String { swift.description } + public var asOther: DBXTeamLogDashStackSharingScopeOther? { + return self as? DBXTeamLogDashStackSharingScopeOther + } } -/// Enabled "Automatically invite new users". +/// An unspecified error. @objc -public class DBXTeamLogDomainInvitesSetInviteNewUserPrefToYesDetails: NSObject { - let swift: TeamLog.DomainInvitesSetInviteNewUserPrefToYesDetails - - public init(swift: TeamLog.DomainInvitesSetInviteNewUserPrefToYesDetails) { - self.swift = swift - } - +public class DBXTeamLogDashStackSharingScopeInvited: DBXTeamLogDashStackSharingScope { @objc - public override var description: String { swift.description } + public init() { + let swift = TeamLog.DashStackSharingScope.invited + super.init(swift: swift) + } } -/// Objective-C compatible DomainInvitesSetInviteNewUserPrefToYesType struct +/// An unspecified error. @objc -public class DBXTeamLogDomainInvitesSetInviteNewUserPrefToYesType: NSObject { - /// (no description) +public class DBXTeamLogDashStackSharingScopePublic_: DBXTeamLogDashStackSharingScope { @objc - public var description_: String { swift.description_ } + public init() { + let swift = TeamLog.DashStackSharingScope.public_ + super.init(swift: swift) + } +} +/// An unspecified error. +@objc +public class DBXTeamLogDashStackSharingScopeTeam: DBXTeamLogDashStackSharingScope { @objc - public init(description_: String) { - self.swift = TeamLog.DomainInvitesSetInviteNewUserPrefToYesType(description_: description_) + public init() { + let swift = TeamLog.DashStackSharingScope.team + super.init(swift: swift) } +} - let swift: TeamLog.DomainInvitesSetInviteNewUserPrefToYesType - - public init(swift: TeamLog.DomainInvitesSetInviteNewUserPrefToYesType) { - self.swift = swift +/// An unspecified error. +@objc +public class DBXTeamLogDashStackSharingScopeUnknown: DBXTeamLogDashStackSharingScope { + @objc + public init() { + let swift = TeamLog.DashStackSharingScope.unknown + super.init(swift: swift) } +} +/// An unspecified error. +@objc +public class DBXTeamLogDashStackSharingScopeOther: DBXTeamLogDashStackSharingScope { @objc - public override var description: String { swift.description } + public init() { + let swift = TeamLog.DashStackSharingScope.other + super.init(swift: swift) + } } -/// Failed to verify team domain. +/// The type of stack backend @objc -public class DBXTeamLogDomainVerificationAddDomainFailDetails: NSObject { - /// Domain name. - @objc - public var domainName: String { swift.domainName } - /// Domain name verification method. Might be missing due to historical data gap. +public class DBXTeamLogDashStackType: NSObject { + let swift: TeamLog.DashStackType + + public init(swift: TeamLog.DashStackType) { + self.swift = swift + } + + public static func factory(swift: TeamLog.DashStackType) -> DBXTeamLogDashStackType { + switch swift { + case .cypress: + return DBXTeamLogDashStackTypeCypress() + case .referenceContainer: + return DBXTeamLogDashStackTypeReferenceContainer() + case .unknown: + return DBXTeamLogDashStackTypeUnknown() + case .other: + return DBXTeamLogDashStackTypeOther() + } + } + @objc - public var verificationMethod: String? { swift.verificationMethod } + public override var description: String { swift.description } @objc - public init(domainName: String, verificationMethod: String?) { - self.swift = TeamLog.DomainVerificationAddDomainFailDetails(domainName: domainName, verificationMethod: verificationMethod) + public var asCypress: DBXTeamLogDashStackTypeCypress? { + return self as? DBXTeamLogDashStackTypeCypress } - let swift: TeamLog.DomainVerificationAddDomainFailDetails + @objc + public var asReferenceContainer: DBXTeamLogDashStackTypeReferenceContainer? { + return self as? DBXTeamLogDashStackTypeReferenceContainer + } - public init(swift: TeamLog.DomainVerificationAddDomainFailDetails) { - self.swift = swift + @objc + public var asUnknown: DBXTeamLogDashStackTypeUnknown? { + return self as? DBXTeamLogDashStackTypeUnknown } @objc - public override var description: String { swift.description } + public var asOther: DBXTeamLogDashStackTypeOther? { + return self as? DBXTeamLogDashStackTypeOther + } } -/// Objective-C compatible DomainVerificationAddDomainFailType struct +/// An unspecified error. @objc -public class DBXTeamLogDomainVerificationAddDomainFailType: NSObject { - /// (no description) +public class DBXTeamLogDashStackTypeCypress: DBXTeamLogDashStackType { @objc - public var description_: String { swift.description_ } + public init() { + let swift = TeamLog.DashStackType.cypress + super.init(swift: swift) + } +} +/// An unspecified error. +@objc +public class DBXTeamLogDashStackTypeReferenceContainer: DBXTeamLogDashStackType { @objc - public init(description_: String) { - self.swift = TeamLog.DomainVerificationAddDomainFailType(description_: description_) + public init() { + let swift = TeamLog.DashStackType.referenceContainer + super.init(swift: swift) } +} - let swift: TeamLog.DomainVerificationAddDomainFailType - - public init(swift: TeamLog.DomainVerificationAddDomainFailType) { - self.swift = swift +/// An unspecified error. +@objc +public class DBXTeamLogDashStackTypeUnknown: DBXTeamLogDashStackType { + @objc + public init() { + let swift = TeamLog.DashStackType.unknown + super.init(swift: swift) } +} +/// An unspecified error. +@objc +public class DBXTeamLogDashStackTypeOther: DBXTeamLogDashStackType { @objc - public override var description: String { swift.description } + public init() { + let swift = TeamLog.DashStackType.other + super.init(swift: swift) + } } -/// Verified team domain. +/// Unarchived a stack. @objc -public class DBXTeamLogDomainVerificationAddDomainSuccessDetails: NSObject { - /// Domain names. +public class DBXTeamLogDashUnarchivedStackDetails: NSObject { + /// The name of the stack. @objc - public var domainNames: [String] { swift.domainNames } - /// Domain name verification method. Might be missing due to historical data gap. + public var stackName: String { swift.stackName } + /// The type of stack backend. @objc - public var verificationMethod: String? { swift.verificationMethod } + public var stackType: DBXTeamLogDashStackType? { guard let swift = swift.stackType else { return nil }; return DBXTeamLogDashStackType(swift: swift) } @objc - public init(domainNames: [String], verificationMethod: String?) { - self.swift = TeamLog.DomainVerificationAddDomainSuccessDetails(domainNames: domainNames, verificationMethod: verificationMethod) + public init(stackName: String, stackType: DBXTeamLogDashStackType?) { + self.swift = TeamLog.DashUnarchivedStackDetails(stackName: stackName, stackType: stackType?.swift) } - let swift: TeamLog.DomainVerificationAddDomainSuccessDetails + let swift: TeamLog.DashUnarchivedStackDetails - public init(swift: TeamLog.DomainVerificationAddDomainSuccessDetails) { + public init(swift: TeamLog.DashUnarchivedStackDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible DomainVerificationAddDomainSuccessType struct +/// Objective-C compatible DashUnarchivedStackType struct @objc -public class DBXTeamLogDomainVerificationAddDomainSuccessType: NSObject { +public class DBXTeamLogDashUnarchivedStackType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.DomainVerificationAddDomainSuccessType(description_: description_) + self.swift = TeamLog.DashUnarchivedStackType(description_: description_) } - let swift: TeamLog.DomainVerificationAddDomainSuccessType + let swift: TeamLog.DashUnarchivedStackType - public init(swift: TeamLog.DomainVerificationAddDomainSuccessType) { + public init(swift: TeamLog.DashUnarchivedStackType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Removed domain from list of verified team domains. +/// Member viewed a company stack. @objc -public class DBXTeamLogDomainVerificationRemoveDomainDetails: NSObject { - /// Domain names. +public class DBXTeamLogDashViewedCompanyStackDetails: NSObject { + /// The name of the stack. @objc - public var domainNames: [String] { swift.domainNames } + public var stackName: String { swift.stackName } + /// The type of stack backend. + @objc + public var stackType: DBXTeamLogDashStackType? { guard let swift = swift.stackType else { return nil }; return DBXTeamLogDashStackType(swift: swift) } @objc - public init(domainNames: [String]) { - self.swift = TeamLog.DomainVerificationRemoveDomainDetails(domainNames: domainNames) + public init(stackName: String, stackType: DBXTeamLogDashStackType?) { + self.swift = TeamLog.DashViewedCompanyStackDetails(stackName: stackName, stackType: stackType?.swift) } - let swift: TeamLog.DomainVerificationRemoveDomainDetails + let swift: TeamLog.DashViewedCompanyStackDetails - public init(swift: TeamLog.DomainVerificationRemoveDomainDetails) { + public init(swift: TeamLog.DashViewedCompanyStackDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible DomainVerificationRemoveDomainType struct +/// Objective-C compatible DashViewedCompanyStackType struct @objc -public class DBXTeamLogDomainVerificationRemoveDomainType: NSObject { +public class DBXTeamLogDashViewedCompanyStackType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.DomainVerificationRemoveDomainType(description_: description_) + self.swift = TeamLog.DashViewedCompanyStackType(description_: description_) } - let swift: TeamLog.DomainVerificationRemoveDomainType + let swift: TeamLog.DashViewedCompanyStackType - public init(swift: TeamLog.DomainVerificationRemoveDomainType) { + public init(swift: TeamLog.DashViewedCompanyStackType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Shared content downloads policy +/// Admin viewed the external AI activity report. @objc -public class DBXTeamLogDownloadPolicyType: NSObject { - let swift: TeamLog.DownloadPolicyType +public class DBXTeamLogDashViewedExternalAiActivityReportDetails: NSObject { - public init(swift: TeamLog.DownloadPolicyType) { + let swift: TeamLog.DashViewedExternalAiActivityReportDetails + + public init(swift: TeamLog.DashViewedExternalAiActivityReportDetails) { self.swift = swift } - public static func factory(swift: TeamLog.DownloadPolicyType) -> DBXTeamLogDownloadPolicyType { - switch swift { - case .allow: - return DBXTeamLogDownloadPolicyTypeAllow() - case .disallow: - return DBXTeamLogDownloadPolicyTypeDisallow() - case .other: - return DBXTeamLogDownloadPolicyTypeOther() - } - } @objc public override var description: String { swift.description } +} +/// Objective-C compatible DashViewedExternalAiActivityReportType struct +@objc +public class DBXTeamLogDashViewedExternalAiActivityReportType: NSObject { + /// (no description) @objc - public var asAllow: DBXTeamLogDownloadPolicyTypeAllow? { - self as? DBXTeamLogDownloadPolicyTypeAllow - } + public var description_: String { swift.description_ } @objc - public var asDisallow: DBXTeamLogDownloadPolicyTypeDisallow? { - self as? DBXTeamLogDownloadPolicyTypeDisallow + public init(description_: String) { + self.swift = TeamLog.DashViewedExternalAiActivityReportType(description_: description_) } - @objc - public var asOther: DBXTeamLogDownloadPolicyTypeOther? { - self as? DBXTeamLogDownloadPolicyTypeOther - } -} + let swift: TeamLog.DashViewedExternalAiActivityReportType -/// An unspecified error. -@objc -public class DBXTeamLogDownloadPolicyTypeAllow: DBXTeamLogDownloadPolicyType { - @objc - public init() { - let swift = TeamLog.DownloadPolicyType.allow - super.init(swift: swift) + public init(swift: TeamLog.DashViewedExternalAiActivityReportType) { + self.swift = swift } -} -/// An unspecified error. -@objc -public class DBXTeamLogDownloadPolicyTypeDisallow: DBXTeamLogDownloadPolicyType { - @objc - public init() { - let swift = TeamLog.DownloadPolicyType.disallow - super.init(swift: swift) - } -} -/// An unspecified error. -@objc -public class DBXTeamLogDownloadPolicyTypeOther: DBXTeamLogDownloadPolicyType { @objc - public init() { - let swift = TeamLog.DownloadPolicyType.other - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// Exported passwords. +/// Set restrictions on data center locations where team data resides. @objc -public class DBXTeamLogDropboxPasswordsExportedDetails: NSObject { - /// The platform the device runs export. +public class DBXTeamLogDataPlacementRestrictionChangePolicyDetails: NSObject { + /// Previous placement restriction. @objc - public var platform: String { swift.platform } + public var previousValue: DBXTeamLogPlacementRestriction { DBXTeamLogPlacementRestriction(swift: swift.previousValue) } + /// New placement restriction. + @objc + public var newValue: DBXTeamLogPlacementRestriction { DBXTeamLogPlacementRestriction(swift: swift.newValue) } @objc - public init(platform: String) { - self.swift = TeamLog.DropboxPasswordsExportedDetails(platform: platform) + public init(previousValue: DBXTeamLogPlacementRestriction, newValue: DBXTeamLogPlacementRestriction) { + self.swift = TeamLog.DataPlacementRestrictionChangePolicyDetails(previousValue: previousValue.swift, newValue: newValue.swift) } - let swift: TeamLog.DropboxPasswordsExportedDetails + let swift: TeamLog.DataPlacementRestrictionChangePolicyDetails - public init(swift: TeamLog.DropboxPasswordsExportedDetails) { + public init(swift: TeamLog.DataPlacementRestrictionChangePolicyDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible DropboxPasswordsExportedType struct +/// Objective-C compatible DataPlacementRestrictionChangePolicyType struct @objc -public class DBXTeamLogDropboxPasswordsExportedType: NSObject { +public class DBXTeamLogDataPlacementRestrictionChangePolicyType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.DropboxPasswordsExportedType(description_: description_) + self.swift = TeamLog.DataPlacementRestrictionChangePolicyType(description_: description_) } - let swift: TeamLog.DropboxPasswordsExportedType + let swift: TeamLog.DataPlacementRestrictionChangePolicyType - public init(swift: TeamLog.DropboxPasswordsExportedType) { + public init(swift: TeamLog.DataPlacementRestrictionChangePolicyType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Enrolled new Dropbox Passwords device. +/// Completed restrictions on data center locations where team data resides. @objc -public class DBXTeamLogDropboxPasswordsNewDeviceEnrolledDetails: NSObject { - /// Whether it's a first device enrolled. - @objc - public var isFirstDevice: NSNumber { swift.isFirstDevice as NSNumber } - /// The platform the device is enrolled. +public class DBXTeamLogDataPlacementRestrictionSatisfyPolicyDetails: NSObject { + /// Placement restriction. @objc - public var platform: String { swift.platform } + public var placementRestriction: DBXTeamLogPlacementRestriction { DBXTeamLogPlacementRestriction(swift: swift.placementRestriction) } @objc - public init(isFirstDevice: NSNumber, platform: String) { - self.swift = TeamLog.DropboxPasswordsNewDeviceEnrolledDetails(isFirstDevice: isFirstDevice.boolValue, platform: platform) + public init(placementRestriction: DBXTeamLogPlacementRestriction) { + self.swift = TeamLog.DataPlacementRestrictionSatisfyPolicyDetails(placementRestriction: placementRestriction.swift) } - let swift: TeamLog.DropboxPasswordsNewDeviceEnrolledDetails + let swift: TeamLog.DataPlacementRestrictionSatisfyPolicyDetails - public init(swift: TeamLog.DropboxPasswordsNewDeviceEnrolledDetails) { + public init(swift: TeamLog.DataPlacementRestrictionSatisfyPolicyDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible DropboxPasswordsNewDeviceEnrolledType struct +/// Objective-C compatible DataPlacementRestrictionSatisfyPolicyType struct @objc -public class DBXTeamLogDropboxPasswordsNewDeviceEnrolledType: NSObject { +public class DBXTeamLogDataPlacementRestrictionSatisfyPolicyType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.DropboxPasswordsNewDeviceEnrolledType(description_: description_) + self.swift = TeamLog.DataPlacementRestrictionSatisfyPolicyType(description_: description_) } - let swift: TeamLog.DropboxPasswordsNewDeviceEnrolledType + let swift: TeamLog.DataPlacementRestrictionSatisfyPolicyType - public init(swift: TeamLog.DropboxPasswordsNewDeviceEnrolledType) { + public init(swift: TeamLog.DataPlacementRestrictionSatisfyPolicyType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Policy for deciding whether team users can use Dropbox Passwords +/// Requested data residency migration for team data. @objc -public class DBXTeamLogDropboxPasswordsPolicy: NSObject { - let swift: TeamLog.DropboxPasswordsPolicy +public class DBXTeamLogDataResidencyMigrationRequestSuccessfulDetails: NSObject { - public init(swift: TeamLog.DropboxPasswordsPolicy) { + let swift: TeamLog.DataResidencyMigrationRequestSuccessfulDetails + + public init(swift: TeamLog.DataResidencyMigrationRequestSuccessfulDetails) { self.swift = swift } - public static func factory(swift: TeamLog.DropboxPasswordsPolicy) -> DBXTeamLogDropboxPasswordsPolicy { - switch swift { - case .default_: - return DBXTeamLogDropboxPasswordsPolicyDefault_() - case .disabled: - return DBXTeamLogDropboxPasswordsPolicyDisabled() - case .enabled: - return DBXTeamLogDropboxPasswordsPolicyEnabled() - case .other: - return DBXTeamLogDropboxPasswordsPolicyOther() - } - } @objc public override var description: String { swift.description } +} +/// Objective-C compatible DataResidencyMigrationRequestSuccessfulType struct +@objc +public class DBXTeamLogDataResidencyMigrationRequestSuccessfulType: NSObject { + /// (no description) @objc - public var asDefault_: DBXTeamLogDropboxPasswordsPolicyDefault_? { - self as? DBXTeamLogDropboxPasswordsPolicyDefault_ - } + public var description_: String { swift.description_ } @objc - public var asDisabled: DBXTeamLogDropboxPasswordsPolicyDisabled? { - self as? DBXTeamLogDropboxPasswordsPolicyDisabled + public init(description_: String) { + self.swift = TeamLog.DataResidencyMigrationRequestSuccessfulType(description_: description_) } - @objc - public var asEnabled: DBXTeamLogDropboxPasswordsPolicyEnabled? { - self as? DBXTeamLogDropboxPasswordsPolicyEnabled - } + let swift: TeamLog.DataResidencyMigrationRequestSuccessfulType - @objc - public var asOther: DBXTeamLogDropboxPasswordsPolicyOther? { - self as? DBXTeamLogDropboxPasswordsPolicyOther + public init(swift: TeamLog.DataResidencyMigrationRequestSuccessfulType) { + self.swift = swift } -} -/// An unspecified error. -@objc -public class DBXTeamLogDropboxPasswordsPolicyDefault_: DBXTeamLogDropboxPasswordsPolicy { - @objc - public init() { - let swift = TeamLog.DropboxPasswordsPolicy.default_ - super.init(swift: swift) - } -} -/// An unspecified error. -@objc -public class DBXTeamLogDropboxPasswordsPolicyDisabled: DBXTeamLogDropboxPasswordsPolicy { @objc - public init() { - let swift = TeamLog.DropboxPasswordsPolicy.disabled - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// An unspecified error. +/// Request for data residency migration for team data has failed. @objc -public class DBXTeamLogDropboxPasswordsPolicyEnabled: DBXTeamLogDropboxPasswordsPolicy { - @objc - public init() { - let swift = TeamLog.DropboxPasswordsPolicy.enabled - super.init(swift: swift) +public class DBXTeamLogDataResidencyMigrationRequestUnsuccessfulDetails: NSObject { + + let swift: TeamLog.DataResidencyMigrationRequestUnsuccessfulDetails + + public init(swift: TeamLog.DataResidencyMigrationRequestUnsuccessfulDetails) { + self.swift = swift } -} -/// An unspecified error. -@objc -public class DBXTeamLogDropboxPasswordsPolicyOther: DBXTeamLogDropboxPasswordsPolicy { + @objc - public init() { - let swift = TeamLog.DropboxPasswordsPolicy.other - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// Changed Dropbox Passwords policy for team. +/// Objective-C compatible DataResidencyMigrationRequestUnsuccessfulType struct @objc -public class DBXTeamLogDropboxPasswordsPolicyChangedDetails: NSObject { - /// To. - @objc - public var newValue: DBXTeamLogDropboxPasswordsPolicy { DBXTeamLogDropboxPasswordsPolicy(swift: swift.newValue) } - /// From. +public class DBXTeamLogDataResidencyMigrationRequestUnsuccessfulType: NSObject { + /// (no description) @objc - public var previousValue: DBXTeamLogDropboxPasswordsPolicy { DBXTeamLogDropboxPasswordsPolicy(swift: swift.previousValue) } + public var description_: String { swift.description_ } @objc - public init(newValue: DBXTeamLogDropboxPasswordsPolicy, previousValue: DBXTeamLogDropboxPasswordsPolicy) { - self.swift = TeamLog.DropboxPasswordsPolicyChangedDetails(newValue: newValue.swift, previousValue: previousValue.swift) + public init(description_: String) { + self.swift = TeamLog.DataResidencyMigrationRequestUnsuccessfulType(description_: description_) } - let swift: TeamLog.DropboxPasswordsPolicyChangedDetails + let swift: TeamLog.DataResidencyMigrationRequestUnsuccessfulType - public init(swift: TeamLog.DropboxPasswordsPolicyChangedDetails) { + public init(swift: TeamLog.DataResidencyMigrationRequestUnsuccessfulType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible DropboxPasswordsPolicyChangedType struct +/// Policy for the default number of days until an externally shared link expires @objc -public class DBXTeamLogDropboxPasswordsPolicyChangedType: NSObject { - /// (no description) +public class DBXTeamLogDefaultLinkExpirationDaysPolicy: NSObject { + let swift: TeamLog.DefaultLinkExpirationDaysPolicy + + public init(swift: TeamLog.DefaultLinkExpirationDaysPolicy) { + self.swift = swift + } + + public static func factory(swift: TeamLog.DefaultLinkExpirationDaysPolicy) -> DBXTeamLogDefaultLinkExpirationDaysPolicy { + switch swift { + case .day1: + return DBXTeamLogDefaultLinkExpirationDaysPolicyDay1() + case .day180: + return DBXTeamLogDefaultLinkExpirationDaysPolicyDay180() + case .day3: + return DBXTeamLogDefaultLinkExpirationDaysPolicyDay3() + case .day30: + return DBXTeamLogDefaultLinkExpirationDaysPolicyDay30() + case .day7: + return DBXTeamLogDefaultLinkExpirationDaysPolicyDay7() + case .day90: + return DBXTeamLogDefaultLinkExpirationDaysPolicyDay90() + case .none: + return DBXTeamLogDefaultLinkExpirationDaysPolicyNone() + case .year1: + return DBXTeamLogDefaultLinkExpirationDaysPolicyYear1() + case .other: + return DBXTeamLogDefaultLinkExpirationDaysPolicyOther() + } + } + @objc - public var description_: String { swift.description_ } + public override var description: String { swift.description } @objc - public init(description_: String) { - self.swift = TeamLog.DropboxPasswordsPolicyChangedType(description_: description_) + public var asDay1: DBXTeamLogDefaultLinkExpirationDaysPolicyDay1? { + return self as? DBXTeamLogDefaultLinkExpirationDaysPolicyDay1 } - let swift: TeamLog.DropboxPasswordsPolicyChangedType - - public init(swift: TeamLog.DropboxPasswordsPolicyChangedType) { - self.swift = swift + @objc + public var asDay180: DBXTeamLogDefaultLinkExpirationDaysPolicyDay180? { + return self as? DBXTeamLogDefaultLinkExpirationDaysPolicyDay180 } @objc - public override var description: String { swift.description } -} + public var asDay3: DBXTeamLogDefaultLinkExpirationDaysPolicyDay3? { + return self as? DBXTeamLogDefaultLinkExpirationDaysPolicyDay3 + } -/// Represents a time duration: unit and amount -@objc -public class DBXTeamLogDurationLogInfo: NSObject { - /// Time unit. @objc - public var unit: DBXTeamLogTimeUnit { DBXTeamLogTimeUnit(swift: swift.unit) } - /// Amount of time. + public var asDay30: DBXTeamLogDefaultLinkExpirationDaysPolicyDay30? { + return self as? DBXTeamLogDefaultLinkExpirationDaysPolicyDay30 + } + @objc - public var amount: NSNumber { swift.amount as NSNumber } + public var asDay7: DBXTeamLogDefaultLinkExpirationDaysPolicyDay7? { + return self as? DBXTeamLogDefaultLinkExpirationDaysPolicyDay7 + } @objc - public init(unit: DBXTeamLogTimeUnit, amount: NSNumber) { - self.swift = TeamLog.DurationLogInfo(unit: unit.swift, amount: amount.uint64Value) + public var asDay90: DBXTeamLogDefaultLinkExpirationDaysPolicyDay90? { + return self as? DBXTeamLogDefaultLinkExpirationDaysPolicyDay90 } - let swift: TeamLog.DurationLogInfo + @objc + public var asNone: DBXTeamLogDefaultLinkExpirationDaysPolicyNone? { + return self as? DBXTeamLogDefaultLinkExpirationDaysPolicyNone + } - public init(swift: TeamLog.DurationLogInfo) { - self.swift = swift + @objc + public var asYear1: DBXTeamLogDefaultLinkExpirationDaysPolicyYear1? { + return self as? DBXTeamLogDefaultLinkExpirationDaysPolicyYear1 } @objc - public override var description: String { swift.description } + public var asOther: DBXTeamLogDefaultLinkExpirationDaysPolicyOther? { + return self as? DBXTeamLogDefaultLinkExpirationDaysPolicyOther + } } -/// Policy for deciding whether a team can use Email to Dropbox feature +/// An unspecified error. @objc -public class DBXTeamLogEmailIngestPolicy: NSObject { - let swift: TeamLog.EmailIngestPolicy - - public init(swift: TeamLog.EmailIngestPolicy) { - self.swift = swift +public class DBXTeamLogDefaultLinkExpirationDaysPolicyDay1: DBXTeamLogDefaultLinkExpirationDaysPolicy { + @objc + public init() { + let swift = TeamLog.DefaultLinkExpirationDaysPolicy.day1 + super.init(swift: swift) } +} - public static func factory(swift: TeamLog.EmailIngestPolicy) -> DBXTeamLogEmailIngestPolicy { - switch swift { - case .disabled: - return DBXTeamLogEmailIngestPolicyDisabled() - case .enabled: - return DBXTeamLogEmailIngestPolicyEnabled() - case .other: - return DBXTeamLogEmailIngestPolicyOther() - } +/// An unspecified error. +@objc +public class DBXTeamLogDefaultLinkExpirationDaysPolicyDay180: DBXTeamLogDefaultLinkExpirationDaysPolicy { + @objc + public init() { + let swift = TeamLog.DefaultLinkExpirationDaysPolicy.day180 + super.init(swift: swift) } +} +/// An unspecified error. +@objc +public class DBXTeamLogDefaultLinkExpirationDaysPolicyDay3: DBXTeamLogDefaultLinkExpirationDaysPolicy { @objc - public override var description: String { swift.description } + public init() { + let swift = TeamLog.DefaultLinkExpirationDaysPolicy.day3 + super.init(swift: swift) + } +} +/// An unspecified error. +@objc +public class DBXTeamLogDefaultLinkExpirationDaysPolicyDay30: DBXTeamLogDefaultLinkExpirationDaysPolicy { @objc - public var asDisabled: DBXTeamLogEmailIngestPolicyDisabled? { - self as? DBXTeamLogEmailIngestPolicyDisabled + public init() { + let swift = TeamLog.DefaultLinkExpirationDaysPolicy.day30 + super.init(swift: swift) } +} +/// An unspecified error. +@objc +public class DBXTeamLogDefaultLinkExpirationDaysPolicyDay7: DBXTeamLogDefaultLinkExpirationDaysPolicy { @objc - public var asEnabled: DBXTeamLogEmailIngestPolicyEnabled? { - self as? DBXTeamLogEmailIngestPolicyEnabled + public init() { + let swift = TeamLog.DefaultLinkExpirationDaysPolicy.day7 + super.init(swift: swift) } +} +/// An unspecified error. +@objc +public class DBXTeamLogDefaultLinkExpirationDaysPolicyDay90: DBXTeamLogDefaultLinkExpirationDaysPolicy { @objc - public var asOther: DBXTeamLogEmailIngestPolicyOther? { - self as? DBXTeamLogEmailIngestPolicyOther + public init() { + let swift = TeamLog.DefaultLinkExpirationDaysPolicy.day90 + super.init(swift: swift) } } /// An unspecified error. @objc -public class DBXTeamLogEmailIngestPolicyDisabled: DBXTeamLogEmailIngestPolicy { +public class DBXTeamLogDefaultLinkExpirationDaysPolicyNone: DBXTeamLogDefaultLinkExpirationDaysPolicy { @objc public init() { - let swift = TeamLog.EmailIngestPolicy.disabled + let swift = TeamLog.DefaultLinkExpirationDaysPolicy.none super.init(swift: swift) } } /// An unspecified error. @objc -public class DBXTeamLogEmailIngestPolicyEnabled: DBXTeamLogEmailIngestPolicy { +public class DBXTeamLogDefaultLinkExpirationDaysPolicyYear1: DBXTeamLogDefaultLinkExpirationDaysPolicy { @objc public init() { - let swift = TeamLog.EmailIngestPolicy.enabled + let swift = TeamLog.DefaultLinkExpirationDaysPolicy.year1 super.init(swift: swift) } } /// An unspecified error. @objc -public class DBXTeamLogEmailIngestPolicyOther: DBXTeamLogEmailIngestPolicy { +public class DBXTeamLogDefaultLinkExpirationDaysPolicyOther: DBXTeamLogDefaultLinkExpirationDaysPolicy { @objc public init() { - let swift = TeamLog.EmailIngestPolicy.other + let swift = TeamLog.DefaultLinkExpirationDaysPolicy.other super.init(swift: swift) } } -/// Changed email to Dropbox policy for team. +/// Deleted team invite link. @objc -public class DBXTeamLogEmailIngestPolicyChangedDetails: NSObject { - /// To. - @objc - public var newValue: DBXTeamLogEmailIngestPolicy { DBXTeamLogEmailIngestPolicy(swift: swift.newValue) } - /// From. +public class DBXTeamLogDeleteTeamInviteLinkDetails: NSObject { + /// The invite link url that was deleted. @objc - public var previousValue: DBXTeamLogEmailIngestPolicy { DBXTeamLogEmailIngestPolicy(swift: swift.previousValue) } + public var linkUrl: String { swift.linkUrl } @objc - public init(newValue: DBXTeamLogEmailIngestPolicy, previousValue: DBXTeamLogEmailIngestPolicy) { - self.swift = TeamLog.EmailIngestPolicyChangedDetails(newValue: newValue.swift, previousValue: previousValue.swift) + public init(linkUrl: String) { + self.swift = TeamLog.DeleteTeamInviteLinkDetails(linkUrl: linkUrl) } - let swift: TeamLog.EmailIngestPolicyChangedDetails + let swift: TeamLog.DeleteTeamInviteLinkDetails - public init(swift: TeamLog.EmailIngestPolicyChangedDetails) { + public init(swift: TeamLog.DeleteTeamInviteLinkDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible EmailIngestPolicyChangedType struct +/// Objective-C compatible DeleteTeamInviteLinkType struct @objc -public class DBXTeamLogEmailIngestPolicyChangedType: NSObject { +public class DBXTeamLogDeleteTeamInviteLinkType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.EmailIngestPolicyChangedType(description_: description_) + self.swift = TeamLog.DeleteTeamInviteLinkType(description_: description_) } - let swift: TeamLog.EmailIngestPolicyChangedType + let swift: TeamLog.DeleteTeamInviteLinkType - public init(swift: TeamLog.EmailIngestPolicyChangedType) { + public init(swift: TeamLog.DeleteTeamInviteLinkType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Received files via Email to Dropbox. +/// Device's session logged information. @objc -public class DBXTeamLogEmailIngestReceiveFileDetails: NSObject { - /// Inbox name. +public class DBXTeamLogDeviceSessionLogInfo: NSObject { + /// The IP address of the last activity from this session. @objc - public var inboxName: String { swift.inboxName } - /// Submitted file names. + public var ipAddress: String? { swift.ipAddress } + /// The time this session was created. @objc - public var attachmentNames: [String] { swift.attachmentNames } - /// Subject of the email. - @objc - public var subject: String? { swift.subject } - /// The name as provided by the submitter. - @objc - public var fromName: String? { swift.fromName } - /// The email as provided by the submitter. + public var created: Date? { swift.created } + /// The time of the last activity from this session. @objc - public var fromEmail: String? { swift.fromEmail } + public var updated: Date? { swift.updated } @objc - public init(inboxName: String, attachmentNames: [String], subject: String?, fromName: String?, fromEmail: String?) { - self.swift = TeamLog.EmailIngestReceiveFileDetails( - inboxName: inboxName, - attachmentNames: attachmentNames, - subject: subject, - fromName: fromName, - fromEmail: fromEmail - ) + public init(ipAddress: String?, created: Date?, updated: Date?) { + self.swift = TeamLog.DeviceSessionLogInfo(ipAddress: ipAddress, created: created, updated: updated) } - let swift: TeamLog.EmailIngestReceiveFileDetails + let swift: TeamLog.DeviceSessionLogInfo - public init(swift: TeamLog.EmailIngestReceiveFileDetails) { + public init(swift: TeamLog.DeviceSessionLogInfo) { self.swift = swift } + public static func wrapPreservingSubtypes(swift: TeamLog.DeviceSessionLogInfo) -> DBXTeamLogDeviceSessionLogInfo { + switch swift { + case let desktopDeviceSessionLogInfo as TeamLog.DesktopDeviceSessionLogInfo: + return DBXTeamLogDesktopDeviceSessionLogInfo(swift: desktopDeviceSessionLogInfo) + case let legacyDeviceSessionLogInfo as TeamLog.LegacyDeviceSessionLogInfo: + return DBXTeamLogLegacyDeviceSessionLogInfo(swift: legacyDeviceSessionLogInfo) + case let mobileDeviceSessionLogInfo as TeamLog.MobileDeviceSessionLogInfo: + return DBXTeamLogMobileDeviceSessionLogInfo(swift: mobileDeviceSessionLogInfo) + case let webDeviceSessionLogInfo as TeamLog.WebDeviceSessionLogInfo: + return DBXTeamLogWebDeviceSessionLogInfo(swift: webDeviceSessionLogInfo) + default: + return DBXTeamLogDeviceSessionLogInfo(swift: swift) + } + } + @objc public override var description: String { swift.description } } -/// Objective-C compatible EmailIngestReceiveFileType struct +/// Information about linked Dropbox desktop client sessions @objc -public class DBXTeamLogEmailIngestReceiveFileType: NSObject { - /// (no description) +public class DBXTeamLogDesktopDeviceSessionLogInfo: DBXTeamLogDeviceSessionLogInfo { + /// Desktop session unique id. @objc - public var description_: String { swift.description_ } + public var sessionInfo: DBXTeamLogDesktopSessionLogInfo? { guard let swift = subSwift.sessionInfo else { return nil }; return DBXTeamLogDesktopSessionLogInfo(swift: swift) } + /// Name of the hosting desktop. + @objc + public var hostName: String { subSwift.hostName } + /// The Dropbox desktop client type. + @objc + public var clientType: DBXTeamDesktopPlatform { DBXTeamDesktopPlatform(swift: subSwift.clientType) } + /// The Dropbox client version. + @objc + public var clientVersion: String? { subSwift.clientVersion } + /// Information on the hosting platform. + @objc + public var platform: String { subSwift.platform } + /// Whether itu2019s possible to delete all of the account files upon unlinking. + @objc + public var isDeleteOnUnlinkSupported: NSNumber { subSwift.isDeleteOnUnlinkSupported as NSNumber } @objc - public init(description_: String) { - self.swift = TeamLog.EmailIngestReceiveFileType(description_: description_) + public init(hostName: String, clientType: DBXTeamDesktopPlatform, platform: String, isDeleteOnUnlinkSupported: NSNumber, ipAddress: String?, created: Date?, updated: Date?, sessionInfo: DBXTeamLogDesktopSessionLogInfo?, clientVersion: String?) { + let swift = TeamLog.DesktopDeviceSessionLogInfo(hostName: hostName, clientType: clientType.swift, platform: platform, isDeleteOnUnlinkSupported: isDeleteOnUnlinkSupported.boolValue, ipAddress: ipAddress, created: created, updated: updated, sessionInfo: sessionInfo?.subSwift, clientVersion: clientVersion) + self.subSwift = swift + super.init(swift: swift) } - let swift: TeamLog.EmailIngestReceiveFileType + let subSwift: TeamLog.DesktopDeviceSessionLogInfo - public init(swift: TeamLog.EmailIngestReceiveFileType) { - self.swift = swift + public init(swift: TeamLog.DesktopDeviceSessionLogInfo) { + self.subSwift = swift + super.init(swift: swift) } - @objc - public override var description: String { swift.description } -} - -/// Added members to EMM exception list. -@objc -public class DBXTeamLogEmmAddExceptionDetails: NSObject { - let swift: TeamLog.EmmAddExceptionDetails - - public init(swift: TeamLog.EmmAddExceptionDetails) { - self.swift = swift - } @objc - public override var description: String { swift.description } + public override var description: String { subSwift.description } } -/// Objective-C compatible EmmAddExceptionType struct +/// Session's logged information. @objc -public class DBXTeamLogEmmAddExceptionType: NSObject { - /// (no description) +public class DBXTeamLogSessionLogInfo: NSObject { + /// Session ID. @objc - public var description_: String { swift.description_ } + public var sessionId: String? { swift.sessionId } @objc - public init(description_: String) { - self.swift = TeamLog.EmmAddExceptionType(description_: description_) + public init(sessionId: String?) { + self.swift = TeamLog.SessionLogInfo(sessionId: sessionId) } - let swift: TeamLog.EmmAddExceptionType + let swift: TeamLog.SessionLogInfo - public init(swift: TeamLog.EmmAddExceptionType) { + public init(swift: TeamLog.SessionLogInfo) { self.swift = swift } + public static func wrapPreservingSubtypes(swift: TeamLog.SessionLogInfo) -> DBXTeamLogSessionLogInfo { + switch swift { + case let desktopSessionLogInfo as TeamLog.DesktopSessionLogInfo: + return DBXTeamLogDesktopSessionLogInfo(swift: desktopSessionLogInfo) + case let mobileSessionLogInfo as TeamLog.MobileSessionLogInfo: + return DBXTeamLogMobileSessionLogInfo(swift: mobileSessionLogInfo) + case let webSessionLogInfo as TeamLog.WebSessionLogInfo: + return DBXTeamLogWebSessionLogInfo(swift: webSessionLogInfo) + default: + return DBXTeamLogSessionLogInfo(swift: swift) + } + } + @objc public override var description: String { swift.description } } -/// Enabled/disabled enterprise mobility management for members. +/// Desktop session. @objc -public class DBXTeamLogEmmChangePolicyDetails: NSObject { - /// New enterprise mobility management policy. - @objc - public var newValue: DBXTeamPoliciesEmmState { DBXTeamPoliciesEmmState(swift: swift.newValue) } - /// Previous enterprise mobility management policy. Might be missing due to historical data gap. - @objc - public var previousValue: DBXTeamPoliciesEmmState? { guard let swift = swift.previousValue else { return nil } - return DBXTeamPoliciesEmmState(swift: swift) +public class DBXTeamLogDesktopSessionLogInfo: DBXTeamLogSessionLogInfo { + + let subSwift: TeamLog.DesktopSessionLogInfo + + public init(swift: TeamLog.DesktopSessionLogInfo) { + self.subSwift = swift + super.init(swift: swift) } + @objc - public init(newValue: DBXTeamPoliciesEmmState, previousValue: DBXTeamPoliciesEmmState?) { - self.swift = TeamLog.EmmChangePolicyDetails(newValue: newValue.swift, previousValue: previousValue?.swift) - } + public override var description: String { subSwift.description } +} - let swift: TeamLog.EmmChangePolicyDetails +/// Added members to device approvals exception list. +@objc +public class DBXTeamLogDeviceApprovalsAddExceptionDetails: NSObject { - public init(swift: TeamLog.EmmChangePolicyDetails) { + let swift: TeamLog.DeviceApprovalsAddExceptionDetails + + public init(swift: TeamLog.DeviceApprovalsAddExceptionDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible EmmChangePolicyType struct +/// Objective-C compatible DeviceApprovalsAddExceptionType struct @objc -public class DBXTeamLogEmmChangePolicyType: NSObject { +public class DBXTeamLogDeviceApprovalsAddExceptionType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.EmmChangePolicyType(description_: description_) + self.swift = TeamLog.DeviceApprovalsAddExceptionType(description_: description_) } - let swift: TeamLog.EmmChangePolicyType + let swift: TeamLog.DeviceApprovalsAddExceptionType - public init(swift: TeamLog.EmmChangePolicyType) { + public init(swift: TeamLog.DeviceApprovalsAddExceptionType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Created EMM-excluded users report. +/// Set/removed limit on number of computers member can link to team Dropbox account. @objc -public class DBXTeamLogEmmCreateExceptionsReportDetails: NSObject { - let swift: TeamLog.EmmCreateExceptionsReportDetails +public class DBXTeamLogDeviceApprovalsChangeDesktopPolicyDetails: NSObject { + /// New desktop device approvals policy. Might be missing due to historical data gap. + @objc + public var newValue: DBXTeamLogDeviceApprovalsPolicy? { guard let swift = swift.newValue else { return nil }; return DBXTeamLogDeviceApprovalsPolicy(swift: swift) } + /// Previous desktop device approvals policy. Might be missing due to historical data gap. + @objc + public var previousValue: DBXTeamLogDeviceApprovalsPolicy? { guard let swift = swift.previousValue else { return nil }; return DBXTeamLogDeviceApprovalsPolicy(swift: swift) } - public init(swift: TeamLog.EmmCreateExceptionsReportDetails) { + @objc + public init(newValue: DBXTeamLogDeviceApprovalsPolicy?, previousValue: DBXTeamLogDeviceApprovalsPolicy?) { + self.swift = TeamLog.DeviceApprovalsChangeDesktopPolicyDetails(newValue: newValue?.swift, previousValue: previousValue?.swift) + } + + let swift: TeamLog.DeviceApprovalsChangeDesktopPolicyDetails + + public init(swift: TeamLog.DeviceApprovalsChangeDesktopPolicyDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible EmmCreateExceptionsReportType struct +/// Objective-C compatible DeviceApprovalsChangeDesktopPolicyType struct @objc -public class DBXTeamLogEmmCreateExceptionsReportType: NSObject { +public class DBXTeamLogDeviceApprovalsChangeDesktopPolicyType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.EmmCreateExceptionsReportType(description_: description_) + self.swift = TeamLog.DeviceApprovalsChangeDesktopPolicyType(description_: description_) } - let swift: TeamLog.EmmCreateExceptionsReportType + let swift: TeamLog.DeviceApprovalsChangeDesktopPolicyType - public init(swift: TeamLog.EmmCreateExceptionsReportType) { + public init(swift: TeamLog.DeviceApprovalsChangeDesktopPolicyType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Created EMM mobile app usage report. +/// Set/removed limit on number of mobile devices member can link to team Dropbox account. @objc -public class DBXTeamLogEmmCreateUsageReportDetails: NSObject { - let swift: TeamLog.EmmCreateUsageReportDetails +public class DBXTeamLogDeviceApprovalsChangeMobilePolicyDetails: NSObject { + /// New mobile device approvals policy. Might be missing due to historical data gap. + @objc + public var newValue: DBXTeamLogDeviceApprovalsPolicy? { guard let swift = swift.newValue else { return nil }; return DBXTeamLogDeviceApprovalsPolicy(swift: swift) } + /// Previous mobile device approvals policy. Might be missing due to historical data gap. + @objc + public var previousValue: DBXTeamLogDeviceApprovalsPolicy? { guard let swift = swift.previousValue else { return nil }; return DBXTeamLogDeviceApprovalsPolicy(swift: swift) } - public init(swift: TeamLog.EmmCreateUsageReportDetails) { + @objc + public init(newValue: DBXTeamLogDeviceApprovalsPolicy?, previousValue: DBXTeamLogDeviceApprovalsPolicy?) { + self.swift = TeamLog.DeviceApprovalsChangeMobilePolicyDetails(newValue: newValue?.swift, previousValue: previousValue?.swift) + } + + let swift: TeamLog.DeviceApprovalsChangeMobilePolicyDetails + + public init(swift: TeamLog.DeviceApprovalsChangeMobilePolicyDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible EmmCreateUsageReportType struct +/// Objective-C compatible DeviceApprovalsChangeMobilePolicyType struct @objc -public class DBXTeamLogEmmCreateUsageReportType: NSObject { +public class DBXTeamLogDeviceApprovalsChangeMobilePolicyType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.EmmCreateUsageReportType(description_: description_) + self.swift = TeamLog.DeviceApprovalsChangeMobilePolicyType(description_: description_) } - let swift: TeamLog.EmmCreateUsageReportType + let swift: TeamLog.DeviceApprovalsChangeMobilePolicyType - public init(swift: TeamLog.EmmCreateUsageReportType) { + public init(swift: TeamLog.DeviceApprovalsChangeMobilePolicyType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Failed to sign in via EMM. +/// Changed device approvals setting when member is over limit. @objc -public class DBXTeamLogEmmErrorDetails: NSObject { - /// Error details. +public class DBXTeamLogDeviceApprovalsChangeOverageActionDetails: NSObject { + /// New over the limits policy. Might be missing due to historical data gap. @objc - public var errorDetails: DBXTeamLogFailureDetailsLogInfo { DBXTeamLogFailureDetailsLogInfo(swift: swift.errorDetails) } + public var newValue: DBXTeamPoliciesRolloutMethod? { guard let swift = swift.newValue else { return nil }; return DBXTeamPoliciesRolloutMethod(swift: swift) } + /// Previous over the limit policy. Might be missing due to historical data gap. + @objc + public var previousValue: DBXTeamPoliciesRolloutMethod? { guard let swift = swift.previousValue else { return nil }; return DBXTeamPoliciesRolloutMethod(swift: swift) } @objc - public init(errorDetails: DBXTeamLogFailureDetailsLogInfo) { - self.swift = TeamLog.EmmErrorDetails(errorDetails: errorDetails.swift) + public init(newValue: DBXTeamPoliciesRolloutMethod?, previousValue: DBXTeamPoliciesRolloutMethod?) { + self.swift = TeamLog.DeviceApprovalsChangeOverageActionDetails(newValue: newValue?.swift, previousValue: previousValue?.swift) } - let swift: TeamLog.EmmErrorDetails + let swift: TeamLog.DeviceApprovalsChangeOverageActionDetails - public init(swift: TeamLog.EmmErrorDetails) { + public init(swift: TeamLog.DeviceApprovalsChangeOverageActionDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible EmmErrorType struct +/// Objective-C compatible DeviceApprovalsChangeOverageActionType struct @objc -public class DBXTeamLogEmmErrorType: NSObject { +public class DBXTeamLogDeviceApprovalsChangeOverageActionType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.EmmErrorType(description_: description_) + self.swift = TeamLog.DeviceApprovalsChangeOverageActionType(description_: description_) } - let swift: TeamLog.EmmErrorType + let swift: TeamLog.DeviceApprovalsChangeOverageActionType - public init(swift: TeamLog.EmmErrorType) { + public init(swift: TeamLog.DeviceApprovalsChangeOverageActionType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Refreshed auth token used for setting up EMM. +/// Changed device approvals setting when member unlinks approved device. @objc -public class DBXTeamLogEmmRefreshAuthTokenDetails: NSObject { - let swift: TeamLog.EmmRefreshAuthTokenDetails +public class DBXTeamLogDeviceApprovalsChangeUnlinkActionDetails: NSObject { + /// New device unlink policy. Might be missing due to historical data gap. + @objc + public var newValue: DBXTeamLogDeviceUnlinkPolicy? { guard let swift = swift.newValue else { return nil }; return DBXTeamLogDeviceUnlinkPolicy(swift: swift) } + /// Previous device unlink policy. Might be missing due to historical data gap. + @objc + public var previousValue: DBXTeamLogDeviceUnlinkPolicy? { guard let swift = swift.previousValue else { return nil }; return DBXTeamLogDeviceUnlinkPolicy(swift: swift) } - public init(swift: TeamLog.EmmRefreshAuthTokenDetails) { + @objc + public init(newValue: DBXTeamLogDeviceUnlinkPolicy?, previousValue: DBXTeamLogDeviceUnlinkPolicy?) { + self.swift = TeamLog.DeviceApprovalsChangeUnlinkActionDetails(newValue: newValue?.swift, previousValue: previousValue?.swift) + } + + let swift: TeamLog.DeviceApprovalsChangeUnlinkActionDetails + + public init(swift: TeamLog.DeviceApprovalsChangeUnlinkActionDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible EmmRefreshAuthTokenType struct +/// Objective-C compatible DeviceApprovalsChangeUnlinkActionType struct @objc -public class DBXTeamLogEmmRefreshAuthTokenType: NSObject { +public class DBXTeamLogDeviceApprovalsChangeUnlinkActionType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.EmmRefreshAuthTokenType(description_: description_) + self.swift = TeamLog.DeviceApprovalsChangeUnlinkActionType(description_: description_) } - let swift: TeamLog.EmmRefreshAuthTokenType + let swift: TeamLog.DeviceApprovalsChangeUnlinkActionType - public init(swift: TeamLog.EmmRefreshAuthTokenType) { + public init(swift: TeamLog.DeviceApprovalsChangeUnlinkActionType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Removed members from EMM exception list. +/// Objective-C compatible DeviceApprovalsPolicy union @objc -public class DBXTeamLogEmmRemoveExceptionDetails: NSObject { - let swift: TeamLog.EmmRemoveExceptionDetails +public class DBXTeamLogDeviceApprovalsPolicy: NSObject { + let swift: TeamLog.DeviceApprovalsPolicy - public init(swift: TeamLog.EmmRemoveExceptionDetails) { + public init(swift: TeamLog.DeviceApprovalsPolicy) { self.swift = swift } + public static func factory(swift: TeamLog.DeviceApprovalsPolicy) -> DBXTeamLogDeviceApprovalsPolicy { + switch swift { + case .limited: + return DBXTeamLogDeviceApprovalsPolicyLimited() + case .unlimited: + return DBXTeamLogDeviceApprovalsPolicyUnlimited() + case .other: + return DBXTeamLogDeviceApprovalsPolicyOther() + } + } + @objc public override var description: String { swift.description } -} -/// Objective-C compatible EmmRemoveExceptionType struct -@objc -public class DBXTeamLogEmmRemoveExceptionType: NSObject { - /// (no description) @objc - public var description_: String { swift.description_ } + public var asLimited: DBXTeamLogDeviceApprovalsPolicyLimited? { + return self as? DBXTeamLogDeviceApprovalsPolicyLimited + } @objc - public init(description_: String) { - self.swift = TeamLog.EmmRemoveExceptionType(description_: description_) + public var asUnlimited: DBXTeamLogDeviceApprovalsPolicyUnlimited? { + return self as? DBXTeamLogDeviceApprovalsPolicyUnlimited } - let swift: TeamLog.EmmRemoveExceptionType + @objc + public var asOther: DBXTeamLogDeviceApprovalsPolicyOther? { + return self as? DBXTeamLogDeviceApprovalsPolicyOther + } +} - public init(swift: TeamLog.EmmRemoveExceptionType) { - self.swift = swift +/// An unspecified error. +@objc +public class DBXTeamLogDeviceApprovalsPolicyLimited: DBXTeamLogDeviceApprovalsPolicy { + @objc + public init() { + let swift = TeamLog.DeviceApprovalsPolicy.limited + super.init(swift: swift) } +} +/// An unspecified error. +@objc +public class DBXTeamLogDeviceApprovalsPolicyUnlimited: DBXTeamLogDeviceApprovalsPolicy { @objc - public override var description: String { swift.description } + public init() { + let swift = TeamLog.DeviceApprovalsPolicy.unlimited + super.init(swift: swift) + } } -/// Enabled domain invites. +/// An unspecified error. @objc -public class DBXTeamLogEnabledDomainInvitesDetails: NSObject { - let swift: TeamLog.EnabledDomainInvitesDetails +public class DBXTeamLogDeviceApprovalsPolicyOther: DBXTeamLogDeviceApprovalsPolicy { + @objc + public init() { + let swift = TeamLog.DeviceApprovalsPolicy.other + super.init(swift: swift) + } +} - public init(swift: TeamLog.EnabledDomainInvitesDetails) { +/// Removed members from device approvals exception list. +@objc +public class DBXTeamLogDeviceApprovalsRemoveExceptionDetails: NSObject { + + let swift: TeamLog.DeviceApprovalsRemoveExceptionDetails + + public init(swift: TeamLog.DeviceApprovalsRemoveExceptionDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible EnabledDomainInvitesType struct +/// Objective-C compatible DeviceApprovalsRemoveExceptionType struct @objc -public class DBXTeamLogEnabledDomainInvitesType: NSObject { +public class DBXTeamLogDeviceApprovalsRemoveExceptionType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.EnabledDomainInvitesType(description_: description_) + self.swift = TeamLog.DeviceApprovalsRemoveExceptionType(description_: description_) } - let swift: TeamLog.EnabledDomainInvitesType + let swift: TeamLog.DeviceApprovalsRemoveExceptionType - public init(swift: TeamLog.EnabledDomainInvitesType) { + public init(swift: TeamLog.DeviceApprovalsRemoveExceptionType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Ended enterprise admin session. +/// Changed IP address associated with active desktop session. @objc -public class DBXTeamLogEndedEnterpriseAdminSessionDeprecatedDetails: NSObject { - /// More information about the organization or team. +public class DBXTeamLogDeviceChangeIpDesktopDetails: NSObject { + /// Device's session logged information. @objc - public var federationExtraDetails: DBXTeamLogFedExtraDetails { DBXTeamLogFedExtraDetails(swift: swift.federationExtraDetails) } + public var deviceSessionInfo: DBXTeamLogDeviceSessionLogInfo { + return DBXTeamLogDeviceSessionLogInfo.wrapPreservingSubtypes(swift: swift.deviceSessionInfo) + } @objc - public init(federationExtraDetails: DBXTeamLogFedExtraDetails) { - self.swift = TeamLog.EndedEnterpriseAdminSessionDeprecatedDetails(federationExtraDetails: federationExtraDetails.swift) + public init(deviceSessionInfo: DBXTeamLogDeviceSessionLogInfo) { + self.swift = TeamLog.DeviceChangeIpDesktopDetails(deviceSessionInfo: deviceSessionInfo.swift) } - let swift: TeamLog.EndedEnterpriseAdminSessionDeprecatedDetails + let swift: TeamLog.DeviceChangeIpDesktopDetails - public init(swift: TeamLog.EndedEnterpriseAdminSessionDeprecatedDetails) { + public init(swift: TeamLog.DeviceChangeIpDesktopDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible EndedEnterpriseAdminSessionDeprecatedType struct +/// Objective-C compatible DeviceChangeIpDesktopType struct @objc -public class DBXTeamLogEndedEnterpriseAdminSessionDeprecatedType: NSObject { +public class DBXTeamLogDeviceChangeIpDesktopType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.EndedEnterpriseAdminSessionDeprecatedType(description_: description_) + self.swift = TeamLog.DeviceChangeIpDesktopType(description_: description_) } - let swift: TeamLog.EndedEnterpriseAdminSessionDeprecatedType + let swift: TeamLog.DeviceChangeIpDesktopType - public init(swift: TeamLog.EndedEnterpriseAdminSessionDeprecatedType) { + public init(swift: TeamLog.DeviceChangeIpDesktopType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Ended enterprise admin session. +/// Changed IP address associated with active mobile session. @objc -public class DBXTeamLogEndedEnterpriseAdminSessionDetails: NSObject { - let swift: TeamLog.EndedEnterpriseAdminSessionDetails +public class DBXTeamLogDeviceChangeIpMobileDetails: NSObject { + /// Device's session logged information. + @objc + public var deviceSessionInfo: DBXTeamLogDeviceSessionLogInfo? { guard let swift = swift.deviceSessionInfo else { return nil }; return DBXTeamLogDeviceSessionLogInfo(swift: swift) } - public init(swift: TeamLog.EndedEnterpriseAdminSessionDetails) { + @objc + public init(deviceSessionInfo: DBXTeamLogDeviceSessionLogInfo?) { + self.swift = TeamLog.DeviceChangeIpMobileDetails(deviceSessionInfo: deviceSessionInfo?.swift) + } + + let swift: TeamLog.DeviceChangeIpMobileDetails + + public init(swift: TeamLog.DeviceChangeIpMobileDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible EndedEnterpriseAdminSessionType struct +/// Objective-C compatible DeviceChangeIpMobileType struct @objc -public class DBXTeamLogEndedEnterpriseAdminSessionType: NSObject { +public class DBXTeamLogDeviceChangeIpMobileType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.EndedEnterpriseAdminSessionType(description_: description_) + self.swift = TeamLog.DeviceChangeIpMobileType(description_: description_) } - let swift: TeamLog.EndedEnterpriseAdminSessionType + let swift: TeamLog.DeviceChangeIpMobileType - public init(swift: TeamLog.EndedEnterpriseAdminSessionType) { + public init(swift: TeamLog.DeviceChangeIpMobileType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Policy for deciding whether password must be enforced when an externally shared link is updated +/// Changed IP address associated with active web session. @objc -public class DBXTeamLogEnforceLinkPasswordPolicy: NSObject { - let swift: TeamLog.EnforceLinkPasswordPolicy +public class DBXTeamLogDeviceChangeIpWebDetails: NSObject { + /// Web browser name. + @objc + public var userAgent: String { swift.userAgent } - public init(swift: TeamLog.EnforceLinkPasswordPolicy) { - self.swift = swift + @objc + public init(userAgent: String) { + self.swift = TeamLog.DeviceChangeIpWebDetails(userAgent: userAgent) } - public static func factory(swift: TeamLog.EnforceLinkPasswordPolicy) -> DBXTeamLogEnforceLinkPasswordPolicy { - switch swift { - case .optional: - return DBXTeamLogEnforceLinkPasswordPolicyOptional() - case .required: - return DBXTeamLogEnforceLinkPasswordPolicyRequired() - case .other: - return DBXTeamLogEnforceLinkPasswordPolicyOther() - } + let swift: TeamLog.DeviceChangeIpWebDetails + + public init(swift: TeamLog.DeviceChangeIpWebDetails) { + self.swift = swift } + @objc public override var description: String { swift.description } +} +/// Objective-C compatible DeviceChangeIpWebType struct +@objc +public class DBXTeamLogDeviceChangeIpWebType: NSObject { + /// (no description) @objc - public var asOptional: DBXTeamLogEnforceLinkPasswordPolicyOptional? { - self as? DBXTeamLogEnforceLinkPasswordPolicyOptional - } + public var description_: String { swift.description_ } @objc - public var asRequired: DBXTeamLogEnforceLinkPasswordPolicyRequired? { - self as? DBXTeamLogEnforceLinkPasswordPolicyRequired + public init(description_: String) { + self.swift = TeamLog.DeviceChangeIpWebType(description_: description_) } - @objc - public var asOther: DBXTeamLogEnforceLinkPasswordPolicyOther? { - self as? DBXTeamLogEnforceLinkPasswordPolicyOther - } -} + let swift: TeamLog.DeviceChangeIpWebType -/// An unspecified error. -@objc -public class DBXTeamLogEnforceLinkPasswordPolicyOptional: DBXTeamLogEnforceLinkPasswordPolicy { - @objc - public init() { - let swift = TeamLog.EnforceLinkPasswordPolicy.optional - super.init(swift: swift) + public init(swift: TeamLog.DeviceChangeIpWebType) { + self.swift = swift } -} -/// An unspecified error. -@objc -public class DBXTeamLogEnforceLinkPasswordPolicyRequired: DBXTeamLogEnforceLinkPasswordPolicy { - @objc - public init() { - let swift = TeamLog.EnforceLinkPasswordPolicy.required - super.init(swift: swift) - } -} -/// An unspecified error. -@objc -public class DBXTeamLogEnforceLinkPasswordPolicyOther: DBXTeamLogEnforceLinkPasswordPolicy { @objc - public init() { - let swift = TeamLog.EnforceLinkPasswordPolicy.other - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// Changed who can update a setting. +/// Failed to delete all files from unlinked device. @objc -public class DBXTeamLogEnterpriseSettingsLockingDetails: NSObject { - /// The secondary team name. - @objc - public var teamName: String { swift.teamName } - /// Settings page name. +public class DBXTeamLogDeviceDeleteOnUnlinkFailDetails: NSObject { + /// Session unique id. @objc - public var settingsPageName: String { swift.settingsPageName } - /// Previous locked settings page state. + public var sessionInfo: DBXTeamLogSessionLogInfo? { guard let swift = swift.sessionInfo else { return nil }; return DBXTeamLogSessionLogInfo(swift: swift) } + /// The device name. Might be missing due to historical data gap. @objc - public var previousSettingsPageLockingState: String { swift.previousSettingsPageLockingState } - /// New locked settings page state. + public var displayName: String? { swift.displayName } + /// The number of times that remote file deletion failed. @objc - public var newSettingsPageLockingState: String { swift.newSettingsPageLockingState } + public var numFailures: NSNumber { swift.numFailures as NSNumber } @objc - public init(teamName: String, settingsPageName: String, previousSettingsPageLockingState: String, newSettingsPageLockingState: String) { - self.swift = TeamLog.EnterpriseSettingsLockingDetails( - teamName: teamName, - settingsPageName: settingsPageName, - previousSettingsPageLockingState: previousSettingsPageLockingState, - newSettingsPageLockingState: newSettingsPageLockingState - ) + public init(numFailures: NSNumber, sessionInfo: DBXTeamLogSessionLogInfo?, displayName: String?) { + self.swift = TeamLog.DeviceDeleteOnUnlinkFailDetails(numFailures: numFailures.int64Value, sessionInfo: sessionInfo?.swift, displayName: displayName) } - let swift: TeamLog.EnterpriseSettingsLockingDetails + let swift: TeamLog.DeviceDeleteOnUnlinkFailDetails - public init(swift: TeamLog.EnterpriseSettingsLockingDetails) { + public init(swift: TeamLog.DeviceDeleteOnUnlinkFailDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible EnterpriseSettingsLockingType struct +/// Objective-C compatible DeviceDeleteOnUnlinkFailType struct @objc -public class DBXTeamLogEnterpriseSettingsLockingType: NSObject { +public class DBXTeamLogDeviceDeleteOnUnlinkFailType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.EnterpriseSettingsLockingType(description_: description_) + self.swift = TeamLog.DeviceDeleteOnUnlinkFailType(description_: description_) } - let swift: TeamLog.EnterpriseSettingsLockingType + let swift: TeamLog.DeviceDeleteOnUnlinkFailType - public init(swift: TeamLog.EnterpriseSettingsLockingType) { + public init(swift: TeamLog.DeviceDeleteOnUnlinkFailType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Category of events in event audit log. +/// Deleted all files from unlinked device. @objc -public class DBXTeamLogEventCategory: NSObject { - let swift: TeamLog.EventCategory +public class DBXTeamLogDeviceDeleteOnUnlinkSuccessDetails: NSObject { + /// Session unique id. + @objc + public var sessionInfo: DBXTeamLogSessionLogInfo? { guard let swift = swift.sessionInfo else { return nil }; return DBXTeamLogSessionLogInfo(swift: swift) } + /// The device name. Might be missing due to historical data gap. + @objc + public var displayName: String? { swift.displayName } - public init(swift: TeamLog.EventCategory) { - self.swift = swift + @objc + public init(sessionInfo: DBXTeamLogSessionLogInfo?, displayName: String?) { + self.swift = TeamLog.DeviceDeleteOnUnlinkSuccessDetails(sessionInfo: sessionInfo?.swift, displayName: displayName) } - public static func factory(swift: TeamLog.EventCategory) -> DBXTeamLogEventCategory { - switch swift { - case .adminAlerting: - return DBXTeamLogEventCategoryAdminAlerting() - case .apps: - return DBXTeamLogEventCategoryApps() - case .comments: - return DBXTeamLogEventCategoryComments() - case .dataGovernance: - return DBXTeamLogEventCategoryDataGovernance() - case .devices: - return DBXTeamLogEventCategoryDevices() - case .domains: - return DBXTeamLogEventCategoryDomains() - case .encryption: - return DBXTeamLogEventCategoryEncryption() - case .fileOperations: - return DBXTeamLogEventCategoryFileOperations() - case .fileRequests: - return DBXTeamLogEventCategoryFileRequests() - case .groups: - return DBXTeamLogEventCategoryGroups() - case .logins: - return DBXTeamLogEventCategoryLogins() - case .members: - return DBXTeamLogEventCategoryMembers() - case .paper: - return DBXTeamLogEventCategoryPaper() - case .passwords: - return DBXTeamLogEventCategoryPasswords() - case .reports: - return DBXTeamLogEventCategoryReports() - case .sharing: - return DBXTeamLogEventCategorySharing() - case .showcase: - return DBXTeamLogEventCategoryShowcase() - case .sso: - return DBXTeamLogEventCategorySso() - case .teamFolders: - return DBXTeamLogEventCategoryTeamFolders() - case .teamPolicies: - return DBXTeamLogEventCategoryTeamPolicies() - case .teamProfile: - return DBXTeamLogEventCategoryTeamProfile() - case .tfa: - return DBXTeamLogEventCategoryTfa() - case .trustedTeams: - return DBXTeamLogEventCategoryTrustedTeams() - case .other: - return DBXTeamLogEventCategoryOther() - } + let swift: TeamLog.DeviceDeleteOnUnlinkSuccessDetails + + public init(swift: TeamLog.DeviceDeleteOnUnlinkSuccessDetails) { + self.swift = swift } + @objc public override var description: String { swift.description } +} +/// Objective-C compatible DeviceDeleteOnUnlinkSuccessType struct +@objc +public class DBXTeamLogDeviceDeleteOnUnlinkSuccessType: NSObject { + /// (no description) @objc - public var asAdminAlerting: DBXTeamLogEventCategoryAdminAlerting? { - self as? DBXTeamLogEventCategoryAdminAlerting - } + public var description_: String { swift.description_ } @objc - public var asApps: DBXTeamLogEventCategoryApps? { - self as? DBXTeamLogEventCategoryApps + public init(description_: String) { + self.swift = TeamLog.DeviceDeleteOnUnlinkSuccessType(description_: description_) } - @objc - public var asComments: DBXTeamLogEventCategoryComments? { - self as? DBXTeamLogEventCategoryComments + let swift: TeamLog.DeviceDeleteOnUnlinkSuccessType + + public init(swift: TeamLog.DeviceDeleteOnUnlinkSuccessType) { + self.swift = swift } + @objc - public var asDataGovernance: DBXTeamLogEventCategoryDataGovernance? { - self as? DBXTeamLogEventCategoryDataGovernance - } + public override var description: String { swift.description } +} +/// Failed to link device. +@objc +public class DBXTeamLogDeviceLinkFailDetails: NSObject { + /// IP address. Might be missing due to historical data gap. @objc - public var asDevices: DBXTeamLogEventCategoryDevices? { - self as? DBXTeamLogEventCategoryDevices - } + public var ipAddress: String? { swift.ipAddress } + /// A description of the device used while user approval blocked. + @objc + public var deviceType: DBXTeamLogDeviceType { DBXTeamLogDeviceType(swift: swift.deviceType) } @objc - public var asDomains: DBXTeamLogEventCategoryDomains? { - self as? DBXTeamLogEventCategoryDomains + public init(deviceType: DBXTeamLogDeviceType, ipAddress: String?) { + self.swift = TeamLog.DeviceLinkFailDetails(deviceType: deviceType.swift, ipAddress: ipAddress) } - @objc - public var asEncryption: DBXTeamLogEventCategoryEncryption? { - self as? DBXTeamLogEventCategoryEncryption + let swift: TeamLog.DeviceLinkFailDetails + + public init(swift: TeamLog.DeviceLinkFailDetails) { + self.swift = swift } + @objc - public var asFileOperations: DBXTeamLogEventCategoryFileOperations? { - self as? DBXTeamLogEventCategoryFileOperations - } + public override var description: String { swift.description } +} +/// Objective-C compatible DeviceLinkFailType struct +@objc +public class DBXTeamLogDeviceLinkFailType: NSObject { + /// (no description) @objc - public var asFileRequests: DBXTeamLogEventCategoryFileRequests? { - self as? DBXTeamLogEventCategoryFileRequests - } + public var description_: String { swift.description_ } @objc - public var asGroups: DBXTeamLogEventCategoryGroups? { - self as? DBXTeamLogEventCategoryGroups + public init(description_: String) { + self.swift = TeamLog.DeviceLinkFailType(description_: description_) } - @objc - public var asLogins: DBXTeamLogEventCategoryLogins? { - self as? DBXTeamLogEventCategoryLogins + let swift: TeamLog.DeviceLinkFailType + + public init(swift: TeamLog.DeviceLinkFailType) { + self.swift = swift } + @objc - public var asMembers: DBXTeamLogEventCategoryMembers? { - self as? DBXTeamLogEventCategoryMembers - } + public override var description: String { swift.description } +} +/// Linked device. +@objc +public class DBXTeamLogDeviceLinkSuccessDetails: NSObject { + /// Device's session logged information. @objc - public var asPaper: DBXTeamLogEventCategoryPaper? { - self as? DBXTeamLogEventCategoryPaper - } + public var deviceSessionInfo: DBXTeamLogDeviceSessionLogInfo? { guard let swift = swift.deviceSessionInfo else { return nil }; return DBXTeamLogDeviceSessionLogInfo(swift: swift) } @objc - public var asPasswords: DBXTeamLogEventCategoryPasswords? { - self as? DBXTeamLogEventCategoryPasswords + public init(deviceSessionInfo: DBXTeamLogDeviceSessionLogInfo?) { + self.swift = TeamLog.DeviceLinkSuccessDetails(deviceSessionInfo: deviceSessionInfo?.swift) } - @objc - public var asReports: DBXTeamLogEventCategoryReports? { - self as? DBXTeamLogEventCategoryReports + let swift: TeamLog.DeviceLinkSuccessDetails + + public init(swift: TeamLog.DeviceLinkSuccessDetails) { + self.swift = swift } + @objc - public var asSharing: DBXTeamLogEventCategorySharing? { - self as? DBXTeamLogEventCategorySharing - } + public override var description: String { swift.description } +} +/// Objective-C compatible DeviceLinkSuccessType struct +@objc +public class DBXTeamLogDeviceLinkSuccessType: NSObject { + /// (no description) @objc - public var asShowcase: DBXTeamLogEventCategoryShowcase? { - self as? DBXTeamLogEventCategoryShowcase - } + public var description_: String { swift.description_ } @objc - public var asSso: DBXTeamLogEventCategorySso? { - self as? DBXTeamLogEventCategorySso + public init(description_: String) { + self.swift = TeamLog.DeviceLinkSuccessType(description_: description_) } - @objc - public var asTeamFolders: DBXTeamLogEventCategoryTeamFolders? { - self as? DBXTeamLogEventCategoryTeamFolders + let swift: TeamLog.DeviceLinkSuccessType + + public init(swift: TeamLog.DeviceLinkSuccessType) { + self.swift = swift } + @objc - public var asTeamPolicies: DBXTeamLogEventCategoryTeamPolicies? { - self as? DBXTeamLogEventCategoryTeamPolicies + public override var description: String { swift.description } +} + +/// Disabled device management. +@objc +public class DBXTeamLogDeviceManagementDisabledDetails: NSObject { + + let swift: TeamLog.DeviceManagementDisabledDetails + + public init(swift: TeamLog.DeviceManagementDisabledDetails) { + self.swift = swift } + @objc - public var asTeamProfile: DBXTeamLogEventCategoryTeamProfile? { - self as? DBXTeamLogEventCategoryTeamProfile - } + public override var description: String { swift.description } +} +/// Objective-C compatible DeviceManagementDisabledType struct +@objc +public class DBXTeamLogDeviceManagementDisabledType: NSObject { + /// (no description) @objc - public var asTfa: DBXTeamLogEventCategoryTfa? { - self as? DBXTeamLogEventCategoryTfa - } + public var description_: String { swift.description_ } @objc - public var asTrustedTeams: DBXTeamLogEventCategoryTrustedTeams? { - self as? DBXTeamLogEventCategoryTrustedTeams + public init(description_: String) { + self.swift = TeamLog.DeviceManagementDisabledType(description_: description_) } - @objc - public var asOther: DBXTeamLogEventCategoryOther? { - self as? DBXTeamLogEventCategoryOther + let swift: TeamLog.DeviceManagementDisabledType + + public init(swift: TeamLog.DeviceManagementDisabledType) { + self.swift = swift } -} -/// Events that involve team related alerts. -@objc -public class DBXTeamLogEventCategoryAdminAlerting: DBXTeamLogEventCategory { + @objc - public init() { - let swift = TeamLog.EventCategory.adminAlerting - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// Events that apply to management of linked apps. +/// Enabled device management. @objc -public class DBXTeamLogEventCategoryApps: DBXTeamLogEventCategory { - @objc - public init() { - let swift = TeamLog.EventCategory.apps - super.init(swift: swift) +public class DBXTeamLogDeviceManagementEnabledDetails: NSObject { + + let swift: TeamLog.DeviceManagementEnabledDetails + + public init(swift: TeamLog.DeviceManagementEnabledDetails) { + self.swift = swift } -} -/// Events that have to do with comments on files and Paper documents. -@objc -public class DBXTeamLogEventCategoryComments: DBXTeamLogEventCategory { + @objc - public init() { - let swift = TeamLog.EventCategory.comments - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// Events that involve data governance actions +/// Objective-C compatible DeviceManagementEnabledType struct @objc -public class DBXTeamLogEventCategoryDataGovernance: DBXTeamLogEventCategory { +public class DBXTeamLogDeviceManagementEnabledType: NSObject { + /// (no description) @objc - public init() { - let swift = TeamLog.EventCategory.dataGovernance - super.init(swift: swift) - } -} + public var description_: String { swift.description_ } -/// Events that apply to linked devices on mobile, desktop and Web platforms. -@objc -public class DBXTeamLogEventCategoryDevices: DBXTeamLogEventCategory { @objc - public init() { - let swift = TeamLog.EventCategory.devices - super.init(swift: swift) + public init(description_: String) { + self.swift = TeamLog.DeviceManagementEnabledType(description_: description_) } -} -/// Events that involve domain management feature: domain verification, invite enforcement and account capture. -@objc -public class DBXTeamLogEventCategoryDomains: DBXTeamLogEventCategory { - @objc - public init() { - let swift = TeamLog.EventCategory.domains - super.init(swift: swift) + let swift: TeamLog.DeviceManagementEnabledType + + public init(swift: TeamLog.DeviceManagementEnabledType) { + self.swift = swift } -} -/// Events that involve encryption. -@objc -public class DBXTeamLogEventCategoryEncryption: DBXTeamLogEventCategory { + @objc - public init() { - let swift = TeamLog.EventCategory.encryption - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// Events that have to do with filesystem operations on files and folders: copy, move, delete, etc. +/// Enabled/disabled backup for computer. @objc -public class DBXTeamLogEventCategoryFileOperations: DBXTeamLogEventCategory { +public class DBXTeamLogDeviceSyncBackupStatusChangedDetails: NSObject { + /// Device's session logged information. @objc - public init() { - let swift = TeamLog.EventCategory.fileOperations - super.init(swift: swift) - } -} + public var desktopDeviceSessionInfo: DBXTeamLogDesktopDeviceSessionLogInfo { DBXTeamLogDesktopDeviceSessionLogInfo(swift: swift.desktopDeviceSessionInfo) } + /// Previous status of computer backup on the device. + @objc + public var previousValue: DBXTeamLogBackupStatus { DBXTeamLogBackupStatus(swift: swift.previousValue) } + /// Next status of computer backup on the device. + @objc + public var newValue: DBXTeamLogBackupStatus { DBXTeamLogBackupStatus(swift: swift.newValue) } -/// Events that apply to the file requests feature. -@objc -public class DBXTeamLogEventCategoryFileRequests: DBXTeamLogEventCategory { @objc - public init() { - let swift = TeamLog.EventCategory.fileRequests - super.init(swift: swift) + public init(desktopDeviceSessionInfo: DBXTeamLogDesktopDeviceSessionLogInfo, previousValue: DBXTeamLogBackupStatus, newValue: DBXTeamLogBackupStatus) { + self.swift = TeamLog.DeviceSyncBackupStatusChangedDetails(desktopDeviceSessionInfo: desktopDeviceSessionInfo.subSwift, previousValue: previousValue.swift, newValue: newValue.swift) } -} -/// Events that involve group management. -@objc -public class DBXTeamLogEventCategoryGroups: DBXTeamLogEventCategory { - @objc - public init() { - let swift = TeamLog.EventCategory.groups - super.init(swift: swift) + let swift: TeamLog.DeviceSyncBackupStatusChangedDetails + + public init(swift: TeamLog.DeviceSyncBackupStatusChangedDetails) { + self.swift = swift } + + + @objc + public override var description: String { swift.description } } -/// Events that involve users signing in to or out of Dropbox. +/// Objective-C compatible DeviceSyncBackupStatusChangedType struct @objc -public class DBXTeamLogEventCategoryLogins: DBXTeamLogEventCategory { +public class DBXTeamLogDeviceSyncBackupStatusChangedType: NSObject { + /// (no description) @objc - public init() { - let swift = TeamLog.EventCategory.logins - super.init(swift: swift) + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.DeviceSyncBackupStatusChangedType(description_: description_) + } + + let swift: TeamLog.DeviceSyncBackupStatusChangedType + + public init(swift: TeamLog.DeviceSyncBackupStatusChangedType) { + self.swift = swift } + + + @objc + public override var description: String { swift.description } } -/// Events that involve team member management. +/// Objective-C compatible DeviceType union @objc -public class DBXTeamLogEventCategoryMembers: DBXTeamLogEventCategory { +public class DBXTeamLogDeviceType: NSObject { + let swift: TeamLog.DeviceType + + public init(swift: TeamLog.DeviceType) { + self.swift = swift + } + + public static func factory(swift: TeamLog.DeviceType) -> DBXTeamLogDeviceType { + switch swift { + case .desktop: + return DBXTeamLogDeviceTypeDesktop() + case .mobile: + return DBXTeamLogDeviceTypeMobile() + case .other: + return DBXTeamLogDeviceTypeOther() + } + } + @objc - public init() { - let swift = TeamLog.EventCategory.members - super.init(swift: swift) + public override var description: String { swift.description } + + @objc + public var asDesktop: DBXTeamLogDeviceTypeDesktop? { + return self as? DBXTeamLogDeviceTypeDesktop } -} -/// Events that apply to Dropbox Paper. -@objc -public class DBXTeamLogEventCategoryPaper: DBXTeamLogEventCategory { @objc - public init() { - let swift = TeamLog.EventCategory.paper - super.init(swift: swift) + public var asMobile: DBXTeamLogDeviceTypeMobile? { + return self as? DBXTeamLogDeviceTypeMobile } -} -/// Events that involve using, changing or resetting passwords. -@objc -public class DBXTeamLogEventCategoryPasswords: DBXTeamLogEventCategory { @objc - public init() { - let swift = TeamLog.EventCategory.passwords - super.init(swift: swift) + public var asOther: DBXTeamLogDeviceTypeOther? { + return self as? DBXTeamLogDeviceTypeOther } } -/// Events that concern generation of admin reports, including team activity and device usage. +/// An unspecified error. @objc -public class DBXTeamLogEventCategoryReports: DBXTeamLogEventCategory { +public class DBXTeamLogDeviceTypeDesktop: DBXTeamLogDeviceType { @objc public init() { - let swift = TeamLog.EventCategory.reports + let swift = TeamLog.DeviceType.desktop super.init(swift: swift) } } -/// Events that apply to all types of sharing and collaboration. +/// An unspecified error. @objc -public class DBXTeamLogEventCategorySharing: DBXTeamLogEventCategory { +public class DBXTeamLogDeviceTypeMobile: DBXTeamLogDeviceType { @objc public init() { - let swift = TeamLog.EventCategory.sharing + let swift = TeamLog.DeviceType.mobile super.init(swift: swift) } } -/// Events that apply to Dropbox Showcase. +/// An unspecified error. @objc -public class DBXTeamLogEventCategoryShowcase: DBXTeamLogEventCategory { +public class DBXTeamLogDeviceTypeOther: DBXTeamLogDeviceType { @objc public init() { - let swift = TeamLog.EventCategory.showcase + let swift = TeamLog.DeviceType.other super.init(swift: swift) } } -/// Events that involve using or configuring single sign-on as well as administrative policies concerning single -/// sign-on. +/// Disconnected device. @objc -public class DBXTeamLogEventCategorySso: DBXTeamLogEventCategory { +public class DBXTeamLogDeviceUnlinkDetails: NSObject { + /// Session unique id. @objc - public init() { - let swift = TeamLog.EventCategory.sso - super.init(swift: swift) + public var sessionInfo: DBXTeamLogSessionLogInfo? { guard let swift = swift.sessionInfo else { return nil }; return DBXTeamLogSessionLogInfo(swift: swift) } + /// The device name. Might be missing due to historical data gap. + @objc + public var displayName: String? { swift.displayName } + /// True if the user requested to delete data after device unlink, false otherwise. + @objc + public var deleteData: NSNumber { swift.deleteData as NSNumber } + + @objc + public init(deleteData: NSNumber, sessionInfo: DBXTeamLogSessionLogInfo?, displayName: String?) { + self.swift = TeamLog.DeviceUnlinkDetails(deleteData: deleteData.boolValue, sessionInfo: sessionInfo?.swift, displayName: displayName) + } + + let swift: TeamLog.DeviceUnlinkDetails + + public init(swift: TeamLog.DeviceUnlinkDetails) { + self.swift = swift } + + + @objc + public override var description: String { swift.description } } -/// Events that involve team folder management. +/// Objective-C compatible DeviceUnlinkPolicy union @objc -public class DBXTeamLogEventCategoryTeamFolders: DBXTeamLogEventCategory { +public class DBXTeamLogDeviceUnlinkPolicy: NSObject { + let swift: TeamLog.DeviceUnlinkPolicy + + public init(swift: TeamLog.DeviceUnlinkPolicy) { + self.swift = swift + } + + public static func factory(swift: TeamLog.DeviceUnlinkPolicy) -> DBXTeamLogDeviceUnlinkPolicy { + switch swift { + case .keep: + return DBXTeamLogDeviceUnlinkPolicyKeep() + case .remove: + return DBXTeamLogDeviceUnlinkPolicyRemove() + case .other: + return DBXTeamLogDeviceUnlinkPolicyOther() + } + } + @objc - public init() { - let swift = TeamLog.EventCategory.teamFolders - super.init(swift: swift) + public override var description: String { swift.description } + + @objc + public var asKeep: DBXTeamLogDeviceUnlinkPolicyKeep? { + return self as? DBXTeamLogDeviceUnlinkPolicyKeep } -} -/// Events that involve a change in team-wide policies. -@objc -public class DBXTeamLogEventCategoryTeamPolicies: DBXTeamLogEventCategory { @objc - public init() { - let swift = TeamLog.EventCategory.teamPolicies - super.init(swift: swift) + public var asRemove: DBXTeamLogDeviceUnlinkPolicyRemove? { + return self as? DBXTeamLogDeviceUnlinkPolicyRemove } -} -/// Events that involve a change in the team profile. -@objc -public class DBXTeamLogEventCategoryTeamProfile: DBXTeamLogEventCategory { @objc - public init() { - let swift = TeamLog.EventCategory.teamProfile - super.init(swift: swift) + public var asOther: DBXTeamLogDeviceUnlinkPolicyOther? { + return self as? DBXTeamLogDeviceUnlinkPolicyOther } } -/// Events that involve using or configuring two factor authentication as well as administrative policies -/// concerning two factor authentication. +/// An unspecified error. @objc -public class DBXTeamLogEventCategoryTfa: DBXTeamLogEventCategory { +public class DBXTeamLogDeviceUnlinkPolicyKeep: DBXTeamLogDeviceUnlinkPolicy { @objc public init() { - let swift = TeamLog.EventCategory.tfa + let swift = TeamLog.DeviceUnlinkPolicy.keep super.init(swift: swift) } } -/// Events that apply to cross-team trust establishment. +/// An unspecified error. @objc -public class DBXTeamLogEventCategoryTrustedTeams: DBXTeamLogEventCategory { +public class DBXTeamLogDeviceUnlinkPolicyRemove: DBXTeamLogDeviceUnlinkPolicy { @objc public init() { - let swift = TeamLog.EventCategory.trustedTeams + let swift = TeamLog.DeviceUnlinkPolicy.remove super.init(swift: swift) } } /// An unspecified error. @objc -public class DBXTeamLogEventCategoryOther: DBXTeamLogEventCategory { +public class DBXTeamLogDeviceUnlinkPolicyOther: DBXTeamLogDeviceUnlinkPolicy { @objc public init() { - let swift = TeamLog.EventCategory.other + let swift = TeamLog.DeviceUnlinkPolicy.other super.init(swift: swift) } } -/// Additional fields depending on the event type. +/// Objective-C compatible DeviceUnlinkType struct @objc -public class DBXTeamLogEventDetails: NSObject { - let swift: TeamLog.EventDetails +public class DBXTeamLogDeviceUnlinkType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } - public init(swift: TeamLog.EventDetails) { - self.swift = swift + @objc + public init(description_: String) { + self.swift = TeamLog.DeviceUnlinkType(description_: description_) } - public static func factory(swift: TeamLog.EventDetails) -> DBXTeamLogEventDetails { + let swift: TeamLog.DeviceUnlinkType + + public init(swift: TeamLog.DeviceUnlinkType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Added members to directory restrictions list. +@objc +public class DBXTeamLogDirectoryRestrictionsAddMembersDetails: NSObject { + + let swift: TeamLog.DirectoryRestrictionsAddMembersDetails + + public init(swift: TeamLog.DirectoryRestrictionsAddMembersDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible DirectoryRestrictionsAddMembersType struct +@objc +public class DBXTeamLogDirectoryRestrictionsAddMembersType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.DirectoryRestrictionsAddMembersType(description_: description_) + } + + let swift: TeamLog.DirectoryRestrictionsAddMembersType + + public init(swift: TeamLog.DirectoryRestrictionsAddMembersType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Removed members from directory restrictions list. +@objc +public class DBXTeamLogDirectoryRestrictionsRemoveMembersDetails: NSObject { + + let swift: TeamLog.DirectoryRestrictionsRemoveMembersDetails + + public init(swift: TeamLog.DirectoryRestrictionsRemoveMembersDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible DirectoryRestrictionsRemoveMembersType struct +@objc +public class DBXTeamLogDirectoryRestrictionsRemoveMembersType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.DirectoryRestrictionsRemoveMembersType(description_: description_) + } + + let swift: TeamLog.DirectoryRestrictionsRemoveMembersType + + public init(swift: TeamLog.DirectoryRestrictionsRemoveMembersType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Disabled domain invites. +@objc +public class DBXTeamLogDisabledDomainInvitesDetails: NSObject { + + let swift: TeamLog.DisabledDomainInvitesDetails + + public init(swift: TeamLog.DisabledDomainInvitesDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible DisabledDomainInvitesType struct +@objc +public class DBXTeamLogDisabledDomainInvitesType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.DisabledDomainInvitesType(description_: description_) + } + + let swift: TeamLog.DisabledDomainInvitesType + + public init(swift: TeamLog.DisabledDomainInvitesType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible DispositionActionType union +@objc +public class DBXTeamLogDispositionActionType: NSObject { + let swift: TeamLog.DispositionActionType + + public init(swift: TeamLog.DispositionActionType) { + self.swift = swift + } + + public static func factory(swift: TeamLog.DispositionActionType) -> DBXTeamLogDispositionActionType { switch swift { - case .adminAlertingAlertStateChangedDetails(let swiftArg): - let arg = DBXTeamLogAdminAlertingAlertStateChangedDetails(swift: swiftArg) - return DBXTeamLogEventDetailsAdminAlertingAlertStateChangedDetails(arg) - case .adminAlertingChangedAlertConfigDetails(let swiftArg): - let arg = DBXTeamLogAdminAlertingChangedAlertConfigDetails(swift: swiftArg) - return DBXTeamLogEventDetailsAdminAlertingChangedAlertConfigDetails(arg) - case .adminAlertingTriggeredAlertDetails(let swiftArg): - let arg = DBXTeamLogAdminAlertingTriggeredAlertDetails(swift: swiftArg) - return DBXTeamLogEventDetailsAdminAlertingTriggeredAlertDetails(arg) - case .ransomwareRestoreProcessCompletedDetails(let swiftArg): - let arg = DBXTeamLogRansomwareRestoreProcessCompletedDetails(swift: swiftArg) - return DBXTeamLogEventDetailsRansomwareRestoreProcessCompletedDetails(arg) - case .ransomwareRestoreProcessStartedDetails(let swiftArg): - let arg = DBXTeamLogRansomwareRestoreProcessStartedDetails(swift: swiftArg) - return DBXTeamLogEventDetailsRansomwareRestoreProcessStartedDetails(arg) - case .appBlockedByPermissionsDetails(let swiftArg): - let arg = DBXTeamLogAppBlockedByPermissionsDetails(swift: swiftArg) - return DBXTeamLogEventDetailsAppBlockedByPermissionsDetails(arg) - case .appLinkTeamDetails(let swiftArg): - let arg = DBXTeamLogAppLinkTeamDetails(swift: swiftArg) - return DBXTeamLogEventDetailsAppLinkTeamDetails(arg) - case .appLinkUserDetails(let swiftArg): - let arg = DBXTeamLogAppLinkUserDetails(swift: swiftArg) - return DBXTeamLogEventDetailsAppLinkUserDetails(arg) - case .appUnlinkTeamDetails(let swiftArg): - let arg = DBXTeamLogAppUnlinkTeamDetails(swift: swiftArg) - return DBXTeamLogEventDetailsAppUnlinkTeamDetails(arg) - case .appUnlinkUserDetails(let swiftArg): - let arg = DBXTeamLogAppUnlinkUserDetails(swift: swiftArg) - return DBXTeamLogEventDetailsAppUnlinkUserDetails(arg) - case .integrationConnectedDetails(let swiftArg): - let arg = DBXTeamLogIntegrationConnectedDetails(swift: swiftArg) - return DBXTeamLogEventDetailsIntegrationConnectedDetails(arg) - case .integrationDisconnectedDetails(let swiftArg): - let arg = DBXTeamLogIntegrationDisconnectedDetails(swift: swiftArg) - return DBXTeamLogEventDetailsIntegrationDisconnectedDetails(arg) - case .fileAddCommentDetails(let swiftArg): - let arg = DBXTeamLogFileAddCommentDetails(swift: swiftArg) - return DBXTeamLogEventDetailsFileAddCommentDetails(arg) - case .fileChangeCommentSubscriptionDetails(let swiftArg): - let arg = DBXTeamLogFileChangeCommentSubscriptionDetails(swift: swiftArg) - return DBXTeamLogEventDetailsFileChangeCommentSubscriptionDetails(arg) - case .fileDeleteCommentDetails(let swiftArg): - let arg = DBXTeamLogFileDeleteCommentDetails(swift: swiftArg) - return DBXTeamLogEventDetailsFileDeleteCommentDetails(arg) - case .fileEditCommentDetails(let swiftArg): - let arg = DBXTeamLogFileEditCommentDetails(swift: swiftArg) - return DBXTeamLogEventDetailsFileEditCommentDetails(arg) - case .fileLikeCommentDetails(let swiftArg): - let arg = DBXTeamLogFileLikeCommentDetails(swift: swiftArg) - return DBXTeamLogEventDetailsFileLikeCommentDetails(arg) - case .fileResolveCommentDetails(let swiftArg): - let arg = DBXTeamLogFileResolveCommentDetails(swift: swiftArg) - return DBXTeamLogEventDetailsFileResolveCommentDetails(arg) - case .fileUnlikeCommentDetails(let swiftArg): - let arg = DBXTeamLogFileUnlikeCommentDetails(swift: swiftArg) - return DBXTeamLogEventDetailsFileUnlikeCommentDetails(arg) - case .fileUnresolveCommentDetails(let swiftArg): - let arg = DBXTeamLogFileUnresolveCommentDetails(swift: swiftArg) - return DBXTeamLogEventDetailsFileUnresolveCommentDetails(arg) - case .governancePolicyAddFoldersDetails(let swiftArg): - let arg = DBXTeamLogGovernancePolicyAddFoldersDetails(swift: swiftArg) - return DBXTeamLogEventDetailsGovernancePolicyAddFoldersDetails(arg) - case .governancePolicyAddFolderFailedDetails(let swiftArg): - let arg = DBXTeamLogGovernancePolicyAddFolderFailedDetails(swift: swiftArg) - return DBXTeamLogEventDetailsGovernancePolicyAddFolderFailedDetails(arg) - case .governancePolicyContentDisposedDetails(let swiftArg): - let arg = DBXTeamLogGovernancePolicyContentDisposedDetails(swift: swiftArg) - return DBXTeamLogEventDetailsGovernancePolicyContentDisposedDetails(arg) - case .governancePolicyCreateDetails(let swiftArg): - let arg = DBXTeamLogGovernancePolicyCreateDetails(swift: swiftArg) - return DBXTeamLogEventDetailsGovernancePolicyCreateDetails(arg) - case .governancePolicyDeleteDetails(let swiftArg): - let arg = DBXTeamLogGovernancePolicyDeleteDetails(swift: swiftArg) - return DBXTeamLogEventDetailsGovernancePolicyDeleteDetails(arg) - case .governancePolicyEditDetailsDetails(let swiftArg): - let arg = DBXTeamLogGovernancePolicyEditDetailsDetails(swift: swiftArg) - return DBXTeamLogEventDetailsGovernancePolicyEditDetailsDetails(arg) - case .governancePolicyEditDurationDetails(let swiftArg): - let arg = DBXTeamLogGovernancePolicyEditDurationDetails(swift: swiftArg) - return DBXTeamLogEventDetailsGovernancePolicyEditDurationDetails(arg) - case .governancePolicyExportCreatedDetails(let swiftArg): - let arg = DBXTeamLogGovernancePolicyExportCreatedDetails(swift: swiftArg) - return DBXTeamLogEventDetailsGovernancePolicyExportCreatedDetails(arg) - case .governancePolicyExportRemovedDetails(let swiftArg): - let arg = DBXTeamLogGovernancePolicyExportRemovedDetails(swift: swiftArg) - return DBXTeamLogEventDetailsGovernancePolicyExportRemovedDetails(arg) - case .governancePolicyRemoveFoldersDetails(let swiftArg): - let arg = DBXTeamLogGovernancePolicyRemoveFoldersDetails(swift: swiftArg) - return DBXTeamLogEventDetailsGovernancePolicyRemoveFoldersDetails(arg) - case .governancePolicyReportCreatedDetails(let swiftArg): - let arg = DBXTeamLogGovernancePolicyReportCreatedDetails(swift: swiftArg) - return DBXTeamLogEventDetailsGovernancePolicyReportCreatedDetails(arg) - case .governancePolicyZipPartDownloadedDetails(let swiftArg): - let arg = DBXTeamLogGovernancePolicyZipPartDownloadedDetails(swift: swiftArg) - return DBXTeamLogEventDetailsGovernancePolicyZipPartDownloadedDetails(arg) - case .legalHoldsActivateAHoldDetails(let swiftArg): - let arg = DBXTeamLogLegalHoldsActivateAHoldDetails(swift: swiftArg) - return DBXTeamLogEventDetailsLegalHoldsActivateAHoldDetails(arg) - case .legalHoldsAddMembersDetails(let swiftArg): - let arg = DBXTeamLogLegalHoldsAddMembersDetails(swift: swiftArg) - return DBXTeamLogEventDetailsLegalHoldsAddMembersDetails(arg) - case .legalHoldsChangeHoldDetailsDetails(let swiftArg): - let arg = DBXTeamLogLegalHoldsChangeHoldDetailsDetails(swift: swiftArg) - return DBXTeamLogEventDetailsLegalHoldsChangeHoldDetailsDetails(arg) - case .legalHoldsChangeHoldNameDetails(let swiftArg): - let arg = DBXTeamLogLegalHoldsChangeHoldNameDetails(swift: swiftArg) - return DBXTeamLogEventDetailsLegalHoldsChangeHoldNameDetails(arg) - case .legalHoldsExportAHoldDetails(let swiftArg): - let arg = DBXTeamLogLegalHoldsExportAHoldDetails(swift: swiftArg) - return DBXTeamLogEventDetailsLegalHoldsExportAHoldDetails(arg) - case .legalHoldsExportCancelledDetails(let swiftArg): - let arg = DBXTeamLogLegalHoldsExportCancelledDetails(swift: swiftArg) - return DBXTeamLogEventDetailsLegalHoldsExportCancelledDetails(arg) - case .legalHoldsExportDownloadedDetails(let swiftArg): - let arg = DBXTeamLogLegalHoldsExportDownloadedDetails(swift: swiftArg) - return DBXTeamLogEventDetailsLegalHoldsExportDownloadedDetails(arg) - case .legalHoldsExportRemovedDetails(let swiftArg): - let arg = DBXTeamLogLegalHoldsExportRemovedDetails(swift: swiftArg) - return DBXTeamLogEventDetailsLegalHoldsExportRemovedDetails(arg) - case .legalHoldsReleaseAHoldDetails(let swiftArg): - let arg = DBXTeamLogLegalHoldsReleaseAHoldDetails(swift: swiftArg) - return DBXTeamLogEventDetailsLegalHoldsReleaseAHoldDetails(arg) - case .legalHoldsRemoveMembersDetails(let swiftArg): - let arg = DBXTeamLogLegalHoldsRemoveMembersDetails(swift: swiftArg) - return DBXTeamLogEventDetailsLegalHoldsRemoveMembersDetails(arg) - case .legalHoldsReportAHoldDetails(let swiftArg): - let arg = DBXTeamLogLegalHoldsReportAHoldDetails(swift: swiftArg) - return DBXTeamLogEventDetailsLegalHoldsReportAHoldDetails(arg) - case .deviceChangeIpDesktopDetails(let swiftArg): - let arg = DBXTeamLogDeviceChangeIpDesktopDetails(swift: swiftArg) - return DBXTeamLogEventDetailsDeviceChangeIpDesktopDetails(arg) - case .deviceChangeIpMobileDetails(let swiftArg): - let arg = DBXTeamLogDeviceChangeIpMobileDetails(swift: swiftArg) - return DBXTeamLogEventDetailsDeviceChangeIpMobileDetails(arg) - case .deviceChangeIpWebDetails(let swiftArg): - let arg = DBXTeamLogDeviceChangeIpWebDetails(swift: swiftArg) - return DBXTeamLogEventDetailsDeviceChangeIpWebDetails(arg) - case .deviceDeleteOnUnlinkFailDetails(let swiftArg): - let arg = DBXTeamLogDeviceDeleteOnUnlinkFailDetails(swift: swiftArg) - return DBXTeamLogEventDetailsDeviceDeleteOnUnlinkFailDetails(arg) - case .deviceDeleteOnUnlinkSuccessDetails(let swiftArg): - let arg = DBXTeamLogDeviceDeleteOnUnlinkSuccessDetails(swift: swiftArg) - return DBXTeamLogEventDetailsDeviceDeleteOnUnlinkSuccessDetails(arg) - case .deviceLinkFailDetails(let swiftArg): - let arg = DBXTeamLogDeviceLinkFailDetails(swift: swiftArg) - return DBXTeamLogEventDetailsDeviceLinkFailDetails(arg) - case .deviceLinkSuccessDetails(let swiftArg): - let arg = DBXTeamLogDeviceLinkSuccessDetails(swift: swiftArg) - return DBXTeamLogEventDetailsDeviceLinkSuccessDetails(arg) - case .deviceManagementDisabledDetails(let swiftArg): - let arg = DBXTeamLogDeviceManagementDisabledDetails(swift: swiftArg) - return DBXTeamLogEventDetailsDeviceManagementDisabledDetails(arg) - case .deviceManagementEnabledDetails(let swiftArg): - let arg = DBXTeamLogDeviceManagementEnabledDetails(swift: swiftArg) - return DBXTeamLogEventDetailsDeviceManagementEnabledDetails(arg) - case .deviceSyncBackupStatusChangedDetails(let swiftArg): - let arg = DBXTeamLogDeviceSyncBackupStatusChangedDetails(swift: swiftArg) - return DBXTeamLogEventDetailsDeviceSyncBackupStatusChangedDetails(arg) - case .deviceUnlinkDetails(let swiftArg): - let arg = DBXTeamLogDeviceUnlinkDetails(swift: swiftArg) - return DBXTeamLogEventDetailsDeviceUnlinkDetails(arg) - case .dropboxPasswordsExportedDetails(let swiftArg): - let arg = DBXTeamLogDropboxPasswordsExportedDetails(swift: swiftArg) - return DBXTeamLogEventDetailsDropboxPasswordsExportedDetails(arg) - case .dropboxPasswordsNewDeviceEnrolledDetails(let swiftArg): - let arg = DBXTeamLogDropboxPasswordsNewDeviceEnrolledDetails(swift: swiftArg) - return DBXTeamLogEventDetailsDropboxPasswordsNewDeviceEnrolledDetails(arg) - case .emmRefreshAuthTokenDetails(let swiftArg): - let arg = DBXTeamLogEmmRefreshAuthTokenDetails(swift: swiftArg) - return DBXTeamLogEventDetailsEmmRefreshAuthTokenDetails(arg) - case .externalDriveBackupEligibilityStatusCheckedDetails(let swiftArg): - let arg = DBXTeamLogExternalDriveBackupEligibilityStatusCheckedDetails(swift: swiftArg) - return DBXTeamLogEventDetailsExternalDriveBackupEligibilityStatusCheckedDetails(arg) - case .externalDriveBackupStatusChangedDetails(let swiftArg): - let arg = DBXTeamLogExternalDriveBackupStatusChangedDetails(swift: swiftArg) - return DBXTeamLogEventDetailsExternalDriveBackupStatusChangedDetails(arg) - case .accountCaptureChangeAvailabilityDetails(let swiftArg): - let arg = DBXTeamLogAccountCaptureChangeAvailabilityDetails(swift: swiftArg) - return DBXTeamLogEventDetailsAccountCaptureChangeAvailabilityDetails(arg) - case .accountCaptureMigrateAccountDetails(let swiftArg): - let arg = DBXTeamLogAccountCaptureMigrateAccountDetails(swift: swiftArg) - return DBXTeamLogEventDetailsAccountCaptureMigrateAccountDetails(arg) - case .accountCaptureNotificationEmailsSentDetails(let swiftArg): - let arg = DBXTeamLogAccountCaptureNotificationEmailsSentDetails(swift: swiftArg) - return DBXTeamLogEventDetailsAccountCaptureNotificationEmailsSentDetails(arg) - case .accountCaptureRelinquishAccountDetails(let swiftArg): - let arg = DBXTeamLogAccountCaptureRelinquishAccountDetails(swift: swiftArg) - return DBXTeamLogEventDetailsAccountCaptureRelinquishAccountDetails(arg) - case .disabledDomainInvitesDetails(let swiftArg): - let arg = DBXTeamLogDisabledDomainInvitesDetails(swift: swiftArg) - return DBXTeamLogEventDetailsDisabledDomainInvitesDetails(arg) - case .domainInvitesApproveRequestToJoinTeamDetails(let swiftArg): - let arg = DBXTeamLogDomainInvitesApproveRequestToJoinTeamDetails(swift: swiftArg) - return DBXTeamLogEventDetailsDomainInvitesApproveRequestToJoinTeamDetails(arg) - case .domainInvitesDeclineRequestToJoinTeamDetails(let swiftArg): - let arg = DBXTeamLogDomainInvitesDeclineRequestToJoinTeamDetails(swift: swiftArg) - return DBXTeamLogEventDetailsDomainInvitesDeclineRequestToJoinTeamDetails(arg) - case .domainInvitesEmailExistingUsersDetails(let swiftArg): - let arg = DBXTeamLogDomainInvitesEmailExistingUsersDetails(swift: swiftArg) - return DBXTeamLogEventDetailsDomainInvitesEmailExistingUsersDetails(arg) - case .domainInvitesRequestToJoinTeamDetails(let swiftArg): - let arg = DBXTeamLogDomainInvitesRequestToJoinTeamDetails(swift: swiftArg) - return DBXTeamLogEventDetailsDomainInvitesRequestToJoinTeamDetails(arg) - case .domainInvitesSetInviteNewUserPrefToNoDetails(let swiftArg): - let arg = DBXTeamLogDomainInvitesSetInviteNewUserPrefToNoDetails(swift: swiftArg) - return DBXTeamLogEventDetailsDomainInvitesSetInviteNewUserPrefToNoDetails(arg) - case .domainInvitesSetInviteNewUserPrefToYesDetails(let swiftArg): - let arg = DBXTeamLogDomainInvitesSetInviteNewUserPrefToYesDetails(swift: swiftArg) - return DBXTeamLogEventDetailsDomainInvitesSetInviteNewUserPrefToYesDetails(arg) - case .domainVerificationAddDomainFailDetails(let swiftArg): - let arg = DBXTeamLogDomainVerificationAddDomainFailDetails(swift: swiftArg) - return DBXTeamLogEventDetailsDomainVerificationAddDomainFailDetails(arg) - case .domainVerificationAddDomainSuccessDetails(let swiftArg): - let arg = DBXTeamLogDomainVerificationAddDomainSuccessDetails(swift: swiftArg) - return DBXTeamLogEventDetailsDomainVerificationAddDomainSuccessDetails(arg) - case .domainVerificationRemoveDomainDetails(let swiftArg): - let arg = DBXTeamLogDomainVerificationRemoveDomainDetails(swift: swiftArg) - return DBXTeamLogEventDetailsDomainVerificationRemoveDomainDetails(arg) - case .enabledDomainInvitesDetails(let swiftArg): - let arg = DBXTeamLogEnabledDomainInvitesDetails(swift: swiftArg) - return DBXTeamLogEventDetailsEnabledDomainInvitesDetails(arg) - case .teamEncryptionKeyCancelKeyDeletionDetails(let swiftArg): - let arg = DBXTeamLogTeamEncryptionKeyCancelKeyDeletionDetails(swift: swiftArg) - return DBXTeamLogEventDetailsTeamEncryptionKeyCancelKeyDeletionDetails(arg) - case .teamEncryptionKeyCreateKeyDetails(let swiftArg): - let arg = DBXTeamLogTeamEncryptionKeyCreateKeyDetails(swift: swiftArg) - return DBXTeamLogEventDetailsTeamEncryptionKeyCreateKeyDetails(arg) - case .teamEncryptionKeyDeleteKeyDetails(let swiftArg): - let arg = DBXTeamLogTeamEncryptionKeyDeleteKeyDetails(swift: swiftArg) - return DBXTeamLogEventDetailsTeamEncryptionKeyDeleteKeyDetails(arg) - case .teamEncryptionKeyDisableKeyDetails(let swiftArg): - let arg = DBXTeamLogTeamEncryptionKeyDisableKeyDetails(swift: swiftArg) - return DBXTeamLogEventDetailsTeamEncryptionKeyDisableKeyDetails(arg) - case .teamEncryptionKeyEnableKeyDetails(let swiftArg): - let arg = DBXTeamLogTeamEncryptionKeyEnableKeyDetails(swift: swiftArg) - return DBXTeamLogEventDetailsTeamEncryptionKeyEnableKeyDetails(arg) - case .teamEncryptionKeyRotateKeyDetails(let swiftArg): - let arg = DBXTeamLogTeamEncryptionKeyRotateKeyDetails(swift: swiftArg) - return DBXTeamLogEventDetailsTeamEncryptionKeyRotateKeyDetails(arg) - case .teamEncryptionKeyScheduleKeyDeletionDetails(let swiftArg): - let arg = DBXTeamLogTeamEncryptionKeyScheduleKeyDeletionDetails(swift: swiftArg) - return DBXTeamLogEventDetailsTeamEncryptionKeyScheduleKeyDeletionDetails(arg) - case .applyNamingConventionDetails(let swiftArg): - let arg = DBXTeamLogApplyNamingConventionDetails(swift: swiftArg) - return DBXTeamLogEventDetailsApplyNamingConventionDetails(arg) - case .createFolderDetails(let swiftArg): - let arg = DBXTeamLogCreateFolderDetails(swift: swiftArg) - return DBXTeamLogEventDetailsCreateFolderDetails(arg) - case .fileAddDetails(let swiftArg): - let arg = DBXTeamLogFileAddDetails(swift: swiftArg) - return DBXTeamLogEventDetailsFileAddDetails(arg) - case .fileAddFromAutomationDetails(let swiftArg): - let arg = DBXTeamLogFileAddFromAutomationDetails(swift: swiftArg) - return DBXTeamLogEventDetailsFileAddFromAutomationDetails(arg) - case .fileCopyDetails(let swiftArg): - let arg = DBXTeamLogFileCopyDetails(swift: swiftArg) - return DBXTeamLogEventDetailsFileCopyDetails(arg) - case .fileDeleteDetails(let swiftArg): - let arg = DBXTeamLogFileDeleteDetails(swift: swiftArg) - return DBXTeamLogEventDetailsFileDeleteDetails(arg) - case .fileDownloadDetails(let swiftArg): - let arg = DBXTeamLogFileDownloadDetails(swift: swiftArg) - return DBXTeamLogEventDetailsFileDownloadDetails(arg) - case .fileEditDetails(let swiftArg): - let arg = DBXTeamLogFileEditDetails(swift: swiftArg) - return DBXTeamLogEventDetailsFileEditDetails(arg) - case .fileGetCopyReferenceDetails(let swiftArg): - let arg = DBXTeamLogFileGetCopyReferenceDetails(swift: swiftArg) - return DBXTeamLogEventDetailsFileGetCopyReferenceDetails(arg) - case .fileLockingLockStatusChangedDetails(let swiftArg): - let arg = DBXTeamLogFileLockingLockStatusChangedDetails(swift: swiftArg) - return DBXTeamLogEventDetailsFileLockingLockStatusChangedDetails(arg) - case .fileMoveDetails(let swiftArg): - let arg = DBXTeamLogFileMoveDetails(swift: swiftArg) - return DBXTeamLogEventDetailsFileMoveDetails(arg) - case .filePermanentlyDeleteDetails(let swiftArg): - let arg = DBXTeamLogFilePermanentlyDeleteDetails(swift: swiftArg) - return DBXTeamLogEventDetailsFilePermanentlyDeleteDetails(arg) - case .filePreviewDetails(let swiftArg): - let arg = DBXTeamLogFilePreviewDetails(swift: swiftArg) - return DBXTeamLogEventDetailsFilePreviewDetails(arg) - case .fileRenameDetails(let swiftArg): - let arg = DBXTeamLogFileRenameDetails(swift: swiftArg) - return DBXTeamLogEventDetailsFileRenameDetails(arg) - case .fileRestoreDetails(let swiftArg): - let arg = DBXTeamLogFileRestoreDetails(swift: swiftArg) - return DBXTeamLogEventDetailsFileRestoreDetails(arg) - case .fileRevertDetails(let swiftArg): - let arg = DBXTeamLogFileRevertDetails(swift: swiftArg) - return DBXTeamLogEventDetailsFileRevertDetails(arg) - case .fileRollbackChangesDetails(let swiftArg): - let arg = DBXTeamLogFileRollbackChangesDetails(swift: swiftArg) - return DBXTeamLogEventDetailsFileRollbackChangesDetails(arg) - case .fileSaveCopyReferenceDetails(let swiftArg): - let arg = DBXTeamLogFileSaveCopyReferenceDetails(swift: swiftArg) - return DBXTeamLogEventDetailsFileSaveCopyReferenceDetails(arg) - case .folderOverviewDescriptionChangedDetails(let swiftArg): - let arg = DBXTeamLogFolderOverviewDescriptionChangedDetails(swift: swiftArg) - return DBXTeamLogEventDetailsFolderOverviewDescriptionChangedDetails(arg) - case .folderOverviewItemPinnedDetails(let swiftArg): - let arg = DBXTeamLogFolderOverviewItemPinnedDetails(swift: swiftArg) - return DBXTeamLogEventDetailsFolderOverviewItemPinnedDetails(arg) - case .folderOverviewItemUnpinnedDetails(let swiftArg): - let arg = DBXTeamLogFolderOverviewItemUnpinnedDetails(swift: swiftArg) - return DBXTeamLogEventDetailsFolderOverviewItemUnpinnedDetails(arg) - case .objectLabelAddedDetails(let swiftArg): - let arg = DBXTeamLogObjectLabelAddedDetails(swift: swiftArg) - return DBXTeamLogEventDetailsObjectLabelAddedDetails(arg) - case .objectLabelRemovedDetails(let swiftArg): - let arg = DBXTeamLogObjectLabelRemovedDetails(swift: swiftArg) - return DBXTeamLogEventDetailsObjectLabelRemovedDetails(arg) - case .objectLabelUpdatedValueDetails(let swiftArg): - let arg = DBXTeamLogObjectLabelUpdatedValueDetails(swift: swiftArg) - return DBXTeamLogEventDetailsObjectLabelUpdatedValueDetails(arg) - case .organizeFolderWithTidyDetails(let swiftArg): - let arg = DBXTeamLogOrganizeFolderWithTidyDetails(swift: swiftArg) - return DBXTeamLogEventDetailsOrganizeFolderWithTidyDetails(arg) - case .replayFileDeleteDetails(let swiftArg): - let arg = DBXTeamLogReplayFileDeleteDetails(swift: swiftArg) - return DBXTeamLogEventDetailsReplayFileDeleteDetails(arg) - case .rewindFolderDetails(let swiftArg): - let arg = DBXTeamLogRewindFolderDetails(swift: swiftArg) - return DBXTeamLogEventDetailsRewindFolderDetails(arg) - case .undoNamingConventionDetails(let swiftArg): - let arg = DBXTeamLogUndoNamingConventionDetails(swift: swiftArg) - return DBXTeamLogEventDetailsUndoNamingConventionDetails(arg) - case .undoOrganizeFolderWithTidyDetails(let swiftArg): - let arg = DBXTeamLogUndoOrganizeFolderWithTidyDetails(swift: swiftArg) - return DBXTeamLogEventDetailsUndoOrganizeFolderWithTidyDetails(arg) - case .userTagsAddedDetails(let swiftArg): - let arg = DBXTeamLogUserTagsAddedDetails(swift: swiftArg) - return DBXTeamLogEventDetailsUserTagsAddedDetails(arg) - case .userTagsRemovedDetails(let swiftArg): - let arg = DBXTeamLogUserTagsRemovedDetails(swift: swiftArg) - return DBXTeamLogEventDetailsUserTagsRemovedDetails(arg) - case .emailIngestReceiveFileDetails(let swiftArg): - let arg = DBXTeamLogEmailIngestReceiveFileDetails(swift: swiftArg) - return DBXTeamLogEventDetailsEmailIngestReceiveFileDetails(arg) - case .fileRequestChangeDetails(let swiftArg): - let arg = DBXTeamLogFileRequestChangeDetails(swift: swiftArg) - return DBXTeamLogEventDetailsFileRequestChangeDetails(arg) - case .fileRequestCloseDetails(let swiftArg): - let arg = DBXTeamLogFileRequestCloseDetails(swift: swiftArg) - return DBXTeamLogEventDetailsFileRequestCloseDetails(arg) - case .fileRequestCreateDetails(let swiftArg): - let arg = DBXTeamLogFileRequestCreateDetails(swift: swiftArg) - return DBXTeamLogEventDetailsFileRequestCreateDetails(arg) - case .fileRequestDeleteDetails(let swiftArg): - let arg = DBXTeamLogFileRequestDeleteDetails(swift: swiftArg) - return DBXTeamLogEventDetailsFileRequestDeleteDetails(arg) - case .fileRequestReceiveFileDetails(let swiftArg): - let arg = DBXTeamLogFileRequestReceiveFileDetails(swift: swiftArg) - return DBXTeamLogEventDetailsFileRequestReceiveFileDetails(arg) - case .groupAddExternalIdDetails(let swiftArg): - let arg = DBXTeamLogGroupAddExternalIdDetails(swift: swiftArg) - return DBXTeamLogEventDetailsGroupAddExternalIdDetails(arg) - case .groupAddMemberDetails(let swiftArg): - let arg = DBXTeamLogGroupAddMemberDetails(swift: swiftArg) - return DBXTeamLogEventDetailsGroupAddMemberDetails(arg) - case .groupChangeExternalIdDetails(let swiftArg): - let arg = DBXTeamLogGroupChangeExternalIdDetails(swift: swiftArg) - return DBXTeamLogEventDetailsGroupChangeExternalIdDetails(arg) - case .groupChangeManagementTypeDetails(let swiftArg): - let arg = DBXTeamLogGroupChangeManagementTypeDetails(swift: swiftArg) - return DBXTeamLogEventDetailsGroupChangeManagementTypeDetails(arg) - case .groupChangeMemberRoleDetails(let swiftArg): - let arg = DBXTeamLogGroupChangeMemberRoleDetails(swift: swiftArg) - return DBXTeamLogEventDetailsGroupChangeMemberRoleDetails(arg) - case .groupCreateDetails(let swiftArg): - let arg = DBXTeamLogGroupCreateDetails(swift: swiftArg) - return DBXTeamLogEventDetailsGroupCreateDetails(arg) - case .groupDeleteDetails(let swiftArg): - let arg = DBXTeamLogGroupDeleteDetails(swift: swiftArg) - return DBXTeamLogEventDetailsGroupDeleteDetails(arg) - case .groupDescriptionUpdatedDetails(let swiftArg): - let arg = DBXTeamLogGroupDescriptionUpdatedDetails(swift: swiftArg) + case .automaticDelete: + return DBXTeamLogDispositionActionTypeAutomaticDelete() + case .automaticPermanentlyDelete: + return DBXTeamLogDispositionActionTypeAutomaticPermanentlyDelete() + case .other: + return DBXTeamLogDispositionActionTypeOther() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asAutomaticDelete: DBXTeamLogDispositionActionTypeAutomaticDelete? { + return self as? DBXTeamLogDispositionActionTypeAutomaticDelete + } + + @objc + public var asAutomaticPermanentlyDelete: DBXTeamLogDispositionActionTypeAutomaticPermanentlyDelete? { + return self as? DBXTeamLogDispositionActionTypeAutomaticPermanentlyDelete + } + + @objc + public var asOther: DBXTeamLogDispositionActionTypeOther? { + return self as? DBXTeamLogDispositionActionTypeOther + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogDispositionActionTypeAutomaticDelete: DBXTeamLogDispositionActionType { + @objc + public init() { + let swift = TeamLog.DispositionActionType.automaticDelete + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogDispositionActionTypeAutomaticPermanentlyDelete: DBXTeamLogDispositionActionType { + @objc + public init() { + let swift = TeamLog.DispositionActionType.automaticPermanentlyDelete + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogDispositionActionTypeOther: DBXTeamLogDispositionActionType { + @objc + public init() { + let swift = TeamLog.DispositionActionType.other + super.init(swift: swift) + } +} + +/// Approved user's request to join team. +@objc +public class DBXTeamLogDomainInvitesApproveRequestToJoinTeamDetails: NSObject { + + let swift: TeamLog.DomainInvitesApproveRequestToJoinTeamDetails + + public init(swift: TeamLog.DomainInvitesApproveRequestToJoinTeamDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible DomainInvitesApproveRequestToJoinTeamType struct +@objc +public class DBXTeamLogDomainInvitesApproveRequestToJoinTeamType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.DomainInvitesApproveRequestToJoinTeamType(description_: description_) + } + + let swift: TeamLog.DomainInvitesApproveRequestToJoinTeamType + + public init(swift: TeamLog.DomainInvitesApproveRequestToJoinTeamType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Declined user's request to join team. +@objc +public class DBXTeamLogDomainInvitesDeclineRequestToJoinTeamDetails: NSObject { + + let swift: TeamLog.DomainInvitesDeclineRequestToJoinTeamDetails + + public init(swift: TeamLog.DomainInvitesDeclineRequestToJoinTeamDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible DomainInvitesDeclineRequestToJoinTeamType struct +@objc +public class DBXTeamLogDomainInvitesDeclineRequestToJoinTeamType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.DomainInvitesDeclineRequestToJoinTeamType(description_: description_) + } + + let swift: TeamLog.DomainInvitesDeclineRequestToJoinTeamType + + public init(swift: TeamLog.DomainInvitesDeclineRequestToJoinTeamType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Sent domain invites to existing domain accounts. +@objc +public class DBXTeamLogDomainInvitesEmailExistingUsersDetails: NSObject { + /// Domain names. + @objc + public var domainName: String { swift.domainName } + /// Number of recipients. + @objc + public var numRecipients: NSNumber { swift.numRecipients as NSNumber } + + @objc + public init(domainName: String, numRecipients: NSNumber) { + self.swift = TeamLog.DomainInvitesEmailExistingUsersDetails(domainName: domainName, numRecipients: numRecipients.uint64Value) + } + + let swift: TeamLog.DomainInvitesEmailExistingUsersDetails + + public init(swift: TeamLog.DomainInvitesEmailExistingUsersDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible DomainInvitesEmailExistingUsersType struct +@objc +public class DBXTeamLogDomainInvitesEmailExistingUsersType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.DomainInvitesEmailExistingUsersType(description_: description_) + } + + let swift: TeamLog.DomainInvitesEmailExistingUsersType + + public init(swift: TeamLog.DomainInvitesEmailExistingUsersType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Requested to join team. +@objc +public class DBXTeamLogDomainInvitesRequestToJoinTeamDetails: NSObject { + + let swift: TeamLog.DomainInvitesRequestToJoinTeamDetails + + public init(swift: TeamLog.DomainInvitesRequestToJoinTeamDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible DomainInvitesRequestToJoinTeamType struct +@objc +public class DBXTeamLogDomainInvitesRequestToJoinTeamType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.DomainInvitesRequestToJoinTeamType(description_: description_) + } + + let swift: TeamLog.DomainInvitesRequestToJoinTeamType + + public init(swift: TeamLog.DomainInvitesRequestToJoinTeamType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Disabled "Automatically invite new users". +@objc +public class DBXTeamLogDomainInvitesSetInviteNewUserPrefToNoDetails: NSObject { + + let swift: TeamLog.DomainInvitesSetInviteNewUserPrefToNoDetails + + public init(swift: TeamLog.DomainInvitesSetInviteNewUserPrefToNoDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible DomainInvitesSetInviteNewUserPrefToNoType struct +@objc +public class DBXTeamLogDomainInvitesSetInviteNewUserPrefToNoType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.DomainInvitesSetInviteNewUserPrefToNoType(description_: description_) + } + + let swift: TeamLog.DomainInvitesSetInviteNewUserPrefToNoType + + public init(swift: TeamLog.DomainInvitesSetInviteNewUserPrefToNoType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Enabled "Automatically invite new users". +@objc +public class DBXTeamLogDomainInvitesSetInviteNewUserPrefToYesDetails: NSObject { + + let swift: TeamLog.DomainInvitesSetInviteNewUserPrefToYesDetails + + public init(swift: TeamLog.DomainInvitesSetInviteNewUserPrefToYesDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible DomainInvitesSetInviteNewUserPrefToYesType struct +@objc +public class DBXTeamLogDomainInvitesSetInviteNewUserPrefToYesType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.DomainInvitesSetInviteNewUserPrefToYesType(description_: description_) + } + + let swift: TeamLog.DomainInvitesSetInviteNewUserPrefToYesType + + public init(swift: TeamLog.DomainInvitesSetInviteNewUserPrefToYesType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Failed to verify team domain. +@objc +public class DBXTeamLogDomainVerificationAddDomainFailDetails: NSObject { + /// Domain name. + @objc + public var domainName: String { swift.domainName } + /// Domain name verification method. Might be missing due to historical data gap. + @objc + public var verificationMethod: String? { swift.verificationMethod } + + @objc + public init(domainName: String, verificationMethod: String?) { + self.swift = TeamLog.DomainVerificationAddDomainFailDetails(domainName: domainName, verificationMethod: verificationMethod) + } + + let swift: TeamLog.DomainVerificationAddDomainFailDetails + + public init(swift: TeamLog.DomainVerificationAddDomainFailDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible DomainVerificationAddDomainFailType struct +@objc +public class DBXTeamLogDomainVerificationAddDomainFailType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.DomainVerificationAddDomainFailType(description_: description_) + } + + let swift: TeamLog.DomainVerificationAddDomainFailType + + public init(swift: TeamLog.DomainVerificationAddDomainFailType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Verified team domain. +@objc +public class DBXTeamLogDomainVerificationAddDomainSuccessDetails: NSObject { + /// Domain names. + @objc + public var domainNames: Array { swift.domainNames } + /// Domain name verification method. Might be missing due to historical data gap. + @objc + public var verificationMethod: String? { swift.verificationMethod } + + @objc + public init(domainNames: Array, verificationMethod: String?) { + self.swift = TeamLog.DomainVerificationAddDomainSuccessDetails(domainNames: domainNames, verificationMethod: verificationMethod) + } + + let swift: TeamLog.DomainVerificationAddDomainSuccessDetails + + public init(swift: TeamLog.DomainVerificationAddDomainSuccessDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible DomainVerificationAddDomainSuccessType struct +@objc +public class DBXTeamLogDomainVerificationAddDomainSuccessType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.DomainVerificationAddDomainSuccessType(description_: description_) + } + + let swift: TeamLog.DomainVerificationAddDomainSuccessType + + public init(swift: TeamLog.DomainVerificationAddDomainSuccessType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Removed domain from list of verified team domains. +@objc +public class DBXTeamLogDomainVerificationRemoveDomainDetails: NSObject { + /// Domain names. + @objc + public var domainNames: Array { swift.domainNames } + + @objc + public init(domainNames: Array) { + self.swift = TeamLog.DomainVerificationRemoveDomainDetails(domainNames: domainNames) + } + + let swift: TeamLog.DomainVerificationRemoveDomainDetails + + public init(swift: TeamLog.DomainVerificationRemoveDomainDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible DomainVerificationRemoveDomainType struct +@objc +public class DBXTeamLogDomainVerificationRemoveDomainType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.DomainVerificationRemoveDomainType(description_: description_) + } + + let swift: TeamLog.DomainVerificationRemoveDomainType + + public init(swift: TeamLog.DomainVerificationRemoveDomainType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Shared content downloads policy +@objc +public class DBXTeamLogDownloadPolicyType: NSObject { + let swift: TeamLog.DownloadPolicyType + + public init(swift: TeamLog.DownloadPolicyType) { + self.swift = swift + } + + public static func factory(swift: TeamLog.DownloadPolicyType) -> DBXTeamLogDownloadPolicyType { + switch swift { + case .allow: + return DBXTeamLogDownloadPolicyTypeAllow() + case .disallow: + return DBXTeamLogDownloadPolicyTypeDisallow() + case .other: + return DBXTeamLogDownloadPolicyTypeOther() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asAllow: DBXTeamLogDownloadPolicyTypeAllow? { + return self as? DBXTeamLogDownloadPolicyTypeAllow + } + + @objc + public var asDisallow: DBXTeamLogDownloadPolicyTypeDisallow? { + return self as? DBXTeamLogDownloadPolicyTypeDisallow + } + + @objc + public var asOther: DBXTeamLogDownloadPolicyTypeOther? { + return self as? DBXTeamLogDownloadPolicyTypeOther + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogDownloadPolicyTypeAllow: DBXTeamLogDownloadPolicyType { + @objc + public init() { + let swift = TeamLog.DownloadPolicyType.allow + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogDownloadPolicyTypeDisallow: DBXTeamLogDownloadPolicyType { + @objc + public init() { + let swift = TeamLog.DownloadPolicyType.disallow + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogDownloadPolicyTypeOther: DBXTeamLogDownloadPolicyType { + @objc + public init() { + let swift = TeamLog.DownloadPolicyType.other + super.init(swift: swift) + } +} + +/// Exported passwords. +@objc +public class DBXTeamLogDropboxPasswordsExportedDetails: NSObject { + /// The platform the device runs export. + @objc + public var platform: String { swift.platform } + + @objc + public init(platform: String) { + self.swift = TeamLog.DropboxPasswordsExportedDetails(platform: platform) + } + + let swift: TeamLog.DropboxPasswordsExportedDetails + + public init(swift: TeamLog.DropboxPasswordsExportedDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible DropboxPasswordsExportedType struct +@objc +public class DBXTeamLogDropboxPasswordsExportedType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.DropboxPasswordsExportedType(description_: description_) + } + + let swift: TeamLog.DropboxPasswordsExportedType + + public init(swift: TeamLog.DropboxPasswordsExportedType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Enrolled new Dropbox Passwords device. +@objc +public class DBXTeamLogDropboxPasswordsNewDeviceEnrolledDetails: NSObject { + /// Whether it's a first device enrolled. + @objc + public var isFirstDevice: NSNumber { swift.isFirstDevice as NSNumber } + /// The platform the device is enrolled. + @objc + public var platform: String { swift.platform } + + @objc + public init(isFirstDevice: NSNumber, platform: String) { + self.swift = TeamLog.DropboxPasswordsNewDeviceEnrolledDetails(isFirstDevice: isFirstDevice.boolValue, platform: platform) + } + + let swift: TeamLog.DropboxPasswordsNewDeviceEnrolledDetails + + public init(swift: TeamLog.DropboxPasswordsNewDeviceEnrolledDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible DropboxPasswordsNewDeviceEnrolledType struct +@objc +public class DBXTeamLogDropboxPasswordsNewDeviceEnrolledType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.DropboxPasswordsNewDeviceEnrolledType(description_: description_) + } + + let swift: TeamLog.DropboxPasswordsNewDeviceEnrolledType + + public init(swift: TeamLog.DropboxPasswordsNewDeviceEnrolledType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Policy for deciding whether team users can use Dropbox Passwords +@objc +public class DBXTeamLogDropboxPasswordsPolicy: NSObject { + let swift: TeamLog.DropboxPasswordsPolicy + + public init(swift: TeamLog.DropboxPasswordsPolicy) { + self.swift = swift + } + + public static func factory(swift: TeamLog.DropboxPasswordsPolicy) -> DBXTeamLogDropboxPasswordsPolicy { + switch swift { + case .default_: + return DBXTeamLogDropboxPasswordsPolicyDefault_() + case .disabled: + return DBXTeamLogDropboxPasswordsPolicyDisabled() + case .enabled: + return DBXTeamLogDropboxPasswordsPolicyEnabled() + case .other: + return DBXTeamLogDropboxPasswordsPolicyOther() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asDefault_: DBXTeamLogDropboxPasswordsPolicyDefault_? { + return self as? DBXTeamLogDropboxPasswordsPolicyDefault_ + } + + @objc + public var asDisabled: DBXTeamLogDropboxPasswordsPolicyDisabled? { + return self as? DBXTeamLogDropboxPasswordsPolicyDisabled + } + + @objc + public var asEnabled: DBXTeamLogDropboxPasswordsPolicyEnabled? { + return self as? DBXTeamLogDropboxPasswordsPolicyEnabled + } + + @objc + public var asOther: DBXTeamLogDropboxPasswordsPolicyOther? { + return self as? DBXTeamLogDropboxPasswordsPolicyOther + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogDropboxPasswordsPolicyDefault_: DBXTeamLogDropboxPasswordsPolicy { + @objc + public init() { + let swift = TeamLog.DropboxPasswordsPolicy.default_ + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogDropboxPasswordsPolicyDisabled: DBXTeamLogDropboxPasswordsPolicy { + @objc + public init() { + let swift = TeamLog.DropboxPasswordsPolicy.disabled + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogDropboxPasswordsPolicyEnabled: DBXTeamLogDropboxPasswordsPolicy { + @objc + public init() { + let swift = TeamLog.DropboxPasswordsPolicy.enabled + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogDropboxPasswordsPolicyOther: DBXTeamLogDropboxPasswordsPolicy { + @objc + public init() { + let swift = TeamLog.DropboxPasswordsPolicy.other + super.init(swift: swift) + } +} + +/// Changed Dropbox Passwords policy for team. +@objc +public class DBXTeamLogDropboxPasswordsPolicyChangedDetails: NSObject { + /// To. + @objc + public var newValue: DBXTeamLogDropboxPasswordsPolicy { DBXTeamLogDropboxPasswordsPolicy(swift: swift.newValue) } + /// From. + @objc + public var previousValue: DBXTeamLogDropboxPasswordsPolicy { DBXTeamLogDropboxPasswordsPolicy(swift: swift.previousValue) } + + @objc + public init(newValue: DBXTeamLogDropboxPasswordsPolicy, previousValue: DBXTeamLogDropboxPasswordsPolicy) { + self.swift = TeamLog.DropboxPasswordsPolicyChangedDetails(newValue: newValue.swift, previousValue: previousValue.swift) + } + + let swift: TeamLog.DropboxPasswordsPolicyChangedDetails + + public init(swift: TeamLog.DropboxPasswordsPolicyChangedDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible DropboxPasswordsPolicyChangedType struct +@objc +public class DBXTeamLogDropboxPasswordsPolicyChangedType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.DropboxPasswordsPolicyChangedType(description_: description_) + } + + let swift: TeamLog.DropboxPasswordsPolicyChangedType + + public init(swift: TeamLog.DropboxPasswordsPolicyChangedType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Represents a time duration: unit and amount +@objc +public class DBXTeamLogDurationLogInfo: NSObject { + /// Time unit. + @objc + public var unit: DBXTeamLogTimeUnit { DBXTeamLogTimeUnit(swift: swift.unit) } + /// Amount of time. + @objc + public var amount: NSNumber { swift.amount as NSNumber } + + @objc + public init(unit: DBXTeamLogTimeUnit, amount: NSNumber) { + self.swift = TeamLog.DurationLogInfo(unit: unit.swift, amount: amount.uint64Value) + } + + let swift: TeamLog.DurationLogInfo + + public init(swift: TeamLog.DurationLogInfo) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Policy for deciding whether a team can use Email to Dropbox feature +@objc +public class DBXTeamLogEmailIngestPolicy: NSObject { + let swift: TeamLog.EmailIngestPolicy + + public init(swift: TeamLog.EmailIngestPolicy) { + self.swift = swift + } + + public static func factory(swift: TeamLog.EmailIngestPolicy) -> DBXTeamLogEmailIngestPolicy { + switch swift { + case .disabled: + return DBXTeamLogEmailIngestPolicyDisabled() + case .enabled: + return DBXTeamLogEmailIngestPolicyEnabled() + case .other: + return DBXTeamLogEmailIngestPolicyOther() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asDisabled: DBXTeamLogEmailIngestPolicyDisabled? { + return self as? DBXTeamLogEmailIngestPolicyDisabled + } + + @objc + public var asEnabled: DBXTeamLogEmailIngestPolicyEnabled? { + return self as? DBXTeamLogEmailIngestPolicyEnabled + } + + @objc + public var asOther: DBXTeamLogEmailIngestPolicyOther? { + return self as? DBXTeamLogEmailIngestPolicyOther + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEmailIngestPolicyDisabled: DBXTeamLogEmailIngestPolicy { + @objc + public init() { + let swift = TeamLog.EmailIngestPolicy.disabled + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEmailIngestPolicyEnabled: DBXTeamLogEmailIngestPolicy { + @objc + public init() { + let swift = TeamLog.EmailIngestPolicy.enabled + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEmailIngestPolicyOther: DBXTeamLogEmailIngestPolicy { + @objc + public init() { + let swift = TeamLog.EmailIngestPolicy.other + super.init(swift: swift) + } +} + +/// Changed email to Dropbox policy for team. +@objc +public class DBXTeamLogEmailIngestPolicyChangedDetails: NSObject { + /// To. + @objc + public var newValue: DBXTeamLogEmailIngestPolicy { DBXTeamLogEmailIngestPolicy(swift: swift.newValue) } + /// From. + @objc + public var previousValue: DBXTeamLogEmailIngestPolicy { DBXTeamLogEmailIngestPolicy(swift: swift.previousValue) } + + @objc + public init(newValue: DBXTeamLogEmailIngestPolicy, previousValue: DBXTeamLogEmailIngestPolicy) { + self.swift = TeamLog.EmailIngestPolicyChangedDetails(newValue: newValue.swift, previousValue: previousValue.swift) + } + + let swift: TeamLog.EmailIngestPolicyChangedDetails + + public init(swift: TeamLog.EmailIngestPolicyChangedDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible EmailIngestPolicyChangedType struct +@objc +public class DBXTeamLogEmailIngestPolicyChangedType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.EmailIngestPolicyChangedType(description_: description_) + } + + let swift: TeamLog.EmailIngestPolicyChangedType + + public init(swift: TeamLog.EmailIngestPolicyChangedType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Received files via Email to Dropbox. +@objc +public class DBXTeamLogEmailIngestReceiveFileDetails: NSObject { + /// Inbox name. + @objc + public var inboxName: String { swift.inboxName } + /// Submitted file names. + @objc + public var attachmentNames: Array { swift.attachmentNames } + /// Subject of the email. + @objc + public var subject: String? { swift.subject } + /// The name as provided by the submitter. + @objc + public var fromName: String? { swift.fromName } + /// The email as provided by the submitter. + @objc + public var fromEmail: String? { swift.fromEmail } + + @objc + public init(inboxName: String, attachmentNames: Array, subject: String?, fromName: String?, fromEmail: String?) { + self.swift = TeamLog.EmailIngestReceiveFileDetails(inboxName: inboxName, attachmentNames: attachmentNames, subject: subject, fromName: fromName, fromEmail: fromEmail) + } + + let swift: TeamLog.EmailIngestReceiveFileDetails + + public init(swift: TeamLog.EmailIngestReceiveFileDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible EmailIngestReceiveFileType struct +@objc +public class DBXTeamLogEmailIngestReceiveFileType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.EmailIngestReceiveFileType(description_: description_) + } + + let swift: TeamLog.EmailIngestReceiveFileType + + public init(swift: TeamLog.EmailIngestReceiveFileType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Added members to EMM exception list. +@objc +public class DBXTeamLogEmmAddExceptionDetails: NSObject { + + let swift: TeamLog.EmmAddExceptionDetails + + public init(swift: TeamLog.EmmAddExceptionDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible EmmAddExceptionType struct +@objc +public class DBXTeamLogEmmAddExceptionType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.EmmAddExceptionType(description_: description_) + } + + let swift: TeamLog.EmmAddExceptionType + + public init(swift: TeamLog.EmmAddExceptionType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Enabled/disabled enterprise mobility management for members. +@objc +public class DBXTeamLogEmmChangePolicyDetails: NSObject { + /// New enterprise mobility management policy. + @objc + public var newValue: DBXTeamPoliciesEmmState { DBXTeamPoliciesEmmState(swift: swift.newValue) } + /// Previous enterprise mobility management policy. Might be missing due to historical data gap. + @objc + public var previousValue: DBXTeamPoliciesEmmState? { guard let swift = swift.previousValue else { return nil }; return DBXTeamPoliciesEmmState(swift: swift) } + + @objc + public init(newValue: DBXTeamPoliciesEmmState, previousValue: DBXTeamPoliciesEmmState?) { + self.swift = TeamLog.EmmChangePolicyDetails(newValue: newValue.swift, previousValue: previousValue?.swift) + } + + let swift: TeamLog.EmmChangePolicyDetails + + public init(swift: TeamLog.EmmChangePolicyDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible EmmChangePolicyType struct +@objc +public class DBXTeamLogEmmChangePolicyType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.EmmChangePolicyType(description_: description_) + } + + let swift: TeamLog.EmmChangePolicyType + + public init(swift: TeamLog.EmmChangePolicyType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Created EMM-excluded users report. +@objc +public class DBXTeamLogEmmCreateExceptionsReportDetails: NSObject { + + let swift: TeamLog.EmmCreateExceptionsReportDetails + + public init(swift: TeamLog.EmmCreateExceptionsReportDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible EmmCreateExceptionsReportType struct +@objc +public class DBXTeamLogEmmCreateExceptionsReportType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.EmmCreateExceptionsReportType(description_: description_) + } + + let swift: TeamLog.EmmCreateExceptionsReportType + + public init(swift: TeamLog.EmmCreateExceptionsReportType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Created EMM mobile app usage report. +@objc +public class DBXTeamLogEmmCreateUsageReportDetails: NSObject { + + let swift: TeamLog.EmmCreateUsageReportDetails + + public init(swift: TeamLog.EmmCreateUsageReportDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible EmmCreateUsageReportType struct +@objc +public class DBXTeamLogEmmCreateUsageReportType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.EmmCreateUsageReportType(description_: description_) + } + + let swift: TeamLog.EmmCreateUsageReportType + + public init(swift: TeamLog.EmmCreateUsageReportType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Failed to sign in via EMM. +@objc +public class DBXTeamLogEmmErrorDetails: NSObject { + /// Error details. + @objc + public var errorDetails: DBXTeamLogFailureDetailsLogInfo { DBXTeamLogFailureDetailsLogInfo(swift: swift.errorDetails) } + + @objc + public init(errorDetails: DBXTeamLogFailureDetailsLogInfo) { + self.swift = TeamLog.EmmErrorDetails(errorDetails: errorDetails.swift) + } + + let swift: TeamLog.EmmErrorDetails + + public init(swift: TeamLog.EmmErrorDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible EmmErrorType struct +@objc +public class DBXTeamLogEmmErrorType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.EmmErrorType(description_: description_) + } + + let swift: TeamLog.EmmErrorType + + public init(swift: TeamLog.EmmErrorType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Refreshed auth token used for setting up EMM. +@objc +public class DBXTeamLogEmmRefreshAuthTokenDetails: NSObject { + + let swift: TeamLog.EmmRefreshAuthTokenDetails + + public init(swift: TeamLog.EmmRefreshAuthTokenDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible EmmRefreshAuthTokenType struct +@objc +public class DBXTeamLogEmmRefreshAuthTokenType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.EmmRefreshAuthTokenType(description_: description_) + } + + let swift: TeamLog.EmmRefreshAuthTokenType + + public init(swift: TeamLog.EmmRefreshAuthTokenType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Removed members from EMM exception list. +@objc +public class DBXTeamLogEmmRemoveExceptionDetails: NSObject { + + let swift: TeamLog.EmmRemoveExceptionDetails + + public init(swift: TeamLog.EmmRemoveExceptionDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible EmmRemoveExceptionType struct +@objc +public class DBXTeamLogEmmRemoveExceptionType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.EmmRemoveExceptionType(description_: description_) + } + + let swift: TeamLog.EmmRemoveExceptionType + + public init(swift: TeamLog.EmmRemoveExceptionType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Enabled domain invites. +@objc +public class DBXTeamLogEnabledDomainInvitesDetails: NSObject { + + let swift: TeamLog.EnabledDomainInvitesDetails + + public init(swift: TeamLog.EnabledDomainInvitesDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible EnabledDomainInvitesType struct +@objc +public class DBXTeamLogEnabledDomainInvitesType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.EnabledDomainInvitesType(description_: description_) + } + + let swift: TeamLog.EnabledDomainInvitesType + + public init(swift: TeamLog.EnabledDomainInvitesType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Canceled team key rotation. +@objc +public class DBXTeamLogEncryptedFolderCancelTeamKeyRotationDetails: NSObject { + /// Identifier of the team key. + @objc + public var teamKeyId: String { swift.teamKeyId } + + @objc + public init(teamKeyId: String) { + self.swift = TeamLog.EncryptedFolderCancelTeamKeyRotationDetails(teamKeyId: teamKeyId) + } + + let swift: TeamLog.EncryptedFolderCancelTeamKeyRotationDetails + + public init(swift: TeamLog.EncryptedFolderCancelTeamKeyRotationDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible EncryptedFolderCancelTeamKeyRotationType struct +@objc +public class DBXTeamLogEncryptedFolderCancelTeamKeyRotationType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.EncryptedFolderCancelTeamKeyRotationType(description_: description_) + } + + let swift: TeamLog.EncryptedFolderCancelTeamKeyRotationType + + public init(swift: TeamLog.EncryptedFolderCancelTeamKeyRotationType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Added recovery key. +@objc +public class DBXTeamLogEncryptedFolderEnrollBackupKeyDetails: NSObject { + /// Identifier of the recovery key. + @objc + public var backupKeyId: String { swift.backupKeyId } + + @objc + public init(backupKeyId: String) { + self.swift = TeamLog.EncryptedFolderEnrollBackupKeyDetails(backupKeyId: backupKeyId) + } + + let swift: TeamLog.EncryptedFolderEnrollBackupKeyDetails + + public init(swift: TeamLog.EncryptedFolderEnrollBackupKeyDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible EncryptedFolderEnrollBackupKeyType struct +@objc +public class DBXTeamLogEncryptedFolderEnrollBackupKeyType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.EncryptedFolderEnrollBackupKeyType(description_: description_) + } + + let swift: TeamLog.EncryptedFolderEnrollBackupKeyType + + public init(swift: TeamLog.EncryptedFolderEnrollBackupKeyType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Enrolled device. +@objc +public class DBXTeamLogEncryptedFolderEnrollClientDetails: NSObject { + /// Identifier of the client key. + @objc + public var clientKeyId: String { swift.clientKeyId } + + @objc + public init(clientKeyId: String) { + self.swift = TeamLog.EncryptedFolderEnrollClientDetails(clientKeyId: clientKeyId) + } + + let swift: TeamLog.EncryptedFolderEnrollClientDetails + + public init(swift: TeamLog.EncryptedFolderEnrollClientDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible EncryptedFolderEnrollClientType struct +@objc +public class DBXTeamLogEncryptedFolderEnrollClientType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.EncryptedFolderEnrollClientType(description_: description_) + } + + let swift: TeamLog.EncryptedFolderEnrollClientType + + public init(swift: TeamLog.EncryptedFolderEnrollClientType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Activated team folder encryption. +@objc +public class DBXTeamLogEncryptedFolderEnrollTeamDetails: NSObject { + + let swift: TeamLog.EncryptedFolderEnrollTeamDetails + + public init(swift: TeamLog.EncryptedFolderEnrollTeamDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible EncryptedFolderEnrollTeamType struct +@objc +public class DBXTeamLogEncryptedFolderEnrollTeamType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.EncryptedFolderEnrollTeamType(description_: description_) + } + + let swift: TeamLog.EncryptedFolderEnrollTeamType + + public init(swift: TeamLog.EncryptedFolderEnrollTeamType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Deactivated team folder encryption. +@objc +public class DBXTeamLogEncryptedFolderFinishTeamUnenrollmentDetails: NSObject { + + let swift: TeamLog.EncryptedFolderFinishTeamUnenrollmentDetails + + public init(swift: TeamLog.EncryptedFolderFinishTeamUnenrollmentDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible EncryptedFolderFinishTeamUnenrollmentType struct +@objc +public class DBXTeamLogEncryptedFolderFinishTeamUnenrollmentType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.EncryptedFolderFinishTeamUnenrollmentType(description_: description_) + } + + let swift: TeamLog.EncryptedFolderFinishTeamUnenrollmentType + + public init(swift: TeamLog.EncryptedFolderFinishTeamUnenrollmentType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Initiated team key rotation. +@objc +public class DBXTeamLogEncryptedFolderInitTeamKeyRotationDetails: NSObject { + /// Identifier of the team key. + @objc + public var teamKeyId: String { swift.teamKeyId } + + @objc + public init(teamKeyId: String) { + self.swift = TeamLog.EncryptedFolderInitTeamKeyRotationDetails(teamKeyId: teamKeyId) + } + + let swift: TeamLog.EncryptedFolderInitTeamKeyRotationDetails + + public init(swift: TeamLog.EncryptedFolderInitTeamKeyRotationDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible EncryptedFolderInitTeamKeyRotationType struct +@objc +public class DBXTeamLogEncryptedFolderInitTeamKeyRotationType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.EncryptedFolderInitTeamKeyRotationType(description_: description_) + } + + let swift: TeamLog.EncryptedFolderInitTeamKeyRotationType + + public init(swift: TeamLog.EncryptedFolderInitTeamKeyRotationType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Initiated deactivation of team folder encryption. +@objc +public class DBXTeamLogEncryptedFolderInitTeamUnenrollmentDetails: NSObject { + + let swift: TeamLog.EncryptedFolderInitTeamUnenrollmentDetails + + public init(swift: TeamLog.EncryptedFolderInitTeamUnenrollmentDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible EncryptedFolderInitTeamUnenrollmentType struct +@objc +public class DBXTeamLogEncryptedFolderInitTeamUnenrollmentType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.EncryptedFolderInitTeamUnenrollmentType(description_: description_) + } + + let swift: TeamLog.EncryptedFolderInitTeamUnenrollmentType + + public init(swift: TeamLog.EncryptedFolderInitTeamUnenrollmentType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Removed recovery key. +@objc +public class DBXTeamLogEncryptedFolderRemoveBackupKeyDetails: NSObject { + /// Identifier of the recovery key. + @objc + public var backupKeyId: String { swift.backupKeyId } + + @objc + public init(backupKeyId: String) { + self.swift = TeamLog.EncryptedFolderRemoveBackupKeyDetails(backupKeyId: backupKeyId) + } + + let swift: TeamLog.EncryptedFolderRemoveBackupKeyDetails + + public init(swift: TeamLog.EncryptedFolderRemoveBackupKeyDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible EncryptedFolderRemoveBackupKeyType struct +@objc +public class DBXTeamLogEncryptedFolderRemoveBackupKeyType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.EncryptedFolderRemoveBackupKeyType(description_: description_) + } + + let swift: TeamLog.EncryptedFolderRemoveBackupKeyType + + public init(swift: TeamLog.EncryptedFolderRemoveBackupKeyType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Rotated team key. +@objc +public class DBXTeamLogEncryptedFolderRotateTeamKeyDetails: NSObject { + /// Identifier of the team key. + @objc + public var teamKeyId: String { swift.teamKeyId } + + @objc + public init(teamKeyId: String) { + self.swift = TeamLog.EncryptedFolderRotateTeamKeyDetails(teamKeyId: teamKeyId) + } + + let swift: TeamLog.EncryptedFolderRotateTeamKeyDetails + + public init(swift: TeamLog.EncryptedFolderRotateTeamKeyDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible EncryptedFolderRotateTeamKeyType struct +@objc +public class DBXTeamLogEncryptedFolderRotateTeamKeyType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.EncryptedFolderRotateTeamKeyType(description_: description_) + } + + let swift: TeamLog.EncryptedFolderRotateTeamKeyType + + public init(swift: TeamLog.EncryptedFolderRotateTeamKeyType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Unenrolled device. +@objc +public class DBXTeamLogEncryptedFolderUnenrollClientDetails: NSObject { + /// Identifier of the client key. + @objc + public var clientKeyId: String { swift.clientKeyId } + + @objc + public init(clientKeyId: String) { + self.swift = TeamLog.EncryptedFolderUnenrollClientDetails(clientKeyId: clientKeyId) + } + + let swift: TeamLog.EncryptedFolderUnenrollClientDetails + + public init(swift: TeamLog.EncryptedFolderUnenrollClientDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible EncryptedFolderUnenrollClientType struct +@objc +public class DBXTeamLogEncryptedFolderUnenrollClientType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.EncryptedFolderUnenrollClientType(description_: description_) + } + + let swift: TeamLog.EncryptedFolderUnenrollClientType + + public init(swift: TeamLog.EncryptedFolderUnenrollClientType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Ended enterprise admin session. +@objc +public class DBXTeamLogEndedEnterpriseAdminSessionDeprecatedDetails: NSObject { + /// More information about the organization or team. + @objc + public var federationExtraDetails: DBXTeamLogFedExtraDetails { DBXTeamLogFedExtraDetails(swift: swift.federationExtraDetails) } + + @objc + public init(federationExtraDetails: DBXTeamLogFedExtraDetails) { + self.swift = TeamLog.EndedEnterpriseAdminSessionDeprecatedDetails(federationExtraDetails: federationExtraDetails.swift) + } + + let swift: TeamLog.EndedEnterpriseAdminSessionDeprecatedDetails + + public init(swift: TeamLog.EndedEnterpriseAdminSessionDeprecatedDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible EndedEnterpriseAdminSessionDeprecatedType struct +@objc +public class DBXTeamLogEndedEnterpriseAdminSessionDeprecatedType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.EndedEnterpriseAdminSessionDeprecatedType(description_: description_) + } + + let swift: TeamLog.EndedEnterpriseAdminSessionDeprecatedType + + public init(swift: TeamLog.EndedEnterpriseAdminSessionDeprecatedType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Ended enterprise admin session. +@objc +public class DBXTeamLogEndedEnterpriseAdminSessionDetails: NSObject { + + let swift: TeamLog.EndedEnterpriseAdminSessionDetails + + public init(swift: TeamLog.EndedEnterpriseAdminSessionDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible EndedEnterpriseAdminSessionType struct +@objc +public class DBXTeamLogEndedEnterpriseAdminSessionType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.EndedEnterpriseAdminSessionType(description_: description_) + } + + let swift: TeamLog.EndedEnterpriseAdminSessionType + + public init(swift: TeamLog.EndedEnterpriseAdminSessionType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Policy for deciding whether password must be enforced when an externally shared link is updated +@objc +public class DBXTeamLogEnforceLinkPasswordPolicy: NSObject { + let swift: TeamLog.EnforceLinkPasswordPolicy + + public init(swift: TeamLog.EnforceLinkPasswordPolicy) { + self.swift = swift + } + + public static func factory(swift: TeamLog.EnforceLinkPasswordPolicy) -> DBXTeamLogEnforceLinkPasswordPolicy { + switch swift { + case .optional: + return DBXTeamLogEnforceLinkPasswordPolicyOptional() + case .required: + return DBXTeamLogEnforceLinkPasswordPolicyRequired() + case .other: + return DBXTeamLogEnforceLinkPasswordPolicyOther() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asOptional: DBXTeamLogEnforceLinkPasswordPolicyOptional? { + return self as? DBXTeamLogEnforceLinkPasswordPolicyOptional + } + + @objc + public var asRequired: DBXTeamLogEnforceLinkPasswordPolicyRequired? { + return self as? DBXTeamLogEnforceLinkPasswordPolicyRequired + } + + @objc + public var asOther: DBXTeamLogEnforceLinkPasswordPolicyOther? { + return self as? DBXTeamLogEnforceLinkPasswordPolicyOther + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEnforceLinkPasswordPolicyOptional: DBXTeamLogEnforceLinkPasswordPolicy { + @objc + public init() { + let swift = TeamLog.EnforceLinkPasswordPolicy.optional + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEnforceLinkPasswordPolicyRequired: DBXTeamLogEnforceLinkPasswordPolicy { + @objc + public init() { + let swift = TeamLog.EnforceLinkPasswordPolicy.required + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEnforceLinkPasswordPolicyOther: DBXTeamLogEnforceLinkPasswordPolicy { + @objc + public init() { + let swift = TeamLog.EnforceLinkPasswordPolicy.other + super.init(swift: swift) + } +} + +/// Changed who can update a setting. +@objc +public class DBXTeamLogEnterpriseSettingsLockingDetails: NSObject { + /// The secondary team name. + @objc + public var teamName: String { swift.teamName } + /// Settings page name. + @objc + public var settingsPageName: String { swift.settingsPageName } + /// Previous locked settings page state. + @objc + public var previousSettingsPageLockingState: String { swift.previousSettingsPageLockingState } + /// New locked settings page state. + @objc + public var newSettingsPageLockingState: String { swift.newSettingsPageLockingState } + + @objc + public init(teamName: String, settingsPageName: String, previousSettingsPageLockingState: String, newSettingsPageLockingState: String) { + self.swift = TeamLog.EnterpriseSettingsLockingDetails(teamName: teamName, settingsPageName: settingsPageName, previousSettingsPageLockingState: previousSettingsPageLockingState, newSettingsPageLockingState: newSettingsPageLockingState) + } + + let swift: TeamLog.EnterpriseSettingsLockingDetails + + public init(swift: TeamLog.EnterpriseSettingsLockingDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible EnterpriseSettingsLockingType struct +@objc +public class DBXTeamLogEnterpriseSettingsLockingType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.EnterpriseSettingsLockingType(description_: description_) + } + + let swift: TeamLog.EnterpriseSettingsLockingType + + public init(swift: TeamLog.EnterpriseSettingsLockingType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Category of events in event audit log. +@objc +public class DBXTeamLogEventCategory: NSObject { + let swift: TeamLog.EventCategory + + public init(swift: TeamLog.EventCategory) { + self.swift = swift + } + + public static func factory(swift: TeamLog.EventCategory) -> DBXTeamLogEventCategory { + switch swift { + case .adminAlerting: + return DBXTeamLogEventCategoryAdminAlerting() + case .apps: + return DBXTeamLogEventCategoryApps() + case .comments: + return DBXTeamLogEventCategoryComments() + case .dash: + return DBXTeamLogEventCategoryDash() + case .dataGovernance: + return DBXTeamLogEventCategoryDataGovernance() + case .devices: + return DBXTeamLogEventCategoryDevices() + case .domains: + return DBXTeamLogEventCategoryDomains() + case .encryption: + return DBXTeamLogEventCategoryEncryption() + case .fileOperations: + return DBXTeamLogEventCategoryFileOperations() + case .fileRequests: + return DBXTeamLogEventCategoryFileRequests() + case .groups: + return DBXTeamLogEventCategoryGroups() + case .logins: + return DBXTeamLogEventCategoryLogins() + case .members: + return DBXTeamLogEventCategoryMembers() + case .paper: + return DBXTeamLogEventCategoryPaper() + case .passwords: + return DBXTeamLogEventCategoryPasswords() + case .protect: + return DBXTeamLogEventCategoryProtect() + case .reports: + return DBXTeamLogEventCategoryReports() + case .sharing: + return DBXTeamLogEventCategorySharing() + case .showcase: + return DBXTeamLogEventCategoryShowcase() + case .signatures: + return DBXTeamLogEventCategorySignatures() + case .sso: + return DBXTeamLogEventCategorySso() + case .teamFolders: + return DBXTeamLogEventCategoryTeamFolders() + case .teamPolicies: + return DBXTeamLogEventCategoryTeamPolicies() + case .teamProfile: + return DBXTeamLogEventCategoryTeamProfile() + case .tfa: + return DBXTeamLogEventCategoryTfa() + case .trustedTeams: + return DBXTeamLogEventCategoryTrustedTeams() + case .other: + return DBXTeamLogEventCategoryOther() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asAdminAlerting: DBXTeamLogEventCategoryAdminAlerting? { + return self as? DBXTeamLogEventCategoryAdminAlerting + } + + @objc + public var asApps: DBXTeamLogEventCategoryApps? { + return self as? DBXTeamLogEventCategoryApps + } + + @objc + public var asComments: DBXTeamLogEventCategoryComments? { + return self as? DBXTeamLogEventCategoryComments + } + + @objc + public var asDash: DBXTeamLogEventCategoryDash? { + return self as? DBXTeamLogEventCategoryDash + } + + @objc + public var asDataGovernance: DBXTeamLogEventCategoryDataGovernance? { + return self as? DBXTeamLogEventCategoryDataGovernance + } + + @objc + public var asDevices: DBXTeamLogEventCategoryDevices? { + return self as? DBXTeamLogEventCategoryDevices + } + + @objc + public var asDomains: DBXTeamLogEventCategoryDomains? { + return self as? DBXTeamLogEventCategoryDomains + } + + @objc + public var asEncryption: DBXTeamLogEventCategoryEncryption? { + return self as? DBXTeamLogEventCategoryEncryption + } + + @objc + public var asFileOperations: DBXTeamLogEventCategoryFileOperations? { + return self as? DBXTeamLogEventCategoryFileOperations + } + + @objc + public var asFileRequests: DBXTeamLogEventCategoryFileRequests? { + return self as? DBXTeamLogEventCategoryFileRequests + } + + @objc + public var asGroups: DBXTeamLogEventCategoryGroups? { + return self as? DBXTeamLogEventCategoryGroups + } + + @objc + public var asLogins: DBXTeamLogEventCategoryLogins? { + return self as? DBXTeamLogEventCategoryLogins + } + + @objc + public var asMembers: DBXTeamLogEventCategoryMembers? { + return self as? DBXTeamLogEventCategoryMembers + } + + @objc + public var asPaper: DBXTeamLogEventCategoryPaper? { + return self as? DBXTeamLogEventCategoryPaper + } + + @objc + public var asPasswords: DBXTeamLogEventCategoryPasswords? { + return self as? DBXTeamLogEventCategoryPasswords + } + + @objc + public var asProtect: DBXTeamLogEventCategoryProtect? { + return self as? DBXTeamLogEventCategoryProtect + } + + @objc + public var asReports: DBXTeamLogEventCategoryReports? { + return self as? DBXTeamLogEventCategoryReports + } + + @objc + public var asSharing: DBXTeamLogEventCategorySharing? { + return self as? DBXTeamLogEventCategorySharing + } + + @objc + public var asShowcase: DBXTeamLogEventCategoryShowcase? { + return self as? DBXTeamLogEventCategoryShowcase + } + + @objc + public var asSignatures: DBXTeamLogEventCategorySignatures? { + return self as? DBXTeamLogEventCategorySignatures + } + + @objc + public var asSso: DBXTeamLogEventCategorySso? { + return self as? DBXTeamLogEventCategorySso + } + + @objc + public var asTeamFolders: DBXTeamLogEventCategoryTeamFolders? { + return self as? DBXTeamLogEventCategoryTeamFolders + } + + @objc + public var asTeamPolicies: DBXTeamLogEventCategoryTeamPolicies? { + return self as? DBXTeamLogEventCategoryTeamPolicies + } + + @objc + public var asTeamProfile: DBXTeamLogEventCategoryTeamProfile? { + return self as? DBXTeamLogEventCategoryTeamProfile + } + + @objc + public var asTfa: DBXTeamLogEventCategoryTfa? { + return self as? DBXTeamLogEventCategoryTfa + } + + @objc + public var asTrustedTeams: DBXTeamLogEventCategoryTrustedTeams? { + return self as? DBXTeamLogEventCategoryTrustedTeams + } + + @objc + public var asOther: DBXTeamLogEventCategoryOther? { + return self as? DBXTeamLogEventCategoryOther + } +} + +/// Events that involve team related alerts. +@objc +public class DBXTeamLogEventCategoryAdminAlerting: DBXTeamLogEventCategory { + @objc + public init() { + let swift = TeamLog.EventCategory.adminAlerting + super.init(swift: swift) + } +} + +/// Events that apply to management of linked apps. +@objc +public class DBXTeamLogEventCategoryApps: DBXTeamLogEventCategory { + @objc + public init() { + let swift = TeamLog.EventCategory.apps + super.init(swift: swift) + } +} + +/// Events that have to do with comments on files and Paper documents. +@objc +public class DBXTeamLogEventCategoryComments: DBXTeamLogEventCategory { + @objc + public init() { + let swift = TeamLog.EventCategory.comments + super.init(swift: swift) + } +} + +/// Events that apply to Dropbox Dash +@objc +public class DBXTeamLogEventCategoryDash: DBXTeamLogEventCategory { + @objc + public init() { + let swift = TeamLog.EventCategory.dash + super.init(swift: swift) + } +} + +/// Events that involve data governance actions +@objc +public class DBXTeamLogEventCategoryDataGovernance: DBXTeamLogEventCategory { + @objc + public init() { + let swift = TeamLog.EventCategory.dataGovernance + super.init(swift: swift) + } +} + +/// Events that apply to linked devices on mobile, desktop and Web platforms. +@objc +public class DBXTeamLogEventCategoryDevices: DBXTeamLogEventCategory { + @objc + public init() { + let swift = TeamLog.EventCategory.devices + super.init(swift: swift) + } +} + +/// Events that involve domain management feature: domain verification, invite enforcement and account capture. +@objc +public class DBXTeamLogEventCategoryDomains: DBXTeamLogEventCategory { + @objc + public init() { + let swift = TeamLog.EventCategory.domains + super.init(swift: swift) + } +} + +/// Events that involve encryption. +@objc +public class DBXTeamLogEventCategoryEncryption: DBXTeamLogEventCategory { + @objc + public init() { + let swift = TeamLog.EventCategory.encryption + super.init(swift: swift) + } +} + +/// Events that have to do with filesystem operations on files and folders: copy, move, delete, etc. +@objc +public class DBXTeamLogEventCategoryFileOperations: DBXTeamLogEventCategory { + @objc + public init() { + let swift = TeamLog.EventCategory.fileOperations + super.init(swift: swift) + } +} + +/// Events that apply to the file requests feature. +@objc +public class DBXTeamLogEventCategoryFileRequests: DBXTeamLogEventCategory { + @objc + public init() { + let swift = TeamLog.EventCategory.fileRequests + super.init(swift: swift) + } +} + +/// Events that involve group management. +@objc +public class DBXTeamLogEventCategoryGroups: DBXTeamLogEventCategory { + @objc + public init() { + let swift = TeamLog.EventCategory.groups + super.init(swift: swift) + } +} + +/// Events that involve users signing in to or out of Dropbox. +@objc +public class DBXTeamLogEventCategoryLogins: DBXTeamLogEventCategory { + @objc + public init() { + let swift = TeamLog.EventCategory.logins + super.init(swift: swift) + } +} + +/// Events that involve team member management. +@objc +public class DBXTeamLogEventCategoryMembers: DBXTeamLogEventCategory { + @objc + public init() { + let swift = TeamLog.EventCategory.members + super.init(swift: swift) + } +} + +/// Events that apply to Dropbox Paper. +@objc +public class DBXTeamLogEventCategoryPaper: DBXTeamLogEventCategory { + @objc + public init() { + let swift = TeamLog.EventCategory.paper + super.init(swift: swift) + } +} + +/// Events that involve using, changing or resetting passwords. +@objc +public class DBXTeamLogEventCategoryPasswords: DBXTeamLogEventCategory { + @objc + public init() { + let swift = TeamLog.EventCategory.passwords + super.init(swift: swift) + } +} + +/// Events that apply to Dropbox Protect +@objc +public class DBXTeamLogEventCategoryProtect: DBXTeamLogEventCategory { + @objc + public init() { + let swift = TeamLog.EventCategory.protect + super.init(swift: swift) + } +} + +/// Events that concern generation of admin reports, including team activity and device usage. +@objc +public class DBXTeamLogEventCategoryReports: DBXTeamLogEventCategory { + @objc + public init() { + let swift = TeamLog.EventCategory.reports + super.init(swift: swift) + } +} + +/// Events that apply to all types of sharing and collaboration. +@objc +public class DBXTeamLogEventCategorySharing: DBXTeamLogEventCategory { + @objc + public init() { + let swift = TeamLog.EventCategory.sharing + super.init(swift: swift) + } +} + +/// Events that apply to Dropbox Showcase. +@objc +public class DBXTeamLogEventCategoryShowcase: DBXTeamLogEventCategory { + @objc + public init() { + let swift = TeamLog.EventCategory.showcase + super.init(swift: swift) + } +} + +/// Events that apply to Dropbox Sign +@objc +public class DBXTeamLogEventCategorySignatures: DBXTeamLogEventCategory { + @objc + public init() { + let swift = TeamLog.EventCategory.signatures + super.init(swift: swift) + } +} + +/// Events that involve using or configuring single sign-on as well as administrative policies concerning single + /// sign-on. +@objc +public class DBXTeamLogEventCategorySso: DBXTeamLogEventCategory { + @objc + public init() { + let swift = TeamLog.EventCategory.sso + super.init(swift: swift) + } +} + +/// Events that involve team folder management. +@objc +public class DBXTeamLogEventCategoryTeamFolders: DBXTeamLogEventCategory { + @objc + public init() { + let swift = TeamLog.EventCategory.teamFolders + super.init(swift: swift) + } +} + +/// Events that involve a change in team-wide policies. +@objc +public class DBXTeamLogEventCategoryTeamPolicies: DBXTeamLogEventCategory { + @objc + public init() { + let swift = TeamLog.EventCategory.teamPolicies + super.init(swift: swift) + } +} + +/// Events that involve a change in the team profile. +@objc +public class DBXTeamLogEventCategoryTeamProfile: DBXTeamLogEventCategory { + @objc + public init() { + let swift = TeamLog.EventCategory.teamProfile + super.init(swift: swift) + } +} + +/// Events that involve using or configuring two factor authentication as well as administrative policies + /// concerning two factor authentication. +@objc +public class DBXTeamLogEventCategoryTfa: DBXTeamLogEventCategory { + @objc + public init() { + let swift = TeamLog.EventCategory.tfa + super.init(swift: swift) + } +} + +/// Events that apply to cross-team trust establishment. +@objc +public class DBXTeamLogEventCategoryTrustedTeams: DBXTeamLogEventCategory { + @objc + public init() { + let swift = TeamLog.EventCategory.trustedTeams + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventCategoryOther: DBXTeamLogEventCategory { + @objc + public init() { + let swift = TeamLog.EventCategory.other + super.init(swift: swift) + } +} + +/// Additional fields depending on the event type. +@objc +public class DBXTeamLogEventDetails: NSObject { + let swift: TeamLog.EventDetails + + public init(swift: TeamLog.EventDetails) { + self.swift = swift + } + + public static func factory(swift: TeamLog.EventDetails) -> DBXTeamLogEventDetails { + switch swift { + case .adminAlertingAlertStateChangedDetails(let swiftArg): + let arg = DBXTeamLogAdminAlertingAlertStateChangedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsAdminAlertingAlertStateChangedDetails(arg) + case .adminAlertingChangedAlertConfigDetails(let swiftArg): + let arg = DBXTeamLogAdminAlertingChangedAlertConfigDetails(swift: swiftArg) + return DBXTeamLogEventDetailsAdminAlertingChangedAlertConfigDetails(arg) + case .adminAlertingTriggeredAlertDetails(let swiftArg): + let arg = DBXTeamLogAdminAlertingTriggeredAlertDetails(swift: swiftArg) + return DBXTeamLogEventDetailsAdminAlertingTriggeredAlertDetails(arg) + case .ransomwareRestoreProcessCompletedDetails(let swiftArg): + let arg = DBXTeamLogRansomwareRestoreProcessCompletedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsRansomwareRestoreProcessCompletedDetails(arg) + case .ransomwareRestoreProcessStartedDetails(let swiftArg): + let arg = DBXTeamLogRansomwareRestoreProcessStartedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsRansomwareRestoreProcessStartedDetails(arg) + case .appBlockedByPermissionsDetails(let swiftArg): + let arg = DBXTeamLogAppBlockedByPermissionsDetails(swift: swiftArg) + return DBXTeamLogEventDetailsAppBlockedByPermissionsDetails(arg) + case .appLinkTeamDetails(let swiftArg): + let arg = DBXTeamLogAppLinkTeamDetails(swift: swiftArg) + return DBXTeamLogEventDetailsAppLinkTeamDetails(arg) + case .appLinkUserDetails(let swiftArg): + let arg = DBXTeamLogAppLinkUserDetails(swift: swiftArg) + return DBXTeamLogEventDetailsAppLinkUserDetails(arg) + case .appUnlinkTeamDetails(let swiftArg): + let arg = DBXTeamLogAppUnlinkTeamDetails(swift: swiftArg) + return DBXTeamLogEventDetailsAppUnlinkTeamDetails(arg) + case .appUnlinkUserDetails(let swiftArg): + let arg = DBXTeamLogAppUnlinkUserDetails(swift: swiftArg) + return DBXTeamLogEventDetailsAppUnlinkUserDetails(arg) + case .integrationConnectedDetails(let swiftArg): + let arg = DBXTeamLogIntegrationConnectedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsIntegrationConnectedDetails(arg) + case .integrationDisconnectedDetails(let swiftArg): + let arg = DBXTeamLogIntegrationDisconnectedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsIntegrationDisconnectedDetails(arg) + case .fileAddCommentDetails(let swiftArg): + let arg = DBXTeamLogFileAddCommentDetails(swift: swiftArg) + return DBXTeamLogEventDetailsFileAddCommentDetails(arg) + case .fileChangeCommentSubscriptionDetails(let swiftArg): + let arg = DBXTeamLogFileChangeCommentSubscriptionDetails(swift: swiftArg) + return DBXTeamLogEventDetailsFileChangeCommentSubscriptionDetails(arg) + case .fileDeleteCommentDetails(let swiftArg): + let arg = DBXTeamLogFileDeleteCommentDetails(swift: swiftArg) + return DBXTeamLogEventDetailsFileDeleteCommentDetails(arg) + case .fileEditCommentDetails(let swiftArg): + let arg = DBXTeamLogFileEditCommentDetails(swift: swiftArg) + return DBXTeamLogEventDetailsFileEditCommentDetails(arg) + case .fileLikeCommentDetails(let swiftArg): + let arg = DBXTeamLogFileLikeCommentDetails(swift: swiftArg) + return DBXTeamLogEventDetailsFileLikeCommentDetails(arg) + case .fileResolveCommentDetails(let swiftArg): + let arg = DBXTeamLogFileResolveCommentDetails(swift: swiftArg) + return DBXTeamLogEventDetailsFileResolveCommentDetails(arg) + case .fileUnlikeCommentDetails(let swiftArg): + let arg = DBXTeamLogFileUnlikeCommentDetails(swift: swiftArg) + return DBXTeamLogEventDetailsFileUnlikeCommentDetails(arg) + case .fileUnresolveCommentDetails(let swiftArg): + let arg = DBXTeamLogFileUnresolveCommentDetails(swift: swiftArg) + return DBXTeamLogEventDetailsFileUnresolveCommentDetails(arg) + case .dashAddedCommentToStackDetails(let swiftArg): + let arg = DBXTeamLogDashAddedCommentToStackDetails(swift: swiftArg) + return DBXTeamLogEventDetailsDashAddedCommentToStackDetails(arg) + case .dashAddedConnectorDetails(let swiftArg): + let arg = DBXTeamLogDashAddedConnectorDetails(swift: swiftArg) + return DBXTeamLogEventDetailsDashAddedConnectorDetails(arg) + case .dashAddedLinkToStackDetails(let swiftArg): + let arg = DBXTeamLogDashAddedLinkToStackDetails(swift: swiftArg) + return DBXTeamLogEventDetailsDashAddedLinkToStackDetails(arg) + case .dashAddedTeamEmailDomainAllowlistDetails(let swiftArg): + let arg = DBXTeamLogDashAddedTeamEmailDomainAllowlistDetails(swift: swiftArg) + return DBXTeamLogEventDetailsDashAddedTeamEmailDomainAllowlistDetails(arg) + case .dashAdminAddedOrgWideConnectorDetails(let swiftArg): + let arg = DBXTeamLogDashAdminAddedOrgWideConnectorDetails(swift: swiftArg) + return DBXTeamLogEventDetailsDashAdminAddedOrgWideConnectorDetails(arg) + case .dashAdminDisabledConnectorDetails(let swiftArg): + let arg = DBXTeamLogDashAdminDisabledConnectorDetails(swift: swiftArg) + return DBXTeamLogEventDetailsDashAdminDisabledConnectorDetails(arg) + case .dashAdminEnabledConnectorDetails(let swiftArg): + let arg = DBXTeamLogDashAdminEnabledConnectorDetails(swift: swiftArg) + return DBXTeamLogEventDetailsDashAdminEnabledConnectorDetails(arg) + case .dashAdminRemovedOrgWideConnectorDetails(let swiftArg): + let arg = DBXTeamLogDashAdminRemovedOrgWideConnectorDetails(swift: swiftArg) + return DBXTeamLogEventDetailsDashAdminRemovedOrgWideConnectorDetails(arg) + case .dashArchivedStackDetails(let swiftArg): + let arg = DBXTeamLogDashArchivedStackDetails(swift: swiftArg) + return DBXTeamLogEventDetailsDashArchivedStackDetails(arg) + case .dashChangedAudienceOfSharedLinkToStackDetails(let swiftArg): + let arg = DBXTeamLogDashChangedAudienceOfSharedLinkToStackDetails(swift: swiftArg) + return DBXTeamLogEventDetailsDashChangedAudienceOfSharedLinkToStackDetails(arg) + case .dashClonedStackDetails(let swiftArg): + let arg = DBXTeamLogDashClonedStackDetails(swift: swiftArg) + return DBXTeamLogEventDetailsDashClonedStackDetails(arg) + case .dashConnectorToolsCallDetails(let swiftArg): + let arg = DBXTeamLogDashConnectorToolsCallDetails(swift: swiftArg) + return DBXTeamLogEventDetailsDashConnectorToolsCallDetails(arg) + case .dashCreatedStackDetails(let swiftArg): + let arg = DBXTeamLogDashCreatedStackDetails(swift: swiftArg) + return DBXTeamLogEventDetailsDashCreatedStackDetails(arg) + case .dashDeletedCommentFromStackDetails(let swiftArg): + let arg = DBXTeamLogDashDeletedCommentFromStackDetails(swift: swiftArg) + return DBXTeamLogEventDetailsDashDeletedCommentFromStackDetails(arg) + case .dashDeletedStackDetails(let swiftArg): + let arg = DBXTeamLogDashDeletedStackDetails(swift: swiftArg) + return DBXTeamLogEventDetailsDashDeletedStackDetails(arg) + case .dashEditedCommentInStackDetails(let swiftArg): + let arg = DBXTeamLogDashEditedCommentInStackDetails(swift: swiftArg) + return DBXTeamLogEventDetailsDashEditedCommentInStackDetails(arg) + case .dashExternalUserOpenedStackDetails(let swiftArg): + let arg = DBXTeamLogDashExternalUserOpenedStackDetails(swift: swiftArg) + return DBXTeamLogEventDetailsDashExternalUserOpenedStackDetails(arg) + case .dashFirstLaunchedDesktopDetails(let swiftArg): + let arg = DBXTeamLogDashFirstLaunchedDesktopDetails(swift: swiftArg) + return DBXTeamLogEventDetailsDashFirstLaunchedDesktopDetails(arg) + case .dashFirstLaunchedExtensionDetails(let swiftArg): + let arg = DBXTeamLogDashFirstLaunchedExtensionDetails(swift: swiftArg) + return DBXTeamLogEventDetailsDashFirstLaunchedExtensionDetails(arg) + case .dashFirstLaunchedWebStartPageDetails(let swiftArg): + let arg = DBXTeamLogDashFirstLaunchedWebStartPageDetails(swift: swiftArg) + return DBXTeamLogEventDetailsDashFirstLaunchedWebStartPageDetails(arg) + case .dashOpenedSharedLinkToStackDetails(let swiftArg): + let arg = DBXTeamLogDashOpenedSharedLinkToStackDetails(swift: swiftArg) + return DBXTeamLogEventDetailsDashOpenedSharedLinkToStackDetails(arg) + case .dashOpenedStackDetails(let swiftArg): + let arg = DBXTeamLogDashOpenedStackDetails(swift: swiftArg) + return DBXTeamLogEventDetailsDashOpenedStackDetails(arg) + case .dashPreviewOptOutStatusChangedDetails(let swiftArg): + let arg = DBXTeamLogDashPreviewOptOutStatusChangedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsDashPreviewOptOutStatusChangedDetails(arg) + case .dashRemovedConnectorDetails(let swiftArg): + let arg = DBXTeamLogDashRemovedConnectorDetails(swift: swiftArg) + return DBXTeamLogEventDetailsDashRemovedConnectorDetails(arg) + case .dashRemovedLinkFromStackDetails(let swiftArg): + let arg = DBXTeamLogDashRemovedLinkFromStackDetails(swift: swiftArg) + return DBXTeamLogEventDetailsDashRemovedLinkFromStackDetails(arg) + case .dashRemovedSharedLinkToStackDetails(let swiftArg): + let arg = DBXTeamLogDashRemovedSharedLinkToStackDetails(swift: swiftArg) + return DBXTeamLogEventDetailsDashRemovedSharedLinkToStackDetails(arg) + case .dashRemovedTeamEmailDomainAllowlistDetails(let swiftArg): + let arg = DBXTeamLogDashRemovedTeamEmailDomainAllowlistDetails(swift: swiftArg) + return DBXTeamLogEventDetailsDashRemovedTeamEmailDomainAllowlistDetails(arg) + case .dashRenamedStackDetails(let swiftArg): + let arg = DBXTeamLogDashRenamedStackDetails(swift: swiftArg) + return DBXTeamLogEventDetailsDashRenamedStackDetails(arg) + case .dashSharedLinkToStackDetails(let swiftArg): + let arg = DBXTeamLogDashSharedLinkToStackDetails(swift: swiftArg) + return DBXTeamLogEventDetailsDashSharedLinkToStackDetails(arg) + case .dashUnarchivedStackDetails(let swiftArg): + let arg = DBXTeamLogDashUnarchivedStackDetails(swift: swiftArg) + return DBXTeamLogEventDetailsDashUnarchivedStackDetails(arg) + case .dashViewedCompanyStackDetails(let swiftArg): + let arg = DBXTeamLogDashViewedCompanyStackDetails(swift: swiftArg) + return DBXTeamLogEventDetailsDashViewedCompanyStackDetails(arg) + case .dashViewedExternalAiActivityReportDetails(let swiftArg): + let arg = DBXTeamLogDashViewedExternalAiActivityReportDetails(swift: swiftArg) + return DBXTeamLogEventDetailsDashViewedExternalAiActivityReportDetails(arg) + case .governancePolicyAddFoldersDetails(let swiftArg): + let arg = DBXTeamLogGovernancePolicyAddFoldersDetails(swift: swiftArg) + return DBXTeamLogEventDetailsGovernancePolicyAddFoldersDetails(arg) + case .governancePolicyAddFolderFailedDetails(let swiftArg): + let arg = DBXTeamLogGovernancePolicyAddFolderFailedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsGovernancePolicyAddFolderFailedDetails(arg) + case .governancePolicyContentDisposedDetails(let swiftArg): + let arg = DBXTeamLogGovernancePolicyContentDisposedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsGovernancePolicyContentDisposedDetails(arg) + case .governancePolicyCreateDetails(let swiftArg): + let arg = DBXTeamLogGovernancePolicyCreateDetails(swift: swiftArg) + return DBXTeamLogEventDetailsGovernancePolicyCreateDetails(arg) + case .governancePolicyDeleteDetails(let swiftArg): + let arg = DBXTeamLogGovernancePolicyDeleteDetails(swift: swiftArg) + return DBXTeamLogEventDetailsGovernancePolicyDeleteDetails(arg) + case .governancePolicyEditDetailsDetails(let swiftArg): + let arg = DBXTeamLogGovernancePolicyEditDetailsDetails(swift: swiftArg) + return DBXTeamLogEventDetailsGovernancePolicyEditDetailsDetails(arg) + case .governancePolicyEditDurationDetails(let swiftArg): + let arg = DBXTeamLogGovernancePolicyEditDurationDetails(swift: swiftArg) + return DBXTeamLogEventDetailsGovernancePolicyEditDurationDetails(arg) + case .governancePolicyExportCreatedDetails(let swiftArg): + let arg = DBXTeamLogGovernancePolicyExportCreatedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsGovernancePolicyExportCreatedDetails(arg) + case .governancePolicyExportRemovedDetails(let swiftArg): + let arg = DBXTeamLogGovernancePolicyExportRemovedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsGovernancePolicyExportRemovedDetails(arg) + case .governancePolicyRemoveFoldersDetails(let swiftArg): + let arg = DBXTeamLogGovernancePolicyRemoveFoldersDetails(swift: swiftArg) + return DBXTeamLogEventDetailsGovernancePolicyRemoveFoldersDetails(arg) + case .governancePolicyReportCreatedDetails(let swiftArg): + let arg = DBXTeamLogGovernancePolicyReportCreatedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsGovernancePolicyReportCreatedDetails(arg) + case .governancePolicyZipPartDownloadedDetails(let swiftArg): + let arg = DBXTeamLogGovernancePolicyZipPartDownloadedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsGovernancePolicyZipPartDownloadedDetails(arg) + case .legalHoldsActivateAHoldDetails(let swiftArg): + let arg = DBXTeamLogLegalHoldsActivateAHoldDetails(swift: swiftArg) + return DBXTeamLogEventDetailsLegalHoldsActivateAHoldDetails(arg) + case .legalHoldsAddMembersDetails(let swiftArg): + let arg = DBXTeamLogLegalHoldsAddMembersDetails(swift: swiftArg) + return DBXTeamLogEventDetailsLegalHoldsAddMembersDetails(arg) + case .legalHoldsChangeHoldDetailsDetails(let swiftArg): + let arg = DBXTeamLogLegalHoldsChangeHoldDetailsDetails(swift: swiftArg) + return DBXTeamLogEventDetailsLegalHoldsChangeHoldDetailsDetails(arg) + case .legalHoldsChangeHoldNameDetails(let swiftArg): + let arg = DBXTeamLogLegalHoldsChangeHoldNameDetails(swift: swiftArg) + return DBXTeamLogEventDetailsLegalHoldsChangeHoldNameDetails(arg) + case .legalHoldsExportAHoldDetails(let swiftArg): + let arg = DBXTeamLogLegalHoldsExportAHoldDetails(swift: swiftArg) + return DBXTeamLogEventDetailsLegalHoldsExportAHoldDetails(arg) + case .legalHoldsExportCancelledDetails(let swiftArg): + let arg = DBXTeamLogLegalHoldsExportCancelledDetails(swift: swiftArg) + return DBXTeamLogEventDetailsLegalHoldsExportCancelledDetails(arg) + case .legalHoldsExportDownloadedDetails(let swiftArg): + let arg = DBXTeamLogLegalHoldsExportDownloadedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsLegalHoldsExportDownloadedDetails(arg) + case .legalHoldsExportRemovedDetails(let swiftArg): + let arg = DBXTeamLogLegalHoldsExportRemovedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsLegalHoldsExportRemovedDetails(arg) + case .legalHoldsReleaseAHoldDetails(let swiftArg): + let arg = DBXTeamLogLegalHoldsReleaseAHoldDetails(swift: swiftArg) + return DBXTeamLogEventDetailsLegalHoldsReleaseAHoldDetails(arg) + case .legalHoldsRemoveMembersDetails(let swiftArg): + let arg = DBXTeamLogLegalHoldsRemoveMembersDetails(swift: swiftArg) + return DBXTeamLogEventDetailsLegalHoldsRemoveMembersDetails(arg) + case .legalHoldsReportAHoldDetails(let swiftArg): + let arg = DBXTeamLogLegalHoldsReportAHoldDetails(swift: swiftArg) + return DBXTeamLogEventDetailsLegalHoldsReportAHoldDetails(arg) + case .deviceChangeIpDesktopDetails(let swiftArg): + let arg = DBXTeamLogDeviceChangeIpDesktopDetails(swift: swiftArg) + return DBXTeamLogEventDetailsDeviceChangeIpDesktopDetails(arg) + case .deviceChangeIpMobileDetails(let swiftArg): + let arg = DBXTeamLogDeviceChangeIpMobileDetails(swift: swiftArg) + return DBXTeamLogEventDetailsDeviceChangeIpMobileDetails(arg) + case .deviceChangeIpWebDetails(let swiftArg): + let arg = DBXTeamLogDeviceChangeIpWebDetails(swift: swiftArg) + return DBXTeamLogEventDetailsDeviceChangeIpWebDetails(arg) + case .deviceDeleteOnUnlinkFailDetails(let swiftArg): + let arg = DBXTeamLogDeviceDeleteOnUnlinkFailDetails(swift: swiftArg) + return DBXTeamLogEventDetailsDeviceDeleteOnUnlinkFailDetails(arg) + case .deviceDeleteOnUnlinkSuccessDetails(let swiftArg): + let arg = DBXTeamLogDeviceDeleteOnUnlinkSuccessDetails(swift: swiftArg) + return DBXTeamLogEventDetailsDeviceDeleteOnUnlinkSuccessDetails(arg) + case .deviceLinkFailDetails(let swiftArg): + let arg = DBXTeamLogDeviceLinkFailDetails(swift: swiftArg) + return DBXTeamLogEventDetailsDeviceLinkFailDetails(arg) + case .deviceLinkSuccessDetails(let swiftArg): + let arg = DBXTeamLogDeviceLinkSuccessDetails(swift: swiftArg) + return DBXTeamLogEventDetailsDeviceLinkSuccessDetails(arg) + case .deviceManagementDisabledDetails(let swiftArg): + let arg = DBXTeamLogDeviceManagementDisabledDetails(swift: swiftArg) + return DBXTeamLogEventDetailsDeviceManagementDisabledDetails(arg) + case .deviceManagementEnabledDetails(let swiftArg): + let arg = DBXTeamLogDeviceManagementEnabledDetails(swift: swiftArg) + return DBXTeamLogEventDetailsDeviceManagementEnabledDetails(arg) + case .deviceSyncBackupStatusChangedDetails(let swiftArg): + let arg = DBXTeamLogDeviceSyncBackupStatusChangedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsDeviceSyncBackupStatusChangedDetails(arg) + case .deviceUnlinkDetails(let swiftArg): + let arg = DBXTeamLogDeviceUnlinkDetails(swift: swiftArg) + return DBXTeamLogEventDetailsDeviceUnlinkDetails(arg) + case .dropboxPasswordsExportedDetails(let swiftArg): + let arg = DBXTeamLogDropboxPasswordsExportedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsDropboxPasswordsExportedDetails(arg) + case .dropboxPasswordsNewDeviceEnrolledDetails(let swiftArg): + let arg = DBXTeamLogDropboxPasswordsNewDeviceEnrolledDetails(swift: swiftArg) + return DBXTeamLogEventDetailsDropboxPasswordsNewDeviceEnrolledDetails(arg) + case .emmRefreshAuthTokenDetails(let swiftArg): + let arg = DBXTeamLogEmmRefreshAuthTokenDetails(swift: swiftArg) + return DBXTeamLogEventDetailsEmmRefreshAuthTokenDetails(arg) + case .externalDriveBackupEligibilityStatusCheckedDetails(let swiftArg): + let arg = DBXTeamLogExternalDriveBackupEligibilityStatusCheckedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsExternalDriveBackupEligibilityStatusCheckedDetails(arg) + case .externalDriveBackupStatusChangedDetails(let swiftArg): + let arg = DBXTeamLogExternalDriveBackupStatusChangedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsExternalDriveBackupStatusChangedDetails(arg) + case .accountCaptureChangeAvailabilityDetails(let swiftArg): + let arg = DBXTeamLogAccountCaptureChangeAvailabilityDetails(swift: swiftArg) + return DBXTeamLogEventDetailsAccountCaptureChangeAvailabilityDetails(arg) + case .accountCaptureMigrateAccountDetails(let swiftArg): + let arg = DBXTeamLogAccountCaptureMigrateAccountDetails(swift: swiftArg) + return DBXTeamLogEventDetailsAccountCaptureMigrateAccountDetails(arg) + case .accountCaptureNotificationEmailsSentDetails(let swiftArg): + let arg = DBXTeamLogAccountCaptureNotificationEmailsSentDetails(swift: swiftArg) + return DBXTeamLogEventDetailsAccountCaptureNotificationEmailsSentDetails(arg) + case .accountCaptureRelinquishAccountDetails(let swiftArg): + let arg = DBXTeamLogAccountCaptureRelinquishAccountDetails(swift: swiftArg) + return DBXTeamLogEventDetailsAccountCaptureRelinquishAccountDetails(arg) + case .disabledDomainInvitesDetails(let swiftArg): + let arg = DBXTeamLogDisabledDomainInvitesDetails(swift: swiftArg) + return DBXTeamLogEventDetailsDisabledDomainInvitesDetails(arg) + case .domainInvitesApproveRequestToJoinTeamDetails(let swiftArg): + let arg = DBXTeamLogDomainInvitesApproveRequestToJoinTeamDetails(swift: swiftArg) + return DBXTeamLogEventDetailsDomainInvitesApproveRequestToJoinTeamDetails(arg) + case .domainInvitesDeclineRequestToJoinTeamDetails(let swiftArg): + let arg = DBXTeamLogDomainInvitesDeclineRequestToJoinTeamDetails(swift: swiftArg) + return DBXTeamLogEventDetailsDomainInvitesDeclineRequestToJoinTeamDetails(arg) + case .domainInvitesEmailExistingUsersDetails(let swiftArg): + let arg = DBXTeamLogDomainInvitesEmailExistingUsersDetails(swift: swiftArg) + return DBXTeamLogEventDetailsDomainInvitesEmailExistingUsersDetails(arg) + case .domainInvitesRequestToJoinTeamDetails(let swiftArg): + let arg = DBXTeamLogDomainInvitesRequestToJoinTeamDetails(swift: swiftArg) + return DBXTeamLogEventDetailsDomainInvitesRequestToJoinTeamDetails(arg) + case .domainInvitesSetInviteNewUserPrefToNoDetails(let swiftArg): + let arg = DBXTeamLogDomainInvitesSetInviteNewUserPrefToNoDetails(swift: swiftArg) + return DBXTeamLogEventDetailsDomainInvitesSetInviteNewUserPrefToNoDetails(arg) + case .domainInvitesSetInviteNewUserPrefToYesDetails(let swiftArg): + let arg = DBXTeamLogDomainInvitesSetInviteNewUserPrefToYesDetails(swift: swiftArg) + return DBXTeamLogEventDetailsDomainInvitesSetInviteNewUserPrefToYesDetails(arg) + case .domainVerificationAddDomainFailDetails(let swiftArg): + let arg = DBXTeamLogDomainVerificationAddDomainFailDetails(swift: swiftArg) + return DBXTeamLogEventDetailsDomainVerificationAddDomainFailDetails(arg) + case .domainVerificationAddDomainSuccessDetails(let swiftArg): + let arg = DBXTeamLogDomainVerificationAddDomainSuccessDetails(swift: swiftArg) + return DBXTeamLogEventDetailsDomainVerificationAddDomainSuccessDetails(arg) + case .domainVerificationRemoveDomainDetails(let swiftArg): + let arg = DBXTeamLogDomainVerificationRemoveDomainDetails(swift: swiftArg) + return DBXTeamLogEventDetailsDomainVerificationRemoveDomainDetails(arg) + case .enabledDomainInvitesDetails(let swiftArg): + let arg = DBXTeamLogEnabledDomainInvitesDetails(swift: swiftArg) + return DBXTeamLogEventDetailsEnabledDomainInvitesDetails(arg) + case .encryptedFolderCancelTeamKeyRotationDetails(let swiftArg): + let arg = DBXTeamLogEncryptedFolderCancelTeamKeyRotationDetails(swift: swiftArg) + return DBXTeamLogEventDetailsEncryptedFolderCancelTeamKeyRotationDetails(arg) + case .encryptedFolderEnrollBackupKeyDetails(let swiftArg): + let arg = DBXTeamLogEncryptedFolderEnrollBackupKeyDetails(swift: swiftArg) + return DBXTeamLogEventDetailsEncryptedFolderEnrollBackupKeyDetails(arg) + case .encryptedFolderEnrollClientDetails(let swiftArg): + let arg = DBXTeamLogEncryptedFolderEnrollClientDetails(swift: swiftArg) + return DBXTeamLogEventDetailsEncryptedFolderEnrollClientDetails(arg) + case .encryptedFolderEnrollTeamDetails(let swiftArg): + let arg = DBXTeamLogEncryptedFolderEnrollTeamDetails(swift: swiftArg) + return DBXTeamLogEventDetailsEncryptedFolderEnrollTeamDetails(arg) + case .encryptedFolderFinishTeamUnenrollmentDetails(let swiftArg): + let arg = DBXTeamLogEncryptedFolderFinishTeamUnenrollmentDetails(swift: swiftArg) + return DBXTeamLogEventDetailsEncryptedFolderFinishTeamUnenrollmentDetails(arg) + case .encryptedFolderInitTeamKeyRotationDetails(let swiftArg): + let arg = DBXTeamLogEncryptedFolderInitTeamKeyRotationDetails(swift: swiftArg) + return DBXTeamLogEventDetailsEncryptedFolderInitTeamKeyRotationDetails(arg) + case .encryptedFolderInitTeamUnenrollmentDetails(let swiftArg): + let arg = DBXTeamLogEncryptedFolderInitTeamUnenrollmentDetails(swift: swiftArg) + return DBXTeamLogEventDetailsEncryptedFolderInitTeamUnenrollmentDetails(arg) + case .encryptedFolderRemoveBackupKeyDetails(let swiftArg): + let arg = DBXTeamLogEncryptedFolderRemoveBackupKeyDetails(swift: swiftArg) + return DBXTeamLogEventDetailsEncryptedFolderRemoveBackupKeyDetails(arg) + case .encryptedFolderRotateTeamKeyDetails(let swiftArg): + let arg = DBXTeamLogEncryptedFolderRotateTeamKeyDetails(swift: swiftArg) + return DBXTeamLogEventDetailsEncryptedFolderRotateTeamKeyDetails(arg) + case .encryptedFolderUnenrollClientDetails(let swiftArg): + let arg = DBXTeamLogEncryptedFolderUnenrollClientDetails(swift: swiftArg) + return DBXTeamLogEventDetailsEncryptedFolderUnenrollClientDetails(arg) + case .teamEncryptionKeyActivateKeyDetails(let swiftArg): + let arg = DBXTeamLogTeamEncryptionKeyActivateKeyDetails(swift: swiftArg) + return DBXTeamLogEventDetailsTeamEncryptionKeyActivateKeyDetails(arg) + case .teamEncryptionKeyCancelKeyDeletionDetails(let swiftArg): + let arg = DBXTeamLogTeamEncryptionKeyCancelKeyDeletionDetails(swift: swiftArg) + return DBXTeamLogEventDetailsTeamEncryptionKeyCancelKeyDeletionDetails(arg) + case .teamEncryptionKeyCreateKeyDetails(let swiftArg): + let arg = DBXTeamLogTeamEncryptionKeyCreateKeyDetails(swift: swiftArg) + return DBXTeamLogEventDetailsTeamEncryptionKeyCreateKeyDetails(arg) + case .teamEncryptionKeyDeactivateKeyDetails(let swiftArg): + let arg = DBXTeamLogTeamEncryptionKeyDeactivateKeyDetails(swift: swiftArg) + return DBXTeamLogEventDetailsTeamEncryptionKeyDeactivateKeyDetails(arg) + case .teamEncryptionKeyDeleteKeyDetails(let swiftArg): + let arg = DBXTeamLogTeamEncryptionKeyDeleteKeyDetails(swift: swiftArg) + return DBXTeamLogEventDetailsTeamEncryptionKeyDeleteKeyDetails(arg) + case .teamEncryptionKeyDisableKeyDetails(let swiftArg): + let arg = DBXTeamLogTeamEncryptionKeyDisableKeyDetails(swift: swiftArg) + return DBXTeamLogEventDetailsTeamEncryptionKeyDisableKeyDetails(arg) + case .teamEncryptionKeyEnableKeyDetails(let swiftArg): + let arg = DBXTeamLogTeamEncryptionKeyEnableKeyDetails(swift: swiftArg) + return DBXTeamLogEventDetailsTeamEncryptionKeyEnableKeyDetails(arg) + case .teamEncryptionKeyRotateKeyDetails(let swiftArg): + let arg = DBXTeamLogTeamEncryptionKeyRotateKeyDetails(swift: swiftArg) + return DBXTeamLogEventDetailsTeamEncryptionKeyRotateKeyDetails(arg) + case .teamEncryptionKeyScheduleKeyDeletionDetails(let swiftArg): + let arg = DBXTeamLogTeamEncryptionKeyScheduleKeyDeletionDetails(swift: swiftArg) + return DBXTeamLogEventDetailsTeamEncryptionKeyScheduleKeyDeletionDetails(arg) + case .applyNamingConventionDetails(let swiftArg): + let arg = DBXTeamLogApplyNamingConventionDetails(swift: swiftArg) + return DBXTeamLogEventDetailsApplyNamingConventionDetails(arg) + case .createFolderDetails(let swiftArg): + let arg = DBXTeamLogCreateFolderDetails(swift: swiftArg) + return DBXTeamLogEventDetailsCreateFolderDetails(arg) + case .fileAddDetails(let swiftArg): + let arg = DBXTeamLogFileAddDetails(swift: swiftArg) + return DBXTeamLogEventDetailsFileAddDetails(arg) + case .fileAddFromAutomationDetails(let swiftArg): + let arg = DBXTeamLogFileAddFromAutomationDetails(swift: swiftArg) + return DBXTeamLogEventDetailsFileAddFromAutomationDetails(arg) + case .fileCopyDetails(let swiftArg): + let arg = DBXTeamLogFileCopyDetails(swift: swiftArg) + return DBXTeamLogEventDetailsFileCopyDetails(arg) + case .fileDeleteDetails(let swiftArg): + let arg = DBXTeamLogFileDeleteDetails(swift: swiftArg) + return DBXTeamLogEventDetailsFileDeleteDetails(arg) + case .fileDownloadDetails(let swiftArg): + let arg = DBXTeamLogFileDownloadDetails(swift: swiftArg) + return DBXTeamLogEventDetailsFileDownloadDetails(arg) + case .fileEditDetails(let swiftArg): + let arg = DBXTeamLogFileEditDetails(swift: swiftArg) + return DBXTeamLogEventDetailsFileEditDetails(arg) + case .fileGetCopyReferenceDetails(let swiftArg): + let arg = DBXTeamLogFileGetCopyReferenceDetails(swift: swiftArg) + return DBXTeamLogEventDetailsFileGetCopyReferenceDetails(arg) + case .fileLockingLockStatusChangedDetails(let swiftArg): + let arg = DBXTeamLogFileLockingLockStatusChangedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsFileLockingLockStatusChangedDetails(arg) + case .fileMoveDetails(let swiftArg): + let arg = DBXTeamLogFileMoveDetails(swift: swiftArg) + return DBXTeamLogEventDetailsFileMoveDetails(arg) + case .filePermanentlyDeleteDetails(let swiftArg): + let arg = DBXTeamLogFilePermanentlyDeleteDetails(swift: swiftArg) + return DBXTeamLogEventDetailsFilePermanentlyDeleteDetails(arg) + case .filePreviewDetails(let swiftArg): + let arg = DBXTeamLogFilePreviewDetails(swift: swiftArg) + return DBXTeamLogEventDetailsFilePreviewDetails(arg) + case .fileRenameDetails(let swiftArg): + let arg = DBXTeamLogFileRenameDetails(swift: swiftArg) + return DBXTeamLogEventDetailsFileRenameDetails(arg) + case .fileRestoreDetails(let swiftArg): + let arg = DBXTeamLogFileRestoreDetails(swift: swiftArg) + return DBXTeamLogEventDetailsFileRestoreDetails(arg) + case .fileRevertDetails(let swiftArg): + let arg = DBXTeamLogFileRevertDetails(swift: swiftArg) + return DBXTeamLogEventDetailsFileRevertDetails(arg) + case .fileRollbackChangesDetails(let swiftArg): + let arg = DBXTeamLogFileRollbackChangesDetails(swift: swiftArg) + return DBXTeamLogEventDetailsFileRollbackChangesDetails(arg) + case .fileSaveCopyReferenceDetails(let swiftArg): + let arg = DBXTeamLogFileSaveCopyReferenceDetails(swift: swiftArg) + return DBXTeamLogEventDetailsFileSaveCopyReferenceDetails(arg) + case .folderOverviewDescriptionChangedDetails(let swiftArg): + let arg = DBXTeamLogFolderOverviewDescriptionChangedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsFolderOverviewDescriptionChangedDetails(arg) + case .folderOverviewItemPinnedDetails(let swiftArg): + let arg = DBXTeamLogFolderOverviewItemPinnedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsFolderOverviewItemPinnedDetails(arg) + case .folderOverviewItemUnpinnedDetails(let swiftArg): + let arg = DBXTeamLogFolderOverviewItemUnpinnedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsFolderOverviewItemUnpinnedDetails(arg) + case .mediaHubFileDownloadedDetails(let swiftArg): + let arg = DBXTeamLogMediaHubFileDownloadedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsMediaHubFileDownloadedDetails(arg) + case .objectLabelAddedDetails(let swiftArg): + let arg = DBXTeamLogObjectLabelAddedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsObjectLabelAddedDetails(arg) + case .objectLabelRemovedDetails(let swiftArg): + let arg = DBXTeamLogObjectLabelRemovedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsObjectLabelRemovedDetails(arg) + case .objectLabelUpdatedValueDetails(let swiftArg): + let arg = DBXTeamLogObjectLabelUpdatedValueDetails(swift: swiftArg) + return DBXTeamLogEventDetailsObjectLabelUpdatedValueDetails(arg) + case .organizeFolderWithTidyDetails(let swiftArg): + let arg = DBXTeamLogOrganizeFolderWithTidyDetails(swift: swiftArg) + return DBXTeamLogEventDetailsOrganizeFolderWithTidyDetails(arg) + case .replayFileDeleteDetails(let swiftArg): + let arg = DBXTeamLogReplayFileDeleteDetails(swift: swiftArg) + return DBXTeamLogEventDetailsReplayFileDeleteDetails(arg) + case .replayFileDownloadedDetails(let swiftArg): + let arg = DBXTeamLogReplayFileDownloadedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsReplayFileDownloadedDetails(arg) + case .replayTeamProjectCreatedDetails(let swiftArg): + let arg = DBXTeamLogReplayTeamProjectCreatedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsReplayTeamProjectCreatedDetails(arg) + case .rewindFolderDetails(let swiftArg): + let arg = DBXTeamLogRewindFolderDetails(swift: swiftArg) + return DBXTeamLogEventDetailsRewindFolderDetails(arg) + case .undoNamingConventionDetails(let swiftArg): + let arg = DBXTeamLogUndoNamingConventionDetails(swift: swiftArg) + return DBXTeamLogEventDetailsUndoNamingConventionDetails(arg) + case .undoOrganizeFolderWithTidyDetails(let swiftArg): + let arg = DBXTeamLogUndoOrganizeFolderWithTidyDetails(swift: swiftArg) + return DBXTeamLogEventDetailsUndoOrganizeFolderWithTidyDetails(arg) + case .userTagsAddedDetails(let swiftArg): + let arg = DBXTeamLogUserTagsAddedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsUserTagsAddedDetails(arg) + case .userTagsRemovedDetails(let swiftArg): + let arg = DBXTeamLogUserTagsRemovedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsUserTagsRemovedDetails(arg) + case .emailIngestReceiveFileDetails(let swiftArg): + let arg = DBXTeamLogEmailIngestReceiveFileDetails(swift: swiftArg) + return DBXTeamLogEventDetailsEmailIngestReceiveFileDetails(arg) + case .fileRequestAutoCloseDetails(let swiftArg): + let arg = DBXTeamLogFileRequestAutoCloseDetails(swift: swiftArg) + return DBXTeamLogEventDetailsFileRequestAutoCloseDetails(arg) + case .fileRequestChangeDetails(let swiftArg): + let arg = DBXTeamLogFileRequestChangeDetails(swift: swiftArg) + return DBXTeamLogEventDetailsFileRequestChangeDetails(arg) + case .fileRequestCloseDetails(let swiftArg): + let arg = DBXTeamLogFileRequestCloseDetails(swift: swiftArg) + return DBXTeamLogEventDetailsFileRequestCloseDetails(arg) + case .fileRequestCreateDetails(let swiftArg): + let arg = DBXTeamLogFileRequestCreateDetails(swift: swiftArg) + return DBXTeamLogEventDetailsFileRequestCreateDetails(arg) + case .fileRequestDeleteDetails(let swiftArg): + let arg = DBXTeamLogFileRequestDeleteDetails(swift: swiftArg) + return DBXTeamLogEventDetailsFileRequestDeleteDetails(arg) + case .fileRequestReceiveFileDetails(let swiftArg): + let arg = DBXTeamLogFileRequestReceiveFileDetails(swift: swiftArg) + return DBXTeamLogEventDetailsFileRequestReceiveFileDetails(arg) + case .groupAddExternalIdDetails(let swiftArg): + let arg = DBXTeamLogGroupAddExternalIdDetails(swift: swiftArg) + return DBXTeamLogEventDetailsGroupAddExternalIdDetails(arg) + case .groupAddMemberDetails(let swiftArg): + let arg = DBXTeamLogGroupAddMemberDetails(swift: swiftArg) + return DBXTeamLogEventDetailsGroupAddMemberDetails(arg) + case .groupChangeExternalIdDetails(let swiftArg): + let arg = DBXTeamLogGroupChangeExternalIdDetails(swift: swiftArg) + return DBXTeamLogEventDetailsGroupChangeExternalIdDetails(arg) + case .groupChangeManagementTypeDetails(let swiftArg): + let arg = DBXTeamLogGroupChangeManagementTypeDetails(swift: swiftArg) + return DBXTeamLogEventDetailsGroupChangeManagementTypeDetails(arg) + case .groupChangeMemberRoleDetails(let swiftArg): + let arg = DBXTeamLogGroupChangeMemberRoleDetails(swift: swiftArg) + return DBXTeamLogEventDetailsGroupChangeMemberRoleDetails(arg) + case .groupCreateDetails(let swiftArg): + let arg = DBXTeamLogGroupCreateDetails(swift: swiftArg) + return DBXTeamLogEventDetailsGroupCreateDetails(arg) + case .groupDeleteDetails(let swiftArg): + let arg = DBXTeamLogGroupDeleteDetails(swift: swiftArg) + return DBXTeamLogEventDetailsGroupDeleteDetails(arg) + case .groupDescriptionUpdatedDetails(let swiftArg): + let arg = DBXTeamLogGroupDescriptionUpdatedDetails(swift: swiftArg) return DBXTeamLogEventDetailsGroupDescriptionUpdatedDetails(arg) + case .groupExternalSharingSettingOverrideChangedDetails(let swiftArg): + let arg = DBXTeamLogGroupExternalSharingSettingOverrideChangedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsGroupExternalSharingSettingOverrideChangedDetails(arg) case .groupJoinPolicyUpdatedDetails(let swiftArg): let arg = DBXTeamLogGroupJoinPolicyUpdatedDetails(swift: swiftArg) return DBXTeamLogEventDetailsGroupJoinPolicyUpdatedDetails(arg) @@ -8907,6 +12312,12 @@ public class DBXTeamLogEventDetails: NSObject { case .ssoErrorDetails(let swiftArg): let arg = DBXTeamLogSsoErrorDetails(swift: swiftArg) return DBXTeamLogEventDetailsSsoErrorDetails(arg) + case .addonAssignedDetails(let swiftArg): + let arg = DBXTeamLogAddonAssignedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsAddonAssignedDetails(arg) + case .addonRemovedDetails(let swiftArg): + let arg = DBXTeamLogAddonRemovedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsAddonRemovedDetails(arg) case .backupAdminInvitationSentDetails(let swiftArg): let arg = DBXTeamLogBackupAdminInvitationSentDetails(swift: swiftArg) return DBXTeamLogEventDetailsBackupAdminInvitationSentDetails(arg) @@ -8952,6 +12363,9 @@ public class DBXTeamLogEventDetails: NSObject { case .memberDeleteProfilePhotoDetails(let swiftArg): let arg = DBXTeamLogMemberDeleteProfilePhotoDetails(swift: swiftArg) return DBXTeamLogEventDetailsMemberDeleteProfilePhotoDetails(arg) + case .memberFolderContentsAccessedDetails(let swiftArg): + let arg = DBXTeamLogMemberFolderContentsAccessedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsMemberFolderContentsAccessedDetails(arg) case .memberPermanentlyDeleteAccountContentsDetails(let swiftArg): let arg = DBXTeamLogMemberPermanentlyDeleteAccountContentsDetails(swift: swiftArg) return DBXTeamLogEventDetailsMemberPermanentlyDeleteAccountContentsDetails(arg) @@ -8982,6 +12396,12 @@ public class DBXTeamLogEventDetails: NSObject { case .pendingSecondaryEmailAddedDetails(let swiftArg): let arg = DBXTeamLogPendingSecondaryEmailAddedDetails(swift: swiftArg) return DBXTeamLogEventDetailsPendingSecondaryEmailAddedDetails(arg) + case .productAssignedToMemberDetails(let swiftArg): + let arg = DBXTeamLogProductAssignedToMemberDetails(swift: swiftArg) + return DBXTeamLogEventDetailsProductAssignedToMemberDetails(arg) + case .productRemovedFromMemberDetails(let swiftArg): + let arg = DBXTeamLogProductRemovedFromMemberDetails(swift: swiftArg) + return DBXTeamLogEventDetailsProductRemovedFromMemberDetails(arg) case .secondaryEmailDeletedDetails(let swiftArg): let arg = DBXTeamLogSecondaryEmailDeletedDetails(swift: swiftArg) return DBXTeamLogEventDetailsSecondaryEmailDeletedDetails(arg) @@ -9147,6 +12567,30 @@ public class DBXTeamLogEventDetails: NSObject { case .passwordResetAllDetails(let swiftArg): let arg = DBXTeamLogPasswordResetAllDetails(swift: swiftArg) return DBXTeamLogEventDetailsPasswordResetAllDetails(arg) + case .protectActionAddCollaboratorDetails(let swiftArg): + let arg = DBXTeamLogProtectActionAddCollaboratorDetails(swift: swiftArg) + return DBXTeamLogEventDetailsProtectActionAddCollaboratorDetails(arg) + case .protectActionAddLinkDetails(let swiftArg): + let arg = DBXTeamLogProtectActionAddLinkDetails(swift: swiftArg) + return DBXTeamLogEventDetailsProtectActionAddLinkDetails(arg) + case .protectActionDeleteDetails(let swiftArg): + let arg = DBXTeamLogProtectActionDeleteDetails(swift: swiftArg) + return DBXTeamLogEventDetailsProtectActionDeleteDetails(arg) + case .protectActionExportDetails(let swiftArg): + let arg = DBXTeamLogProtectActionExportDetails(swift: swiftArg) + return DBXTeamLogEventDetailsProtectActionExportDetails(arg) + case .protectActionRemoveCollaboratorDetails(let swiftArg): + let arg = DBXTeamLogProtectActionRemoveCollaboratorDetails(swift: swiftArg) + return DBXTeamLogEventDetailsProtectActionRemoveCollaboratorDetails(arg) + case .protectActionRemoveLinkDetails(let swiftArg): + let arg = DBXTeamLogProtectActionRemoveLinkDetails(swift: swiftArg) + return DBXTeamLogEventDetailsProtectActionRemoveLinkDetails(arg) + case .protectActionStopSharingDetails(let swiftArg): + let arg = DBXTeamLogProtectActionStopSharingDetails(swift: swiftArg) + return DBXTeamLogEventDetailsProtectActionStopSharingDetails(arg) + case .protectInternalDomainsChangedDetails(let swiftArg): + let arg = DBXTeamLogProtectInternalDomainsChangedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsProtectInternalDomainsChangedDetails(arg) case .classificationCreateReportDetails(let swiftArg): let arg = DBXTeamLogClassificationCreateReportDetails(swift: swiftArg) return DBXTeamLogEventDetailsClassificationCreateReportDetails(arg) @@ -9171,6 +12615,12 @@ public class DBXTeamLogEventDetails: NSObject { case .externalSharingReportFailedDetails(let swiftArg): let arg = DBXTeamLogExternalSharingReportFailedDetails(swift: swiftArg) return DBXTeamLogEventDetailsExternalSharingReportFailedDetails(arg) + case .memberAccessDetailsCreateReportDetails(let swiftArg): + let arg = DBXTeamLogMemberAccessDetailsCreateReportDetails(swift: swiftArg) + return DBXTeamLogEventDetailsMemberAccessDetailsCreateReportDetails(arg) + case .memberAccessDetailsCreateReportFailedDetails(let swiftArg): + let arg = DBXTeamLogMemberAccessDetailsCreateReportFailedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsMemberAccessDetailsCreateReportFailedDetails(arg) case .noExpirationLinkGenCreateReportDetails(let swiftArg): let arg = DBXTeamLogNoExpirationLinkGenCreateReportDetails(swift: swiftArg) return DBXTeamLogEventDetailsNoExpirationLinkGenCreateReportDetails(arg) @@ -9204,6 +12654,12 @@ public class DBXTeamLogEventDetails: NSObject { case .ransomwareAlertCreateReportFailedDetails(let swiftArg): let arg = DBXTeamLogRansomwareAlertCreateReportFailedDetails(swift: swiftArg) return DBXTeamLogEventDetailsRansomwareAlertCreateReportFailedDetails(arg) + case .sharedFoldersCreateReportDetails(let swiftArg): + let arg = DBXTeamLogSharedFoldersCreateReportDetails(swift: swiftArg) + return DBXTeamLogEventDetailsSharedFoldersCreateReportDetails(arg) + case .sharedFoldersCreateReportFailedDetails(let swiftArg): + let arg = DBXTeamLogSharedFoldersCreateReportFailedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsSharedFoldersCreateReportFailedDetails(arg) case .smartSyncCreateAdminPrivilegeReportDetails(let swiftArg): let arg = DBXTeamLogSmartSyncCreateAdminPrivilegeReportDetails(swift: swiftArg) return DBXTeamLogEventDetailsSmartSyncCreateAdminPrivilegeReportDetails(arg) @@ -9213,6 +12669,18 @@ public class DBXTeamLogEventDetails: NSObject { case .teamActivityCreateReportFailDetails(let swiftArg): let arg = DBXTeamLogTeamActivityCreateReportFailDetails(swift: swiftArg) return DBXTeamLogEventDetailsTeamActivityCreateReportFailDetails(arg) + case .teamFoldersCreateReportDetails(let swiftArg): + let arg = DBXTeamLogTeamFoldersCreateReportDetails(swift: swiftArg) + return DBXTeamLogEventDetailsTeamFoldersCreateReportDetails(arg) + case .teamFoldersCreateReportFailedDetails(let swiftArg): + let arg = DBXTeamLogTeamFoldersCreateReportFailedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsTeamFoldersCreateReportFailedDetails(arg) + case .teamStorageCreateReportDetails(let swiftArg): + let arg = DBXTeamLogTeamStorageCreateReportDetails(swift: swiftArg) + return DBXTeamLogEventDetailsTeamStorageCreateReportDetails(arg) + case .teamStorageCreateReportFailedDetails(let swiftArg): + let arg = DBXTeamLogTeamStorageCreateReportFailedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsTeamStorageCreateReportFailedDetails(arg) case .collectionShareDetails(let swiftArg): let arg = DBXTeamLogCollectionShareDetails(swift: swiftArg) return DBXTeamLogEventDetailsCollectionShareDetails(arg) @@ -9231,6 +12699,27 @@ public class DBXTeamLogEventDetails: NSObject { case .fileTransfersTransferViewDetails(let swiftArg): let arg = DBXTeamLogFileTransfersTransferViewDetails(swift: swiftArg) return DBXTeamLogEventDetailsFileTransfersTransferViewDetails(arg) + case .mediaHubProjectTeamAddDetails(let swiftArg): + let arg = DBXTeamLogMediaHubProjectTeamAddDetails(swift: swiftArg) + return DBXTeamLogEventDetailsMediaHubProjectTeamAddDetails(arg) + case .mediaHubProjectTeamDeleteDetails(let swiftArg): + let arg = DBXTeamLogMediaHubProjectTeamDeleteDetails(swift: swiftArg) + return DBXTeamLogEventDetailsMediaHubProjectTeamDeleteDetails(arg) + case .mediaHubProjectTeamRoleChangedDetails(let swiftArg): + let arg = DBXTeamLogMediaHubProjectTeamRoleChangedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsMediaHubProjectTeamRoleChangedDetails(arg) + case .mediaHubSharedLinkAudienceChangedDetails(let swiftArg): + let arg = DBXTeamLogMediaHubSharedLinkAudienceChangedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsMediaHubSharedLinkAudienceChangedDetails(arg) + case .mediaHubSharedLinkCreatedDetails(let swiftArg): + let arg = DBXTeamLogMediaHubSharedLinkCreatedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsMediaHubSharedLinkCreatedDetails(arg) + case .mediaHubSharedLinkDownloadSettingChangedDetails(let swiftArg): + let arg = DBXTeamLogMediaHubSharedLinkDownloadSettingChangedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsMediaHubSharedLinkDownloadSettingChangedDetails(arg) + case .mediaHubSharedLinkRevokedDetails(let swiftArg): + let arg = DBXTeamLogMediaHubSharedLinkRevokedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsMediaHubSharedLinkRevokedDetails(arg) case .noteAclInviteOnlyDetails(let swiftArg): let arg = DBXTeamLogNoteAclInviteOnlyDetails(swift: swiftArg) return DBXTeamLogEventDetailsNoteAclInviteOnlyDetails(arg) @@ -9261,6 +12750,30 @@ public class DBXTeamLogEventDetails: NSObject { case .replayProjectTeamDeleteDetails(let swiftArg): let arg = DBXTeamLogReplayProjectTeamDeleteDetails(swift: swiftArg) return DBXTeamLogEventDetailsReplayProjectTeamDeleteDetails(arg) + case .sendAndTrackFileAddedDetails(let swiftArg): + let arg = DBXTeamLogSendAndTrackFileAddedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsSendAndTrackFileAddedDetails(arg) + case .sendAndTrackFileRenamedDetails(let swiftArg): + let arg = DBXTeamLogSendAndTrackFileRenamedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsSendAndTrackFileRenamedDetails(arg) + case .sendAndTrackFileUpdatedDetails(let swiftArg): + let arg = DBXTeamLogSendAndTrackFileUpdatedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsSendAndTrackFileUpdatedDetails(arg) + case .sendAndTrackLinkCreatedDetails(let swiftArg): + let arg = DBXTeamLogSendAndTrackLinkCreatedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsSendAndTrackLinkCreatedDetails(arg) + case .sendAndTrackLinkDeletedDetails(let swiftArg): + let arg = DBXTeamLogSendAndTrackLinkDeletedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsSendAndTrackLinkDeletedDetails(arg) + case .sendAndTrackLinkUpdatedDetails(let swiftArg): + let arg = DBXTeamLogSendAndTrackLinkUpdatedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsSendAndTrackLinkUpdatedDetails(arg) + case .sendAndTrackLinkViewedDetails(let swiftArg): + let arg = DBXTeamLogSendAndTrackLinkViewedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsSendAndTrackLinkViewedDetails(arg) + case .sendAndTrackRemovedFileAndAssociatedLinksDetails(let swiftArg): + let arg = DBXTeamLogSendAndTrackRemovedFileAndAssociatedLinksDetails(swift: swiftArg) + return DBXTeamLogEventDetailsSendAndTrackRemovedFileAndAssociatedLinksDetails(arg) case .sfAddGroupDetails(let swiftArg): let arg = DBXTeamLogSfAddGroupDetails(swift: swiftArg) return DBXTeamLogEventDetailsSfAddGroupDetails(arg) @@ -9426,6 +12939,9 @@ public class DBXTeamLogEventDetails: NSObject { case .sharedLinkRemoveExpiryDetails(let swiftArg): let arg = DBXTeamLogSharedLinkRemoveExpiryDetails(swift: swiftArg) return DBXTeamLogEventDetailsSharedLinkRemoveExpiryDetails(arg) + case .sharedLinkRemoveVisitorDetails(let swiftArg): + let arg = DBXTeamLogSharedLinkRemoveVisitorDetails(swift: swiftArg) + return DBXTeamLogEventDetailsSharedLinkRemoveVisitorDetails(arg) case .sharedLinkSettingsAddExpirationDetails(let swiftArg): let arg = DBXTeamLogSharedLinkSettingsAddExpirationDetails(swift: swiftArg) return DBXTeamLogEventDetailsSharedLinkSettingsAddExpirationDetails(arg) @@ -9543,6 +13059,33 @@ public class DBXTeamLogEventDetails: NSObject { case .showcaseViewDetails(let swiftArg): let arg = DBXTeamLogShowcaseViewDetails(swift: swiftArg) return DBXTeamLogEventDetailsShowcaseViewDetails(arg) + case .signSignatureRequestCanceledDetails(let swiftArg): + let arg = DBXTeamLogSignSignatureRequestCanceledDetails(swift: swiftArg) + return DBXTeamLogEventDetailsSignSignatureRequestCanceledDetails(arg) + case .signSignatureRequestCompletedDetails(let swiftArg): + let arg = DBXTeamLogSignSignatureRequestCompletedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsSignSignatureRequestCompletedDetails(arg) + case .signSignatureRequestDeclinedDetails(let swiftArg): + let arg = DBXTeamLogSignSignatureRequestDeclinedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsSignSignatureRequestDeclinedDetails(arg) + case .signSignatureRequestOpenedDetails(let swiftArg): + let arg = DBXTeamLogSignSignatureRequestOpenedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsSignSignatureRequestOpenedDetails(arg) + case .signSignatureRequestReminderSentDetails(let swiftArg): + let arg = DBXTeamLogSignSignatureRequestReminderSentDetails(swift: swiftArg) + return DBXTeamLogEventDetailsSignSignatureRequestReminderSentDetails(arg) + case .signSignatureRequestSentDetails(let swiftArg): + let arg = DBXTeamLogSignSignatureRequestSentDetails(swift: swiftArg) + return DBXTeamLogEventDetailsSignSignatureRequestSentDetails(arg) + case .signTemplateCreatedDetails(let swiftArg): + let arg = DBXTeamLogSignTemplateCreatedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsSignTemplateCreatedDetails(arg) + case .signTemplateSharedDetails(let swiftArg): + let arg = DBXTeamLogSignTemplateSharedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsSignTemplateSharedDetails(arg) + case .riscSecurityEventDetails(let swiftArg): + let arg = DBXTeamLogRiscSecurityEventDetails(swift: swiftArg) + return DBXTeamLogEventDetailsRiscSecurityEventDetails(arg) case .ssoAddCertDetails(let swiftArg): let arg = DBXTeamLogSsoAddCertDetails(swift: swiftArg) return DBXTeamLogEventDetailsSsoAddCertDetails(arg) @@ -9588,6 +13131,15 @@ public class DBXTeamLogEventDetails: NSObject { case .teamFolderRenameDetails(let swiftArg): let arg = DBXTeamLogTeamFolderRenameDetails(swift: swiftArg) return DBXTeamLogEventDetailsTeamFolderRenameDetails(arg) + case .teamFolderSpaceLimitsChangeCapsTypeDetails(let swiftArg): + let arg = DBXTeamLogTeamFolderSpaceLimitsChangeCapsTypeDetails(swift: swiftArg) + return DBXTeamLogEventDetailsTeamFolderSpaceLimitsChangeCapsTypeDetails(arg) + case .teamFolderSpaceLimitsChangeLimitDetails(let swiftArg): + let arg = DBXTeamLogTeamFolderSpaceLimitsChangeLimitDetails(swift: swiftArg) + return DBXTeamLogEventDetailsTeamFolderSpaceLimitsChangeLimitDetails(arg) + case .teamFolderSpaceLimitsChangeNotificationTargetDetails(let swiftArg): + let arg = DBXTeamLogTeamFolderSpaceLimitsChangeNotificationTargetDetails(swift: swiftArg) + return DBXTeamLogEventDetailsTeamFolderSpaceLimitsChangeNotificationTargetDetails(arg) case .teamSelectiveSyncSettingsChangedDetails(let swiftArg): let arg = DBXTeamLogTeamSelectiveSyncSettingsChangedDetails(swift: swiftArg) return DBXTeamLogEventDetailsTeamSelectiveSyncSettingsChangedDetails(arg) @@ -9597,18 +13149,27 @@ public class DBXTeamLogEventDetails: NSObject { case .adminEmailRemindersChangedDetails(let swiftArg): let arg = DBXTeamLogAdminEmailRemindersChangedDetails(swift: swiftArg) return DBXTeamLogEventDetailsAdminEmailRemindersChangedDetails(arg) + case .aiThirdPartySharingDropboxBasePolicyChangedDetails(let swiftArg): + let arg = DBXTeamLogAiThirdPartySharingDropboxBasePolicyChangedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsAiThirdPartySharingDropboxBasePolicyChangedDetails(arg) case .allowDownloadDisabledDetails(let swiftArg): let arg = DBXTeamLogAllowDownloadDisabledDetails(swift: swiftArg) return DBXTeamLogEventDetailsAllowDownloadDisabledDetails(arg) case .allowDownloadEnabledDetails(let swiftArg): let arg = DBXTeamLogAllowDownloadEnabledDetails(swift: swiftArg) return DBXTeamLogEventDetailsAllowDownloadEnabledDetails(arg) + case .appleLoginChangePolicyDetails(let swiftArg): + let arg = DBXTeamLogAppleLoginChangePolicyDetails(swift: swiftArg) + return DBXTeamLogEventDetailsAppleLoginChangePolicyDetails(arg) case .appPermissionsChangedDetails(let swiftArg): let arg = DBXTeamLogAppPermissionsChangedDetails(swift: swiftArg) return DBXTeamLogEventDetailsAppPermissionsChangedDetails(arg) case .cameraUploadsPolicyChangedDetails(let swiftArg): let arg = DBXTeamLogCameraUploadsPolicyChangedDetails(swift: swiftArg) return DBXTeamLogEventDetailsCameraUploadsPolicyChangedDetails(arg) + case .captureTeamSpacePolicyChangedDetails(let swiftArg): + let arg = DBXTeamLogCaptureTeamSpacePolicyChangedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsCaptureTeamSpacePolicyChangedDetails(arg) case .captureTranscriptPolicyChangedDetails(let swiftArg): let arg = DBXTeamLogCaptureTranscriptPolicyChangedDetails(swift: swiftArg) return DBXTeamLogEventDetailsCaptureTranscriptPolicyChangedDetails(arg) @@ -9621,6 +13182,12 @@ public class DBXTeamLogEventDetails: NSObject { case .contentAdministrationPolicyChangedDetails(let swiftArg): let arg = DBXTeamLogContentAdministrationPolicyChangedDetails(swift: swiftArg) return DBXTeamLogEventDetailsContentAdministrationPolicyChangedDetails(arg) + case .contentDeletionProtectionChangePolicyDetails(let swiftArg): + let arg = DBXTeamLogContentDeletionProtectionChangePolicyDetails(swift: swiftArg) + return DBXTeamLogEventDetailsContentDeletionProtectionChangePolicyDetails(arg) + case .dashExternalSharingPolicyChangedDetails(let swiftArg): + let arg = DBXTeamLogDashExternalSharingPolicyChangedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsDashExternalSharingPolicyChangedDetails(arg) case .dataPlacementRestrictionChangePolicyDetails(let swiftArg): let arg = DBXTeamLogDataPlacementRestrictionChangePolicyDetails(swift: swiftArg) return DBXTeamLogEventDetailsDataPlacementRestrictionChangePolicyDetails(arg) @@ -9693,6 +13260,9 @@ public class DBXTeamLogEventDetails: NSObject { case .fileTransfersPolicyChangedDetails(let swiftArg): let arg = DBXTeamLogFileTransfersPolicyChangedDetails(swift: swiftArg) return DBXTeamLogEventDetailsFileTransfersPolicyChangedDetails(arg) + case .flexibleFileNamesPolicyChangedDetails(let swiftArg): + let arg = DBXTeamLogFlexibleFileNamesPolicyChangedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsFlexibleFileNamesPolicyChangedDetails(arg) case .folderLinkRestrictionPolicyChangedDetails(let swiftArg): let arg = DBXTeamLogFolderLinkRestrictionPolicyChangedDetails(swift: swiftArg) return DBXTeamLogEventDetailsFolderLinkRestrictionPolicyChangedDetails(arg) @@ -9708,6 +13278,15 @@ public class DBXTeamLogEventDetails: NSObject { case .inviteAcceptanceEmailPolicyChangedDetails(let swiftArg): let arg = DBXTeamLogInviteAcceptanceEmailPolicyChangedDetails(swift: swiftArg) return DBXTeamLogEventDetailsInviteAcceptanceEmailPolicyChangedDetails(arg) + case .mediaHubAddingPeoplePolicyChangedDetails(let swiftArg): + let arg = DBXTeamLogMediaHubAddingPeoplePolicyChangedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsMediaHubAddingPeoplePolicyChangedDetails(arg) + case .mediaHubDownloadPolicyChangedDetails(let swiftArg): + let arg = DBXTeamLogMediaHubDownloadPolicyChangedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsMediaHubDownloadPolicyChangedDetails(arg) + case .mediaHubLinkSharingPolicyChangedDetails(let swiftArg): + let arg = DBXTeamLogMediaHubLinkSharingPolicyChangedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsMediaHubLinkSharingPolicyChangedDetails(arg) case .memberRequestsChangePolicyDetails(let swiftArg): let arg = DBXTeamLogMemberRequestsChangePolicyDetails(swift: swiftArg) return DBXTeamLogEventDetailsMemberRequestsChangePolicyDetails(arg) @@ -9729,9 +13308,15 @@ public class DBXTeamLogEventDetails: NSObject { case .memberSuggestionsChangePolicyDetails(let swiftArg): let arg = DBXTeamLogMemberSuggestionsChangePolicyDetails(swift: swiftArg) return DBXTeamLogEventDetailsMemberSuggestionsChangePolicyDetails(arg) + case .microsoftLoginChangePolicyDetails(let swiftArg): + let arg = DBXTeamLogMicrosoftLoginChangePolicyDetails(swift: swiftArg) + return DBXTeamLogEventDetailsMicrosoftLoginChangePolicyDetails(arg) case .microsoftOfficeAddinChangePolicyDetails(let swiftArg): let arg = DBXTeamLogMicrosoftOfficeAddinChangePolicyDetails(swift: swiftArg) return DBXTeamLogEventDetailsMicrosoftOfficeAddinChangePolicyDetails(arg) + case .multiTeamIdentityPolicyChangedDetails(let swiftArg): + let arg = DBXTeamLogMultiTeamIdentityPolicyChangedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsMultiTeamIdentityPolicyChangedDetails(arg) case .networkControlChangePolicyDetails(let swiftArg): let arg = DBXTeamLogNetworkControlChangePolicyDetails(swift: swiftArg) return DBXTeamLogEventDetailsNetworkControlChangePolicyDetails(arg) @@ -9759,21 +13344,42 @@ public class DBXTeamLogEventDetails: NSObject { case .paperEnabledUsersGroupRemovalDetails(let swiftArg): let arg = DBXTeamLogPaperEnabledUsersGroupRemovalDetails(swift: swiftArg) return DBXTeamLogEventDetailsPaperEnabledUsersGroupRemovalDetails(arg) + case .passkeyLoginPolicyChangedDetails(let swiftArg): + let arg = DBXTeamLogPasskeyLoginPolicyChangedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsPasskeyLoginPolicyChangedDetails(arg) case .passwordStrengthRequirementsChangePolicyDetails(let swiftArg): let arg = DBXTeamLogPasswordStrengthRequirementsChangePolicyDetails(swift: swiftArg) return DBXTeamLogEventDetailsPasswordStrengthRequirementsChangePolicyDetails(arg) case .permanentDeleteChangePolicyDetails(let swiftArg): let arg = DBXTeamLogPermanentDeleteChangePolicyDetails(swift: swiftArg) return DBXTeamLogEventDetailsPermanentDeleteChangePolicyDetails(arg) + case .previewsAiPolicyChangedDetails(let swiftArg): + let arg = DBXTeamLogPreviewsAiPolicyChangedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsPreviewsAiPolicyChangedDetails(arg) + case .replayAddingPeoplePolicyChangedDetails(let swiftArg): + let arg = DBXTeamLogReplayAddingPeoplePolicyChangedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsReplayAddingPeoplePolicyChangedDetails(arg) + case .replaySharingPolicyChangedDetails(let swiftArg): + let arg = DBXTeamLogReplaySharingPolicyChangedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsReplaySharingPolicyChangedDetails(arg) case .resellerSupportChangePolicyDetails(let swiftArg): let arg = DBXTeamLogResellerSupportChangePolicyDetails(swift: swiftArg) return DBXTeamLogEventDetailsResellerSupportChangePolicyDetails(arg) case .rewindPolicyChangedDetails(let swiftArg): let arg = DBXTeamLogRewindPolicyChangedDetails(swift: swiftArg) return DBXTeamLogEventDetailsRewindPolicyChangedDetails(arg) + case .sendAndTrackPolicyChangedDetails(let swiftArg): + let arg = DBXTeamLogSendAndTrackPolicyChangedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsSendAndTrackPolicyChangedDetails(arg) + case .sendExternalSharingPolicyChangedDetails(let swiftArg): + let arg = DBXTeamLogSendExternalSharingPolicyChangedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsSendExternalSharingPolicyChangedDetails(arg) case .sendForSignaturePolicyChangedDetails(let swiftArg): let arg = DBXTeamLogSendForSignaturePolicyChangedDetails(swift: swiftArg) return DBXTeamLogEventDetailsSendForSignaturePolicyChangedDetails(arg) + case .sharedLinkDefaultPermissionsPolicyChangedDetails(let swiftArg): + let arg = DBXTeamLogSharedLinkDefaultPermissionsPolicyChangedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsSharedLinkDefaultPermissionsPolicyChangedDetails(arg) case .sharingChangeFolderJoinPolicyDetails(let swiftArg): let arg = DBXTeamLogSharingChangeFolderJoinPolicyDetails(swift: swiftArg) return DBXTeamLogEventDetailsSharingChangeFolderJoinPolicyDetails(arg) @@ -9801,6 +13407,12 @@ public class DBXTeamLogEventDetails: NSObject { case .showcaseChangeExternalSharingPolicyDetails(let swiftArg): let arg = DBXTeamLogShowcaseChangeExternalSharingPolicyDetails(swift: swiftArg) return DBXTeamLogEventDetailsShowcaseChangeExternalSharingPolicyDetails(arg) + case .signExternalSharingPolicyChangedDetails(let swiftArg): + let arg = DBXTeamLogSignExternalSharingPolicyChangedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsSignExternalSharingPolicyChangedDetails(arg) + case .signTemplateCreationPermissionChangedDetails(let swiftArg): + let arg = DBXTeamLogSignTemplateCreationPermissionChangedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsSignTemplateCreationPermissionChangedDetails(arg) case .smarterSmartSyncPolicyChangedDetails(let swiftArg): let arg = DBXTeamLogSmarterSmartSyncPolicyChangedDetails(swift: swiftArg) return DBXTeamLogEventDetailsSmarterSmartSyncPolicyChangedDetails(arg) @@ -9816,12 +13428,18 @@ public class DBXTeamLogEventDetails: NSObject { case .ssoChangePolicyDetails(let swiftArg): let arg = DBXTeamLogSsoChangePolicyDetails(swift: swiftArg) return DBXTeamLogEventDetailsSsoChangePolicyDetails(arg) + case .stackCrossTeamAccessPolicyChangedDetails(let swiftArg): + let arg = DBXTeamLogStackCrossTeamAccessPolicyChangedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsStackCrossTeamAccessPolicyChangedDetails(arg) case .teamBrandingPolicyChangedDetails(let swiftArg): let arg = DBXTeamLogTeamBrandingPolicyChangedDetails(swift: swiftArg) return DBXTeamLogEventDetailsTeamBrandingPolicyChangedDetails(arg) case .teamExtensionsPolicyChangedDetails(let swiftArg): let arg = DBXTeamLogTeamExtensionsPolicyChangedDetails(swift: swiftArg) return DBXTeamLogEventDetailsTeamExtensionsPolicyChangedDetails(arg) + case .teamMemberStorageRequestPolicyChangedDetails(let swiftArg): + let arg = DBXTeamLogTeamMemberStorageRequestPolicyChangedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsTeamMemberStorageRequestPolicyChangedDetails(arg) case .teamSelectiveSyncPolicyChangedDetails(let swiftArg): let arg = DBXTeamLogTeamSelectiveSyncPolicyChangedDetails(swift: swiftArg) return DBXTeamLogEventDetailsTeamSelectiveSyncPolicyChangedDetails(arg) @@ -9837,6 +13455,9 @@ public class DBXTeamLogEventDetails: NSObject { case .tfaRemoveExceptionDetails(let swiftArg): let arg = DBXTeamLogTfaRemoveExceptionDetails(swift: swiftArg) return DBXTeamLogEventDetailsTfaRemoveExceptionDetails(arg) + case .topLevelContentPolicyChangedDetails(let swiftArg): + let arg = DBXTeamLogTopLevelContentPolicyChangedDetails(swift: swiftArg) + return DBXTeamLogEventDetailsTopLevelContentPolicyChangedDetails(arg) case .twoAccountChangePolicyDetails(let swiftArg): let arg = DBXTeamLogTwoAccountChangePolicyDetails(swift: swiftArg) return DBXTeamLogEventDetailsTwoAccountChangePolicyDetails(arg) @@ -9891,6 +13512,12 @@ public class DBXTeamLogEventDetails: NSObject { case .teamProfileRemoveLogoDetails(let swiftArg): let arg = DBXTeamLogTeamProfileRemoveLogoDetails(swift: swiftArg) return DBXTeamLogEventDetailsTeamProfileRemoveLogoDetails(arg) + case .passkeyAddDetails(let swiftArg): + let arg = DBXTeamLogPasskeyAddDetails(swift: swiftArg) + return DBXTeamLogEventDetailsPasskeyAddDetails(arg) + case .passkeyRemoveDetails(let swiftArg): + let arg = DBXTeamLogPasskeyRemoveDetails(swift: swiftArg) + return DBXTeamLogEventDetailsPasskeyRemoveDetails(arg) case .tfaAddBackupPhoneDetails(let swiftArg): let arg = DBXTeamLogTfaAddBackupPhoneDetails(swift: swiftArg) return DBXTeamLogEventDetailsTfaAddBackupPhoneDetails(arg) @@ -10000,2527 +13627,3142 @@ public class DBXTeamLogEventDetails: NSObject { @objc public var asAdminAlertingAlertStateChangedDetails: DBXTeamLogEventDetailsAdminAlertingAlertStateChangedDetails? { - self as? DBXTeamLogEventDetailsAdminAlertingAlertStateChangedDetails + return self as? DBXTeamLogEventDetailsAdminAlertingAlertStateChangedDetails } @objc public var asAdminAlertingChangedAlertConfigDetails: DBXTeamLogEventDetailsAdminAlertingChangedAlertConfigDetails? { - self as? DBXTeamLogEventDetailsAdminAlertingChangedAlertConfigDetails + return self as? DBXTeamLogEventDetailsAdminAlertingChangedAlertConfigDetails } @objc public var asAdminAlertingTriggeredAlertDetails: DBXTeamLogEventDetailsAdminAlertingTriggeredAlertDetails? { - self as? DBXTeamLogEventDetailsAdminAlertingTriggeredAlertDetails + return self as? DBXTeamLogEventDetailsAdminAlertingTriggeredAlertDetails } @objc public var asRansomwareRestoreProcessCompletedDetails: DBXTeamLogEventDetailsRansomwareRestoreProcessCompletedDetails? { - self as? DBXTeamLogEventDetailsRansomwareRestoreProcessCompletedDetails + return self as? DBXTeamLogEventDetailsRansomwareRestoreProcessCompletedDetails } @objc public var asRansomwareRestoreProcessStartedDetails: DBXTeamLogEventDetailsRansomwareRestoreProcessStartedDetails? { - self as? DBXTeamLogEventDetailsRansomwareRestoreProcessStartedDetails + return self as? DBXTeamLogEventDetailsRansomwareRestoreProcessStartedDetails } @objc public var asAppBlockedByPermissionsDetails: DBXTeamLogEventDetailsAppBlockedByPermissionsDetails? { - self as? DBXTeamLogEventDetailsAppBlockedByPermissionsDetails + return self as? DBXTeamLogEventDetailsAppBlockedByPermissionsDetails } @objc public var asAppLinkTeamDetails: DBXTeamLogEventDetailsAppLinkTeamDetails? { - self as? DBXTeamLogEventDetailsAppLinkTeamDetails + return self as? DBXTeamLogEventDetailsAppLinkTeamDetails } @objc public var asAppLinkUserDetails: DBXTeamLogEventDetailsAppLinkUserDetails? { - self as? DBXTeamLogEventDetailsAppLinkUserDetails + return self as? DBXTeamLogEventDetailsAppLinkUserDetails } @objc public var asAppUnlinkTeamDetails: DBXTeamLogEventDetailsAppUnlinkTeamDetails? { - self as? DBXTeamLogEventDetailsAppUnlinkTeamDetails + return self as? DBXTeamLogEventDetailsAppUnlinkTeamDetails } @objc public var asAppUnlinkUserDetails: DBXTeamLogEventDetailsAppUnlinkUserDetails? { - self as? DBXTeamLogEventDetailsAppUnlinkUserDetails + return self as? DBXTeamLogEventDetailsAppUnlinkUserDetails } @objc public var asIntegrationConnectedDetails: DBXTeamLogEventDetailsIntegrationConnectedDetails? { - self as? DBXTeamLogEventDetailsIntegrationConnectedDetails + return self as? DBXTeamLogEventDetailsIntegrationConnectedDetails } @objc public var asIntegrationDisconnectedDetails: DBXTeamLogEventDetailsIntegrationDisconnectedDetails? { - self as? DBXTeamLogEventDetailsIntegrationDisconnectedDetails + return self as? DBXTeamLogEventDetailsIntegrationDisconnectedDetails } @objc public var asFileAddCommentDetails: DBXTeamLogEventDetailsFileAddCommentDetails? { - self as? DBXTeamLogEventDetailsFileAddCommentDetails + return self as? DBXTeamLogEventDetailsFileAddCommentDetails } @objc public var asFileChangeCommentSubscriptionDetails: DBXTeamLogEventDetailsFileChangeCommentSubscriptionDetails? { - self as? DBXTeamLogEventDetailsFileChangeCommentSubscriptionDetails + return self as? DBXTeamLogEventDetailsFileChangeCommentSubscriptionDetails } @objc public var asFileDeleteCommentDetails: DBXTeamLogEventDetailsFileDeleteCommentDetails? { - self as? DBXTeamLogEventDetailsFileDeleteCommentDetails + return self as? DBXTeamLogEventDetailsFileDeleteCommentDetails } @objc public var asFileEditCommentDetails: DBXTeamLogEventDetailsFileEditCommentDetails? { - self as? DBXTeamLogEventDetailsFileEditCommentDetails + return self as? DBXTeamLogEventDetailsFileEditCommentDetails } @objc public var asFileLikeCommentDetails: DBXTeamLogEventDetailsFileLikeCommentDetails? { - self as? DBXTeamLogEventDetailsFileLikeCommentDetails + return self as? DBXTeamLogEventDetailsFileLikeCommentDetails } @objc public var asFileResolveCommentDetails: DBXTeamLogEventDetailsFileResolveCommentDetails? { - self as? DBXTeamLogEventDetailsFileResolveCommentDetails + return self as? DBXTeamLogEventDetailsFileResolveCommentDetails } @objc public var asFileUnlikeCommentDetails: DBXTeamLogEventDetailsFileUnlikeCommentDetails? { - self as? DBXTeamLogEventDetailsFileUnlikeCommentDetails + return self as? DBXTeamLogEventDetailsFileUnlikeCommentDetails } @objc public var asFileUnresolveCommentDetails: DBXTeamLogEventDetailsFileUnresolveCommentDetails? { - self as? DBXTeamLogEventDetailsFileUnresolveCommentDetails + return self as? DBXTeamLogEventDetailsFileUnresolveCommentDetails + } + + @objc + public var asDashAddedCommentToStackDetails: DBXTeamLogEventDetailsDashAddedCommentToStackDetails? { + return self as? DBXTeamLogEventDetailsDashAddedCommentToStackDetails + } + + @objc + public var asDashAddedConnectorDetails: DBXTeamLogEventDetailsDashAddedConnectorDetails? { + return self as? DBXTeamLogEventDetailsDashAddedConnectorDetails + } + + @objc + public var asDashAddedLinkToStackDetails: DBXTeamLogEventDetailsDashAddedLinkToStackDetails? { + return self as? DBXTeamLogEventDetailsDashAddedLinkToStackDetails + } + + @objc + public var asDashAddedTeamEmailDomainAllowlistDetails: DBXTeamLogEventDetailsDashAddedTeamEmailDomainAllowlistDetails? { + return self as? DBXTeamLogEventDetailsDashAddedTeamEmailDomainAllowlistDetails + } + + @objc + public var asDashAdminAddedOrgWideConnectorDetails: DBXTeamLogEventDetailsDashAdminAddedOrgWideConnectorDetails? { + return self as? DBXTeamLogEventDetailsDashAdminAddedOrgWideConnectorDetails + } + + @objc + public var asDashAdminDisabledConnectorDetails: DBXTeamLogEventDetailsDashAdminDisabledConnectorDetails? { + return self as? DBXTeamLogEventDetailsDashAdminDisabledConnectorDetails + } + + @objc + public var asDashAdminEnabledConnectorDetails: DBXTeamLogEventDetailsDashAdminEnabledConnectorDetails? { + return self as? DBXTeamLogEventDetailsDashAdminEnabledConnectorDetails + } + + @objc + public var asDashAdminRemovedOrgWideConnectorDetails: DBXTeamLogEventDetailsDashAdminRemovedOrgWideConnectorDetails? { + return self as? DBXTeamLogEventDetailsDashAdminRemovedOrgWideConnectorDetails + } + + @objc + public var asDashArchivedStackDetails: DBXTeamLogEventDetailsDashArchivedStackDetails? { + return self as? DBXTeamLogEventDetailsDashArchivedStackDetails + } + + @objc + public var asDashChangedAudienceOfSharedLinkToStackDetails: DBXTeamLogEventDetailsDashChangedAudienceOfSharedLinkToStackDetails? { + return self as? DBXTeamLogEventDetailsDashChangedAudienceOfSharedLinkToStackDetails + } + + @objc + public var asDashClonedStackDetails: DBXTeamLogEventDetailsDashClonedStackDetails? { + return self as? DBXTeamLogEventDetailsDashClonedStackDetails + } + + @objc + public var asDashConnectorToolsCallDetails: DBXTeamLogEventDetailsDashConnectorToolsCallDetails? { + return self as? DBXTeamLogEventDetailsDashConnectorToolsCallDetails + } + + @objc + public var asDashCreatedStackDetails: DBXTeamLogEventDetailsDashCreatedStackDetails? { + return self as? DBXTeamLogEventDetailsDashCreatedStackDetails + } + + @objc + public var asDashDeletedCommentFromStackDetails: DBXTeamLogEventDetailsDashDeletedCommentFromStackDetails? { + return self as? DBXTeamLogEventDetailsDashDeletedCommentFromStackDetails + } + + @objc + public var asDashDeletedStackDetails: DBXTeamLogEventDetailsDashDeletedStackDetails? { + return self as? DBXTeamLogEventDetailsDashDeletedStackDetails + } + + @objc + public var asDashEditedCommentInStackDetails: DBXTeamLogEventDetailsDashEditedCommentInStackDetails? { + return self as? DBXTeamLogEventDetailsDashEditedCommentInStackDetails + } + + @objc + public var asDashExternalUserOpenedStackDetails: DBXTeamLogEventDetailsDashExternalUserOpenedStackDetails? { + return self as? DBXTeamLogEventDetailsDashExternalUserOpenedStackDetails + } + + @objc + public var asDashFirstLaunchedDesktopDetails: DBXTeamLogEventDetailsDashFirstLaunchedDesktopDetails? { + return self as? DBXTeamLogEventDetailsDashFirstLaunchedDesktopDetails + } + + @objc + public var asDashFirstLaunchedExtensionDetails: DBXTeamLogEventDetailsDashFirstLaunchedExtensionDetails? { + return self as? DBXTeamLogEventDetailsDashFirstLaunchedExtensionDetails + } + + @objc + public var asDashFirstLaunchedWebStartPageDetails: DBXTeamLogEventDetailsDashFirstLaunchedWebStartPageDetails? { + return self as? DBXTeamLogEventDetailsDashFirstLaunchedWebStartPageDetails + } + + @objc + public var asDashOpenedSharedLinkToStackDetails: DBXTeamLogEventDetailsDashOpenedSharedLinkToStackDetails? { + return self as? DBXTeamLogEventDetailsDashOpenedSharedLinkToStackDetails + } + + @objc + public var asDashOpenedStackDetails: DBXTeamLogEventDetailsDashOpenedStackDetails? { + return self as? DBXTeamLogEventDetailsDashOpenedStackDetails + } + + @objc + public var asDashPreviewOptOutStatusChangedDetails: DBXTeamLogEventDetailsDashPreviewOptOutStatusChangedDetails? { + return self as? DBXTeamLogEventDetailsDashPreviewOptOutStatusChangedDetails + } + + @objc + public var asDashRemovedConnectorDetails: DBXTeamLogEventDetailsDashRemovedConnectorDetails? { + return self as? DBXTeamLogEventDetailsDashRemovedConnectorDetails + } + + @objc + public var asDashRemovedLinkFromStackDetails: DBXTeamLogEventDetailsDashRemovedLinkFromStackDetails? { + return self as? DBXTeamLogEventDetailsDashRemovedLinkFromStackDetails + } + + @objc + public var asDashRemovedSharedLinkToStackDetails: DBXTeamLogEventDetailsDashRemovedSharedLinkToStackDetails? { + return self as? DBXTeamLogEventDetailsDashRemovedSharedLinkToStackDetails + } + + @objc + public var asDashRemovedTeamEmailDomainAllowlistDetails: DBXTeamLogEventDetailsDashRemovedTeamEmailDomainAllowlistDetails? { + return self as? DBXTeamLogEventDetailsDashRemovedTeamEmailDomainAllowlistDetails + } + + @objc + public var asDashRenamedStackDetails: DBXTeamLogEventDetailsDashRenamedStackDetails? { + return self as? DBXTeamLogEventDetailsDashRenamedStackDetails + } + + @objc + public var asDashSharedLinkToStackDetails: DBXTeamLogEventDetailsDashSharedLinkToStackDetails? { + return self as? DBXTeamLogEventDetailsDashSharedLinkToStackDetails + } + + @objc + public var asDashUnarchivedStackDetails: DBXTeamLogEventDetailsDashUnarchivedStackDetails? { + return self as? DBXTeamLogEventDetailsDashUnarchivedStackDetails + } + + @objc + public var asDashViewedCompanyStackDetails: DBXTeamLogEventDetailsDashViewedCompanyStackDetails? { + return self as? DBXTeamLogEventDetailsDashViewedCompanyStackDetails + } + + @objc + public var asDashViewedExternalAiActivityReportDetails: DBXTeamLogEventDetailsDashViewedExternalAiActivityReportDetails? { + return self as? DBXTeamLogEventDetailsDashViewedExternalAiActivityReportDetails } @objc public var asGovernancePolicyAddFoldersDetails: DBXTeamLogEventDetailsGovernancePolicyAddFoldersDetails? { - self as? DBXTeamLogEventDetailsGovernancePolicyAddFoldersDetails + return self as? DBXTeamLogEventDetailsGovernancePolicyAddFoldersDetails } @objc public var asGovernancePolicyAddFolderFailedDetails: DBXTeamLogEventDetailsGovernancePolicyAddFolderFailedDetails? { - self as? DBXTeamLogEventDetailsGovernancePolicyAddFolderFailedDetails + return self as? DBXTeamLogEventDetailsGovernancePolicyAddFolderFailedDetails } @objc public var asGovernancePolicyContentDisposedDetails: DBXTeamLogEventDetailsGovernancePolicyContentDisposedDetails? { - self as? DBXTeamLogEventDetailsGovernancePolicyContentDisposedDetails + return self as? DBXTeamLogEventDetailsGovernancePolicyContentDisposedDetails } @objc public var asGovernancePolicyCreateDetails: DBXTeamLogEventDetailsGovernancePolicyCreateDetails? { - self as? DBXTeamLogEventDetailsGovernancePolicyCreateDetails + return self as? DBXTeamLogEventDetailsGovernancePolicyCreateDetails } @objc public var asGovernancePolicyDeleteDetails: DBXTeamLogEventDetailsGovernancePolicyDeleteDetails? { - self as? DBXTeamLogEventDetailsGovernancePolicyDeleteDetails + return self as? DBXTeamLogEventDetailsGovernancePolicyDeleteDetails } @objc public var asGovernancePolicyEditDetailsDetails: DBXTeamLogEventDetailsGovernancePolicyEditDetailsDetails? { - self as? DBXTeamLogEventDetailsGovernancePolicyEditDetailsDetails + return self as? DBXTeamLogEventDetailsGovernancePolicyEditDetailsDetails } @objc public var asGovernancePolicyEditDurationDetails: DBXTeamLogEventDetailsGovernancePolicyEditDurationDetails? { - self as? DBXTeamLogEventDetailsGovernancePolicyEditDurationDetails + return self as? DBXTeamLogEventDetailsGovernancePolicyEditDurationDetails } @objc public var asGovernancePolicyExportCreatedDetails: DBXTeamLogEventDetailsGovernancePolicyExportCreatedDetails? { - self as? DBXTeamLogEventDetailsGovernancePolicyExportCreatedDetails + return self as? DBXTeamLogEventDetailsGovernancePolicyExportCreatedDetails } @objc public var asGovernancePolicyExportRemovedDetails: DBXTeamLogEventDetailsGovernancePolicyExportRemovedDetails? { - self as? DBXTeamLogEventDetailsGovernancePolicyExportRemovedDetails + return self as? DBXTeamLogEventDetailsGovernancePolicyExportRemovedDetails } @objc public var asGovernancePolicyRemoveFoldersDetails: DBXTeamLogEventDetailsGovernancePolicyRemoveFoldersDetails? { - self as? DBXTeamLogEventDetailsGovernancePolicyRemoveFoldersDetails + return self as? DBXTeamLogEventDetailsGovernancePolicyRemoveFoldersDetails } @objc public var asGovernancePolicyReportCreatedDetails: DBXTeamLogEventDetailsGovernancePolicyReportCreatedDetails? { - self as? DBXTeamLogEventDetailsGovernancePolicyReportCreatedDetails + return self as? DBXTeamLogEventDetailsGovernancePolicyReportCreatedDetails } @objc public var asGovernancePolicyZipPartDownloadedDetails: DBXTeamLogEventDetailsGovernancePolicyZipPartDownloadedDetails? { - self as? DBXTeamLogEventDetailsGovernancePolicyZipPartDownloadedDetails + return self as? DBXTeamLogEventDetailsGovernancePolicyZipPartDownloadedDetails } @objc public var asLegalHoldsActivateAHoldDetails: DBXTeamLogEventDetailsLegalHoldsActivateAHoldDetails? { - self as? DBXTeamLogEventDetailsLegalHoldsActivateAHoldDetails + return self as? DBXTeamLogEventDetailsLegalHoldsActivateAHoldDetails } @objc public var asLegalHoldsAddMembersDetails: DBXTeamLogEventDetailsLegalHoldsAddMembersDetails? { - self as? DBXTeamLogEventDetailsLegalHoldsAddMembersDetails + return self as? DBXTeamLogEventDetailsLegalHoldsAddMembersDetails } @objc public var asLegalHoldsChangeHoldDetailsDetails: DBXTeamLogEventDetailsLegalHoldsChangeHoldDetailsDetails? { - self as? DBXTeamLogEventDetailsLegalHoldsChangeHoldDetailsDetails + return self as? DBXTeamLogEventDetailsLegalHoldsChangeHoldDetailsDetails } @objc public var asLegalHoldsChangeHoldNameDetails: DBXTeamLogEventDetailsLegalHoldsChangeHoldNameDetails? { - self as? DBXTeamLogEventDetailsLegalHoldsChangeHoldNameDetails + return self as? DBXTeamLogEventDetailsLegalHoldsChangeHoldNameDetails } @objc public var asLegalHoldsExportAHoldDetails: DBXTeamLogEventDetailsLegalHoldsExportAHoldDetails? { - self as? DBXTeamLogEventDetailsLegalHoldsExportAHoldDetails + return self as? DBXTeamLogEventDetailsLegalHoldsExportAHoldDetails } @objc public var asLegalHoldsExportCancelledDetails: DBXTeamLogEventDetailsLegalHoldsExportCancelledDetails? { - self as? DBXTeamLogEventDetailsLegalHoldsExportCancelledDetails + return self as? DBXTeamLogEventDetailsLegalHoldsExportCancelledDetails } @objc public var asLegalHoldsExportDownloadedDetails: DBXTeamLogEventDetailsLegalHoldsExportDownloadedDetails? { - self as? DBXTeamLogEventDetailsLegalHoldsExportDownloadedDetails + return self as? DBXTeamLogEventDetailsLegalHoldsExportDownloadedDetails } @objc public var asLegalHoldsExportRemovedDetails: DBXTeamLogEventDetailsLegalHoldsExportRemovedDetails? { - self as? DBXTeamLogEventDetailsLegalHoldsExportRemovedDetails + return self as? DBXTeamLogEventDetailsLegalHoldsExportRemovedDetails } @objc public var asLegalHoldsReleaseAHoldDetails: DBXTeamLogEventDetailsLegalHoldsReleaseAHoldDetails? { - self as? DBXTeamLogEventDetailsLegalHoldsReleaseAHoldDetails + return self as? DBXTeamLogEventDetailsLegalHoldsReleaseAHoldDetails } @objc public var asLegalHoldsRemoveMembersDetails: DBXTeamLogEventDetailsLegalHoldsRemoveMembersDetails? { - self as? DBXTeamLogEventDetailsLegalHoldsRemoveMembersDetails + return self as? DBXTeamLogEventDetailsLegalHoldsRemoveMembersDetails } @objc public var asLegalHoldsReportAHoldDetails: DBXTeamLogEventDetailsLegalHoldsReportAHoldDetails? { - self as? DBXTeamLogEventDetailsLegalHoldsReportAHoldDetails + return self as? DBXTeamLogEventDetailsLegalHoldsReportAHoldDetails } @objc public var asDeviceChangeIpDesktopDetails: DBXTeamLogEventDetailsDeviceChangeIpDesktopDetails? { - self as? DBXTeamLogEventDetailsDeviceChangeIpDesktopDetails + return self as? DBXTeamLogEventDetailsDeviceChangeIpDesktopDetails } @objc public var asDeviceChangeIpMobileDetails: DBXTeamLogEventDetailsDeviceChangeIpMobileDetails? { - self as? DBXTeamLogEventDetailsDeviceChangeIpMobileDetails + return self as? DBXTeamLogEventDetailsDeviceChangeIpMobileDetails } @objc public var asDeviceChangeIpWebDetails: DBXTeamLogEventDetailsDeviceChangeIpWebDetails? { - self as? DBXTeamLogEventDetailsDeviceChangeIpWebDetails + return self as? DBXTeamLogEventDetailsDeviceChangeIpWebDetails } @objc public var asDeviceDeleteOnUnlinkFailDetails: DBXTeamLogEventDetailsDeviceDeleteOnUnlinkFailDetails? { - self as? DBXTeamLogEventDetailsDeviceDeleteOnUnlinkFailDetails + return self as? DBXTeamLogEventDetailsDeviceDeleteOnUnlinkFailDetails } @objc public var asDeviceDeleteOnUnlinkSuccessDetails: DBXTeamLogEventDetailsDeviceDeleteOnUnlinkSuccessDetails? { - self as? DBXTeamLogEventDetailsDeviceDeleteOnUnlinkSuccessDetails + return self as? DBXTeamLogEventDetailsDeviceDeleteOnUnlinkSuccessDetails } @objc public var asDeviceLinkFailDetails: DBXTeamLogEventDetailsDeviceLinkFailDetails? { - self as? DBXTeamLogEventDetailsDeviceLinkFailDetails + return self as? DBXTeamLogEventDetailsDeviceLinkFailDetails } @objc public var asDeviceLinkSuccessDetails: DBXTeamLogEventDetailsDeviceLinkSuccessDetails? { - self as? DBXTeamLogEventDetailsDeviceLinkSuccessDetails + return self as? DBXTeamLogEventDetailsDeviceLinkSuccessDetails } @objc public var asDeviceManagementDisabledDetails: DBXTeamLogEventDetailsDeviceManagementDisabledDetails? { - self as? DBXTeamLogEventDetailsDeviceManagementDisabledDetails + return self as? DBXTeamLogEventDetailsDeviceManagementDisabledDetails } @objc public var asDeviceManagementEnabledDetails: DBXTeamLogEventDetailsDeviceManagementEnabledDetails? { - self as? DBXTeamLogEventDetailsDeviceManagementEnabledDetails + return self as? DBXTeamLogEventDetailsDeviceManagementEnabledDetails } @objc public var asDeviceSyncBackupStatusChangedDetails: DBXTeamLogEventDetailsDeviceSyncBackupStatusChangedDetails? { - self as? DBXTeamLogEventDetailsDeviceSyncBackupStatusChangedDetails + return self as? DBXTeamLogEventDetailsDeviceSyncBackupStatusChangedDetails } @objc public var asDeviceUnlinkDetails: DBXTeamLogEventDetailsDeviceUnlinkDetails? { - self as? DBXTeamLogEventDetailsDeviceUnlinkDetails + return self as? DBXTeamLogEventDetailsDeviceUnlinkDetails } @objc public var asDropboxPasswordsExportedDetails: DBXTeamLogEventDetailsDropboxPasswordsExportedDetails? { - self as? DBXTeamLogEventDetailsDropboxPasswordsExportedDetails + return self as? DBXTeamLogEventDetailsDropboxPasswordsExportedDetails } @objc public var asDropboxPasswordsNewDeviceEnrolledDetails: DBXTeamLogEventDetailsDropboxPasswordsNewDeviceEnrolledDetails? { - self as? DBXTeamLogEventDetailsDropboxPasswordsNewDeviceEnrolledDetails + return self as? DBXTeamLogEventDetailsDropboxPasswordsNewDeviceEnrolledDetails } @objc public var asEmmRefreshAuthTokenDetails: DBXTeamLogEventDetailsEmmRefreshAuthTokenDetails? { - self as? DBXTeamLogEventDetailsEmmRefreshAuthTokenDetails + return self as? DBXTeamLogEventDetailsEmmRefreshAuthTokenDetails } @objc public var asExternalDriveBackupEligibilityStatusCheckedDetails: DBXTeamLogEventDetailsExternalDriveBackupEligibilityStatusCheckedDetails? { - self as? DBXTeamLogEventDetailsExternalDriveBackupEligibilityStatusCheckedDetails + return self as? DBXTeamLogEventDetailsExternalDriveBackupEligibilityStatusCheckedDetails } @objc public var asExternalDriveBackupStatusChangedDetails: DBXTeamLogEventDetailsExternalDriveBackupStatusChangedDetails? { - self as? DBXTeamLogEventDetailsExternalDriveBackupStatusChangedDetails + return self as? DBXTeamLogEventDetailsExternalDriveBackupStatusChangedDetails } @objc public var asAccountCaptureChangeAvailabilityDetails: DBXTeamLogEventDetailsAccountCaptureChangeAvailabilityDetails? { - self as? DBXTeamLogEventDetailsAccountCaptureChangeAvailabilityDetails + return self as? DBXTeamLogEventDetailsAccountCaptureChangeAvailabilityDetails } @objc public var asAccountCaptureMigrateAccountDetails: DBXTeamLogEventDetailsAccountCaptureMigrateAccountDetails? { - self as? DBXTeamLogEventDetailsAccountCaptureMigrateAccountDetails + return self as? DBXTeamLogEventDetailsAccountCaptureMigrateAccountDetails } @objc public var asAccountCaptureNotificationEmailsSentDetails: DBXTeamLogEventDetailsAccountCaptureNotificationEmailsSentDetails? { - self as? DBXTeamLogEventDetailsAccountCaptureNotificationEmailsSentDetails + return self as? DBXTeamLogEventDetailsAccountCaptureNotificationEmailsSentDetails } @objc public var asAccountCaptureRelinquishAccountDetails: DBXTeamLogEventDetailsAccountCaptureRelinquishAccountDetails? { - self as? DBXTeamLogEventDetailsAccountCaptureRelinquishAccountDetails + return self as? DBXTeamLogEventDetailsAccountCaptureRelinquishAccountDetails } @objc public var asDisabledDomainInvitesDetails: DBXTeamLogEventDetailsDisabledDomainInvitesDetails? { - self as? DBXTeamLogEventDetailsDisabledDomainInvitesDetails + return self as? DBXTeamLogEventDetailsDisabledDomainInvitesDetails } @objc public var asDomainInvitesApproveRequestToJoinTeamDetails: DBXTeamLogEventDetailsDomainInvitesApproveRequestToJoinTeamDetails? { - self as? DBXTeamLogEventDetailsDomainInvitesApproveRequestToJoinTeamDetails + return self as? DBXTeamLogEventDetailsDomainInvitesApproveRequestToJoinTeamDetails } @objc public var asDomainInvitesDeclineRequestToJoinTeamDetails: DBXTeamLogEventDetailsDomainInvitesDeclineRequestToJoinTeamDetails? { - self as? DBXTeamLogEventDetailsDomainInvitesDeclineRequestToJoinTeamDetails + return self as? DBXTeamLogEventDetailsDomainInvitesDeclineRequestToJoinTeamDetails } @objc public var asDomainInvitesEmailExistingUsersDetails: DBXTeamLogEventDetailsDomainInvitesEmailExistingUsersDetails? { - self as? DBXTeamLogEventDetailsDomainInvitesEmailExistingUsersDetails + return self as? DBXTeamLogEventDetailsDomainInvitesEmailExistingUsersDetails } @objc public var asDomainInvitesRequestToJoinTeamDetails: DBXTeamLogEventDetailsDomainInvitesRequestToJoinTeamDetails? { - self as? DBXTeamLogEventDetailsDomainInvitesRequestToJoinTeamDetails + return self as? DBXTeamLogEventDetailsDomainInvitesRequestToJoinTeamDetails } @objc public var asDomainInvitesSetInviteNewUserPrefToNoDetails: DBXTeamLogEventDetailsDomainInvitesSetInviteNewUserPrefToNoDetails? { - self as? DBXTeamLogEventDetailsDomainInvitesSetInviteNewUserPrefToNoDetails + return self as? DBXTeamLogEventDetailsDomainInvitesSetInviteNewUserPrefToNoDetails } @objc public var asDomainInvitesSetInviteNewUserPrefToYesDetails: DBXTeamLogEventDetailsDomainInvitesSetInviteNewUserPrefToYesDetails? { - self as? DBXTeamLogEventDetailsDomainInvitesSetInviteNewUserPrefToYesDetails + return self as? DBXTeamLogEventDetailsDomainInvitesSetInviteNewUserPrefToYesDetails } @objc public var asDomainVerificationAddDomainFailDetails: DBXTeamLogEventDetailsDomainVerificationAddDomainFailDetails? { - self as? DBXTeamLogEventDetailsDomainVerificationAddDomainFailDetails + return self as? DBXTeamLogEventDetailsDomainVerificationAddDomainFailDetails } @objc public var asDomainVerificationAddDomainSuccessDetails: DBXTeamLogEventDetailsDomainVerificationAddDomainSuccessDetails? { - self as? DBXTeamLogEventDetailsDomainVerificationAddDomainSuccessDetails + return self as? DBXTeamLogEventDetailsDomainVerificationAddDomainSuccessDetails } @objc public var asDomainVerificationRemoveDomainDetails: DBXTeamLogEventDetailsDomainVerificationRemoveDomainDetails? { - self as? DBXTeamLogEventDetailsDomainVerificationRemoveDomainDetails + return self as? DBXTeamLogEventDetailsDomainVerificationRemoveDomainDetails } @objc public var asEnabledDomainInvitesDetails: DBXTeamLogEventDetailsEnabledDomainInvitesDetails? { - self as? DBXTeamLogEventDetailsEnabledDomainInvitesDetails + return self as? DBXTeamLogEventDetailsEnabledDomainInvitesDetails + } + + @objc + public var asEncryptedFolderCancelTeamKeyRotationDetails: DBXTeamLogEventDetailsEncryptedFolderCancelTeamKeyRotationDetails? { + return self as? DBXTeamLogEventDetailsEncryptedFolderCancelTeamKeyRotationDetails + } + + @objc + public var asEncryptedFolderEnrollBackupKeyDetails: DBXTeamLogEventDetailsEncryptedFolderEnrollBackupKeyDetails? { + return self as? DBXTeamLogEventDetailsEncryptedFolderEnrollBackupKeyDetails + } + + @objc + public var asEncryptedFolderEnrollClientDetails: DBXTeamLogEventDetailsEncryptedFolderEnrollClientDetails? { + return self as? DBXTeamLogEventDetailsEncryptedFolderEnrollClientDetails + } + + @objc + public var asEncryptedFolderEnrollTeamDetails: DBXTeamLogEventDetailsEncryptedFolderEnrollTeamDetails? { + return self as? DBXTeamLogEventDetailsEncryptedFolderEnrollTeamDetails + } + + @objc + public var asEncryptedFolderFinishTeamUnenrollmentDetails: DBXTeamLogEventDetailsEncryptedFolderFinishTeamUnenrollmentDetails? { + return self as? DBXTeamLogEventDetailsEncryptedFolderFinishTeamUnenrollmentDetails + } + + @objc + public var asEncryptedFolderInitTeamKeyRotationDetails: DBXTeamLogEventDetailsEncryptedFolderInitTeamKeyRotationDetails? { + return self as? DBXTeamLogEventDetailsEncryptedFolderInitTeamKeyRotationDetails + } + + @objc + public var asEncryptedFolderInitTeamUnenrollmentDetails: DBXTeamLogEventDetailsEncryptedFolderInitTeamUnenrollmentDetails? { + return self as? DBXTeamLogEventDetailsEncryptedFolderInitTeamUnenrollmentDetails + } + + @objc + public var asEncryptedFolderRemoveBackupKeyDetails: DBXTeamLogEventDetailsEncryptedFolderRemoveBackupKeyDetails? { + return self as? DBXTeamLogEventDetailsEncryptedFolderRemoveBackupKeyDetails + } + + @objc + public var asEncryptedFolderRotateTeamKeyDetails: DBXTeamLogEventDetailsEncryptedFolderRotateTeamKeyDetails? { + return self as? DBXTeamLogEventDetailsEncryptedFolderRotateTeamKeyDetails + } + + @objc + public var asEncryptedFolderUnenrollClientDetails: DBXTeamLogEventDetailsEncryptedFolderUnenrollClientDetails? { + return self as? DBXTeamLogEventDetailsEncryptedFolderUnenrollClientDetails + } + + @objc + public var asTeamEncryptionKeyActivateKeyDetails: DBXTeamLogEventDetailsTeamEncryptionKeyActivateKeyDetails? { + return self as? DBXTeamLogEventDetailsTeamEncryptionKeyActivateKeyDetails } @objc public var asTeamEncryptionKeyCancelKeyDeletionDetails: DBXTeamLogEventDetailsTeamEncryptionKeyCancelKeyDeletionDetails? { - self as? DBXTeamLogEventDetailsTeamEncryptionKeyCancelKeyDeletionDetails + return self as? DBXTeamLogEventDetailsTeamEncryptionKeyCancelKeyDeletionDetails } @objc public var asTeamEncryptionKeyCreateKeyDetails: DBXTeamLogEventDetailsTeamEncryptionKeyCreateKeyDetails? { - self as? DBXTeamLogEventDetailsTeamEncryptionKeyCreateKeyDetails + return self as? DBXTeamLogEventDetailsTeamEncryptionKeyCreateKeyDetails + } + + @objc + public var asTeamEncryptionKeyDeactivateKeyDetails: DBXTeamLogEventDetailsTeamEncryptionKeyDeactivateKeyDetails? { + return self as? DBXTeamLogEventDetailsTeamEncryptionKeyDeactivateKeyDetails } @objc public var asTeamEncryptionKeyDeleteKeyDetails: DBXTeamLogEventDetailsTeamEncryptionKeyDeleteKeyDetails? { - self as? DBXTeamLogEventDetailsTeamEncryptionKeyDeleteKeyDetails + return self as? DBXTeamLogEventDetailsTeamEncryptionKeyDeleteKeyDetails } @objc public var asTeamEncryptionKeyDisableKeyDetails: DBXTeamLogEventDetailsTeamEncryptionKeyDisableKeyDetails? { - self as? DBXTeamLogEventDetailsTeamEncryptionKeyDisableKeyDetails + return self as? DBXTeamLogEventDetailsTeamEncryptionKeyDisableKeyDetails } @objc public var asTeamEncryptionKeyEnableKeyDetails: DBXTeamLogEventDetailsTeamEncryptionKeyEnableKeyDetails? { - self as? DBXTeamLogEventDetailsTeamEncryptionKeyEnableKeyDetails + return self as? DBXTeamLogEventDetailsTeamEncryptionKeyEnableKeyDetails } @objc public var asTeamEncryptionKeyRotateKeyDetails: DBXTeamLogEventDetailsTeamEncryptionKeyRotateKeyDetails? { - self as? DBXTeamLogEventDetailsTeamEncryptionKeyRotateKeyDetails + return self as? DBXTeamLogEventDetailsTeamEncryptionKeyRotateKeyDetails } @objc public var asTeamEncryptionKeyScheduleKeyDeletionDetails: DBXTeamLogEventDetailsTeamEncryptionKeyScheduleKeyDeletionDetails? { - self as? DBXTeamLogEventDetailsTeamEncryptionKeyScheduleKeyDeletionDetails + return self as? DBXTeamLogEventDetailsTeamEncryptionKeyScheduleKeyDeletionDetails } @objc public var asApplyNamingConventionDetails: DBXTeamLogEventDetailsApplyNamingConventionDetails? { - self as? DBXTeamLogEventDetailsApplyNamingConventionDetails + return self as? DBXTeamLogEventDetailsApplyNamingConventionDetails } @objc public var asCreateFolderDetails: DBXTeamLogEventDetailsCreateFolderDetails? { - self as? DBXTeamLogEventDetailsCreateFolderDetails + return self as? DBXTeamLogEventDetailsCreateFolderDetails } @objc public var asFileAddDetails: DBXTeamLogEventDetailsFileAddDetails? { - self as? DBXTeamLogEventDetailsFileAddDetails + return self as? DBXTeamLogEventDetailsFileAddDetails } @objc public var asFileAddFromAutomationDetails: DBXTeamLogEventDetailsFileAddFromAutomationDetails? { - self as? DBXTeamLogEventDetailsFileAddFromAutomationDetails + return self as? DBXTeamLogEventDetailsFileAddFromAutomationDetails } @objc public var asFileCopyDetails: DBXTeamLogEventDetailsFileCopyDetails? { - self as? DBXTeamLogEventDetailsFileCopyDetails + return self as? DBXTeamLogEventDetailsFileCopyDetails } @objc public var asFileDeleteDetails: DBXTeamLogEventDetailsFileDeleteDetails? { - self as? DBXTeamLogEventDetailsFileDeleteDetails + return self as? DBXTeamLogEventDetailsFileDeleteDetails } @objc public var asFileDownloadDetails: DBXTeamLogEventDetailsFileDownloadDetails? { - self as? DBXTeamLogEventDetailsFileDownloadDetails + return self as? DBXTeamLogEventDetailsFileDownloadDetails } @objc public var asFileEditDetails: DBXTeamLogEventDetailsFileEditDetails? { - self as? DBXTeamLogEventDetailsFileEditDetails + return self as? DBXTeamLogEventDetailsFileEditDetails } @objc public var asFileGetCopyReferenceDetails: DBXTeamLogEventDetailsFileGetCopyReferenceDetails? { - self as? DBXTeamLogEventDetailsFileGetCopyReferenceDetails + return self as? DBXTeamLogEventDetailsFileGetCopyReferenceDetails } @objc public var asFileLockingLockStatusChangedDetails: DBXTeamLogEventDetailsFileLockingLockStatusChangedDetails? { - self as? DBXTeamLogEventDetailsFileLockingLockStatusChangedDetails + return self as? DBXTeamLogEventDetailsFileLockingLockStatusChangedDetails } @objc public var asFileMoveDetails: DBXTeamLogEventDetailsFileMoveDetails? { - self as? DBXTeamLogEventDetailsFileMoveDetails + return self as? DBXTeamLogEventDetailsFileMoveDetails } @objc public var asFilePermanentlyDeleteDetails: DBXTeamLogEventDetailsFilePermanentlyDeleteDetails? { - self as? DBXTeamLogEventDetailsFilePermanentlyDeleteDetails + return self as? DBXTeamLogEventDetailsFilePermanentlyDeleteDetails } @objc public var asFilePreviewDetails: DBXTeamLogEventDetailsFilePreviewDetails? { - self as? DBXTeamLogEventDetailsFilePreviewDetails + return self as? DBXTeamLogEventDetailsFilePreviewDetails } @objc public var asFileRenameDetails: DBXTeamLogEventDetailsFileRenameDetails? { - self as? DBXTeamLogEventDetailsFileRenameDetails + return self as? DBXTeamLogEventDetailsFileRenameDetails } @objc public var asFileRestoreDetails: DBXTeamLogEventDetailsFileRestoreDetails? { - self as? DBXTeamLogEventDetailsFileRestoreDetails + return self as? DBXTeamLogEventDetailsFileRestoreDetails } @objc public var asFileRevertDetails: DBXTeamLogEventDetailsFileRevertDetails? { - self as? DBXTeamLogEventDetailsFileRevertDetails + return self as? DBXTeamLogEventDetailsFileRevertDetails } @objc public var asFileRollbackChangesDetails: DBXTeamLogEventDetailsFileRollbackChangesDetails? { - self as? DBXTeamLogEventDetailsFileRollbackChangesDetails + return self as? DBXTeamLogEventDetailsFileRollbackChangesDetails } @objc public var asFileSaveCopyReferenceDetails: DBXTeamLogEventDetailsFileSaveCopyReferenceDetails? { - self as? DBXTeamLogEventDetailsFileSaveCopyReferenceDetails + return self as? DBXTeamLogEventDetailsFileSaveCopyReferenceDetails } @objc public var asFolderOverviewDescriptionChangedDetails: DBXTeamLogEventDetailsFolderOverviewDescriptionChangedDetails? { - self as? DBXTeamLogEventDetailsFolderOverviewDescriptionChangedDetails + return self as? DBXTeamLogEventDetailsFolderOverviewDescriptionChangedDetails } @objc public var asFolderOverviewItemPinnedDetails: DBXTeamLogEventDetailsFolderOverviewItemPinnedDetails? { - self as? DBXTeamLogEventDetailsFolderOverviewItemPinnedDetails + return self as? DBXTeamLogEventDetailsFolderOverviewItemPinnedDetails } @objc public var asFolderOverviewItemUnpinnedDetails: DBXTeamLogEventDetailsFolderOverviewItemUnpinnedDetails? { - self as? DBXTeamLogEventDetailsFolderOverviewItemUnpinnedDetails + return self as? DBXTeamLogEventDetailsFolderOverviewItemUnpinnedDetails + } + + @objc + public var asMediaHubFileDownloadedDetails: DBXTeamLogEventDetailsMediaHubFileDownloadedDetails? { + return self as? DBXTeamLogEventDetailsMediaHubFileDownloadedDetails } @objc public var asObjectLabelAddedDetails: DBXTeamLogEventDetailsObjectLabelAddedDetails? { - self as? DBXTeamLogEventDetailsObjectLabelAddedDetails + return self as? DBXTeamLogEventDetailsObjectLabelAddedDetails } @objc public var asObjectLabelRemovedDetails: DBXTeamLogEventDetailsObjectLabelRemovedDetails? { - self as? DBXTeamLogEventDetailsObjectLabelRemovedDetails + return self as? DBXTeamLogEventDetailsObjectLabelRemovedDetails } @objc public var asObjectLabelUpdatedValueDetails: DBXTeamLogEventDetailsObjectLabelUpdatedValueDetails? { - self as? DBXTeamLogEventDetailsObjectLabelUpdatedValueDetails + return self as? DBXTeamLogEventDetailsObjectLabelUpdatedValueDetails } @objc public var asOrganizeFolderWithTidyDetails: DBXTeamLogEventDetailsOrganizeFolderWithTidyDetails? { - self as? DBXTeamLogEventDetailsOrganizeFolderWithTidyDetails + return self as? DBXTeamLogEventDetailsOrganizeFolderWithTidyDetails } @objc public var asReplayFileDeleteDetails: DBXTeamLogEventDetailsReplayFileDeleteDetails? { - self as? DBXTeamLogEventDetailsReplayFileDeleteDetails + return self as? DBXTeamLogEventDetailsReplayFileDeleteDetails + } + + @objc + public var asReplayFileDownloadedDetails: DBXTeamLogEventDetailsReplayFileDownloadedDetails? { + return self as? DBXTeamLogEventDetailsReplayFileDownloadedDetails + } + + @objc + public var asReplayTeamProjectCreatedDetails: DBXTeamLogEventDetailsReplayTeamProjectCreatedDetails? { + return self as? DBXTeamLogEventDetailsReplayTeamProjectCreatedDetails } @objc public var asRewindFolderDetails: DBXTeamLogEventDetailsRewindFolderDetails? { - self as? DBXTeamLogEventDetailsRewindFolderDetails + return self as? DBXTeamLogEventDetailsRewindFolderDetails } @objc public var asUndoNamingConventionDetails: DBXTeamLogEventDetailsUndoNamingConventionDetails? { - self as? DBXTeamLogEventDetailsUndoNamingConventionDetails + return self as? DBXTeamLogEventDetailsUndoNamingConventionDetails } @objc public var asUndoOrganizeFolderWithTidyDetails: DBXTeamLogEventDetailsUndoOrganizeFolderWithTidyDetails? { - self as? DBXTeamLogEventDetailsUndoOrganizeFolderWithTidyDetails + return self as? DBXTeamLogEventDetailsUndoOrganizeFolderWithTidyDetails } @objc public var asUserTagsAddedDetails: DBXTeamLogEventDetailsUserTagsAddedDetails? { - self as? DBXTeamLogEventDetailsUserTagsAddedDetails + return self as? DBXTeamLogEventDetailsUserTagsAddedDetails } @objc public var asUserTagsRemovedDetails: DBXTeamLogEventDetailsUserTagsRemovedDetails? { - self as? DBXTeamLogEventDetailsUserTagsRemovedDetails + return self as? DBXTeamLogEventDetailsUserTagsRemovedDetails } @objc public var asEmailIngestReceiveFileDetails: DBXTeamLogEventDetailsEmailIngestReceiveFileDetails? { - self as? DBXTeamLogEventDetailsEmailIngestReceiveFileDetails + return self as? DBXTeamLogEventDetailsEmailIngestReceiveFileDetails + } + + @objc + public var asFileRequestAutoCloseDetails: DBXTeamLogEventDetailsFileRequestAutoCloseDetails? { + return self as? DBXTeamLogEventDetailsFileRequestAutoCloseDetails } @objc public var asFileRequestChangeDetails: DBXTeamLogEventDetailsFileRequestChangeDetails? { - self as? DBXTeamLogEventDetailsFileRequestChangeDetails + return self as? DBXTeamLogEventDetailsFileRequestChangeDetails } @objc public var asFileRequestCloseDetails: DBXTeamLogEventDetailsFileRequestCloseDetails? { - self as? DBXTeamLogEventDetailsFileRequestCloseDetails + return self as? DBXTeamLogEventDetailsFileRequestCloseDetails } @objc public var asFileRequestCreateDetails: DBXTeamLogEventDetailsFileRequestCreateDetails? { - self as? DBXTeamLogEventDetailsFileRequestCreateDetails + return self as? DBXTeamLogEventDetailsFileRequestCreateDetails } @objc public var asFileRequestDeleteDetails: DBXTeamLogEventDetailsFileRequestDeleteDetails? { - self as? DBXTeamLogEventDetailsFileRequestDeleteDetails + return self as? DBXTeamLogEventDetailsFileRequestDeleteDetails } @objc public var asFileRequestReceiveFileDetails: DBXTeamLogEventDetailsFileRequestReceiveFileDetails? { - self as? DBXTeamLogEventDetailsFileRequestReceiveFileDetails + return self as? DBXTeamLogEventDetailsFileRequestReceiveFileDetails } @objc public var asGroupAddExternalIdDetails: DBXTeamLogEventDetailsGroupAddExternalIdDetails? { - self as? DBXTeamLogEventDetailsGroupAddExternalIdDetails + return self as? DBXTeamLogEventDetailsGroupAddExternalIdDetails } @objc public var asGroupAddMemberDetails: DBXTeamLogEventDetailsGroupAddMemberDetails? { - self as? DBXTeamLogEventDetailsGroupAddMemberDetails + return self as? DBXTeamLogEventDetailsGroupAddMemberDetails } @objc public var asGroupChangeExternalIdDetails: DBXTeamLogEventDetailsGroupChangeExternalIdDetails? { - self as? DBXTeamLogEventDetailsGroupChangeExternalIdDetails + return self as? DBXTeamLogEventDetailsGroupChangeExternalIdDetails } @objc public var asGroupChangeManagementTypeDetails: DBXTeamLogEventDetailsGroupChangeManagementTypeDetails? { - self as? DBXTeamLogEventDetailsGroupChangeManagementTypeDetails + return self as? DBXTeamLogEventDetailsGroupChangeManagementTypeDetails } @objc public var asGroupChangeMemberRoleDetails: DBXTeamLogEventDetailsGroupChangeMemberRoleDetails? { - self as? DBXTeamLogEventDetailsGroupChangeMemberRoleDetails + return self as? DBXTeamLogEventDetailsGroupChangeMemberRoleDetails } @objc public var asGroupCreateDetails: DBXTeamLogEventDetailsGroupCreateDetails? { - self as? DBXTeamLogEventDetailsGroupCreateDetails + return self as? DBXTeamLogEventDetailsGroupCreateDetails } @objc public var asGroupDeleteDetails: DBXTeamLogEventDetailsGroupDeleteDetails? { - self as? DBXTeamLogEventDetailsGroupDeleteDetails + return self as? DBXTeamLogEventDetailsGroupDeleteDetails } @objc public var asGroupDescriptionUpdatedDetails: DBXTeamLogEventDetailsGroupDescriptionUpdatedDetails? { - self as? DBXTeamLogEventDetailsGroupDescriptionUpdatedDetails + return self as? DBXTeamLogEventDetailsGroupDescriptionUpdatedDetails + } + + @objc + public var asGroupExternalSharingSettingOverrideChangedDetails: DBXTeamLogEventDetailsGroupExternalSharingSettingOverrideChangedDetails? { + return self as? DBXTeamLogEventDetailsGroupExternalSharingSettingOverrideChangedDetails } @objc public var asGroupJoinPolicyUpdatedDetails: DBXTeamLogEventDetailsGroupJoinPolicyUpdatedDetails? { - self as? DBXTeamLogEventDetailsGroupJoinPolicyUpdatedDetails + return self as? DBXTeamLogEventDetailsGroupJoinPolicyUpdatedDetails } @objc public var asGroupMovedDetails: DBXTeamLogEventDetailsGroupMovedDetails? { - self as? DBXTeamLogEventDetailsGroupMovedDetails + return self as? DBXTeamLogEventDetailsGroupMovedDetails } @objc public var asGroupRemoveExternalIdDetails: DBXTeamLogEventDetailsGroupRemoveExternalIdDetails? { - self as? DBXTeamLogEventDetailsGroupRemoveExternalIdDetails + return self as? DBXTeamLogEventDetailsGroupRemoveExternalIdDetails } @objc public var asGroupRemoveMemberDetails: DBXTeamLogEventDetailsGroupRemoveMemberDetails? { - self as? DBXTeamLogEventDetailsGroupRemoveMemberDetails + return self as? DBXTeamLogEventDetailsGroupRemoveMemberDetails } @objc public var asGroupRenameDetails: DBXTeamLogEventDetailsGroupRenameDetails? { - self as? DBXTeamLogEventDetailsGroupRenameDetails + return self as? DBXTeamLogEventDetailsGroupRenameDetails } @objc public var asAccountLockOrUnlockedDetails: DBXTeamLogEventDetailsAccountLockOrUnlockedDetails? { - self as? DBXTeamLogEventDetailsAccountLockOrUnlockedDetails + return self as? DBXTeamLogEventDetailsAccountLockOrUnlockedDetails } @objc public var asEmmErrorDetails: DBXTeamLogEventDetailsEmmErrorDetails? { - self as? DBXTeamLogEventDetailsEmmErrorDetails + return self as? DBXTeamLogEventDetailsEmmErrorDetails } @objc public var asGuestAdminSignedInViaTrustedTeamsDetails: DBXTeamLogEventDetailsGuestAdminSignedInViaTrustedTeamsDetails? { - self as? DBXTeamLogEventDetailsGuestAdminSignedInViaTrustedTeamsDetails + return self as? DBXTeamLogEventDetailsGuestAdminSignedInViaTrustedTeamsDetails } @objc public var asGuestAdminSignedOutViaTrustedTeamsDetails: DBXTeamLogEventDetailsGuestAdminSignedOutViaTrustedTeamsDetails? { - self as? DBXTeamLogEventDetailsGuestAdminSignedOutViaTrustedTeamsDetails + return self as? DBXTeamLogEventDetailsGuestAdminSignedOutViaTrustedTeamsDetails } @objc public var asLoginFailDetails: DBXTeamLogEventDetailsLoginFailDetails? { - self as? DBXTeamLogEventDetailsLoginFailDetails + return self as? DBXTeamLogEventDetailsLoginFailDetails } @objc public var asLoginSuccessDetails: DBXTeamLogEventDetailsLoginSuccessDetails? { - self as? DBXTeamLogEventDetailsLoginSuccessDetails + return self as? DBXTeamLogEventDetailsLoginSuccessDetails } @objc public var asLogoutDetails: DBXTeamLogEventDetailsLogoutDetails? { - self as? DBXTeamLogEventDetailsLogoutDetails + return self as? DBXTeamLogEventDetailsLogoutDetails } @objc public var asResellerSupportSessionEndDetails: DBXTeamLogEventDetailsResellerSupportSessionEndDetails? { - self as? DBXTeamLogEventDetailsResellerSupportSessionEndDetails + return self as? DBXTeamLogEventDetailsResellerSupportSessionEndDetails } @objc public var asResellerSupportSessionStartDetails: DBXTeamLogEventDetailsResellerSupportSessionStartDetails? { - self as? DBXTeamLogEventDetailsResellerSupportSessionStartDetails + return self as? DBXTeamLogEventDetailsResellerSupportSessionStartDetails } @objc public var asSignInAsSessionEndDetails: DBXTeamLogEventDetailsSignInAsSessionEndDetails? { - self as? DBXTeamLogEventDetailsSignInAsSessionEndDetails + return self as? DBXTeamLogEventDetailsSignInAsSessionEndDetails } @objc public var asSignInAsSessionStartDetails: DBXTeamLogEventDetailsSignInAsSessionStartDetails? { - self as? DBXTeamLogEventDetailsSignInAsSessionStartDetails + return self as? DBXTeamLogEventDetailsSignInAsSessionStartDetails } @objc public var asSsoErrorDetails: DBXTeamLogEventDetailsSsoErrorDetails? { - self as? DBXTeamLogEventDetailsSsoErrorDetails + return self as? DBXTeamLogEventDetailsSsoErrorDetails + } + + @objc + public var asAddonAssignedDetails: DBXTeamLogEventDetailsAddonAssignedDetails? { + return self as? DBXTeamLogEventDetailsAddonAssignedDetails + } + + @objc + public var asAddonRemovedDetails: DBXTeamLogEventDetailsAddonRemovedDetails? { + return self as? DBXTeamLogEventDetailsAddonRemovedDetails } @objc public var asBackupAdminInvitationSentDetails: DBXTeamLogEventDetailsBackupAdminInvitationSentDetails? { - self as? DBXTeamLogEventDetailsBackupAdminInvitationSentDetails + return self as? DBXTeamLogEventDetailsBackupAdminInvitationSentDetails } @objc public var asBackupInvitationOpenedDetails: DBXTeamLogEventDetailsBackupInvitationOpenedDetails? { - self as? DBXTeamLogEventDetailsBackupInvitationOpenedDetails + return self as? DBXTeamLogEventDetailsBackupInvitationOpenedDetails } @objc public var asCreateTeamInviteLinkDetails: DBXTeamLogEventDetailsCreateTeamInviteLinkDetails? { - self as? DBXTeamLogEventDetailsCreateTeamInviteLinkDetails + return self as? DBXTeamLogEventDetailsCreateTeamInviteLinkDetails } @objc public var asDeleteTeamInviteLinkDetails: DBXTeamLogEventDetailsDeleteTeamInviteLinkDetails? { - self as? DBXTeamLogEventDetailsDeleteTeamInviteLinkDetails + return self as? DBXTeamLogEventDetailsDeleteTeamInviteLinkDetails } @objc public var asMemberAddExternalIdDetails: DBXTeamLogEventDetailsMemberAddExternalIdDetails? { - self as? DBXTeamLogEventDetailsMemberAddExternalIdDetails + return self as? DBXTeamLogEventDetailsMemberAddExternalIdDetails } @objc public var asMemberAddNameDetails: DBXTeamLogEventDetailsMemberAddNameDetails? { - self as? DBXTeamLogEventDetailsMemberAddNameDetails + return self as? DBXTeamLogEventDetailsMemberAddNameDetails } @objc public var asMemberChangeAdminRoleDetails: DBXTeamLogEventDetailsMemberChangeAdminRoleDetails? { - self as? DBXTeamLogEventDetailsMemberChangeAdminRoleDetails + return self as? DBXTeamLogEventDetailsMemberChangeAdminRoleDetails } @objc public var asMemberChangeEmailDetails: DBXTeamLogEventDetailsMemberChangeEmailDetails? { - self as? DBXTeamLogEventDetailsMemberChangeEmailDetails + return self as? DBXTeamLogEventDetailsMemberChangeEmailDetails } @objc public var asMemberChangeExternalIdDetails: DBXTeamLogEventDetailsMemberChangeExternalIdDetails? { - self as? DBXTeamLogEventDetailsMemberChangeExternalIdDetails + return self as? DBXTeamLogEventDetailsMemberChangeExternalIdDetails } @objc public var asMemberChangeMembershipTypeDetails: DBXTeamLogEventDetailsMemberChangeMembershipTypeDetails? { - self as? DBXTeamLogEventDetailsMemberChangeMembershipTypeDetails + return self as? DBXTeamLogEventDetailsMemberChangeMembershipTypeDetails } @objc public var asMemberChangeNameDetails: DBXTeamLogEventDetailsMemberChangeNameDetails? { - self as? DBXTeamLogEventDetailsMemberChangeNameDetails + return self as? DBXTeamLogEventDetailsMemberChangeNameDetails } @objc public var asMemberChangeResellerRoleDetails: DBXTeamLogEventDetailsMemberChangeResellerRoleDetails? { - self as? DBXTeamLogEventDetailsMemberChangeResellerRoleDetails + return self as? DBXTeamLogEventDetailsMemberChangeResellerRoleDetails } @objc public var asMemberChangeStatusDetails: DBXTeamLogEventDetailsMemberChangeStatusDetails? { - self as? DBXTeamLogEventDetailsMemberChangeStatusDetails + return self as? DBXTeamLogEventDetailsMemberChangeStatusDetails } @objc public var asMemberDeleteManualContactsDetails: DBXTeamLogEventDetailsMemberDeleteManualContactsDetails? { - self as? DBXTeamLogEventDetailsMemberDeleteManualContactsDetails + return self as? DBXTeamLogEventDetailsMemberDeleteManualContactsDetails } @objc public var asMemberDeleteProfilePhotoDetails: DBXTeamLogEventDetailsMemberDeleteProfilePhotoDetails? { - self as? DBXTeamLogEventDetailsMemberDeleteProfilePhotoDetails + return self as? DBXTeamLogEventDetailsMemberDeleteProfilePhotoDetails + } + + @objc + public var asMemberFolderContentsAccessedDetails: DBXTeamLogEventDetailsMemberFolderContentsAccessedDetails? { + return self as? DBXTeamLogEventDetailsMemberFolderContentsAccessedDetails } @objc public var asMemberPermanentlyDeleteAccountContentsDetails: DBXTeamLogEventDetailsMemberPermanentlyDeleteAccountContentsDetails? { - self as? DBXTeamLogEventDetailsMemberPermanentlyDeleteAccountContentsDetails + return self as? DBXTeamLogEventDetailsMemberPermanentlyDeleteAccountContentsDetails } @objc public var asMemberRemoveExternalIdDetails: DBXTeamLogEventDetailsMemberRemoveExternalIdDetails? { - self as? DBXTeamLogEventDetailsMemberRemoveExternalIdDetails + return self as? DBXTeamLogEventDetailsMemberRemoveExternalIdDetails } @objc public var asMemberSetProfilePhotoDetails: DBXTeamLogEventDetailsMemberSetProfilePhotoDetails? { - self as? DBXTeamLogEventDetailsMemberSetProfilePhotoDetails + return self as? DBXTeamLogEventDetailsMemberSetProfilePhotoDetails } @objc public var asMemberSpaceLimitsAddCustomQuotaDetails: DBXTeamLogEventDetailsMemberSpaceLimitsAddCustomQuotaDetails? { - self as? DBXTeamLogEventDetailsMemberSpaceLimitsAddCustomQuotaDetails + return self as? DBXTeamLogEventDetailsMemberSpaceLimitsAddCustomQuotaDetails } @objc public var asMemberSpaceLimitsChangeCustomQuotaDetails: DBXTeamLogEventDetailsMemberSpaceLimitsChangeCustomQuotaDetails? { - self as? DBXTeamLogEventDetailsMemberSpaceLimitsChangeCustomQuotaDetails + return self as? DBXTeamLogEventDetailsMemberSpaceLimitsChangeCustomQuotaDetails } @objc public var asMemberSpaceLimitsChangeStatusDetails: DBXTeamLogEventDetailsMemberSpaceLimitsChangeStatusDetails? { - self as? DBXTeamLogEventDetailsMemberSpaceLimitsChangeStatusDetails + return self as? DBXTeamLogEventDetailsMemberSpaceLimitsChangeStatusDetails } @objc public var asMemberSpaceLimitsRemoveCustomQuotaDetails: DBXTeamLogEventDetailsMemberSpaceLimitsRemoveCustomQuotaDetails? { - self as? DBXTeamLogEventDetailsMemberSpaceLimitsRemoveCustomQuotaDetails + return self as? DBXTeamLogEventDetailsMemberSpaceLimitsRemoveCustomQuotaDetails } @objc public var asMemberSuggestDetails: DBXTeamLogEventDetailsMemberSuggestDetails? { - self as? DBXTeamLogEventDetailsMemberSuggestDetails + return self as? DBXTeamLogEventDetailsMemberSuggestDetails } @objc public var asMemberTransferAccountContentsDetails: DBXTeamLogEventDetailsMemberTransferAccountContentsDetails? { - self as? DBXTeamLogEventDetailsMemberTransferAccountContentsDetails + return self as? DBXTeamLogEventDetailsMemberTransferAccountContentsDetails } @objc public var asPendingSecondaryEmailAddedDetails: DBXTeamLogEventDetailsPendingSecondaryEmailAddedDetails? { - self as? DBXTeamLogEventDetailsPendingSecondaryEmailAddedDetails + return self as? DBXTeamLogEventDetailsPendingSecondaryEmailAddedDetails + } + + @objc + public var asProductAssignedToMemberDetails: DBXTeamLogEventDetailsProductAssignedToMemberDetails? { + return self as? DBXTeamLogEventDetailsProductAssignedToMemberDetails + } + + @objc + public var asProductRemovedFromMemberDetails: DBXTeamLogEventDetailsProductRemovedFromMemberDetails? { + return self as? DBXTeamLogEventDetailsProductRemovedFromMemberDetails } @objc public var asSecondaryEmailDeletedDetails: DBXTeamLogEventDetailsSecondaryEmailDeletedDetails? { - self as? DBXTeamLogEventDetailsSecondaryEmailDeletedDetails + return self as? DBXTeamLogEventDetailsSecondaryEmailDeletedDetails } @objc public var asSecondaryEmailVerifiedDetails: DBXTeamLogEventDetailsSecondaryEmailVerifiedDetails? { - self as? DBXTeamLogEventDetailsSecondaryEmailVerifiedDetails + return self as? DBXTeamLogEventDetailsSecondaryEmailVerifiedDetails } @objc public var asSecondaryMailsPolicyChangedDetails: DBXTeamLogEventDetailsSecondaryMailsPolicyChangedDetails? { - self as? DBXTeamLogEventDetailsSecondaryMailsPolicyChangedDetails + return self as? DBXTeamLogEventDetailsSecondaryMailsPolicyChangedDetails } @objc public var asBinderAddPageDetails: DBXTeamLogEventDetailsBinderAddPageDetails? { - self as? DBXTeamLogEventDetailsBinderAddPageDetails + return self as? DBXTeamLogEventDetailsBinderAddPageDetails } @objc public var asBinderAddSectionDetails: DBXTeamLogEventDetailsBinderAddSectionDetails? { - self as? DBXTeamLogEventDetailsBinderAddSectionDetails + return self as? DBXTeamLogEventDetailsBinderAddSectionDetails } @objc public var asBinderRemovePageDetails: DBXTeamLogEventDetailsBinderRemovePageDetails? { - self as? DBXTeamLogEventDetailsBinderRemovePageDetails + return self as? DBXTeamLogEventDetailsBinderRemovePageDetails } @objc public var asBinderRemoveSectionDetails: DBXTeamLogEventDetailsBinderRemoveSectionDetails? { - self as? DBXTeamLogEventDetailsBinderRemoveSectionDetails + return self as? DBXTeamLogEventDetailsBinderRemoveSectionDetails } @objc public var asBinderRenamePageDetails: DBXTeamLogEventDetailsBinderRenamePageDetails? { - self as? DBXTeamLogEventDetailsBinderRenamePageDetails + return self as? DBXTeamLogEventDetailsBinderRenamePageDetails } @objc public var asBinderRenameSectionDetails: DBXTeamLogEventDetailsBinderRenameSectionDetails? { - self as? DBXTeamLogEventDetailsBinderRenameSectionDetails + return self as? DBXTeamLogEventDetailsBinderRenameSectionDetails } @objc public var asBinderReorderPageDetails: DBXTeamLogEventDetailsBinderReorderPageDetails? { - self as? DBXTeamLogEventDetailsBinderReorderPageDetails + return self as? DBXTeamLogEventDetailsBinderReorderPageDetails } @objc public var asBinderReorderSectionDetails: DBXTeamLogEventDetailsBinderReorderSectionDetails? { - self as? DBXTeamLogEventDetailsBinderReorderSectionDetails + return self as? DBXTeamLogEventDetailsBinderReorderSectionDetails } @objc public var asPaperContentAddMemberDetails: DBXTeamLogEventDetailsPaperContentAddMemberDetails? { - self as? DBXTeamLogEventDetailsPaperContentAddMemberDetails + return self as? DBXTeamLogEventDetailsPaperContentAddMemberDetails } @objc public var asPaperContentAddToFolderDetails: DBXTeamLogEventDetailsPaperContentAddToFolderDetails? { - self as? DBXTeamLogEventDetailsPaperContentAddToFolderDetails + return self as? DBXTeamLogEventDetailsPaperContentAddToFolderDetails } @objc public var asPaperContentArchiveDetails: DBXTeamLogEventDetailsPaperContentArchiveDetails? { - self as? DBXTeamLogEventDetailsPaperContentArchiveDetails + return self as? DBXTeamLogEventDetailsPaperContentArchiveDetails } @objc public var asPaperContentCreateDetails: DBXTeamLogEventDetailsPaperContentCreateDetails? { - self as? DBXTeamLogEventDetailsPaperContentCreateDetails + return self as? DBXTeamLogEventDetailsPaperContentCreateDetails } @objc public var asPaperContentPermanentlyDeleteDetails: DBXTeamLogEventDetailsPaperContentPermanentlyDeleteDetails? { - self as? DBXTeamLogEventDetailsPaperContentPermanentlyDeleteDetails + return self as? DBXTeamLogEventDetailsPaperContentPermanentlyDeleteDetails } @objc public var asPaperContentRemoveFromFolderDetails: DBXTeamLogEventDetailsPaperContentRemoveFromFolderDetails? { - self as? DBXTeamLogEventDetailsPaperContentRemoveFromFolderDetails + return self as? DBXTeamLogEventDetailsPaperContentRemoveFromFolderDetails } @objc public var asPaperContentRemoveMemberDetails: DBXTeamLogEventDetailsPaperContentRemoveMemberDetails? { - self as? DBXTeamLogEventDetailsPaperContentRemoveMemberDetails + return self as? DBXTeamLogEventDetailsPaperContentRemoveMemberDetails } @objc public var asPaperContentRenameDetails: DBXTeamLogEventDetailsPaperContentRenameDetails? { - self as? DBXTeamLogEventDetailsPaperContentRenameDetails + return self as? DBXTeamLogEventDetailsPaperContentRenameDetails } @objc public var asPaperContentRestoreDetails: DBXTeamLogEventDetailsPaperContentRestoreDetails? { - self as? DBXTeamLogEventDetailsPaperContentRestoreDetails + return self as? DBXTeamLogEventDetailsPaperContentRestoreDetails } @objc public var asPaperDocAddCommentDetails: DBXTeamLogEventDetailsPaperDocAddCommentDetails? { - self as? DBXTeamLogEventDetailsPaperDocAddCommentDetails + return self as? DBXTeamLogEventDetailsPaperDocAddCommentDetails } @objc public var asPaperDocChangeMemberRoleDetails: DBXTeamLogEventDetailsPaperDocChangeMemberRoleDetails? { - self as? DBXTeamLogEventDetailsPaperDocChangeMemberRoleDetails + return self as? DBXTeamLogEventDetailsPaperDocChangeMemberRoleDetails } @objc public var asPaperDocChangeSharingPolicyDetails: DBXTeamLogEventDetailsPaperDocChangeSharingPolicyDetails? { - self as? DBXTeamLogEventDetailsPaperDocChangeSharingPolicyDetails + return self as? DBXTeamLogEventDetailsPaperDocChangeSharingPolicyDetails } @objc public var asPaperDocChangeSubscriptionDetails: DBXTeamLogEventDetailsPaperDocChangeSubscriptionDetails? { - self as? DBXTeamLogEventDetailsPaperDocChangeSubscriptionDetails + return self as? DBXTeamLogEventDetailsPaperDocChangeSubscriptionDetails } @objc public var asPaperDocDeletedDetails: DBXTeamLogEventDetailsPaperDocDeletedDetails? { - self as? DBXTeamLogEventDetailsPaperDocDeletedDetails + return self as? DBXTeamLogEventDetailsPaperDocDeletedDetails } @objc public var asPaperDocDeleteCommentDetails: DBXTeamLogEventDetailsPaperDocDeleteCommentDetails? { - self as? DBXTeamLogEventDetailsPaperDocDeleteCommentDetails + return self as? DBXTeamLogEventDetailsPaperDocDeleteCommentDetails } @objc public var asPaperDocDownloadDetails: DBXTeamLogEventDetailsPaperDocDownloadDetails? { - self as? DBXTeamLogEventDetailsPaperDocDownloadDetails + return self as? DBXTeamLogEventDetailsPaperDocDownloadDetails } @objc public var asPaperDocEditDetails: DBXTeamLogEventDetailsPaperDocEditDetails? { - self as? DBXTeamLogEventDetailsPaperDocEditDetails + return self as? DBXTeamLogEventDetailsPaperDocEditDetails } @objc public var asPaperDocEditCommentDetails: DBXTeamLogEventDetailsPaperDocEditCommentDetails? { - self as? DBXTeamLogEventDetailsPaperDocEditCommentDetails + return self as? DBXTeamLogEventDetailsPaperDocEditCommentDetails } @objc public var asPaperDocFollowedDetails: DBXTeamLogEventDetailsPaperDocFollowedDetails? { - self as? DBXTeamLogEventDetailsPaperDocFollowedDetails + return self as? DBXTeamLogEventDetailsPaperDocFollowedDetails } @objc public var asPaperDocMentionDetails: DBXTeamLogEventDetailsPaperDocMentionDetails? { - self as? DBXTeamLogEventDetailsPaperDocMentionDetails + return self as? DBXTeamLogEventDetailsPaperDocMentionDetails } @objc public var asPaperDocOwnershipChangedDetails: DBXTeamLogEventDetailsPaperDocOwnershipChangedDetails? { - self as? DBXTeamLogEventDetailsPaperDocOwnershipChangedDetails + return self as? DBXTeamLogEventDetailsPaperDocOwnershipChangedDetails } @objc public var asPaperDocRequestAccessDetails: DBXTeamLogEventDetailsPaperDocRequestAccessDetails? { - self as? DBXTeamLogEventDetailsPaperDocRequestAccessDetails + return self as? DBXTeamLogEventDetailsPaperDocRequestAccessDetails } @objc public var asPaperDocResolveCommentDetails: DBXTeamLogEventDetailsPaperDocResolveCommentDetails? { - self as? DBXTeamLogEventDetailsPaperDocResolveCommentDetails + return self as? DBXTeamLogEventDetailsPaperDocResolveCommentDetails } @objc public var asPaperDocRevertDetails: DBXTeamLogEventDetailsPaperDocRevertDetails? { - self as? DBXTeamLogEventDetailsPaperDocRevertDetails + return self as? DBXTeamLogEventDetailsPaperDocRevertDetails } @objc public var asPaperDocSlackShareDetails: DBXTeamLogEventDetailsPaperDocSlackShareDetails? { - self as? DBXTeamLogEventDetailsPaperDocSlackShareDetails + return self as? DBXTeamLogEventDetailsPaperDocSlackShareDetails } @objc public var asPaperDocTeamInviteDetails: DBXTeamLogEventDetailsPaperDocTeamInviteDetails? { - self as? DBXTeamLogEventDetailsPaperDocTeamInviteDetails + return self as? DBXTeamLogEventDetailsPaperDocTeamInviteDetails } @objc public var asPaperDocTrashedDetails: DBXTeamLogEventDetailsPaperDocTrashedDetails? { - self as? DBXTeamLogEventDetailsPaperDocTrashedDetails + return self as? DBXTeamLogEventDetailsPaperDocTrashedDetails } @objc public var asPaperDocUnresolveCommentDetails: DBXTeamLogEventDetailsPaperDocUnresolveCommentDetails? { - self as? DBXTeamLogEventDetailsPaperDocUnresolveCommentDetails + return self as? DBXTeamLogEventDetailsPaperDocUnresolveCommentDetails } @objc public var asPaperDocUntrashedDetails: DBXTeamLogEventDetailsPaperDocUntrashedDetails? { - self as? DBXTeamLogEventDetailsPaperDocUntrashedDetails + return self as? DBXTeamLogEventDetailsPaperDocUntrashedDetails } @objc public var asPaperDocViewDetails: DBXTeamLogEventDetailsPaperDocViewDetails? { - self as? DBXTeamLogEventDetailsPaperDocViewDetails + return self as? DBXTeamLogEventDetailsPaperDocViewDetails } @objc public var asPaperExternalViewAllowDetails: DBXTeamLogEventDetailsPaperExternalViewAllowDetails? { - self as? DBXTeamLogEventDetailsPaperExternalViewAllowDetails + return self as? DBXTeamLogEventDetailsPaperExternalViewAllowDetails } @objc public var asPaperExternalViewDefaultTeamDetails: DBXTeamLogEventDetailsPaperExternalViewDefaultTeamDetails? { - self as? DBXTeamLogEventDetailsPaperExternalViewDefaultTeamDetails + return self as? DBXTeamLogEventDetailsPaperExternalViewDefaultTeamDetails } @objc public var asPaperExternalViewForbidDetails: DBXTeamLogEventDetailsPaperExternalViewForbidDetails? { - self as? DBXTeamLogEventDetailsPaperExternalViewForbidDetails + return self as? DBXTeamLogEventDetailsPaperExternalViewForbidDetails } @objc public var asPaperFolderChangeSubscriptionDetails: DBXTeamLogEventDetailsPaperFolderChangeSubscriptionDetails? { - self as? DBXTeamLogEventDetailsPaperFolderChangeSubscriptionDetails + return self as? DBXTeamLogEventDetailsPaperFolderChangeSubscriptionDetails } @objc public var asPaperFolderDeletedDetails: DBXTeamLogEventDetailsPaperFolderDeletedDetails? { - self as? DBXTeamLogEventDetailsPaperFolderDeletedDetails + return self as? DBXTeamLogEventDetailsPaperFolderDeletedDetails } @objc public var asPaperFolderFollowedDetails: DBXTeamLogEventDetailsPaperFolderFollowedDetails? { - self as? DBXTeamLogEventDetailsPaperFolderFollowedDetails + return self as? DBXTeamLogEventDetailsPaperFolderFollowedDetails } @objc public var asPaperFolderTeamInviteDetails: DBXTeamLogEventDetailsPaperFolderTeamInviteDetails? { - self as? DBXTeamLogEventDetailsPaperFolderTeamInviteDetails + return self as? DBXTeamLogEventDetailsPaperFolderTeamInviteDetails } @objc public var asPaperPublishedLinkChangePermissionDetails: DBXTeamLogEventDetailsPaperPublishedLinkChangePermissionDetails? { - self as? DBXTeamLogEventDetailsPaperPublishedLinkChangePermissionDetails + return self as? DBXTeamLogEventDetailsPaperPublishedLinkChangePermissionDetails } @objc public var asPaperPublishedLinkCreateDetails: DBXTeamLogEventDetailsPaperPublishedLinkCreateDetails? { - self as? DBXTeamLogEventDetailsPaperPublishedLinkCreateDetails + return self as? DBXTeamLogEventDetailsPaperPublishedLinkCreateDetails } @objc public var asPaperPublishedLinkDisabledDetails: DBXTeamLogEventDetailsPaperPublishedLinkDisabledDetails? { - self as? DBXTeamLogEventDetailsPaperPublishedLinkDisabledDetails + return self as? DBXTeamLogEventDetailsPaperPublishedLinkDisabledDetails } @objc public var asPaperPublishedLinkViewDetails: DBXTeamLogEventDetailsPaperPublishedLinkViewDetails? { - self as? DBXTeamLogEventDetailsPaperPublishedLinkViewDetails + return self as? DBXTeamLogEventDetailsPaperPublishedLinkViewDetails } @objc public var asPasswordChangeDetails: DBXTeamLogEventDetailsPasswordChangeDetails? { - self as? DBXTeamLogEventDetailsPasswordChangeDetails + return self as? DBXTeamLogEventDetailsPasswordChangeDetails } @objc public var asPasswordResetDetails: DBXTeamLogEventDetailsPasswordResetDetails? { - self as? DBXTeamLogEventDetailsPasswordResetDetails + return self as? DBXTeamLogEventDetailsPasswordResetDetails } @objc public var asPasswordResetAllDetails: DBXTeamLogEventDetailsPasswordResetAllDetails? { - self as? DBXTeamLogEventDetailsPasswordResetAllDetails + return self as? DBXTeamLogEventDetailsPasswordResetAllDetails + } + + @objc + public var asProtectActionAddCollaboratorDetails: DBXTeamLogEventDetailsProtectActionAddCollaboratorDetails? { + return self as? DBXTeamLogEventDetailsProtectActionAddCollaboratorDetails + } + + @objc + public var asProtectActionAddLinkDetails: DBXTeamLogEventDetailsProtectActionAddLinkDetails? { + return self as? DBXTeamLogEventDetailsProtectActionAddLinkDetails + } + + @objc + public var asProtectActionDeleteDetails: DBXTeamLogEventDetailsProtectActionDeleteDetails? { + return self as? DBXTeamLogEventDetailsProtectActionDeleteDetails + } + + @objc + public var asProtectActionExportDetails: DBXTeamLogEventDetailsProtectActionExportDetails? { + return self as? DBXTeamLogEventDetailsProtectActionExportDetails + } + + @objc + public var asProtectActionRemoveCollaboratorDetails: DBXTeamLogEventDetailsProtectActionRemoveCollaboratorDetails? { + return self as? DBXTeamLogEventDetailsProtectActionRemoveCollaboratorDetails + } + + @objc + public var asProtectActionRemoveLinkDetails: DBXTeamLogEventDetailsProtectActionRemoveLinkDetails? { + return self as? DBXTeamLogEventDetailsProtectActionRemoveLinkDetails + } + + @objc + public var asProtectActionStopSharingDetails: DBXTeamLogEventDetailsProtectActionStopSharingDetails? { + return self as? DBXTeamLogEventDetailsProtectActionStopSharingDetails + } + + @objc + public var asProtectInternalDomainsChangedDetails: DBXTeamLogEventDetailsProtectInternalDomainsChangedDetails? { + return self as? DBXTeamLogEventDetailsProtectInternalDomainsChangedDetails } @objc public var asClassificationCreateReportDetails: DBXTeamLogEventDetailsClassificationCreateReportDetails? { - self as? DBXTeamLogEventDetailsClassificationCreateReportDetails + return self as? DBXTeamLogEventDetailsClassificationCreateReportDetails } @objc public var asClassificationCreateReportFailDetails: DBXTeamLogEventDetailsClassificationCreateReportFailDetails? { - self as? DBXTeamLogEventDetailsClassificationCreateReportFailDetails + return self as? DBXTeamLogEventDetailsClassificationCreateReportFailDetails } @objc public var asEmmCreateExceptionsReportDetails: DBXTeamLogEventDetailsEmmCreateExceptionsReportDetails? { - self as? DBXTeamLogEventDetailsEmmCreateExceptionsReportDetails + return self as? DBXTeamLogEventDetailsEmmCreateExceptionsReportDetails } @objc public var asEmmCreateUsageReportDetails: DBXTeamLogEventDetailsEmmCreateUsageReportDetails? { - self as? DBXTeamLogEventDetailsEmmCreateUsageReportDetails + return self as? DBXTeamLogEventDetailsEmmCreateUsageReportDetails } @objc public var asExportMembersReportDetails: DBXTeamLogEventDetailsExportMembersReportDetails? { - self as? DBXTeamLogEventDetailsExportMembersReportDetails + return self as? DBXTeamLogEventDetailsExportMembersReportDetails } @objc public var asExportMembersReportFailDetails: DBXTeamLogEventDetailsExportMembersReportFailDetails? { - self as? DBXTeamLogEventDetailsExportMembersReportFailDetails + return self as? DBXTeamLogEventDetailsExportMembersReportFailDetails } @objc public var asExternalSharingCreateReportDetails: DBXTeamLogEventDetailsExternalSharingCreateReportDetails? { - self as? DBXTeamLogEventDetailsExternalSharingCreateReportDetails + return self as? DBXTeamLogEventDetailsExternalSharingCreateReportDetails } @objc public var asExternalSharingReportFailedDetails: DBXTeamLogEventDetailsExternalSharingReportFailedDetails? { - self as? DBXTeamLogEventDetailsExternalSharingReportFailedDetails + return self as? DBXTeamLogEventDetailsExternalSharingReportFailedDetails + } + + @objc + public var asMemberAccessDetailsCreateReportDetails: DBXTeamLogEventDetailsMemberAccessDetailsCreateReportDetails? { + return self as? DBXTeamLogEventDetailsMemberAccessDetailsCreateReportDetails + } + + @objc + public var asMemberAccessDetailsCreateReportFailedDetails: DBXTeamLogEventDetailsMemberAccessDetailsCreateReportFailedDetails? { + return self as? DBXTeamLogEventDetailsMemberAccessDetailsCreateReportFailedDetails } @objc public var asNoExpirationLinkGenCreateReportDetails: DBXTeamLogEventDetailsNoExpirationLinkGenCreateReportDetails? { - self as? DBXTeamLogEventDetailsNoExpirationLinkGenCreateReportDetails + return self as? DBXTeamLogEventDetailsNoExpirationLinkGenCreateReportDetails } @objc public var asNoExpirationLinkGenReportFailedDetails: DBXTeamLogEventDetailsNoExpirationLinkGenReportFailedDetails? { - self as? DBXTeamLogEventDetailsNoExpirationLinkGenReportFailedDetails + return self as? DBXTeamLogEventDetailsNoExpirationLinkGenReportFailedDetails } @objc public var asNoPasswordLinkGenCreateReportDetails: DBXTeamLogEventDetailsNoPasswordLinkGenCreateReportDetails? { - self as? DBXTeamLogEventDetailsNoPasswordLinkGenCreateReportDetails + return self as? DBXTeamLogEventDetailsNoPasswordLinkGenCreateReportDetails } @objc public var asNoPasswordLinkGenReportFailedDetails: DBXTeamLogEventDetailsNoPasswordLinkGenReportFailedDetails? { - self as? DBXTeamLogEventDetailsNoPasswordLinkGenReportFailedDetails + return self as? DBXTeamLogEventDetailsNoPasswordLinkGenReportFailedDetails } @objc public var asNoPasswordLinkViewCreateReportDetails: DBXTeamLogEventDetailsNoPasswordLinkViewCreateReportDetails? { - self as? DBXTeamLogEventDetailsNoPasswordLinkViewCreateReportDetails + return self as? DBXTeamLogEventDetailsNoPasswordLinkViewCreateReportDetails } @objc public var asNoPasswordLinkViewReportFailedDetails: DBXTeamLogEventDetailsNoPasswordLinkViewReportFailedDetails? { - self as? DBXTeamLogEventDetailsNoPasswordLinkViewReportFailedDetails + return self as? DBXTeamLogEventDetailsNoPasswordLinkViewReportFailedDetails } @objc public var asOutdatedLinkViewCreateReportDetails: DBXTeamLogEventDetailsOutdatedLinkViewCreateReportDetails? { - self as? DBXTeamLogEventDetailsOutdatedLinkViewCreateReportDetails + return self as? DBXTeamLogEventDetailsOutdatedLinkViewCreateReportDetails } @objc public var asOutdatedLinkViewReportFailedDetails: DBXTeamLogEventDetailsOutdatedLinkViewReportFailedDetails? { - self as? DBXTeamLogEventDetailsOutdatedLinkViewReportFailedDetails + return self as? DBXTeamLogEventDetailsOutdatedLinkViewReportFailedDetails } @objc public var asPaperAdminExportStartDetails: DBXTeamLogEventDetailsPaperAdminExportStartDetails? { - self as? DBXTeamLogEventDetailsPaperAdminExportStartDetails + return self as? DBXTeamLogEventDetailsPaperAdminExportStartDetails } @objc public var asRansomwareAlertCreateReportDetails: DBXTeamLogEventDetailsRansomwareAlertCreateReportDetails? { - self as? DBXTeamLogEventDetailsRansomwareAlertCreateReportDetails + return self as? DBXTeamLogEventDetailsRansomwareAlertCreateReportDetails } @objc public var asRansomwareAlertCreateReportFailedDetails: DBXTeamLogEventDetailsRansomwareAlertCreateReportFailedDetails? { - self as? DBXTeamLogEventDetailsRansomwareAlertCreateReportFailedDetails + return self as? DBXTeamLogEventDetailsRansomwareAlertCreateReportFailedDetails + } + + @objc + public var asSharedFoldersCreateReportDetails: DBXTeamLogEventDetailsSharedFoldersCreateReportDetails? { + return self as? DBXTeamLogEventDetailsSharedFoldersCreateReportDetails + } + + @objc + public var asSharedFoldersCreateReportFailedDetails: DBXTeamLogEventDetailsSharedFoldersCreateReportFailedDetails? { + return self as? DBXTeamLogEventDetailsSharedFoldersCreateReportFailedDetails } @objc public var asSmartSyncCreateAdminPrivilegeReportDetails: DBXTeamLogEventDetailsSmartSyncCreateAdminPrivilegeReportDetails? { - self as? DBXTeamLogEventDetailsSmartSyncCreateAdminPrivilegeReportDetails + return self as? DBXTeamLogEventDetailsSmartSyncCreateAdminPrivilegeReportDetails } @objc public var asTeamActivityCreateReportDetails: DBXTeamLogEventDetailsTeamActivityCreateReportDetails? { - self as? DBXTeamLogEventDetailsTeamActivityCreateReportDetails + return self as? DBXTeamLogEventDetailsTeamActivityCreateReportDetails } @objc public var asTeamActivityCreateReportFailDetails: DBXTeamLogEventDetailsTeamActivityCreateReportFailDetails? { - self as? DBXTeamLogEventDetailsTeamActivityCreateReportFailDetails + return self as? DBXTeamLogEventDetailsTeamActivityCreateReportFailDetails + } + + @objc + public var asTeamFoldersCreateReportDetails: DBXTeamLogEventDetailsTeamFoldersCreateReportDetails? { + return self as? DBXTeamLogEventDetailsTeamFoldersCreateReportDetails + } + + @objc + public var asTeamFoldersCreateReportFailedDetails: DBXTeamLogEventDetailsTeamFoldersCreateReportFailedDetails? { + return self as? DBXTeamLogEventDetailsTeamFoldersCreateReportFailedDetails + } + + @objc + public var asTeamStorageCreateReportDetails: DBXTeamLogEventDetailsTeamStorageCreateReportDetails? { + return self as? DBXTeamLogEventDetailsTeamStorageCreateReportDetails + } + + @objc + public var asTeamStorageCreateReportFailedDetails: DBXTeamLogEventDetailsTeamStorageCreateReportFailedDetails? { + return self as? DBXTeamLogEventDetailsTeamStorageCreateReportFailedDetails } @objc public var asCollectionShareDetails: DBXTeamLogEventDetailsCollectionShareDetails? { - self as? DBXTeamLogEventDetailsCollectionShareDetails + return self as? DBXTeamLogEventDetailsCollectionShareDetails } @objc public var asFileTransfersFileAddDetails: DBXTeamLogEventDetailsFileTransfersFileAddDetails? { - self as? DBXTeamLogEventDetailsFileTransfersFileAddDetails + return self as? DBXTeamLogEventDetailsFileTransfersFileAddDetails } @objc public var asFileTransfersTransferDeleteDetails: DBXTeamLogEventDetailsFileTransfersTransferDeleteDetails? { - self as? DBXTeamLogEventDetailsFileTransfersTransferDeleteDetails + return self as? DBXTeamLogEventDetailsFileTransfersTransferDeleteDetails } @objc public var asFileTransfersTransferDownloadDetails: DBXTeamLogEventDetailsFileTransfersTransferDownloadDetails? { - self as? DBXTeamLogEventDetailsFileTransfersTransferDownloadDetails + return self as? DBXTeamLogEventDetailsFileTransfersTransferDownloadDetails } @objc public var asFileTransfersTransferSendDetails: DBXTeamLogEventDetailsFileTransfersTransferSendDetails? { - self as? DBXTeamLogEventDetailsFileTransfersTransferSendDetails + return self as? DBXTeamLogEventDetailsFileTransfersTransferSendDetails } @objc public var asFileTransfersTransferViewDetails: DBXTeamLogEventDetailsFileTransfersTransferViewDetails? { - self as? DBXTeamLogEventDetailsFileTransfersTransferViewDetails + return self as? DBXTeamLogEventDetailsFileTransfersTransferViewDetails + } + + @objc + public var asMediaHubProjectTeamAddDetails: DBXTeamLogEventDetailsMediaHubProjectTeamAddDetails? { + return self as? DBXTeamLogEventDetailsMediaHubProjectTeamAddDetails + } + + @objc + public var asMediaHubProjectTeamDeleteDetails: DBXTeamLogEventDetailsMediaHubProjectTeamDeleteDetails? { + return self as? DBXTeamLogEventDetailsMediaHubProjectTeamDeleteDetails + } + + @objc + public var asMediaHubProjectTeamRoleChangedDetails: DBXTeamLogEventDetailsMediaHubProjectTeamRoleChangedDetails? { + return self as? DBXTeamLogEventDetailsMediaHubProjectTeamRoleChangedDetails + } + + @objc + public var asMediaHubSharedLinkAudienceChangedDetails: DBXTeamLogEventDetailsMediaHubSharedLinkAudienceChangedDetails? { + return self as? DBXTeamLogEventDetailsMediaHubSharedLinkAudienceChangedDetails + } + + @objc + public var asMediaHubSharedLinkCreatedDetails: DBXTeamLogEventDetailsMediaHubSharedLinkCreatedDetails? { + return self as? DBXTeamLogEventDetailsMediaHubSharedLinkCreatedDetails + } + + @objc + public var asMediaHubSharedLinkDownloadSettingChangedDetails: DBXTeamLogEventDetailsMediaHubSharedLinkDownloadSettingChangedDetails? { + return self as? DBXTeamLogEventDetailsMediaHubSharedLinkDownloadSettingChangedDetails + } + + @objc + public var asMediaHubSharedLinkRevokedDetails: DBXTeamLogEventDetailsMediaHubSharedLinkRevokedDetails? { + return self as? DBXTeamLogEventDetailsMediaHubSharedLinkRevokedDetails } @objc public var asNoteAclInviteOnlyDetails: DBXTeamLogEventDetailsNoteAclInviteOnlyDetails? { - self as? DBXTeamLogEventDetailsNoteAclInviteOnlyDetails + return self as? DBXTeamLogEventDetailsNoteAclInviteOnlyDetails } @objc public var asNoteAclLinkDetails: DBXTeamLogEventDetailsNoteAclLinkDetails? { - self as? DBXTeamLogEventDetailsNoteAclLinkDetails + return self as? DBXTeamLogEventDetailsNoteAclLinkDetails } @objc public var asNoteAclTeamLinkDetails: DBXTeamLogEventDetailsNoteAclTeamLinkDetails? { - self as? DBXTeamLogEventDetailsNoteAclTeamLinkDetails + return self as? DBXTeamLogEventDetailsNoteAclTeamLinkDetails } @objc public var asNoteSharedDetails: DBXTeamLogEventDetailsNoteSharedDetails? { - self as? DBXTeamLogEventDetailsNoteSharedDetails + return self as? DBXTeamLogEventDetailsNoteSharedDetails } @objc public var asNoteShareReceiveDetails: DBXTeamLogEventDetailsNoteShareReceiveDetails? { - self as? DBXTeamLogEventDetailsNoteShareReceiveDetails + return self as? DBXTeamLogEventDetailsNoteShareReceiveDetails } @objc public var asOpenNoteSharedDetails: DBXTeamLogEventDetailsOpenNoteSharedDetails? { - self as? DBXTeamLogEventDetailsOpenNoteSharedDetails + return self as? DBXTeamLogEventDetailsOpenNoteSharedDetails } @objc public var asReplayFileSharedLinkCreatedDetails: DBXTeamLogEventDetailsReplayFileSharedLinkCreatedDetails? { - self as? DBXTeamLogEventDetailsReplayFileSharedLinkCreatedDetails + return self as? DBXTeamLogEventDetailsReplayFileSharedLinkCreatedDetails } @objc public var asReplayFileSharedLinkModifiedDetails: DBXTeamLogEventDetailsReplayFileSharedLinkModifiedDetails? { - self as? DBXTeamLogEventDetailsReplayFileSharedLinkModifiedDetails + return self as? DBXTeamLogEventDetailsReplayFileSharedLinkModifiedDetails } @objc public var asReplayProjectTeamAddDetails: DBXTeamLogEventDetailsReplayProjectTeamAddDetails? { - self as? DBXTeamLogEventDetailsReplayProjectTeamAddDetails + return self as? DBXTeamLogEventDetailsReplayProjectTeamAddDetails } @objc public var asReplayProjectTeamDeleteDetails: DBXTeamLogEventDetailsReplayProjectTeamDeleteDetails? { - self as? DBXTeamLogEventDetailsReplayProjectTeamDeleteDetails + return self as? DBXTeamLogEventDetailsReplayProjectTeamDeleteDetails + } + + @objc + public var asSendAndTrackFileAddedDetails: DBXTeamLogEventDetailsSendAndTrackFileAddedDetails? { + return self as? DBXTeamLogEventDetailsSendAndTrackFileAddedDetails + } + + @objc + public var asSendAndTrackFileRenamedDetails: DBXTeamLogEventDetailsSendAndTrackFileRenamedDetails? { + return self as? DBXTeamLogEventDetailsSendAndTrackFileRenamedDetails + } + + @objc + public var asSendAndTrackFileUpdatedDetails: DBXTeamLogEventDetailsSendAndTrackFileUpdatedDetails? { + return self as? DBXTeamLogEventDetailsSendAndTrackFileUpdatedDetails + } + + @objc + public var asSendAndTrackLinkCreatedDetails: DBXTeamLogEventDetailsSendAndTrackLinkCreatedDetails? { + return self as? DBXTeamLogEventDetailsSendAndTrackLinkCreatedDetails + } + + @objc + public var asSendAndTrackLinkDeletedDetails: DBXTeamLogEventDetailsSendAndTrackLinkDeletedDetails? { + return self as? DBXTeamLogEventDetailsSendAndTrackLinkDeletedDetails + } + + @objc + public var asSendAndTrackLinkUpdatedDetails: DBXTeamLogEventDetailsSendAndTrackLinkUpdatedDetails? { + return self as? DBXTeamLogEventDetailsSendAndTrackLinkUpdatedDetails + } + + @objc + public var asSendAndTrackLinkViewedDetails: DBXTeamLogEventDetailsSendAndTrackLinkViewedDetails? { + return self as? DBXTeamLogEventDetailsSendAndTrackLinkViewedDetails + } + + @objc + public var asSendAndTrackRemovedFileAndAssociatedLinksDetails: DBXTeamLogEventDetailsSendAndTrackRemovedFileAndAssociatedLinksDetails? { + return self as? DBXTeamLogEventDetailsSendAndTrackRemovedFileAndAssociatedLinksDetails } @objc public var asSfAddGroupDetails: DBXTeamLogEventDetailsSfAddGroupDetails? { - self as? DBXTeamLogEventDetailsSfAddGroupDetails + return self as? DBXTeamLogEventDetailsSfAddGroupDetails } @objc public var asSfAllowNonMembersToViewSharedLinksDetails: DBXTeamLogEventDetailsSfAllowNonMembersToViewSharedLinksDetails? { - self as? DBXTeamLogEventDetailsSfAllowNonMembersToViewSharedLinksDetails + return self as? DBXTeamLogEventDetailsSfAllowNonMembersToViewSharedLinksDetails } @objc public var asSfExternalInviteWarnDetails: DBXTeamLogEventDetailsSfExternalInviteWarnDetails? { - self as? DBXTeamLogEventDetailsSfExternalInviteWarnDetails + return self as? DBXTeamLogEventDetailsSfExternalInviteWarnDetails } @objc public var asSfFbInviteDetails: DBXTeamLogEventDetailsSfFbInviteDetails? { - self as? DBXTeamLogEventDetailsSfFbInviteDetails + return self as? DBXTeamLogEventDetailsSfFbInviteDetails } @objc public var asSfFbInviteChangeRoleDetails: DBXTeamLogEventDetailsSfFbInviteChangeRoleDetails? { - self as? DBXTeamLogEventDetailsSfFbInviteChangeRoleDetails + return self as? DBXTeamLogEventDetailsSfFbInviteChangeRoleDetails } @objc public var asSfFbUninviteDetails: DBXTeamLogEventDetailsSfFbUninviteDetails? { - self as? DBXTeamLogEventDetailsSfFbUninviteDetails + return self as? DBXTeamLogEventDetailsSfFbUninviteDetails } @objc public var asSfInviteGroupDetails: DBXTeamLogEventDetailsSfInviteGroupDetails? { - self as? DBXTeamLogEventDetailsSfInviteGroupDetails + return self as? DBXTeamLogEventDetailsSfInviteGroupDetails } @objc public var asSfTeamGrantAccessDetails: DBXTeamLogEventDetailsSfTeamGrantAccessDetails? { - self as? DBXTeamLogEventDetailsSfTeamGrantAccessDetails + return self as? DBXTeamLogEventDetailsSfTeamGrantAccessDetails } @objc public var asSfTeamInviteDetails: DBXTeamLogEventDetailsSfTeamInviteDetails? { - self as? DBXTeamLogEventDetailsSfTeamInviteDetails + return self as? DBXTeamLogEventDetailsSfTeamInviteDetails } @objc public var asSfTeamInviteChangeRoleDetails: DBXTeamLogEventDetailsSfTeamInviteChangeRoleDetails? { - self as? DBXTeamLogEventDetailsSfTeamInviteChangeRoleDetails + return self as? DBXTeamLogEventDetailsSfTeamInviteChangeRoleDetails } @objc public var asSfTeamJoinDetails: DBXTeamLogEventDetailsSfTeamJoinDetails? { - self as? DBXTeamLogEventDetailsSfTeamJoinDetails + return self as? DBXTeamLogEventDetailsSfTeamJoinDetails } @objc public var asSfTeamJoinFromOobLinkDetails: DBXTeamLogEventDetailsSfTeamJoinFromOobLinkDetails? { - self as? DBXTeamLogEventDetailsSfTeamJoinFromOobLinkDetails + return self as? DBXTeamLogEventDetailsSfTeamJoinFromOobLinkDetails } @objc public var asSfTeamUninviteDetails: DBXTeamLogEventDetailsSfTeamUninviteDetails? { - self as? DBXTeamLogEventDetailsSfTeamUninviteDetails + return self as? DBXTeamLogEventDetailsSfTeamUninviteDetails } @objc public var asSharedContentAddInviteesDetails: DBXTeamLogEventDetailsSharedContentAddInviteesDetails? { - self as? DBXTeamLogEventDetailsSharedContentAddInviteesDetails + return self as? DBXTeamLogEventDetailsSharedContentAddInviteesDetails } @objc public var asSharedContentAddLinkExpiryDetails: DBXTeamLogEventDetailsSharedContentAddLinkExpiryDetails? { - self as? DBXTeamLogEventDetailsSharedContentAddLinkExpiryDetails + return self as? DBXTeamLogEventDetailsSharedContentAddLinkExpiryDetails } @objc public var asSharedContentAddLinkPasswordDetails: DBXTeamLogEventDetailsSharedContentAddLinkPasswordDetails? { - self as? DBXTeamLogEventDetailsSharedContentAddLinkPasswordDetails + return self as? DBXTeamLogEventDetailsSharedContentAddLinkPasswordDetails } @objc public var asSharedContentAddMemberDetails: DBXTeamLogEventDetailsSharedContentAddMemberDetails? { - self as? DBXTeamLogEventDetailsSharedContentAddMemberDetails + return self as? DBXTeamLogEventDetailsSharedContentAddMemberDetails } @objc public var asSharedContentChangeDownloadsPolicyDetails: DBXTeamLogEventDetailsSharedContentChangeDownloadsPolicyDetails? { - self as? DBXTeamLogEventDetailsSharedContentChangeDownloadsPolicyDetails + return self as? DBXTeamLogEventDetailsSharedContentChangeDownloadsPolicyDetails } @objc public var asSharedContentChangeInviteeRoleDetails: DBXTeamLogEventDetailsSharedContentChangeInviteeRoleDetails? { - self as? DBXTeamLogEventDetailsSharedContentChangeInviteeRoleDetails + return self as? DBXTeamLogEventDetailsSharedContentChangeInviteeRoleDetails } @objc public var asSharedContentChangeLinkAudienceDetails: DBXTeamLogEventDetailsSharedContentChangeLinkAudienceDetails? { - self as? DBXTeamLogEventDetailsSharedContentChangeLinkAudienceDetails + return self as? DBXTeamLogEventDetailsSharedContentChangeLinkAudienceDetails } @objc public var asSharedContentChangeLinkExpiryDetails: DBXTeamLogEventDetailsSharedContentChangeLinkExpiryDetails? { - self as? DBXTeamLogEventDetailsSharedContentChangeLinkExpiryDetails + return self as? DBXTeamLogEventDetailsSharedContentChangeLinkExpiryDetails } @objc public var asSharedContentChangeLinkPasswordDetails: DBXTeamLogEventDetailsSharedContentChangeLinkPasswordDetails? { - self as? DBXTeamLogEventDetailsSharedContentChangeLinkPasswordDetails + return self as? DBXTeamLogEventDetailsSharedContentChangeLinkPasswordDetails } @objc public var asSharedContentChangeMemberRoleDetails: DBXTeamLogEventDetailsSharedContentChangeMemberRoleDetails? { - self as? DBXTeamLogEventDetailsSharedContentChangeMemberRoleDetails + return self as? DBXTeamLogEventDetailsSharedContentChangeMemberRoleDetails } @objc public var asSharedContentChangeViewerInfoPolicyDetails: DBXTeamLogEventDetailsSharedContentChangeViewerInfoPolicyDetails? { - self as? DBXTeamLogEventDetailsSharedContentChangeViewerInfoPolicyDetails + return self as? DBXTeamLogEventDetailsSharedContentChangeViewerInfoPolicyDetails } @objc public var asSharedContentClaimInvitationDetails: DBXTeamLogEventDetailsSharedContentClaimInvitationDetails? { - self as? DBXTeamLogEventDetailsSharedContentClaimInvitationDetails + return self as? DBXTeamLogEventDetailsSharedContentClaimInvitationDetails } @objc public var asSharedContentCopyDetails: DBXTeamLogEventDetailsSharedContentCopyDetails? { - self as? DBXTeamLogEventDetailsSharedContentCopyDetails + return self as? DBXTeamLogEventDetailsSharedContentCopyDetails } @objc public var asSharedContentDownloadDetails: DBXTeamLogEventDetailsSharedContentDownloadDetails? { - self as? DBXTeamLogEventDetailsSharedContentDownloadDetails + return self as? DBXTeamLogEventDetailsSharedContentDownloadDetails } @objc public var asSharedContentRelinquishMembershipDetails: DBXTeamLogEventDetailsSharedContentRelinquishMembershipDetails? { - self as? DBXTeamLogEventDetailsSharedContentRelinquishMembershipDetails + return self as? DBXTeamLogEventDetailsSharedContentRelinquishMembershipDetails } @objc public var asSharedContentRemoveInviteesDetails: DBXTeamLogEventDetailsSharedContentRemoveInviteesDetails? { - self as? DBXTeamLogEventDetailsSharedContentRemoveInviteesDetails + return self as? DBXTeamLogEventDetailsSharedContentRemoveInviteesDetails } @objc public var asSharedContentRemoveLinkExpiryDetails: DBXTeamLogEventDetailsSharedContentRemoveLinkExpiryDetails? { - self as? DBXTeamLogEventDetailsSharedContentRemoveLinkExpiryDetails + return self as? DBXTeamLogEventDetailsSharedContentRemoveLinkExpiryDetails } @objc public var asSharedContentRemoveLinkPasswordDetails: DBXTeamLogEventDetailsSharedContentRemoveLinkPasswordDetails? { - self as? DBXTeamLogEventDetailsSharedContentRemoveLinkPasswordDetails + return self as? DBXTeamLogEventDetailsSharedContentRemoveLinkPasswordDetails } @objc public var asSharedContentRemoveMemberDetails: DBXTeamLogEventDetailsSharedContentRemoveMemberDetails? { - self as? DBXTeamLogEventDetailsSharedContentRemoveMemberDetails + return self as? DBXTeamLogEventDetailsSharedContentRemoveMemberDetails } @objc public var asSharedContentRequestAccessDetails: DBXTeamLogEventDetailsSharedContentRequestAccessDetails? { - self as? DBXTeamLogEventDetailsSharedContentRequestAccessDetails + return self as? DBXTeamLogEventDetailsSharedContentRequestAccessDetails } @objc public var asSharedContentRestoreInviteesDetails: DBXTeamLogEventDetailsSharedContentRestoreInviteesDetails? { - self as? DBXTeamLogEventDetailsSharedContentRestoreInviteesDetails + return self as? DBXTeamLogEventDetailsSharedContentRestoreInviteesDetails } @objc public var asSharedContentRestoreMemberDetails: DBXTeamLogEventDetailsSharedContentRestoreMemberDetails? { - self as? DBXTeamLogEventDetailsSharedContentRestoreMemberDetails + return self as? DBXTeamLogEventDetailsSharedContentRestoreMemberDetails } @objc public var asSharedContentUnshareDetails: DBXTeamLogEventDetailsSharedContentUnshareDetails? { - self as? DBXTeamLogEventDetailsSharedContentUnshareDetails + return self as? DBXTeamLogEventDetailsSharedContentUnshareDetails } @objc public var asSharedContentViewDetails: DBXTeamLogEventDetailsSharedContentViewDetails? { - self as? DBXTeamLogEventDetailsSharedContentViewDetails + return self as? DBXTeamLogEventDetailsSharedContentViewDetails } @objc public var asSharedFolderChangeLinkPolicyDetails: DBXTeamLogEventDetailsSharedFolderChangeLinkPolicyDetails? { - self as? DBXTeamLogEventDetailsSharedFolderChangeLinkPolicyDetails + return self as? DBXTeamLogEventDetailsSharedFolderChangeLinkPolicyDetails } @objc public var asSharedFolderChangeMembersInheritancePolicyDetails: DBXTeamLogEventDetailsSharedFolderChangeMembersInheritancePolicyDetails? { - self as? DBXTeamLogEventDetailsSharedFolderChangeMembersInheritancePolicyDetails + return self as? DBXTeamLogEventDetailsSharedFolderChangeMembersInheritancePolicyDetails } @objc public var asSharedFolderChangeMembersManagementPolicyDetails: DBXTeamLogEventDetailsSharedFolderChangeMembersManagementPolicyDetails? { - self as? DBXTeamLogEventDetailsSharedFolderChangeMembersManagementPolicyDetails + return self as? DBXTeamLogEventDetailsSharedFolderChangeMembersManagementPolicyDetails } @objc public var asSharedFolderChangeMembersPolicyDetails: DBXTeamLogEventDetailsSharedFolderChangeMembersPolicyDetails? { - self as? DBXTeamLogEventDetailsSharedFolderChangeMembersPolicyDetails + return self as? DBXTeamLogEventDetailsSharedFolderChangeMembersPolicyDetails } @objc public var asSharedFolderCreateDetails: DBXTeamLogEventDetailsSharedFolderCreateDetails? { - self as? DBXTeamLogEventDetailsSharedFolderCreateDetails + return self as? DBXTeamLogEventDetailsSharedFolderCreateDetails } @objc public var asSharedFolderDeclineInvitationDetails: DBXTeamLogEventDetailsSharedFolderDeclineInvitationDetails? { - self as? DBXTeamLogEventDetailsSharedFolderDeclineInvitationDetails + return self as? DBXTeamLogEventDetailsSharedFolderDeclineInvitationDetails } @objc public var asSharedFolderMountDetails: DBXTeamLogEventDetailsSharedFolderMountDetails? { - self as? DBXTeamLogEventDetailsSharedFolderMountDetails + return self as? DBXTeamLogEventDetailsSharedFolderMountDetails } @objc public var asSharedFolderNestDetails: DBXTeamLogEventDetailsSharedFolderNestDetails? { - self as? DBXTeamLogEventDetailsSharedFolderNestDetails + return self as? DBXTeamLogEventDetailsSharedFolderNestDetails } @objc public var asSharedFolderTransferOwnershipDetails: DBXTeamLogEventDetailsSharedFolderTransferOwnershipDetails? { - self as? DBXTeamLogEventDetailsSharedFolderTransferOwnershipDetails + return self as? DBXTeamLogEventDetailsSharedFolderTransferOwnershipDetails } @objc public var asSharedFolderUnmountDetails: DBXTeamLogEventDetailsSharedFolderUnmountDetails? { - self as? DBXTeamLogEventDetailsSharedFolderUnmountDetails + return self as? DBXTeamLogEventDetailsSharedFolderUnmountDetails } @objc public var asSharedLinkAddExpiryDetails: DBXTeamLogEventDetailsSharedLinkAddExpiryDetails? { - self as? DBXTeamLogEventDetailsSharedLinkAddExpiryDetails + return self as? DBXTeamLogEventDetailsSharedLinkAddExpiryDetails } @objc public var asSharedLinkChangeExpiryDetails: DBXTeamLogEventDetailsSharedLinkChangeExpiryDetails? { - self as? DBXTeamLogEventDetailsSharedLinkChangeExpiryDetails + return self as? DBXTeamLogEventDetailsSharedLinkChangeExpiryDetails } @objc public var asSharedLinkChangeVisibilityDetails: DBXTeamLogEventDetailsSharedLinkChangeVisibilityDetails? { - self as? DBXTeamLogEventDetailsSharedLinkChangeVisibilityDetails + return self as? DBXTeamLogEventDetailsSharedLinkChangeVisibilityDetails } @objc public var asSharedLinkCopyDetails: DBXTeamLogEventDetailsSharedLinkCopyDetails? { - self as? DBXTeamLogEventDetailsSharedLinkCopyDetails + return self as? DBXTeamLogEventDetailsSharedLinkCopyDetails } @objc public var asSharedLinkCreateDetails: DBXTeamLogEventDetailsSharedLinkCreateDetails? { - self as? DBXTeamLogEventDetailsSharedLinkCreateDetails + return self as? DBXTeamLogEventDetailsSharedLinkCreateDetails } @objc public var asSharedLinkDisableDetails: DBXTeamLogEventDetailsSharedLinkDisableDetails? { - self as? DBXTeamLogEventDetailsSharedLinkDisableDetails + return self as? DBXTeamLogEventDetailsSharedLinkDisableDetails } @objc public var asSharedLinkDownloadDetails: DBXTeamLogEventDetailsSharedLinkDownloadDetails? { - self as? DBXTeamLogEventDetailsSharedLinkDownloadDetails + return self as? DBXTeamLogEventDetailsSharedLinkDownloadDetails } @objc public var asSharedLinkRemoveExpiryDetails: DBXTeamLogEventDetailsSharedLinkRemoveExpiryDetails? { - self as? DBXTeamLogEventDetailsSharedLinkRemoveExpiryDetails + return self as? DBXTeamLogEventDetailsSharedLinkRemoveExpiryDetails + } + + @objc + public var asSharedLinkRemoveVisitorDetails: DBXTeamLogEventDetailsSharedLinkRemoveVisitorDetails? { + return self as? DBXTeamLogEventDetailsSharedLinkRemoveVisitorDetails } @objc public var asSharedLinkSettingsAddExpirationDetails: DBXTeamLogEventDetailsSharedLinkSettingsAddExpirationDetails? { - self as? DBXTeamLogEventDetailsSharedLinkSettingsAddExpirationDetails + return self as? DBXTeamLogEventDetailsSharedLinkSettingsAddExpirationDetails } @objc public var asSharedLinkSettingsAddPasswordDetails: DBXTeamLogEventDetailsSharedLinkSettingsAddPasswordDetails? { - self as? DBXTeamLogEventDetailsSharedLinkSettingsAddPasswordDetails + return self as? DBXTeamLogEventDetailsSharedLinkSettingsAddPasswordDetails } @objc public var asSharedLinkSettingsAllowDownloadDisabledDetails: DBXTeamLogEventDetailsSharedLinkSettingsAllowDownloadDisabledDetails? { - self as? DBXTeamLogEventDetailsSharedLinkSettingsAllowDownloadDisabledDetails + return self as? DBXTeamLogEventDetailsSharedLinkSettingsAllowDownloadDisabledDetails } @objc public var asSharedLinkSettingsAllowDownloadEnabledDetails: DBXTeamLogEventDetailsSharedLinkSettingsAllowDownloadEnabledDetails? { - self as? DBXTeamLogEventDetailsSharedLinkSettingsAllowDownloadEnabledDetails + return self as? DBXTeamLogEventDetailsSharedLinkSettingsAllowDownloadEnabledDetails } @objc public var asSharedLinkSettingsChangeAudienceDetails: DBXTeamLogEventDetailsSharedLinkSettingsChangeAudienceDetails? { - self as? DBXTeamLogEventDetailsSharedLinkSettingsChangeAudienceDetails + return self as? DBXTeamLogEventDetailsSharedLinkSettingsChangeAudienceDetails } @objc public var asSharedLinkSettingsChangeExpirationDetails: DBXTeamLogEventDetailsSharedLinkSettingsChangeExpirationDetails? { - self as? DBXTeamLogEventDetailsSharedLinkSettingsChangeExpirationDetails + return self as? DBXTeamLogEventDetailsSharedLinkSettingsChangeExpirationDetails } @objc public var asSharedLinkSettingsChangePasswordDetails: DBXTeamLogEventDetailsSharedLinkSettingsChangePasswordDetails? { - self as? DBXTeamLogEventDetailsSharedLinkSettingsChangePasswordDetails + return self as? DBXTeamLogEventDetailsSharedLinkSettingsChangePasswordDetails } @objc public var asSharedLinkSettingsRemoveExpirationDetails: DBXTeamLogEventDetailsSharedLinkSettingsRemoveExpirationDetails? { - self as? DBXTeamLogEventDetailsSharedLinkSettingsRemoveExpirationDetails + return self as? DBXTeamLogEventDetailsSharedLinkSettingsRemoveExpirationDetails } @objc public var asSharedLinkSettingsRemovePasswordDetails: DBXTeamLogEventDetailsSharedLinkSettingsRemovePasswordDetails? { - self as? DBXTeamLogEventDetailsSharedLinkSettingsRemovePasswordDetails + return self as? DBXTeamLogEventDetailsSharedLinkSettingsRemovePasswordDetails } @objc public var asSharedLinkShareDetails: DBXTeamLogEventDetailsSharedLinkShareDetails? { - self as? DBXTeamLogEventDetailsSharedLinkShareDetails + return self as? DBXTeamLogEventDetailsSharedLinkShareDetails } @objc public var asSharedLinkViewDetails: DBXTeamLogEventDetailsSharedLinkViewDetails? { - self as? DBXTeamLogEventDetailsSharedLinkViewDetails + return self as? DBXTeamLogEventDetailsSharedLinkViewDetails } @objc public var asSharedNoteOpenedDetails: DBXTeamLogEventDetailsSharedNoteOpenedDetails? { - self as? DBXTeamLogEventDetailsSharedNoteOpenedDetails + return self as? DBXTeamLogEventDetailsSharedNoteOpenedDetails } @objc public var asShmodelDisableDownloadsDetails: DBXTeamLogEventDetailsShmodelDisableDownloadsDetails? { - self as? DBXTeamLogEventDetailsShmodelDisableDownloadsDetails + return self as? DBXTeamLogEventDetailsShmodelDisableDownloadsDetails } @objc public var asShmodelEnableDownloadsDetails: DBXTeamLogEventDetailsShmodelEnableDownloadsDetails? { - self as? DBXTeamLogEventDetailsShmodelEnableDownloadsDetails + return self as? DBXTeamLogEventDetailsShmodelEnableDownloadsDetails } @objc public var asShmodelGroupShareDetails: DBXTeamLogEventDetailsShmodelGroupShareDetails? { - self as? DBXTeamLogEventDetailsShmodelGroupShareDetails + return self as? DBXTeamLogEventDetailsShmodelGroupShareDetails } @objc public var asShowcaseAccessGrantedDetails: DBXTeamLogEventDetailsShowcaseAccessGrantedDetails? { - self as? DBXTeamLogEventDetailsShowcaseAccessGrantedDetails + return self as? DBXTeamLogEventDetailsShowcaseAccessGrantedDetails } @objc public var asShowcaseAddMemberDetails: DBXTeamLogEventDetailsShowcaseAddMemberDetails? { - self as? DBXTeamLogEventDetailsShowcaseAddMemberDetails + return self as? DBXTeamLogEventDetailsShowcaseAddMemberDetails } @objc public var asShowcaseArchivedDetails: DBXTeamLogEventDetailsShowcaseArchivedDetails? { - self as? DBXTeamLogEventDetailsShowcaseArchivedDetails + return self as? DBXTeamLogEventDetailsShowcaseArchivedDetails } @objc public var asShowcaseCreatedDetails: DBXTeamLogEventDetailsShowcaseCreatedDetails? { - self as? DBXTeamLogEventDetailsShowcaseCreatedDetails + return self as? DBXTeamLogEventDetailsShowcaseCreatedDetails } @objc public var asShowcaseDeleteCommentDetails: DBXTeamLogEventDetailsShowcaseDeleteCommentDetails? { - self as? DBXTeamLogEventDetailsShowcaseDeleteCommentDetails + return self as? DBXTeamLogEventDetailsShowcaseDeleteCommentDetails } @objc public var asShowcaseEditedDetails: DBXTeamLogEventDetailsShowcaseEditedDetails? { - self as? DBXTeamLogEventDetailsShowcaseEditedDetails + return self as? DBXTeamLogEventDetailsShowcaseEditedDetails } @objc public var asShowcaseEditCommentDetails: DBXTeamLogEventDetailsShowcaseEditCommentDetails? { - self as? DBXTeamLogEventDetailsShowcaseEditCommentDetails + return self as? DBXTeamLogEventDetailsShowcaseEditCommentDetails } @objc public var asShowcaseFileAddedDetails: DBXTeamLogEventDetailsShowcaseFileAddedDetails? { - self as? DBXTeamLogEventDetailsShowcaseFileAddedDetails + return self as? DBXTeamLogEventDetailsShowcaseFileAddedDetails } @objc public var asShowcaseFileDownloadDetails: DBXTeamLogEventDetailsShowcaseFileDownloadDetails? { - self as? DBXTeamLogEventDetailsShowcaseFileDownloadDetails + return self as? DBXTeamLogEventDetailsShowcaseFileDownloadDetails } @objc public var asShowcaseFileRemovedDetails: DBXTeamLogEventDetailsShowcaseFileRemovedDetails? { - self as? DBXTeamLogEventDetailsShowcaseFileRemovedDetails + return self as? DBXTeamLogEventDetailsShowcaseFileRemovedDetails } @objc public var asShowcaseFileViewDetails: DBXTeamLogEventDetailsShowcaseFileViewDetails? { - self as? DBXTeamLogEventDetailsShowcaseFileViewDetails + return self as? DBXTeamLogEventDetailsShowcaseFileViewDetails } @objc public var asShowcasePermanentlyDeletedDetails: DBXTeamLogEventDetailsShowcasePermanentlyDeletedDetails? { - self as? DBXTeamLogEventDetailsShowcasePermanentlyDeletedDetails + return self as? DBXTeamLogEventDetailsShowcasePermanentlyDeletedDetails } @objc public var asShowcasePostCommentDetails: DBXTeamLogEventDetailsShowcasePostCommentDetails? { - self as? DBXTeamLogEventDetailsShowcasePostCommentDetails + return self as? DBXTeamLogEventDetailsShowcasePostCommentDetails } @objc public var asShowcaseRemoveMemberDetails: DBXTeamLogEventDetailsShowcaseRemoveMemberDetails? { - self as? DBXTeamLogEventDetailsShowcaseRemoveMemberDetails + return self as? DBXTeamLogEventDetailsShowcaseRemoveMemberDetails } @objc public var asShowcaseRenamedDetails: DBXTeamLogEventDetailsShowcaseRenamedDetails? { - self as? DBXTeamLogEventDetailsShowcaseRenamedDetails + return self as? DBXTeamLogEventDetailsShowcaseRenamedDetails } @objc public var asShowcaseRequestAccessDetails: DBXTeamLogEventDetailsShowcaseRequestAccessDetails? { - self as? DBXTeamLogEventDetailsShowcaseRequestAccessDetails + return self as? DBXTeamLogEventDetailsShowcaseRequestAccessDetails } @objc public var asShowcaseResolveCommentDetails: DBXTeamLogEventDetailsShowcaseResolveCommentDetails? { - self as? DBXTeamLogEventDetailsShowcaseResolveCommentDetails + return self as? DBXTeamLogEventDetailsShowcaseResolveCommentDetails } @objc public var asShowcaseRestoredDetails: DBXTeamLogEventDetailsShowcaseRestoredDetails? { - self as? DBXTeamLogEventDetailsShowcaseRestoredDetails + return self as? DBXTeamLogEventDetailsShowcaseRestoredDetails } @objc public var asShowcaseTrashedDetails: DBXTeamLogEventDetailsShowcaseTrashedDetails? { - self as? DBXTeamLogEventDetailsShowcaseTrashedDetails + return self as? DBXTeamLogEventDetailsShowcaseTrashedDetails } @objc public var asShowcaseTrashedDeprecatedDetails: DBXTeamLogEventDetailsShowcaseTrashedDeprecatedDetails? { - self as? DBXTeamLogEventDetailsShowcaseTrashedDeprecatedDetails + return self as? DBXTeamLogEventDetailsShowcaseTrashedDeprecatedDetails } @objc public var asShowcaseUnresolveCommentDetails: DBXTeamLogEventDetailsShowcaseUnresolveCommentDetails? { - self as? DBXTeamLogEventDetailsShowcaseUnresolveCommentDetails + return self as? DBXTeamLogEventDetailsShowcaseUnresolveCommentDetails } @objc public var asShowcaseUntrashedDetails: DBXTeamLogEventDetailsShowcaseUntrashedDetails? { - self as? DBXTeamLogEventDetailsShowcaseUntrashedDetails + return self as? DBXTeamLogEventDetailsShowcaseUntrashedDetails } @objc public var asShowcaseUntrashedDeprecatedDetails: DBXTeamLogEventDetailsShowcaseUntrashedDeprecatedDetails? { - self as? DBXTeamLogEventDetailsShowcaseUntrashedDeprecatedDetails + return self as? DBXTeamLogEventDetailsShowcaseUntrashedDeprecatedDetails } @objc public var asShowcaseViewDetails: DBXTeamLogEventDetailsShowcaseViewDetails? { - self as? DBXTeamLogEventDetailsShowcaseViewDetails + return self as? DBXTeamLogEventDetailsShowcaseViewDetails + } + + @objc + public var asSignSignatureRequestCanceledDetails: DBXTeamLogEventDetailsSignSignatureRequestCanceledDetails? { + return self as? DBXTeamLogEventDetailsSignSignatureRequestCanceledDetails + } + + @objc + public var asSignSignatureRequestCompletedDetails: DBXTeamLogEventDetailsSignSignatureRequestCompletedDetails? { + return self as? DBXTeamLogEventDetailsSignSignatureRequestCompletedDetails + } + + @objc + public var asSignSignatureRequestDeclinedDetails: DBXTeamLogEventDetailsSignSignatureRequestDeclinedDetails? { + return self as? DBXTeamLogEventDetailsSignSignatureRequestDeclinedDetails + } + + @objc + public var asSignSignatureRequestOpenedDetails: DBXTeamLogEventDetailsSignSignatureRequestOpenedDetails? { + return self as? DBXTeamLogEventDetailsSignSignatureRequestOpenedDetails + } + + @objc + public var asSignSignatureRequestReminderSentDetails: DBXTeamLogEventDetailsSignSignatureRequestReminderSentDetails? { + return self as? DBXTeamLogEventDetailsSignSignatureRequestReminderSentDetails + } + + @objc + public var asSignSignatureRequestSentDetails: DBXTeamLogEventDetailsSignSignatureRequestSentDetails? { + return self as? DBXTeamLogEventDetailsSignSignatureRequestSentDetails + } + + @objc + public var asSignTemplateCreatedDetails: DBXTeamLogEventDetailsSignTemplateCreatedDetails? { + return self as? DBXTeamLogEventDetailsSignTemplateCreatedDetails + } + + @objc + public var asSignTemplateSharedDetails: DBXTeamLogEventDetailsSignTemplateSharedDetails? { + return self as? DBXTeamLogEventDetailsSignTemplateSharedDetails + } + + @objc + public var asRiscSecurityEventDetails: DBXTeamLogEventDetailsRiscSecurityEventDetails? { + return self as? DBXTeamLogEventDetailsRiscSecurityEventDetails } @objc public var asSsoAddCertDetails: DBXTeamLogEventDetailsSsoAddCertDetails? { - self as? DBXTeamLogEventDetailsSsoAddCertDetails + return self as? DBXTeamLogEventDetailsSsoAddCertDetails } @objc public var asSsoAddLoginUrlDetails: DBXTeamLogEventDetailsSsoAddLoginUrlDetails? { - self as? DBXTeamLogEventDetailsSsoAddLoginUrlDetails + return self as? DBXTeamLogEventDetailsSsoAddLoginUrlDetails } @objc public var asSsoAddLogoutUrlDetails: DBXTeamLogEventDetailsSsoAddLogoutUrlDetails? { - self as? DBXTeamLogEventDetailsSsoAddLogoutUrlDetails + return self as? DBXTeamLogEventDetailsSsoAddLogoutUrlDetails } @objc public var asSsoChangeCertDetails: DBXTeamLogEventDetailsSsoChangeCertDetails? { - self as? DBXTeamLogEventDetailsSsoChangeCertDetails + return self as? DBXTeamLogEventDetailsSsoChangeCertDetails } @objc public var asSsoChangeLoginUrlDetails: DBXTeamLogEventDetailsSsoChangeLoginUrlDetails? { - self as? DBXTeamLogEventDetailsSsoChangeLoginUrlDetails + return self as? DBXTeamLogEventDetailsSsoChangeLoginUrlDetails } @objc public var asSsoChangeLogoutUrlDetails: DBXTeamLogEventDetailsSsoChangeLogoutUrlDetails? { - self as? DBXTeamLogEventDetailsSsoChangeLogoutUrlDetails + return self as? DBXTeamLogEventDetailsSsoChangeLogoutUrlDetails } @objc public var asSsoChangeSamlIdentityModeDetails: DBXTeamLogEventDetailsSsoChangeSamlIdentityModeDetails? { - self as? DBXTeamLogEventDetailsSsoChangeSamlIdentityModeDetails + return self as? DBXTeamLogEventDetailsSsoChangeSamlIdentityModeDetails } @objc public var asSsoRemoveCertDetails: DBXTeamLogEventDetailsSsoRemoveCertDetails? { - self as? DBXTeamLogEventDetailsSsoRemoveCertDetails + return self as? DBXTeamLogEventDetailsSsoRemoveCertDetails } @objc public var asSsoRemoveLoginUrlDetails: DBXTeamLogEventDetailsSsoRemoveLoginUrlDetails? { - self as? DBXTeamLogEventDetailsSsoRemoveLoginUrlDetails + return self as? DBXTeamLogEventDetailsSsoRemoveLoginUrlDetails } @objc public var asSsoRemoveLogoutUrlDetails: DBXTeamLogEventDetailsSsoRemoveLogoutUrlDetails? { - self as? DBXTeamLogEventDetailsSsoRemoveLogoutUrlDetails + return self as? DBXTeamLogEventDetailsSsoRemoveLogoutUrlDetails } @objc public var asTeamFolderChangeStatusDetails: DBXTeamLogEventDetailsTeamFolderChangeStatusDetails? { - self as? DBXTeamLogEventDetailsTeamFolderChangeStatusDetails + return self as? DBXTeamLogEventDetailsTeamFolderChangeStatusDetails } @objc public var asTeamFolderCreateDetails: DBXTeamLogEventDetailsTeamFolderCreateDetails? { - self as? DBXTeamLogEventDetailsTeamFolderCreateDetails + return self as? DBXTeamLogEventDetailsTeamFolderCreateDetails } @objc public var asTeamFolderDowngradeDetails: DBXTeamLogEventDetailsTeamFolderDowngradeDetails? { - self as? DBXTeamLogEventDetailsTeamFolderDowngradeDetails + return self as? DBXTeamLogEventDetailsTeamFolderDowngradeDetails } @objc public var asTeamFolderPermanentlyDeleteDetails: DBXTeamLogEventDetailsTeamFolderPermanentlyDeleteDetails? { - self as? DBXTeamLogEventDetailsTeamFolderPermanentlyDeleteDetails + return self as? DBXTeamLogEventDetailsTeamFolderPermanentlyDeleteDetails } @objc public var asTeamFolderRenameDetails: DBXTeamLogEventDetailsTeamFolderRenameDetails? { - self as? DBXTeamLogEventDetailsTeamFolderRenameDetails + return self as? DBXTeamLogEventDetailsTeamFolderRenameDetails + } + + @objc + public var asTeamFolderSpaceLimitsChangeCapsTypeDetails: DBXTeamLogEventDetailsTeamFolderSpaceLimitsChangeCapsTypeDetails? { + return self as? DBXTeamLogEventDetailsTeamFolderSpaceLimitsChangeCapsTypeDetails + } + + @objc + public var asTeamFolderSpaceLimitsChangeLimitDetails: DBXTeamLogEventDetailsTeamFolderSpaceLimitsChangeLimitDetails? { + return self as? DBXTeamLogEventDetailsTeamFolderSpaceLimitsChangeLimitDetails + } + + @objc + public var asTeamFolderSpaceLimitsChangeNotificationTargetDetails: DBXTeamLogEventDetailsTeamFolderSpaceLimitsChangeNotificationTargetDetails? { + return self as? DBXTeamLogEventDetailsTeamFolderSpaceLimitsChangeNotificationTargetDetails } @objc public var asTeamSelectiveSyncSettingsChangedDetails: DBXTeamLogEventDetailsTeamSelectiveSyncSettingsChangedDetails? { - self as? DBXTeamLogEventDetailsTeamSelectiveSyncSettingsChangedDetails + return self as? DBXTeamLogEventDetailsTeamSelectiveSyncSettingsChangedDetails } @objc public var asAccountCaptureChangePolicyDetails: DBXTeamLogEventDetailsAccountCaptureChangePolicyDetails? { - self as? DBXTeamLogEventDetailsAccountCaptureChangePolicyDetails + return self as? DBXTeamLogEventDetailsAccountCaptureChangePolicyDetails } @objc public var asAdminEmailRemindersChangedDetails: DBXTeamLogEventDetailsAdminEmailRemindersChangedDetails? { - self as? DBXTeamLogEventDetailsAdminEmailRemindersChangedDetails + return self as? DBXTeamLogEventDetailsAdminEmailRemindersChangedDetails + } + + @objc + public var asAiThirdPartySharingDropboxBasePolicyChangedDetails: DBXTeamLogEventDetailsAiThirdPartySharingDropboxBasePolicyChangedDetails? { + return self as? DBXTeamLogEventDetailsAiThirdPartySharingDropboxBasePolicyChangedDetails } @objc public var asAllowDownloadDisabledDetails: DBXTeamLogEventDetailsAllowDownloadDisabledDetails? { - self as? DBXTeamLogEventDetailsAllowDownloadDisabledDetails + return self as? DBXTeamLogEventDetailsAllowDownloadDisabledDetails } @objc public var asAllowDownloadEnabledDetails: DBXTeamLogEventDetailsAllowDownloadEnabledDetails? { - self as? DBXTeamLogEventDetailsAllowDownloadEnabledDetails + return self as? DBXTeamLogEventDetailsAllowDownloadEnabledDetails + } + + @objc + public var asAppleLoginChangePolicyDetails: DBXTeamLogEventDetailsAppleLoginChangePolicyDetails? { + return self as? DBXTeamLogEventDetailsAppleLoginChangePolicyDetails } @objc public var asAppPermissionsChangedDetails: DBXTeamLogEventDetailsAppPermissionsChangedDetails? { - self as? DBXTeamLogEventDetailsAppPermissionsChangedDetails + return self as? DBXTeamLogEventDetailsAppPermissionsChangedDetails } @objc public var asCameraUploadsPolicyChangedDetails: DBXTeamLogEventDetailsCameraUploadsPolicyChangedDetails? { - self as? DBXTeamLogEventDetailsCameraUploadsPolicyChangedDetails + return self as? DBXTeamLogEventDetailsCameraUploadsPolicyChangedDetails + } + + @objc + public var asCaptureTeamSpacePolicyChangedDetails: DBXTeamLogEventDetailsCaptureTeamSpacePolicyChangedDetails? { + return self as? DBXTeamLogEventDetailsCaptureTeamSpacePolicyChangedDetails } @objc public var asCaptureTranscriptPolicyChangedDetails: DBXTeamLogEventDetailsCaptureTranscriptPolicyChangedDetails? { - self as? DBXTeamLogEventDetailsCaptureTranscriptPolicyChangedDetails + return self as? DBXTeamLogEventDetailsCaptureTranscriptPolicyChangedDetails } @objc public var asClassificationChangePolicyDetails: DBXTeamLogEventDetailsClassificationChangePolicyDetails? { - self as? DBXTeamLogEventDetailsClassificationChangePolicyDetails + return self as? DBXTeamLogEventDetailsClassificationChangePolicyDetails } @objc public var asComputerBackupPolicyChangedDetails: DBXTeamLogEventDetailsComputerBackupPolicyChangedDetails? { - self as? DBXTeamLogEventDetailsComputerBackupPolicyChangedDetails + return self as? DBXTeamLogEventDetailsComputerBackupPolicyChangedDetails } @objc public var asContentAdministrationPolicyChangedDetails: DBXTeamLogEventDetailsContentAdministrationPolicyChangedDetails? { - self as? DBXTeamLogEventDetailsContentAdministrationPolicyChangedDetails + return self as? DBXTeamLogEventDetailsContentAdministrationPolicyChangedDetails + } + + @objc + public var asContentDeletionProtectionChangePolicyDetails: DBXTeamLogEventDetailsContentDeletionProtectionChangePolicyDetails? { + return self as? DBXTeamLogEventDetailsContentDeletionProtectionChangePolicyDetails + } + + @objc + public var asDashExternalSharingPolicyChangedDetails: DBXTeamLogEventDetailsDashExternalSharingPolicyChangedDetails? { + return self as? DBXTeamLogEventDetailsDashExternalSharingPolicyChangedDetails } @objc public var asDataPlacementRestrictionChangePolicyDetails: DBXTeamLogEventDetailsDataPlacementRestrictionChangePolicyDetails? { - self as? DBXTeamLogEventDetailsDataPlacementRestrictionChangePolicyDetails + return self as? DBXTeamLogEventDetailsDataPlacementRestrictionChangePolicyDetails } @objc public var asDataPlacementRestrictionSatisfyPolicyDetails: DBXTeamLogEventDetailsDataPlacementRestrictionSatisfyPolicyDetails? { - self as? DBXTeamLogEventDetailsDataPlacementRestrictionSatisfyPolicyDetails + return self as? DBXTeamLogEventDetailsDataPlacementRestrictionSatisfyPolicyDetails } @objc public var asDeviceApprovalsAddExceptionDetails: DBXTeamLogEventDetailsDeviceApprovalsAddExceptionDetails? { - self as? DBXTeamLogEventDetailsDeviceApprovalsAddExceptionDetails + return self as? DBXTeamLogEventDetailsDeviceApprovalsAddExceptionDetails } @objc public var asDeviceApprovalsChangeDesktopPolicyDetails: DBXTeamLogEventDetailsDeviceApprovalsChangeDesktopPolicyDetails? { - self as? DBXTeamLogEventDetailsDeviceApprovalsChangeDesktopPolicyDetails + return self as? DBXTeamLogEventDetailsDeviceApprovalsChangeDesktopPolicyDetails } @objc public var asDeviceApprovalsChangeMobilePolicyDetails: DBXTeamLogEventDetailsDeviceApprovalsChangeMobilePolicyDetails? { - self as? DBXTeamLogEventDetailsDeviceApprovalsChangeMobilePolicyDetails + return self as? DBXTeamLogEventDetailsDeviceApprovalsChangeMobilePolicyDetails } @objc public var asDeviceApprovalsChangeOverageActionDetails: DBXTeamLogEventDetailsDeviceApprovalsChangeOverageActionDetails? { - self as? DBXTeamLogEventDetailsDeviceApprovalsChangeOverageActionDetails + return self as? DBXTeamLogEventDetailsDeviceApprovalsChangeOverageActionDetails } @objc public var asDeviceApprovalsChangeUnlinkActionDetails: DBXTeamLogEventDetailsDeviceApprovalsChangeUnlinkActionDetails? { - self as? DBXTeamLogEventDetailsDeviceApprovalsChangeUnlinkActionDetails + return self as? DBXTeamLogEventDetailsDeviceApprovalsChangeUnlinkActionDetails } @objc public var asDeviceApprovalsRemoveExceptionDetails: DBXTeamLogEventDetailsDeviceApprovalsRemoveExceptionDetails? { - self as? DBXTeamLogEventDetailsDeviceApprovalsRemoveExceptionDetails + return self as? DBXTeamLogEventDetailsDeviceApprovalsRemoveExceptionDetails } @objc public var asDirectoryRestrictionsAddMembersDetails: DBXTeamLogEventDetailsDirectoryRestrictionsAddMembersDetails? { - self as? DBXTeamLogEventDetailsDirectoryRestrictionsAddMembersDetails + return self as? DBXTeamLogEventDetailsDirectoryRestrictionsAddMembersDetails } @objc public var asDirectoryRestrictionsRemoveMembersDetails: DBXTeamLogEventDetailsDirectoryRestrictionsRemoveMembersDetails? { - self as? DBXTeamLogEventDetailsDirectoryRestrictionsRemoveMembersDetails + return self as? DBXTeamLogEventDetailsDirectoryRestrictionsRemoveMembersDetails } @objc public var asDropboxPasswordsPolicyChangedDetails: DBXTeamLogEventDetailsDropboxPasswordsPolicyChangedDetails? { - self as? DBXTeamLogEventDetailsDropboxPasswordsPolicyChangedDetails + return self as? DBXTeamLogEventDetailsDropboxPasswordsPolicyChangedDetails } @objc public var asEmailIngestPolicyChangedDetails: DBXTeamLogEventDetailsEmailIngestPolicyChangedDetails? { - self as? DBXTeamLogEventDetailsEmailIngestPolicyChangedDetails + return self as? DBXTeamLogEventDetailsEmailIngestPolicyChangedDetails } @objc public var asEmmAddExceptionDetails: DBXTeamLogEventDetailsEmmAddExceptionDetails? { - self as? DBXTeamLogEventDetailsEmmAddExceptionDetails + return self as? DBXTeamLogEventDetailsEmmAddExceptionDetails } @objc public var asEmmChangePolicyDetails: DBXTeamLogEventDetailsEmmChangePolicyDetails? { - self as? DBXTeamLogEventDetailsEmmChangePolicyDetails + return self as? DBXTeamLogEventDetailsEmmChangePolicyDetails } @objc public var asEmmRemoveExceptionDetails: DBXTeamLogEventDetailsEmmRemoveExceptionDetails? { - self as? DBXTeamLogEventDetailsEmmRemoveExceptionDetails + return self as? DBXTeamLogEventDetailsEmmRemoveExceptionDetails } @objc public var asExtendedVersionHistoryChangePolicyDetails: DBXTeamLogEventDetailsExtendedVersionHistoryChangePolicyDetails? { - self as? DBXTeamLogEventDetailsExtendedVersionHistoryChangePolicyDetails + return self as? DBXTeamLogEventDetailsExtendedVersionHistoryChangePolicyDetails } @objc public var asExternalDriveBackupPolicyChangedDetails: DBXTeamLogEventDetailsExternalDriveBackupPolicyChangedDetails? { - self as? DBXTeamLogEventDetailsExternalDriveBackupPolicyChangedDetails + return self as? DBXTeamLogEventDetailsExternalDriveBackupPolicyChangedDetails } @objc public var asFileCommentsChangePolicyDetails: DBXTeamLogEventDetailsFileCommentsChangePolicyDetails? { - self as? DBXTeamLogEventDetailsFileCommentsChangePolicyDetails + return self as? DBXTeamLogEventDetailsFileCommentsChangePolicyDetails } @objc public var asFileLockingPolicyChangedDetails: DBXTeamLogEventDetailsFileLockingPolicyChangedDetails? { - self as? DBXTeamLogEventDetailsFileLockingPolicyChangedDetails + return self as? DBXTeamLogEventDetailsFileLockingPolicyChangedDetails } @objc public var asFileProviderMigrationPolicyChangedDetails: DBXTeamLogEventDetailsFileProviderMigrationPolicyChangedDetails? { - self as? DBXTeamLogEventDetailsFileProviderMigrationPolicyChangedDetails + return self as? DBXTeamLogEventDetailsFileProviderMigrationPolicyChangedDetails } @objc public var asFileRequestsChangePolicyDetails: DBXTeamLogEventDetailsFileRequestsChangePolicyDetails? { - self as? DBXTeamLogEventDetailsFileRequestsChangePolicyDetails + return self as? DBXTeamLogEventDetailsFileRequestsChangePolicyDetails } @objc public var asFileRequestsEmailsEnabledDetails: DBXTeamLogEventDetailsFileRequestsEmailsEnabledDetails? { - self as? DBXTeamLogEventDetailsFileRequestsEmailsEnabledDetails + return self as? DBXTeamLogEventDetailsFileRequestsEmailsEnabledDetails } @objc public var asFileRequestsEmailsRestrictedToTeamOnlyDetails: DBXTeamLogEventDetailsFileRequestsEmailsRestrictedToTeamOnlyDetails? { - self as? DBXTeamLogEventDetailsFileRequestsEmailsRestrictedToTeamOnlyDetails + return self as? DBXTeamLogEventDetailsFileRequestsEmailsRestrictedToTeamOnlyDetails } @objc public var asFileTransfersPolicyChangedDetails: DBXTeamLogEventDetailsFileTransfersPolicyChangedDetails? { - self as? DBXTeamLogEventDetailsFileTransfersPolicyChangedDetails + return self as? DBXTeamLogEventDetailsFileTransfersPolicyChangedDetails + } + + @objc + public var asFlexibleFileNamesPolicyChangedDetails: DBXTeamLogEventDetailsFlexibleFileNamesPolicyChangedDetails? { + return self as? DBXTeamLogEventDetailsFlexibleFileNamesPolicyChangedDetails } @objc public var asFolderLinkRestrictionPolicyChangedDetails: DBXTeamLogEventDetailsFolderLinkRestrictionPolicyChangedDetails? { - self as? DBXTeamLogEventDetailsFolderLinkRestrictionPolicyChangedDetails + return self as? DBXTeamLogEventDetailsFolderLinkRestrictionPolicyChangedDetails } @objc public var asGoogleSsoChangePolicyDetails: DBXTeamLogEventDetailsGoogleSsoChangePolicyDetails? { - self as? DBXTeamLogEventDetailsGoogleSsoChangePolicyDetails + return self as? DBXTeamLogEventDetailsGoogleSsoChangePolicyDetails } @objc public var asGroupUserManagementChangePolicyDetails: DBXTeamLogEventDetailsGroupUserManagementChangePolicyDetails? { - self as? DBXTeamLogEventDetailsGroupUserManagementChangePolicyDetails + return self as? DBXTeamLogEventDetailsGroupUserManagementChangePolicyDetails } @objc public var asIntegrationPolicyChangedDetails: DBXTeamLogEventDetailsIntegrationPolicyChangedDetails? { - self as? DBXTeamLogEventDetailsIntegrationPolicyChangedDetails + return self as? DBXTeamLogEventDetailsIntegrationPolicyChangedDetails } @objc public var asInviteAcceptanceEmailPolicyChangedDetails: DBXTeamLogEventDetailsInviteAcceptanceEmailPolicyChangedDetails? { - self as? DBXTeamLogEventDetailsInviteAcceptanceEmailPolicyChangedDetails + return self as? DBXTeamLogEventDetailsInviteAcceptanceEmailPolicyChangedDetails + } + + @objc + public var asMediaHubAddingPeoplePolicyChangedDetails: DBXTeamLogEventDetailsMediaHubAddingPeoplePolicyChangedDetails? { + return self as? DBXTeamLogEventDetailsMediaHubAddingPeoplePolicyChangedDetails + } + + @objc + public var asMediaHubDownloadPolicyChangedDetails: DBXTeamLogEventDetailsMediaHubDownloadPolicyChangedDetails? { + return self as? DBXTeamLogEventDetailsMediaHubDownloadPolicyChangedDetails + } + + @objc + public var asMediaHubLinkSharingPolicyChangedDetails: DBXTeamLogEventDetailsMediaHubLinkSharingPolicyChangedDetails? { + return self as? DBXTeamLogEventDetailsMediaHubLinkSharingPolicyChangedDetails } @objc public var asMemberRequestsChangePolicyDetails: DBXTeamLogEventDetailsMemberRequestsChangePolicyDetails? { - self as? DBXTeamLogEventDetailsMemberRequestsChangePolicyDetails + return self as? DBXTeamLogEventDetailsMemberRequestsChangePolicyDetails } @objc public var asMemberSendInvitePolicyChangedDetails: DBXTeamLogEventDetailsMemberSendInvitePolicyChangedDetails? { - self as? DBXTeamLogEventDetailsMemberSendInvitePolicyChangedDetails + return self as? DBXTeamLogEventDetailsMemberSendInvitePolicyChangedDetails } @objc public var asMemberSpaceLimitsAddExceptionDetails: DBXTeamLogEventDetailsMemberSpaceLimitsAddExceptionDetails? { - self as? DBXTeamLogEventDetailsMemberSpaceLimitsAddExceptionDetails + return self as? DBXTeamLogEventDetailsMemberSpaceLimitsAddExceptionDetails } @objc public var asMemberSpaceLimitsChangeCapsTypePolicyDetails: DBXTeamLogEventDetailsMemberSpaceLimitsChangeCapsTypePolicyDetails? { - self as? DBXTeamLogEventDetailsMemberSpaceLimitsChangeCapsTypePolicyDetails + return self as? DBXTeamLogEventDetailsMemberSpaceLimitsChangeCapsTypePolicyDetails } @objc public var asMemberSpaceLimitsChangePolicyDetails: DBXTeamLogEventDetailsMemberSpaceLimitsChangePolicyDetails? { - self as? DBXTeamLogEventDetailsMemberSpaceLimitsChangePolicyDetails + return self as? DBXTeamLogEventDetailsMemberSpaceLimitsChangePolicyDetails } @objc public var asMemberSpaceLimitsRemoveExceptionDetails: DBXTeamLogEventDetailsMemberSpaceLimitsRemoveExceptionDetails? { - self as? DBXTeamLogEventDetailsMemberSpaceLimitsRemoveExceptionDetails + return self as? DBXTeamLogEventDetailsMemberSpaceLimitsRemoveExceptionDetails } @objc public var asMemberSuggestionsChangePolicyDetails: DBXTeamLogEventDetailsMemberSuggestionsChangePolicyDetails? { - self as? DBXTeamLogEventDetailsMemberSuggestionsChangePolicyDetails + return self as? DBXTeamLogEventDetailsMemberSuggestionsChangePolicyDetails + } + + @objc + public var asMicrosoftLoginChangePolicyDetails: DBXTeamLogEventDetailsMicrosoftLoginChangePolicyDetails? { + return self as? DBXTeamLogEventDetailsMicrosoftLoginChangePolicyDetails } @objc public var asMicrosoftOfficeAddinChangePolicyDetails: DBXTeamLogEventDetailsMicrosoftOfficeAddinChangePolicyDetails? { - self as? DBXTeamLogEventDetailsMicrosoftOfficeAddinChangePolicyDetails + return self as? DBXTeamLogEventDetailsMicrosoftOfficeAddinChangePolicyDetails + } + + @objc + public var asMultiTeamIdentityPolicyChangedDetails: DBXTeamLogEventDetailsMultiTeamIdentityPolicyChangedDetails? { + return self as? DBXTeamLogEventDetailsMultiTeamIdentityPolicyChangedDetails } @objc public var asNetworkControlChangePolicyDetails: DBXTeamLogEventDetailsNetworkControlChangePolicyDetails? { - self as? DBXTeamLogEventDetailsNetworkControlChangePolicyDetails + return self as? DBXTeamLogEventDetailsNetworkControlChangePolicyDetails } @objc public var asPaperChangeDeploymentPolicyDetails: DBXTeamLogEventDetailsPaperChangeDeploymentPolicyDetails? { - self as? DBXTeamLogEventDetailsPaperChangeDeploymentPolicyDetails + return self as? DBXTeamLogEventDetailsPaperChangeDeploymentPolicyDetails } @objc public var asPaperChangeMemberLinkPolicyDetails: DBXTeamLogEventDetailsPaperChangeMemberLinkPolicyDetails? { - self as? DBXTeamLogEventDetailsPaperChangeMemberLinkPolicyDetails + return self as? DBXTeamLogEventDetailsPaperChangeMemberLinkPolicyDetails } @objc public var asPaperChangeMemberPolicyDetails: DBXTeamLogEventDetailsPaperChangeMemberPolicyDetails? { - self as? DBXTeamLogEventDetailsPaperChangeMemberPolicyDetails + return self as? DBXTeamLogEventDetailsPaperChangeMemberPolicyDetails } @objc public var asPaperChangePolicyDetails: DBXTeamLogEventDetailsPaperChangePolicyDetails? { - self as? DBXTeamLogEventDetailsPaperChangePolicyDetails + return self as? DBXTeamLogEventDetailsPaperChangePolicyDetails } @objc public var asPaperDefaultFolderPolicyChangedDetails: DBXTeamLogEventDetailsPaperDefaultFolderPolicyChangedDetails? { - self as? DBXTeamLogEventDetailsPaperDefaultFolderPolicyChangedDetails + return self as? DBXTeamLogEventDetailsPaperDefaultFolderPolicyChangedDetails } @objc public var asPaperDesktopPolicyChangedDetails: DBXTeamLogEventDetailsPaperDesktopPolicyChangedDetails? { - self as? DBXTeamLogEventDetailsPaperDesktopPolicyChangedDetails + return self as? DBXTeamLogEventDetailsPaperDesktopPolicyChangedDetails } @objc public var asPaperEnabledUsersGroupAdditionDetails: DBXTeamLogEventDetailsPaperEnabledUsersGroupAdditionDetails? { - self as? DBXTeamLogEventDetailsPaperEnabledUsersGroupAdditionDetails + return self as? DBXTeamLogEventDetailsPaperEnabledUsersGroupAdditionDetails } @objc public var asPaperEnabledUsersGroupRemovalDetails: DBXTeamLogEventDetailsPaperEnabledUsersGroupRemovalDetails? { - self as? DBXTeamLogEventDetailsPaperEnabledUsersGroupRemovalDetails + return self as? DBXTeamLogEventDetailsPaperEnabledUsersGroupRemovalDetails + } + + @objc + public var asPasskeyLoginPolicyChangedDetails: DBXTeamLogEventDetailsPasskeyLoginPolicyChangedDetails? { + return self as? DBXTeamLogEventDetailsPasskeyLoginPolicyChangedDetails } @objc public var asPasswordStrengthRequirementsChangePolicyDetails: DBXTeamLogEventDetailsPasswordStrengthRequirementsChangePolicyDetails? { - self as? DBXTeamLogEventDetailsPasswordStrengthRequirementsChangePolicyDetails + return self as? DBXTeamLogEventDetailsPasswordStrengthRequirementsChangePolicyDetails } @objc public var asPermanentDeleteChangePolicyDetails: DBXTeamLogEventDetailsPermanentDeleteChangePolicyDetails? { - self as? DBXTeamLogEventDetailsPermanentDeleteChangePolicyDetails + return self as? DBXTeamLogEventDetailsPermanentDeleteChangePolicyDetails + } + + @objc + public var asPreviewsAiPolicyChangedDetails: DBXTeamLogEventDetailsPreviewsAiPolicyChangedDetails? { + return self as? DBXTeamLogEventDetailsPreviewsAiPolicyChangedDetails + } + + @objc + public var asReplayAddingPeoplePolicyChangedDetails: DBXTeamLogEventDetailsReplayAddingPeoplePolicyChangedDetails? { + return self as? DBXTeamLogEventDetailsReplayAddingPeoplePolicyChangedDetails + } + + @objc + public var asReplaySharingPolicyChangedDetails: DBXTeamLogEventDetailsReplaySharingPolicyChangedDetails? { + return self as? DBXTeamLogEventDetailsReplaySharingPolicyChangedDetails } @objc public var asResellerSupportChangePolicyDetails: DBXTeamLogEventDetailsResellerSupportChangePolicyDetails? { - self as? DBXTeamLogEventDetailsResellerSupportChangePolicyDetails + return self as? DBXTeamLogEventDetailsResellerSupportChangePolicyDetails } @objc public var asRewindPolicyChangedDetails: DBXTeamLogEventDetailsRewindPolicyChangedDetails? { - self as? DBXTeamLogEventDetailsRewindPolicyChangedDetails + return self as? DBXTeamLogEventDetailsRewindPolicyChangedDetails + } + + @objc + public var asSendAndTrackPolicyChangedDetails: DBXTeamLogEventDetailsSendAndTrackPolicyChangedDetails? { + return self as? DBXTeamLogEventDetailsSendAndTrackPolicyChangedDetails + } + + @objc + public var asSendExternalSharingPolicyChangedDetails: DBXTeamLogEventDetailsSendExternalSharingPolicyChangedDetails? { + return self as? DBXTeamLogEventDetailsSendExternalSharingPolicyChangedDetails } @objc public var asSendForSignaturePolicyChangedDetails: DBXTeamLogEventDetailsSendForSignaturePolicyChangedDetails? { - self as? DBXTeamLogEventDetailsSendForSignaturePolicyChangedDetails + return self as? DBXTeamLogEventDetailsSendForSignaturePolicyChangedDetails + } + + @objc + public var asSharedLinkDefaultPermissionsPolicyChangedDetails: DBXTeamLogEventDetailsSharedLinkDefaultPermissionsPolicyChangedDetails? { + return self as? DBXTeamLogEventDetailsSharedLinkDefaultPermissionsPolicyChangedDetails } @objc public var asSharingChangeFolderJoinPolicyDetails: DBXTeamLogEventDetailsSharingChangeFolderJoinPolicyDetails? { - self as? DBXTeamLogEventDetailsSharingChangeFolderJoinPolicyDetails + return self as? DBXTeamLogEventDetailsSharingChangeFolderJoinPolicyDetails } @objc public var asSharingChangeLinkAllowChangeExpirationPolicyDetails: DBXTeamLogEventDetailsSharingChangeLinkAllowChangeExpirationPolicyDetails? { - self as? DBXTeamLogEventDetailsSharingChangeLinkAllowChangeExpirationPolicyDetails + return self as? DBXTeamLogEventDetailsSharingChangeLinkAllowChangeExpirationPolicyDetails } @objc public var asSharingChangeLinkDefaultExpirationPolicyDetails: DBXTeamLogEventDetailsSharingChangeLinkDefaultExpirationPolicyDetails? { - self as? DBXTeamLogEventDetailsSharingChangeLinkDefaultExpirationPolicyDetails + return self as? DBXTeamLogEventDetailsSharingChangeLinkDefaultExpirationPolicyDetails } @objc public var asSharingChangeLinkEnforcePasswordPolicyDetails: DBXTeamLogEventDetailsSharingChangeLinkEnforcePasswordPolicyDetails? { - self as? DBXTeamLogEventDetailsSharingChangeLinkEnforcePasswordPolicyDetails + return self as? DBXTeamLogEventDetailsSharingChangeLinkEnforcePasswordPolicyDetails } @objc public var asSharingChangeLinkPolicyDetails: DBXTeamLogEventDetailsSharingChangeLinkPolicyDetails? { - self as? DBXTeamLogEventDetailsSharingChangeLinkPolicyDetails + return self as? DBXTeamLogEventDetailsSharingChangeLinkPolicyDetails } @objc public var asSharingChangeMemberPolicyDetails: DBXTeamLogEventDetailsSharingChangeMemberPolicyDetails? { - self as? DBXTeamLogEventDetailsSharingChangeMemberPolicyDetails + return self as? DBXTeamLogEventDetailsSharingChangeMemberPolicyDetails } @objc public var asShowcaseChangeDownloadPolicyDetails: DBXTeamLogEventDetailsShowcaseChangeDownloadPolicyDetails? { - self as? DBXTeamLogEventDetailsShowcaseChangeDownloadPolicyDetails + return self as? DBXTeamLogEventDetailsShowcaseChangeDownloadPolicyDetails } @objc public var asShowcaseChangeEnabledPolicyDetails: DBXTeamLogEventDetailsShowcaseChangeEnabledPolicyDetails? { - self as? DBXTeamLogEventDetailsShowcaseChangeEnabledPolicyDetails + return self as? DBXTeamLogEventDetailsShowcaseChangeEnabledPolicyDetails } @objc public var asShowcaseChangeExternalSharingPolicyDetails: DBXTeamLogEventDetailsShowcaseChangeExternalSharingPolicyDetails? { - self as? DBXTeamLogEventDetailsShowcaseChangeExternalSharingPolicyDetails + return self as? DBXTeamLogEventDetailsShowcaseChangeExternalSharingPolicyDetails + } + + @objc + public var asSignExternalSharingPolicyChangedDetails: DBXTeamLogEventDetailsSignExternalSharingPolicyChangedDetails? { + return self as? DBXTeamLogEventDetailsSignExternalSharingPolicyChangedDetails + } + + @objc + public var asSignTemplateCreationPermissionChangedDetails: DBXTeamLogEventDetailsSignTemplateCreationPermissionChangedDetails? { + return self as? DBXTeamLogEventDetailsSignTemplateCreationPermissionChangedDetails } @objc public var asSmarterSmartSyncPolicyChangedDetails: DBXTeamLogEventDetailsSmarterSmartSyncPolicyChangedDetails? { - self as? DBXTeamLogEventDetailsSmarterSmartSyncPolicyChangedDetails + return self as? DBXTeamLogEventDetailsSmarterSmartSyncPolicyChangedDetails } @objc public var asSmartSyncChangePolicyDetails: DBXTeamLogEventDetailsSmartSyncChangePolicyDetails? { - self as? DBXTeamLogEventDetailsSmartSyncChangePolicyDetails + return self as? DBXTeamLogEventDetailsSmartSyncChangePolicyDetails } @objc public var asSmartSyncNotOptOutDetails: DBXTeamLogEventDetailsSmartSyncNotOptOutDetails? { - self as? DBXTeamLogEventDetailsSmartSyncNotOptOutDetails + return self as? DBXTeamLogEventDetailsSmartSyncNotOptOutDetails } @objc public var asSmartSyncOptOutDetails: DBXTeamLogEventDetailsSmartSyncOptOutDetails? { - self as? DBXTeamLogEventDetailsSmartSyncOptOutDetails + return self as? DBXTeamLogEventDetailsSmartSyncOptOutDetails } @objc public var asSsoChangePolicyDetails: DBXTeamLogEventDetailsSsoChangePolicyDetails? { - self as? DBXTeamLogEventDetailsSsoChangePolicyDetails + return self as? DBXTeamLogEventDetailsSsoChangePolicyDetails + } + + @objc + public var asStackCrossTeamAccessPolicyChangedDetails: DBXTeamLogEventDetailsStackCrossTeamAccessPolicyChangedDetails? { + return self as? DBXTeamLogEventDetailsStackCrossTeamAccessPolicyChangedDetails } @objc public var asTeamBrandingPolicyChangedDetails: DBXTeamLogEventDetailsTeamBrandingPolicyChangedDetails? { - self as? DBXTeamLogEventDetailsTeamBrandingPolicyChangedDetails + return self as? DBXTeamLogEventDetailsTeamBrandingPolicyChangedDetails } @objc public var asTeamExtensionsPolicyChangedDetails: DBXTeamLogEventDetailsTeamExtensionsPolicyChangedDetails? { - self as? DBXTeamLogEventDetailsTeamExtensionsPolicyChangedDetails + return self as? DBXTeamLogEventDetailsTeamExtensionsPolicyChangedDetails + } + + @objc + public var asTeamMemberStorageRequestPolicyChangedDetails: DBXTeamLogEventDetailsTeamMemberStorageRequestPolicyChangedDetails? { + return self as? DBXTeamLogEventDetailsTeamMemberStorageRequestPolicyChangedDetails } @objc public var asTeamSelectiveSyncPolicyChangedDetails: DBXTeamLogEventDetailsTeamSelectiveSyncPolicyChangedDetails? { - self as? DBXTeamLogEventDetailsTeamSelectiveSyncPolicyChangedDetails + return self as? DBXTeamLogEventDetailsTeamSelectiveSyncPolicyChangedDetails } @objc public var asTeamSharingWhitelistSubjectsChangedDetails: DBXTeamLogEventDetailsTeamSharingWhitelistSubjectsChangedDetails? { - self as? DBXTeamLogEventDetailsTeamSharingWhitelistSubjectsChangedDetails + return self as? DBXTeamLogEventDetailsTeamSharingWhitelistSubjectsChangedDetails } @objc public var asTfaAddExceptionDetails: DBXTeamLogEventDetailsTfaAddExceptionDetails? { - self as? DBXTeamLogEventDetailsTfaAddExceptionDetails + return self as? DBXTeamLogEventDetailsTfaAddExceptionDetails } @objc public var asTfaChangePolicyDetails: DBXTeamLogEventDetailsTfaChangePolicyDetails? { - self as? DBXTeamLogEventDetailsTfaChangePolicyDetails + return self as? DBXTeamLogEventDetailsTfaChangePolicyDetails } @objc public var asTfaRemoveExceptionDetails: DBXTeamLogEventDetailsTfaRemoveExceptionDetails? { - self as? DBXTeamLogEventDetailsTfaRemoveExceptionDetails + return self as? DBXTeamLogEventDetailsTfaRemoveExceptionDetails + } + + @objc + public var asTopLevelContentPolicyChangedDetails: DBXTeamLogEventDetailsTopLevelContentPolicyChangedDetails? { + return self as? DBXTeamLogEventDetailsTopLevelContentPolicyChangedDetails } @objc public var asTwoAccountChangePolicyDetails: DBXTeamLogEventDetailsTwoAccountChangePolicyDetails? { - self as? DBXTeamLogEventDetailsTwoAccountChangePolicyDetails + return self as? DBXTeamLogEventDetailsTwoAccountChangePolicyDetails } @objc public var asViewerInfoPolicyChangedDetails: DBXTeamLogEventDetailsViewerInfoPolicyChangedDetails? { - self as? DBXTeamLogEventDetailsViewerInfoPolicyChangedDetails + return self as? DBXTeamLogEventDetailsViewerInfoPolicyChangedDetails } @objc public var asWatermarkingPolicyChangedDetails: DBXTeamLogEventDetailsWatermarkingPolicyChangedDetails? { - self as? DBXTeamLogEventDetailsWatermarkingPolicyChangedDetails + return self as? DBXTeamLogEventDetailsWatermarkingPolicyChangedDetails } @objc public var asWebSessionsChangeActiveSessionLimitDetails: DBXTeamLogEventDetailsWebSessionsChangeActiveSessionLimitDetails? { - self as? DBXTeamLogEventDetailsWebSessionsChangeActiveSessionLimitDetails + return self as? DBXTeamLogEventDetailsWebSessionsChangeActiveSessionLimitDetails } @objc public var asWebSessionsChangeFixedLengthPolicyDetails: DBXTeamLogEventDetailsWebSessionsChangeFixedLengthPolicyDetails? { - self as? DBXTeamLogEventDetailsWebSessionsChangeFixedLengthPolicyDetails + return self as? DBXTeamLogEventDetailsWebSessionsChangeFixedLengthPolicyDetails } @objc public var asWebSessionsChangeIdleLengthPolicyDetails: DBXTeamLogEventDetailsWebSessionsChangeIdleLengthPolicyDetails? { - self as? DBXTeamLogEventDetailsWebSessionsChangeIdleLengthPolicyDetails + return self as? DBXTeamLogEventDetailsWebSessionsChangeIdleLengthPolicyDetails } @objc public var asDataResidencyMigrationRequestSuccessfulDetails: DBXTeamLogEventDetailsDataResidencyMigrationRequestSuccessfulDetails? { - self as? DBXTeamLogEventDetailsDataResidencyMigrationRequestSuccessfulDetails + return self as? DBXTeamLogEventDetailsDataResidencyMigrationRequestSuccessfulDetails } @objc public var asDataResidencyMigrationRequestUnsuccessfulDetails: DBXTeamLogEventDetailsDataResidencyMigrationRequestUnsuccessfulDetails? { - self as? DBXTeamLogEventDetailsDataResidencyMigrationRequestUnsuccessfulDetails + return self as? DBXTeamLogEventDetailsDataResidencyMigrationRequestUnsuccessfulDetails } @objc public var asTeamMergeFromDetails: DBXTeamLogEventDetailsTeamMergeFromDetails? { - self as? DBXTeamLogEventDetailsTeamMergeFromDetails + return self as? DBXTeamLogEventDetailsTeamMergeFromDetails } @objc public var asTeamMergeToDetails: DBXTeamLogEventDetailsTeamMergeToDetails? { - self as? DBXTeamLogEventDetailsTeamMergeToDetails + return self as? DBXTeamLogEventDetailsTeamMergeToDetails } @objc public var asTeamProfileAddBackgroundDetails: DBXTeamLogEventDetailsTeamProfileAddBackgroundDetails? { - self as? DBXTeamLogEventDetailsTeamProfileAddBackgroundDetails + return self as? DBXTeamLogEventDetailsTeamProfileAddBackgroundDetails } @objc public var asTeamProfileAddLogoDetails: DBXTeamLogEventDetailsTeamProfileAddLogoDetails? { - self as? DBXTeamLogEventDetailsTeamProfileAddLogoDetails + return self as? DBXTeamLogEventDetailsTeamProfileAddLogoDetails } @objc public var asTeamProfileChangeBackgroundDetails: DBXTeamLogEventDetailsTeamProfileChangeBackgroundDetails? { - self as? DBXTeamLogEventDetailsTeamProfileChangeBackgroundDetails + return self as? DBXTeamLogEventDetailsTeamProfileChangeBackgroundDetails } @objc public var asTeamProfileChangeDefaultLanguageDetails: DBXTeamLogEventDetailsTeamProfileChangeDefaultLanguageDetails? { - self as? DBXTeamLogEventDetailsTeamProfileChangeDefaultLanguageDetails + return self as? DBXTeamLogEventDetailsTeamProfileChangeDefaultLanguageDetails } @objc public var asTeamProfileChangeLogoDetails: DBXTeamLogEventDetailsTeamProfileChangeLogoDetails? { - self as? DBXTeamLogEventDetailsTeamProfileChangeLogoDetails + return self as? DBXTeamLogEventDetailsTeamProfileChangeLogoDetails } @objc public var asTeamProfileChangeNameDetails: DBXTeamLogEventDetailsTeamProfileChangeNameDetails? { - self as? DBXTeamLogEventDetailsTeamProfileChangeNameDetails + return self as? DBXTeamLogEventDetailsTeamProfileChangeNameDetails } @objc public var asTeamProfileRemoveBackgroundDetails: DBXTeamLogEventDetailsTeamProfileRemoveBackgroundDetails? { - self as? DBXTeamLogEventDetailsTeamProfileRemoveBackgroundDetails + return self as? DBXTeamLogEventDetailsTeamProfileRemoveBackgroundDetails } @objc public var asTeamProfileRemoveLogoDetails: DBXTeamLogEventDetailsTeamProfileRemoveLogoDetails? { - self as? DBXTeamLogEventDetailsTeamProfileRemoveLogoDetails + return self as? DBXTeamLogEventDetailsTeamProfileRemoveLogoDetails + } + + @objc + public var asPasskeyAddDetails: DBXTeamLogEventDetailsPasskeyAddDetails? { + return self as? DBXTeamLogEventDetailsPasskeyAddDetails + } + + @objc + public var asPasskeyRemoveDetails: DBXTeamLogEventDetailsPasskeyRemoveDetails? { + return self as? DBXTeamLogEventDetailsPasskeyRemoveDetails } @objc public var asTfaAddBackupPhoneDetails: DBXTeamLogEventDetailsTfaAddBackupPhoneDetails? { - self as? DBXTeamLogEventDetailsTfaAddBackupPhoneDetails + return self as? DBXTeamLogEventDetailsTfaAddBackupPhoneDetails } @objc public var asTfaAddSecurityKeyDetails: DBXTeamLogEventDetailsTfaAddSecurityKeyDetails? { - self as? DBXTeamLogEventDetailsTfaAddSecurityKeyDetails + return self as? DBXTeamLogEventDetailsTfaAddSecurityKeyDetails } @objc public var asTfaChangeBackupPhoneDetails: DBXTeamLogEventDetailsTfaChangeBackupPhoneDetails? { - self as? DBXTeamLogEventDetailsTfaChangeBackupPhoneDetails + return self as? DBXTeamLogEventDetailsTfaChangeBackupPhoneDetails } @objc public var asTfaChangeStatusDetails: DBXTeamLogEventDetailsTfaChangeStatusDetails? { - self as? DBXTeamLogEventDetailsTfaChangeStatusDetails + return self as? DBXTeamLogEventDetailsTfaChangeStatusDetails } @objc public var asTfaRemoveBackupPhoneDetails: DBXTeamLogEventDetailsTfaRemoveBackupPhoneDetails? { - self as? DBXTeamLogEventDetailsTfaRemoveBackupPhoneDetails + return self as? DBXTeamLogEventDetailsTfaRemoveBackupPhoneDetails } @objc public var asTfaRemoveSecurityKeyDetails: DBXTeamLogEventDetailsTfaRemoveSecurityKeyDetails? { - self as? DBXTeamLogEventDetailsTfaRemoveSecurityKeyDetails + return self as? DBXTeamLogEventDetailsTfaRemoveSecurityKeyDetails } @objc public var asTfaResetDetails: DBXTeamLogEventDetailsTfaResetDetails? { - self as? DBXTeamLogEventDetailsTfaResetDetails + return self as? DBXTeamLogEventDetailsTfaResetDetails } @objc public var asChangedEnterpriseAdminRoleDetails: DBXTeamLogEventDetailsChangedEnterpriseAdminRoleDetails? { - self as? DBXTeamLogEventDetailsChangedEnterpriseAdminRoleDetails + return self as? DBXTeamLogEventDetailsChangedEnterpriseAdminRoleDetails } @objc public var asChangedEnterpriseConnectedTeamStatusDetails: DBXTeamLogEventDetailsChangedEnterpriseConnectedTeamStatusDetails? { - self as? DBXTeamLogEventDetailsChangedEnterpriseConnectedTeamStatusDetails + return self as? DBXTeamLogEventDetailsChangedEnterpriseConnectedTeamStatusDetails } @objc public var asEndedEnterpriseAdminSessionDetails: DBXTeamLogEventDetailsEndedEnterpriseAdminSessionDetails? { - self as? DBXTeamLogEventDetailsEndedEnterpriseAdminSessionDetails + return self as? DBXTeamLogEventDetailsEndedEnterpriseAdminSessionDetails } @objc public var asEndedEnterpriseAdminSessionDeprecatedDetails: DBXTeamLogEventDetailsEndedEnterpriseAdminSessionDeprecatedDetails? { - self as? DBXTeamLogEventDetailsEndedEnterpriseAdminSessionDeprecatedDetails + return self as? DBXTeamLogEventDetailsEndedEnterpriseAdminSessionDeprecatedDetails } @objc public var asEnterpriseSettingsLockingDetails: DBXTeamLogEventDetailsEnterpriseSettingsLockingDetails? { - self as? DBXTeamLogEventDetailsEnterpriseSettingsLockingDetails + return self as? DBXTeamLogEventDetailsEnterpriseSettingsLockingDetails } @objc public var asGuestAdminChangeStatusDetails: DBXTeamLogEventDetailsGuestAdminChangeStatusDetails? { - self as? DBXTeamLogEventDetailsGuestAdminChangeStatusDetails + return self as? DBXTeamLogEventDetailsGuestAdminChangeStatusDetails } @objc public var asStartedEnterpriseAdminSessionDetails: DBXTeamLogEventDetailsStartedEnterpriseAdminSessionDetails? { - self as? DBXTeamLogEventDetailsStartedEnterpriseAdminSessionDetails + return self as? DBXTeamLogEventDetailsStartedEnterpriseAdminSessionDetails } @objc public var asTeamMergeRequestAcceptedDetails: DBXTeamLogEventDetailsTeamMergeRequestAcceptedDetails? { - self as? DBXTeamLogEventDetailsTeamMergeRequestAcceptedDetails + return self as? DBXTeamLogEventDetailsTeamMergeRequestAcceptedDetails } @objc public var asTeamMergeRequestAcceptedShownToPrimaryTeamDetails: DBXTeamLogEventDetailsTeamMergeRequestAcceptedShownToPrimaryTeamDetails? { - self as? DBXTeamLogEventDetailsTeamMergeRequestAcceptedShownToPrimaryTeamDetails + return self as? DBXTeamLogEventDetailsTeamMergeRequestAcceptedShownToPrimaryTeamDetails } @objc public var asTeamMergeRequestAcceptedShownToSecondaryTeamDetails: DBXTeamLogEventDetailsTeamMergeRequestAcceptedShownToSecondaryTeamDetails? { - self as? DBXTeamLogEventDetailsTeamMergeRequestAcceptedShownToSecondaryTeamDetails + return self as? DBXTeamLogEventDetailsTeamMergeRequestAcceptedShownToSecondaryTeamDetails } @objc public var asTeamMergeRequestAutoCanceledDetails: DBXTeamLogEventDetailsTeamMergeRequestAutoCanceledDetails? { - self as? DBXTeamLogEventDetailsTeamMergeRequestAutoCanceledDetails + return self as? DBXTeamLogEventDetailsTeamMergeRequestAutoCanceledDetails } @objc public var asTeamMergeRequestCanceledDetails: DBXTeamLogEventDetailsTeamMergeRequestCanceledDetails? { - self as? DBXTeamLogEventDetailsTeamMergeRequestCanceledDetails + return self as? DBXTeamLogEventDetailsTeamMergeRequestCanceledDetails } @objc public var asTeamMergeRequestCanceledShownToPrimaryTeamDetails: DBXTeamLogEventDetailsTeamMergeRequestCanceledShownToPrimaryTeamDetails? { - self as? DBXTeamLogEventDetailsTeamMergeRequestCanceledShownToPrimaryTeamDetails + return self as? DBXTeamLogEventDetailsTeamMergeRequestCanceledShownToPrimaryTeamDetails } @objc public var asTeamMergeRequestCanceledShownToSecondaryTeamDetails: DBXTeamLogEventDetailsTeamMergeRequestCanceledShownToSecondaryTeamDetails? { - self as? DBXTeamLogEventDetailsTeamMergeRequestCanceledShownToSecondaryTeamDetails + return self as? DBXTeamLogEventDetailsTeamMergeRequestCanceledShownToSecondaryTeamDetails } @objc public var asTeamMergeRequestExpiredDetails: DBXTeamLogEventDetailsTeamMergeRequestExpiredDetails? { - self as? DBXTeamLogEventDetailsTeamMergeRequestExpiredDetails + return self as? DBXTeamLogEventDetailsTeamMergeRequestExpiredDetails } @objc public var asTeamMergeRequestExpiredShownToPrimaryTeamDetails: DBXTeamLogEventDetailsTeamMergeRequestExpiredShownToPrimaryTeamDetails? { - self as? DBXTeamLogEventDetailsTeamMergeRequestExpiredShownToPrimaryTeamDetails + return self as? DBXTeamLogEventDetailsTeamMergeRequestExpiredShownToPrimaryTeamDetails } @objc public var asTeamMergeRequestExpiredShownToSecondaryTeamDetails: DBXTeamLogEventDetailsTeamMergeRequestExpiredShownToSecondaryTeamDetails? { - self as? DBXTeamLogEventDetailsTeamMergeRequestExpiredShownToSecondaryTeamDetails + return self as? DBXTeamLogEventDetailsTeamMergeRequestExpiredShownToSecondaryTeamDetails } @objc public var asTeamMergeRequestRejectedShownToPrimaryTeamDetails: DBXTeamLogEventDetailsTeamMergeRequestRejectedShownToPrimaryTeamDetails? { - self as? DBXTeamLogEventDetailsTeamMergeRequestRejectedShownToPrimaryTeamDetails + return self as? DBXTeamLogEventDetailsTeamMergeRequestRejectedShownToPrimaryTeamDetails } @objc public var asTeamMergeRequestRejectedShownToSecondaryTeamDetails: DBXTeamLogEventDetailsTeamMergeRequestRejectedShownToSecondaryTeamDetails? { - self as? DBXTeamLogEventDetailsTeamMergeRequestRejectedShownToSecondaryTeamDetails + return self as? DBXTeamLogEventDetailsTeamMergeRequestRejectedShownToSecondaryTeamDetails } @objc public var asTeamMergeRequestReminderDetails: DBXTeamLogEventDetailsTeamMergeRequestReminderDetails? { - self as? DBXTeamLogEventDetailsTeamMergeRequestReminderDetails + return self as? DBXTeamLogEventDetailsTeamMergeRequestReminderDetails } @objc public var asTeamMergeRequestReminderShownToPrimaryTeamDetails: DBXTeamLogEventDetailsTeamMergeRequestReminderShownToPrimaryTeamDetails? { - self as? DBXTeamLogEventDetailsTeamMergeRequestReminderShownToPrimaryTeamDetails + return self as? DBXTeamLogEventDetailsTeamMergeRequestReminderShownToPrimaryTeamDetails } @objc public var asTeamMergeRequestReminderShownToSecondaryTeamDetails: DBXTeamLogEventDetailsTeamMergeRequestReminderShownToSecondaryTeamDetails? { - self as? DBXTeamLogEventDetailsTeamMergeRequestReminderShownToSecondaryTeamDetails + return self as? DBXTeamLogEventDetailsTeamMergeRequestReminderShownToSecondaryTeamDetails } @objc public var asTeamMergeRequestRevokedDetails: DBXTeamLogEventDetailsTeamMergeRequestRevokedDetails? { - self as? DBXTeamLogEventDetailsTeamMergeRequestRevokedDetails + return self as? DBXTeamLogEventDetailsTeamMergeRequestRevokedDetails } @objc public var asTeamMergeRequestSentShownToPrimaryTeamDetails: DBXTeamLogEventDetailsTeamMergeRequestSentShownToPrimaryTeamDetails? { - self as? DBXTeamLogEventDetailsTeamMergeRequestSentShownToPrimaryTeamDetails + return self as? DBXTeamLogEventDetailsTeamMergeRequestSentShownToPrimaryTeamDetails } @objc public var asTeamMergeRequestSentShownToSecondaryTeamDetails: DBXTeamLogEventDetailsTeamMergeRequestSentShownToSecondaryTeamDetails? { - self as? DBXTeamLogEventDetailsTeamMergeRequestSentShownToSecondaryTeamDetails + return self as? DBXTeamLogEventDetailsTeamMergeRequestSentShownToSecondaryTeamDetails } @objc public var asMissingDetails: DBXTeamLogEventDetailsMissingDetails? { - self as? DBXTeamLogEventDetailsMissingDetails + return self as? DBXTeamLogEventDetailsMissingDetails } @objc public var asOther: DBXTeamLogEventDetailsOther? { - self as? DBXTeamLogEventDetailsOther + return self as? DBXTeamLogEventDetailsOther } } @@ -12532,7 +16774,7 @@ public class DBXTeamLogEventDetailsAdminAlertingAlertStateChangedDetails: DBXTea @objc public init(_ arg: DBXTeamLogAdminAlertingAlertStateChangedDetails) { - self.adminAlertingAlertStateChangedDetails = arg + adminAlertingAlertStateChangedDetails = arg let swift = TeamLog.EventDetails.adminAlertingAlertStateChangedDetails(arg.swift) super.init(swift: swift) } @@ -12546,7 +16788,7 @@ public class DBXTeamLogEventDetailsAdminAlertingChangedAlertConfigDetails: DBXTe @objc public init(_ arg: DBXTeamLogAdminAlertingChangedAlertConfigDetails) { - self.adminAlertingChangedAlertConfigDetails = arg + adminAlertingChangedAlertConfigDetails = arg let swift = TeamLog.EventDetails.adminAlertingChangedAlertConfigDetails(arg.swift) super.init(swift: swift) } @@ -12560,7 +16802,7 @@ public class DBXTeamLogEventDetailsAdminAlertingTriggeredAlertDetails: DBXTeamLo @objc public init(_ arg: DBXTeamLogAdminAlertingTriggeredAlertDetails) { - self.adminAlertingTriggeredAlertDetails = arg + adminAlertingTriggeredAlertDetails = arg let swift = TeamLog.EventDetails.adminAlertingTriggeredAlertDetails(arg.swift) super.init(swift: swift) } @@ -12574,7 +16816,7 @@ public class DBXTeamLogEventDetailsRansomwareRestoreProcessCompletedDetails: DBX @objc public init(_ arg: DBXTeamLogRansomwareRestoreProcessCompletedDetails) { - self.ransomwareRestoreProcessCompletedDetails = arg + ransomwareRestoreProcessCompletedDetails = arg let swift = TeamLog.EventDetails.ransomwareRestoreProcessCompletedDetails(arg.swift) super.init(swift: swift) } @@ -12588,7 +16830,7 @@ public class DBXTeamLogEventDetailsRansomwareRestoreProcessStartedDetails: DBXTe @objc public init(_ arg: DBXTeamLogRansomwareRestoreProcessStartedDetails) { - self.ransomwareRestoreProcessStartedDetails = arg + ransomwareRestoreProcessStartedDetails = arg let swift = TeamLog.EventDetails.ransomwareRestoreProcessStartedDetails(arg.swift) super.init(swift: swift) } @@ -12602,7 +16844,7 @@ public class DBXTeamLogEventDetailsAppBlockedByPermissionsDetails: DBXTeamLogEve @objc public init(_ arg: DBXTeamLogAppBlockedByPermissionsDetails) { - self.appBlockedByPermissionsDetails = arg + appBlockedByPermissionsDetails = arg let swift = TeamLog.EventDetails.appBlockedByPermissionsDetails(arg.swift) super.init(swift: swift) } @@ -12616,7 +16858,7 @@ public class DBXTeamLogEventDetailsAppLinkTeamDetails: DBXTeamLogEventDetails { @objc public init(_ arg: DBXTeamLogAppLinkTeamDetails) { - self.appLinkTeamDetails = arg + appLinkTeamDetails = arg let swift = TeamLog.EventDetails.appLinkTeamDetails(arg.swift) super.init(swift: swift) } @@ -12630,7 +16872,7 @@ public class DBXTeamLogEventDetailsAppLinkUserDetails: DBXTeamLogEventDetails { @objc public init(_ arg: DBXTeamLogAppLinkUserDetails) { - self.appLinkUserDetails = arg + appLinkUserDetails = arg let swift = TeamLog.EventDetails.appLinkUserDetails(arg.swift) super.init(swift: swift) } @@ -12644,7 +16886,7 @@ public class DBXTeamLogEventDetailsAppUnlinkTeamDetails: DBXTeamLogEventDetails @objc public init(_ arg: DBXTeamLogAppUnlinkTeamDetails) { - self.appUnlinkTeamDetails = arg + appUnlinkTeamDetails = arg let swift = TeamLog.EventDetails.appUnlinkTeamDetails(arg.swift) super.init(swift: swift) } @@ -12658,7 +16900,7 @@ public class DBXTeamLogEventDetailsAppUnlinkUserDetails: DBXTeamLogEventDetails @objc public init(_ arg: DBXTeamLogAppUnlinkUserDetails) { - self.appUnlinkUserDetails = arg + appUnlinkUserDetails = arg let swift = TeamLog.EventDetails.appUnlinkUserDetails(arg.swift) super.init(swift: swift) } @@ -12672,7 +16914,7 @@ public class DBXTeamLogEventDetailsIntegrationConnectedDetails: DBXTeamLogEventD @objc public init(_ arg: DBXTeamLogIntegrationConnectedDetails) { - self.integrationConnectedDetails = arg + integrationConnectedDetails = arg let swift = TeamLog.EventDetails.integrationConnectedDetails(arg.swift) super.init(swift: swift) } @@ -12686,7 +16928,7 @@ public class DBXTeamLogEventDetailsIntegrationDisconnectedDetails: DBXTeamLogEve @objc public init(_ arg: DBXTeamLogIntegrationDisconnectedDetails) { - self.integrationDisconnectedDetails = arg + integrationDisconnectedDetails = arg let swift = TeamLog.EventDetails.integrationDisconnectedDetails(arg.swift) super.init(swift: swift) } @@ -12700,7 +16942,7 @@ public class DBXTeamLogEventDetailsFileAddCommentDetails: DBXTeamLogEventDetails @objc public init(_ arg: DBXTeamLogFileAddCommentDetails) { - self.fileAddCommentDetails = arg + fileAddCommentDetails = arg let swift = TeamLog.EventDetails.fileAddCommentDetails(arg.swift) super.init(swift: swift) } @@ -12714,7 +16956,7 @@ public class DBXTeamLogEventDetailsFileChangeCommentSubscriptionDetails: DBXTeam @objc public init(_ arg: DBXTeamLogFileChangeCommentSubscriptionDetails) { - self.fileChangeCommentSubscriptionDetails = arg + fileChangeCommentSubscriptionDetails = arg let swift = TeamLog.EventDetails.fileChangeCommentSubscriptionDetails(arg.swift) super.init(swift: swift) } @@ -12728,7 +16970,7 @@ public class DBXTeamLogEventDetailsFileDeleteCommentDetails: DBXTeamLogEventDeta @objc public init(_ arg: DBXTeamLogFileDeleteCommentDetails) { - self.fileDeleteCommentDetails = arg + fileDeleteCommentDetails = arg let swift = TeamLog.EventDetails.fileDeleteCommentDetails(arg.swift) super.init(swift: swift) } @@ -12742,7 +16984,7 @@ public class DBXTeamLogEventDetailsFileEditCommentDetails: DBXTeamLogEventDetail @objc public init(_ arg: DBXTeamLogFileEditCommentDetails) { - self.fileEditCommentDetails = arg + fileEditCommentDetails = arg let swift = TeamLog.EventDetails.fileEditCommentDetails(arg.swift) super.init(swift: swift) } @@ -12756,7 +16998,7 @@ public class DBXTeamLogEventDetailsFileLikeCommentDetails: DBXTeamLogEventDetail @objc public init(_ arg: DBXTeamLogFileLikeCommentDetails) { - self.fileLikeCommentDetails = arg + fileLikeCommentDetails = arg let swift = TeamLog.EventDetails.fileLikeCommentDetails(arg.swift) super.init(swift: swift) } @@ -12770,7 +17012,7 @@ public class DBXTeamLogEventDetailsFileResolveCommentDetails: DBXTeamLogEventDet @objc public init(_ arg: DBXTeamLogFileResolveCommentDetails) { - self.fileResolveCommentDetails = arg + fileResolveCommentDetails = arg let swift = TeamLog.EventDetails.fileResolveCommentDetails(arg.swift) super.init(swift: swift) } @@ -12784,7 +17026,7 @@ public class DBXTeamLogEventDetailsFileUnlikeCommentDetails: DBXTeamLogEventDeta @objc public init(_ arg: DBXTeamLogFileUnlikeCommentDetails) { - self.fileUnlikeCommentDetails = arg + fileUnlikeCommentDetails = arg let swift = TeamLog.EventDetails.fileUnlikeCommentDetails(arg.swift) super.init(swift: swift) } @@ -12798,12 +17040,460 @@ public class DBXTeamLogEventDetailsFileUnresolveCommentDetails: DBXTeamLogEventD @objc public init(_ arg: DBXTeamLogFileUnresolveCommentDetails) { - self.fileUnresolveCommentDetails = arg + fileUnresolveCommentDetails = arg let swift = TeamLog.EventDetails.fileUnresolveCommentDetails(arg.swift) super.init(swift: swift) } } +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsDashAddedCommentToStackDetails: DBXTeamLogEventDetails { + @objc + public var dashAddedCommentToStackDetails: DBXTeamLogDashAddedCommentToStackDetails + + @objc + public init(_ arg: DBXTeamLogDashAddedCommentToStackDetails) { + dashAddedCommentToStackDetails = arg + let swift = TeamLog.EventDetails.dashAddedCommentToStackDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsDashAddedConnectorDetails: DBXTeamLogEventDetails { + @objc + public var dashAddedConnectorDetails: DBXTeamLogDashAddedConnectorDetails + + @objc + public init(_ arg: DBXTeamLogDashAddedConnectorDetails) { + dashAddedConnectorDetails = arg + let swift = TeamLog.EventDetails.dashAddedConnectorDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsDashAddedLinkToStackDetails: DBXTeamLogEventDetails { + @objc + public var dashAddedLinkToStackDetails: DBXTeamLogDashAddedLinkToStackDetails + + @objc + public init(_ arg: DBXTeamLogDashAddedLinkToStackDetails) { + dashAddedLinkToStackDetails = arg + let swift = TeamLog.EventDetails.dashAddedLinkToStackDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsDashAddedTeamEmailDomainAllowlistDetails: DBXTeamLogEventDetails { + @objc + public var dashAddedTeamEmailDomainAllowlistDetails: DBXTeamLogDashAddedTeamEmailDomainAllowlistDetails + + @objc + public init(_ arg: DBXTeamLogDashAddedTeamEmailDomainAllowlistDetails) { + dashAddedTeamEmailDomainAllowlistDetails = arg + let swift = TeamLog.EventDetails.dashAddedTeamEmailDomainAllowlistDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsDashAdminAddedOrgWideConnectorDetails: DBXTeamLogEventDetails { + @objc + public var dashAdminAddedOrgWideConnectorDetails: DBXTeamLogDashAdminAddedOrgWideConnectorDetails + + @objc + public init(_ arg: DBXTeamLogDashAdminAddedOrgWideConnectorDetails) { + dashAdminAddedOrgWideConnectorDetails = arg + let swift = TeamLog.EventDetails.dashAdminAddedOrgWideConnectorDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsDashAdminDisabledConnectorDetails: DBXTeamLogEventDetails { + @objc + public var dashAdminDisabledConnectorDetails: DBXTeamLogDashAdminDisabledConnectorDetails + + @objc + public init(_ arg: DBXTeamLogDashAdminDisabledConnectorDetails) { + dashAdminDisabledConnectorDetails = arg + let swift = TeamLog.EventDetails.dashAdminDisabledConnectorDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsDashAdminEnabledConnectorDetails: DBXTeamLogEventDetails { + @objc + public var dashAdminEnabledConnectorDetails: DBXTeamLogDashAdminEnabledConnectorDetails + + @objc + public init(_ arg: DBXTeamLogDashAdminEnabledConnectorDetails) { + dashAdminEnabledConnectorDetails = arg + let swift = TeamLog.EventDetails.dashAdminEnabledConnectorDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsDashAdminRemovedOrgWideConnectorDetails: DBXTeamLogEventDetails { + @objc + public var dashAdminRemovedOrgWideConnectorDetails: DBXTeamLogDashAdminRemovedOrgWideConnectorDetails + + @objc + public init(_ arg: DBXTeamLogDashAdminRemovedOrgWideConnectorDetails) { + dashAdminRemovedOrgWideConnectorDetails = arg + let swift = TeamLog.EventDetails.dashAdminRemovedOrgWideConnectorDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsDashArchivedStackDetails: DBXTeamLogEventDetails { + @objc + public var dashArchivedStackDetails: DBXTeamLogDashArchivedStackDetails + + @objc + public init(_ arg: DBXTeamLogDashArchivedStackDetails) { + dashArchivedStackDetails = arg + let swift = TeamLog.EventDetails.dashArchivedStackDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsDashChangedAudienceOfSharedLinkToStackDetails: DBXTeamLogEventDetails { + @objc + public var dashChangedAudienceOfSharedLinkToStackDetails: DBXTeamLogDashChangedAudienceOfSharedLinkToStackDetails + + @objc + public init(_ arg: DBXTeamLogDashChangedAudienceOfSharedLinkToStackDetails) { + dashChangedAudienceOfSharedLinkToStackDetails = arg + let swift = TeamLog.EventDetails.dashChangedAudienceOfSharedLinkToStackDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsDashClonedStackDetails: DBXTeamLogEventDetails { + @objc + public var dashClonedStackDetails: DBXTeamLogDashClonedStackDetails + + @objc + public init(_ arg: DBXTeamLogDashClonedStackDetails) { + dashClonedStackDetails = arg + let swift = TeamLog.EventDetails.dashClonedStackDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsDashConnectorToolsCallDetails: DBXTeamLogEventDetails { + @objc + public var dashConnectorToolsCallDetails: DBXTeamLogDashConnectorToolsCallDetails + + @objc + public init(_ arg: DBXTeamLogDashConnectorToolsCallDetails) { + dashConnectorToolsCallDetails = arg + let swift = TeamLog.EventDetails.dashConnectorToolsCallDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsDashCreatedStackDetails: DBXTeamLogEventDetails { + @objc + public var dashCreatedStackDetails: DBXTeamLogDashCreatedStackDetails + + @objc + public init(_ arg: DBXTeamLogDashCreatedStackDetails) { + dashCreatedStackDetails = arg + let swift = TeamLog.EventDetails.dashCreatedStackDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsDashDeletedCommentFromStackDetails: DBXTeamLogEventDetails { + @objc + public var dashDeletedCommentFromStackDetails: DBXTeamLogDashDeletedCommentFromStackDetails + + @objc + public init(_ arg: DBXTeamLogDashDeletedCommentFromStackDetails) { + dashDeletedCommentFromStackDetails = arg + let swift = TeamLog.EventDetails.dashDeletedCommentFromStackDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsDashDeletedStackDetails: DBXTeamLogEventDetails { + @objc + public var dashDeletedStackDetails: DBXTeamLogDashDeletedStackDetails + + @objc + public init(_ arg: DBXTeamLogDashDeletedStackDetails) { + dashDeletedStackDetails = arg + let swift = TeamLog.EventDetails.dashDeletedStackDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsDashEditedCommentInStackDetails: DBXTeamLogEventDetails { + @objc + public var dashEditedCommentInStackDetails: DBXTeamLogDashEditedCommentInStackDetails + + @objc + public init(_ arg: DBXTeamLogDashEditedCommentInStackDetails) { + dashEditedCommentInStackDetails = arg + let swift = TeamLog.EventDetails.dashEditedCommentInStackDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsDashExternalUserOpenedStackDetails: DBXTeamLogEventDetails { + @objc + public var dashExternalUserOpenedStackDetails: DBXTeamLogDashExternalUserOpenedStackDetails + + @objc + public init(_ arg: DBXTeamLogDashExternalUserOpenedStackDetails) { + dashExternalUserOpenedStackDetails = arg + let swift = TeamLog.EventDetails.dashExternalUserOpenedStackDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsDashFirstLaunchedDesktopDetails: DBXTeamLogEventDetails { + @objc + public var dashFirstLaunchedDesktopDetails: DBXTeamLogDashFirstLaunchedDesktopDetails + + @objc + public init(_ arg: DBXTeamLogDashFirstLaunchedDesktopDetails) { + dashFirstLaunchedDesktopDetails = arg + let swift = TeamLog.EventDetails.dashFirstLaunchedDesktopDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsDashFirstLaunchedExtensionDetails: DBXTeamLogEventDetails { + @objc + public var dashFirstLaunchedExtensionDetails: DBXTeamLogDashFirstLaunchedExtensionDetails + + @objc + public init(_ arg: DBXTeamLogDashFirstLaunchedExtensionDetails) { + dashFirstLaunchedExtensionDetails = arg + let swift = TeamLog.EventDetails.dashFirstLaunchedExtensionDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsDashFirstLaunchedWebStartPageDetails: DBXTeamLogEventDetails { + @objc + public var dashFirstLaunchedWebStartPageDetails: DBXTeamLogDashFirstLaunchedWebStartPageDetails + + @objc + public init(_ arg: DBXTeamLogDashFirstLaunchedWebStartPageDetails) { + dashFirstLaunchedWebStartPageDetails = arg + let swift = TeamLog.EventDetails.dashFirstLaunchedWebStartPageDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsDashOpenedSharedLinkToStackDetails: DBXTeamLogEventDetails { + @objc + public var dashOpenedSharedLinkToStackDetails: DBXTeamLogDashOpenedSharedLinkToStackDetails + + @objc + public init(_ arg: DBXTeamLogDashOpenedSharedLinkToStackDetails) { + dashOpenedSharedLinkToStackDetails = arg + let swift = TeamLog.EventDetails.dashOpenedSharedLinkToStackDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsDashOpenedStackDetails: DBXTeamLogEventDetails { + @objc + public var dashOpenedStackDetails: DBXTeamLogDashOpenedStackDetails + + @objc + public init(_ arg: DBXTeamLogDashOpenedStackDetails) { + dashOpenedStackDetails = arg + let swift = TeamLog.EventDetails.dashOpenedStackDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsDashPreviewOptOutStatusChangedDetails: DBXTeamLogEventDetails { + @objc + public var dashPreviewOptOutStatusChangedDetails: DBXTeamLogDashPreviewOptOutStatusChangedDetails + + @objc + public init(_ arg: DBXTeamLogDashPreviewOptOutStatusChangedDetails) { + dashPreviewOptOutStatusChangedDetails = arg + let swift = TeamLog.EventDetails.dashPreviewOptOutStatusChangedDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsDashRemovedConnectorDetails: DBXTeamLogEventDetails { + @objc + public var dashRemovedConnectorDetails: DBXTeamLogDashRemovedConnectorDetails + + @objc + public init(_ arg: DBXTeamLogDashRemovedConnectorDetails) { + dashRemovedConnectorDetails = arg + let swift = TeamLog.EventDetails.dashRemovedConnectorDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsDashRemovedLinkFromStackDetails: DBXTeamLogEventDetails { + @objc + public var dashRemovedLinkFromStackDetails: DBXTeamLogDashRemovedLinkFromStackDetails + + @objc + public init(_ arg: DBXTeamLogDashRemovedLinkFromStackDetails) { + dashRemovedLinkFromStackDetails = arg + let swift = TeamLog.EventDetails.dashRemovedLinkFromStackDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsDashRemovedSharedLinkToStackDetails: DBXTeamLogEventDetails { + @objc + public var dashRemovedSharedLinkToStackDetails: DBXTeamLogDashRemovedSharedLinkToStackDetails + + @objc + public init(_ arg: DBXTeamLogDashRemovedSharedLinkToStackDetails) { + dashRemovedSharedLinkToStackDetails = arg + let swift = TeamLog.EventDetails.dashRemovedSharedLinkToStackDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsDashRemovedTeamEmailDomainAllowlistDetails: DBXTeamLogEventDetails { + @objc + public var dashRemovedTeamEmailDomainAllowlistDetails: DBXTeamLogDashRemovedTeamEmailDomainAllowlistDetails + + @objc + public init(_ arg: DBXTeamLogDashRemovedTeamEmailDomainAllowlistDetails) { + dashRemovedTeamEmailDomainAllowlistDetails = arg + let swift = TeamLog.EventDetails.dashRemovedTeamEmailDomainAllowlistDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsDashRenamedStackDetails: DBXTeamLogEventDetails { + @objc + public var dashRenamedStackDetails: DBXTeamLogDashRenamedStackDetails + + @objc + public init(_ arg: DBXTeamLogDashRenamedStackDetails) { + dashRenamedStackDetails = arg + let swift = TeamLog.EventDetails.dashRenamedStackDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsDashSharedLinkToStackDetails: DBXTeamLogEventDetails { + @objc + public var dashSharedLinkToStackDetails: DBXTeamLogDashSharedLinkToStackDetails + + @objc + public init(_ arg: DBXTeamLogDashSharedLinkToStackDetails) { + dashSharedLinkToStackDetails = arg + let swift = TeamLog.EventDetails.dashSharedLinkToStackDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsDashUnarchivedStackDetails: DBXTeamLogEventDetails { + @objc + public var dashUnarchivedStackDetails: DBXTeamLogDashUnarchivedStackDetails + + @objc + public init(_ arg: DBXTeamLogDashUnarchivedStackDetails) { + dashUnarchivedStackDetails = arg + let swift = TeamLog.EventDetails.dashUnarchivedStackDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsDashViewedCompanyStackDetails: DBXTeamLogEventDetails { + @objc + public var dashViewedCompanyStackDetails: DBXTeamLogDashViewedCompanyStackDetails + + @objc + public init(_ arg: DBXTeamLogDashViewedCompanyStackDetails) { + dashViewedCompanyStackDetails = arg + let swift = TeamLog.EventDetails.dashViewedCompanyStackDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsDashViewedExternalAiActivityReportDetails: DBXTeamLogEventDetails { + @objc + public var dashViewedExternalAiActivityReportDetails: DBXTeamLogDashViewedExternalAiActivityReportDetails + + @objc + public init(_ arg: DBXTeamLogDashViewedExternalAiActivityReportDetails) { + dashViewedExternalAiActivityReportDetails = arg + let swift = TeamLog.EventDetails.dashViewedExternalAiActivityReportDetails(arg.swift) + super.init(swift: swift) + } +} + /// An unspecified error. @objc public class DBXTeamLogEventDetailsGovernancePolicyAddFoldersDetails: DBXTeamLogEventDetails { @@ -12812,7 +17502,7 @@ public class DBXTeamLogEventDetailsGovernancePolicyAddFoldersDetails: DBXTeamLog @objc public init(_ arg: DBXTeamLogGovernancePolicyAddFoldersDetails) { - self.governancePolicyAddFoldersDetails = arg + governancePolicyAddFoldersDetails = arg let swift = TeamLog.EventDetails.governancePolicyAddFoldersDetails(arg.swift) super.init(swift: swift) } @@ -12826,7 +17516,7 @@ public class DBXTeamLogEventDetailsGovernancePolicyAddFolderFailedDetails: DBXTe @objc public init(_ arg: DBXTeamLogGovernancePolicyAddFolderFailedDetails) { - self.governancePolicyAddFolderFailedDetails = arg + governancePolicyAddFolderFailedDetails = arg let swift = TeamLog.EventDetails.governancePolicyAddFolderFailedDetails(arg.swift) super.init(swift: swift) } @@ -12840,7 +17530,7 @@ public class DBXTeamLogEventDetailsGovernancePolicyContentDisposedDetails: DBXTe @objc public init(_ arg: DBXTeamLogGovernancePolicyContentDisposedDetails) { - self.governancePolicyContentDisposedDetails = arg + governancePolicyContentDisposedDetails = arg let swift = TeamLog.EventDetails.governancePolicyContentDisposedDetails(arg.swift) super.init(swift: swift) } @@ -12854,7 +17544,7 @@ public class DBXTeamLogEventDetailsGovernancePolicyCreateDetails: DBXTeamLogEven @objc public init(_ arg: DBXTeamLogGovernancePolicyCreateDetails) { - self.governancePolicyCreateDetails = arg + governancePolicyCreateDetails = arg let swift = TeamLog.EventDetails.governancePolicyCreateDetails(arg.swift) super.init(swift: swift) } @@ -12868,7 +17558,7 @@ public class DBXTeamLogEventDetailsGovernancePolicyDeleteDetails: DBXTeamLogEven @objc public init(_ arg: DBXTeamLogGovernancePolicyDeleteDetails) { - self.governancePolicyDeleteDetails = arg + governancePolicyDeleteDetails = arg let swift = TeamLog.EventDetails.governancePolicyDeleteDetails(arg.swift) super.init(swift: swift) } @@ -12882,7 +17572,7 @@ public class DBXTeamLogEventDetailsGovernancePolicyEditDetailsDetails: DBXTeamLo @objc public init(_ arg: DBXTeamLogGovernancePolicyEditDetailsDetails) { - self.governancePolicyEditDetailsDetails = arg + governancePolicyEditDetailsDetails = arg let swift = TeamLog.EventDetails.governancePolicyEditDetailsDetails(arg.swift) super.init(swift: swift) } @@ -12896,7 +17586,7 @@ public class DBXTeamLogEventDetailsGovernancePolicyEditDurationDetails: DBXTeamL @objc public init(_ arg: DBXTeamLogGovernancePolicyEditDurationDetails) { - self.governancePolicyEditDurationDetails = arg + governancePolicyEditDurationDetails = arg let swift = TeamLog.EventDetails.governancePolicyEditDurationDetails(arg.swift) super.init(swift: swift) } @@ -12910,7 +17600,7 @@ public class DBXTeamLogEventDetailsGovernancePolicyExportCreatedDetails: DBXTeam @objc public init(_ arg: DBXTeamLogGovernancePolicyExportCreatedDetails) { - self.governancePolicyExportCreatedDetails = arg + governancePolicyExportCreatedDetails = arg let swift = TeamLog.EventDetails.governancePolicyExportCreatedDetails(arg.swift) super.init(swift: swift) } @@ -12924,7 +17614,7 @@ public class DBXTeamLogEventDetailsGovernancePolicyExportRemovedDetails: DBXTeam @objc public init(_ arg: DBXTeamLogGovernancePolicyExportRemovedDetails) { - self.governancePolicyExportRemovedDetails = arg + governancePolicyExportRemovedDetails = arg let swift = TeamLog.EventDetails.governancePolicyExportRemovedDetails(arg.swift) super.init(swift: swift) } @@ -12938,7 +17628,7 @@ public class DBXTeamLogEventDetailsGovernancePolicyRemoveFoldersDetails: DBXTeam @objc public init(_ arg: DBXTeamLogGovernancePolicyRemoveFoldersDetails) { - self.governancePolicyRemoveFoldersDetails = arg + governancePolicyRemoveFoldersDetails = arg let swift = TeamLog.EventDetails.governancePolicyRemoveFoldersDetails(arg.swift) super.init(swift: swift) } @@ -12952,7 +17642,7 @@ public class DBXTeamLogEventDetailsGovernancePolicyReportCreatedDetails: DBXTeam @objc public init(_ arg: DBXTeamLogGovernancePolicyReportCreatedDetails) { - self.governancePolicyReportCreatedDetails = arg + governancePolicyReportCreatedDetails = arg let swift = TeamLog.EventDetails.governancePolicyReportCreatedDetails(arg.swift) super.init(swift: swift) } @@ -12966,7 +17656,7 @@ public class DBXTeamLogEventDetailsGovernancePolicyZipPartDownloadedDetails: DBX @objc public init(_ arg: DBXTeamLogGovernancePolicyZipPartDownloadedDetails) { - self.governancePolicyZipPartDownloadedDetails = arg + governancePolicyZipPartDownloadedDetails = arg let swift = TeamLog.EventDetails.governancePolicyZipPartDownloadedDetails(arg.swift) super.init(swift: swift) } @@ -12980,7 +17670,7 @@ public class DBXTeamLogEventDetailsLegalHoldsActivateAHoldDetails: DBXTeamLogEve @objc public init(_ arg: DBXTeamLogLegalHoldsActivateAHoldDetails) { - self.legalHoldsActivateAHoldDetails = arg + legalHoldsActivateAHoldDetails = arg let swift = TeamLog.EventDetails.legalHoldsActivateAHoldDetails(arg.swift) super.init(swift: swift) } @@ -12994,7 +17684,7 @@ public class DBXTeamLogEventDetailsLegalHoldsAddMembersDetails: DBXTeamLogEventD @objc public init(_ arg: DBXTeamLogLegalHoldsAddMembersDetails) { - self.legalHoldsAddMembersDetails = arg + legalHoldsAddMembersDetails = arg let swift = TeamLog.EventDetails.legalHoldsAddMembersDetails(arg.swift) super.init(swift: swift) } @@ -13008,7 +17698,7 @@ public class DBXTeamLogEventDetailsLegalHoldsChangeHoldDetailsDetails: DBXTeamLo @objc public init(_ arg: DBXTeamLogLegalHoldsChangeHoldDetailsDetails) { - self.legalHoldsChangeHoldDetailsDetails = arg + legalHoldsChangeHoldDetailsDetails = arg let swift = TeamLog.EventDetails.legalHoldsChangeHoldDetailsDetails(arg.swift) super.init(swift: swift) } @@ -13022,7 +17712,7 @@ public class DBXTeamLogEventDetailsLegalHoldsChangeHoldNameDetails: DBXTeamLogEv @objc public init(_ arg: DBXTeamLogLegalHoldsChangeHoldNameDetails) { - self.legalHoldsChangeHoldNameDetails = arg + legalHoldsChangeHoldNameDetails = arg let swift = TeamLog.EventDetails.legalHoldsChangeHoldNameDetails(arg.swift) super.init(swift: swift) } @@ -13036,7 +17726,7 @@ public class DBXTeamLogEventDetailsLegalHoldsExportAHoldDetails: DBXTeamLogEvent @objc public init(_ arg: DBXTeamLogLegalHoldsExportAHoldDetails) { - self.legalHoldsExportAHoldDetails = arg + legalHoldsExportAHoldDetails = arg let swift = TeamLog.EventDetails.legalHoldsExportAHoldDetails(arg.swift) super.init(swift: swift) } @@ -13050,7 +17740,7 @@ public class DBXTeamLogEventDetailsLegalHoldsExportCancelledDetails: DBXTeamLogE @objc public init(_ arg: DBXTeamLogLegalHoldsExportCancelledDetails) { - self.legalHoldsExportCancelledDetails = arg + legalHoldsExportCancelledDetails = arg let swift = TeamLog.EventDetails.legalHoldsExportCancelledDetails(arg.swift) super.init(swift: swift) } @@ -13064,7 +17754,7 @@ public class DBXTeamLogEventDetailsLegalHoldsExportDownloadedDetails: DBXTeamLog @objc public init(_ arg: DBXTeamLogLegalHoldsExportDownloadedDetails) { - self.legalHoldsExportDownloadedDetails = arg + legalHoldsExportDownloadedDetails = arg let swift = TeamLog.EventDetails.legalHoldsExportDownloadedDetails(arg.swift) super.init(swift: swift) } @@ -13078,7 +17768,7 @@ public class DBXTeamLogEventDetailsLegalHoldsExportRemovedDetails: DBXTeamLogEve @objc public init(_ arg: DBXTeamLogLegalHoldsExportRemovedDetails) { - self.legalHoldsExportRemovedDetails = arg + legalHoldsExportRemovedDetails = arg let swift = TeamLog.EventDetails.legalHoldsExportRemovedDetails(arg.swift) super.init(swift: swift) } @@ -13092,7 +17782,7 @@ public class DBXTeamLogEventDetailsLegalHoldsReleaseAHoldDetails: DBXTeamLogEven @objc public init(_ arg: DBXTeamLogLegalHoldsReleaseAHoldDetails) { - self.legalHoldsReleaseAHoldDetails = arg + legalHoldsReleaseAHoldDetails = arg let swift = TeamLog.EventDetails.legalHoldsReleaseAHoldDetails(arg.swift) super.init(swift: swift) } @@ -13106,7 +17796,7 @@ public class DBXTeamLogEventDetailsLegalHoldsRemoveMembersDetails: DBXTeamLogEve @objc public init(_ arg: DBXTeamLogLegalHoldsRemoveMembersDetails) { - self.legalHoldsRemoveMembersDetails = arg + legalHoldsRemoveMembersDetails = arg let swift = TeamLog.EventDetails.legalHoldsRemoveMembersDetails(arg.swift) super.init(swift: swift) } @@ -13120,7 +17810,7 @@ public class DBXTeamLogEventDetailsLegalHoldsReportAHoldDetails: DBXTeamLogEvent @objc public init(_ arg: DBXTeamLogLegalHoldsReportAHoldDetails) { - self.legalHoldsReportAHoldDetails = arg + legalHoldsReportAHoldDetails = arg let swift = TeamLog.EventDetails.legalHoldsReportAHoldDetails(arg.swift) super.init(swift: swift) } @@ -13134,7 +17824,7 @@ public class DBXTeamLogEventDetailsDeviceChangeIpDesktopDetails: DBXTeamLogEvent @objc public init(_ arg: DBXTeamLogDeviceChangeIpDesktopDetails) { - self.deviceChangeIpDesktopDetails = arg + deviceChangeIpDesktopDetails = arg let swift = TeamLog.EventDetails.deviceChangeIpDesktopDetails(arg.swift) super.init(swift: swift) } @@ -13148,7 +17838,7 @@ public class DBXTeamLogEventDetailsDeviceChangeIpMobileDetails: DBXTeamLogEventD @objc public init(_ arg: DBXTeamLogDeviceChangeIpMobileDetails) { - self.deviceChangeIpMobileDetails = arg + deviceChangeIpMobileDetails = arg let swift = TeamLog.EventDetails.deviceChangeIpMobileDetails(arg.swift) super.init(swift: swift) } @@ -13162,7 +17852,7 @@ public class DBXTeamLogEventDetailsDeviceChangeIpWebDetails: DBXTeamLogEventDeta @objc public init(_ arg: DBXTeamLogDeviceChangeIpWebDetails) { - self.deviceChangeIpWebDetails = arg + deviceChangeIpWebDetails = arg let swift = TeamLog.EventDetails.deviceChangeIpWebDetails(arg.swift) super.init(swift: swift) } @@ -13176,7 +17866,7 @@ public class DBXTeamLogEventDetailsDeviceDeleteOnUnlinkFailDetails: DBXTeamLogEv @objc public init(_ arg: DBXTeamLogDeviceDeleteOnUnlinkFailDetails) { - self.deviceDeleteOnUnlinkFailDetails = arg + deviceDeleteOnUnlinkFailDetails = arg let swift = TeamLog.EventDetails.deviceDeleteOnUnlinkFailDetails(arg.swift) super.init(swift: swift) } @@ -13190,7 +17880,7 @@ public class DBXTeamLogEventDetailsDeviceDeleteOnUnlinkSuccessDetails: DBXTeamLo @objc public init(_ arg: DBXTeamLogDeviceDeleteOnUnlinkSuccessDetails) { - self.deviceDeleteOnUnlinkSuccessDetails = arg + deviceDeleteOnUnlinkSuccessDetails = arg let swift = TeamLog.EventDetails.deviceDeleteOnUnlinkSuccessDetails(arg.swift) super.init(swift: swift) } @@ -13204,7 +17894,7 @@ public class DBXTeamLogEventDetailsDeviceLinkFailDetails: DBXTeamLogEventDetails @objc public init(_ arg: DBXTeamLogDeviceLinkFailDetails) { - self.deviceLinkFailDetails = arg + deviceLinkFailDetails = arg let swift = TeamLog.EventDetails.deviceLinkFailDetails(arg.swift) super.init(swift: swift) } @@ -13218,7 +17908,7 @@ public class DBXTeamLogEventDetailsDeviceLinkSuccessDetails: DBXTeamLogEventDeta @objc public init(_ arg: DBXTeamLogDeviceLinkSuccessDetails) { - self.deviceLinkSuccessDetails = arg + deviceLinkSuccessDetails = arg let swift = TeamLog.EventDetails.deviceLinkSuccessDetails(arg.swift) super.init(swift: swift) } @@ -13232,7 +17922,7 @@ public class DBXTeamLogEventDetailsDeviceManagementDisabledDetails: DBXTeamLogEv @objc public init(_ arg: DBXTeamLogDeviceManagementDisabledDetails) { - self.deviceManagementDisabledDetails = arg + deviceManagementDisabledDetails = arg let swift = TeamLog.EventDetails.deviceManagementDisabledDetails(arg.swift) super.init(swift: swift) } @@ -13246,7 +17936,7 @@ public class DBXTeamLogEventDetailsDeviceManagementEnabledDetails: DBXTeamLogEve @objc public init(_ arg: DBXTeamLogDeviceManagementEnabledDetails) { - self.deviceManagementEnabledDetails = arg + deviceManagementEnabledDetails = arg let swift = TeamLog.EventDetails.deviceManagementEnabledDetails(arg.swift) super.init(swift: swift) } @@ -13260,7 +17950,7 @@ public class DBXTeamLogEventDetailsDeviceSyncBackupStatusChangedDetails: DBXTeam @objc public init(_ arg: DBXTeamLogDeviceSyncBackupStatusChangedDetails) { - self.deviceSyncBackupStatusChangedDetails = arg + deviceSyncBackupStatusChangedDetails = arg let swift = TeamLog.EventDetails.deviceSyncBackupStatusChangedDetails(arg.swift) super.init(swift: swift) } @@ -13274,7 +17964,7 @@ public class DBXTeamLogEventDetailsDeviceUnlinkDetails: DBXTeamLogEventDetails { @objc public init(_ arg: DBXTeamLogDeviceUnlinkDetails) { - self.deviceUnlinkDetails = arg + deviceUnlinkDetails = arg let swift = TeamLog.EventDetails.deviceUnlinkDetails(arg.swift) super.init(swift: swift) } @@ -13288,7 +17978,7 @@ public class DBXTeamLogEventDetailsDropboxPasswordsExportedDetails: DBXTeamLogEv @objc public init(_ arg: DBXTeamLogDropboxPasswordsExportedDetails) { - self.dropboxPasswordsExportedDetails = arg + dropboxPasswordsExportedDetails = arg let swift = TeamLog.EventDetails.dropboxPasswordsExportedDetails(arg.swift) super.init(swift: swift) } @@ -13302,7 +17992,7 @@ public class DBXTeamLogEventDetailsDropboxPasswordsNewDeviceEnrolledDetails: DBX @objc public init(_ arg: DBXTeamLogDropboxPasswordsNewDeviceEnrolledDetails) { - self.dropboxPasswordsNewDeviceEnrolledDetails = arg + dropboxPasswordsNewDeviceEnrolledDetails = arg let swift = TeamLog.EventDetails.dropboxPasswordsNewDeviceEnrolledDetails(arg.swift) super.init(swift: swift) } @@ -13316,7 +18006,7 @@ public class DBXTeamLogEventDetailsEmmRefreshAuthTokenDetails: DBXTeamLogEventDe @objc public init(_ arg: DBXTeamLogEmmRefreshAuthTokenDetails) { - self.emmRefreshAuthTokenDetails = arg + emmRefreshAuthTokenDetails = arg let swift = TeamLog.EventDetails.emmRefreshAuthTokenDetails(arg.swift) super.init(swift: swift) } @@ -13330,7 +18020,7 @@ public class DBXTeamLogEventDetailsExternalDriveBackupEligibilityStatusCheckedDe @objc public init(_ arg: DBXTeamLogExternalDriveBackupEligibilityStatusCheckedDetails) { - self.externalDriveBackupEligibilityStatusCheckedDetails = arg + externalDriveBackupEligibilityStatusCheckedDetails = arg let swift = TeamLog.EventDetails.externalDriveBackupEligibilityStatusCheckedDetails(arg.swift) super.init(swift: swift) } @@ -13344,7 +18034,7 @@ public class DBXTeamLogEventDetailsExternalDriveBackupStatusChangedDetails: DBXT @objc public init(_ arg: DBXTeamLogExternalDriveBackupStatusChangedDetails) { - self.externalDriveBackupStatusChangedDetails = arg + externalDriveBackupStatusChangedDetails = arg let swift = TeamLog.EventDetails.externalDriveBackupStatusChangedDetails(arg.swift) super.init(swift: swift) } @@ -13358,7 +18048,7 @@ public class DBXTeamLogEventDetailsAccountCaptureChangeAvailabilityDetails: DBXT @objc public init(_ arg: DBXTeamLogAccountCaptureChangeAvailabilityDetails) { - self.accountCaptureChangeAvailabilityDetails = arg + accountCaptureChangeAvailabilityDetails = arg let swift = TeamLog.EventDetails.accountCaptureChangeAvailabilityDetails(arg.swift) super.init(swift: swift) } @@ -13372,7 +18062,7 @@ public class DBXTeamLogEventDetailsAccountCaptureMigrateAccountDetails: DBXTeamL @objc public init(_ arg: DBXTeamLogAccountCaptureMigrateAccountDetails) { - self.accountCaptureMigrateAccountDetails = arg + accountCaptureMigrateAccountDetails = arg let swift = TeamLog.EventDetails.accountCaptureMigrateAccountDetails(arg.swift) super.init(swift: swift) } @@ -13386,7 +18076,7 @@ public class DBXTeamLogEventDetailsAccountCaptureNotificationEmailsSentDetails: @objc public init(_ arg: DBXTeamLogAccountCaptureNotificationEmailsSentDetails) { - self.accountCaptureNotificationEmailsSentDetails = arg + accountCaptureNotificationEmailsSentDetails = arg let swift = TeamLog.EventDetails.accountCaptureNotificationEmailsSentDetails(arg.swift) super.init(swift: swift) } @@ -13400,7 +18090,7 @@ public class DBXTeamLogEventDetailsAccountCaptureRelinquishAccountDetails: DBXTe @objc public init(_ arg: DBXTeamLogAccountCaptureRelinquishAccountDetails) { - self.accountCaptureRelinquishAccountDetails = arg + accountCaptureRelinquishAccountDetails = arg let swift = TeamLog.EventDetails.accountCaptureRelinquishAccountDetails(arg.swift) super.init(swift: swift) } @@ -13414,7 +18104,7 @@ public class DBXTeamLogEventDetailsDisabledDomainInvitesDetails: DBXTeamLogEvent @objc public init(_ arg: DBXTeamLogDisabledDomainInvitesDetails) { - self.disabledDomainInvitesDetails = arg + disabledDomainInvitesDetails = arg let swift = TeamLog.EventDetails.disabledDomainInvitesDetails(arg.swift) super.init(swift: swift) } @@ -13428,7 +18118,7 @@ public class DBXTeamLogEventDetailsDomainInvitesApproveRequestToJoinTeamDetails: @objc public init(_ arg: DBXTeamLogDomainInvitesApproveRequestToJoinTeamDetails) { - self.domainInvitesApproveRequestToJoinTeamDetails = arg + domainInvitesApproveRequestToJoinTeamDetails = arg let swift = TeamLog.EventDetails.domainInvitesApproveRequestToJoinTeamDetails(arg.swift) super.init(swift: swift) } @@ -13442,7 +18132,7 @@ public class DBXTeamLogEventDetailsDomainInvitesDeclineRequestToJoinTeamDetails: @objc public init(_ arg: DBXTeamLogDomainInvitesDeclineRequestToJoinTeamDetails) { - self.domainInvitesDeclineRequestToJoinTeamDetails = arg + domainInvitesDeclineRequestToJoinTeamDetails = arg let swift = TeamLog.EventDetails.domainInvitesDeclineRequestToJoinTeamDetails(arg.swift) super.init(swift: swift) } @@ -13456,7 +18146,7 @@ public class DBXTeamLogEventDetailsDomainInvitesEmailExistingUsersDetails: DBXTe @objc public init(_ arg: DBXTeamLogDomainInvitesEmailExistingUsersDetails) { - self.domainInvitesEmailExistingUsersDetails = arg + domainInvitesEmailExistingUsersDetails = arg let swift = TeamLog.EventDetails.domainInvitesEmailExistingUsersDetails(arg.swift) super.init(swift: swift) } @@ -13470,7 +18160,7 @@ public class DBXTeamLogEventDetailsDomainInvitesRequestToJoinTeamDetails: DBXTea @objc public init(_ arg: DBXTeamLogDomainInvitesRequestToJoinTeamDetails) { - self.domainInvitesRequestToJoinTeamDetails = arg + domainInvitesRequestToJoinTeamDetails = arg let swift = TeamLog.EventDetails.domainInvitesRequestToJoinTeamDetails(arg.swift) super.init(swift: swift) } @@ -13484,7 +18174,7 @@ public class DBXTeamLogEventDetailsDomainInvitesSetInviteNewUserPrefToNoDetails: @objc public init(_ arg: DBXTeamLogDomainInvitesSetInviteNewUserPrefToNoDetails) { - self.domainInvitesSetInviteNewUserPrefToNoDetails = arg + domainInvitesSetInviteNewUserPrefToNoDetails = arg let swift = TeamLog.EventDetails.domainInvitesSetInviteNewUserPrefToNoDetails(arg.swift) super.init(swift: swift) } @@ -13498,7 +18188,7 @@ public class DBXTeamLogEventDetailsDomainInvitesSetInviteNewUserPrefToYesDetails @objc public init(_ arg: DBXTeamLogDomainInvitesSetInviteNewUserPrefToYesDetails) { - self.domainInvitesSetInviteNewUserPrefToYesDetails = arg + domainInvitesSetInviteNewUserPrefToYesDetails = arg let swift = TeamLog.EventDetails.domainInvitesSetInviteNewUserPrefToYesDetails(arg.swift) super.init(swift: swift) } @@ -13512,7 +18202,7 @@ public class DBXTeamLogEventDetailsDomainVerificationAddDomainFailDetails: DBXTe @objc public init(_ arg: DBXTeamLogDomainVerificationAddDomainFailDetails) { - self.domainVerificationAddDomainFailDetails = arg + domainVerificationAddDomainFailDetails = arg let swift = TeamLog.EventDetails.domainVerificationAddDomainFailDetails(arg.swift) super.init(swift: swift) } @@ -13526,7 +18216,7 @@ public class DBXTeamLogEventDetailsDomainVerificationAddDomainSuccessDetails: DB @objc public init(_ arg: DBXTeamLogDomainVerificationAddDomainSuccessDetails) { - self.domainVerificationAddDomainSuccessDetails = arg + domainVerificationAddDomainSuccessDetails = arg let swift = TeamLog.EventDetails.domainVerificationAddDomainSuccessDetails(arg.swift) super.init(swift: swift) } @@ -13540,7 +18230,7 @@ public class DBXTeamLogEventDetailsDomainVerificationRemoveDomainDetails: DBXTea @objc public init(_ arg: DBXTeamLogDomainVerificationRemoveDomainDetails) { - self.domainVerificationRemoveDomainDetails = arg + domainVerificationRemoveDomainDetails = arg let swift = TeamLog.EventDetails.domainVerificationRemoveDomainDetails(arg.swift) super.init(swift: swift) } @@ -13554,12 +18244,166 @@ public class DBXTeamLogEventDetailsEnabledDomainInvitesDetails: DBXTeamLogEventD @objc public init(_ arg: DBXTeamLogEnabledDomainInvitesDetails) { - self.enabledDomainInvitesDetails = arg + enabledDomainInvitesDetails = arg let swift = TeamLog.EventDetails.enabledDomainInvitesDetails(arg.swift) super.init(swift: swift) } } +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsEncryptedFolderCancelTeamKeyRotationDetails: DBXTeamLogEventDetails { + @objc + public var encryptedFolderCancelTeamKeyRotationDetails: DBXTeamLogEncryptedFolderCancelTeamKeyRotationDetails + + @objc + public init(_ arg: DBXTeamLogEncryptedFolderCancelTeamKeyRotationDetails) { + encryptedFolderCancelTeamKeyRotationDetails = arg + let swift = TeamLog.EventDetails.encryptedFolderCancelTeamKeyRotationDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsEncryptedFolderEnrollBackupKeyDetails: DBXTeamLogEventDetails { + @objc + public var encryptedFolderEnrollBackupKeyDetails: DBXTeamLogEncryptedFolderEnrollBackupKeyDetails + + @objc + public init(_ arg: DBXTeamLogEncryptedFolderEnrollBackupKeyDetails) { + encryptedFolderEnrollBackupKeyDetails = arg + let swift = TeamLog.EventDetails.encryptedFolderEnrollBackupKeyDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsEncryptedFolderEnrollClientDetails: DBXTeamLogEventDetails { + @objc + public var encryptedFolderEnrollClientDetails: DBXTeamLogEncryptedFolderEnrollClientDetails + + @objc + public init(_ arg: DBXTeamLogEncryptedFolderEnrollClientDetails) { + encryptedFolderEnrollClientDetails = arg + let swift = TeamLog.EventDetails.encryptedFolderEnrollClientDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsEncryptedFolderEnrollTeamDetails: DBXTeamLogEventDetails { + @objc + public var encryptedFolderEnrollTeamDetails: DBXTeamLogEncryptedFolderEnrollTeamDetails + + @objc + public init(_ arg: DBXTeamLogEncryptedFolderEnrollTeamDetails) { + encryptedFolderEnrollTeamDetails = arg + let swift = TeamLog.EventDetails.encryptedFolderEnrollTeamDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsEncryptedFolderFinishTeamUnenrollmentDetails: DBXTeamLogEventDetails { + @objc + public var encryptedFolderFinishTeamUnenrollmentDetails: DBXTeamLogEncryptedFolderFinishTeamUnenrollmentDetails + + @objc + public init(_ arg: DBXTeamLogEncryptedFolderFinishTeamUnenrollmentDetails) { + encryptedFolderFinishTeamUnenrollmentDetails = arg + let swift = TeamLog.EventDetails.encryptedFolderFinishTeamUnenrollmentDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsEncryptedFolderInitTeamKeyRotationDetails: DBXTeamLogEventDetails { + @objc + public var encryptedFolderInitTeamKeyRotationDetails: DBXTeamLogEncryptedFolderInitTeamKeyRotationDetails + + @objc + public init(_ arg: DBXTeamLogEncryptedFolderInitTeamKeyRotationDetails) { + encryptedFolderInitTeamKeyRotationDetails = arg + let swift = TeamLog.EventDetails.encryptedFolderInitTeamKeyRotationDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsEncryptedFolderInitTeamUnenrollmentDetails: DBXTeamLogEventDetails { + @objc + public var encryptedFolderInitTeamUnenrollmentDetails: DBXTeamLogEncryptedFolderInitTeamUnenrollmentDetails + + @objc + public init(_ arg: DBXTeamLogEncryptedFolderInitTeamUnenrollmentDetails) { + encryptedFolderInitTeamUnenrollmentDetails = arg + let swift = TeamLog.EventDetails.encryptedFolderInitTeamUnenrollmentDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsEncryptedFolderRemoveBackupKeyDetails: DBXTeamLogEventDetails { + @objc + public var encryptedFolderRemoveBackupKeyDetails: DBXTeamLogEncryptedFolderRemoveBackupKeyDetails + + @objc + public init(_ arg: DBXTeamLogEncryptedFolderRemoveBackupKeyDetails) { + encryptedFolderRemoveBackupKeyDetails = arg + let swift = TeamLog.EventDetails.encryptedFolderRemoveBackupKeyDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsEncryptedFolderRotateTeamKeyDetails: DBXTeamLogEventDetails { + @objc + public var encryptedFolderRotateTeamKeyDetails: DBXTeamLogEncryptedFolderRotateTeamKeyDetails + + @objc + public init(_ arg: DBXTeamLogEncryptedFolderRotateTeamKeyDetails) { + encryptedFolderRotateTeamKeyDetails = arg + let swift = TeamLog.EventDetails.encryptedFolderRotateTeamKeyDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsEncryptedFolderUnenrollClientDetails: DBXTeamLogEventDetails { + @objc + public var encryptedFolderUnenrollClientDetails: DBXTeamLogEncryptedFolderUnenrollClientDetails + + @objc + public init(_ arg: DBXTeamLogEncryptedFolderUnenrollClientDetails) { + encryptedFolderUnenrollClientDetails = arg + let swift = TeamLog.EventDetails.encryptedFolderUnenrollClientDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsTeamEncryptionKeyActivateKeyDetails: DBXTeamLogEventDetails { + @objc + public var teamEncryptionKeyActivateKeyDetails: DBXTeamLogTeamEncryptionKeyActivateKeyDetails + + @objc + public init(_ arg: DBXTeamLogTeamEncryptionKeyActivateKeyDetails) { + teamEncryptionKeyActivateKeyDetails = arg + let swift = TeamLog.EventDetails.teamEncryptionKeyActivateKeyDetails(arg.swift) + super.init(swift: swift) + } +} + /// An unspecified error. @objc public class DBXTeamLogEventDetailsTeamEncryptionKeyCancelKeyDeletionDetails: DBXTeamLogEventDetails { @@ -13568,7 +18412,7 @@ public class DBXTeamLogEventDetailsTeamEncryptionKeyCancelKeyDeletionDetails: DB @objc public init(_ arg: DBXTeamLogTeamEncryptionKeyCancelKeyDeletionDetails) { - self.teamEncryptionKeyCancelKeyDeletionDetails = arg + teamEncryptionKeyCancelKeyDeletionDetails = arg let swift = TeamLog.EventDetails.teamEncryptionKeyCancelKeyDeletionDetails(arg.swift) super.init(swift: swift) } @@ -13582,12 +18426,26 @@ public class DBXTeamLogEventDetailsTeamEncryptionKeyCreateKeyDetails: DBXTeamLog @objc public init(_ arg: DBXTeamLogTeamEncryptionKeyCreateKeyDetails) { - self.teamEncryptionKeyCreateKeyDetails = arg + teamEncryptionKeyCreateKeyDetails = arg let swift = TeamLog.EventDetails.teamEncryptionKeyCreateKeyDetails(arg.swift) super.init(swift: swift) } } +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsTeamEncryptionKeyDeactivateKeyDetails: DBXTeamLogEventDetails { + @objc + public var teamEncryptionKeyDeactivateKeyDetails: DBXTeamLogTeamEncryptionKeyDeactivateKeyDetails + + @objc + public init(_ arg: DBXTeamLogTeamEncryptionKeyDeactivateKeyDetails) { + teamEncryptionKeyDeactivateKeyDetails = arg + let swift = TeamLog.EventDetails.teamEncryptionKeyDeactivateKeyDetails(arg.swift) + super.init(swift: swift) + } +} + /// An unspecified error. @objc public class DBXTeamLogEventDetailsTeamEncryptionKeyDeleteKeyDetails: DBXTeamLogEventDetails { @@ -13596,7 +18454,7 @@ public class DBXTeamLogEventDetailsTeamEncryptionKeyDeleteKeyDetails: DBXTeamLog @objc public init(_ arg: DBXTeamLogTeamEncryptionKeyDeleteKeyDetails) { - self.teamEncryptionKeyDeleteKeyDetails = arg + teamEncryptionKeyDeleteKeyDetails = arg let swift = TeamLog.EventDetails.teamEncryptionKeyDeleteKeyDetails(arg.swift) super.init(swift: swift) } @@ -13610,7 +18468,7 @@ public class DBXTeamLogEventDetailsTeamEncryptionKeyDisableKeyDetails: DBXTeamLo @objc public init(_ arg: DBXTeamLogTeamEncryptionKeyDisableKeyDetails) { - self.teamEncryptionKeyDisableKeyDetails = arg + teamEncryptionKeyDisableKeyDetails = arg let swift = TeamLog.EventDetails.teamEncryptionKeyDisableKeyDetails(arg.swift) super.init(swift: swift) } @@ -13624,7 +18482,7 @@ public class DBXTeamLogEventDetailsTeamEncryptionKeyEnableKeyDetails: DBXTeamLog @objc public init(_ arg: DBXTeamLogTeamEncryptionKeyEnableKeyDetails) { - self.teamEncryptionKeyEnableKeyDetails = arg + teamEncryptionKeyEnableKeyDetails = arg let swift = TeamLog.EventDetails.teamEncryptionKeyEnableKeyDetails(arg.swift) super.init(swift: swift) } @@ -13638,7 +18496,7 @@ public class DBXTeamLogEventDetailsTeamEncryptionKeyRotateKeyDetails: DBXTeamLog @objc public init(_ arg: DBXTeamLogTeamEncryptionKeyRotateKeyDetails) { - self.teamEncryptionKeyRotateKeyDetails = arg + teamEncryptionKeyRotateKeyDetails = arg let swift = TeamLog.EventDetails.teamEncryptionKeyRotateKeyDetails(arg.swift) super.init(swift: swift) } @@ -13652,7 +18510,7 @@ public class DBXTeamLogEventDetailsTeamEncryptionKeyScheduleKeyDeletionDetails: @objc public init(_ arg: DBXTeamLogTeamEncryptionKeyScheduleKeyDeletionDetails) { - self.teamEncryptionKeyScheduleKeyDeletionDetails = arg + teamEncryptionKeyScheduleKeyDeletionDetails = arg let swift = TeamLog.EventDetails.teamEncryptionKeyScheduleKeyDeletionDetails(arg.swift) super.init(swift: swift) } @@ -13666,7 +18524,7 @@ public class DBXTeamLogEventDetailsApplyNamingConventionDetails: DBXTeamLogEvent @objc public init(_ arg: DBXTeamLogApplyNamingConventionDetails) { - self.applyNamingConventionDetails = arg + applyNamingConventionDetails = arg let swift = TeamLog.EventDetails.applyNamingConventionDetails(arg.swift) super.init(swift: swift) } @@ -13680,7 +18538,7 @@ public class DBXTeamLogEventDetailsCreateFolderDetails: DBXTeamLogEventDetails { @objc public init(_ arg: DBXTeamLogCreateFolderDetails) { - self.createFolderDetails = arg + createFolderDetails = arg let swift = TeamLog.EventDetails.createFolderDetails(arg.swift) super.init(swift: swift) } @@ -13694,7 +18552,7 @@ public class DBXTeamLogEventDetailsFileAddDetails: DBXTeamLogEventDetails { @objc public init(_ arg: DBXTeamLogFileAddDetails) { - self.fileAddDetails = arg + fileAddDetails = arg let swift = TeamLog.EventDetails.fileAddDetails(arg.swift) super.init(swift: swift) } @@ -13708,7 +18566,7 @@ public class DBXTeamLogEventDetailsFileAddFromAutomationDetails: DBXTeamLogEvent @objc public init(_ arg: DBXTeamLogFileAddFromAutomationDetails) { - self.fileAddFromAutomationDetails = arg + fileAddFromAutomationDetails = arg let swift = TeamLog.EventDetails.fileAddFromAutomationDetails(arg.swift) super.init(swift: swift) } @@ -13722,7 +18580,7 @@ public class DBXTeamLogEventDetailsFileCopyDetails: DBXTeamLogEventDetails { @objc public init(_ arg: DBXTeamLogFileCopyDetails) { - self.fileCopyDetails = arg + fileCopyDetails = arg let swift = TeamLog.EventDetails.fileCopyDetails(arg.swift) super.init(swift: swift) } @@ -13736,7 +18594,7 @@ public class DBXTeamLogEventDetailsFileDeleteDetails: DBXTeamLogEventDetails { @objc public init(_ arg: DBXTeamLogFileDeleteDetails) { - self.fileDeleteDetails = arg + fileDeleteDetails = arg let swift = TeamLog.EventDetails.fileDeleteDetails(arg.swift) super.init(swift: swift) } @@ -13750,7 +18608,7 @@ public class DBXTeamLogEventDetailsFileDownloadDetails: DBXTeamLogEventDetails { @objc public init(_ arg: DBXTeamLogFileDownloadDetails) { - self.fileDownloadDetails = arg + fileDownloadDetails = arg let swift = TeamLog.EventDetails.fileDownloadDetails(arg.swift) super.init(swift: swift) } @@ -13764,7 +18622,7 @@ public class DBXTeamLogEventDetailsFileEditDetails: DBXTeamLogEventDetails { @objc public init(_ arg: DBXTeamLogFileEditDetails) { - self.fileEditDetails = arg + fileEditDetails = arg let swift = TeamLog.EventDetails.fileEditDetails(arg.swift) super.init(swift: swift) } @@ -13778,7 +18636,7 @@ public class DBXTeamLogEventDetailsFileGetCopyReferenceDetails: DBXTeamLogEventD @objc public init(_ arg: DBXTeamLogFileGetCopyReferenceDetails) { - self.fileGetCopyReferenceDetails = arg + fileGetCopyReferenceDetails = arg let swift = TeamLog.EventDetails.fileGetCopyReferenceDetails(arg.swift) super.init(swift: swift) } @@ -13792,7 +18650,7 @@ public class DBXTeamLogEventDetailsFileLockingLockStatusChangedDetails: DBXTeamL @objc public init(_ arg: DBXTeamLogFileLockingLockStatusChangedDetails) { - self.fileLockingLockStatusChangedDetails = arg + fileLockingLockStatusChangedDetails = arg let swift = TeamLog.EventDetails.fileLockingLockStatusChangedDetails(arg.swift) super.init(swift: swift) } @@ -13806,7 +18664,7 @@ public class DBXTeamLogEventDetailsFileMoveDetails: DBXTeamLogEventDetails { @objc public init(_ arg: DBXTeamLogFileMoveDetails) { - self.fileMoveDetails = arg + fileMoveDetails = arg let swift = TeamLog.EventDetails.fileMoveDetails(arg.swift) super.init(swift: swift) } @@ -13820,7 +18678,7 @@ public class DBXTeamLogEventDetailsFilePermanentlyDeleteDetails: DBXTeamLogEvent @objc public init(_ arg: DBXTeamLogFilePermanentlyDeleteDetails) { - self.filePermanentlyDeleteDetails = arg + filePermanentlyDeleteDetails = arg let swift = TeamLog.EventDetails.filePermanentlyDeleteDetails(arg.swift) super.init(swift: swift) } @@ -13834,7 +18692,7 @@ public class DBXTeamLogEventDetailsFilePreviewDetails: DBXTeamLogEventDetails { @objc public init(_ arg: DBXTeamLogFilePreviewDetails) { - self.filePreviewDetails = arg + filePreviewDetails = arg let swift = TeamLog.EventDetails.filePreviewDetails(arg.swift) super.init(swift: swift) } @@ -13848,7 +18706,7 @@ public class DBXTeamLogEventDetailsFileRenameDetails: DBXTeamLogEventDetails { @objc public init(_ arg: DBXTeamLogFileRenameDetails) { - self.fileRenameDetails = arg + fileRenameDetails = arg let swift = TeamLog.EventDetails.fileRenameDetails(arg.swift) super.init(swift: swift) } @@ -13862,7 +18720,7 @@ public class DBXTeamLogEventDetailsFileRestoreDetails: DBXTeamLogEventDetails { @objc public init(_ arg: DBXTeamLogFileRestoreDetails) { - self.fileRestoreDetails = arg + fileRestoreDetails = arg let swift = TeamLog.EventDetails.fileRestoreDetails(arg.swift) super.init(swift: swift) } @@ -13876,7 +18734,7 @@ public class DBXTeamLogEventDetailsFileRevertDetails: DBXTeamLogEventDetails { @objc public init(_ arg: DBXTeamLogFileRevertDetails) { - self.fileRevertDetails = arg + fileRevertDetails = arg let swift = TeamLog.EventDetails.fileRevertDetails(arg.swift) super.init(swift: swift) } @@ -13890,7 +18748,7 @@ public class DBXTeamLogEventDetailsFileRollbackChangesDetails: DBXTeamLogEventDe @objc public init(_ arg: DBXTeamLogFileRollbackChangesDetails) { - self.fileRollbackChangesDetails = arg + fileRollbackChangesDetails = arg let swift = TeamLog.EventDetails.fileRollbackChangesDetails(arg.swift) super.init(swift: swift) } @@ -13904,7 +18762,7 @@ public class DBXTeamLogEventDetailsFileSaveCopyReferenceDetails: DBXTeamLogEvent @objc public init(_ arg: DBXTeamLogFileSaveCopyReferenceDetails) { - self.fileSaveCopyReferenceDetails = arg + fileSaveCopyReferenceDetails = arg let swift = TeamLog.EventDetails.fileSaveCopyReferenceDetails(arg.swift) super.init(swift: swift) } @@ -13918,7 +18776,7 @@ public class DBXTeamLogEventDetailsFolderOverviewDescriptionChangedDetails: DBXT @objc public init(_ arg: DBXTeamLogFolderOverviewDescriptionChangedDetails) { - self.folderOverviewDescriptionChangedDetails = arg + folderOverviewDescriptionChangedDetails = arg let swift = TeamLog.EventDetails.folderOverviewDescriptionChangedDetails(arg.swift) super.init(swift: swift) } @@ -13932,7 +18790,7 @@ public class DBXTeamLogEventDetailsFolderOverviewItemPinnedDetails: DBXTeamLogEv @objc public init(_ arg: DBXTeamLogFolderOverviewItemPinnedDetails) { - self.folderOverviewItemPinnedDetails = arg + folderOverviewItemPinnedDetails = arg let swift = TeamLog.EventDetails.folderOverviewItemPinnedDetails(arg.swift) super.init(swift: swift) } @@ -13946,12 +18804,26 @@ public class DBXTeamLogEventDetailsFolderOverviewItemUnpinnedDetails: DBXTeamLog @objc public init(_ arg: DBXTeamLogFolderOverviewItemUnpinnedDetails) { - self.folderOverviewItemUnpinnedDetails = arg + folderOverviewItemUnpinnedDetails = arg let swift = TeamLog.EventDetails.folderOverviewItemUnpinnedDetails(arg.swift) super.init(swift: swift) } } +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsMediaHubFileDownloadedDetails: DBXTeamLogEventDetails { + @objc + public var mediaHubFileDownloadedDetails: DBXTeamLogMediaHubFileDownloadedDetails + + @objc + public init(_ arg: DBXTeamLogMediaHubFileDownloadedDetails) { + mediaHubFileDownloadedDetails = arg + let swift = TeamLog.EventDetails.mediaHubFileDownloadedDetails(arg.swift) + super.init(swift: swift) + } +} + /// An unspecified error. @objc public class DBXTeamLogEventDetailsObjectLabelAddedDetails: DBXTeamLogEventDetails { @@ -13960,7 +18832,7 @@ public class DBXTeamLogEventDetailsObjectLabelAddedDetails: DBXTeamLogEventDetai @objc public init(_ arg: DBXTeamLogObjectLabelAddedDetails) { - self.objectLabelAddedDetails = arg + objectLabelAddedDetails = arg let swift = TeamLog.EventDetails.objectLabelAddedDetails(arg.swift) super.init(swift: swift) } @@ -13974,7 +18846,7 @@ public class DBXTeamLogEventDetailsObjectLabelRemovedDetails: DBXTeamLogEventDet @objc public init(_ arg: DBXTeamLogObjectLabelRemovedDetails) { - self.objectLabelRemovedDetails = arg + objectLabelRemovedDetails = arg let swift = TeamLog.EventDetails.objectLabelRemovedDetails(arg.swift) super.init(swift: swift) } @@ -13988,7 +18860,7 @@ public class DBXTeamLogEventDetailsObjectLabelUpdatedValueDetails: DBXTeamLogEve @objc public init(_ arg: DBXTeamLogObjectLabelUpdatedValueDetails) { - self.objectLabelUpdatedValueDetails = arg + objectLabelUpdatedValueDetails = arg let swift = TeamLog.EventDetails.objectLabelUpdatedValueDetails(arg.swift) super.init(swift: swift) } @@ -14002,7 +18874,7 @@ public class DBXTeamLogEventDetailsOrganizeFolderWithTidyDetails: DBXTeamLogEven @objc public init(_ arg: DBXTeamLogOrganizeFolderWithTidyDetails) { - self.organizeFolderWithTidyDetails = arg + organizeFolderWithTidyDetails = arg let swift = TeamLog.EventDetails.organizeFolderWithTidyDetails(arg.swift) super.init(swift: swift) } @@ -14016,12 +18888,40 @@ public class DBXTeamLogEventDetailsReplayFileDeleteDetails: DBXTeamLogEventDetai @objc public init(_ arg: DBXTeamLogReplayFileDeleteDetails) { - self.replayFileDeleteDetails = arg + replayFileDeleteDetails = arg let swift = TeamLog.EventDetails.replayFileDeleteDetails(arg.swift) super.init(swift: swift) } } +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsReplayFileDownloadedDetails: DBXTeamLogEventDetails { + @objc + public var replayFileDownloadedDetails: DBXTeamLogReplayFileDownloadedDetails + + @objc + public init(_ arg: DBXTeamLogReplayFileDownloadedDetails) { + replayFileDownloadedDetails = arg + let swift = TeamLog.EventDetails.replayFileDownloadedDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsReplayTeamProjectCreatedDetails: DBXTeamLogEventDetails { + @objc + public var replayTeamProjectCreatedDetails: DBXTeamLogReplayTeamProjectCreatedDetails + + @objc + public init(_ arg: DBXTeamLogReplayTeamProjectCreatedDetails) { + replayTeamProjectCreatedDetails = arg + let swift = TeamLog.EventDetails.replayTeamProjectCreatedDetails(arg.swift) + super.init(swift: swift) + } +} + /// An unspecified error. @objc public class DBXTeamLogEventDetailsRewindFolderDetails: DBXTeamLogEventDetails { @@ -14030,7 +18930,7 @@ public class DBXTeamLogEventDetailsRewindFolderDetails: DBXTeamLogEventDetails { @objc public init(_ arg: DBXTeamLogRewindFolderDetails) { - self.rewindFolderDetails = arg + rewindFolderDetails = arg let swift = TeamLog.EventDetails.rewindFolderDetails(arg.swift) super.init(swift: swift) } @@ -14044,7 +18944,7 @@ public class DBXTeamLogEventDetailsUndoNamingConventionDetails: DBXTeamLogEventD @objc public init(_ arg: DBXTeamLogUndoNamingConventionDetails) { - self.undoNamingConventionDetails = arg + undoNamingConventionDetails = arg let swift = TeamLog.EventDetails.undoNamingConventionDetails(arg.swift) super.init(swift: swift) } @@ -14058,7 +18958,7 @@ public class DBXTeamLogEventDetailsUndoOrganizeFolderWithTidyDetails: DBXTeamLog @objc public init(_ arg: DBXTeamLogUndoOrganizeFolderWithTidyDetails) { - self.undoOrganizeFolderWithTidyDetails = arg + undoOrganizeFolderWithTidyDetails = arg let swift = TeamLog.EventDetails.undoOrganizeFolderWithTidyDetails(arg.swift) super.init(swift: swift) } @@ -14072,7 +18972,7 @@ public class DBXTeamLogEventDetailsUserTagsAddedDetails: DBXTeamLogEventDetails @objc public init(_ arg: DBXTeamLogUserTagsAddedDetails) { - self.userTagsAddedDetails = arg + userTagsAddedDetails = arg let swift = TeamLog.EventDetails.userTagsAddedDetails(arg.swift) super.init(swift: swift) } @@ -14086,7 +18986,7 @@ public class DBXTeamLogEventDetailsUserTagsRemovedDetails: DBXTeamLogEventDetail @objc public init(_ arg: DBXTeamLogUserTagsRemovedDetails) { - self.userTagsRemovedDetails = arg + userTagsRemovedDetails = arg let swift = TeamLog.EventDetails.userTagsRemovedDetails(arg.swift) super.init(swift: swift) } @@ -14100,12 +19000,26 @@ public class DBXTeamLogEventDetailsEmailIngestReceiveFileDetails: DBXTeamLogEven @objc public init(_ arg: DBXTeamLogEmailIngestReceiveFileDetails) { - self.emailIngestReceiveFileDetails = arg + emailIngestReceiveFileDetails = arg let swift = TeamLog.EventDetails.emailIngestReceiveFileDetails(arg.swift) super.init(swift: swift) } } +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsFileRequestAutoCloseDetails: DBXTeamLogEventDetails { + @objc + public var fileRequestAutoCloseDetails: DBXTeamLogFileRequestAutoCloseDetails + + @objc + public init(_ arg: DBXTeamLogFileRequestAutoCloseDetails) { + fileRequestAutoCloseDetails = arg + let swift = TeamLog.EventDetails.fileRequestAutoCloseDetails(arg.swift) + super.init(swift: swift) + } +} + /// An unspecified error. @objc public class DBXTeamLogEventDetailsFileRequestChangeDetails: DBXTeamLogEventDetails { @@ -14114,7 +19028,7 @@ public class DBXTeamLogEventDetailsFileRequestChangeDetails: DBXTeamLogEventDeta @objc public init(_ arg: DBXTeamLogFileRequestChangeDetails) { - self.fileRequestChangeDetails = arg + fileRequestChangeDetails = arg let swift = TeamLog.EventDetails.fileRequestChangeDetails(arg.swift) super.init(swift: swift) } @@ -14128,7 +19042,7 @@ public class DBXTeamLogEventDetailsFileRequestCloseDetails: DBXTeamLogEventDetai @objc public init(_ arg: DBXTeamLogFileRequestCloseDetails) { - self.fileRequestCloseDetails = arg + fileRequestCloseDetails = arg let swift = TeamLog.EventDetails.fileRequestCloseDetails(arg.swift) super.init(swift: swift) } @@ -14142,7 +19056,7 @@ public class DBXTeamLogEventDetailsFileRequestCreateDetails: DBXTeamLogEventDeta @objc public init(_ arg: DBXTeamLogFileRequestCreateDetails) { - self.fileRequestCreateDetails = arg + fileRequestCreateDetails = arg let swift = TeamLog.EventDetails.fileRequestCreateDetails(arg.swift) super.init(swift: swift) } @@ -14156,7 +19070,7 @@ public class DBXTeamLogEventDetailsFileRequestDeleteDetails: DBXTeamLogEventDeta @objc public init(_ arg: DBXTeamLogFileRequestDeleteDetails) { - self.fileRequestDeleteDetails = arg + fileRequestDeleteDetails = arg let swift = TeamLog.EventDetails.fileRequestDeleteDetails(arg.swift) super.init(swift: swift) } @@ -14170,7 +19084,7 @@ public class DBXTeamLogEventDetailsFileRequestReceiveFileDetails: DBXTeamLogEven @objc public init(_ arg: DBXTeamLogFileRequestReceiveFileDetails) { - self.fileRequestReceiveFileDetails = arg + fileRequestReceiveFileDetails = arg let swift = TeamLog.EventDetails.fileRequestReceiveFileDetails(arg.swift) super.init(swift: swift) } @@ -14184,7 +19098,7 @@ public class DBXTeamLogEventDetailsGroupAddExternalIdDetails: DBXTeamLogEventDet @objc public init(_ arg: DBXTeamLogGroupAddExternalIdDetails) { - self.groupAddExternalIdDetails = arg + groupAddExternalIdDetails = arg let swift = TeamLog.EventDetails.groupAddExternalIdDetails(arg.swift) super.init(swift: swift) } @@ -14198,7 +19112,7 @@ public class DBXTeamLogEventDetailsGroupAddMemberDetails: DBXTeamLogEventDetails @objc public init(_ arg: DBXTeamLogGroupAddMemberDetails) { - self.groupAddMemberDetails = arg + groupAddMemberDetails = arg let swift = TeamLog.EventDetails.groupAddMemberDetails(arg.swift) super.init(swift: swift) } @@ -14212,7 +19126,7 @@ public class DBXTeamLogEventDetailsGroupChangeExternalIdDetails: DBXTeamLogEvent @objc public init(_ arg: DBXTeamLogGroupChangeExternalIdDetails) { - self.groupChangeExternalIdDetails = arg + groupChangeExternalIdDetails = arg let swift = TeamLog.EventDetails.groupChangeExternalIdDetails(arg.swift) super.init(swift: swift) } @@ -14226,7 +19140,7 @@ public class DBXTeamLogEventDetailsGroupChangeManagementTypeDetails: DBXTeamLogE @objc public init(_ arg: DBXTeamLogGroupChangeManagementTypeDetails) { - self.groupChangeManagementTypeDetails = arg + groupChangeManagementTypeDetails = arg let swift = TeamLog.EventDetails.groupChangeManagementTypeDetails(arg.swift) super.init(swift: swift) } @@ -14240,7 +19154,7 @@ public class DBXTeamLogEventDetailsGroupChangeMemberRoleDetails: DBXTeamLogEvent @objc public init(_ arg: DBXTeamLogGroupChangeMemberRoleDetails) { - self.groupChangeMemberRoleDetails = arg + groupChangeMemberRoleDetails = arg let swift = TeamLog.EventDetails.groupChangeMemberRoleDetails(arg.swift) super.init(swift: swift) } @@ -14254,7 +19168,7 @@ public class DBXTeamLogEventDetailsGroupCreateDetails: DBXTeamLogEventDetails { @objc public init(_ arg: DBXTeamLogGroupCreateDetails) { - self.groupCreateDetails = arg + groupCreateDetails = arg let swift = TeamLog.EventDetails.groupCreateDetails(arg.swift) super.init(swift: swift) } @@ -14268,7 +19182,7 @@ public class DBXTeamLogEventDetailsGroupDeleteDetails: DBXTeamLogEventDetails { @objc public init(_ arg: DBXTeamLogGroupDeleteDetails) { - self.groupDeleteDetails = arg + groupDeleteDetails = arg let swift = TeamLog.EventDetails.groupDeleteDetails(arg.swift) super.init(swift: swift) } @@ -14282,12 +19196,26 @@ public class DBXTeamLogEventDetailsGroupDescriptionUpdatedDetails: DBXTeamLogEve @objc public init(_ arg: DBXTeamLogGroupDescriptionUpdatedDetails) { - self.groupDescriptionUpdatedDetails = arg + groupDescriptionUpdatedDetails = arg let swift = TeamLog.EventDetails.groupDescriptionUpdatedDetails(arg.swift) super.init(swift: swift) } } +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsGroupExternalSharingSettingOverrideChangedDetails: DBXTeamLogEventDetails { + @objc + public var groupExternalSharingSettingOverrideChangedDetails: DBXTeamLogGroupExternalSharingSettingOverrideChangedDetails + + @objc + public init(_ arg: DBXTeamLogGroupExternalSharingSettingOverrideChangedDetails) { + groupExternalSharingSettingOverrideChangedDetails = arg + let swift = TeamLog.EventDetails.groupExternalSharingSettingOverrideChangedDetails(arg.swift) + super.init(swift: swift) + } +} + /// An unspecified error. @objc public class DBXTeamLogEventDetailsGroupJoinPolicyUpdatedDetails: DBXTeamLogEventDetails { @@ -14296,7 +19224,7 @@ public class DBXTeamLogEventDetailsGroupJoinPolicyUpdatedDetails: DBXTeamLogEven @objc public init(_ arg: DBXTeamLogGroupJoinPolicyUpdatedDetails) { - self.groupJoinPolicyUpdatedDetails = arg + groupJoinPolicyUpdatedDetails = arg let swift = TeamLog.EventDetails.groupJoinPolicyUpdatedDetails(arg.swift) super.init(swift: swift) } @@ -14310,7 +19238,7 @@ public class DBXTeamLogEventDetailsGroupMovedDetails: DBXTeamLogEventDetails { @objc public init(_ arg: DBXTeamLogGroupMovedDetails) { - self.groupMovedDetails = arg + groupMovedDetails = arg let swift = TeamLog.EventDetails.groupMovedDetails(arg.swift) super.init(swift: swift) } @@ -14324,7 +19252,7 @@ public class DBXTeamLogEventDetailsGroupRemoveExternalIdDetails: DBXTeamLogEvent @objc public init(_ arg: DBXTeamLogGroupRemoveExternalIdDetails) { - self.groupRemoveExternalIdDetails = arg + groupRemoveExternalIdDetails = arg let swift = TeamLog.EventDetails.groupRemoveExternalIdDetails(arg.swift) super.init(swift: swift) } @@ -14338,7 +19266,7 @@ public class DBXTeamLogEventDetailsGroupRemoveMemberDetails: DBXTeamLogEventDeta @objc public init(_ arg: DBXTeamLogGroupRemoveMemberDetails) { - self.groupRemoveMemberDetails = arg + groupRemoveMemberDetails = arg let swift = TeamLog.EventDetails.groupRemoveMemberDetails(arg.swift) super.init(swift: swift) } @@ -14352,7 +19280,7 @@ public class DBXTeamLogEventDetailsGroupRenameDetails: DBXTeamLogEventDetails { @objc public init(_ arg: DBXTeamLogGroupRenameDetails) { - self.groupRenameDetails = arg + groupRenameDetails = arg let swift = TeamLog.EventDetails.groupRenameDetails(arg.swift) super.init(swift: swift) } @@ -14366,7 +19294,7 @@ public class DBXTeamLogEventDetailsAccountLockOrUnlockedDetails: DBXTeamLogEvent @objc public init(_ arg: DBXTeamLogAccountLockOrUnlockedDetails) { - self.accountLockOrUnlockedDetails = arg + accountLockOrUnlockedDetails = arg let swift = TeamLog.EventDetails.accountLockOrUnlockedDetails(arg.swift) super.init(swift: swift) } @@ -14380,7 +19308,7 @@ public class DBXTeamLogEventDetailsEmmErrorDetails: DBXTeamLogEventDetails { @objc public init(_ arg: DBXTeamLogEmmErrorDetails) { - self.emmErrorDetails = arg + emmErrorDetails = arg let swift = TeamLog.EventDetails.emmErrorDetails(arg.swift) super.init(swift: swift) } @@ -14394,7 +19322,7 @@ public class DBXTeamLogEventDetailsGuestAdminSignedInViaTrustedTeamsDetails: DBX @objc public init(_ arg: DBXTeamLogGuestAdminSignedInViaTrustedTeamsDetails) { - self.guestAdminSignedInViaTrustedTeamsDetails = arg + guestAdminSignedInViaTrustedTeamsDetails = arg let swift = TeamLog.EventDetails.guestAdminSignedInViaTrustedTeamsDetails(arg.swift) super.init(swift: swift) } @@ -14408,7 +19336,7 @@ public class DBXTeamLogEventDetailsGuestAdminSignedOutViaTrustedTeamsDetails: DB @objc public init(_ arg: DBXTeamLogGuestAdminSignedOutViaTrustedTeamsDetails) { - self.guestAdminSignedOutViaTrustedTeamsDetails = arg + guestAdminSignedOutViaTrustedTeamsDetails = arg let swift = TeamLog.EventDetails.guestAdminSignedOutViaTrustedTeamsDetails(arg.swift) super.init(swift: swift) } @@ -14422,7 +19350,7 @@ public class DBXTeamLogEventDetailsLoginFailDetails: DBXTeamLogEventDetails { @objc public init(_ arg: DBXTeamLogLoginFailDetails) { - self.loginFailDetails = arg + loginFailDetails = arg let swift = TeamLog.EventDetails.loginFailDetails(arg.swift) super.init(swift: swift) } @@ -14436,7 +19364,7 @@ public class DBXTeamLogEventDetailsLoginSuccessDetails: DBXTeamLogEventDetails { @objc public init(_ arg: DBXTeamLogLoginSuccessDetails) { - self.loginSuccessDetails = arg + loginSuccessDetails = arg let swift = TeamLog.EventDetails.loginSuccessDetails(arg.swift) super.init(swift: swift) } @@ -14450,7 +19378,7 @@ public class DBXTeamLogEventDetailsLogoutDetails: DBXTeamLogEventDetails { @objc public init(_ arg: DBXTeamLogLogoutDetails) { - self.logoutDetails = arg + logoutDetails = arg let swift = TeamLog.EventDetails.logoutDetails(arg.swift) super.init(swift: swift) } @@ -14464,7 +19392,7 @@ public class DBXTeamLogEventDetailsResellerSupportSessionEndDetails: DBXTeamLogE @objc public init(_ arg: DBXTeamLogResellerSupportSessionEndDetails) { - self.resellerSupportSessionEndDetails = arg + resellerSupportSessionEndDetails = arg let swift = TeamLog.EventDetails.resellerSupportSessionEndDetails(arg.swift) super.init(swift: swift) } @@ -14478,7 +19406,7 @@ public class DBXTeamLogEventDetailsResellerSupportSessionStartDetails: DBXTeamLo @objc public init(_ arg: DBXTeamLogResellerSupportSessionStartDetails) { - self.resellerSupportSessionStartDetails = arg + resellerSupportSessionStartDetails = arg let swift = TeamLog.EventDetails.resellerSupportSessionStartDetails(arg.swift) super.init(swift: swift) } @@ -14492,7 +19420,7 @@ public class DBXTeamLogEventDetailsSignInAsSessionEndDetails: DBXTeamLogEventDet @objc public init(_ arg: DBXTeamLogSignInAsSessionEndDetails) { - self.signInAsSessionEndDetails = arg + signInAsSessionEndDetails = arg let swift = TeamLog.EventDetails.signInAsSessionEndDetails(arg.swift) super.init(swift: swift) } @@ -14506,7 +19434,7 @@ public class DBXTeamLogEventDetailsSignInAsSessionStartDetails: DBXTeamLogEventD @objc public init(_ arg: DBXTeamLogSignInAsSessionStartDetails) { - self.signInAsSessionStartDetails = arg + signInAsSessionStartDetails = arg let swift = TeamLog.EventDetails.signInAsSessionStartDetails(arg.swift) super.init(swift: swift) } @@ -14520,12 +19448,40 @@ public class DBXTeamLogEventDetailsSsoErrorDetails: DBXTeamLogEventDetails { @objc public init(_ arg: DBXTeamLogSsoErrorDetails) { - self.ssoErrorDetails = arg + ssoErrorDetails = arg let swift = TeamLog.EventDetails.ssoErrorDetails(arg.swift) super.init(swift: swift) } } +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsAddonAssignedDetails: DBXTeamLogEventDetails { + @objc + public var addonAssignedDetails: DBXTeamLogAddonAssignedDetails + + @objc + public init(_ arg: DBXTeamLogAddonAssignedDetails) { + addonAssignedDetails = arg + let swift = TeamLog.EventDetails.addonAssignedDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsAddonRemovedDetails: DBXTeamLogEventDetails { + @objc + public var addonRemovedDetails: DBXTeamLogAddonRemovedDetails + + @objc + public init(_ arg: DBXTeamLogAddonRemovedDetails) { + addonRemovedDetails = arg + let swift = TeamLog.EventDetails.addonRemovedDetails(arg.swift) + super.init(swift: swift) + } +} + /// An unspecified error. @objc public class DBXTeamLogEventDetailsBackupAdminInvitationSentDetails: DBXTeamLogEventDetails { @@ -14534,7 +19490,7 @@ public class DBXTeamLogEventDetailsBackupAdminInvitationSentDetails: DBXTeamLogE @objc public init(_ arg: DBXTeamLogBackupAdminInvitationSentDetails) { - self.backupAdminInvitationSentDetails = arg + backupAdminInvitationSentDetails = arg let swift = TeamLog.EventDetails.backupAdminInvitationSentDetails(arg.swift) super.init(swift: swift) } @@ -14548,7 +19504,7 @@ public class DBXTeamLogEventDetailsBackupInvitationOpenedDetails: DBXTeamLogEven @objc public init(_ arg: DBXTeamLogBackupInvitationOpenedDetails) { - self.backupInvitationOpenedDetails = arg + backupInvitationOpenedDetails = arg let swift = TeamLog.EventDetails.backupInvitationOpenedDetails(arg.swift) super.init(swift: swift) } @@ -14562,7 +19518,7 @@ public class DBXTeamLogEventDetailsCreateTeamInviteLinkDetails: DBXTeamLogEventD @objc public init(_ arg: DBXTeamLogCreateTeamInviteLinkDetails) { - self.createTeamInviteLinkDetails = arg + createTeamInviteLinkDetails = arg let swift = TeamLog.EventDetails.createTeamInviteLinkDetails(arg.swift) super.init(swift: swift) } @@ -14576,7 +19532,7 @@ public class DBXTeamLogEventDetailsDeleteTeamInviteLinkDetails: DBXTeamLogEventD @objc public init(_ arg: DBXTeamLogDeleteTeamInviteLinkDetails) { - self.deleteTeamInviteLinkDetails = arg + deleteTeamInviteLinkDetails = arg let swift = TeamLog.EventDetails.deleteTeamInviteLinkDetails(arg.swift) super.init(swift: swift) } @@ -14590,7 +19546,7 @@ public class DBXTeamLogEventDetailsMemberAddExternalIdDetails: DBXTeamLogEventDe @objc public init(_ arg: DBXTeamLogMemberAddExternalIdDetails) { - self.memberAddExternalIdDetails = arg + memberAddExternalIdDetails = arg let swift = TeamLog.EventDetails.memberAddExternalIdDetails(arg.swift) super.init(swift: swift) } @@ -14604,7 +19560,7 @@ public class DBXTeamLogEventDetailsMemberAddNameDetails: DBXTeamLogEventDetails @objc public init(_ arg: DBXTeamLogMemberAddNameDetails) { - self.memberAddNameDetails = arg + memberAddNameDetails = arg let swift = TeamLog.EventDetails.memberAddNameDetails(arg.swift) super.init(swift: swift) } @@ -14618,7 +19574,7 @@ public class DBXTeamLogEventDetailsMemberChangeAdminRoleDetails: DBXTeamLogEvent @objc public init(_ arg: DBXTeamLogMemberChangeAdminRoleDetails) { - self.memberChangeAdminRoleDetails = arg + memberChangeAdminRoleDetails = arg let swift = TeamLog.EventDetails.memberChangeAdminRoleDetails(arg.swift) super.init(swift: swift) } @@ -14632,7 +19588,7 @@ public class DBXTeamLogEventDetailsMemberChangeEmailDetails: DBXTeamLogEventDeta @objc public init(_ arg: DBXTeamLogMemberChangeEmailDetails) { - self.memberChangeEmailDetails = arg + memberChangeEmailDetails = arg let swift = TeamLog.EventDetails.memberChangeEmailDetails(arg.swift) super.init(swift: swift) } @@ -14646,7 +19602,7 @@ public class DBXTeamLogEventDetailsMemberChangeExternalIdDetails: DBXTeamLogEven @objc public init(_ arg: DBXTeamLogMemberChangeExternalIdDetails) { - self.memberChangeExternalIdDetails = arg + memberChangeExternalIdDetails = arg let swift = TeamLog.EventDetails.memberChangeExternalIdDetails(arg.swift) super.init(swift: swift) } @@ -14660,7 +19616,7 @@ public class DBXTeamLogEventDetailsMemberChangeMembershipTypeDetails: DBXTeamLog @objc public init(_ arg: DBXTeamLogMemberChangeMembershipTypeDetails) { - self.memberChangeMembershipTypeDetails = arg + memberChangeMembershipTypeDetails = arg let swift = TeamLog.EventDetails.memberChangeMembershipTypeDetails(arg.swift) super.init(swift: swift) } @@ -14674,7 +19630,7 @@ public class DBXTeamLogEventDetailsMemberChangeNameDetails: DBXTeamLogEventDetai @objc public init(_ arg: DBXTeamLogMemberChangeNameDetails) { - self.memberChangeNameDetails = arg + memberChangeNameDetails = arg let swift = TeamLog.EventDetails.memberChangeNameDetails(arg.swift) super.init(swift: swift) } @@ -14688,7 +19644,7 @@ public class DBXTeamLogEventDetailsMemberChangeResellerRoleDetails: DBXTeamLogEv @objc public init(_ arg: DBXTeamLogMemberChangeResellerRoleDetails) { - self.memberChangeResellerRoleDetails = arg + memberChangeResellerRoleDetails = arg let swift = TeamLog.EventDetails.memberChangeResellerRoleDetails(arg.swift) super.init(swift: swift) } @@ -14702,7 +19658,7 @@ public class DBXTeamLogEventDetailsMemberChangeStatusDetails: DBXTeamLogEventDet @objc public init(_ arg: DBXTeamLogMemberChangeStatusDetails) { - self.memberChangeStatusDetails = arg + memberChangeStatusDetails = arg let swift = TeamLog.EventDetails.memberChangeStatusDetails(arg.swift) super.init(swift: swift) } @@ -14716,7 +19672,7 @@ public class DBXTeamLogEventDetailsMemberDeleteManualContactsDetails: DBXTeamLog @objc public init(_ arg: DBXTeamLogMemberDeleteManualContactsDetails) { - self.memberDeleteManualContactsDetails = arg + memberDeleteManualContactsDetails = arg let swift = TeamLog.EventDetails.memberDeleteManualContactsDetails(arg.swift) super.init(swift: swift) } @@ -14730,12 +19686,26 @@ public class DBXTeamLogEventDetailsMemberDeleteProfilePhotoDetails: DBXTeamLogEv @objc public init(_ arg: DBXTeamLogMemberDeleteProfilePhotoDetails) { - self.memberDeleteProfilePhotoDetails = arg + memberDeleteProfilePhotoDetails = arg let swift = TeamLog.EventDetails.memberDeleteProfilePhotoDetails(arg.swift) super.init(swift: swift) } } +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsMemberFolderContentsAccessedDetails: DBXTeamLogEventDetails { + @objc + public var memberFolderContentsAccessedDetails: DBXTeamLogMemberFolderContentsAccessedDetails + + @objc + public init(_ arg: DBXTeamLogMemberFolderContentsAccessedDetails) { + memberFolderContentsAccessedDetails = arg + let swift = TeamLog.EventDetails.memberFolderContentsAccessedDetails(arg.swift) + super.init(swift: swift) + } +} + /// An unspecified error. @objc public class DBXTeamLogEventDetailsMemberPermanentlyDeleteAccountContentsDetails: DBXTeamLogEventDetails { @@ -14744,7 +19714,7 @@ public class DBXTeamLogEventDetailsMemberPermanentlyDeleteAccountContentsDetails @objc public init(_ arg: DBXTeamLogMemberPermanentlyDeleteAccountContentsDetails) { - self.memberPermanentlyDeleteAccountContentsDetails = arg + memberPermanentlyDeleteAccountContentsDetails = arg let swift = TeamLog.EventDetails.memberPermanentlyDeleteAccountContentsDetails(arg.swift) super.init(swift: swift) } @@ -14758,7 +19728,7 @@ public class DBXTeamLogEventDetailsMemberRemoveExternalIdDetails: DBXTeamLogEven @objc public init(_ arg: DBXTeamLogMemberRemoveExternalIdDetails) { - self.memberRemoveExternalIdDetails = arg + memberRemoveExternalIdDetails = arg let swift = TeamLog.EventDetails.memberRemoveExternalIdDetails(arg.swift) super.init(swift: swift) } @@ -14772,7 +19742,7 @@ public class DBXTeamLogEventDetailsMemberSetProfilePhotoDetails: DBXTeamLogEvent @objc public init(_ arg: DBXTeamLogMemberSetProfilePhotoDetails) { - self.memberSetProfilePhotoDetails = arg + memberSetProfilePhotoDetails = arg let swift = TeamLog.EventDetails.memberSetProfilePhotoDetails(arg.swift) super.init(swift: swift) } @@ -14786,7 +19756,7 @@ public class DBXTeamLogEventDetailsMemberSpaceLimitsAddCustomQuotaDetails: DBXTe @objc public init(_ arg: DBXTeamLogMemberSpaceLimitsAddCustomQuotaDetails) { - self.memberSpaceLimitsAddCustomQuotaDetails = arg + memberSpaceLimitsAddCustomQuotaDetails = arg let swift = TeamLog.EventDetails.memberSpaceLimitsAddCustomQuotaDetails(arg.swift) super.init(swift: swift) } @@ -14800,7 +19770,7 @@ public class DBXTeamLogEventDetailsMemberSpaceLimitsChangeCustomQuotaDetails: DB @objc public init(_ arg: DBXTeamLogMemberSpaceLimitsChangeCustomQuotaDetails) { - self.memberSpaceLimitsChangeCustomQuotaDetails = arg + memberSpaceLimitsChangeCustomQuotaDetails = arg let swift = TeamLog.EventDetails.memberSpaceLimitsChangeCustomQuotaDetails(arg.swift) super.init(swift: swift) } @@ -14814,7 +19784,7 @@ public class DBXTeamLogEventDetailsMemberSpaceLimitsChangeStatusDetails: DBXTeam @objc public init(_ arg: DBXTeamLogMemberSpaceLimitsChangeStatusDetails) { - self.memberSpaceLimitsChangeStatusDetails = arg + memberSpaceLimitsChangeStatusDetails = arg let swift = TeamLog.EventDetails.memberSpaceLimitsChangeStatusDetails(arg.swift) super.init(swift: swift) } @@ -14828,7 +19798,7 @@ public class DBXTeamLogEventDetailsMemberSpaceLimitsRemoveCustomQuotaDetails: DB @objc public init(_ arg: DBXTeamLogMemberSpaceLimitsRemoveCustomQuotaDetails) { - self.memberSpaceLimitsRemoveCustomQuotaDetails = arg + memberSpaceLimitsRemoveCustomQuotaDetails = arg let swift = TeamLog.EventDetails.memberSpaceLimitsRemoveCustomQuotaDetails(arg.swift) super.init(swift: swift) } @@ -14842,7 +19812,7 @@ public class DBXTeamLogEventDetailsMemberSuggestDetails: DBXTeamLogEventDetails @objc public init(_ arg: DBXTeamLogMemberSuggestDetails) { - self.memberSuggestDetails = arg + memberSuggestDetails = arg let swift = TeamLog.EventDetails.memberSuggestDetails(arg.swift) super.init(swift: swift) } @@ -14856,7 +19826,7 @@ public class DBXTeamLogEventDetailsMemberTransferAccountContentsDetails: DBXTeam @objc public init(_ arg: DBXTeamLogMemberTransferAccountContentsDetails) { - self.memberTransferAccountContentsDetails = arg + memberTransferAccountContentsDetails = arg let swift = TeamLog.EventDetails.memberTransferAccountContentsDetails(arg.swift) super.init(swift: swift) } @@ -14870,12 +19840,40 @@ public class DBXTeamLogEventDetailsPendingSecondaryEmailAddedDetails: DBXTeamLog @objc public init(_ arg: DBXTeamLogPendingSecondaryEmailAddedDetails) { - self.pendingSecondaryEmailAddedDetails = arg + pendingSecondaryEmailAddedDetails = arg let swift = TeamLog.EventDetails.pendingSecondaryEmailAddedDetails(arg.swift) super.init(swift: swift) } } +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsProductAssignedToMemberDetails: DBXTeamLogEventDetails { + @objc + public var productAssignedToMemberDetails: DBXTeamLogProductAssignedToMemberDetails + + @objc + public init(_ arg: DBXTeamLogProductAssignedToMemberDetails) { + productAssignedToMemberDetails = arg + let swift = TeamLog.EventDetails.productAssignedToMemberDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsProductRemovedFromMemberDetails: DBXTeamLogEventDetails { + @objc + public var productRemovedFromMemberDetails: DBXTeamLogProductRemovedFromMemberDetails + + @objc + public init(_ arg: DBXTeamLogProductRemovedFromMemberDetails) { + productRemovedFromMemberDetails = arg + let swift = TeamLog.EventDetails.productRemovedFromMemberDetails(arg.swift) + super.init(swift: swift) + } +} + /// An unspecified error. @objc public class DBXTeamLogEventDetailsSecondaryEmailDeletedDetails: DBXTeamLogEventDetails { @@ -14884,7 +19882,7 @@ public class DBXTeamLogEventDetailsSecondaryEmailDeletedDetails: DBXTeamLogEvent @objc public init(_ arg: DBXTeamLogSecondaryEmailDeletedDetails) { - self.secondaryEmailDeletedDetails = arg + secondaryEmailDeletedDetails = arg let swift = TeamLog.EventDetails.secondaryEmailDeletedDetails(arg.swift) super.init(swift: swift) } @@ -14898,7 +19896,7 @@ public class DBXTeamLogEventDetailsSecondaryEmailVerifiedDetails: DBXTeamLogEven @objc public init(_ arg: DBXTeamLogSecondaryEmailVerifiedDetails) { - self.secondaryEmailVerifiedDetails = arg + secondaryEmailVerifiedDetails = arg let swift = TeamLog.EventDetails.secondaryEmailVerifiedDetails(arg.swift) super.init(swift: swift) } @@ -14912,7 +19910,7 @@ public class DBXTeamLogEventDetailsSecondaryMailsPolicyChangedDetails: DBXTeamLo @objc public init(_ arg: DBXTeamLogSecondaryMailsPolicyChangedDetails) { - self.secondaryMailsPolicyChangedDetails = arg + secondaryMailsPolicyChangedDetails = arg let swift = TeamLog.EventDetails.secondaryMailsPolicyChangedDetails(arg.swift) super.init(swift: swift) } @@ -14926,7 +19924,7 @@ public class DBXTeamLogEventDetailsBinderAddPageDetails: DBXTeamLogEventDetails @objc public init(_ arg: DBXTeamLogBinderAddPageDetails) { - self.binderAddPageDetails = arg + binderAddPageDetails = arg let swift = TeamLog.EventDetails.binderAddPageDetails(arg.swift) super.init(swift: swift) } @@ -14940,7 +19938,7 @@ public class DBXTeamLogEventDetailsBinderAddSectionDetails: DBXTeamLogEventDetai @objc public init(_ arg: DBXTeamLogBinderAddSectionDetails) { - self.binderAddSectionDetails = arg + binderAddSectionDetails = arg let swift = TeamLog.EventDetails.binderAddSectionDetails(arg.swift) super.init(swift: swift) } @@ -14954,7 +19952,7 @@ public class DBXTeamLogEventDetailsBinderRemovePageDetails: DBXTeamLogEventDetai @objc public init(_ arg: DBXTeamLogBinderRemovePageDetails) { - self.binderRemovePageDetails = arg + binderRemovePageDetails = arg let swift = TeamLog.EventDetails.binderRemovePageDetails(arg.swift) super.init(swift: swift) } @@ -14968,7 +19966,7 @@ public class DBXTeamLogEventDetailsBinderRemoveSectionDetails: DBXTeamLogEventDe @objc public init(_ arg: DBXTeamLogBinderRemoveSectionDetails) { - self.binderRemoveSectionDetails = arg + binderRemoveSectionDetails = arg let swift = TeamLog.EventDetails.binderRemoveSectionDetails(arg.swift) super.init(swift: swift) } @@ -14982,7 +19980,7 @@ public class DBXTeamLogEventDetailsBinderRenamePageDetails: DBXTeamLogEventDetai @objc public init(_ arg: DBXTeamLogBinderRenamePageDetails) { - self.binderRenamePageDetails = arg + binderRenamePageDetails = arg let swift = TeamLog.EventDetails.binderRenamePageDetails(arg.swift) super.init(swift: swift) } @@ -14996,7 +19994,7 @@ public class DBXTeamLogEventDetailsBinderRenameSectionDetails: DBXTeamLogEventDe @objc public init(_ arg: DBXTeamLogBinderRenameSectionDetails) { - self.binderRenameSectionDetails = arg + binderRenameSectionDetails = arg let swift = TeamLog.EventDetails.binderRenameSectionDetails(arg.swift) super.init(swift: swift) } @@ -15010,7 +20008,7 @@ public class DBXTeamLogEventDetailsBinderReorderPageDetails: DBXTeamLogEventDeta @objc public init(_ arg: DBXTeamLogBinderReorderPageDetails) { - self.binderReorderPageDetails = arg + binderReorderPageDetails = arg let swift = TeamLog.EventDetails.binderReorderPageDetails(arg.swift) super.init(swift: swift) } @@ -15024,7 +20022,7 @@ public class DBXTeamLogEventDetailsBinderReorderSectionDetails: DBXTeamLogEventD @objc public init(_ arg: DBXTeamLogBinderReorderSectionDetails) { - self.binderReorderSectionDetails = arg + binderReorderSectionDetails = arg let swift = TeamLog.EventDetails.binderReorderSectionDetails(arg.swift) super.init(swift: swift) } @@ -15038,7 +20036,7 @@ public class DBXTeamLogEventDetailsPaperContentAddMemberDetails: DBXTeamLogEvent @objc public init(_ arg: DBXTeamLogPaperContentAddMemberDetails) { - self.paperContentAddMemberDetails = arg + paperContentAddMemberDetails = arg let swift = TeamLog.EventDetails.paperContentAddMemberDetails(arg.swift) super.init(swift: swift) } @@ -15052,7 +20050,7 @@ public class DBXTeamLogEventDetailsPaperContentAddToFolderDetails: DBXTeamLogEve @objc public init(_ arg: DBXTeamLogPaperContentAddToFolderDetails) { - self.paperContentAddToFolderDetails = arg + paperContentAddToFolderDetails = arg let swift = TeamLog.EventDetails.paperContentAddToFolderDetails(arg.swift) super.init(swift: swift) } @@ -15066,7 +20064,7 @@ public class DBXTeamLogEventDetailsPaperContentArchiveDetails: DBXTeamLogEventDe @objc public init(_ arg: DBXTeamLogPaperContentArchiveDetails) { - self.paperContentArchiveDetails = arg + paperContentArchiveDetails = arg let swift = TeamLog.EventDetails.paperContentArchiveDetails(arg.swift) super.init(swift: swift) } @@ -15080,7 +20078,7 @@ public class DBXTeamLogEventDetailsPaperContentCreateDetails: DBXTeamLogEventDet @objc public init(_ arg: DBXTeamLogPaperContentCreateDetails) { - self.paperContentCreateDetails = arg + paperContentCreateDetails = arg let swift = TeamLog.EventDetails.paperContentCreateDetails(arg.swift) super.init(swift: swift) } @@ -15094,7 +20092,7 @@ public class DBXTeamLogEventDetailsPaperContentPermanentlyDeleteDetails: DBXTeam @objc public init(_ arg: DBXTeamLogPaperContentPermanentlyDeleteDetails) { - self.paperContentPermanentlyDeleteDetails = arg + paperContentPermanentlyDeleteDetails = arg let swift = TeamLog.EventDetails.paperContentPermanentlyDeleteDetails(arg.swift) super.init(swift: swift) } @@ -15108,7 +20106,7 @@ public class DBXTeamLogEventDetailsPaperContentRemoveFromFolderDetails: DBXTeamL @objc public init(_ arg: DBXTeamLogPaperContentRemoveFromFolderDetails) { - self.paperContentRemoveFromFolderDetails = arg + paperContentRemoveFromFolderDetails = arg let swift = TeamLog.EventDetails.paperContentRemoveFromFolderDetails(arg.swift) super.init(swift: swift) } @@ -15122,7 +20120,7 @@ public class DBXTeamLogEventDetailsPaperContentRemoveMemberDetails: DBXTeamLogEv @objc public init(_ arg: DBXTeamLogPaperContentRemoveMemberDetails) { - self.paperContentRemoveMemberDetails = arg + paperContentRemoveMemberDetails = arg let swift = TeamLog.EventDetails.paperContentRemoveMemberDetails(arg.swift) super.init(swift: swift) } @@ -15136,7 +20134,7 @@ public class DBXTeamLogEventDetailsPaperContentRenameDetails: DBXTeamLogEventDet @objc public init(_ arg: DBXTeamLogPaperContentRenameDetails) { - self.paperContentRenameDetails = arg + paperContentRenameDetails = arg let swift = TeamLog.EventDetails.paperContentRenameDetails(arg.swift) super.init(swift: swift) } @@ -15150,7 +20148,7 @@ public class DBXTeamLogEventDetailsPaperContentRestoreDetails: DBXTeamLogEventDe @objc public init(_ arg: DBXTeamLogPaperContentRestoreDetails) { - self.paperContentRestoreDetails = arg + paperContentRestoreDetails = arg let swift = TeamLog.EventDetails.paperContentRestoreDetails(arg.swift) super.init(swift: swift) } @@ -15164,7 +20162,7 @@ public class DBXTeamLogEventDetailsPaperDocAddCommentDetails: DBXTeamLogEventDet @objc public init(_ arg: DBXTeamLogPaperDocAddCommentDetails) { - self.paperDocAddCommentDetails = arg + paperDocAddCommentDetails = arg let swift = TeamLog.EventDetails.paperDocAddCommentDetails(arg.swift) super.init(swift: swift) } @@ -15178,7 +20176,7 @@ public class DBXTeamLogEventDetailsPaperDocChangeMemberRoleDetails: DBXTeamLogEv @objc public init(_ arg: DBXTeamLogPaperDocChangeMemberRoleDetails) { - self.paperDocChangeMemberRoleDetails = arg + paperDocChangeMemberRoleDetails = arg let swift = TeamLog.EventDetails.paperDocChangeMemberRoleDetails(arg.swift) super.init(swift: swift) } @@ -15192,7 +20190,7 @@ public class DBXTeamLogEventDetailsPaperDocChangeSharingPolicyDetails: DBXTeamLo @objc public init(_ arg: DBXTeamLogPaperDocChangeSharingPolicyDetails) { - self.paperDocChangeSharingPolicyDetails = arg + paperDocChangeSharingPolicyDetails = arg let swift = TeamLog.EventDetails.paperDocChangeSharingPolicyDetails(arg.swift) super.init(swift: swift) } @@ -15206,7 +20204,7 @@ public class DBXTeamLogEventDetailsPaperDocChangeSubscriptionDetails: DBXTeamLog @objc public init(_ arg: DBXTeamLogPaperDocChangeSubscriptionDetails) { - self.paperDocChangeSubscriptionDetails = arg + paperDocChangeSubscriptionDetails = arg let swift = TeamLog.EventDetails.paperDocChangeSubscriptionDetails(arg.swift) super.init(swift: swift) } @@ -15220,7 +20218,7 @@ public class DBXTeamLogEventDetailsPaperDocDeletedDetails: DBXTeamLogEventDetail @objc public init(_ arg: DBXTeamLogPaperDocDeletedDetails) { - self.paperDocDeletedDetails = arg + paperDocDeletedDetails = arg let swift = TeamLog.EventDetails.paperDocDeletedDetails(arg.swift) super.init(swift: swift) } @@ -15234,7 +20232,7 @@ public class DBXTeamLogEventDetailsPaperDocDeleteCommentDetails: DBXTeamLogEvent @objc public init(_ arg: DBXTeamLogPaperDocDeleteCommentDetails) { - self.paperDocDeleteCommentDetails = arg + paperDocDeleteCommentDetails = arg let swift = TeamLog.EventDetails.paperDocDeleteCommentDetails(arg.swift) super.init(swift: swift) } @@ -15248,7 +20246,7 @@ public class DBXTeamLogEventDetailsPaperDocDownloadDetails: DBXTeamLogEventDetai @objc public init(_ arg: DBXTeamLogPaperDocDownloadDetails) { - self.paperDocDownloadDetails = arg + paperDocDownloadDetails = arg let swift = TeamLog.EventDetails.paperDocDownloadDetails(arg.swift) super.init(swift: swift) } @@ -15262,7 +20260,7 @@ public class DBXTeamLogEventDetailsPaperDocEditDetails: DBXTeamLogEventDetails { @objc public init(_ arg: DBXTeamLogPaperDocEditDetails) { - self.paperDocEditDetails = arg + paperDocEditDetails = arg let swift = TeamLog.EventDetails.paperDocEditDetails(arg.swift) super.init(swift: swift) } @@ -15276,7 +20274,7 @@ public class DBXTeamLogEventDetailsPaperDocEditCommentDetails: DBXTeamLogEventDe @objc public init(_ arg: DBXTeamLogPaperDocEditCommentDetails) { - self.paperDocEditCommentDetails = arg + paperDocEditCommentDetails = arg let swift = TeamLog.EventDetails.paperDocEditCommentDetails(arg.swift) super.init(swift: swift) } @@ -15290,7 +20288,7 @@ public class DBXTeamLogEventDetailsPaperDocFollowedDetails: DBXTeamLogEventDetai @objc public init(_ arg: DBXTeamLogPaperDocFollowedDetails) { - self.paperDocFollowedDetails = arg + paperDocFollowedDetails = arg let swift = TeamLog.EventDetails.paperDocFollowedDetails(arg.swift) super.init(swift: swift) } @@ -15304,7 +20302,7 @@ public class DBXTeamLogEventDetailsPaperDocMentionDetails: DBXTeamLogEventDetail @objc public init(_ arg: DBXTeamLogPaperDocMentionDetails) { - self.paperDocMentionDetails = arg + paperDocMentionDetails = arg let swift = TeamLog.EventDetails.paperDocMentionDetails(arg.swift) super.init(swift: swift) } @@ -15318,7 +20316,7 @@ public class DBXTeamLogEventDetailsPaperDocOwnershipChangedDetails: DBXTeamLogEv @objc public init(_ arg: DBXTeamLogPaperDocOwnershipChangedDetails) { - self.paperDocOwnershipChangedDetails = arg + paperDocOwnershipChangedDetails = arg let swift = TeamLog.EventDetails.paperDocOwnershipChangedDetails(arg.swift) super.init(swift: swift) } @@ -15332,7 +20330,7 @@ public class DBXTeamLogEventDetailsPaperDocRequestAccessDetails: DBXTeamLogEvent @objc public init(_ arg: DBXTeamLogPaperDocRequestAccessDetails) { - self.paperDocRequestAccessDetails = arg + paperDocRequestAccessDetails = arg let swift = TeamLog.EventDetails.paperDocRequestAccessDetails(arg.swift) super.init(swift: swift) } @@ -15346,7 +20344,7 @@ public class DBXTeamLogEventDetailsPaperDocResolveCommentDetails: DBXTeamLogEven @objc public init(_ arg: DBXTeamLogPaperDocResolveCommentDetails) { - self.paperDocResolveCommentDetails = arg + paperDocResolveCommentDetails = arg let swift = TeamLog.EventDetails.paperDocResolveCommentDetails(arg.swift) super.init(swift: swift) } @@ -15360,7 +20358,7 @@ public class DBXTeamLogEventDetailsPaperDocRevertDetails: DBXTeamLogEventDetails @objc public init(_ arg: DBXTeamLogPaperDocRevertDetails) { - self.paperDocRevertDetails = arg + paperDocRevertDetails = arg let swift = TeamLog.EventDetails.paperDocRevertDetails(arg.swift) super.init(swift: swift) } @@ -15374,7 +20372,7 @@ public class DBXTeamLogEventDetailsPaperDocSlackShareDetails: DBXTeamLogEventDet @objc public init(_ arg: DBXTeamLogPaperDocSlackShareDetails) { - self.paperDocSlackShareDetails = arg + paperDocSlackShareDetails = arg let swift = TeamLog.EventDetails.paperDocSlackShareDetails(arg.swift) super.init(swift: swift) } @@ -15388,7 +20386,7 @@ public class DBXTeamLogEventDetailsPaperDocTeamInviteDetails: DBXTeamLogEventDet @objc public init(_ arg: DBXTeamLogPaperDocTeamInviteDetails) { - self.paperDocTeamInviteDetails = arg + paperDocTeamInviteDetails = arg let swift = TeamLog.EventDetails.paperDocTeamInviteDetails(arg.swift) super.init(swift: swift) } @@ -15402,7 +20400,7 @@ public class DBXTeamLogEventDetailsPaperDocTrashedDetails: DBXTeamLogEventDetail @objc public init(_ arg: DBXTeamLogPaperDocTrashedDetails) { - self.paperDocTrashedDetails = arg + paperDocTrashedDetails = arg let swift = TeamLog.EventDetails.paperDocTrashedDetails(arg.swift) super.init(swift: swift) } @@ -15416,7 +20414,7 @@ public class DBXTeamLogEventDetailsPaperDocUnresolveCommentDetails: DBXTeamLogEv @objc public init(_ arg: DBXTeamLogPaperDocUnresolveCommentDetails) { - self.paperDocUnresolveCommentDetails = arg + paperDocUnresolveCommentDetails = arg let swift = TeamLog.EventDetails.paperDocUnresolveCommentDetails(arg.swift) super.init(swift: swift) } @@ -15430,7 +20428,7 @@ public class DBXTeamLogEventDetailsPaperDocUntrashedDetails: DBXTeamLogEventDeta @objc public init(_ arg: DBXTeamLogPaperDocUntrashedDetails) { - self.paperDocUntrashedDetails = arg + paperDocUntrashedDetails = arg let swift = TeamLog.EventDetails.paperDocUntrashedDetails(arg.swift) super.init(swift: swift) } @@ -15444,7 +20442,7 @@ public class DBXTeamLogEventDetailsPaperDocViewDetails: DBXTeamLogEventDetails { @objc public init(_ arg: DBXTeamLogPaperDocViewDetails) { - self.paperDocViewDetails = arg + paperDocViewDetails = arg let swift = TeamLog.EventDetails.paperDocViewDetails(arg.swift) super.init(swift: swift) } @@ -15458,7 +20456,7 @@ public class DBXTeamLogEventDetailsPaperExternalViewAllowDetails: DBXTeamLogEven @objc public init(_ arg: DBXTeamLogPaperExternalViewAllowDetails) { - self.paperExternalViewAllowDetails = arg + paperExternalViewAllowDetails = arg let swift = TeamLog.EventDetails.paperExternalViewAllowDetails(arg.swift) super.init(swift: swift) } @@ -15472,7 +20470,7 @@ public class DBXTeamLogEventDetailsPaperExternalViewDefaultTeamDetails: DBXTeamL @objc public init(_ arg: DBXTeamLogPaperExternalViewDefaultTeamDetails) { - self.paperExternalViewDefaultTeamDetails = arg + paperExternalViewDefaultTeamDetails = arg let swift = TeamLog.EventDetails.paperExternalViewDefaultTeamDetails(arg.swift) super.init(swift: swift) } @@ -15486,7 +20484,7 @@ public class DBXTeamLogEventDetailsPaperExternalViewForbidDetails: DBXTeamLogEve @objc public init(_ arg: DBXTeamLogPaperExternalViewForbidDetails) { - self.paperExternalViewForbidDetails = arg + paperExternalViewForbidDetails = arg let swift = TeamLog.EventDetails.paperExternalViewForbidDetails(arg.swift) super.init(swift: swift) } @@ -15500,7 +20498,7 @@ public class DBXTeamLogEventDetailsPaperFolderChangeSubscriptionDetails: DBXTeam @objc public init(_ arg: DBXTeamLogPaperFolderChangeSubscriptionDetails) { - self.paperFolderChangeSubscriptionDetails = arg + paperFolderChangeSubscriptionDetails = arg let swift = TeamLog.EventDetails.paperFolderChangeSubscriptionDetails(arg.swift) super.init(swift: swift) } @@ -15514,7 +20512,7 @@ public class DBXTeamLogEventDetailsPaperFolderDeletedDetails: DBXTeamLogEventDet @objc public init(_ arg: DBXTeamLogPaperFolderDeletedDetails) { - self.paperFolderDeletedDetails = arg + paperFolderDeletedDetails = arg let swift = TeamLog.EventDetails.paperFolderDeletedDetails(arg.swift) super.init(swift: swift) } @@ -15528,7 +20526,7 @@ public class DBXTeamLogEventDetailsPaperFolderFollowedDetails: DBXTeamLogEventDe @objc public init(_ arg: DBXTeamLogPaperFolderFollowedDetails) { - self.paperFolderFollowedDetails = arg + paperFolderFollowedDetails = arg let swift = TeamLog.EventDetails.paperFolderFollowedDetails(arg.swift) super.init(swift: swift) } @@ -15542,7 +20540,7 @@ public class DBXTeamLogEventDetailsPaperFolderTeamInviteDetails: DBXTeamLogEvent @objc public init(_ arg: DBXTeamLogPaperFolderTeamInviteDetails) { - self.paperFolderTeamInviteDetails = arg + paperFolderTeamInviteDetails = arg let swift = TeamLog.EventDetails.paperFolderTeamInviteDetails(arg.swift) super.init(swift: swift) } @@ -15556,7 +20554,7 @@ public class DBXTeamLogEventDetailsPaperPublishedLinkChangePermissionDetails: DB @objc public init(_ arg: DBXTeamLogPaperPublishedLinkChangePermissionDetails) { - self.paperPublishedLinkChangePermissionDetails = arg + paperPublishedLinkChangePermissionDetails = arg let swift = TeamLog.EventDetails.paperPublishedLinkChangePermissionDetails(arg.swift) super.init(swift: swift) } @@ -15570,7 +20568,7 @@ public class DBXTeamLogEventDetailsPaperPublishedLinkCreateDetails: DBXTeamLogEv @objc public init(_ arg: DBXTeamLogPaperPublishedLinkCreateDetails) { - self.paperPublishedLinkCreateDetails = arg + paperPublishedLinkCreateDetails = arg let swift = TeamLog.EventDetails.paperPublishedLinkCreateDetails(arg.swift) super.init(swift: swift) } @@ -15584,7 +20582,7 @@ public class DBXTeamLogEventDetailsPaperPublishedLinkDisabledDetails: DBXTeamLog @objc public init(_ arg: DBXTeamLogPaperPublishedLinkDisabledDetails) { - self.paperPublishedLinkDisabledDetails = arg + paperPublishedLinkDisabledDetails = arg let swift = TeamLog.EventDetails.paperPublishedLinkDisabledDetails(arg.swift) super.init(swift: swift) } @@ -15598,7 +20596,7 @@ public class DBXTeamLogEventDetailsPaperPublishedLinkViewDetails: DBXTeamLogEven @objc public init(_ arg: DBXTeamLogPaperPublishedLinkViewDetails) { - self.paperPublishedLinkViewDetails = arg + paperPublishedLinkViewDetails = arg let swift = TeamLog.EventDetails.paperPublishedLinkViewDetails(arg.swift) super.init(swift: swift) } @@ -15612,7 +20610,7 @@ public class DBXTeamLogEventDetailsPasswordChangeDetails: DBXTeamLogEventDetails @objc public init(_ arg: DBXTeamLogPasswordChangeDetails) { - self.passwordChangeDetails = arg + passwordChangeDetails = arg let swift = TeamLog.EventDetails.passwordChangeDetails(arg.swift) super.init(swift: swift) } @@ -15626,7 +20624,7 @@ public class DBXTeamLogEventDetailsPasswordResetDetails: DBXTeamLogEventDetails @objc public init(_ arg: DBXTeamLogPasswordResetDetails) { - self.passwordResetDetails = arg + passwordResetDetails = arg let swift = TeamLog.EventDetails.passwordResetDetails(arg.swift) super.init(swift: swift) } @@ -15640,12 +20638,124 @@ public class DBXTeamLogEventDetailsPasswordResetAllDetails: DBXTeamLogEventDetai @objc public init(_ arg: DBXTeamLogPasswordResetAllDetails) { - self.passwordResetAllDetails = arg + passwordResetAllDetails = arg let swift = TeamLog.EventDetails.passwordResetAllDetails(arg.swift) super.init(swift: swift) } } +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsProtectActionAddCollaboratorDetails: DBXTeamLogEventDetails { + @objc + public var protectActionAddCollaboratorDetails: DBXTeamLogProtectActionAddCollaboratorDetails + + @objc + public init(_ arg: DBXTeamLogProtectActionAddCollaboratorDetails) { + protectActionAddCollaboratorDetails = arg + let swift = TeamLog.EventDetails.protectActionAddCollaboratorDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsProtectActionAddLinkDetails: DBXTeamLogEventDetails { + @objc + public var protectActionAddLinkDetails: DBXTeamLogProtectActionAddLinkDetails + + @objc + public init(_ arg: DBXTeamLogProtectActionAddLinkDetails) { + protectActionAddLinkDetails = arg + let swift = TeamLog.EventDetails.protectActionAddLinkDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsProtectActionDeleteDetails: DBXTeamLogEventDetails { + @objc + public var protectActionDeleteDetails: DBXTeamLogProtectActionDeleteDetails + + @objc + public init(_ arg: DBXTeamLogProtectActionDeleteDetails) { + protectActionDeleteDetails = arg + let swift = TeamLog.EventDetails.protectActionDeleteDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsProtectActionExportDetails: DBXTeamLogEventDetails { + @objc + public var protectActionExportDetails: DBXTeamLogProtectActionExportDetails + + @objc + public init(_ arg: DBXTeamLogProtectActionExportDetails) { + protectActionExportDetails = arg + let swift = TeamLog.EventDetails.protectActionExportDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsProtectActionRemoveCollaboratorDetails: DBXTeamLogEventDetails { + @objc + public var protectActionRemoveCollaboratorDetails: DBXTeamLogProtectActionRemoveCollaboratorDetails + + @objc + public init(_ arg: DBXTeamLogProtectActionRemoveCollaboratorDetails) { + protectActionRemoveCollaboratorDetails = arg + let swift = TeamLog.EventDetails.protectActionRemoveCollaboratorDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsProtectActionRemoveLinkDetails: DBXTeamLogEventDetails { + @objc + public var protectActionRemoveLinkDetails: DBXTeamLogProtectActionRemoveLinkDetails + + @objc + public init(_ arg: DBXTeamLogProtectActionRemoveLinkDetails) { + protectActionRemoveLinkDetails = arg + let swift = TeamLog.EventDetails.protectActionRemoveLinkDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsProtectActionStopSharingDetails: DBXTeamLogEventDetails { + @objc + public var protectActionStopSharingDetails: DBXTeamLogProtectActionStopSharingDetails + + @objc + public init(_ arg: DBXTeamLogProtectActionStopSharingDetails) { + protectActionStopSharingDetails = arg + let swift = TeamLog.EventDetails.protectActionStopSharingDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsProtectInternalDomainsChangedDetails: DBXTeamLogEventDetails { + @objc + public var protectInternalDomainsChangedDetails: DBXTeamLogProtectInternalDomainsChangedDetails + + @objc + public init(_ arg: DBXTeamLogProtectInternalDomainsChangedDetails) { + protectInternalDomainsChangedDetails = arg + let swift = TeamLog.EventDetails.protectInternalDomainsChangedDetails(arg.swift) + super.init(swift: swift) + } +} + /// An unspecified error. @objc public class DBXTeamLogEventDetailsClassificationCreateReportDetails: DBXTeamLogEventDetails { @@ -15654,7 +20764,7 @@ public class DBXTeamLogEventDetailsClassificationCreateReportDetails: DBXTeamLog @objc public init(_ arg: DBXTeamLogClassificationCreateReportDetails) { - self.classificationCreateReportDetails = arg + classificationCreateReportDetails = arg let swift = TeamLog.EventDetails.classificationCreateReportDetails(arg.swift) super.init(swift: swift) } @@ -15668,7 +20778,7 @@ public class DBXTeamLogEventDetailsClassificationCreateReportFailDetails: DBXTea @objc public init(_ arg: DBXTeamLogClassificationCreateReportFailDetails) { - self.classificationCreateReportFailDetails = arg + classificationCreateReportFailDetails = arg let swift = TeamLog.EventDetails.classificationCreateReportFailDetails(arg.swift) super.init(swift: swift) } @@ -15682,7 +20792,7 @@ public class DBXTeamLogEventDetailsEmmCreateExceptionsReportDetails: DBXTeamLogE @objc public init(_ arg: DBXTeamLogEmmCreateExceptionsReportDetails) { - self.emmCreateExceptionsReportDetails = arg + emmCreateExceptionsReportDetails = arg let swift = TeamLog.EventDetails.emmCreateExceptionsReportDetails(arg.swift) super.init(swift: swift) } @@ -15696,7 +20806,7 @@ public class DBXTeamLogEventDetailsEmmCreateUsageReportDetails: DBXTeamLogEventD @objc public init(_ arg: DBXTeamLogEmmCreateUsageReportDetails) { - self.emmCreateUsageReportDetails = arg + emmCreateUsageReportDetails = arg let swift = TeamLog.EventDetails.emmCreateUsageReportDetails(arg.swift) super.init(swift: swift) } @@ -15710,7 +20820,7 @@ public class DBXTeamLogEventDetailsExportMembersReportDetails: DBXTeamLogEventDe @objc public init(_ arg: DBXTeamLogExportMembersReportDetails) { - self.exportMembersReportDetails = arg + exportMembersReportDetails = arg let swift = TeamLog.EventDetails.exportMembersReportDetails(arg.swift) super.init(swift: swift) } @@ -15724,7 +20834,7 @@ public class DBXTeamLogEventDetailsExportMembersReportFailDetails: DBXTeamLogEve @objc public init(_ arg: DBXTeamLogExportMembersReportFailDetails) { - self.exportMembersReportFailDetails = arg + exportMembersReportFailDetails = arg let swift = TeamLog.EventDetails.exportMembersReportFailDetails(arg.swift) super.init(swift: swift) } @@ -15738,7 +20848,7 @@ public class DBXTeamLogEventDetailsExternalSharingCreateReportDetails: DBXTeamLo @objc public init(_ arg: DBXTeamLogExternalSharingCreateReportDetails) { - self.externalSharingCreateReportDetails = arg + externalSharingCreateReportDetails = arg let swift = TeamLog.EventDetails.externalSharingCreateReportDetails(arg.swift) super.init(swift: swift) } @@ -15752,12 +20862,40 @@ public class DBXTeamLogEventDetailsExternalSharingReportFailedDetails: DBXTeamLo @objc public init(_ arg: DBXTeamLogExternalSharingReportFailedDetails) { - self.externalSharingReportFailedDetails = arg + externalSharingReportFailedDetails = arg let swift = TeamLog.EventDetails.externalSharingReportFailedDetails(arg.swift) super.init(swift: swift) } } +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsMemberAccessDetailsCreateReportDetails: DBXTeamLogEventDetails { + @objc + public var memberAccessDetailsCreateReportDetails: DBXTeamLogMemberAccessDetailsCreateReportDetails + + @objc + public init(_ arg: DBXTeamLogMemberAccessDetailsCreateReportDetails) { + memberAccessDetailsCreateReportDetails = arg + let swift = TeamLog.EventDetails.memberAccessDetailsCreateReportDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsMemberAccessDetailsCreateReportFailedDetails: DBXTeamLogEventDetails { + @objc + public var memberAccessDetailsCreateReportFailedDetails: DBXTeamLogMemberAccessDetailsCreateReportFailedDetails + + @objc + public init(_ arg: DBXTeamLogMemberAccessDetailsCreateReportFailedDetails) { + memberAccessDetailsCreateReportFailedDetails = arg + let swift = TeamLog.EventDetails.memberAccessDetailsCreateReportFailedDetails(arg.swift) + super.init(swift: swift) + } +} + /// An unspecified error. @objc public class DBXTeamLogEventDetailsNoExpirationLinkGenCreateReportDetails: DBXTeamLogEventDetails { @@ -15766,7 +20904,7 @@ public class DBXTeamLogEventDetailsNoExpirationLinkGenCreateReportDetails: DBXTe @objc public init(_ arg: DBXTeamLogNoExpirationLinkGenCreateReportDetails) { - self.noExpirationLinkGenCreateReportDetails = arg + noExpirationLinkGenCreateReportDetails = arg let swift = TeamLog.EventDetails.noExpirationLinkGenCreateReportDetails(arg.swift) super.init(swift: swift) } @@ -15780,7 +20918,7 @@ public class DBXTeamLogEventDetailsNoExpirationLinkGenReportFailedDetails: DBXTe @objc public init(_ arg: DBXTeamLogNoExpirationLinkGenReportFailedDetails) { - self.noExpirationLinkGenReportFailedDetails = arg + noExpirationLinkGenReportFailedDetails = arg let swift = TeamLog.EventDetails.noExpirationLinkGenReportFailedDetails(arg.swift) super.init(swift: swift) } @@ -15794,7 +20932,7 @@ public class DBXTeamLogEventDetailsNoPasswordLinkGenCreateReportDetails: DBXTeam @objc public init(_ arg: DBXTeamLogNoPasswordLinkGenCreateReportDetails) { - self.noPasswordLinkGenCreateReportDetails = arg + noPasswordLinkGenCreateReportDetails = arg let swift = TeamLog.EventDetails.noPasswordLinkGenCreateReportDetails(arg.swift) super.init(swift: swift) } @@ -15808,7 +20946,7 @@ public class DBXTeamLogEventDetailsNoPasswordLinkGenReportFailedDetails: DBXTeam @objc public init(_ arg: DBXTeamLogNoPasswordLinkGenReportFailedDetails) { - self.noPasswordLinkGenReportFailedDetails = arg + noPasswordLinkGenReportFailedDetails = arg let swift = TeamLog.EventDetails.noPasswordLinkGenReportFailedDetails(arg.swift) super.init(swift: swift) } @@ -15822,7 +20960,7 @@ public class DBXTeamLogEventDetailsNoPasswordLinkViewCreateReportDetails: DBXTea @objc public init(_ arg: DBXTeamLogNoPasswordLinkViewCreateReportDetails) { - self.noPasswordLinkViewCreateReportDetails = arg + noPasswordLinkViewCreateReportDetails = arg let swift = TeamLog.EventDetails.noPasswordLinkViewCreateReportDetails(arg.swift) super.init(swift: swift) } @@ -15836,7 +20974,7 @@ public class DBXTeamLogEventDetailsNoPasswordLinkViewReportFailedDetails: DBXTea @objc public init(_ arg: DBXTeamLogNoPasswordLinkViewReportFailedDetails) { - self.noPasswordLinkViewReportFailedDetails = arg + noPasswordLinkViewReportFailedDetails = arg let swift = TeamLog.EventDetails.noPasswordLinkViewReportFailedDetails(arg.swift) super.init(swift: swift) } @@ -15850,7 +20988,7 @@ public class DBXTeamLogEventDetailsOutdatedLinkViewCreateReportDetails: DBXTeamL @objc public init(_ arg: DBXTeamLogOutdatedLinkViewCreateReportDetails) { - self.outdatedLinkViewCreateReportDetails = arg + outdatedLinkViewCreateReportDetails = arg let swift = TeamLog.EventDetails.outdatedLinkViewCreateReportDetails(arg.swift) super.init(swift: swift) } @@ -15864,7 +21002,7 @@ public class DBXTeamLogEventDetailsOutdatedLinkViewReportFailedDetails: DBXTeamL @objc public init(_ arg: DBXTeamLogOutdatedLinkViewReportFailedDetails) { - self.outdatedLinkViewReportFailedDetails = arg + outdatedLinkViewReportFailedDetails = arg let swift = TeamLog.EventDetails.outdatedLinkViewReportFailedDetails(arg.swift) super.init(swift: swift) } @@ -15878,7 +21016,7 @@ public class DBXTeamLogEventDetailsPaperAdminExportStartDetails: DBXTeamLogEvent @objc public init(_ arg: DBXTeamLogPaperAdminExportStartDetails) { - self.paperAdminExportStartDetails = arg + paperAdminExportStartDetails = arg let swift = TeamLog.EventDetails.paperAdminExportStartDetails(arg.swift) super.init(swift: swift) } @@ -15892,7 +21030,7 @@ public class DBXTeamLogEventDetailsRansomwareAlertCreateReportDetails: DBXTeamLo @objc public init(_ arg: DBXTeamLogRansomwareAlertCreateReportDetails) { - self.ransomwareAlertCreateReportDetails = arg + ransomwareAlertCreateReportDetails = arg let swift = TeamLog.EventDetails.ransomwareAlertCreateReportDetails(arg.swift) super.init(swift: swift) } @@ -15906,12 +21044,40 @@ public class DBXTeamLogEventDetailsRansomwareAlertCreateReportFailedDetails: DBX @objc public init(_ arg: DBXTeamLogRansomwareAlertCreateReportFailedDetails) { - self.ransomwareAlertCreateReportFailedDetails = arg + ransomwareAlertCreateReportFailedDetails = arg let swift = TeamLog.EventDetails.ransomwareAlertCreateReportFailedDetails(arg.swift) super.init(swift: swift) } } +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsSharedFoldersCreateReportDetails: DBXTeamLogEventDetails { + @objc + public var sharedFoldersCreateReportDetails: DBXTeamLogSharedFoldersCreateReportDetails + + @objc + public init(_ arg: DBXTeamLogSharedFoldersCreateReportDetails) { + sharedFoldersCreateReportDetails = arg + let swift = TeamLog.EventDetails.sharedFoldersCreateReportDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsSharedFoldersCreateReportFailedDetails: DBXTeamLogEventDetails { + @objc + public var sharedFoldersCreateReportFailedDetails: DBXTeamLogSharedFoldersCreateReportFailedDetails + + @objc + public init(_ arg: DBXTeamLogSharedFoldersCreateReportFailedDetails) { + sharedFoldersCreateReportFailedDetails = arg + let swift = TeamLog.EventDetails.sharedFoldersCreateReportFailedDetails(arg.swift) + super.init(swift: swift) + } +} + /// An unspecified error. @objc public class DBXTeamLogEventDetailsSmartSyncCreateAdminPrivilegeReportDetails: DBXTeamLogEventDetails { @@ -15920,7 +21086,7 @@ public class DBXTeamLogEventDetailsSmartSyncCreateAdminPrivilegeReportDetails: D @objc public init(_ arg: DBXTeamLogSmartSyncCreateAdminPrivilegeReportDetails) { - self.smartSyncCreateAdminPrivilegeReportDetails = arg + smartSyncCreateAdminPrivilegeReportDetails = arg let swift = TeamLog.EventDetails.smartSyncCreateAdminPrivilegeReportDetails(arg.swift) super.init(swift: swift) } @@ -15934,7 +21100,7 @@ public class DBXTeamLogEventDetailsTeamActivityCreateReportDetails: DBXTeamLogEv @objc public init(_ arg: DBXTeamLogTeamActivityCreateReportDetails) { - self.teamActivityCreateReportDetails = arg + teamActivityCreateReportDetails = arg let swift = TeamLog.EventDetails.teamActivityCreateReportDetails(arg.swift) super.init(swift: swift) } @@ -15948,12 +21114,68 @@ public class DBXTeamLogEventDetailsTeamActivityCreateReportFailDetails: DBXTeamL @objc public init(_ arg: DBXTeamLogTeamActivityCreateReportFailDetails) { - self.teamActivityCreateReportFailDetails = arg + teamActivityCreateReportFailDetails = arg let swift = TeamLog.EventDetails.teamActivityCreateReportFailDetails(arg.swift) super.init(swift: swift) } } +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsTeamFoldersCreateReportDetails: DBXTeamLogEventDetails { + @objc + public var teamFoldersCreateReportDetails: DBXTeamLogTeamFoldersCreateReportDetails + + @objc + public init(_ arg: DBXTeamLogTeamFoldersCreateReportDetails) { + teamFoldersCreateReportDetails = arg + let swift = TeamLog.EventDetails.teamFoldersCreateReportDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsTeamFoldersCreateReportFailedDetails: DBXTeamLogEventDetails { + @objc + public var teamFoldersCreateReportFailedDetails: DBXTeamLogTeamFoldersCreateReportFailedDetails + + @objc + public init(_ arg: DBXTeamLogTeamFoldersCreateReportFailedDetails) { + teamFoldersCreateReportFailedDetails = arg + let swift = TeamLog.EventDetails.teamFoldersCreateReportFailedDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsTeamStorageCreateReportDetails: DBXTeamLogEventDetails { + @objc + public var teamStorageCreateReportDetails: DBXTeamLogTeamStorageCreateReportDetails + + @objc + public init(_ arg: DBXTeamLogTeamStorageCreateReportDetails) { + teamStorageCreateReportDetails = arg + let swift = TeamLog.EventDetails.teamStorageCreateReportDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsTeamStorageCreateReportFailedDetails: DBXTeamLogEventDetails { + @objc + public var teamStorageCreateReportFailedDetails: DBXTeamLogTeamStorageCreateReportFailedDetails + + @objc + public init(_ arg: DBXTeamLogTeamStorageCreateReportFailedDetails) { + teamStorageCreateReportFailedDetails = arg + let swift = TeamLog.EventDetails.teamStorageCreateReportFailedDetails(arg.swift) + super.init(swift: swift) + } +} + /// An unspecified error. @objc public class DBXTeamLogEventDetailsCollectionShareDetails: DBXTeamLogEventDetails { @@ -15962,7 +21184,7 @@ public class DBXTeamLogEventDetailsCollectionShareDetails: DBXTeamLogEventDetail @objc public init(_ arg: DBXTeamLogCollectionShareDetails) { - self.collectionShareDetails = arg + collectionShareDetails = arg let swift = TeamLog.EventDetails.collectionShareDetails(arg.swift) super.init(swift: swift) } @@ -15976,7 +21198,7 @@ public class DBXTeamLogEventDetailsFileTransfersFileAddDetails: DBXTeamLogEventD @objc public init(_ arg: DBXTeamLogFileTransfersFileAddDetails) { - self.fileTransfersFileAddDetails = arg + fileTransfersFileAddDetails = arg let swift = TeamLog.EventDetails.fileTransfersFileAddDetails(arg.swift) super.init(swift: swift) } @@ -15990,7 +21212,7 @@ public class DBXTeamLogEventDetailsFileTransfersTransferDeleteDetails: DBXTeamLo @objc public init(_ arg: DBXTeamLogFileTransfersTransferDeleteDetails) { - self.fileTransfersTransferDeleteDetails = arg + fileTransfersTransferDeleteDetails = arg let swift = TeamLog.EventDetails.fileTransfersTransferDeleteDetails(arg.swift) super.init(swift: swift) } @@ -16004,7 +21226,7 @@ public class DBXTeamLogEventDetailsFileTransfersTransferDownloadDetails: DBXTeam @objc public init(_ arg: DBXTeamLogFileTransfersTransferDownloadDetails) { - self.fileTransfersTransferDownloadDetails = arg + fileTransfersTransferDownloadDetails = arg let swift = TeamLog.EventDetails.fileTransfersTransferDownloadDetails(arg.swift) super.init(swift: swift) } @@ -16018,7 +21240,7 @@ public class DBXTeamLogEventDetailsFileTransfersTransferSendDetails: DBXTeamLogE @objc public init(_ arg: DBXTeamLogFileTransfersTransferSendDetails) { - self.fileTransfersTransferSendDetails = arg + fileTransfersTransferSendDetails = arg let swift = TeamLog.EventDetails.fileTransfersTransferSendDetails(arg.swift) super.init(swift: swift) } @@ -16032,12 +21254,110 @@ public class DBXTeamLogEventDetailsFileTransfersTransferViewDetails: DBXTeamLogE @objc public init(_ arg: DBXTeamLogFileTransfersTransferViewDetails) { - self.fileTransfersTransferViewDetails = arg + fileTransfersTransferViewDetails = arg let swift = TeamLog.EventDetails.fileTransfersTransferViewDetails(arg.swift) super.init(swift: swift) } } +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsMediaHubProjectTeamAddDetails: DBXTeamLogEventDetails { + @objc + public var mediaHubProjectTeamAddDetails: DBXTeamLogMediaHubProjectTeamAddDetails + + @objc + public init(_ arg: DBXTeamLogMediaHubProjectTeamAddDetails) { + mediaHubProjectTeamAddDetails = arg + let swift = TeamLog.EventDetails.mediaHubProjectTeamAddDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsMediaHubProjectTeamDeleteDetails: DBXTeamLogEventDetails { + @objc + public var mediaHubProjectTeamDeleteDetails: DBXTeamLogMediaHubProjectTeamDeleteDetails + + @objc + public init(_ arg: DBXTeamLogMediaHubProjectTeamDeleteDetails) { + mediaHubProjectTeamDeleteDetails = arg + let swift = TeamLog.EventDetails.mediaHubProjectTeamDeleteDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsMediaHubProjectTeamRoleChangedDetails: DBXTeamLogEventDetails { + @objc + public var mediaHubProjectTeamRoleChangedDetails: DBXTeamLogMediaHubProjectTeamRoleChangedDetails + + @objc + public init(_ arg: DBXTeamLogMediaHubProjectTeamRoleChangedDetails) { + mediaHubProjectTeamRoleChangedDetails = arg + let swift = TeamLog.EventDetails.mediaHubProjectTeamRoleChangedDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsMediaHubSharedLinkAudienceChangedDetails: DBXTeamLogEventDetails { + @objc + public var mediaHubSharedLinkAudienceChangedDetails: DBXTeamLogMediaHubSharedLinkAudienceChangedDetails + + @objc + public init(_ arg: DBXTeamLogMediaHubSharedLinkAudienceChangedDetails) { + mediaHubSharedLinkAudienceChangedDetails = arg + let swift = TeamLog.EventDetails.mediaHubSharedLinkAudienceChangedDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsMediaHubSharedLinkCreatedDetails: DBXTeamLogEventDetails { + @objc + public var mediaHubSharedLinkCreatedDetails: DBXTeamLogMediaHubSharedLinkCreatedDetails + + @objc + public init(_ arg: DBXTeamLogMediaHubSharedLinkCreatedDetails) { + mediaHubSharedLinkCreatedDetails = arg + let swift = TeamLog.EventDetails.mediaHubSharedLinkCreatedDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsMediaHubSharedLinkDownloadSettingChangedDetails: DBXTeamLogEventDetails { + @objc + public var mediaHubSharedLinkDownloadSettingChangedDetails: DBXTeamLogMediaHubSharedLinkDownloadSettingChangedDetails + + @objc + public init(_ arg: DBXTeamLogMediaHubSharedLinkDownloadSettingChangedDetails) { + mediaHubSharedLinkDownloadSettingChangedDetails = arg + let swift = TeamLog.EventDetails.mediaHubSharedLinkDownloadSettingChangedDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsMediaHubSharedLinkRevokedDetails: DBXTeamLogEventDetails { + @objc + public var mediaHubSharedLinkRevokedDetails: DBXTeamLogMediaHubSharedLinkRevokedDetails + + @objc + public init(_ arg: DBXTeamLogMediaHubSharedLinkRevokedDetails) { + mediaHubSharedLinkRevokedDetails = arg + let swift = TeamLog.EventDetails.mediaHubSharedLinkRevokedDetails(arg.swift) + super.init(swift: swift) + } +} + /// An unspecified error. @objc public class DBXTeamLogEventDetailsNoteAclInviteOnlyDetails: DBXTeamLogEventDetails { @@ -16046,7 +21366,7 @@ public class DBXTeamLogEventDetailsNoteAclInviteOnlyDetails: DBXTeamLogEventDeta @objc public init(_ arg: DBXTeamLogNoteAclInviteOnlyDetails) { - self.noteAclInviteOnlyDetails = arg + noteAclInviteOnlyDetails = arg let swift = TeamLog.EventDetails.noteAclInviteOnlyDetails(arg.swift) super.init(swift: swift) } @@ -16060,7 +21380,7 @@ public class DBXTeamLogEventDetailsNoteAclLinkDetails: DBXTeamLogEventDetails { @objc public init(_ arg: DBXTeamLogNoteAclLinkDetails) { - self.noteAclLinkDetails = arg + noteAclLinkDetails = arg let swift = TeamLog.EventDetails.noteAclLinkDetails(arg.swift) super.init(swift: swift) } @@ -16074,7 +21394,7 @@ public class DBXTeamLogEventDetailsNoteAclTeamLinkDetails: DBXTeamLogEventDetail @objc public init(_ arg: DBXTeamLogNoteAclTeamLinkDetails) { - self.noteAclTeamLinkDetails = arg + noteAclTeamLinkDetails = arg let swift = TeamLog.EventDetails.noteAclTeamLinkDetails(arg.swift) super.init(swift: swift) } @@ -16088,7 +21408,7 @@ public class DBXTeamLogEventDetailsNoteSharedDetails: DBXTeamLogEventDetails { @objc public init(_ arg: DBXTeamLogNoteSharedDetails) { - self.noteSharedDetails = arg + noteSharedDetails = arg let swift = TeamLog.EventDetails.noteSharedDetails(arg.swift) super.init(swift: swift) } @@ -16102,7 +21422,7 @@ public class DBXTeamLogEventDetailsNoteShareReceiveDetails: DBXTeamLogEventDetai @objc public init(_ arg: DBXTeamLogNoteShareReceiveDetails) { - self.noteShareReceiveDetails = arg + noteShareReceiveDetails = arg let swift = TeamLog.EventDetails.noteShareReceiveDetails(arg.swift) super.init(swift: swift) } @@ -16116,7 +21436,7 @@ public class DBXTeamLogEventDetailsOpenNoteSharedDetails: DBXTeamLogEventDetails @objc public init(_ arg: DBXTeamLogOpenNoteSharedDetails) { - self.openNoteSharedDetails = arg + openNoteSharedDetails = arg let swift = TeamLog.EventDetails.openNoteSharedDetails(arg.swift) super.init(swift: swift) } @@ -16130,7 +21450,7 @@ public class DBXTeamLogEventDetailsReplayFileSharedLinkCreatedDetails: DBXTeamLo @objc public init(_ arg: DBXTeamLogReplayFileSharedLinkCreatedDetails) { - self.replayFileSharedLinkCreatedDetails = arg + replayFileSharedLinkCreatedDetails = arg let swift = TeamLog.EventDetails.replayFileSharedLinkCreatedDetails(arg.swift) super.init(swift: swift) } @@ -16144,7 +21464,7 @@ public class DBXTeamLogEventDetailsReplayFileSharedLinkModifiedDetails: DBXTeamL @objc public init(_ arg: DBXTeamLogReplayFileSharedLinkModifiedDetails) { - self.replayFileSharedLinkModifiedDetails = arg + replayFileSharedLinkModifiedDetails = arg let swift = TeamLog.EventDetails.replayFileSharedLinkModifiedDetails(arg.swift) super.init(swift: swift) } @@ -16158,7 +21478,7 @@ public class DBXTeamLogEventDetailsReplayProjectTeamAddDetails: DBXTeamLogEventD @objc public init(_ arg: DBXTeamLogReplayProjectTeamAddDetails) { - self.replayProjectTeamAddDetails = arg + replayProjectTeamAddDetails = arg let swift = TeamLog.EventDetails.replayProjectTeamAddDetails(arg.swift) super.init(swift: swift) } @@ -16172,12 +21492,124 @@ public class DBXTeamLogEventDetailsReplayProjectTeamDeleteDetails: DBXTeamLogEve @objc public init(_ arg: DBXTeamLogReplayProjectTeamDeleteDetails) { - self.replayProjectTeamDeleteDetails = arg + replayProjectTeamDeleteDetails = arg let swift = TeamLog.EventDetails.replayProjectTeamDeleteDetails(arg.swift) super.init(swift: swift) } } +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsSendAndTrackFileAddedDetails: DBXTeamLogEventDetails { + @objc + public var sendAndTrackFileAddedDetails: DBXTeamLogSendAndTrackFileAddedDetails + + @objc + public init(_ arg: DBXTeamLogSendAndTrackFileAddedDetails) { + sendAndTrackFileAddedDetails = arg + let swift = TeamLog.EventDetails.sendAndTrackFileAddedDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsSendAndTrackFileRenamedDetails: DBXTeamLogEventDetails { + @objc + public var sendAndTrackFileRenamedDetails: DBXTeamLogSendAndTrackFileRenamedDetails + + @objc + public init(_ arg: DBXTeamLogSendAndTrackFileRenamedDetails) { + sendAndTrackFileRenamedDetails = arg + let swift = TeamLog.EventDetails.sendAndTrackFileRenamedDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsSendAndTrackFileUpdatedDetails: DBXTeamLogEventDetails { + @objc + public var sendAndTrackFileUpdatedDetails: DBXTeamLogSendAndTrackFileUpdatedDetails + + @objc + public init(_ arg: DBXTeamLogSendAndTrackFileUpdatedDetails) { + sendAndTrackFileUpdatedDetails = arg + let swift = TeamLog.EventDetails.sendAndTrackFileUpdatedDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsSendAndTrackLinkCreatedDetails: DBXTeamLogEventDetails { + @objc + public var sendAndTrackLinkCreatedDetails: DBXTeamLogSendAndTrackLinkCreatedDetails + + @objc + public init(_ arg: DBXTeamLogSendAndTrackLinkCreatedDetails) { + sendAndTrackLinkCreatedDetails = arg + let swift = TeamLog.EventDetails.sendAndTrackLinkCreatedDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsSendAndTrackLinkDeletedDetails: DBXTeamLogEventDetails { + @objc + public var sendAndTrackLinkDeletedDetails: DBXTeamLogSendAndTrackLinkDeletedDetails + + @objc + public init(_ arg: DBXTeamLogSendAndTrackLinkDeletedDetails) { + sendAndTrackLinkDeletedDetails = arg + let swift = TeamLog.EventDetails.sendAndTrackLinkDeletedDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsSendAndTrackLinkUpdatedDetails: DBXTeamLogEventDetails { + @objc + public var sendAndTrackLinkUpdatedDetails: DBXTeamLogSendAndTrackLinkUpdatedDetails + + @objc + public init(_ arg: DBXTeamLogSendAndTrackLinkUpdatedDetails) { + sendAndTrackLinkUpdatedDetails = arg + let swift = TeamLog.EventDetails.sendAndTrackLinkUpdatedDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsSendAndTrackLinkViewedDetails: DBXTeamLogEventDetails { + @objc + public var sendAndTrackLinkViewedDetails: DBXTeamLogSendAndTrackLinkViewedDetails + + @objc + public init(_ arg: DBXTeamLogSendAndTrackLinkViewedDetails) { + sendAndTrackLinkViewedDetails = arg + let swift = TeamLog.EventDetails.sendAndTrackLinkViewedDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsSendAndTrackRemovedFileAndAssociatedLinksDetails: DBXTeamLogEventDetails { + @objc + public var sendAndTrackRemovedFileAndAssociatedLinksDetails: DBXTeamLogSendAndTrackRemovedFileAndAssociatedLinksDetails + + @objc + public init(_ arg: DBXTeamLogSendAndTrackRemovedFileAndAssociatedLinksDetails) { + sendAndTrackRemovedFileAndAssociatedLinksDetails = arg + let swift = TeamLog.EventDetails.sendAndTrackRemovedFileAndAssociatedLinksDetails(arg.swift) + super.init(swift: swift) + } +} + /// An unspecified error. @objc public class DBXTeamLogEventDetailsSfAddGroupDetails: DBXTeamLogEventDetails { @@ -16186,7 +21618,7 @@ public class DBXTeamLogEventDetailsSfAddGroupDetails: DBXTeamLogEventDetails { @objc public init(_ arg: DBXTeamLogSfAddGroupDetails) { - self.sfAddGroupDetails = arg + sfAddGroupDetails = arg let swift = TeamLog.EventDetails.sfAddGroupDetails(arg.swift) super.init(swift: swift) } @@ -16200,7 +21632,7 @@ public class DBXTeamLogEventDetailsSfAllowNonMembersToViewSharedLinksDetails: DB @objc public init(_ arg: DBXTeamLogSfAllowNonMembersToViewSharedLinksDetails) { - self.sfAllowNonMembersToViewSharedLinksDetails = arg + sfAllowNonMembersToViewSharedLinksDetails = arg let swift = TeamLog.EventDetails.sfAllowNonMembersToViewSharedLinksDetails(arg.swift) super.init(swift: swift) } @@ -16214,7 +21646,7 @@ public class DBXTeamLogEventDetailsSfExternalInviteWarnDetails: DBXTeamLogEventD @objc public init(_ arg: DBXTeamLogSfExternalInviteWarnDetails) { - self.sfExternalInviteWarnDetails = arg + sfExternalInviteWarnDetails = arg let swift = TeamLog.EventDetails.sfExternalInviteWarnDetails(arg.swift) super.init(swift: swift) } @@ -16228,7 +21660,7 @@ public class DBXTeamLogEventDetailsSfFbInviteDetails: DBXTeamLogEventDetails { @objc public init(_ arg: DBXTeamLogSfFbInviteDetails) { - self.sfFbInviteDetails = arg + sfFbInviteDetails = arg let swift = TeamLog.EventDetails.sfFbInviteDetails(arg.swift) super.init(swift: swift) } @@ -16242,7 +21674,7 @@ public class DBXTeamLogEventDetailsSfFbInviteChangeRoleDetails: DBXTeamLogEventD @objc public init(_ arg: DBXTeamLogSfFbInviteChangeRoleDetails) { - self.sfFbInviteChangeRoleDetails = arg + sfFbInviteChangeRoleDetails = arg let swift = TeamLog.EventDetails.sfFbInviteChangeRoleDetails(arg.swift) super.init(swift: swift) } @@ -16256,7 +21688,7 @@ public class DBXTeamLogEventDetailsSfFbUninviteDetails: DBXTeamLogEventDetails { @objc public init(_ arg: DBXTeamLogSfFbUninviteDetails) { - self.sfFbUninviteDetails = arg + sfFbUninviteDetails = arg let swift = TeamLog.EventDetails.sfFbUninviteDetails(arg.swift) super.init(swift: swift) } @@ -16270,7 +21702,7 @@ public class DBXTeamLogEventDetailsSfInviteGroupDetails: DBXTeamLogEventDetails @objc public init(_ arg: DBXTeamLogSfInviteGroupDetails) { - self.sfInviteGroupDetails = arg + sfInviteGroupDetails = arg let swift = TeamLog.EventDetails.sfInviteGroupDetails(arg.swift) super.init(swift: swift) } @@ -16284,7 +21716,7 @@ public class DBXTeamLogEventDetailsSfTeamGrantAccessDetails: DBXTeamLogEventDeta @objc public init(_ arg: DBXTeamLogSfTeamGrantAccessDetails) { - self.sfTeamGrantAccessDetails = arg + sfTeamGrantAccessDetails = arg let swift = TeamLog.EventDetails.sfTeamGrantAccessDetails(arg.swift) super.init(swift: swift) } @@ -16298,7 +21730,7 @@ public class DBXTeamLogEventDetailsSfTeamInviteDetails: DBXTeamLogEventDetails { @objc public init(_ arg: DBXTeamLogSfTeamInviteDetails) { - self.sfTeamInviteDetails = arg + sfTeamInviteDetails = arg let swift = TeamLog.EventDetails.sfTeamInviteDetails(arg.swift) super.init(swift: swift) } @@ -16312,7 +21744,7 @@ public class DBXTeamLogEventDetailsSfTeamInviteChangeRoleDetails: DBXTeamLogEven @objc public init(_ arg: DBXTeamLogSfTeamInviteChangeRoleDetails) { - self.sfTeamInviteChangeRoleDetails = arg + sfTeamInviteChangeRoleDetails = arg let swift = TeamLog.EventDetails.sfTeamInviteChangeRoleDetails(arg.swift) super.init(swift: swift) } @@ -16326,7 +21758,7 @@ public class DBXTeamLogEventDetailsSfTeamJoinDetails: DBXTeamLogEventDetails { @objc public init(_ arg: DBXTeamLogSfTeamJoinDetails) { - self.sfTeamJoinDetails = arg + sfTeamJoinDetails = arg let swift = TeamLog.EventDetails.sfTeamJoinDetails(arg.swift) super.init(swift: swift) } @@ -16340,7 +21772,7 @@ public class DBXTeamLogEventDetailsSfTeamJoinFromOobLinkDetails: DBXTeamLogEvent @objc public init(_ arg: DBXTeamLogSfTeamJoinFromOobLinkDetails) { - self.sfTeamJoinFromOobLinkDetails = arg + sfTeamJoinFromOobLinkDetails = arg let swift = TeamLog.EventDetails.sfTeamJoinFromOobLinkDetails(arg.swift) super.init(swift: swift) } @@ -16354,7 +21786,7 @@ public class DBXTeamLogEventDetailsSfTeamUninviteDetails: DBXTeamLogEventDetails @objc public init(_ arg: DBXTeamLogSfTeamUninviteDetails) { - self.sfTeamUninviteDetails = arg + sfTeamUninviteDetails = arg let swift = TeamLog.EventDetails.sfTeamUninviteDetails(arg.swift) super.init(swift: swift) } @@ -16368,7 +21800,7 @@ public class DBXTeamLogEventDetailsSharedContentAddInviteesDetails: DBXTeamLogEv @objc public init(_ arg: DBXTeamLogSharedContentAddInviteesDetails) { - self.sharedContentAddInviteesDetails = arg + sharedContentAddInviteesDetails = arg let swift = TeamLog.EventDetails.sharedContentAddInviteesDetails(arg.swift) super.init(swift: swift) } @@ -16382,7 +21814,7 @@ public class DBXTeamLogEventDetailsSharedContentAddLinkExpiryDetails: DBXTeamLog @objc public init(_ arg: DBXTeamLogSharedContentAddLinkExpiryDetails) { - self.sharedContentAddLinkExpiryDetails = arg + sharedContentAddLinkExpiryDetails = arg let swift = TeamLog.EventDetails.sharedContentAddLinkExpiryDetails(arg.swift) super.init(swift: swift) } @@ -16396,7 +21828,7 @@ public class DBXTeamLogEventDetailsSharedContentAddLinkPasswordDetails: DBXTeamL @objc public init(_ arg: DBXTeamLogSharedContentAddLinkPasswordDetails) { - self.sharedContentAddLinkPasswordDetails = arg + sharedContentAddLinkPasswordDetails = arg let swift = TeamLog.EventDetails.sharedContentAddLinkPasswordDetails(arg.swift) super.init(swift: swift) } @@ -16410,7 +21842,7 @@ public class DBXTeamLogEventDetailsSharedContentAddMemberDetails: DBXTeamLogEven @objc public init(_ arg: DBXTeamLogSharedContentAddMemberDetails) { - self.sharedContentAddMemberDetails = arg + sharedContentAddMemberDetails = arg let swift = TeamLog.EventDetails.sharedContentAddMemberDetails(arg.swift) super.init(swift: swift) } @@ -16424,7 +21856,7 @@ public class DBXTeamLogEventDetailsSharedContentChangeDownloadsPolicyDetails: DB @objc public init(_ arg: DBXTeamLogSharedContentChangeDownloadsPolicyDetails) { - self.sharedContentChangeDownloadsPolicyDetails = arg + sharedContentChangeDownloadsPolicyDetails = arg let swift = TeamLog.EventDetails.sharedContentChangeDownloadsPolicyDetails(arg.swift) super.init(swift: swift) } @@ -16438,7 +21870,7 @@ public class DBXTeamLogEventDetailsSharedContentChangeInviteeRoleDetails: DBXTea @objc public init(_ arg: DBXTeamLogSharedContentChangeInviteeRoleDetails) { - self.sharedContentChangeInviteeRoleDetails = arg + sharedContentChangeInviteeRoleDetails = arg let swift = TeamLog.EventDetails.sharedContentChangeInviteeRoleDetails(arg.swift) super.init(swift: swift) } @@ -16452,7 +21884,7 @@ public class DBXTeamLogEventDetailsSharedContentChangeLinkAudienceDetails: DBXTe @objc public init(_ arg: DBXTeamLogSharedContentChangeLinkAudienceDetails) { - self.sharedContentChangeLinkAudienceDetails = arg + sharedContentChangeLinkAudienceDetails = arg let swift = TeamLog.EventDetails.sharedContentChangeLinkAudienceDetails(arg.swift) super.init(swift: swift) } @@ -16466,7 +21898,7 @@ public class DBXTeamLogEventDetailsSharedContentChangeLinkExpiryDetails: DBXTeam @objc public init(_ arg: DBXTeamLogSharedContentChangeLinkExpiryDetails) { - self.sharedContentChangeLinkExpiryDetails = arg + sharedContentChangeLinkExpiryDetails = arg let swift = TeamLog.EventDetails.sharedContentChangeLinkExpiryDetails(arg.swift) super.init(swift: swift) } @@ -16480,7 +21912,7 @@ public class DBXTeamLogEventDetailsSharedContentChangeLinkPasswordDetails: DBXTe @objc public init(_ arg: DBXTeamLogSharedContentChangeLinkPasswordDetails) { - self.sharedContentChangeLinkPasswordDetails = arg + sharedContentChangeLinkPasswordDetails = arg let swift = TeamLog.EventDetails.sharedContentChangeLinkPasswordDetails(arg.swift) super.init(swift: swift) } @@ -16494,7 +21926,7 @@ public class DBXTeamLogEventDetailsSharedContentChangeMemberRoleDetails: DBXTeam @objc public init(_ arg: DBXTeamLogSharedContentChangeMemberRoleDetails) { - self.sharedContentChangeMemberRoleDetails = arg + sharedContentChangeMemberRoleDetails = arg let swift = TeamLog.EventDetails.sharedContentChangeMemberRoleDetails(arg.swift) super.init(swift: swift) } @@ -16508,7 +21940,7 @@ public class DBXTeamLogEventDetailsSharedContentChangeViewerInfoPolicyDetails: D @objc public init(_ arg: DBXTeamLogSharedContentChangeViewerInfoPolicyDetails) { - self.sharedContentChangeViewerInfoPolicyDetails = arg + sharedContentChangeViewerInfoPolicyDetails = arg let swift = TeamLog.EventDetails.sharedContentChangeViewerInfoPolicyDetails(arg.swift) super.init(swift: swift) } @@ -16522,7 +21954,7 @@ public class DBXTeamLogEventDetailsSharedContentClaimInvitationDetails: DBXTeamL @objc public init(_ arg: DBXTeamLogSharedContentClaimInvitationDetails) { - self.sharedContentClaimInvitationDetails = arg + sharedContentClaimInvitationDetails = arg let swift = TeamLog.EventDetails.sharedContentClaimInvitationDetails(arg.swift) super.init(swift: swift) } @@ -16536,7 +21968,7 @@ public class DBXTeamLogEventDetailsSharedContentCopyDetails: DBXTeamLogEventDeta @objc public init(_ arg: DBXTeamLogSharedContentCopyDetails) { - self.sharedContentCopyDetails = arg + sharedContentCopyDetails = arg let swift = TeamLog.EventDetails.sharedContentCopyDetails(arg.swift) super.init(swift: swift) } @@ -16550,7 +21982,7 @@ public class DBXTeamLogEventDetailsSharedContentDownloadDetails: DBXTeamLogEvent @objc public init(_ arg: DBXTeamLogSharedContentDownloadDetails) { - self.sharedContentDownloadDetails = arg + sharedContentDownloadDetails = arg let swift = TeamLog.EventDetails.sharedContentDownloadDetails(arg.swift) super.init(swift: swift) } @@ -16564,7 +21996,7 @@ public class DBXTeamLogEventDetailsSharedContentRelinquishMembershipDetails: DBX @objc public init(_ arg: DBXTeamLogSharedContentRelinquishMembershipDetails) { - self.sharedContentRelinquishMembershipDetails = arg + sharedContentRelinquishMembershipDetails = arg let swift = TeamLog.EventDetails.sharedContentRelinquishMembershipDetails(arg.swift) super.init(swift: swift) } @@ -16578,7 +22010,7 @@ public class DBXTeamLogEventDetailsSharedContentRemoveInviteesDetails: DBXTeamLo @objc public init(_ arg: DBXTeamLogSharedContentRemoveInviteesDetails) { - self.sharedContentRemoveInviteesDetails = arg + sharedContentRemoveInviteesDetails = arg let swift = TeamLog.EventDetails.sharedContentRemoveInviteesDetails(arg.swift) super.init(swift: swift) } @@ -16592,7 +22024,7 @@ public class DBXTeamLogEventDetailsSharedContentRemoveLinkExpiryDetails: DBXTeam @objc public init(_ arg: DBXTeamLogSharedContentRemoveLinkExpiryDetails) { - self.sharedContentRemoveLinkExpiryDetails = arg + sharedContentRemoveLinkExpiryDetails = arg let swift = TeamLog.EventDetails.sharedContentRemoveLinkExpiryDetails(arg.swift) super.init(swift: swift) } @@ -16606,7 +22038,7 @@ public class DBXTeamLogEventDetailsSharedContentRemoveLinkPasswordDetails: DBXTe @objc public init(_ arg: DBXTeamLogSharedContentRemoveLinkPasswordDetails) { - self.sharedContentRemoveLinkPasswordDetails = arg + sharedContentRemoveLinkPasswordDetails = arg let swift = TeamLog.EventDetails.sharedContentRemoveLinkPasswordDetails(arg.swift) super.init(swift: swift) } @@ -16620,7 +22052,7 @@ public class DBXTeamLogEventDetailsSharedContentRemoveMemberDetails: DBXTeamLogE @objc public init(_ arg: DBXTeamLogSharedContentRemoveMemberDetails) { - self.sharedContentRemoveMemberDetails = arg + sharedContentRemoveMemberDetails = arg let swift = TeamLog.EventDetails.sharedContentRemoveMemberDetails(arg.swift) super.init(swift: swift) } @@ -16634,7 +22066,7 @@ public class DBXTeamLogEventDetailsSharedContentRequestAccessDetails: DBXTeamLog @objc public init(_ arg: DBXTeamLogSharedContentRequestAccessDetails) { - self.sharedContentRequestAccessDetails = arg + sharedContentRequestAccessDetails = arg let swift = TeamLog.EventDetails.sharedContentRequestAccessDetails(arg.swift) super.init(swift: swift) } @@ -16648,7 +22080,7 @@ public class DBXTeamLogEventDetailsSharedContentRestoreInviteesDetails: DBXTeamL @objc public init(_ arg: DBXTeamLogSharedContentRestoreInviteesDetails) { - self.sharedContentRestoreInviteesDetails = arg + sharedContentRestoreInviteesDetails = arg let swift = TeamLog.EventDetails.sharedContentRestoreInviteesDetails(arg.swift) super.init(swift: swift) } @@ -16662,7 +22094,7 @@ public class DBXTeamLogEventDetailsSharedContentRestoreMemberDetails: DBXTeamLog @objc public init(_ arg: DBXTeamLogSharedContentRestoreMemberDetails) { - self.sharedContentRestoreMemberDetails = arg + sharedContentRestoreMemberDetails = arg let swift = TeamLog.EventDetails.sharedContentRestoreMemberDetails(arg.swift) super.init(swift: swift) } @@ -16676,7 +22108,7 @@ public class DBXTeamLogEventDetailsSharedContentUnshareDetails: DBXTeamLogEventD @objc public init(_ arg: DBXTeamLogSharedContentUnshareDetails) { - self.sharedContentUnshareDetails = arg + sharedContentUnshareDetails = arg let swift = TeamLog.EventDetails.sharedContentUnshareDetails(arg.swift) super.init(swift: swift) } @@ -16690,7 +22122,7 @@ public class DBXTeamLogEventDetailsSharedContentViewDetails: DBXTeamLogEventDeta @objc public init(_ arg: DBXTeamLogSharedContentViewDetails) { - self.sharedContentViewDetails = arg + sharedContentViewDetails = arg let swift = TeamLog.EventDetails.sharedContentViewDetails(arg.swift) super.init(swift: swift) } @@ -16704,7 +22136,7 @@ public class DBXTeamLogEventDetailsSharedFolderChangeLinkPolicyDetails: DBXTeamL @objc public init(_ arg: DBXTeamLogSharedFolderChangeLinkPolicyDetails) { - self.sharedFolderChangeLinkPolicyDetails = arg + sharedFolderChangeLinkPolicyDetails = arg let swift = TeamLog.EventDetails.sharedFolderChangeLinkPolicyDetails(arg.swift) super.init(swift: swift) } @@ -16718,7 +22150,7 @@ public class DBXTeamLogEventDetailsSharedFolderChangeMembersInheritancePolicyDet @objc public init(_ arg: DBXTeamLogSharedFolderChangeMembersInheritancePolicyDetails) { - self.sharedFolderChangeMembersInheritancePolicyDetails = arg + sharedFolderChangeMembersInheritancePolicyDetails = arg let swift = TeamLog.EventDetails.sharedFolderChangeMembersInheritancePolicyDetails(arg.swift) super.init(swift: swift) } @@ -16732,7 +22164,7 @@ public class DBXTeamLogEventDetailsSharedFolderChangeMembersManagementPolicyDeta @objc public init(_ arg: DBXTeamLogSharedFolderChangeMembersManagementPolicyDetails) { - self.sharedFolderChangeMembersManagementPolicyDetails = arg + sharedFolderChangeMembersManagementPolicyDetails = arg let swift = TeamLog.EventDetails.sharedFolderChangeMembersManagementPolicyDetails(arg.swift) super.init(swift: swift) } @@ -16746,7 +22178,7 @@ public class DBXTeamLogEventDetailsSharedFolderChangeMembersPolicyDetails: DBXTe @objc public init(_ arg: DBXTeamLogSharedFolderChangeMembersPolicyDetails) { - self.sharedFolderChangeMembersPolicyDetails = arg + sharedFolderChangeMembersPolicyDetails = arg let swift = TeamLog.EventDetails.sharedFolderChangeMembersPolicyDetails(arg.swift) super.init(swift: swift) } @@ -16760,7 +22192,7 @@ public class DBXTeamLogEventDetailsSharedFolderCreateDetails: DBXTeamLogEventDet @objc public init(_ arg: DBXTeamLogSharedFolderCreateDetails) { - self.sharedFolderCreateDetails = arg + sharedFolderCreateDetails = arg let swift = TeamLog.EventDetails.sharedFolderCreateDetails(arg.swift) super.init(swift: swift) } @@ -16774,7 +22206,7 @@ public class DBXTeamLogEventDetailsSharedFolderDeclineInvitationDetails: DBXTeam @objc public init(_ arg: DBXTeamLogSharedFolderDeclineInvitationDetails) { - self.sharedFolderDeclineInvitationDetails = arg + sharedFolderDeclineInvitationDetails = arg let swift = TeamLog.EventDetails.sharedFolderDeclineInvitationDetails(arg.swift) super.init(swift: swift) } @@ -16788,7 +22220,7 @@ public class DBXTeamLogEventDetailsSharedFolderMountDetails: DBXTeamLogEventDeta @objc public init(_ arg: DBXTeamLogSharedFolderMountDetails) { - self.sharedFolderMountDetails = arg + sharedFolderMountDetails = arg let swift = TeamLog.EventDetails.sharedFolderMountDetails(arg.swift) super.init(swift: swift) } @@ -16802,7 +22234,7 @@ public class DBXTeamLogEventDetailsSharedFolderNestDetails: DBXTeamLogEventDetai @objc public init(_ arg: DBXTeamLogSharedFolderNestDetails) { - self.sharedFolderNestDetails = arg + sharedFolderNestDetails = arg let swift = TeamLog.EventDetails.sharedFolderNestDetails(arg.swift) super.init(swift: swift) } @@ -16816,7 +22248,7 @@ public class DBXTeamLogEventDetailsSharedFolderTransferOwnershipDetails: DBXTeam @objc public init(_ arg: DBXTeamLogSharedFolderTransferOwnershipDetails) { - self.sharedFolderTransferOwnershipDetails = arg + sharedFolderTransferOwnershipDetails = arg let swift = TeamLog.EventDetails.sharedFolderTransferOwnershipDetails(arg.swift) super.init(swift: swift) } @@ -16830,7 +22262,7 @@ public class DBXTeamLogEventDetailsSharedFolderUnmountDetails: DBXTeamLogEventDe @objc public init(_ arg: DBXTeamLogSharedFolderUnmountDetails) { - self.sharedFolderUnmountDetails = arg + sharedFolderUnmountDetails = arg let swift = TeamLog.EventDetails.sharedFolderUnmountDetails(arg.swift) super.init(swift: swift) } @@ -16844,7 +22276,7 @@ public class DBXTeamLogEventDetailsSharedLinkAddExpiryDetails: DBXTeamLogEventDe @objc public init(_ arg: DBXTeamLogSharedLinkAddExpiryDetails) { - self.sharedLinkAddExpiryDetails = arg + sharedLinkAddExpiryDetails = arg let swift = TeamLog.EventDetails.sharedLinkAddExpiryDetails(arg.swift) super.init(swift: swift) } @@ -16858,7 +22290,7 @@ public class DBXTeamLogEventDetailsSharedLinkChangeExpiryDetails: DBXTeamLogEven @objc public init(_ arg: DBXTeamLogSharedLinkChangeExpiryDetails) { - self.sharedLinkChangeExpiryDetails = arg + sharedLinkChangeExpiryDetails = arg let swift = TeamLog.EventDetails.sharedLinkChangeExpiryDetails(arg.swift) super.init(swift: swift) } @@ -16872,7 +22304,7 @@ public class DBXTeamLogEventDetailsSharedLinkChangeVisibilityDetails: DBXTeamLog @objc public init(_ arg: DBXTeamLogSharedLinkChangeVisibilityDetails) { - self.sharedLinkChangeVisibilityDetails = arg + sharedLinkChangeVisibilityDetails = arg let swift = TeamLog.EventDetails.sharedLinkChangeVisibilityDetails(arg.swift) super.init(swift: swift) } @@ -16886,7 +22318,7 @@ public class DBXTeamLogEventDetailsSharedLinkCopyDetails: DBXTeamLogEventDetails @objc public init(_ arg: DBXTeamLogSharedLinkCopyDetails) { - self.sharedLinkCopyDetails = arg + sharedLinkCopyDetails = arg let swift = TeamLog.EventDetails.sharedLinkCopyDetails(arg.swift) super.init(swift: swift) } @@ -16900,7 +22332,7 @@ public class DBXTeamLogEventDetailsSharedLinkCreateDetails: DBXTeamLogEventDetai @objc public init(_ arg: DBXTeamLogSharedLinkCreateDetails) { - self.sharedLinkCreateDetails = arg + sharedLinkCreateDetails = arg let swift = TeamLog.EventDetails.sharedLinkCreateDetails(arg.swift) super.init(swift: swift) } @@ -16914,7 +22346,7 @@ public class DBXTeamLogEventDetailsSharedLinkDisableDetails: DBXTeamLogEventDeta @objc public init(_ arg: DBXTeamLogSharedLinkDisableDetails) { - self.sharedLinkDisableDetails = arg + sharedLinkDisableDetails = arg let swift = TeamLog.EventDetails.sharedLinkDisableDetails(arg.swift) super.init(swift: swift) } @@ -16928,7 +22360,7 @@ public class DBXTeamLogEventDetailsSharedLinkDownloadDetails: DBXTeamLogEventDet @objc public init(_ arg: DBXTeamLogSharedLinkDownloadDetails) { - self.sharedLinkDownloadDetails = arg + sharedLinkDownloadDetails = arg let swift = TeamLog.EventDetails.sharedLinkDownloadDetails(arg.swift) super.init(swift: swift) } @@ -16942,12 +22374,26 @@ public class DBXTeamLogEventDetailsSharedLinkRemoveExpiryDetails: DBXTeamLogEven @objc public init(_ arg: DBXTeamLogSharedLinkRemoveExpiryDetails) { - self.sharedLinkRemoveExpiryDetails = arg + sharedLinkRemoveExpiryDetails = arg let swift = TeamLog.EventDetails.sharedLinkRemoveExpiryDetails(arg.swift) super.init(swift: swift) } } +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsSharedLinkRemoveVisitorDetails: DBXTeamLogEventDetails { + @objc + public var sharedLinkRemoveVisitorDetails: DBXTeamLogSharedLinkRemoveVisitorDetails + + @objc + public init(_ arg: DBXTeamLogSharedLinkRemoveVisitorDetails) { + sharedLinkRemoveVisitorDetails = arg + let swift = TeamLog.EventDetails.sharedLinkRemoveVisitorDetails(arg.swift) + super.init(swift: swift) + } +} + /// An unspecified error. @objc public class DBXTeamLogEventDetailsSharedLinkSettingsAddExpirationDetails: DBXTeamLogEventDetails { @@ -16956,7 +22402,7 @@ public class DBXTeamLogEventDetailsSharedLinkSettingsAddExpirationDetails: DBXTe @objc public init(_ arg: DBXTeamLogSharedLinkSettingsAddExpirationDetails) { - self.sharedLinkSettingsAddExpirationDetails = arg + sharedLinkSettingsAddExpirationDetails = arg let swift = TeamLog.EventDetails.sharedLinkSettingsAddExpirationDetails(arg.swift) super.init(swift: swift) } @@ -16970,7 +22416,7 @@ public class DBXTeamLogEventDetailsSharedLinkSettingsAddPasswordDetails: DBXTeam @objc public init(_ arg: DBXTeamLogSharedLinkSettingsAddPasswordDetails) { - self.sharedLinkSettingsAddPasswordDetails = arg + sharedLinkSettingsAddPasswordDetails = arg let swift = TeamLog.EventDetails.sharedLinkSettingsAddPasswordDetails(arg.swift) super.init(swift: swift) } @@ -16984,7 +22430,7 @@ public class DBXTeamLogEventDetailsSharedLinkSettingsAllowDownloadDisabledDetail @objc public init(_ arg: DBXTeamLogSharedLinkSettingsAllowDownloadDisabledDetails) { - self.sharedLinkSettingsAllowDownloadDisabledDetails = arg + sharedLinkSettingsAllowDownloadDisabledDetails = arg let swift = TeamLog.EventDetails.sharedLinkSettingsAllowDownloadDisabledDetails(arg.swift) super.init(swift: swift) } @@ -16998,7 +22444,7 @@ public class DBXTeamLogEventDetailsSharedLinkSettingsAllowDownloadEnabledDetails @objc public init(_ arg: DBXTeamLogSharedLinkSettingsAllowDownloadEnabledDetails) { - self.sharedLinkSettingsAllowDownloadEnabledDetails = arg + sharedLinkSettingsAllowDownloadEnabledDetails = arg let swift = TeamLog.EventDetails.sharedLinkSettingsAllowDownloadEnabledDetails(arg.swift) super.init(swift: swift) } @@ -17012,7 +22458,7 @@ public class DBXTeamLogEventDetailsSharedLinkSettingsChangeAudienceDetails: DBXT @objc public init(_ arg: DBXTeamLogSharedLinkSettingsChangeAudienceDetails) { - self.sharedLinkSettingsChangeAudienceDetails = arg + sharedLinkSettingsChangeAudienceDetails = arg let swift = TeamLog.EventDetails.sharedLinkSettingsChangeAudienceDetails(arg.swift) super.init(swift: swift) } @@ -17026,7 +22472,7 @@ public class DBXTeamLogEventDetailsSharedLinkSettingsChangeExpirationDetails: DB @objc public init(_ arg: DBXTeamLogSharedLinkSettingsChangeExpirationDetails) { - self.sharedLinkSettingsChangeExpirationDetails = arg + sharedLinkSettingsChangeExpirationDetails = arg let swift = TeamLog.EventDetails.sharedLinkSettingsChangeExpirationDetails(arg.swift) super.init(swift: swift) } @@ -17040,7 +22486,7 @@ public class DBXTeamLogEventDetailsSharedLinkSettingsChangePasswordDetails: DBXT @objc public init(_ arg: DBXTeamLogSharedLinkSettingsChangePasswordDetails) { - self.sharedLinkSettingsChangePasswordDetails = arg + sharedLinkSettingsChangePasswordDetails = arg let swift = TeamLog.EventDetails.sharedLinkSettingsChangePasswordDetails(arg.swift) super.init(swift: swift) } @@ -17054,7 +22500,7 @@ public class DBXTeamLogEventDetailsSharedLinkSettingsRemoveExpirationDetails: DB @objc public init(_ arg: DBXTeamLogSharedLinkSettingsRemoveExpirationDetails) { - self.sharedLinkSettingsRemoveExpirationDetails = arg + sharedLinkSettingsRemoveExpirationDetails = arg let swift = TeamLog.EventDetails.sharedLinkSettingsRemoveExpirationDetails(arg.swift) super.init(swift: swift) } @@ -17068,7 +22514,7 @@ public class DBXTeamLogEventDetailsSharedLinkSettingsRemovePasswordDetails: DBXT @objc public init(_ arg: DBXTeamLogSharedLinkSettingsRemovePasswordDetails) { - self.sharedLinkSettingsRemovePasswordDetails = arg + sharedLinkSettingsRemovePasswordDetails = arg let swift = TeamLog.EventDetails.sharedLinkSettingsRemovePasswordDetails(arg.swift) super.init(swift: swift) } @@ -17082,7 +22528,7 @@ public class DBXTeamLogEventDetailsSharedLinkShareDetails: DBXTeamLogEventDetail @objc public init(_ arg: DBXTeamLogSharedLinkShareDetails) { - self.sharedLinkShareDetails = arg + sharedLinkShareDetails = arg let swift = TeamLog.EventDetails.sharedLinkShareDetails(arg.swift) super.init(swift: swift) } @@ -17096,7 +22542,7 @@ public class DBXTeamLogEventDetailsSharedLinkViewDetails: DBXTeamLogEventDetails @objc public init(_ arg: DBXTeamLogSharedLinkViewDetails) { - self.sharedLinkViewDetails = arg + sharedLinkViewDetails = arg let swift = TeamLog.EventDetails.sharedLinkViewDetails(arg.swift) super.init(swift: swift) } @@ -17110,7 +22556,7 @@ public class DBXTeamLogEventDetailsSharedNoteOpenedDetails: DBXTeamLogEventDetai @objc public init(_ arg: DBXTeamLogSharedNoteOpenedDetails) { - self.sharedNoteOpenedDetails = arg + sharedNoteOpenedDetails = arg let swift = TeamLog.EventDetails.sharedNoteOpenedDetails(arg.swift) super.init(swift: swift) } @@ -17124,7 +22570,7 @@ public class DBXTeamLogEventDetailsShmodelDisableDownloadsDetails: DBXTeamLogEve @objc public init(_ arg: DBXTeamLogShmodelDisableDownloadsDetails) { - self.shmodelDisableDownloadsDetails = arg + shmodelDisableDownloadsDetails = arg let swift = TeamLog.EventDetails.shmodelDisableDownloadsDetails(arg.swift) super.init(swift: swift) } @@ -17138,7 +22584,7 @@ public class DBXTeamLogEventDetailsShmodelEnableDownloadsDetails: DBXTeamLogEven @objc public init(_ arg: DBXTeamLogShmodelEnableDownloadsDetails) { - self.shmodelEnableDownloadsDetails = arg + shmodelEnableDownloadsDetails = arg let swift = TeamLog.EventDetails.shmodelEnableDownloadsDetails(arg.swift) super.init(swift: swift) } @@ -17152,7 +22598,7 @@ public class DBXTeamLogEventDetailsShmodelGroupShareDetails: DBXTeamLogEventDeta @objc public init(_ arg: DBXTeamLogShmodelGroupShareDetails) { - self.shmodelGroupShareDetails = arg + shmodelGroupShareDetails = arg let swift = TeamLog.EventDetails.shmodelGroupShareDetails(arg.swift) super.init(swift: swift) } @@ -17166,7 +22612,7 @@ public class DBXTeamLogEventDetailsShowcaseAccessGrantedDetails: DBXTeamLogEvent @objc public init(_ arg: DBXTeamLogShowcaseAccessGrantedDetails) { - self.showcaseAccessGrantedDetails = arg + showcaseAccessGrantedDetails = arg let swift = TeamLog.EventDetails.showcaseAccessGrantedDetails(arg.swift) super.init(swift: swift) } @@ -17180,7 +22626,7 @@ public class DBXTeamLogEventDetailsShowcaseAddMemberDetails: DBXTeamLogEventDeta @objc public init(_ arg: DBXTeamLogShowcaseAddMemberDetails) { - self.showcaseAddMemberDetails = arg + showcaseAddMemberDetails = arg let swift = TeamLog.EventDetails.showcaseAddMemberDetails(arg.swift) super.init(swift: swift) } @@ -17194,7 +22640,7 @@ public class DBXTeamLogEventDetailsShowcaseArchivedDetails: DBXTeamLogEventDetai @objc public init(_ arg: DBXTeamLogShowcaseArchivedDetails) { - self.showcaseArchivedDetails = arg + showcaseArchivedDetails = arg let swift = TeamLog.EventDetails.showcaseArchivedDetails(arg.swift) super.init(swift: swift) } @@ -17208,7 +22654,7 @@ public class DBXTeamLogEventDetailsShowcaseCreatedDetails: DBXTeamLogEventDetail @objc public init(_ arg: DBXTeamLogShowcaseCreatedDetails) { - self.showcaseCreatedDetails = arg + showcaseCreatedDetails = arg let swift = TeamLog.EventDetails.showcaseCreatedDetails(arg.swift) super.init(swift: swift) } @@ -17222,7 +22668,7 @@ public class DBXTeamLogEventDetailsShowcaseDeleteCommentDetails: DBXTeamLogEvent @objc public init(_ arg: DBXTeamLogShowcaseDeleteCommentDetails) { - self.showcaseDeleteCommentDetails = arg + showcaseDeleteCommentDetails = arg let swift = TeamLog.EventDetails.showcaseDeleteCommentDetails(arg.swift) super.init(swift: swift) } @@ -17236,7 +22682,7 @@ public class DBXTeamLogEventDetailsShowcaseEditedDetails: DBXTeamLogEventDetails @objc public init(_ arg: DBXTeamLogShowcaseEditedDetails) { - self.showcaseEditedDetails = arg + showcaseEditedDetails = arg let swift = TeamLog.EventDetails.showcaseEditedDetails(arg.swift) super.init(swift: swift) } @@ -17250,7 +22696,7 @@ public class DBXTeamLogEventDetailsShowcaseEditCommentDetails: DBXTeamLogEventDe @objc public init(_ arg: DBXTeamLogShowcaseEditCommentDetails) { - self.showcaseEditCommentDetails = arg + showcaseEditCommentDetails = arg let swift = TeamLog.EventDetails.showcaseEditCommentDetails(arg.swift) super.init(swift: swift) } @@ -17264,7 +22710,7 @@ public class DBXTeamLogEventDetailsShowcaseFileAddedDetails: DBXTeamLogEventDeta @objc public init(_ arg: DBXTeamLogShowcaseFileAddedDetails) { - self.showcaseFileAddedDetails = arg + showcaseFileAddedDetails = arg let swift = TeamLog.EventDetails.showcaseFileAddedDetails(arg.swift) super.init(swift: swift) } @@ -17278,7 +22724,7 @@ public class DBXTeamLogEventDetailsShowcaseFileDownloadDetails: DBXTeamLogEventD @objc public init(_ arg: DBXTeamLogShowcaseFileDownloadDetails) { - self.showcaseFileDownloadDetails = arg + showcaseFileDownloadDetails = arg let swift = TeamLog.EventDetails.showcaseFileDownloadDetails(arg.swift) super.init(swift: swift) } @@ -17292,7 +22738,7 @@ public class DBXTeamLogEventDetailsShowcaseFileRemovedDetails: DBXTeamLogEventDe @objc public init(_ arg: DBXTeamLogShowcaseFileRemovedDetails) { - self.showcaseFileRemovedDetails = arg + showcaseFileRemovedDetails = arg let swift = TeamLog.EventDetails.showcaseFileRemovedDetails(arg.swift) super.init(swift: swift) } @@ -17306,7 +22752,7 @@ public class DBXTeamLogEventDetailsShowcaseFileViewDetails: DBXTeamLogEventDetai @objc public init(_ arg: DBXTeamLogShowcaseFileViewDetails) { - self.showcaseFileViewDetails = arg + showcaseFileViewDetails = arg let swift = TeamLog.EventDetails.showcaseFileViewDetails(arg.swift) super.init(swift: swift) } @@ -17320,7 +22766,7 @@ public class DBXTeamLogEventDetailsShowcasePermanentlyDeletedDetails: DBXTeamLog @objc public init(_ arg: DBXTeamLogShowcasePermanentlyDeletedDetails) { - self.showcasePermanentlyDeletedDetails = arg + showcasePermanentlyDeletedDetails = arg let swift = TeamLog.EventDetails.showcasePermanentlyDeletedDetails(arg.swift) super.init(swift: swift) } @@ -17334,7 +22780,7 @@ public class DBXTeamLogEventDetailsShowcasePostCommentDetails: DBXTeamLogEventDe @objc public init(_ arg: DBXTeamLogShowcasePostCommentDetails) { - self.showcasePostCommentDetails = arg + showcasePostCommentDetails = arg let swift = TeamLog.EventDetails.showcasePostCommentDetails(arg.swift) super.init(swift: swift) } @@ -17348,7 +22794,7 @@ public class DBXTeamLogEventDetailsShowcaseRemoveMemberDetails: DBXTeamLogEventD @objc public init(_ arg: DBXTeamLogShowcaseRemoveMemberDetails) { - self.showcaseRemoveMemberDetails = arg + showcaseRemoveMemberDetails = arg let swift = TeamLog.EventDetails.showcaseRemoveMemberDetails(arg.swift) super.init(swift: swift) } @@ -17362,7 +22808,7 @@ public class DBXTeamLogEventDetailsShowcaseRenamedDetails: DBXTeamLogEventDetail @objc public init(_ arg: DBXTeamLogShowcaseRenamedDetails) { - self.showcaseRenamedDetails = arg + showcaseRenamedDetails = arg let swift = TeamLog.EventDetails.showcaseRenamedDetails(arg.swift) super.init(swift: swift) } @@ -17376,7 +22822,7 @@ public class DBXTeamLogEventDetailsShowcaseRequestAccessDetails: DBXTeamLogEvent @objc public init(_ arg: DBXTeamLogShowcaseRequestAccessDetails) { - self.showcaseRequestAccessDetails = arg + showcaseRequestAccessDetails = arg let swift = TeamLog.EventDetails.showcaseRequestAccessDetails(arg.swift) super.init(swift: swift) } @@ -17390,7 +22836,7 @@ public class DBXTeamLogEventDetailsShowcaseResolveCommentDetails: DBXTeamLogEven @objc public init(_ arg: DBXTeamLogShowcaseResolveCommentDetails) { - self.showcaseResolveCommentDetails = arg + showcaseResolveCommentDetails = arg let swift = TeamLog.EventDetails.showcaseResolveCommentDetails(arg.swift) super.init(swift: swift) } @@ -17404,7 +22850,7 @@ public class DBXTeamLogEventDetailsShowcaseRestoredDetails: DBXTeamLogEventDetai @objc public init(_ arg: DBXTeamLogShowcaseRestoredDetails) { - self.showcaseRestoredDetails = arg + showcaseRestoredDetails = arg let swift = TeamLog.EventDetails.showcaseRestoredDetails(arg.swift) super.init(swift: swift) } @@ -17418,7 +22864,7 @@ public class DBXTeamLogEventDetailsShowcaseTrashedDetails: DBXTeamLogEventDetail @objc public init(_ arg: DBXTeamLogShowcaseTrashedDetails) { - self.showcaseTrashedDetails = arg + showcaseTrashedDetails = arg let swift = TeamLog.EventDetails.showcaseTrashedDetails(arg.swift) super.init(swift: swift) } @@ -17432,7 +22878,7 @@ public class DBXTeamLogEventDetailsShowcaseTrashedDeprecatedDetails: DBXTeamLogE @objc public init(_ arg: DBXTeamLogShowcaseTrashedDeprecatedDetails) { - self.showcaseTrashedDeprecatedDetails = arg + showcaseTrashedDeprecatedDetails = arg let swift = TeamLog.EventDetails.showcaseTrashedDeprecatedDetails(arg.swift) super.init(swift: swift) } @@ -17446,7 +22892,7 @@ public class DBXTeamLogEventDetailsShowcaseUnresolveCommentDetails: DBXTeamLogEv @objc public init(_ arg: DBXTeamLogShowcaseUnresolveCommentDetails) { - self.showcaseUnresolveCommentDetails = arg + showcaseUnresolveCommentDetails = arg let swift = TeamLog.EventDetails.showcaseUnresolveCommentDetails(arg.swift) super.init(swift: swift) } @@ -17460,7 +22906,7 @@ public class DBXTeamLogEventDetailsShowcaseUntrashedDetails: DBXTeamLogEventDeta @objc public init(_ arg: DBXTeamLogShowcaseUntrashedDetails) { - self.showcaseUntrashedDetails = arg + showcaseUntrashedDetails = arg let swift = TeamLog.EventDetails.showcaseUntrashedDetails(arg.swift) super.init(swift: swift) } @@ -17474,7 +22920,7 @@ public class DBXTeamLogEventDetailsShowcaseUntrashedDeprecatedDetails: DBXTeamLo @objc public init(_ arg: DBXTeamLogShowcaseUntrashedDeprecatedDetails) { - self.showcaseUntrashedDeprecatedDetails = arg + showcaseUntrashedDeprecatedDetails = arg let swift = TeamLog.EventDetails.showcaseUntrashedDeprecatedDetails(arg.swift) super.init(swift: swift) } @@ -17488,12 +22934,138 @@ public class DBXTeamLogEventDetailsShowcaseViewDetails: DBXTeamLogEventDetails { @objc public init(_ arg: DBXTeamLogShowcaseViewDetails) { - self.showcaseViewDetails = arg + showcaseViewDetails = arg let swift = TeamLog.EventDetails.showcaseViewDetails(arg.swift) super.init(swift: swift) } } +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsSignSignatureRequestCanceledDetails: DBXTeamLogEventDetails { + @objc + public var signSignatureRequestCanceledDetails: DBXTeamLogSignSignatureRequestCanceledDetails + + @objc + public init(_ arg: DBXTeamLogSignSignatureRequestCanceledDetails) { + signSignatureRequestCanceledDetails = arg + let swift = TeamLog.EventDetails.signSignatureRequestCanceledDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsSignSignatureRequestCompletedDetails: DBXTeamLogEventDetails { + @objc + public var signSignatureRequestCompletedDetails: DBXTeamLogSignSignatureRequestCompletedDetails + + @objc + public init(_ arg: DBXTeamLogSignSignatureRequestCompletedDetails) { + signSignatureRequestCompletedDetails = arg + let swift = TeamLog.EventDetails.signSignatureRequestCompletedDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsSignSignatureRequestDeclinedDetails: DBXTeamLogEventDetails { + @objc + public var signSignatureRequestDeclinedDetails: DBXTeamLogSignSignatureRequestDeclinedDetails + + @objc + public init(_ arg: DBXTeamLogSignSignatureRequestDeclinedDetails) { + signSignatureRequestDeclinedDetails = arg + let swift = TeamLog.EventDetails.signSignatureRequestDeclinedDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsSignSignatureRequestOpenedDetails: DBXTeamLogEventDetails { + @objc + public var signSignatureRequestOpenedDetails: DBXTeamLogSignSignatureRequestOpenedDetails + + @objc + public init(_ arg: DBXTeamLogSignSignatureRequestOpenedDetails) { + signSignatureRequestOpenedDetails = arg + let swift = TeamLog.EventDetails.signSignatureRequestOpenedDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsSignSignatureRequestReminderSentDetails: DBXTeamLogEventDetails { + @objc + public var signSignatureRequestReminderSentDetails: DBXTeamLogSignSignatureRequestReminderSentDetails + + @objc + public init(_ arg: DBXTeamLogSignSignatureRequestReminderSentDetails) { + signSignatureRequestReminderSentDetails = arg + let swift = TeamLog.EventDetails.signSignatureRequestReminderSentDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsSignSignatureRequestSentDetails: DBXTeamLogEventDetails { + @objc + public var signSignatureRequestSentDetails: DBXTeamLogSignSignatureRequestSentDetails + + @objc + public init(_ arg: DBXTeamLogSignSignatureRequestSentDetails) { + signSignatureRequestSentDetails = arg + let swift = TeamLog.EventDetails.signSignatureRequestSentDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsSignTemplateCreatedDetails: DBXTeamLogEventDetails { + @objc + public var signTemplateCreatedDetails: DBXTeamLogSignTemplateCreatedDetails + + @objc + public init(_ arg: DBXTeamLogSignTemplateCreatedDetails) { + signTemplateCreatedDetails = arg + let swift = TeamLog.EventDetails.signTemplateCreatedDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsSignTemplateSharedDetails: DBXTeamLogEventDetails { + @objc + public var signTemplateSharedDetails: DBXTeamLogSignTemplateSharedDetails + + @objc + public init(_ arg: DBXTeamLogSignTemplateSharedDetails) { + signTemplateSharedDetails = arg + let swift = TeamLog.EventDetails.signTemplateSharedDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsRiscSecurityEventDetails: DBXTeamLogEventDetails { + @objc + public var riscSecurityEventDetails: DBXTeamLogRiscSecurityEventDetails + + @objc + public init(_ arg: DBXTeamLogRiscSecurityEventDetails) { + riscSecurityEventDetails = arg + let swift = TeamLog.EventDetails.riscSecurityEventDetails(arg.swift) + super.init(swift: swift) + } +} + /// An unspecified error. @objc public class DBXTeamLogEventDetailsSsoAddCertDetails: DBXTeamLogEventDetails { @@ -17502,7 +23074,7 @@ public class DBXTeamLogEventDetailsSsoAddCertDetails: DBXTeamLogEventDetails { @objc public init(_ arg: DBXTeamLogSsoAddCertDetails) { - self.ssoAddCertDetails = arg + ssoAddCertDetails = arg let swift = TeamLog.EventDetails.ssoAddCertDetails(arg.swift) super.init(swift: swift) } @@ -17516,7 +23088,7 @@ public class DBXTeamLogEventDetailsSsoAddLoginUrlDetails: DBXTeamLogEventDetails @objc public init(_ arg: DBXTeamLogSsoAddLoginUrlDetails) { - self.ssoAddLoginUrlDetails = arg + ssoAddLoginUrlDetails = arg let swift = TeamLog.EventDetails.ssoAddLoginUrlDetails(arg.swift) super.init(swift: swift) } @@ -17530,7 +23102,7 @@ public class DBXTeamLogEventDetailsSsoAddLogoutUrlDetails: DBXTeamLogEventDetail @objc public init(_ arg: DBXTeamLogSsoAddLogoutUrlDetails) { - self.ssoAddLogoutUrlDetails = arg + ssoAddLogoutUrlDetails = arg let swift = TeamLog.EventDetails.ssoAddLogoutUrlDetails(arg.swift) super.init(swift: swift) } @@ -17544,7 +23116,7 @@ public class DBXTeamLogEventDetailsSsoChangeCertDetails: DBXTeamLogEventDetails @objc public init(_ arg: DBXTeamLogSsoChangeCertDetails) { - self.ssoChangeCertDetails = arg + ssoChangeCertDetails = arg let swift = TeamLog.EventDetails.ssoChangeCertDetails(arg.swift) super.init(swift: swift) } @@ -17558,7 +23130,7 @@ public class DBXTeamLogEventDetailsSsoChangeLoginUrlDetails: DBXTeamLogEventDeta @objc public init(_ arg: DBXTeamLogSsoChangeLoginUrlDetails) { - self.ssoChangeLoginUrlDetails = arg + ssoChangeLoginUrlDetails = arg let swift = TeamLog.EventDetails.ssoChangeLoginUrlDetails(arg.swift) super.init(swift: swift) } @@ -17572,7 +23144,7 @@ public class DBXTeamLogEventDetailsSsoChangeLogoutUrlDetails: DBXTeamLogEventDet @objc public init(_ arg: DBXTeamLogSsoChangeLogoutUrlDetails) { - self.ssoChangeLogoutUrlDetails = arg + ssoChangeLogoutUrlDetails = arg let swift = TeamLog.EventDetails.ssoChangeLogoutUrlDetails(arg.swift) super.init(swift: swift) } @@ -17586,7 +23158,7 @@ public class DBXTeamLogEventDetailsSsoChangeSamlIdentityModeDetails: DBXTeamLogE @objc public init(_ arg: DBXTeamLogSsoChangeSamlIdentityModeDetails) { - self.ssoChangeSamlIdentityModeDetails = arg + ssoChangeSamlIdentityModeDetails = arg let swift = TeamLog.EventDetails.ssoChangeSamlIdentityModeDetails(arg.swift) super.init(swift: swift) } @@ -17600,7 +23172,7 @@ public class DBXTeamLogEventDetailsSsoRemoveCertDetails: DBXTeamLogEventDetails @objc public init(_ arg: DBXTeamLogSsoRemoveCertDetails) { - self.ssoRemoveCertDetails = arg + ssoRemoveCertDetails = arg let swift = TeamLog.EventDetails.ssoRemoveCertDetails(arg.swift) super.init(swift: swift) } @@ -17614,7 +23186,7 @@ public class DBXTeamLogEventDetailsSsoRemoveLoginUrlDetails: DBXTeamLogEventDeta @objc public init(_ arg: DBXTeamLogSsoRemoveLoginUrlDetails) { - self.ssoRemoveLoginUrlDetails = arg + ssoRemoveLoginUrlDetails = arg let swift = TeamLog.EventDetails.ssoRemoveLoginUrlDetails(arg.swift) super.init(swift: swift) } @@ -17628,7 +23200,7 @@ public class DBXTeamLogEventDetailsSsoRemoveLogoutUrlDetails: DBXTeamLogEventDet @objc public init(_ arg: DBXTeamLogSsoRemoveLogoutUrlDetails) { - self.ssoRemoveLogoutUrlDetails = arg + ssoRemoveLogoutUrlDetails = arg let swift = TeamLog.EventDetails.ssoRemoveLogoutUrlDetails(arg.swift) super.init(swift: swift) } @@ -17642,7 +23214,7 @@ public class DBXTeamLogEventDetailsTeamFolderChangeStatusDetails: DBXTeamLogEven @objc public init(_ arg: DBXTeamLogTeamFolderChangeStatusDetails) { - self.teamFolderChangeStatusDetails = arg + teamFolderChangeStatusDetails = arg let swift = TeamLog.EventDetails.teamFolderChangeStatusDetails(arg.swift) super.init(swift: swift) } @@ -17656,7 +23228,7 @@ public class DBXTeamLogEventDetailsTeamFolderCreateDetails: DBXTeamLogEventDetai @objc public init(_ arg: DBXTeamLogTeamFolderCreateDetails) { - self.teamFolderCreateDetails = arg + teamFolderCreateDetails = arg let swift = TeamLog.EventDetails.teamFolderCreateDetails(arg.swift) super.init(swift: swift) } @@ -17670,7 +23242,7 @@ public class DBXTeamLogEventDetailsTeamFolderDowngradeDetails: DBXTeamLogEventDe @objc public init(_ arg: DBXTeamLogTeamFolderDowngradeDetails) { - self.teamFolderDowngradeDetails = arg + teamFolderDowngradeDetails = arg let swift = TeamLog.EventDetails.teamFolderDowngradeDetails(arg.swift) super.init(swift: swift) } @@ -17684,7 +23256,7 @@ public class DBXTeamLogEventDetailsTeamFolderPermanentlyDeleteDetails: DBXTeamLo @objc public init(_ arg: DBXTeamLogTeamFolderPermanentlyDeleteDetails) { - self.teamFolderPermanentlyDeleteDetails = arg + teamFolderPermanentlyDeleteDetails = arg let swift = TeamLog.EventDetails.teamFolderPermanentlyDeleteDetails(arg.swift) super.init(swift: swift) } @@ -17698,12 +23270,54 @@ public class DBXTeamLogEventDetailsTeamFolderRenameDetails: DBXTeamLogEventDetai @objc public init(_ arg: DBXTeamLogTeamFolderRenameDetails) { - self.teamFolderRenameDetails = arg + teamFolderRenameDetails = arg let swift = TeamLog.EventDetails.teamFolderRenameDetails(arg.swift) super.init(swift: swift) } } +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsTeamFolderSpaceLimitsChangeCapsTypeDetails: DBXTeamLogEventDetails { + @objc + public var teamFolderSpaceLimitsChangeCapsTypeDetails: DBXTeamLogTeamFolderSpaceLimitsChangeCapsTypeDetails + + @objc + public init(_ arg: DBXTeamLogTeamFolderSpaceLimitsChangeCapsTypeDetails) { + teamFolderSpaceLimitsChangeCapsTypeDetails = arg + let swift = TeamLog.EventDetails.teamFolderSpaceLimitsChangeCapsTypeDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsTeamFolderSpaceLimitsChangeLimitDetails: DBXTeamLogEventDetails { + @objc + public var teamFolderSpaceLimitsChangeLimitDetails: DBXTeamLogTeamFolderSpaceLimitsChangeLimitDetails + + @objc + public init(_ arg: DBXTeamLogTeamFolderSpaceLimitsChangeLimitDetails) { + teamFolderSpaceLimitsChangeLimitDetails = arg + let swift = TeamLog.EventDetails.teamFolderSpaceLimitsChangeLimitDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsTeamFolderSpaceLimitsChangeNotificationTargetDetails: DBXTeamLogEventDetails { + @objc + public var teamFolderSpaceLimitsChangeNotificationTargetDetails: DBXTeamLogTeamFolderSpaceLimitsChangeNotificationTargetDetails + + @objc + public init(_ arg: DBXTeamLogTeamFolderSpaceLimitsChangeNotificationTargetDetails) { + teamFolderSpaceLimitsChangeNotificationTargetDetails = arg + let swift = TeamLog.EventDetails.teamFolderSpaceLimitsChangeNotificationTargetDetails(arg.swift) + super.init(swift: swift) + } +} + /// An unspecified error. @objc public class DBXTeamLogEventDetailsTeamSelectiveSyncSettingsChangedDetails: DBXTeamLogEventDetails { @@ -17712,7 +23326,7 @@ public class DBXTeamLogEventDetailsTeamSelectiveSyncSettingsChangedDetails: DBXT @objc public init(_ arg: DBXTeamLogTeamSelectiveSyncSettingsChangedDetails) { - self.teamSelectiveSyncSettingsChangedDetails = arg + teamSelectiveSyncSettingsChangedDetails = arg let swift = TeamLog.EventDetails.teamSelectiveSyncSettingsChangedDetails(arg.swift) super.init(swift: swift) } @@ -17726,7 +23340,7 @@ public class DBXTeamLogEventDetailsAccountCaptureChangePolicyDetails: DBXTeamLog @objc public init(_ arg: DBXTeamLogAccountCaptureChangePolicyDetails) { - self.accountCaptureChangePolicyDetails = arg + accountCaptureChangePolicyDetails = arg let swift = TeamLog.EventDetails.accountCaptureChangePolicyDetails(arg.swift) super.init(swift: swift) } @@ -17740,12 +23354,26 @@ public class DBXTeamLogEventDetailsAdminEmailRemindersChangedDetails: DBXTeamLog @objc public init(_ arg: DBXTeamLogAdminEmailRemindersChangedDetails) { - self.adminEmailRemindersChangedDetails = arg + adminEmailRemindersChangedDetails = arg let swift = TeamLog.EventDetails.adminEmailRemindersChangedDetails(arg.swift) super.init(swift: swift) } } +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsAiThirdPartySharingDropboxBasePolicyChangedDetails: DBXTeamLogEventDetails { + @objc + public var aiThirdPartySharingDropboxBasePolicyChangedDetails: DBXTeamLogAiThirdPartySharingDropboxBasePolicyChangedDetails + + @objc + public init(_ arg: DBXTeamLogAiThirdPartySharingDropboxBasePolicyChangedDetails) { + aiThirdPartySharingDropboxBasePolicyChangedDetails = arg + let swift = TeamLog.EventDetails.aiThirdPartySharingDropboxBasePolicyChangedDetails(arg.swift) + super.init(swift: swift) + } +} + /// An unspecified error. @objc public class DBXTeamLogEventDetailsAllowDownloadDisabledDetails: DBXTeamLogEventDetails { @@ -17754,7 +23382,7 @@ public class DBXTeamLogEventDetailsAllowDownloadDisabledDetails: DBXTeamLogEvent @objc public init(_ arg: DBXTeamLogAllowDownloadDisabledDetails) { - self.allowDownloadDisabledDetails = arg + allowDownloadDisabledDetails = arg let swift = TeamLog.EventDetails.allowDownloadDisabledDetails(arg.swift) super.init(swift: swift) } @@ -17768,12 +23396,26 @@ public class DBXTeamLogEventDetailsAllowDownloadEnabledDetails: DBXTeamLogEventD @objc public init(_ arg: DBXTeamLogAllowDownloadEnabledDetails) { - self.allowDownloadEnabledDetails = arg + allowDownloadEnabledDetails = arg let swift = TeamLog.EventDetails.allowDownloadEnabledDetails(arg.swift) super.init(swift: swift) } } +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsAppleLoginChangePolicyDetails: DBXTeamLogEventDetails { + @objc + public var appleLoginChangePolicyDetails: DBXTeamLogAppleLoginChangePolicyDetails + + @objc + public init(_ arg: DBXTeamLogAppleLoginChangePolicyDetails) { + appleLoginChangePolicyDetails = arg + let swift = TeamLog.EventDetails.appleLoginChangePolicyDetails(arg.swift) + super.init(swift: swift) + } +} + /// An unspecified error. @objc public class DBXTeamLogEventDetailsAppPermissionsChangedDetails: DBXTeamLogEventDetails { @@ -17782,7 +23424,7 @@ public class DBXTeamLogEventDetailsAppPermissionsChangedDetails: DBXTeamLogEvent @objc public init(_ arg: DBXTeamLogAppPermissionsChangedDetails) { - self.appPermissionsChangedDetails = arg + appPermissionsChangedDetails = arg let swift = TeamLog.EventDetails.appPermissionsChangedDetails(arg.swift) super.init(swift: swift) } @@ -17796,12 +23438,26 @@ public class DBXTeamLogEventDetailsCameraUploadsPolicyChangedDetails: DBXTeamLog @objc public init(_ arg: DBXTeamLogCameraUploadsPolicyChangedDetails) { - self.cameraUploadsPolicyChangedDetails = arg + cameraUploadsPolicyChangedDetails = arg let swift = TeamLog.EventDetails.cameraUploadsPolicyChangedDetails(arg.swift) super.init(swift: swift) } } +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsCaptureTeamSpacePolicyChangedDetails: DBXTeamLogEventDetails { + @objc + public var captureTeamSpacePolicyChangedDetails: DBXTeamLogCaptureTeamSpacePolicyChangedDetails + + @objc + public init(_ arg: DBXTeamLogCaptureTeamSpacePolicyChangedDetails) { + captureTeamSpacePolicyChangedDetails = arg + let swift = TeamLog.EventDetails.captureTeamSpacePolicyChangedDetails(arg.swift) + super.init(swift: swift) + } +} + /// An unspecified error. @objc public class DBXTeamLogEventDetailsCaptureTranscriptPolicyChangedDetails: DBXTeamLogEventDetails { @@ -17810,7 +23466,7 @@ public class DBXTeamLogEventDetailsCaptureTranscriptPolicyChangedDetails: DBXTea @objc public init(_ arg: DBXTeamLogCaptureTranscriptPolicyChangedDetails) { - self.captureTranscriptPolicyChangedDetails = arg + captureTranscriptPolicyChangedDetails = arg let swift = TeamLog.EventDetails.captureTranscriptPolicyChangedDetails(arg.swift) super.init(swift: swift) } @@ -17824,7 +23480,7 @@ public class DBXTeamLogEventDetailsClassificationChangePolicyDetails: DBXTeamLog @objc public init(_ arg: DBXTeamLogClassificationChangePolicyDetails) { - self.classificationChangePolicyDetails = arg + classificationChangePolicyDetails = arg let swift = TeamLog.EventDetails.classificationChangePolicyDetails(arg.swift) super.init(swift: swift) } @@ -17838,7 +23494,7 @@ public class DBXTeamLogEventDetailsComputerBackupPolicyChangedDetails: DBXTeamLo @objc public init(_ arg: DBXTeamLogComputerBackupPolicyChangedDetails) { - self.computerBackupPolicyChangedDetails = arg + computerBackupPolicyChangedDetails = arg let swift = TeamLog.EventDetails.computerBackupPolicyChangedDetails(arg.swift) super.init(swift: swift) } @@ -17852,12 +23508,40 @@ public class DBXTeamLogEventDetailsContentAdministrationPolicyChangedDetails: DB @objc public init(_ arg: DBXTeamLogContentAdministrationPolicyChangedDetails) { - self.contentAdministrationPolicyChangedDetails = arg + contentAdministrationPolicyChangedDetails = arg let swift = TeamLog.EventDetails.contentAdministrationPolicyChangedDetails(arg.swift) super.init(swift: swift) } } +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsContentDeletionProtectionChangePolicyDetails: DBXTeamLogEventDetails { + @objc + public var contentDeletionProtectionChangePolicyDetails: DBXTeamLogContentDeletionProtectionChangePolicyDetails + + @objc + public init(_ arg: DBXTeamLogContentDeletionProtectionChangePolicyDetails) { + contentDeletionProtectionChangePolicyDetails = arg + let swift = TeamLog.EventDetails.contentDeletionProtectionChangePolicyDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsDashExternalSharingPolicyChangedDetails: DBXTeamLogEventDetails { + @objc + public var dashExternalSharingPolicyChangedDetails: DBXTeamLogDashExternalSharingPolicyChangedDetails + + @objc + public init(_ arg: DBXTeamLogDashExternalSharingPolicyChangedDetails) { + dashExternalSharingPolicyChangedDetails = arg + let swift = TeamLog.EventDetails.dashExternalSharingPolicyChangedDetails(arg.swift) + super.init(swift: swift) + } +} + /// An unspecified error. @objc public class DBXTeamLogEventDetailsDataPlacementRestrictionChangePolicyDetails: DBXTeamLogEventDetails { @@ -17866,7 +23550,7 @@ public class DBXTeamLogEventDetailsDataPlacementRestrictionChangePolicyDetails: @objc public init(_ arg: DBXTeamLogDataPlacementRestrictionChangePolicyDetails) { - self.dataPlacementRestrictionChangePolicyDetails = arg + dataPlacementRestrictionChangePolicyDetails = arg let swift = TeamLog.EventDetails.dataPlacementRestrictionChangePolicyDetails(arg.swift) super.init(swift: swift) } @@ -17880,7 +23564,7 @@ public class DBXTeamLogEventDetailsDataPlacementRestrictionSatisfyPolicyDetails: @objc public init(_ arg: DBXTeamLogDataPlacementRestrictionSatisfyPolicyDetails) { - self.dataPlacementRestrictionSatisfyPolicyDetails = arg + dataPlacementRestrictionSatisfyPolicyDetails = arg let swift = TeamLog.EventDetails.dataPlacementRestrictionSatisfyPolicyDetails(arg.swift) super.init(swift: swift) } @@ -17894,7 +23578,7 @@ public class DBXTeamLogEventDetailsDeviceApprovalsAddExceptionDetails: DBXTeamLo @objc public init(_ arg: DBXTeamLogDeviceApprovalsAddExceptionDetails) { - self.deviceApprovalsAddExceptionDetails = arg + deviceApprovalsAddExceptionDetails = arg let swift = TeamLog.EventDetails.deviceApprovalsAddExceptionDetails(arg.swift) super.init(swift: swift) } @@ -17908,7 +23592,7 @@ public class DBXTeamLogEventDetailsDeviceApprovalsChangeDesktopPolicyDetails: DB @objc public init(_ arg: DBXTeamLogDeviceApprovalsChangeDesktopPolicyDetails) { - self.deviceApprovalsChangeDesktopPolicyDetails = arg + deviceApprovalsChangeDesktopPolicyDetails = arg let swift = TeamLog.EventDetails.deviceApprovalsChangeDesktopPolicyDetails(arg.swift) super.init(swift: swift) } @@ -17922,7 +23606,7 @@ public class DBXTeamLogEventDetailsDeviceApprovalsChangeMobilePolicyDetails: DBX @objc public init(_ arg: DBXTeamLogDeviceApprovalsChangeMobilePolicyDetails) { - self.deviceApprovalsChangeMobilePolicyDetails = arg + deviceApprovalsChangeMobilePolicyDetails = arg let swift = TeamLog.EventDetails.deviceApprovalsChangeMobilePolicyDetails(arg.swift) super.init(swift: swift) } @@ -17936,7 +23620,7 @@ public class DBXTeamLogEventDetailsDeviceApprovalsChangeOverageActionDetails: DB @objc public init(_ arg: DBXTeamLogDeviceApprovalsChangeOverageActionDetails) { - self.deviceApprovalsChangeOverageActionDetails = arg + deviceApprovalsChangeOverageActionDetails = arg let swift = TeamLog.EventDetails.deviceApprovalsChangeOverageActionDetails(arg.swift) super.init(swift: swift) } @@ -17950,7 +23634,7 @@ public class DBXTeamLogEventDetailsDeviceApprovalsChangeUnlinkActionDetails: DBX @objc public init(_ arg: DBXTeamLogDeviceApprovalsChangeUnlinkActionDetails) { - self.deviceApprovalsChangeUnlinkActionDetails = arg + deviceApprovalsChangeUnlinkActionDetails = arg let swift = TeamLog.EventDetails.deviceApprovalsChangeUnlinkActionDetails(arg.swift) super.init(swift: swift) } @@ -17964,7 +23648,7 @@ public class DBXTeamLogEventDetailsDeviceApprovalsRemoveExceptionDetails: DBXTea @objc public init(_ arg: DBXTeamLogDeviceApprovalsRemoveExceptionDetails) { - self.deviceApprovalsRemoveExceptionDetails = arg + deviceApprovalsRemoveExceptionDetails = arg let swift = TeamLog.EventDetails.deviceApprovalsRemoveExceptionDetails(arg.swift) super.init(swift: swift) } @@ -17978,7 +23662,7 @@ public class DBXTeamLogEventDetailsDirectoryRestrictionsAddMembersDetails: DBXTe @objc public init(_ arg: DBXTeamLogDirectoryRestrictionsAddMembersDetails) { - self.directoryRestrictionsAddMembersDetails = arg + directoryRestrictionsAddMembersDetails = arg let swift = TeamLog.EventDetails.directoryRestrictionsAddMembersDetails(arg.swift) super.init(swift: swift) } @@ -17992,7 +23676,7 @@ public class DBXTeamLogEventDetailsDirectoryRestrictionsRemoveMembersDetails: DB @objc public init(_ arg: DBXTeamLogDirectoryRestrictionsRemoveMembersDetails) { - self.directoryRestrictionsRemoveMembersDetails = arg + directoryRestrictionsRemoveMembersDetails = arg let swift = TeamLog.EventDetails.directoryRestrictionsRemoveMembersDetails(arg.swift) super.init(swift: swift) } @@ -18006,7 +23690,7 @@ public class DBXTeamLogEventDetailsDropboxPasswordsPolicyChangedDetails: DBXTeam @objc public init(_ arg: DBXTeamLogDropboxPasswordsPolicyChangedDetails) { - self.dropboxPasswordsPolicyChangedDetails = arg + dropboxPasswordsPolicyChangedDetails = arg let swift = TeamLog.EventDetails.dropboxPasswordsPolicyChangedDetails(arg.swift) super.init(swift: swift) } @@ -18020,7 +23704,7 @@ public class DBXTeamLogEventDetailsEmailIngestPolicyChangedDetails: DBXTeamLogEv @objc public init(_ arg: DBXTeamLogEmailIngestPolicyChangedDetails) { - self.emailIngestPolicyChangedDetails = arg + emailIngestPolicyChangedDetails = arg let swift = TeamLog.EventDetails.emailIngestPolicyChangedDetails(arg.swift) super.init(swift: swift) } @@ -18034,7 +23718,7 @@ public class DBXTeamLogEventDetailsEmmAddExceptionDetails: DBXTeamLogEventDetail @objc public init(_ arg: DBXTeamLogEmmAddExceptionDetails) { - self.emmAddExceptionDetails = arg + emmAddExceptionDetails = arg let swift = TeamLog.EventDetails.emmAddExceptionDetails(arg.swift) super.init(swift: swift) } @@ -18048,7 +23732,7 @@ public class DBXTeamLogEventDetailsEmmChangePolicyDetails: DBXTeamLogEventDetail @objc public init(_ arg: DBXTeamLogEmmChangePolicyDetails) { - self.emmChangePolicyDetails = arg + emmChangePolicyDetails = arg let swift = TeamLog.EventDetails.emmChangePolicyDetails(arg.swift) super.init(swift: swift) } @@ -18062,7 +23746,7 @@ public class DBXTeamLogEventDetailsEmmRemoveExceptionDetails: DBXTeamLogEventDet @objc public init(_ arg: DBXTeamLogEmmRemoveExceptionDetails) { - self.emmRemoveExceptionDetails = arg + emmRemoveExceptionDetails = arg let swift = TeamLog.EventDetails.emmRemoveExceptionDetails(arg.swift) super.init(swift: swift) } @@ -18076,7 +23760,7 @@ public class DBXTeamLogEventDetailsExtendedVersionHistoryChangePolicyDetails: DB @objc public init(_ arg: DBXTeamLogExtendedVersionHistoryChangePolicyDetails) { - self.extendedVersionHistoryChangePolicyDetails = arg + extendedVersionHistoryChangePolicyDetails = arg let swift = TeamLog.EventDetails.extendedVersionHistoryChangePolicyDetails(arg.swift) super.init(swift: swift) } @@ -18090,7 +23774,7 @@ public class DBXTeamLogEventDetailsExternalDriveBackupPolicyChangedDetails: DBXT @objc public init(_ arg: DBXTeamLogExternalDriveBackupPolicyChangedDetails) { - self.externalDriveBackupPolicyChangedDetails = arg + externalDriveBackupPolicyChangedDetails = arg let swift = TeamLog.EventDetails.externalDriveBackupPolicyChangedDetails(arg.swift) super.init(swift: swift) } @@ -18104,7 +23788,7 @@ public class DBXTeamLogEventDetailsFileCommentsChangePolicyDetails: DBXTeamLogEv @objc public init(_ arg: DBXTeamLogFileCommentsChangePolicyDetails) { - self.fileCommentsChangePolicyDetails = arg + fileCommentsChangePolicyDetails = arg let swift = TeamLog.EventDetails.fileCommentsChangePolicyDetails(arg.swift) super.init(swift: swift) } @@ -18118,7 +23802,7 @@ public class DBXTeamLogEventDetailsFileLockingPolicyChangedDetails: DBXTeamLogEv @objc public init(_ arg: DBXTeamLogFileLockingPolicyChangedDetails) { - self.fileLockingPolicyChangedDetails = arg + fileLockingPolicyChangedDetails = arg let swift = TeamLog.EventDetails.fileLockingPolicyChangedDetails(arg.swift) super.init(swift: swift) } @@ -18132,7 +23816,7 @@ public class DBXTeamLogEventDetailsFileProviderMigrationPolicyChangedDetails: DB @objc public init(_ arg: DBXTeamLogFileProviderMigrationPolicyChangedDetails) { - self.fileProviderMigrationPolicyChangedDetails = arg + fileProviderMigrationPolicyChangedDetails = arg let swift = TeamLog.EventDetails.fileProviderMigrationPolicyChangedDetails(arg.swift) super.init(swift: swift) } @@ -18146,7 +23830,7 @@ public class DBXTeamLogEventDetailsFileRequestsChangePolicyDetails: DBXTeamLogEv @objc public init(_ arg: DBXTeamLogFileRequestsChangePolicyDetails) { - self.fileRequestsChangePolicyDetails = arg + fileRequestsChangePolicyDetails = arg let swift = TeamLog.EventDetails.fileRequestsChangePolicyDetails(arg.swift) super.init(swift: swift) } @@ -18160,7 +23844,7 @@ public class DBXTeamLogEventDetailsFileRequestsEmailsEnabledDetails: DBXTeamLogE @objc public init(_ arg: DBXTeamLogFileRequestsEmailsEnabledDetails) { - self.fileRequestsEmailsEnabledDetails = arg + fileRequestsEmailsEnabledDetails = arg let swift = TeamLog.EventDetails.fileRequestsEmailsEnabledDetails(arg.swift) super.init(swift: swift) } @@ -18174,7 +23858,7 @@ public class DBXTeamLogEventDetailsFileRequestsEmailsRestrictedToTeamOnlyDetails @objc public init(_ arg: DBXTeamLogFileRequestsEmailsRestrictedToTeamOnlyDetails) { - self.fileRequestsEmailsRestrictedToTeamOnlyDetails = arg + fileRequestsEmailsRestrictedToTeamOnlyDetails = arg let swift = TeamLog.EventDetails.fileRequestsEmailsRestrictedToTeamOnlyDetails(arg.swift) super.init(swift: swift) } @@ -18188,12 +23872,26 @@ public class DBXTeamLogEventDetailsFileTransfersPolicyChangedDetails: DBXTeamLog @objc public init(_ arg: DBXTeamLogFileTransfersPolicyChangedDetails) { - self.fileTransfersPolicyChangedDetails = arg + fileTransfersPolicyChangedDetails = arg let swift = TeamLog.EventDetails.fileTransfersPolicyChangedDetails(arg.swift) super.init(swift: swift) } } +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsFlexibleFileNamesPolicyChangedDetails: DBXTeamLogEventDetails { + @objc + public var flexibleFileNamesPolicyChangedDetails: DBXTeamLogFlexibleFileNamesPolicyChangedDetails + + @objc + public init(_ arg: DBXTeamLogFlexibleFileNamesPolicyChangedDetails) { + flexibleFileNamesPolicyChangedDetails = arg + let swift = TeamLog.EventDetails.flexibleFileNamesPolicyChangedDetails(arg.swift) + super.init(swift: swift) + } +} + /// An unspecified error. @objc public class DBXTeamLogEventDetailsFolderLinkRestrictionPolicyChangedDetails: DBXTeamLogEventDetails { @@ -18202,7 +23900,7 @@ public class DBXTeamLogEventDetailsFolderLinkRestrictionPolicyChangedDetails: DB @objc public init(_ arg: DBXTeamLogFolderLinkRestrictionPolicyChangedDetails) { - self.folderLinkRestrictionPolicyChangedDetails = arg + folderLinkRestrictionPolicyChangedDetails = arg let swift = TeamLog.EventDetails.folderLinkRestrictionPolicyChangedDetails(arg.swift) super.init(swift: swift) } @@ -18216,7 +23914,7 @@ public class DBXTeamLogEventDetailsGoogleSsoChangePolicyDetails: DBXTeamLogEvent @objc public init(_ arg: DBXTeamLogGoogleSsoChangePolicyDetails) { - self.googleSsoChangePolicyDetails = arg + googleSsoChangePolicyDetails = arg let swift = TeamLog.EventDetails.googleSsoChangePolicyDetails(arg.swift) super.init(swift: swift) } @@ -18230,7 +23928,7 @@ public class DBXTeamLogEventDetailsGroupUserManagementChangePolicyDetails: DBXTe @objc public init(_ arg: DBXTeamLogGroupUserManagementChangePolicyDetails) { - self.groupUserManagementChangePolicyDetails = arg + groupUserManagementChangePolicyDetails = arg let swift = TeamLog.EventDetails.groupUserManagementChangePolicyDetails(arg.swift) super.init(swift: swift) } @@ -18244,7 +23942,7 @@ public class DBXTeamLogEventDetailsIntegrationPolicyChangedDetails: DBXTeamLogEv @objc public init(_ arg: DBXTeamLogIntegrationPolicyChangedDetails) { - self.integrationPolicyChangedDetails = arg + integrationPolicyChangedDetails = arg let swift = TeamLog.EventDetails.integrationPolicyChangedDetails(arg.swift) super.init(swift: swift) } @@ -18258,12 +23956,54 @@ public class DBXTeamLogEventDetailsInviteAcceptanceEmailPolicyChangedDetails: DB @objc public init(_ arg: DBXTeamLogInviteAcceptanceEmailPolicyChangedDetails) { - self.inviteAcceptanceEmailPolicyChangedDetails = arg + inviteAcceptanceEmailPolicyChangedDetails = arg let swift = TeamLog.EventDetails.inviteAcceptanceEmailPolicyChangedDetails(arg.swift) super.init(swift: swift) } } +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsMediaHubAddingPeoplePolicyChangedDetails: DBXTeamLogEventDetails { + @objc + public var mediaHubAddingPeoplePolicyChangedDetails: DBXTeamLogMediaHubAddingPeoplePolicyChangedDetails + + @objc + public init(_ arg: DBXTeamLogMediaHubAddingPeoplePolicyChangedDetails) { + mediaHubAddingPeoplePolicyChangedDetails = arg + let swift = TeamLog.EventDetails.mediaHubAddingPeoplePolicyChangedDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsMediaHubDownloadPolicyChangedDetails: DBXTeamLogEventDetails { + @objc + public var mediaHubDownloadPolicyChangedDetails: DBXTeamLogMediaHubDownloadPolicyChangedDetails + + @objc + public init(_ arg: DBXTeamLogMediaHubDownloadPolicyChangedDetails) { + mediaHubDownloadPolicyChangedDetails = arg + let swift = TeamLog.EventDetails.mediaHubDownloadPolicyChangedDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsMediaHubLinkSharingPolicyChangedDetails: DBXTeamLogEventDetails { + @objc + public var mediaHubLinkSharingPolicyChangedDetails: DBXTeamLogMediaHubLinkSharingPolicyChangedDetails + + @objc + public init(_ arg: DBXTeamLogMediaHubLinkSharingPolicyChangedDetails) { + mediaHubLinkSharingPolicyChangedDetails = arg + let swift = TeamLog.EventDetails.mediaHubLinkSharingPolicyChangedDetails(arg.swift) + super.init(swift: swift) + } +} + /// An unspecified error. @objc public class DBXTeamLogEventDetailsMemberRequestsChangePolicyDetails: DBXTeamLogEventDetails { @@ -18272,7 +24012,7 @@ public class DBXTeamLogEventDetailsMemberRequestsChangePolicyDetails: DBXTeamLog @objc public init(_ arg: DBXTeamLogMemberRequestsChangePolicyDetails) { - self.memberRequestsChangePolicyDetails = arg + memberRequestsChangePolicyDetails = arg let swift = TeamLog.EventDetails.memberRequestsChangePolicyDetails(arg.swift) super.init(swift: swift) } @@ -18286,7 +24026,7 @@ public class DBXTeamLogEventDetailsMemberSendInvitePolicyChangedDetails: DBXTeam @objc public init(_ arg: DBXTeamLogMemberSendInvitePolicyChangedDetails) { - self.memberSendInvitePolicyChangedDetails = arg + memberSendInvitePolicyChangedDetails = arg let swift = TeamLog.EventDetails.memberSendInvitePolicyChangedDetails(arg.swift) super.init(swift: swift) } @@ -18300,7 +24040,7 @@ public class DBXTeamLogEventDetailsMemberSpaceLimitsAddExceptionDetails: DBXTeam @objc public init(_ arg: DBXTeamLogMemberSpaceLimitsAddExceptionDetails) { - self.memberSpaceLimitsAddExceptionDetails = arg + memberSpaceLimitsAddExceptionDetails = arg let swift = TeamLog.EventDetails.memberSpaceLimitsAddExceptionDetails(arg.swift) super.init(swift: swift) } @@ -18314,7 +24054,7 @@ public class DBXTeamLogEventDetailsMemberSpaceLimitsChangeCapsTypePolicyDetails: @objc public init(_ arg: DBXTeamLogMemberSpaceLimitsChangeCapsTypePolicyDetails) { - self.memberSpaceLimitsChangeCapsTypePolicyDetails = arg + memberSpaceLimitsChangeCapsTypePolicyDetails = arg let swift = TeamLog.EventDetails.memberSpaceLimitsChangeCapsTypePolicyDetails(arg.swift) super.init(swift: swift) } @@ -18328,7 +24068,7 @@ public class DBXTeamLogEventDetailsMemberSpaceLimitsChangePolicyDetails: DBXTeam @objc public init(_ arg: DBXTeamLogMemberSpaceLimitsChangePolicyDetails) { - self.memberSpaceLimitsChangePolicyDetails = arg + memberSpaceLimitsChangePolicyDetails = arg let swift = TeamLog.EventDetails.memberSpaceLimitsChangePolicyDetails(arg.swift) super.init(swift: swift) } @@ -18342,7 +24082,7 @@ public class DBXTeamLogEventDetailsMemberSpaceLimitsRemoveExceptionDetails: DBXT @objc public init(_ arg: DBXTeamLogMemberSpaceLimitsRemoveExceptionDetails) { - self.memberSpaceLimitsRemoveExceptionDetails = arg + memberSpaceLimitsRemoveExceptionDetails = arg let swift = TeamLog.EventDetails.memberSpaceLimitsRemoveExceptionDetails(arg.swift) super.init(swift: swift) } @@ -18356,12 +24096,26 @@ public class DBXTeamLogEventDetailsMemberSuggestionsChangePolicyDetails: DBXTeam @objc public init(_ arg: DBXTeamLogMemberSuggestionsChangePolicyDetails) { - self.memberSuggestionsChangePolicyDetails = arg + memberSuggestionsChangePolicyDetails = arg let swift = TeamLog.EventDetails.memberSuggestionsChangePolicyDetails(arg.swift) super.init(swift: swift) } } +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsMicrosoftLoginChangePolicyDetails: DBXTeamLogEventDetails { + @objc + public var microsoftLoginChangePolicyDetails: DBXTeamLogMicrosoftLoginChangePolicyDetails + + @objc + public init(_ arg: DBXTeamLogMicrosoftLoginChangePolicyDetails) { + microsoftLoginChangePolicyDetails = arg + let swift = TeamLog.EventDetails.microsoftLoginChangePolicyDetails(arg.swift) + super.init(swift: swift) + } +} + /// An unspecified error. @objc public class DBXTeamLogEventDetailsMicrosoftOfficeAddinChangePolicyDetails: DBXTeamLogEventDetails { @@ -18370,12 +24124,26 @@ public class DBXTeamLogEventDetailsMicrosoftOfficeAddinChangePolicyDetails: DBXT @objc public init(_ arg: DBXTeamLogMicrosoftOfficeAddinChangePolicyDetails) { - self.microsoftOfficeAddinChangePolicyDetails = arg + microsoftOfficeAddinChangePolicyDetails = arg let swift = TeamLog.EventDetails.microsoftOfficeAddinChangePolicyDetails(arg.swift) super.init(swift: swift) } } +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsMultiTeamIdentityPolicyChangedDetails: DBXTeamLogEventDetails { + @objc + public var multiTeamIdentityPolicyChangedDetails: DBXTeamLogMultiTeamIdentityPolicyChangedDetails + + @objc + public init(_ arg: DBXTeamLogMultiTeamIdentityPolicyChangedDetails) { + multiTeamIdentityPolicyChangedDetails = arg + let swift = TeamLog.EventDetails.multiTeamIdentityPolicyChangedDetails(arg.swift) + super.init(swift: swift) + } +} + /// An unspecified error. @objc public class DBXTeamLogEventDetailsNetworkControlChangePolicyDetails: DBXTeamLogEventDetails { @@ -18384,7 +24152,7 @@ public class DBXTeamLogEventDetailsNetworkControlChangePolicyDetails: DBXTeamLog @objc public init(_ arg: DBXTeamLogNetworkControlChangePolicyDetails) { - self.networkControlChangePolicyDetails = arg + networkControlChangePolicyDetails = arg let swift = TeamLog.EventDetails.networkControlChangePolicyDetails(arg.swift) super.init(swift: swift) } @@ -18398,7 +24166,7 @@ public class DBXTeamLogEventDetailsPaperChangeDeploymentPolicyDetails: DBXTeamLo @objc public init(_ arg: DBXTeamLogPaperChangeDeploymentPolicyDetails) { - self.paperChangeDeploymentPolicyDetails = arg + paperChangeDeploymentPolicyDetails = arg let swift = TeamLog.EventDetails.paperChangeDeploymentPolicyDetails(arg.swift) super.init(swift: swift) } @@ -18412,7 +24180,7 @@ public class DBXTeamLogEventDetailsPaperChangeMemberLinkPolicyDetails: DBXTeamLo @objc public init(_ arg: DBXTeamLogPaperChangeMemberLinkPolicyDetails) { - self.paperChangeMemberLinkPolicyDetails = arg + paperChangeMemberLinkPolicyDetails = arg let swift = TeamLog.EventDetails.paperChangeMemberLinkPolicyDetails(arg.swift) super.init(swift: swift) } @@ -18426,7 +24194,7 @@ public class DBXTeamLogEventDetailsPaperChangeMemberPolicyDetails: DBXTeamLogEve @objc public init(_ arg: DBXTeamLogPaperChangeMemberPolicyDetails) { - self.paperChangeMemberPolicyDetails = arg + paperChangeMemberPolicyDetails = arg let swift = TeamLog.EventDetails.paperChangeMemberPolicyDetails(arg.swift) super.init(swift: swift) } @@ -18440,7 +24208,7 @@ public class DBXTeamLogEventDetailsPaperChangePolicyDetails: DBXTeamLogEventDeta @objc public init(_ arg: DBXTeamLogPaperChangePolicyDetails) { - self.paperChangePolicyDetails = arg + paperChangePolicyDetails = arg let swift = TeamLog.EventDetails.paperChangePolicyDetails(arg.swift) super.init(swift: swift) } @@ -18454,7 +24222,7 @@ public class DBXTeamLogEventDetailsPaperDefaultFolderPolicyChangedDetails: DBXTe @objc public init(_ arg: DBXTeamLogPaperDefaultFolderPolicyChangedDetails) { - self.paperDefaultFolderPolicyChangedDetails = arg + paperDefaultFolderPolicyChangedDetails = arg let swift = TeamLog.EventDetails.paperDefaultFolderPolicyChangedDetails(arg.swift) super.init(swift: swift) } @@ -18468,7 +24236,7 @@ public class DBXTeamLogEventDetailsPaperDesktopPolicyChangedDetails: DBXTeamLogE @objc public init(_ arg: DBXTeamLogPaperDesktopPolicyChangedDetails) { - self.paperDesktopPolicyChangedDetails = arg + paperDesktopPolicyChangedDetails = arg let swift = TeamLog.EventDetails.paperDesktopPolicyChangedDetails(arg.swift) super.init(swift: swift) } @@ -18482,7 +24250,7 @@ public class DBXTeamLogEventDetailsPaperEnabledUsersGroupAdditionDetails: DBXTea @objc public init(_ arg: DBXTeamLogPaperEnabledUsersGroupAdditionDetails) { - self.paperEnabledUsersGroupAdditionDetails = arg + paperEnabledUsersGroupAdditionDetails = arg let swift = TeamLog.EventDetails.paperEnabledUsersGroupAdditionDetails(arg.swift) super.init(swift: swift) } @@ -18496,12 +24264,26 @@ public class DBXTeamLogEventDetailsPaperEnabledUsersGroupRemovalDetails: DBXTeam @objc public init(_ arg: DBXTeamLogPaperEnabledUsersGroupRemovalDetails) { - self.paperEnabledUsersGroupRemovalDetails = arg + paperEnabledUsersGroupRemovalDetails = arg let swift = TeamLog.EventDetails.paperEnabledUsersGroupRemovalDetails(arg.swift) super.init(swift: swift) } } +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsPasskeyLoginPolicyChangedDetails: DBXTeamLogEventDetails { + @objc + public var passkeyLoginPolicyChangedDetails: DBXTeamLogPasskeyLoginPolicyChangedDetails + + @objc + public init(_ arg: DBXTeamLogPasskeyLoginPolicyChangedDetails) { + passkeyLoginPolicyChangedDetails = arg + let swift = TeamLog.EventDetails.passkeyLoginPolicyChangedDetails(arg.swift) + super.init(swift: swift) + } +} + /// An unspecified error. @objc public class DBXTeamLogEventDetailsPasswordStrengthRequirementsChangePolicyDetails: DBXTeamLogEventDetails { @@ -18510,7 +24292,7 @@ public class DBXTeamLogEventDetailsPasswordStrengthRequirementsChangePolicyDetai @objc public init(_ arg: DBXTeamLogPasswordStrengthRequirementsChangePolicyDetails) { - self.passwordStrengthRequirementsChangePolicyDetails = arg + passwordStrengthRequirementsChangePolicyDetails = arg let swift = TeamLog.EventDetails.passwordStrengthRequirementsChangePolicyDetails(arg.swift) super.init(swift: swift) } @@ -18524,12 +24306,54 @@ public class DBXTeamLogEventDetailsPermanentDeleteChangePolicyDetails: DBXTeamLo @objc public init(_ arg: DBXTeamLogPermanentDeleteChangePolicyDetails) { - self.permanentDeleteChangePolicyDetails = arg + permanentDeleteChangePolicyDetails = arg let swift = TeamLog.EventDetails.permanentDeleteChangePolicyDetails(arg.swift) super.init(swift: swift) } } +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsPreviewsAiPolicyChangedDetails: DBXTeamLogEventDetails { + @objc + public var previewsAiPolicyChangedDetails: DBXTeamLogPreviewsAiPolicyChangedDetails + + @objc + public init(_ arg: DBXTeamLogPreviewsAiPolicyChangedDetails) { + previewsAiPolicyChangedDetails = arg + let swift = TeamLog.EventDetails.previewsAiPolicyChangedDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsReplayAddingPeoplePolicyChangedDetails: DBXTeamLogEventDetails { + @objc + public var replayAddingPeoplePolicyChangedDetails: DBXTeamLogReplayAddingPeoplePolicyChangedDetails + + @objc + public init(_ arg: DBXTeamLogReplayAddingPeoplePolicyChangedDetails) { + replayAddingPeoplePolicyChangedDetails = arg + let swift = TeamLog.EventDetails.replayAddingPeoplePolicyChangedDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsReplaySharingPolicyChangedDetails: DBXTeamLogEventDetails { + @objc + public var replaySharingPolicyChangedDetails: DBXTeamLogReplaySharingPolicyChangedDetails + + @objc + public init(_ arg: DBXTeamLogReplaySharingPolicyChangedDetails) { + replaySharingPolicyChangedDetails = arg + let swift = TeamLog.EventDetails.replaySharingPolicyChangedDetails(arg.swift) + super.init(swift: swift) + } +} + /// An unspecified error. @objc public class DBXTeamLogEventDetailsResellerSupportChangePolicyDetails: DBXTeamLogEventDetails { @@ -18538,7 +24362,7 @@ public class DBXTeamLogEventDetailsResellerSupportChangePolicyDetails: DBXTeamLo @objc public init(_ arg: DBXTeamLogResellerSupportChangePolicyDetails) { - self.resellerSupportChangePolicyDetails = arg + resellerSupportChangePolicyDetails = arg let swift = TeamLog.EventDetails.resellerSupportChangePolicyDetails(arg.swift) super.init(swift: swift) } @@ -18552,12 +24376,40 @@ public class DBXTeamLogEventDetailsRewindPolicyChangedDetails: DBXTeamLogEventDe @objc public init(_ arg: DBXTeamLogRewindPolicyChangedDetails) { - self.rewindPolicyChangedDetails = arg + rewindPolicyChangedDetails = arg let swift = TeamLog.EventDetails.rewindPolicyChangedDetails(arg.swift) super.init(swift: swift) } } +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsSendAndTrackPolicyChangedDetails: DBXTeamLogEventDetails { + @objc + public var sendAndTrackPolicyChangedDetails: DBXTeamLogSendAndTrackPolicyChangedDetails + + @objc + public init(_ arg: DBXTeamLogSendAndTrackPolicyChangedDetails) { + sendAndTrackPolicyChangedDetails = arg + let swift = TeamLog.EventDetails.sendAndTrackPolicyChangedDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsSendExternalSharingPolicyChangedDetails: DBXTeamLogEventDetails { + @objc + public var sendExternalSharingPolicyChangedDetails: DBXTeamLogSendExternalSharingPolicyChangedDetails + + @objc + public init(_ arg: DBXTeamLogSendExternalSharingPolicyChangedDetails) { + sendExternalSharingPolicyChangedDetails = arg + let swift = TeamLog.EventDetails.sendExternalSharingPolicyChangedDetails(arg.swift) + super.init(swift: swift) + } +} + /// An unspecified error. @objc public class DBXTeamLogEventDetailsSendForSignaturePolicyChangedDetails: DBXTeamLogEventDetails { @@ -18566,12 +24418,26 @@ public class DBXTeamLogEventDetailsSendForSignaturePolicyChangedDetails: DBXTeam @objc public init(_ arg: DBXTeamLogSendForSignaturePolicyChangedDetails) { - self.sendForSignaturePolicyChangedDetails = arg + sendForSignaturePolicyChangedDetails = arg let swift = TeamLog.EventDetails.sendForSignaturePolicyChangedDetails(arg.swift) super.init(swift: swift) } } +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsSharedLinkDefaultPermissionsPolicyChangedDetails: DBXTeamLogEventDetails { + @objc + public var sharedLinkDefaultPermissionsPolicyChangedDetails: DBXTeamLogSharedLinkDefaultPermissionsPolicyChangedDetails + + @objc + public init(_ arg: DBXTeamLogSharedLinkDefaultPermissionsPolicyChangedDetails) { + sharedLinkDefaultPermissionsPolicyChangedDetails = arg + let swift = TeamLog.EventDetails.sharedLinkDefaultPermissionsPolicyChangedDetails(arg.swift) + super.init(swift: swift) + } +} + /// An unspecified error. @objc public class DBXTeamLogEventDetailsSharingChangeFolderJoinPolicyDetails: DBXTeamLogEventDetails { @@ -18580,7 +24446,7 @@ public class DBXTeamLogEventDetailsSharingChangeFolderJoinPolicyDetails: DBXTeam @objc public init(_ arg: DBXTeamLogSharingChangeFolderJoinPolicyDetails) { - self.sharingChangeFolderJoinPolicyDetails = arg + sharingChangeFolderJoinPolicyDetails = arg let swift = TeamLog.EventDetails.sharingChangeFolderJoinPolicyDetails(arg.swift) super.init(swift: swift) } @@ -18594,7 +24460,7 @@ public class DBXTeamLogEventDetailsSharingChangeLinkAllowChangeExpirationPolicyD @objc public init(_ arg: DBXTeamLogSharingChangeLinkAllowChangeExpirationPolicyDetails) { - self.sharingChangeLinkAllowChangeExpirationPolicyDetails = arg + sharingChangeLinkAllowChangeExpirationPolicyDetails = arg let swift = TeamLog.EventDetails.sharingChangeLinkAllowChangeExpirationPolicyDetails(arg.swift) super.init(swift: swift) } @@ -18608,7 +24474,7 @@ public class DBXTeamLogEventDetailsSharingChangeLinkDefaultExpirationPolicyDetai @objc public init(_ arg: DBXTeamLogSharingChangeLinkDefaultExpirationPolicyDetails) { - self.sharingChangeLinkDefaultExpirationPolicyDetails = arg + sharingChangeLinkDefaultExpirationPolicyDetails = arg let swift = TeamLog.EventDetails.sharingChangeLinkDefaultExpirationPolicyDetails(arg.swift) super.init(swift: swift) } @@ -18622,7 +24488,7 @@ public class DBXTeamLogEventDetailsSharingChangeLinkEnforcePasswordPolicyDetails @objc public init(_ arg: DBXTeamLogSharingChangeLinkEnforcePasswordPolicyDetails) { - self.sharingChangeLinkEnforcePasswordPolicyDetails = arg + sharingChangeLinkEnforcePasswordPolicyDetails = arg let swift = TeamLog.EventDetails.sharingChangeLinkEnforcePasswordPolicyDetails(arg.swift) super.init(swift: swift) } @@ -18636,7 +24502,7 @@ public class DBXTeamLogEventDetailsSharingChangeLinkPolicyDetails: DBXTeamLogEve @objc public init(_ arg: DBXTeamLogSharingChangeLinkPolicyDetails) { - self.sharingChangeLinkPolicyDetails = arg + sharingChangeLinkPolicyDetails = arg let swift = TeamLog.EventDetails.sharingChangeLinkPolicyDetails(arg.swift) super.init(swift: swift) } @@ -18650,7 +24516,7 @@ public class DBXTeamLogEventDetailsSharingChangeMemberPolicyDetails: DBXTeamLogE @objc public init(_ arg: DBXTeamLogSharingChangeMemberPolicyDetails) { - self.sharingChangeMemberPolicyDetails = arg + sharingChangeMemberPolicyDetails = arg let swift = TeamLog.EventDetails.sharingChangeMemberPolicyDetails(arg.swift) super.init(swift: swift) } @@ -18664,7 +24530,7 @@ public class DBXTeamLogEventDetailsShowcaseChangeDownloadPolicyDetails: DBXTeamL @objc public init(_ arg: DBXTeamLogShowcaseChangeDownloadPolicyDetails) { - self.showcaseChangeDownloadPolicyDetails = arg + showcaseChangeDownloadPolicyDetails = arg let swift = TeamLog.EventDetails.showcaseChangeDownloadPolicyDetails(arg.swift) super.init(swift: swift) } @@ -18678,7 +24544,7 @@ public class DBXTeamLogEventDetailsShowcaseChangeEnabledPolicyDetails: DBXTeamLo @objc public init(_ arg: DBXTeamLogShowcaseChangeEnabledPolicyDetails) { - self.showcaseChangeEnabledPolicyDetails = arg + showcaseChangeEnabledPolicyDetails = arg let swift = TeamLog.EventDetails.showcaseChangeEnabledPolicyDetails(arg.swift) super.init(swift: swift) } @@ -18692,12 +24558,40 @@ public class DBXTeamLogEventDetailsShowcaseChangeExternalSharingPolicyDetails: D @objc public init(_ arg: DBXTeamLogShowcaseChangeExternalSharingPolicyDetails) { - self.showcaseChangeExternalSharingPolicyDetails = arg + showcaseChangeExternalSharingPolicyDetails = arg let swift = TeamLog.EventDetails.showcaseChangeExternalSharingPolicyDetails(arg.swift) super.init(swift: swift) } } +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsSignExternalSharingPolicyChangedDetails: DBXTeamLogEventDetails { + @objc + public var signExternalSharingPolicyChangedDetails: DBXTeamLogSignExternalSharingPolicyChangedDetails + + @objc + public init(_ arg: DBXTeamLogSignExternalSharingPolicyChangedDetails) { + signExternalSharingPolicyChangedDetails = arg + let swift = TeamLog.EventDetails.signExternalSharingPolicyChangedDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsSignTemplateCreationPermissionChangedDetails: DBXTeamLogEventDetails { + @objc + public var signTemplateCreationPermissionChangedDetails: DBXTeamLogSignTemplateCreationPermissionChangedDetails + + @objc + public init(_ arg: DBXTeamLogSignTemplateCreationPermissionChangedDetails) { + signTemplateCreationPermissionChangedDetails = arg + let swift = TeamLog.EventDetails.signTemplateCreationPermissionChangedDetails(arg.swift) + super.init(swift: swift) + } +} + /// An unspecified error. @objc public class DBXTeamLogEventDetailsSmarterSmartSyncPolicyChangedDetails: DBXTeamLogEventDetails { @@ -18706,7 +24600,7 @@ public class DBXTeamLogEventDetailsSmarterSmartSyncPolicyChangedDetails: DBXTeam @objc public init(_ arg: DBXTeamLogSmarterSmartSyncPolicyChangedDetails) { - self.smarterSmartSyncPolicyChangedDetails = arg + smarterSmartSyncPolicyChangedDetails = arg let swift = TeamLog.EventDetails.smarterSmartSyncPolicyChangedDetails(arg.swift) super.init(swift: swift) } @@ -18720,7 +24614,7 @@ public class DBXTeamLogEventDetailsSmartSyncChangePolicyDetails: DBXTeamLogEvent @objc public init(_ arg: DBXTeamLogSmartSyncChangePolicyDetails) { - self.smartSyncChangePolicyDetails = arg + smartSyncChangePolicyDetails = arg let swift = TeamLog.EventDetails.smartSyncChangePolicyDetails(arg.swift) super.init(swift: swift) } @@ -18734,7 +24628,7 @@ public class DBXTeamLogEventDetailsSmartSyncNotOptOutDetails: DBXTeamLogEventDet @objc public init(_ arg: DBXTeamLogSmartSyncNotOptOutDetails) { - self.smartSyncNotOptOutDetails = arg + smartSyncNotOptOutDetails = arg let swift = TeamLog.EventDetails.smartSyncNotOptOutDetails(arg.swift) super.init(swift: swift) } @@ -18748,7 +24642,7 @@ public class DBXTeamLogEventDetailsSmartSyncOptOutDetails: DBXTeamLogEventDetail @objc public init(_ arg: DBXTeamLogSmartSyncOptOutDetails) { - self.smartSyncOptOutDetails = arg + smartSyncOptOutDetails = arg let swift = TeamLog.EventDetails.smartSyncOptOutDetails(arg.swift) super.init(swift: swift) } @@ -18762,12 +24656,26 @@ public class DBXTeamLogEventDetailsSsoChangePolicyDetails: DBXTeamLogEventDetail @objc public init(_ arg: DBXTeamLogSsoChangePolicyDetails) { - self.ssoChangePolicyDetails = arg + ssoChangePolicyDetails = arg let swift = TeamLog.EventDetails.ssoChangePolicyDetails(arg.swift) super.init(swift: swift) } } +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsStackCrossTeamAccessPolicyChangedDetails: DBXTeamLogEventDetails { + @objc + public var stackCrossTeamAccessPolicyChangedDetails: DBXTeamLogStackCrossTeamAccessPolicyChangedDetails + + @objc + public init(_ arg: DBXTeamLogStackCrossTeamAccessPolicyChangedDetails) { + stackCrossTeamAccessPolicyChangedDetails = arg + let swift = TeamLog.EventDetails.stackCrossTeamAccessPolicyChangedDetails(arg.swift) + super.init(swift: swift) + } +} + /// An unspecified error. @objc public class DBXTeamLogEventDetailsTeamBrandingPolicyChangedDetails: DBXTeamLogEventDetails { @@ -18776,7 +24684,7 @@ public class DBXTeamLogEventDetailsTeamBrandingPolicyChangedDetails: DBXTeamLogE @objc public init(_ arg: DBXTeamLogTeamBrandingPolicyChangedDetails) { - self.teamBrandingPolicyChangedDetails = arg + teamBrandingPolicyChangedDetails = arg let swift = TeamLog.EventDetails.teamBrandingPolicyChangedDetails(arg.swift) super.init(swift: swift) } @@ -18790,12 +24698,26 @@ public class DBXTeamLogEventDetailsTeamExtensionsPolicyChangedDetails: DBXTeamLo @objc public init(_ arg: DBXTeamLogTeamExtensionsPolicyChangedDetails) { - self.teamExtensionsPolicyChangedDetails = arg + teamExtensionsPolicyChangedDetails = arg let swift = TeamLog.EventDetails.teamExtensionsPolicyChangedDetails(arg.swift) super.init(swift: swift) } } +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsTeamMemberStorageRequestPolicyChangedDetails: DBXTeamLogEventDetails { + @objc + public var teamMemberStorageRequestPolicyChangedDetails: DBXTeamLogTeamMemberStorageRequestPolicyChangedDetails + + @objc + public init(_ arg: DBXTeamLogTeamMemberStorageRequestPolicyChangedDetails) { + teamMemberStorageRequestPolicyChangedDetails = arg + let swift = TeamLog.EventDetails.teamMemberStorageRequestPolicyChangedDetails(arg.swift) + super.init(swift: swift) + } +} + /// An unspecified error. @objc public class DBXTeamLogEventDetailsTeamSelectiveSyncPolicyChangedDetails: DBXTeamLogEventDetails { @@ -18804,7 +24726,7 @@ public class DBXTeamLogEventDetailsTeamSelectiveSyncPolicyChangedDetails: DBXTea @objc public init(_ arg: DBXTeamLogTeamSelectiveSyncPolicyChangedDetails) { - self.teamSelectiveSyncPolicyChangedDetails = arg + teamSelectiveSyncPolicyChangedDetails = arg let swift = TeamLog.EventDetails.teamSelectiveSyncPolicyChangedDetails(arg.swift) super.init(swift: swift) } @@ -18818,7 +24740,7 @@ public class DBXTeamLogEventDetailsTeamSharingWhitelistSubjectsChangedDetails: D @objc public init(_ arg: DBXTeamLogTeamSharingWhitelistSubjectsChangedDetails) { - self.teamSharingWhitelistSubjectsChangedDetails = arg + teamSharingWhitelistSubjectsChangedDetails = arg let swift = TeamLog.EventDetails.teamSharingWhitelistSubjectsChangedDetails(arg.swift) super.init(swift: swift) } @@ -18832,7 +24754,7 @@ public class DBXTeamLogEventDetailsTfaAddExceptionDetails: DBXTeamLogEventDetail @objc public init(_ arg: DBXTeamLogTfaAddExceptionDetails) { - self.tfaAddExceptionDetails = arg + tfaAddExceptionDetails = arg let swift = TeamLog.EventDetails.tfaAddExceptionDetails(arg.swift) super.init(swift: swift) } @@ -18846,7 +24768,7 @@ public class DBXTeamLogEventDetailsTfaChangePolicyDetails: DBXTeamLogEventDetail @objc public init(_ arg: DBXTeamLogTfaChangePolicyDetails) { - self.tfaChangePolicyDetails = arg + tfaChangePolicyDetails = arg let swift = TeamLog.EventDetails.tfaChangePolicyDetails(arg.swift) super.init(swift: swift) } @@ -18860,12 +24782,26 @@ public class DBXTeamLogEventDetailsTfaRemoveExceptionDetails: DBXTeamLogEventDet @objc public init(_ arg: DBXTeamLogTfaRemoveExceptionDetails) { - self.tfaRemoveExceptionDetails = arg + tfaRemoveExceptionDetails = arg let swift = TeamLog.EventDetails.tfaRemoveExceptionDetails(arg.swift) super.init(swift: swift) } } +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsTopLevelContentPolicyChangedDetails: DBXTeamLogEventDetails { + @objc + public var topLevelContentPolicyChangedDetails: DBXTeamLogTopLevelContentPolicyChangedDetails + + @objc + public init(_ arg: DBXTeamLogTopLevelContentPolicyChangedDetails) { + topLevelContentPolicyChangedDetails = arg + let swift = TeamLog.EventDetails.topLevelContentPolicyChangedDetails(arg.swift) + super.init(swift: swift) + } +} + /// An unspecified error. @objc public class DBXTeamLogEventDetailsTwoAccountChangePolicyDetails: DBXTeamLogEventDetails { @@ -18874,7 +24810,7 @@ public class DBXTeamLogEventDetailsTwoAccountChangePolicyDetails: DBXTeamLogEven @objc public init(_ arg: DBXTeamLogTwoAccountChangePolicyDetails) { - self.twoAccountChangePolicyDetails = arg + twoAccountChangePolicyDetails = arg let swift = TeamLog.EventDetails.twoAccountChangePolicyDetails(arg.swift) super.init(swift: swift) } @@ -18888,7 +24824,7 @@ public class DBXTeamLogEventDetailsViewerInfoPolicyChangedDetails: DBXTeamLogEve @objc public init(_ arg: DBXTeamLogViewerInfoPolicyChangedDetails) { - self.viewerInfoPolicyChangedDetails = arg + viewerInfoPolicyChangedDetails = arg let swift = TeamLog.EventDetails.viewerInfoPolicyChangedDetails(arg.swift) super.init(swift: swift) } @@ -18902,7 +24838,7 @@ public class DBXTeamLogEventDetailsWatermarkingPolicyChangedDetails: DBXTeamLogE @objc public init(_ arg: DBXTeamLogWatermarkingPolicyChangedDetails) { - self.watermarkingPolicyChangedDetails = arg + watermarkingPolicyChangedDetails = arg let swift = TeamLog.EventDetails.watermarkingPolicyChangedDetails(arg.swift) super.init(swift: swift) } @@ -18916,7 +24852,7 @@ public class DBXTeamLogEventDetailsWebSessionsChangeActiveSessionLimitDetails: D @objc public init(_ arg: DBXTeamLogWebSessionsChangeActiveSessionLimitDetails) { - self.webSessionsChangeActiveSessionLimitDetails = arg + webSessionsChangeActiveSessionLimitDetails = arg let swift = TeamLog.EventDetails.webSessionsChangeActiveSessionLimitDetails(arg.swift) super.init(swift: swift) } @@ -18930,7 +24866,7 @@ public class DBXTeamLogEventDetailsWebSessionsChangeFixedLengthPolicyDetails: DB @objc public init(_ arg: DBXTeamLogWebSessionsChangeFixedLengthPolicyDetails) { - self.webSessionsChangeFixedLengthPolicyDetails = arg + webSessionsChangeFixedLengthPolicyDetails = arg let swift = TeamLog.EventDetails.webSessionsChangeFixedLengthPolicyDetails(arg.swift) super.init(swift: swift) } @@ -18944,7 +24880,7 @@ public class DBXTeamLogEventDetailsWebSessionsChangeIdleLengthPolicyDetails: DBX @objc public init(_ arg: DBXTeamLogWebSessionsChangeIdleLengthPolicyDetails) { - self.webSessionsChangeIdleLengthPolicyDetails = arg + webSessionsChangeIdleLengthPolicyDetails = arg let swift = TeamLog.EventDetails.webSessionsChangeIdleLengthPolicyDetails(arg.swift) super.init(swift: swift) } @@ -18958,7 +24894,7 @@ public class DBXTeamLogEventDetailsDataResidencyMigrationRequestSuccessfulDetail @objc public init(_ arg: DBXTeamLogDataResidencyMigrationRequestSuccessfulDetails) { - self.dataResidencyMigrationRequestSuccessfulDetails = arg + dataResidencyMigrationRequestSuccessfulDetails = arg let swift = TeamLog.EventDetails.dataResidencyMigrationRequestSuccessfulDetails(arg.swift) super.init(swift: swift) } @@ -18972,7 +24908,7 @@ public class DBXTeamLogEventDetailsDataResidencyMigrationRequestUnsuccessfulDeta @objc public init(_ arg: DBXTeamLogDataResidencyMigrationRequestUnsuccessfulDetails) { - self.dataResidencyMigrationRequestUnsuccessfulDetails = arg + dataResidencyMigrationRequestUnsuccessfulDetails = arg let swift = TeamLog.EventDetails.dataResidencyMigrationRequestUnsuccessfulDetails(arg.swift) super.init(swift: swift) } @@ -18986,7 +24922,7 @@ public class DBXTeamLogEventDetailsTeamMergeFromDetails: DBXTeamLogEventDetails @objc public init(_ arg: DBXTeamLogTeamMergeFromDetails) { - self.teamMergeFromDetails = arg + teamMergeFromDetails = arg let swift = TeamLog.EventDetails.teamMergeFromDetails(arg.swift) super.init(swift: swift) } @@ -19000,7 +24936,7 @@ public class DBXTeamLogEventDetailsTeamMergeToDetails: DBXTeamLogEventDetails { @objc public init(_ arg: DBXTeamLogTeamMergeToDetails) { - self.teamMergeToDetails = arg + teamMergeToDetails = arg let swift = TeamLog.EventDetails.teamMergeToDetails(arg.swift) super.init(swift: swift) } @@ -19014,7 +24950,7 @@ public class DBXTeamLogEventDetailsTeamProfileAddBackgroundDetails: DBXTeamLogEv @objc public init(_ arg: DBXTeamLogTeamProfileAddBackgroundDetails) { - self.teamProfileAddBackgroundDetails = arg + teamProfileAddBackgroundDetails = arg let swift = TeamLog.EventDetails.teamProfileAddBackgroundDetails(arg.swift) super.init(swift: swift) } @@ -19028,7 +24964,7 @@ public class DBXTeamLogEventDetailsTeamProfileAddLogoDetails: DBXTeamLogEventDet @objc public init(_ arg: DBXTeamLogTeamProfileAddLogoDetails) { - self.teamProfileAddLogoDetails = arg + teamProfileAddLogoDetails = arg let swift = TeamLog.EventDetails.teamProfileAddLogoDetails(arg.swift) super.init(swift: swift) } @@ -19042,7 +24978,7 @@ public class DBXTeamLogEventDetailsTeamProfileChangeBackgroundDetails: DBXTeamLo @objc public init(_ arg: DBXTeamLogTeamProfileChangeBackgroundDetails) { - self.teamProfileChangeBackgroundDetails = arg + teamProfileChangeBackgroundDetails = arg let swift = TeamLog.EventDetails.teamProfileChangeBackgroundDetails(arg.swift) super.init(swift: swift) } @@ -19056,7 +24992,7 @@ public class DBXTeamLogEventDetailsTeamProfileChangeDefaultLanguageDetails: DBXT @objc public init(_ arg: DBXTeamLogTeamProfileChangeDefaultLanguageDetails) { - self.teamProfileChangeDefaultLanguageDetails = arg + teamProfileChangeDefaultLanguageDetails = arg let swift = TeamLog.EventDetails.teamProfileChangeDefaultLanguageDetails(arg.swift) super.init(swift: swift) } @@ -19070,7 +25006,7 @@ public class DBXTeamLogEventDetailsTeamProfileChangeLogoDetails: DBXTeamLogEvent @objc public init(_ arg: DBXTeamLogTeamProfileChangeLogoDetails) { - self.teamProfileChangeLogoDetails = arg + teamProfileChangeLogoDetails = arg let swift = TeamLog.EventDetails.teamProfileChangeLogoDetails(arg.swift) super.init(swift: swift) } @@ -19084,7 +25020,7 @@ public class DBXTeamLogEventDetailsTeamProfileChangeNameDetails: DBXTeamLogEvent @objc public init(_ arg: DBXTeamLogTeamProfileChangeNameDetails) { - self.teamProfileChangeNameDetails = arg + teamProfileChangeNameDetails = arg let swift = TeamLog.EventDetails.teamProfileChangeNameDetails(arg.swift) super.init(swift: swift) } @@ -19098,7 +25034,7 @@ public class DBXTeamLogEventDetailsTeamProfileRemoveBackgroundDetails: DBXTeamLo @objc public init(_ arg: DBXTeamLogTeamProfileRemoveBackgroundDetails) { - self.teamProfileRemoveBackgroundDetails = arg + teamProfileRemoveBackgroundDetails = arg let swift = TeamLog.EventDetails.teamProfileRemoveBackgroundDetails(arg.swift) super.init(swift: swift) } @@ -19112,12 +25048,40 @@ public class DBXTeamLogEventDetailsTeamProfileRemoveLogoDetails: DBXTeamLogEvent @objc public init(_ arg: DBXTeamLogTeamProfileRemoveLogoDetails) { - self.teamProfileRemoveLogoDetails = arg + teamProfileRemoveLogoDetails = arg let swift = TeamLog.EventDetails.teamProfileRemoveLogoDetails(arg.swift) super.init(swift: swift) } } +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsPasskeyAddDetails: DBXTeamLogEventDetails { + @objc + public var passkeyAddDetails: DBXTeamLogPasskeyAddDetails + + @objc + public init(_ arg: DBXTeamLogPasskeyAddDetails) { + passkeyAddDetails = arg + let swift = TeamLog.EventDetails.passkeyAddDetails(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogEventDetailsPasskeyRemoveDetails: DBXTeamLogEventDetails { + @objc + public var passkeyRemoveDetails: DBXTeamLogPasskeyRemoveDetails + + @objc + public init(_ arg: DBXTeamLogPasskeyRemoveDetails) { + passkeyRemoveDetails = arg + let swift = TeamLog.EventDetails.passkeyRemoveDetails(arg.swift) + super.init(swift: swift) + } +} + /// An unspecified error. @objc public class DBXTeamLogEventDetailsTfaAddBackupPhoneDetails: DBXTeamLogEventDetails { @@ -19126,7 +25090,7 @@ public class DBXTeamLogEventDetailsTfaAddBackupPhoneDetails: DBXTeamLogEventDeta @objc public init(_ arg: DBXTeamLogTfaAddBackupPhoneDetails) { - self.tfaAddBackupPhoneDetails = arg + tfaAddBackupPhoneDetails = arg let swift = TeamLog.EventDetails.tfaAddBackupPhoneDetails(arg.swift) super.init(swift: swift) } @@ -19140,7 +25104,7 @@ public class DBXTeamLogEventDetailsTfaAddSecurityKeyDetails: DBXTeamLogEventDeta @objc public init(_ arg: DBXTeamLogTfaAddSecurityKeyDetails) { - self.tfaAddSecurityKeyDetails = arg + tfaAddSecurityKeyDetails = arg let swift = TeamLog.EventDetails.tfaAddSecurityKeyDetails(arg.swift) super.init(swift: swift) } @@ -19154,7 +25118,7 @@ public class DBXTeamLogEventDetailsTfaChangeBackupPhoneDetails: DBXTeamLogEventD @objc public init(_ arg: DBXTeamLogTfaChangeBackupPhoneDetails) { - self.tfaChangeBackupPhoneDetails = arg + tfaChangeBackupPhoneDetails = arg let swift = TeamLog.EventDetails.tfaChangeBackupPhoneDetails(arg.swift) super.init(swift: swift) } @@ -19168,7 +25132,7 @@ public class DBXTeamLogEventDetailsTfaChangeStatusDetails: DBXTeamLogEventDetail @objc public init(_ arg: DBXTeamLogTfaChangeStatusDetails) { - self.tfaChangeStatusDetails = arg + tfaChangeStatusDetails = arg let swift = TeamLog.EventDetails.tfaChangeStatusDetails(arg.swift) super.init(swift: swift) } @@ -19182,7 +25146,7 @@ public class DBXTeamLogEventDetailsTfaRemoveBackupPhoneDetails: DBXTeamLogEventD @objc public init(_ arg: DBXTeamLogTfaRemoveBackupPhoneDetails) { - self.tfaRemoveBackupPhoneDetails = arg + tfaRemoveBackupPhoneDetails = arg let swift = TeamLog.EventDetails.tfaRemoveBackupPhoneDetails(arg.swift) super.init(swift: swift) } @@ -19196,7 +25160,7 @@ public class DBXTeamLogEventDetailsTfaRemoveSecurityKeyDetails: DBXTeamLogEventD @objc public init(_ arg: DBXTeamLogTfaRemoveSecurityKeyDetails) { - self.tfaRemoveSecurityKeyDetails = arg + tfaRemoveSecurityKeyDetails = arg let swift = TeamLog.EventDetails.tfaRemoveSecurityKeyDetails(arg.swift) super.init(swift: swift) } @@ -19210,7 +25174,7 @@ public class DBXTeamLogEventDetailsTfaResetDetails: DBXTeamLogEventDetails { @objc public init(_ arg: DBXTeamLogTfaResetDetails) { - self.tfaResetDetails = arg + tfaResetDetails = arg let swift = TeamLog.EventDetails.tfaResetDetails(arg.swift) super.init(swift: swift) } @@ -19224,7 +25188,7 @@ public class DBXTeamLogEventDetailsChangedEnterpriseAdminRoleDetails: DBXTeamLog @objc public init(_ arg: DBXTeamLogChangedEnterpriseAdminRoleDetails) { - self.changedEnterpriseAdminRoleDetails = arg + changedEnterpriseAdminRoleDetails = arg let swift = TeamLog.EventDetails.changedEnterpriseAdminRoleDetails(arg.swift) super.init(swift: swift) } @@ -19238,7 +25202,7 @@ public class DBXTeamLogEventDetailsChangedEnterpriseConnectedTeamStatusDetails: @objc public init(_ arg: DBXTeamLogChangedEnterpriseConnectedTeamStatusDetails) { - self.changedEnterpriseConnectedTeamStatusDetails = arg + changedEnterpriseConnectedTeamStatusDetails = arg let swift = TeamLog.EventDetails.changedEnterpriseConnectedTeamStatusDetails(arg.swift) super.init(swift: swift) } @@ -19252,7 +25216,7 @@ public class DBXTeamLogEventDetailsEndedEnterpriseAdminSessionDetails: DBXTeamLo @objc public init(_ arg: DBXTeamLogEndedEnterpriseAdminSessionDetails) { - self.endedEnterpriseAdminSessionDetails = arg + endedEnterpriseAdminSessionDetails = arg let swift = TeamLog.EventDetails.endedEnterpriseAdminSessionDetails(arg.swift) super.init(swift: swift) } @@ -19266,7 +25230,7 @@ public class DBXTeamLogEventDetailsEndedEnterpriseAdminSessionDeprecatedDetails: @objc public init(_ arg: DBXTeamLogEndedEnterpriseAdminSessionDeprecatedDetails) { - self.endedEnterpriseAdminSessionDeprecatedDetails = arg + endedEnterpriseAdminSessionDeprecatedDetails = arg let swift = TeamLog.EventDetails.endedEnterpriseAdminSessionDeprecatedDetails(arg.swift) super.init(swift: swift) } @@ -19280,7 +25244,7 @@ public class DBXTeamLogEventDetailsEnterpriseSettingsLockingDetails: DBXTeamLogE @objc public init(_ arg: DBXTeamLogEnterpriseSettingsLockingDetails) { - self.enterpriseSettingsLockingDetails = arg + enterpriseSettingsLockingDetails = arg let swift = TeamLog.EventDetails.enterpriseSettingsLockingDetails(arg.swift) super.init(swift: swift) } @@ -19294,7 +25258,7 @@ public class DBXTeamLogEventDetailsGuestAdminChangeStatusDetails: DBXTeamLogEven @objc public init(_ arg: DBXTeamLogGuestAdminChangeStatusDetails) { - self.guestAdminChangeStatusDetails = arg + guestAdminChangeStatusDetails = arg let swift = TeamLog.EventDetails.guestAdminChangeStatusDetails(arg.swift) super.init(swift: swift) } @@ -19308,7 +25272,7 @@ public class DBXTeamLogEventDetailsStartedEnterpriseAdminSessionDetails: DBXTeam @objc public init(_ arg: DBXTeamLogStartedEnterpriseAdminSessionDetails) { - self.startedEnterpriseAdminSessionDetails = arg + startedEnterpriseAdminSessionDetails = arg let swift = TeamLog.EventDetails.startedEnterpriseAdminSessionDetails(arg.swift) super.init(swift: swift) } @@ -19322,7 +25286,7 @@ public class DBXTeamLogEventDetailsTeamMergeRequestAcceptedDetails: DBXTeamLogEv @objc public init(_ arg: DBXTeamLogTeamMergeRequestAcceptedDetails) { - self.teamMergeRequestAcceptedDetails = arg + teamMergeRequestAcceptedDetails = arg let swift = TeamLog.EventDetails.teamMergeRequestAcceptedDetails(arg.swift) super.init(swift: swift) } @@ -19336,7 +25300,7 @@ public class DBXTeamLogEventDetailsTeamMergeRequestAcceptedShownToPrimaryTeamDet @objc public init(_ arg: DBXTeamLogTeamMergeRequestAcceptedShownToPrimaryTeamDetails) { - self.teamMergeRequestAcceptedShownToPrimaryTeamDetails = arg + teamMergeRequestAcceptedShownToPrimaryTeamDetails = arg let swift = TeamLog.EventDetails.teamMergeRequestAcceptedShownToPrimaryTeamDetails(arg.swift) super.init(swift: swift) } @@ -19350,7 +25314,7 @@ public class DBXTeamLogEventDetailsTeamMergeRequestAcceptedShownToSecondaryTeamD @objc public init(_ arg: DBXTeamLogTeamMergeRequestAcceptedShownToSecondaryTeamDetails) { - self.teamMergeRequestAcceptedShownToSecondaryTeamDetails = arg + teamMergeRequestAcceptedShownToSecondaryTeamDetails = arg let swift = TeamLog.EventDetails.teamMergeRequestAcceptedShownToSecondaryTeamDetails(arg.swift) super.init(swift: swift) } @@ -19364,7 +25328,7 @@ public class DBXTeamLogEventDetailsTeamMergeRequestAutoCanceledDetails: DBXTeamL @objc public init(_ arg: DBXTeamLogTeamMergeRequestAutoCanceledDetails) { - self.teamMergeRequestAutoCanceledDetails = arg + teamMergeRequestAutoCanceledDetails = arg let swift = TeamLog.EventDetails.teamMergeRequestAutoCanceledDetails(arg.swift) super.init(swift: swift) } @@ -19378,7 +25342,7 @@ public class DBXTeamLogEventDetailsTeamMergeRequestCanceledDetails: DBXTeamLogEv @objc public init(_ arg: DBXTeamLogTeamMergeRequestCanceledDetails) { - self.teamMergeRequestCanceledDetails = arg + teamMergeRequestCanceledDetails = arg let swift = TeamLog.EventDetails.teamMergeRequestCanceledDetails(arg.swift) super.init(swift: swift) } @@ -19392,7 +25356,7 @@ public class DBXTeamLogEventDetailsTeamMergeRequestCanceledShownToPrimaryTeamDet @objc public init(_ arg: DBXTeamLogTeamMergeRequestCanceledShownToPrimaryTeamDetails) { - self.teamMergeRequestCanceledShownToPrimaryTeamDetails = arg + teamMergeRequestCanceledShownToPrimaryTeamDetails = arg let swift = TeamLog.EventDetails.teamMergeRequestCanceledShownToPrimaryTeamDetails(arg.swift) super.init(swift: swift) } @@ -19406,7 +25370,7 @@ public class DBXTeamLogEventDetailsTeamMergeRequestCanceledShownToSecondaryTeamD @objc public init(_ arg: DBXTeamLogTeamMergeRequestCanceledShownToSecondaryTeamDetails) { - self.teamMergeRequestCanceledShownToSecondaryTeamDetails = arg + teamMergeRequestCanceledShownToSecondaryTeamDetails = arg let swift = TeamLog.EventDetails.teamMergeRequestCanceledShownToSecondaryTeamDetails(arg.swift) super.init(swift: swift) } @@ -19420,7 +25384,7 @@ public class DBXTeamLogEventDetailsTeamMergeRequestExpiredDetails: DBXTeamLogEve @objc public init(_ arg: DBXTeamLogTeamMergeRequestExpiredDetails) { - self.teamMergeRequestExpiredDetails = arg + teamMergeRequestExpiredDetails = arg let swift = TeamLog.EventDetails.teamMergeRequestExpiredDetails(arg.swift) super.init(swift: swift) } @@ -19434,7 +25398,7 @@ public class DBXTeamLogEventDetailsTeamMergeRequestExpiredShownToPrimaryTeamDeta @objc public init(_ arg: DBXTeamLogTeamMergeRequestExpiredShownToPrimaryTeamDetails) { - self.teamMergeRequestExpiredShownToPrimaryTeamDetails = arg + teamMergeRequestExpiredShownToPrimaryTeamDetails = arg let swift = TeamLog.EventDetails.teamMergeRequestExpiredShownToPrimaryTeamDetails(arg.swift) super.init(swift: swift) } @@ -19448,7 +25412,7 @@ public class DBXTeamLogEventDetailsTeamMergeRequestExpiredShownToSecondaryTeamDe @objc public init(_ arg: DBXTeamLogTeamMergeRequestExpiredShownToSecondaryTeamDetails) { - self.teamMergeRequestExpiredShownToSecondaryTeamDetails = arg + teamMergeRequestExpiredShownToSecondaryTeamDetails = arg let swift = TeamLog.EventDetails.teamMergeRequestExpiredShownToSecondaryTeamDetails(arg.swift) super.init(swift: swift) } @@ -19462,7 +25426,7 @@ public class DBXTeamLogEventDetailsTeamMergeRequestRejectedShownToPrimaryTeamDet @objc public init(_ arg: DBXTeamLogTeamMergeRequestRejectedShownToPrimaryTeamDetails) { - self.teamMergeRequestRejectedShownToPrimaryTeamDetails = arg + teamMergeRequestRejectedShownToPrimaryTeamDetails = arg let swift = TeamLog.EventDetails.teamMergeRequestRejectedShownToPrimaryTeamDetails(arg.swift) super.init(swift: swift) } @@ -19476,7 +25440,7 @@ public class DBXTeamLogEventDetailsTeamMergeRequestRejectedShownToSecondaryTeamD @objc public init(_ arg: DBXTeamLogTeamMergeRequestRejectedShownToSecondaryTeamDetails) { - self.teamMergeRequestRejectedShownToSecondaryTeamDetails = arg + teamMergeRequestRejectedShownToSecondaryTeamDetails = arg let swift = TeamLog.EventDetails.teamMergeRequestRejectedShownToSecondaryTeamDetails(arg.swift) super.init(swift: swift) } @@ -19490,7 +25454,7 @@ public class DBXTeamLogEventDetailsTeamMergeRequestReminderDetails: DBXTeamLogEv @objc public init(_ arg: DBXTeamLogTeamMergeRequestReminderDetails) { - self.teamMergeRequestReminderDetails = arg + teamMergeRequestReminderDetails = arg let swift = TeamLog.EventDetails.teamMergeRequestReminderDetails(arg.swift) super.init(swift: swift) } @@ -19504,7 +25468,7 @@ public class DBXTeamLogEventDetailsTeamMergeRequestReminderShownToPrimaryTeamDet @objc public init(_ arg: DBXTeamLogTeamMergeRequestReminderShownToPrimaryTeamDetails) { - self.teamMergeRequestReminderShownToPrimaryTeamDetails = arg + teamMergeRequestReminderShownToPrimaryTeamDetails = arg let swift = TeamLog.EventDetails.teamMergeRequestReminderShownToPrimaryTeamDetails(arg.swift) super.init(swift: swift) } @@ -19518,7 +25482,7 @@ public class DBXTeamLogEventDetailsTeamMergeRequestReminderShownToSecondaryTeamD @objc public init(_ arg: DBXTeamLogTeamMergeRequestReminderShownToSecondaryTeamDetails) { - self.teamMergeRequestReminderShownToSecondaryTeamDetails = arg + teamMergeRequestReminderShownToSecondaryTeamDetails = arg let swift = TeamLog.EventDetails.teamMergeRequestReminderShownToSecondaryTeamDetails(arg.swift) super.init(swift: swift) } @@ -19532,7 +25496,7 @@ public class DBXTeamLogEventDetailsTeamMergeRequestRevokedDetails: DBXTeamLogEve @objc public init(_ arg: DBXTeamLogTeamMergeRequestRevokedDetails) { - self.teamMergeRequestRevokedDetails = arg + teamMergeRequestRevokedDetails = arg let swift = TeamLog.EventDetails.teamMergeRequestRevokedDetails(arg.swift) super.init(swift: swift) } @@ -19546,7 +25510,7 @@ public class DBXTeamLogEventDetailsTeamMergeRequestSentShownToPrimaryTeamDetails @objc public init(_ arg: DBXTeamLogTeamMergeRequestSentShownToPrimaryTeamDetails) { - self.teamMergeRequestSentShownToPrimaryTeamDetails = arg + teamMergeRequestSentShownToPrimaryTeamDetails = arg let swift = TeamLog.EventDetails.teamMergeRequestSentShownToPrimaryTeamDetails(arg.swift) super.init(swift: swift) } @@ -19560,7 +25524,7 @@ public class DBXTeamLogEventDetailsTeamMergeRequestSentShownToSecondaryTeamDetai @objc public init(_ arg: DBXTeamLogTeamMergeRequestSentShownToSecondaryTeamDetails) { - self.teamMergeRequestSentShownToSecondaryTeamDetails = arg + teamMergeRequestSentShownToSecondaryTeamDetails = arg let swift = TeamLog.EventDetails.teamMergeRequestSentShownToSecondaryTeamDetails(arg.swift) super.init(swift: swift) } @@ -19574,7 +25538,7 @@ public class DBXTeamLogEventDetailsMissingDetails: DBXTeamLogEventDetails { @objc public init(_ arg: DBXTeamLogMissingDetails) { - self.missingDetails = arg + missingDetails = arg let swift = TeamLog.EventDetails.missingDetails(arg.swift) super.init(swift: swift) } @@ -19661,6 +25625,102 @@ public class DBXTeamLogEventType: NSObject { case .fileUnresolveComment(let swiftArg): let arg = DBXTeamLogFileUnresolveCommentType(swift: swiftArg) return DBXTeamLogEventTypeFileUnresolveComment(arg) + case .dashAddedCommentToStack(let swiftArg): + let arg = DBXTeamLogDashAddedCommentToStackType(swift: swiftArg) + return DBXTeamLogEventTypeDashAddedCommentToStack(arg) + case .dashAddedConnector(let swiftArg): + let arg = DBXTeamLogDashAddedConnectorType(swift: swiftArg) + return DBXTeamLogEventTypeDashAddedConnector(arg) + case .dashAddedLinkToStack(let swiftArg): + let arg = DBXTeamLogDashAddedLinkToStackType(swift: swiftArg) + return DBXTeamLogEventTypeDashAddedLinkToStack(arg) + case .dashAddedTeamEmailDomainAllowlist(let swiftArg): + let arg = DBXTeamLogDashAddedTeamEmailDomainAllowlistType(swift: swiftArg) + return DBXTeamLogEventTypeDashAddedTeamEmailDomainAllowlist(arg) + case .dashAdminAddedOrgWideConnector(let swiftArg): + let arg = DBXTeamLogDashAdminAddedOrgWideConnectorType(swift: swiftArg) + return DBXTeamLogEventTypeDashAdminAddedOrgWideConnector(arg) + case .dashAdminDisabledConnector(let swiftArg): + let arg = DBXTeamLogDashAdminDisabledConnectorType(swift: swiftArg) + return DBXTeamLogEventTypeDashAdminDisabledConnector(arg) + case .dashAdminEnabledConnector(let swiftArg): + let arg = DBXTeamLogDashAdminEnabledConnectorType(swift: swiftArg) + return DBXTeamLogEventTypeDashAdminEnabledConnector(arg) + case .dashAdminRemovedOrgWideConnector(let swiftArg): + let arg = DBXTeamLogDashAdminRemovedOrgWideConnectorType(swift: swiftArg) + return DBXTeamLogEventTypeDashAdminRemovedOrgWideConnector(arg) + case .dashArchivedStack(let swiftArg): + let arg = DBXTeamLogDashArchivedStackType(swift: swiftArg) + return DBXTeamLogEventTypeDashArchivedStack(arg) + case .dashChangedAudienceOfSharedLinkToStack(let swiftArg): + let arg = DBXTeamLogDashChangedAudienceOfSharedLinkToStackType(swift: swiftArg) + return DBXTeamLogEventTypeDashChangedAudienceOfSharedLinkToStack(arg) + case .dashClonedStack(let swiftArg): + let arg = DBXTeamLogDashClonedStackType(swift: swiftArg) + return DBXTeamLogEventTypeDashClonedStack(arg) + case .dashConnectorToolsCall(let swiftArg): + let arg = DBXTeamLogDashConnectorToolsCallType(swift: swiftArg) + return DBXTeamLogEventTypeDashConnectorToolsCall(arg) + case .dashCreatedStack(let swiftArg): + let arg = DBXTeamLogDashCreatedStackType(swift: swiftArg) + return DBXTeamLogEventTypeDashCreatedStack(arg) + case .dashDeletedCommentFromStack(let swiftArg): + let arg = DBXTeamLogDashDeletedCommentFromStackType(swift: swiftArg) + return DBXTeamLogEventTypeDashDeletedCommentFromStack(arg) + case .dashDeletedStack(let swiftArg): + let arg = DBXTeamLogDashDeletedStackType(swift: swiftArg) + return DBXTeamLogEventTypeDashDeletedStack(arg) + case .dashEditedCommentInStack(let swiftArg): + let arg = DBXTeamLogDashEditedCommentInStackType(swift: swiftArg) + return DBXTeamLogEventTypeDashEditedCommentInStack(arg) + case .dashExternalUserOpenedStack(let swiftArg): + let arg = DBXTeamLogDashExternalUserOpenedStackType(swift: swiftArg) + return DBXTeamLogEventTypeDashExternalUserOpenedStack(arg) + case .dashFirstLaunchedDesktop(let swiftArg): + let arg = DBXTeamLogDashFirstLaunchedDesktopType(swift: swiftArg) + return DBXTeamLogEventTypeDashFirstLaunchedDesktop(arg) + case .dashFirstLaunchedExtension(let swiftArg): + let arg = DBXTeamLogDashFirstLaunchedExtensionType(swift: swiftArg) + return DBXTeamLogEventTypeDashFirstLaunchedExtension(arg) + case .dashFirstLaunchedWebStartPage(let swiftArg): + let arg = DBXTeamLogDashFirstLaunchedWebStartPageType(swift: swiftArg) + return DBXTeamLogEventTypeDashFirstLaunchedWebStartPage(arg) + case .dashOpenedSharedLinkToStack(let swiftArg): + let arg = DBXTeamLogDashOpenedSharedLinkToStackType(swift: swiftArg) + return DBXTeamLogEventTypeDashOpenedSharedLinkToStack(arg) + case .dashOpenedStack(let swiftArg): + let arg = DBXTeamLogDashOpenedStackType(swift: swiftArg) + return DBXTeamLogEventTypeDashOpenedStack(arg) + case .dashPreviewOptOutStatusChanged(let swiftArg): + let arg = DBXTeamLogDashPreviewOptOutStatusChangedType(swift: swiftArg) + return DBXTeamLogEventTypeDashPreviewOptOutStatusChanged(arg) + case .dashRemovedConnector(let swiftArg): + let arg = DBXTeamLogDashRemovedConnectorType(swift: swiftArg) + return DBXTeamLogEventTypeDashRemovedConnector(arg) + case .dashRemovedLinkFromStack(let swiftArg): + let arg = DBXTeamLogDashRemovedLinkFromStackType(swift: swiftArg) + return DBXTeamLogEventTypeDashRemovedLinkFromStack(arg) + case .dashRemovedSharedLinkToStack(let swiftArg): + let arg = DBXTeamLogDashRemovedSharedLinkToStackType(swift: swiftArg) + return DBXTeamLogEventTypeDashRemovedSharedLinkToStack(arg) + case .dashRemovedTeamEmailDomainAllowlist(let swiftArg): + let arg = DBXTeamLogDashRemovedTeamEmailDomainAllowlistType(swift: swiftArg) + return DBXTeamLogEventTypeDashRemovedTeamEmailDomainAllowlist(arg) + case .dashRenamedStack(let swiftArg): + let arg = DBXTeamLogDashRenamedStackType(swift: swiftArg) + return DBXTeamLogEventTypeDashRenamedStack(arg) + case .dashSharedLinkToStack(let swiftArg): + let arg = DBXTeamLogDashSharedLinkToStackType(swift: swiftArg) + return DBXTeamLogEventTypeDashSharedLinkToStack(arg) + case .dashUnarchivedStack(let swiftArg): + let arg = DBXTeamLogDashUnarchivedStackType(swift: swiftArg) + return DBXTeamLogEventTypeDashUnarchivedStack(arg) + case .dashViewedCompanyStack(let swiftArg): + let arg = DBXTeamLogDashViewedCompanyStackType(swift: swiftArg) + return DBXTeamLogEventTypeDashViewedCompanyStack(arg) + case .dashViewedExternalAiActivityReport(let swiftArg): + let arg = DBXTeamLogDashViewedExternalAiActivityReportType(swift: swiftArg) + return DBXTeamLogEventTypeDashViewedExternalAiActivityReport(arg) case .governancePolicyAddFolders(let swiftArg): let arg = DBXTeamLogGovernancePolicyAddFoldersType(swift: swiftArg) return DBXTeamLogEventTypeGovernancePolicyAddFolders(arg) @@ -19823,12 +25883,48 @@ public class DBXTeamLogEventType: NSObject { case .enabledDomainInvites(let swiftArg): let arg = DBXTeamLogEnabledDomainInvitesType(swift: swiftArg) return DBXTeamLogEventTypeEnabledDomainInvites(arg) + case .encryptedFolderCancelTeamKeyRotation(let swiftArg): + let arg = DBXTeamLogEncryptedFolderCancelTeamKeyRotationType(swift: swiftArg) + return DBXTeamLogEventTypeEncryptedFolderCancelTeamKeyRotation(arg) + case .encryptedFolderEnrollBackupKey(let swiftArg): + let arg = DBXTeamLogEncryptedFolderEnrollBackupKeyType(swift: swiftArg) + return DBXTeamLogEventTypeEncryptedFolderEnrollBackupKey(arg) + case .encryptedFolderEnrollClient(let swiftArg): + let arg = DBXTeamLogEncryptedFolderEnrollClientType(swift: swiftArg) + return DBXTeamLogEventTypeEncryptedFolderEnrollClient(arg) + case .encryptedFolderEnrollTeam(let swiftArg): + let arg = DBXTeamLogEncryptedFolderEnrollTeamType(swift: swiftArg) + return DBXTeamLogEventTypeEncryptedFolderEnrollTeam(arg) + case .encryptedFolderFinishTeamUnenrollment(let swiftArg): + let arg = DBXTeamLogEncryptedFolderFinishTeamUnenrollmentType(swift: swiftArg) + return DBXTeamLogEventTypeEncryptedFolderFinishTeamUnenrollment(arg) + case .encryptedFolderInitTeamKeyRotation(let swiftArg): + let arg = DBXTeamLogEncryptedFolderInitTeamKeyRotationType(swift: swiftArg) + return DBXTeamLogEventTypeEncryptedFolderInitTeamKeyRotation(arg) + case .encryptedFolderInitTeamUnenrollment(let swiftArg): + let arg = DBXTeamLogEncryptedFolderInitTeamUnenrollmentType(swift: swiftArg) + return DBXTeamLogEventTypeEncryptedFolderInitTeamUnenrollment(arg) + case .encryptedFolderRemoveBackupKey(let swiftArg): + let arg = DBXTeamLogEncryptedFolderRemoveBackupKeyType(swift: swiftArg) + return DBXTeamLogEventTypeEncryptedFolderRemoveBackupKey(arg) + case .encryptedFolderRotateTeamKey(let swiftArg): + let arg = DBXTeamLogEncryptedFolderRotateTeamKeyType(swift: swiftArg) + return DBXTeamLogEventTypeEncryptedFolderRotateTeamKey(arg) + case .encryptedFolderUnenrollClient(let swiftArg): + let arg = DBXTeamLogEncryptedFolderUnenrollClientType(swift: swiftArg) + return DBXTeamLogEventTypeEncryptedFolderUnenrollClient(arg) + case .teamEncryptionKeyActivateKey(let swiftArg): + let arg = DBXTeamLogTeamEncryptionKeyActivateKeyType(swift: swiftArg) + return DBXTeamLogEventTypeTeamEncryptionKeyActivateKey(arg) case .teamEncryptionKeyCancelKeyDeletion(let swiftArg): let arg = DBXTeamLogTeamEncryptionKeyCancelKeyDeletionType(swift: swiftArg) return DBXTeamLogEventTypeTeamEncryptionKeyCancelKeyDeletion(arg) case .teamEncryptionKeyCreateKey(let swiftArg): let arg = DBXTeamLogTeamEncryptionKeyCreateKeyType(swift: swiftArg) return DBXTeamLogEventTypeTeamEncryptionKeyCreateKey(arg) + case .teamEncryptionKeyDeactivateKey(let swiftArg): + let arg = DBXTeamLogTeamEncryptionKeyDeactivateKeyType(swift: swiftArg) + return DBXTeamLogEventTypeTeamEncryptionKeyDeactivateKey(arg) case .teamEncryptionKeyDeleteKey(let swiftArg): let arg = DBXTeamLogTeamEncryptionKeyDeleteKeyType(swift: swiftArg) return DBXTeamLogEventTypeTeamEncryptionKeyDeleteKey(arg) @@ -19907,6 +26003,9 @@ public class DBXTeamLogEventType: NSObject { case .folderOverviewItemUnpinned(let swiftArg): let arg = DBXTeamLogFolderOverviewItemUnpinnedType(swift: swiftArg) return DBXTeamLogEventTypeFolderOverviewItemUnpinned(arg) + case .mediaHubFileDownloaded(let swiftArg): + let arg = DBXTeamLogMediaHubFileDownloadedType(swift: swiftArg) + return DBXTeamLogEventTypeMediaHubFileDownloaded(arg) case .objectLabelAdded(let swiftArg): let arg = DBXTeamLogObjectLabelAddedType(swift: swiftArg) return DBXTeamLogEventTypeObjectLabelAdded(arg) @@ -19922,6 +26021,12 @@ public class DBXTeamLogEventType: NSObject { case .replayFileDelete(let swiftArg): let arg = DBXTeamLogReplayFileDeleteType(swift: swiftArg) return DBXTeamLogEventTypeReplayFileDelete(arg) + case .replayFileDownloaded(let swiftArg): + let arg = DBXTeamLogReplayFileDownloadedType(swift: swiftArg) + return DBXTeamLogEventTypeReplayFileDownloaded(arg) + case .replayTeamProjectCreated(let swiftArg): + let arg = DBXTeamLogReplayTeamProjectCreatedType(swift: swiftArg) + return DBXTeamLogEventTypeReplayTeamProjectCreated(arg) case .rewindFolder(let swiftArg): let arg = DBXTeamLogRewindFolderType(swift: swiftArg) return DBXTeamLogEventTypeRewindFolder(arg) @@ -19940,6 +26045,9 @@ public class DBXTeamLogEventType: NSObject { case .emailIngestReceiveFile(let swiftArg): let arg = DBXTeamLogEmailIngestReceiveFileType(swift: swiftArg) return DBXTeamLogEventTypeEmailIngestReceiveFile(arg) + case .fileRequestAutoClose(let swiftArg): + let arg = DBXTeamLogFileRequestAutoCloseType(swift: swiftArg) + return DBXTeamLogEventTypeFileRequestAutoClose(arg) case .fileRequestChange(let swiftArg): let arg = DBXTeamLogFileRequestChangeType(swift: swiftArg) return DBXTeamLogEventTypeFileRequestChange(arg) @@ -19979,6 +26087,9 @@ public class DBXTeamLogEventType: NSObject { case .groupDescriptionUpdated(let swiftArg): let arg = DBXTeamLogGroupDescriptionUpdatedType(swift: swiftArg) return DBXTeamLogEventTypeGroupDescriptionUpdated(arg) + case .groupExternalSharingSettingOverrideChanged(let swiftArg): + let arg = DBXTeamLogGroupExternalSharingSettingOverrideChangedType(swift: swiftArg) + return DBXTeamLogEventTypeGroupExternalSharingSettingOverrideChanged(arg) case .groupJoinPolicyUpdated(let swiftArg): let arg = DBXTeamLogGroupJoinPolicyUpdatedType(swift: swiftArg) return DBXTeamLogEventTypeGroupJoinPolicyUpdated(arg) @@ -20030,6 +26141,12 @@ public class DBXTeamLogEventType: NSObject { case .ssoError(let swiftArg): let arg = DBXTeamLogSsoErrorType(swift: swiftArg) return DBXTeamLogEventTypeSsoError(arg) + case .addonAssigned(let swiftArg): + let arg = DBXTeamLogAddonAssignedType(swift: swiftArg) + return DBXTeamLogEventTypeAddonAssigned(arg) + case .addonRemoved(let swiftArg): + let arg = DBXTeamLogAddonRemovedType(swift: swiftArg) + return DBXTeamLogEventTypeAddonRemoved(arg) case .backupAdminInvitationSent(let swiftArg): let arg = DBXTeamLogBackupAdminInvitationSentType(swift: swiftArg) return DBXTeamLogEventTypeBackupAdminInvitationSent(arg) @@ -20075,6 +26192,9 @@ public class DBXTeamLogEventType: NSObject { case .memberDeleteProfilePhoto(let swiftArg): let arg = DBXTeamLogMemberDeleteProfilePhotoType(swift: swiftArg) return DBXTeamLogEventTypeMemberDeleteProfilePhoto(arg) + case .memberFolderContentsAccessed(let swiftArg): + let arg = DBXTeamLogMemberFolderContentsAccessedType(swift: swiftArg) + return DBXTeamLogEventTypeMemberFolderContentsAccessed(arg) case .memberPermanentlyDeleteAccountContents(let swiftArg): let arg = DBXTeamLogMemberPermanentlyDeleteAccountContentsType(swift: swiftArg) return DBXTeamLogEventTypeMemberPermanentlyDeleteAccountContents(arg) @@ -20105,6 +26225,12 @@ public class DBXTeamLogEventType: NSObject { case .pendingSecondaryEmailAdded(let swiftArg): let arg = DBXTeamLogPendingSecondaryEmailAddedType(swift: swiftArg) return DBXTeamLogEventTypePendingSecondaryEmailAdded(arg) + case .productAssignedToMember(let swiftArg): + let arg = DBXTeamLogProductAssignedToMemberType(swift: swiftArg) + return DBXTeamLogEventTypeProductAssignedToMember(arg) + case .productRemovedFromMember(let swiftArg): + let arg = DBXTeamLogProductRemovedFromMemberType(swift: swiftArg) + return DBXTeamLogEventTypeProductRemovedFromMember(arg) case .secondaryEmailDeleted(let swiftArg): let arg = DBXTeamLogSecondaryEmailDeletedType(swift: swiftArg) return DBXTeamLogEventTypeSecondaryEmailDeleted(arg) @@ -20270,6 +26396,30 @@ public class DBXTeamLogEventType: NSObject { case .passwordResetAll(let swiftArg): let arg = DBXTeamLogPasswordResetAllType(swift: swiftArg) return DBXTeamLogEventTypePasswordResetAll(arg) + case .protectActionAddCollaborator(let swiftArg): + let arg = DBXTeamLogProtectActionAddCollaboratorType(swift: swiftArg) + return DBXTeamLogEventTypeProtectActionAddCollaborator(arg) + case .protectActionAddLink(let swiftArg): + let arg = DBXTeamLogProtectActionAddLinkType(swift: swiftArg) + return DBXTeamLogEventTypeProtectActionAddLink(arg) + case .protectActionDelete(let swiftArg): + let arg = DBXTeamLogProtectActionDeleteType(swift: swiftArg) + return DBXTeamLogEventTypeProtectActionDelete(arg) + case .protectActionExport(let swiftArg): + let arg = DBXTeamLogProtectActionExportType(swift: swiftArg) + return DBXTeamLogEventTypeProtectActionExport(arg) + case .protectActionRemoveCollaborator(let swiftArg): + let arg = DBXTeamLogProtectActionRemoveCollaboratorType(swift: swiftArg) + return DBXTeamLogEventTypeProtectActionRemoveCollaborator(arg) + case .protectActionRemoveLink(let swiftArg): + let arg = DBXTeamLogProtectActionRemoveLinkType(swift: swiftArg) + return DBXTeamLogEventTypeProtectActionRemoveLink(arg) + case .protectActionStopSharing(let swiftArg): + let arg = DBXTeamLogProtectActionStopSharingType(swift: swiftArg) + return DBXTeamLogEventTypeProtectActionStopSharing(arg) + case .protectInternalDomainsChanged(let swiftArg): + let arg = DBXTeamLogProtectInternalDomainsChangedType(swift: swiftArg) + return DBXTeamLogEventTypeProtectInternalDomainsChanged(arg) case .classificationCreateReport(let swiftArg): let arg = DBXTeamLogClassificationCreateReportType(swift: swiftArg) return DBXTeamLogEventTypeClassificationCreateReport(arg) @@ -20294,6 +26444,12 @@ public class DBXTeamLogEventType: NSObject { case .externalSharingReportFailed(let swiftArg): let arg = DBXTeamLogExternalSharingReportFailedType(swift: swiftArg) return DBXTeamLogEventTypeExternalSharingReportFailed(arg) + case .memberAccessDetailsCreateReport(let swiftArg): + let arg = DBXTeamLogMemberAccessDetailsCreateReportType(swift: swiftArg) + return DBXTeamLogEventTypeMemberAccessDetailsCreateReport(arg) + case .memberAccessDetailsCreateReportFailed(let swiftArg): + let arg = DBXTeamLogMemberAccessDetailsCreateReportFailedType(swift: swiftArg) + return DBXTeamLogEventTypeMemberAccessDetailsCreateReportFailed(arg) case .noExpirationLinkGenCreateReport(let swiftArg): let arg = DBXTeamLogNoExpirationLinkGenCreateReportType(swift: swiftArg) return DBXTeamLogEventTypeNoExpirationLinkGenCreateReport(arg) @@ -20327,6 +26483,12 @@ public class DBXTeamLogEventType: NSObject { case .ransomwareAlertCreateReportFailed(let swiftArg): let arg = DBXTeamLogRansomwareAlertCreateReportFailedType(swift: swiftArg) return DBXTeamLogEventTypeRansomwareAlertCreateReportFailed(arg) + case .sharedFoldersCreateReport(let swiftArg): + let arg = DBXTeamLogSharedFoldersCreateReportType(swift: swiftArg) + return DBXTeamLogEventTypeSharedFoldersCreateReport(arg) + case .sharedFoldersCreateReportFailed(let swiftArg): + let arg = DBXTeamLogSharedFoldersCreateReportFailedType(swift: swiftArg) + return DBXTeamLogEventTypeSharedFoldersCreateReportFailed(arg) case .smartSyncCreateAdminPrivilegeReport(let swiftArg): let arg = DBXTeamLogSmartSyncCreateAdminPrivilegeReportType(swift: swiftArg) return DBXTeamLogEventTypeSmartSyncCreateAdminPrivilegeReport(arg) @@ -20336,6 +26498,18 @@ public class DBXTeamLogEventType: NSObject { case .teamActivityCreateReportFail(let swiftArg): let arg = DBXTeamLogTeamActivityCreateReportFailType(swift: swiftArg) return DBXTeamLogEventTypeTeamActivityCreateReportFail(arg) + case .teamFoldersCreateReport(let swiftArg): + let arg = DBXTeamLogTeamFoldersCreateReportType(swift: swiftArg) + return DBXTeamLogEventTypeTeamFoldersCreateReport(arg) + case .teamFoldersCreateReportFailed(let swiftArg): + let arg = DBXTeamLogTeamFoldersCreateReportFailedType(swift: swiftArg) + return DBXTeamLogEventTypeTeamFoldersCreateReportFailed(arg) + case .teamStorageCreateReport(let swiftArg): + let arg = DBXTeamLogTeamStorageCreateReportType(swift: swiftArg) + return DBXTeamLogEventTypeTeamStorageCreateReport(arg) + case .teamStorageCreateReportFailed(let swiftArg): + let arg = DBXTeamLogTeamStorageCreateReportFailedType(swift: swiftArg) + return DBXTeamLogEventTypeTeamStorageCreateReportFailed(arg) case .collectionShare(let swiftArg): let arg = DBXTeamLogCollectionShareType(swift: swiftArg) return DBXTeamLogEventTypeCollectionShare(arg) @@ -20354,6 +26528,27 @@ public class DBXTeamLogEventType: NSObject { case .fileTransfersTransferView(let swiftArg): let arg = DBXTeamLogFileTransfersTransferViewType(swift: swiftArg) return DBXTeamLogEventTypeFileTransfersTransferView(arg) + case .mediaHubProjectTeamAdd(let swiftArg): + let arg = DBXTeamLogMediaHubProjectTeamAddType(swift: swiftArg) + return DBXTeamLogEventTypeMediaHubProjectTeamAdd(arg) + case .mediaHubProjectTeamDelete(let swiftArg): + let arg = DBXTeamLogMediaHubProjectTeamDeleteType(swift: swiftArg) + return DBXTeamLogEventTypeMediaHubProjectTeamDelete(arg) + case .mediaHubProjectTeamRoleChanged(let swiftArg): + let arg = DBXTeamLogMediaHubProjectTeamRoleChangedType(swift: swiftArg) + return DBXTeamLogEventTypeMediaHubProjectTeamRoleChanged(arg) + case .mediaHubSharedLinkAudienceChanged(let swiftArg): + let arg = DBXTeamLogMediaHubSharedLinkAudienceChangedType(swift: swiftArg) + return DBXTeamLogEventTypeMediaHubSharedLinkAudienceChanged(arg) + case .mediaHubSharedLinkCreated(let swiftArg): + let arg = DBXTeamLogMediaHubSharedLinkCreatedType(swift: swiftArg) + return DBXTeamLogEventTypeMediaHubSharedLinkCreated(arg) + case .mediaHubSharedLinkDownloadSettingChanged(let swiftArg): + let arg = DBXTeamLogMediaHubSharedLinkDownloadSettingChangedType(swift: swiftArg) + return DBXTeamLogEventTypeMediaHubSharedLinkDownloadSettingChanged(arg) + case .mediaHubSharedLinkRevoked(let swiftArg): + let arg = DBXTeamLogMediaHubSharedLinkRevokedType(swift: swiftArg) + return DBXTeamLogEventTypeMediaHubSharedLinkRevoked(arg) case .noteAclInviteOnly(let swiftArg): let arg = DBXTeamLogNoteAclInviteOnlyType(swift: swiftArg) return DBXTeamLogEventTypeNoteAclInviteOnly(arg) @@ -20384,6 +26579,30 @@ public class DBXTeamLogEventType: NSObject { case .replayProjectTeamDelete(let swiftArg): let arg = DBXTeamLogReplayProjectTeamDeleteType(swift: swiftArg) return DBXTeamLogEventTypeReplayProjectTeamDelete(arg) + case .sendAndTrackFileAdded(let swiftArg): + let arg = DBXTeamLogSendAndTrackFileAddedType(swift: swiftArg) + return DBXTeamLogEventTypeSendAndTrackFileAdded(arg) + case .sendAndTrackFileRenamed(let swiftArg): + let arg = DBXTeamLogSendAndTrackFileRenamedType(swift: swiftArg) + return DBXTeamLogEventTypeSendAndTrackFileRenamed(arg) + case .sendAndTrackFileUpdated(let swiftArg): + let arg = DBXTeamLogSendAndTrackFileUpdatedType(swift: swiftArg) + return DBXTeamLogEventTypeSendAndTrackFileUpdated(arg) + case .sendAndTrackLinkCreated(let swiftArg): + let arg = DBXTeamLogSendAndTrackLinkCreatedType(swift: swiftArg) + return DBXTeamLogEventTypeSendAndTrackLinkCreated(arg) + case .sendAndTrackLinkDeleted(let swiftArg): + let arg = DBXTeamLogSendAndTrackLinkDeletedType(swift: swiftArg) + return DBXTeamLogEventTypeSendAndTrackLinkDeleted(arg) + case .sendAndTrackLinkUpdated(let swiftArg): + let arg = DBXTeamLogSendAndTrackLinkUpdatedType(swift: swiftArg) + return DBXTeamLogEventTypeSendAndTrackLinkUpdated(arg) + case .sendAndTrackLinkViewed(let swiftArg): + let arg = DBXTeamLogSendAndTrackLinkViewedType(swift: swiftArg) + return DBXTeamLogEventTypeSendAndTrackLinkViewed(arg) + case .sendAndTrackRemovedFileAndAssociatedLinks(let swiftArg): + let arg = DBXTeamLogSendAndTrackRemovedFileAndAssociatedLinksType(swift: swiftArg) + return DBXTeamLogEventTypeSendAndTrackRemovedFileAndAssociatedLinks(arg) case .sfAddGroup(let swiftArg): let arg = DBXTeamLogSfAddGroupType(swift: swiftArg) return DBXTeamLogEventTypeSfAddGroup(arg) @@ -20549,6 +26768,9 @@ public class DBXTeamLogEventType: NSObject { case .sharedLinkRemoveExpiry(let swiftArg): let arg = DBXTeamLogSharedLinkRemoveExpiryType(swift: swiftArg) return DBXTeamLogEventTypeSharedLinkRemoveExpiry(arg) + case .sharedLinkRemoveVisitor(let swiftArg): + let arg = DBXTeamLogSharedLinkRemoveVisitorType(swift: swiftArg) + return DBXTeamLogEventTypeSharedLinkRemoveVisitor(arg) case .sharedLinkSettingsAddExpiration(let swiftArg): let arg = DBXTeamLogSharedLinkSettingsAddExpirationType(swift: swiftArg) return DBXTeamLogEventTypeSharedLinkSettingsAddExpiration(arg) @@ -20666,6 +26888,33 @@ public class DBXTeamLogEventType: NSObject { case .showcaseView(let swiftArg): let arg = DBXTeamLogShowcaseViewType(swift: swiftArg) return DBXTeamLogEventTypeShowcaseView(arg) + case .signSignatureRequestCanceled(let swiftArg): + let arg = DBXTeamLogSignSignatureRequestCanceledType(swift: swiftArg) + return DBXTeamLogEventTypeSignSignatureRequestCanceled(arg) + case .signSignatureRequestCompleted(let swiftArg): + let arg = DBXTeamLogSignSignatureRequestCompletedType(swift: swiftArg) + return DBXTeamLogEventTypeSignSignatureRequestCompleted(arg) + case .signSignatureRequestDeclined(let swiftArg): + let arg = DBXTeamLogSignSignatureRequestDeclinedType(swift: swiftArg) + return DBXTeamLogEventTypeSignSignatureRequestDeclined(arg) + case .signSignatureRequestOpened(let swiftArg): + let arg = DBXTeamLogSignSignatureRequestOpenedType(swift: swiftArg) + return DBXTeamLogEventTypeSignSignatureRequestOpened(arg) + case .signSignatureRequestReminderSent(let swiftArg): + let arg = DBXTeamLogSignSignatureRequestReminderSentType(swift: swiftArg) + return DBXTeamLogEventTypeSignSignatureRequestReminderSent(arg) + case .signSignatureRequestSent(let swiftArg): + let arg = DBXTeamLogSignSignatureRequestSentType(swift: swiftArg) + return DBXTeamLogEventTypeSignSignatureRequestSent(arg) + case .signTemplateCreated(let swiftArg): + let arg = DBXTeamLogSignTemplateCreatedType(swift: swiftArg) + return DBXTeamLogEventTypeSignTemplateCreated(arg) + case .signTemplateShared(let swiftArg): + let arg = DBXTeamLogSignTemplateSharedType(swift: swiftArg) + return DBXTeamLogEventTypeSignTemplateShared(arg) + case .riscSecurityEvent(let swiftArg): + let arg = DBXTeamLogRiscSecurityEventType(swift: swiftArg) + return DBXTeamLogEventTypeRiscSecurityEvent(arg) case .ssoAddCert(let swiftArg): let arg = DBXTeamLogSsoAddCertType(swift: swiftArg) return DBXTeamLogEventTypeSsoAddCert(arg) @@ -20711,6 +26960,15 @@ public class DBXTeamLogEventType: NSObject { case .teamFolderRename(let swiftArg): let arg = DBXTeamLogTeamFolderRenameType(swift: swiftArg) return DBXTeamLogEventTypeTeamFolderRename(arg) + case .teamFolderSpaceLimitsChangeCapsType(let swiftArg): + let arg = DBXTeamLogTeamFolderSpaceLimitsChangeCapsTypeType(swift: swiftArg) + return DBXTeamLogEventTypeTeamFolderSpaceLimitsChangeCapsType(arg) + case .teamFolderSpaceLimitsChangeLimit(let swiftArg): + let arg = DBXTeamLogTeamFolderSpaceLimitsChangeLimitType(swift: swiftArg) + return DBXTeamLogEventTypeTeamFolderSpaceLimitsChangeLimit(arg) + case .teamFolderSpaceLimitsChangeNotificationTarget(let swiftArg): + let arg = DBXTeamLogTeamFolderSpaceLimitsChangeNotificationTargetType(swift: swiftArg) + return DBXTeamLogEventTypeTeamFolderSpaceLimitsChangeNotificationTarget(arg) case .teamSelectiveSyncSettingsChanged(let swiftArg): let arg = DBXTeamLogTeamSelectiveSyncSettingsChangedType(swift: swiftArg) return DBXTeamLogEventTypeTeamSelectiveSyncSettingsChanged(arg) @@ -20720,18 +26978,27 @@ public class DBXTeamLogEventType: NSObject { case .adminEmailRemindersChanged(let swiftArg): let arg = DBXTeamLogAdminEmailRemindersChangedType(swift: swiftArg) return DBXTeamLogEventTypeAdminEmailRemindersChanged(arg) + case .aiThirdPartySharingDropboxBasePolicyChanged(let swiftArg): + let arg = DBXTeamLogAiThirdPartySharingDropboxBasePolicyChangedType(swift: swiftArg) + return DBXTeamLogEventTypeAiThirdPartySharingDropboxBasePolicyChanged(arg) case .allowDownloadDisabled(let swiftArg): let arg = DBXTeamLogAllowDownloadDisabledType(swift: swiftArg) return DBXTeamLogEventTypeAllowDownloadDisabled(arg) case .allowDownloadEnabled(let swiftArg): let arg = DBXTeamLogAllowDownloadEnabledType(swift: swiftArg) return DBXTeamLogEventTypeAllowDownloadEnabled(arg) + case .appleLoginChangePolicy(let swiftArg): + let arg = DBXTeamLogAppleLoginChangePolicyType(swift: swiftArg) + return DBXTeamLogEventTypeAppleLoginChangePolicy(arg) case .appPermissionsChanged(let swiftArg): let arg = DBXTeamLogAppPermissionsChangedType(swift: swiftArg) return DBXTeamLogEventTypeAppPermissionsChanged(arg) case .cameraUploadsPolicyChanged(let swiftArg): let arg = DBXTeamLogCameraUploadsPolicyChangedType(swift: swiftArg) return DBXTeamLogEventTypeCameraUploadsPolicyChanged(arg) + case .captureTeamSpacePolicyChanged(let swiftArg): + let arg = DBXTeamLogCaptureTeamSpacePolicyChangedType(swift: swiftArg) + return DBXTeamLogEventTypeCaptureTeamSpacePolicyChanged(arg) case .captureTranscriptPolicyChanged(let swiftArg): let arg = DBXTeamLogCaptureTranscriptPolicyChangedType(swift: swiftArg) return DBXTeamLogEventTypeCaptureTranscriptPolicyChanged(arg) @@ -20744,6 +27011,12 @@ public class DBXTeamLogEventType: NSObject { case .contentAdministrationPolicyChanged(let swiftArg): let arg = DBXTeamLogContentAdministrationPolicyChangedType(swift: swiftArg) return DBXTeamLogEventTypeContentAdministrationPolicyChanged(arg) + case .contentDeletionProtectionChangePolicy(let swiftArg): + let arg = DBXTeamLogContentDeletionProtectionChangePolicyType(swift: swiftArg) + return DBXTeamLogEventTypeContentDeletionProtectionChangePolicy(arg) + case .dashExternalSharingPolicyChanged(let swiftArg): + let arg = DBXTeamLogDashExternalSharingPolicyChangedType(swift: swiftArg) + return DBXTeamLogEventTypeDashExternalSharingPolicyChanged(arg) case .dataPlacementRestrictionChangePolicy(let swiftArg): let arg = DBXTeamLogDataPlacementRestrictionChangePolicyType(swift: swiftArg) return DBXTeamLogEventTypeDataPlacementRestrictionChangePolicy(arg) @@ -20816,6 +27089,9 @@ public class DBXTeamLogEventType: NSObject { case .fileTransfersPolicyChanged(let swiftArg): let arg = DBXTeamLogFileTransfersPolicyChangedType(swift: swiftArg) return DBXTeamLogEventTypeFileTransfersPolicyChanged(arg) + case .flexibleFileNamesPolicyChanged(let swiftArg): + let arg = DBXTeamLogFlexibleFileNamesPolicyChangedType(swift: swiftArg) + return DBXTeamLogEventTypeFlexibleFileNamesPolicyChanged(arg) case .folderLinkRestrictionPolicyChanged(let swiftArg): let arg = DBXTeamLogFolderLinkRestrictionPolicyChangedType(swift: swiftArg) return DBXTeamLogEventTypeFolderLinkRestrictionPolicyChanged(arg) @@ -20831,6 +27107,15 @@ public class DBXTeamLogEventType: NSObject { case .inviteAcceptanceEmailPolicyChanged(let swiftArg): let arg = DBXTeamLogInviteAcceptanceEmailPolicyChangedType(swift: swiftArg) return DBXTeamLogEventTypeInviteAcceptanceEmailPolicyChanged(arg) + case .mediaHubAddingPeoplePolicyChanged(let swiftArg): + let arg = DBXTeamLogMediaHubAddingPeoplePolicyChangedType(swift: swiftArg) + return DBXTeamLogEventTypeMediaHubAddingPeoplePolicyChanged(arg) + case .mediaHubDownloadPolicyChanged(let swiftArg): + let arg = DBXTeamLogMediaHubDownloadPolicyChangedType(swift: swiftArg) + return DBXTeamLogEventTypeMediaHubDownloadPolicyChanged(arg) + case .mediaHubLinkSharingPolicyChanged(let swiftArg): + let arg = DBXTeamLogMediaHubLinkSharingPolicyChangedType(swift: swiftArg) + return DBXTeamLogEventTypeMediaHubLinkSharingPolicyChanged(arg) case .memberRequestsChangePolicy(let swiftArg): let arg = DBXTeamLogMemberRequestsChangePolicyType(swift: swiftArg) return DBXTeamLogEventTypeMemberRequestsChangePolicy(arg) @@ -20852,9 +27137,15 @@ public class DBXTeamLogEventType: NSObject { case .memberSuggestionsChangePolicy(let swiftArg): let arg = DBXTeamLogMemberSuggestionsChangePolicyType(swift: swiftArg) return DBXTeamLogEventTypeMemberSuggestionsChangePolicy(arg) + case .microsoftLoginChangePolicy(let swiftArg): + let arg = DBXTeamLogMicrosoftLoginChangePolicyType(swift: swiftArg) + return DBXTeamLogEventTypeMicrosoftLoginChangePolicy(arg) case .microsoftOfficeAddinChangePolicy(let swiftArg): let arg = DBXTeamLogMicrosoftOfficeAddinChangePolicyType(swift: swiftArg) return DBXTeamLogEventTypeMicrosoftOfficeAddinChangePolicy(arg) + case .multiTeamIdentityPolicyChanged(let swiftArg): + let arg = DBXTeamLogMultiTeamIdentityPolicyChangedType(swift: swiftArg) + return DBXTeamLogEventTypeMultiTeamIdentityPolicyChanged(arg) case .networkControlChangePolicy(let swiftArg): let arg = DBXTeamLogNetworkControlChangePolicyType(swift: swiftArg) return DBXTeamLogEventTypeNetworkControlChangePolicy(arg) @@ -20882,21 +27173,42 @@ public class DBXTeamLogEventType: NSObject { case .paperEnabledUsersGroupRemoval(let swiftArg): let arg = DBXTeamLogPaperEnabledUsersGroupRemovalType(swift: swiftArg) return DBXTeamLogEventTypePaperEnabledUsersGroupRemoval(arg) + case .passkeyLoginPolicyChanged(let swiftArg): + let arg = DBXTeamLogPasskeyLoginPolicyChangedType(swift: swiftArg) + return DBXTeamLogEventTypePasskeyLoginPolicyChanged(arg) case .passwordStrengthRequirementsChangePolicy(let swiftArg): let arg = DBXTeamLogPasswordStrengthRequirementsChangePolicyType(swift: swiftArg) return DBXTeamLogEventTypePasswordStrengthRequirementsChangePolicy(arg) case .permanentDeleteChangePolicy(let swiftArg): let arg = DBXTeamLogPermanentDeleteChangePolicyType(swift: swiftArg) return DBXTeamLogEventTypePermanentDeleteChangePolicy(arg) + case .previewsAiPolicyChanged(let swiftArg): + let arg = DBXTeamLogPreviewsAiPolicyChangedType(swift: swiftArg) + return DBXTeamLogEventTypePreviewsAiPolicyChanged(arg) + case .replayAddingPeoplePolicyChanged(let swiftArg): + let arg = DBXTeamLogReplayAddingPeoplePolicyChangedType(swift: swiftArg) + return DBXTeamLogEventTypeReplayAddingPeoplePolicyChanged(arg) + case .replaySharingPolicyChanged(let swiftArg): + let arg = DBXTeamLogReplaySharingPolicyChangedType(swift: swiftArg) + return DBXTeamLogEventTypeReplaySharingPolicyChanged(arg) case .resellerSupportChangePolicy(let swiftArg): let arg = DBXTeamLogResellerSupportChangePolicyType(swift: swiftArg) return DBXTeamLogEventTypeResellerSupportChangePolicy(arg) case .rewindPolicyChanged(let swiftArg): let arg = DBXTeamLogRewindPolicyChangedType(swift: swiftArg) return DBXTeamLogEventTypeRewindPolicyChanged(arg) + case .sendAndTrackPolicyChanged(let swiftArg): + let arg = DBXTeamLogSendAndTrackPolicyChangedType(swift: swiftArg) + return DBXTeamLogEventTypeSendAndTrackPolicyChanged(arg) + case .sendExternalSharingPolicyChanged(let swiftArg): + let arg = DBXTeamLogSendExternalSharingPolicyChangedType(swift: swiftArg) + return DBXTeamLogEventTypeSendExternalSharingPolicyChanged(arg) case .sendForSignaturePolicyChanged(let swiftArg): let arg = DBXTeamLogSendForSignaturePolicyChangedType(swift: swiftArg) return DBXTeamLogEventTypeSendForSignaturePolicyChanged(arg) + case .sharedLinkDefaultPermissionsPolicyChanged(let swiftArg): + let arg = DBXTeamLogSharedLinkDefaultPermissionsPolicyChangedType(swift: swiftArg) + return DBXTeamLogEventTypeSharedLinkDefaultPermissionsPolicyChanged(arg) case .sharingChangeFolderJoinPolicy(let swiftArg): let arg = DBXTeamLogSharingChangeFolderJoinPolicyType(swift: swiftArg) return DBXTeamLogEventTypeSharingChangeFolderJoinPolicy(arg) @@ -20924,6 +27236,12 @@ public class DBXTeamLogEventType: NSObject { case .showcaseChangeExternalSharingPolicy(let swiftArg): let arg = DBXTeamLogShowcaseChangeExternalSharingPolicyType(swift: swiftArg) return DBXTeamLogEventTypeShowcaseChangeExternalSharingPolicy(arg) + case .signExternalSharingPolicyChanged(let swiftArg): + let arg = DBXTeamLogSignExternalSharingPolicyChangedType(swift: swiftArg) + return DBXTeamLogEventTypeSignExternalSharingPolicyChanged(arg) + case .signTemplateCreationPermissionChanged(let swiftArg): + let arg = DBXTeamLogSignTemplateCreationPermissionChangedType(swift: swiftArg) + return DBXTeamLogEventTypeSignTemplateCreationPermissionChanged(arg) case .smarterSmartSyncPolicyChanged(let swiftArg): let arg = DBXTeamLogSmarterSmartSyncPolicyChangedType(swift: swiftArg) return DBXTeamLogEventTypeSmarterSmartSyncPolicyChanged(arg) @@ -20939,12 +27257,18 @@ public class DBXTeamLogEventType: NSObject { case .ssoChangePolicy(let swiftArg): let arg = DBXTeamLogSsoChangePolicyType(swift: swiftArg) return DBXTeamLogEventTypeSsoChangePolicy(arg) + case .stackCrossTeamAccessPolicyChanged(let swiftArg): + let arg = DBXTeamLogStackCrossTeamAccessPolicyChangedType(swift: swiftArg) + return DBXTeamLogEventTypeStackCrossTeamAccessPolicyChanged(arg) case .teamBrandingPolicyChanged(let swiftArg): let arg = DBXTeamLogTeamBrandingPolicyChangedType(swift: swiftArg) return DBXTeamLogEventTypeTeamBrandingPolicyChanged(arg) case .teamExtensionsPolicyChanged(let swiftArg): let arg = DBXTeamLogTeamExtensionsPolicyChangedType(swift: swiftArg) return DBXTeamLogEventTypeTeamExtensionsPolicyChanged(arg) + case .teamMemberStorageRequestPolicyChanged(let swiftArg): + let arg = DBXTeamLogTeamMemberStorageRequestPolicyChangedType(swift: swiftArg) + return DBXTeamLogEventTypeTeamMemberStorageRequestPolicyChanged(arg) case .teamSelectiveSyncPolicyChanged(let swiftArg): let arg = DBXTeamLogTeamSelectiveSyncPolicyChangedType(swift: swiftArg) return DBXTeamLogEventTypeTeamSelectiveSyncPolicyChanged(arg) @@ -20960,6 +27284,9 @@ public class DBXTeamLogEventType: NSObject { case .tfaRemoveException(let swiftArg): let arg = DBXTeamLogTfaRemoveExceptionType(swift: swiftArg) return DBXTeamLogEventTypeTfaRemoveException(arg) + case .topLevelContentPolicyChanged(let swiftArg): + let arg = DBXTeamLogTopLevelContentPolicyChangedType(swift: swiftArg) + return DBXTeamLogEventTypeTopLevelContentPolicyChanged(arg) case .twoAccountChangePolicy(let swiftArg): let arg = DBXTeamLogTwoAccountChangePolicyType(swift: swiftArg) return DBXTeamLogEventTypeTwoAccountChangePolicy(arg) @@ -21014,6 +27341,12 @@ public class DBXTeamLogEventType: NSObject { case .teamProfileRemoveLogo(let swiftArg): let arg = DBXTeamLogTeamProfileRemoveLogoType(swift: swiftArg) return DBXTeamLogEventTypeTeamProfileRemoveLogo(arg) + case .passkeyAdd(let swiftArg): + let arg = DBXTeamLogPasskeyAddType(swift: swiftArg) + return DBXTeamLogEventTypePasskeyAdd(arg) + case .passkeyRemove(let swiftArg): + let arg = DBXTeamLogPasskeyRemoveType(swift: swiftArg) + return DBXTeamLogEventTypePasskeyRemove(arg) case .tfaAddBackupPhone(let swiftArg): let arg = DBXTeamLogTfaAddBackupPhoneType(swift: swiftArg) return DBXTeamLogEventTypeTfaAddBackupPhone(arg) @@ -21120,2522 +27453,3137 @@ public class DBXTeamLogEventType: NSObject { @objc public var asAdminAlertingAlertStateChanged: DBXTeamLogEventTypeAdminAlertingAlertStateChanged? { - self as? DBXTeamLogEventTypeAdminAlertingAlertStateChanged + return self as? DBXTeamLogEventTypeAdminAlertingAlertStateChanged } @objc public var asAdminAlertingChangedAlertConfig: DBXTeamLogEventTypeAdminAlertingChangedAlertConfig? { - self as? DBXTeamLogEventTypeAdminAlertingChangedAlertConfig + return self as? DBXTeamLogEventTypeAdminAlertingChangedAlertConfig } @objc public var asAdminAlertingTriggeredAlert: DBXTeamLogEventTypeAdminAlertingTriggeredAlert? { - self as? DBXTeamLogEventTypeAdminAlertingTriggeredAlert + return self as? DBXTeamLogEventTypeAdminAlertingTriggeredAlert } @objc public var asRansomwareRestoreProcessCompleted: DBXTeamLogEventTypeRansomwareRestoreProcessCompleted? { - self as? DBXTeamLogEventTypeRansomwareRestoreProcessCompleted + return self as? DBXTeamLogEventTypeRansomwareRestoreProcessCompleted } @objc public var asRansomwareRestoreProcessStarted: DBXTeamLogEventTypeRansomwareRestoreProcessStarted? { - self as? DBXTeamLogEventTypeRansomwareRestoreProcessStarted + return self as? DBXTeamLogEventTypeRansomwareRestoreProcessStarted } @objc public var asAppBlockedByPermissions: DBXTeamLogEventTypeAppBlockedByPermissions? { - self as? DBXTeamLogEventTypeAppBlockedByPermissions + return self as? DBXTeamLogEventTypeAppBlockedByPermissions } @objc public var asAppLinkTeam: DBXTeamLogEventTypeAppLinkTeam? { - self as? DBXTeamLogEventTypeAppLinkTeam + return self as? DBXTeamLogEventTypeAppLinkTeam } @objc public var asAppLinkUser: DBXTeamLogEventTypeAppLinkUser? { - self as? DBXTeamLogEventTypeAppLinkUser + return self as? DBXTeamLogEventTypeAppLinkUser } @objc public var asAppUnlinkTeam: DBXTeamLogEventTypeAppUnlinkTeam? { - self as? DBXTeamLogEventTypeAppUnlinkTeam + return self as? DBXTeamLogEventTypeAppUnlinkTeam } @objc public var asAppUnlinkUser: DBXTeamLogEventTypeAppUnlinkUser? { - self as? DBXTeamLogEventTypeAppUnlinkUser + return self as? DBXTeamLogEventTypeAppUnlinkUser } @objc public var asIntegrationConnected: DBXTeamLogEventTypeIntegrationConnected? { - self as? DBXTeamLogEventTypeIntegrationConnected + return self as? DBXTeamLogEventTypeIntegrationConnected } @objc public var asIntegrationDisconnected: DBXTeamLogEventTypeIntegrationDisconnected? { - self as? DBXTeamLogEventTypeIntegrationDisconnected + return self as? DBXTeamLogEventTypeIntegrationDisconnected } @objc public var asFileAddComment: DBXTeamLogEventTypeFileAddComment? { - self as? DBXTeamLogEventTypeFileAddComment + return self as? DBXTeamLogEventTypeFileAddComment } @objc public var asFileChangeCommentSubscription: DBXTeamLogEventTypeFileChangeCommentSubscription? { - self as? DBXTeamLogEventTypeFileChangeCommentSubscription + return self as? DBXTeamLogEventTypeFileChangeCommentSubscription } @objc public var asFileDeleteComment: DBXTeamLogEventTypeFileDeleteComment? { - self as? DBXTeamLogEventTypeFileDeleteComment + return self as? DBXTeamLogEventTypeFileDeleteComment } @objc public var asFileEditComment: DBXTeamLogEventTypeFileEditComment? { - self as? DBXTeamLogEventTypeFileEditComment + return self as? DBXTeamLogEventTypeFileEditComment } @objc public var asFileLikeComment: DBXTeamLogEventTypeFileLikeComment? { - self as? DBXTeamLogEventTypeFileLikeComment + return self as? DBXTeamLogEventTypeFileLikeComment } @objc public var asFileResolveComment: DBXTeamLogEventTypeFileResolveComment? { - self as? DBXTeamLogEventTypeFileResolveComment + return self as? DBXTeamLogEventTypeFileResolveComment } @objc public var asFileUnlikeComment: DBXTeamLogEventTypeFileUnlikeComment? { - self as? DBXTeamLogEventTypeFileUnlikeComment + return self as? DBXTeamLogEventTypeFileUnlikeComment } @objc public var asFileUnresolveComment: DBXTeamLogEventTypeFileUnresolveComment? { - self as? DBXTeamLogEventTypeFileUnresolveComment + return self as? DBXTeamLogEventTypeFileUnresolveComment + } + + @objc + public var asDashAddedCommentToStack: DBXTeamLogEventTypeDashAddedCommentToStack? { + return self as? DBXTeamLogEventTypeDashAddedCommentToStack + } + + @objc + public var asDashAddedConnector: DBXTeamLogEventTypeDashAddedConnector? { + return self as? DBXTeamLogEventTypeDashAddedConnector + } + + @objc + public var asDashAddedLinkToStack: DBXTeamLogEventTypeDashAddedLinkToStack? { + return self as? DBXTeamLogEventTypeDashAddedLinkToStack + } + + @objc + public var asDashAddedTeamEmailDomainAllowlist: DBXTeamLogEventTypeDashAddedTeamEmailDomainAllowlist? { + return self as? DBXTeamLogEventTypeDashAddedTeamEmailDomainAllowlist + } + + @objc + public var asDashAdminAddedOrgWideConnector: DBXTeamLogEventTypeDashAdminAddedOrgWideConnector? { + return self as? DBXTeamLogEventTypeDashAdminAddedOrgWideConnector + } + + @objc + public var asDashAdminDisabledConnector: DBXTeamLogEventTypeDashAdminDisabledConnector? { + return self as? DBXTeamLogEventTypeDashAdminDisabledConnector + } + + @objc + public var asDashAdminEnabledConnector: DBXTeamLogEventTypeDashAdminEnabledConnector? { + return self as? DBXTeamLogEventTypeDashAdminEnabledConnector + } + + @objc + public var asDashAdminRemovedOrgWideConnector: DBXTeamLogEventTypeDashAdminRemovedOrgWideConnector? { + return self as? DBXTeamLogEventTypeDashAdminRemovedOrgWideConnector + } + + @objc + public var asDashArchivedStack: DBXTeamLogEventTypeDashArchivedStack? { + return self as? DBXTeamLogEventTypeDashArchivedStack + } + + @objc + public var asDashChangedAudienceOfSharedLinkToStack: DBXTeamLogEventTypeDashChangedAudienceOfSharedLinkToStack? { + return self as? DBXTeamLogEventTypeDashChangedAudienceOfSharedLinkToStack + } + + @objc + public var asDashClonedStack: DBXTeamLogEventTypeDashClonedStack? { + return self as? DBXTeamLogEventTypeDashClonedStack + } + + @objc + public var asDashConnectorToolsCall: DBXTeamLogEventTypeDashConnectorToolsCall? { + return self as? DBXTeamLogEventTypeDashConnectorToolsCall + } + + @objc + public var asDashCreatedStack: DBXTeamLogEventTypeDashCreatedStack? { + return self as? DBXTeamLogEventTypeDashCreatedStack + } + + @objc + public var asDashDeletedCommentFromStack: DBXTeamLogEventTypeDashDeletedCommentFromStack? { + return self as? DBXTeamLogEventTypeDashDeletedCommentFromStack + } + + @objc + public var asDashDeletedStack: DBXTeamLogEventTypeDashDeletedStack? { + return self as? DBXTeamLogEventTypeDashDeletedStack + } + + @objc + public var asDashEditedCommentInStack: DBXTeamLogEventTypeDashEditedCommentInStack? { + return self as? DBXTeamLogEventTypeDashEditedCommentInStack + } + + @objc + public var asDashExternalUserOpenedStack: DBXTeamLogEventTypeDashExternalUserOpenedStack? { + return self as? DBXTeamLogEventTypeDashExternalUserOpenedStack + } + + @objc + public var asDashFirstLaunchedDesktop: DBXTeamLogEventTypeDashFirstLaunchedDesktop? { + return self as? DBXTeamLogEventTypeDashFirstLaunchedDesktop + } + + @objc + public var asDashFirstLaunchedExtension: DBXTeamLogEventTypeDashFirstLaunchedExtension? { + return self as? DBXTeamLogEventTypeDashFirstLaunchedExtension + } + + @objc + public var asDashFirstLaunchedWebStartPage: DBXTeamLogEventTypeDashFirstLaunchedWebStartPage? { + return self as? DBXTeamLogEventTypeDashFirstLaunchedWebStartPage + } + + @objc + public var asDashOpenedSharedLinkToStack: DBXTeamLogEventTypeDashOpenedSharedLinkToStack? { + return self as? DBXTeamLogEventTypeDashOpenedSharedLinkToStack + } + + @objc + public var asDashOpenedStack: DBXTeamLogEventTypeDashOpenedStack? { + return self as? DBXTeamLogEventTypeDashOpenedStack + } + + @objc + public var asDashPreviewOptOutStatusChanged: DBXTeamLogEventTypeDashPreviewOptOutStatusChanged? { + return self as? DBXTeamLogEventTypeDashPreviewOptOutStatusChanged + } + + @objc + public var asDashRemovedConnector: DBXTeamLogEventTypeDashRemovedConnector? { + return self as? DBXTeamLogEventTypeDashRemovedConnector + } + + @objc + public var asDashRemovedLinkFromStack: DBXTeamLogEventTypeDashRemovedLinkFromStack? { + return self as? DBXTeamLogEventTypeDashRemovedLinkFromStack + } + + @objc + public var asDashRemovedSharedLinkToStack: DBXTeamLogEventTypeDashRemovedSharedLinkToStack? { + return self as? DBXTeamLogEventTypeDashRemovedSharedLinkToStack + } + + @objc + public var asDashRemovedTeamEmailDomainAllowlist: DBXTeamLogEventTypeDashRemovedTeamEmailDomainAllowlist? { + return self as? DBXTeamLogEventTypeDashRemovedTeamEmailDomainAllowlist + } + + @objc + public var asDashRenamedStack: DBXTeamLogEventTypeDashRenamedStack? { + return self as? DBXTeamLogEventTypeDashRenamedStack + } + + @objc + public var asDashSharedLinkToStack: DBXTeamLogEventTypeDashSharedLinkToStack? { + return self as? DBXTeamLogEventTypeDashSharedLinkToStack + } + + @objc + public var asDashUnarchivedStack: DBXTeamLogEventTypeDashUnarchivedStack? { + return self as? DBXTeamLogEventTypeDashUnarchivedStack + } + + @objc + public var asDashViewedCompanyStack: DBXTeamLogEventTypeDashViewedCompanyStack? { + return self as? DBXTeamLogEventTypeDashViewedCompanyStack + } + + @objc + public var asDashViewedExternalAiActivityReport: DBXTeamLogEventTypeDashViewedExternalAiActivityReport? { + return self as? DBXTeamLogEventTypeDashViewedExternalAiActivityReport } @objc public var asGovernancePolicyAddFolders: DBXTeamLogEventTypeGovernancePolicyAddFolders? { - self as? DBXTeamLogEventTypeGovernancePolicyAddFolders + return self as? DBXTeamLogEventTypeGovernancePolicyAddFolders } @objc public var asGovernancePolicyAddFolderFailed: DBXTeamLogEventTypeGovernancePolicyAddFolderFailed? { - self as? DBXTeamLogEventTypeGovernancePolicyAddFolderFailed + return self as? DBXTeamLogEventTypeGovernancePolicyAddFolderFailed } @objc public var asGovernancePolicyContentDisposed: DBXTeamLogEventTypeGovernancePolicyContentDisposed? { - self as? DBXTeamLogEventTypeGovernancePolicyContentDisposed + return self as? DBXTeamLogEventTypeGovernancePolicyContentDisposed } @objc public var asGovernancePolicyCreate: DBXTeamLogEventTypeGovernancePolicyCreate? { - self as? DBXTeamLogEventTypeGovernancePolicyCreate + return self as? DBXTeamLogEventTypeGovernancePolicyCreate } @objc public var asGovernancePolicyDelete: DBXTeamLogEventTypeGovernancePolicyDelete? { - self as? DBXTeamLogEventTypeGovernancePolicyDelete + return self as? DBXTeamLogEventTypeGovernancePolicyDelete } @objc public var asGovernancePolicyEditDetails: DBXTeamLogEventTypeGovernancePolicyEditDetails? { - self as? DBXTeamLogEventTypeGovernancePolicyEditDetails + return self as? DBXTeamLogEventTypeGovernancePolicyEditDetails } @objc public var asGovernancePolicyEditDuration: DBXTeamLogEventTypeGovernancePolicyEditDuration? { - self as? DBXTeamLogEventTypeGovernancePolicyEditDuration + return self as? DBXTeamLogEventTypeGovernancePolicyEditDuration } @objc public var asGovernancePolicyExportCreated: DBXTeamLogEventTypeGovernancePolicyExportCreated? { - self as? DBXTeamLogEventTypeGovernancePolicyExportCreated + return self as? DBXTeamLogEventTypeGovernancePolicyExportCreated } @objc public var asGovernancePolicyExportRemoved: DBXTeamLogEventTypeGovernancePolicyExportRemoved? { - self as? DBXTeamLogEventTypeGovernancePolicyExportRemoved + return self as? DBXTeamLogEventTypeGovernancePolicyExportRemoved } @objc public var asGovernancePolicyRemoveFolders: DBXTeamLogEventTypeGovernancePolicyRemoveFolders? { - self as? DBXTeamLogEventTypeGovernancePolicyRemoveFolders + return self as? DBXTeamLogEventTypeGovernancePolicyRemoveFolders } @objc public var asGovernancePolicyReportCreated: DBXTeamLogEventTypeGovernancePolicyReportCreated? { - self as? DBXTeamLogEventTypeGovernancePolicyReportCreated + return self as? DBXTeamLogEventTypeGovernancePolicyReportCreated } @objc public var asGovernancePolicyZipPartDownloaded: DBXTeamLogEventTypeGovernancePolicyZipPartDownloaded? { - self as? DBXTeamLogEventTypeGovernancePolicyZipPartDownloaded + return self as? DBXTeamLogEventTypeGovernancePolicyZipPartDownloaded } @objc public var asLegalHoldsActivateAHold: DBXTeamLogEventTypeLegalHoldsActivateAHold? { - self as? DBXTeamLogEventTypeLegalHoldsActivateAHold + return self as? DBXTeamLogEventTypeLegalHoldsActivateAHold } @objc public var asLegalHoldsAddMembers: DBXTeamLogEventTypeLegalHoldsAddMembers? { - self as? DBXTeamLogEventTypeLegalHoldsAddMembers + return self as? DBXTeamLogEventTypeLegalHoldsAddMembers } @objc public var asLegalHoldsChangeHoldDetails: DBXTeamLogEventTypeLegalHoldsChangeHoldDetails? { - self as? DBXTeamLogEventTypeLegalHoldsChangeHoldDetails + return self as? DBXTeamLogEventTypeLegalHoldsChangeHoldDetails } @objc public var asLegalHoldsChangeHoldName: DBXTeamLogEventTypeLegalHoldsChangeHoldName? { - self as? DBXTeamLogEventTypeLegalHoldsChangeHoldName + return self as? DBXTeamLogEventTypeLegalHoldsChangeHoldName } @objc public var asLegalHoldsExportAHold: DBXTeamLogEventTypeLegalHoldsExportAHold? { - self as? DBXTeamLogEventTypeLegalHoldsExportAHold + return self as? DBXTeamLogEventTypeLegalHoldsExportAHold } @objc public var asLegalHoldsExportCancelled: DBXTeamLogEventTypeLegalHoldsExportCancelled? { - self as? DBXTeamLogEventTypeLegalHoldsExportCancelled + return self as? DBXTeamLogEventTypeLegalHoldsExportCancelled } @objc public var asLegalHoldsExportDownloaded: DBXTeamLogEventTypeLegalHoldsExportDownloaded? { - self as? DBXTeamLogEventTypeLegalHoldsExportDownloaded + return self as? DBXTeamLogEventTypeLegalHoldsExportDownloaded } @objc public var asLegalHoldsExportRemoved: DBXTeamLogEventTypeLegalHoldsExportRemoved? { - self as? DBXTeamLogEventTypeLegalHoldsExportRemoved + return self as? DBXTeamLogEventTypeLegalHoldsExportRemoved } @objc public var asLegalHoldsReleaseAHold: DBXTeamLogEventTypeLegalHoldsReleaseAHold? { - self as? DBXTeamLogEventTypeLegalHoldsReleaseAHold + return self as? DBXTeamLogEventTypeLegalHoldsReleaseAHold } @objc public var asLegalHoldsRemoveMembers: DBXTeamLogEventTypeLegalHoldsRemoveMembers? { - self as? DBXTeamLogEventTypeLegalHoldsRemoveMembers + return self as? DBXTeamLogEventTypeLegalHoldsRemoveMembers } @objc public var asLegalHoldsReportAHold: DBXTeamLogEventTypeLegalHoldsReportAHold? { - self as? DBXTeamLogEventTypeLegalHoldsReportAHold + return self as? DBXTeamLogEventTypeLegalHoldsReportAHold } @objc public var asDeviceChangeIpDesktop: DBXTeamLogEventTypeDeviceChangeIpDesktop? { - self as? DBXTeamLogEventTypeDeviceChangeIpDesktop + return self as? DBXTeamLogEventTypeDeviceChangeIpDesktop } @objc public var asDeviceChangeIpMobile: DBXTeamLogEventTypeDeviceChangeIpMobile? { - self as? DBXTeamLogEventTypeDeviceChangeIpMobile + return self as? DBXTeamLogEventTypeDeviceChangeIpMobile } @objc public var asDeviceChangeIpWeb: DBXTeamLogEventTypeDeviceChangeIpWeb? { - self as? DBXTeamLogEventTypeDeviceChangeIpWeb + return self as? DBXTeamLogEventTypeDeviceChangeIpWeb } @objc public var asDeviceDeleteOnUnlinkFail: DBXTeamLogEventTypeDeviceDeleteOnUnlinkFail? { - self as? DBXTeamLogEventTypeDeviceDeleteOnUnlinkFail + return self as? DBXTeamLogEventTypeDeviceDeleteOnUnlinkFail } @objc public var asDeviceDeleteOnUnlinkSuccess: DBXTeamLogEventTypeDeviceDeleteOnUnlinkSuccess? { - self as? DBXTeamLogEventTypeDeviceDeleteOnUnlinkSuccess + return self as? DBXTeamLogEventTypeDeviceDeleteOnUnlinkSuccess } @objc public var asDeviceLinkFail: DBXTeamLogEventTypeDeviceLinkFail? { - self as? DBXTeamLogEventTypeDeviceLinkFail + return self as? DBXTeamLogEventTypeDeviceLinkFail } @objc public var asDeviceLinkSuccess: DBXTeamLogEventTypeDeviceLinkSuccess? { - self as? DBXTeamLogEventTypeDeviceLinkSuccess + return self as? DBXTeamLogEventTypeDeviceLinkSuccess } @objc public var asDeviceManagementDisabled: DBXTeamLogEventTypeDeviceManagementDisabled? { - self as? DBXTeamLogEventTypeDeviceManagementDisabled + return self as? DBXTeamLogEventTypeDeviceManagementDisabled } @objc public var asDeviceManagementEnabled: DBXTeamLogEventTypeDeviceManagementEnabled? { - self as? DBXTeamLogEventTypeDeviceManagementEnabled + return self as? DBXTeamLogEventTypeDeviceManagementEnabled } @objc public var asDeviceSyncBackupStatusChanged: DBXTeamLogEventTypeDeviceSyncBackupStatusChanged? { - self as? DBXTeamLogEventTypeDeviceSyncBackupStatusChanged + return self as? DBXTeamLogEventTypeDeviceSyncBackupStatusChanged } @objc public var asDeviceUnlink: DBXTeamLogEventTypeDeviceUnlink? { - self as? DBXTeamLogEventTypeDeviceUnlink + return self as? DBXTeamLogEventTypeDeviceUnlink } @objc public var asDropboxPasswordsExported: DBXTeamLogEventTypeDropboxPasswordsExported? { - self as? DBXTeamLogEventTypeDropboxPasswordsExported + return self as? DBXTeamLogEventTypeDropboxPasswordsExported } @objc public var asDropboxPasswordsNewDeviceEnrolled: DBXTeamLogEventTypeDropboxPasswordsNewDeviceEnrolled? { - self as? DBXTeamLogEventTypeDropboxPasswordsNewDeviceEnrolled + return self as? DBXTeamLogEventTypeDropboxPasswordsNewDeviceEnrolled } @objc public var asEmmRefreshAuthToken: DBXTeamLogEventTypeEmmRefreshAuthToken? { - self as? DBXTeamLogEventTypeEmmRefreshAuthToken + return self as? DBXTeamLogEventTypeEmmRefreshAuthToken } @objc public var asExternalDriveBackupEligibilityStatusChecked: DBXTeamLogEventTypeExternalDriveBackupEligibilityStatusChecked? { - self as? DBXTeamLogEventTypeExternalDriveBackupEligibilityStatusChecked + return self as? DBXTeamLogEventTypeExternalDriveBackupEligibilityStatusChecked } @objc public var asExternalDriveBackupStatusChanged: DBXTeamLogEventTypeExternalDriveBackupStatusChanged? { - self as? DBXTeamLogEventTypeExternalDriveBackupStatusChanged + return self as? DBXTeamLogEventTypeExternalDriveBackupStatusChanged } @objc public var asAccountCaptureChangeAvailability: DBXTeamLogEventTypeAccountCaptureChangeAvailability? { - self as? DBXTeamLogEventTypeAccountCaptureChangeAvailability + return self as? DBXTeamLogEventTypeAccountCaptureChangeAvailability } @objc public var asAccountCaptureMigrateAccount: DBXTeamLogEventTypeAccountCaptureMigrateAccount? { - self as? DBXTeamLogEventTypeAccountCaptureMigrateAccount + return self as? DBXTeamLogEventTypeAccountCaptureMigrateAccount } @objc public var asAccountCaptureNotificationEmailsSent: DBXTeamLogEventTypeAccountCaptureNotificationEmailsSent? { - self as? DBXTeamLogEventTypeAccountCaptureNotificationEmailsSent + return self as? DBXTeamLogEventTypeAccountCaptureNotificationEmailsSent } @objc public var asAccountCaptureRelinquishAccount: DBXTeamLogEventTypeAccountCaptureRelinquishAccount? { - self as? DBXTeamLogEventTypeAccountCaptureRelinquishAccount + return self as? DBXTeamLogEventTypeAccountCaptureRelinquishAccount } @objc public var asDisabledDomainInvites: DBXTeamLogEventTypeDisabledDomainInvites? { - self as? DBXTeamLogEventTypeDisabledDomainInvites + return self as? DBXTeamLogEventTypeDisabledDomainInvites } @objc public var asDomainInvitesApproveRequestToJoinTeam: DBXTeamLogEventTypeDomainInvitesApproveRequestToJoinTeam? { - self as? DBXTeamLogEventTypeDomainInvitesApproveRequestToJoinTeam + return self as? DBXTeamLogEventTypeDomainInvitesApproveRequestToJoinTeam } @objc public var asDomainInvitesDeclineRequestToJoinTeam: DBXTeamLogEventTypeDomainInvitesDeclineRequestToJoinTeam? { - self as? DBXTeamLogEventTypeDomainInvitesDeclineRequestToJoinTeam + return self as? DBXTeamLogEventTypeDomainInvitesDeclineRequestToJoinTeam } @objc public var asDomainInvitesEmailExistingUsers: DBXTeamLogEventTypeDomainInvitesEmailExistingUsers? { - self as? DBXTeamLogEventTypeDomainInvitesEmailExistingUsers + return self as? DBXTeamLogEventTypeDomainInvitesEmailExistingUsers } @objc public var asDomainInvitesRequestToJoinTeam: DBXTeamLogEventTypeDomainInvitesRequestToJoinTeam? { - self as? DBXTeamLogEventTypeDomainInvitesRequestToJoinTeam + return self as? DBXTeamLogEventTypeDomainInvitesRequestToJoinTeam } @objc public var asDomainInvitesSetInviteNewUserPrefToNo: DBXTeamLogEventTypeDomainInvitesSetInviteNewUserPrefToNo? { - self as? DBXTeamLogEventTypeDomainInvitesSetInviteNewUserPrefToNo + return self as? DBXTeamLogEventTypeDomainInvitesSetInviteNewUserPrefToNo } @objc public var asDomainInvitesSetInviteNewUserPrefToYes: DBXTeamLogEventTypeDomainInvitesSetInviteNewUserPrefToYes? { - self as? DBXTeamLogEventTypeDomainInvitesSetInviteNewUserPrefToYes + return self as? DBXTeamLogEventTypeDomainInvitesSetInviteNewUserPrefToYes } @objc public var asDomainVerificationAddDomainFail: DBXTeamLogEventTypeDomainVerificationAddDomainFail? { - self as? DBXTeamLogEventTypeDomainVerificationAddDomainFail + return self as? DBXTeamLogEventTypeDomainVerificationAddDomainFail } @objc public var asDomainVerificationAddDomainSuccess: DBXTeamLogEventTypeDomainVerificationAddDomainSuccess? { - self as? DBXTeamLogEventTypeDomainVerificationAddDomainSuccess + return self as? DBXTeamLogEventTypeDomainVerificationAddDomainSuccess } @objc public var asDomainVerificationRemoveDomain: DBXTeamLogEventTypeDomainVerificationRemoveDomain? { - self as? DBXTeamLogEventTypeDomainVerificationRemoveDomain + return self as? DBXTeamLogEventTypeDomainVerificationRemoveDomain } @objc public var asEnabledDomainInvites: DBXTeamLogEventTypeEnabledDomainInvites? { - self as? DBXTeamLogEventTypeEnabledDomainInvites + return self as? DBXTeamLogEventTypeEnabledDomainInvites + } + + @objc + public var asEncryptedFolderCancelTeamKeyRotation: DBXTeamLogEventTypeEncryptedFolderCancelTeamKeyRotation? { + return self as? DBXTeamLogEventTypeEncryptedFolderCancelTeamKeyRotation + } + + @objc + public var asEncryptedFolderEnrollBackupKey: DBXTeamLogEventTypeEncryptedFolderEnrollBackupKey? { + return self as? DBXTeamLogEventTypeEncryptedFolderEnrollBackupKey + } + + @objc + public var asEncryptedFolderEnrollClient: DBXTeamLogEventTypeEncryptedFolderEnrollClient? { + return self as? DBXTeamLogEventTypeEncryptedFolderEnrollClient + } + + @objc + public var asEncryptedFolderEnrollTeam: DBXTeamLogEventTypeEncryptedFolderEnrollTeam? { + return self as? DBXTeamLogEventTypeEncryptedFolderEnrollTeam + } + + @objc + public var asEncryptedFolderFinishTeamUnenrollment: DBXTeamLogEventTypeEncryptedFolderFinishTeamUnenrollment? { + return self as? DBXTeamLogEventTypeEncryptedFolderFinishTeamUnenrollment + } + + @objc + public var asEncryptedFolderInitTeamKeyRotation: DBXTeamLogEventTypeEncryptedFolderInitTeamKeyRotation? { + return self as? DBXTeamLogEventTypeEncryptedFolderInitTeamKeyRotation + } + + @objc + public var asEncryptedFolderInitTeamUnenrollment: DBXTeamLogEventTypeEncryptedFolderInitTeamUnenrollment? { + return self as? DBXTeamLogEventTypeEncryptedFolderInitTeamUnenrollment + } + + @objc + public var asEncryptedFolderRemoveBackupKey: DBXTeamLogEventTypeEncryptedFolderRemoveBackupKey? { + return self as? DBXTeamLogEventTypeEncryptedFolderRemoveBackupKey + } + + @objc + public var asEncryptedFolderRotateTeamKey: DBXTeamLogEventTypeEncryptedFolderRotateTeamKey? { + return self as? DBXTeamLogEventTypeEncryptedFolderRotateTeamKey + } + + @objc + public var asEncryptedFolderUnenrollClient: DBXTeamLogEventTypeEncryptedFolderUnenrollClient? { + return self as? DBXTeamLogEventTypeEncryptedFolderUnenrollClient + } + + @objc + public var asTeamEncryptionKeyActivateKey: DBXTeamLogEventTypeTeamEncryptionKeyActivateKey? { + return self as? DBXTeamLogEventTypeTeamEncryptionKeyActivateKey } @objc public var asTeamEncryptionKeyCancelKeyDeletion: DBXTeamLogEventTypeTeamEncryptionKeyCancelKeyDeletion? { - self as? DBXTeamLogEventTypeTeamEncryptionKeyCancelKeyDeletion + return self as? DBXTeamLogEventTypeTeamEncryptionKeyCancelKeyDeletion } @objc public var asTeamEncryptionKeyCreateKey: DBXTeamLogEventTypeTeamEncryptionKeyCreateKey? { - self as? DBXTeamLogEventTypeTeamEncryptionKeyCreateKey + return self as? DBXTeamLogEventTypeTeamEncryptionKeyCreateKey + } + + @objc + public var asTeamEncryptionKeyDeactivateKey: DBXTeamLogEventTypeTeamEncryptionKeyDeactivateKey? { + return self as? DBXTeamLogEventTypeTeamEncryptionKeyDeactivateKey } @objc public var asTeamEncryptionKeyDeleteKey: DBXTeamLogEventTypeTeamEncryptionKeyDeleteKey? { - self as? DBXTeamLogEventTypeTeamEncryptionKeyDeleteKey + return self as? DBXTeamLogEventTypeTeamEncryptionKeyDeleteKey } @objc public var asTeamEncryptionKeyDisableKey: DBXTeamLogEventTypeTeamEncryptionKeyDisableKey? { - self as? DBXTeamLogEventTypeTeamEncryptionKeyDisableKey + return self as? DBXTeamLogEventTypeTeamEncryptionKeyDisableKey } @objc public var asTeamEncryptionKeyEnableKey: DBXTeamLogEventTypeTeamEncryptionKeyEnableKey? { - self as? DBXTeamLogEventTypeTeamEncryptionKeyEnableKey + return self as? DBXTeamLogEventTypeTeamEncryptionKeyEnableKey } @objc public var asTeamEncryptionKeyRotateKey: DBXTeamLogEventTypeTeamEncryptionKeyRotateKey? { - self as? DBXTeamLogEventTypeTeamEncryptionKeyRotateKey + return self as? DBXTeamLogEventTypeTeamEncryptionKeyRotateKey } @objc public var asTeamEncryptionKeyScheduleKeyDeletion: DBXTeamLogEventTypeTeamEncryptionKeyScheduleKeyDeletion? { - self as? DBXTeamLogEventTypeTeamEncryptionKeyScheduleKeyDeletion + return self as? DBXTeamLogEventTypeTeamEncryptionKeyScheduleKeyDeletion } @objc public var asApplyNamingConvention: DBXTeamLogEventTypeApplyNamingConvention? { - self as? DBXTeamLogEventTypeApplyNamingConvention + return self as? DBXTeamLogEventTypeApplyNamingConvention } @objc public var asCreateFolder: DBXTeamLogEventTypeCreateFolder? { - self as? DBXTeamLogEventTypeCreateFolder + return self as? DBXTeamLogEventTypeCreateFolder } @objc public var asFileAdd: DBXTeamLogEventTypeFileAdd? { - self as? DBXTeamLogEventTypeFileAdd + return self as? DBXTeamLogEventTypeFileAdd } @objc public var asFileAddFromAutomation: DBXTeamLogEventTypeFileAddFromAutomation? { - self as? DBXTeamLogEventTypeFileAddFromAutomation + return self as? DBXTeamLogEventTypeFileAddFromAutomation } @objc public var asFileCopy: DBXTeamLogEventTypeFileCopy? { - self as? DBXTeamLogEventTypeFileCopy + return self as? DBXTeamLogEventTypeFileCopy } @objc public var asFileDelete: DBXTeamLogEventTypeFileDelete? { - self as? DBXTeamLogEventTypeFileDelete + return self as? DBXTeamLogEventTypeFileDelete } @objc public var asFileDownload: DBXTeamLogEventTypeFileDownload? { - self as? DBXTeamLogEventTypeFileDownload + return self as? DBXTeamLogEventTypeFileDownload } @objc public var asFileEdit: DBXTeamLogEventTypeFileEdit? { - self as? DBXTeamLogEventTypeFileEdit + return self as? DBXTeamLogEventTypeFileEdit } @objc public var asFileGetCopyReference: DBXTeamLogEventTypeFileGetCopyReference? { - self as? DBXTeamLogEventTypeFileGetCopyReference + return self as? DBXTeamLogEventTypeFileGetCopyReference } @objc public var asFileLockingLockStatusChanged: DBXTeamLogEventTypeFileLockingLockStatusChanged? { - self as? DBXTeamLogEventTypeFileLockingLockStatusChanged + return self as? DBXTeamLogEventTypeFileLockingLockStatusChanged } @objc public var asFileMove: DBXTeamLogEventTypeFileMove? { - self as? DBXTeamLogEventTypeFileMove + return self as? DBXTeamLogEventTypeFileMove } @objc public var asFilePermanentlyDelete: DBXTeamLogEventTypeFilePermanentlyDelete? { - self as? DBXTeamLogEventTypeFilePermanentlyDelete + return self as? DBXTeamLogEventTypeFilePermanentlyDelete } @objc public var asFilePreview: DBXTeamLogEventTypeFilePreview? { - self as? DBXTeamLogEventTypeFilePreview + return self as? DBXTeamLogEventTypeFilePreview } @objc public var asFileRename: DBXTeamLogEventTypeFileRename? { - self as? DBXTeamLogEventTypeFileRename + return self as? DBXTeamLogEventTypeFileRename } @objc public var asFileRestore: DBXTeamLogEventTypeFileRestore? { - self as? DBXTeamLogEventTypeFileRestore + return self as? DBXTeamLogEventTypeFileRestore } @objc public var asFileRevert: DBXTeamLogEventTypeFileRevert? { - self as? DBXTeamLogEventTypeFileRevert + return self as? DBXTeamLogEventTypeFileRevert } @objc public var asFileRollbackChanges: DBXTeamLogEventTypeFileRollbackChanges? { - self as? DBXTeamLogEventTypeFileRollbackChanges + return self as? DBXTeamLogEventTypeFileRollbackChanges } @objc public var asFileSaveCopyReference: DBXTeamLogEventTypeFileSaveCopyReference? { - self as? DBXTeamLogEventTypeFileSaveCopyReference + return self as? DBXTeamLogEventTypeFileSaveCopyReference } @objc public var asFolderOverviewDescriptionChanged: DBXTeamLogEventTypeFolderOverviewDescriptionChanged? { - self as? DBXTeamLogEventTypeFolderOverviewDescriptionChanged + return self as? DBXTeamLogEventTypeFolderOverviewDescriptionChanged } @objc public var asFolderOverviewItemPinned: DBXTeamLogEventTypeFolderOverviewItemPinned? { - self as? DBXTeamLogEventTypeFolderOverviewItemPinned + return self as? DBXTeamLogEventTypeFolderOverviewItemPinned } @objc public var asFolderOverviewItemUnpinned: DBXTeamLogEventTypeFolderOverviewItemUnpinned? { - self as? DBXTeamLogEventTypeFolderOverviewItemUnpinned + return self as? DBXTeamLogEventTypeFolderOverviewItemUnpinned + } + + @objc + public var asMediaHubFileDownloaded: DBXTeamLogEventTypeMediaHubFileDownloaded? { + return self as? DBXTeamLogEventTypeMediaHubFileDownloaded } @objc public var asObjectLabelAdded: DBXTeamLogEventTypeObjectLabelAdded? { - self as? DBXTeamLogEventTypeObjectLabelAdded + return self as? DBXTeamLogEventTypeObjectLabelAdded } @objc public var asObjectLabelRemoved: DBXTeamLogEventTypeObjectLabelRemoved? { - self as? DBXTeamLogEventTypeObjectLabelRemoved + return self as? DBXTeamLogEventTypeObjectLabelRemoved } @objc public var asObjectLabelUpdatedValue: DBXTeamLogEventTypeObjectLabelUpdatedValue? { - self as? DBXTeamLogEventTypeObjectLabelUpdatedValue + return self as? DBXTeamLogEventTypeObjectLabelUpdatedValue } @objc public var asOrganizeFolderWithTidy: DBXTeamLogEventTypeOrganizeFolderWithTidy? { - self as? DBXTeamLogEventTypeOrganizeFolderWithTidy + return self as? DBXTeamLogEventTypeOrganizeFolderWithTidy } @objc public var asReplayFileDelete: DBXTeamLogEventTypeReplayFileDelete? { - self as? DBXTeamLogEventTypeReplayFileDelete + return self as? DBXTeamLogEventTypeReplayFileDelete + } + + @objc + public var asReplayFileDownloaded: DBXTeamLogEventTypeReplayFileDownloaded? { + return self as? DBXTeamLogEventTypeReplayFileDownloaded + } + + @objc + public var asReplayTeamProjectCreated: DBXTeamLogEventTypeReplayTeamProjectCreated? { + return self as? DBXTeamLogEventTypeReplayTeamProjectCreated } @objc public var asRewindFolder: DBXTeamLogEventTypeRewindFolder? { - self as? DBXTeamLogEventTypeRewindFolder + return self as? DBXTeamLogEventTypeRewindFolder } @objc public var asUndoNamingConvention: DBXTeamLogEventTypeUndoNamingConvention? { - self as? DBXTeamLogEventTypeUndoNamingConvention + return self as? DBXTeamLogEventTypeUndoNamingConvention } @objc public var asUndoOrganizeFolderWithTidy: DBXTeamLogEventTypeUndoOrganizeFolderWithTidy? { - self as? DBXTeamLogEventTypeUndoOrganizeFolderWithTidy + return self as? DBXTeamLogEventTypeUndoOrganizeFolderWithTidy } @objc public var asUserTagsAdded: DBXTeamLogEventTypeUserTagsAdded? { - self as? DBXTeamLogEventTypeUserTagsAdded + return self as? DBXTeamLogEventTypeUserTagsAdded } @objc public var asUserTagsRemoved: DBXTeamLogEventTypeUserTagsRemoved? { - self as? DBXTeamLogEventTypeUserTagsRemoved + return self as? DBXTeamLogEventTypeUserTagsRemoved } @objc public var asEmailIngestReceiveFile: DBXTeamLogEventTypeEmailIngestReceiveFile? { - self as? DBXTeamLogEventTypeEmailIngestReceiveFile + return self as? DBXTeamLogEventTypeEmailIngestReceiveFile + } + + @objc + public var asFileRequestAutoClose: DBXTeamLogEventTypeFileRequestAutoClose? { + return self as? DBXTeamLogEventTypeFileRequestAutoClose } @objc public var asFileRequestChange: DBXTeamLogEventTypeFileRequestChange? { - self as? DBXTeamLogEventTypeFileRequestChange + return self as? DBXTeamLogEventTypeFileRequestChange } @objc public var asFileRequestClose: DBXTeamLogEventTypeFileRequestClose? { - self as? DBXTeamLogEventTypeFileRequestClose + return self as? DBXTeamLogEventTypeFileRequestClose } @objc public var asFileRequestCreate: DBXTeamLogEventTypeFileRequestCreate? { - self as? DBXTeamLogEventTypeFileRequestCreate + return self as? DBXTeamLogEventTypeFileRequestCreate } @objc public var asFileRequestDelete: DBXTeamLogEventTypeFileRequestDelete? { - self as? DBXTeamLogEventTypeFileRequestDelete + return self as? DBXTeamLogEventTypeFileRequestDelete } @objc public var asFileRequestReceiveFile: DBXTeamLogEventTypeFileRequestReceiveFile? { - self as? DBXTeamLogEventTypeFileRequestReceiveFile + return self as? DBXTeamLogEventTypeFileRequestReceiveFile } @objc public var asGroupAddExternalId: DBXTeamLogEventTypeGroupAddExternalId? { - self as? DBXTeamLogEventTypeGroupAddExternalId + return self as? DBXTeamLogEventTypeGroupAddExternalId } @objc public var asGroupAddMember: DBXTeamLogEventTypeGroupAddMember? { - self as? DBXTeamLogEventTypeGroupAddMember + return self as? DBXTeamLogEventTypeGroupAddMember } @objc public var asGroupChangeExternalId: DBXTeamLogEventTypeGroupChangeExternalId? { - self as? DBXTeamLogEventTypeGroupChangeExternalId + return self as? DBXTeamLogEventTypeGroupChangeExternalId } @objc public var asGroupChangeManagementType: DBXTeamLogEventTypeGroupChangeManagementType? { - self as? DBXTeamLogEventTypeGroupChangeManagementType + return self as? DBXTeamLogEventTypeGroupChangeManagementType } @objc public var asGroupChangeMemberRole: DBXTeamLogEventTypeGroupChangeMemberRole? { - self as? DBXTeamLogEventTypeGroupChangeMemberRole + return self as? DBXTeamLogEventTypeGroupChangeMemberRole } @objc public var asGroupCreate: DBXTeamLogEventTypeGroupCreate? { - self as? DBXTeamLogEventTypeGroupCreate + return self as? DBXTeamLogEventTypeGroupCreate } @objc public var asGroupDelete: DBXTeamLogEventTypeGroupDelete? { - self as? DBXTeamLogEventTypeGroupDelete + return self as? DBXTeamLogEventTypeGroupDelete } @objc public var asGroupDescriptionUpdated: DBXTeamLogEventTypeGroupDescriptionUpdated? { - self as? DBXTeamLogEventTypeGroupDescriptionUpdated + return self as? DBXTeamLogEventTypeGroupDescriptionUpdated + } + + @objc + public var asGroupExternalSharingSettingOverrideChanged: DBXTeamLogEventTypeGroupExternalSharingSettingOverrideChanged? { + return self as? DBXTeamLogEventTypeGroupExternalSharingSettingOverrideChanged } @objc public var asGroupJoinPolicyUpdated: DBXTeamLogEventTypeGroupJoinPolicyUpdated? { - self as? DBXTeamLogEventTypeGroupJoinPolicyUpdated + return self as? DBXTeamLogEventTypeGroupJoinPolicyUpdated } @objc public var asGroupMoved: DBXTeamLogEventTypeGroupMoved? { - self as? DBXTeamLogEventTypeGroupMoved + return self as? DBXTeamLogEventTypeGroupMoved } @objc public var asGroupRemoveExternalId: DBXTeamLogEventTypeGroupRemoveExternalId? { - self as? DBXTeamLogEventTypeGroupRemoveExternalId + return self as? DBXTeamLogEventTypeGroupRemoveExternalId } @objc public var asGroupRemoveMember: DBXTeamLogEventTypeGroupRemoveMember? { - self as? DBXTeamLogEventTypeGroupRemoveMember + return self as? DBXTeamLogEventTypeGroupRemoveMember } @objc public var asGroupRename: DBXTeamLogEventTypeGroupRename? { - self as? DBXTeamLogEventTypeGroupRename + return self as? DBXTeamLogEventTypeGroupRename } @objc public var asAccountLockOrUnlocked: DBXTeamLogEventTypeAccountLockOrUnlocked? { - self as? DBXTeamLogEventTypeAccountLockOrUnlocked + return self as? DBXTeamLogEventTypeAccountLockOrUnlocked } @objc public var asEmmError: DBXTeamLogEventTypeEmmError? { - self as? DBXTeamLogEventTypeEmmError + return self as? DBXTeamLogEventTypeEmmError } @objc public var asGuestAdminSignedInViaTrustedTeams: DBXTeamLogEventTypeGuestAdminSignedInViaTrustedTeams? { - self as? DBXTeamLogEventTypeGuestAdminSignedInViaTrustedTeams + return self as? DBXTeamLogEventTypeGuestAdminSignedInViaTrustedTeams } @objc public var asGuestAdminSignedOutViaTrustedTeams: DBXTeamLogEventTypeGuestAdminSignedOutViaTrustedTeams? { - self as? DBXTeamLogEventTypeGuestAdminSignedOutViaTrustedTeams + return self as? DBXTeamLogEventTypeGuestAdminSignedOutViaTrustedTeams } @objc public var asLoginFail: DBXTeamLogEventTypeLoginFail? { - self as? DBXTeamLogEventTypeLoginFail + return self as? DBXTeamLogEventTypeLoginFail } @objc public var asLoginSuccess: DBXTeamLogEventTypeLoginSuccess? { - self as? DBXTeamLogEventTypeLoginSuccess + return self as? DBXTeamLogEventTypeLoginSuccess } @objc public var asLogout: DBXTeamLogEventTypeLogout? { - self as? DBXTeamLogEventTypeLogout + return self as? DBXTeamLogEventTypeLogout } @objc public var asResellerSupportSessionEnd: DBXTeamLogEventTypeResellerSupportSessionEnd? { - self as? DBXTeamLogEventTypeResellerSupportSessionEnd + return self as? DBXTeamLogEventTypeResellerSupportSessionEnd } @objc public var asResellerSupportSessionStart: DBXTeamLogEventTypeResellerSupportSessionStart? { - self as? DBXTeamLogEventTypeResellerSupportSessionStart + return self as? DBXTeamLogEventTypeResellerSupportSessionStart } @objc public var asSignInAsSessionEnd: DBXTeamLogEventTypeSignInAsSessionEnd? { - self as? DBXTeamLogEventTypeSignInAsSessionEnd + return self as? DBXTeamLogEventTypeSignInAsSessionEnd } @objc public var asSignInAsSessionStart: DBXTeamLogEventTypeSignInAsSessionStart? { - self as? DBXTeamLogEventTypeSignInAsSessionStart + return self as? DBXTeamLogEventTypeSignInAsSessionStart } @objc public var asSsoError: DBXTeamLogEventTypeSsoError? { - self as? DBXTeamLogEventTypeSsoError + return self as? DBXTeamLogEventTypeSsoError + } + + @objc + public var asAddonAssigned: DBXTeamLogEventTypeAddonAssigned? { + return self as? DBXTeamLogEventTypeAddonAssigned + } + + @objc + public var asAddonRemoved: DBXTeamLogEventTypeAddonRemoved? { + return self as? DBXTeamLogEventTypeAddonRemoved } @objc public var asBackupAdminInvitationSent: DBXTeamLogEventTypeBackupAdminInvitationSent? { - self as? DBXTeamLogEventTypeBackupAdminInvitationSent + return self as? DBXTeamLogEventTypeBackupAdminInvitationSent } @objc public var asBackupInvitationOpened: DBXTeamLogEventTypeBackupInvitationOpened? { - self as? DBXTeamLogEventTypeBackupInvitationOpened + return self as? DBXTeamLogEventTypeBackupInvitationOpened } @objc public var asCreateTeamInviteLink: DBXTeamLogEventTypeCreateTeamInviteLink? { - self as? DBXTeamLogEventTypeCreateTeamInviteLink + return self as? DBXTeamLogEventTypeCreateTeamInviteLink } @objc public var asDeleteTeamInviteLink: DBXTeamLogEventTypeDeleteTeamInviteLink? { - self as? DBXTeamLogEventTypeDeleteTeamInviteLink + return self as? DBXTeamLogEventTypeDeleteTeamInviteLink } @objc public var asMemberAddExternalId: DBXTeamLogEventTypeMemberAddExternalId? { - self as? DBXTeamLogEventTypeMemberAddExternalId + return self as? DBXTeamLogEventTypeMemberAddExternalId } @objc public var asMemberAddName: DBXTeamLogEventTypeMemberAddName? { - self as? DBXTeamLogEventTypeMemberAddName + return self as? DBXTeamLogEventTypeMemberAddName } @objc public var asMemberChangeAdminRole: DBXTeamLogEventTypeMemberChangeAdminRole? { - self as? DBXTeamLogEventTypeMemberChangeAdminRole + return self as? DBXTeamLogEventTypeMemberChangeAdminRole } @objc public var asMemberChangeEmail: DBXTeamLogEventTypeMemberChangeEmail? { - self as? DBXTeamLogEventTypeMemberChangeEmail + return self as? DBXTeamLogEventTypeMemberChangeEmail } @objc public var asMemberChangeExternalId: DBXTeamLogEventTypeMemberChangeExternalId? { - self as? DBXTeamLogEventTypeMemberChangeExternalId + return self as? DBXTeamLogEventTypeMemberChangeExternalId } @objc public var asMemberChangeMembershipType: DBXTeamLogEventTypeMemberChangeMembershipType? { - self as? DBXTeamLogEventTypeMemberChangeMembershipType + return self as? DBXTeamLogEventTypeMemberChangeMembershipType } @objc public var asMemberChangeName: DBXTeamLogEventTypeMemberChangeName? { - self as? DBXTeamLogEventTypeMemberChangeName + return self as? DBXTeamLogEventTypeMemberChangeName } @objc public var asMemberChangeResellerRole: DBXTeamLogEventTypeMemberChangeResellerRole? { - self as? DBXTeamLogEventTypeMemberChangeResellerRole + return self as? DBXTeamLogEventTypeMemberChangeResellerRole } @objc public var asMemberChangeStatus: DBXTeamLogEventTypeMemberChangeStatus? { - self as? DBXTeamLogEventTypeMemberChangeStatus + return self as? DBXTeamLogEventTypeMemberChangeStatus } @objc public var asMemberDeleteManualContacts: DBXTeamLogEventTypeMemberDeleteManualContacts? { - self as? DBXTeamLogEventTypeMemberDeleteManualContacts + return self as? DBXTeamLogEventTypeMemberDeleteManualContacts } @objc public var asMemberDeleteProfilePhoto: DBXTeamLogEventTypeMemberDeleteProfilePhoto? { - self as? DBXTeamLogEventTypeMemberDeleteProfilePhoto + return self as? DBXTeamLogEventTypeMemberDeleteProfilePhoto + } + + @objc + public var asMemberFolderContentsAccessed: DBXTeamLogEventTypeMemberFolderContentsAccessed? { + return self as? DBXTeamLogEventTypeMemberFolderContentsAccessed } @objc public var asMemberPermanentlyDeleteAccountContents: DBXTeamLogEventTypeMemberPermanentlyDeleteAccountContents? { - self as? DBXTeamLogEventTypeMemberPermanentlyDeleteAccountContents + return self as? DBXTeamLogEventTypeMemberPermanentlyDeleteAccountContents } @objc public var asMemberRemoveExternalId: DBXTeamLogEventTypeMemberRemoveExternalId? { - self as? DBXTeamLogEventTypeMemberRemoveExternalId + return self as? DBXTeamLogEventTypeMemberRemoveExternalId } @objc public var asMemberSetProfilePhoto: DBXTeamLogEventTypeMemberSetProfilePhoto? { - self as? DBXTeamLogEventTypeMemberSetProfilePhoto + return self as? DBXTeamLogEventTypeMemberSetProfilePhoto } @objc public var asMemberSpaceLimitsAddCustomQuota: DBXTeamLogEventTypeMemberSpaceLimitsAddCustomQuota? { - self as? DBXTeamLogEventTypeMemberSpaceLimitsAddCustomQuota + return self as? DBXTeamLogEventTypeMemberSpaceLimitsAddCustomQuota } @objc public var asMemberSpaceLimitsChangeCustomQuota: DBXTeamLogEventTypeMemberSpaceLimitsChangeCustomQuota? { - self as? DBXTeamLogEventTypeMemberSpaceLimitsChangeCustomQuota + return self as? DBXTeamLogEventTypeMemberSpaceLimitsChangeCustomQuota } @objc public var asMemberSpaceLimitsChangeStatus: DBXTeamLogEventTypeMemberSpaceLimitsChangeStatus? { - self as? DBXTeamLogEventTypeMemberSpaceLimitsChangeStatus + return self as? DBXTeamLogEventTypeMemberSpaceLimitsChangeStatus } @objc public var asMemberSpaceLimitsRemoveCustomQuota: DBXTeamLogEventTypeMemberSpaceLimitsRemoveCustomQuota? { - self as? DBXTeamLogEventTypeMemberSpaceLimitsRemoveCustomQuota + return self as? DBXTeamLogEventTypeMemberSpaceLimitsRemoveCustomQuota } @objc public var asMemberSuggest: DBXTeamLogEventTypeMemberSuggest? { - self as? DBXTeamLogEventTypeMemberSuggest + return self as? DBXTeamLogEventTypeMemberSuggest } @objc public var asMemberTransferAccountContents: DBXTeamLogEventTypeMemberTransferAccountContents? { - self as? DBXTeamLogEventTypeMemberTransferAccountContents + return self as? DBXTeamLogEventTypeMemberTransferAccountContents } @objc public var asPendingSecondaryEmailAdded: DBXTeamLogEventTypePendingSecondaryEmailAdded? { - self as? DBXTeamLogEventTypePendingSecondaryEmailAdded + return self as? DBXTeamLogEventTypePendingSecondaryEmailAdded + } + + @objc + public var asProductAssignedToMember: DBXTeamLogEventTypeProductAssignedToMember? { + return self as? DBXTeamLogEventTypeProductAssignedToMember + } + + @objc + public var asProductRemovedFromMember: DBXTeamLogEventTypeProductRemovedFromMember? { + return self as? DBXTeamLogEventTypeProductRemovedFromMember } @objc public var asSecondaryEmailDeleted: DBXTeamLogEventTypeSecondaryEmailDeleted? { - self as? DBXTeamLogEventTypeSecondaryEmailDeleted + return self as? DBXTeamLogEventTypeSecondaryEmailDeleted } @objc public var asSecondaryEmailVerified: DBXTeamLogEventTypeSecondaryEmailVerified? { - self as? DBXTeamLogEventTypeSecondaryEmailVerified + return self as? DBXTeamLogEventTypeSecondaryEmailVerified } @objc public var asSecondaryMailsPolicyChanged: DBXTeamLogEventTypeSecondaryMailsPolicyChanged? { - self as? DBXTeamLogEventTypeSecondaryMailsPolicyChanged + return self as? DBXTeamLogEventTypeSecondaryMailsPolicyChanged } @objc public var asBinderAddPage: DBXTeamLogEventTypeBinderAddPage? { - self as? DBXTeamLogEventTypeBinderAddPage + return self as? DBXTeamLogEventTypeBinderAddPage } @objc public var asBinderAddSection: DBXTeamLogEventTypeBinderAddSection? { - self as? DBXTeamLogEventTypeBinderAddSection + return self as? DBXTeamLogEventTypeBinderAddSection } @objc public var asBinderRemovePage: DBXTeamLogEventTypeBinderRemovePage? { - self as? DBXTeamLogEventTypeBinderRemovePage + return self as? DBXTeamLogEventTypeBinderRemovePage } @objc public var asBinderRemoveSection: DBXTeamLogEventTypeBinderRemoveSection? { - self as? DBXTeamLogEventTypeBinderRemoveSection + return self as? DBXTeamLogEventTypeBinderRemoveSection } @objc public var asBinderRenamePage: DBXTeamLogEventTypeBinderRenamePage? { - self as? DBXTeamLogEventTypeBinderRenamePage + return self as? DBXTeamLogEventTypeBinderRenamePage } @objc public var asBinderRenameSection: DBXTeamLogEventTypeBinderRenameSection? { - self as? DBXTeamLogEventTypeBinderRenameSection + return self as? DBXTeamLogEventTypeBinderRenameSection } @objc public var asBinderReorderPage: DBXTeamLogEventTypeBinderReorderPage? { - self as? DBXTeamLogEventTypeBinderReorderPage + return self as? DBXTeamLogEventTypeBinderReorderPage } @objc public var asBinderReorderSection: DBXTeamLogEventTypeBinderReorderSection? { - self as? DBXTeamLogEventTypeBinderReorderSection + return self as? DBXTeamLogEventTypeBinderReorderSection } @objc public var asPaperContentAddMember: DBXTeamLogEventTypePaperContentAddMember? { - self as? DBXTeamLogEventTypePaperContentAddMember + return self as? DBXTeamLogEventTypePaperContentAddMember } @objc public var asPaperContentAddToFolder: DBXTeamLogEventTypePaperContentAddToFolder? { - self as? DBXTeamLogEventTypePaperContentAddToFolder + return self as? DBXTeamLogEventTypePaperContentAddToFolder } @objc public var asPaperContentArchive: DBXTeamLogEventTypePaperContentArchive? { - self as? DBXTeamLogEventTypePaperContentArchive + return self as? DBXTeamLogEventTypePaperContentArchive } @objc public var asPaperContentCreate: DBXTeamLogEventTypePaperContentCreate? { - self as? DBXTeamLogEventTypePaperContentCreate + return self as? DBXTeamLogEventTypePaperContentCreate } @objc public var asPaperContentPermanentlyDelete: DBXTeamLogEventTypePaperContentPermanentlyDelete? { - self as? DBXTeamLogEventTypePaperContentPermanentlyDelete + return self as? DBXTeamLogEventTypePaperContentPermanentlyDelete } @objc public var asPaperContentRemoveFromFolder: DBXTeamLogEventTypePaperContentRemoveFromFolder? { - self as? DBXTeamLogEventTypePaperContentRemoveFromFolder + return self as? DBXTeamLogEventTypePaperContentRemoveFromFolder } @objc public var asPaperContentRemoveMember: DBXTeamLogEventTypePaperContentRemoveMember? { - self as? DBXTeamLogEventTypePaperContentRemoveMember + return self as? DBXTeamLogEventTypePaperContentRemoveMember } @objc public var asPaperContentRename: DBXTeamLogEventTypePaperContentRename? { - self as? DBXTeamLogEventTypePaperContentRename + return self as? DBXTeamLogEventTypePaperContentRename } @objc public var asPaperContentRestore: DBXTeamLogEventTypePaperContentRestore? { - self as? DBXTeamLogEventTypePaperContentRestore + return self as? DBXTeamLogEventTypePaperContentRestore } @objc public var asPaperDocAddComment: DBXTeamLogEventTypePaperDocAddComment? { - self as? DBXTeamLogEventTypePaperDocAddComment + return self as? DBXTeamLogEventTypePaperDocAddComment } @objc public var asPaperDocChangeMemberRole: DBXTeamLogEventTypePaperDocChangeMemberRole? { - self as? DBXTeamLogEventTypePaperDocChangeMemberRole + return self as? DBXTeamLogEventTypePaperDocChangeMemberRole } @objc public var asPaperDocChangeSharingPolicy: DBXTeamLogEventTypePaperDocChangeSharingPolicy? { - self as? DBXTeamLogEventTypePaperDocChangeSharingPolicy + return self as? DBXTeamLogEventTypePaperDocChangeSharingPolicy } @objc public var asPaperDocChangeSubscription: DBXTeamLogEventTypePaperDocChangeSubscription? { - self as? DBXTeamLogEventTypePaperDocChangeSubscription + return self as? DBXTeamLogEventTypePaperDocChangeSubscription } @objc public var asPaperDocDeleted: DBXTeamLogEventTypePaperDocDeleted? { - self as? DBXTeamLogEventTypePaperDocDeleted + return self as? DBXTeamLogEventTypePaperDocDeleted } @objc public var asPaperDocDeleteComment: DBXTeamLogEventTypePaperDocDeleteComment? { - self as? DBXTeamLogEventTypePaperDocDeleteComment + return self as? DBXTeamLogEventTypePaperDocDeleteComment } @objc public var asPaperDocDownload: DBXTeamLogEventTypePaperDocDownload? { - self as? DBXTeamLogEventTypePaperDocDownload + return self as? DBXTeamLogEventTypePaperDocDownload } @objc public var asPaperDocEdit: DBXTeamLogEventTypePaperDocEdit? { - self as? DBXTeamLogEventTypePaperDocEdit + return self as? DBXTeamLogEventTypePaperDocEdit } @objc public var asPaperDocEditComment: DBXTeamLogEventTypePaperDocEditComment? { - self as? DBXTeamLogEventTypePaperDocEditComment + return self as? DBXTeamLogEventTypePaperDocEditComment } @objc public var asPaperDocFollowed: DBXTeamLogEventTypePaperDocFollowed? { - self as? DBXTeamLogEventTypePaperDocFollowed + return self as? DBXTeamLogEventTypePaperDocFollowed } @objc public var asPaperDocMention: DBXTeamLogEventTypePaperDocMention? { - self as? DBXTeamLogEventTypePaperDocMention + return self as? DBXTeamLogEventTypePaperDocMention } @objc public var asPaperDocOwnershipChanged: DBXTeamLogEventTypePaperDocOwnershipChanged? { - self as? DBXTeamLogEventTypePaperDocOwnershipChanged + return self as? DBXTeamLogEventTypePaperDocOwnershipChanged } @objc public var asPaperDocRequestAccess: DBXTeamLogEventTypePaperDocRequestAccess? { - self as? DBXTeamLogEventTypePaperDocRequestAccess + return self as? DBXTeamLogEventTypePaperDocRequestAccess } @objc public var asPaperDocResolveComment: DBXTeamLogEventTypePaperDocResolveComment? { - self as? DBXTeamLogEventTypePaperDocResolveComment + return self as? DBXTeamLogEventTypePaperDocResolveComment } @objc public var asPaperDocRevert: DBXTeamLogEventTypePaperDocRevert? { - self as? DBXTeamLogEventTypePaperDocRevert + return self as? DBXTeamLogEventTypePaperDocRevert } @objc public var asPaperDocSlackShare: DBXTeamLogEventTypePaperDocSlackShare? { - self as? DBXTeamLogEventTypePaperDocSlackShare + return self as? DBXTeamLogEventTypePaperDocSlackShare } @objc public var asPaperDocTeamInvite: DBXTeamLogEventTypePaperDocTeamInvite? { - self as? DBXTeamLogEventTypePaperDocTeamInvite + return self as? DBXTeamLogEventTypePaperDocTeamInvite } @objc public var asPaperDocTrashed: DBXTeamLogEventTypePaperDocTrashed? { - self as? DBXTeamLogEventTypePaperDocTrashed + return self as? DBXTeamLogEventTypePaperDocTrashed } @objc public var asPaperDocUnresolveComment: DBXTeamLogEventTypePaperDocUnresolveComment? { - self as? DBXTeamLogEventTypePaperDocUnresolveComment + return self as? DBXTeamLogEventTypePaperDocUnresolveComment } @objc public var asPaperDocUntrashed: DBXTeamLogEventTypePaperDocUntrashed? { - self as? DBXTeamLogEventTypePaperDocUntrashed + return self as? DBXTeamLogEventTypePaperDocUntrashed } @objc public var asPaperDocView: DBXTeamLogEventTypePaperDocView? { - self as? DBXTeamLogEventTypePaperDocView + return self as? DBXTeamLogEventTypePaperDocView } @objc public var asPaperExternalViewAllow: DBXTeamLogEventTypePaperExternalViewAllow? { - self as? DBXTeamLogEventTypePaperExternalViewAllow + return self as? DBXTeamLogEventTypePaperExternalViewAllow } @objc public var asPaperExternalViewDefaultTeam: DBXTeamLogEventTypePaperExternalViewDefaultTeam? { - self as? DBXTeamLogEventTypePaperExternalViewDefaultTeam + return self as? DBXTeamLogEventTypePaperExternalViewDefaultTeam } @objc public var asPaperExternalViewForbid: DBXTeamLogEventTypePaperExternalViewForbid? { - self as? DBXTeamLogEventTypePaperExternalViewForbid + return self as? DBXTeamLogEventTypePaperExternalViewForbid } @objc public var asPaperFolderChangeSubscription: DBXTeamLogEventTypePaperFolderChangeSubscription? { - self as? DBXTeamLogEventTypePaperFolderChangeSubscription + return self as? DBXTeamLogEventTypePaperFolderChangeSubscription } @objc public var asPaperFolderDeleted: DBXTeamLogEventTypePaperFolderDeleted? { - self as? DBXTeamLogEventTypePaperFolderDeleted + return self as? DBXTeamLogEventTypePaperFolderDeleted } @objc public var asPaperFolderFollowed: DBXTeamLogEventTypePaperFolderFollowed? { - self as? DBXTeamLogEventTypePaperFolderFollowed + return self as? DBXTeamLogEventTypePaperFolderFollowed } @objc public var asPaperFolderTeamInvite: DBXTeamLogEventTypePaperFolderTeamInvite? { - self as? DBXTeamLogEventTypePaperFolderTeamInvite + return self as? DBXTeamLogEventTypePaperFolderTeamInvite } @objc public var asPaperPublishedLinkChangePermission: DBXTeamLogEventTypePaperPublishedLinkChangePermission? { - self as? DBXTeamLogEventTypePaperPublishedLinkChangePermission + return self as? DBXTeamLogEventTypePaperPublishedLinkChangePermission } @objc public var asPaperPublishedLinkCreate: DBXTeamLogEventTypePaperPublishedLinkCreate? { - self as? DBXTeamLogEventTypePaperPublishedLinkCreate + return self as? DBXTeamLogEventTypePaperPublishedLinkCreate } @objc public var asPaperPublishedLinkDisabled: DBXTeamLogEventTypePaperPublishedLinkDisabled? { - self as? DBXTeamLogEventTypePaperPublishedLinkDisabled + return self as? DBXTeamLogEventTypePaperPublishedLinkDisabled } @objc public var asPaperPublishedLinkView: DBXTeamLogEventTypePaperPublishedLinkView? { - self as? DBXTeamLogEventTypePaperPublishedLinkView + return self as? DBXTeamLogEventTypePaperPublishedLinkView } @objc public var asPasswordChange: DBXTeamLogEventTypePasswordChange? { - self as? DBXTeamLogEventTypePasswordChange + return self as? DBXTeamLogEventTypePasswordChange } @objc public var asPasswordReset: DBXTeamLogEventTypePasswordReset? { - self as? DBXTeamLogEventTypePasswordReset + return self as? DBXTeamLogEventTypePasswordReset } @objc public var asPasswordResetAll: DBXTeamLogEventTypePasswordResetAll? { - self as? DBXTeamLogEventTypePasswordResetAll + return self as? DBXTeamLogEventTypePasswordResetAll + } + + @objc + public var asProtectActionAddCollaborator: DBXTeamLogEventTypeProtectActionAddCollaborator? { + return self as? DBXTeamLogEventTypeProtectActionAddCollaborator + } + + @objc + public var asProtectActionAddLink: DBXTeamLogEventTypeProtectActionAddLink? { + return self as? DBXTeamLogEventTypeProtectActionAddLink + } + + @objc + public var asProtectActionDelete: DBXTeamLogEventTypeProtectActionDelete? { + return self as? DBXTeamLogEventTypeProtectActionDelete + } + + @objc + public var asProtectActionExport: DBXTeamLogEventTypeProtectActionExport? { + return self as? DBXTeamLogEventTypeProtectActionExport + } + + @objc + public var asProtectActionRemoveCollaborator: DBXTeamLogEventTypeProtectActionRemoveCollaborator? { + return self as? DBXTeamLogEventTypeProtectActionRemoveCollaborator + } + + @objc + public var asProtectActionRemoveLink: DBXTeamLogEventTypeProtectActionRemoveLink? { + return self as? DBXTeamLogEventTypeProtectActionRemoveLink + } + + @objc + public var asProtectActionStopSharing: DBXTeamLogEventTypeProtectActionStopSharing? { + return self as? DBXTeamLogEventTypeProtectActionStopSharing + } + + @objc + public var asProtectInternalDomainsChanged: DBXTeamLogEventTypeProtectInternalDomainsChanged? { + return self as? DBXTeamLogEventTypeProtectInternalDomainsChanged } @objc public var asClassificationCreateReport: DBXTeamLogEventTypeClassificationCreateReport? { - self as? DBXTeamLogEventTypeClassificationCreateReport + return self as? DBXTeamLogEventTypeClassificationCreateReport } @objc public var asClassificationCreateReportFail: DBXTeamLogEventTypeClassificationCreateReportFail? { - self as? DBXTeamLogEventTypeClassificationCreateReportFail + return self as? DBXTeamLogEventTypeClassificationCreateReportFail } @objc public var asEmmCreateExceptionsReport: DBXTeamLogEventTypeEmmCreateExceptionsReport? { - self as? DBXTeamLogEventTypeEmmCreateExceptionsReport + return self as? DBXTeamLogEventTypeEmmCreateExceptionsReport } @objc public var asEmmCreateUsageReport: DBXTeamLogEventTypeEmmCreateUsageReport? { - self as? DBXTeamLogEventTypeEmmCreateUsageReport + return self as? DBXTeamLogEventTypeEmmCreateUsageReport } @objc public var asExportMembersReport: DBXTeamLogEventTypeExportMembersReport? { - self as? DBXTeamLogEventTypeExportMembersReport + return self as? DBXTeamLogEventTypeExportMembersReport } @objc public var asExportMembersReportFail: DBXTeamLogEventTypeExportMembersReportFail? { - self as? DBXTeamLogEventTypeExportMembersReportFail + return self as? DBXTeamLogEventTypeExportMembersReportFail } @objc public var asExternalSharingCreateReport: DBXTeamLogEventTypeExternalSharingCreateReport? { - self as? DBXTeamLogEventTypeExternalSharingCreateReport + return self as? DBXTeamLogEventTypeExternalSharingCreateReport } @objc public var asExternalSharingReportFailed: DBXTeamLogEventTypeExternalSharingReportFailed? { - self as? DBXTeamLogEventTypeExternalSharingReportFailed + return self as? DBXTeamLogEventTypeExternalSharingReportFailed + } + + @objc + public var asMemberAccessDetailsCreateReport: DBXTeamLogEventTypeMemberAccessDetailsCreateReport? { + return self as? DBXTeamLogEventTypeMemberAccessDetailsCreateReport + } + + @objc + public var asMemberAccessDetailsCreateReportFailed: DBXTeamLogEventTypeMemberAccessDetailsCreateReportFailed? { + return self as? DBXTeamLogEventTypeMemberAccessDetailsCreateReportFailed } @objc public var asNoExpirationLinkGenCreateReport: DBXTeamLogEventTypeNoExpirationLinkGenCreateReport? { - self as? DBXTeamLogEventTypeNoExpirationLinkGenCreateReport + return self as? DBXTeamLogEventTypeNoExpirationLinkGenCreateReport } @objc public var asNoExpirationLinkGenReportFailed: DBXTeamLogEventTypeNoExpirationLinkGenReportFailed? { - self as? DBXTeamLogEventTypeNoExpirationLinkGenReportFailed + return self as? DBXTeamLogEventTypeNoExpirationLinkGenReportFailed } @objc public var asNoPasswordLinkGenCreateReport: DBXTeamLogEventTypeNoPasswordLinkGenCreateReport? { - self as? DBXTeamLogEventTypeNoPasswordLinkGenCreateReport + return self as? DBXTeamLogEventTypeNoPasswordLinkGenCreateReport } @objc public var asNoPasswordLinkGenReportFailed: DBXTeamLogEventTypeNoPasswordLinkGenReportFailed? { - self as? DBXTeamLogEventTypeNoPasswordLinkGenReportFailed + return self as? DBXTeamLogEventTypeNoPasswordLinkGenReportFailed } @objc public var asNoPasswordLinkViewCreateReport: DBXTeamLogEventTypeNoPasswordLinkViewCreateReport? { - self as? DBXTeamLogEventTypeNoPasswordLinkViewCreateReport + return self as? DBXTeamLogEventTypeNoPasswordLinkViewCreateReport } @objc public var asNoPasswordLinkViewReportFailed: DBXTeamLogEventTypeNoPasswordLinkViewReportFailed? { - self as? DBXTeamLogEventTypeNoPasswordLinkViewReportFailed + return self as? DBXTeamLogEventTypeNoPasswordLinkViewReportFailed } @objc public var asOutdatedLinkViewCreateReport: DBXTeamLogEventTypeOutdatedLinkViewCreateReport? { - self as? DBXTeamLogEventTypeOutdatedLinkViewCreateReport + return self as? DBXTeamLogEventTypeOutdatedLinkViewCreateReport } @objc public var asOutdatedLinkViewReportFailed: DBXTeamLogEventTypeOutdatedLinkViewReportFailed? { - self as? DBXTeamLogEventTypeOutdatedLinkViewReportFailed + return self as? DBXTeamLogEventTypeOutdatedLinkViewReportFailed } @objc public var asPaperAdminExportStart: DBXTeamLogEventTypePaperAdminExportStart? { - self as? DBXTeamLogEventTypePaperAdminExportStart + return self as? DBXTeamLogEventTypePaperAdminExportStart } @objc public var asRansomwareAlertCreateReport: DBXTeamLogEventTypeRansomwareAlertCreateReport? { - self as? DBXTeamLogEventTypeRansomwareAlertCreateReport + return self as? DBXTeamLogEventTypeRansomwareAlertCreateReport } @objc public var asRansomwareAlertCreateReportFailed: DBXTeamLogEventTypeRansomwareAlertCreateReportFailed? { - self as? DBXTeamLogEventTypeRansomwareAlertCreateReportFailed + return self as? DBXTeamLogEventTypeRansomwareAlertCreateReportFailed + } + + @objc + public var asSharedFoldersCreateReport: DBXTeamLogEventTypeSharedFoldersCreateReport? { + return self as? DBXTeamLogEventTypeSharedFoldersCreateReport + } + + @objc + public var asSharedFoldersCreateReportFailed: DBXTeamLogEventTypeSharedFoldersCreateReportFailed? { + return self as? DBXTeamLogEventTypeSharedFoldersCreateReportFailed } @objc public var asSmartSyncCreateAdminPrivilegeReport: DBXTeamLogEventTypeSmartSyncCreateAdminPrivilegeReport? { - self as? DBXTeamLogEventTypeSmartSyncCreateAdminPrivilegeReport + return self as? DBXTeamLogEventTypeSmartSyncCreateAdminPrivilegeReport } @objc public var asTeamActivityCreateReport: DBXTeamLogEventTypeTeamActivityCreateReport? { - self as? DBXTeamLogEventTypeTeamActivityCreateReport + return self as? DBXTeamLogEventTypeTeamActivityCreateReport } @objc public var asTeamActivityCreateReportFail: DBXTeamLogEventTypeTeamActivityCreateReportFail? { - self as? DBXTeamLogEventTypeTeamActivityCreateReportFail + return self as? DBXTeamLogEventTypeTeamActivityCreateReportFail + } + + @objc + public var asTeamFoldersCreateReport: DBXTeamLogEventTypeTeamFoldersCreateReport? { + return self as? DBXTeamLogEventTypeTeamFoldersCreateReport + } + + @objc + public var asTeamFoldersCreateReportFailed: DBXTeamLogEventTypeTeamFoldersCreateReportFailed? { + return self as? DBXTeamLogEventTypeTeamFoldersCreateReportFailed + } + + @objc + public var asTeamStorageCreateReport: DBXTeamLogEventTypeTeamStorageCreateReport? { + return self as? DBXTeamLogEventTypeTeamStorageCreateReport + } + + @objc + public var asTeamStorageCreateReportFailed: DBXTeamLogEventTypeTeamStorageCreateReportFailed? { + return self as? DBXTeamLogEventTypeTeamStorageCreateReportFailed } @objc public var asCollectionShare: DBXTeamLogEventTypeCollectionShare? { - self as? DBXTeamLogEventTypeCollectionShare + return self as? DBXTeamLogEventTypeCollectionShare } @objc public var asFileTransfersFileAdd: DBXTeamLogEventTypeFileTransfersFileAdd? { - self as? DBXTeamLogEventTypeFileTransfersFileAdd + return self as? DBXTeamLogEventTypeFileTransfersFileAdd } @objc public var asFileTransfersTransferDelete: DBXTeamLogEventTypeFileTransfersTransferDelete? { - self as? DBXTeamLogEventTypeFileTransfersTransferDelete + return self as? DBXTeamLogEventTypeFileTransfersTransferDelete } @objc public var asFileTransfersTransferDownload: DBXTeamLogEventTypeFileTransfersTransferDownload? { - self as? DBXTeamLogEventTypeFileTransfersTransferDownload + return self as? DBXTeamLogEventTypeFileTransfersTransferDownload } @objc public var asFileTransfersTransferSend: DBXTeamLogEventTypeFileTransfersTransferSend? { - self as? DBXTeamLogEventTypeFileTransfersTransferSend + return self as? DBXTeamLogEventTypeFileTransfersTransferSend } @objc public var asFileTransfersTransferView: DBXTeamLogEventTypeFileTransfersTransferView? { - self as? DBXTeamLogEventTypeFileTransfersTransferView + return self as? DBXTeamLogEventTypeFileTransfersTransferView + } + + @objc + public var asMediaHubProjectTeamAdd: DBXTeamLogEventTypeMediaHubProjectTeamAdd? { + return self as? DBXTeamLogEventTypeMediaHubProjectTeamAdd + } + + @objc + public var asMediaHubProjectTeamDelete: DBXTeamLogEventTypeMediaHubProjectTeamDelete? { + return self as? DBXTeamLogEventTypeMediaHubProjectTeamDelete + } + + @objc + public var asMediaHubProjectTeamRoleChanged: DBXTeamLogEventTypeMediaHubProjectTeamRoleChanged? { + return self as? DBXTeamLogEventTypeMediaHubProjectTeamRoleChanged + } + + @objc + public var asMediaHubSharedLinkAudienceChanged: DBXTeamLogEventTypeMediaHubSharedLinkAudienceChanged? { + return self as? DBXTeamLogEventTypeMediaHubSharedLinkAudienceChanged + } + + @objc + public var asMediaHubSharedLinkCreated: DBXTeamLogEventTypeMediaHubSharedLinkCreated? { + return self as? DBXTeamLogEventTypeMediaHubSharedLinkCreated + } + + @objc + public var asMediaHubSharedLinkDownloadSettingChanged: DBXTeamLogEventTypeMediaHubSharedLinkDownloadSettingChanged? { + return self as? DBXTeamLogEventTypeMediaHubSharedLinkDownloadSettingChanged + } + + @objc + public var asMediaHubSharedLinkRevoked: DBXTeamLogEventTypeMediaHubSharedLinkRevoked? { + return self as? DBXTeamLogEventTypeMediaHubSharedLinkRevoked } @objc public var asNoteAclInviteOnly: DBXTeamLogEventTypeNoteAclInviteOnly? { - self as? DBXTeamLogEventTypeNoteAclInviteOnly + return self as? DBXTeamLogEventTypeNoteAclInviteOnly } @objc public var asNoteAclLink: DBXTeamLogEventTypeNoteAclLink? { - self as? DBXTeamLogEventTypeNoteAclLink + return self as? DBXTeamLogEventTypeNoteAclLink } @objc public var asNoteAclTeamLink: DBXTeamLogEventTypeNoteAclTeamLink? { - self as? DBXTeamLogEventTypeNoteAclTeamLink + return self as? DBXTeamLogEventTypeNoteAclTeamLink } @objc public var asNoteShared: DBXTeamLogEventTypeNoteShared? { - self as? DBXTeamLogEventTypeNoteShared + return self as? DBXTeamLogEventTypeNoteShared } @objc public var asNoteShareReceive: DBXTeamLogEventTypeNoteShareReceive? { - self as? DBXTeamLogEventTypeNoteShareReceive + return self as? DBXTeamLogEventTypeNoteShareReceive } @objc public var asOpenNoteShared: DBXTeamLogEventTypeOpenNoteShared? { - self as? DBXTeamLogEventTypeOpenNoteShared + return self as? DBXTeamLogEventTypeOpenNoteShared } @objc public var asReplayFileSharedLinkCreated: DBXTeamLogEventTypeReplayFileSharedLinkCreated? { - self as? DBXTeamLogEventTypeReplayFileSharedLinkCreated + return self as? DBXTeamLogEventTypeReplayFileSharedLinkCreated } @objc public var asReplayFileSharedLinkModified: DBXTeamLogEventTypeReplayFileSharedLinkModified? { - self as? DBXTeamLogEventTypeReplayFileSharedLinkModified + return self as? DBXTeamLogEventTypeReplayFileSharedLinkModified } @objc public var asReplayProjectTeamAdd: DBXTeamLogEventTypeReplayProjectTeamAdd? { - self as? DBXTeamLogEventTypeReplayProjectTeamAdd + return self as? DBXTeamLogEventTypeReplayProjectTeamAdd } @objc public var asReplayProjectTeamDelete: DBXTeamLogEventTypeReplayProjectTeamDelete? { - self as? DBXTeamLogEventTypeReplayProjectTeamDelete + return self as? DBXTeamLogEventTypeReplayProjectTeamDelete + } + + @objc + public var asSendAndTrackFileAdded: DBXTeamLogEventTypeSendAndTrackFileAdded? { + return self as? DBXTeamLogEventTypeSendAndTrackFileAdded + } + + @objc + public var asSendAndTrackFileRenamed: DBXTeamLogEventTypeSendAndTrackFileRenamed? { + return self as? DBXTeamLogEventTypeSendAndTrackFileRenamed + } + + @objc + public var asSendAndTrackFileUpdated: DBXTeamLogEventTypeSendAndTrackFileUpdated? { + return self as? DBXTeamLogEventTypeSendAndTrackFileUpdated + } + + @objc + public var asSendAndTrackLinkCreated: DBXTeamLogEventTypeSendAndTrackLinkCreated? { + return self as? DBXTeamLogEventTypeSendAndTrackLinkCreated + } + + @objc + public var asSendAndTrackLinkDeleted: DBXTeamLogEventTypeSendAndTrackLinkDeleted? { + return self as? DBXTeamLogEventTypeSendAndTrackLinkDeleted + } + + @objc + public var asSendAndTrackLinkUpdated: DBXTeamLogEventTypeSendAndTrackLinkUpdated? { + return self as? DBXTeamLogEventTypeSendAndTrackLinkUpdated + } + + @objc + public var asSendAndTrackLinkViewed: DBXTeamLogEventTypeSendAndTrackLinkViewed? { + return self as? DBXTeamLogEventTypeSendAndTrackLinkViewed + } + + @objc + public var asSendAndTrackRemovedFileAndAssociatedLinks: DBXTeamLogEventTypeSendAndTrackRemovedFileAndAssociatedLinks? { + return self as? DBXTeamLogEventTypeSendAndTrackRemovedFileAndAssociatedLinks } @objc public var asSfAddGroup: DBXTeamLogEventTypeSfAddGroup? { - self as? DBXTeamLogEventTypeSfAddGroup + return self as? DBXTeamLogEventTypeSfAddGroup } @objc public var asSfAllowNonMembersToViewSharedLinks: DBXTeamLogEventTypeSfAllowNonMembersToViewSharedLinks? { - self as? DBXTeamLogEventTypeSfAllowNonMembersToViewSharedLinks + return self as? DBXTeamLogEventTypeSfAllowNonMembersToViewSharedLinks } @objc public var asSfExternalInviteWarn: DBXTeamLogEventTypeSfExternalInviteWarn? { - self as? DBXTeamLogEventTypeSfExternalInviteWarn + return self as? DBXTeamLogEventTypeSfExternalInviteWarn } @objc public var asSfFbInvite: DBXTeamLogEventTypeSfFbInvite? { - self as? DBXTeamLogEventTypeSfFbInvite + return self as? DBXTeamLogEventTypeSfFbInvite } @objc public var asSfFbInviteChangeRole: DBXTeamLogEventTypeSfFbInviteChangeRole? { - self as? DBXTeamLogEventTypeSfFbInviteChangeRole + return self as? DBXTeamLogEventTypeSfFbInviteChangeRole } @objc public var asSfFbUninvite: DBXTeamLogEventTypeSfFbUninvite? { - self as? DBXTeamLogEventTypeSfFbUninvite + return self as? DBXTeamLogEventTypeSfFbUninvite } @objc public var asSfInviteGroup: DBXTeamLogEventTypeSfInviteGroup? { - self as? DBXTeamLogEventTypeSfInviteGroup + return self as? DBXTeamLogEventTypeSfInviteGroup } @objc public var asSfTeamGrantAccess: DBXTeamLogEventTypeSfTeamGrantAccess? { - self as? DBXTeamLogEventTypeSfTeamGrantAccess + return self as? DBXTeamLogEventTypeSfTeamGrantAccess } @objc public var asSfTeamInvite: DBXTeamLogEventTypeSfTeamInvite? { - self as? DBXTeamLogEventTypeSfTeamInvite + return self as? DBXTeamLogEventTypeSfTeamInvite } @objc public var asSfTeamInviteChangeRole: DBXTeamLogEventTypeSfTeamInviteChangeRole? { - self as? DBXTeamLogEventTypeSfTeamInviteChangeRole + return self as? DBXTeamLogEventTypeSfTeamInviteChangeRole } @objc public var asSfTeamJoin: DBXTeamLogEventTypeSfTeamJoin? { - self as? DBXTeamLogEventTypeSfTeamJoin + return self as? DBXTeamLogEventTypeSfTeamJoin } @objc public var asSfTeamJoinFromOobLink: DBXTeamLogEventTypeSfTeamJoinFromOobLink? { - self as? DBXTeamLogEventTypeSfTeamJoinFromOobLink + return self as? DBXTeamLogEventTypeSfTeamJoinFromOobLink } @objc public var asSfTeamUninvite: DBXTeamLogEventTypeSfTeamUninvite? { - self as? DBXTeamLogEventTypeSfTeamUninvite + return self as? DBXTeamLogEventTypeSfTeamUninvite } @objc public var asSharedContentAddInvitees: DBXTeamLogEventTypeSharedContentAddInvitees? { - self as? DBXTeamLogEventTypeSharedContentAddInvitees + return self as? DBXTeamLogEventTypeSharedContentAddInvitees } @objc public var asSharedContentAddLinkExpiry: DBXTeamLogEventTypeSharedContentAddLinkExpiry? { - self as? DBXTeamLogEventTypeSharedContentAddLinkExpiry + return self as? DBXTeamLogEventTypeSharedContentAddLinkExpiry } @objc public var asSharedContentAddLinkPassword: DBXTeamLogEventTypeSharedContentAddLinkPassword? { - self as? DBXTeamLogEventTypeSharedContentAddLinkPassword + return self as? DBXTeamLogEventTypeSharedContentAddLinkPassword } @objc public var asSharedContentAddMember: DBXTeamLogEventTypeSharedContentAddMember? { - self as? DBXTeamLogEventTypeSharedContentAddMember + return self as? DBXTeamLogEventTypeSharedContentAddMember } @objc public var asSharedContentChangeDownloadsPolicy: DBXTeamLogEventTypeSharedContentChangeDownloadsPolicy? { - self as? DBXTeamLogEventTypeSharedContentChangeDownloadsPolicy + return self as? DBXTeamLogEventTypeSharedContentChangeDownloadsPolicy } @objc public var asSharedContentChangeInviteeRole: DBXTeamLogEventTypeSharedContentChangeInviteeRole? { - self as? DBXTeamLogEventTypeSharedContentChangeInviteeRole + return self as? DBXTeamLogEventTypeSharedContentChangeInviteeRole } @objc public var asSharedContentChangeLinkAudience: DBXTeamLogEventTypeSharedContentChangeLinkAudience? { - self as? DBXTeamLogEventTypeSharedContentChangeLinkAudience + return self as? DBXTeamLogEventTypeSharedContentChangeLinkAudience } @objc public var asSharedContentChangeLinkExpiry: DBXTeamLogEventTypeSharedContentChangeLinkExpiry? { - self as? DBXTeamLogEventTypeSharedContentChangeLinkExpiry + return self as? DBXTeamLogEventTypeSharedContentChangeLinkExpiry } @objc public var asSharedContentChangeLinkPassword: DBXTeamLogEventTypeSharedContentChangeLinkPassword? { - self as? DBXTeamLogEventTypeSharedContentChangeLinkPassword + return self as? DBXTeamLogEventTypeSharedContentChangeLinkPassword } @objc public var asSharedContentChangeMemberRole: DBXTeamLogEventTypeSharedContentChangeMemberRole? { - self as? DBXTeamLogEventTypeSharedContentChangeMemberRole + return self as? DBXTeamLogEventTypeSharedContentChangeMemberRole } @objc public var asSharedContentChangeViewerInfoPolicy: DBXTeamLogEventTypeSharedContentChangeViewerInfoPolicy? { - self as? DBXTeamLogEventTypeSharedContentChangeViewerInfoPolicy + return self as? DBXTeamLogEventTypeSharedContentChangeViewerInfoPolicy } @objc public var asSharedContentClaimInvitation: DBXTeamLogEventTypeSharedContentClaimInvitation? { - self as? DBXTeamLogEventTypeSharedContentClaimInvitation + return self as? DBXTeamLogEventTypeSharedContentClaimInvitation } @objc public var asSharedContentCopy: DBXTeamLogEventTypeSharedContentCopy? { - self as? DBXTeamLogEventTypeSharedContentCopy + return self as? DBXTeamLogEventTypeSharedContentCopy } @objc public var asSharedContentDownload: DBXTeamLogEventTypeSharedContentDownload? { - self as? DBXTeamLogEventTypeSharedContentDownload + return self as? DBXTeamLogEventTypeSharedContentDownload } @objc public var asSharedContentRelinquishMembership: DBXTeamLogEventTypeSharedContentRelinquishMembership? { - self as? DBXTeamLogEventTypeSharedContentRelinquishMembership + return self as? DBXTeamLogEventTypeSharedContentRelinquishMembership } @objc public var asSharedContentRemoveInvitees: DBXTeamLogEventTypeSharedContentRemoveInvitees? { - self as? DBXTeamLogEventTypeSharedContentRemoveInvitees + return self as? DBXTeamLogEventTypeSharedContentRemoveInvitees } @objc public var asSharedContentRemoveLinkExpiry: DBXTeamLogEventTypeSharedContentRemoveLinkExpiry? { - self as? DBXTeamLogEventTypeSharedContentRemoveLinkExpiry + return self as? DBXTeamLogEventTypeSharedContentRemoveLinkExpiry } @objc public var asSharedContentRemoveLinkPassword: DBXTeamLogEventTypeSharedContentRemoveLinkPassword? { - self as? DBXTeamLogEventTypeSharedContentRemoveLinkPassword + return self as? DBXTeamLogEventTypeSharedContentRemoveLinkPassword } @objc public var asSharedContentRemoveMember: DBXTeamLogEventTypeSharedContentRemoveMember? { - self as? DBXTeamLogEventTypeSharedContentRemoveMember + return self as? DBXTeamLogEventTypeSharedContentRemoveMember } @objc public var asSharedContentRequestAccess: DBXTeamLogEventTypeSharedContentRequestAccess? { - self as? DBXTeamLogEventTypeSharedContentRequestAccess + return self as? DBXTeamLogEventTypeSharedContentRequestAccess } @objc public var asSharedContentRestoreInvitees: DBXTeamLogEventTypeSharedContentRestoreInvitees? { - self as? DBXTeamLogEventTypeSharedContentRestoreInvitees + return self as? DBXTeamLogEventTypeSharedContentRestoreInvitees } @objc public var asSharedContentRestoreMember: DBXTeamLogEventTypeSharedContentRestoreMember? { - self as? DBXTeamLogEventTypeSharedContentRestoreMember + return self as? DBXTeamLogEventTypeSharedContentRestoreMember } @objc public var asSharedContentUnshare: DBXTeamLogEventTypeSharedContentUnshare? { - self as? DBXTeamLogEventTypeSharedContentUnshare + return self as? DBXTeamLogEventTypeSharedContentUnshare } @objc public var asSharedContentView: DBXTeamLogEventTypeSharedContentView? { - self as? DBXTeamLogEventTypeSharedContentView + return self as? DBXTeamLogEventTypeSharedContentView } @objc public var asSharedFolderChangeLinkPolicy: DBXTeamLogEventTypeSharedFolderChangeLinkPolicy? { - self as? DBXTeamLogEventTypeSharedFolderChangeLinkPolicy + return self as? DBXTeamLogEventTypeSharedFolderChangeLinkPolicy } @objc public var asSharedFolderChangeMembersInheritancePolicy: DBXTeamLogEventTypeSharedFolderChangeMembersInheritancePolicy? { - self as? DBXTeamLogEventTypeSharedFolderChangeMembersInheritancePolicy + return self as? DBXTeamLogEventTypeSharedFolderChangeMembersInheritancePolicy } @objc public var asSharedFolderChangeMembersManagementPolicy: DBXTeamLogEventTypeSharedFolderChangeMembersManagementPolicy? { - self as? DBXTeamLogEventTypeSharedFolderChangeMembersManagementPolicy + return self as? DBXTeamLogEventTypeSharedFolderChangeMembersManagementPolicy } @objc public var asSharedFolderChangeMembersPolicy: DBXTeamLogEventTypeSharedFolderChangeMembersPolicy? { - self as? DBXTeamLogEventTypeSharedFolderChangeMembersPolicy + return self as? DBXTeamLogEventTypeSharedFolderChangeMembersPolicy } @objc public var asSharedFolderCreate: DBXTeamLogEventTypeSharedFolderCreate? { - self as? DBXTeamLogEventTypeSharedFolderCreate + return self as? DBXTeamLogEventTypeSharedFolderCreate } @objc public var asSharedFolderDeclineInvitation: DBXTeamLogEventTypeSharedFolderDeclineInvitation? { - self as? DBXTeamLogEventTypeSharedFolderDeclineInvitation + return self as? DBXTeamLogEventTypeSharedFolderDeclineInvitation } @objc public var asSharedFolderMount: DBXTeamLogEventTypeSharedFolderMount? { - self as? DBXTeamLogEventTypeSharedFolderMount + return self as? DBXTeamLogEventTypeSharedFolderMount } @objc public var asSharedFolderNest: DBXTeamLogEventTypeSharedFolderNest? { - self as? DBXTeamLogEventTypeSharedFolderNest + return self as? DBXTeamLogEventTypeSharedFolderNest } @objc public var asSharedFolderTransferOwnership: DBXTeamLogEventTypeSharedFolderTransferOwnership? { - self as? DBXTeamLogEventTypeSharedFolderTransferOwnership + return self as? DBXTeamLogEventTypeSharedFolderTransferOwnership } @objc public var asSharedFolderUnmount: DBXTeamLogEventTypeSharedFolderUnmount? { - self as? DBXTeamLogEventTypeSharedFolderUnmount + return self as? DBXTeamLogEventTypeSharedFolderUnmount } @objc public var asSharedLinkAddExpiry: DBXTeamLogEventTypeSharedLinkAddExpiry? { - self as? DBXTeamLogEventTypeSharedLinkAddExpiry + return self as? DBXTeamLogEventTypeSharedLinkAddExpiry } @objc public var asSharedLinkChangeExpiry: DBXTeamLogEventTypeSharedLinkChangeExpiry? { - self as? DBXTeamLogEventTypeSharedLinkChangeExpiry + return self as? DBXTeamLogEventTypeSharedLinkChangeExpiry } @objc public var asSharedLinkChangeVisibility: DBXTeamLogEventTypeSharedLinkChangeVisibility? { - self as? DBXTeamLogEventTypeSharedLinkChangeVisibility + return self as? DBXTeamLogEventTypeSharedLinkChangeVisibility } @objc public var asSharedLinkCopy: DBXTeamLogEventTypeSharedLinkCopy? { - self as? DBXTeamLogEventTypeSharedLinkCopy + return self as? DBXTeamLogEventTypeSharedLinkCopy } @objc public var asSharedLinkCreate: DBXTeamLogEventTypeSharedLinkCreate? { - self as? DBXTeamLogEventTypeSharedLinkCreate + return self as? DBXTeamLogEventTypeSharedLinkCreate } @objc public var asSharedLinkDisable: DBXTeamLogEventTypeSharedLinkDisable? { - self as? DBXTeamLogEventTypeSharedLinkDisable + return self as? DBXTeamLogEventTypeSharedLinkDisable } @objc public var asSharedLinkDownload: DBXTeamLogEventTypeSharedLinkDownload? { - self as? DBXTeamLogEventTypeSharedLinkDownload + return self as? DBXTeamLogEventTypeSharedLinkDownload } @objc public var asSharedLinkRemoveExpiry: DBXTeamLogEventTypeSharedLinkRemoveExpiry? { - self as? DBXTeamLogEventTypeSharedLinkRemoveExpiry + return self as? DBXTeamLogEventTypeSharedLinkRemoveExpiry + } + + @objc + public var asSharedLinkRemoveVisitor: DBXTeamLogEventTypeSharedLinkRemoveVisitor? { + return self as? DBXTeamLogEventTypeSharedLinkRemoveVisitor } @objc public var asSharedLinkSettingsAddExpiration: DBXTeamLogEventTypeSharedLinkSettingsAddExpiration? { - self as? DBXTeamLogEventTypeSharedLinkSettingsAddExpiration + return self as? DBXTeamLogEventTypeSharedLinkSettingsAddExpiration } @objc public var asSharedLinkSettingsAddPassword: DBXTeamLogEventTypeSharedLinkSettingsAddPassword? { - self as? DBXTeamLogEventTypeSharedLinkSettingsAddPassword + return self as? DBXTeamLogEventTypeSharedLinkSettingsAddPassword } @objc public var asSharedLinkSettingsAllowDownloadDisabled: DBXTeamLogEventTypeSharedLinkSettingsAllowDownloadDisabled? { - self as? DBXTeamLogEventTypeSharedLinkSettingsAllowDownloadDisabled + return self as? DBXTeamLogEventTypeSharedLinkSettingsAllowDownloadDisabled } @objc public var asSharedLinkSettingsAllowDownloadEnabled: DBXTeamLogEventTypeSharedLinkSettingsAllowDownloadEnabled? { - self as? DBXTeamLogEventTypeSharedLinkSettingsAllowDownloadEnabled + return self as? DBXTeamLogEventTypeSharedLinkSettingsAllowDownloadEnabled } @objc public var asSharedLinkSettingsChangeAudience: DBXTeamLogEventTypeSharedLinkSettingsChangeAudience? { - self as? DBXTeamLogEventTypeSharedLinkSettingsChangeAudience + return self as? DBXTeamLogEventTypeSharedLinkSettingsChangeAudience } @objc public var asSharedLinkSettingsChangeExpiration: DBXTeamLogEventTypeSharedLinkSettingsChangeExpiration? { - self as? DBXTeamLogEventTypeSharedLinkSettingsChangeExpiration + return self as? DBXTeamLogEventTypeSharedLinkSettingsChangeExpiration } @objc public var asSharedLinkSettingsChangePassword: DBXTeamLogEventTypeSharedLinkSettingsChangePassword? { - self as? DBXTeamLogEventTypeSharedLinkSettingsChangePassword + return self as? DBXTeamLogEventTypeSharedLinkSettingsChangePassword } @objc public var asSharedLinkSettingsRemoveExpiration: DBXTeamLogEventTypeSharedLinkSettingsRemoveExpiration? { - self as? DBXTeamLogEventTypeSharedLinkSettingsRemoveExpiration + return self as? DBXTeamLogEventTypeSharedLinkSettingsRemoveExpiration } @objc public var asSharedLinkSettingsRemovePassword: DBXTeamLogEventTypeSharedLinkSettingsRemovePassword? { - self as? DBXTeamLogEventTypeSharedLinkSettingsRemovePassword + return self as? DBXTeamLogEventTypeSharedLinkSettingsRemovePassword } @objc public var asSharedLinkShare: DBXTeamLogEventTypeSharedLinkShare? { - self as? DBXTeamLogEventTypeSharedLinkShare + return self as? DBXTeamLogEventTypeSharedLinkShare } @objc public var asSharedLinkView: DBXTeamLogEventTypeSharedLinkView? { - self as? DBXTeamLogEventTypeSharedLinkView + return self as? DBXTeamLogEventTypeSharedLinkView } @objc public var asSharedNoteOpened: DBXTeamLogEventTypeSharedNoteOpened? { - self as? DBXTeamLogEventTypeSharedNoteOpened + return self as? DBXTeamLogEventTypeSharedNoteOpened } @objc public var asShmodelDisableDownloads: DBXTeamLogEventTypeShmodelDisableDownloads? { - self as? DBXTeamLogEventTypeShmodelDisableDownloads + return self as? DBXTeamLogEventTypeShmodelDisableDownloads } @objc public var asShmodelEnableDownloads: DBXTeamLogEventTypeShmodelEnableDownloads? { - self as? DBXTeamLogEventTypeShmodelEnableDownloads + return self as? DBXTeamLogEventTypeShmodelEnableDownloads } @objc public var asShmodelGroupShare: DBXTeamLogEventTypeShmodelGroupShare? { - self as? DBXTeamLogEventTypeShmodelGroupShare + return self as? DBXTeamLogEventTypeShmodelGroupShare } @objc public var asShowcaseAccessGranted: DBXTeamLogEventTypeShowcaseAccessGranted? { - self as? DBXTeamLogEventTypeShowcaseAccessGranted + return self as? DBXTeamLogEventTypeShowcaseAccessGranted } @objc public var asShowcaseAddMember: DBXTeamLogEventTypeShowcaseAddMember? { - self as? DBXTeamLogEventTypeShowcaseAddMember + return self as? DBXTeamLogEventTypeShowcaseAddMember } @objc public var asShowcaseArchived: DBXTeamLogEventTypeShowcaseArchived? { - self as? DBXTeamLogEventTypeShowcaseArchived + return self as? DBXTeamLogEventTypeShowcaseArchived } @objc public var asShowcaseCreated: DBXTeamLogEventTypeShowcaseCreated? { - self as? DBXTeamLogEventTypeShowcaseCreated + return self as? DBXTeamLogEventTypeShowcaseCreated } @objc public var asShowcaseDeleteComment: DBXTeamLogEventTypeShowcaseDeleteComment? { - self as? DBXTeamLogEventTypeShowcaseDeleteComment + return self as? DBXTeamLogEventTypeShowcaseDeleteComment } @objc public var asShowcaseEdited: DBXTeamLogEventTypeShowcaseEdited? { - self as? DBXTeamLogEventTypeShowcaseEdited + return self as? DBXTeamLogEventTypeShowcaseEdited } @objc public var asShowcaseEditComment: DBXTeamLogEventTypeShowcaseEditComment? { - self as? DBXTeamLogEventTypeShowcaseEditComment + return self as? DBXTeamLogEventTypeShowcaseEditComment } @objc public var asShowcaseFileAdded: DBXTeamLogEventTypeShowcaseFileAdded? { - self as? DBXTeamLogEventTypeShowcaseFileAdded + return self as? DBXTeamLogEventTypeShowcaseFileAdded } @objc public var asShowcaseFileDownload: DBXTeamLogEventTypeShowcaseFileDownload? { - self as? DBXTeamLogEventTypeShowcaseFileDownload + return self as? DBXTeamLogEventTypeShowcaseFileDownload } @objc public var asShowcaseFileRemoved: DBXTeamLogEventTypeShowcaseFileRemoved? { - self as? DBXTeamLogEventTypeShowcaseFileRemoved + return self as? DBXTeamLogEventTypeShowcaseFileRemoved } @objc public var asShowcaseFileView: DBXTeamLogEventTypeShowcaseFileView? { - self as? DBXTeamLogEventTypeShowcaseFileView + return self as? DBXTeamLogEventTypeShowcaseFileView } @objc public var asShowcasePermanentlyDeleted: DBXTeamLogEventTypeShowcasePermanentlyDeleted? { - self as? DBXTeamLogEventTypeShowcasePermanentlyDeleted + return self as? DBXTeamLogEventTypeShowcasePermanentlyDeleted } @objc public var asShowcasePostComment: DBXTeamLogEventTypeShowcasePostComment? { - self as? DBXTeamLogEventTypeShowcasePostComment + return self as? DBXTeamLogEventTypeShowcasePostComment } @objc public var asShowcaseRemoveMember: DBXTeamLogEventTypeShowcaseRemoveMember? { - self as? DBXTeamLogEventTypeShowcaseRemoveMember + return self as? DBXTeamLogEventTypeShowcaseRemoveMember } @objc public var asShowcaseRenamed: DBXTeamLogEventTypeShowcaseRenamed? { - self as? DBXTeamLogEventTypeShowcaseRenamed + return self as? DBXTeamLogEventTypeShowcaseRenamed } @objc public var asShowcaseRequestAccess: DBXTeamLogEventTypeShowcaseRequestAccess? { - self as? DBXTeamLogEventTypeShowcaseRequestAccess + return self as? DBXTeamLogEventTypeShowcaseRequestAccess } @objc public var asShowcaseResolveComment: DBXTeamLogEventTypeShowcaseResolveComment? { - self as? DBXTeamLogEventTypeShowcaseResolveComment + return self as? DBXTeamLogEventTypeShowcaseResolveComment } @objc public var asShowcaseRestored: DBXTeamLogEventTypeShowcaseRestored? { - self as? DBXTeamLogEventTypeShowcaseRestored + return self as? DBXTeamLogEventTypeShowcaseRestored } @objc public var asShowcaseTrashed: DBXTeamLogEventTypeShowcaseTrashed? { - self as? DBXTeamLogEventTypeShowcaseTrashed + return self as? DBXTeamLogEventTypeShowcaseTrashed } @objc public var asShowcaseTrashedDeprecated: DBXTeamLogEventTypeShowcaseTrashedDeprecated? { - self as? DBXTeamLogEventTypeShowcaseTrashedDeprecated + return self as? DBXTeamLogEventTypeShowcaseTrashedDeprecated } @objc public var asShowcaseUnresolveComment: DBXTeamLogEventTypeShowcaseUnresolveComment? { - self as? DBXTeamLogEventTypeShowcaseUnresolveComment + return self as? DBXTeamLogEventTypeShowcaseUnresolveComment } @objc public var asShowcaseUntrashed: DBXTeamLogEventTypeShowcaseUntrashed? { - self as? DBXTeamLogEventTypeShowcaseUntrashed + return self as? DBXTeamLogEventTypeShowcaseUntrashed } @objc public var asShowcaseUntrashedDeprecated: DBXTeamLogEventTypeShowcaseUntrashedDeprecated? { - self as? DBXTeamLogEventTypeShowcaseUntrashedDeprecated + return self as? DBXTeamLogEventTypeShowcaseUntrashedDeprecated } @objc public var asShowcaseView: DBXTeamLogEventTypeShowcaseView? { - self as? DBXTeamLogEventTypeShowcaseView + return self as? DBXTeamLogEventTypeShowcaseView + } + + @objc + public var asSignSignatureRequestCanceled: DBXTeamLogEventTypeSignSignatureRequestCanceled? { + return self as? DBXTeamLogEventTypeSignSignatureRequestCanceled + } + + @objc + public var asSignSignatureRequestCompleted: DBXTeamLogEventTypeSignSignatureRequestCompleted? { + return self as? DBXTeamLogEventTypeSignSignatureRequestCompleted + } + + @objc + public var asSignSignatureRequestDeclined: DBXTeamLogEventTypeSignSignatureRequestDeclined? { + return self as? DBXTeamLogEventTypeSignSignatureRequestDeclined + } + + @objc + public var asSignSignatureRequestOpened: DBXTeamLogEventTypeSignSignatureRequestOpened? { + return self as? DBXTeamLogEventTypeSignSignatureRequestOpened + } + + @objc + public var asSignSignatureRequestReminderSent: DBXTeamLogEventTypeSignSignatureRequestReminderSent? { + return self as? DBXTeamLogEventTypeSignSignatureRequestReminderSent + } + + @objc + public var asSignSignatureRequestSent: DBXTeamLogEventTypeSignSignatureRequestSent? { + return self as? DBXTeamLogEventTypeSignSignatureRequestSent + } + + @objc + public var asSignTemplateCreated: DBXTeamLogEventTypeSignTemplateCreated? { + return self as? DBXTeamLogEventTypeSignTemplateCreated + } + + @objc + public var asSignTemplateShared: DBXTeamLogEventTypeSignTemplateShared? { + return self as? DBXTeamLogEventTypeSignTemplateShared + } + + @objc + public var asRiscSecurityEvent: DBXTeamLogEventTypeRiscSecurityEvent? { + return self as? DBXTeamLogEventTypeRiscSecurityEvent } @objc public var asSsoAddCert: DBXTeamLogEventTypeSsoAddCert? { - self as? DBXTeamLogEventTypeSsoAddCert + return self as? DBXTeamLogEventTypeSsoAddCert } @objc public var asSsoAddLoginUrl: DBXTeamLogEventTypeSsoAddLoginUrl? { - self as? DBXTeamLogEventTypeSsoAddLoginUrl + return self as? DBXTeamLogEventTypeSsoAddLoginUrl } @objc public var asSsoAddLogoutUrl: DBXTeamLogEventTypeSsoAddLogoutUrl? { - self as? DBXTeamLogEventTypeSsoAddLogoutUrl + return self as? DBXTeamLogEventTypeSsoAddLogoutUrl } @objc public var asSsoChangeCert: DBXTeamLogEventTypeSsoChangeCert? { - self as? DBXTeamLogEventTypeSsoChangeCert + return self as? DBXTeamLogEventTypeSsoChangeCert } @objc public var asSsoChangeLoginUrl: DBXTeamLogEventTypeSsoChangeLoginUrl? { - self as? DBXTeamLogEventTypeSsoChangeLoginUrl + return self as? DBXTeamLogEventTypeSsoChangeLoginUrl } @objc public var asSsoChangeLogoutUrl: DBXTeamLogEventTypeSsoChangeLogoutUrl? { - self as? DBXTeamLogEventTypeSsoChangeLogoutUrl + return self as? DBXTeamLogEventTypeSsoChangeLogoutUrl } @objc public var asSsoChangeSamlIdentityMode: DBXTeamLogEventTypeSsoChangeSamlIdentityMode? { - self as? DBXTeamLogEventTypeSsoChangeSamlIdentityMode + return self as? DBXTeamLogEventTypeSsoChangeSamlIdentityMode } @objc public var asSsoRemoveCert: DBXTeamLogEventTypeSsoRemoveCert? { - self as? DBXTeamLogEventTypeSsoRemoveCert + return self as? DBXTeamLogEventTypeSsoRemoveCert } @objc public var asSsoRemoveLoginUrl: DBXTeamLogEventTypeSsoRemoveLoginUrl? { - self as? DBXTeamLogEventTypeSsoRemoveLoginUrl + return self as? DBXTeamLogEventTypeSsoRemoveLoginUrl } @objc public var asSsoRemoveLogoutUrl: DBXTeamLogEventTypeSsoRemoveLogoutUrl? { - self as? DBXTeamLogEventTypeSsoRemoveLogoutUrl + return self as? DBXTeamLogEventTypeSsoRemoveLogoutUrl } @objc public var asTeamFolderChangeStatus: DBXTeamLogEventTypeTeamFolderChangeStatus? { - self as? DBXTeamLogEventTypeTeamFolderChangeStatus + return self as? DBXTeamLogEventTypeTeamFolderChangeStatus } @objc public var asTeamFolderCreate: DBXTeamLogEventTypeTeamFolderCreate? { - self as? DBXTeamLogEventTypeTeamFolderCreate + return self as? DBXTeamLogEventTypeTeamFolderCreate } @objc public var asTeamFolderDowngrade: DBXTeamLogEventTypeTeamFolderDowngrade? { - self as? DBXTeamLogEventTypeTeamFolderDowngrade + return self as? DBXTeamLogEventTypeTeamFolderDowngrade } @objc public var asTeamFolderPermanentlyDelete: DBXTeamLogEventTypeTeamFolderPermanentlyDelete? { - self as? DBXTeamLogEventTypeTeamFolderPermanentlyDelete + return self as? DBXTeamLogEventTypeTeamFolderPermanentlyDelete } @objc public var asTeamFolderRename: DBXTeamLogEventTypeTeamFolderRename? { - self as? DBXTeamLogEventTypeTeamFolderRename + return self as? DBXTeamLogEventTypeTeamFolderRename + } + + @objc + public var asTeamFolderSpaceLimitsChangeCapsType: DBXTeamLogEventTypeTeamFolderSpaceLimitsChangeCapsType? { + return self as? DBXTeamLogEventTypeTeamFolderSpaceLimitsChangeCapsType + } + + @objc + public var asTeamFolderSpaceLimitsChangeLimit: DBXTeamLogEventTypeTeamFolderSpaceLimitsChangeLimit? { + return self as? DBXTeamLogEventTypeTeamFolderSpaceLimitsChangeLimit + } + + @objc + public var asTeamFolderSpaceLimitsChangeNotificationTarget: DBXTeamLogEventTypeTeamFolderSpaceLimitsChangeNotificationTarget? { + return self as? DBXTeamLogEventTypeTeamFolderSpaceLimitsChangeNotificationTarget } @objc public var asTeamSelectiveSyncSettingsChanged: DBXTeamLogEventTypeTeamSelectiveSyncSettingsChanged? { - self as? DBXTeamLogEventTypeTeamSelectiveSyncSettingsChanged + return self as? DBXTeamLogEventTypeTeamSelectiveSyncSettingsChanged } @objc public var asAccountCaptureChangePolicy: DBXTeamLogEventTypeAccountCaptureChangePolicy? { - self as? DBXTeamLogEventTypeAccountCaptureChangePolicy + return self as? DBXTeamLogEventTypeAccountCaptureChangePolicy } @objc public var asAdminEmailRemindersChanged: DBXTeamLogEventTypeAdminEmailRemindersChanged? { - self as? DBXTeamLogEventTypeAdminEmailRemindersChanged + return self as? DBXTeamLogEventTypeAdminEmailRemindersChanged + } + + @objc + public var asAiThirdPartySharingDropboxBasePolicyChanged: DBXTeamLogEventTypeAiThirdPartySharingDropboxBasePolicyChanged? { + return self as? DBXTeamLogEventTypeAiThirdPartySharingDropboxBasePolicyChanged } @objc public var asAllowDownloadDisabled: DBXTeamLogEventTypeAllowDownloadDisabled? { - self as? DBXTeamLogEventTypeAllowDownloadDisabled + return self as? DBXTeamLogEventTypeAllowDownloadDisabled } @objc public var asAllowDownloadEnabled: DBXTeamLogEventTypeAllowDownloadEnabled? { - self as? DBXTeamLogEventTypeAllowDownloadEnabled + return self as? DBXTeamLogEventTypeAllowDownloadEnabled + } + + @objc + public var asAppleLoginChangePolicy: DBXTeamLogEventTypeAppleLoginChangePolicy? { + return self as? DBXTeamLogEventTypeAppleLoginChangePolicy } @objc public var asAppPermissionsChanged: DBXTeamLogEventTypeAppPermissionsChanged? { - self as? DBXTeamLogEventTypeAppPermissionsChanged + return self as? DBXTeamLogEventTypeAppPermissionsChanged } @objc public var asCameraUploadsPolicyChanged: DBXTeamLogEventTypeCameraUploadsPolicyChanged? { - self as? DBXTeamLogEventTypeCameraUploadsPolicyChanged + return self as? DBXTeamLogEventTypeCameraUploadsPolicyChanged + } + + @objc + public var asCaptureTeamSpacePolicyChanged: DBXTeamLogEventTypeCaptureTeamSpacePolicyChanged? { + return self as? DBXTeamLogEventTypeCaptureTeamSpacePolicyChanged } @objc public var asCaptureTranscriptPolicyChanged: DBXTeamLogEventTypeCaptureTranscriptPolicyChanged? { - self as? DBXTeamLogEventTypeCaptureTranscriptPolicyChanged + return self as? DBXTeamLogEventTypeCaptureTranscriptPolicyChanged } @objc public var asClassificationChangePolicy: DBXTeamLogEventTypeClassificationChangePolicy? { - self as? DBXTeamLogEventTypeClassificationChangePolicy + return self as? DBXTeamLogEventTypeClassificationChangePolicy } @objc public var asComputerBackupPolicyChanged: DBXTeamLogEventTypeComputerBackupPolicyChanged? { - self as? DBXTeamLogEventTypeComputerBackupPolicyChanged + return self as? DBXTeamLogEventTypeComputerBackupPolicyChanged } @objc public var asContentAdministrationPolicyChanged: DBXTeamLogEventTypeContentAdministrationPolicyChanged? { - self as? DBXTeamLogEventTypeContentAdministrationPolicyChanged + return self as? DBXTeamLogEventTypeContentAdministrationPolicyChanged + } + + @objc + public var asContentDeletionProtectionChangePolicy: DBXTeamLogEventTypeContentDeletionProtectionChangePolicy? { + return self as? DBXTeamLogEventTypeContentDeletionProtectionChangePolicy + } + + @objc + public var asDashExternalSharingPolicyChanged: DBXTeamLogEventTypeDashExternalSharingPolicyChanged? { + return self as? DBXTeamLogEventTypeDashExternalSharingPolicyChanged } @objc public var asDataPlacementRestrictionChangePolicy: DBXTeamLogEventTypeDataPlacementRestrictionChangePolicy? { - self as? DBXTeamLogEventTypeDataPlacementRestrictionChangePolicy + return self as? DBXTeamLogEventTypeDataPlacementRestrictionChangePolicy } @objc public var asDataPlacementRestrictionSatisfyPolicy: DBXTeamLogEventTypeDataPlacementRestrictionSatisfyPolicy? { - self as? DBXTeamLogEventTypeDataPlacementRestrictionSatisfyPolicy + return self as? DBXTeamLogEventTypeDataPlacementRestrictionSatisfyPolicy } @objc public var asDeviceApprovalsAddException: DBXTeamLogEventTypeDeviceApprovalsAddException? { - self as? DBXTeamLogEventTypeDeviceApprovalsAddException + return self as? DBXTeamLogEventTypeDeviceApprovalsAddException } @objc public var asDeviceApprovalsChangeDesktopPolicy: DBXTeamLogEventTypeDeviceApprovalsChangeDesktopPolicy? { - self as? DBXTeamLogEventTypeDeviceApprovalsChangeDesktopPolicy + return self as? DBXTeamLogEventTypeDeviceApprovalsChangeDesktopPolicy } @objc public var asDeviceApprovalsChangeMobilePolicy: DBXTeamLogEventTypeDeviceApprovalsChangeMobilePolicy? { - self as? DBXTeamLogEventTypeDeviceApprovalsChangeMobilePolicy + return self as? DBXTeamLogEventTypeDeviceApprovalsChangeMobilePolicy } @objc public var asDeviceApprovalsChangeOverageAction: DBXTeamLogEventTypeDeviceApprovalsChangeOverageAction? { - self as? DBXTeamLogEventTypeDeviceApprovalsChangeOverageAction + return self as? DBXTeamLogEventTypeDeviceApprovalsChangeOverageAction } @objc public var asDeviceApprovalsChangeUnlinkAction: DBXTeamLogEventTypeDeviceApprovalsChangeUnlinkAction? { - self as? DBXTeamLogEventTypeDeviceApprovalsChangeUnlinkAction + return self as? DBXTeamLogEventTypeDeviceApprovalsChangeUnlinkAction } @objc public var asDeviceApprovalsRemoveException: DBXTeamLogEventTypeDeviceApprovalsRemoveException? { - self as? DBXTeamLogEventTypeDeviceApprovalsRemoveException + return self as? DBXTeamLogEventTypeDeviceApprovalsRemoveException } @objc public var asDirectoryRestrictionsAddMembers: DBXTeamLogEventTypeDirectoryRestrictionsAddMembers? { - self as? DBXTeamLogEventTypeDirectoryRestrictionsAddMembers + return self as? DBXTeamLogEventTypeDirectoryRestrictionsAddMembers } @objc public var asDirectoryRestrictionsRemoveMembers: DBXTeamLogEventTypeDirectoryRestrictionsRemoveMembers? { - self as? DBXTeamLogEventTypeDirectoryRestrictionsRemoveMembers + return self as? DBXTeamLogEventTypeDirectoryRestrictionsRemoveMembers } @objc public var asDropboxPasswordsPolicyChanged: DBXTeamLogEventTypeDropboxPasswordsPolicyChanged? { - self as? DBXTeamLogEventTypeDropboxPasswordsPolicyChanged + return self as? DBXTeamLogEventTypeDropboxPasswordsPolicyChanged } @objc public var asEmailIngestPolicyChanged: DBXTeamLogEventTypeEmailIngestPolicyChanged? { - self as? DBXTeamLogEventTypeEmailIngestPolicyChanged + return self as? DBXTeamLogEventTypeEmailIngestPolicyChanged } @objc public var asEmmAddException: DBXTeamLogEventTypeEmmAddException? { - self as? DBXTeamLogEventTypeEmmAddException + return self as? DBXTeamLogEventTypeEmmAddException } @objc public var asEmmChangePolicy: DBXTeamLogEventTypeEmmChangePolicy? { - self as? DBXTeamLogEventTypeEmmChangePolicy + return self as? DBXTeamLogEventTypeEmmChangePolicy } @objc public var asEmmRemoveException: DBXTeamLogEventTypeEmmRemoveException? { - self as? DBXTeamLogEventTypeEmmRemoveException + return self as? DBXTeamLogEventTypeEmmRemoveException } @objc public var asExtendedVersionHistoryChangePolicy: DBXTeamLogEventTypeExtendedVersionHistoryChangePolicy? { - self as? DBXTeamLogEventTypeExtendedVersionHistoryChangePolicy + return self as? DBXTeamLogEventTypeExtendedVersionHistoryChangePolicy } @objc public var asExternalDriveBackupPolicyChanged: DBXTeamLogEventTypeExternalDriveBackupPolicyChanged? { - self as? DBXTeamLogEventTypeExternalDriveBackupPolicyChanged + return self as? DBXTeamLogEventTypeExternalDriveBackupPolicyChanged } @objc public var asFileCommentsChangePolicy: DBXTeamLogEventTypeFileCommentsChangePolicy? { - self as? DBXTeamLogEventTypeFileCommentsChangePolicy + return self as? DBXTeamLogEventTypeFileCommentsChangePolicy } @objc public var asFileLockingPolicyChanged: DBXTeamLogEventTypeFileLockingPolicyChanged? { - self as? DBXTeamLogEventTypeFileLockingPolicyChanged + return self as? DBXTeamLogEventTypeFileLockingPolicyChanged } @objc public var asFileProviderMigrationPolicyChanged: DBXTeamLogEventTypeFileProviderMigrationPolicyChanged? { - self as? DBXTeamLogEventTypeFileProviderMigrationPolicyChanged + return self as? DBXTeamLogEventTypeFileProviderMigrationPolicyChanged } @objc public var asFileRequestsChangePolicy: DBXTeamLogEventTypeFileRequestsChangePolicy? { - self as? DBXTeamLogEventTypeFileRequestsChangePolicy + return self as? DBXTeamLogEventTypeFileRequestsChangePolicy } @objc public var asFileRequestsEmailsEnabled: DBXTeamLogEventTypeFileRequestsEmailsEnabled? { - self as? DBXTeamLogEventTypeFileRequestsEmailsEnabled + return self as? DBXTeamLogEventTypeFileRequestsEmailsEnabled } @objc public var asFileRequestsEmailsRestrictedToTeamOnly: DBXTeamLogEventTypeFileRequestsEmailsRestrictedToTeamOnly? { - self as? DBXTeamLogEventTypeFileRequestsEmailsRestrictedToTeamOnly + return self as? DBXTeamLogEventTypeFileRequestsEmailsRestrictedToTeamOnly } @objc public var asFileTransfersPolicyChanged: DBXTeamLogEventTypeFileTransfersPolicyChanged? { - self as? DBXTeamLogEventTypeFileTransfersPolicyChanged + return self as? DBXTeamLogEventTypeFileTransfersPolicyChanged + } + + @objc + public var asFlexibleFileNamesPolicyChanged: DBXTeamLogEventTypeFlexibleFileNamesPolicyChanged? { + return self as? DBXTeamLogEventTypeFlexibleFileNamesPolicyChanged } @objc public var asFolderLinkRestrictionPolicyChanged: DBXTeamLogEventTypeFolderLinkRestrictionPolicyChanged? { - self as? DBXTeamLogEventTypeFolderLinkRestrictionPolicyChanged + return self as? DBXTeamLogEventTypeFolderLinkRestrictionPolicyChanged } @objc public var asGoogleSsoChangePolicy: DBXTeamLogEventTypeGoogleSsoChangePolicy? { - self as? DBXTeamLogEventTypeGoogleSsoChangePolicy + return self as? DBXTeamLogEventTypeGoogleSsoChangePolicy } @objc public var asGroupUserManagementChangePolicy: DBXTeamLogEventTypeGroupUserManagementChangePolicy? { - self as? DBXTeamLogEventTypeGroupUserManagementChangePolicy + return self as? DBXTeamLogEventTypeGroupUserManagementChangePolicy } @objc public var asIntegrationPolicyChanged: DBXTeamLogEventTypeIntegrationPolicyChanged? { - self as? DBXTeamLogEventTypeIntegrationPolicyChanged + return self as? DBXTeamLogEventTypeIntegrationPolicyChanged } @objc public var asInviteAcceptanceEmailPolicyChanged: DBXTeamLogEventTypeInviteAcceptanceEmailPolicyChanged? { - self as? DBXTeamLogEventTypeInviteAcceptanceEmailPolicyChanged + return self as? DBXTeamLogEventTypeInviteAcceptanceEmailPolicyChanged + } + + @objc + public var asMediaHubAddingPeoplePolicyChanged: DBXTeamLogEventTypeMediaHubAddingPeoplePolicyChanged? { + return self as? DBXTeamLogEventTypeMediaHubAddingPeoplePolicyChanged + } + + @objc + public var asMediaHubDownloadPolicyChanged: DBXTeamLogEventTypeMediaHubDownloadPolicyChanged? { + return self as? DBXTeamLogEventTypeMediaHubDownloadPolicyChanged + } + + @objc + public var asMediaHubLinkSharingPolicyChanged: DBXTeamLogEventTypeMediaHubLinkSharingPolicyChanged? { + return self as? DBXTeamLogEventTypeMediaHubLinkSharingPolicyChanged } @objc public var asMemberRequestsChangePolicy: DBXTeamLogEventTypeMemberRequestsChangePolicy? { - self as? DBXTeamLogEventTypeMemberRequestsChangePolicy + return self as? DBXTeamLogEventTypeMemberRequestsChangePolicy } @objc public var asMemberSendInvitePolicyChanged: DBXTeamLogEventTypeMemberSendInvitePolicyChanged? { - self as? DBXTeamLogEventTypeMemberSendInvitePolicyChanged + return self as? DBXTeamLogEventTypeMemberSendInvitePolicyChanged } @objc public var asMemberSpaceLimitsAddException: DBXTeamLogEventTypeMemberSpaceLimitsAddException? { - self as? DBXTeamLogEventTypeMemberSpaceLimitsAddException + return self as? DBXTeamLogEventTypeMemberSpaceLimitsAddException } @objc public var asMemberSpaceLimitsChangeCapsTypePolicy: DBXTeamLogEventTypeMemberSpaceLimitsChangeCapsTypePolicy? { - self as? DBXTeamLogEventTypeMemberSpaceLimitsChangeCapsTypePolicy + return self as? DBXTeamLogEventTypeMemberSpaceLimitsChangeCapsTypePolicy } @objc public var asMemberSpaceLimitsChangePolicy: DBXTeamLogEventTypeMemberSpaceLimitsChangePolicy? { - self as? DBXTeamLogEventTypeMemberSpaceLimitsChangePolicy + return self as? DBXTeamLogEventTypeMemberSpaceLimitsChangePolicy } @objc public var asMemberSpaceLimitsRemoveException: DBXTeamLogEventTypeMemberSpaceLimitsRemoveException? { - self as? DBXTeamLogEventTypeMemberSpaceLimitsRemoveException + return self as? DBXTeamLogEventTypeMemberSpaceLimitsRemoveException } @objc public var asMemberSuggestionsChangePolicy: DBXTeamLogEventTypeMemberSuggestionsChangePolicy? { - self as? DBXTeamLogEventTypeMemberSuggestionsChangePolicy + return self as? DBXTeamLogEventTypeMemberSuggestionsChangePolicy + } + + @objc + public var asMicrosoftLoginChangePolicy: DBXTeamLogEventTypeMicrosoftLoginChangePolicy? { + return self as? DBXTeamLogEventTypeMicrosoftLoginChangePolicy } @objc public var asMicrosoftOfficeAddinChangePolicy: DBXTeamLogEventTypeMicrosoftOfficeAddinChangePolicy? { - self as? DBXTeamLogEventTypeMicrosoftOfficeAddinChangePolicy + return self as? DBXTeamLogEventTypeMicrosoftOfficeAddinChangePolicy + } + + @objc + public var asMultiTeamIdentityPolicyChanged: DBXTeamLogEventTypeMultiTeamIdentityPolicyChanged? { + return self as? DBXTeamLogEventTypeMultiTeamIdentityPolicyChanged } @objc public var asNetworkControlChangePolicy: DBXTeamLogEventTypeNetworkControlChangePolicy? { - self as? DBXTeamLogEventTypeNetworkControlChangePolicy + return self as? DBXTeamLogEventTypeNetworkControlChangePolicy } @objc public var asPaperChangeDeploymentPolicy: DBXTeamLogEventTypePaperChangeDeploymentPolicy? { - self as? DBXTeamLogEventTypePaperChangeDeploymentPolicy + return self as? DBXTeamLogEventTypePaperChangeDeploymentPolicy } @objc public var asPaperChangeMemberLinkPolicy: DBXTeamLogEventTypePaperChangeMemberLinkPolicy? { - self as? DBXTeamLogEventTypePaperChangeMemberLinkPolicy + return self as? DBXTeamLogEventTypePaperChangeMemberLinkPolicy } @objc public var asPaperChangeMemberPolicy: DBXTeamLogEventTypePaperChangeMemberPolicy? { - self as? DBXTeamLogEventTypePaperChangeMemberPolicy + return self as? DBXTeamLogEventTypePaperChangeMemberPolicy } @objc public var asPaperChangePolicy: DBXTeamLogEventTypePaperChangePolicy? { - self as? DBXTeamLogEventTypePaperChangePolicy + return self as? DBXTeamLogEventTypePaperChangePolicy } @objc public var asPaperDefaultFolderPolicyChanged: DBXTeamLogEventTypePaperDefaultFolderPolicyChanged? { - self as? DBXTeamLogEventTypePaperDefaultFolderPolicyChanged + return self as? DBXTeamLogEventTypePaperDefaultFolderPolicyChanged } @objc public var asPaperDesktopPolicyChanged: DBXTeamLogEventTypePaperDesktopPolicyChanged? { - self as? DBXTeamLogEventTypePaperDesktopPolicyChanged + return self as? DBXTeamLogEventTypePaperDesktopPolicyChanged } @objc public var asPaperEnabledUsersGroupAddition: DBXTeamLogEventTypePaperEnabledUsersGroupAddition? { - self as? DBXTeamLogEventTypePaperEnabledUsersGroupAddition + return self as? DBXTeamLogEventTypePaperEnabledUsersGroupAddition } @objc public var asPaperEnabledUsersGroupRemoval: DBXTeamLogEventTypePaperEnabledUsersGroupRemoval? { - self as? DBXTeamLogEventTypePaperEnabledUsersGroupRemoval + return self as? DBXTeamLogEventTypePaperEnabledUsersGroupRemoval + } + + @objc + public var asPasskeyLoginPolicyChanged: DBXTeamLogEventTypePasskeyLoginPolicyChanged? { + return self as? DBXTeamLogEventTypePasskeyLoginPolicyChanged } @objc public var asPasswordStrengthRequirementsChangePolicy: DBXTeamLogEventTypePasswordStrengthRequirementsChangePolicy? { - self as? DBXTeamLogEventTypePasswordStrengthRequirementsChangePolicy + return self as? DBXTeamLogEventTypePasswordStrengthRequirementsChangePolicy } @objc public var asPermanentDeleteChangePolicy: DBXTeamLogEventTypePermanentDeleteChangePolicy? { - self as? DBXTeamLogEventTypePermanentDeleteChangePolicy + return self as? DBXTeamLogEventTypePermanentDeleteChangePolicy + } + + @objc + public var asPreviewsAiPolicyChanged: DBXTeamLogEventTypePreviewsAiPolicyChanged? { + return self as? DBXTeamLogEventTypePreviewsAiPolicyChanged + } + + @objc + public var asReplayAddingPeoplePolicyChanged: DBXTeamLogEventTypeReplayAddingPeoplePolicyChanged? { + return self as? DBXTeamLogEventTypeReplayAddingPeoplePolicyChanged + } + + @objc + public var asReplaySharingPolicyChanged: DBXTeamLogEventTypeReplaySharingPolicyChanged? { + return self as? DBXTeamLogEventTypeReplaySharingPolicyChanged } @objc public var asResellerSupportChangePolicy: DBXTeamLogEventTypeResellerSupportChangePolicy? { - self as? DBXTeamLogEventTypeResellerSupportChangePolicy + return self as? DBXTeamLogEventTypeResellerSupportChangePolicy } @objc public var asRewindPolicyChanged: DBXTeamLogEventTypeRewindPolicyChanged? { - self as? DBXTeamLogEventTypeRewindPolicyChanged + return self as? DBXTeamLogEventTypeRewindPolicyChanged + } + + @objc + public var asSendAndTrackPolicyChanged: DBXTeamLogEventTypeSendAndTrackPolicyChanged? { + return self as? DBXTeamLogEventTypeSendAndTrackPolicyChanged + } + + @objc + public var asSendExternalSharingPolicyChanged: DBXTeamLogEventTypeSendExternalSharingPolicyChanged? { + return self as? DBXTeamLogEventTypeSendExternalSharingPolicyChanged } @objc public var asSendForSignaturePolicyChanged: DBXTeamLogEventTypeSendForSignaturePolicyChanged? { - self as? DBXTeamLogEventTypeSendForSignaturePolicyChanged + return self as? DBXTeamLogEventTypeSendForSignaturePolicyChanged + } + + @objc + public var asSharedLinkDefaultPermissionsPolicyChanged: DBXTeamLogEventTypeSharedLinkDefaultPermissionsPolicyChanged? { + return self as? DBXTeamLogEventTypeSharedLinkDefaultPermissionsPolicyChanged } @objc public var asSharingChangeFolderJoinPolicy: DBXTeamLogEventTypeSharingChangeFolderJoinPolicy? { - self as? DBXTeamLogEventTypeSharingChangeFolderJoinPolicy + return self as? DBXTeamLogEventTypeSharingChangeFolderJoinPolicy } @objc public var asSharingChangeLinkAllowChangeExpirationPolicy: DBXTeamLogEventTypeSharingChangeLinkAllowChangeExpirationPolicy? { - self as? DBXTeamLogEventTypeSharingChangeLinkAllowChangeExpirationPolicy + return self as? DBXTeamLogEventTypeSharingChangeLinkAllowChangeExpirationPolicy } @objc public var asSharingChangeLinkDefaultExpirationPolicy: DBXTeamLogEventTypeSharingChangeLinkDefaultExpirationPolicy? { - self as? DBXTeamLogEventTypeSharingChangeLinkDefaultExpirationPolicy + return self as? DBXTeamLogEventTypeSharingChangeLinkDefaultExpirationPolicy } @objc public var asSharingChangeLinkEnforcePasswordPolicy: DBXTeamLogEventTypeSharingChangeLinkEnforcePasswordPolicy? { - self as? DBXTeamLogEventTypeSharingChangeLinkEnforcePasswordPolicy + return self as? DBXTeamLogEventTypeSharingChangeLinkEnforcePasswordPolicy } @objc public var asSharingChangeLinkPolicy: DBXTeamLogEventTypeSharingChangeLinkPolicy? { - self as? DBXTeamLogEventTypeSharingChangeLinkPolicy + return self as? DBXTeamLogEventTypeSharingChangeLinkPolicy } @objc public var asSharingChangeMemberPolicy: DBXTeamLogEventTypeSharingChangeMemberPolicy? { - self as? DBXTeamLogEventTypeSharingChangeMemberPolicy + return self as? DBXTeamLogEventTypeSharingChangeMemberPolicy } @objc public var asShowcaseChangeDownloadPolicy: DBXTeamLogEventTypeShowcaseChangeDownloadPolicy? { - self as? DBXTeamLogEventTypeShowcaseChangeDownloadPolicy + return self as? DBXTeamLogEventTypeShowcaseChangeDownloadPolicy } @objc public var asShowcaseChangeEnabledPolicy: DBXTeamLogEventTypeShowcaseChangeEnabledPolicy? { - self as? DBXTeamLogEventTypeShowcaseChangeEnabledPolicy + return self as? DBXTeamLogEventTypeShowcaseChangeEnabledPolicy } @objc public var asShowcaseChangeExternalSharingPolicy: DBXTeamLogEventTypeShowcaseChangeExternalSharingPolicy? { - self as? DBXTeamLogEventTypeShowcaseChangeExternalSharingPolicy + return self as? DBXTeamLogEventTypeShowcaseChangeExternalSharingPolicy + } + + @objc + public var asSignExternalSharingPolicyChanged: DBXTeamLogEventTypeSignExternalSharingPolicyChanged? { + return self as? DBXTeamLogEventTypeSignExternalSharingPolicyChanged + } + + @objc + public var asSignTemplateCreationPermissionChanged: DBXTeamLogEventTypeSignTemplateCreationPermissionChanged? { + return self as? DBXTeamLogEventTypeSignTemplateCreationPermissionChanged } @objc public var asSmarterSmartSyncPolicyChanged: DBXTeamLogEventTypeSmarterSmartSyncPolicyChanged? { - self as? DBXTeamLogEventTypeSmarterSmartSyncPolicyChanged + return self as? DBXTeamLogEventTypeSmarterSmartSyncPolicyChanged } @objc public var asSmartSyncChangePolicy: DBXTeamLogEventTypeSmartSyncChangePolicy? { - self as? DBXTeamLogEventTypeSmartSyncChangePolicy + return self as? DBXTeamLogEventTypeSmartSyncChangePolicy } @objc public var asSmartSyncNotOptOut: DBXTeamLogEventTypeSmartSyncNotOptOut? { - self as? DBXTeamLogEventTypeSmartSyncNotOptOut + return self as? DBXTeamLogEventTypeSmartSyncNotOptOut } @objc public var asSmartSyncOptOut: DBXTeamLogEventTypeSmartSyncOptOut? { - self as? DBXTeamLogEventTypeSmartSyncOptOut + return self as? DBXTeamLogEventTypeSmartSyncOptOut } @objc public var asSsoChangePolicy: DBXTeamLogEventTypeSsoChangePolicy? { - self as? DBXTeamLogEventTypeSsoChangePolicy + return self as? DBXTeamLogEventTypeSsoChangePolicy + } + + @objc + public var asStackCrossTeamAccessPolicyChanged: DBXTeamLogEventTypeStackCrossTeamAccessPolicyChanged? { + return self as? DBXTeamLogEventTypeStackCrossTeamAccessPolicyChanged } @objc public var asTeamBrandingPolicyChanged: DBXTeamLogEventTypeTeamBrandingPolicyChanged? { - self as? DBXTeamLogEventTypeTeamBrandingPolicyChanged + return self as? DBXTeamLogEventTypeTeamBrandingPolicyChanged } @objc public var asTeamExtensionsPolicyChanged: DBXTeamLogEventTypeTeamExtensionsPolicyChanged? { - self as? DBXTeamLogEventTypeTeamExtensionsPolicyChanged + return self as? DBXTeamLogEventTypeTeamExtensionsPolicyChanged + } + + @objc + public var asTeamMemberStorageRequestPolicyChanged: DBXTeamLogEventTypeTeamMemberStorageRequestPolicyChanged? { + return self as? DBXTeamLogEventTypeTeamMemberStorageRequestPolicyChanged } @objc public var asTeamSelectiveSyncPolicyChanged: DBXTeamLogEventTypeTeamSelectiveSyncPolicyChanged? { - self as? DBXTeamLogEventTypeTeamSelectiveSyncPolicyChanged + return self as? DBXTeamLogEventTypeTeamSelectiveSyncPolicyChanged } @objc public var asTeamSharingWhitelistSubjectsChanged: DBXTeamLogEventTypeTeamSharingWhitelistSubjectsChanged? { - self as? DBXTeamLogEventTypeTeamSharingWhitelistSubjectsChanged + return self as? DBXTeamLogEventTypeTeamSharingWhitelistSubjectsChanged } @objc public var asTfaAddException: DBXTeamLogEventTypeTfaAddException? { - self as? DBXTeamLogEventTypeTfaAddException + return self as? DBXTeamLogEventTypeTfaAddException } @objc public var asTfaChangePolicy: DBXTeamLogEventTypeTfaChangePolicy? { - self as? DBXTeamLogEventTypeTfaChangePolicy + return self as? DBXTeamLogEventTypeTfaChangePolicy } @objc public var asTfaRemoveException: DBXTeamLogEventTypeTfaRemoveException? { - self as? DBXTeamLogEventTypeTfaRemoveException + return self as? DBXTeamLogEventTypeTfaRemoveException + } + + @objc + public var asTopLevelContentPolicyChanged: DBXTeamLogEventTypeTopLevelContentPolicyChanged? { + return self as? DBXTeamLogEventTypeTopLevelContentPolicyChanged } @objc public var asTwoAccountChangePolicy: DBXTeamLogEventTypeTwoAccountChangePolicy? { - self as? DBXTeamLogEventTypeTwoAccountChangePolicy + return self as? DBXTeamLogEventTypeTwoAccountChangePolicy } @objc public var asViewerInfoPolicyChanged: DBXTeamLogEventTypeViewerInfoPolicyChanged? { - self as? DBXTeamLogEventTypeViewerInfoPolicyChanged + return self as? DBXTeamLogEventTypeViewerInfoPolicyChanged } @objc public var asWatermarkingPolicyChanged: DBXTeamLogEventTypeWatermarkingPolicyChanged? { - self as? DBXTeamLogEventTypeWatermarkingPolicyChanged + return self as? DBXTeamLogEventTypeWatermarkingPolicyChanged } @objc public var asWebSessionsChangeActiveSessionLimit: DBXTeamLogEventTypeWebSessionsChangeActiveSessionLimit? { - self as? DBXTeamLogEventTypeWebSessionsChangeActiveSessionLimit + return self as? DBXTeamLogEventTypeWebSessionsChangeActiveSessionLimit } @objc public var asWebSessionsChangeFixedLengthPolicy: DBXTeamLogEventTypeWebSessionsChangeFixedLengthPolicy? { - self as? DBXTeamLogEventTypeWebSessionsChangeFixedLengthPolicy + return self as? DBXTeamLogEventTypeWebSessionsChangeFixedLengthPolicy } @objc public var asWebSessionsChangeIdleLengthPolicy: DBXTeamLogEventTypeWebSessionsChangeIdleLengthPolicy? { - self as? DBXTeamLogEventTypeWebSessionsChangeIdleLengthPolicy + return self as? DBXTeamLogEventTypeWebSessionsChangeIdleLengthPolicy } @objc public var asDataResidencyMigrationRequestSuccessful: DBXTeamLogEventTypeDataResidencyMigrationRequestSuccessful? { - self as? DBXTeamLogEventTypeDataResidencyMigrationRequestSuccessful + return self as? DBXTeamLogEventTypeDataResidencyMigrationRequestSuccessful } @objc public var asDataResidencyMigrationRequestUnsuccessful: DBXTeamLogEventTypeDataResidencyMigrationRequestUnsuccessful? { - self as? DBXTeamLogEventTypeDataResidencyMigrationRequestUnsuccessful + return self as? DBXTeamLogEventTypeDataResidencyMigrationRequestUnsuccessful } @objc public var asTeamMergeFrom: DBXTeamLogEventTypeTeamMergeFrom? { - self as? DBXTeamLogEventTypeTeamMergeFrom + return self as? DBXTeamLogEventTypeTeamMergeFrom } @objc public var asTeamMergeTo: DBXTeamLogEventTypeTeamMergeTo? { - self as? DBXTeamLogEventTypeTeamMergeTo + return self as? DBXTeamLogEventTypeTeamMergeTo } @objc public var asTeamProfileAddBackground: DBXTeamLogEventTypeTeamProfileAddBackground? { - self as? DBXTeamLogEventTypeTeamProfileAddBackground + return self as? DBXTeamLogEventTypeTeamProfileAddBackground } @objc public var asTeamProfileAddLogo: DBXTeamLogEventTypeTeamProfileAddLogo? { - self as? DBXTeamLogEventTypeTeamProfileAddLogo + return self as? DBXTeamLogEventTypeTeamProfileAddLogo } @objc public var asTeamProfileChangeBackground: DBXTeamLogEventTypeTeamProfileChangeBackground? { - self as? DBXTeamLogEventTypeTeamProfileChangeBackground + return self as? DBXTeamLogEventTypeTeamProfileChangeBackground } @objc public var asTeamProfileChangeDefaultLanguage: DBXTeamLogEventTypeTeamProfileChangeDefaultLanguage? { - self as? DBXTeamLogEventTypeTeamProfileChangeDefaultLanguage + return self as? DBXTeamLogEventTypeTeamProfileChangeDefaultLanguage } @objc public var asTeamProfileChangeLogo: DBXTeamLogEventTypeTeamProfileChangeLogo? { - self as? DBXTeamLogEventTypeTeamProfileChangeLogo + return self as? DBXTeamLogEventTypeTeamProfileChangeLogo } @objc public var asTeamProfileChangeName: DBXTeamLogEventTypeTeamProfileChangeName? { - self as? DBXTeamLogEventTypeTeamProfileChangeName + return self as? DBXTeamLogEventTypeTeamProfileChangeName } @objc public var asTeamProfileRemoveBackground: DBXTeamLogEventTypeTeamProfileRemoveBackground? { - self as? DBXTeamLogEventTypeTeamProfileRemoveBackground + return self as? DBXTeamLogEventTypeTeamProfileRemoveBackground } @objc public var asTeamProfileRemoveLogo: DBXTeamLogEventTypeTeamProfileRemoveLogo? { - self as? DBXTeamLogEventTypeTeamProfileRemoveLogo + return self as? DBXTeamLogEventTypeTeamProfileRemoveLogo + } + + @objc + public var asPasskeyAdd: DBXTeamLogEventTypePasskeyAdd? { + return self as? DBXTeamLogEventTypePasskeyAdd + } + + @objc + public var asPasskeyRemove: DBXTeamLogEventTypePasskeyRemove? { + return self as? DBXTeamLogEventTypePasskeyRemove } @objc public var asTfaAddBackupPhone: DBXTeamLogEventTypeTfaAddBackupPhone? { - self as? DBXTeamLogEventTypeTfaAddBackupPhone + return self as? DBXTeamLogEventTypeTfaAddBackupPhone } @objc public var asTfaAddSecurityKey: DBXTeamLogEventTypeTfaAddSecurityKey? { - self as? DBXTeamLogEventTypeTfaAddSecurityKey + return self as? DBXTeamLogEventTypeTfaAddSecurityKey } @objc public var asTfaChangeBackupPhone: DBXTeamLogEventTypeTfaChangeBackupPhone? { - self as? DBXTeamLogEventTypeTfaChangeBackupPhone + return self as? DBXTeamLogEventTypeTfaChangeBackupPhone } @objc public var asTfaChangeStatus: DBXTeamLogEventTypeTfaChangeStatus? { - self as? DBXTeamLogEventTypeTfaChangeStatus + return self as? DBXTeamLogEventTypeTfaChangeStatus } @objc public var asTfaRemoveBackupPhone: DBXTeamLogEventTypeTfaRemoveBackupPhone? { - self as? DBXTeamLogEventTypeTfaRemoveBackupPhone + return self as? DBXTeamLogEventTypeTfaRemoveBackupPhone } @objc public var asTfaRemoveSecurityKey: DBXTeamLogEventTypeTfaRemoveSecurityKey? { - self as? DBXTeamLogEventTypeTfaRemoveSecurityKey + return self as? DBXTeamLogEventTypeTfaRemoveSecurityKey } @objc public var asTfaReset: DBXTeamLogEventTypeTfaReset? { - self as? DBXTeamLogEventTypeTfaReset + return self as? DBXTeamLogEventTypeTfaReset } @objc public var asChangedEnterpriseAdminRole: DBXTeamLogEventTypeChangedEnterpriseAdminRole? { - self as? DBXTeamLogEventTypeChangedEnterpriseAdminRole + return self as? DBXTeamLogEventTypeChangedEnterpriseAdminRole } @objc public var asChangedEnterpriseConnectedTeamStatus: DBXTeamLogEventTypeChangedEnterpriseConnectedTeamStatus? { - self as? DBXTeamLogEventTypeChangedEnterpriseConnectedTeamStatus + return self as? DBXTeamLogEventTypeChangedEnterpriseConnectedTeamStatus } @objc public var asEndedEnterpriseAdminSession: DBXTeamLogEventTypeEndedEnterpriseAdminSession? { - self as? DBXTeamLogEventTypeEndedEnterpriseAdminSession + return self as? DBXTeamLogEventTypeEndedEnterpriseAdminSession } @objc public var asEndedEnterpriseAdminSessionDeprecated: DBXTeamLogEventTypeEndedEnterpriseAdminSessionDeprecated? { - self as? DBXTeamLogEventTypeEndedEnterpriseAdminSessionDeprecated + return self as? DBXTeamLogEventTypeEndedEnterpriseAdminSessionDeprecated } @objc public var asEnterpriseSettingsLocking: DBXTeamLogEventTypeEnterpriseSettingsLocking? { - self as? DBXTeamLogEventTypeEnterpriseSettingsLocking + return self as? DBXTeamLogEventTypeEnterpriseSettingsLocking } @objc public var asGuestAdminChangeStatus: DBXTeamLogEventTypeGuestAdminChangeStatus? { - self as? DBXTeamLogEventTypeGuestAdminChangeStatus + return self as? DBXTeamLogEventTypeGuestAdminChangeStatus } @objc public var asStartedEnterpriseAdminSession: DBXTeamLogEventTypeStartedEnterpriseAdminSession? { - self as? DBXTeamLogEventTypeStartedEnterpriseAdminSession + return self as? DBXTeamLogEventTypeStartedEnterpriseAdminSession } @objc public var asTeamMergeRequestAccepted: DBXTeamLogEventTypeTeamMergeRequestAccepted? { - self as? DBXTeamLogEventTypeTeamMergeRequestAccepted + return self as? DBXTeamLogEventTypeTeamMergeRequestAccepted } @objc public var asTeamMergeRequestAcceptedShownToPrimaryTeam: DBXTeamLogEventTypeTeamMergeRequestAcceptedShownToPrimaryTeam? { - self as? DBXTeamLogEventTypeTeamMergeRequestAcceptedShownToPrimaryTeam + return self as? DBXTeamLogEventTypeTeamMergeRequestAcceptedShownToPrimaryTeam } @objc public var asTeamMergeRequestAcceptedShownToSecondaryTeam: DBXTeamLogEventTypeTeamMergeRequestAcceptedShownToSecondaryTeam? { - self as? DBXTeamLogEventTypeTeamMergeRequestAcceptedShownToSecondaryTeam + return self as? DBXTeamLogEventTypeTeamMergeRequestAcceptedShownToSecondaryTeam } @objc public var asTeamMergeRequestAutoCanceled: DBXTeamLogEventTypeTeamMergeRequestAutoCanceled? { - self as? DBXTeamLogEventTypeTeamMergeRequestAutoCanceled + return self as? DBXTeamLogEventTypeTeamMergeRequestAutoCanceled } @objc public var asTeamMergeRequestCanceled: DBXTeamLogEventTypeTeamMergeRequestCanceled? { - self as? DBXTeamLogEventTypeTeamMergeRequestCanceled + return self as? DBXTeamLogEventTypeTeamMergeRequestCanceled } @objc public var asTeamMergeRequestCanceledShownToPrimaryTeam: DBXTeamLogEventTypeTeamMergeRequestCanceledShownToPrimaryTeam? { - self as? DBXTeamLogEventTypeTeamMergeRequestCanceledShownToPrimaryTeam + return self as? DBXTeamLogEventTypeTeamMergeRequestCanceledShownToPrimaryTeam } @objc public var asTeamMergeRequestCanceledShownToSecondaryTeam: DBXTeamLogEventTypeTeamMergeRequestCanceledShownToSecondaryTeam? { - self as? DBXTeamLogEventTypeTeamMergeRequestCanceledShownToSecondaryTeam + return self as? DBXTeamLogEventTypeTeamMergeRequestCanceledShownToSecondaryTeam } @objc public var asTeamMergeRequestExpired: DBXTeamLogEventTypeTeamMergeRequestExpired? { - self as? DBXTeamLogEventTypeTeamMergeRequestExpired + return self as? DBXTeamLogEventTypeTeamMergeRequestExpired } @objc public var asTeamMergeRequestExpiredShownToPrimaryTeam: DBXTeamLogEventTypeTeamMergeRequestExpiredShownToPrimaryTeam? { - self as? DBXTeamLogEventTypeTeamMergeRequestExpiredShownToPrimaryTeam + return self as? DBXTeamLogEventTypeTeamMergeRequestExpiredShownToPrimaryTeam } @objc public var asTeamMergeRequestExpiredShownToSecondaryTeam: DBXTeamLogEventTypeTeamMergeRequestExpiredShownToSecondaryTeam? { - self as? DBXTeamLogEventTypeTeamMergeRequestExpiredShownToSecondaryTeam + return self as? DBXTeamLogEventTypeTeamMergeRequestExpiredShownToSecondaryTeam } @objc public var asTeamMergeRequestRejectedShownToPrimaryTeam: DBXTeamLogEventTypeTeamMergeRequestRejectedShownToPrimaryTeam? { - self as? DBXTeamLogEventTypeTeamMergeRequestRejectedShownToPrimaryTeam + return self as? DBXTeamLogEventTypeTeamMergeRequestRejectedShownToPrimaryTeam } @objc public var asTeamMergeRequestRejectedShownToSecondaryTeam: DBXTeamLogEventTypeTeamMergeRequestRejectedShownToSecondaryTeam? { - self as? DBXTeamLogEventTypeTeamMergeRequestRejectedShownToSecondaryTeam + return self as? DBXTeamLogEventTypeTeamMergeRequestRejectedShownToSecondaryTeam } @objc public var asTeamMergeRequestReminder: DBXTeamLogEventTypeTeamMergeRequestReminder? { - self as? DBXTeamLogEventTypeTeamMergeRequestReminder + return self as? DBXTeamLogEventTypeTeamMergeRequestReminder } @objc public var asTeamMergeRequestReminderShownToPrimaryTeam: DBXTeamLogEventTypeTeamMergeRequestReminderShownToPrimaryTeam? { - self as? DBXTeamLogEventTypeTeamMergeRequestReminderShownToPrimaryTeam + return self as? DBXTeamLogEventTypeTeamMergeRequestReminderShownToPrimaryTeam } @objc public var asTeamMergeRequestReminderShownToSecondaryTeam: DBXTeamLogEventTypeTeamMergeRequestReminderShownToSecondaryTeam? { - self as? DBXTeamLogEventTypeTeamMergeRequestReminderShownToSecondaryTeam + return self as? DBXTeamLogEventTypeTeamMergeRequestReminderShownToSecondaryTeam } @objc public var asTeamMergeRequestRevoked: DBXTeamLogEventTypeTeamMergeRequestRevoked? { - self as? DBXTeamLogEventTypeTeamMergeRequestRevoked + return self as? DBXTeamLogEventTypeTeamMergeRequestRevoked } @objc public var asTeamMergeRequestSentShownToPrimaryTeam: DBXTeamLogEventTypeTeamMergeRequestSentShownToPrimaryTeam? { - self as? DBXTeamLogEventTypeTeamMergeRequestSentShownToPrimaryTeam + return self as? DBXTeamLogEventTypeTeamMergeRequestSentShownToPrimaryTeam } @objc public var asTeamMergeRequestSentShownToSecondaryTeam: DBXTeamLogEventTypeTeamMergeRequestSentShownToSecondaryTeam? { - self as? DBXTeamLogEventTypeTeamMergeRequestSentShownToSecondaryTeam + return self as? DBXTeamLogEventTypeTeamMergeRequestSentShownToSecondaryTeam } @objc public var asOther: DBXTeamLogEventTypeOther? { - self as? DBXTeamLogEventTypeOther + return self as? DBXTeamLogEventTypeOther } } @@ -23647,7 +30595,7 @@ public class DBXTeamLogEventTypeAdminAlertingAlertStateChanged: DBXTeamLogEventT @objc public init(_ arg: DBXTeamLogAdminAlertingAlertStateChangedType) { - self.adminAlertingAlertStateChanged = arg + adminAlertingAlertStateChanged = arg let swift = TeamLog.EventType.adminAlertingAlertStateChanged(arg.swift) super.init(swift: swift) } @@ -23661,7 +30609,7 @@ public class DBXTeamLogEventTypeAdminAlertingChangedAlertConfig: DBXTeamLogEvent @objc public init(_ arg: DBXTeamLogAdminAlertingChangedAlertConfigType) { - self.adminAlertingChangedAlertConfig = arg + adminAlertingChangedAlertConfig = arg let swift = TeamLog.EventType.adminAlertingChangedAlertConfig(arg.swift) super.init(swift: swift) } @@ -23675,7 +30623,7 @@ public class DBXTeamLogEventTypeAdminAlertingTriggeredAlert: DBXTeamLogEventType @objc public init(_ arg: DBXTeamLogAdminAlertingTriggeredAlertType) { - self.adminAlertingTriggeredAlert = arg + adminAlertingTriggeredAlert = arg let swift = TeamLog.EventType.adminAlertingTriggeredAlert(arg.swift) super.init(swift: swift) } @@ -23689,7 +30637,7 @@ public class DBXTeamLogEventTypeRansomwareRestoreProcessCompleted: DBXTeamLogEve @objc public init(_ arg: DBXTeamLogRansomwareRestoreProcessCompletedType) { - self.ransomwareRestoreProcessCompleted = arg + ransomwareRestoreProcessCompleted = arg let swift = TeamLog.EventType.ransomwareRestoreProcessCompleted(arg.swift) super.init(swift: swift) } @@ -23703,7 +30651,7 @@ public class DBXTeamLogEventTypeRansomwareRestoreProcessStarted: DBXTeamLogEvent @objc public init(_ arg: DBXTeamLogRansomwareRestoreProcessStartedType) { - self.ransomwareRestoreProcessStarted = arg + ransomwareRestoreProcessStarted = arg let swift = TeamLog.EventType.ransomwareRestoreProcessStarted(arg.swift) super.init(swift: swift) } @@ -23717,7 +30665,7 @@ public class DBXTeamLogEventTypeAppBlockedByPermissions: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogAppBlockedByPermissionsType) { - self.appBlockedByPermissions = arg + appBlockedByPermissions = arg let swift = TeamLog.EventType.appBlockedByPermissions(arg.swift) super.init(swift: swift) } @@ -23731,7 +30679,7 @@ public class DBXTeamLogEventTypeAppLinkTeam: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogAppLinkTeamType) { - self.appLinkTeam = arg + appLinkTeam = arg let swift = TeamLog.EventType.appLinkTeam(arg.swift) super.init(swift: swift) } @@ -23745,7 +30693,7 @@ public class DBXTeamLogEventTypeAppLinkUser: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogAppLinkUserType) { - self.appLinkUser = arg + appLinkUser = arg let swift = TeamLog.EventType.appLinkUser(arg.swift) super.init(swift: swift) } @@ -23759,7 +30707,7 @@ public class DBXTeamLogEventTypeAppUnlinkTeam: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogAppUnlinkTeamType) { - self.appUnlinkTeam = arg + appUnlinkTeam = arg let swift = TeamLog.EventType.appUnlinkTeam(arg.swift) super.init(swift: swift) } @@ -23773,7 +30721,7 @@ public class DBXTeamLogEventTypeAppUnlinkUser: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogAppUnlinkUserType) { - self.appUnlinkUser = arg + appUnlinkUser = arg let swift = TeamLog.EventType.appUnlinkUser(arg.swift) super.init(swift: swift) } @@ -23787,7 +30735,7 @@ public class DBXTeamLogEventTypeIntegrationConnected: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogIntegrationConnectedType) { - self.integrationConnected = arg + integrationConnected = arg let swift = TeamLog.EventType.integrationConnected(arg.swift) super.init(swift: swift) } @@ -23801,7 +30749,7 @@ public class DBXTeamLogEventTypeIntegrationDisconnected: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogIntegrationDisconnectedType) { - self.integrationDisconnected = arg + integrationDisconnected = arg let swift = TeamLog.EventType.integrationDisconnected(arg.swift) super.init(swift: swift) } @@ -23815,7 +30763,7 @@ public class DBXTeamLogEventTypeFileAddComment: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogFileAddCommentType) { - self.fileAddComment = arg + fileAddComment = arg let swift = TeamLog.EventType.fileAddComment(arg.swift) super.init(swift: swift) } @@ -23829,7 +30777,7 @@ public class DBXTeamLogEventTypeFileChangeCommentSubscription: DBXTeamLogEventTy @objc public init(_ arg: DBXTeamLogFileChangeCommentSubscriptionType) { - self.fileChangeCommentSubscription = arg + fileChangeCommentSubscription = arg let swift = TeamLog.EventType.fileChangeCommentSubscription(arg.swift) super.init(swift: swift) } @@ -23843,7 +30791,7 @@ public class DBXTeamLogEventTypeFileDeleteComment: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogFileDeleteCommentType) { - self.fileDeleteComment = arg + fileDeleteComment = arg let swift = TeamLog.EventType.fileDeleteComment(arg.swift) super.init(swift: swift) } @@ -23857,7 +30805,7 @@ public class DBXTeamLogEventTypeFileEditComment: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogFileEditCommentType) { - self.fileEditComment = arg + fileEditComment = arg let swift = TeamLog.EventType.fileEditComment(arg.swift) super.init(swift: swift) } @@ -23871,7 +30819,7 @@ public class DBXTeamLogEventTypeFileLikeComment: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogFileLikeCommentType) { - self.fileLikeComment = arg + fileLikeComment = arg let swift = TeamLog.EventType.fileLikeComment(arg.swift) super.init(swift: swift) } @@ -23885,7 +30833,7 @@ public class DBXTeamLogEventTypeFileResolveComment: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogFileResolveCommentType) { - self.fileResolveComment = arg + fileResolveComment = arg let swift = TeamLog.EventType.fileResolveComment(arg.swift) super.init(swift: swift) } @@ -23899,7 +30847,7 @@ public class DBXTeamLogEventTypeFileUnlikeComment: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogFileUnlikeCommentType) { - self.fileUnlikeComment = arg + fileUnlikeComment = arg let swift = TeamLog.EventType.fileUnlikeComment(arg.swift) super.init(swift: swift) } @@ -23913,12 +30861,460 @@ public class DBXTeamLogEventTypeFileUnresolveComment: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogFileUnresolveCommentType) { - self.fileUnresolveComment = arg + fileUnresolveComment = arg let swift = TeamLog.EventType.fileUnresolveComment(arg.swift) super.init(swift: swift) } } +/// (dash) Added a comment to a stack +@objc +public class DBXTeamLogEventTypeDashAddedCommentToStack: DBXTeamLogEventType { + @objc + public var dashAddedCommentToStack: DBXTeamLogDashAddedCommentToStackType + + @objc + public init(_ arg: DBXTeamLogDashAddedCommentToStackType) { + dashAddedCommentToStack = arg + let swift = TeamLog.EventType.dashAddedCommentToStack(arg.swift) + super.init(swift: swift) + } +} + +/// (dash) Connected to a user connector +@objc +public class DBXTeamLogEventTypeDashAddedConnector: DBXTeamLogEventType { + @objc + public var dashAddedConnector: DBXTeamLogDashAddedConnectorType + + @objc + public init(_ arg: DBXTeamLogDashAddedConnectorType) { + dashAddedConnector = arg + let swift = TeamLog.EventType.dashAddedConnector(arg.swift) + super.init(swift: swift) + } +} + +/// (dash) Added a link to a stack +@objc +public class DBXTeamLogEventTypeDashAddedLinkToStack: DBXTeamLogEventType { + @objc + public var dashAddedLinkToStack: DBXTeamLogDashAddedLinkToStackType + + @objc + public init(_ arg: DBXTeamLogDashAddedLinkToStackType) { + dashAddedLinkToStack = arg + let swift = TeamLog.EventType.dashAddedLinkToStack(arg.swift) + super.init(swift: swift) + } +} + +/// (dash) Admin added an email domain to the team allowlist +@objc +public class DBXTeamLogEventTypeDashAddedTeamEmailDomainAllowlist: DBXTeamLogEventType { + @objc + public var dashAddedTeamEmailDomainAllowlist: DBXTeamLogDashAddedTeamEmailDomainAllowlistType + + @objc + public init(_ arg: DBXTeamLogDashAddedTeamEmailDomainAllowlistType) { + dashAddedTeamEmailDomainAllowlist = arg + let swift = TeamLog.EventType.dashAddedTeamEmailDomainAllowlist(arg.swift) + super.init(swift: swift) + } +} + +/// (dash) Admin added an admin connector +@objc +public class DBXTeamLogEventTypeDashAdminAddedOrgWideConnector: DBXTeamLogEventType { + @objc + public var dashAdminAddedOrgWideConnector: DBXTeamLogDashAdminAddedOrgWideConnectorType + + @objc + public init(_ arg: DBXTeamLogDashAdminAddedOrgWideConnectorType) { + dashAdminAddedOrgWideConnector = arg + let swift = TeamLog.EventType.dashAdminAddedOrgWideConnector(arg.swift) + super.init(swift: swift) + } +} + +/// (dash) Admin disabled a user connector +@objc +public class DBXTeamLogEventTypeDashAdminDisabledConnector: DBXTeamLogEventType { + @objc + public var dashAdminDisabledConnector: DBXTeamLogDashAdminDisabledConnectorType + + @objc + public init(_ arg: DBXTeamLogDashAdminDisabledConnectorType) { + dashAdminDisabledConnector = arg + let swift = TeamLog.EventType.dashAdminDisabledConnector(arg.swift) + super.init(swift: swift) + } +} + +/// (dash) Admin enabled a user connector +@objc +public class DBXTeamLogEventTypeDashAdminEnabledConnector: DBXTeamLogEventType { + @objc + public var dashAdminEnabledConnector: DBXTeamLogDashAdminEnabledConnectorType + + @objc + public init(_ arg: DBXTeamLogDashAdminEnabledConnectorType) { + dashAdminEnabledConnector = arg + let swift = TeamLog.EventType.dashAdminEnabledConnector(arg.swift) + super.init(swift: swift) + } +} + +/// (dash) Admin removed an admin connector +@objc +public class DBXTeamLogEventTypeDashAdminRemovedOrgWideConnector: DBXTeamLogEventType { + @objc + public var dashAdminRemovedOrgWideConnector: DBXTeamLogDashAdminRemovedOrgWideConnectorType + + @objc + public init(_ arg: DBXTeamLogDashAdminRemovedOrgWideConnectorType) { + dashAdminRemovedOrgWideConnector = arg + let swift = TeamLog.EventType.dashAdminRemovedOrgWideConnector(arg.swift) + super.init(swift: swift) + } +} + +/// (dash) Archived a stack +@objc +public class DBXTeamLogEventTypeDashArchivedStack: DBXTeamLogEventType { + @objc + public var dashArchivedStack: DBXTeamLogDashArchivedStackType + + @objc + public init(_ arg: DBXTeamLogDashArchivedStackType) { + dashArchivedStack = arg + let swift = TeamLog.EventType.dashArchivedStack(arg.swift) + super.init(swift: swift) + } +} + +/// (dash) Changed the audience of a shared link to a stack +@objc +public class DBXTeamLogEventTypeDashChangedAudienceOfSharedLinkToStack: DBXTeamLogEventType { + @objc + public var dashChangedAudienceOfSharedLinkToStack: DBXTeamLogDashChangedAudienceOfSharedLinkToStackType + + @objc + public init(_ arg: DBXTeamLogDashChangedAudienceOfSharedLinkToStackType) { + dashChangedAudienceOfSharedLinkToStack = arg + let swift = TeamLog.EventType.dashChangedAudienceOfSharedLinkToStack(arg.swift) + super.init(swift: swift) + } +} + +/// (dash) Cloned stack +@objc +public class DBXTeamLogEventTypeDashClonedStack: DBXTeamLogEventType { + @objc + public var dashClonedStack: DBXTeamLogDashClonedStackType + + @objc + public init(_ arg: DBXTeamLogDashClonedStackType) { + dashClonedStack = arg + let swift = TeamLog.EventType.dashClonedStack(arg.swift) + super.init(swift: swift) + } +} + +/// (dash) Called a tool on a connector +@objc +public class DBXTeamLogEventTypeDashConnectorToolsCall: DBXTeamLogEventType { + @objc + public var dashConnectorToolsCall: DBXTeamLogDashConnectorToolsCallType + + @objc + public init(_ arg: DBXTeamLogDashConnectorToolsCallType) { + dashConnectorToolsCall = arg + let swift = TeamLog.EventType.dashConnectorToolsCall(arg.swift) + super.init(swift: swift) + } +} + +/// (dash) Created a stack +@objc +public class DBXTeamLogEventTypeDashCreatedStack: DBXTeamLogEventType { + @objc + public var dashCreatedStack: DBXTeamLogDashCreatedStackType + + @objc + public init(_ arg: DBXTeamLogDashCreatedStackType) { + dashCreatedStack = arg + let swift = TeamLog.EventType.dashCreatedStack(arg.swift) + super.init(swift: swift) + } +} + +/// (dash) Deleted a comment from a stack +@objc +public class DBXTeamLogEventTypeDashDeletedCommentFromStack: DBXTeamLogEventType { + @objc + public var dashDeletedCommentFromStack: DBXTeamLogDashDeletedCommentFromStackType + + @objc + public init(_ arg: DBXTeamLogDashDeletedCommentFromStackType) { + dashDeletedCommentFromStack = arg + let swift = TeamLog.EventType.dashDeletedCommentFromStack(arg.swift) + super.init(swift: swift) + } +} + +/// (dash) Deleted a stack +@objc +public class DBXTeamLogEventTypeDashDeletedStack: DBXTeamLogEventType { + @objc + public var dashDeletedStack: DBXTeamLogDashDeletedStackType + + @objc + public init(_ arg: DBXTeamLogDashDeletedStackType) { + dashDeletedStack = arg + let swift = TeamLog.EventType.dashDeletedStack(arg.swift) + super.init(swift: swift) + } +} + +/// (dash) Edited a comment in a stack +@objc +public class DBXTeamLogEventTypeDashEditedCommentInStack: DBXTeamLogEventType { + @objc + public var dashEditedCommentInStack: DBXTeamLogDashEditedCommentInStackType + + @objc + public init(_ arg: DBXTeamLogDashEditedCommentInStackType) { + dashEditedCommentInStack = arg + let swift = TeamLog.EventType.dashEditedCommentInStack(arg.swift) + super.init(swift: swift) + } +} + +/// (dash) External user opened a stack +@objc +public class DBXTeamLogEventTypeDashExternalUserOpenedStack: DBXTeamLogEventType { + @objc + public var dashExternalUserOpenedStack: DBXTeamLogDashExternalUserOpenedStackType + + @objc + public init(_ arg: DBXTeamLogDashExternalUserOpenedStackType) { + dashExternalUserOpenedStack = arg + let swift = TeamLog.EventType.dashExternalUserOpenedStack(arg.swift) + super.init(swift: swift) + } +} + +/// (dash) Opened the desktop app for the first time +@objc +public class DBXTeamLogEventTypeDashFirstLaunchedDesktop: DBXTeamLogEventType { + @objc + public var dashFirstLaunchedDesktop: DBXTeamLogDashFirstLaunchedDesktopType + + @objc + public init(_ arg: DBXTeamLogDashFirstLaunchedDesktopType) { + dashFirstLaunchedDesktop = arg + let swift = TeamLog.EventType.dashFirstLaunchedDesktop(arg.swift) + super.init(swift: swift) + } +} + +/// (dash) Opened the extension for the first time +@objc +public class DBXTeamLogEventTypeDashFirstLaunchedExtension: DBXTeamLogEventType { + @objc + public var dashFirstLaunchedExtension: DBXTeamLogDashFirstLaunchedExtensionType + + @objc + public init(_ arg: DBXTeamLogDashFirstLaunchedExtensionType) { + dashFirstLaunchedExtension = arg + let swift = TeamLog.EventType.dashFirstLaunchedExtension(arg.swift) + super.init(swift: swift) + } +} + +/// (dash) Opened the web Start Page for the first time +@objc +public class DBXTeamLogEventTypeDashFirstLaunchedWebStartPage: DBXTeamLogEventType { + @objc + public var dashFirstLaunchedWebStartPage: DBXTeamLogDashFirstLaunchedWebStartPageType + + @objc + public init(_ arg: DBXTeamLogDashFirstLaunchedWebStartPageType) { + dashFirstLaunchedWebStartPage = arg + let swift = TeamLog.EventType.dashFirstLaunchedWebStartPage(arg.swift) + super.init(swift: swift) + } +} + +/// (dash) Checked access permissions to a stack +@objc +public class DBXTeamLogEventTypeDashOpenedSharedLinkToStack: DBXTeamLogEventType { + @objc + public var dashOpenedSharedLinkToStack: DBXTeamLogDashOpenedSharedLinkToStackType + + @objc + public init(_ arg: DBXTeamLogDashOpenedSharedLinkToStackType) { + dashOpenedSharedLinkToStack = arg + let swift = TeamLog.EventType.dashOpenedSharedLinkToStack(arg.swift) + super.init(swift: swift) + } +} + +/// (dash) Opened a stack +@objc +public class DBXTeamLogEventTypeDashOpenedStack: DBXTeamLogEventType { + @objc + public var dashOpenedStack: DBXTeamLogDashOpenedStackType + + @objc + public init(_ arg: DBXTeamLogDashOpenedStackType) { + dashOpenedStack = arg + let swift = TeamLog.EventType.dashOpenedStack(arg.swift) + super.init(swift: swift) + } +} + +/// (dash) Changed the preview opt-out status +@objc +public class DBXTeamLogEventTypeDashPreviewOptOutStatusChanged: DBXTeamLogEventType { + @objc + public var dashPreviewOptOutStatusChanged: DBXTeamLogDashPreviewOptOutStatusChangedType + + @objc + public init(_ arg: DBXTeamLogDashPreviewOptOutStatusChangedType) { + dashPreviewOptOutStatusChanged = arg + let swift = TeamLog.EventType.dashPreviewOptOutStatusChanged(arg.swift) + super.init(swift: swift) + } +} + +/// (dash) Disconnected a user connector +@objc +public class DBXTeamLogEventTypeDashRemovedConnector: DBXTeamLogEventType { + @objc + public var dashRemovedConnector: DBXTeamLogDashRemovedConnectorType + + @objc + public init(_ arg: DBXTeamLogDashRemovedConnectorType) { + dashRemovedConnector = arg + let swift = TeamLog.EventType.dashRemovedConnector(arg.swift) + super.init(swift: swift) + } +} + +/// (dash) Removed a link from a stack +@objc +public class DBXTeamLogEventTypeDashRemovedLinkFromStack: DBXTeamLogEventType { + @objc + public var dashRemovedLinkFromStack: DBXTeamLogDashRemovedLinkFromStackType + + @objc + public init(_ arg: DBXTeamLogDashRemovedLinkFromStackType) { + dashRemovedLinkFromStack = arg + let swift = TeamLog.EventType.dashRemovedLinkFromStack(arg.swift) + super.init(swift: swift) + } +} + +/// (dash) Removed a shared link to a stack +@objc +public class DBXTeamLogEventTypeDashRemovedSharedLinkToStack: DBXTeamLogEventType { + @objc + public var dashRemovedSharedLinkToStack: DBXTeamLogDashRemovedSharedLinkToStackType + + @objc + public init(_ arg: DBXTeamLogDashRemovedSharedLinkToStackType) { + dashRemovedSharedLinkToStack = arg + let swift = TeamLog.EventType.dashRemovedSharedLinkToStack(arg.swift) + super.init(swift: swift) + } +} + +/// (dash) Admin removed an email domain from the team allowlist +@objc +public class DBXTeamLogEventTypeDashRemovedTeamEmailDomainAllowlist: DBXTeamLogEventType { + @objc + public var dashRemovedTeamEmailDomainAllowlist: DBXTeamLogDashRemovedTeamEmailDomainAllowlistType + + @objc + public init(_ arg: DBXTeamLogDashRemovedTeamEmailDomainAllowlistType) { + dashRemovedTeamEmailDomainAllowlist = arg + let swift = TeamLog.EventType.dashRemovedTeamEmailDomainAllowlist(arg.swift) + super.init(swift: swift) + } +} + +/// (dash) Renamed a stack +@objc +public class DBXTeamLogEventTypeDashRenamedStack: DBXTeamLogEventType { + @objc + public var dashRenamedStack: DBXTeamLogDashRenamedStackType + + @objc + public init(_ arg: DBXTeamLogDashRenamedStackType) { + dashRenamedStack = arg + let swift = TeamLog.EventType.dashRenamedStack(arg.swift) + super.init(swift: swift) + } +} + +/// (dash) Shared a link to a stack +@objc +public class DBXTeamLogEventTypeDashSharedLinkToStack: DBXTeamLogEventType { + @objc + public var dashSharedLinkToStack: DBXTeamLogDashSharedLinkToStackType + + @objc + public init(_ arg: DBXTeamLogDashSharedLinkToStackType) { + dashSharedLinkToStack = arg + let swift = TeamLog.EventType.dashSharedLinkToStack(arg.swift) + super.init(swift: swift) + } +} + +/// (dash) Unarchived a stack +@objc +public class DBXTeamLogEventTypeDashUnarchivedStack: DBXTeamLogEventType { + @objc + public var dashUnarchivedStack: DBXTeamLogDashUnarchivedStackType + + @objc + public init(_ arg: DBXTeamLogDashUnarchivedStackType) { + dashUnarchivedStack = arg + let swift = TeamLog.EventType.dashUnarchivedStack(arg.swift) + super.init(swift: swift) + } +} + +/// (dash) Member viewed a company stack +@objc +public class DBXTeamLogEventTypeDashViewedCompanyStack: DBXTeamLogEventType { + @objc + public var dashViewedCompanyStack: DBXTeamLogDashViewedCompanyStackType + + @objc + public init(_ arg: DBXTeamLogDashViewedCompanyStackType) { + dashViewedCompanyStack = arg + let swift = TeamLog.EventType.dashViewedCompanyStack(arg.swift) + super.init(swift: swift) + } +} + +/// (dash) Admin viewed the external AI activity report +@objc +public class DBXTeamLogEventTypeDashViewedExternalAiActivityReport: DBXTeamLogEventType { + @objc + public var dashViewedExternalAiActivityReport: DBXTeamLogDashViewedExternalAiActivityReportType + + @objc + public init(_ arg: DBXTeamLogDashViewedExternalAiActivityReportType) { + dashViewedExternalAiActivityReport = arg + let swift = TeamLog.EventType.dashViewedExternalAiActivityReport(arg.swift) + super.init(swift: swift) + } +} + /// (data_governance) Added folders to policy @objc public class DBXTeamLogEventTypeGovernancePolicyAddFolders: DBXTeamLogEventType { @@ -23927,7 +31323,7 @@ public class DBXTeamLogEventTypeGovernancePolicyAddFolders: DBXTeamLogEventType @objc public init(_ arg: DBXTeamLogGovernancePolicyAddFoldersType) { - self.governancePolicyAddFolders = arg + governancePolicyAddFolders = arg let swift = TeamLog.EventType.governancePolicyAddFolders(arg.swift) super.init(swift: swift) } @@ -23941,7 +31337,7 @@ public class DBXTeamLogEventTypeGovernancePolicyAddFolderFailed: DBXTeamLogEvent @objc public init(_ arg: DBXTeamLogGovernancePolicyAddFolderFailedType) { - self.governancePolicyAddFolderFailed = arg + governancePolicyAddFolderFailed = arg let swift = TeamLog.EventType.governancePolicyAddFolderFailed(arg.swift) super.init(swift: swift) } @@ -23955,7 +31351,7 @@ public class DBXTeamLogEventTypeGovernancePolicyContentDisposed: DBXTeamLogEvent @objc public init(_ arg: DBXTeamLogGovernancePolicyContentDisposedType) { - self.governancePolicyContentDisposed = arg + governancePolicyContentDisposed = arg let swift = TeamLog.EventType.governancePolicyContentDisposed(arg.swift) super.init(swift: swift) } @@ -23969,7 +31365,7 @@ public class DBXTeamLogEventTypeGovernancePolicyCreate: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogGovernancePolicyCreateType) { - self.governancePolicyCreate = arg + governancePolicyCreate = arg let swift = TeamLog.EventType.governancePolicyCreate(arg.swift) super.init(swift: swift) } @@ -23983,7 +31379,7 @@ public class DBXTeamLogEventTypeGovernancePolicyDelete: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogGovernancePolicyDeleteType) { - self.governancePolicyDelete = arg + governancePolicyDelete = arg let swift = TeamLog.EventType.governancePolicyDelete(arg.swift) super.init(swift: swift) } @@ -23997,7 +31393,7 @@ public class DBXTeamLogEventTypeGovernancePolicyEditDetails: DBXTeamLogEventType @objc public init(_ arg: DBXTeamLogGovernancePolicyEditDetailsType) { - self.governancePolicyEditDetails = arg + governancePolicyEditDetails = arg let swift = TeamLog.EventType.governancePolicyEditDetails(arg.swift) super.init(swift: swift) } @@ -24011,7 +31407,7 @@ public class DBXTeamLogEventTypeGovernancePolicyEditDuration: DBXTeamLogEventTyp @objc public init(_ arg: DBXTeamLogGovernancePolicyEditDurationType) { - self.governancePolicyEditDuration = arg + governancePolicyEditDuration = arg let swift = TeamLog.EventType.governancePolicyEditDuration(arg.swift) super.init(swift: swift) } @@ -24025,7 +31421,7 @@ public class DBXTeamLogEventTypeGovernancePolicyExportCreated: DBXTeamLogEventTy @objc public init(_ arg: DBXTeamLogGovernancePolicyExportCreatedType) { - self.governancePolicyExportCreated = arg + governancePolicyExportCreated = arg let swift = TeamLog.EventType.governancePolicyExportCreated(arg.swift) super.init(swift: swift) } @@ -24039,7 +31435,7 @@ public class DBXTeamLogEventTypeGovernancePolicyExportRemoved: DBXTeamLogEventTy @objc public init(_ arg: DBXTeamLogGovernancePolicyExportRemovedType) { - self.governancePolicyExportRemoved = arg + governancePolicyExportRemoved = arg let swift = TeamLog.EventType.governancePolicyExportRemoved(arg.swift) super.init(swift: swift) } @@ -24053,7 +31449,7 @@ public class DBXTeamLogEventTypeGovernancePolicyRemoveFolders: DBXTeamLogEventTy @objc public init(_ arg: DBXTeamLogGovernancePolicyRemoveFoldersType) { - self.governancePolicyRemoveFolders = arg + governancePolicyRemoveFolders = arg let swift = TeamLog.EventType.governancePolicyRemoveFolders(arg.swift) super.init(swift: swift) } @@ -24067,7 +31463,7 @@ public class DBXTeamLogEventTypeGovernancePolicyReportCreated: DBXTeamLogEventTy @objc public init(_ arg: DBXTeamLogGovernancePolicyReportCreatedType) { - self.governancePolicyReportCreated = arg + governancePolicyReportCreated = arg let swift = TeamLog.EventType.governancePolicyReportCreated(arg.swift) super.init(swift: swift) } @@ -24081,7 +31477,7 @@ public class DBXTeamLogEventTypeGovernancePolicyZipPartDownloaded: DBXTeamLogEve @objc public init(_ arg: DBXTeamLogGovernancePolicyZipPartDownloadedType) { - self.governancePolicyZipPartDownloaded = arg + governancePolicyZipPartDownloaded = arg let swift = TeamLog.EventType.governancePolicyZipPartDownloaded(arg.swift) super.init(swift: swift) } @@ -24095,7 +31491,7 @@ public class DBXTeamLogEventTypeLegalHoldsActivateAHold: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogLegalHoldsActivateAHoldType) { - self.legalHoldsActivateAHold = arg + legalHoldsActivateAHold = arg let swift = TeamLog.EventType.legalHoldsActivateAHold(arg.swift) super.init(swift: swift) } @@ -24109,7 +31505,7 @@ public class DBXTeamLogEventTypeLegalHoldsAddMembers: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogLegalHoldsAddMembersType) { - self.legalHoldsAddMembers = arg + legalHoldsAddMembers = arg let swift = TeamLog.EventType.legalHoldsAddMembers(arg.swift) super.init(swift: swift) } @@ -24123,7 +31519,7 @@ public class DBXTeamLogEventTypeLegalHoldsChangeHoldDetails: DBXTeamLogEventType @objc public init(_ arg: DBXTeamLogLegalHoldsChangeHoldDetailsType) { - self.legalHoldsChangeHoldDetails = arg + legalHoldsChangeHoldDetails = arg let swift = TeamLog.EventType.legalHoldsChangeHoldDetails(arg.swift) super.init(swift: swift) } @@ -24137,7 +31533,7 @@ public class DBXTeamLogEventTypeLegalHoldsChangeHoldName: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogLegalHoldsChangeHoldNameType) { - self.legalHoldsChangeHoldName = arg + legalHoldsChangeHoldName = arg let swift = TeamLog.EventType.legalHoldsChangeHoldName(arg.swift) super.init(swift: swift) } @@ -24151,7 +31547,7 @@ public class DBXTeamLogEventTypeLegalHoldsExportAHold: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogLegalHoldsExportAHoldType) { - self.legalHoldsExportAHold = arg + legalHoldsExportAHold = arg let swift = TeamLog.EventType.legalHoldsExportAHold(arg.swift) super.init(swift: swift) } @@ -24165,7 +31561,7 @@ public class DBXTeamLogEventTypeLegalHoldsExportCancelled: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogLegalHoldsExportCancelledType) { - self.legalHoldsExportCancelled = arg + legalHoldsExportCancelled = arg let swift = TeamLog.EventType.legalHoldsExportCancelled(arg.swift) super.init(swift: swift) } @@ -24179,7 +31575,7 @@ public class DBXTeamLogEventTypeLegalHoldsExportDownloaded: DBXTeamLogEventType @objc public init(_ arg: DBXTeamLogLegalHoldsExportDownloadedType) { - self.legalHoldsExportDownloaded = arg + legalHoldsExportDownloaded = arg let swift = TeamLog.EventType.legalHoldsExportDownloaded(arg.swift) super.init(swift: swift) } @@ -24193,7 +31589,7 @@ public class DBXTeamLogEventTypeLegalHoldsExportRemoved: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogLegalHoldsExportRemovedType) { - self.legalHoldsExportRemoved = arg + legalHoldsExportRemoved = arg let swift = TeamLog.EventType.legalHoldsExportRemoved(arg.swift) super.init(swift: swift) } @@ -24207,7 +31603,7 @@ public class DBXTeamLogEventTypeLegalHoldsReleaseAHold: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogLegalHoldsReleaseAHoldType) { - self.legalHoldsReleaseAHold = arg + legalHoldsReleaseAHold = arg let swift = TeamLog.EventType.legalHoldsReleaseAHold(arg.swift) super.init(swift: swift) } @@ -24221,7 +31617,7 @@ public class DBXTeamLogEventTypeLegalHoldsRemoveMembers: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogLegalHoldsRemoveMembersType) { - self.legalHoldsRemoveMembers = arg + legalHoldsRemoveMembers = arg let swift = TeamLog.EventType.legalHoldsRemoveMembers(arg.swift) super.init(swift: swift) } @@ -24235,7 +31631,7 @@ public class DBXTeamLogEventTypeLegalHoldsReportAHold: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogLegalHoldsReportAHoldType) { - self.legalHoldsReportAHold = arg + legalHoldsReportAHold = arg let swift = TeamLog.EventType.legalHoldsReportAHold(arg.swift) super.init(swift: swift) } @@ -24249,7 +31645,7 @@ public class DBXTeamLogEventTypeDeviceChangeIpDesktop: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogDeviceChangeIpDesktopType) { - self.deviceChangeIpDesktop = arg + deviceChangeIpDesktop = arg let swift = TeamLog.EventType.deviceChangeIpDesktop(arg.swift) super.init(swift: swift) } @@ -24263,7 +31659,7 @@ public class DBXTeamLogEventTypeDeviceChangeIpMobile: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogDeviceChangeIpMobileType) { - self.deviceChangeIpMobile = arg + deviceChangeIpMobile = arg let swift = TeamLog.EventType.deviceChangeIpMobile(arg.swift) super.init(swift: swift) } @@ -24277,7 +31673,7 @@ public class DBXTeamLogEventTypeDeviceChangeIpWeb: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogDeviceChangeIpWebType) { - self.deviceChangeIpWeb = arg + deviceChangeIpWeb = arg let swift = TeamLog.EventType.deviceChangeIpWeb(arg.swift) super.init(swift: swift) } @@ -24291,7 +31687,7 @@ public class DBXTeamLogEventTypeDeviceDeleteOnUnlinkFail: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogDeviceDeleteOnUnlinkFailType) { - self.deviceDeleteOnUnlinkFail = arg + deviceDeleteOnUnlinkFail = arg let swift = TeamLog.EventType.deviceDeleteOnUnlinkFail(arg.swift) super.init(swift: swift) } @@ -24305,7 +31701,7 @@ public class DBXTeamLogEventTypeDeviceDeleteOnUnlinkSuccess: DBXTeamLogEventType @objc public init(_ arg: DBXTeamLogDeviceDeleteOnUnlinkSuccessType) { - self.deviceDeleteOnUnlinkSuccess = arg + deviceDeleteOnUnlinkSuccess = arg let swift = TeamLog.EventType.deviceDeleteOnUnlinkSuccess(arg.swift) super.init(swift: swift) } @@ -24319,7 +31715,7 @@ public class DBXTeamLogEventTypeDeviceLinkFail: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogDeviceLinkFailType) { - self.deviceLinkFail = arg + deviceLinkFail = arg let swift = TeamLog.EventType.deviceLinkFail(arg.swift) super.init(swift: swift) } @@ -24333,7 +31729,7 @@ public class DBXTeamLogEventTypeDeviceLinkSuccess: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogDeviceLinkSuccessType) { - self.deviceLinkSuccess = arg + deviceLinkSuccess = arg let swift = TeamLog.EventType.deviceLinkSuccess(arg.swift) super.init(swift: swift) } @@ -24347,7 +31743,7 @@ public class DBXTeamLogEventTypeDeviceManagementDisabled: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogDeviceManagementDisabledType) { - self.deviceManagementDisabled = arg + deviceManagementDisabled = arg let swift = TeamLog.EventType.deviceManagementDisabled(arg.swift) super.init(swift: swift) } @@ -24361,7 +31757,7 @@ public class DBXTeamLogEventTypeDeviceManagementEnabled: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogDeviceManagementEnabledType) { - self.deviceManagementEnabled = arg + deviceManagementEnabled = arg let swift = TeamLog.EventType.deviceManagementEnabled(arg.swift) super.init(swift: swift) } @@ -24375,7 +31771,7 @@ public class DBXTeamLogEventTypeDeviceSyncBackupStatusChanged: DBXTeamLogEventTy @objc public init(_ arg: DBXTeamLogDeviceSyncBackupStatusChangedType) { - self.deviceSyncBackupStatusChanged = arg + deviceSyncBackupStatusChanged = arg let swift = TeamLog.EventType.deviceSyncBackupStatusChanged(arg.swift) super.init(swift: swift) } @@ -24389,7 +31785,7 @@ public class DBXTeamLogEventTypeDeviceUnlink: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogDeviceUnlinkType) { - self.deviceUnlink = arg + deviceUnlink = arg let swift = TeamLog.EventType.deviceUnlink(arg.swift) super.init(swift: swift) } @@ -24403,7 +31799,7 @@ public class DBXTeamLogEventTypeDropboxPasswordsExported: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogDropboxPasswordsExportedType) { - self.dropboxPasswordsExported = arg + dropboxPasswordsExported = arg let swift = TeamLog.EventType.dropboxPasswordsExported(arg.swift) super.init(swift: swift) } @@ -24417,7 +31813,7 @@ public class DBXTeamLogEventTypeDropboxPasswordsNewDeviceEnrolled: DBXTeamLogEve @objc public init(_ arg: DBXTeamLogDropboxPasswordsNewDeviceEnrolledType) { - self.dropboxPasswordsNewDeviceEnrolled = arg + dropboxPasswordsNewDeviceEnrolled = arg let swift = TeamLog.EventType.dropboxPasswordsNewDeviceEnrolled(arg.swift) super.init(swift: swift) } @@ -24431,7 +31827,7 @@ public class DBXTeamLogEventTypeEmmRefreshAuthToken: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogEmmRefreshAuthTokenType) { - self.emmRefreshAuthToken = arg + emmRefreshAuthToken = arg let swift = TeamLog.EventType.emmRefreshAuthToken(arg.swift) super.init(swift: swift) } @@ -24445,7 +31841,7 @@ public class DBXTeamLogEventTypeExternalDriveBackupEligibilityStatusChecked: DBX @objc public init(_ arg: DBXTeamLogExternalDriveBackupEligibilityStatusCheckedType) { - self.externalDriveBackupEligibilityStatusChecked = arg + externalDriveBackupEligibilityStatusChecked = arg let swift = TeamLog.EventType.externalDriveBackupEligibilityStatusChecked(arg.swift) super.init(swift: swift) } @@ -24459,7 +31855,7 @@ public class DBXTeamLogEventTypeExternalDriveBackupStatusChanged: DBXTeamLogEven @objc public init(_ arg: DBXTeamLogExternalDriveBackupStatusChangedType) { - self.externalDriveBackupStatusChanged = arg + externalDriveBackupStatusChanged = arg let swift = TeamLog.EventType.externalDriveBackupStatusChanged(arg.swift) super.init(swift: swift) } @@ -24473,7 +31869,7 @@ public class DBXTeamLogEventTypeAccountCaptureChangeAvailability: DBXTeamLogEven @objc public init(_ arg: DBXTeamLogAccountCaptureChangeAvailabilityType) { - self.accountCaptureChangeAvailability = arg + accountCaptureChangeAvailability = arg let swift = TeamLog.EventType.accountCaptureChangeAvailability(arg.swift) super.init(swift: swift) } @@ -24487,7 +31883,7 @@ public class DBXTeamLogEventTypeAccountCaptureMigrateAccount: DBXTeamLogEventTyp @objc public init(_ arg: DBXTeamLogAccountCaptureMigrateAccountType) { - self.accountCaptureMigrateAccount = arg + accountCaptureMigrateAccount = arg let swift = TeamLog.EventType.accountCaptureMigrateAccount(arg.swift) super.init(swift: swift) } @@ -24501,7 +31897,7 @@ public class DBXTeamLogEventTypeAccountCaptureNotificationEmailsSent: DBXTeamLog @objc public init(_ arg: DBXTeamLogAccountCaptureNotificationEmailsSentType) { - self.accountCaptureNotificationEmailsSent = arg + accountCaptureNotificationEmailsSent = arg let swift = TeamLog.EventType.accountCaptureNotificationEmailsSent(arg.swift) super.init(swift: swift) } @@ -24515,7 +31911,7 @@ public class DBXTeamLogEventTypeAccountCaptureRelinquishAccount: DBXTeamLogEvent @objc public init(_ arg: DBXTeamLogAccountCaptureRelinquishAccountType) { - self.accountCaptureRelinquishAccount = arg + accountCaptureRelinquishAccount = arg let swift = TeamLog.EventType.accountCaptureRelinquishAccount(arg.swift) super.init(swift: swift) } @@ -24529,7 +31925,7 @@ public class DBXTeamLogEventTypeDisabledDomainInvites: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogDisabledDomainInvitesType) { - self.disabledDomainInvites = arg + disabledDomainInvites = arg let swift = TeamLog.EventType.disabledDomainInvites(arg.swift) super.init(swift: swift) } @@ -24543,7 +31939,7 @@ public class DBXTeamLogEventTypeDomainInvitesApproveRequestToJoinTeam: DBXTeamLo @objc public init(_ arg: DBXTeamLogDomainInvitesApproveRequestToJoinTeamType) { - self.domainInvitesApproveRequestToJoinTeam = arg + domainInvitesApproveRequestToJoinTeam = arg let swift = TeamLog.EventType.domainInvitesApproveRequestToJoinTeam(arg.swift) super.init(swift: swift) } @@ -24557,7 +31953,7 @@ public class DBXTeamLogEventTypeDomainInvitesDeclineRequestToJoinTeam: DBXTeamLo @objc public init(_ arg: DBXTeamLogDomainInvitesDeclineRequestToJoinTeamType) { - self.domainInvitesDeclineRequestToJoinTeam = arg + domainInvitesDeclineRequestToJoinTeam = arg let swift = TeamLog.EventType.domainInvitesDeclineRequestToJoinTeam(arg.swift) super.init(swift: swift) } @@ -24571,7 +31967,7 @@ public class DBXTeamLogEventTypeDomainInvitesEmailExistingUsers: DBXTeamLogEvent @objc public init(_ arg: DBXTeamLogDomainInvitesEmailExistingUsersType) { - self.domainInvitesEmailExistingUsers = arg + domainInvitesEmailExistingUsers = arg let swift = TeamLog.EventType.domainInvitesEmailExistingUsers(arg.swift) super.init(swift: swift) } @@ -24585,7 +31981,7 @@ public class DBXTeamLogEventTypeDomainInvitesRequestToJoinTeam: DBXTeamLogEventT @objc public init(_ arg: DBXTeamLogDomainInvitesRequestToJoinTeamType) { - self.domainInvitesRequestToJoinTeam = arg + domainInvitesRequestToJoinTeam = arg let swift = TeamLog.EventType.domainInvitesRequestToJoinTeam(arg.swift) super.init(swift: swift) } @@ -24599,7 +31995,7 @@ public class DBXTeamLogEventTypeDomainInvitesSetInviteNewUserPrefToNo: DBXTeamLo @objc public init(_ arg: DBXTeamLogDomainInvitesSetInviteNewUserPrefToNoType) { - self.domainInvitesSetInviteNewUserPrefToNo = arg + domainInvitesSetInviteNewUserPrefToNo = arg let swift = TeamLog.EventType.domainInvitesSetInviteNewUserPrefToNo(arg.swift) super.init(swift: swift) } @@ -24613,7 +32009,7 @@ public class DBXTeamLogEventTypeDomainInvitesSetInviteNewUserPrefToYes: DBXTeamL @objc public init(_ arg: DBXTeamLogDomainInvitesSetInviteNewUserPrefToYesType) { - self.domainInvitesSetInviteNewUserPrefToYes = arg + domainInvitesSetInviteNewUserPrefToYes = arg let swift = TeamLog.EventType.domainInvitesSetInviteNewUserPrefToYes(arg.swift) super.init(swift: swift) } @@ -24627,7 +32023,7 @@ public class DBXTeamLogEventTypeDomainVerificationAddDomainFail: DBXTeamLogEvent @objc public init(_ arg: DBXTeamLogDomainVerificationAddDomainFailType) { - self.domainVerificationAddDomainFail = arg + domainVerificationAddDomainFail = arg let swift = TeamLog.EventType.domainVerificationAddDomainFail(arg.swift) super.init(swift: swift) } @@ -24641,7 +32037,7 @@ public class DBXTeamLogEventTypeDomainVerificationAddDomainSuccess: DBXTeamLogEv @objc public init(_ arg: DBXTeamLogDomainVerificationAddDomainSuccessType) { - self.domainVerificationAddDomainSuccess = arg + domainVerificationAddDomainSuccess = arg let swift = TeamLog.EventType.domainVerificationAddDomainSuccess(arg.swift) super.init(swift: swift) } @@ -24655,7 +32051,7 @@ public class DBXTeamLogEventTypeDomainVerificationRemoveDomain: DBXTeamLogEventT @objc public init(_ arg: DBXTeamLogDomainVerificationRemoveDomainType) { - self.domainVerificationRemoveDomain = arg + domainVerificationRemoveDomain = arg let swift = TeamLog.EventType.domainVerificationRemoveDomain(arg.swift) super.init(swift: swift) } @@ -24669,12 +32065,166 @@ public class DBXTeamLogEventTypeEnabledDomainInvites: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogEnabledDomainInvitesType) { - self.enabledDomainInvites = arg + enabledDomainInvites = arg let swift = TeamLog.EventType.enabledDomainInvites(arg.swift) super.init(swift: swift) } } +/// (encryption) Canceled team key rotation +@objc +public class DBXTeamLogEventTypeEncryptedFolderCancelTeamKeyRotation: DBXTeamLogEventType { + @objc + public var encryptedFolderCancelTeamKeyRotation: DBXTeamLogEncryptedFolderCancelTeamKeyRotationType + + @objc + public init(_ arg: DBXTeamLogEncryptedFolderCancelTeamKeyRotationType) { + encryptedFolderCancelTeamKeyRotation = arg + let swift = TeamLog.EventType.encryptedFolderCancelTeamKeyRotation(arg.swift) + super.init(swift: swift) + } +} + +/// (encryption) Added recovery key +@objc +public class DBXTeamLogEventTypeEncryptedFolderEnrollBackupKey: DBXTeamLogEventType { + @objc + public var encryptedFolderEnrollBackupKey: DBXTeamLogEncryptedFolderEnrollBackupKeyType + + @objc + public init(_ arg: DBXTeamLogEncryptedFolderEnrollBackupKeyType) { + encryptedFolderEnrollBackupKey = arg + let swift = TeamLog.EventType.encryptedFolderEnrollBackupKey(arg.swift) + super.init(swift: swift) + } +} + +/// (encryption) Enrolled device +@objc +public class DBXTeamLogEventTypeEncryptedFolderEnrollClient: DBXTeamLogEventType { + @objc + public var encryptedFolderEnrollClient: DBXTeamLogEncryptedFolderEnrollClientType + + @objc + public init(_ arg: DBXTeamLogEncryptedFolderEnrollClientType) { + encryptedFolderEnrollClient = arg + let swift = TeamLog.EventType.encryptedFolderEnrollClient(arg.swift) + super.init(swift: swift) + } +} + +/// (encryption) Activated team folder encryption +@objc +public class DBXTeamLogEventTypeEncryptedFolderEnrollTeam: DBXTeamLogEventType { + @objc + public var encryptedFolderEnrollTeam: DBXTeamLogEncryptedFolderEnrollTeamType + + @objc + public init(_ arg: DBXTeamLogEncryptedFolderEnrollTeamType) { + encryptedFolderEnrollTeam = arg + let swift = TeamLog.EventType.encryptedFolderEnrollTeam(arg.swift) + super.init(swift: swift) + } +} + +/// (encryption) Deactivated team folder encryption +@objc +public class DBXTeamLogEventTypeEncryptedFolderFinishTeamUnenrollment: DBXTeamLogEventType { + @objc + public var encryptedFolderFinishTeamUnenrollment: DBXTeamLogEncryptedFolderFinishTeamUnenrollmentType + + @objc + public init(_ arg: DBXTeamLogEncryptedFolderFinishTeamUnenrollmentType) { + encryptedFolderFinishTeamUnenrollment = arg + let swift = TeamLog.EventType.encryptedFolderFinishTeamUnenrollment(arg.swift) + super.init(swift: swift) + } +} + +/// (encryption) Initiated team key rotation +@objc +public class DBXTeamLogEventTypeEncryptedFolderInitTeamKeyRotation: DBXTeamLogEventType { + @objc + public var encryptedFolderInitTeamKeyRotation: DBXTeamLogEncryptedFolderInitTeamKeyRotationType + + @objc + public init(_ arg: DBXTeamLogEncryptedFolderInitTeamKeyRotationType) { + encryptedFolderInitTeamKeyRotation = arg + let swift = TeamLog.EventType.encryptedFolderInitTeamKeyRotation(arg.swift) + super.init(swift: swift) + } +} + +/// (encryption) Initiated deactivation of team folder encryption +@objc +public class DBXTeamLogEventTypeEncryptedFolderInitTeamUnenrollment: DBXTeamLogEventType { + @objc + public var encryptedFolderInitTeamUnenrollment: DBXTeamLogEncryptedFolderInitTeamUnenrollmentType + + @objc + public init(_ arg: DBXTeamLogEncryptedFolderInitTeamUnenrollmentType) { + encryptedFolderInitTeamUnenrollment = arg + let swift = TeamLog.EventType.encryptedFolderInitTeamUnenrollment(arg.swift) + super.init(swift: swift) + } +} + +/// (encryption) Removed recovery key +@objc +public class DBXTeamLogEventTypeEncryptedFolderRemoveBackupKey: DBXTeamLogEventType { + @objc + public var encryptedFolderRemoveBackupKey: DBXTeamLogEncryptedFolderRemoveBackupKeyType + + @objc + public init(_ arg: DBXTeamLogEncryptedFolderRemoveBackupKeyType) { + encryptedFolderRemoveBackupKey = arg + let swift = TeamLog.EventType.encryptedFolderRemoveBackupKey(arg.swift) + super.init(swift: swift) + } +} + +/// (encryption) Rotated team key +@objc +public class DBXTeamLogEventTypeEncryptedFolderRotateTeamKey: DBXTeamLogEventType { + @objc + public var encryptedFolderRotateTeamKey: DBXTeamLogEncryptedFolderRotateTeamKeyType + + @objc + public init(_ arg: DBXTeamLogEncryptedFolderRotateTeamKeyType) { + encryptedFolderRotateTeamKey = arg + let swift = TeamLog.EventType.encryptedFolderRotateTeamKey(arg.swift) + super.init(swift: swift) + } +} + +/// (encryption) Unenrolled device +@objc +public class DBXTeamLogEventTypeEncryptedFolderUnenrollClient: DBXTeamLogEventType { + @objc + public var encryptedFolderUnenrollClient: DBXTeamLogEncryptedFolderUnenrollClientType + + @objc + public init(_ arg: DBXTeamLogEncryptedFolderUnenrollClientType) { + encryptedFolderUnenrollClient = arg + let swift = TeamLog.EventType.encryptedFolderUnenrollClient(arg.swift) + super.init(swift: swift) + } +} + +/// (encryption) Activated team encryption key +@objc +public class DBXTeamLogEventTypeTeamEncryptionKeyActivateKey: DBXTeamLogEventType { + @objc + public var teamEncryptionKeyActivateKey: DBXTeamLogTeamEncryptionKeyActivateKeyType + + @objc + public init(_ arg: DBXTeamLogTeamEncryptionKeyActivateKeyType) { + teamEncryptionKeyActivateKey = arg + let swift = TeamLog.EventType.teamEncryptionKeyActivateKey(arg.swift) + super.init(swift: swift) + } +} + /// (encryption) Canceled team encryption key deletion @objc public class DBXTeamLogEventTypeTeamEncryptionKeyCancelKeyDeletion: DBXTeamLogEventType { @@ -24683,7 +32233,7 @@ public class DBXTeamLogEventTypeTeamEncryptionKeyCancelKeyDeletion: DBXTeamLogEv @objc public init(_ arg: DBXTeamLogTeamEncryptionKeyCancelKeyDeletionType) { - self.teamEncryptionKeyCancelKeyDeletion = arg + teamEncryptionKeyCancelKeyDeletion = arg let swift = TeamLog.EventType.teamEncryptionKeyCancelKeyDeletion(arg.swift) super.init(swift: swift) } @@ -24697,12 +32247,26 @@ public class DBXTeamLogEventTypeTeamEncryptionKeyCreateKey: DBXTeamLogEventType @objc public init(_ arg: DBXTeamLogTeamEncryptionKeyCreateKeyType) { - self.teamEncryptionKeyCreateKey = arg + teamEncryptionKeyCreateKey = arg let swift = TeamLog.EventType.teamEncryptionKeyCreateKey(arg.swift) super.init(swift: swift) } } +/// (encryption) Deactivated team encryption key +@objc +public class DBXTeamLogEventTypeTeamEncryptionKeyDeactivateKey: DBXTeamLogEventType { + @objc + public var teamEncryptionKeyDeactivateKey: DBXTeamLogTeamEncryptionKeyDeactivateKeyType + + @objc + public init(_ arg: DBXTeamLogTeamEncryptionKeyDeactivateKeyType) { + teamEncryptionKeyDeactivateKey = arg + let swift = TeamLog.EventType.teamEncryptionKeyDeactivateKey(arg.swift) + super.init(swift: swift) + } +} + /// (encryption) Deleted team encryption key @objc public class DBXTeamLogEventTypeTeamEncryptionKeyDeleteKey: DBXTeamLogEventType { @@ -24711,7 +32275,7 @@ public class DBXTeamLogEventTypeTeamEncryptionKeyDeleteKey: DBXTeamLogEventType @objc public init(_ arg: DBXTeamLogTeamEncryptionKeyDeleteKeyType) { - self.teamEncryptionKeyDeleteKey = arg + teamEncryptionKeyDeleteKey = arg let swift = TeamLog.EventType.teamEncryptionKeyDeleteKey(arg.swift) super.init(swift: swift) } @@ -24725,7 +32289,7 @@ public class DBXTeamLogEventTypeTeamEncryptionKeyDisableKey: DBXTeamLogEventType @objc public init(_ arg: DBXTeamLogTeamEncryptionKeyDisableKeyType) { - self.teamEncryptionKeyDisableKey = arg + teamEncryptionKeyDisableKey = arg let swift = TeamLog.EventType.teamEncryptionKeyDisableKey(arg.swift) super.init(swift: swift) } @@ -24739,7 +32303,7 @@ public class DBXTeamLogEventTypeTeamEncryptionKeyEnableKey: DBXTeamLogEventType @objc public init(_ arg: DBXTeamLogTeamEncryptionKeyEnableKeyType) { - self.teamEncryptionKeyEnableKey = arg + teamEncryptionKeyEnableKey = arg let swift = TeamLog.EventType.teamEncryptionKeyEnableKey(arg.swift) super.init(swift: swift) } @@ -24753,7 +32317,7 @@ public class DBXTeamLogEventTypeTeamEncryptionKeyRotateKey: DBXTeamLogEventType @objc public init(_ arg: DBXTeamLogTeamEncryptionKeyRotateKeyType) { - self.teamEncryptionKeyRotateKey = arg + teamEncryptionKeyRotateKey = arg let swift = TeamLog.EventType.teamEncryptionKeyRotateKey(arg.swift) super.init(swift: swift) } @@ -24767,7 +32331,7 @@ public class DBXTeamLogEventTypeTeamEncryptionKeyScheduleKeyDeletion: DBXTeamLog @objc public init(_ arg: DBXTeamLogTeamEncryptionKeyScheduleKeyDeletionType) { - self.teamEncryptionKeyScheduleKeyDeletion = arg + teamEncryptionKeyScheduleKeyDeletion = arg let swift = TeamLog.EventType.teamEncryptionKeyScheduleKeyDeletion(arg.swift) super.init(swift: swift) } @@ -24781,7 +32345,7 @@ public class DBXTeamLogEventTypeApplyNamingConvention: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogApplyNamingConventionType) { - self.applyNamingConvention = arg + applyNamingConvention = arg let swift = TeamLog.EventType.applyNamingConvention(arg.swift) super.init(swift: swift) } @@ -24795,7 +32359,7 @@ public class DBXTeamLogEventTypeCreateFolder: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogCreateFolderType) { - self.createFolder = arg + createFolder = arg let swift = TeamLog.EventType.createFolder(arg.swift) super.init(swift: swift) } @@ -24809,7 +32373,7 @@ public class DBXTeamLogEventTypeFileAdd: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogFileAddType) { - self.fileAdd = arg + fileAdd = arg let swift = TeamLog.EventType.fileAdd(arg.swift) super.init(swift: swift) } @@ -24823,7 +32387,7 @@ public class DBXTeamLogEventTypeFileAddFromAutomation: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogFileAddFromAutomationType) { - self.fileAddFromAutomation = arg + fileAddFromAutomation = arg let swift = TeamLog.EventType.fileAddFromAutomation(arg.swift) super.init(swift: swift) } @@ -24837,7 +32401,7 @@ public class DBXTeamLogEventTypeFileCopy: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogFileCopyType) { - self.fileCopy = arg + fileCopy = arg let swift = TeamLog.EventType.fileCopy(arg.swift) super.init(swift: swift) } @@ -24851,7 +32415,7 @@ public class DBXTeamLogEventTypeFileDelete: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogFileDeleteType) { - self.fileDelete = arg + fileDelete = arg let swift = TeamLog.EventType.fileDelete(arg.swift) super.init(swift: swift) } @@ -24865,7 +32429,7 @@ public class DBXTeamLogEventTypeFileDownload: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogFileDownloadType) { - self.fileDownload = arg + fileDownload = arg let swift = TeamLog.EventType.fileDownload(arg.swift) super.init(swift: swift) } @@ -24879,7 +32443,7 @@ public class DBXTeamLogEventTypeFileEdit: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogFileEditType) { - self.fileEdit = arg + fileEdit = arg let swift = TeamLog.EventType.fileEdit(arg.swift) super.init(swift: swift) } @@ -24893,7 +32457,7 @@ public class DBXTeamLogEventTypeFileGetCopyReference: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogFileGetCopyReferenceType) { - self.fileGetCopyReference = arg + fileGetCopyReference = arg let swift = TeamLog.EventType.fileGetCopyReference(arg.swift) super.init(swift: swift) } @@ -24907,7 +32471,7 @@ public class DBXTeamLogEventTypeFileLockingLockStatusChanged: DBXTeamLogEventTyp @objc public init(_ arg: DBXTeamLogFileLockingLockStatusChangedType) { - self.fileLockingLockStatusChanged = arg + fileLockingLockStatusChanged = arg let swift = TeamLog.EventType.fileLockingLockStatusChanged(arg.swift) super.init(swift: swift) } @@ -24921,7 +32485,7 @@ public class DBXTeamLogEventTypeFileMove: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogFileMoveType) { - self.fileMove = arg + fileMove = arg let swift = TeamLog.EventType.fileMove(arg.swift) super.init(swift: swift) } @@ -24935,7 +32499,7 @@ public class DBXTeamLogEventTypeFilePermanentlyDelete: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogFilePermanentlyDeleteType) { - self.filePermanentlyDelete = arg + filePermanentlyDelete = arg let swift = TeamLog.EventType.filePermanentlyDelete(arg.swift) super.init(swift: swift) } @@ -24949,7 +32513,7 @@ public class DBXTeamLogEventTypeFilePreview: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogFilePreviewType) { - self.filePreview = arg + filePreview = arg let swift = TeamLog.EventType.filePreview(arg.swift) super.init(swift: swift) } @@ -24963,7 +32527,7 @@ public class DBXTeamLogEventTypeFileRename: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogFileRenameType) { - self.fileRename = arg + fileRename = arg let swift = TeamLog.EventType.fileRename(arg.swift) super.init(swift: swift) } @@ -24977,7 +32541,7 @@ public class DBXTeamLogEventTypeFileRestore: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogFileRestoreType) { - self.fileRestore = arg + fileRestore = arg let swift = TeamLog.EventType.fileRestore(arg.swift) super.init(swift: swift) } @@ -24991,7 +32555,7 @@ public class DBXTeamLogEventTypeFileRevert: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogFileRevertType) { - self.fileRevert = arg + fileRevert = arg let swift = TeamLog.EventType.fileRevert(arg.swift) super.init(swift: swift) } @@ -25005,7 +32569,7 @@ public class DBXTeamLogEventTypeFileRollbackChanges: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogFileRollbackChangesType) { - self.fileRollbackChanges = arg + fileRollbackChanges = arg let swift = TeamLog.EventType.fileRollbackChanges(arg.swift) super.init(swift: swift) } @@ -25019,7 +32583,7 @@ public class DBXTeamLogEventTypeFileSaveCopyReference: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogFileSaveCopyReferenceType) { - self.fileSaveCopyReference = arg + fileSaveCopyReference = arg let swift = TeamLog.EventType.fileSaveCopyReference(arg.swift) super.init(swift: swift) } @@ -25033,7 +32597,7 @@ public class DBXTeamLogEventTypeFolderOverviewDescriptionChanged: DBXTeamLogEven @objc public init(_ arg: DBXTeamLogFolderOverviewDescriptionChangedType) { - self.folderOverviewDescriptionChanged = arg + folderOverviewDescriptionChanged = arg let swift = TeamLog.EventType.folderOverviewDescriptionChanged(arg.swift) super.init(swift: swift) } @@ -25047,7 +32611,7 @@ public class DBXTeamLogEventTypeFolderOverviewItemPinned: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogFolderOverviewItemPinnedType) { - self.folderOverviewItemPinned = arg + folderOverviewItemPinned = arg let swift = TeamLog.EventType.folderOverviewItemPinned(arg.swift) super.init(swift: swift) } @@ -25061,12 +32625,26 @@ public class DBXTeamLogEventTypeFolderOverviewItemUnpinned: DBXTeamLogEventType @objc public init(_ arg: DBXTeamLogFolderOverviewItemUnpinnedType) { - self.folderOverviewItemUnpinned = arg + folderOverviewItemUnpinned = arg let swift = TeamLog.EventType.folderOverviewItemUnpinned(arg.swift) super.init(swift: swift) } } +/// (file_operations) Downloaded files in Replay +@objc +public class DBXTeamLogEventTypeMediaHubFileDownloaded: DBXTeamLogEventType { + @objc + public var mediaHubFileDownloaded: DBXTeamLogMediaHubFileDownloadedType + + @objc + public init(_ arg: DBXTeamLogMediaHubFileDownloadedType) { + mediaHubFileDownloaded = arg + let swift = TeamLog.EventType.mediaHubFileDownloaded(arg.swift) + super.init(swift: swift) + } +} + /// (file_operations) Added a label @objc public class DBXTeamLogEventTypeObjectLabelAdded: DBXTeamLogEventType { @@ -25075,7 +32653,7 @@ public class DBXTeamLogEventTypeObjectLabelAdded: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogObjectLabelAddedType) { - self.objectLabelAdded = arg + objectLabelAdded = arg let swift = TeamLog.EventType.objectLabelAdded(arg.swift) super.init(swift: swift) } @@ -25089,7 +32667,7 @@ public class DBXTeamLogEventTypeObjectLabelRemoved: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogObjectLabelRemovedType) { - self.objectLabelRemoved = arg + objectLabelRemoved = arg let swift = TeamLog.EventType.objectLabelRemoved(arg.swift) super.init(swift: swift) } @@ -25103,7 +32681,7 @@ public class DBXTeamLogEventTypeObjectLabelUpdatedValue: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogObjectLabelUpdatedValueType) { - self.objectLabelUpdatedValue = arg + objectLabelUpdatedValue = arg let swift = TeamLog.EventType.objectLabelUpdatedValue(arg.swift) super.init(swift: swift) } @@ -25117,7 +32695,7 @@ public class DBXTeamLogEventTypeOrganizeFolderWithTidy: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogOrganizeFolderWithTidyType) { - self.organizeFolderWithTidy = arg + organizeFolderWithTidy = arg let swift = TeamLog.EventType.organizeFolderWithTidy(arg.swift) super.init(swift: swift) } @@ -25131,12 +32709,40 @@ public class DBXTeamLogEventTypeReplayFileDelete: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogReplayFileDeleteType) { - self.replayFileDelete = arg + replayFileDelete = arg let swift = TeamLog.EventType.replayFileDelete(arg.swift) super.init(swift: swift) } } +/// (file_operations) Downloaded files in Replay +@objc +public class DBXTeamLogEventTypeReplayFileDownloaded: DBXTeamLogEventType { + @objc + public var replayFileDownloaded: DBXTeamLogReplayFileDownloadedType + + @objc + public init(_ arg: DBXTeamLogReplayFileDownloadedType) { + replayFileDownloaded = arg + let swift = TeamLog.EventType.replayFileDownloaded(arg.swift) + super.init(swift: swift) + } +} + +/// (file_operations) Created a team project in Replay +@objc +public class DBXTeamLogEventTypeReplayTeamProjectCreated: DBXTeamLogEventType { + @objc + public var replayTeamProjectCreated: DBXTeamLogReplayTeamProjectCreatedType + + @objc + public init(_ arg: DBXTeamLogReplayTeamProjectCreatedType) { + replayTeamProjectCreated = arg + let swift = TeamLog.EventType.replayTeamProjectCreated(arg.swift) + super.init(swift: swift) + } +} + /// (file_operations) Rewound a folder @objc public class DBXTeamLogEventTypeRewindFolder: DBXTeamLogEventType { @@ -25145,7 +32751,7 @@ public class DBXTeamLogEventTypeRewindFolder: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogRewindFolderType) { - self.rewindFolder = arg + rewindFolder = arg let swift = TeamLog.EventType.rewindFolder(arg.swift) super.init(swift: swift) } @@ -25159,7 +32765,7 @@ public class DBXTeamLogEventTypeUndoNamingConvention: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogUndoNamingConventionType) { - self.undoNamingConvention = arg + undoNamingConvention = arg let swift = TeamLog.EventType.undoNamingConvention(arg.swift) super.init(swift: swift) } @@ -25173,7 +32779,7 @@ public class DBXTeamLogEventTypeUndoOrganizeFolderWithTidy: DBXTeamLogEventType @objc public init(_ arg: DBXTeamLogUndoOrganizeFolderWithTidyType) { - self.undoOrganizeFolderWithTidy = arg + undoOrganizeFolderWithTidy = arg let swift = TeamLog.EventType.undoOrganizeFolderWithTidy(arg.swift) super.init(swift: swift) } @@ -25187,7 +32793,7 @@ public class DBXTeamLogEventTypeUserTagsAdded: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogUserTagsAddedType) { - self.userTagsAdded = arg + userTagsAdded = arg let swift = TeamLog.EventType.userTagsAdded(arg.swift) super.init(swift: swift) } @@ -25201,7 +32807,7 @@ public class DBXTeamLogEventTypeUserTagsRemoved: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogUserTagsRemovedType) { - self.userTagsRemoved = arg + userTagsRemoved = arg let swift = TeamLog.EventType.userTagsRemoved(arg.swift) super.init(swift: swift) } @@ -25215,12 +32821,26 @@ public class DBXTeamLogEventTypeEmailIngestReceiveFile: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogEmailIngestReceiveFileType) { - self.emailIngestReceiveFile = arg + emailIngestReceiveFile = arg let swift = TeamLog.EventType.emailIngestReceiveFile(arg.swift) super.init(swift: swift) } } +/// (file_requests) Auto closed file request +@objc +public class DBXTeamLogEventTypeFileRequestAutoClose: DBXTeamLogEventType { + @objc + public var fileRequestAutoClose: DBXTeamLogFileRequestAutoCloseType + + @objc + public init(_ arg: DBXTeamLogFileRequestAutoCloseType) { + fileRequestAutoClose = arg + let swift = TeamLog.EventType.fileRequestAutoClose(arg.swift) + super.init(swift: swift) + } +} + /// (file_requests) Changed file request @objc public class DBXTeamLogEventTypeFileRequestChange: DBXTeamLogEventType { @@ -25229,7 +32849,7 @@ public class DBXTeamLogEventTypeFileRequestChange: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogFileRequestChangeType) { - self.fileRequestChange = arg + fileRequestChange = arg let swift = TeamLog.EventType.fileRequestChange(arg.swift) super.init(swift: swift) } @@ -25243,7 +32863,7 @@ public class DBXTeamLogEventTypeFileRequestClose: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogFileRequestCloseType) { - self.fileRequestClose = arg + fileRequestClose = arg let swift = TeamLog.EventType.fileRequestClose(arg.swift) super.init(swift: swift) } @@ -25257,7 +32877,7 @@ public class DBXTeamLogEventTypeFileRequestCreate: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogFileRequestCreateType) { - self.fileRequestCreate = arg + fileRequestCreate = arg let swift = TeamLog.EventType.fileRequestCreate(arg.swift) super.init(swift: swift) } @@ -25271,7 +32891,7 @@ public class DBXTeamLogEventTypeFileRequestDelete: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogFileRequestDeleteType) { - self.fileRequestDelete = arg + fileRequestDelete = arg let swift = TeamLog.EventType.fileRequestDelete(arg.swift) super.init(swift: swift) } @@ -25285,7 +32905,7 @@ public class DBXTeamLogEventTypeFileRequestReceiveFile: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogFileRequestReceiveFileType) { - self.fileRequestReceiveFile = arg + fileRequestReceiveFile = arg let swift = TeamLog.EventType.fileRequestReceiveFile(arg.swift) super.init(swift: swift) } @@ -25299,7 +32919,7 @@ public class DBXTeamLogEventTypeGroupAddExternalId: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogGroupAddExternalIdType) { - self.groupAddExternalId = arg + groupAddExternalId = arg let swift = TeamLog.EventType.groupAddExternalId(arg.swift) super.init(swift: swift) } @@ -25313,7 +32933,7 @@ public class DBXTeamLogEventTypeGroupAddMember: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogGroupAddMemberType) { - self.groupAddMember = arg + groupAddMember = arg let swift = TeamLog.EventType.groupAddMember(arg.swift) super.init(swift: swift) } @@ -25327,7 +32947,7 @@ public class DBXTeamLogEventTypeGroupChangeExternalId: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogGroupChangeExternalIdType) { - self.groupChangeExternalId = arg + groupChangeExternalId = arg let swift = TeamLog.EventType.groupChangeExternalId(arg.swift) super.init(swift: swift) } @@ -25341,7 +32961,7 @@ public class DBXTeamLogEventTypeGroupChangeManagementType: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogGroupChangeManagementTypeType) { - self.groupChangeManagementType = arg + groupChangeManagementType = arg let swift = TeamLog.EventType.groupChangeManagementType(arg.swift) super.init(swift: swift) } @@ -25355,7 +32975,7 @@ public class DBXTeamLogEventTypeGroupChangeMemberRole: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogGroupChangeMemberRoleType) { - self.groupChangeMemberRole = arg + groupChangeMemberRole = arg let swift = TeamLog.EventType.groupChangeMemberRole(arg.swift) super.init(swift: swift) } @@ -25369,7 +32989,7 @@ public class DBXTeamLogEventTypeGroupCreate: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogGroupCreateType) { - self.groupCreate = arg + groupCreate = arg let swift = TeamLog.EventType.groupCreate(arg.swift) super.init(swift: swift) } @@ -25383,7 +33003,7 @@ public class DBXTeamLogEventTypeGroupDelete: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogGroupDeleteType) { - self.groupDelete = arg + groupDelete = arg let swift = TeamLog.EventType.groupDelete(arg.swift) super.init(swift: swift) } @@ -25397,12 +33017,26 @@ public class DBXTeamLogEventTypeGroupDescriptionUpdated: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogGroupDescriptionUpdatedType) { - self.groupDescriptionUpdated = arg + groupDescriptionUpdated = arg let swift = TeamLog.EventType.groupDescriptionUpdated(arg.swift) super.init(swift: swift) } } +/// (groups) Changed group's external sharing setting +@objc +public class DBXTeamLogEventTypeGroupExternalSharingSettingOverrideChanged: DBXTeamLogEventType { + @objc + public var groupExternalSharingSettingOverrideChanged: DBXTeamLogGroupExternalSharingSettingOverrideChangedType + + @objc + public init(_ arg: DBXTeamLogGroupExternalSharingSettingOverrideChangedType) { + groupExternalSharingSettingOverrideChanged = arg + let swift = TeamLog.EventType.groupExternalSharingSettingOverrideChanged(arg.swift) + super.init(swift: swift) + } +} + /// (groups) Updated group join policy (deprecated, no longer logged) @objc public class DBXTeamLogEventTypeGroupJoinPolicyUpdated: DBXTeamLogEventType { @@ -25411,7 +33045,7 @@ public class DBXTeamLogEventTypeGroupJoinPolicyUpdated: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogGroupJoinPolicyUpdatedType) { - self.groupJoinPolicyUpdated = arg + groupJoinPolicyUpdated = arg let swift = TeamLog.EventType.groupJoinPolicyUpdated(arg.swift) super.init(swift: swift) } @@ -25425,7 +33059,7 @@ public class DBXTeamLogEventTypeGroupMoved: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogGroupMovedType) { - self.groupMoved = arg + groupMoved = arg let swift = TeamLog.EventType.groupMoved(arg.swift) super.init(swift: swift) } @@ -25439,7 +33073,7 @@ public class DBXTeamLogEventTypeGroupRemoveExternalId: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogGroupRemoveExternalIdType) { - self.groupRemoveExternalId = arg + groupRemoveExternalId = arg let swift = TeamLog.EventType.groupRemoveExternalId(arg.swift) super.init(swift: swift) } @@ -25453,7 +33087,7 @@ public class DBXTeamLogEventTypeGroupRemoveMember: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogGroupRemoveMemberType) { - self.groupRemoveMember = arg + groupRemoveMember = arg let swift = TeamLog.EventType.groupRemoveMember(arg.swift) super.init(swift: swift) } @@ -25467,7 +33101,7 @@ public class DBXTeamLogEventTypeGroupRename: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogGroupRenameType) { - self.groupRename = arg + groupRename = arg let swift = TeamLog.EventType.groupRename(arg.swift) super.init(swift: swift) } @@ -25481,7 +33115,7 @@ public class DBXTeamLogEventTypeAccountLockOrUnlocked: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogAccountLockOrUnlockedType) { - self.accountLockOrUnlocked = arg + accountLockOrUnlocked = arg let swift = TeamLog.EventType.accountLockOrUnlocked(arg.swift) super.init(swift: swift) } @@ -25495,7 +33129,7 @@ public class DBXTeamLogEventTypeEmmError: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogEmmErrorType) { - self.emmError = arg + emmError = arg let swift = TeamLog.EventType.emmError(arg.swift) super.init(swift: swift) } @@ -25509,7 +33143,7 @@ public class DBXTeamLogEventTypeGuestAdminSignedInViaTrustedTeams: DBXTeamLogEve @objc public init(_ arg: DBXTeamLogGuestAdminSignedInViaTrustedTeamsType) { - self.guestAdminSignedInViaTrustedTeams = arg + guestAdminSignedInViaTrustedTeams = arg let swift = TeamLog.EventType.guestAdminSignedInViaTrustedTeams(arg.swift) super.init(swift: swift) } @@ -25523,7 +33157,7 @@ public class DBXTeamLogEventTypeGuestAdminSignedOutViaTrustedTeams: DBXTeamLogEv @objc public init(_ arg: DBXTeamLogGuestAdminSignedOutViaTrustedTeamsType) { - self.guestAdminSignedOutViaTrustedTeams = arg + guestAdminSignedOutViaTrustedTeams = arg let swift = TeamLog.EventType.guestAdminSignedOutViaTrustedTeams(arg.swift) super.init(swift: swift) } @@ -25537,7 +33171,7 @@ public class DBXTeamLogEventTypeLoginFail: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogLoginFailType) { - self.loginFail = arg + loginFail = arg let swift = TeamLog.EventType.loginFail(arg.swift) super.init(swift: swift) } @@ -25551,7 +33185,7 @@ public class DBXTeamLogEventTypeLoginSuccess: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogLoginSuccessType) { - self.loginSuccess = arg + loginSuccess = arg let swift = TeamLog.EventType.loginSuccess(arg.swift) super.init(swift: swift) } @@ -25565,7 +33199,7 @@ public class DBXTeamLogEventTypeLogout: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogLogoutType) { - self.logout = arg + logout = arg let swift = TeamLog.EventType.logout(arg.swift) super.init(swift: swift) } @@ -25579,7 +33213,7 @@ public class DBXTeamLogEventTypeResellerSupportSessionEnd: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogResellerSupportSessionEndType) { - self.resellerSupportSessionEnd = arg + resellerSupportSessionEnd = arg let swift = TeamLog.EventType.resellerSupportSessionEnd(arg.swift) super.init(swift: swift) } @@ -25593,7 +33227,7 @@ public class DBXTeamLogEventTypeResellerSupportSessionStart: DBXTeamLogEventType @objc public init(_ arg: DBXTeamLogResellerSupportSessionStartType) { - self.resellerSupportSessionStart = arg + resellerSupportSessionStart = arg let swift = TeamLog.EventType.resellerSupportSessionStart(arg.swift) super.init(swift: swift) } @@ -25607,7 +33241,7 @@ public class DBXTeamLogEventTypeSignInAsSessionEnd: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogSignInAsSessionEndType) { - self.signInAsSessionEnd = arg + signInAsSessionEnd = arg let swift = TeamLog.EventType.signInAsSessionEnd(arg.swift) super.init(swift: swift) } @@ -25621,7 +33255,7 @@ public class DBXTeamLogEventTypeSignInAsSessionStart: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogSignInAsSessionStartType) { - self.signInAsSessionStart = arg + signInAsSessionStart = arg let swift = TeamLog.EventType.signInAsSessionStart(arg.swift) super.init(swift: swift) } @@ -25635,12 +33269,40 @@ public class DBXTeamLogEventTypeSsoError: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogSsoErrorType) { - self.ssoError = arg + ssoError = arg let swift = TeamLog.EventType.ssoError(arg.swift) super.init(swift: swift) } } +/// (members) Add-on Assigned +@objc +public class DBXTeamLogEventTypeAddonAssigned: DBXTeamLogEventType { + @objc + public var addonAssigned: DBXTeamLogAddonAssignedType + + @objc + public init(_ arg: DBXTeamLogAddonAssignedType) { + addonAssigned = arg + let swift = TeamLog.EventType.addonAssigned(arg.swift) + super.init(swift: swift) + } +} + +/// (members) Add-on Removed +@objc +public class DBXTeamLogEventTypeAddonRemoved: DBXTeamLogEventType { + @objc + public var addonRemoved: DBXTeamLogAddonRemovedType + + @objc + public init(_ arg: DBXTeamLogAddonRemovedType) { + addonRemoved = arg + let swift = TeamLog.EventType.addonRemoved(arg.swift) + super.init(swift: swift) + } +} + /// (members) Invited members to activate Backup @objc public class DBXTeamLogEventTypeBackupAdminInvitationSent: DBXTeamLogEventType { @@ -25649,7 +33311,7 @@ public class DBXTeamLogEventTypeBackupAdminInvitationSent: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogBackupAdminInvitationSentType) { - self.backupAdminInvitationSent = arg + backupAdminInvitationSent = arg let swift = TeamLog.EventType.backupAdminInvitationSent(arg.swift) super.init(swift: swift) } @@ -25663,7 +33325,7 @@ public class DBXTeamLogEventTypeBackupInvitationOpened: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogBackupInvitationOpenedType) { - self.backupInvitationOpened = arg + backupInvitationOpened = arg let swift = TeamLog.EventType.backupInvitationOpened(arg.swift) super.init(swift: swift) } @@ -25677,7 +33339,7 @@ public class DBXTeamLogEventTypeCreateTeamInviteLink: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogCreateTeamInviteLinkType) { - self.createTeamInviteLink = arg + createTeamInviteLink = arg let swift = TeamLog.EventType.createTeamInviteLink(arg.swift) super.init(swift: swift) } @@ -25691,7 +33353,7 @@ public class DBXTeamLogEventTypeDeleteTeamInviteLink: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogDeleteTeamInviteLinkType) { - self.deleteTeamInviteLink = arg + deleteTeamInviteLink = arg let swift = TeamLog.EventType.deleteTeamInviteLink(arg.swift) super.init(swift: swift) } @@ -25705,7 +33367,7 @@ public class DBXTeamLogEventTypeMemberAddExternalId: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogMemberAddExternalIdType) { - self.memberAddExternalId = arg + memberAddExternalId = arg let swift = TeamLog.EventType.memberAddExternalId(arg.swift) super.init(swift: swift) } @@ -25719,7 +33381,7 @@ public class DBXTeamLogEventTypeMemberAddName: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogMemberAddNameType) { - self.memberAddName = arg + memberAddName = arg let swift = TeamLog.EventType.memberAddName(arg.swift) super.init(swift: swift) } @@ -25733,7 +33395,7 @@ public class DBXTeamLogEventTypeMemberChangeAdminRole: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogMemberChangeAdminRoleType) { - self.memberChangeAdminRole = arg + memberChangeAdminRole = arg let swift = TeamLog.EventType.memberChangeAdminRole(arg.swift) super.init(swift: swift) } @@ -25747,7 +33409,7 @@ public class DBXTeamLogEventTypeMemberChangeEmail: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogMemberChangeEmailType) { - self.memberChangeEmail = arg + memberChangeEmail = arg let swift = TeamLog.EventType.memberChangeEmail(arg.swift) super.init(swift: swift) } @@ -25761,7 +33423,7 @@ public class DBXTeamLogEventTypeMemberChangeExternalId: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogMemberChangeExternalIdType) { - self.memberChangeExternalId = arg + memberChangeExternalId = arg let swift = TeamLog.EventType.memberChangeExternalId(arg.swift) super.init(swift: swift) } @@ -25775,7 +33437,7 @@ public class DBXTeamLogEventTypeMemberChangeMembershipType: DBXTeamLogEventType @objc public init(_ arg: DBXTeamLogMemberChangeMembershipTypeType) { - self.memberChangeMembershipType = arg + memberChangeMembershipType = arg let swift = TeamLog.EventType.memberChangeMembershipType(arg.swift) super.init(swift: swift) } @@ -25789,7 +33451,7 @@ public class DBXTeamLogEventTypeMemberChangeName: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogMemberChangeNameType) { - self.memberChangeName = arg + memberChangeName = arg let swift = TeamLog.EventType.memberChangeName(arg.swift) super.init(swift: swift) } @@ -25803,7 +33465,7 @@ public class DBXTeamLogEventTypeMemberChangeResellerRole: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogMemberChangeResellerRoleType) { - self.memberChangeResellerRole = arg + memberChangeResellerRole = arg let swift = TeamLog.EventType.memberChangeResellerRole(arg.swift) super.init(swift: swift) } @@ -25817,7 +33479,7 @@ public class DBXTeamLogEventTypeMemberChangeStatus: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogMemberChangeStatusType) { - self.memberChangeStatus = arg + memberChangeStatus = arg let swift = TeamLog.EventType.memberChangeStatus(arg.swift) super.init(swift: swift) } @@ -25831,7 +33493,7 @@ public class DBXTeamLogEventTypeMemberDeleteManualContacts: DBXTeamLogEventType @objc public init(_ arg: DBXTeamLogMemberDeleteManualContactsType) { - self.memberDeleteManualContacts = arg + memberDeleteManualContacts = arg let swift = TeamLog.EventType.memberDeleteManualContacts(arg.swift) super.init(swift: swift) } @@ -25845,12 +33507,26 @@ public class DBXTeamLogEventTypeMemberDeleteProfilePhoto: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogMemberDeleteProfilePhotoType) { - self.memberDeleteProfilePhoto = arg + memberDeleteProfilePhoto = arg let swift = TeamLog.EventType.memberDeleteProfilePhoto(arg.swift) super.init(swift: swift) } } +/// (members) Admin browsed a team member's folder contents +@objc +public class DBXTeamLogEventTypeMemberFolderContentsAccessed: DBXTeamLogEventType { + @objc + public var memberFolderContentsAccessed: DBXTeamLogMemberFolderContentsAccessedType + + @objc + public init(_ arg: DBXTeamLogMemberFolderContentsAccessedType) { + memberFolderContentsAccessed = arg + let swift = TeamLog.EventType.memberFolderContentsAccessed(arg.swift) + super.init(swift: swift) + } +} + /// (members) Permanently deleted contents of deleted team member account @objc public class DBXTeamLogEventTypeMemberPermanentlyDeleteAccountContents: DBXTeamLogEventType { @@ -25859,7 +33535,7 @@ public class DBXTeamLogEventTypeMemberPermanentlyDeleteAccountContents: DBXTeamL @objc public init(_ arg: DBXTeamLogMemberPermanentlyDeleteAccountContentsType) { - self.memberPermanentlyDeleteAccountContents = arg + memberPermanentlyDeleteAccountContents = arg let swift = TeamLog.EventType.memberPermanentlyDeleteAccountContents(arg.swift) super.init(swift: swift) } @@ -25873,7 +33549,7 @@ public class DBXTeamLogEventTypeMemberRemoveExternalId: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogMemberRemoveExternalIdType) { - self.memberRemoveExternalId = arg + memberRemoveExternalId = arg let swift = TeamLog.EventType.memberRemoveExternalId(arg.swift) super.init(swift: swift) } @@ -25887,7 +33563,7 @@ public class DBXTeamLogEventTypeMemberSetProfilePhoto: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogMemberSetProfilePhotoType) { - self.memberSetProfilePhoto = arg + memberSetProfilePhoto = arg let swift = TeamLog.EventType.memberSetProfilePhoto(arg.swift) super.init(swift: swift) } @@ -25901,7 +33577,7 @@ public class DBXTeamLogEventTypeMemberSpaceLimitsAddCustomQuota: DBXTeamLogEvent @objc public init(_ arg: DBXTeamLogMemberSpaceLimitsAddCustomQuotaType) { - self.memberSpaceLimitsAddCustomQuota = arg + memberSpaceLimitsAddCustomQuota = arg let swift = TeamLog.EventType.memberSpaceLimitsAddCustomQuota(arg.swift) super.init(swift: swift) } @@ -25915,7 +33591,7 @@ public class DBXTeamLogEventTypeMemberSpaceLimitsChangeCustomQuota: DBXTeamLogEv @objc public init(_ arg: DBXTeamLogMemberSpaceLimitsChangeCustomQuotaType) { - self.memberSpaceLimitsChangeCustomQuota = arg + memberSpaceLimitsChangeCustomQuota = arg let swift = TeamLog.EventType.memberSpaceLimitsChangeCustomQuota(arg.swift) super.init(swift: swift) } @@ -25929,7 +33605,7 @@ public class DBXTeamLogEventTypeMemberSpaceLimitsChangeStatus: DBXTeamLogEventTy @objc public init(_ arg: DBXTeamLogMemberSpaceLimitsChangeStatusType) { - self.memberSpaceLimitsChangeStatus = arg + memberSpaceLimitsChangeStatus = arg let swift = TeamLog.EventType.memberSpaceLimitsChangeStatus(arg.swift) super.init(swift: swift) } @@ -25943,7 +33619,7 @@ public class DBXTeamLogEventTypeMemberSpaceLimitsRemoveCustomQuota: DBXTeamLogEv @objc public init(_ arg: DBXTeamLogMemberSpaceLimitsRemoveCustomQuotaType) { - self.memberSpaceLimitsRemoveCustomQuota = arg + memberSpaceLimitsRemoveCustomQuota = arg let swift = TeamLog.EventType.memberSpaceLimitsRemoveCustomQuota(arg.swift) super.init(swift: swift) } @@ -25957,7 +33633,7 @@ public class DBXTeamLogEventTypeMemberSuggest: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogMemberSuggestType) { - self.memberSuggest = arg + memberSuggest = arg let swift = TeamLog.EventType.memberSuggest(arg.swift) super.init(swift: swift) } @@ -25971,7 +33647,7 @@ public class DBXTeamLogEventTypeMemberTransferAccountContents: DBXTeamLogEventTy @objc public init(_ arg: DBXTeamLogMemberTransferAccountContentsType) { - self.memberTransferAccountContents = arg + memberTransferAccountContents = arg let swift = TeamLog.EventType.memberTransferAccountContents(arg.swift) super.init(swift: swift) } @@ -25985,12 +33661,40 @@ public class DBXTeamLogEventTypePendingSecondaryEmailAdded: DBXTeamLogEventType @objc public init(_ arg: DBXTeamLogPendingSecondaryEmailAddedType) { - self.pendingSecondaryEmailAdded = arg + pendingSecondaryEmailAdded = arg let swift = TeamLog.EventType.pendingSecondaryEmailAdded(arg.swift) super.init(swift: swift) } } +/// (members) Product assigned to team member +@objc +public class DBXTeamLogEventTypeProductAssignedToMember: DBXTeamLogEventType { + @objc + public var productAssignedToMember: DBXTeamLogProductAssignedToMemberType + + @objc + public init(_ arg: DBXTeamLogProductAssignedToMemberType) { + productAssignedToMember = arg + let swift = TeamLog.EventType.productAssignedToMember(arg.swift) + super.init(swift: swift) + } +} + +/// (members) Product removed from team member +@objc +public class DBXTeamLogEventTypeProductRemovedFromMember: DBXTeamLogEventType { + @objc + public var productRemovedFromMember: DBXTeamLogProductRemovedFromMemberType + + @objc + public init(_ arg: DBXTeamLogProductRemovedFromMemberType) { + productRemovedFromMember = arg + let swift = TeamLog.EventType.productRemovedFromMember(arg.swift) + super.init(swift: swift) + } +} + /// (members) Deleted secondary email @objc public class DBXTeamLogEventTypeSecondaryEmailDeleted: DBXTeamLogEventType { @@ -25999,7 +33703,7 @@ public class DBXTeamLogEventTypeSecondaryEmailDeleted: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogSecondaryEmailDeletedType) { - self.secondaryEmailDeleted = arg + secondaryEmailDeleted = arg let swift = TeamLog.EventType.secondaryEmailDeleted(arg.swift) super.init(swift: swift) } @@ -26013,7 +33717,7 @@ public class DBXTeamLogEventTypeSecondaryEmailVerified: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogSecondaryEmailVerifiedType) { - self.secondaryEmailVerified = arg + secondaryEmailVerified = arg let swift = TeamLog.EventType.secondaryEmailVerified(arg.swift) super.init(swift: swift) } @@ -26027,7 +33731,7 @@ public class DBXTeamLogEventTypeSecondaryMailsPolicyChanged: DBXTeamLogEventType @objc public init(_ arg: DBXTeamLogSecondaryMailsPolicyChangedType) { - self.secondaryMailsPolicyChanged = arg + secondaryMailsPolicyChanged = arg let swift = TeamLog.EventType.secondaryMailsPolicyChanged(arg.swift) super.init(swift: swift) } @@ -26041,7 +33745,7 @@ public class DBXTeamLogEventTypeBinderAddPage: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogBinderAddPageType) { - self.binderAddPage = arg + binderAddPage = arg let swift = TeamLog.EventType.binderAddPage(arg.swift) super.init(swift: swift) } @@ -26055,7 +33759,7 @@ public class DBXTeamLogEventTypeBinderAddSection: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogBinderAddSectionType) { - self.binderAddSection = arg + binderAddSection = arg let swift = TeamLog.EventType.binderAddSection(arg.swift) super.init(swift: swift) } @@ -26069,7 +33773,7 @@ public class DBXTeamLogEventTypeBinderRemovePage: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogBinderRemovePageType) { - self.binderRemovePage = arg + binderRemovePage = arg let swift = TeamLog.EventType.binderRemovePage(arg.swift) super.init(swift: swift) } @@ -26083,7 +33787,7 @@ public class DBXTeamLogEventTypeBinderRemoveSection: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogBinderRemoveSectionType) { - self.binderRemoveSection = arg + binderRemoveSection = arg let swift = TeamLog.EventType.binderRemoveSection(arg.swift) super.init(swift: swift) } @@ -26097,7 +33801,7 @@ public class DBXTeamLogEventTypeBinderRenamePage: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogBinderRenamePageType) { - self.binderRenamePage = arg + binderRenamePage = arg let swift = TeamLog.EventType.binderRenamePage(arg.swift) super.init(swift: swift) } @@ -26111,7 +33815,7 @@ public class DBXTeamLogEventTypeBinderRenameSection: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogBinderRenameSectionType) { - self.binderRenameSection = arg + binderRenameSection = arg let swift = TeamLog.EventType.binderRenameSection(arg.swift) super.init(swift: swift) } @@ -26125,7 +33829,7 @@ public class DBXTeamLogEventTypeBinderReorderPage: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogBinderReorderPageType) { - self.binderReorderPage = arg + binderReorderPage = arg let swift = TeamLog.EventType.binderReorderPage(arg.swift) super.init(swift: swift) } @@ -26139,7 +33843,7 @@ public class DBXTeamLogEventTypeBinderReorderSection: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogBinderReorderSectionType) { - self.binderReorderSection = arg + binderReorderSection = arg let swift = TeamLog.EventType.binderReorderSection(arg.swift) super.init(swift: swift) } @@ -26153,7 +33857,7 @@ public class DBXTeamLogEventTypePaperContentAddMember: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogPaperContentAddMemberType) { - self.paperContentAddMember = arg + paperContentAddMember = arg let swift = TeamLog.EventType.paperContentAddMember(arg.swift) super.init(swift: swift) } @@ -26167,7 +33871,7 @@ public class DBXTeamLogEventTypePaperContentAddToFolder: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogPaperContentAddToFolderType) { - self.paperContentAddToFolder = arg + paperContentAddToFolder = arg let swift = TeamLog.EventType.paperContentAddToFolder(arg.swift) super.init(swift: swift) } @@ -26181,7 +33885,7 @@ public class DBXTeamLogEventTypePaperContentArchive: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogPaperContentArchiveType) { - self.paperContentArchive = arg + paperContentArchive = arg let swift = TeamLog.EventType.paperContentArchive(arg.swift) super.init(swift: swift) } @@ -26195,7 +33899,7 @@ public class DBXTeamLogEventTypePaperContentCreate: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogPaperContentCreateType) { - self.paperContentCreate = arg + paperContentCreate = arg let swift = TeamLog.EventType.paperContentCreate(arg.swift) super.init(swift: swift) } @@ -26209,7 +33913,7 @@ public class DBXTeamLogEventTypePaperContentPermanentlyDelete: DBXTeamLogEventTy @objc public init(_ arg: DBXTeamLogPaperContentPermanentlyDeleteType) { - self.paperContentPermanentlyDelete = arg + paperContentPermanentlyDelete = arg let swift = TeamLog.EventType.paperContentPermanentlyDelete(arg.swift) super.init(swift: swift) } @@ -26223,7 +33927,7 @@ public class DBXTeamLogEventTypePaperContentRemoveFromFolder: DBXTeamLogEventTyp @objc public init(_ arg: DBXTeamLogPaperContentRemoveFromFolderType) { - self.paperContentRemoveFromFolder = arg + paperContentRemoveFromFolder = arg let swift = TeamLog.EventType.paperContentRemoveFromFolder(arg.swift) super.init(swift: swift) } @@ -26237,7 +33941,7 @@ public class DBXTeamLogEventTypePaperContentRemoveMember: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogPaperContentRemoveMemberType) { - self.paperContentRemoveMember = arg + paperContentRemoveMember = arg let swift = TeamLog.EventType.paperContentRemoveMember(arg.swift) super.init(swift: swift) } @@ -26251,7 +33955,7 @@ public class DBXTeamLogEventTypePaperContentRename: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogPaperContentRenameType) { - self.paperContentRename = arg + paperContentRename = arg let swift = TeamLog.EventType.paperContentRename(arg.swift) super.init(swift: swift) } @@ -26265,7 +33969,7 @@ public class DBXTeamLogEventTypePaperContentRestore: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogPaperContentRestoreType) { - self.paperContentRestore = arg + paperContentRestore = arg let swift = TeamLog.EventType.paperContentRestore(arg.swift) super.init(swift: swift) } @@ -26279,7 +33983,7 @@ public class DBXTeamLogEventTypePaperDocAddComment: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogPaperDocAddCommentType) { - self.paperDocAddComment = arg + paperDocAddComment = arg let swift = TeamLog.EventType.paperDocAddComment(arg.swift) super.init(swift: swift) } @@ -26293,7 +33997,7 @@ public class DBXTeamLogEventTypePaperDocChangeMemberRole: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogPaperDocChangeMemberRoleType) { - self.paperDocChangeMemberRole = arg + paperDocChangeMemberRole = arg let swift = TeamLog.EventType.paperDocChangeMemberRole(arg.swift) super.init(swift: swift) } @@ -26307,7 +34011,7 @@ public class DBXTeamLogEventTypePaperDocChangeSharingPolicy: DBXTeamLogEventType @objc public init(_ arg: DBXTeamLogPaperDocChangeSharingPolicyType) { - self.paperDocChangeSharingPolicy = arg + paperDocChangeSharingPolicy = arg let swift = TeamLog.EventType.paperDocChangeSharingPolicy(arg.swift) super.init(swift: swift) } @@ -26321,7 +34025,7 @@ public class DBXTeamLogEventTypePaperDocChangeSubscription: DBXTeamLogEventType @objc public init(_ arg: DBXTeamLogPaperDocChangeSubscriptionType) { - self.paperDocChangeSubscription = arg + paperDocChangeSubscription = arg let swift = TeamLog.EventType.paperDocChangeSubscription(arg.swift) super.init(swift: swift) } @@ -26335,7 +34039,7 @@ public class DBXTeamLogEventTypePaperDocDeleted: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogPaperDocDeletedType) { - self.paperDocDeleted = arg + paperDocDeleted = arg let swift = TeamLog.EventType.paperDocDeleted(arg.swift) super.init(swift: swift) } @@ -26349,7 +34053,7 @@ public class DBXTeamLogEventTypePaperDocDeleteComment: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogPaperDocDeleteCommentType) { - self.paperDocDeleteComment = arg + paperDocDeleteComment = arg let swift = TeamLog.EventType.paperDocDeleteComment(arg.swift) super.init(swift: swift) } @@ -26363,7 +34067,7 @@ public class DBXTeamLogEventTypePaperDocDownload: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogPaperDocDownloadType) { - self.paperDocDownload = arg + paperDocDownload = arg let swift = TeamLog.EventType.paperDocDownload(arg.swift) super.init(swift: swift) } @@ -26377,7 +34081,7 @@ public class DBXTeamLogEventTypePaperDocEdit: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogPaperDocEditType) { - self.paperDocEdit = arg + paperDocEdit = arg let swift = TeamLog.EventType.paperDocEdit(arg.swift) super.init(swift: swift) } @@ -26391,7 +34095,7 @@ public class DBXTeamLogEventTypePaperDocEditComment: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogPaperDocEditCommentType) { - self.paperDocEditComment = arg + paperDocEditComment = arg let swift = TeamLog.EventType.paperDocEditComment(arg.swift) super.init(swift: swift) } @@ -26405,7 +34109,7 @@ public class DBXTeamLogEventTypePaperDocFollowed: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogPaperDocFollowedType) { - self.paperDocFollowed = arg + paperDocFollowed = arg let swift = TeamLog.EventType.paperDocFollowed(arg.swift) super.init(swift: swift) } @@ -26419,7 +34123,7 @@ public class DBXTeamLogEventTypePaperDocMention: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogPaperDocMentionType) { - self.paperDocMention = arg + paperDocMention = arg let swift = TeamLog.EventType.paperDocMention(arg.swift) super.init(swift: swift) } @@ -26433,7 +34137,7 @@ public class DBXTeamLogEventTypePaperDocOwnershipChanged: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogPaperDocOwnershipChangedType) { - self.paperDocOwnershipChanged = arg + paperDocOwnershipChanged = arg let swift = TeamLog.EventType.paperDocOwnershipChanged(arg.swift) super.init(swift: swift) } @@ -26447,7 +34151,7 @@ public class DBXTeamLogEventTypePaperDocRequestAccess: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogPaperDocRequestAccessType) { - self.paperDocRequestAccess = arg + paperDocRequestAccess = arg let swift = TeamLog.EventType.paperDocRequestAccess(arg.swift) super.init(swift: swift) } @@ -26461,7 +34165,7 @@ public class DBXTeamLogEventTypePaperDocResolveComment: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogPaperDocResolveCommentType) { - self.paperDocResolveComment = arg + paperDocResolveComment = arg let swift = TeamLog.EventType.paperDocResolveComment(arg.swift) super.init(swift: swift) } @@ -26475,7 +34179,7 @@ public class DBXTeamLogEventTypePaperDocRevert: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogPaperDocRevertType) { - self.paperDocRevert = arg + paperDocRevert = arg let swift = TeamLog.EventType.paperDocRevert(arg.swift) super.init(swift: swift) } @@ -26489,7 +34193,7 @@ public class DBXTeamLogEventTypePaperDocSlackShare: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogPaperDocSlackShareType) { - self.paperDocSlackShare = arg + paperDocSlackShare = arg let swift = TeamLog.EventType.paperDocSlackShare(arg.swift) super.init(swift: swift) } @@ -26503,7 +34207,7 @@ public class DBXTeamLogEventTypePaperDocTeamInvite: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogPaperDocTeamInviteType) { - self.paperDocTeamInvite = arg + paperDocTeamInvite = arg let swift = TeamLog.EventType.paperDocTeamInvite(arg.swift) super.init(swift: swift) } @@ -26517,7 +34221,7 @@ public class DBXTeamLogEventTypePaperDocTrashed: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogPaperDocTrashedType) { - self.paperDocTrashed = arg + paperDocTrashed = arg let swift = TeamLog.EventType.paperDocTrashed(arg.swift) super.init(swift: swift) } @@ -26531,7 +34235,7 @@ public class DBXTeamLogEventTypePaperDocUnresolveComment: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogPaperDocUnresolveCommentType) { - self.paperDocUnresolveComment = arg + paperDocUnresolveComment = arg let swift = TeamLog.EventType.paperDocUnresolveComment(arg.swift) super.init(swift: swift) } @@ -26545,7 +34249,7 @@ public class DBXTeamLogEventTypePaperDocUntrashed: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogPaperDocUntrashedType) { - self.paperDocUntrashed = arg + paperDocUntrashed = arg let swift = TeamLog.EventType.paperDocUntrashed(arg.swift) super.init(swift: swift) } @@ -26559,7 +34263,7 @@ public class DBXTeamLogEventTypePaperDocView: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogPaperDocViewType) { - self.paperDocView = arg + paperDocView = arg let swift = TeamLog.EventType.paperDocView(arg.swift) super.init(swift: swift) } @@ -26573,7 +34277,7 @@ public class DBXTeamLogEventTypePaperExternalViewAllow: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogPaperExternalViewAllowType) { - self.paperExternalViewAllow = arg + paperExternalViewAllow = arg let swift = TeamLog.EventType.paperExternalViewAllow(arg.swift) super.init(swift: swift) } @@ -26587,7 +34291,7 @@ public class DBXTeamLogEventTypePaperExternalViewDefaultTeam: DBXTeamLogEventTyp @objc public init(_ arg: DBXTeamLogPaperExternalViewDefaultTeamType) { - self.paperExternalViewDefaultTeam = arg + paperExternalViewDefaultTeam = arg let swift = TeamLog.EventType.paperExternalViewDefaultTeam(arg.swift) super.init(swift: swift) } @@ -26601,7 +34305,7 @@ public class DBXTeamLogEventTypePaperExternalViewForbid: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogPaperExternalViewForbidType) { - self.paperExternalViewForbid = arg + paperExternalViewForbid = arg let swift = TeamLog.EventType.paperExternalViewForbid(arg.swift) super.init(swift: swift) } @@ -26615,7 +34319,7 @@ public class DBXTeamLogEventTypePaperFolderChangeSubscription: DBXTeamLogEventTy @objc public init(_ arg: DBXTeamLogPaperFolderChangeSubscriptionType) { - self.paperFolderChangeSubscription = arg + paperFolderChangeSubscription = arg let swift = TeamLog.EventType.paperFolderChangeSubscription(arg.swift) super.init(swift: swift) } @@ -26629,7 +34333,7 @@ public class DBXTeamLogEventTypePaperFolderDeleted: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogPaperFolderDeletedType) { - self.paperFolderDeleted = arg + paperFolderDeleted = arg let swift = TeamLog.EventType.paperFolderDeleted(arg.swift) super.init(swift: swift) } @@ -26643,7 +34347,7 @@ public class DBXTeamLogEventTypePaperFolderFollowed: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogPaperFolderFollowedType) { - self.paperFolderFollowed = arg + paperFolderFollowed = arg let swift = TeamLog.EventType.paperFolderFollowed(arg.swift) super.init(swift: swift) } @@ -26657,7 +34361,7 @@ public class DBXTeamLogEventTypePaperFolderTeamInvite: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogPaperFolderTeamInviteType) { - self.paperFolderTeamInvite = arg + paperFolderTeamInvite = arg let swift = TeamLog.EventType.paperFolderTeamInvite(arg.swift) super.init(swift: swift) } @@ -26671,7 +34375,7 @@ public class DBXTeamLogEventTypePaperPublishedLinkChangePermission: DBXTeamLogEv @objc public init(_ arg: DBXTeamLogPaperPublishedLinkChangePermissionType) { - self.paperPublishedLinkChangePermission = arg + paperPublishedLinkChangePermission = arg let swift = TeamLog.EventType.paperPublishedLinkChangePermission(arg.swift) super.init(swift: swift) } @@ -26685,7 +34389,7 @@ public class DBXTeamLogEventTypePaperPublishedLinkCreate: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogPaperPublishedLinkCreateType) { - self.paperPublishedLinkCreate = arg + paperPublishedLinkCreate = arg let swift = TeamLog.EventType.paperPublishedLinkCreate(arg.swift) super.init(swift: swift) } @@ -26699,7 +34403,7 @@ public class DBXTeamLogEventTypePaperPublishedLinkDisabled: DBXTeamLogEventType @objc public init(_ arg: DBXTeamLogPaperPublishedLinkDisabledType) { - self.paperPublishedLinkDisabled = arg + paperPublishedLinkDisabled = arg let swift = TeamLog.EventType.paperPublishedLinkDisabled(arg.swift) super.init(swift: swift) } @@ -26713,7 +34417,7 @@ public class DBXTeamLogEventTypePaperPublishedLinkView: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogPaperPublishedLinkViewType) { - self.paperPublishedLinkView = arg + paperPublishedLinkView = arg let swift = TeamLog.EventType.paperPublishedLinkView(arg.swift) super.init(swift: swift) } @@ -26727,7 +34431,7 @@ public class DBXTeamLogEventTypePasswordChange: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogPasswordChangeType) { - self.passwordChange = arg + passwordChange = arg let swift = TeamLog.EventType.passwordChange(arg.swift) super.init(swift: swift) } @@ -26741,7 +34445,7 @@ public class DBXTeamLogEventTypePasswordReset: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogPasswordResetType) { - self.passwordReset = arg + passwordReset = arg let swift = TeamLog.EventType.passwordReset(arg.swift) super.init(swift: swift) } @@ -26755,12 +34459,124 @@ public class DBXTeamLogEventTypePasswordResetAll: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogPasswordResetAllType) { - self.passwordResetAll = arg + passwordResetAll = arg let swift = TeamLog.EventType.passwordResetAll(arg.swift) super.init(swift: swift) } } +/// (protect) Added collaborators via Dropbox Protect +@objc +public class DBXTeamLogEventTypeProtectActionAddCollaborator: DBXTeamLogEventType { + @objc + public var protectActionAddCollaborator: DBXTeamLogProtectActionAddCollaboratorType + + @objc + public init(_ arg: DBXTeamLogProtectActionAddCollaboratorType) { + protectActionAddCollaborator = arg + let swift = TeamLog.EventType.protectActionAddCollaborator(arg.swift) + super.init(swift: swift) + } +} + +/// (protect) Added a link via Dropbox Protect +@objc +public class DBXTeamLogEventTypeProtectActionAddLink: DBXTeamLogEventType { + @objc + public var protectActionAddLink: DBXTeamLogProtectActionAddLinkType + + @objc + public init(_ arg: DBXTeamLogProtectActionAddLinkType) { + protectActionAddLink = arg + let swift = TeamLog.EventType.protectActionAddLink(arg.swift) + super.init(swift: swift) + } +} + +/// (protect) Deleted content via Dropbox Protect +@objc +public class DBXTeamLogEventTypeProtectActionDelete: DBXTeamLogEventType { + @objc + public var protectActionDelete: DBXTeamLogProtectActionDeleteType + + @objc + public init(_ arg: DBXTeamLogProtectActionDeleteType) { + protectActionDelete = arg + let swift = TeamLog.EventType.protectActionDelete(arg.swift) + super.init(swift: swift) + } +} + +/// (protect) Exported content via Dropbox Protect +@objc +public class DBXTeamLogEventTypeProtectActionExport: DBXTeamLogEventType { + @objc + public var protectActionExport: DBXTeamLogProtectActionExportType + + @objc + public init(_ arg: DBXTeamLogProtectActionExportType) { + protectActionExport = arg + let swift = TeamLog.EventType.protectActionExport(arg.swift) + super.init(swift: swift) + } +} + +/// (protect) Removed collaborators via Dropbox Protect +@objc +public class DBXTeamLogEventTypeProtectActionRemoveCollaborator: DBXTeamLogEventType { + @objc + public var protectActionRemoveCollaborator: DBXTeamLogProtectActionRemoveCollaboratorType + + @objc + public init(_ arg: DBXTeamLogProtectActionRemoveCollaboratorType) { + protectActionRemoveCollaborator = arg + let swift = TeamLog.EventType.protectActionRemoveCollaborator(arg.swift) + super.init(swift: swift) + } +} + +/// (protect) Removed a link via Dropbox Protect +@objc +public class DBXTeamLogEventTypeProtectActionRemoveLink: DBXTeamLogEventType { + @objc + public var protectActionRemoveLink: DBXTeamLogProtectActionRemoveLinkType + + @objc + public init(_ arg: DBXTeamLogProtectActionRemoveLinkType) { + protectActionRemoveLink = arg + let swift = TeamLog.EventType.protectActionRemoveLink(arg.swift) + super.init(swift: swift) + } +} + +/// (protect) Stopped sharing content via Dropbox Protect +@objc +public class DBXTeamLogEventTypeProtectActionStopSharing: DBXTeamLogEventType { + @objc + public var protectActionStopSharing: DBXTeamLogProtectActionStopSharingType + + @objc + public init(_ arg: DBXTeamLogProtectActionStopSharingType) { + protectActionStopSharing = arg + let swift = TeamLog.EventType.protectActionStopSharing(arg.swift) + super.init(swift: swift) + } +} + +/// (protect) Modified Protect internal domains list +@objc +public class DBXTeamLogEventTypeProtectInternalDomainsChanged: DBXTeamLogEventType { + @objc + public var protectInternalDomainsChanged: DBXTeamLogProtectInternalDomainsChangedType + + @objc + public init(_ arg: DBXTeamLogProtectInternalDomainsChangedType) { + protectInternalDomainsChanged = arg + let swift = TeamLog.EventType.protectInternalDomainsChanged(arg.swift) + super.init(swift: swift) + } +} + /// (reports) Created Classification report @objc public class DBXTeamLogEventTypeClassificationCreateReport: DBXTeamLogEventType { @@ -26769,7 +34585,7 @@ public class DBXTeamLogEventTypeClassificationCreateReport: DBXTeamLogEventType @objc public init(_ arg: DBXTeamLogClassificationCreateReportType) { - self.classificationCreateReport = arg + classificationCreateReport = arg let swift = TeamLog.EventType.classificationCreateReport(arg.swift) super.init(swift: swift) } @@ -26783,7 +34599,7 @@ public class DBXTeamLogEventTypeClassificationCreateReportFail: DBXTeamLogEventT @objc public init(_ arg: DBXTeamLogClassificationCreateReportFailType) { - self.classificationCreateReportFail = arg + classificationCreateReportFail = arg let swift = TeamLog.EventType.classificationCreateReportFail(arg.swift) super.init(swift: swift) } @@ -26797,7 +34613,7 @@ public class DBXTeamLogEventTypeEmmCreateExceptionsReport: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogEmmCreateExceptionsReportType) { - self.emmCreateExceptionsReport = arg + emmCreateExceptionsReport = arg let swift = TeamLog.EventType.emmCreateExceptionsReport(arg.swift) super.init(swift: swift) } @@ -26811,7 +34627,7 @@ public class DBXTeamLogEventTypeEmmCreateUsageReport: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogEmmCreateUsageReportType) { - self.emmCreateUsageReport = arg + emmCreateUsageReport = arg let swift = TeamLog.EventType.emmCreateUsageReport(arg.swift) super.init(swift: swift) } @@ -26825,7 +34641,7 @@ public class DBXTeamLogEventTypeExportMembersReport: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogExportMembersReportType) { - self.exportMembersReport = arg + exportMembersReport = arg let swift = TeamLog.EventType.exportMembersReport(arg.swift) super.init(swift: swift) } @@ -26839,7 +34655,7 @@ public class DBXTeamLogEventTypeExportMembersReportFail: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogExportMembersReportFailType) { - self.exportMembersReportFail = arg + exportMembersReportFail = arg let swift = TeamLog.EventType.exportMembersReportFail(arg.swift) super.init(swift: swift) } @@ -26853,7 +34669,7 @@ public class DBXTeamLogEventTypeExternalSharingCreateReport: DBXTeamLogEventType @objc public init(_ arg: DBXTeamLogExternalSharingCreateReportType) { - self.externalSharingCreateReport = arg + externalSharingCreateReport = arg let swift = TeamLog.EventType.externalSharingCreateReport(arg.swift) super.init(swift: swift) } @@ -26867,12 +34683,40 @@ public class DBXTeamLogEventTypeExternalSharingReportFailed: DBXTeamLogEventType @objc public init(_ arg: DBXTeamLogExternalSharingReportFailedType) { - self.externalSharingReportFailed = arg + externalSharingReportFailed = arg let swift = TeamLog.EventType.externalSharingReportFailed(arg.swift) super.init(swift: swift) } } +/// (reports) Created member access report +@objc +public class DBXTeamLogEventTypeMemberAccessDetailsCreateReport: DBXTeamLogEventType { + @objc + public var memberAccessDetailsCreateReport: DBXTeamLogMemberAccessDetailsCreateReportType + + @objc + public init(_ arg: DBXTeamLogMemberAccessDetailsCreateReportType) { + memberAccessDetailsCreateReport = arg + let swift = TeamLog.EventType.memberAccessDetailsCreateReport(arg.swift) + super.init(swift: swift) + } +} + +/// (reports) Couldn't generate member access report +@objc +public class DBXTeamLogEventTypeMemberAccessDetailsCreateReportFailed: DBXTeamLogEventType { + @objc + public var memberAccessDetailsCreateReportFailed: DBXTeamLogMemberAccessDetailsCreateReportFailedType + + @objc + public init(_ arg: DBXTeamLogMemberAccessDetailsCreateReportFailedType) { + memberAccessDetailsCreateReportFailed = arg + let swift = TeamLog.EventType.memberAccessDetailsCreateReportFailed(arg.swift) + super.init(swift: swift) + } +} + /// (reports) Report created: Links created with no expiration @objc public class DBXTeamLogEventTypeNoExpirationLinkGenCreateReport: DBXTeamLogEventType { @@ -26881,7 +34725,7 @@ public class DBXTeamLogEventTypeNoExpirationLinkGenCreateReport: DBXTeamLogEvent @objc public init(_ arg: DBXTeamLogNoExpirationLinkGenCreateReportType) { - self.noExpirationLinkGenCreateReport = arg + noExpirationLinkGenCreateReport = arg let swift = TeamLog.EventType.noExpirationLinkGenCreateReport(arg.swift) super.init(swift: swift) } @@ -26895,7 +34739,7 @@ public class DBXTeamLogEventTypeNoExpirationLinkGenReportFailed: DBXTeamLogEvent @objc public init(_ arg: DBXTeamLogNoExpirationLinkGenReportFailedType) { - self.noExpirationLinkGenReportFailed = arg + noExpirationLinkGenReportFailed = arg let swift = TeamLog.EventType.noExpirationLinkGenReportFailed(arg.swift) super.init(swift: swift) } @@ -26909,7 +34753,7 @@ public class DBXTeamLogEventTypeNoPasswordLinkGenCreateReport: DBXTeamLogEventTy @objc public init(_ arg: DBXTeamLogNoPasswordLinkGenCreateReportType) { - self.noPasswordLinkGenCreateReport = arg + noPasswordLinkGenCreateReport = arg let swift = TeamLog.EventType.noPasswordLinkGenCreateReport(arg.swift) super.init(swift: swift) } @@ -26923,7 +34767,7 @@ public class DBXTeamLogEventTypeNoPasswordLinkGenReportFailed: DBXTeamLogEventTy @objc public init(_ arg: DBXTeamLogNoPasswordLinkGenReportFailedType) { - self.noPasswordLinkGenReportFailed = arg + noPasswordLinkGenReportFailed = arg let swift = TeamLog.EventType.noPasswordLinkGenReportFailed(arg.swift) super.init(swift: swift) } @@ -26937,7 +34781,7 @@ public class DBXTeamLogEventTypeNoPasswordLinkViewCreateReport: DBXTeamLogEventT @objc public init(_ arg: DBXTeamLogNoPasswordLinkViewCreateReportType) { - self.noPasswordLinkViewCreateReport = arg + noPasswordLinkViewCreateReport = arg let swift = TeamLog.EventType.noPasswordLinkViewCreateReport(arg.swift) super.init(swift: swift) } @@ -26951,7 +34795,7 @@ public class DBXTeamLogEventTypeNoPasswordLinkViewReportFailed: DBXTeamLogEventT @objc public init(_ arg: DBXTeamLogNoPasswordLinkViewReportFailedType) { - self.noPasswordLinkViewReportFailed = arg + noPasswordLinkViewReportFailed = arg let swift = TeamLog.EventType.noPasswordLinkViewReportFailed(arg.swift) super.init(swift: swift) } @@ -26965,7 +34809,7 @@ public class DBXTeamLogEventTypeOutdatedLinkViewCreateReport: DBXTeamLogEventTyp @objc public init(_ arg: DBXTeamLogOutdatedLinkViewCreateReportType) { - self.outdatedLinkViewCreateReport = arg + outdatedLinkViewCreateReport = arg let swift = TeamLog.EventType.outdatedLinkViewCreateReport(arg.swift) super.init(swift: swift) } @@ -26979,7 +34823,7 @@ public class DBXTeamLogEventTypeOutdatedLinkViewReportFailed: DBXTeamLogEventTyp @objc public init(_ arg: DBXTeamLogOutdatedLinkViewReportFailedType) { - self.outdatedLinkViewReportFailed = arg + outdatedLinkViewReportFailed = arg let swift = TeamLog.EventType.outdatedLinkViewReportFailed(arg.swift) super.init(swift: swift) } @@ -26993,7 +34837,7 @@ public class DBXTeamLogEventTypePaperAdminExportStart: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogPaperAdminExportStartType) { - self.paperAdminExportStart = arg + paperAdminExportStart = arg let swift = TeamLog.EventType.paperAdminExportStart(arg.swift) super.init(swift: swift) } @@ -27007,7 +34851,7 @@ public class DBXTeamLogEventTypeRansomwareAlertCreateReport: DBXTeamLogEventType @objc public init(_ arg: DBXTeamLogRansomwareAlertCreateReportType) { - self.ransomwareAlertCreateReport = arg + ransomwareAlertCreateReport = arg let swift = TeamLog.EventType.ransomwareAlertCreateReport(arg.swift) super.init(swift: swift) } @@ -27021,12 +34865,40 @@ public class DBXTeamLogEventTypeRansomwareAlertCreateReportFailed: DBXTeamLogEve @objc public init(_ arg: DBXTeamLogRansomwareAlertCreateReportFailedType) { - self.ransomwareAlertCreateReportFailed = arg + ransomwareAlertCreateReportFailed = arg let swift = TeamLog.EventType.ransomwareAlertCreateReportFailed(arg.swift) super.init(swift: swift) } } +/// (reports) Created shared folders report +@objc +public class DBXTeamLogEventTypeSharedFoldersCreateReport: DBXTeamLogEventType { + @objc + public var sharedFoldersCreateReport: DBXTeamLogSharedFoldersCreateReportType + + @objc + public init(_ arg: DBXTeamLogSharedFoldersCreateReportType) { + sharedFoldersCreateReport = arg + let swift = TeamLog.EventType.sharedFoldersCreateReport(arg.swift) + super.init(swift: swift) + } +} + +/// (reports) Couldn't generate shared folders report +@objc +public class DBXTeamLogEventTypeSharedFoldersCreateReportFailed: DBXTeamLogEventType { + @objc + public var sharedFoldersCreateReportFailed: DBXTeamLogSharedFoldersCreateReportFailedType + + @objc + public init(_ arg: DBXTeamLogSharedFoldersCreateReportFailedType) { + sharedFoldersCreateReportFailed = arg + let swift = TeamLog.EventType.sharedFoldersCreateReportFailed(arg.swift) + super.init(swift: swift) + } +} + /// (reports) Created Smart Sync non-admin devices report @objc public class DBXTeamLogEventTypeSmartSyncCreateAdminPrivilegeReport: DBXTeamLogEventType { @@ -27035,7 +34907,7 @@ public class DBXTeamLogEventTypeSmartSyncCreateAdminPrivilegeReport: DBXTeamLogE @objc public init(_ arg: DBXTeamLogSmartSyncCreateAdminPrivilegeReportType) { - self.smartSyncCreateAdminPrivilegeReport = arg + smartSyncCreateAdminPrivilegeReport = arg let swift = TeamLog.EventType.smartSyncCreateAdminPrivilegeReport(arg.swift) super.init(swift: swift) } @@ -27049,7 +34921,7 @@ public class DBXTeamLogEventTypeTeamActivityCreateReport: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogTeamActivityCreateReportType) { - self.teamActivityCreateReport = arg + teamActivityCreateReport = arg let swift = TeamLog.EventType.teamActivityCreateReport(arg.swift) super.init(swift: swift) } @@ -27063,12 +34935,68 @@ public class DBXTeamLogEventTypeTeamActivityCreateReportFail: DBXTeamLogEventTyp @objc public init(_ arg: DBXTeamLogTeamActivityCreateReportFailType) { - self.teamActivityCreateReportFail = arg + teamActivityCreateReportFail = arg let swift = TeamLog.EventType.teamActivityCreateReportFail(arg.swift) super.init(swift: swift) } } +/// (reports) Created team folders report +@objc +public class DBXTeamLogEventTypeTeamFoldersCreateReport: DBXTeamLogEventType { + @objc + public var teamFoldersCreateReport: DBXTeamLogTeamFoldersCreateReportType + + @objc + public init(_ arg: DBXTeamLogTeamFoldersCreateReportType) { + teamFoldersCreateReport = arg + let swift = TeamLog.EventType.teamFoldersCreateReport(arg.swift) + super.init(swift: swift) + } +} + +/// (reports) Couldn't generate team folders report +@objc +public class DBXTeamLogEventTypeTeamFoldersCreateReportFailed: DBXTeamLogEventType { + @objc + public var teamFoldersCreateReportFailed: DBXTeamLogTeamFoldersCreateReportFailedType + + @objc + public init(_ arg: DBXTeamLogTeamFoldersCreateReportFailedType) { + teamFoldersCreateReportFailed = arg + let swift = TeamLog.EventType.teamFoldersCreateReportFailed(arg.swift) + super.init(swift: swift) + } +} + +/// (reports) Created team storage report +@objc +public class DBXTeamLogEventTypeTeamStorageCreateReport: DBXTeamLogEventType { + @objc + public var teamStorageCreateReport: DBXTeamLogTeamStorageCreateReportType + + @objc + public init(_ arg: DBXTeamLogTeamStorageCreateReportType) { + teamStorageCreateReport = arg + let swift = TeamLog.EventType.teamStorageCreateReport(arg.swift) + super.init(swift: swift) + } +} + +/// (reports) Couldn't generate team storage report +@objc +public class DBXTeamLogEventTypeTeamStorageCreateReportFailed: DBXTeamLogEventType { + @objc + public var teamStorageCreateReportFailed: DBXTeamLogTeamStorageCreateReportFailedType + + @objc + public init(_ arg: DBXTeamLogTeamStorageCreateReportFailedType) { + teamStorageCreateReportFailed = arg + let swift = TeamLog.EventType.teamStorageCreateReportFailed(arg.swift) + super.init(swift: swift) + } +} + /// (sharing) Shared album @objc public class DBXTeamLogEventTypeCollectionShare: DBXTeamLogEventType { @@ -27077,7 +35005,7 @@ public class DBXTeamLogEventTypeCollectionShare: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogCollectionShareType) { - self.collectionShare = arg + collectionShare = arg let swift = TeamLog.EventType.collectionShare(arg.swift) super.init(swift: swift) } @@ -27091,7 +35019,7 @@ public class DBXTeamLogEventTypeFileTransfersFileAdd: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogFileTransfersFileAddType) { - self.fileTransfersFileAdd = arg + fileTransfersFileAdd = arg let swift = TeamLog.EventType.fileTransfersFileAdd(arg.swift) super.init(swift: swift) } @@ -27105,7 +35033,7 @@ public class DBXTeamLogEventTypeFileTransfersTransferDelete: DBXTeamLogEventType @objc public init(_ arg: DBXTeamLogFileTransfersTransferDeleteType) { - self.fileTransfersTransferDelete = arg + fileTransfersTransferDelete = arg let swift = TeamLog.EventType.fileTransfersTransferDelete(arg.swift) super.init(swift: swift) } @@ -27119,7 +35047,7 @@ public class DBXTeamLogEventTypeFileTransfersTransferDownload: DBXTeamLogEventTy @objc public init(_ arg: DBXTeamLogFileTransfersTransferDownloadType) { - self.fileTransfersTransferDownload = arg + fileTransfersTransferDownload = arg let swift = TeamLog.EventType.fileTransfersTransferDownload(arg.swift) super.init(swift: swift) } @@ -27133,7 +35061,7 @@ public class DBXTeamLogEventTypeFileTransfersTransferSend: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogFileTransfersTransferSendType) { - self.fileTransfersTransferSend = arg + fileTransfersTransferSend = arg let swift = TeamLog.EventType.fileTransfersTransferSend(arg.swift) super.init(swift: swift) } @@ -27147,12 +35075,110 @@ public class DBXTeamLogEventTypeFileTransfersTransferView: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogFileTransfersTransferViewType) { - self.fileTransfersTransferView = arg + fileTransfersTransferView = arg let swift = TeamLog.EventType.fileTransfersTransferView(arg.swift) super.init(swift: swift) } } +/// (sharing) Added member to Replay project +@objc +public class DBXTeamLogEventTypeMediaHubProjectTeamAdd: DBXTeamLogEventType { + @objc + public var mediaHubProjectTeamAdd: DBXTeamLogMediaHubProjectTeamAddType + + @objc + public init(_ arg: DBXTeamLogMediaHubProjectTeamAddType) { + mediaHubProjectTeamAdd = arg + let swift = TeamLog.EventType.mediaHubProjectTeamAdd(arg.swift) + super.init(swift: swift) + } +} + +/// (sharing) Removed member from Replay project +@objc +public class DBXTeamLogEventTypeMediaHubProjectTeamDelete: DBXTeamLogEventType { + @objc + public var mediaHubProjectTeamDelete: DBXTeamLogMediaHubProjectTeamDeleteType + + @objc + public init(_ arg: DBXTeamLogMediaHubProjectTeamDeleteType) { + mediaHubProjectTeamDelete = arg + let swift = TeamLog.EventType.mediaHubProjectTeamDelete(arg.swift) + super.init(swift: swift) + } +} + +/// (sharing) Changed member role in Replay project +@objc +public class DBXTeamLogEventTypeMediaHubProjectTeamRoleChanged: DBXTeamLogEventType { + @objc + public var mediaHubProjectTeamRoleChanged: DBXTeamLogMediaHubProjectTeamRoleChangedType + + @objc + public init(_ arg: DBXTeamLogMediaHubProjectTeamRoleChangedType) { + mediaHubProjectTeamRoleChanged = arg + let swift = TeamLog.EventType.mediaHubProjectTeamRoleChanged(arg.swift) + super.init(swift: swift) + } +} + +/// (sharing) Changed Replay shared link audience +@objc +public class DBXTeamLogEventTypeMediaHubSharedLinkAudienceChanged: DBXTeamLogEventType { + @objc + public var mediaHubSharedLinkAudienceChanged: DBXTeamLogMediaHubSharedLinkAudienceChangedType + + @objc + public init(_ arg: DBXTeamLogMediaHubSharedLinkAudienceChangedType) { + mediaHubSharedLinkAudienceChanged = arg + let swift = TeamLog.EventType.mediaHubSharedLinkAudienceChanged(arg.swift) + super.init(swift: swift) + } +} + +/// (sharing) Created Replay shared link +@objc +public class DBXTeamLogEventTypeMediaHubSharedLinkCreated: DBXTeamLogEventType { + @objc + public var mediaHubSharedLinkCreated: DBXTeamLogMediaHubSharedLinkCreatedType + + @objc + public init(_ arg: DBXTeamLogMediaHubSharedLinkCreatedType) { + mediaHubSharedLinkCreated = arg + let swift = TeamLog.EventType.mediaHubSharedLinkCreated(arg.swift) + super.init(swift: swift) + } +} + +/// (sharing) Changed Replay shared link download setting +@objc +public class DBXTeamLogEventTypeMediaHubSharedLinkDownloadSettingChanged: DBXTeamLogEventType { + @objc + public var mediaHubSharedLinkDownloadSettingChanged: DBXTeamLogMediaHubSharedLinkDownloadSettingChangedType + + @objc + public init(_ arg: DBXTeamLogMediaHubSharedLinkDownloadSettingChangedType) { + mediaHubSharedLinkDownloadSettingChanged = arg + let swift = TeamLog.EventType.mediaHubSharedLinkDownloadSettingChanged(arg.swift) + super.init(swift: swift) + } +} + +/// (sharing) Revoked Replay shared link +@objc +public class DBXTeamLogEventTypeMediaHubSharedLinkRevoked: DBXTeamLogEventType { + @objc + public var mediaHubSharedLinkRevoked: DBXTeamLogMediaHubSharedLinkRevokedType + + @objc + public init(_ arg: DBXTeamLogMediaHubSharedLinkRevokedType) { + mediaHubSharedLinkRevoked = arg + let swift = TeamLog.EventType.mediaHubSharedLinkRevoked(arg.swift) + super.init(swift: swift) + } +} + /// (sharing) Changed Paper doc to invite-only (deprecated, no longer logged) @objc public class DBXTeamLogEventTypeNoteAclInviteOnly: DBXTeamLogEventType { @@ -27161,7 +35187,7 @@ public class DBXTeamLogEventTypeNoteAclInviteOnly: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogNoteAclInviteOnlyType) { - self.noteAclInviteOnly = arg + noteAclInviteOnly = arg let swift = TeamLog.EventType.noteAclInviteOnly(arg.swift) super.init(swift: swift) } @@ -27175,7 +35201,7 @@ public class DBXTeamLogEventTypeNoteAclLink: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogNoteAclLinkType) { - self.noteAclLink = arg + noteAclLink = arg let swift = TeamLog.EventType.noteAclLink(arg.swift) super.init(swift: swift) } @@ -27189,7 +35215,7 @@ public class DBXTeamLogEventTypeNoteAclTeamLink: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogNoteAclTeamLinkType) { - self.noteAclTeamLink = arg + noteAclTeamLink = arg let swift = TeamLog.EventType.noteAclTeamLink(arg.swift) super.init(swift: swift) } @@ -27203,7 +35229,7 @@ public class DBXTeamLogEventTypeNoteShared: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogNoteSharedType) { - self.noteShared = arg + noteShared = arg let swift = TeamLog.EventType.noteShared(arg.swift) super.init(swift: swift) } @@ -27217,7 +35243,7 @@ public class DBXTeamLogEventTypeNoteShareReceive: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogNoteShareReceiveType) { - self.noteShareReceive = arg + noteShareReceive = arg let swift = TeamLog.EventType.noteShareReceive(arg.swift) super.init(swift: swift) } @@ -27231,7 +35257,7 @@ public class DBXTeamLogEventTypeOpenNoteShared: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogOpenNoteSharedType) { - self.openNoteShared = arg + openNoteShared = arg let swift = TeamLog.EventType.openNoteShared(arg.swift) super.init(swift: swift) } @@ -27245,13 +35271,13 @@ public class DBXTeamLogEventTypeReplayFileSharedLinkCreated: DBXTeamLogEventType @objc public init(_ arg: DBXTeamLogReplayFileSharedLinkCreatedType) { - self.replayFileSharedLinkCreated = arg + replayFileSharedLinkCreated = arg let swift = TeamLog.EventType.replayFileSharedLinkCreated(arg.swift) super.init(swift: swift) } } -/// (sharing) Modified shared link in Replay +/// (sharing) Changed shared link in Replay @objc public class DBXTeamLogEventTypeReplayFileSharedLinkModified: DBXTeamLogEventType { @objc @@ -27259,7 +35285,7 @@ public class DBXTeamLogEventTypeReplayFileSharedLinkModified: DBXTeamLogEventTyp @objc public init(_ arg: DBXTeamLogReplayFileSharedLinkModifiedType) { - self.replayFileSharedLinkModified = arg + replayFileSharedLinkModified = arg let swift = TeamLog.EventType.replayFileSharedLinkModified(arg.swift) super.init(swift: swift) } @@ -27273,7 +35299,7 @@ public class DBXTeamLogEventTypeReplayProjectTeamAdd: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogReplayProjectTeamAddType) { - self.replayProjectTeamAdd = arg + replayProjectTeamAdd = arg let swift = TeamLog.EventType.replayProjectTeamAdd(arg.swift) super.init(swift: swift) } @@ -27287,12 +35313,124 @@ public class DBXTeamLogEventTypeReplayProjectTeamDelete: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogReplayProjectTeamDeleteType) { - self.replayProjectTeamDelete = arg + replayProjectTeamDelete = arg let swift = TeamLog.EventType.replayProjectTeamDelete(arg.swift) super.init(swift: swift) } } +/// (sharing) File added to Send and Track +@objc +public class DBXTeamLogEventTypeSendAndTrackFileAdded: DBXTeamLogEventType { + @objc + public var sendAndTrackFileAdded: DBXTeamLogSendAndTrackFileAddedType + + @objc + public init(_ arg: DBXTeamLogSendAndTrackFileAddedType) { + sendAndTrackFileAdded = arg + let swift = TeamLog.EventType.sendAndTrackFileAdded(arg.swift) + super.init(swift: swift) + } +} + +/// (sharing) File renamed in Send and Track +@objc +public class DBXTeamLogEventTypeSendAndTrackFileRenamed: DBXTeamLogEventType { + @objc + public var sendAndTrackFileRenamed: DBXTeamLogSendAndTrackFileRenamedType + + @objc + public init(_ arg: DBXTeamLogSendAndTrackFileRenamedType) { + sendAndTrackFileRenamed = arg + let swift = TeamLog.EventType.sendAndTrackFileRenamed(arg.swift) + super.init(swift: swift) + } +} + +/// (sharing) File updated in Send and Track +@objc +public class DBXTeamLogEventTypeSendAndTrackFileUpdated: DBXTeamLogEventType { + @objc + public var sendAndTrackFileUpdated: DBXTeamLogSendAndTrackFileUpdatedType + + @objc + public init(_ arg: DBXTeamLogSendAndTrackFileUpdatedType) { + sendAndTrackFileUpdated = arg + let swift = TeamLog.EventType.sendAndTrackFileUpdated(arg.swift) + super.init(swift: swift) + } +} + +/// (sharing) Link created in Send and Track +@objc +public class DBXTeamLogEventTypeSendAndTrackLinkCreated: DBXTeamLogEventType { + @objc + public var sendAndTrackLinkCreated: DBXTeamLogSendAndTrackLinkCreatedType + + @objc + public init(_ arg: DBXTeamLogSendAndTrackLinkCreatedType) { + sendAndTrackLinkCreated = arg + let swift = TeamLog.EventType.sendAndTrackLinkCreated(arg.swift) + super.init(swift: swift) + } +} + +/// (sharing) Link deleted in Send and Track +@objc +public class DBXTeamLogEventTypeSendAndTrackLinkDeleted: DBXTeamLogEventType { + @objc + public var sendAndTrackLinkDeleted: DBXTeamLogSendAndTrackLinkDeletedType + + @objc + public init(_ arg: DBXTeamLogSendAndTrackLinkDeletedType) { + sendAndTrackLinkDeleted = arg + let swift = TeamLog.EventType.sendAndTrackLinkDeleted(arg.swift) + super.init(swift: swift) + } +} + +/// (sharing) Send and Track Link Updated +@objc +public class DBXTeamLogEventTypeSendAndTrackLinkUpdated: DBXTeamLogEventType { + @objc + public var sendAndTrackLinkUpdated: DBXTeamLogSendAndTrackLinkUpdatedType + + @objc + public init(_ arg: DBXTeamLogSendAndTrackLinkUpdatedType) { + sendAndTrackLinkUpdated = arg + let swift = TeamLog.EventType.sendAndTrackLinkUpdated(arg.swift) + super.init(swift: swift) + } +} + +/// (sharing) Send and Track Link Visited +@objc +public class DBXTeamLogEventTypeSendAndTrackLinkViewed: DBXTeamLogEventType { + @objc + public var sendAndTrackLinkViewed: DBXTeamLogSendAndTrackLinkViewedType + + @objc + public init(_ arg: DBXTeamLogSendAndTrackLinkViewedType) { + sendAndTrackLinkViewed = arg + let swift = TeamLog.EventType.sendAndTrackLinkViewed(arg.swift) + super.init(swift: swift) + } +} + +/// (sharing) Send and Track file and associated links deleted +@objc +public class DBXTeamLogEventTypeSendAndTrackRemovedFileAndAssociatedLinks: DBXTeamLogEventType { + @objc + public var sendAndTrackRemovedFileAndAssociatedLinks: DBXTeamLogSendAndTrackRemovedFileAndAssociatedLinksType + + @objc + public init(_ arg: DBXTeamLogSendAndTrackRemovedFileAndAssociatedLinksType) { + sendAndTrackRemovedFileAndAssociatedLinks = arg + let swift = TeamLog.EventType.sendAndTrackRemovedFileAndAssociatedLinks(arg.swift) + super.init(swift: swift) + } +} + /// (sharing) Added team to shared folder (deprecated, no longer logged) @objc public class DBXTeamLogEventTypeSfAddGroup: DBXTeamLogEventType { @@ -27301,7 +35439,7 @@ public class DBXTeamLogEventTypeSfAddGroup: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogSfAddGroupType) { - self.sfAddGroup = arg + sfAddGroup = arg let swift = TeamLog.EventType.sfAddGroup(arg.swift) super.init(swift: swift) } @@ -27315,7 +35453,7 @@ public class DBXTeamLogEventTypeSfAllowNonMembersToViewSharedLinks: DBXTeamLogEv @objc public init(_ arg: DBXTeamLogSfAllowNonMembersToViewSharedLinksType) { - self.sfAllowNonMembersToViewSharedLinks = arg + sfAllowNonMembersToViewSharedLinks = arg let swift = TeamLog.EventType.sfAllowNonMembersToViewSharedLinks(arg.swift) super.init(swift: swift) } @@ -27329,7 +35467,7 @@ public class DBXTeamLogEventTypeSfExternalInviteWarn: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogSfExternalInviteWarnType) { - self.sfExternalInviteWarn = arg + sfExternalInviteWarn = arg let swift = TeamLog.EventType.sfExternalInviteWarn(arg.swift) super.init(swift: swift) } @@ -27343,7 +35481,7 @@ public class DBXTeamLogEventTypeSfFbInvite: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogSfFbInviteType) { - self.sfFbInvite = arg + sfFbInvite = arg let swift = TeamLog.EventType.sfFbInvite(arg.swift) super.init(swift: swift) } @@ -27357,7 +35495,7 @@ public class DBXTeamLogEventTypeSfFbInviteChangeRole: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogSfFbInviteChangeRoleType) { - self.sfFbInviteChangeRole = arg + sfFbInviteChangeRole = arg let swift = TeamLog.EventType.sfFbInviteChangeRole(arg.swift) super.init(swift: swift) } @@ -27371,7 +35509,7 @@ public class DBXTeamLogEventTypeSfFbUninvite: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogSfFbUninviteType) { - self.sfFbUninvite = arg + sfFbUninvite = arg let swift = TeamLog.EventType.sfFbUninvite(arg.swift) super.init(swift: swift) } @@ -27385,7 +35523,7 @@ public class DBXTeamLogEventTypeSfInviteGroup: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogSfInviteGroupType) { - self.sfInviteGroup = arg + sfInviteGroup = arg let swift = TeamLog.EventType.sfInviteGroup(arg.swift) super.init(swift: swift) } @@ -27399,14 +35537,14 @@ public class DBXTeamLogEventTypeSfTeamGrantAccess: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogSfTeamGrantAccessType) { - self.sfTeamGrantAccess = arg + sfTeamGrantAccess = arg let swift = TeamLog.EventType.sfTeamGrantAccess(arg.swift) super.init(swift: swift) } } /// (sharing) Invited team members to shared folder (deprecated, replaced by 'Invited user to Dropbox and added -/// them to shared file/folder') + /// them to shared file/folder') @objc public class DBXTeamLogEventTypeSfTeamInvite: DBXTeamLogEventType { @objc @@ -27414,7 +35552,7 @@ public class DBXTeamLogEventTypeSfTeamInvite: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogSfTeamInviteType) { - self.sfTeamInvite = arg + sfTeamInvite = arg let swift = TeamLog.EventType.sfTeamInvite(arg.swift) super.init(swift: swift) } @@ -27428,7 +35566,7 @@ public class DBXTeamLogEventTypeSfTeamInviteChangeRole: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogSfTeamInviteChangeRoleType) { - self.sfTeamInviteChangeRole = arg + sfTeamInviteChangeRole = arg let swift = TeamLog.EventType.sfTeamInviteChangeRole(arg.swift) super.init(swift: swift) } @@ -27442,7 +35580,7 @@ public class DBXTeamLogEventTypeSfTeamJoin: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogSfTeamJoinType) { - self.sfTeamJoin = arg + sfTeamJoin = arg let swift = TeamLog.EventType.sfTeamJoin(arg.swift) super.init(swift: swift) } @@ -27456,14 +35594,14 @@ public class DBXTeamLogEventTypeSfTeamJoinFromOobLink: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogSfTeamJoinFromOobLinkType) { - self.sfTeamJoinFromOobLink = arg + sfTeamJoinFromOobLink = arg let swift = TeamLog.EventType.sfTeamJoinFromOobLink(arg.swift) super.init(swift: swift) } } /// (sharing) Unshared folder with team member (deprecated, replaced by 'Removed invitee from shared file/folder -/// before invite was accepted') + /// before invite was accepted') @objc public class DBXTeamLogEventTypeSfTeamUninvite: DBXTeamLogEventType { @objc @@ -27471,7 +35609,7 @@ public class DBXTeamLogEventTypeSfTeamUninvite: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogSfTeamUninviteType) { - self.sfTeamUninvite = arg + sfTeamUninvite = arg let swift = TeamLog.EventType.sfTeamUninvite(arg.swift) super.init(swift: swift) } @@ -27485,7 +35623,7 @@ public class DBXTeamLogEventTypeSharedContentAddInvitees: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogSharedContentAddInviteesType) { - self.sharedContentAddInvitees = arg + sharedContentAddInvitees = arg let swift = TeamLog.EventType.sharedContentAddInvitees(arg.swift) super.init(swift: swift) } @@ -27499,7 +35637,7 @@ public class DBXTeamLogEventTypeSharedContentAddLinkExpiry: DBXTeamLogEventType @objc public init(_ arg: DBXTeamLogSharedContentAddLinkExpiryType) { - self.sharedContentAddLinkExpiry = arg + sharedContentAddLinkExpiry = arg let swift = TeamLog.EventType.sharedContentAddLinkExpiry(arg.swift) super.init(swift: swift) } @@ -27513,7 +35651,7 @@ public class DBXTeamLogEventTypeSharedContentAddLinkPassword: DBXTeamLogEventTyp @objc public init(_ arg: DBXTeamLogSharedContentAddLinkPasswordType) { - self.sharedContentAddLinkPassword = arg + sharedContentAddLinkPassword = arg let swift = TeamLog.EventType.sharedContentAddLinkPassword(arg.swift) super.init(swift: swift) } @@ -27527,7 +35665,7 @@ public class DBXTeamLogEventTypeSharedContentAddMember: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogSharedContentAddMemberType) { - self.sharedContentAddMember = arg + sharedContentAddMember = arg let swift = TeamLog.EventType.sharedContentAddMember(arg.swift) super.init(swift: swift) } @@ -27541,7 +35679,7 @@ public class DBXTeamLogEventTypeSharedContentChangeDownloadsPolicy: DBXTeamLogEv @objc public init(_ arg: DBXTeamLogSharedContentChangeDownloadsPolicyType) { - self.sharedContentChangeDownloadsPolicy = arg + sharedContentChangeDownloadsPolicy = arg let swift = TeamLog.EventType.sharedContentChangeDownloadsPolicy(arg.swift) super.init(swift: swift) } @@ -27555,7 +35693,7 @@ public class DBXTeamLogEventTypeSharedContentChangeInviteeRole: DBXTeamLogEventT @objc public init(_ arg: DBXTeamLogSharedContentChangeInviteeRoleType) { - self.sharedContentChangeInviteeRole = arg + sharedContentChangeInviteeRole = arg let swift = TeamLog.EventType.sharedContentChangeInviteeRole(arg.swift) super.init(swift: swift) } @@ -27569,7 +35707,7 @@ public class DBXTeamLogEventTypeSharedContentChangeLinkAudience: DBXTeamLogEvent @objc public init(_ arg: DBXTeamLogSharedContentChangeLinkAudienceType) { - self.sharedContentChangeLinkAudience = arg + sharedContentChangeLinkAudience = arg let swift = TeamLog.EventType.sharedContentChangeLinkAudience(arg.swift) super.init(swift: swift) } @@ -27583,7 +35721,7 @@ public class DBXTeamLogEventTypeSharedContentChangeLinkExpiry: DBXTeamLogEventTy @objc public init(_ arg: DBXTeamLogSharedContentChangeLinkExpiryType) { - self.sharedContentChangeLinkExpiry = arg + sharedContentChangeLinkExpiry = arg let swift = TeamLog.EventType.sharedContentChangeLinkExpiry(arg.swift) super.init(swift: swift) } @@ -27597,7 +35735,7 @@ public class DBXTeamLogEventTypeSharedContentChangeLinkPassword: DBXTeamLogEvent @objc public init(_ arg: DBXTeamLogSharedContentChangeLinkPasswordType) { - self.sharedContentChangeLinkPassword = arg + sharedContentChangeLinkPassword = arg let swift = TeamLog.EventType.sharedContentChangeLinkPassword(arg.swift) super.init(swift: swift) } @@ -27611,7 +35749,7 @@ public class DBXTeamLogEventTypeSharedContentChangeMemberRole: DBXTeamLogEventTy @objc public init(_ arg: DBXTeamLogSharedContentChangeMemberRoleType) { - self.sharedContentChangeMemberRole = arg + sharedContentChangeMemberRole = arg let swift = TeamLog.EventType.sharedContentChangeMemberRole(arg.swift) super.init(swift: swift) } @@ -27625,7 +35763,7 @@ public class DBXTeamLogEventTypeSharedContentChangeViewerInfoPolicy: DBXTeamLogE @objc public init(_ arg: DBXTeamLogSharedContentChangeViewerInfoPolicyType) { - self.sharedContentChangeViewerInfoPolicy = arg + sharedContentChangeViewerInfoPolicy = arg let swift = TeamLog.EventType.sharedContentChangeViewerInfoPolicy(arg.swift) super.init(swift: swift) } @@ -27639,7 +35777,7 @@ public class DBXTeamLogEventTypeSharedContentClaimInvitation: DBXTeamLogEventTyp @objc public init(_ arg: DBXTeamLogSharedContentClaimInvitationType) { - self.sharedContentClaimInvitation = arg + sharedContentClaimInvitation = arg let swift = TeamLog.EventType.sharedContentClaimInvitation(arg.swift) super.init(swift: swift) } @@ -27653,7 +35791,7 @@ public class DBXTeamLogEventTypeSharedContentCopy: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogSharedContentCopyType) { - self.sharedContentCopy = arg + sharedContentCopy = arg let swift = TeamLog.EventType.sharedContentCopy(arg.swift) super.init(swift: swift) } @@ -27667,7 +35805,7 @@ public class DBXTeamLogEventTypeSharedContentDownload: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogSharedContentDownloadType) { - self.sharedContentDownload = arg + sharedContentDownload = arg let swift = TeamLog.EventType.sharedContentDownload(arg.swift) super.init(swift: swift) } @@ -27681,7 +35819,7 @@ public class DBXTeamLogEventTypeSharedContentRelinquishMembership: DBXTeamLogEve @objc public init(_ arg: DBXTeamLogSharedContentRelinquishMembershipType) { - self.sharedContentRelinquishMembership = arg + sharedContentRelinquishMembership = arg let swift = TeamLog.EventType.sharedContentRelinquishMembership(arg.swift) super.init(swift: swift) } @@ -27695,7 +35833,7 @@ public class DBXTeamLogEventTypeSharedContentRemoveInvitees: DBXTeamLogEventType @objc public init(_ arg: DBXTeamLogSharedContentRemoveInviteesType) { - self.sharedContentRemoveInvitees = arg + sharedContentRemoveInvitees = arg let swift = TeamLog.EventType.sharedContentRemoveInvitees(arg.swift) super.init(swift: swift) } @@ -27709,7 +35847,7 @@ public class DBXTeamLogEventTypeSharedContentRemoveLinkExpiry: DBXTeamLogEventTy @objc public init(_ arg: DBXTeamLogSharedContentRemoveLinkExpiryType) { - self.sharedContentRemoveLinkExpiry = arg + sharedContentRemoveLinkExpiry = arg let swift = TeamLog.EventType.sharedContentRemoveLinkExpiry(arg.swift) super.init(swift: swift) } @@ -27723,7 +35861,7 @@ public class DBXTeamLogEventTypeSharedContentRemoveLinkPassword: DBXTeamLogEvent @objc public init(_ arg: DBXTeamLogSharedContentRemoveLinkPasswordType) { - self.sharedContentRemoveLinkPassword = arg + sharedContentRemoveLinkPassword = arg let swift = TeamLog.EventType.sharedContentRemoveLinkPassword(arg.swift) super.init(swift: swift) } @@ -27737,7 +35875,7 @@ public class DBXTeamLogEventTypeSharedContentRemoveMember: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogSharedContentRemoveMemberType) { - self.sharedContentRemoveMember = arg + sharedContentRemoveMember = arg let swift = TeamLog.EventType.sharedContentRemoveMember(arg.swift) super.init(swift: swift) } @@ -27751,7 +35889,7 @@ public class DBXTeamLogEventTypeSharedContentRequestAccess: DBXTeamLogEventType @objc public init(_ arg: DBXTeamLogSharedContentRequestAccessType) { - self.sharedContentRequestAccess = arg + sharedContentRequestAccess = arg let swift = TeamLog.EventType.sharedContentRequestAccess(arg.swift) super.init(swift: swift) } @@ -27765,7 +35903,7 @@ public class DBXTeamLogEventTypeSharedContentRestoreInvitees: DBXTeamLogEventTyp @objc public init(_ arg: DBXTeamLogSharedContentRestoreInviteesType) { - self.sharedContentRestoreInvitees = arg + sharedContentRestoreInvitees = arg let swift = TeamLog.EventType.sharedContentRestoreInvitees(arg.swift) super.init(swift: swift) } @@ -27779,7 +35917,7 @@ public class DBXTeamLogEventTypeSharedContentRestoreMember: DBXTeamLogEventType @objc public init(_ arg: DBXTeamLogSharedContentRestoreMemberType) { - self.sharedContentRestoreMember = arg + sharedContentRestoreMember = arg let swift = TeamLog.EventType.sharedContentRestoreMember(arg.swift) super.init(swift: swift) } @@ -27793,7 +35931,7 @@ public class DBXTeamLogEventTypeSharedContentUnshare: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogSharedContentUnshareType) { - self.sharedContentUnshare = arg + sharedContentUnshare = arg let swift = TeamLog.EventType.sharedContentUnshare(arg.swift) super.init(swift: swift) } @@ -27807,7 +35945,7 @@ public class DBXTeamLogEventTypeSharedContentView: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogSharedContentViewType) { - self.sharedContentView = arg + sharedContentView = arg let swift = TeamLog.EventType.sharedContentView(arg.swift) super.init(swift: swift) } @@ -27821,7 +35959,7 @@ public class DBXTeamLogEventTypeSharedFolderChangeLinkPolicy: DBXTeamLogEventTyp @objc public init(_ arg: DBXTeamLogSharedFolderChangeLinkPolicyType) { - self.sharedFolderChangeLinkPolicy = arg + sharedFolderChangeLinkPolicy = arg let swift = TeamLog.EventType.sharedFolderChangeLinkPolicy(arg.swift) super.init(swift: swift) } @@ -27835,7 +35973,7 @@ public class DBXTeamLogEventTypeSharedFolderChangeMembersInheritancePolicy: DBXT @objc public init(_ arg: DBXTeamLogSharedFolderChangeMembersInheritancePolicyType) { - self.sharedFolderChangeMembersInheritancePolicy = arg + sharedFolderChangeMembersInheritancePolicy = arg let swift = TeamLog.EventType.sharedFolderChangeMembersInheritancePolicy(arg.swift) super.init(swift: swift) } @@ -27849,7 +35987,7 @@ public class DBXTeamLogEventTypeSharedFolderChangeMembersManagementPolicy: DBXTe @objc public init(_ arg: DBXTeamLogSharedFolderChangeMembersManagementPolicyType) { - self.sharedFolderChangeMembersManagementPolicy = arg + sharedFolderChangeMembersManagementPolicy = arg let swift = TeamLog.EventType.sharedFolderChangeMembersManagementPolicy(arg.swift) super.init(swift: swift) } @@ -27863,7 +36001,7 @@ public class DBXTeamLogEventTypeSharedFolderChangeMembersPolicy: DBXTeamLogEvent @objc public init(_ arg: DBXTeamLogSharedFolderChangeMembersPolicyType) { - self.sharedFolderChangeMembersPolicy = arg + sharedFolderChangeMembersPolicy = arg let swift = TeamLog.EventType.sharedFolderChangeMembersPolicy(arg.swift) super.init(swift: swift) } @@ -27877,7 +36015,7 @@ public class DBXTeamLogEventTypeSharedFolderCreate: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogSharedFolderCreateType) { - self.sharedFolderCreate = arg + sharedFolderCreate = arg let swift = TeamLog.EventType.sharedFolderCreate(arg.swift) super.init(swift: swift) } @@ -27891,7 +36029,7 @@ public class DBXTeamLogEventTypeSharedFolderDeclineInvitation: DBXTeamLogEventTy @objc public init(_ arg: DBXTeamLogSharedFolderDeclineInvitationType) { - self.sharedFolderDeclineInvitation = arg + sharedFolderDeclineInvitation = arg let swift = TeamLog.EventType.sharedFolderDeclineInvitation(arg.swift) super.init(swift: swift) } @@ -27905,7 +36043,7 @@ public class DBXTeamLogEventTypeSharedFolderMount: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogSharedFolderMountType) { - self.sharedFolderMount = arg + sharedFolderMount = arg let swift = TeamLog.EventType.sharedFolderMount(arg.swift) super.init(swift: swift) } @@ -27919,7 +36057,7 @@ public class DBXTeamLogEventTypeSharedFolderNest: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogSharedFolderNestType) { - self.sharedFolderNest = arg + sharedFolderNest = arg let swift = TeamLog.EventType.sharedFolderNest(arg.swift) super.init(swift: swift) } @@ -27933,7 +36071,7 @@ public class DBXTeamLogEventTypeSharedFolderTransferOwnership: DBXTeamLogEventTy @objc public init(_ arg: DBXTeamLogSharedFolderTransferOwnershipType) { - self.sharedFolderTransferOwnership = arg + sharedFolderTransferOwnership = arg let swift = TeamLog.EventType.sharedFolderTransferOwnership(arg.swift) super.init(swift: swift) } @@ -27947,7 +36085,7 @@ public class DBXTeamLogEventTypeSharedFolderUnmount: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogSharedFolderUnmountType) { - self.sharedFolderUnmount = arg + sharedFolderUnmount = arg let swift = TeamLog.EventType.sharedFolderUnmount(arg.swift) super.init(swift: swift) } @@ -27961,7 +36099,7 @@ public class DBXTeamLogEventTypeSharedLinkAddExpiry: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogSharedLinkAddExpiryType) { - self.sharedLinkAddExpiry = arg + sharedLinkAddExpiry = arg let swift = TeamLog.EventType.sharedLinkAddExpiry(arg.swift) super.init(swift: swift) } @@ -27975,7 +36113,7 @@ public class DBXTeamLogEventTypeSharedLinkChangeExpiry: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogSharedLinkChangeExpiryType) { - self.sharedLinkChangeExpiry = arg + sharedLinkChangeExpiry = arg let swift = TeamLog.EventType.sharedLinkChangeExpiry(arg.swift) super.init(swift: swift) } @@ -27989,7 +36127,7 @@ public class DBXTeamLogEventTypeSharedLinkChangeVisibility: DBXTeamLogEventType @objc public init(_ arg: DBXTeamLogSharedLinkChangeVisibilityType) { - self.sharedLinkChangeVisibility = arg + sharedLinkChangeVisibility = arg let swift = TeamLog.EventType.sharedLinkChangeVisibility(arg.swift) super.init(swift: swift) } @@ -28003,7 +36141,7 @@ public class DBXTeamLogEventTypeSharedLinkCopy: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogSharedLinkCopyType) { - self.sharedLinkCopy = arg + sharedLinkCopy = arg let swift = TeamLog.EventType.sharedLinkCopy(arg.swift) super.init(swift: swift) } @@ -28017,7 +36155,7 @@ public class DBXTeamLogEventTypeSharedLinkCreate: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogSharedLinkCreateType) { - self.sharedLinkCreate = arg + sharedLinkCreate = arg let swift = TeamLog.EventType.sharedLinkCreate(arg.swift) super.init(swift: swift) } @@ -28031,7 +36169,7 @@ public class DBXTeamLogEventTypeSharedLinkDisable: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogSharedLinkDisableType) { - self.sharedLinkDisable = arg + sharedLinkDisable = arg let swift = TeamLog.EventType.sharedLinkDisable(arg.swift) super.init(swift: swift) } @@ -28045,7 +36183,7 @@ public class DBXTeamLogEventTypeSharedLinkDownload: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogSharedLinkDownloadType) { - self.sharedLinkDownload = arg + sharedLinkDownload = arg let swift = TeamLog.EventType.sharedLinkDownload(arg.swift) super.init(swift: swift) } @@ -28059,12 +36197,26 @@ public class DBXTeamLogEventTypeSharedLinkRemoveExpiry: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogSharedLinkRemoveExpiryType) { - self.sharedLinkRemoveExpiry = arg + sharedLinkRemoveExpiry = arg let swift = TeamLog.EventType.sharedLinkRemoveExpiry(arg.swift) super.init(swift: swift) } } +/// (sharing) Removed link visitor +@objc +public class DBXTeamLogEventTypeSharedLinkRemoveVisitor: DBXTeamLogEventType { + @objc + public var sharedLinkRemoveVisitor: DBXTeamLogSharedLinkRemoveVisitorType + + @objc + public init(_ arg: DBXTeamLogSharedLinkRemoveVisitorType) { + sharedLinkRemoveVisitor = arg + let swift = TeamLog.EventType.sharedLinkRemoveVisitor(arg.swift) + super.init(swift: swift) + } +} + /// (sharing) Added an expiration date to the shared link @objc public class DBXTeamLogEventTypeSharedLinkSettingsAddExpiration: DBXTeamLogEventType { @@ -28073,7 +36225,7 @@ public class DBXTeamLogEventTypeSharedLinkSettingsAddExpiration: DBXTeamLogEvent @objc public init(_ arg: DBXTeamLogSharedLinkSettingsAddExpirationType) { - self.sharedLinkSettingsAddExpiration = arg + sharedLinkSettingsAddExpiration = arg let swift = TeamLog.EventType.sharedLinkSettingsAddExpiration(arg.swift) super.init(swift: swift) } @@ -28087,7 +36239,7 @@ public class DBXTeamLogEventTypeSharedLinkSettingsAddPassword: DBXTeamLogEventTy @objc public init(_ arg: DBXTeamLogSharedLinkSettingsAddPasswordType) { - self.sharedLinkSettingsAddPassword = arg + sharedLinkSettingsAddPassword = arg let swift = TeamLog.EventType.sharedLinkSettingsAddPassword(arg.swift) super.init(swift: swift) } @@ -28101,7 +36253,7 @@ public class DBXTeamLogEventTypeSharedLinkSettingsAllowDownloadDisabled: DBXTeam @objc public init(_ arg: DBXTeamLogSharedLinkSettingsAllowDownloadDisabledType) { - self.sharedLinkSettingsAllowDownloadDisabled = arg + sharedLinkSettingsAllowDownloadDisabled = arg let swift = TeamLog.EventType.sharedLinkSettingsAllowDownloadDisabled(arg.swift) super.init(swift: swift) } @@ -28115,7 +36267,7 @@ public class DBXTeamLogEventTypeSharedLinkSettingsAllowDownloadEnabled: DBXTeamL @objc public init(_ arg: DBXTeamLogSharedLinkSettingsAllowDownloadEnabledType) { - self.sharedLinkSettingsAllowDownloadEnabled = arg + sharedLinkSettingsAllowDownloadEnabled = arg let swift = TeamLog.EventType.sharedLinkSettingsAllowDownloadEnabled(arg.swift) super.init(swift: swift) } @@ -28129,7 +36281,7 @@ public class DBXTeamLogEventTypeSharedLinkSettingsChangeAudience: DBXTeamLogEven @objc public init(_ arg: DBXTeamLogSharedLinkSettingsChangeAudienceType) { - self.sharedLinkSettingsChangeAudience = arg + sharedLinkSettingsChangeAudience = arg let swift = TeamLog.EventType.sharedLinkSettingsChangeAudience(arg.swift) super.init(swift: swift) } @@ -28143,7 +36295,7 @@ public class DBXTeamLogEventTypeSharedLinkSettingsChangeExpiration: DBXTeamLogEv @objc public init(_ arg: DBXTeamLogSharedLinkSettingsChangeExpirationType) { - self.sharedLinkSettingsChangeExpiration = arg + sharedLinkSettingsChangeExpiration = arg let swift = TeamLog.EventType.sharedLinkSettingsChangeExpiration(arg.swift) super.init(swift: swift) } @@ -28157,7 +36309,7 @@ public class DBXTeamLogEventTypeSharedLinkSettingsChangePassword: DBXTeamLogEven @objc public init(_ arg: DBXTeamLogSharedLinkSettingsChangePasswordType) { - self.sharedLinkSettingsChangePassword = arg + sharedLinkSettingsChangePassword = arg let swift = TeamLog.EventType.sharedLinkSettingsChangePassword(arg.swift) super.init(swift: swift) } @@ -28171,7 +36323,7 @@ public class DBXTeamLogEventTypeSharedLinkSettingsRemoveExpiration: DBXTeamLogEv @objc public init(_ arg: DBXTeamLogSharedLinkSettingsRemoveExpirationType) { - self.sharedLinkSettingsRemoveExpiration = arg + sharedLinkSettingsRemoveExpiration = arg let swift = TeamLog.EventType.sharedLinkSettingsRemoveExpiration(arg.swift) super.init(swift: swift) } @@ -28185,7 +36337,7 @@ public class DBXTeamLogEventTypeSharedLinkSettingsRemovePassword: DBXTeamLogEven @objc public init(_ arg: DBXTeamLogSharedLinkSettingsRemovePasswordType) { - self.sharedLinkSettingsRemovePassword = arg + sharedLinkSettingsRemovePassword = arg let swift = TeamLog.EventType.sharedLinkSettingsRemovePassword(arg.swift) super.init(swift: swift) } @@ -28199,7 +36351,7 @@ public class DBXTeamLogEventTypeSharedLinkShare: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogSharedLinkShareType) { - self.sharedLinkShare = arg + sharedLinkShare = arg let swift = TeamLog.EventType.sharedLinkShare(arg.swift) super.init(swift: swift) } @@ -28213,7 +36365,7 @@ public class DBXTeamLogEventTypeSharedLinkView: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogSharedLinkViewType) { - self.sharedLinkView = arg + sharedLinkView = arg let swift = TeamLog.EventType.sharedLinkView(arg.swift) super.init(swift: swift) } @@ -28227,7 +36379,7 @@ public class DBXTeamLogEventTypeSharedNoteOpened: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogSharedNoteOpenedType) { - self.sharedNoteOpened = arg + sharedNoteOpened = arg let swift = TeamLog.EventType.sharedNoteOpened(arg.swift) super.init(swift: swift) } @@ -28241,7 +36393,7 @@ public class DBXTeamLogEventTypeShmodelDisableDownloads: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogShmodelDisableDownloadsType) { - self.shmodelDisableDownloads = arg + shmodelDisableDownloads = arg let swift = TeamLog.EventType.shmodelDisableDownloads(arg.swift) super.init(swift: swift) } @@ -28255,7 +36407,7 @@ public class DBXTeamLogEventTypeShmodelEnableDownloads: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogShmodelEnableDownloadsType) { - self.shmodelEnableDownloads = arg + shmodelEnableDownloads = arg let swift = TeamLog.EventType.shmodelEnableDownloads(arg.swift) super.init(swift: swift) } @@ -28269,7 +36421,7 @@ public class DBXTeamLogEventTypeShmodelGroupShare: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogShmodelGroupShareType) { - self.shmodelGroupShare = arg + shmodelGroupShare = arg let swift = TeamLog.EventType.shmodelGroupShare(arg.swift) super.init(swift: swift) } @@ -28283,7 +36435,7 @@ public class DBXTeamLogEventTypeShowcaseAccessGranted: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogShowcaseAccessGrantedType) { - self.showcaseAccessGranted = arg + showcaseAccessGranted = arg let swift = TeamLog.EventType.showcaseAccessGranted(arg.swift) super.init(swift: swift) } @@ -28297,7 +36449,7 @@ public class DBXTeamLogEventTypeShowcaseAddMember: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogShowcaseAddMemberType) { - self.showcaseAddMember = arg + showcaseAddMember = arg let swift = TeamLog.EventType.showcaseAddMember(arg.swift) super.init(swift: swift) } @@ -28311,7 +36463,7 @@ public class DBXTeamLogEventTypeShowcaseArchived: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogShowcaseArchivedType) { - self.showcaseArchived = arg + showcaseArchived = arg let swift = TeamLog.EventType.showcaseArchived(arg.swift) super.init(swift: swift) } @@ -28325,7 +36477,7 @@ public class DBXTeamLogEventTypeShowcaseCreated: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogShowcaseCreatedType) { - self.showcaseCreated = arg + showcaseCreated = arg let swift = TeamLog.EventType.showcaseCreated(arg.swift) super.init(swift: swift) } @@ -28339,7 +36491,7 @@ public class DBXTeamLogEventTypeShowcaseDeleteComment: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogShowcaseDeleteCommentType) { - self.showcaseDeleteComment = arg + showcaseDeleteComment = arg let swift = TeamLog.EventType.showcaseDeleteComment(arg.swift) super.init(swift: swift) } @@ -28353,7 +36505,7 @@ public class DBXTeamLogEventTypeShowcaseEdited: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogShowcaseEditedType) { - self.showcaseEdited = arg + showcaseEdited = arg let swift = TeamLog.EventType.showcaseEdited(arg.swift) super.init(swift: swift) } @@ -28367,7 +36519,7 @@ public class DBXTeamLogEventTypeShowcaseEditComment: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogShowcaseEditCommentType) { - self.showcaseEditComment = arg + showcaseEditComment = arg let swift = TeamLog.EventType.showcaseEditComment(arg.swift) super.init(swift: swift) } @@ -28381,7 +36533,7 @@ public class DBXTeamLogEventTypeShowcaseFileAdded: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogShowcaseFileAddedType) { - self.showcaseFileAdded = arg + showcaseFileAdded = arg let swift = TeamLog.EventType.showcaseFileAdded(arg.swift) super.init(swift: swift) } @@ -28395,7 +36547,7 @@ public class DBXTeamLogEventTypeShowcaseFileDownload: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogShowcaseFileDownloadType) { - self.showcaseFileDownload = arg + showcaseFileDownload = arg let swift = TeamLog.EventType.showcaseFileDownload(arg.swift) super.init(swift: swift) } @@ -28409,7 +36561,7 @@ public class DBXTeamLogEventTypeShowcaseFileRemoved: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogShowcaseFileRemovedType) { - self.showcaseFileRemoved = arg + showcaseFileRemoved = arg let swift = TeamLog.EventType.showcaseFileRemoved(arg.swift) super.init(swift: swift) } @@ -28423,7 +36575,7 @@ public class DBXTeamLogEventTypeShowcaseFileView: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogShowcaseFileViewType) { - self.showcaseFileView = arg + showcaseFileView = arg let swift = TeamLog.EventType.showcaseFileView(arg.swift) super.init(swift: swift) } @@ -28437,7 +36589,7 @@ public class DBXTeamLogEventTypeShowcasePermanentlyDeleted: DBXTeamLogEventType @objc public init(_ arg: DBXTeamLogShowcasePermanentlyDeletedType) { - self.showcasePermanentlyDeleted = arg + showcasePermanentlyDeleted = arg let swift = TeamLog.EventType.showcasePermanentlyDeleted(arg.swift) super.init(swift: swift) } @@ -28451,7 +36603,7 @@ public class DBXTeamLogEventTypeShowcasePostComment: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogShowcasePostCommentType) { - self.showcasePostComment = arg + showcasePostComment = arg let swift = TeamLog.EventType.showcasePostComment(arg.swift) super.init(swift: swift) } @@ -28465,7 +36617,7 @@ public class DBXTeamLogEventTypeShowcaseRemoveMember: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogShowcaseRemoveMemberType) { - self.showcaseRemoveMember = arg + showcaseRemoveMember = arg let swift = TeamLog.EventType.showcaseRemoveMember(arg.swift) super.init(swift: swift) } @@ -28479,7 +36631,7 @@ public class DBXTeamLogEventTypeShowcaseRenamed: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogShowcaseRenamedType) { - self.showcaseRenamed = arg + showcaseRenamed = arg let swift = TeamLog.EventType.showcaseRenamed(arg.swift) super.init(swift: swift) } @@ -28493,7 +36645,7 @@ public class DBXTeamLogEventTypeShowcaseRequestAccess: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogShowcaseRequestAccessType) { - self.showcaseRequestAccess = arg + showcaseRequestAccess = arg let swift = TeamLog.EventType.showcaseRequestAccess(arg.swift) super.init(swift: swift) } @@ -28507,7 +36659,7 @@ public class DBXTeamLogEventTypeShowcaseResolveComment: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogShowcaseResolveCommentType) { - self.showcaseResolveComment = arg + showcaseResolveComment = arg let swift = TeamLog.EventType.showcaseResolveComment(arg.swift) super.init(swift: swift) } @@ -28521,7 +36673,7 @@ public class DBXTeamLogEventTypeShowcaseRestored: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogShowcaseRestoredType) { - self.showcaseRestored = arg + showcaseRestored = arg let swift = TeamLog.EventType.showcaseRestored(arg.swift) super.init(swift: swift) } @@ -28535,7 +36687,7 @@ public class DBXTeamLogEventTypeShowcaseTrashed: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogShowcaseTrashedType) { - self.showcaseTrashed = arg + showcaseTrashed = arg let swift = TeamLog.EventType.showcaseTrashed(arg.swift) super.init(swift: swift) } @@ -28549,7 +36701,7 @@ public class DBXTeamLogEventTypeShowcaseTrashedDeprecated: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogShowcaseTrashedDeprecatedType) { - self.showcaseTrashedDeprecated = arg + showcaseTrashedDeprecated = arg let swift = TeamLog.EventType.showcaseTrashedDeprecated(arg.swift) super.init(swift: swift) } @@ -28563,7 +36715,7 @@ public class DBXTeamLogEventTypeShowcaseUnresolveComment: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogShowcaseUnresolveCommentType) { - self.showcaseUnresolveComment = arg + showcaseUnresolveComment = arg let swift = TeamLog.EventType.showcaseUnresolveComment(arg.swift) super.init(swift: swift) } @@ -28577,7 +36729,7 @@ public class DBXTeamLogEventTypeShowcaseUntrashed: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogShowcaseUntrashedType) { - self.showcaseUntrashed = arg + showcaseUntrashed = arg let swift = TeamLog.EventType.showcaseUntrashed(arg.swift) super.init(swift: swift) } @@ -28591,7 +36743,7 @@ public class DBXTeamLogEventTypeShowcaseUntrashedDeprecated: DBXTeamLogEventType @objc public init(_ arg: DBXTeamLogShowcaseUntrashedDeprecatedType) { - self.showcaseUntrashedDeprecated = arg + showcaseUntrashedDeprecated = arg let swift = TeamLog.EventType.showcaseUntrashedDeprecated(arg.swift) super.init(swift: swift) } @@ -28605,12 +36757,138 @@ public class DBXTeamLogEventTypeShowcaseView: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogShowcaseViewType) { - self.showcaseView = arg + showcaseView = arg let swift = TeamLog.EventType.showcaseView(arg.swift) super.init(swift: swift) } } +/// (signatures) Canceled signature request +@objc +public class DBXTeamLogEventTypeSignSignatureRequestCanceled: DBXTeamLogEventType { + @objc + public var signSignatureRequestCanceled: DBXTeamLogSignSignatureRequestCanceledType + + @objc + public init(_ arg: DBXTeamLogSignSignatureRequestCanceledType) { + signSignatureRequestCanceled = arg + let swift = TeamLog.EventType.signSignatureRequestCanceled(arg.swift) + super.init(swift: swift) + } +} + +/// (signatures) Completed signature request +@objc +public class DBXTeamLogEventTypeSignSignatureRequestCompleted: DBXTeamLogEventType { + @objc + public var signSignatureRequestCompleted: DBXTeamLogSignSignatureRequestCompletedType + + @objc + public init(_ arg: DBXTeamLogSignSignatureRequestCompletedType) { + signSignatureRequestCompleted = arg + let swift = TeamLog.EventType.signSignatureRequestCompleted(arg.swift) + super.init(swift: swift) + } +} + +/// (signatures) Declined signature request +@objc +public class DBXTeamLogEventTypeSignSignatureRequestDeclined: DBXTeamLogEventType { + @objc + public var signSignatureRequestDeclined: DBXTeamLogSignSignatureRequestDeclinedType + + @objc + public init(_ arg: DBXTeamLogSignSignatureRequestDeclinedType) { + signSignatureRequestDeclined = arg + let swift = TeamLog.EventType.signSignatureRequestDeclined(arg.swift) + super.init(swift: swift) + } +} + +/// (signatures) Opened signature request +@objc +public class DBXTeamLogEventTypeSignSignatureRequestOpened: DBXTeamLogEventType { + @objc + public var signSignatureRequestOpened: DBXTeamLogSignSignatureRequestOpenedType + + @objc + public init(_ arg: DBXTeamLogSignSignatureRequestOpenedType) { + signSignatureRequestOpened = arg + let swift = TeamLog.EventType.signSignatureRequestOpened(arg.swift) + super.init(swift: swift) + } +} + +/// (signatures) Sent signature request reminder +@objc +public class DBXTeamLogEventTypeSignSignatureRequestReminderSent: DBXTeamLogEventType { + @objc + public var signSignatureRequestReminderSent: DBXTeamLogSignSignatureRequestReminderSentType + + @objc + public init(_ arg: DBXTeamLogSignSignatureRequestReminderSentType) { + signSignatureRequestReminderSent = arg + let swift = TeamLog.EventType.signSignatureRequestReminderSent(arg.swift) + super.init(swift: swift) + } +} + +/// (signatures) Sent signature request +@objc +public class DBXTeamLogEventTypeSignSignatureRequestSent: DBXTeamLogEventType { + @objc + public var signSignatureRequestSent: DBXTeamLogSignSignatureRequestSentType + + @objc + public init(_ arg: DBXTeamLogSignSignatureRequestSentType) { + signSignatureRequestSent = arg + let swift = TeamLog.EventType.signSignatureRequestSent(arg.swift) + super.init(swift: swift) + } +} + +/// (signatures) Created template +@objc +public class DBXTeamLogEventTypeSignTemplateCreated: DBXTeamLogEventType { + @objc + public var signTemplateCreated: DBXTeamLogSignTemplateCreatedType + + @objc + public init(_ arg: DBXTeamLogSignTemplateCreatedType) { + signTemplateCreated = arg + let swift = TeamLog.EventType.signTemplateCreated(arg.swift) + super.init(swift: swift) + } +} + +/// (signatures) Shared template +@objc +public class DBXTeamLogEventTypeSignTemplateShared: DBXTeamLogEventType { + @objc + public var signTemplateShared: DBXTeamLogSignTemplateSharedType + + @objc + public init(_ arg: DBXTeamLogSignTemplateSharedType) { + signTemplateShared = arg + let swift = TeamLog.EventType.signTemplateShared(arg.swift) + super.init(swift: swift) + } +} + +/// (sso) RISC security event received from external provider +@objc +public class DBXTeamLogEventTypeRiscSecurityEvent: DBXTeamLogEventType { + @objc + public var riscSecurityEvent: DBXTeamLogRiscSecurityEventType + + @objc + public init(_ arg: DBXTeamLogRiscSecurityEventType) { + riscSecurityEvent = arg + let swift = TeamLog.EventType.riscSecurityEvent(arg.swift) + super.init(swift: swift) + } +} + /// (sso) Added X.509 certificate for SSO @objc public class DBXTeamLogEventTypeSsoAddCert: DBXTeamLogEventType { @@ -28619,7 +36897,7 @@ public class DBXTeamLogEventTypeSsoAddCert: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogSsoAddCertType) { - self.ssoAddCert = arg + ssoAddCert = arg let swift = TeamLog.EventType.ssoAddCert(arg.swift) super.init(swift: swift) } @@ -28633,7 +36911,7 @@ public class DBXTeamLogEventTypeSsoAddLoginUrl: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogSsoAddLoginUrlType) { - self.ssoAddLoginUrl = arg + ssoAddLoginUrl = arg let swift = TeamLog.EventType.ssoAddLoginUrl(arg.swift) super.init(swift: swift) } @@ -28647,7 +36925,7 @@ public class DBXTeamLogEventTypeSsoAddLogoutUrl: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogSsoAddLogoutUrlType) { - self.ssoAddLogoutUrl = arg + ssoAddLogoutUrl = arg let swift = TeamLog.EventType.ssoAddLogoutUrl(arg.swift) super.init(swift: swift) } @@ -28661,7 +36939,7 @@ public class DBXTeamLogEventTypeSsoChangeCert: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogSsoChangeCertType) { - self.ssoChangeCert = arg + ssoChangeCert = arg let swift = TeamLog.EventType.ssoChangeCert(arg.swift) super.init(swift: swift) } @@ -28675,7 +36953,7 @@ public class DBXTeamLogEventTypeSsoChangeLoginUrl: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogSsoChangeLoginUrlType) { - self.ssoChangeLoginUrl = arg + ssoChangeLoginUrl = arg let swift = TeamLog.EventType.ssoChangeLoginUrl(arg.swift) super.init(swift: swift) } @@ -28689,7 +36967,7 @@ public class DBXTeamLogEventTypeSsoChangeLogoutUrl: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogSsoChangeLogoutUrlType) { - self.ssoChangeLogoutUrl = arg + ssoChangeLogoutUrl = arg let swift = TeamLog.EventType.ssoChangeLogoutUrl(arg.swift) super.init(swift: swift) } @@ -28703,7 +36981,7 @@ public class DBXTeamLogEventTypeSsoChangeSamlIdentityMode: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogSsoChangeSamlIdentityModeType) { - self.ssoChangeSamlIdentityMode = arg + ssoChangeSamlIdentityMode = arg let swift = TeamLog.EventType.ssoChangeSamlIdentityMode(arg.swift) super.init(swift: swift) } @@ -28717,7 +36995,7 @@ public class DBXTeamLogEventTypeSsoRemoveCert: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogSsoRemoveCertType) { - self.ssoRemoveCert = arg + ssoRemoveCert = arg let swift = TeamLog.EventType.ssoRemoveCert(arg.swift) super.init(swift: swift) } @@ -28731,7 +37009,7 @@ public class DBXTeamLogEventTypeSsoRemoveLoginUrl: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogSsoRemoveLoginUrlType) { - self.ssoRemoveLoginUrl = arg + ssoRemoveLoginUrl = arg let swift = TeamLog.EventType.ssoRemoveLoginUrl(arg.swift) super.init(swift: swift) } @@ -28745,7 +37023,7 @@ public class DBXTeamLogEventTypeSsoRemoveLogoutUrl: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogSsoRemoveLogoutUrlType) { - self.ssoRemoveLogoutUrl = arg + ssoRemoveLogoutUrl = arg let swift = TeamLog.EventType.ssoRemoveLogoutUrl(arg.swift) super.init(swift: swift) } @@ -28759,7 +37037,7 @@ public class DBXTeamLogEventTypeTeamFolderChangeStatus: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogTeamFolderChangeStatusType) { - self.teamFolderChangeStatus = arg + teamFolderChangeStatus = arg let swift = TeamLog.EventType.teamFolderChangeStatus(arg.swift) super.init(swift: swift) } @@ -28773,7 +37051,7 @@ public class DBXTeamLogEventTypeTeamFolderCreate: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogTeamFolderCreateType) { - self.teamFolderCreate = arg + teamFolderCreate = arg let swift = TeamLog.EventType.teamFolderCreate(arg.swift) super.init(swift: swift) } @@ -28787,7 +37065,7 @@ public class DBXTeamLogEventTypeTeamFolderDowngrade: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogTeamFolderDowngradeType) { - self.teamFolderDowngrade = arg + teamFolderDowngrade = arg let swift = TeamLog.EventType.teamFolderDowngrade(arg.swift) super.init(swift: swift) } @@ -28801,7 +37079,7 @@ public class DBXTeamLogEventTypeTeamFolderPermanentlyDelete: DBXTeamLogEventType @objc public init(_ arg: DBXTeamLogTeamFolderPermanentlyDeleteType) { - self.teamFolderPermanentlyDelete = arg + teamFolderPermanentlyDelete = arg let swift = TeamLog.EventType.teamFolderPermanentlyDelete(arg.swift) super.init(swift: swift) } @@ -28815,12 +37093,54 @@ public class DBXTeamLogEventTypeTeamFolderRename: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogTeamFolderRenameType) { - self.teamFolderRename = arg + teamFolderRename = arg let swift = TeamLog.EventType.teamFolderRename(arg.swift) super.init(swift: swift) } } +/// (team_folders) Changed team folder space limit enforcement type +@objc +public class DBXTeamLogEventTypeTeamFolderSpaceLimitsChangeCapsType: DBXTeamLogEventType { + @objc + public var teamFolderSpaceLimitsChangeCapsType: DBXTeamLogTeamFolderSpaceLimitsChangeCapsTypeType + + @objc + public init(_ arg: DBXTeamLogTeamFolderSpaceLimitsChangeCapsTypeType) { + teamFolderSpaceLimitsChangeCapsType = arg + let swift = TeamLog.EventType.teamFolderSpaceLimitsChangeCapsType(arg.swift) + super.init(swift: swift) + } +} + +/// (team_folders) Changed team folder space limit +@objc +public class DBXTeamLogEventTypeTeamFolderSpaceLimitsChangeLimit: DBXTeamLogEventType { + @objc + public var teamFolderSpaceLimitsChangeLimit: DBXTeamLogTeamFolderSpaceLimitsChangeLimitType + + @objc + public init(_ arg: DBXTeamLogTeamFolderSpaceLimitsChangeLimitType) { + teamFolderSpaceLimitsChangeLimit = arg + let swift = TeamLog.EventType.teamFolderSpaceLimitsChangeLimit(arg.swift) + super.init(swift: swift) + } +} + +/// (team_folders) Changed team folder space limit notification target +@objc +public class DBXTeamLogEventTypeTeamFolderSpaceLimitsChangeNotificationTarget: DBXTeamLogEventType { + @objc + public var teamFolderSpaceLimitsChangeNotificationTarget: DBXTeamLogTeamFolderSpaceLimitsChangeNotificationTargetType + + @objc + public init(_ arg: DBXTeamLogTeamFolderSpaceLimitsChangeNotificationTargetType) { + teamFolderSpaceLimitsChangeNotificationTarget = arg + let swift = TeamLog.EventType.teamFolderSpaceLimitsChangeNotificationTarget(arg.swift) + super.init(swift: swift) + } +} + /// (team_folders) Changed sync default @objc public class DBXTeamLogEventTypeTeamSelectiveSyncSettingsChanged: DBXTeamLogEventType { @@ -28829,7 +37149,7 @@ public class DBXTeamLogEventTypeTeamSelectiveSyncSettingsChanged: DBXTeamLogEven @objc public init(_ arg: DBXTeamLogTeamSelectiveSyncSettingsChangedType) { - self.teamSelectiveSyncSettingsChanged = arg + teamSelectiveSyncSettingsChanged = arg let swift = TeamLog.EventType.teamSelectiveSyncSettingsChanged(arg.swift) super.init(swift: swift) } @@ -28843,7 +37163,7 @@ public class DBXTeamLogEventTypeAccountCaptureChangePolicy: DBXTeamLogEventType @objc public init(_ arg: DBXTeamLogAccountCaptureChangePolicyType) { - self.accountCaptureChangePolicy = arg + accountCaptureChangePolicy = arg let swift = TeamLog.EventType.accountCaptureChangePolicy(arg.swift) super.init(swift: swift) } @@ -28857,12 +37177,26 @@ public class DBXTeamLogEventTypeAdminEmailRemindersChanged: DBXTeamLogEventType @objc public init(_ arg: DBXTeamLogAdminEmailRemindersChangedType) { - self.adminEmailRemindersChanged = arg + adminEmailRemindersChanged = arg let swift = TeamLog.EventType.adminEmailRemindersChanged(arg.swift) super.init(swift: swift) } } +/// (team_policies) Changed AI third party sharing policy for team +@objc +public class DBXTeamLogEventTypeAiThirdPartySharingDropboxBasePolicyChanged: DBXTeamLogEventType { + @objc + public var aiThirdPartySharingDropboxBasePolicyChanged: DBXTeamLogAiThirdPartySharingDropboxBasePolicyChangedType + + @objc + public init(_ arg: DBXTeamLogAiThirdPartySharingDropboxBasePolicyChangedType) { + aiThirdPartySharingDropboxBasePolicyChanged = arg + let swift = TeamLog.EventType.aiThirdPartySharingDropboxBasePolicyChanged(arg.swift) + super.init(swift: swift) + } +} + /// (team_policies) Disabled downloads (deprecated, no longer logged) @objc public class DBXTeamLogEventTypeAllowDownloadDisabled: DBXTeamLogEventType { @@ -28871,7 +37205,7 @@ public class DBXTeamLogEventTypeAllowDownloadDisabled: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogAllowDownloadDisabledType) { - self.allowDownloadDisabled = arg + allowDownloadDisabled = arg let swift = TeamLog.EventType.allowDownloadDisabled(arg.swift) super.init(swift: swift) } @@ -28885,12 +37219,26 @@ public class DBXTeamLogEventTypeAllowDownloadEnabled: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogAllowDownloadEnabledType) { - self.allowDownloadEnabled = arg + allowDownloadEnabled = arg let swift = TeamLog.EventType.allowDownloadEnabled(arg.swift) super.init(swift: swift) } } +/// (team_policies) Enabled/disabled Apple login for team +@objc +public class DBXTeamLogEventTypeAppleLoginChangePolicy: DBXTeamLogEventType { + @objc + public var appleLoginChangePolicy: DBXTeamLogAppleLoginChangePolicyType + + @objc + public init(_ arg: DBXTeamLogAppleLoginChangePolicyType) { + appleLoginChangePolicy = arg + let swift = TeamLog.EventType.appleLoginChangePolicy(arg.swift) + super.init(swift: swift) + } +} + /// (team_policies) Changed app permissions @objc public class DBXTeamLogEventTypeAppPermissionsChanged: DBXTeamLogEventType { @@ -28899,7 +37247,7 @@ public class DBXTeamLogEventTypeAppPermissionsChanged: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogAppPermissionsChangedType) { - self.appPermissionsChanged = arg + appPermissionsChanged = arg let swift = TeamLog.EventType.appPermissionsChanged(arg.swift) super.init(swift: swift) } @@ -28913,12 +37261,26 @@ public class DBXTeamLogEventTypeCameraUploadsPolicyChanged: DBXTeamLogEventType @objc public init(_ arg: DBXTeamLogCameraUploadsPolicyChangedType) { - self.cameraUploadsPolicyChanged = arg + cameraUploadsPolicyChanged = arg let swift = TeamLog.EventType.cameraUploadsPolicyChanged(arg.swift) super.init(swift: swift) } } +/// (team_policies) Changed Capture team space policy for team +@objc +public class DBXTeamLogEventTypeCaptureTeamSpacePolicyChanged: DBXTeamLogEventType { + @objc + public var captureTeamSpacePolicyChanged: DBXTeamLogCaptureTeamSpacePolicyChangedType + + @objc + public init(_ arg: DBXTeamLogCaptureTeamSpacePolicyChangedType) { + captureTeamSpacePolicyChanged = arg + let swift = TeamLog.EventType.captureTeamSpacePolicyChanged(arg.swift) + super.init(swift: swift) + } +} + /// (team_policies) Changed Capture transcription policy for team @objc public class DBXTeamLogEventTypeCaptureTranscriptPolicyChanged: DBXTeamLogEventType { @@ -28927,7 +37289,7 @@ public class DBXTeamLogEventTypeCaptureTranscriptPolicyChanged: DBXTeamLogEventT @objc public init(_ arg: DBXTeamLogCaptureTranscriptPolicyChangedType) { - self.captureTranscriptPolicyChanged = arg + captureTranscriptPolicyChanged = arg let swift = TeamLog.EventType.captureTranscriptPolicyChanged(arg.swift) super.init(swift: swift) } @@ -28941,7 +37303,7 @@ public class DBXTeamLogEventTypeClassificationChangePolicy: DBXTeamLogEventType @objc public init(_ arg: DBXTeamLogClassificationChangePolicyType) { - self.classificationChangePolicy = arg + classificationChangePolicy = arg let swift = TeamLog.EventType.classificationChangePolicy(arg.swift) super.init(swift: swift) } @@ -28955,7 +37317,7 @@ public class DBXTeamLogEventTypeComputerBackupPolicyChanged: DBXTeamLogEventType @objc public init(_ arg: DBXTeamLogComputerBackupPolicyChangedType) { - self.computerBackupPolicyChanged = arg + computerBackupPolicyChanged = arg let swift = TeamLog.EventType.computerBackupPolicyChanged(arg.swift) super.init(swift: swift) } @@ -28969,12 +37331,40 @@ public class DBXTeamLogEventTypeContentAdministrationPolicyChanged: DBXTeamLogEv @objc public init(_ arg: DBXTeamLogContentAdministrationPolicyChangedType) { - self.contentAdministrationPolicyChanged = arg + contentAdministrationPolicyChanged = arg let swift = TeamLog.EventType.contentAdministrationPolicyChanged(arg.swift) super.init(swift: swift) } } +/// (team_policies) Changed content deletion protection policy for team +@objc +public class DBXTeamLogEventTypeContentDeletionProtectionChangePolicy: DBXTeamLogEventType { + @objc + public var contentDeletionProtectionChangePolicy: DBXTeamLogContentDeletionProtectionChangePolicyType + + @objc + public init(_ arg: DBXTeamLogContentDeletionProtectionChangePolicyType) { + contentDeletionProtectionChangePolicy = arg + let swift = TeamLog.EventType.contentDeletionProtectionChangePolicy(arg.swift) + super.init(swift: swift) + } +} + +/// (team_policies) Changed Dash external sharing policy for team +@objc +public class DBXTeamLogEventTypeDashExternalSharingPolicyChanged: DBXTeamLogEventType { + @objc + public var dashExternalSharingPolicyChanged: DBXTeamLogDashExternalSharingPolicyChangedType + + @objc + public init(_ arg: DBXTeamLogDashExternalSharingPolicyChangedType) { + dashExternalSharingPolicyChanged = arg + let swift = TeamLog.EventType.dashExternalSharingPolicyChanged(arg.swift) + super.init(swift: swift) + } +} + /// (team_policies) Set restrictions on data center locations where team data resides @objc public class DBXTeamLogEventTypeDataPlacementRestrictionChangePolicy: DBXTeamLogEventType { @@ -28983,7 +37373,7 @@ public class DBXTeamLogEventTypeDataPlacementRestrictionChangePolicy: DBXTeamLog @objc public init(_ arg: DBXTeamLogDataPlacementRestrictionChangePolicyType) { - self.dataPlacementRestrictionChangePolicy = arg + dataPlacementRestrictionChangePolicy = arg let swift = TeamLog.EventType.dataPlacementRestrictionChangePolicy(arg.swift) super.init(swift: swift) } @@ -28997,7 +37387,7 @@ public class DBXTeamLogEventTypeDataPlacementRestrictionSatisfyPolicy: DBXTeamLo @objc public init(_ arg: DBXTeamLogDataPlacementRestrictionSatisfyPolicyType) { - self.dataPlacementRestrictionSatisfyPolicy = arg + dataPlacementRestrictionSatisfyPolicy = arg let swift = TeamLog.EventType.dataPlacementRestrictionSatisfyPolicy(arg.swift) super.init(swift: swift) } @@ -29011,7 +37401,7 @@ public class DBXTeamLogEventTypeDeviceApprovalsAddException: DBXTeamLogEventType @objc public init(_ arg: DBXTeamLogDeviceApprovalsAddExceptionType) { - self.deviceApprovalsAddException = arg + deviceApprovalsAddException = arg let swift = TeamLog.EventType.deviceApprovalsAddException(arg.swift) super.init(swift: swift) } @@ -29025,7 +37415,7 @@ public class DBXTeamLogEventTypeDeviceApprovalsChangeDesktopPolicy: DBXTeamLogEv @objc public init(_ arg: DBXTeamLogDeviceApprovalsChangeDesktopPolicyType) { - self.deviceApprovalsChangeDesktopPolicy = arg + deviceApprovalsChangeDesktopPolicy = arg let swift = TeamLog.EventType.deviceApprovalsChangeDesktopPolicy(arg.swift) super.init(swift: swift) } @@ -29039,7 +37429,7 @@ public class DBXTeamLogEventTypeDeviceApprovalsChangeMobilePolicy: DBXTeamLogEve @objc public init(_ arg: DBXTeamLogDeviceApprovalsChangeMobilePolicyType) { - self.deviceApprovalsChangeMobilePolicy = arg + deviceApprovalsChangeMobilePolicy = arg let swift = TeamLog.EventType.deviceApprovalsChangeMobilePolicy(arg.swift) super.init(swift: swift) } @@ -29053,7 +37443,7 @@ public class DBXTeamLogEventTypeDeviceApprovalsChangeOverageAction: DBXTeamLogEv @objc public init(_ arg: DBXTeamLogDeviceApprovalsChangeOverageActionType) { - self.deviceApprovalsChangeOverageAction = arg + deviceApprovalsChangeOverageAction = arg let swift = TeamLog.EventType.deviceApprovalsChangeOverageAction(arg.swift) super.init(swift: swift) } @@ -29067,7 +37457,7 @@ public class DBXTeamLogEventTypeDeviceApprovalsChangeUnlinkAction: DBXTeamLogEve @objc public init(_ arg: DBXTeamLogDeviceApprovalsChangeUnlinkActionType) { - self.deviceApprovalsChangeUnlinkAction = arg + deviceApprovalsChangeUnlinkAction = arg let swift = TeamLog.EventType.deviceApprovalsChangeUnlinkAction(arg.swift) super.init(swift: swift) } @@ -29081,7 +37471,7 @@ public class DBXTeamLogEventTypeDeviceApprovalsRemoveException: DBXTeamLogEventT @objc public init(_ arg: DBXTeamLogDeviceApprovalsRemoveExceptionType) { - self.deviceApprovalsRemoveException = arg + deviceApprovalsRemoveException = arg let swift = TeamLog.EventType.deviceApprovalsRemoveException(arg.swift) super.init(swift: swift) } @@ -29095,7 +37485,7 @@ public class DBXTeamLogEventTypeDirectoryRestrictionsAddMembers: DBXTeamLogEvent @objc public init(_ arg: DBXTeamLogDirectoryRestrictionsAddMembersType) { - self.directoryRestrictionsAddMembers = arg + directoryRestrictionsAddMembers = arg let swift = TeamLog.EventType.directoryRestrictionsAddMembers(arg.swift) super.init(swift: swift) } @@ -29109,7 +37499,7 @@ public class DBXTeamLogEventTypeDirectoryRestrictionsRemoveMembers: DBXTeamLogEv @objc public init(_ arg: DBXTeamLogDirectoryRestrictionsRemoveMembersType) { - self.directoryRestrictionsRemoveMembers = arg + directoryRestrictionsRemoveMembers = arg let swift = TeamLog.EventType.directoryRestrictionsRemoveMembers(arg.swift) super.init(swift: swift) } @@ -29123,7 +37513,7 @@ public class DBXTeamLogEventTypeDropboxPasswordsPolicyChanged: DBXTeamLogEventTy @objc public init(_ arg: DBXTeamLogDropboxPasswordsPolicyChangedType) { - self.dropboxPasswordsPolicyChanged = arg + dropboxPasswordsPolicyChanged = arg let swift = TeamLog.EventType.dropboxPasswordsPolicyChanged(arg.swift) super.init(swift: swift) } @@ -29137,7 +37527,7 @@ public class DBXTeamLogEventTypeEmailIngestPolicyChanged: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogEmailIngestPolicyChangedType) { - self.emailIngestPolicyChanged = arg + emailIngestPolicyChanged = arg let swift = TeamLog.EventType.emailIngestPolicyChanged(arg.swift) super.init(swift: swift) } @@ -29151,7 +37541,7 @@ public class DBXTeamLogEventTypeEmmAddException: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogEmmAddExceptionType) { - self.emmAddException = arg + emmAddException = arg let swift = TeamLog.EventType.emmAddException(arg.swift) super.init(swift: swift) } @@ -29165,7 +37555,7 @@ public class DBXTeamLogEventTypeEmmChangePolicy: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogEmmChangePolicyType) { - self.emmChangePolicy = arg + emmChangePolicy = arg let swift = TeamLog.EventType.emmChangePolicy(arg.swift) super.init(swift: swift) } @@ -29179,7 +37569,7 @@ public class DBXTeamLogEventTypeEmmRemoveException: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogEmmRemoveExceptionType) { - self.emmRemoveException = arg + emmRemoveException = arg let swift = TeamLog.EventType.emmRemoveException(arg.swift) super.init(swift: swift) } @@ -29193,7 +37583,7 @@ public class DBXTeamLogEventTypeExtendedVersionHistoryChangePolicy: DBXTeamLogEv @objc public init(_ arg: DBXTeamLogExtendedVersionHistoryChangePolicyType) { - self.extendedVersionHistoryChangePolicy = arg + extendedVersionHistoryChangePolicy = arg let swift = TeamLog.EventType.extendedVersionHistoryChangePolicy(arg.swift) super.init(swift: swift) } @@ -29207,7 +37597,7 @@ public class DBXTeamLogEventTypeExternalDriveBackupPolicyChanged: DBXTeamLogEven @objc public init(_ arg: DBXTeamLogExternalDriveBackupPolicyChangedType) { - self.externalDriveBackupPolicyChanged = arg + externalDriveBackupPolicyChanged = arg let swift = TeamLog.EventType.externalDriveBackupPolicyChanged(arg.swift) super.init(swift: swift) } @@ -29221,7 +37611,7 @@ public class DBXTeamLogEventTypeFileCommentsChangePolicy: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogFileCommentsChangePolicyType) { - self.fileCommentsChangePolicy = arg + fileCommentsChangePolicy = arg let swift = TeamLog.EventType.fileCommentsChangePolicy(arg.swift) super.init(swift: swift) } @@ -29235,7 +37625,7 @@ public class DBXTeamLogEventTypeFileLockingPolicyChanged: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogFileLockingPolicyChangedType) { - self.fileLockingPolicyChanged = arg + fileLockingPolicyChanged = arg let swift = TeamLog.EventType.fileLockingPolicyChanged(arg.swift) super.init(swift: swift) } @@ -29249,7 +37639,7 @@ public class DBXTeamLogEventTypeFileProviderMigrationPolicyChanged: DBXTeamLogEv @objc public init(_ arg: DBXTeamLogFileProviderMigrationPolicyChangedType) { - self.fileProviderMigrationPolicyChanged = arg + fileProviderMigrationPolicyChanged = arg let swift = TeamLog.EventType.fileProviderMigrationPolicyChanged(arg.swift) super.init(swift: swift) } @@ -29263,7 +37653,7 @@ public class DBXTeamLogEventTypeFileRequestsChangePolicy: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogFileRequestsChangePolicyType) { - self.fileRequestsChangePolicy = arg + fileRequestsChangePolicy = arg let swift = TeamLog.EventType.fileRequestsChangePolicy(arg.swift) super.init(swift: swift) } @@ -29277,7 +37667,7 @@ public class DBXTeamLogEventTypeFileRequestsEmailsEnabled: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogFileRequestsEmailsEnabledType) { - self.fileRequestsEmailsEnabled = arg + fileRequestsEmailsEnabled = arg let swift = TeamLog.EventType.fileRequestsEmailsEnabled(arg.swift) super.init(swift: swift) } @@ -29291,7 +37681,7 @@ public class DBXTeamLogEventTypeFileRequestsEmailsRestrictedToTeamOnly: DBXTeamL @objc public init(_ arg: DBXTeamLogFileRequestsEmailsRestrictedToTeamOnlyType) { - self.fileRequestsEmailsRestrictedToTeamOnly = arg + fileRequestsEmailsRestrictedToTeamOnly = arg let swift = TeamLog.EventType.fileRequestsEmailsRestrictedToTeamOnly(arg.swift) super.init(swift: swift) } @@ -29305,12 +37695,26 @@ public class DBXTeamLogEventTypeFileTransfersPolicyChanged: DBXTeamLogEventType @objc public init(_ arg: DBXTeamLogFileTransfersPolicyChangedType) { - self.fileTransfersPolicyChanged = arg + fileTransfersPolicyChanged = arg let swift = TeamLog.EventType.fileTransfersPolicyChanged(arg.swift) super.init(swift: swift) } } +/// (team_policies) Changed flexible file names policy for team +@objc +public class DBXTeamLogEventTypeFlexibleFileNamesPolicyChanged: DBXTeamLogEventType { + @objc + public var flexibleFileNamesPolicyChanged: DBXTeamLogFlexibleFileNamesPolicyChangedType + + @objc + public init(_ arg: DBXTeamLogFlexibleFileNamesPolicyChangedType) { + flexibleFileNamesPolicyChanged = arg + let swift = TeamLog.EventType.flexibleFileNamesPolicyChanged(arg.swift) + super.init(swift: swift) + } +} + /// (team_policies) Changed folder link restrictions policy for team @objc public class DBXTeamLogEventTypeFolderLinkRestrictionPolicyChanged: DBXTeamLogEventType { @@ -29319,7 +37723,7 @@ public class DBXTeamLogEventTypeFolderLinkRestrictionPolicyChanged: DBXTeamLogEv @objc public init(_ arg: DBXTeamLogFolderLinkRestrictionPolicyChangedType) { - self.folderLinkRestrictionPolicyChanged = arg + folderLinkRestrictionPolicyChanged = arg let swift = TeamLog.EventType.folderLinkRestrictionPolicyChanged(arg.swift) super.init(swift: swift) } @@ -29333,7 +37737,7 @@ public class DBXTeamLogEventTypeGoogleSsoChangePolicy: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogGoogleSsoChangePolicyType) { - self.googleSsoChangePolicy = arg + googleSsoChangePolicy = arg let swift = TeamLog.EventType.googleSsoChangePolicy(arg.swift) super.init(swift: swift) } @@ -29347,7 +37751,7 @@ public class DBXTeamLogEventTypeGroupUserManagementChangePolicy: DBXTeamLogEvent @objc public init(_ arg: DBXTeamLogGroupUserManagementChangePolicyType) { - self.groupUserManagementChangePolicy = arg + groupUserManagementChangePolicy = arg let swift = TeamLog.EventType.groupUserManagementChangePolicy(arg.swift) super.init(swift: swift) } @@ -29361,7 +37765,7 @@ public class DBXTeamLogEventTypeIntegrationPolicyChanged: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogIntegrationPolicyChangedType) { - self.integrationPolicyChanged = arg + integrationPolicyChanged = arg let swift = TeamLog.EventType.integrationPolicyChanged(arg.swift) super.init(swift: swift) } @@ -29375,12 +37779,54 @@ public class DBXTeamLogEventTypeInviteAcceptanceEmailPolicyChanged: DBXTeamLogEv @objc public init(_ arg: DBXTeamLogInviteAcceptanceEmailPolicyChangedType) { - self.inviteAcceptanceEmailPolicyChanged = arg + inviteAcceptanceEmailPolicyChanged = arg let swift = TeamLog.EventType.inviteAcceptanceEmailPolicyChanged(arg.swift) super.init(swift: swift) } } +/// (team_policies) Changed the policy for adding people to Replay content +@objc +public class DBXTeamLogEventTypeMediaHubAddingPeoplePolicyChanged: DBXTeamLogEventType { + @objc + public var mediaHubAddingPeoplePolicyChanged: DBXTeamLogMediaHubAddingPeoplePolicyChangedType + + @objc + public init(_ arg: DBXTeamLogMediaHubAddingPeoplePolicyChangedType) { + mediaHubAddingPeoplePolicyChanged = arg + let swift = TeamLog.EventType.mediaHubAddingPeoplePolicyChanged(arg.swift) + super.init(swift: swift) + } +} + +/// (team_policies) Changed the policy for downloading Replay content +@objc +public class DBXTeamLogEventTypeMediaHubDownloadPolicyChanged: DBXTeamLogEventType { + @objc + public var mediaHubDownloadPolicyChanged: DBXTeamLogMediaHubDownloadPolicyChangedType + + @objc + public init(_ arg: DBXTeamLogMediaHubDownloadPolicyChangedType) { + mediaHubDownloadPolicyChanged = arg + let swift = TeamLog.EventType.mediaHubDownloadPolicyChanged(arg.swift) + super.init(swift: swift) + } +} + +/// (team_policies) Changed the policy for sharing Replay content +@objc +public class DBXTeamLogEventTypeMediaHubLinkSharingPolicyChanged: DBXTeamLogEventType { + @objc + public var mediaHubLinkSharingPolicyChanged: DBXTeamLogMediaHubLinkSharingPolicyChangedType + + @objc + public init(_ arg: DBXTeamLogMediaHubLinkSharingPolicyChangedType) { + mediaHubLinkSharingPolicyChanged = arg + let swift = TeamLog.EventType.mediaHubLinkSharingPolicyChanged(arg.swift) + super.init(swift: swift) + } +} + /// (team_policies) Changed whether users can find team when not invited @objc public class DBXTeamLogEventTypeMemberRequestsChangePolicy: DBXTeamLogEventType { @@ -29389,7 +37835,7 @@ public class DBXTeamLogEventTypeMemberRequestsChangePolicy: DBXTeamLogEventType @objc public init(_ arg: DBXTeamLogMemberRequestsChangePolicyType) { - self.memberRequestsChangePolicy = arg + memberRequestsChangePolicy = arg let swift = TeamLog.EventType.memberRequestsChangePolicy(arg.swift) super.init(swift: swift) } @@ -29403,7 +37849,7 @@ public class DBXTeamLogEventTypeMemberSendInvitePolicyChanged: DBXTeamLogEventTy @objc public init(_ arg: DBXTeamLogMemberSendInvitePolicyChangedType) { - self.memberSendInvitePolicyChanged = arg + memberSendInvitePolicyChanged = arg let swift = TeamLog.EventType.memberSendInvitePolicyChanged(arg.swift) super.init(swift: swift) } @@ -29417,7 +37863,7 @@ public class DBXTeamLogEventTypeMemberSpaceLimitsAddException: DBXTeamLogEventTy @objc public init(_ arg: DBXTeamLogMemberSpaceLimitsAddExceptionType) { - self.memberSpaceLimitsAddException = arg + memberSpaceLimitsAddException = arg let swift = TeamLog.EventType.memberSpaceLimitsAddException(arg.swift) super.init(swift: swift) } @@ -29431,7 +37877,7 @@ public class DBXTeamLogEventTypeMemberSpaceLimitsChangeCapsTypePolicy: DBXTeamLo @objc public init(_ arg: DBXTeamLogMemberSpaceLimitsChangeCapsTypePolicyType) { - self.memberSpaceLimitsChangeCapsTypePolicy = arg + memberSpaceLimitsChangeCapsTypePolicy = arg let swift = TeamLog.EventType.memberSpaceLimitsChangeCapsTypePolicy(arg.swift) super.init(swift: swift) } @@ -29445,7 +37891,7 @@ public class DBXTeamLogEventTypeMemberSpaceLimitsChangePolicy: DBXTeamLogEventTy @objc public init(_ arg: DBXTeamLogMemberSpaceLimitsChangePolicyType) { - self.memberSpaceLimitsChangePolicy = arg + memberSpaceLimitsChangePolicy = arg let swift = TeamLog.EventType.memberSpaceLimitsChangePolicy(arg.swift) super.init(swift: swift) } @@ -29459,7 +37905,7 @@ public class DBXTeamLogEventTypeMemberSpaceLimitsRemoveException: DBXTeamLogEven @objc public init(_ arg: DBXTeamLogMemberSpaceLimitsRemoveExceptionType) { - self.memberSpaceLimitsRemoveException = arg + memberSpaceLimitsRemoveException = arg let swift = TeamLog.EventType.memberSpaceLimitsRemoveException(arg.swift) super.init(swift: swift) } @@ -29473,12 +37919,26 @@ public class DBXTeamLogEventTypeMemberSuggestionsChangePolicy: DBXTeamLogEventTy @objc public init(_ arg: DBXTeamLogMemberSuggestionsChangePolicyType) { - self.memberSuggestionsChangePolicy = arg + memberSuggestionsChangePolicy = arg let swift = TeamLog.EventType.memberSuggestionsChangePolicy(arg.swift) super.init(swift: swift) } } +/// (team_policies) Enabled/disabled Microsoft login for team +@objc +public class DBXTeamLogEventTypeMicrosoftLoginChangePolicy: DBXTeamLogEventType { + @objc + public var microsoftLoginChangePolicy: DBXTeamLogMicrosoftLoginChangePolicyType + + @objc + public init(_ arg: DBXTeamLogMicrosoftLoginChangePolicyType) { + microsoftLoginChangePolicy = arg + let swift = TeamLog.EventType.microsoftLoginChangePolicy(arg.swift) + super.init(swift: swift) + } +} + /// (team_policies) Enabled/disabled Microsoft Office add-in @objc public class DBXTeamLogEventTypeMicrosoftOfficeAddinChangePolicy: DBXTeamLogEventType { @@ -29487,12 +37947,26 @@ public class DBXTeamLogEventTypeMicrosoftOfficeAddinChangePolicy: DBXTeamLogEven @objc public init(_ arg: DBXTeamLogMicrosoftOfficeAddinChangePolicyType) { - self.microsoftOfficeAddinChangePolicy = arg + microsoftOfficeAddinChangePolicy = arg let swift = TeamLog.EventType.microsoftOfficeAddinChangePolicy(arg.swift) super.init(swift: swift) } } +/// (team_policies) Changed multi-team identity policy for team +@objc +public class DBXTeamLogEventTypeMultiTeamIdentityPolicyChanged: DBXTeamLogEventType { + @objc + public var multiTeamIdentityPolicyChanged: DBXTeamLogMultiTeamIdentityPolicyChangedType + + @objc + public init(_ arg: DBXTeamLogMultiTeamIdentityPolicyChangedType) { + multiTeamIdentityPolicyChanged = arg + let swift = TeamLog.EventType.multiTeamIdentityPolicyChanged(arg.swift) + super.init(swift: swift) + } +} + /// (team_policies) Enabled/disabled network control @objc public class DBXTeamLogEventTypeNetworkControlChangePolicy: DBXTeamLogEventType { @@ -29501,14 +37975,14 @@ public class DBXTeamLogEventTypeNetworkControlChangePolicy: DBXTeamLogEventType @objc public init(_ arg: DBXTeamLogNetworkControlChangePolicyType) { - self.networkControlChangePolicy = arg + networkControlChangePolicy = arg let swift = TeamLog.EventType.networkControlChangePolicy(arg.swift) super.init(swift: swift) } } /// (team_policies) Changed whether Dropbox Paper, when enabled, is deployed to all members or to specific -/// members + /// members @objc public class DBXTeamLogEventTypePaperChangeDeploymentPolicy: DBXTeamLogEventType { @objc @@ -29516,7 +37990,7 @@ public class DBXTeamLogEventTypePaperChangeDeploymentPolicy: DBXTeamLogEventType @objc public init(_ arg: DBXTeamLogPaperChangeDeploymentPolicyType) { - self.paperChangeDeploymentPolicy = arg + paperChangeDeploymentPolicy = arg let swift = TeamLog.EventType.paperChangeDeploymentPolicy(arg.swift) super.init(swift: swift) } @@ -29530,14 +38004,14 @@ public class DBXTeamLogEventTypePaperChangeMemberLinkPolicy: DBXTeamLogEventType @objc public init(_ arg: DBXTeamLogPaperChangeMemberLinkPolicyType) { - self.paperChangeMemberLinkPolicy = arg + paperChangeMemberLinkPolicy = arg let swift = TeamLog.EventType.paperChangeMemberLinkPolicy(arg.swift) super.init(swift: swift) } } /// (team_policies) Changed whether members can share Paper docs outside team, and if docs are accessible only -/// by team members or anyone by default + /// by team members or anyone by default @objc public class DBXTeamLogEventTypePaperChangeMemberPolicy: DBXTeamLogEventType { @objc @@ -29545,7 +38019,7 @@ public class DBXTeamLogEventTypePaperChangeMemberPolicy: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogPaperChangeMemberPolicyType) { - self.paperChangeMemberPolicy = arg + paperChangeMemberPolicy = arg let swift = TeamLog.EventType.paperChangeMemberPolicy(arg.swift) super.init(swift: swift) } @@ -29559,7 +38033,7 @@ public class DBXTeamLogEventTypePaperChangePolicy: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogPaperChangePolicyType) { - self.paperChangePolicy = arg + paperChangePolicy = arg let swift = TeamLog.EventType.paperChangePolicy(arg.swift) super.init(swift: swift) } @@ -29573,7 +38047,7 @@ public class DBXTeamLogEventTypePaperDefaultFolderPolicyChanged: DBXTeamLogEvent @objc public init(_ arg: DBXTeamLogPaperDefaultFolderPolicyChangedType) { - self.paperDefaultFolderPolicyChanged = arg + paperDefaultFolderPolicyChanged = arg let swift = TeamLog.EventType.paperDefaultFolderPolicyChanged(arg.swift) super.init(swift: swift) } @@ -29587,7 +38061,7 @@ public class DBXTeamLogEventTypePaperDesktopPolicyChanged: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogPaperDesktopPolicyChangedType) { - self.paperDesktopPolicyChanged = arg + paperDesktopPolicyChanged = arg let swift = TeamLog.EventType.paperDesktopPolicyChanged(arg.swift) super.init(swift: swift) } @@ -29601,7 +38075,7 @@ public class DBXTeamLogEventTypePaperEnabledUsersGroupAddition: DBXTeamLogEventT @objc public init(_ arg: DBXTeamLogPaperEnabledUsersGroupAdditionType) { - self.paperEnabledUsersGroupAddition = arg + paperEnabledUsersGroupAddition = arg let swift = TeamLog.EventType.paperEnabledUsersGroupAddition(arg.swift) super.init(swift: swift) } @@ -29615,12 +38089,26 @@ public class DBXTeamLogEventTypePaperEnabledUsersGroupRemoval: DBXTeamLogEventTy @objc public init(_ arg: DBXTeamLogPaperEnabledUsersGroupRemovalType) { - self.paperEnabledUsersGroupRemoval = arg + paperEnabledUsersGroupRemoval = arg let swift = TeamLog.EventType.paperEnabledUsersGroupRemoval(arg.swift) super.init(swift: swift) } } +/// (team_policies) Changed passkey login policy for team +@objc +public class DBXTeamLogEventTypePasskeyLoginPolicyChanged: DBXTeamLogEventType { + @objc + public var passkeyLoginPolicyChanged: DBXTeamLogPasskeyLoginPolicyChangedType + + @objc + public init(_ arg: DBXTeamLogPasskeyLoginPolicyChangedType) { + passkeyLoginPolicyChanged = arg + let swift = TeamLog.EventType.passkeyLoginPolicyChanged(arg.swift) + super.init(swift: swift) + } +} + /// (team_policies) Changed team password strength requirements @objc public class DBXTeamLogEventTypePasswordStrengthRequirementsChangePolicy: DBXTeamLogEventType { @@ -29629,7 +38117,7 @@ public class DBXTeamLogEventTypePasswordStrengthRequirementsChangePolicy: DBXTea @objc public init(_ arg: DBXTeamLogPasswordStrengthRequirementsChangePolicyType) { - self.passwordStrengthRequirementsChangePolicy = arg + passwordStrengthRequirementsChangePolicy = arg let swift = TeamLog.EventType.passwordStrengthRequirementsChangePolicy(arg.swift) super.init(swift: swift) } @@ -29643,12 +38131,54 @@ public class DBXTeamLogEventTypePermanentDeleteChangePolicy: DBXTeamLogEventType @objc public init(_ arg: DBXTeamLogPermanentDeleteChangePolicyType) { - self.permanentDeleteChangePolicy = arg + permanentDeleteChangePolicy = arg let swift = TeamLog.EventType.permanentDeleteChangePolicy(arg.swift) super.init(swift: swift) } } +/// (team_policies) Changed Dropbox AI policy for team +@objc +public class DBXTeamLogEventTypePreviewsAiPolicyChanged: DBXTeamLogEventType { + @objc + public var previewsAiPolicyChanged: DBXTeamLogPreviewsAiPolicyChangedType + + @objc + public init(_ arg: DBXTeamLogPreviewsAiPolicyChangedType) { + previewsAiPolicyChanged = arg + let swift = TeamLog.EventType.previewsAiPolicyChanged(arg.swift) + super.init(swift: swift) + } +} + +/// (team_policies) Changed the policy for adding people to Replay content +@objc +public class DBXTeamLogEventTypeReplayAddingPeoplePolicyChanged: DBXTeamLogEventType { + @objc + public var replayAddingPeoplePolicyChanged: DBXTeamLogReplayAddingPeoplePolicyChangedType + + @objc + public init(_ arg: DBXTeamLogReplayAddingPeoplePolicyChangedType) { + replayAddingPeoplePolicyChanged = arg + let swift = TeamLog.EventType.replayAddingPeoplePolicyChanged(arg.swift) + super.init(swift: swift) + } +} + +/// (team_policies) Changed the policy for sharing Replay content +@objc +public class DBXTeamLogEventTypeReplaySharingPolicyChanged: DBXTeamLogEventType { + @objc + public var replaySharingPolicyChanged: DBXTeamLogReplaySharingPolicyChangedType + + @objc + public init(_ arg: DBXTeamLogReplaySharingPolicyChangedType) { + replaySharingPolicyChanged = arg + let swift = TeamLog.EventType.replaySharingPolicyChanged(arg.swift) + super.init(swift: swift) + } +} + /// (team_policies) Enabled/disabled reseller support @objc public class DBXTeamLogEventTypeResellerSupportChangePolicy: DBXTeamLogEventType { @@ -29657,7 +38187,7 @@ public class DBXTeamLogEventTypeResellerSupportChangePolicy: DBXTeamLogEventType @objc public init(_ arg: DBXTeamLogResellerSupportChangePolicyType) { - self.resellerSupportChangePolicy = arg + resellerSupportChangePolicy = arg let swift = TeamLog.EventType.resellerSupportChangePolicy(arg.swift) super.init(swift: swift) } @@ -29671,12 +38201,40 @@ public class DBXTeamLogEventTypeRewindPolicyChanged: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogRewindPolicyChangedType) { - self.rewindPolicyChanged = arg + rewindPolicyChanged = arg let swift = TeamLog.EventType.rewindPolicyChanged(arg.swift) super.init(swift: swift) } } +/// (team_policies) Changed “Send and track” policy for team +@objc +public class DBXTeamLogEventTypeSendAndTrackPolicyChanged: DBXTeamLogEventType { + @objc + public var sendAndTrackPolicyChanged: DBXTeamLogSendAndTrackPolicyChangedType + + @objc + public init(_ arg: DBXTeamLogSendAndTrackPolicyChangedType) { + sendAndTrackPolicyChanged = arg + let swift = TeamLog.EventType.sendAndTrackPolicyChanged(arg.swift) + super.init(swift: swift) + } +} + +/// (team_policies) Changed “Send and track” external sharing policy for team +@objc +public class DBXTeamLogEventTypeSendExternalSharingPolicyChanged: DBXTeamLogEventType { + @objc + public var sendExternalSharingPolicyChanged: DBXTeamLogSendExternalSharingPolicyChangedType + + @objc + public init(_ arg: DBXTeamLogSendExternalSharingPolicyChangedType) { + sendExternalSharingPolicyChanged = arg + let swift = TeamLog.EventType.sendExternalSharingPolicyChanged(arg.swift) + super.init(swift: swift) + } +} + /// (team_policies) Changed send for signature policy for team @objc public class DBXTeamLogEventTypeSendForSignaturePolicyChanged: DBXTeamLogEventType { @@ -29685,12 +38243,26 @@ public class DBXTeamLogEventTypeSendForSignaturePolicyChanged: DBXTeamLogEventTy @objc public init(_ arg: DBXTeamLogSendForSignaturePolicyChangedType) { - self.sendForSignaturePolicyChanged = arg + sendForSignaturePolicyChanged = arg let swift = TeamLog.EventType.sendForSignaturePolicyChanged(arg.swift) super.init(swift: swift) } } +/// (team_policies) Changed shared link default permissions policy for team +@objc +public class DBXTeamLogEventTypeSharedLinkDefaultPermissionsPolicyChanged: DBXTeamLogEventType { + @objc + public var sharedLinkDefaultPermissionsPolicyChanged: DBXTeamLogSharedLinkDefaultPermissionsPolicyChangedType + + @objc + public init(_ arg: DBXTeamLogSharedLinkDefaultPermissionsPolicyChangedType) { + sharedLinkDefaultPermissionsPolicyChanged = arg + let swift = TeamLog.EventType.sharedLinkDefaultPermissionsPolicyChanged(arg.swift) + super.init(swift: swift) + } +} + /// (team_policies) Changed whether team members can join shared folders owned outside team @objc public class DBXTeamLogEventTypeSharingChangeFolderJoinPolicy: DBXTeamLogEventType { @@ -29699,14 +38271,14 @@ public class DBXTeamLogEventTypeSharingChangeFolderJoinPolicy: DBXTeamLogEventTy @objc public init(_ arg: DBXTeamLogSharingChangeFolderJoinPolicyType) { - self.sharingChangeFolderJoinPolicy = arg + sharingChangeFolderJoinPolicy = arg let swift = TeamLog.EventType.sharingChangeFolderJoinPolicy(arg.swift) super.init(swift: swift) } } /// (team_policies) Changed the allow remove or change expiration policy for the links shared outside of the -/// team + /// team @objc public class DBXTeamLogEventTypeSharingChangeLinkAllowChangeExpirationPolicy: DBXTeamLogEventType { @objc @@ -29714,7 +38286,7 @@ public class DBXTeamLogEventTypeSharingChangeLinkAllowChangeExpirationPolicy: DB @objc public init(_ arg: DBXTeamLogSharingChangeLinkAllowChangeExpirationPolicyType) { - self.sharingChangeLinkAllowChangeExpirationPolicy = arg + sharingChangeLinkAllowChangeExpirationPolicy = arg let swift = TeamLog.EventType.sharingChangeLinkAllowChangeExpirationPolicy(arg.swift) super.init(swift: swift) } @@ -29728,7 +38300,7 @@ public class DBXTeamLogEventTypeSharingChangeLinkDefaultExpirationPolicy: DBXTea @objc public init(_ arg: DBXTeamLogSharingChangeLinkDefaultExpirationPolicyType) { - self.sharingChangeLinkDefaultExpirationPolicy = arg + sharingChangeLinkDefaultExpirationPolicy = arg let swift = TeamLog.EventType.sharingChangeLinkDefaultExpirationPolicy(arg.swift) super.init(swift: swift) } @@ -29742,14 +38314,14 @@ public class DBXTeamLogEventTypeSharingChangeLinkEnforcePasswordPolicy: DBXTeamL @objc public init(_ arg: DBXTeamLogSharingChangeLinkEnforcePasswordPolicyType) { - self.sharingChangeLinkEnforcePasswordPolicy = arg + sharingChangeLinkEnforcePasswordPolicy = arg let swift = TeamLog.EventType.sharingChangeLinkEnforcePasswordPolicy(arg.swift) super.init(swift: swift) } } /// (team_policies) Changed whether members can share links outside team, and if links are accessible only by -/// team members or anyone by default + /// team members or anyone by default @objc public class DBXTeamLogEventTypeSharingChangeLinkPolicy: DBXTeamLogEventType { @objc @@ -29757,7 +38329,7 @@ public class DBXTeamLogEventTypeSharingChangeLinkPolicy: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogSharingChangeLinkPolicyType) { - self.sharingChangeLinkPolicy = arg + sharingChangeLinkPolicy = arg let swift = TeamLog.EventType.sharingChangeLinkPolicy(arg.swift) super.init(swift: swift) } @@ -29771,7 +38343,7 @@ public class DBXTeamLogEventTypeSharingChangeMemberPolicy: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogSharingChangeMemberPolicyType) { - self.sharingChangeMemberPolicy = arg + sharingChangeMemberPolicy = arg let swift = TeamLog.EventType.sharingChangeMemberPolicy(arg.swift) super.init(swift: swift) } @@ -29785,7 +38357,7 @@ public class DBXTeamLogEventTypeShowcaseChangeDownloadPolicy: DBXTeamLogEventTyp @objc public init(_ arg: DBXTeamLogShowcaseChangeDownloadPolicyType) { - self.showcaseChangeDownloadPolicy = arg + showcaseChangeDownloadPolicy = arg let swift = TeamLog.EventType.showcaseChangeDownloadPolicy(arg.swift) super.init(swift: swift) } @@ -29799,7 +38371,7 @@ public class DBXTeamLogEventTypeShowcaseChangeEnabledPolicy: DBXTeamLogEventType @objc public init(_ arg: DBXTeamLogShowcaseChangeEnabledPolicyType) { - self.showcaseChangeEnabledPolicy = arg + showcaseChangeEnabledPolicy = arg let swift = TeamLog.EventType.showcaseChangeEnabledPolicy(arg.swift) super.init(swift: swift) } @@ -29813,12 +38385,40 @@ public class DBXTeamLogEventTypeShowcaseChangeExternalSharingPolicy: DBXTeamLogE @objc public init(_ arg: DBXTeamLogShowcaseChangeExternalSharingPolicyType) { - self.showcaseChangeExternalSharingPolicy = arg + showcaseChangeExternalSharingPolicy = arg let swift = TeamLog.EventType.showcaseChangeExternalSharingPolicy(arg.swift) super.init(swift: swift) } } +/// (team_policies) Changed Signatures external sharing policy for team +@objc +public class DBXTeamLogEventTypeSignExternalSharingPolicyChanged: DBXTeamLogEventType { + @objc + public var signExternalSharingPolicyChanged: DBXTeamLogSignExternalSharingPolicyChangedType + + @objc + public init(_ arg: DBXTeamLogSignExternalSharingPolicyChangedType) { + signExternalSharingPolicyChanged = arg + let swift = TeamLog.EventType.signExternalSharingPolicyChanged(arg.swift) + super.init(swift: swift) + } +} + +/// (team_policies) Changed template creation permission +@objc +public class DBXTeamLogEventTypeSignTemplateCreationPermissionChanged: DBXTeamLogEventType { + @objc + public var signTemplateCreationPermissionChanged: DBXTeamLogSignTemplateCreationPermissionChangedType + + @objc + public init(_ arg: DBXTeamLogSignTemplateCreationPermissionChangedType) { + signTemplateCreationPermissionChanged = arg + let swift = TeamLog.EventType.signTemplateCreationPermissionChanged(arg.swift) + super.init(swift: swift) + } +} + /// (team_policies) Changed automatic Smart Sync setting for team @objc public class DBXTeamLogEventTypeSmarterSmartSyncPolicyChanged: DBXTeamLogEventType { @@ -29827,7 +38427,7 @@ public class DBXTeamLogEventTypeSmarterSmartSyncPolicyChanged: DBXTeamLogEventTy @objc public init(_ arg: DBXTeamLogSmarterSmartSyncPolicyChangedType) { - self.smarterSmartSyncPolicyChanged = arg + smarterSmartSyncPolicyChanged = arg let swift = TeamLog.EventType.smarterSmartSyncPolicyChanged(arg.swift) super.init(swift: swift) } @@ -29841,7 +38441,7 @@ public class DBXTeamLogEventTypeSmartSyncChangePolicy: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogSmartSyncChangePolicyType) { - self.smartSyncChangePolicy = arg + smartSyncChangePolicy = arg let swift = TeamLog.EventType.smartSyncChangePolicy(arg.swift) super.init(swift: swift) } @@ -29855,7 +38455,7 @@ public class DBXTeamLogEventTypeSmartSyncNotOptOut: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogSmartSyncNotOptOutType) { - self.smartSyncNotOptOut = arg + smartSyncNotOptOut = arg let swift = TeamLog.EventType.smartSyncNotOptOut(arg.swift) super.init(swift: swift) } @@ -29869,7 +38469,7 @@ public class DBXTeamLogEventTypeSmartSyncOptOut: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogSmartSyncOptOutType) { - self.smartSyncOptOut = arg + smartSyncOptOut = arg let swift = TeamLog.EventType.smartSyncOptOut(arg.swift) super.init(swift: swift) } @@ -29883,12 +38483,26 @@ public class DBXTeamLogEventTypeSsoChangePolicy: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogSsoChangePolicyType) { - self.ssoChangePolicy = arg + ssoChangePolicy = arg let swift = TeamLog.EventType.ssoChangePolicy(arg.swift) super.init(swift: swift) } } +/// (team_policies) Changed cross-team Stack access policy for team +@objc +public class DBXTeamLogEventTypeStackCrossTeamAccessPolicyChanged: DBXTeamLogEventType { + @objc + public var stackCrossTeamAccessPolicyChanged: DBXTeamLogStackCrossTeamAccessPolicyChangedType + + @objc + public init(_ arg: DBXTeamLogStackCrossTeamAccessPolicyChangedType) { + stackCrossTeamAccessPolicyChanged = arg + let swift = TeamLog.EventType.stackCrossTeamAccessPolicyChanged(arg.swift) + super.init(swift: swift) + } +} + /// (team_policies) Changed team branding policy for team @objc public class DBXTeamLogEventTypeTeamBrandingPolicyChanged: DBXTeamLogEventType { @@ -29897,7 +38511,7 @@ public class DBXTeamLogEventTypeTeamBrandingPolicyChanged: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogTeamBrandingPolicyChangedType) { - self.teamBrandingPolicyChanged = arg + teamBrandingPolicyChanged = arg let swift = TeamLog.EventType.teamBrandingPolicyChanged(arg.swift) super.init(swift: swift) } @@ -29911,12 +38525,26 @@ public class DBXTeamLogEventTypeTeamExtensionsPolicyChanged: DBXTeamLogEventType @objc public init(_ arg: DBXTeamLogTeamExtensionsPolicyChangedType) { - self.teamExtensionsPolicyChanged = arg + teamExtensionsPolicyChanged = arg let swift = TeamLog.EventType.teamExtensionsPolicyChanged(arg.swift) super.init(swift: swift) } } +/// (team_policies) Changed team member storage request policy for team +@objc +public class DBXTeamLogEventTypeTeamMemberStorageRequestPolicyChanged: DBXTeamLogEventType { + @objc + public var teamMemberStorageRequestPolicyChanged: DBXTeamLogTeamMemberStorageRequestPolicyChangedType + + @objc + public init(_ arg: DBXTeamLogTeamMemberStorageRequestPolicyChangedType) { + teamMemberStorageRequestPolicyChanged = arg + let swift = TeamLog.EventType.teamMemberStorageRequestPolicyChanged(arg.swift) + super.init(swift: swift) + } +} + /// (team_policies) Enabled/disabled Team Selective Sync for team @objc public class DBXTeamLogEventTypeTeamSelectiveSyncPolicyChanged: DBXTeamLogEventType { @@ -29925,7 +38553,7 @@ public class DBXTeamLogEventTypeTeamSelectiveSyncPolicyChanged: DBXTeamLogEventT @objc public init(_ arg: DBXTeamLogTeamSelectiveSyncPolicyChangedType) { - self.teamSelectiveSyncPolicyChanged = arg + teamSelectiveSyncPolicyChanged = arg let swift = TeamLog.EventType.teamSelectiveSyncPolicyChanged(arg.swift) super.init(swift: swift) } @@ -29939,7 +38567,7 @@ public class DBXTeamLogEventTypeTeamSharingWhitelistSubjectsChanged: DBXTeamLogE @objc public init(_ arg: DBXTeamLogTeamSharingWhitelistSubjectsChangedType) { - self.teamSharingWhitelistSubjectsChanged = arg + teamSharingWhitelistSubjectsChanged = arg let swift = TeamLog.EventType.teamSharingWhitelistSubjectsChanged(arg.swift) super.init(swift: swift) } @@ -29953,13 +38581,13 @@ public class DBXTeamLogEventTypeTfaAddException: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogTfaAddExceptionType) { - self.tfaAddException = arg + tfaAddException = arg let swift = TeamLog.EventType.tfaAddException(arg.swift) super.init(swift: swift) } } -/// (team_policies) Changed two-step verification setting for team +/// (team_policies) Changed two-factor authentication setting for team @objc public class DBXTeamLogEventTypeTfaChangePolicy: DBXTeamLogEventType { @objc @@ -29967,7 +38595,7 @@ public class DBXTeamLogEventTypeTfaChangePolicy: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogTfaChangePolicyType) { - self.tfaChangePolicy = arg + tfaChangePolicy = arg let swift = TeamLog.EventType.tfaChangePolicy(arg.swift) super.init(swift: swift) } @@ -29981,14 +38609,28 @@ public class DBXTeamLogEventTypeTfaRemoveException: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogTfaRemoveExceptionType) { - self.tfaRemoveException = arg + tfaRemoveException = arg let swift = TeamLog.EventType.tfaRemoveException(arg.swift) super.init(swift: swift) } } +/// (team_policies) Changed top level content setting for team +@objc +public class DBXTeamLogEventTypeTopLevelContentPolicyChanged: DBXTeamLogEventType { + @objc + public var topLevelContentPolicyChanged: DBXTeamLogTopLevelContentPolicyChangedType + + @objc + public init(_ arg: DBXTeamLogTopLevelContentPolicyChangedType) { + topLevelContentPolicyChanged = arg + let swift = TeamLog.EventType.topLevelContentPolicyChanged(arg.swift) + super.init(swift: swift) + } +} + /// (team_policies) Enabled/disabled option for members to link personal Dropbox account and team account to -/// same computer + /// same computer @objc public class DBXTeamLogEventTypeTwoAccountChangePolicy: DBXTeamLogEventType { @objc @@ -29996,7 +38638,7 @@ public class DBXTeamLogEventTypeTwoAccountChangePolicy: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogTwoAccountChangePolicyType) { - self.twoAccountChangePolicy = arg + twoAccountChangePolicy = arg let swift = TeamLog.EventType.twoAccountChangePolicy(arg.swift) super.init(swift: swift) } @@ -30010,7 +38652,7 @@ public class DBXTeamLogEventTypeViewerInfoPolicyChanged: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogViewerInfoPolicyChangedType) { - self.viewerInfoPolicyChanged = arg + viewerInfoPolicyChanged = arg let swift = TeamLog.EventType.viewerInfoPolicyChanged(arg.swift) super.init(swift: swift) } @@ -30024,7 +38666,7 @@ public class DBXTeamLogEventTypeWatermarkingPolicyChanged: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogWatermarkingPolicyChangedType) { - self.watermarkingPolicyChanged = arg + watermarkingPolicyChanged = arg let swift = TeamLog.EventType.watermarkingPolicyChanged(arg.swift) super.init(swift: swift) } @@ -30038,7 +38680,7 @@ public class DBXTeamLogEventTypeWebSessionsChangeActiveSessionLimit: DBXTeamLogE @objc public init(_ arg: DBXTeamLogWebSessionsChangeActiveSessionLimitType) { - self.webSessionsChangeActiveSessionLimit = arg + webSessionsChangeActiveSessionLimit = arg let swift = TeamLog.EventType.webSessionsChangeActiveSessionLimit(arg.swift) super.init(swift: swift) } @@ -30052,7 +38694,7 @@ public class DBXTeamLogEventTypeWebSessionsChangeFixedLengthPolicy: DBXTeamLogEv @objc public init(_ arg: DBXTeamLogWebSessionsChangeFixedLengthPolicyType) { - self.webSessionsChangeFixedLengthPolicy = arg + webSessionsChangeFixedLengthPolicy = arg let swift = TeamLog.EventType.webSessionsChangeFixedLengthPolicy(arg.swift) super.init(swift: swift) } @@ -30066,7 +38708,7 @@ public class DBXTeamLogEventTypeWebSessionsChangeIdleLengthPolicy: DBXTeamLogEve @objc public init(_ arg: DBXTeamLogWebSessionsChangeIdleLengthPolicyType) { - self.webSessionsChangeIdleLengthPolicy = arg + webSessionsChangeIdleLengthPolicy = arg let swift = TeamLog.EventType.webSessionsChangeIdleLengthPolicy(arg.swift) super.init(swift: swift) } @@ -30080,7 +38722,7 @@ public class DBXTeamLogEventTypeDataResidencyMigrationRequestSuccessful: DBXTeam @objc public init(_ arg: DBXTeamLogDataResidencyMigrationRequestSuccessfulType) { - self.dataResidencyMigrationRequestSuccessful = arg + dataResidencyMigrationRequestSuccessful = arg let swift = TeamLog.EventType.dataResidencyMigrationRequestSuccessful(arg.swift) super.init(swift: swift) } @@ -30094,7 +38736,7 @@ public class DBXTeamLogEventTypeDataResidencyMigrationRequestUnsuccessful: DBXTe @objc public init(_ arg: DBXTeamLogDataResidencyMigrationRequestUnsuccessfulType) { - self.dataResidencyMigrationRequestUnsuccessful = arg + dataResidencyMigrationRequestUnsuccessful = arg let swift = TeamLog.EventType.dataResidencyMigrationRequestUnsuccessful(arg.swift) super.init(swift: swift) } @@ -30108,7 +38750,7 @@ public class DBXTeamLogEventTypeTeamMergeFrom: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogTeamMergeFromType) { - self.teamMergeFrom = arg + teamMergeFrom = arg let swift = TeamLog.EventType.teamMergeFrom(arg.swift) super.init(swift: swift) } @@ -30122,7 +38764,7 @@ public class DBXTeamLogEventTypeTeamMergeTo: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogTeamMergeToType) { - self.teamMergeTo = arg + teamMergeTo = arg let swift = TeamLog.EventType.teamMergeTo(arg.swift) super.init(swift: swift) } @@ -30136,7 +38778,7 @@ public class DBXTeamLogEventTypeTeamProfileAddBackground: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogTeamProfileAddBackgroundType) { - self.teamProfileAddBackground = arg + teamProfileAddBackground = arg let swift = TeamLog.EventType.teamProfileAddBackground(arg.swift) super.init(swift: swift) } @@ -30150,7 +38792,7 @@ public class DBXTeamLogEventTypeTeamProfileAddLogo: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogTeamProfileAddLogoType) { - self.teamProfileAddLogo = arg + teamProfileAddLogo = arg let swift = TeamLog.EventType.teamProfileAddLogo(arg.swift) super.init(swift: swift) } @@ -30164,7 +38806,7 @@ public class DBXTeamLogEventTypeTeamProfileChangeBackground: DBXTeamLogEventType @objc public init(_ arg: DBXTeamLogTeamProfileChangeBackgroundType) { - self.teamProfileChangeBackground = arg + teamProfileChangeBackground = arg let swift = TeamLog.EventType.teamProfileChangeBackground(arg.swift) super.init(swift: swift) } @@ -30178,7 +38820,7 @@ public class DBXTeamLogEventTypeTeamProfileChangeDefaultLanguage: DBXTeamLogEven @objc public init(_ arg: DBXTeamLogTeamProfileChangeDefaultLanguageType) { - self.teamProfileChangeDefaultLanguage = arg + teamProfileChangeDefaultLanguage = arg let swift = TeamLog.EventType.teamProfileChangeDefaultLanguage(arg.swift) super.init(swift: swift) } @@ -30192,7 +38834,7 @@ public class DBXTeamLogEventTypeTeamProfileChangeLogo: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogTeamProfileChangeLogoType) { - self.teamProfileChangeLogo = arg + teamProfileChangeLogo = arg let swift = TeamLog.EventType.teamProfileChangeLogo(arg.swift) super.init(swift: swift) } @@ -30206,7 +38848,7 @@ public class DBXTeamLogEventTypeTeamProfileChangeName: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogTeamProfileChangeNameType) { - self.teamProfileChangeName = arg + teamProfileChangeName = arg let swift = TeamLog.EventType.teamProfileChangeName(arg.swift) super.init(swift: swift) } @@ -30220,7 +38862,7 @@ public class DBXTeamLogEventTypeTeamProfileRemoveBackground: DBXTeamLogEventType @objc public init(_ arg: DBXTeamLogTeamProfileRemoveBackgroundType) { - self.teamProfileRemoveBackground = arg + teamProfileRemoveBackground = arg let swift = TeamLog.EventType.teamProfileRemoveBackground(arg.swift) super.init(swift: swift) } @@ -30234,13 +38876,41 @@ public class DBXTeamLogEventTypeTeamProfileRemoveLogo: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogTeamProfileRemoveLogoType) { - self.teamProfileRemoveLogo = arg + teamProfileRemoveLogo = arg let swift = TeamLog.EventType.teamProfileRemoveLogo(arg.swift) super.init(swift: swift) } } -/// (tfa) Added backup phone for two-step verification +/// (tfa) Added passkey for login +@objc +public class DBXTeamLogEventTypePasskeyAdd: DBXTeamLogEventType { + @objc + public var passkeyAdd: DBXTeamLogPasskeyAddType + + @objc + public init(_ arg: DBXTeamLogPasskeyAddType) { + passkeyAdd = arg + let swift = TeamLog.EventType.passkeyAdd(arg.swift) + super.init(swift: swift) + } +} + +/// (tfa) Removed passkey for login +@objc +public class DBXTeamLogEventTypePasskeyRemove: DBXTeamLogEventType { + @objc + public var passkeyRemove: DBXTeamLogPasskeyRemoveType + + @objc + public init(_ arg: DBXTeamLogPasskeyRemoveType) { + passkeyRemove = arg + let swift = TeamLog.EventType.passkeyRemove(arg.swift) + super.init(swift: swift) + } +} + +/// (tfa) Added backup phone for two-factor authentication @objc public class DBXTeamLogEventTypeTfaAddBackupPhone: DBXTeamLogEventType { @objc @@ -30248,13 +38918,13 @@ public class DBXTeamLogEventTypeTfaAddBackupPhone: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogTfaAddBackupPhoneType) { - self.tfaAddBackupPhone = arg + tfaAddBackupPhone = arg let swift = TeamLog.EventType.tfaAddBackupPhone(arg.swift) super.init(swift: swift) } } -/// (tfa) Added security key for two-step verification +/// (tfa) Added security key for two-factor authentication @objc public class DBXTeamLogEventTypeTfaAddSecurityKey: DBXTeamLogEventType { @objc @@ -30262,13 +38932,13 @@ public class DBXTeamLogEventTypeTfaAddSecurityKey: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogTfaAddSecurityKeyType) { - self.tfaAddSecurityKey = arg + tfaAddSecurityKey = arg let swift = TeamLog.EventType.tfaAddSecurityKey(arg.swift) super.init(swift: swift) } } -/// (tfa) Changed backup phone for two-step verification +/// (tfa) Changed backup phone for two-factor authentication @objc public class DBXTeamLogEventTypeTfaChangeBackupPhone: DBXTeamLogEventType { @objc @@ -30276,13 +38946,13 @@ public class DBXTeamLogEventTypeTfaChangeBackupPhone: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogTfaChangeBackupPhoneType) { - self.tfaChangeBackupPhone = arg + tfaChangeBackupPhone = arg let swift = TeamLog.EventType.tfaChangeBackupPhone(arg.swift) super.init(swift: swift) } } -/// (tfa) Enabled/disabled/changed two-step verification setting +/// (tfa) Enabled/disabled/changed two-factor authentication setting @objc public class DBXTeamLogEventTypeTfaChangeStatus: DBXTeamLogEventType { @objc @@ -30290,13 +38960,13 @@ public class DBXTeamLogEventTypeTfaChangeStatus: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogTfaChangeStatusType) { - self.tfaChangeStatus = arg + tfaChangeStatus = arg let swift = TeamLog.EventType.tfaChangeStatus(arg.swift) super.init(swift: swift) } } -/// (tfa) Removed backup phone for two-step verification +/// (tfa) Removed backup phone for two-factor authentication @objc public class DBXTeamLogEventTypeTfaRemoveBackupPhone: DBXTeamLogEventType { @objc @@ -30304,13 +38974,13 @@ public class DBXTeamLogEventTypeTfaRemoveBackupPhone: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogTfaRemoveBackupPhoneType) { - self.tfaRemoveBackupPhone = arg + tfaRemoveBackupPhone = arg let swift = TeamLog.EventType.tfaRemoveBackupPhone(arg.swift) super.init(swift: swift) } } -/// (tfa) Removed security key for two-step verification +/// (tfa) Removed security key for two-factor authentication @objc public class DBXTeamLogEventTypeTfaRemoveSecurityKey: DBXTeamLogEventType { @objc @@ -30318,13 +38988,13 @@ public class DBXTeamLogEventTypeTfaRemoveSecurityKey: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogTfaRemoveSecurityKeyType) { - self.tfaRemoveSecurityKey = arg + tfaRemoveSecurityKey = arg let swift = TeamLog.EventType.tfaRemoveSecurityKey(arg.swift) super.init(swift: swift) } } -/// (tfa) Reset two-step verification for team member +/// (tfa) Reset two-factor authentication for team member @objc public class DBXTeamLogEventTypeTfaReset: DBXTeamLogEventType { @objc @@ -30332,7 +39002,7 @@ public class DBXTeamLogEventTypeTfaReset: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogTfaResetType) { - self.tfaReset = arg + tfaReset = arg let swift = TeamLog.EventType.tfaReset(arg.swift) super.init(swift: swift) } @@ -30346,7 +39016,7 @@ public class DBXTeamLogEventTypeChangedEnterpriseAdminRole: DBXTeamLogEventType @objc public init(_ arg: DBXTeamLogChangedEnterpriseAdminRoleType) { - self.changedEnterpriseAdminRole = arg + changedEnterpriseAdminRole = arg let swift = TeamLog.EventType.changedEnterpriseAdminRole(arg.swift) super.init(swift: swift) } @@ -30360,7 +39030,7 @@ public class DBXTeamLogEventTypeChangedEnterpriseConnectedTeamStatus: DBXTeamLog @objc public init(_ arg: DBXTeamLogChangedEnterpriseConnectedTeamStatusType) { - self.changedEnterpriseConnectedTeamStatus = arg + changedEnterpriseConnectedTeamStatus = arg let swift = TeamLog.EventType.changedEnterpriseConnectedTeamStatus(arg.swift) super.init(swift: swift) } @@ -30374,7 +39044,7 @@ public class DBXTeamLogEventTypeEndedEnterpriseAdminSession: DBXTeamLogEventType @objc public init(_ arg: DBXTeamLogEndedEnterpriseAdminSessionType) { - self.endedEnterpriseAdminSession = arg + endedEnterpriseAdminSession = arg let swift = TeamLog.EventType.endedEnterpriseAdminSession(arg.swift) super.init(swift: swift) } @@ -30388,7 +39058,7 @@ public class DBXTeamLogEventTypeEndedEnterpriseAdminSessionDeprecated: DBXTeamLo @objc public init(_ arg: DBXTeamLogEndedEnterpriseAdminSessionDeprecatedType) { - self.endedEnterpriseAdminSessionDeprecated = arg + endedEnterpriseAdminSessionDeprecated = arg let swift = TeamLog.EventType.endedEnterpriseAdminSessionDeprecated(arg.swift) super.init(swift: swift) } @@ -30402,7 +39072,7 @@ public class DBXTeamLogEventTypeEnterpriseSettingsLocking: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogEnterpriseSettingsLockingType) { - self.enterpriseSettingsLocking = arg + enterpriseSettingsLocking = arg let swift = TeamLog.EventType.enterpriseSettingsLocking(arg.swift) super.init(swift: swift) } @@ -30416,7 +39086,7 @@ public class DBXTeamLogEventTypeGuestAdminChangeStatus: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogGuestAdminChangeStatusType) { - self.guestAdminChangeStatus = arg + guestAdminChangeStatus = arg let swift = TeamLog.EventType.guestAdminChangeStatus(arg.swift) super.init(swift: swift) } @@ -30430,7 +39100,7 @@ public class DBXTeamLogEventTypeStartedEnterpriseAdminSession: DBXTeamLogEventTy @objc public init(_ arg: DBXTeamLogStartedEnterpriseAdminSessionType) { - self.startedEnterpriseAdminSession = arg + startedEnterpriseAdminSession = arg let swift = TeamLog.EventType.startedEnterpriseAdminSession(arg.swift) super.init(swift: swift) } @@ -30444,7 +39114,7 @@ public class DBXTeamLogEventTypeTeamMergeRequestAccepted: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogTeamMergeRequestAcceptedType) { - self.teamMergeRequestAccepted = arg + teamMergeRequestAccepted = arg let swift = TeamLog.EventType.teamMergeRequestAccepted(arg.swift) super.init(swift: swift) } @@ -30458,7 +39128,7 @@ public class DBXTeamLogEventTypeTeamMergeRequestAcceptedShownToPrimaryTeam: DBXT @objc public init(_ arg: DBXTeamLogTeamMergeRequestAcceptedShownToPrimaryTeamType) { - self.teamMergeRequestAcceptedShownToPrimaryTeam = arg + teamMergeRequestAcceptedShownToPrimaryTeam = arg let swift = TeamLog.EventType.teamMergeRequestAcceptedShownToPrimaryTeam(arg.swift) super.init(swift: swift) } @@ -30472,7 +39142,7 @@ public class DBXTeamLogEventTypeTeamMergeRequestAcceptedShownToSecondaryTeam: DB @objc public init(_ arg: DBXTeamLogTeamMergeRequestAcceptedShownToSecondaryTeamType) { - self.teamMergeRequestAcceptedShownToSecondaryTeam = arg + teamMergeRequestAcceptedShownToSecondaryTeam = arg let swift = TeamLog.EventType.teamMergeRequestAcceptedShownToSecondaryTeam(arg.swift) super.init(swift: swift) } @@ -30486,7 +39156,7 @@ public class DBXTeamLogEventTypeTeamMergeRequestAutoCanceled: DBXTeamLogEventTyp @objc public init(_ arg: DBXTeamLogTeamMergeRequestAutoCanceledType) { - self.teamMergeRequestAutoCanceled = arg + teamMergeRequestAutoCanceled = arg let swift = TeamLog.EventType.teamMergeRequestAutoCanceled(arg.swift) super.init(swift: swift) } @@ -30500,7 +39170,7 @@ public class DBXTeamLogEventTypeTeamMergeRequestCanceled: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogTeamMergeRequestCanceledType) { - self.teamMergeRequestCanceled = arg + teamMergeRequestCanceled = arg let swift = TeamLog.EventType.teamMergeRequestCanceled(arg.swift) super.init(swift: swift) } @@ -30514,7 +39184,7 @@ public class DBXTeamLogEventTypeTeamMergeRequestCanceledShownToPrimaryTeam: DBXT @objc public init(_ arg: DBXTeamLogTeamMergeRequestCanceledShownToPrimaryTeamType) { - self.teamMergeRequestCanceledShownToPrimaryTeam = arg + teamMergeRequestCanceledShownToPrimaryTeam = arg let swift = TeamLog.EventType.teamMergeRequestCanceledShownToPrimaryTeam(arg.swift) super.init(swift: swift) } @@ -30528,7 +39198,7 @@ public class DBXTeamLogEventTypeTeamMergeRequestCanceledShownToSecondaryTeam: DB @objc public init(_ arg: DBXTeamLogTeamMergeRequestCanceledShownToSecondaryTeamType) { - self.teamMergeRequestCanceledShownToSecondaryTeam = arg + teamMergeRequestCanceledShownToSecondaryTeam = arg let swift = TeamLog.EventType.teamMergeRequestCanceledShownToSecondaryTeam(arg.swift) super.init(swift: swift) } @@ -30542,7 +39212,7 @@ public class DBXTeamLogEventTypeTeamMergeRequestExpired: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogTeamMergeRequestExpiredType) { - self.teamMergeRequestExpired = arg + teamMergeRequestExpired = arg let swift = TeamLog.EventType.teamMergeRequestExpired(arg.swift) super.init(swift: swift) } @@ -30556,7 +39226,7 @@ public class DBXTeamLogEventTypeTeamMergeRequestExpiredShownToPrimaryTeam: DBXTe @objc public init(_ arg: DBXTeamLogTeamMergeRequestExpiredShownToPrimaryTeamType) { - self.teamMergeRequestExpiredShownToPrimaryTeam = arg + teamMergeRequestExpiredShownToPrimaryTeam = arg let swift = TeamLog.EventType.teamMergeRequestExpiredShownToPrimaryTeam(arg.swift) super.init(swift: swift) } @@ -30570,7 +39240,7 @@ public class DBXTeamLogEventTypeTeamMergeRequestExpiredShownToSecondaryTeam: DBX @objc public init(_ arg: DBXTeamLogTeamMergeRequestExpiredShownToSecondaryTeamType) { - self.teamMergeRequestExpiredShownToSecondaryTeam = arg + teamMergeRequestExpiredShownToSecondaryTeam = arg let swift = TeamLog.EventType.teamMergeRequestExpiredShownToSecondaryTeam(arg.swift) super.init(swift: swift) } @@ -30584,7 +39254,7 @@ public class DBXTeamLogEventTypeTeamMergeRequestRejectedShownToPrimaryTeam: DBXT @objc public init(_ arg: DBXTeamLogTeamMergeRequestRejectedShownToPrimaryTeamType) { - self.teamMergeRequestRejectedShownToPrimaryTeam = arg + teamMergeRequestRejectedShownToPrimaryTeam = arg let swift = TeamLog.EventType.teamMergeRequestRejectedShownToPrimaryTeam(arg.swift) super.init(swift: swift) } @@ -30598,7 +39268,7 @@ public class DBXTeamLogEventTypeTeamMergeRequestRejectedShownToSecondaryTeam: DB @objc public init(_ arg: DBXTeamLogTeamMergeRequestRejectedShownToSecondaryTeamType) { - self.teamMergeRequestRejectedShownToSecondaryTeam = arg + teamMergeRequestRejectedShownToSecondaryTeam = arg let swift = TeamLog.EventType.teamMergeRequestRejectedShownToSecondaryTeam(arg.swift) super.init(swift: swift) } @@ -30612,14 +39282,14 @@ public class DBXTeamLogEventTypeTeamMergeRequestReminder: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogTeamMergeRequestReminderType) { - self.teamMergeRequestReminder = arg + teamMergeRequestReminder = arg let swift = TeamLog.EventType.teamMergeRequestReminder(arg.swift) super.init(swift: swift) } } /// (trusted_teams) Sent a team merge request reminder (deprecated, replaced by 'Sent a team merge request -/// reminder') + /// reminder') @objc public class DBXTeamLogEventTypeTeamMergeRequestReminderShownToPrimaryTeam: DBXTeamLogEventType { @objc @@ -30627,14 +39297,14 @@ public class DBXTeamLogEventTypeTeamMergeRequestReminderShownToPrimaryTeam: DBXT @objc public init(_ arg: DBXTeamLogTeamMergeRequestReminderShownToPrimaryTeamType) { - self.teamMergeRequestReminderShownToPrimaryTeam = arg + teamMergeRequestReminderShownToPrimaryTeam = arg let swift = TeamLog.EventType.teamMergeRequestReminderShownToPrimaryTeam(arg.swift) super.init(swift: swift) } } /// (trusted_teams) Sent a team merge request reminder (deprecated, replaced by 'Sent a team merge request -/// reminder') + /// reminder') @objc public class DBXTeamLogEventTypeTeamMergeRequestReminderShownToSecondaryTeam: DBXTeamLogEventType { @objc @@ -30642,7 +39312,7 @@ public class DBXTeamLogEventTypeTeamMergeRequestReminderShownToSecondaryTeam: DB @objc public init(_ arg: DBXTeamLogTeamMergeRequestReminderShownToSecondaryTeamType) { - self.teamMergeRequestReminderShownToSecondaryTeam = arg + teamMergeRequestReminderShownToSecondaryTeam = arg let swift = TeamLog.EventType.teamMergeRequestReminderShownToSecondaryTeam(arg.swift) super.init(swift: swift) } @@ -30656,7 +39326,7 @@ public class DBXTeamLogEventTypeTeamMergeRequestRevoked: DBXTeamLogEventType { @objc public init(_ arg: DBXTeamLogTeamMergeRequestRevokedType) { - self.teamMergeRequestRevoked = arg + teamMergeRequestRevoked = arg let swift = TeamLog.EventType.teamMergeRequestRevoked(arg.swift) super.init(swift: swift) } @@ -30670,7 +39340,7 @@ public class DBXTeamLogEventTypeTeamMergeRequestSentShownToPrimaryTeam: DBXTeamL @objc public init(_ arg: DBXTeamLogTeamMergeRequestSentShownToPrimaryTeamType) { - self.teamMergeRequestSentShownToPrimaryTeam = arg + teamMergeRequestSentShownToPrimaryTeam = arg let swift = TeamLog.EventType.teamMergeRequestSentShownToPrimaryTeam(arg.swift) super.init(swift: swift) } @@ -30684,7 +39354,7 @@ public class DBXTeamLogEventTypeTeamMergeRequestSentShownToSecondaryTeam: DBXTea @objc public init(_ arg: DBXTeamLogTeamMergeRequestSentShownToSecondaryTeamType) { - self.teamMergeRequestSentShownToSecondaryTeam = arg + teamMergeRequestSentShownToSecondaryTeam = arg let swift = TeamLog.EventType.teamMergeRequestSentShownToSecondaryTeam(arg.swift) super.init(swift: swift) } @@ -30751,6 +39421,70 @@ public class DBXTeamLogEventTypeArg: NSObject { return DBXTeamLogEventTypeArgFileUnlikeComment() case .fileUnresolveComment: return DBXTeamLogEventTypeArgFileUnresolveComment() + case .dashAddedCommentToStack: + return DBXTeamLogEventTypeArgDashAddedCommentToStack() + case .dashAddedConnector: + return DBXTeamLogEventTypeArgDashAddedConnector() + case .dashAddedLinkToStack: + return DBXTeamLogEventTypeArgDashAddedLinkToStack() + case .dashAddedTeamEmailDomainAllowlist: + return DBXTeamLogEventTypeArgDashAddedTeamEmailDomainAllowlist() + case .dashAdminAddedOrgWideConnector: + return DBXTeamLogEventTypeArgDashAdminAddedOrgWideConnector() + case .dashAdminDisabledConnector: + return DBXTeamLogEventTypeArgDashAdminDisabledConnector() + case .dashAdminEnabledConnector: + return DBXTeamLogEventTypeArgDashAdminEnabledConnector() + case .dashAdminRemovedOrgWideConnector: + return DBXTeamLogEventTypeArgDashAdminRemovedOrgWideConnector() + case .dashArchivedStack: + return DBXTeamLogEventTypeArgDashArchivedStack() + case .dashChangedAudienceOfSharedLinkToStack: + return DBXTeamLogEventTypeArgDashChangedAudienceOfSharedLinkToStack() + case .dashClonedStack: + return DBXTeamLogEventTypeArgDashClonedStack() + case .dashConnectorToolsCall: + return DBXTeamLogEventTypeArgDashConnectorToolsCall() + case .dashCreatedStack: + return DBXTeamLogEventTypeArgDashCreatedStack() + case .dashDeletedCommentFromStack: + return DBXTeamLogEventTypeArgDashDeletedCommentFromStack() + case .dashDeletedStack: + return DBXTeamLogEventTypeArgDashDeletedStack() + case .dashEditedCommentInStack: + return DBXTeamLogEventTypeArgDashEditedCommentInStack() + case .dashExternalUserOpenedStack: + return DBXTeamLogEventTypeArgDashExternalUserOpenedStack() + case .dashFirstLaunchedDesktop: + return DBXTeamLogEventTypeArgDashFirstLaunchedDesktop() + case .dashFirstLaunchedExtension: + return DBXTeamLogEventTypeArgDashFirstLaunchedExtension() + case .dashFirstLaunchedWebStartPage: + return DBXTeamLogEventTypeArgDashFirstLaunchedWebStartPage() + case .dashOpenedSharedLinkToStack: + return DBXTeamLogEventTypeArgDashOpenedSharedLinkToStack() + case .dashOpenedStack: + return DBXTeamLogEventTypeArgDashOpenedStack() + case .dashPreviewOptOutStatusChanged: + return DBXTeamLogEventTypeArgDashPreviewOptOutStatusChanged() + case .dashRemovedConnector: + return DBXTeamLogEventTypeArgDashRemovedConnector() + case .dashRemovedLinkFromStack: + return DBXTeamLogEventTypeArgDashRemovedLinkFromStack() + case .dashRemovedSharedLinkToStack: + return DBXTeamLogEventTypeArgDashRemovedSharedLinkToStack() + case .dashRemovedTeamEmailDomainAllowlist: + return DBXTeamLogEventTypeArgDashRemovedTeamEmailDomainAllowlist() + case .dashRenamedStack: + return DBXTeamLogEventTypeArgDashRenamedStack() + case .dashSharedLinkToStack: + return DBXTeamLogEventTypeArgDashSharedLinkToStack() + case .dashUnarchivedStack: + return DBXTeamLogEventTypeArgDashUnarchivedStack() + case .dashViewedCompanyStack: + return DBXTeamLogEventTypeArgDashViewedCompanyStack() + case .dashViewedExternalAiActivityReport: + return DBXTeamLogEventTypeArgDashViewedExternalAiActivityReport() case .governancePolicyAddFolders: return DBXTeamLogEventTypeArgGovernancePolicyAddFolders() case .governancePolicyAddFolderFailed: @@ -30859,10 +39593,34 @@ public class DBXTeamLogEventTypeArg: NSObject { return DBXTeamLogEventTypeArgDomainVerificationRemoveDomain() case .enabledDomainInvites: return DBXTeamLogEventTypeArgEnabledDomainInvites() + case .encryptedFolderCancelTeamKeyRotation: + return DBXTeamLogEventTypeArgEncryptedFolderCancelTeamKeyRotation() + case .encryptedFolderEnrollBackupKey: + return DBXTeamLogEventTypeArgEncryptedFolderEnrollBackupKey() + case .encryptedFolderEnrollClient: + return DBXTeamLogEventTypeArgEncryptedFolderEnrollClient() + case .encryptedFolderEnrollTeam: + return DBXTeamLogEventTypeArgEncryptedFolderEnrollTeam() + case .encryptedFolderFinishTeamUnenrollment: + return DBXTeamLogEventTypeArgEncryptedFolderFinishTeamUnenrollment() + case .encryptedFolderInitTeamKeyRotation: + return DBXTeamLogEventTypeArgEncryptedFolderInitTeamKeyRotation() + case .encryptedFolderInitTeamUnenrollment: + return DBXTeamLogEventTypeArgEncryptedFolderInitTeamUnenrollment() + case .encryptedFolderRemoveBackupKey: + return DBXTeamLogEventTypeArgEncryptedFolderRemoveBackupKey() + case .encryptedFolderRotateTeamKey: + return DBXTeamLogEventTypeArgEncryptedFolderRotateTeamKey() + case .encryptedFolderUnenrollClient: + return DBXTeamLogEventTypeArgEncryptedFolderUnenrollClient() + case .teamEncryptionKeyActivateKey: + return DBXTeamLogEventTypeArgTeamEncryptionKeyActivateKey() case .teamEncryptionKeyCancelKeyDeletion: return DBXTeamLogEventTypeArgTeamEncryptionKeyCancelKeyDeletion() case .teamEncryptionKeyCreateKey: return DBXTeamLogEventTypeArgTeamEncryptionKeyCreateKey() + case .teamEncryptionKeyDeactivateKey: + return DBXTeamLogEventTypeArgTeamEncryptionKeyDeactivateKey() case .teamEncryptionKeyDeleteKey: return DBXTeamLogEventTypeArgTeamEncryptionKeyDeleteKey() case .teamEncryptionKeyDisableKey: @@ -30915,6 +39673,8 @@ public class DBXTeamLogEventTypeArg: NSObject { return DBXTeamLogEventTypeArgFolderOverviewItemPinned() case .folderOverviewItemUnpinned: return DBXTeamLogEventTypeArgFolderOverviewItemUnpinned() + case .mediaHubFileDownloaded: + return DBXTeamLogEventTypeArgMediaHubFileDownloaded() case .objectLabelAdded: return DBXTeamLogEventTypeArgObjectLabelAdded() case .objectLabelRemoved: @@ -30925,6 +39685,10 @@ public class DBXTeamLogEventTypeArg: NSObject { return DBXTeamLogEventTypeArgOrganizeFolderWithTidy() case .replayFileDelete: return DBXTeamLogEventTypeArgReplayFileDelete() + case .replayFileDownloaded: + return DBXTeamLogEventTypeArgReplayFileDownloaded() + case .replayTeamProjectCreated: + return DBXTeamLogEventTypeArgReplayTeamProjectCreated() case .rewindFolder: return DBXTeamLogEventTypeArgRewindFolder() case .undoNamingConvention: @@ -30937,6 +39701,8 @@ public class DBXTeamLogEventTypeArg: NSObject { return DBXTeamLogEventTypeArgUserTagsRemoved() case .emailIngestReceiveFile: return DBXTeamLogEventTypeArgEmailIngestReceiveFile() + case .fileRequestAutoClose: + return DBXTeamLogEventTypeArgFileRequestAutoClose() case .fileRequestChange: return DBXTeamLogEventTypeArgFileRequestChange() case .fileRequestClose: @@ -30963,6 +39729,8 @@ public class DBXTeamLogEventTypeArg: NSObject { return DBXTeamLogEventTypeArgGroupDelete() case .groupDescriptionUpdated: return DBXTeamLogEventTypeArgGroupDescriptionUpdated() + case .groupExternalSharingSettingOverrideChanged: + return DBXTeamLogEventTypeArgGroupExternalSharingSettingOverrideChanged() case .groupJoinPolicyUpdated: return DBXTeamLogEventTypeArgGroupJoinPolicyUpdated() case .groupMoved: @@ -30997,6 +39765,10 @@ public class DBXTeamLogEventTypeArg: NSObject { return DBXTeamLogEventTypeArgSignInAsSessionStart() case .ssoError: return DBXTeamLogEventTypeArgSsoError() + case .addonAssigned: + return DBXTeamLogEventTypeArgAddonAssigned() + case .addonRemoved: + return DBXTeamLogEventTypeArgAddonRemoved() case .backupAdminInvitationSent: return DBXTeamLogEventTypeArgBackupAdminInvitationSent() case .backupInvitationOpened: @@ -31027,6 +39799,8 @@ public class DBXTeamLogEventTypeArg: NSObject { return DBXTeamLogEventTypeArgMemberDeleteManualContacts() case .memberDeleteProfilePhoto: return DBXTeamLogEventTypeArgMemberDeleteProfilePhoto() + case .memberFolderContentsAccessed: + return DBXTeamLogEventTypeArgMemberFolderContentsAccessed() case .memberPermanentlyDeleteAccountContents: return DBXTeamLogEventTypeArgMemberPermanentlyDeleteAccountContents() case .memberRemoveExternalId: @@ -31047,6 +39821,10 @@ public class DBXTeamLogEventTypeArg: NSObject { return DBXTeamLogEventTypeArgMemberTransferAccountContents() case .pendingSecondaryEmailAdded: return DBXTeamLogEventTypeArgPendingSecondaryEmailAdded() + case .productAssignedToMember: + return DBXTeamLogEventTypeArgProductAssignedToMember() + case .productRemovedFromMember: + return DBXTeamLogEventTypeArgProductRemovedFromMember() case .secondaryEmailDeleted: return DBXTeamLogEventTypeArgSecondaryEmailDeleted() case .secondaryEmailVerified: @@ -31157,6 +39935,22 @@ public class DBXTeamLogEventTypeArg: NSObject { return DBXTeamLogEventTypeArgPasswordReset() case .passwordResetAll: return DBXTeamLogEventTypeArgPasswordResetAll() + case .protectActionAddCollaborator: + return DBXTeamLogEventTypeArgProtectActionAddCollaborator() + case .protectActionAddLink: + return DBXTeamLogEventTypeArgProtectActionAddLink() + case .protectActionDelete: + return DBXTeamLogEventTypeArgProtectActionDelete() + case .protectActionExport: + return DBXTeamLogEventTypeArgProtectActionExport() + case .protectActionRemoveCollaborator: + return DBXTeamLogEventTypeArgProtectActionRemoveCollaborator() + case .protectActionRemoveLink: + return DBXTeamLogEventTypeArgProtectActionRemoveLink() + case .protectActionStopSharing: + return DBXTeamLogEventTypeArgProtectActionStopSharing() + case .protectInternalDomainsChanged: + return DBXTeamLogEventTypeArgProtectInternalDomainsChanged() case .classificationCreateReport: return DBXTeamLogEventTypeArgClassificationCreateReport() case .classificationCreateReportFail: @@ -31173,6 +39967,10 @@ public class DBXTeamLogEventTypeArg: NSObject { return DBXTeamLogEventTypeArgExternalSharingCreateReport() case .externalSharingReportFailed: return DBXTeamLogEventTypeArgExternalSharingReportFailed() + case .memberAccessDetailsCreateReport: + return DBXTeamLogEventTypeArgMemberAccessDetailsCreateReport() + case .memberAccessDetailsCreateReportFailed: + return DBXTeamLogEventTypeArgMemberAccessDetailsCreateReportFailed() case .noExpirationLinkGenCreateReport: return DBXTeamLogEventTypeArgNoExpirationLinkGenCreateReport() case .noExpirationLinkGenReportFailed: @@ -31195,12 +39993,24 @@ public class DBXTeamLogEventTypeArg: NSObject { return DBXTeamLogEventTypeArgRansomwareAlertCreateReport() case .ransomwareAlertCreateReportFailed: return DBXTeamLogEventTypeArgRansomwareAlertCreateReportFailed() + case .sharedFoldersCreateReport: + return DBXTeamLogEventTypeArgSharedFoldersCreateReport() + case .sharedFoldersCreateReportFailed: + return DBXTeamLogEventTypeArgSharedFoldersCreateReportFailed() case .smartSyncCreateAdminPrivilegeReport: return DBXTeamLogEventTypeArgSmartSyncCreateAdminPrivilegeReport() case .teamActivityCreateReport: return DBXTeamLogEventTypeArgTeamActivityCreateReport() case .teamActivityCreateReportFail: return DBXTeamLogEventTypeArgTeamActivityCreateReportFail() + case .teamFoldersCreateReport: + return DBXTeamLogEventTypeArgTeamFoldersCreateReport() + case .teamFoldersCreateReportFailed: + return DBXTeamLogEventTypeArgTeamFoldersCreateReportFailed() + case .teamStorageCreateReport: + return DBXTeamLogEventTypeArgTeamStorageCreateReport() + case .teamStorageCreateReportFailed: + return DBXTeamLogEventTypeArgTeamStorageCreateReportFailed() case .collectionShare: return DBXTeamLogEventTypeArgCollectionShare() case .fileTransfersFileAdd: @@ -31213,6 +40023,20 @@ public class DBXTeamLogEventTypeArg: NSObject { return DBXTeamLogEventTypeArgFileTransfersTransferSend() case .fileTransfersTransferView: return DBXTeamLogEventTypeArgFileTransfersTransferView() + case .mediaHubProjectTeamAdd: + return DBXTeamLogEventTypeArgMediaHubProjectTeamAdd() + case .mediaHubProjectTeamDelete: + return DBXTeamLogEventTypeArgMediaHubProjectTeamDelete() + case .mediaHubProjectTeamRoleChanged: + return DBXTeamLogEventTypeArgMediaHubProjectTeamRoleChanged() + case .mediaHubSharedLinkAudienceChanged: + return DBXTeamLogEventTypeArgMediaHubSharedLinkAudienceChanged() + case .mediaHubSharedLinkCreated: + return DBXTeamLogEventTypeArgMediaHubSharedLinkCreated() + case .mediaHubSharedLinkDownloadSettingChanged: + return DBXTeamLogEventTypeArgMediaHubSharedLinkDownloadSettingChanged() + case .mediaHubSharedLinkRevoked: + return DBXTeamLogEventTypeArgMediaHubSharedLinkRevoked() case .noteAclInviteOnly: return DBXTeamLogEventTypeArgNoteAclInviteOnly() case .noteAclLink: @@ -31233,6 +40057,22 @@ public class DBXTeamLogEventTypeArg: NSObject { return DBXTeamLogEventTypeArgReplayProjectTeamAdd() case .replayProjectTeamDelete: return DBXTeamLogEventTypeArgReplayProjectTeamDelete() + case .sendAndTrackFileAdded: + return DBXTeamLogEventTypeArgSendAndTrackFileAdded() + case .sendAndTrackFileRenamed: + return DBXTeamLogEventTypeArgSendAndTrackFileRenamed() + case .sendAndTrackFileUpdated: + return DBXTeamLogEventTypeArgSendAndTrackFileUpdated() + case .sendAndTrackLinkCreated: + return DBXTeamLogEventTypeArgSendAndTrackLinkCreated() + case .sendAndTrackLinkDeleted: + return DBXTeamLogEventTypeArgSendAndTrackLinkDeleted() + case .sendAndTrackLinkUpdated: + return DBXTeamLogEventTypeArgSendAndTrackLinkUpdated() + case .sendAndTrackLinkViewed: + return DBXTeamLogEventTypeArgSendAndTrackLinkViewed() + case .sendAndTrackRemovedFileAndAssociatedLinks: + return DBXTeamLogEventTypeArgSendAndTrackRemovedFileAndAssociatedLinks() case .sfAddGroup: return DBXTeamLogEventTypeArgSfAddGroup() case .sfAllowNonMembersToViewSharedLinks: @@ -31343,6 +40183,8 @@ public class DBXTeamLogEventTypeArg: NSObject { return DBXTeamLogEventTypeArgSharedLinkDownload() case .sharedLinkRemoveExpiry: return DBXTeamLogEventTypeArgSharedLinkRemoveExpiry() + case .sharedLinkRemoveVisitor: + return DBXTeamLogEventTypeArgSharedLinkRemoveVisitor() case .sharedLinkSettingsAddExpiration: return DBXTeamLogEventTypeArgSharedLinkSettingsAddExpiration() case .sharedLinkSettingsAddPassword: @@ -31421,6 +40263,24 @@ public class DBXTeamLogEventTypeArg: NSObject { return DBXTeamLogEventTypeArgShowcaseUntrashedDeprecated() case .showcaseView: return DBXTeamLogEventTypeArgShowcaseView() + case .signSignatureRequestCanceled: + return DBXTeamLogEventTypeArgSignSignatureRequestCanceled() + case .signSignatureRequestCompleted: + return DBXTeamLogEventTypeArgSignSignatureRequestCompleted() + case .signSignatureRequestDeclined: + return DBXTeamLogEventTypeArgSignSignatureRequestDeclined() + case .signSignatureRequestOpened: + return DBXTeamLogEventTypeArgSignSignatureRequestOpened() + case .signSignatureRequestReminderSent: + return DBXTeamLogEventTypeArgSignSignatureRequestReminderSent() + case .signSignatureRequestSent: + return DBXTeamLogEventTypeArgSignSignatureRequestSent() + case .signTemplateCreated: + return DBXTeamLogEventTypeArgSignTemplateCreated() + case .signTemplateShared: + return DBXTeamLogEventTypeArgSignTemplateShared() + case .riscSecurityEvent: + return DBXTeamLogEventTypeArgRiscSecurityEvent() case .ssoAddCert: return DBXTeamLogEventTypeArgSsoAddCert() case .ssoAddLoginUrl: @@ -31451,20 +40311,32 @@ public class DBXTeamLogEventTypeArg: NSObject { return DBXTeamLogEventTypeArgTeamFolderPermanentlyDelete() case .teamFolderRename: return DBXTeamLogEventTypeArgTeamFolderRename() + case .teamFolderSpaceLimitsChangeCapsType: + return DBXTeamLogEventTypeArgTeamFolderSpaceLimitsChangeCapsType() + case .teamFolderSpaceLimitsChangeLimit: + return DBXTeamLogEventTypeArgTeamFolderSpaceLimitsChangeLimit() + case .teamFolderSpaceLimitsChangeNotificationTarget: + return DBXTeamLogEventTypeArgTeamFolderSpaceLimitsChangeNotificationTarget() case .teamSelectiveSyncSettingsChanged: return DBXTeamLogEventTypeArgTeamSelectiveSyncSettingsChanged() case .accountCaptureChangePolicy: return DBXTeamLogEventTypeArgAccountCaptureChangePolicy() case .adminEmailRemindersChanged: return DBXTeamLogEventTypeArgAdminEmailRemindersChanged() + case .aiThirdPartySharingDropboxBasePolicyChanged: + return DBXTeamLogEventTypeArgAiThirdPartySharingDropboxBasePolicyChanged() case .allowDownloadDisabled: return DBXTeamLogEventTypeArgAllowDownloadDisabled() case .allowDownloadEnabled: return DBXTeamLogEventTypeArgAllowDownloadEnabled() + case .appleLoginChangePolicy: + return DBXTeamLogEventTypeArgAppleLoginChangePolicy() case .appPermissionsChanged: return DBXTeamLogEventTypeArgAppPermissionsChanged() case .cameraUploadsPolicyChanged: return DBXTeamLogEventTypeArgCameraUploadsPolicyChanged() + case .captureTeamSpacePolicyChanged: + return DBXTeamLogEventTypeArgCaptureTeamSpacePolicyChanged() case .captureTranscriptPolicyChanged: return DBXTeamLogEventTypeArgCaptureTranscriptPolicyChanged() case .classificationChangePolicy: @@ -31473,6 +40345,10 @@ public class DBXTeamLogEventTypeArg: NSObject { return DBXTeamLogEventTypeArgComputerBackupPolicyChanged() case .contentAdministrationPolicyChanged: return DBXTeamLogEventTypeArgContentAdministrationPolicyChanged() + case .contentDeletionProtectionChangePolicy: + return DBXTeamLogEventTypeArgContentDeletionProtectionChangePolicy() + case .dashExternalSharingPolicyChanged: + return DBXTeamLogEventTypeArgDashExternalSharingPolicyChanged() case .dataPlacementRestrictionChangePolicy: return DBXTeamLogEventTypeArgDataPlacementRestrictionChangePolicy() case .dataPlacementRestrictionSatisfyPolicy: @@ -31521,6 +40397,8 @@ public class DBXTeamLogEventTypeArg: NSObject { return DBXTeamLogEventTypeArgFileRequestsEmailsRestrictedToTeamOnly() case .fileTransfersPolicyChanged: return DBXTeamLogEventTypeArgFileTransfersPolicyChanged() + case .flexibleFileNamesPolicyChanged: + return DBXTeamLogEventTypeArgFlexibleFileNamesPolicyChanged() case .folderLinkRestrictionPolicyChanged: return DBXTeamLogEventTypeArgFolderLinkRestrictionPolicyChanged() case .googleSsoChangePolicy: @@ -31531,6 +40409,12 @@ public class DBXTeamLogEventTypeArg: NSObject { return DBXTeamLogEventTypeArgIntegrationPolicyChanged() case .inviteAcceptanceEmailPolicyChanged: return DBXTeamLogEventTypeArgInviteAcceptanceEmailPolicyChanged() + case .mediaHubAddingPeoplePolicyChanged: + return DBXTeamLogEventTypeArgMediaHubAddingPeoplePolicyChanged() + case .mediaHubDownloadPolicyChanged: + return DBXTeamLogEventTypeArgMediaHubDownloadPolicyChanged() + case .mediaHubLinkSharingPolicyChanged: + return DBXTeamLogEventTypeArgMediaHubLinkSharingPolicyChanged() case .memberRequestsChangePolicy: return DBXTeamLogEventTypeArgMemberRequestsChangePolicy() case .memberSendInvitePolicyChanged: @@ -31545,8 +40429,12 @@ public class DBXTeamLogEventTypeArg: NSObject { return DBXTeamLogEventTypeArgMemberSpaceLimitsRemoveException() case .memberSuggestionsChangePolicy: return DBXTeamLogEventTypeArgMemberSuggestionsChangePolicy() + case .microsoftLoginChangePolicy: + return DBXTeamLogEventTypeArgMicrosoftLoginChangePolicy() case .microsoftOfficeAddinChangePolicy: return DBXTeamLogEventTypeArgMicrosoftOfficeAddinChangePolicy() + case .multiTeamIdentityPolicyChanged: + return DBXTeamLogEventTypeArgMultiTeamIdentityPolicyChanged() case .networkControlChangePolicy: return DBXTeamLogEventTypeArgNetworkControlChangePolicy() case .paperChangeDeploymentPolicy: @@ -31565,16 +40453,30 @@ public class DBXTeamLogEventTypeArg: NSObject { return DBXTeamLogEventTypeArgPaperEnabledUsersGroupAddition() case .paperEnabledUsersGroupRemoval: return DBXTeamLogEventTypeArgPaperEnabledUsersGroupRemoval() + case .passkeyLoginPolicyChanged: + return DBXTeamLogEventTypeArgPasskeyLoginPolicyChanged() case .passwordStrengthRequirementsChangePolicy: return DBXTeamLogEventTypeArgPasswordStrengthRequirementsChangePolicy() case .permanentDeleteChangePolicy: return DBXTeamLogEventTypeArgPermanentDeleteChangePolicy() + case .previewsAiPolicyChanged: + return DBXTeamLogEventTypeArgPreviewsAiPolicyChanged() + case .replayAddingPeoplePolicyChanged: + return DBXTeamLogEventTypeArgReplayAddingPeoplePolicyChanged() + case .replaySharingPolicyChanged: + return DBXTeamLogEventTypeArgReplaySharingPolicyChanged() case .resellerSupportChangePolicy: return DBXTeamLogEventTypeArgResellerSupportChangePolicy() case .rewindPolicyChanged: return DBXTeamLogEventTypeArgRewindPolicyChanged() + case .sendAndTrackPolicyChanged: + return DBXTeamLogEventTypeArgSendAndTrackPolicyChanged() + case .sendExternalSharingPolicyChanged: + return DBXTeamLogEventTypeArgSendExternalSharingPolicyChanged() case .sendForSignaturePolicyChanged: return DBXTeamLogEventTypeArgSendForSignaturePolicyChanged() + case .sharedLinkDefaultPermissionsPolicyChanged: + return DBXTeamLogEventTypeArgSharedLinkDefaultPermissionsPolicyChanged() case .sharingChangeFolderJoinPolicy: return DBXTeamLogEventTypeArgSharingChangeFolderJoinPolicy() case .sharingChangeLinkAllowChangeExpirationPolicy: @@ -31593,6 +40495,10 @@ public class DBXTeamLogEventTypeArg: NSObject { return DBXTeamLogEventTypeArgShowcaseChangeEnabledPolicy() case .showcaseChangeExternalSharingPolicy: return DBXTeamLogEventTypeArgShowcaseChangeExternalSharingPolicy() + case .signExternalSharingPolicyChanged: + return DBXTeamLogEventTypeArgSignExternalSharingPolicyChanged() + case .signTemplateCreationPermissionChanged: + return DBXTeamLogEventTypeArgSignTemplateCreationPermissionChanged() case .smarterSmartSyncPolicyChanged: return DBXTeamLogEventTypeArgSmarterSmartSyncPolicyChanged() case .smartSyncChangePolicy: @@ -31603,10 +40509,14 @@ public class DBXTeamLogEventTypeArg: NSObject { return DBXTeamLogEventTypeArgSmartSyncOptOut() case .ssoChangePolicy: return DBXTeamLogEventTypeArgSsoChangePolicy() + case .stackCrossTeamAccessPolicyChanged: + return DBXTeamLogEventTypeArgStackCrossTeamAccessPolicyChanged() case .teamBrandingPolicyChanged: return DBXTeamLogEventTypeArgTeamBrandingPolicyChanged() case .teamExtensionsPolicyChanged: return DBXTeamLogEventTypeArgTeamExtensionsPolicyChanged() + case .teamMemberStorageRequestPolicyChanged: + return DBXTeamLogEventTypeArgTeamMemberStorageRequestPolicyChanged() case .teamSelectiveSyncPolicyChanged: return DBXTeamLogEventTypeArgTeamSelectiveSyncPolicyChanged() case .teamSharingWhitelistSubjectsChanged: @@ -31617,6 +40527,8 @@ public class DBXTeamLogEventTypeArg: NSObject { return DBXTeamLogEventTypeArgTfaChangePolicy() case .tfaRemoveException: return DBXTeamLogEventTypeArgTfaRemoveException() + case .topLevelContentPolicyChanged: + return DBXTeamLogEventTypeArgTopLevelContentPolicyChanged() case .twoAccountChangePolicy: return DBXTeamLogEventTypeArgTwoAccountChangePolicy() case .viewerInfoPolicyChanged: @@ -31653,6 +40565,10 @@ public class DBXTeamLogEventTypeArg: NSObject { return DBXTeamLogEventTypeArgTeamProfileRemoveBackground() case .teamProfileRemoveLogo: return DBXTeamLogEventTypeArgTeamProfileRemoveLogo() + case .passkeyAdd: + return DBXTeamLogEventTypeArgPasskeyAdd() + case .passkeyRemove: + return DBXTeamLogEventTypeArgPasskeyRemove() case .tfaAddBackupPhone: return DBXTeamLogEventTypeArgTfaAddBackupPhone() case .tfaAddSecurityKey: @@ -31723,7826 +40639,13580 @@ public class DBXTeamLogEventTypeArg: NSObject { } @objc - public override var description: String { swift.description } + public override var description: String { swift.description } + + @objc + public var asAdminAlertingAlertStateChanged: DBXTeamLogEventTypeArgAdminAlertingAlertStateChanged? { + return self as? DBXTeamLogEventTypeArgAdminAlertingAlertStateChanged + } + + @objc + public var asAdminAlertingChangedAlertConfig: DBXTeamLogEventTypeArgAdminAlertingChangedAlertConfig? { + return self as? DBXTeamLogEventTypeArgAdminAlertingChangedAlertConfig + } + + @objc + public var asAdminAlertingTriggeredAlert: DBXTeamLogEventTypeArgAdminAlertingTriggeredAlert? { + return self as? DBXTeamLogEventTypeArgAdminAlertingTriggeredAlert + } + + @objc + public var asRansomwareRestoreProcessCompleted: DBXTeamLogEventTypeArgRansomwareRestoreProcessCompleted? { + return self as? DBXTeamLogEventTypeArgRansomwareRestoreProcessCompleted + } + + @objc + public var asRansomwareRestoreProcessStarted: DBXTeamLogEventTypeArgRansomwareRestoreProcessStarted? { + return self as? DBXTeamLogEventTypeArgRansomwareRestoreProcessStarted + } + + @objc + public var asAppBlockedByPermissions: DBXTeamLogEventTypeArgAppBlockedByPermissions? { + return self as? DBXTeamLogEventTypeArgAppBlockedByPermissions + } + + @objc + public var asAppLinkTeam: DBXTeamLogEventTypeArgAppLinkTeam? { + return self as? DBXTeamLogEventTypeArgAppLinkTeam + } + + @objc + public var asAppLinkUser: DBXTeamLogEventTypeArgAppLinkUser? { + return self as? DBXTeamLogEventTypeArgAppLinkUser + } + + @objc + public var asAppUnlinkTeam: DBXTeamLogEventTypeArgAppUnlinkTeam? { + return self as? DBXTeamLogEventTypeArgAppUnlinkTeam + } + + @objc + public var asAppUnlinkUser: DBXTeamLogEventTypeArgAppUnlinkUser? { + return self as? DBXTeamLogEventTypeArgAppUnlinkUser + } + + @objc + public var asIntegrationConnected: DBXTeamLogEventTypeArgIntegrationConnected? { + return self as? DBXTeamLogEventTypeArgIntegrationConnected + } + + @objc + public var asIntegrationDisconnected: DBXTeamLogEventTypeArgIntegrationDisconnected? { + return self as? DBXTeamLogEventTypeArgIntegrationDisconnected + } + + @objc + public var asFileAddComment: DBXTeamLogEventTypeArgFileAddComment? { + return self as? DBXTeamLogEventTypeArgFileAddComment + } + + @objc + public var asFileChangeCommentSubscription: DBXTeamLogEventTypeArgFileChangeCommentSubscription? { + return self as? DBXTeamLogEventTypeArgFileChangeCommentSubscription + } + + @objc + public var asFileDeleteComment: DBXTeamLogEventTypeArgFileDeleteComment? { + return self as? DBXTeamLogEventTypeArgFileDeleteComment + } + + @objc + public var asFileEditComment: DBXTeamLogEventTypeArgFileEditComment? { + return self as? DBXTeamLogEventTypeArgFileEditComment + } + + @objc + public var asFileLikeComment: DBXTeamLogEventTypeArgFileLikeComment? { + return self as? DBXTeamLogEventTypeArgFileLikeComment + } + + @objc + public var asFileResolveComment: DBXTeamLogEventTypeArgFileResolveComment? { + return self as? DBXTeamLogEventTypeArgFileResolveComment + } + + @objc + public var asFileUnlikeComment: DBXTeamLogEventTypeArgFileUnlikeComment? { + return self as? DBXTeamLogEventTypeArgFileUnlikeComment + } + + @objc + public var asFileUnresolveComment: DBXTeamLogEventTypeArgFileUnresolveComment? { + return self as? DBXTeamLogEventTypeArgFileUnresolveComment + } + + @objc + public var asDashAddedCommentToStack: DBXTeamLogEventTypeArgDashAddedCommentToStack? { + return self as? DBXTeamLogEventTypeArgDashAddedCommentToStack + } + + @objc + public var asDashAddedConnector: DBXTeamLogEventTypeArgDashAddedConnector? { + return self as? DBXTeamLogEventTypeArgDashAddedConnector + } + + @objc + public var asDashAddedLinkToStack: DBXTeamLogEventTypeArgDashAddedLinkToStack? { + return self as? DBXTeamLogEventTypeArgDashAddedLinkToStack + } + + @objc + public var asDashAddedTeamEmailDomainAllowlist: DBXTeamLogEventTypeArgDashAddedTeamEmailDomainAllowlist? { + return self as? DBXTeamLogEventTypeArgDashAddedTeamEmailDomainAllowlist + } + + @objc + public var asDashAdminAddedOrgWideConnector: DBXTeamLogEventTypeArgDashAdminAddedOrgWideConnector? { + return self as? DBXTeamLogEventTypeArgDashAdminAddedOrgWideConnector + } + + @objc + public var asDashAdminDisabledConnector: DBXTeamLogEventTypeArgDashAdminDisabledConnector? { + return self as? DBXTeamLogEventTypeArgDashAdminDisabledConnector + } + + @objc + public var asDashAdminEnabledConnector: DBXTeamLogEventTypeArgDashAdminEnabledConnector? { + return self as? DBXTeamLogEventTypeArgDashAdminEnabledConnector + } + + @objc + public var asDashAdminRemovedOrgWideConnector: DBXTeamLogEventTypeArgDashAdminRemovedOrgWideConnector? { + return self as? DBXTeamLogEventTypeArgDashAdminRemovedOrgWideConnector + } + + @objc + public var asDashArchivedStack: DBXTeamLogEventTypeArgDashArchivedStack? { + return self as? DBXTeamLogEventTypeArgDashArchivedStack + } + + @objc + public var asDashChangedAudienceOfSharedLinkToStack: DBXTeamLogEventTypeArgDashChangedAudienceOfSharedLinkToStack? { + return self as? DBXTeamLogEventTypeArgDashChangedAudienceOfSharedLinkToStack + } + + @objc + public var asDashClonedStack: DBXTeamLogEventTypeArgDashClonedStack? { + return self as? DBXTeamLogEventTypeArgDashClonedStack + } + + @objc + public var asDashConnectorToolsCall: DBXTeamLogEventTypeArgDashConnectorToolsCall? { + return self as? DBXTeamLogEventTypeArgDashConnectorToolsCall + } + + @objc + public var asDashCreatedStack: DBXTeamLogEventTypeArgDashCreatedStack? { + return self as? DBXTeamLogEventTypeArgDashCreatedStack + } + + @objc + public var asDashDeletedCommentFromStack: DBXTeamLogEventTypeArgDashDeletedCommentFromStack? { + return self as? DBXTeamLogEventTypeArgDashDeletedCommentFromStack + } + + @objc + public var asDashDeletedStack: DBXTeamLogEventTypeArgDashDeletedStack? { + return self as? DBXTeamLogEventTypeArgDashDeletedStack + } + + @objc + public var asDashEditedCommentInStack: DBXTeamLogEventTypeArgDashEditedCommentInStack? { + return self as? DBXTeamLogEventTypeArgDashEditedCommentInStack + } + + @objc + public var asDashExternalUserOpenedStack: DBXTeamLogEventTypeArgDashExternalUserOpenedStack? { + return self as? DBXTeamLogEventTypeArgDashExternalUserOpenedStack + } + + @objc + public var asDashFirstLaunchedDesktop: DBXTeamLogEventTypeArgDashFirstLaunchedDesktop? { + return self as? DBXTeamLogEventTypeArgDashFirstLaunchedDesktop + } + + @objc + public var asDashFirstLaunchedExtension: DBXTeamLogEventTypeArgDashFirstLaunchedExtension? { + return self as? DBXTeamLogEventTypeArgDashFirstLaunchedExtension + } + + @objc + public var asDashFirstLaunchedWebStartPage: DBXTeamLogEventTypeArgDashFirstLaunchedWebStartPage? { + return self as? DBXTeamLogEventTypeArgDashFirstLaunchedWebStartPage + } + + @objc + public var asDashOpenedSharedLinkToStack: DBXTeamLogEventTypeArgDashOpenedSharedLinkToStack? { + return self as? DBXTeamLogEventTypeArgDashOpenedSharedLinkToStack + } + + @objc + public var asDashOpenedStack: DBXTeamLogEventTypeArgDashOpenedStack? { + return self as? DBXTeamLogEventTypeArgDashOpenedStack + } + + @objc + public var asDashPreviewOptOutStatusChanged: DBXTeamLogEventTypeArgDashPreviewOptOutStatusChanged? { + return self as? DBXTeamLogEventTypeArgDashPreviewOptOutStatusChanged + } + + @objc + public var asDashRemovedConnector: DBXTeamLogEventTypeArgDashRemovedConnector? { + return self as? DBXTeamLogEventTypeArgDashRemovedConnector + } + + @objc + public var asDashRemovedLinkFromStack: DBXTeamLogEventTypeArgDashRemovedLinkFromStack? { + return self as? DBXTeamLogEventTypeArgDashRemovedLinkFromStack + } + + @objc + public var asDashRemovedSharedLinkToStack: DBXTeamLogEventTypeArgDashRemovedSharedLinkToStack? { + return self as? DBXTeamLogEventTypeArgDashRemovedSharedLinkToStack + } + + @objc + public var asDashRemovedTeamEmailDomainAllowlist: DBXTeamLogEventTypeArgDashRemovedTeamEmailDomainAllowlist? { + return self as? DBXTeamLogEventTypeArgDashRemovedTeamEmailDomainAllowlist + } + + @objc + public var asDashRenamedStack: DBXTeamLogEventTypeArgDashRenamedStack? { + return self as? DBXTeamLogEventTypeArgDashRenamedStack + } + + @objc + public var asDashSharedLinkToStack: DBXTeamLogEventTypeArgDashSharedLinkToStack? { + return self as? DBXTeamLogEventTypeArgDashSharedLinkToStack + } + + @objc + public var asDashUnarchivedStack: DBXTeamLogEventTypeArgDashUnarchivedStack? { + return self as? DBXTeamLogEventTypeArgDashUnarchivedStack + } + + @objc + public var asDashViewedCompanyStack: DBXTeamLogEventTypeArgDashViewedCompanyStack? { + return self as? DBXTeamLogEventTypeArgDashViewedCompanyStack + } + + @objc + public var asDashViewedExternalAiActivityReport: DBXTeamLogEventTypeArgDashViewedExternalAiActivityReport? { + return self as? DBXTeamLogEventTypeArgDashViewedExternalAiActivityReport + } + + @objc + public var asGovernancePolicyAddFolders: DBXTeamLogEventTypeArgGovernancePolicyAddFolders? { + return self as? DBXTeamLogEventTypeArgGovernancePolicyAddFolders + } + + @objc + public var asGovernancePolicyAddFolderFailed: DBXTeamLogEventTypeArgGovernancePolicyAddFolderFailed? { + return self as? DBXTeamLogEventTypeArgGovernancePolicyAddFolderFailed + } + + @objc + public var asGovernancePolicyContentDisposed: DBXTeamLogEventTypeArgGovernancePolicyContentDisposed? { + return self as? DBXTeamLogEventTypeArgGovernancePolicyContentDisposed + } + + @objc + public var asGovernancePolicyCreate: DBXTeamLogEventTypeArgGovernancePolicyCreate? { + return self as? DBXTeamLogEventTypeArgGovernancePolicyCreate + } + + @objc + public var asGovernancePolicyDelete: DBXTeamLogEventTypeArgGovernancePolicyDelete? { + return self as? DBXTeamLogEventTypeArgGovernancePolicyDelete + } + + @objc + public var asGovernancePolicyEditDetails: DBXTeamLogEventTypeArgGovernancePolicyEditDetails? { + return self as? DBXTeamLogEventTypeArgGovernancePolicyEditDetails + } + + @objc + public var asGovernancePolicyEditDuration: DBXTeamLogEventTypeArgGovernancePolicyEditDuration? { + return self as? DBXTeamLogEventTypeArgGovernancePolicyEditDuration + } + + @objc + public var asGovernancePolicyExportCreated: DBXTeamLogEventTypeArgGovernancePolicyExportCreated? { + return self as? DBXTeamLogEventTypeArgGovernancePolicyExportCreated + } + + @objc + public var asGovernancePolicyExportRemoved: DBXTeamLogEventTypeArgGovernancePolicyExportRemoved? { + return self as? DBXTeamLogEventTypeArgGovernancePolicyExportRemoved + } + + @objc + public var asGovernancePolicyRemoveFolders: DBXTeamLogEventTypeArgGovernancePolicyRemoveFolders? { + return self as? DBXTeamLogEventTypeArgGovernancePolicyRemoveFolders + } + + @objc + public var asGovernancePolicyReportCreated: DBXTeamLogEventTypeArgGovernancePolicyReportCreated? { + return self as? DBXTeamLogEventTypeArgGovernancePolicyReportCreated + } + + @objc + public var asGovernancePolicyZipPartDownloaded: DBXTeamLogEventTypeArgGovernancePolicyZipPartDownloaded? { + return self as? DBXTeamLogEventTypeArgGovernancePolicyZipPartDownloaded + } + + @objc + public var asLegalHoldsActivateAHold: DBXTeamLogEventTypeArgLegalHoldsActivateAHold? { + return self as? DBXTeamLogEventTypeArgLegalHoldsActivateAHold + } + + @objc + public var asLegalHoldsAddMembers: DBXTeamLogEventTypeArgLegalHoldsAddMembers? { + return self as? DBXTeamLogEventTypeArgLegalHoldsAddMembers + } + + @objc + public var asLegalHoldsChangeHoldDetails: DBXTeamLogEventTypeArgLegalHoldsChangeHoldDetails? { + return self as? DBXTeamLogEventTypeArgLegalHoldsChangeHoldDetails + } + + @objc + public var asLegalHoldsChangeHoldName: DBXTeamLogEventTypeArgLegalHoldsChangeHoldName? { + return self as? DBXTeamLogEventTypeArgLegalHoldsChangeHoldName + } + + @objc + public var asLegalHoldsExportAHold: DBXTeamLogEventTypeArgLegalHoldsExportAHold? { + return self as? DBXTeamLogEventTypeArgLegalHoldsExportAHold + } + + @objc + public var asLegalHoldsExportCancelled: DBXTeamLogEventTypeArgLegalHoldsExportCancelled? { + return self as? DBXTeamLogEventTypeArgLegalHoldsExportCancelled + } + + @objc + public var asLegalHoldsExportDownloaded: DBXTeamLogEventTypeArgLegalHoldsExportDownloaded? { + return self as? DBXTeamLogEventTypeArgLegalHoldsExportDownloaded + } + + @objc + public var asLegalHoldsExportRemoved: DBXTeamLogEventTypeArgLegalHoldsExportRemoved? { + return self as? DBXTeamLogEventTypeArgLegalHoldsExportRemoved + } + + @objc + public var asLegalHoldsReleaseAHold: DBXTeamLogEventTypeArgLegalHoldsReleaseAHold? { + return self as? DBXTeamLogEventTypeArgLegalHoldsReleaseAHold + } + + @objc + public var asLegalHoldsRemoveMembers: DBXTeamLogEventTypeArgLegalHoldsRemoveMembers? { + return self as? DBXTeamLogEventTypeArgLegalHoldsRemoveMembers + } + + @objc + public var asLegalHoldsReportAHold: DBXTeamLogEventTypeArgLegalHoldsReportAHold? { + return self as? DBXTeamLogEventTypeArgLegalHoldsReportAHold + } + + @objc + public var asDeviceChangeIpDesktop: DBXTeamLogEventTypeArgDeviceChangeIpDesktop? { + return self as? DBXTeamLogEventTypeArgDeviceChangeIpDesktop + } + + @objc + public var asDeviceChangeIpMobile: DBXTeamLogEventTypeArgDeviceChangeIpMobile? { + return self as? DBXTeamLogEventTypeArgDeviceChangeIpMobile + } + + @objc + public var asDeviceChangeIpWeb: DBXTeamLogEventTypeArgDeviceChangeIpWeb? { + return self as? DBXTeamLogEventTypeArgDeviceChangeIpWeb + } + + @objc + public var asDeviceDeleteOnUnlinkFail: DBXTeamLogEventTypeArgDeviceDeleteOnUnlinkFail? { + return self as? DBXTeamLogEventTypeArgDeviceDeleteOnUnlinkFail + } + + @objc + public var asDeviceDeleteOnUnlinkSuccess: DBXTeamLogEventTypeArgDeviceDeleteOnUnlinkSuccess? { + return self as? DBXTeamLogEventTypeArgDeviceDeleteOnUnlinkSuccess + } + + @objc + public var asDeviceLinkFail: DBXTeamLogEventTypeArgDeviceLinkFail? { + return self as? DBXTeamLogEventTypeArgDeviceLinkFail + } + + @objc + public var asDeviceLinkSuccess: DBXTeamLogEventTypeArgDeviceLinkSuccess? { + return self as? DBXTeamLogEventTypeArgDeviceLinkSuccess + } + + @objc + public var asDeviceManagementDisabled: DBXTeamLogEventTypeArgDeviceManagementDisabled? { + return self as? DBXTeamLogEventTypeArgDeviceManagementDisabled + } + + @objc + public var asDeviceManagementEnabled: DBXTeamLogEventTypeArgDeviceManagementEnabled? { + return self as? DBXTeamLogEventTypeArgDeviceManagementEnabled + } + + @objc + public var asDeviceSyncBackupStatusChanged: DBXTeamLogEventTypeArgDeviceSyncBackupStatusChanged? { + return self as? DBXTeamLogEventTypeArgDeviceSyncBackupStatusChanged + } + + @objc + public var asDeviceUnlink: DBXTeamLogEventTypeArgDeviceUnlink? { + return self as? DBXTeamLogEventTypeArgDeviceUnlink + } + + @objc + public var asDropboxPasswordsExported: DBXTeamLogEventTypeArgDropboxPasswordsExported? { + return self as? DBXTeamLogEventTypeArgDropboxPasswordsExported + } + + @objc + public var asDropboxPasswordsNewDeviceEnrolled: DBXTeamLogEventTypeArgDropboxPasswordsNewDeviceEnrolled? { + return self as? DBXTeamLogEventTypeArgDropboxPasswordsNewDeviceEnrolled + } + + @objc + public var asEmmRefreshAuthToken: DBXTeamLogEventTypeArgEmmRefreshAuthToken? { + return self as? DBXTeamLogEventTypeArgEmmRefreshAuthToken + } + + @objc + public var asExternalDriveBackupEligibilityStatusChecked: DBXTeamLogEventTypeArgExternalDriveBackupEligibilityStatusChecked? { + return self as? DBXTeamLogEventTypeArgExternalDriveBackupEligibilityStatusChecked + } + + @objc + public var asExternalDriveBackupStatusChanged: DBXTeamLogEventTypeArgExternalDriveBackupStatusChanged? { + return self as? DBXTeamLogEventTypeArgExternalDriveBackupStatusChanged + } + + @objc + public var asAccountCaptureChangeAvailability: DBXTeamLogEventTypeArgAccountCaptureChangeAvailability? { + return self as? DBXTeamLogEventTypeArgAccountCaptureChangeAvailability + } + + @objc + public var asAccountCaptureMigrateAccount: DBXTeamLogEventTypeArgAccountCaptureMigrateAccount? { + return self as? DBXTeamLogEventTypeArgAccountCaptureMigrateAccount + } + + @objc + public var asAccountCaptureNotificationEmailsSent: DBXTeamLogEventTypeArgAccountCaptureNotificationEmailsSent? { + return self as? DBXTeamLogEventTypeArgAccountCaptureNotificationEmailsSent + } + + @objc + public var asAccountCaptureRelinquishAccount: DBXTeamLogEventTypeArgAccountCaptureRelinquishAccount? { + return self as? DBXTeamLogEventTypeArgAccountCaptureRelinquishAccount + } + + @objc + public var asDisabledDomainInvites: DBXTeamLogEventTypeArgDisabledDomainInvites? { + return self as? DBXTeamLogEventTypeArgDisabledDomainInvites + } + + @objc + public var asDomainInvitesApproveRequestToJoinTeam: DBXTeamLogEventTypeArgDomainInvitesApproveRequestToJoinTeam? { + return self as? DBXTeamLogEventTypeArgDomainInvitesApproveRequestToJoinTeam + } + + @objc + public var asDomainInvitesDeclineRequestToJoinTeam: DBXTeamLogEventTypeArgDomainInvitesDeclineRequestToJoinTeam? { + return self as? DBXTeamLogEventTypeArgDomainInvitesDeclineRequestToJoinTeam + } + + @objc + public var asDomainInvitesEmailExistingUsers: DBXTeamLogEventTypeArgDomainInvitesEmailExistingUsers? { + return self as? DBXTeamLogEventTypeArgDomainInvitesEmailExistingUsers + } + + @objc + public var asDomainInvitesRequestToJoinTeam: DBXTeamLogEventTypeArgDomainInvitesRequestToJoinTeam? { + return self as? DBXTeamLogEventTypeArgDomainInvitesRequestToJoinTeam + } + + @objc + public var asDomainInvitesSetInviteNewUserPrefToNo: DBXTeamLogEventTypeArgDomainInvitesSetInviteNewUserPrefToNo? { + return self as? DBXTeamLogEventTypeArgDomainInvitesSetInviteNewUserPrefToNo + } + + @objc + public var asDomainInvitesSetInviteNewUserPrefToYes: DBXTeamLogEventTypeArgDomainInvitesSetInviteNewUserPrefToYes? { + return self as? DBXTeamLogEventTypeArgDomainInvitesSetInviteNewUserPrefToYes + } + + @objc + public var asDomainVerificationAddDomainFail: DBXTeamLogEventTypeArgDomainVerificationAddDomainFail? { + return self as? DBXTeamLogEventTypeArgDomainVerificationAddDomainFail + } + + @objc + public var asDomainVerificationAddDomainSuccess: DBXTeamLogEventTypeArgDomainVerificationAddDomainSuccess? { + return self as? DBXTeamLogEventTypeArgDomainVerificationAddDomainSuccess + } + + @objc + public var asDomainVerificationRemoveDomain: DBXTeamLogEventTypeArgDomainVerificationRemoveDomain? { + return self as? DBXTeamLogEventTypeArgDomainVerificationRemoveDomain + } + + @objc + public var asEnabledDomainInvites: DBXTeamLogEventTypeArgEnabledDomainInvites? { + return self as? DBXTeamLogEventTypeArgEnabledDomainInvites + } + + @objc + public var asEncryptedFolderCancelTeamKeyRotation: DBXTeamLogEventTypeArgEncryptedFolderCancelTeamKeyRotation? { + return self as? DBXTeamLogEventTypeArgEncryptedFolderCancelTeamKeyRotation + } + + @objc + public var asEncryptedFolderEnrollBackupKey: DBXTeamLogEventTypeArgEncryptedFolderEnrollBackupKey? { + return self as? DBXTeamLogEventTypeArgEncryptedFolderEnrollBackupKey + } + + @objc + public var asEncryptedFolderEnrollClient: DBXTeamLogEventTypeArgEncryptedFolderEnrollClient? { + return self as? DBXTeamLogEventTypeArgEncryptedFolderEnrollClient + } + + @objc + public var asEncryptedFolderEnrollTeam: DBXTeamLogEventTypeArgEncryptedFolderEnrollTeam? { + return self as? DBXTeamLogEventTypeArgEncryptedFolderEnrollTeam + } + + @objc + public var asEncryptedFolderFinishTeamUnenrollment: DBXTeamLogEventTypeArgEncryptedFolderFinishTeamUnenrollment? { + return self as? DBXTeamLogEventTypeArgEncryptedFolderFinishTeamUnenrollment + } + + @objc + public var asEncryptedFolderInitTeamKeyRotation: DBXTeamLogEventTypeArgEncryptedFolderInitTeamKeyRotation? { + return self as? DBXTeamLogEventTypeArgEncryptedFolderInitTeamKeyRotation + } + + @objc + public var asEncryptedFolderInitTeamUnenrollment: DBXTeamLogEventTypeArgEncryptedFolderInitTeamUnenrollment? { + return self as? DBXTeamLogEventTypeArgEncryptedFolderInitTeamUnenrollment + } + + @objc + public var asEncryptedFolderRemoveBackupKey: DBXTeamLogEventTypeArgEncryptedFolderRemoveBackupKey? { + return self as? DBXTeamLogEventTypeArgEncryptedFolderRemoveBackupKey + } + + @objc + public var asEncryptedFolderRotateTeamKey: DBXTeamLogEventTypeArgEncryptedFolderRotateTeamKey? { + return self as? DBXTeamLogEventTypeArgEncryptedFolderRotateTeamKey + } + + @objc + public var asEncryptedFolderUnenrollClient: DBXTeamLogEventTypeArgEncryptedFolderUnenrollClient? { + return self as? DBXTeamLogEventTypeArgEncryptedFolderUnenrollClient + } + + @objc + public var asTeamEncryptionKeyActivateKey: DBXTeamLogEventTypeArgTeamEncryptionKeyActivateKey? { + return self as? DBXTeamLogEventTypeArgTeamEncryptionKeyActivateKey + } + + @objc + public var asTeamEncryptionKeyCancelKeyDeletion: DBXTeamLogEventTypeArgTeamEncryptionKeyCancelKeyDeletion? { + return self as? DBXTeamLogEventTypeArgTeamEncryptionKeyCancelKeyDeletion + } + + @objc + public var asTeamEncryptionKeyCreateKey: DBXTeamLogEventTypeArgTeamEncryptionKeyCreateKey? { + return self as? DBXTeamLogEventTypeArgTeamEncryptionKeyCreateKey + } + + @objc + public var asTeamEncryptionKeyDeactivateKey: DBXTeamLogEventTypeArgTeamEncryptionKeyDeactivateKey? { + return self as? DBXTeamLogEventTypeArgTeamEncryptionKeyDeactivateKey + } + + @objc + public var asTeamEncryptionKeyDeleteKey: DBXTeamLogEventTypeArgTeamEncryptionKeyDeleteKey? { + return self as? DBXTeamLogEventTypeArgTeamEncryptionKeyDeleteKey + } + + @objc + public var asTeamEncryptionKeyDisableKey: DBXTeamLogEventTypeArgTeamEncryptionKeyDisableKey? { + return self as? DBXTeamLogEventTypeArgTeamEncryptionKeyDisableKey + } + + @objc + public var asTeamEncryptionKeyEnableKey: DBXTeamLogEventTypeArgTeamEncryptionKeyEnableKey? { + return self as? DBXTeamLogEventTypeArgTeamEncryptionKeyEnableKey + } + + @objc + public var asTeamEncryptionKeyRotateKey: DBXTeamLogEventTypeArgTeamEncryptionKeyRotateKey? { + return self as? DBXTeamLogEventTypeArgTeamEncryptionKeyRotateKey + } + + @objc + public var asTeamEncryptionKeyScheduleKeyDeletion: DBXTeamLogEventTypeArgTeamEncryptionKeyScheduleKeyDeletion? { + return self as? DBXTeamLogEventTypeArgTeamEncryptionKeyScheduleKeyDeletion + } + + @objc + public var asApplyNamingConvention: DBXTeamLogEventTypeArgApplyNamingConvention? { + return self as? DBXTeamLogEventTypeArgApplyNamingConvention + } + + @objc + public var asCreateFolder: DBXTeamLogEventTypeArgCreateFolder? { + return self as? DBXTeamLogEventTypeArgCreateFolder + } + + @objc + public var asFileAdd: DBXTeamLogEventTypeArgFileAdd? { + return self as? DBXTeamLogEventTypeArgFileAdd + } + + @objc + public var asFileAddFromAutomation: DBXTeamLogEventTypeArgFileAddFromAutomation? { + return self as? DBXTeamLogEventTypeArgFileAddFromAutomation + } + + @objc + public var asFileCopy: DBXTeamLogEventTypeArgFileCopy? { + return self as? DBXTeamLogEventTypeArgFileCopy + } + + @objc + public var asFileDelete: DBXTeamLogEventTypeArgFileDelete? { + return self as? DBXTeamLogEventTypeArgFileDelete + } + + @objc + public var asFileDownload: DBXTeamLogEventTypeArgFileDownload? { + return self as? DBXTeamLogEventTypeArgFileDownload + } + + @objc + public var asFileEdit: DBXTeamLogEventTypeArgFileEdit? { + return self as? DBXTeamLogEventTypeArgFileEdit + } + + @objc + public var asFileGetCopyReference: DBXTeamLogEventTypeArgFileGetCopyReference? { + return self as? DBXTeamLogEventTypeArgFileGetCopyReference + } + + @objc + public var asFileLockingLockStatusChanged: DBXTeamLogEventTypeArgFileLockingLockStatusChanged? { + return self as? DBXTeamLogEventTypeArgFileLockingLockStatusChanged + } + + @objc + public var asFileMove: DBXTeamLogEventTypeArgFileMove? { + return self as? DBXTeamLogEventTypeArgFileMove + } + + @objc + public var asFilePermanentlyDelete: DBXTeamLogEventTypeArgFilePermanentlyDelete? { + return self as? DBXTeamLogEventTypeArgFilePermanentlyDelete + } + + @objc + public var asFilePreview: DBXTeamLogEventTypeArgFilePreview? { + return self as? DBXTeamLogEventTypeArgFilePreview + } + + @objc + public var asFileRename: DBXTeamLogEventTypeArgFileRename? { + return self as? DBXTeamLogEventTypeArgFileRename + } + + @objc + public var asFileRestore: DBXTeamLogEventTypeArgFileRestore? { + return self as? DBXTeamLogEventTypeArgFileRestore + } + + @objc + public var asFileRevert: DBXTeamLogEventTypeArgFileRevert? { + return self as? DBXTeamLogEventTypeArgFileRevert + } + + @objc + public var asFileRollbackChanges: DBXTeamLogEventTypeArgFileRollbackChanges? { + return self as? DBXTeamLogEventTypeArgFileRollbackChanges + } + + @objc + public var asFileSaveCopyReference: DBXTeamLogEventTypeArgFileSaveCopyReference? { + return self as? DBXTeamLogEventTypeArgFileSaveCopyReference + } + + @objc + public var asFolderOverviewDescriptionChanged: DBXTeamLogEventTypeArgFolderOverviewDescriptionChanged? { + return self as? DBXTeamLogEventTypeArgFolderOverviewDescriptionChanged + } + + @objc + public var asFolderOverviewItemPinned: DBXTeamLogEventTypeArgFolderOverviewItemPinned? { + return self as? DBXTeamLogEventTypeArgFolderOverviewItemPinned + } + + @objc + public var asFolderOverviewItemUnpinned: DBXTeamLogEventTypeArgFolderOverviewItemUnpinned? { + return self as? DBXTeamLogEventTypeArgFolderOverviewItemUnpinned + } + + @objc + public var asMediaHubFileDownloaded: DBXTeamLogEventTypeArgMediaHubFileDownloaded? { + return self as? DBXTeamLogEventTypeArgMediaHubFileDownloaded + } + + @objc + public var asObjectLabelAdded: DBXTeamLogEventTypeArgObjectLabelAdded? { + return self as? DBXTeamLogEventTypeArgObjectLabelAdded + } + + @objc + public var asObjectLabelRemoved: DBXTeamLogEventTypeArgObjectLabelRemoved? { + return self as? DBXTeamLogEventTypeArgObjectLabelRemoved + } + + @objc + public var asObjectLabelUpdatedValue: DBXTeamLogEventTypeArgObjectLabelUpdatedValue? { + return self as? DBXTeamLogEventTypeArgObjectLabelUpdatedValue + } + + @objc + public var asOrganizeFolderWithTidy: DBXTeamLogEventTypeArgOrganizeFolderWithTidy? { + return self as? DBXTeamLogEventTypeArgOrganizeFolderWithTidy + } + + @objc + public var asReplayFileDelete: DBXTeamLogEventTypeArgReplayFileDelete? { + return self as? DBXTeamLogEventTypeArgReplayFileDelete + } + + @objc + public var asReplayFileDownloaded: DBXTeamLogEventTypeArgReplayFileDownloaded? { + return self as? DBXTeamLogEventTypeArgReplayFileDownloaded + } + + @objc + public var asReplayTeamProjectCreated: DBXTeamLogEventTypeArgReplayTeamProjectCreated? { + return self as? DBXTeamLogEventTypeArgReplayTeamProjectCreated + } + + @objc + public var asRewindFolder: DBXTeamLogEventTypeArgRewindFolder? { + return self as? DBXTeamLogEventTypeArgRewindFolder + } + + @objc + public var asUndoNamingConvention: DBXTeamLogEventTypeArgUndoNamingConvention? { + return self as? DBXTeamLogEventTypeArgUndoNamingConvention + } + + @objc + public var asUndoOrganizeFolderWithTidy: DBXTeamLogEventTypeArgUndoOrganizeFolderWithTidy? { + return self as? DBXTeamLogEventTypeArgUndoOrganizeFolderWithTidy + } + + @objc + public var asUserTagsAdded: DBXTeamLogEventTypeArgUserTagsAdded? { + return self as? DBXTeamLogEventTypeArgUserTagsAdded + } + + @objc + public var asUserTagsRemoved: DBXTeamLogEventTypeArgUserTagsRemoved? { + return self as? DBXTeamLogEventTypeArgUserTagsRemoved + } + + @objc + public var asEmailIngestReceiveFile: DBXTeamLogEventTypeArgEmailIngestReceiveFile? { + return self as? DBXTeamLogEventTypeArgEmailIngestReceiveFile + } + + @objc + public var asFileRequestAutoClose: DBXTeamLogEventTypeArgFileRequestAutoClose? { + return self as? DBXTeamLogEventTypeArgFileRequestAutoClose + } + + @objc + public var asFileRequestChange: DBXTeamLogEventTypeArgFileRequestChange? { + return self as? DBXTeamLogEventTypeArgFileRequestChange + } + + @objc + public var asFileRequestClose: DBXTeamLogEventTypeArgFileRequestClose? { + return self as? DBXTeamLogEventTypeArgFileRequestClose + } + + @objc + public var asFileRequestCreate: DBXTeamLogEventTypeArgFileRequestCreate? { + return self as? DBXTeamLogEventTypeArgFileRequestCreate + } + + @objc + public var asFileRequestDelete: DBXTeamLogEventTypeArgFileRequestDelete? { + return self as? DBXTeamLogEventTypeArgFileRequestDelete + } + + @objc + public var asFileRequestReceiveFile: DBXTeamLogEventTypeArgFileRequestReceiveFile? { + return self as? DBXTeamLogEventTypeArgFileRequestReceiveFile + } + + @objc + public var asGroupAddExternalId: DBXTeamLogEventTypeArgGroupAddExternalId? { + return self as? DBXTeamLogEventTypeArgGroupAddExternalId + } + + @objc + public var asGroupAddMember: DBXTeamLogEventTypeArgGroupAddMember? { + return self as? DBXTeamLogEventTypeArgGroupAddMember + } + + @objc + public var asGroupChangeExternalId: DBXTeamLogEventTypeArgGroupChangeExternalId? { + return self as? DBXTeamLogEventTypeArgGroupChangeExternalId + } + + @objc + public var asGroupChangeManagementType: DBXTeamLogEventTypeArgGroupChangeManagementType? { + return self as? DBXTeamLogEventTypeArgGroupChangeManagementType + } + + @objc + public var asGroupChangeMemberRole: DBXTeamLogEventTypeArgGroupChangeMemberRole? { + return self as? DBXTeamLogEventTypeArgGroupChangeMemberRole + } + + @objc + public var asGroupCreate: DBXTeamLogEventTypeArgGroupCreate? { + return self as? DBXTeamLogEventTypeArgGroupCreate + } + + @objc + public var asGroupDelete: DBXTeamLogEventTypeArgGroupDelete? { + return self as? DBXTeamLogEventTypeArgGroupDelete + } + + @objc + public var asGroupDescriptionUpdated: DBXTeamLogEventTypeArgGroupDescriptionUpdated? { + return self as? DBXTeamLogEventTypeArgGroupDescriptionUpdated + } + + @objc + public var asGroupExternalSharingSettingOverrideChanged: DBXTeamLogEventTypeArgGroupExternalSharingSettingOverrideChanged? { + return self as? DBXTeamLogEventTypeArgGroupExternalSharingSettingOverrideChanged + } + + @objc + public var asGroupJoinPolicyUpdated: DBXTeamLogEventTypeArgGroupJoinPolicyUpdated? { + return self as? DBXTeamLogEventTypeArgGroupJoinPolicyUpdated + } + + @objc + public var asGroupMoved: DBXTeamLogEventTypeArgGroupMoved? { + return self as? DBXTeamLogEventTypeArgGroupMoved + } + + @objc + public var asGroupRemoveExternalId: DBXTeamLogEventTypeArgGroupRemoveExternalId? { + return self as? DBXTeamLogEventTypeArgGroupRemoveExternalId + } + + @objc + public var asGroupRemoveMember: DBXTeamLogEventTypeArgGroupRemoveMember? { + return self as? DBXTeamLogEventTypeArgGroupRemoveMember + } + + @objc + public var asGroupRename: DBXTeamLogEventTypeArgGroupRename? { + return self as? DBXTeamLogEventTypeArgGroupRename + } + + @objc + public var asAccountLockOrUnlocked: DBXTeamLogEventTypeArgAccountLockOrUnlocked? { + return self as? DBXTeamLogEventTypeArgAccountLockOrUnlocked + } + + @objc + public var asEmmError: DBXTeamLogEventTypeArgEmmError? { + return self as? DBXTeamLogEventTypeArgEmmError + } + + @objc + public var asGuestAdminSignedInViaTrustedTeams: DBXTeamLogEventTypeArgGuestAdminSignedInViaTrustedTeams? { + return self as? DBXTeamLogEventTypeArgGuestAdminSignedInViaTrustedTeams + } + + @objc + public var asGuestAdminSignedOutViaTrustedTeams: DBXTeamLogEventTypeArgGuestAdminSignedOutViaTrustedTeams? { + return self as? DBXTeamLogEventTypeArgGuestAdminSignedOutViaTrustedTeams + } + + @objc + public var asLoginFail: DBXTeamLogEventTypeArgLoginFail? { + return self as? DBXTeamLogEventTypeArgLoginFail + } + + @objc + public var asLoginSuccess: DBXTeamLogEventTypeArgLoginSuccess? { + return self as? DBXTeamLogEventTypeArgLoginSuccess + } + + @objc + public var asLogout: DBXTeamLogEventTypeArgLogout? { + return self as? DBXTeamLogEventTypeArgLogout + } + + @objc + public var asResellerSupportSessionEnd: DBXTeamLogEventTypeArgResellerSupportSessionEnd? { + return self as? DBXTeamLogEventTypeArgResellerSupportSessionEnd + } + + @objc + public var asResellerSupportSessionStart: DBXTeamLogEventTypeArgResellerSupportSessionStart? { + return self as? DBXTeamLogEventTypeArgResellerSupportSessionStart + } + + @objc + public var asSignInAsSessionEnd: DBXTeamLogEventTypeArgSignInAsSessionEnd? { + return self as? DBXTeamLogEventTypeArgSignInAsSessionEnd + } + + @objc + public var asSignInAsSessionStart: DBXTeamLogEventTypeArgSignInAsSessionStart? { + return self as? DBXTeamLogEventTypeArgSignInAsSessionStart + } + + @objc + public var asSsoError: DBXTeamLogEventTypeArgSsoError? { + return self as? DBXTeamLogEventTypeArgSsoError + } + + @objc + public var asAddonAssigned: DBXTeamLogEventTypeArgAddonAssigned? { + return self as? DBXTeamLogEventTypeArgAddonAssigned + } + + @objc + public var asAddonRemoved: DBXTeamLogEventTypeArgAddonRemoved? { + return self as? DBXTeamLogEventTypeArgAddonRemoved + } + + @objc + public var asBackupAdminInvitationSent: DBXTeamLogEventTypeArgBackupAdminInvitationSent? { + return self as? DBXTeamLogEventTypeArgBackupAdminInvitationSent + } + + @objc + public var asBackupInvitationOpened: DBXTeamLogEventTypeArgBackupInvitationOpened? { + return self as? DBXTeamLogEventTypeArgBackupInvitationOpened + } + + @objc + public var asCreateTeamInviteLink: DBXTeamLogEventTypeArgCreateTeamInviteLink? { + return self as? DBXTeamLogEventTypeArgCreateTeamInviteLink + } + + @objc + public var asDeleteTeamInviteLink: DBXTeamLogEventTypeArgDeleteTeamInviteLink? { + return self as? DBXTeamLogEventTypeArgDeleteTeamInviteLink + } + + @objc + public var asMemberAddExternalId: DBXTeamLogEventTypeArgMemberAddExternalId? { + return self as? DBXTeamLogEventTypeArgMemberAddExternalId + } + + @objc + public var asMemberAddName: DBXTeamLogEventTypeArgMemberAddName? { + return self as? DBXTeamLogEventTypeArgMemberAddName + } + + @objc + public var asMemberChangeAdminRole: DBXTeamLogEventTypeArgMemberChangeAdminRole? { + return self as? DBXTeamLogEventTypeArgMemberChangeAdminRole + } + + @objc + public var asMemberChangeEmail: DBXTeamLogEventTypeArgMemberChangeEmail? { + return self as? DBXTeamLogEventTypeArgMemberChangeEmail + } + + @objc + public var asMemberChangeExternalId: DBXTeamLogEventTypeArgMemberChangeExternalId? { + return self as? DBXTeamLogEventTypeArgMemberChangeExternalId + } + + @objc + public var asMemberChangeMembershipType: DBXTeamLogEventTypeArgMemberChangeMembershipType? { + return self as? DBXTeamLogEventTypeArgMemberChangeMembershipType + } + + @objc + public var asMemberChangeName: DBXTeamLogEventTypeArgMemberChangeName? { + return self as? DBXTeamLogEventTypeArgMemberChangeName + } + + @objc + public var asMemberChangeResellerRole: DBXTeamLogEventTypeArgMemberChangeResellerRole? { + return self as? DBXTeamLogEventTypeArgMemberChangeResellerRole + } + + @objc + public var asMemberChangeStatus: DBXTeamLogEventTypeArgMemberChangeStatus? { + return self as? DBXTeamLogEventTypeArgMemberChangeStatus + } + + @objc + public var asMemberDeleteManualContacts: DBXTeamLogEventTypeArgMemberDeleteManualContacts? { + return self as? DBXTeamLogEventTypeArgMemberDeleteManualContacts + } + + @objc + public var asMemberDeleteProfilePhoto: DBXTeamLogEventTypeArgMemberDeleteProfilePhoto? { + return self as? DBXTeamLogEventTypeArgMemberDeleteProfilePhoto + } + + @objc + public var asMemberFolderContentsAccessed: DBXTeamLogEventTypeArgMemberFolderContentsAccessed? { + return self as? DBXTeamLogEventTypeArgMemberFolderContentsAccessed + } + + @objc + public var asMemberPermanentlyDeleteAccountContents: DBXTeamLogEventTypeArgMemberPermanentlyDeleteAccountContents? { + return self as? DBXTeamLogEventTypeArgMemberPermanentlyDeleteAccountContents + } + + @objc + public var asMemberRemoveExternalId: DBXTeamLogEventTypeArgMemberRemoveExternalId? { + return self as? DBXTeamLogEventTypeArgMemberRemoveExternalId + } + + @objc + public var asMemberSetProfilePhoto: DBXTeamLogEventTypeArgMemberSetProfilePhoto? { + return self as? DBXTeamLogEventTypeArgMemberSetProfilePhoto + } + + @objc + public var asMemberSpaceLimitsAddCustomQuota: DBXTeamLogEventTypeArgMemberSpaceLimitsAddCustomQuota? { + return self as? DBXTeamLogEventTypeArgMemberSpaceLimitsAddCustomQuota + } + + @objc + public var asMemberSpaceLimitsChangeCustomQuota: DBXTeamLogEventTypeArgMemberSpaceLimitsChangeCustomQuota? { + return self as? DBXTeamLogEventTypeArgMemberSpaceLimitsChangeCustomQuota + } + + @objc + public var asMemberSpaceLimitsChangeStatus: DBXTeamLogEventTypeArgMemberSpaceLimitsChangeStatus? { + return self as? DBXTeamLogEventTypeArgMemberSpaceLimitsChangeStatus + } + + @objc + public var asMemberSpaceLimitsRemoveCustomQuota: DBXTeamLogEventTypeArgMemberSpaceLimitsRemoveCustomQuota? { + return self as? DBXTeamLogEventTypeArgMemberSpaceLimitsRemoveCustomQuota + } + + @objc + public var asMemberSuggest: DBXTeamLogEventTypeArgMemberSuggest? { + return self as? DBXTeamLogEventTypeArgMemberSuggest + } + + @objc + public var asMemberTransferAccountContents: DBXTeamLogEventTypeArgMemberTransferAccountContents? { + return self as? DBXTeamLogEventTypeArgMemberTransferAccountContents + } + + @objc + public var asPendingSecondaryEmailAdded: DBXTeamLogEventTypeArgPendingSecondaryEmailAdded? { + return self as? DBXTeamLogEventTypeArgPendingSecondaryEmailAdded + } + + @objc + public var asProductAssignedToMember: DBXTeamLogEventTypeArgProductAssignedToMember? { + return self as? DBXTeamLogEventTypeArgProductAssignedToMember + } + + @objc + public var asProductRemovedFromMember: DBXTeamLogEventTypeArgProductRemovedFromMember? { + return self as? DBXTeamLogEventTypeArgProductRemovedFromMember + } + + @objc + public var asSecondaryEmailDeleted: DBXTeamLogEventTypeArgSecondaryEmailDeleted? { + return self as? DBXTeamLogEventTypeArgSecondaryEmailDeleted + } + + @objc + public var asSecondaryEmailVerified: DBXTeamLogEventTypeArgSecondaryEmailVerified? { + return self as? DBXTeamLogEventTypeArgSecondaryEmailVerified + } + + @objc + public var asSecondaryMailsPolicyChanged: DBXTeamLogEventTypeArgSecondaryMailsPolicyChanged? { + return self as? DBXTeamLogEventTypeArgSecondaryMailsPolicyChanged + } + + @objc + public var asBinderAddPage: DBXTeamLogEventTypeArgBinderAddPage? { + return self as? DBXTeamLogEventTypeArgBinderAddPage + } + + @objc + public var asBinderAddSection: DBXTeamLogEventTypeArgBinderAddSection? { + return self as? DBXTeamLogEventTypeArgBinderAddSection + } + + @objc + public var asBinderRemovePage: DBXTeamLogEventTypeArgBinderRemovePage? { + return self as? DBXTeamLogEventTypeArgBinderRemovePage + } + + @objc + public var asBinderRemoveSection: DBXTeamLogEventTypeArgBinderRemoveSection? { + return self as? DBXTeamLogEventTypeArgBinderRemoveSection + } + + @objc + public var asBinderRenamePage: DBXTeamLogEventTypeArgBinderRenamePage? { + return self as? DBXTeamLogEventTypeArgBinderRenamePage + } + + @objc + public var asBinderRenameSection: DBXTeamLogEventTypeArgBinderRenameSection? { + return self as? DBXTeamLogEventTypeArgBinderRenameSection + } + + @objc + public var asBinderReorderPage: DBXTeamLogEventTypeArgBinderReorderPage? { + return self as? DBXTeamLogEventTypeArgBinderReorderPage + } + + @objc + public var asBinderReorderSection: DBXTeamLogEventTypeArgBinderReorderSection? { + return self as? DBXTeamLogEventTypeArgBinderReorderSection + } + + @objc + public var asPaperContentAddMember: DBXTeamLogEventTypeArgPaperContentAddMember? { + return self as? DBXTeamLogEventTypeArgPaperContentAddMember + } + + @objc + public var asPaperContentAddToFolder: DBXTeamLogEventTypeArgPaperContentAddToFolder? { + return self as? DBXTeamLogEventTypeArgPaperContentAddToFolder + } + + @objc + public var asPaperContentArchive: DBXTeamLogEventTypeArgPaperContentArchive? { + return self as? DBXTeamLogEventTypeArgPaperContentArchive + } + + @objc + public var asPaperContentCreate: DBXTeamLogEventTypeArgPaperContentCreate? { + return self as? DBXTeamLogEventTypeArgPaperContentCreate + } + + @objc + public var asPaperContentPermanentlyDelete: DBXTeamLogEventTypeArgPaperContentPermanentlyDelete? { + return self as? DBXTeamLogEventTypeArgPaperContentPermanentlyDelete + } + + @objc + public var asPaperContentRemoveFromFolder: DBXTeamLogEventTypeArgPaperContentRemoveFromFolder? { + return self as? DBXTeamLogEventTypeArgPaperContentRemoveFromFolder + } + + @objc + public var asPaperContentRemoveMember: DBXTeamLogEventTypeArgPaperContentRemoveMember? { + return self as? DBXTeamLogEventTypeArgPaperContentRemoveMember + } + + @objc + public var asPaperContentRename: DBXTeamLogEventTypeArgPaperContentRename? { + return self as? DBXTeamLogEventTypeArgPaperContentRename + } + + @objc + public var asPaperContentRestore: DBXTeamLogEventTypeArgPaperContentRestore? { + return self as? DBXTeamLogEventTypeArgPaperContentRestore + } + + @objc + public var asPaperDocAddComment: DBXTeamLogEventTypeArgPaperDocAddComment? { + return self as? DBXTeamLogEventTypeArgPaperDocAddComment + } + + @objc + public var asPaperDocChangeMemberRole: DBXTeamLogEventTypeArgPaperDocChangeMemberRole? { + return self as? DBXTeamLogEventTypeArgPaperDocChangeMemberRole + } + + @objc + public var asPaperDocChangeSharingPolicy: DBXTeamLogEventTypeArgPaperDocChangeSharingPolicy? { + return self as? DBXTeamLogEventTypeArgPaperDocChangeSharingPolicy + } + + @objc + public var asPaperDocChangeSubscription: DBXTeamLogEventTypeArgPaperDocChangeSubscription? { + return self as? DBXTeamLogEventTypeArgPaperDocChangeSubscription + } + + @objc + public var asPaperDocDeleted: DBXTeamLogEventTypeArgPaperDocDeleted? { + return self as? DBXTeamLogEventTypeArgPaperDocDeleted + } + + @objc + public var asPaperDocDeleteComment: DBXTeamLogEventTypeArgPaperDocDeleteComment? { + return self as? DBXTeamLogEventTypeArgPaperDocDeleteComment + } + + @objc + public var asPaperDocDownload: DBXTeamLogEventTypeArgPaperDocDownload? { + return self as? DBXTeamLogEventTypeArgPaperDocDownload + } + + @objc + public var asPaperDocEdit: DBXTeamLogEventTypeArgPaperDocEdit? { + return self as? DBXTeamLogEventTypeArgPaperDocEdit + } + + @objc + public var asPaperDocEditComment: DBXTeamLogEventTypeArgPaperDocEditComment? { + return self as? DBXTeamLogEventTypeArgPaperDocEditComment + } + + @objc + public var asPaperDocFollowed: DBXTeamLogEventTypeArgPaperDocFollowed? { + return self as? DBXTeamLogEventTypeArgPaperDocFollowed + } + + @objc + public var asPaperDocMention: DBXTeamLogEventTypeArgPaperDocMention? { + return self as? DBXTeamLogEventTypeArgPaperDocMention + } + + @objc + public var asPaperDocOwnershipChanged: DBXTeamLogEventTypeArgPaperDocOwnershipChanged? { + return self as? DBXTeamLogEventTypeArgPaperDocOwnershipChanged + } + + @objc + public var asPaperDocRequestAccess: DBXTeamLogEventTypeArgPaperDocRequestAccess? { + return self as? DBXTeamLogEventTypeArgPaperDocRequestAccess + } + + @objc + public var asPaperDocResolveComment: DBXTeamLogEventTypeArgPaperDocResolveComment? { + return self as? DBXTeamLogEventTypeArgPaperDocResolveComment + } + + @objc + public var asPaperDocRevert: DBXTeamLogEventTypeArgPaperDocRevert? { + return self as? DBXTeamLogEventTypeArgPaperDocRevert + } + + @objc + public var asPaperDocSlackShare: DBXTeamLogEventTypeArgPaperDocSlackShare? { + return self as? DBXTeamLogEventTypeArgPaperDocSlackShare + } + + @objc + public var asPaperDocTeamInvite: DBXTeamLogEventTypeArgPaperDocTeamInvite? { + return self as? DBXTeamLogEventTypeArgPaperDocTeamInvite + } + + @objc + public var asPaperDocTrashed: DBXTeamLogEventTypeArgPaperDocTrashed? { + return self as? DBXTeamLogEventTypeArgPaperDocTrashed + } + + @objc + public var asPaperDocUnresolveComment: DBXTeamLogEventTypeArgPaperDocUnresolveComment? { + return self as? DBXTeamLogEventTypeArgPaperDocUnresolveComment + } + + @objc + public var asPaperDocUntrashed: DBXTeamLogEventTypeArgPaperDocUntrashed? { + return self as? DBXTeamLogEventTypeArgPaperDocUntrashed + } + + @objc + public var asPaperDocView: DBXTeamLogEventTypeArgPaperDocView? { + return self as? DBXTeamLogEventTypeArgPaperDocView + } + + @objc + public var asPaperExternalViewAllow: DBXTeamLogEventTypeArgPaperExternalViewAllow? { + return self as? DBXTeamLogEventTypeArgPaperExternalViewAllow + } + + @objc + public var asPaperExternalViewDefaultTeam: DBXTeamLogEventTypeArgPaperExternalViewDefaultTeam? { + return self as? DBXTeamLogEventTypeArgPaperExternalViewDefaultTeam + } + + @objc + public var asPaperExternalViewForbid: DBXTeamLogEventTypeArgPaperExternalViewForbid? { + return self as? DBXTeamLogEventTypeArgPaperExternalViewForbid + } + + @objc + public var asPaperFolderChangeSubscription: DBXTeamLogEventTypeArgPaperFolderChangeSubscription? { + return self as? DBXTeamLogEventTypeArgPaperFolderChangeSubscription + } + + @objc + public var asPaperFolderDeleted: DBXTeamLogEventTypeArgPaperFolderDeleted? { + return self as? DBXTeamLogEventTypeArgPaperFolderDeleted + } + + @objc + public var asPaperFolderFollowed: DBXTeamLogEventTypeArgPaperFolderFollowed? { + return self as? DBXTeamLogEventTypeArgPaperFolderFollowed + } + + @objc + public var asPaperFolderTeamInvite: DBXTeamLogEventTypeArgPaperFolderTeamInvite? { + return self as? DBXTeamLogEventTypeArgPaperFolderTeamInvite + } + + @objc + public var asPaperPublishedLinkChangePermission: DBXTeamLogEventTypeArgPaperPublishedLinkChangePermission? { + return self as? DBXTeamLogEventTypeArgPaperPublishedLinkChangePermission + } + + @objc + public var asPaperPublishedLinkCreate: DBXTeamLogEventTypeArgPaperPublishedLinkCreate? { + return self as? DBXTeamLogEventTypeArgPaperPublishedLinkCreate + } + + @objc + public var asPaperPublishedLinkDisabled: DBXTeamLogEventTypeArgPaperPublishedLinkDisabled? { + return self as? DBXTeamLogEventTypeArgPaperPublishedLinkDisabled + } + + @objc + public var asPaperPublishedLinkView: DBXTeamLogEventTypeArgPaperPublishedLinkView? { + return self as? DBXTeamLogEventTypeArgPaperPublishedLinkView + } + + @objc + public var asPasswordChange: DBXTeamLogEventTypeArgPasswordChange? { + return self as? DBXTeamLogEventTypeArgPasswordChange + } + + @objc + public var asPasswordReset: DBXTeamLogEventTypeArgPasswordReset? { + return self as? DBXTeamLogEventTypeArgPasswordReset + } + + @objc + public var asPasswordResetAll: DBXTeamLogEventTypeArgPasswordResetAll? { + return self as? DBXTeamLogEventTypeArgPasswordResetAll + } + + @objc + public var asProtectActionAddCollaborator: DBXTeamLogEventTypeArgProtectActionAddCollaborator? { + return self as? DBXTeamLogEventTypeArgProtectActionAddCollaborator + } + + @objc + public var asProtectActionAddLink: DBXTeamLogEventTypeArgProtectActionAddLink? { + return self as? DBXTeamLogEventTypeArgProtectActionAddLink + } + + @objc + public var asProtectActionDelete: DBXTeamLogEventTypeArgProtectActionDelete? { + return self as? DBXTeamLogEventTypeArgProtectActionDelete + } + + @objc + public var asProtectActionExport: DBXTeamLogEventTypeArgProtectActionExport? { + return self as? DBXTeamLogEventTypeArgProtectActionExport + } + + @objc + public var asProtectActionRemoveCollaborator: DBXTeamLogEventTypeArgProtectActionRemoveCollaborator? { + return self as? DBXTeamLogEventTypeArgProtectActionRemoveCollaborator + } + + @objc + public var asProtectActionRemoveLink: DBXTeamLogEventTypeArgProtectActionRemoveLink? { + return self as? DBXTeamLogEventTypeArgProtectActionRemoveLink + } + + @objc + public var asProtectActionStopSharing: DBXTeamLogEventTypeArgProtectActionStopSharing? { + return self as? DBXTeamLogEventTypeArgProtectActionStopSharing + } + + @objc + public var asProtectInternalDomainsChanged: DBXTeamLogEventTypeArgProtectInternalDomainsChanged? { + return self as? DBXTeamLogEventTypeArgProtectInternalDomainsChanged + } + + @objc + public var asClassificationCreateReport: DBXTeamLogEventTypeArgClassificationCreateReport? { + return self as? DBXTeamLogEventTypeArgClassificationCreateReport + } + + @objc + public var asClassificationCreateReportFail: DBXTeamLogEventTypeArgClassificationCreateReportFail? { + return self as? DBXTeamLogEventTypeArgClassificationCreateReportFail + } + + @objc + public var asEmmCreateExceptionsReport: DBXTeamLogEventTypeArgEmmCreateExceptionsReport? { + return self as? DBXTeamLogEventTypeArgEmmCreateExceptionsReport + } + + @objc + public var asEmmCreateUsageReport: DBXTeamLogEventTypeArgEmmCreateUsageReport? { + return self as? DBXTeamLogEventTypeArgEmmCreateUsageReport + } + + @objc + public var asExportMembersReport: DBXTeamLogEventTypeArgExportMembersReport? { + return self as? DBXTeamLogEventTypeArgExportMembersReport + } + + @objc + public var asExportMembersReportFail: DBXTeamLogEventTypeArgExportMembersReportFail? { + return self as? DBXTeamLogEventTypeArgExportMembersReportFail + } + + @objc + public var asExternalSharingCreateReport: DBXTeamLogEventTypeArgExternalSharingCreateReport? { + return self as? DBXTeamLogEventTypeArgExternalSharingCreateReport + } + + @objc + public var asExternalSharingReportFailed: DBXTeamLogEventTypeArgExternalSharingReportFailed? { + return self as? DBXTeamLogEventTypeArgExternalSharingReportFailed + } + + @objc + public var asMemberAccessDetailsCreateReport: DBXTeamLogEventTypeArgMemberAccessDetailsCreateReport? { + return self as? DBXTeamLogEventTypeArgMemberAccessDetailsCreateReport + } + + @objc + public var asMemberAccessDetailsCreateReportFailed: DBXTeamLogEventTypeArgMemberAccessDetailsCreateReportFailed? { + return self as? DBXTeamLogEventTypeArgMemberAccessDetailsCreateReportFailed + } + + @objc + public var asNoExpirationLinkGenCreateReport: DBXTeamLogEventTypeArgNoExpirationLinkGenCreateReport? { + return self as? DBXTeamLogEventTypeArgNoExpirationLinkGenCreateReport + } + + @objc + public var asNoExpirationLinkGenReportFailed: DBXTeamLogEventTypeArgNoExpirationLinkGenReportFailed? { + return self as? DBXTeamLogEventTypeArgNoExpirationLinkGenReportFailed + } + + @objc + public var asNoPasswordLinkGenCreateReport: DBXTeamLogEventTypeArgNoPasswordLinkGenCreateReport? { + return self as? DBXTeamLogEventTypeArgNoPasswordLinkGenCreateReport + } + + @objc + public var asNoPasswordLinkGenReportFailed: DBXTeamLogEventTypeArgNoPasswordLinkGenReportFailed? { + return self as? DBXTeamLogEventTypeArgNoPasswordLinkGenReportFailed + } + + @objc + public var asNoPasswordLinkViewCreateReport: DBXTeamLogEventTypeArgNoPasswordLinkViewCreateReport? { + return self as? DBXTeamLogEventTypeArgNoPasswordLinkViewCreateReport + } + + @objc + public var asNoPasswordLinkViewReportFailed: DBXTeamLogEventTypeArgNoPasswordLinkViewReportFailed? { + return self as? DBXTeamLogEventTypeArgNoPasswordLinkViewReportFailed + } + + @objc + public var asOutdatedLinkViewCreateReport: DBXTeamLogEventTypeArgOutdatedLinkViewCreateReport? { + return self as? DBXTeamLogEventTypeArgOutdatedLinkViewCreateReport + } + + @objc + public var asOutdatedLinkViewReportFailed: DBXTeamLogEventTypeArgOutdatedLinkViewReportFailed? { + return self as? DBXTeamLogEventTypeArgOutdatedLinkViewReportFailed + } + + @objc + public var asPaperAdminExportStart: DBXTeamLogEventTypeArgPaperAdminExportStart? { + return self as? DBXTeamLogEventTypeArgPaperAdminExportStart + } + + @objc + public var asRansomwareAlertCreateReport: DBXTeamLogEventTypeArgRansomwareAlertCreateReport? { + return self as? DBXTeamLogEventTypeArgRansomwareAlertCreateReport + } + + @objc + public var asRansomwareAlertCreateReportFailed: DBXTeamLogEventTypeArgRansomwareAlertCreateReportFailed? { + return self as? DBXTeamLogEventTypeArgRansomwareAlertCreateReportFailed + } + + @objc + public var asSharedFoldersCreateReport: DBXTeamLogEventTypeArgSharedFoldersCreateReport? { + return self as? DBXTeamLogEventTypeArgSharedFoldersCreateReport + } + + @objc + public var asSharedFoldersCreateReportFailed: DBXTeamLogEventTypeArgSharedFoldersCreateReportFailed? { + return self as? DBXTeamLogEventTypeArgSharedFoldersCreateReportFailed + } + + @objc + public var asSmartSyncCreateAdminPrivilegeReport: DBXTeamLogEventTypeArgSmartSyncCreateAdminPrivilegeReport? { + return self as? DBXTeamLogEventTypeArgSmartSyncCreateAdminPrivilegeReport + } + + @objc + public var asTeamActivityCreateReport: DBXTeamLogEventTypeArgTeamActivityCreateReport? { + return self as? DBXTeamLogEventTypeArgTeamActivityCreateReport + } + + @objc + public var asTeamActivityCreateReportFail: DBXTeamLogEventTypeArgTeamActivityCreateReportFail? { + return self as? DBXTeamLogEventTypeArgTeamActivityCreateReportFail + } + + @objc + public var asTeamFoldersCreateReport: DBXTeamLogEventTypeArgTeamFoldersCreateReport? { + return self as? DBXTeamLogEventTypeArgTeamFoldersCreateReport + } + + @objc + public var asTeamFoldersCreateReportFailed: DBXTeamLogEventTypeArgTeamFoldersCreateReportFailed? { + return self as? DBXTeamLogEventTypeArgTeamFoldersCreateReportFailed + } + + @objc + public var asTeamStorageCreateReport: DBXTeamLogEventTypeArgTeamStorageCreateReport? { + return self as? DBXTeamLogEventTypeArgTeamStorageCreateReport + } + + @objc + public var asTeamStorageCreateReportFailed: DBXTeamLogEventTypeArgTeamStorageCreateReportFailed? { + return self as? DBXTeamLogEventTypeArgTeamStorageCreateReportFailed + } + + @objc + public var asCollectionShare: DBXTeamLogEventTypeArgCollectionShare? { + return self as? DBXTeamLogEventTypeArgCollectionShare + } + + @objc + public var asFileTransfersFileAdd: DBXTeamLogEventTypeArgFileTransfersFileAdd? { + return self as? DBXTeamLogEventTypeArgFileTransfersFileAdd + } + + @objc + public var asFileTransfersTransferDelete: DBXTeamLogEventTypeArgFileTransfersTransferDelete? { + return self as? DBXTeamLogEventTypeArgFileTransfersTransferDelete + } + + @objc + public var asFileTransfersTransferDownload: DBXTeamLogEventTypeArgFileTransfersTransferDownload? { + return self as? DBXTeamLogEventTypeArgFileTransfersTransferDownload + } + + @objc + public var asFileTransfersTransferSend: DBXTeamLogEventTypeArgFileTransfersTransferSend? { + return self as? DBXTeamLogEventTypeArgFileTransfersTransferSend + } + + @objc + public var asFileTransfersTransferView: DBXTeamLogEventTypeArgFileTransfersTransferView? { + return self as? DBXTeamLogEventTypeArgFileTransfersTransferView + } + + @objc + public var asMediaHubProjectTeamAdd: DBXTeamLogEventTypeArgMediaHubProjectTeamAdd? { + return self as? DBXTeamLogEventTypeArgMediaHubProjectTeamAdd + } + + @objc + public var asMediaHubProjectTeamDelete: DBXTeamLogEventTypeArgMediaHubProjectTeamDelete? { + return self as? DBXTeamLogEventTypeArgMediaHubProjectTeamDelete + } + + @objc + public var asMediaHubProjectTeamRoleChanged: DBXTeamLogEventTypeArgMediaHubProjectTeamRoleChanged? { + return self as? DBXTeamLogEventTypeArgMediaHubProjectTeamRoleChanged + } + + @objc + public var asMediaHubSharedLinkAudienceChanged: DBXTeamLogEventTypeArgMediaHubSharedLinkAudienceChanged? { + return self as? DBXTeamLogEventTypeArgMediaHubSharedLinkAudienceChanged + } + + @objc + public var asMediaHubSharedLinkCreated: DBXTeamLogEventTypeArgMediaHubSharedLinkCreated? { + return self as? DBXTeamLogEventTypeArgMediaHubSharedLinkCreated + } + + @objc + public var asMediaHubSharedLinkDownloadSettingChanged: DBXTeamLogEventTypeArgMediaHubSharedLinkDownloadSettingChanged? { + return self as? DBXTeamLogEventTypeArgMediaHubSharedLinkDownloadSettingChanged + } + + @objc + public var asMediaHubSharedLinkRevoked: DBXTeamLogEventTypeArgMediaHubSharedLinkRevoked? { + return self as? DBXTeamLogEventTypeArgMediaHubSharedLinkRevoked + } + + @objc + public var asNoteAclInviteOnly: DBXTeamLogEventTypeArgNoteAclInviteOnly? { + return self as? DBXTeamLogEventTypeArgNoteAclInviteOnly + } + + @objc + public var asNoteAclLink: DBXTeamLogEventTypeArgNoteAclLink? { + return self as? DBXTeamLogEventTypeArgNoteAclLink + } + + @objc + public var asNoteAclTeamLink: DBXTeamLogEventTypeArgNoteAclTeamLink? { + return self as? DBXTeamLogEventTypeArgNoteAclTeamLink + } + + @objc + public var asNoteShared: DBXTeamLogEventTypeArgNoteShared? { + return self as? DBXTeamLogEventTypeArgNoteShared + } + + @objc + public var asNoteShareReceive: DBXTeamLogEventTypeArgNoteShareReceive? { + return self as? DBXTeamLogEventTypeArgNoteShareReceive + } + + @objc + public var asOpenNoteShared: DBXTeamLogEventTypeArgOpenNoteShared? { + return self as? DBXTeamLogEventTypeArgOpenNoteShared + } + + @objc + public var asReplayFileSharedLinkCreated: DBXTeamLogEventTypeArgReplayFileSharedLinkCreated? { + return self as? DBXTeamLogEventTypeArgReplayFileSharedLinkCreated + } + + @objc + public var asReplayFileSharedLinkModified: DBXTeamLogEventTypeArgReplayFileSharedLinkModified? { + return self as? DBXTeamLogEventTypeArgReplayFileSharedLinkModified + } + + @objc + public var asReplayProjectTeamAdd: DBXTeamLogEventTypeArgReplayProjectTeamAdd? { + return self as? DBXTeamLogEventTypeArgReplayProjectTeamAdd + } + + @objc + public var asReplayProjectTeamDelete: DBXTeamLogEventTypeArgReplayProjectTeamDelete? { + return self as? DBXTeamLogEventTypeArgReplayProjectTeamDelete + } + + @objc + public var asSendAndTrackFileAdded: DBXTeamLogEventTypeArgSendAndTrackFileAdded? { + return self as? DBXTeamLogEventTypeArgSendAndTrackFileAdded + } + + @objc + public var asSendAndTrackFileRenamed: DBXTeamLogEventTypeArgSendAndTrackFileRenamed? { + return self as? DBXTeamLogEventTypeArgSendAndTrackFileRenamed + } + + @objc + public var asSendAndTrackFileUpdated: DBXTeamLogEventTypeArgSendAndTrackFileUpdated? { + return self as? DBXTeamLogEventTypeArgSendAndTrackFileUpdated + } + + @objc + public var asSendAndTrackLinkCreated: DBXTeamLogEventTypeArgSendAndTrackLinkCreated? { + return self as? DBXTeamLogEventTypeArgSendAndTrackLinkCreated + } + + @objc + public var asSendAndTrackLinkDeleted: DBXTeamLogEventTypeArgSendAndTrackLinkDeleted? { + return self as? DBXTeamLogEventTypeArgSendAndTrackLinkDeleted + } + + @objc + public var asSendAndTrackLinkUpdated: DBXTeamLogEventTypeArgSendAndTrackLinkUpdated? { + return self as? DBXTeamLogEventTypeArgSendAndTrackLinkUpdated + } + + @objc + public var asSendAndTrackLinkViewed: DBXTeamLogEventTypeArgSendAndTrackLinkViewed? { + return self as? DBXTeamLogEventTypeArgSendAndTrackLinkViewed + } + + @objc + public var asSendAndTrackRemovedFileAndAssociatedLinks: DBXTeamLogEventTypeArgSendAndTrackRemovedFileAndAssociatedLinks? { + return self as? DBXTeamLogEventTypeArgSendAndTrackRemovedFileAndAssociatedLinks + } + + @objc + public var asSfAddGroup: DBXTeamLogEventTypeArgSfAddGroup? { + return self as? DBXTeamLogEventTypeArgSfAddGroup + } + + @objc + public var asSfAllowNonMembersToViewSharedLinks: DBXTeamLogEventTypeArgSfAllowNonMembersToViewSharedLinks? { + return self as? DBXTeamLogEventTypeArgSfAllowNonMembersToViewSharedLinks + } + + @objc + public var asSfExternalInviteWarn: DBXTeamLogEventTypeArgSfExternalInviteWarn? { + return self as? DBXTeamLogEventTypeArgSfExternalInviteWarn + } + + @objc + public var asSfFbInvite: DBXTeamLogEventTypeArgSfFbInvite? { + return self as? DBXTeamLogEventTypeArgSfFbInvite + } + + @objc + public var asSfFbInviteChangeRole: DBXTeamLogEventTypeArgSfFbInviteChangeRole? { + return self as? DBXTeamLogEventTypeArgSfFbInviteChangeRole + } + + @objc + public var asSfFbUninvite: DBXTeamLogEventTypeArgSfFbUninvite? { + return self as? DBXTeamLogEventTypeArgSfFbUninvite + } + + @objc + public var asSfInviteGroup: DBXTeamLogEventTypeArgSfInviteGroup? { + return self as? DBXTeamLogEventTypeArgSfInviteGroup + } + + @objc + public var asSfTeamGrantAccess: DBXTeamLogEventTypeArgSfTeamGrantAccess? { + return self as? DBXTeamLogEventTypeArgSfTeamGrantAccess + } + + @objc + public var asSfTeamInvite: DBXTeamLogEventTypeArgSfTeamInvite? { + return self as? DBXTeamLogEventTypeArgSfTeamInvite + } + + @objc + public var asSfTeamInviteChangeRole: DBXTeamLogEventTypeArgSfTeamInviteChangeRole? { + return self as? DBXTeamLogEventTypeArgSfTeamInviteChangeRole + } + + @objc + public var asSfTeamJoin: DBXTeamLogEventTypeArgSfTeamJoin? { + return self as? DBXTeamLogEventTypeArgSfTeamJoin + } + + @objc + public var asSfTeamJoinFromOobLink: DBXTeamLogEventTypeArgSfTeamJoinFromOobLink? { + return self as? DBXTeamLogEventTypeArgSfTeamJoinFromOobLink + } + + @objc + public var asSfTeamUninvite: DBXTeamLogEventTypeArgSfTeamUninvite? { + return self as? DBXTeamLogEventTypeArgSfTeamUninvite + } + + @objc + public var asSharedContentAddInvitees: DBXTeamLogEventTypeArgSharedContentAddInvitees? { + return self as? DBXTeamLogEventTypeArgSharedContentAddInvitees + } + + @objc + public var asSharedContentAddLinkExpiry: DBXTeamLogEventTypeArgSharedContentAddLinkExpiry? { + return self as? DBXTeamLogEventTypeArgSharedContentAddLinkExpiry + } + + @objc + public var asSharedContentAddLinkPassword: DBXTeamLogEventTypeArgSharedContentAddLinkPassword? { + return self as? DBXTeamLogEventTypeArgSharedContentAddLinkPassword + } + + @objc + public var asSharedContentAddMember: DBXTeamLogEventTypeArgSharedContentAddMember? { + return self as? DBXTeamLogEventTypeArgSharedContentAddMember + } + + @objc + public var asSharedContentChangeDownloadsPolicy: DBXTeamLogEventTypeArgSharedContentChangeDownloadsPolicy? { + return self as? DBXTeamLogEventTypeArgSharedContentChangeDownloadsPolicy + } + + @objc + public var asSharedContentChangeInviteeRole: DBXTeamLogEventTypeArgSharedContentChangeInviteeRole? { + return self as? DBXTeamLogEventTypeArgSharedContentChangeInviteeRole + } + + @objc + public var asSharedContentChangeLinkAudience: DBXTeamLogEventTypeArgSharedContentChangeLinkAudience? { + return self as? DBXTeamLogEventTypeArgSharedContentChangeLinkAudience + } + + @objc + public var asSharedContentChangeLinkExpiry: DBXTeamLogEventTypeArgSharedContentChangeLinkExpiry? { + return self as? DBXTeamLogEventTypeArgSharedContentChangeLinkExpiry + } + + @objc + public var asSharedContentChangeLinkPassword: DBXTeamLogEventTypeArgSharedContentChangeLinkPassword? { + return self as? DBXTeamLogEventTypeArgSharedContentChangeLinkPassword + } + + @objc + public var asSharedContentChangeMemberRole: DBXTeamLogEventTypeArgSharedContentChangeMemberRole? { + return self as? DBXTeamLogEventTypeArgSharedContentChangeMemberRole + } + + @objc + public var asSharedContentChangeViewerInfoPolicy: DBXTeamLogEventTypeArgSharedContentChangeViewerInfoPolicy? { + return self as? DBXTeamLogEventTypeArgSharedContentChangeViewerInfoPolicy + } + + @objc + public var asSharedContentClaimInvitation: DBXTeamLogEventTypeArgSharedContentClaimInvitation? { + return self as? DBXTeamLogEventTypeArgSharedContentClaimInvitation + } + + @objc + public var asSharedContentCopy: DBXTeamLogEventTypeArgSharedContentCopy? { + return self as? DBXTeamLogEventTypeArgSharedContentCopy + } + + @objc + public var asSharedContentDownload: DBXTeamLogEventTypeArgSharedContentDownload? { + return self as? DBXTeamLogEventTypeArgSharedContentDownload + } + + @objc + public var asSharedContentRelinquishMembership: DBXTeamLogEventTypeArgSharedContentRelinquishMembership? { + return self as? DBXTeamLogEventTypeArgSharedContentRelinquishMembership + } + + @objc + public var asSharedContentRemoveInvitees: DBXTeamLogEventTypeArgSharedContentRemoveInvitees? { + return self as? DBXTeamLogEventTypeArgSharedContentRemoveInvitees + } + + @objc + public var asSharedContentRemoveLinkExpiry: DBXTeamLogEventTypeArgSharedContentRemoveLinkExpiry? { + return self as? DBXTeamLogEventTypeArgSharedContentRemoveLinkExpiry + } + + @objc + public var asSharedContentRemoveLinkPassword: DBXTeamLogEventTypeArgSharedContentRemoveLinkPassword? { + return self as? DBXTeamLogEventTypeArgSharedContentRemoveLinkPassword + } + + @objc + public var asSharedContentRemoveMember: DBXTeamLogEventTypeArgSharedContentRemoveMember? { + return self as? DBXTeamLogEventTypeArgSharedContentRemoveMember + } + + @objc + public var asSharedContentRequestAccess: DBXTeamLogEventTypeArgSharedContentRequestAccess? { + return self as? DBXTeamLogEventTypeArgSharedContentRequestAccess + } + + @objc + public var asSharedContentRestoreInvitees: DBXTeamLogEventTypeArgSharedContentRestoreInvitees? { + return self as? DBXTeamLogEventTypeArgSharedContentRestoreInvitees + } + + @objc + public var asSharedContentRestoreMember: DBXTeamLogEventTypeArgSharedContentRestoreMember? { + return self as? DBXTeamLogEventTypeArgSharedContentRestoreMember + } + + @objc + public var asSharedContentUnshare: DBXTeamLogEventTypeArgSharedContentUnshare? { + return self as? DBXTeamLogEventTypeArgSharedContentUnshare + } + + @objc + public var asSharedContentView: DBXTeamLogEventTypeArgSharedContentView? { + return self as? DBXTeamLogEventTypeArgSharedContentView + } + + @objc + public var asSharedFolderChangeLinkPolicy: DBXTeamLogEventTypeArgSharedFolderChangeLinkPolicy? { + return self as? DBXTeamLogEventTypeArgSharedFolderChangeLinkPolicy + } + + @objc + public var asSharedFolderChangeMembersInheritancePolicy: DBXTeamLogEventTypeArgSharedFolderChangeMembersInheritancePolicy? { + return self as? DBXTeamLogEventTypeArgSharedFolderChangeMembersInheritancePolicy + } + + @objc + public var asSharedFolderChangeMembersManagementPolicy: DBXTeamLogEventTypeArgSharedFolderChangeMembersManagementPolicy? { + return self as? DBXTeamLogEventTypeArgSharedFolderChangeMembersManagementPolicy + } + + @objc + public var asSharedFolderChangeMembersPolicy: DBXTeamLogEventTypeArgSharedFolderChangeMembersPolicy? { + return self as? DBXTeamLogEventTypeArgSharedFolderChangeMembersPolicy + } + + @objc + public var asSharedFolderCreate: DBXTeamLogEventTypeArgSharedFolderCreate? { + return self as? DBXTeamLogEventTypeArgSharedFolderCreate + } + + @objc + public var asSharedFolderDeclineInvitation: DBXTeamLogEventTypeArgSharedFolderDeclineInvitation? { + return self as? DBXTeamLogEventTypeArgSharedFolderDeclineInvitation + } + + @objc + public var asSharedFolderMount: DBXTeamLogEventTypeArgSharedFolderMount? { + return self as? DBXTeamLogEventTypeArgSharedFolderMount + } + + @objc + public var asSharedFolderNest: DBXTeamLogEventTypeArgSharedFolderNest? { + return self as? DBXTeamLogEventTypeArgSharedFolderNest + } + + @objc + public var asSharedFolderTransferOwnership: DBXTeamLogEventTypeArgSharedFolderTransferOwnership? { + return self as? DBXTeamLogEventTypeArgSharedFolderTransferOwnership + } + + @objc + public var asSharedFolderUnmount: DBXTeamLogEventTypeArgSharedFolderUnmount? { + return self as? DBXTeamLogEventTypeArgSharedFolderUnmount + } + + @objc + public var asSharedLinkAddExpiry: DBXTeamLogEventTypeArgSharedLinkAddExpiry? { + return self as? DBXTeamLogEventTypeArgSharedLinkAddExpiry + } + + @objc + public var asSharedLinkChangeExpiry: DBXTeamLogEventTypeArgSharedLinkChangeExpiry? { + return self as? DBXTeamLogEventTypeArgSharedLinkChangeExpiry + } + + @objc + public var asSharedLinkChangeVisibility: DBXTeamLogEventTypeArgSharedLinkChangeVisibility? { + return self as? DBXTeamLogEventTypeArgSharedLinkChangeVisibility + } + + @objc + public var asSharedLinkCopy: DBXTeamLogEventTypeArgSharedLinkCopy? { + return self as? DBXTeamLogEventTypeArgSharedLinkCopy + } + + @objc + public var asSharedLinkCreate: DBXTeamLogEventTypeArgSharedLinkCreate? { + return self as? DBXTeamLogEventTypeArgSharedLinkCreate + } + + @objc + public var asSharedLinkDisable: DBXTeamLogEventTypeArgSharedLinkDisable? { + return self as? DBXTeamLogEventTypeArgSharedLinkDisable + } + + @objc + public var asSharedLinkDownload: DBXTeamLogEventTypeArgSharedLinkDownload? { + return self as? DBXTeamLogEventTypeArgSharedLinkDownload + } + + @objc + public var asSharedLinkRemoveExpiry: DBXTeamLogEventTypeArgSharedLinkRemoveExpiry? { + return self as? DBXTeamLogEventTypeArgSharedLinkRemoveExpiry + } + + @objc + public var asSharedLinkRemoveVisitor: DBXTeamLogEventTypeArgSharedLinkRemoveVisitor? { + return self as? DBXTeamLogEventTypeArgSharedLinkRemoveVisitor + } + + @objc + public var asSharedLinkSettingsAddExpiration: DBXTeamLogEventTypeArgSharedLinkSettingsAddExpiration? { + return self as? DBXTeamLogEventTypeArgSharedLinkSettingsAddExpiration + } + + @objc + public var asSharedLinkSettingsAddPassword: DBXTeamLogEventTypeArgSharedLinkSettingsAddPassword? { + return self as? DBXTeamLogEventTypeArgSharedLinkSettingsAddPassword + } + + @objc + public var asSharedLinkSettingsAllowDownloadDisabled: DBXTeamLogEventTypeArgSharedLinkSettingsAllowDownloadDisabled? { + return self as? DBXTeamLogEventTypeArgSharedLinkSettingsAllowDownloadDisabled + } + + @objc + public var asSharedLinkSettingsAllowDownloadEnabled: DBXTeamLogEventTypeArgSharedLinkSettingsAllowDownloadEnabled? { + return self as? DBXTeamLogEventTypeArgSharedLinkSettingsAllowDownloadEnabled + } + + @objc + public var asSharedLinkSettingsChangeAudience: DBXTeamLogEventTypeArgSharedLinkSettingsChangeAudience? { + return self as? DBXTeamLogEventTypeArgSharedLinkSettingsChangeAudience + } + + @objc + public var asSharedLinkSettingsChangeExpiration: DBXTeamLogEventTypeArgSharedLinkSettingsChangeExpiration? { + return self as? DBXTeamLogEventTypeArgSharedLinkSettingsChangeExpiration + } + + @objc + public var asSharedLinkSettingsChangePassword: DBXTeamLogEventTypeArgSharedLinkSettingsChangePassword? { + return self as? DBXTeamLogEventTypeArgSharedLinkSettingsChangePassword + } + + @objc + public var asSharedLinkSettingsRemoveExpiration: DBXTeamLogEventTypeArgSharedLinkSettingsRemoveExpiration? { + return self as? DBXTeamLogEventTypeArgSharedLinkSettingsRemoveExpiration + } + + @objc + public var asSharedLinkSettingsRemovePassword: DBXTeamLogEventTypeArgSharedLinkSettingsRemovePassword? { + return self as? DBXTeamLogEventTypeArgSharedLinkSettingsRemovePassword + } + + @objc + public var asSharedLinkShare: DBXTeamLogEventTypeArgSharedLinkShare? { + return self as? DBXTeamLogEventTypeArgSharedLinkShare + } + + @objc + public var asSharedLinkView: DBXTeamLogEventTypeArgSharedLinkView? { + return self as? DBXTeamLogEventTypeArgSharedLinkView + } + + @objc + public var asSharedNoteOpened: DBXTeamLogEventTypeArgSharedNoteOpened? { + return self as? DBXTeamLogEventTypeArgSharedNoteOpened + } + + @objc + public var asShmodelDisableDownloads: DBXTeamLogEventTypeArgShmodelDisableDownloads? { + return self as? DBXTeamLogEventTypeArgShmodelDisableDownloads + } + + @objc + public var asShmodelEnableDownloads: DBXTeamLogEventTypeArgShmodelEnableDownloads? { + return self as? DBXTeamLogEventTypeArgShmodelEnableDownloads + } + + @objc + public var asShmodelGroupShare: DBXTeamLogEventTypeArgShmodelGroupShare? { + return self as? DBXTeamLogEventTypeArgShmodelGroupShare + } + + @objc + public var asShowcaseAccessGranted: DBXTeamLogEventTypeArgShowcaseAccessGranted? { + return self as? DBXTeamLogEventTypeArgShowcaseAccessGranted + } + + @objc + public var asShowcaseAddMember: DBXTeamLogEventTypeArgShowcaseAddMember? { + return self as? DBXTeamLogEventTypeArgShowcaseAddMember + } + + @objc + public var asShowcaseArchived: DBXTeamLogEventTypeArgShowcaseArchived? { + return self as? DBXTeamLogEventTypeArgShowcaseArchived + } + + @objc + public var asShowcaseCreated: DBXTeamLogEventTypeArgShowcaseCreated? { + return self as? DBXTeamLogEventTypeArgShowcaseCreated + } + + @objc + public var asShowcaseDeleteComment: DBXTeamLogEventTypeArgShowcaseDeleteComment? { + return self as? DBXTeamLogEventTypeArgShowcaseDeleteComment + } + + @objc + public var asShowcaseEdited: DBXTeamLogEventTypeArgShowcaseEdited? { + return self as? DBXTeamLogEventTypeArgShowcaseEdited + } + + @objc + public var asShowcaseEditComment: DBXTeamLogEventTypeArgShowcaseEditComment? { + return self as? DBXTeamLogEventTypeArgShowcaseEditComment + } + + @objc + public var asShowcaseFileAdded: DBXTeamLogEventTypeArgShowcaseFileAdded? { + return self as? DBXTeamLogEventTypeArgShowcaseFileAdded + } + + @objc + public var asShowcaseFileDownload: DBXTeamLogEventTypeArgShowcaseFileDownload? { + return self as? DBXTeamLogEventTypeArgShowcaseFileDownload + } + + @objc + public var asShowcaseFileRemoved: DBXTeamLogEventTypeArgShowcaseFileRemoved? { + return self as? DBXTeamLogEventTypeArgShowcaseFileRemoved + } + + @objc + public var asShowcaseFileView: DBXTeamLogEventTypeArgShowcaseFileView? { + return self as? DBXTeamLogEventTypeArgShowcaseFileView + } + + @objc + public var asShowcasePermanentlyDeleted: DBXTeamLogEventTypeArgShowcasePermanentlyDeleted? { + return self as? DBXTeamLogEventTypeArgShowcasePermanentlyDeleted + } + + @objc + public var asShowcasePostComment: DBXTeamLogEventTypeArgShowcasePostComment? { + return self as? DBXTeamLogEventTypeArgShowcasePostComment + } + + @objc + public var asShowcaseRemoveMember: DBXTeamLogEventTypeArgShowcaseRemoveMember? { + return self as? DBXTeamLogEventTypeArgShowcaseRemoveMember + } + + @objc + public var asShowcaseRenamed: DBXTeamLogEventTypeArgShowcaseRenamed? { + return self as? DBXTeamLogEventTypeArgShowcaseRenamed + } + + @objc + public var asShowcaseRequestAccess: DBXTeamLogEventTypeArgShowcaseRequestAccess? { + return self as? DBXTeamLogEventTypeArgShowcaseRequestAccess + } + + @objc + public var asShowcaseResolveComment: DBXTeamLogEventTypeArgShowcaseResolveComment? { + return self as? DBXTeamLogEventTypeArgShowcaseResolveComment + } + + @objc + public var asShowcaseRestored: DBXTeamLogEventTypeArgShowcaseRestored? { + return self as? DBXTeamLogEventTypeArgShowcaseRestored + } + + @objc + public var asShowcaseTrashed: DBXTeamLogEventTypeArgShowcaseTrashed? { + return self as? DBXTeamLogEventTypeArgShowcaseTrashed + } + + @objc + public var asShowcaseTrashedDeprecated: DBXTeamLogEventTypeArgShowcaseTrashedDeprecated? { + return self as? DBXTeamLogEventTypeArgShowcaseTrashedDeprecated + } + + @objc + public var asShowcaseUnresolveComment: DBXTeamLogEventTypeArgShowcaseUnresolveComment? { + return self as? DBXTeamLogEventTypeArgShowcaseUnresolveComment + } + + @objc + public var asShowcaseUntrashed: DBXTeamLogEventTypeArgShowcaseUntrashed? { + return self as? DBXTeamLogEventTypeArgShowcaseUntrashed + } + + @objc + public var asShowcaseUntrashedDeprecated: DBXTeamLogEventTypeArgShowcaseUntrashedDeprecated? { + return self as? DBXTeamLogEventTypeArgShowcaseUntrashedDeprecated + } + + @objc + public var asShowcaseView: DBXTeamLogEventTypeArgShowcaseView? { + return self as? DBXTeamLogEventTypeArgShowcaseView + } + + @objc + public var asSignSignatureRequestCanceled: DBXTeamLogEventTypeArgSignSignatureRequestCanceled? { + return self as? DBXTeamLogEventTypeArgSignSignatureRequestCanceled + } + + @objc + public var asSignSignatureRequestCompleted: DBXTeamLogEventTypeArgSignSignatureRequestCompleted? { + return self as? DBXTeamLogEventTypeArgSignSignatureRequestCompleted + } + + @objc + public var asSignSignatureRequestDeclined: DBXTeamLogEventTypeArgSignSignatureRequestDeclined? { + return self as? DBXTeamLogEventTypeArgSignSignatureRequestDeclined + } + + @objc + public var asSignSignatureRequestOpened: DBXTeamLogEventTypeArgSignSignatureRequestOpened? { + return self as? DBXTeamLogEventTypeArgSignSignatureRequestOpened + } + + @objc + public var asSignSignatureRequestReminderSent: DBXTeamLogEventTypeArgSignSignatureRequestReminderSent? { + return self as? DBXTeamLogEventTypeArgSignSignatureRequestReminderSent + } + + @objc + public var asSignSignatureRequestSent: DBXTeamLogEventTypeArgSignSignatureRequestSent? { + return self as? DBXTeamLogEventTypeArgSignSignatureRequestSent + } + + @objc + public var asSignTemplateCreated: DBXTeamLogEventTypeArgSignTemplateCreated? { + return self as? DBXTeamLogEventTypeArgSignTemplateCreated + } + + @objc + public var asSignTemplateShared: DBXTeamLogEventTypeArgSignTemplateShared? { + return self as? DBXTeamLogEventTypeArgSignTemplateShared + } + + @objc + public var asRiscSecurityEvent: DBXTeamLogEventTypeArgRiscSecurityEvent? { + return self as? DBXTeamLogEventTypeArgRiscSecurityEvent + } + + @objc + public var asSsoAddCert: DBXTeamLogEventTypeArgSsoAddCert? { + return self as? DBXTeamLogEventTypeArgSsoAddCert + } + + @objc + public var asSsoAddLoginUrl: DBXTeamLogEventTypeArgSsoAddLoginUrl? { + return self as? DBXTeamLogEventTypeArgSsoAddLoginUrl + } + + @objc + public var asSsoAddLogoutUrl: DBXTeamLogEventTypeArgSsoAddLogoutUrl? { + return self as? DBXTeamLogEventTypeArgSsoAddLogoutUrl + } + + @objc + public var asSsoChangeCert: DBXTeamLogEventTypeArgSsoChangeCert? { + return self as? DBXTeamLogEventTypeArgSsoChangeCert + } + + @objc + public var asSsoChangeLoginUrl: DBXTeamLogEventTypeArgSsoChangeLoginUrl? { + return self as? DBXTeamLogEventTypeArgSsoChangeLoginUrl + } + + @objc + public var asSsoChangeLogoutUrl: DBXTeamLogEventTypeArgSsoChangeLogoutUrl? { + return self as? DBXTeamLogEventTypeArgSsoChangeLogoutUrl + } + + @objc + public var asSsoChangeSamlIdentityMode: DBXTeamLogEventTypeArgSsoChangeSamlIdentityMode? { + return self as? DBXTeamLogEventTypeArgSsoChangeSamlIdentityMode + } + + @objc + public var asSsoRemoveCert: DBXTeamLogEventTypeArgSsoRemoveCert? { + return self as? DBXTeamLogEventTypeArgSsoRemoveCert + } + + @objc + public var asSsoRemoveLoginUrl: DBXTeamLogEventTypeArgSsoRemoveLoginUrl? { + return self as? DBXTeamLogEventTypeArgSsoRemoveLoginUrl + } + + @objc + public var asSsoRemoveLogoutUrl: DBXTeamLogEventTypeArgSsoRemoveLogoutUrl? { + return self as? DBXTeamLogEventTypeArgSsoRemoveLogoutUrl + } + + @objc + public var asTeamFolderChangeStatus: DBXTeamLogEventTypeArgTeamFolderChangeStatus? { + return self as? DBXTeamLogEventTypeArgTeamFolderChangeStatus + } + + @objc + public var asTeamFolderCreate: DBXTeamLogEventTypeArgTeamFolderCreate? { + return self as? DBXTeamLogEventTypeArgTeamFolderCreate + } + + @objc + public var asTeamFolderDowngrade: DBXTeamLogEventTypeArgTeamFolderDowngrade? { + return self as? DBXTeamLogEventTypeArgTeamFolderDowngrade + } + + @objc + public var asTeamFolderPermanentlyDelete: DBXTeamLogEventTypeArgTeamFolderPermanentlyDelete? { + return self as? DBXTeamLogEventTypeArgTeamFolderPermanentlyDelete + } + + @objc + public var asTeamFolderRename: DBXTeamLogEventTypeArgTeamFolderRename? { + return self as? DBXTeamLogEventTypeArgTeamFolderRename + } + + @objc + public var asTeamFolderSpaceLimitsChangeCapsType: DBXTeamLogEventTypeArgTeamFolderSpaceLimitsChangeCapsType? { + return self as? DBXTeamLogEventTypeArgTeamFolderSpaceLimitsChangeCapsType + } + + @objc + public var asTeamFolderSpaceLimitsChangeLimit: DBXTeamLogEventTypeArgTeamFolderSpaceLimitsChangeLimit? { + return self as? DBXTeamLogEventTypeArgTeamFolderSpaceLimitsChangeLimit + } + + @objc + public var asTeamFolderSpaceLimitsChangeNotificationTarget: DBXTeamLogEventTypeArgTeamFolderSpaceLimitsChangeNotificationTarget? { + return self as? DBXTeamLogEventTypeArgTeamFolderSpaceLimitsChangeNotificationTarget + } + + @objc + public var asTeamSelectiveSyncSettingsChanged: DBXTeamLogEventTypeArgTeamSelectiveSyncSettingsChanged? { + return self as? DBXTeamLogEventTypeArgTeamSelectiveSyncSettingsChanged + } + + @objc + public var asAccountCaptureChangePolicy: DBXTeamLogEventTypeArgAccountCaptureChangePolicy? { + return self as? DBXTeamLogEventTypeArgAccountCaptureChangePolicy + } + + @objc + public var asAdminEmailRemindersChanged: DBXTeamLogEventTypeArgAdminEmailRemindersChanged? { + return self as? DBXTeamLogEventTypeArgAdminEmailRemindersChanged + } + + @objc + public var asAiThirdPartySharingDropboxBasePolicyChanged: DBXTeamLogEventTypeArgAiThirdPartySharingDropboxBasePolicyChanged? { + return self as? DBXTeamLogEventTypeArgAiThirdPartySharingDropboxBasePolicyChanged + } + + @objc + public var asAllowDownloadDisabled: DBXTeamLogEventTypeArgAllowDownloadDisabled? { + return self as? DBXTeamLogEventTypeArgAllowDownloadDisabled + } + + @objc + public var asAllowDownloadEnabled: DBXTeamLogEventTypeArgAllowDownloadEnabled? { + return self as? DBXTeamLogEventTypeArgAllowDownloadEnabled + } + + @objc + public var asAppleLoginChangePolicy: DBXTeamLogEventTypeArgAppleLoginChangePolicy? { + return self as? DBXTeamLogEventTypeArgAppleLoginChangePolicy + } + + @objc + public var asAppPermissionsChanged: DBXTeamLogEventTypeArgAppPermissionsChanged? { + return self as? DBXTeamLogEventTypeArgAppPermissionsChanged + } + + @objc + public var asCameraUploadsPolicyChanged: DBXTeamLogEventTypeArgCameraUploadsPolicyChanged? { + return self as? DBXTeamLogEventTypeArgCameraUploadsPolicyChanged + } + + @objc + public var asCaptureTeamSpacePolicyChanged: DBXTeamLogEventTypeArgCaptureTeamSpacePolicyChanged? { + return self as? DBXTeamLogEventTypeArgCaptureTeamSpacePolicyChanged + } + + @objc + public var asCaptureTranscriptPolicyChanged: DBXTeamLogEventTypeArgCaptureTranscriptPolicyChanged? { + return self as? DBXTeamLogEventTypeArgCaptureTranscriptPolicyChanged + } + + @objc + public var asClassificationChangePolicy: DBXTeamLogEventTypeArgClassificationChangePolicy? { + return self as? DBXTeamLogEventTypeArgClassificationChangePolicy + } + + @objc + public var asComputerBackupPolicyChanged: DBXTeamLogEventTypeArgComputerBackupPolicyChanged? { + return self as? DBXTeamLogEventTypeArgComputerBackupPolicyChanged + } + + @objc + public var asContentAdministrationPolicyChanged: DBXTeamLogEventTypeArgContentAdministrationPolicyChanged? { + return self as? DBXTeamLogEventTypeArgContentAdministrationPolicyChanged + } + + @objc + public var asContentDeletionProtectionChangePolicy: DBXTeamLogEventTypeArgContentDeletionProtectionChangePolicy? { + return self as? DBXTeamLogEventTypeArgContentDeletionProtectionChangePolicy + } + + @objc + public var asDashExternalSharingPolicyChanged: DBXTeamLogEventTypeArgDashExternalSharingPolicyChanged? { + return self as? DBXTeamLogEventTypeArgDashExternalSharingPolicyChanged + } + + @objc + public var asDataPlacementRestrictionChangePolicy: DBXTeamLogEventTypeArgDataPlacementRestrictionChangePolicy? { + return self as? DBXTeamLogEventTypeArgDataPlacementRestrictionChangePolicy + } + + @objc + public var asDataPlacementRestrictionSatisfyPolicy: DBXTeamLogEventTypeArgDataPlacementRestrictionSatisfyPolicy? { + return self as? DBXTeamLogEventTypeArgDataPlacementRestrictionSatisfyPolicy + } + + @objc + public var asDeviceApprovalsAddException: DBXTeamLogEventTypeArgDeviceApprovalsAddException? { + return self as? DBXTeamLogEventTypeArgDeviceApprovalsAddException + } + + @objc + public var asDeviceApprovalsChangeDesktopPolicy: DBXTeamLogEventTypeArgDeviceApprovalsChangeDesktopPolicy? { + return self as? DBXTeamLogEventTypeArgDeviceApprovalsChangeDesktopPolicy + } + + @objc + public var asDeviceApprovalsChangeMobilePolicy: DBXTeamLogEventTypeArgDeviceApprovalsChangeMobilePolicy? { + return self as? DBXTeamLogEventTypeArgDeviceApprovalsChangeMobilePolicy + } + + @objc + public var asDeviceApprovalsChangeOverageAction: DBXTeamLogEventTypeArgDeviceApprovalsChangeOverageAction? { + return self as? DBXTeamLogEventTypeArgDeviceApprovalsChangeOverageAction + } + + @objc + public var asDeviceApprovalsChangeUnlinkAction: DBXTeamLogEventTypeArgDeviceApprovalsChangeUnlinkAction? { + return self as? DBXTeamLogEventTypeArgDeviceApprovalsChangeUnlinkAction + } + + @objc + public var asDeviceApprovalsRemoveException: DBXTeamLogEventTypeArgDeviceApprovalsRemoveException? { + return self as? DBXTeamLogEventTypeArgDeviceApprovalsRemoveException + } + + @objc + public var asDirectoryRestrictionsAddMembers: DBXTeamLogEventTypeArgDirectoryRestrictionsAddMembers? { + return self as? DBXTeamLogEventTypeArgDirectoryRestrictionsAddMembers + } + + @objc + public var asDirectoryRestrictionsRemoveMembers: DBXTeamLogEventTypeArgDirectoryRestrictionsRemoveMembers? { + return self as? DBXTeamLogEventTypeArgDirectoryRestrictionsRemoveMembers + } + + @objc + public var asDropboxPasswordsPolicyChanged: DBXTeamLogEventTypeArgDropboxPasswordsPolicyChanged? { + return self as? DBXTeamLogEventTypeArgDropboxPasswordsPolicyChanged + } + + @objc + public var asEmailIngestPolicyChanged: DBXTeamLogEventTypeArgEmailIngestPolicyChanged? { + return self as? DBXTeamLogEventTypeArgEmailIngestPolicyChanged + } + + @objc + public var asEmmAddException: DBXTeamLogEventTypeArgEmmAddException? { + return self as? DBXTeamLogEventTypeArgEmmAddException + } + + @objc + public var asEmmChangePolicy: DBXTeamLogEventTypeArgEmmChangePolicy? { + return self as? DBXTeamLogEventTypeArgEmmChangePolicy + } + + @objc + public var asEmmRemoveException: DBXTeamLogEventTypeArgEmmRemoveException? { + return self as? DBXTeamLogEventTypeArgEmmRemoveException + } + + @objc + public var asExtendedVersionHistoryChangePolicy: DBXTeamLogEventTypeArgExtendedVersionHistoryChangePolicy? { + return self as? DBXTeamLogEventTypeArgExtendedVersionHistoryChangePolicy + } + + @objc + public var asExternalDriveBackupPolicyChanged: DBXTeamLogEventTypeArgExternalDriveBackupPolicyChanged? { + return self as? DBXTeamLogEventTypeArgExternalDriveBackupPolicyChanged + } + + @objc + public var asFileCommentsChangePolicy: DBXTeamLogEventTypeArgFileCommentsChangePolicy? { + return self as? DBXTeamLogEventTypeArgFileCommentsChangePolicy + } + + @objc + public var asFileLockingPolicyChanged: DBXTeamLogEventTypeArgFileLockingPolicyChanged? { + return self as? DBXTeamLogEventTypeArgFileLockingPolicyChanged + } + + @objc + public var asFileProviderMigrationPolicyChanged: DBXTeamLogEventTypeArgFileProviderMigrationPolicyChanged? { + return self as? DBXTeamLogEventTypeArgFileProviderMigrationPolicyChanged + } + + @objc + public var asFileRequestsChangePolicy: DBXTeamLogEventTypeArgFileRequestsChangePolicy? { + return self as? DBXTeamLogEventTypeArgFileRequestsChangePolicy + } + + @objc + public var asFileRequestsEmailsEnabled: DBXTeamLogEventTypeArgFileRequestsEmailsEnabled? { + return self as? DBXTeamLogEventTypeArgFileRequestsEmailsEnabled + } + + @objc + public var asFileRequestsEmailsRestrictedToTeamOnly: DBXTeamLogEventTypeArgFileRequestsEmailsRestrictedToTeamOnly? { + return self as? DBXTeamLogEventTypeArgFileRequestsEmailsRestrictedToTeamOnly + } + + @objc + public var asFileTransfersPolicyChanged: DBXTeamLogEventTypeArgFileTransfersPolicyChanged? { + return self as? DBXTeamLogEventTypeArgFileTransfersPolicyChanged + } + + @objc + public var asFlexibleFileNamesPolicyChanged: DBXTeamLogEventTypeArgFlexibleFileNamesPolicyChanged? { + return self as? DBXTeamLogEventTypeArgFlexibleFileNamesPolicyChanged + } + + @objc + public var asFolderLinkRestrictionPolicyChanged: DBXTeamLogEventTypeArgFolderLinkRestrictionPolicyChanged? { + return self as? DBXTeamLogEventTypeArgFolderLinkRestrictionPolicyChanged + } + + @objc + public var asGoogleSsoChangePolicy: DBXTeamLogEventTypeArgGoogleSsoChangePolicy? { + return self as? DBXTeamLogEventTypeArgGoogleSsoChangePolicy + } + + @objc + public var asGroupUserManagementChangePolicy: DBXTeamLogEventTypeArgGroupUserManagementChangePolicy? { + return self as? DBXTeamLogEventTypeArgGroupUserManagementChangePolicy + } + + @objc + public var asIntegrationPolicyChanged: DBXTeamLogEventTypeArgIntegrationPolicyChanged? { + return self as? DBXTeamLogEventTypeArgIntegrationPolicyChanged + } + + @objc + public var asInviteAcceptanceEmailPolicyChanged: DBXTeamLogEventTypeArgInviteAcceptanceEmailPolicyChanged? { + return self as? DBXTeamLogEventTypeArgInviteAcceptanceEmailPolicyChanged + } + + @objc + public var asMediaHubAddingPeoplePolicyChanged: DBXTeamLogEventTypeArgMediaHubAddingPeoplePolicyChanged? { + return self as? DBXTeamLogEventTypeArgMediaHubAddingPeoplePolicyChanged + } + + @objc + public var asMediaHubDownloadPolicyChanged: DBXTeamLogEventTypeArgMediaHubDownloadPolicyChanged? { + return self as? DBXTeamLogEventTypeArgMediaHubDownloadPolicyChanged + } + + @objc + public var asMediaHubLinkSharingPolicyChanged: DBXTeamLogEventTypeArgMediaHubLinkSharingPolicyChanged? { + return self as? DBXTeamLogEventTypeArgMediaHubLinkSharingPolicyChanged + } + + @objc + public var asMemberRequestsChangePolicy: DBXTeamLogEventTypeArgMemberRequestsChangePolicy? { + return self as? DBXTeamLogEventTypeArgMemberRequestsChangePolicy + } + + @objc + public var asMemberSendInvitePolicyChanged: DBXTeamLogEventTypeArgMemberSendInvitePolicyChanged? { + return self as? DBXTeamLogEventTypeArgMemberSendInvitePolicyChanged + } + + @objc + public var asMemberSpaceLimitsAddException: DBXTeamLogEventTypeArgMemberSpaceLimitsAddException? { + return self as? DBXTeamLogEventTypeArgMemberSpaceLimitsAddException + } + + @objc + public var asMemberSpaceLimitsChangeCapsTypePolicy: DBXTeamLogEventTypeArgMemberSpaceLimitsChangeCapsTypePolicy? { + return self as? DBXTeamLogEventTypeArgMemberSpaceLimitsChangeCapsTypePolicy + } + + @objc + public var asMemberSpaceLimitsChangePolicy: DBXTeamLogEventTypeArgMemberSpaceLimitsChangePolicy? { + return self as? DBXTeamLogEventTypeArgMemberSpaceLimitsChangePolicy + } + + @objc + public var asMemberSpaceLimitsRemoveException: DBXTeamLogEventTypeArgMemberSpaceLimitsRemoveException? { + return self as? DBXTeamLogEventTypeArgMemberSpaceLimitsRemoveException + } + + @objc + public var asMemberSuggestionsChangePolicy: DBXTeamLogEventTypeArgMemberSuggestionsChangePolicy? { + return self as? DBXTeamLogEventTypeArgMemberSuggestionsChangePolicy + } + + @objc + public var asMicrosoftLoginChangePolicy: DBXTeamLogEventTypeArgMicrosoftLoginChangePolicy? { + return self as? DBXTeamLogEventTypeArgMicrosoftLoginChangePolicy + } + + @objc + public var asMicrosoftOfficeAddinChangePolicy: DBXTeamLogEventTypeArgMicrosoftOfficeAddinChangePolicy? { + return self as? DBXTeamLogEventTypeArgMicrosoftOfficeAddinChangePolicy + } + + @objc + public var asMultiTeamIdentityPolicyChanged: DBXTeamLogEventTypeArgMultiTeamIdentityPolicyChanged? { + return self as? DBXTeamLogEventTypeArgMultiTeamIdentityPolicyChanged + } + + @objc + public var asNetworkControlChangePolicy: DBXTeamLogEventTypeArgNetworkControlChangePolicy? { + return self as? DBXTeamLogEventTypeArgNetworkControlChangePolicy + } + + @objc + public var asPaperChangeDeploymentPolicy: DBXTeamLogEventTypeArgPaperChangeDeploymentPolicy? { + return self as? DBXTeamLogEventTypeArgPaperChangeDeploymentPolicy + } + + @objc + public var asPaperChangeMemberLinkPolicy: DBXTeamLogEventTypeArgPaperChangeMemberLinkPolicy? { + return self as? DBXTeamLogEventTypeArgPaperChangeMemberLinkPolicy + } + + @objc + public var asPaperChangeMemberPolicy: DBXTeamLogEventTypeArgPaperChangeMemberPolicy? { + return self as? DBXTeamLogEventTypeArgPaperChangeMemberPolicy + } + + @objc + public var asPaperChangePolicy: DBXTeamLogEventTypeArgPaperChangePolicy? { + return self as? DBXTeamLogEventTypeArgPaperChangePolicy + } + + @objc + public var asPaperDefaultFolderPolicyChanged: DBXTeamLogEventTypeArgPaperDefaultFolderPolicyChanged? { + return self as? DBXTeamLogEventTypeArgPaperDefaultFolderPolicyChanged + } + + @objc + public var asPaperDesktopPolicyChanged: DBXTeamLogEventTypeArgPaperDesktopPolicyChanged? { + return self as? DBXTeamLogEventTypeArgPaperDesktopPolicyChanged + } + + @objc + public var asPaperEnabledUsersGroupAddition: DBXTeamLogEventTypeArgPaperEnabledUsersGroupAddition? { + return self as? DBXTeamLogEventTypeArgPaperEnabledUsersGroupAddition + } + + @objc + public var asPaperEnabledUsersGroupRemoval: DBXTeamLogEventTypeArgPaperEnabledUsersGroupRemoval? { + return self as? DBXTeamLogEventTypeArgPaperEnabledUsersGroupRemoval + } + + @objc + public var asPasskeyLoginPolicyChanged: DBXTeamLogEventTypeArgPasskeyLoginPolicyChanged? { + return self as? DBXTeamLogEventTypeArgPasskeyLoginPolicyChanged + } + + @objc + public var asPasswordStrengthRequirementsChangePolicy: DBXTeamLogEventTypeArgPasswordStrengthRequirementsChangePolicy? { + return self as? DBXTeamLogEventTypeArgPasswordStrengthRequirementsChangePolicy + } + + @objc + public var asPermanentDeleteChangePolicy: DBXTeamLogEventTypeArgPermanentDeleteChangePolicy? { + return self as? DBXTeamLogEventTypeArgPermanentDeleteChangePolicy + } + + @objc + public var asPreviewsAiPolicyChanged: DBXTeamLogEventTypeArgPreviewsAiPolicyChanged? { + return self as? DBXTeamLogEventTypeArgPreviewsAiPolicyChanged + } + + @objc + public var asReplayAddingPeoplePolicyChanged: DBXTeamLogEventTypeArgReplayAddingPeoplePolicyChanged? { + return self as? DBXTeamLogEventTypeArgReplayAddingPeoplePolicyChanged + } + + @objc + public var asReplaySharingPolicyChanged: DBXTeamLogEventTypeArgReplaySharingPolicyChanged? { + return self as? DBXTeamLogEventTypeArgReplaySharingPolicyChanged + } + + @objc + public var asResellerSupportChangePolicy: DBXTeamLogEventTypeArgResellerSupportChangePolicy? { + return self as? DBXTeamLogEventTypeArgResellerSupportChangePolicy + } + + @objc + public var asRewindPolicyChanged: DBXTeamLogEventTypeArgRewindPolicyChanged? { + return self as? DBXTeamLogEventTypeArgRewindPolicyChanged + } + + @objc + public var asSendAndTrackPolicyChanged: DBXTeamLogEventTypeArgSendAndTrackPolicyChanged? { + return self as? DBXTeamLogEventTypeArgSendAndTrackPolicyChanged + } + + @objc + public var asSendExternalSharingPolicyChanged: DBXTeamLogEventTypeArgSendExternalSharingPolicyChanged? { + return self as? DBXTeamLogEventTypeArgSendExternalSharingPolicyChanged + } + + @objc + public var asSendForSignaturePolicyChanged: DBXTeamLogEventTypeArgSendForSignaturePolicyChanged? { + return self as? DBXTeamLogEventTypeArgSendForSignaturePolicyChanged + } + + @objc + public var asSharedLinkDefaultPermissionsPolicyChanged: DBXTeamLogEventTypeArgSharedLinkDefaultPermissionsPolicyChanged? { + return self as? DBXTeamLogEventTypeArgSharedLinkDefaultPermissionsPolicyChanged + } + + @objc + public var asSharingChangeFolderJoinPolicy: DBXTeamLogEventTypeArgSharingChangeFolderJoinPolicy? { + return self as? DBXTeamLogEventTypeArgSharingChangeFolderJoinPolicy + } + + @objc + public var asSharingChangeLinkAllowChangeExpirationPolicy: DBXTeamLogEventTypeArgSharingChangeLinkAllowChangeExpirationPolicy? { + return self as? DBXTeamLogEventTypeArgSharingChangeLinkAllowChangeExpirationPolicy + } + + @objc + public var asSharingChangeLinkDefaultExpirationPolicy: DBXTeamLogEventTypeArgSharingChangeLinkDefaultExpirationPolicy? { + return self as? DBXTeamLogEventTypeArgSharingChangeLinkDefaultExpirationPolicy + } + + @objc + public var asSharingChangeLinkEnforcePasswordPolicy: DBXTeamLogEventTypeArgSharingChangeLinkEnforcePasswordPolicy? { + return self as? DBXTeamLogEventTypeArgSharingChangeLinkEnforcePasswordPolicy + } + + @objc + public var asSharingChangeLinkPolicy: DBXTeamLogEventTypeArgSharingChangeLinkPolicy? { + return self as? DBXTeamLogEventTypeArgSharingChangeLinkPolicy + } + + @objc + public var asSharingChangeMemberPolicy: DBXTeamLogEventTypeArgSharingChangeMemberPolicy? { + return self as? DBXTeamLogEventTypeArgSharingChangeMemberPolicy + } + + @objc + public var asShowcaseChangeDownloadPolicy: DBXTeamLogEventTypeArgShowcaseChangeDownloadPolicy? { + return self as? DBXTeamLogEventTypeArgShowcaseChangeDownloadPolicy + } + + @objc + public var asShowcaseChangeEnabledPolicy: DBXTeamLogEventTypeArgShowcaseChangeEnabledPolicy? { + return self as? DBXTeamLogEventTypeArgShowcaseChangeEnabledPolicy + } + + @objc + public var asShowcaseChangeExternalSharingPolicy: DBXTeamLogEventTypeArgShowcaseChangeExternalSharingPolicy? { + return self as? DBXTeamLogEventTypeArgShowcaseChangeExternalSharingPolicy + } + + @objc + public var asSignExternalSharingPolicyChanged: DBXTeamLogEventTypeArgSignExternalSharingPolicyChanged? { + return self as? DBXTeamLogEventTypeArgSignExternalSharingPolicyChanged + } + + @objc + public var asSignTemplateCreationPermissionChanged: DBXTeamLogEventTypeArgSignTemplateCreationPermissionChanged? { + return self as? DBXTeamLogEventTypeArgSignTemplateCreationPermissionChanged + } + + @objc + public var asSmarterSmartSyncPolicyChanged: DBXTeamLogEventTypeArgSmarterSmartSyncPolicyChanged? { + return self as? DBXTeamLogEventTypeArgSmarterSmartSyncPolicyChanged + } + + @objc + public var asSmartSyncChangePolicy: DBXTeamLogEventTypeArgSmartSyncChangePolicy? { + return self as? DBXTeamLogEventTypeArgSmartSyncChangePolicy + } + + @objc + public var asSmartSyncNotOptOut: DBXTeamLogEventTypeArgSmartSyncNotOptOut? { + return self as? DBXTeamLogEventTypeArgSmartSyncNotOptOut + } + + @objc + public var asSmartSyncOptOut: DBXTeamLogEventTypeArgSmartSyncOptOut? { + return self as? DBXTeamLogEventTypeArgSmartSyncOptOut + } + + @objc + public var asSsoChangePolicy: DBXTeamLogEventTypeArgSsoChangePolicy? { + return self as? DBXTeamLogEventTypeArgSsoChangePolicy + } + + @objc + public var asStackCrossTeamAccessPolicyChanged: DBXTeamLogEventTypeArgStackCrossTeamAccessPolicyChanged? { + return self as? DBXTeamLogEventTypeArgStackCrossTeamAccessPolicyChanged + } + + @objc + public var asTeamBrandingPolicyChanged: DBXTeamLogEventTypeArgTeamBrandingPolicyChanged? { + return self as? DBXTeamLogEventTypeArgTeamBrandingPolicyChanged + } + + @objc + public var asTeamExtensionsPolicyChanged: DBXTeamLogEventTypeArgTeamExtensionsPolicyChanged? { + return self as? DBXTeamLogEventTypeArgTeamExtensionsPolicyChanged + } + + @objc + public var asTeamMemberStorageRequestPolicyChanged: DBXTeamLogEventTypeArgTeamMemberStorageRequestPolicyChanged? { + return self as? DBXTeamLogEventTypeArgTeamMemberStorageRequestPolicyChanged + } + + @objc + public var asTeamSelectiveSyncPolicyChanged: DBXTeamLogEventTypeArgTeamSelectiveSyncPolicyChanged? { + return self as? DBXTeamLogEventTypeArgTeamSelectiveSyncPolicyChanged + } + + @objc + public var asTeamSharingWhitelistSubjectsChanged: DBXTeamLogEventTypeArgTeamSharingWhitelistSubjectsChanged? { + return self as? DBXTeamLogEventTypeArgTeamSharingWhitelistSubjectsChanged + } + + @objc + public var asTfaAddException: DBXTeamLogEventTypeArgTfaAddException? { + return self as? DBXTeamLogEventTypeArgTfaAddException + } + + @objc + public var asTfaChangePolicy: DBXTeamLogEventTypeArgTfaChangePolicy? { + return self as? DBXTeamLogEventTypeArgTfaChangePolicy + } + + @objc + public var asTfaRemoveException: DBXTeamLogEventTypeArgTfaRemoveException? { + return self as? DBXTeamLogEventTypeArgTfaRemoveException + } + + @objc + public var asTopLevelContentPolicyChanged: DBXTeamLogEventTypeArgTopLevelContentPolicyChanged? { + return self as? DBXTeamLogEventTypeArgTopLevelContentPolicyChanged + } + + @objc + public var asTwoAccountChangePolicy: DBXTeamLogEventTypeArgTwoAccountChangePolicy? { + return self as? DBXTeamLogEventTypeArgTwoAccountChangePolicy + } + + @objc + public var asViewerInfoPolicyChanged: DBXTeamLogEventTypeArgViewerInfoPolicyChanged? { + return self as? DBXTeamLogEventTypeArgViewerInfoPolicyChanged + } + + @objc + public var asWatermarkingPolicyChanged: DBXTeamLogEventTypeArgWatermarkingPolicyChanged? { + return self as? DBXTeamLogEventTypeArgWatermarkingPolicyChanged + } + + @objc + public var asWebSessionsChangeActiveSessionLimit: DBXTeamLogEventTypeArgWebSessionsChangeActiveSessionLimit? { + return self as? DBXTeamLogEventTypeArgWebSessionsChangeActiveSessionLimit + } + + @objc + public var asWebSessionsChangeFixedLengthPolicy: DBXTeamLogEventTypeArgWebSessionsChangeFixedLengthPolicy? { + return self as? DBXTeamLogEventTypeArgWebSessionsChangeFixedLengthPolicy + } + + @objc + public var asWebSessionsChangeIdleLengthPolicy: DBXTeamLogEventTypeArgWebSessionsChangeIdleLengthPolicy? { + return self as? DBXTeamLogEventTypeArgWebSessionsChangeIdleLengthPolicy + } + + @objc + public var asDataResidencyMigrationRequestSuccessful: DBXTeamLogEventTypeArgDataResidencyMigrationRequestSuccessful? { + return self as? DBXTeamLogEventTypeArgDataResidencyMigrationRequestSuccessful + } + + @objc + public var asDataResidencyMigrationRequestUnsuccessful: DBXTeamLogEventTypeArgDataResidencyMigrationRequestUnsuccessful? { + return self as? DBXTeamLogEventTypeArgDataResidencyMigrationRequestUnsuccessful + } + + @objc + public var asTeamMergeFrom: DBXTeamLogEventTypeArgTeamMergeFrom? { + return self as? DBXTeamLogEventTypeArgTeamMergeFrom + } + + @objc + public var asTeamMergeTo: DBXTeamLogEventTypeArgTeamMergeTo? { + return self as? DBXTeamLogEventTypeArgTeamMergeTo + } + + @objc + public var asTeamProfileAddBackground: DBXTeamLogEventTypeArgTeamProfileAddBackground? { + return self as? DBXTeamLogEventTypeArgTeamProfileAddBackground + } + + @objc + public var asTeamProfileAddLogo: DBXTeamLogEventTypeArgTeamProfileAddLogo? { + return self as? DBXTeamLogEventTypeArgTeamProfileAddLogo + } + + @objc + public var asTeamProfileChangeBackground: DBXTeamLogEventTypeArgTeamProfileChangeBackground? { + return self as? DBXTeamLogEventTypeArgTeamProfileChangeBackground + } + + @objc + public var asTeamProfileChangeDefaultLanguage: DBXTeamLogEventTypeArgTeamProfileChangeDefaultLanguage? { + return self as? DBXTeamLogEventTypeArgTeamProfileChangeDefaultLanguage + } + + @objc + public var asTeamProfileChangeLogo: DBXTeamLogEventTypeArgTeamProfileChangeLogo? { + return self as? DBXTeamLogEventTypeArgTeamProfileChangeLogo + } + + @objc + public var asTeamProfileChangeName: DBXTeamLogEventTypeArgTeamProfileChangeName? { + return self as? DBXTeamLogEventTypeArgTeamProfileChangeName + } + + @objc + public var asTeamProfileRemoveBackground: DBXTeamLogEventTypeArgTeamProfileRemoveBackground? { + return self as? DBXTeamLogEventTypeArgTeamProfileRemoveBackground + } + + @objc + public var asTeamProfileRemoveLogo: DBXTeamLogEventTypeArgTeamProfileRemoveLogo? { + return self as? DBXTeamLogEventTypeArgTeamProfileRemoveLogo + } + + @objc + public var asPasskeyAdd: DBXTeamLogEventTypeArgPasskeyAdd? { + return self as? DBXTeamLogEventTypeArgPasskeyAdd + } + + @objc + public var asPasskeyRemove: DBXTeamLogEventTypeArgPasskeyRemove? { + return self as? DBXTeamLogEventTypeArgPasskeyRemove + } + + @objc + public var asTfaAddBackupPhone: DBXTeamLogEventTypeArgTfaAddBackupPhone? { + return self as? DBXTeamLogEventTypeArgTfaAddBackupPhone + } + + @objc + public var asTfaAddSecurityKey: DBXTeamLogEventTypeArgTfaAddSecurityKey? { + return self as? DBXTeamLogEventTypeArgTfaAddSecurityKey + } + + @objc + public var asTfaChangeBackupPhone: DBXTeamLogEventTypeArgTfaChangeBackupPhone? { + return self as? DBXTeamLogEventTypeArgTfaChangeBackupPhone + } + + @objc + public var asTfaChangeStatus: DBXTeamLogEventTypeArgTfaChangeStatus? { + return self as? DBXTeamLogEventTypeArgTfaChangeStatus + } + + @objc + public var asTfaRemoveBackupPhone: DBXTeamLogEventTypeArgTfaRemoveBackupPhone? { + return self as? DBXTeamLogEventTypeArgTfaRemoveBackupPhone + } + + @objc + public var asTfaRemoveSecurityKey: DBXTeamLogEventTypeArgTfaRemoveSecurityKey? { + return self as? DBXTeamLogEventTypeArgTfaRemoveSecurityKey + } + + @objc + public var asTfaReset: DBXTeamLogEventTypeArgTfaReset? { + return self as? DBXTeamLogEventTypeArgTfaReset + } + + @objc + public var asChangedEnterpriseAdminRole: DBXTeamLogEventTypeArgChangedEnterpriseAdminRole? { + return self as? DBXTeamLogEventTypeArgChangedEnterpriseAdminRole + } + + @objc + public var asChangedEnterpriseConnectedTeamStatus: DBXTeamLogEventTypeArgChangedEnterpriseConnectedTeamStatus? { + return self as? DBXTeamLogEventTypeArgChangedEnterpriseConnectedTeamStatus + } + + @objc + public var asEndedEnterpriseAdminSession: DBXTeamLogEventTypeArgEndedEnterpriseAdminSession? { + return self as? DBXTeamLogEventTypeArgEndedEnterpriseAdminSession + } + + @objc + public var asEndedEnterpriseAdminSessionDeprecated: DBXTeamLogEventTypeArgEndedEnterpriseAdminSessionDeprecated? { + return self as? DBXTeamLogEventTypeArgEndedEnterpriseAdminSessionDeprecated + } + + @objc + public var asEnterpriseSettingsLocking: DBXTeamLogEventTypeArgEnterpriseSettingsLocking? { + return self as? DBXTeamLogEventTypeArgEnterpriseSettingsLocking + } + + @objc + public var asGuestAdminChangeStatus: DBXTeamLogEventTypeArgGuestAdminChangeStatus? { + return self as? DBXTeamLogEventTypeArgGuestAdminChangeStatus + } + + @objc + public var asStartedEnterpriseAdminSession: DBXTeamLogEventTypeArgStartedEnterpriseAdminSession? { + return self as? DBXTeamLogEventTypeArgStartedEnterpriseAdminSession + } + + @objc + public var asTeamMergeRequestAccepted: DBXTeamLogEventTypeArgTeamMergeRequestAccepted? { + return self as? DBXTeamLogEventTypeArgTeamMergeRequestAccepted + } + + @objc + public var asTeamMergeRequestAcceptedShownToPrimaryTeam: DBXTeamLogEventTypeArgTeamMergeRequestAcceptedShownToPrimaryTeam? { + return self as? DBXTeamLogEventTypeArgTeamMergeRequestAcceptedShownToPrimaryTeam + } + + @objc + public var asTeamMergeRequestAcceptedShownToSecondaryTeam: DBXTeamLogEventTypeArgTeamMergeRequestAcceptedShownToSecondaryTeam? { + return self as? DBXTeamLogEventTypeArgTeamMergeRequestAcceptedShownToSecondaryTeam + } + + @objc + public var asTeamMergeRequestAutoCanceled: DBXTeamLogEventTypeArgTeamMergeRequestAutoCanceled? { + return self as? DBXTeamLogEventTypeArgTeamMergeRequestAutoCanceled + } + + @objc + public var asTeamMergeRequestCanceled: DBXTeamLogEventTypeArgTeamMergeRequestCanceled? { + return self as? DBXTeamLogEventTypeArgTeamMergeRequestCanceled + } + + @objc + public var asTeamMergeRequestCanceledShownToPrimaryTeam: DBXTeamLogEventTypeArgTeamMergeRequestCanceledShownToPrimaryTeam? { + return self as? DBXTeamLogEventTypeArgTeamMergeRequestCanceledShownToPrimaryTeam + } + + @objc + public var asTeamMergeRequestCanceledShownToSecondaryTeam: DBXTeamLogEventTypeArgTeamMergeRequestCanceledShownToSecondaryTeam? { + return self as? DBXTeamLogEventTypeArgTeamMergeRequestCanceledShownToSecondaryTeam + } + + @objc + public var asTeamMergeRequestExpired: DBXTeamLogEventTypeArgTeamMergeRequestExpired? { + return self as? DBXTeamLogEventTypeArgTeamMergeRequestExpired + } + + @objc + public var asTeamMergeRequestExpiredShownToPrimaryTeam: DBXTeamLogEventTypeArgTeamMergeRequestExpiredShownToPrimaryTeam? { + return self as? DBXTeamLogEventTypeArgTeamMergeRequestExpiredShownToPrimaryTeam + } + + @objc + public var asTeamMergeRequestExpiredShownToSecondaryTeam: DBXTeamLogEventTypeArgTeamMergeRequestExpiredShownToSecondaryTeam? { + return self as? DBXTeamLogEventTypeArgTeamMergeRequestExpiredShownToSecondaryTeam + } + + @objc + public var asTeamMergeRequestRejectedShownToPrimaryTeam: DBXTeamLogEventTypeArgTeamMergeRequestRejectedShownToPrimaryTeam? { + return self as? DBXTeamLogEventTypeArgTeamMergeRequestRejectedShownToPrimaryTeam + } + + @objc + public var asTeamMergeRequestRejectedShownToSecondaryTeam: DBXTeamLogEventTypeArgTeamMergeRequestRejectedShownToSecondaryTeam? { + return self as? DBXTeamLogEventTypeArgTeamMergeRequestRejectedShownToSecondaryTeam + } + + @objc + public var asTeamMergeRequestReminder: DBXTeamLogEventTypeArgTeamMergeRequestReminder? { + return self as? DBXTeamLogEventTypeArgTeamMergeRequestReminder + } + + @objc + public var asTeamMergeRequestReminderShownToPrimaryTeam: DBXTeamLogEventTypeArgTeamMergeRequestReminderShownToPrimaryTeam? { + return self as? DBXTeamLogEventTypeArgTeamMergeRequestReminderShownToPrimaryTeam + } + + @objc + public var asTeamMergeRequestReminderShownToSecondaryTeam: DBXTeamLogEventTypeArgTeamMergeRequestReminderShownToSecondaryTeam? { + return self as? DBXTeamLogEventTypeArgTeamMergeRequestReminderShownToSecondaryTeam + } + + @objc + public var asTeamMergeRequestRevoked: DBXTeamLogEventTypeArgTeamMergeRequestRevoked? { + return self as? DBXTeamLogEventTypeArgTeamMergeRequestRevoked + } + + @objc + public var asTeamMergeRequestSentShownToPrimaryTeam: DBXTeamLogEventTypeArgTeamMergeRequestSentShownToPrimaryTeam? { + return self as? DBXTeamLogEventTypeArgTeamMergeRequestSentShownToPrimaryTeam + } + + @objc + public var asTeamMergeRequestSentShownToSecondaryTeam: DBXTeamLogEventTypeArgTeamMergeRequestSentShownToSecondaryTeam? { + return self as? DBXTeamLogEventTypeArgTeamMergeRequestSentShownToSecondaryTeam + } + + @objc + public var asOther: DBXTeamLogEventTypeArgOther? { + return self as? DBXTeamLogEventTypeArgOther + } +} + +/// (admin_alerting) Changed an alert state +@objc +public class DBXTeamLogEventTypeArgAdminAlertingAlertStateChanged: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.adminAlertingAlertStateChanged + super.init(swift: swift) + } +} + +/// (admin_alerting) Changed an alert setting +@objc +public class DBXTeamLogEventTypeArgAdminAlertingChangedAlertConfig: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.adminAlertingChangedAlertConfig + super.init(swift: swift) + } +} + +/// (admin_alerting) Triggered security alert +@objc +public class DBXTeamLogEventTypeArgAdminAlertingTriggeredAlert: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.adminAlertingTriggeredAlert + super.init(swift: swift) + } +} + +/// (admin_alerting) Completed ransomware restore process +@objc +public class DBXTeamLogEventTypeArgRansomwareRestoreProcessCompleted: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.ransomwareRestoreProcessCompleted + super.init(swift: swift) + } +} + +/// (admin_alerting) Started ransomware restore process +@objc +public class DBXTeamLogEventTypeArgRansomwareRestoreProcessStarted: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.ransomwareRestoreProcessStarted + super.init(swift: swift) + } +} + +/// (apps) Failed to connect app for member +@objc +public class DBXTeamLogEventTypeArgAppBlockedByPermissions: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.appBlockedByPermissions + super.init(swift: swift) + } +} + +/// (apps) Linked app for team +@objc +public class DBXTeamLogEventTypeArgAppLinkTeam: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.appLinkTeam + super.init(swift: swift) + } +} + +/// (apps) Linked app for member +@objc +public class DBXTeamLogEventTypeArgAppLinkUser: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.appLinkUser + super.init(swift: swift) + } +} + +/// (apps) Unlinked app for team +@objc +public class DBXTeamLogEventTypeArgAppUnlinkTeam: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.appUnlinkTeam + super.init(swift: swift) + } +} + +/// (apps) Unlinked app for member +@objc +public class DBXTeamLogEventTypeArgAppUnlinkUser: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.appUnlinkUser + super.init(swift: swift) + } +} + +/// (apps) Connected integration for member +@objc +public class DBXTeamLogEventTypeArgIntegrationConnected: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.integrationConnected + super.init(swift: swift) + } +} + +/// (apps) Disconnected integration for member +@objc +public class DBXTeamLogEventTypeArgIntegrationDisconnected: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.integrationDisconnected + super.init(swift: swift) + } +} + +/// (comments) Added file comment +@objc +public class DBXTeamLogEventTypeArgFileAddComment: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.fileAddComment + super.init(swift: swift) + } +} + +/// (comments) Subscribed to or unsubscribed from comment notifications for file +@objc +public class DBXTeamLogEventTypeArgFileChangeCommentSubscription: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.fileChangeCommentSubscription + super.init(swift: swift) + } +} + +/// (comments) Deleted file comment +@objc +public class DBXTeamLogEventTypeArgFileDeleteComment: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.fileDeleteComment + super.init(swift: swift) + } +} + +/// (comments) Edited file comment +@objc +public class DBXTeamLogEventTypeArgFileEditComment: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.fileEditComment + super.init(swift: swift) + } +} + +/// (comments) Liked file comment (deprecated, no longer logged) +@objc +public class DBXTeamLogEventTypeArgFileLikeComment: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.fileLikeComment + super.init(swift: swift) + } +} + +/// (comments) Resolved file comment +@objc +public class DBXTeamLogEventTypeArgFileResolveComment: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.fileResolveComment + super.init(swift: swift) + } +} + +/// (comments) Unliked file comment (deprecated, no longer logged) +@objc +public class DBXTeamLogEventTypeArgFileUnlikeComment: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.fileUnlikeComment + super.init(swift: swift) + } +} + +/// (comments) Unresolved file comment +@objc +public class DBXTeamLogEventTypeArgFileUnresolveComment: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.fileUnresolveComment + super.init(swift: swift) + } +} + +/// (dash) Added a comment to a stack +@objc +public class DBXTeamLogEventTypeArgDashAddedCommentToStack: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.dashAddedCommentToStack + super.init(swift: swift) + } +} + +/// (dash) Connected to a user connector +@objc +public class DBXTeamLogEventTypeArgDashAddedConnector: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.dashAddedConnector + super.init(swift: swift) + } +} + +/// (dash) Added a link to a stack +@objc +public class DBXTeamLogEventTypeArgDashAddedLinkToStack: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.dashAddedLinkToStack + super.init(swift: swift) + } +} + +/// (dash) Admin added an email domain to the team allowlist +@objc +public class DBXTeamLogEventTypeArgDashAddedTeamEmailDomainAllowlist: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.dashAddedTeamEmailDomainAllowlist + super.init(swift: swift) + } +} + +/// (dash) Admin added an admin connector +@objc +public class DBXTeamLogEventTypeArgDashAdminAddedOrgWideConnector: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.dashAdminAddedOrgWideConnector + super.init(swift: swift) + } +} + +/// (dash) Admin disabled a user connector +@objc +public class DBXTeamLogEventTypeArgDashAdminDisabledConnector: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.dashAdminDisabledConnector + super.init(swift: swift) + } +} + +/// (dash) Admin enabled a user connector +@objc +public class DBXTeamLogEventTypeArgDashAdminEnabledConnector: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.dashAdminEnabledConnector + super.init(swift: swift) + } +} + +/// (dash) Admin removed an admin connector +@objc +public class DBXTeamLogEventTypeArgDashAdminRemovedOrgWideConnector: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.dashAdminRemovedOrgWideConnector + super.init(swift: swift) + } +} + +/// (dash) Archived a stack +@objc +public class DBXTeamLogEventTypeArgDashArchivedStack: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.dashArchivedStack + super.init(swift: swift) + } +} + +/// (dash) Changed the audience of a shared link to a stack +@objc +public class DBXTeamLogEventTypeArgDashChangedAudienceOfSharedLinkToStack: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.dashChangedAudienceOfSharedLinkToStack + super.init(swift: swift) + } +} + +/// (dash) Cloned stack +@objc +public class DBXTeamLogEventTypeArgDashClonedStack: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.dashClonedStack + super.init(swift: swift) + } +} + +/// (dash) Called a tool on a connector +@objc +public class DBXTeamLogEventTypeArgDashConnectorToolsCall: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.dashConnectorToolsCall + super.init(swift: swift) + } +} + +/// (dash) Created a stack +@objc +public class DBXTeamLogEventTypeArgDashCreatedStack: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.dashCreatedStack + super.init(swift: swift) + } +} + +/// (dash) Deleted a comment from a stack +@objc +public class DBXTeamLogEventTypeArgDashDeletedCommentFromStack: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.dashDeletedCommentFromStack + super.init(swift: swift) + } +} + +/// (dash) Deleted a stack +@objc +public class DBXTeamLogEventTypeArgDashDeletedStack: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.dashDeletedStack + super.init(swift: swift) + } +} + +/// (dash) Edited a comment in a stack +@objc +public class DBXTeamLogEventTypeArgDashEditedCommentInStack: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.dashEditedCommentInStack + super.init(swift: swift) + } +} + +/// (dash) External user opened a stack +@objc +public class DBXTeamLogEventTypeArgDashExternalUserOpenedStack: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.dashExternalUserOpenedStack + super.init(swift: swift) + } +} + +/// (dash) Opened the desktop app for the first time +@objc +public class DBXTeamLogEventTypeArgDashFirstLaunchedDesktop: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.dashFirstLaunchedDesktop + super.init(swift: swift) + } +} + +/// (dash) Opened the extension for the first time +@objc +public class DBXTeamLogEventTypeArgDashFirstLaunchedExtension: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.dashFirstLaunchedExtension + super.init(swift: swift) + } +} + +/// (dash) Opened the web Start Page for the first time +@objc +public class DBXTeamLogEventTypeArgDashFirstLaunchedWebStartPage: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.dashFirstLaunchedWebStartPage + super.init(swift: swift) + } +} + +/// (dash) Checked access permissions to a stack +@objc +public class DBXTeamLogEventTypeArgDashOpenedSharedLinkToStack: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.dashOpenedSharedLinkToStack + super.init(swift: swift) + } +} + +/// (dash) Opened a stack +@objc +public class DBXTeamLogEventTypeArgDashOpenedStack: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.dashOpenedStack + super.init(swift: swift) + } +} + +/// (dash) Changed the preview opt-out status +@objc +public class DBXTeamLogEventTypeArgDashPreviewOptOutStatusChanged: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.dashPreviewOptOutStatusChanged + super.init(swift: swift) + } +} + +/// (dash) Disconnected a user connector +@objc +public class DBXTeamLogEventTypeArgDashRemovedConnector: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.dashRemovedConnector + super.init(swift: swift) + } +} + +/// (dash) Removed a link from a stack +@objc +public class DBXTeamLogEventTypeArgDashRemovedLinkFromStack: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.dashRemovedLinkFromStack + super.init(swift: swift) + } +} + +/// (dash) Removed a shared link to a stack +@objc +public class DBXTeamLogEventTypeArgDashRemovedSharedLinkToStack: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.dashRemovedSharedLinkToStack + super.init(swift: swift) + } +} + +/// (dash) Admin removed an email domain from the team allowlist +@objc +public class DBXTeamLogEventTypeArgDashRemovedTeamEmailDomainAllowlist: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.dashRemovedTeamEmailDomainAllowlist + super.init(swift: swift) + } +} + +/// (dash) Renamed a stack +@objc +public class DBXTeamLogEventTypeArgDashRenamedStack: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.dashRenamedStack + super.init(swift: swift) + } +} +/// (dash) Shared a link to a stack +@objc +public class DBXTeamLogEventTypeArgDashSharedLinkToStack: DBXTeamLogEventTypeArg { @objc - public var asAdminAlertingAlertStateChanged: DBXTeamLogEventTypeArgAdminAlertingAlertStateChanged? { - self as? DBXTeamLogEventTypeArgAdminAlertingAlertStateChanged + public init() { + let swift = TeamLog.EventTypeArg.dashSharedLinkToStack + super.init(swift: swift) } +} +/// (dash) Unarchived a stack +@objc +public class DBXTeamLogEventTypeArgDashUnarchivedStack: DBXTeamLogEventTypeArg { @objc - public var asAdminAlertingChangedAlertConfig: DBXTeamLogEventTypeArgAdminAlertingChangedAlertConfig? { - self as? DBXTeamLogEventTypeArgAdminAlertingChangedAlertConfig + public init() { + let swift = TeamLog.EventTypeArg.dashUnarchivedStack + super.init(swift: swift) } +} +/// (dash) Member viewed a company stack +@objc +public class DBXTeamLogEventTypeArgDashViewedCompanyStack: DBXTeamLogEventTypeArg { @objc - public var asAdminAlertingTriggeredAlert: DBXTeamLogEventTypeArgAdminAlertingTriggeredAlert? { - self as? DBXTeamLogEventTypeArgAdminAlertingTriggeredAlert + public init() { + let swift = TeamLog.EventTypeArg.dashViewedCompanyStack + super.init(swift: swift) } +} +/// (dash) Admin viewed the external AI activity report +@objc +public class DBXTeamLogEventTypeArgDashViewedExternalAiActivityReport: DBXTeamLogEventTypeArg { @objc - public var asRansomwareRestoreProcessCompleted: DBXTeamLogEventTypeArgRansomwareRestoreProcessCompleted? { - self as? DBXTeamLogEventTypeArgRansomwareRestoreProcessCompleted + public init() { + let swift = TeamLog.EventTypeArg.dashViewedExternalAiActivityReport + super.init(swift: swift) } +} +/// (data_governance) Added folders to policy +@objc +public class DBXTeamLogEventTypeArgGovernancePolicyAddFolders: DBXTeamLogEventTypeArg { @objc - public var asRansomwareRestoreProcessStarted: DBXTeamLogEventTypeArgRansomwareRestoreProcessStarted? { - self as? DBXTeamLogEventTypeArgRansomwareRestoreProcessStarted + public init() { + let swift = TeamLog.EventTypeArg.governancePolicyAddFolders + super.init(swift: swift) } +} +/// (data_governance) Couldn't add a folder to a policy +@objc +public class DBXTeamLogEventTypeArgGovernancePolicyAddFolderFailed: DBXTeamLogEventTypeArg { @objc - public var asAppBlockedByPermissions: DBXTeamLogEventTypeArgAppBlockedByPermissions? { - self as? DBXTeamLogEventTypeArgAppBlockedByPermissions + public init() { + let swift = TeamLog.EventTypeArg.governancePolicyAddFolderFailed + super.init(swift: swift) } +} +/// (data_governance) Content disposed +@objc +public class DBXTeamLogEventTypeArgGovernancePolicyContentDisposed: DBXTeamLogEventTypeArg { @objc - public var asAppLinkTeam: DBXTeamLogEventTypeArgAppLinkTeam? { - self as? DBXTeamLogEventTypeArgAppLinkTeam + public init() { + let swift = TeamLog.EventTypeArg.governancePolicyContentDisposed + super.init(swift: swift) } +} +/// (data_governance) Activated a new policy +@objc +public class DBXTeamLogEventTypeArgGovernancePolicyCreate: DBXTeamLogEventTypeArg { @objc - public var asAppLinkUser: DBXTeamLogEventTypeArgAppLinkUser? { - self as? DBXTeamLogEventTypeArgAppLinkUser + public init() { + let swift = TeamLog.EventTypeArg.governancePolicyCreate + super.init(swift: swift) } +} +/// (data_governance) Deleted a policy +@objc +public class DBXTeamLogEventTypeArgGovernancePolicyDelete: DBXTeamLogEventTypeArg { @objc - public var asAppUnlinkTeam: DBXTeamLogEventTypeArgAppUnlinkTeam? { - self as? DBXTeamLogEventTypeArgAppUnlinkTeam + public init() { + let swift = TeamLog.EventTypeArg.governancePolicyDelete + super.init(swift: swift) } +} +/// (data_governance) Edited policy +@objc +public class DBXTeamLogEventTypeArgGovernancePolicyEditDetails: DBXTeamLogEventTypeArg { @objc - public var asAppUnlinkUser: DBXTeamLogEventTypeArgAppUnlinkUser? { - self as? DBXTeamLogEventTypeArgAppUnlinkUser + public init() { + let swift = TeamLog.EventTypeArg.governancePolicyEditDetails + super.init(swift: swift) } +} +/// (data_governance) Changed policy duration +@objc +public class DBXTeamLogEventTypeArgGovernancePolicyEditDuration: DBXTeamLogEventTypeArg { @objc - public var asIntegrationConnected: DBXTeamLogEventTypeArgIntegrationConnected? { - self as? DBXTeamLogEventTypeArgIntegrationConnected + public init() { + let swift = TeamLog.EventTypeArg.governancePolicyEditDuration + super.init(swift: swift) } +} +/// (data_governance) Created a policy download +@objc +public class DBXTeamLogEventTypeArgGovernancePolicyExportCreated: DBXTeamLogEventTypeArg { @objc - public var asIntegrationDisconnected: DBXTeamLogEventTypeArgIntegrationDisconnected? { - self as? DBXTeamLogEventTypeArgIntegrationDisconnected + public init() { + let swift = TeamLog.EventTypeArg.governancePolicyExportCreated + super.init(swift: swift) } +} +/// (data_governance) Removed a policy download +@objc +public class DBXTeamLogEventTypeArgGovernancePolicyExportRemoved: DBXTeamLogEventTypeArg { @objc - public var asFileAddComment: DBXTeamLogEventTypeArgFileAddComment? { - self as? DBXTeamLogEventTypeArgFileAddComment + public init() { + let swift = TeamLog.EventTypeArg.governancePolicyExportRemoved + super.init(swift: swift) } +} +/// (data_governance) Removed folders from policy +@objc +public class DBXTeamLogEventTypeArgGovernancePolicyRemoveFolders: DBXTeamLogEventTypeArg { @objc - public var asFileChangeCommentSubscription: DBXTeamLogEventTypeArgFileChangeCommentSubscription? { - self as? DBXTeamLogEventTypeArgFileChangeCommentSubscription + public init() { + let swift = TeamLog.EventTypeArg.governancePolicyRemoveFolders + super.init(swift: swift) } +} +/// (data_governance) Created a summary report for a policy +@objc +public class DBXTeamLogEventTypeArgGovernancePolicyReportCreated: DBXTeamLogEventTypeArg { @objc - public var asFileDeleteComment: DBXTeamLogEventTypeArgFileDeleteComment? { - self as? DBXTeamLogEventTypeArgFileDeleteComment + public init() { + let swift = TeamLog.EventTypeArg.governancePolicyReportCreated + super.init(swift: swift) } +} +/// (data_governance) Downloaded content from a policy +@objc +public class DBXTeamLogEventTypeArgGovernancePolicyZipPartDownloaded: DBXTeamLogEventTypeArg { @objc - public var asFileEditComment: DBXTeamLogEventTypeArgFileEditComment? { - self as? DBXTeamLogEventTypeArgFileEditComment + public init() { + let swift = TeamLog.EventTypeArg.governancePolicyZipPartDownloaded + super.init(swift: swift) } +} +/// (data_governance) Activated a hold +@objc +public class DBXTeamLogEventTypeArgLegalHoldsActivateAHold: DBXTeamLogEventTypeArg { @objc - public var asFileLikeComment: DBXTeamLogEventTypeArgFileLikeComment? { - self as? DBXTeamLogEventTypeArgFileLikeComment + public init() { + let swift = TeamLog.EventTypeArg.legalHoldsActivateAHold + super.init(swift: swift) } +} +/// (data_governance) Added members to a hold +@objc +public class DBXTeamLogEventTypeArgLegalHoldsAddMembers: DBXTeamLogEventTypeArg { @objc - public var asFileResolveComment: DBXTeamLogEventTypeArgFileResolveComment? { - self as? DBXTeamLogEventTypeArgFileResolveComment + public init() { + let swift = TeamLog.EventTypeArg.legalHoldsAddMembers + super.init(swift: swift) } +} +/// (data_governance) Edited details for a hold +@objc +public class DBXTeamLogEventTypeArgLegalHoldsChangeHoldDetails: DBXTeamLogEventTypeArg { @objc - public var asFileUnlikeComment: DBXTeamLogEventTypeArgFileUnlikeComment? { - self as? DBXTeamLogEventTypeArgFileUnlikeComment + public init() { + let swift = TeamLog.EventTypeArg.legalHoldsChangeHoldDetails + super.init(swift: swift) } +} +/// (data_governance) Renamed a hold +@objc +public class DBXTeamLogEventTypeArgLegalHoldsChangeHoldName: DBXTeamLogEventTypeArg { @objc - public var asFileUnresolveComment: DBXTeamLogEventTypeArgFileUnresolveComment? { - self as? DBXTeamLogEventTypeArgFileUnresolveComment + public init() { + let swift = TeamLog.EventTypeArg.legalHoldsChangeHoldName + super.init(swift: swift) } +} +/// (data_governance) Exported hold +@objc +public class DBXTeamLogEventTypeArgLegalHoldsExportAHold: DBXTeamLogEventTypeArg { @objc - public var asGovernancePolicyAddFolders: DBXTeamLogEventTypeArgGovernancePolicyAddFolders? { - self as? DBXTeamLogEventTypeArgGovernancePolicyAddFolders + public init() { + let swift = TeamLog.EventTypeArg.legalHoldsExportAHold + super.init(swift: swift) } +} +/// (data_governance) Canceled export for a hold +@objc +public class DBXTeamLogEventTypeArgLegalHoldsExportCancelled: DBXTeamLogEventTypeArg { @objc - public var asGovernancePolicyAddFolderFailed: DBXTeamLogEventTypeArgGovernancePolicyAddFolderFailed? { - self as? DBXTeamLogEventTypeArgGovernancePolicyAddFolderFailed + public init() { + let swift = TeamLog.EventTypeArg.legalHoldsExportCancelled + super.init(swift: swift) } +} +/// (data_governance) Downloaded export for a hold +@objc +public class DBXTeamLogEventTypeArgLegalHoldsExportDownloaded: DBXTeamLogEventTypeArg { @objc - public var asGovernancePolicyContentDisposed: DBXTeamLogEventTypeArgGovernancePolicyContentDisposed? { - self as? DBXTeamLogEventTypeArgGovernancePolicyContentDisposed + public init() { + let swift = TeamLog.EventTypeArg.legalHoldsExportDownloaded + super.init(swift: swift) } +} +/// (data_governance) Removed export for a hold +@objc +public class DBXTeamLogEventTypeArgLegalHoldsExportRemoved: DBXTeamLogEventTypeArg { @objc - public var asGovernancePolicyCreate: DBXTeamLogEventTypeArgGovernancePolicyCreate? { - self as? DBXTeamLogEventTypeArgGovernancePolicyCreate + public init() { + let swift = TeamLog.EventTypeArg.legalHoldsExportRemoved + super.init(swift: swift) } +} +/// (data_governance) Released a hold +@objc +public class DBXTeamLogEventTypeArgLegalHoldsReleaseAHold: DBXTeamLogEventTypeArg { @objc - public var asGovernancePolicyDelete: DBXTeamLogEventTypeArgGovernancePolicyDelete? { - self as? DBXTeamLogEventTypeArgGovernancePolicyDelete + public init() { + let swift = TeamLog.EventTypeArg.legalHoldsReleaseAHold + super.init(swift: swift) } +} +/// (data_governance) Removed members from a hold +@objc +public class DBXTeamLogEventTypeArgLegalHoldsRemoveMembers: DBXTeamLogEventTypeArg { @objc - public var asGovernancePolicyEditDetails: DBXTeamLogEventTypeArgGovernancePolicyEditDetails? { - self as? DBXTeamLogEventTypeArgGovernancePolicyEditDetails + public init() { + let swift = TeamLog.EventTypeArg.legalHoldsRemoveMembers + super.init(swift: swift) } +} +/// (data_governance) Created a summary report for a hold +@objc +public class DBXTeamLogEventTypeArgLegalHoldsReportAHold: DBXTeamLogEventTypeArg { @objc - public var asGovernancePolicyEditDuration: DBXTeamLogEventTypeArgGovernancePolicyEditDuration? { - self as? DBXTeamLogEventTypeArgGovernancePolicyEditDuration + public init() { + let swift = TeamLog.EventTypeArg.legalHoldsReportAHold + super.init(swift: swift) } +} +/// (devices) Changed IP address associated with active desktop session +@objc +public class DBXTeamLogEventTypeArgDeviceChangeIpDesktop: DBXTeamLogEventTypeArg { @objc - public var asGovernancePolicyExportCreated: DBXTeamLogEventTypeArgGovernancePolicyExportCreated? { - self as? DBXTeamLogEventTypeArgGovernancePolicyExportCreated + public init() { + let swift = TeamLog.EventTypeArg.deviceChangeIpDesktop + super.init(swift: swift) } +} +/// (devices) Changed IP address associated with active mobile session +@objc +public class DBXTeamLogEventTypeArgDeviceChangeIpMobile: DBXTeamLogEventTypeArg { @objc - public var asGovernancePolicyExportRemoved: DBXTeamLogEventTypeArgGovernancePolicyExportRemoved? { - self as? DBXTeamLogEventTypeArgGovernancePolicyExportRemoved + public init() { + let swift = TeamLog.EventTypeArg.deviceChangeIpMobile + super.init(swift: swift) } +} +/// (devices) Changed IP address associated with active web session +@objc +public class DBXTeamLogEventTypeArgDeviceChangeIpWeb: DBXTeamLogEventTypeArg { @objc - public var asGovernancePolicyRemoveFolders: DBXTeamLogEventTypeArgGovernancePolicyRemoveFolders? { - self as? DBXTeamLogEventTypeArgGovernancePolicyRemoveFolders + public init() { + let swift = TeamLog.EventTypeArg.deviceChangeIpWeb + super.init(swift: swift) } +} +/// (devices) Failed to delete all files from unlinked device +@objc +public class DBXTeamLogEventTypeArgDeviceDeleteOnUnlinkFail: DBXTeamLogEventTypeArg { @objc - public var asGovernancePolicyReportCreated: DBXTeamLogEventTypeArgGovernancePolicyReportCreated? { - self as? DBXTeamLogEventTypeArgGovernancePolicyReportCreated + public init() { + let swift = TeamLog.EventTypeArg.deviceDeleteOnUnlinkFail + super.init(swift: swift) } +} +/// (devices) Deleted all files from unlinked device +@objc +public class DBXTeamLogEventTypeArgDeviceDeleteOnUnlinkSuccess: DBXTeamLogEventTypeArg { @objc - public var asGovernancePolicyZipPartDownloaded: DBXTeamLogEventTypeArgGovernancePolicyZipPartDownloaded? { - self as? DBXTeamLogEventTypeArgGovernancePolicyZipPartDownloaded + public init() { + let swift = TeamLog.EventTypeArg.deviceDeleteOnUnlinkSuccess + super.init(swift: swift) } +} +/// (devices) Failed to link device +@objc +public class DBXTeamLogEventTypeArgDeviceLinkFail: DBXTeamLogEventTypeArg { @objc - public var asLegalHoldsActivateAHold: DBXTeamLogEventTypeArgLegalHoldsActivateAHold? { - self as? DBXTeamLogEventTypeArgLegalHoldsActivateAHold + public init() { + let swift = TeamLog.EventTypeArg.deviceLinkFail + super.init(swift: swift) } +} +/// (devices) Linked device +@objc +public class DBXTeamLogEventTypeArgDeviceLinkSuccess: DBXTeamLogEventTypeArg { @objc - public var asLegalHoldsAddMembers: DBXTeamLogEventTypeArgLegalHoldsAddMembers? { - self as? DBXTeamLogEventTypeArgLegalHoldsAddMembers + public init() { + let swift = TeamLog.EventTypeArg.deviceLinkSuccess + super.init(swift: swift) } +} +/// (devices) Disabled device management (deprecated, no longer logged) +@objc +public class DBXTeamLogEventTypeArgDeviceManagementDisabled: DBXTeamLogEventTypeArg { @objc - public var asLegalHoldsChangeHoldDetails: DBXTeamLogEventTypeArgLegalHoldsChangeHoldDetails? { - self as? DBXTeamLogEventTypeArgLegalHoldsChangeHoldDetails + public init() { + let swift = TeamLog.EventTypeArg.deviceManagementDisabled + super.init(swift: swift) } +} +/// (devices) Enabled device management (deprecated, no longer logged) +@objc +public class DBXTeamLogEventTypeArgDeviceManagementEnabled: DBXTeamLogEventTypeArg { @objc - public var asLegalHoldsChangeHoldName: DBXTeamLogEventTypeArgLegalHoldsChangeHoldName? { - self as? DBXTeamLogEventTypeArgLegalHoldsChangeHoldName + public init() { + let swift = TeamLog.EventTypeArg.deviceManagementEnabled + super.init(swift: swift) } +} +/// (devices) Enabled/disabled backup for computer +@objc +public class DBXTeamLogEventTypeArgDeviceSyncBackupStatusChanged: DBXTeamLogEventTypeArg { @objc - public var asLegalHoldsExportAHold: DBXTeamLogEventTypeArgLegalHoldsExportAHold? { - self as? DBXTeamLogEventTypeArgLegalHoldsExportAHold + public init() { + let swift = TeamLog.EventTypeArg.deviceSyncBackupStatusChanged + super.init(swift: swift) } +} +/// (devices) Disconnected device +@objc +public class DBXTeamLogEventTypeArgDeviceUnlink: DBXTeamLogEventTypeArg { @objc - public var asLegalHoldsExportCancelled: DBXTeamLogEventTypeArgLegalHoldsExportCancelled? { - self as? DBXTeamLogEventTypeArgLegalHoldsExportCancelled + public init() { + let swift = TeamLog.EventTypeArg.deviceUnlink + super.init(swift: swift) } +} +/// (devices) Exported passwords +@objc +public class DBXTeamLogEventTypeArgDropboxPasswordsExported: DBXTeamLogEventTypeArg { @objc - public var asLegalHoldsExportDownloaded: DBXTeamLogEventTypeArgLegalHoldsExportDownloaded? { - self as? DBXTeamLogEventTypeArgLegalHoldsExportDownloaded + public init() { + let swift = TeamLog.EventTypeArg.dropboxPasswordsExported + super.init(swift: swift) } +} +/// (devices) Enrolled new Dropbox Passwords device +@objc +public class DBXTeamLogEventTypeArgDropboxPasswordsNewDeviceEnrolled: DBXTeamLogEventTypeArg { @objc - public var asLegalHoldsExportRemoved: DBXTeamLogEventTypeArgLegalHoldsExportRemoved? { - self as? DBXTeamLogEventTypeArgLegalHoldsExportRemoved + public init() { + let swift = TeamLog.EventTypeArg.dropboxPasswordsNewDeviceEnrolled + super.init(swift: swift) } +} +/// (devices) Refreshed auth token used for setting up EMM +@objc +public class DBXTeamLogEventTypeArgEmmRefreshAuthToken: DBXTeamLogEventTypeArg { @objc - public var asLegalHoldsReleaseAHold: DBXTeamLogEventTypeArgLegalHoldsReleaseAHold? { - self as? DBXTeamLogEventTypeArgLegalHoldsReleaseAHold + public init() { + let swift = TeamLog.EventTypeArg.emmRefreshAuthToken + super.init(swift: swift) } +} +/// (devices) Checked external drive backup eligibility status +@objc +public class DBXTeamLogEventTypeArgExternalDriveBackupEligibilityStatusChecked: DBXTeamLogEventTypeArg { @objc - public var asLegalHoldsRemoveMembers: DBXTeamLogEventTypeArgLegalHoldsRemoveMembers? { - self as? DBXTeamLogEventTypeArgLegalHoldsRemoveMembers + public init() { + let swift = TeamLog.EventTypeArg.externalDriveBackupEligibilityStatusChecked + super.init(swift: swift) } +} +/// (devices) Modified external drive backup +@objc +public class DBXTeamLogEventTypeArgExternalDriveBackupStatusChanged: DBXTeamLogEventTypeArg { @objc - public var asLegalHoldsReportAHold: DBXTeamLogEventTypeArgLegalHoldsReportAHold? { - self as? DBXTeamLogEventTypeArgLegalHoldsReportAHold + public init() { + let swift = TeamLog.EventTypeArg.externalDriveBackupStatusChanged + super.init(swift: swift) } +} +/// (domains) Granted/revoked option to enable account capture on team domains +@objc +public class DBXTeamLogEventTypeArgAccountCaptureChangeAvailability: DBXTeamLogEventTypeArg { @objc - public var asDeviceChangeIpDesktop: DBXTeamLogEventTypeArgDeviceChangeIpDesktop? { - self as? DBXTeamLogEventTypeArgDeviceChangeIpDesktop + public init() { + let swift = TeamLog.EventTypeArg.accountCaptureChangeAvailability + super.init(swift: swift) } +} +/// (domains) Account-captured user migrated account to team +@objc +public class DBXTeamLogEventTypeArgAccountCaptureMigrateAccount: DBXTeamLogEventTypeArg { @objc - public var asDeviceChangeIpMobile: DBXTeamLogEventTypeArgDeviceChangeIpMobile? { - self as? DBXTeamLogEventTypeArgDeviceChangeIpMobile + public init() { + let swift = TeamLog.EventTypeArg.accountCaptureMigrateAccount + super.init(swift: swift) + } +} + +/// (domains) Sent account capture email to all unmanaged members +@objc +public class DBXTeamLogEventTypeArgAccountCaptureNotificationEmailsSent: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.accountCaptureNotificationEmailsSent + super.init(swift: swift) + } +} + +/// (domains) Account-captured user changed account email to personal email +@objc +public class DBXTeamLogEventTypeArgAccountCaptureRelinquishAccount: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.accountCaptureRelinquishAccount + super.init(swift: swift) + } +} + +/// (domains) Disabled domain invites (deprecated, no longer logged) +@objc +public class DBXTeamLogEventTypeArgDisabledDomainInvites: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.disabledDomainInvites + super.init(swift: swift) + } +} + +/// (domains) Approved user's request to join team +@objc +public class DBXTeamLogEventTypeArgDomainInvitesApproveRequestToJoinTeam: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.domainInvitesApproveRequestToJoinTeam + super.init(swift: swift) + } +} + +/// (domains) Declined user's request to join team +@objc +public class DBXTeamLogEventTypeArgDomainInvitesDeclineRequestToJoinTeam: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.domainInvitesDeclineRequestToJoinTeam + super.init(swift: swift) + } +} + +/// (domains) Sent domain invites to existing domain accounts (deprecated, no longer logged) +@objc +public class DBXTeamLogEventTypeArgDomainInvitesEmailExistingUsers: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.domainInvitesEmailExistingUsers + super.init(swift: swift) + } +} + +/// (domains) Requested to join team +@objc +public class DBXTeamLogEventTypeArgDomainInvitesRequestToJoinTeam: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.domainInvitesRequestToJoinTeam + super.init(swift: swift) + } +} + +/// (domains) Disabled "Automatically invite new users" (deprecated, no longer logged) +@objc +public class DBXTeamLogEventTypeArgDomainInvitesSetInviteNewUserPrefToNo: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.domainInvitesSetInviteNewUserPrefToNo + super.init(swift: swift) + } +} + +/// (domains) Enabled "Automatically invite new users" (deprecated, no longer logged) +@objc +public class DBXTeamLogEventTypeArgDomainInvitesSetInviteNewUserPrefToYes: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.domainInvitesSetInviteNewUserPrefToYes + super.init(swift: swift) + } +} + +/// (domains) Failed to verify team domain +@objc +public class DBXTeamLogEventTypeArgDomainVerificationAddDomainFail: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.domainVerificationAddDomainFail + super.init(swift: swift) + } +} + +/// (domains) Verified team domain +@objc +public class DBXTeamLogEventTypeArgDomainVerificationAddDomainSuccess: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.domainVerificationAddDomainSuccess + super.init(swift: swift) + } +} + +/// (domains) Removed domain from list of verified team domains +@objc +public class DBXTeamLogEventTypeArgDomainVerificationRemoveDomain: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.domainVerificationRemoveDomain + super.init(swift: swift) + } +} + +/// (domains) Enabled domain invites (deprecated, no longer logged) +@objc +public class DBXTeamLogEventTypeArgEnabledDomainInvites: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.enabledDomainInvites + super.init(swift: swift) + } +} + +/// (encryption) Canceled team key rotation +@objc +public class DBXTeamLogEventTypeArgEncryptedFolderCancelTeamKeyRotation: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.encryptedFolderCancelTeamKeyRotation + super.init(swift: swift) + } +} + +/// (encryption) Added recovery key +@objc +public class DBXTeamLogEventTypeArgEncryptedFolderEnrollBackupKey: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.encryptedFolderEnrollBackupKey + super.init(swift: swift) + } +} + +/// (encryption) Enrolled device +@objc +public class DBXTeamLogEventTypeArgEncryptedFolderEnrollClient: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.encryptedFolderEnrollClient + super.init(swift: swift) + } +} + +/// (encryption) Activated team folder encryption +@objc +public class DBXTeamLogEventTypeArgEncryptedFolderEnrollTeam: DBXTeamLogEventTypeArg { + @objc + public init() { + let swift = TeamLog.EventTypeArg.encryptedFolderEnrollTeam + super.init(swift: swift) } +} +/// (encryption) Deactivated team folder encryption +@objc +public class DBXTeamLogEventTypeArgEncryptedFolderFinishTeamUnenrollment: DBXTeamLogEventTypeArg { @objc - public var asDeviceChangeIpWeb: DBXTeamLogEventTypeArgDeviceChangeIpWeb? { - self as? DBXTeamLogEventTypeArgDeviceChangeIpWeb + public init() { + let swift = TeamLog.EventTypeArg.encryptedFolderFinishTeamUnenrollment + super.init(swift: swift) } +} +/// (encryption) Initiated team key rotation +@objc +public class DBXTeamLogEventTypeArgEncryptedFolderInitTeamKeyRotation: DBXTeamLogEventTypeArg { @objc - public var asDeviceDeleteOnUnlinkFail: DBXTeamLogEventTypeArgDeviceDeleteOnUnlinkFail? { - self as? DBXTeamLogEventTypeArgDeviceDeleteOnUnlinkFail + public init() { + let swift = TeamLog.EventTypeArg.encryptedFolderInitTeamKeyRotation + super.init(swift: swift) } +} +/// (encryption) Initiated deactivation of team folder encryption +@objc +public class DBXTeamLogEventTypeArgEncryptedFolderInitTeamUnenrollment: DBXTeamLogEventTypeArg { @objc - public var asDeviceDeleteOnUnlinkSuccess: DBXTeamLogEventTypeArgDeviceDeleteOnUnlinkSuccess? { - self as? DBXTeamLogEventTypeArgDeviceDeleteOnUnlinkSuccess + public init() { + let swift = TeamLog.EventTypeArg.encryptedFolderInitTeamUnenrollment + super.init(swift: swift) } +} +/// (encryption) Removed recovery key +@objc +public class DBXTeamLogEventTypeArgEncryptedFolderRemoveBackupKey: DBXTeamLogEventTypeArg { @objc - public var asDeviceLinkFail: DBXTeamLogEventTypeArgDeviceLinkFail? { - self as? DBXTeamLogEventTypeArgDeviceLinkFail + public init() { + let swift = TeamLog.EventTypeArg.encryptedFolderRemoveBackupKey + super.init(swift: swift) } +} +/// (encryption) Rotated team key +@objc +public class DBXTeamLogEventTypeArgEncryptedFolderRotateTeamKey: DBXTeamLogEventTypeArg { @objc - public var asDeviceLinkSuccess: DBXTeamLogEventTypeArgDeviceLinkSuccess? { - self as? DBXTeamLogEventTypeArgDeviceLinkSuccess + public init() { + let swift = TeamLog.EventTypeArg.encryptedFolderRotateTeamKey + super.init(swift: swift) } +} +/// (encryption) Unenrolled device +@objc +public class DBXTeamLogEventTypeArgEncryptedFolderUnenrollClient: DBXTeamLogEventTypeArg { @objc - public var asDeviceManagementDisabled: DBXTeamLogEventTypeArgDeviceManagementDisabled? { - self as? DBXTeamLogEventTypeArgDeviceManagementDisabled + public init() { + let swift = TeamLog.EventTypeArg.encryptedFolderUnenrollClient + super.init(swift: swift) } +} +/// (encryption) Activated team encryption key +@objc +public class DBXTeamLogEventTypeArgTeamEncryptionKeyActivateKey: DBXTeamLogEventTypeArg { @objc - public var asDeviceManagementEnabled: DBXTeamLogEventTypeArgDeviceManagementEnabled? { - self as? DBXTeamLogEventTypeArgDeviceManagementEnabled + public init() { + let swift = TeamLog.EventTypeArg.teamEncryptionKeyActivateKey + super.init(swift: swift) } +} +/// (encryption) Canceled team encryption key deletion +@objc +public class DBXTeamLogEventTypeArgTeamEncryptionKeyCancelKeyDeletion: DBXTeamLogEventTypeArg { @objc - public var asDeviceSyncBackupStatusChanged: DBXTeamLogEventTypeArgDeviceSyncBackupStatusChanged? { - self as? DBXTeamLogEventTypeArgDeviceSyncBackupStatusChanged + public init() { + let swift = TeamLog.EventTypeArg.teamEncryptionKeyCancelKeyDeletion + super.init(swift: swift) } +} +/// (encryption) Created team encryption key +@objc +public class DBXTeamLogEventTypeArgTeamEncryptionKeyCreateKey: DBXTeamLogEventTypeArg { @objc - public var asDeviceUnlink: DBXTeamLogEventTypeArgDeviceUnlink? { - self as? DBXTeamLogEventTypeArgDeviceUnlink + public init() { + let swift = TeamLog.EventTypeArg.teamEncryptionKeyCreateKey + super.init(swift: swift) } +} +/// (encryption) Deactivated team encryption key +@objc +public class DBXTeamLogEventTypeArgTeamEncryptionKeyDeactivateKey: DBXTeamLogEventTypeArg { @objc - public var asDropboxPasswordsExported: DBXTeamLogEventTypeArgDropboxPasswordsExported? { - self as? DBXTeamLogEventTypeArgDropboxPasswordsExported + public init() { + let swift = TeamLog.EventTypeArg.teamEncryptionKeyDeactivateKey + super.init(swift: swift) } +} +/// (encryption) Deleted team encryption key +@objc +public class DBXTeamLogEventTypeArgTeamEncryptionKeyDeleteKey: DBXTeamLogEventTypeArg { @objc - public var asDropboxPasswordsNewDeviceEnrolled: DBXTeamLogEventTypeArgDropboxPasswordsNewDeviceEnrolled? { - self as? DBXTeamLogEventTypeArgDropboxPasswordsNewDeviceEnrolled + public init() { + let swift = TeamLog.EventTypeArg.teamEncryptionKeyDeleteKey + super.init(swift: swift) } +} +/// (encryption) Disabled team encryption key +@objc +public class DBXTeamLogEventTypeArgTeamEncryptionKeyDisableKey: DBXTeamLogEventTypeArg { @objc - public var asEmmRefreshAuthToken: DBXTeamLogEventTypeArgEmmRefreshAuthToken? { - self as? DBXTeamLogEventTypeArgEmmRefreshAuthToken + public init() { + let swift = TeamLog.EventTypeArg.teamEncryptionKeyDisableKey + super.init(swift: swift) } +} +/// (encryption) Enabled team encryption key +@objc +public class DBXTeamLogEventTypeArgTeamEncryptionKeyEnableKey: DBXTeamLogEventTypeArg { @objc - public var asExternalDriveBackupEligibilityStatusChecked: DBXTeamLogEventTypeArgExternalDriveBackupEligibilityStatusChecked? { - self as? DBXTeamLogEventTypeArgExternalDriveBackupEligibilityStatusChecked + public init() { + let swift = TeamLog.EventTypeArg.teamEncryptionKeyEnableKey + super.init(swift: swift) } +} +/// (encryption) Rotated team encryption key (deprecated, no longer logged) +@objc +public class DBXTeamLogEventTypeArgTeamEncryptionKeyRotateKey: DBXTeamLogEventTypeArg { @objc - public var asExternalDriveBackupStatusChanged: DBXTeamLogEventTypeArgExternalDriveBackupStatusChanged? { - self as? DBXTeamLogEventTypeArgExternalDriveBackupStatusChanged + public init() { + let swift = TeamLog.EventTypeArg.teamEncryptionKeyRotateKey + super.init(swift: swift) } +} +/// (encryption) Scheduled encryption key deletion +@objc +public class DBXTeamLogEventTypeArgTeamEncryptionKeyScheduleKeyDeletion: DBXTeamLogEventTypeArg { @objc - public var asAccountCaptureChangeAvailability: DBXTeamLogEventTypeArgAccountCaptureChangeAvailability? { - self as? DBXTeamLogEventTypeArgAccountCaptureChangeAvailability + public init() { + let swift = TeamLog.EventTypeArg.teamEncryptionKeyScheduleKeyDeletion + super.init(swift: swift) } +} +/// (file_operations) Applied naming convention +@objc +public class DBXTeamLogEventTypeArgApplyNamingConvention: DBXTeamLogEventTypeArg { @objc - public var asAccountCaptureMigrateAccount: DBXTeamLogEventTypeArgAccountCaptureMigrateAccount? { - self as? DBXTeamLogEventTypeArgAccountCaptureMigrateAccount + public init() { + let swift = TeamLog.EventTypeArg.applyNamingConvention + super.init(swift: swift) } +} +/// (file_operations) Created folders (deprecated, no longer logged) +@objc +public class DBXTeamLogEventTypeArgCreateFolder: DBXTeamLogEventTypeArg { @objc - public var asAccountCaptureNotificationEmailsSent: DBXTeamLogEventTypeArgAccountCaptureNotificationEmailsSent? { - self as? DBXTeamLogEventTypeArgAccountCaptureNotificationEmailsSent + public init() { + let swift = TeamLog.EventTypeArg.createFolder + super.init(swift: swift) } +} +/// (file_operations) Added files and/or folders +@objc +public class DBXTeamLogEventTypeArgFileAdd: DBXTeamLogEventTypeArg { @objc - public var asAccountCaptureRelinquishAccount: DBXTeamLogEventTypeArgAccountCaptureRelinquishAccount? { - self as? DBXTeamLogEventTypeArgAccountCaptureRelinquishAccount + public init() { + let swift = TeamLog.EventTypeArg.fileAdd + super.init(swift: swift) } +} +/// (file_operations) Added files and/or folders from automation +@objc +public class DBXTeamLogEventTypeArgFileAddFromAutomation: DBXTeamLogEventTypeArg { @objc - public var asDisabledDomainInvites: DBXTeamLogEventTypeArgDisabledDomainInvites? { - self as? DBXTeamLogEventTypeArgDisabledDomainInvites + public init() { + let swift = TeamLog.EventTypeArg.fileAddFromAutomation + super.init(swift: swift) } +} +/// (file_operations) Copied files and/or folders +@objc +public class DBXTeamLogEventTypeArgFileCopy: DBXTeamLogEventTypeArg { @objc - public var asDomainInvitesApproveRequestToJoinTeam: DBXTeamLogEventTypeArgDomainInvitesApproveRequestToJoinTeam? { - self as? DBXTeamLogEventTypeArgDomainInvitesApproveRequestToJoinTeam + public init() { + let swift = TeamLog.EventTypeArg.fileCopy + super.init(swift: swift) } +} +/// (file_operations) Deleted files and/or folders +@objc +public class DBXTeamLogEventTypeArgFileDelete: DBXTeamLogEventTypeArg { @objc - public var asDomainInvitesDeclineRequestToJoinTeam: DBXTeamLogEventTypeArgDomainInvitesDeclineRequestToJoinTeam? { - self as? DBXTeamLogEventTypeArgDomainInvitesDeclineRequestToJoinTeam + public init() { + let swift = TeamLog.EventTypeArg.fileDelete + super.init(swift: swift) } +} +/// (file_operations) Downloaded files and/or folders +@objc +public class DBXTeamLogEventTypeArgFileDownload: DBXTeamLogEventTypeArg { @objc - public var asDomainInvitesEmailExistingUsers: DBXTeamLogEventTypeArgDomainInvitesEmailExistingUsers? { - self as? DBXTeamLogEventTypeArgDomainInvitesEmailExistingUsers + public init() { + let swift = TeamLog.EventTypeArg.fileDownload + super.init(swift: swift) } +} +/// (file_operations) Edited files +@objc +public class DBXTeamLogEventTypeArgFileEdit: DBXTeamLogEventTypeArg { @objc - public var asDomainInvitesRequestToJoinTeam: DBXTeamLogEventTypeArgDomainInvitesRequestToJoinTeam? { - self as? DBXTeamLogEventTypeArgDomainInvitesRequestToJoinTeam + public init() { + let swift = TeamLog.EventTypeArg.fileEdit + super.init(swift: swift) } +} +/// (file_operations) Created copy reference to file/folder +@objc +public class DBXTeamLogEventTypeArgFileGetCopyReference: DBXTeamLogEventTypeArg { @objc - public var asDomainInvitesSetInviteNewUserPrefToNo: DBXTeamLogEventTypeArgDomainInvitesSetInviteNewUserPrefToNo? { - self as? DBXTeamLogEventTypeArgDomainInvitesSetInviteNewUserPrefToNo + public init() { + let swift = TeamLog.EventTypeArg.fileGetCopyReference + super.init(swift: swift) } +} +/// (file_operations) Locked/unlocked editing for a file +@objc +public class DBXTeamLogEventTypeArgFileLockingLockStatusChanged: DBXTeamLogEventTypeArg { @objc - public var asDomainInvitesSetInviteNewUserPrefToYes: DBXTeamLogEventTypeArgDomainInvitesSetInviteNewUserPrefToYes? { - self as? DBXTeamLogEventTypeArgDomainInvitesSetInviteNewUserPrefToYes + public init() { + let swift = TeamLog.EventTypeArg.fileLockingLockStatusChanged + super.init(swift: swift) } +} +/// (file_operations) Moved files and/or folders +@objc +public class DBXTeamLogEventTypeArgFileMove: DBXTeamLogEventTypeArg { @objc - public var asDomainVerificationAddDomainFail: DBXTeamLogEventTypeArgDomainVerificationAddDomainFail? { - self as? DBXTeamLogEventTypeArgDomainVerificationAddDomainFail + public init() { + let swift = TeamLog.EventTypeArg.fileMove + super.init(swift: swift) } +} +/// (file_operations) Permanently deleted files and/or folders +@objc +public class DBXTeamLogEventTypeArgFilePermanentlyDelete: DBXTeamLogEventTypeArg { @objc - public var asDomainVerificationAddDomainSuccess: DBXTeamLogEventTypeArgDomainVerificationAddDomainSuccess? { - self as? DBXTeamLogEventTypeArgDomainVerificationAddDomainSuccess + public init() { + let swift = TeamLog.EventTypeArg.filePermanentlyDelete + super.init(swift: swift) } +} +/// (file_operations) Previewed files and/or folders +@objc +public class DBXTeamLogEventTypeArgFilePreview: DBXTeamLogEventTypeArg { @objc - public var asDomainVerificationRemoveDomain: DBXTeamLogEventTypeArgDomainVerificationRemoveDomain? { - self as? DBXTeamLogEventTypeArgDomainVerificationRemoveDomain + public init() { + let swift = TeamLog.EventTypeArg.filePreview + super.init(swift: swift) } +} +/// (file_operations) Renamed files and/or folders +@objc +public class DBXTeamLogEventTypeArgFileRename: DBXTeamLogEventTypeArg { @objc - public var asEnabledDomainInvites: DBXTeamLogEventTypeArgEnabledDomainInvites? { - self as? DBXTeamLogEventTypeArgEnabledDomainInvites + public init() { + let swift = TeamLog.EventTypeArg.fileRename + super.init(swift: swift) } +} +/// (file_operations) Restored deleted files and/or folders +@objc +public class DBXTeamLogEventTypeArgFileRestore: DBXTeamLogEventTypeArg { @objc - public var asTeamEncryptionKeyCancelKeyDeletion: DBXTeamLogEventTypeArgTeamEncryptionKeyCancelKeyDeletion? { - self as? DBXTeamLogEventTypeArgTeamEncryptionKeyCancelKeyDeletion + public init() { + let swift = TeamLog.EventTypeArg.fileRestore + super.init(swift: swift) } +} +/// (file_operations) Reverted files to previous version +@objc +public class DBXTeamLogEventTypeArgFileRevert: DBXTeamLogEventTypeArg { @objc - public var asTeamEncryptionKeyCreateKey: DBXTeamLogEventTypeArgTeamEncryptionKeyCreateKey? { - self as? DBXTeamLogEventTypeArgTeamEncryptionKeyCreateKey + public init() { + let swift = TeamLog.EventTypeArg.fileRevert + super.init(swift: swift) } +} +/// (file_operations) Rolled back file actions +@objc +public class DBXTeamLogEventTypeArgFileRollbackChanges: DBXTeamLogEventTypeArg { @objc - public var asTeamEncryptionKeyDeleteKey: DBXTeamLogEventTypeArgTeamEncryptionKeyDeleteKey? { - self as? DBXTeamLogEventTypeArgTeamEncryptionKeyDeleteKey + public init() { + let swift = TeamLog.EventTypeArg.fileRollbackChanges + super.init(swift: swift) } +} +/// (file_operations) Saved file/folder using copy reference +@objc +public class DBXTeamLogEventTypeArgFileSaveCopyReference: DBXTeamLogEventTypeArg { @objc - public var asTeamEncryptionKeyDisableKey: DBXTeamLogEventTypeArgTeamEncryptionKeyDisableKey? { - self as? DBXTeamLogEventTypeArgTeamEncryptionKeyDisableKey + public init() { + let swift = TeamLog.EventTypeArg.fileSaveCopyReference + super.init(swift: swift) } +} +/// (file_operations) Updated folder overview +@objc +public class DBXTeamLogEventTypeArgFolderOverviewDescriptionChanged: DBXTeamLogEventTypeArg { @objc - public var asTeamEncryptionKeyEnableKey: DBXTeamLogEventTypeArgTeamEncryptionKeyEnableKey? { - self as? DBXTeamLogEventTypeArgTeamEncryptionKeyEnableKey + public init() { + let swift = TeamLog.EventTypeArg.folderOverviewDescriptionChanged + super.init(swift: swift) } +} +/// (file_operations) Pinned item to folder overview +@objc +public class DBXTeamLogEventTypeArgFolderOverviewItemPinned: DBXTeamLogEventTypeArg { @objc - public var asTeamEncryptionKeyRotateKey: DBXTeamLogEventTypeArgTeamEncryptionKeyRotateKey? { - self as? DBXTeamLogEventTypeArgTeamEncryptionKeyRotateKey + public init() { + let swift = TeamLog.EventTypeArg.folderOverviewItemPinned + super.init(swift: swift) } +} +/// (file_operations) Unpinned item from folder overview +@objc +public class DBXTeamLogEventTypeArgFolderOverviewItemUnpinned: DBXTeamLogEventTypeArg { @objc - public var asTeamEncryptionKeyScheduleKeyDeletion: DBXTeamLogEventTypeArgTeamEncryptionKeyScheduleKeyDeletion? { - self as? DBXTeamLogEventTypeArgTeamEncryptionKeyScheduleKeyDeletion + public init() { + let swift = TeamLog.EventTypeArg.folderOverviewItemUnpinned + super.init(swift: swift) } +} +/// (file_operations) Downloaded files in Replay +@objc +public class DBXTeamLogEventTypeArgMediaHubFileDownloaded: DBXTeamLogEventTypeArg { @objc - public var asApplyNamingConvention: DBXTeamLogEventTypeArgApplyNamingConvention? { - self as? DBXTeamLogEventTypeArgApplyNamingConvention + public init() { + let swift = TeamLog.EventTypeArg.mediaHubFileDownloaded + super.init(swift: swift) } +} +/// (file_operations) Added a label +@objc +public class DBXTeamLogEventTypeArgObjectLabelAdded: DBXTeamLogEventTypeArg { @objc - public var asCreateFolder: DBXTeamLogEventTypeArgCreateFolder? { - self as? DBXTeamLogEventTypeArgCreateFolder + public init() { + let swift = TeamLog.EventTypeArg.objectLabelAdded + super.init(swift: swift) } +} +/// (file_operations) Removed a label +@objc +public class DBXTeamLogEventTypeArgObjectLabelRemoved: DBXTeamLogEventTypeArg { @objc - public var asFileAdd: DBXTeamLogEventTypeArgFileAdd? { - self as? DBXTeamLogEventTypeArgFileAdd + public init() { + let swift = TeamLog.EventTypeArg.objectLabelRemoved + super.init(swift: swift) } +} +/// (file_operations) Updated a label's value +@objc +public class DBXTeamLogEventTypeArgObjectLabelUpdatedValue: DBXTeamLogEventTypeArg { @objc - public var asFileAddFromAutomation: DBXTeamLogEventTypeArgFileAddFromAutomation? { - self as? DBXTeamLogEventTypeArgFileAddFromAutomation + public init() { + let swift = TeamLog.EventTypeArg.objectLabelUpdatedValue + super.init(swift: swift) } +} +/// (file_operations) Organized a folder with multi-file organize +@objc +public class DBXTeamLogEventTypeArgOrganizeFolderWithTidy: DBXTeamLogEventTypeArg { @objc - public var asFileCopy: DBXTeamLogEventTypeArgFileCopy? { - self as? DBXTeamLogEventTypeArgFileCopy + public init() { + let swift = TeamLog.EventTypeArg.organizeFolderWithTidy + super.init(swift: swift) } +} +/// (file_operations) Deleted files in Replay +@objc +public class DBXTeamLogEventTypeArgReplayFileDelete: DBXTeamLogEventTypeArg { @objc - public var asFileDelete: DBXTeamLogEventTypeArgFileDelete? { - self as? DBXTeamLogEventTypeArgFileDelete + public init() { + let swift = TeamLog.EventTypeArg.replayFileDelete + super.init(swift: swift) } +} +/// (file_operations) Downloaded files in Replay +@objc +public class DBXTeamLogEventTypeArgReplayFileDownloaded: DBXTeamLogEventTypeArg { @objc - public var asFileDownload: DBXTeamLogEventTypeArgFileDownload? { - self as? DBXTeamLogEventTypeArgFileDownload + public init() { + let swift = TeamLog.EventTypeArg.replayFileDownloaded + super.init(swift: swift) } +} +/// (file_operations) Created a team project in Replay +@objc +public class DBXTeamLogEventTypeArgReplayTeamProjectCreated: DBXTeamLogEventTypeArg { @objc - public var asFileEdit: DBXTeamLogEventTypeArgFileEdit? { - self as? DBXTeamLogEventTypeArgFileEdit + public init() { + let swift = TeamLog.EventTypeArg.replayTeamProjectCreated + super.init(swift: swift) } +} +/// (file_operations) Rewound a folder +@objc +public class DBXTeamLogEventTypeArgRewindFolder: DBXTeamLogEventTypeArg { @objc - public var asFileGetCopyReference: DBXTeamLogEventTypeArgFileGetCopyReference? { - self as? DBXTeamLogEventTypeArgFileGetCopyReference + public init() { + let swift = TeamLog.EventTypeArg.rewindFolder + super.init(swift: swift) } +} +/// (file_operations) Reverted naming convention +@objc +public class DBXTeamLogEventTypeArgUndoNamingConvention: DBXTeamLogEventTypeArg { @objc - public var asFileLockingLockStatusChanged: DBXTeamLogEventTypeArgFileLockingLockStatusChanged? { - self as? DBXTeamLogEventTypeArgFileLockingLockStatusChanged + public init() { + let swift = TeamLog.EventTypeArg.undoNamingConvention + super.init(swift: swift) } +} +/// (file_operations) Removed multi-file organize +@objc +public class DBXTeamLogEventTypeArgUndoOrganizeFolderWithTidy: DBXTeamLogEventTypeArg { @objc - public var asFileMove: DBXTeamLogEventTypeArgFileMove? { - self as? DBXTeamLogEventTypeArgFileMove + public init() { + let swift = TeamLog.EventTypeArg.undoOrganizeFolderWithTidy + super.init(swift: swift) } +} +/// (file_operations) Tagged a file +@objc +public class DBXTeamLogEventTypeArgUserTagsAdded: DBXTeamLogEventTypeArg { @objc - public var asFilePermanentlyDelete: DBXTeamLogEventTypeArgFilePermanentlyDelete? { - self as? DBXTeamLogEventTypeArgFilePermanentlyDelete + public init() { + let swift = TeamLog.EventTypeArg.userTagsAdded + super.init(swift: swift) } +} +/// (file_operations) Removed tags +@objc +public class DBXTeamLogEventTypeArgUserTagsRemoved: DBXTeamLogEventTypeArg { @objc - public var asFilePreview: DBXTeamLogEventTypeArgFilePreview? { - self as? DBXTeamLogEventTypeArgFilePreview + public init() { + let swift = TeamLog.EventTypeArg.userTagsRemoved + super.init(swift: swift) } +} +/// (file_requests) Received files via Email to Dropbox +@objc +public class DBXTeamLogEventTypeArgEmailIngestReceiveFile: DBXTeamLogEventTypeArg { @objc - public var asFileRename: DBXTeamLogEventTypeArgFileRename? { - self as? DBXTeamLogEventTypeArgFileRename + public init() { + let swift = TeamLog.EventTypeArg.emailIngestReceiveFile + super.init(swift: swift) } +} +/// (file_requests) Auto closed file request +@objc +public class DBXTeamLogEventTypeArgFileRequestAutoClose: DBXTeamLogEventTypeArg { @objc - public var asFileRestore: DBXTeamLogEventTypeArgFileRestore? { - self as? DBXTeamLogEventTypeArgFileRestore + public init() { + let swift = TeamLog.EventTypeArg.fileRequestAutoClose + super.init(swift: swift) } +} +/// (file_requests) Changed file request +@objc +public class DBXTeamLogEventTypeArgFileRequestChange: DBXTeamLogEventTypeArg { @objc - public var asFileRevert: DBXTeamLogEventTypeArgFileRevert? { - self as? DBXTeamLogEventTypeArgFileRevert + public init() { + let swift = TeamLog.EventTypeArg.fileRequestChange + super.init(swift: swift) } +} +/// (file_requests) Closed file request +@objc +public class DBXTeamLogEventTypeArgFileRequestClose: DBXTeamLogEventTypeArg { @objc - public var asFileRollbackChanges: DBXTeamLogEventTypeArgFileRollbackChanges? { - self as? DBXTeamLogEventTypeArgFileRollbackChanges + public init() { + let swift = TeamLog.EventTypeArg.fileRequestClose + super.init(swift: swift) } +} +/// (file_requests) Created file request +@objc +public class DBXTeamLogEventTypeArgFileRequestCreate: DBXTeamLogEventTypeArg { @objc - public var asFileSaveCopyReference: DBXTeamLogEventTypeArgFileSaveCopyReference? { - self as? DBXTeamLogEventTypeArgFileSaveCopyReference + public init() { + let swift = TeamLog.EventTypeArg.fileRequestCreate + super.init(swift: swift) } +} +/// (file_requests) Delete file request +@objc +public class DBXTeamLogEventTypeArgFileRequestDelete: DBXTeamLogEventTypeArg { @objc - public var asFolderOverviewDescriptionChanged: DBXTeamLogEventTypeArgFolderOverviewDescriptionChanged? { - self as? DBXTeamLogEventTypeArgFolderOverviewDescriptionChanged + public init() { + let swift = TeamLog.EventTypeArg.fileRequestDelete + super.init(swift: swift) } +} +/// (file_requests) Received files for file request +@objc +public class DBXTeamLogEventTypeArgFileRequestReceiveFile: DBXTeamLogEventTypeArg { @objc - public var asFolderOverviewItemPinned: DBXTeamLogEventTypeArgFolderOverviewItemPinned? { - self as? DBXTeamLogEventTypeArgFolderOverviewItemPinned + public init() { + let swift = TeamLog.EventTypeArg.fileRequestReceiveFile + super.init(swift: swift) } +} +/// (groups) Added external ID for group +@objc +public class DBXTeamLogEventTypeArgGroupAddExternalId: DBXTeamLogEventTypeArg { @objc - public var asFolderOverviewItemUnpinned: DBXTeamLogEventTypeArgFolderOverviewItemUnpinned? { - self as? DBXTeamLogEventTypeArgFolderOverviewItemUnpinned + public init() { + let swift = TeamLog.EventTypeArg.groupAddExternalId + super.init(swift: swift) } +} +/// (groups) Added team members to group +@objc +public class DBXTeamLogEventTypeArgGroupAddMember: DBXTeamLogEventTypeArg { @objc - public var asObjectLabelAdded: DBXTeamLogEventTypeArgObjectLabelAdded? { - self as? DBXTeamLogEventTypeArgObjectLabelAdded + public init() { + let swift = TeamLog.EventTypeArg.groupAddMember + super.init(swift: swift) } +} +/// (groups) Changed external ID for group +@objc +public class DBXTeamLogEventTypeArgGroupChangeExternalId: DBXTeamLogEventTypeArg { @objc - public var asObjectLabelRemoved: DBXTeamLogEventTypeArgObjectLabelRemoved? { - self as? DBXTeamLogEventTypeArgObjectLabelRemoved + public init() { + let swift = TeamLog.EventTypeArg.groupChangeExternalId + super.init(swift: swift) } +} +/// (groups) Changed group management type +@objc +public class DBXTeamLogEventTypeArgGroupChangeManagementType: DBXTeamLogEventTypeArg { @objc - public var asObjectLabelUpdatedValue: DBXTeamLogEventTypeArgObjectLabelUpdatedValue? { - self as? DBXTeamLogEventTypeArgObjectLabelUpdatedValue + public init() { + let swift = TeamLog.EventTypeArg.groupChangeManagementType + super.init(swift: swift) } +} +/// (groups) Changed manager permissions of group member +@objc +public class DBXTeamLogEventTypeArgGroupChangeMemberRole: DBXTeamLogEventTypeArg { @objc - public var asOrganizeFolderWithTidy: DBXTeamLogEventTypeArgOrganizeFolderWithTidy? { - self as? DBXTeamLogEventTypeArgOrganizeFolderWithTidy + public init() { + let swift = TeamLog.EventTypeArg.groupChangeMemberRole + super.init(swift: swift) } +} +/// (groups) Created group +@objc +public class DBXTeamLogEventTypeArgGroupCreate: DBXTeamLogEventTypeArg { @objc - public var asReplayFileDelete: DBXTeamLogEventTypeArgReplayFileDelete? { - self as? DBXTeamLogEventTypeArgReplayFileDelete + public init() { + let swift = TeamLog.EventTypeArg.groupCreate + super.init(swift: swift) } +} +/// (groups) Deleted group +@objc +public class DBXTeamLogEventTypeArgGroupDelete: DBXTeamLogEventTypeArg { @objc - public var asRewindFolder: DBXTeamLogEventTypeArgRewindFolder? { - self as? DBXTeamLogEventTypeArgRewindFolder + public init() { + let swift = TeamLog.EventTypeArg.groupDelete + super.init(swift: swift) } +} +/// (groups) Updated group (deprecated, no longer logged) +@objc +public class DBXTeamLogEventTypeArgGroupDescriptionUpdated: DBXTeamLogEventTypeArg { @objc - public var asUndoNamingConvention: DBXTeamLogEventTypeArgUndoNamingConvention? { - self as? DBXTeamLogEventTypeArgUndoNamingConvention + public init() { + let swift = TeamLog.EventTypeArg.groupDescriptionUpdated + super.init(swift: swift) } +} +/// (groups) Changed group's external sharing setting +@objc +public class DBXTeamLogEventTypeArgGroupExternalSharingSettingOverrideChanged: DBXTeamLogEventTypeArg { @objc - public var asUndoOrganizeFolderWithTidy: DBXTeamLogEventTypeArgUndoOrganizeFolderWithTidy? { - self as? DBXTeamLogEventTypeArgUndoOrganizeFolderWithTidy + public init() { + let swift = TeamLog.EventTypeArg.groupExternalSharingSettingOverrideChanged + super.init(swift: swift) } +} +/// (groups) Updated group join policy (deprecated, no longer logged) +@objc +public class DBXTeamLogEventTypeArgGroupJoinPolicyUpdated: DBXTeamLogEventTypeArg { @objc - public var asUserTagsAdded: DBXTeamLogEventTypeArgUserTagsAdded? { - self as? DBXTeamLogEventTypeArgUserTagsAdded + public init() { + let swift = TeamLog.EventTypeArg.groupJoinPolicyUpdated + super.init(swift: swift) } +} +/// (groups) Moved group (deprecated, no longer logged) +@objc +public class DBXTeamLogEventTypeArgGroupMoved: DBXTeamLogEventTypeArg { @objc - public var asUserTagsRemoved: DBXTeamLogEventTypeArgUserTagsRemoved? { - self as? DBXTeamLogEventTypeArgUserTagsRemoved + public init() { + let swift = TeamLog.EventTypeArg.groupMoved + super.init(swift: swift) } +} +/// (groups) Removed external ID for group +@objc +public class DBXTeamLogEventTypeArgGroupRemoveExternalId: DBXTeamLogEventTypeArg { @objc - public var asEmailIngestReceiveFile: DBXTeamLogEventTypeArgEmailIngestReceiveFile? { - self as? DBXTeamLogEventTypeArgEmailIngestReceiveFile + public init() { + let swift = TeamLog.EventTypeArg.groupRemoveExternalId + super.init(swift: swift) } +} +/// (groups) Removed team members from group +@objc +public class DBXTeamLogEventTypeArgGroupRemoveMember: DBXTeamLogEventTypeArg { @objc - public var asFileRequestChange: DBXTeamLogEventTypeArgFileRequestChange? { - self as? DBXTeamLogEventTypeArgFileRequestChange + public init() { + let swift = TeamLog.EventTypeArg.groupRemoveMember + super.init(swift: swift) } +} +/// (groups) Renamed group +@objc +public class DBXTeamLogEventTypeArgGroupRename: DBXTeamLogEventTypeArg { @objc - public var asFileRequestClose: DBXTeamLogEventTypeArgFileRequestClose? { - self as? DBXTeamLogEventTypeArgFileRequestClose + public init() { + let swift = TeamLog.EventTypeArg.groupRename + super.init(swift: swift) } +} +/// (logins) Unlocked/locked account after failed sign in attempts +@objc +public class DBXTeamLogEventTypeArgAccountLockOrUnlocked: DBXTeamLogEventTypeArg { @objc - public var asFileRequestCreate: DBXTeamLogEventTypeArgFileRequestCreate? { - self as? DBXTeamLogEventTypeArgFileRequestCreate + public init() { + let swift = TeamLog.EventTypeArg.accountLockOrUnlocked + super.init(swift: swift) } +} +/// (logins) Failed to sign in via EMM (deprecated, replaced by 'Failed to sign in') +@objc +public class DBXTeamLogEventTypeArgEmmError: DBXTeamLogEventTypeArg { @objc - public var asFileRequestDelete: DBXTeamLogEventTypeArgFileRequestDelete? { - self as? DBXTeamLogEventTypeArgFileRequestDelete + public init() { + let swift = TeamLog.EventTypeArg.emmError + super.init(swift: swift) } +} +/// (logins) Started trusted team admin session +@objc +public class DBXTeamLogEventTypeArgGuestAdminSignedInViaTrustedTeams: DBXTeamLogEventTypeArg { @objc - public var asFileRequestReceiveFile: DBXTeamLogEventTypeArgFileRequestReceiveFile? { - self as? DBXTeamLogEventTypeArgFileRequestReceiveFile + public init() { + let swift = TeamLog.EventTypeArg.guestAdminSignedInViaTrustedTeams + super.init(swift: swift) } +} +/// (logins) Ended trusted team admin session +@objc +public class DBXTeamLogEventTypeArgGuestAdminSignedOutViaTrustedTeams: DBXTeamLogEventTypeArg { @objc - public var asGroupAddExternalId: DBXTeamLogEventTypeArgGroupAddExternalId? { - self as? DBXTeamLogEventTypeArgGroupAddExternalId + public init() { + let swift = TeamLog.EventTypeArg.guestAdminSignedOutViaTrustedTeams + super.init(swift: swift) } +} +/// (logins) Failed to sign in +@objc +public class DBXTeamLogEventTypeArgLoginFail: DBXTeamLogEventTypeArg { @objc - public var asGroupAddMember: DBXTeamLogEventTypeArgGroupAddMember? { - self as? DBXTeamLogEventTypeArgGroupAddMember + public init() { + let swift = TeamLog.EventTypeArg.loginFail + super.init(swift: swift) } +} +/// (logins) Signed in +@objc +public class DBXTeamLogEventTypeArgLoginSuccess: DBXTeamLogEventTypeArg { @objc - public var asGroupChangeExternalId: DBXTeamLogEventTypeArgGroupChangeExternalId? { - self as? DBXTeamLogEventTypeArgGroupChangeExternalId + public init() { + let swift = TeamLog.EventTypeArg.loginSuccess + super.init(swift: swift) } +} +/// (logins) Signed out +@objc +public class DBXTeamLogEventTypeArgLogout: DBXTeamLogEventTypeArg { @objc - public var asGroupChangeManagementType: DBXTeamLogEventTypeArgGroupChangeManagementType? { - self as? DBXTeamLogEventTypeArgGroupChangeManagementType + public init() { + let swift = TeamLog.EventTypeArg.logout + super.init(swift: swift) } +} +/// (logins) Ended reseller support session +@objc +public class DBXTeamLogEventTypeArgResellerSupportSessionEnd: DBXTeamLogEventTypeArg { @objc - public var asGroupChangeMemberRole: DBXTeamLogEventTypeArgGroupChangeMemberRole? { - self as? DBXTeamLogEventTypeArgGroupChangeMemberRole + public init() { + let swift = TeamLog.EventTypeArg.resellerSupportSessionEnd + super.init(swift: swift) } +} +/// (logins) Started reseller support session +@objc +public class DBXTeamLogEventTypeArgResellerSupportSessionStart: DBXTeamLogEventTypeArg { @objc - public var asGroupCreate: DBXTeamLogEventTypeArgGroupCreate? { - self as? DBXTeamLogEventTypeArgGroupCreate + public init() { + let swift = TeamLog.EventTypeArg.resellerSupportSessionStart + super.init(swift: swift) } +} +/// (logins) Ended admin sign-in-as session +@objc +public class DBXTeamLogEventTypeArgSignInAsSessionEnd: DBXTeamLogEventTypeArg { @objc - public var asGroupDelete: DBXTeamLogEventTypeArgGroupDelete? { - self as? DBXTeamLogEventTypeArgGroupDelete + public init() { + let swift = TeamLog.EventTypeArg.signInAsSessionEnd + super.init(swift: swift) } +} +/// (logins) Started admin sign-in-as session +@objc +public class DBXTeamLogEventTypeArgSignInAsSessionStart: DBXTeamLogEventTypeArg { @objc - public var asGroupDescriptionUpdated: DBXTeamLogEventTypeArgGroupDescriptionUpdated? { - self as? DBXTeamLogEventTypeArgGroupDescriptionUpdated + public init() { + let swift = TeamLog.EventTypeArg.signInAsSessionStart + super.init(swift: swift) } +} +/// (logins) Failed to sign in via SSO (deprecated, replaced by 'Failed to sign in') +@objc +public class DBXTeamLogEventTypeArgSsoError: DBXTeamLogEventTypeArg { @objc - public var asGroupJoinPolicyUpdated: DBXTeamLogEventTypeArgGroupJoinPolicyUpdated? { - self as? DBXTeamLogEventTypeArgGroupJoinPolicyUpdated + public init() { + let swift = TeamLog.EventTypeArg.ssoError + super.init(swift: swift) } +} +/// (members) Add-on Assigned +@objc +public class DBXTeamLogEventTypeArgAddonAssigned: DBXTeamLogEventTypeArg { @objc - public var asGroupMoved: DBXTeamLogEventTypeArgGroupMoved? { - self as? DBXTeamLogEventTypeArgGroupMoved + public init() { + let swift = TeamLog.EventTypeArg.addonAssigned + super.init(swift: swift) } +} +/// (members) Add-on Removed +@objc +public class DBXTeamLogEventTypeArgAddonRemoved: DBXTeamLogEventTypeArg { @objc - public var asGroupRemoveExternalId: DBXTeamLogEventTypeArgGroupRemoveExternalId? { - self as? DBXTeamLogEventTypeArgGroupRemoveExternalId + public init() { + let swift = TeamLog.EventTypeArg.addonRemoved + super.init(swift: swift) } +} +/// (members) Invited members to activate Backup +@objc +public class DBXTeamLogEventTypeArgBackupAdminInvitationSent: DBXTeamLogEventTypeArg { @objc - public var asGroupRemoveMember: DBXTeamLogEventTypeArgGroupRemoveMember? { - self as? DBXTeamLogEventTypeArgGroupRemoveMember + public init() { + let swift = TeamLog.EventTypeArg.backupAdminInvitationSent + super.init(swift: swift) } +} +/// (members) Opened Backup invite +@objc +public class DBXTeamLogEventTypeArgBackupInvitationOpened: DBXTeamLogEventTypeArg { @objc - public var asGroupRename: DBXTeamLogEventTypeArgGroupRename? { - self as? DBXTeamLogEventTypeArgGroupRename + public init() { + let swift = TeamLog.EventTypeArg.backupInvitationOpened + super.init(swift: swift) } +} +/// (members) Created team invite link +@objc +public class DBXTeamLogEventTypeArgCreateTeamInviteLink: DBXTeamLogEventTypeArg { @objc - public var asAccountLockOrUnlocked: DBXTeamLogEventTypeArgAccountLockOrUnlocked? { - self as? DBXTeamLogEventTypeArgAccountLockOrUnlocked + public init() { + let swift = TeamLog.EventTypeArg.createTeamInviteLink + super.init(swift: swift) } +} +/// (members) Deleted team invite link +@objc +public class DBXTeamLogEventTypeArgDeleteTeamInviteLink: DBXTeamLogEventTypeArg { @objc - public var asEmmError: DBXTeamLogEventTypeArgEmmError? { - self as? DBXTeamLogEventTypeArgEmmError + public init() { + let swift = TeamLog.EventTypeArg.deleteTeamInviteLink + super.init(swift: swift) } +} +/// (members) Added an external ID for team member +@objc +public class DBXTeamLogEventTypeArgMemberAddExternalId: DBXTeamLogEventTypeArg { @objc - public var asGuestAdminSignedInViaTrustedTeams: DBXTeamLogEventTypeArgGuestAdminSignedInViaTrustedTeams? { - self as? DBXTeamLogEventTypeArgGuestAdminSignedInViaTrustedTeams + public init() { + let swift = TeamLog.EventTypeArg.memberAddExternalId + super.init(swift: swift) } +} +/// (members) Added team member name +@objc +public class DBXTeamLogEventTypeArgMemberAddName: DBXTeamLogEventTypeArg { @objc - public var asGuestAdminSignedOutViaTrustedTeams: DBXTeamLogEventTypeArgGuestAdminSignedOutViaTrustedTeams? { - self as? DBXTeamLogEventTypeArgGuestAdminSignedOutViaTrustedTeams + public init() { + let swift = TeamLog.EventTypeArg.memberAddName + super.init(swift: swift) } +} +/// (members) Changed team member admin role +@objc +public class DBXTeamLogEventTypeArgMemberChangeAdminRole: DBXTeamLogEventTypeArg { @objc - public var asLoginFail: DBXTeamLogEventTypeArgLoginFail? { - self as? DBXTeamLogEventTypeArgLoginFail + public init() { + let swift = TeamLog.EventTypeArg.memberChangeAdminRole + super.init(swift: swift) } +} +/// (members) Changed team member email +@objc +public class DBXTeamLogEventTypeArgMemberChangeEmail: DBXTeamLogEventTypeArg { @objc - public var asLoginSuccess: DBXTeamLogEventTypeArgLoginSuccess? { - self as? DBXTeamLogEventTypeArgLoginSuccess + public init() { + let swift = TeamLog.EventTypeArg.memberChangeEmail + super.init(swift: swift) } +} +/// (members) Changed the external ID for team member +@objc +public class DBXTeamLogEventTypeArgMemberChangeExternalId: DBXTeamLogEventTypeArg { @objc - public var asLogout: DBXTeamLogEventTypeArgLogout? { - self as? DBXTeamLogEventTypeArgLogout + public init() { + let swift = TeamLog.EventTypeArg.memberChangeExternalId + super.init(swift: swift) } +} +/// (members) Changed membership type (limited/full) of member (deprecated, no longer logged) +@objc +public class DBXTeamLogEventTypeArgMemberChangeMembershipType: DBXTeamLogEventTypeArg { @objc - public var asResellerSupportSessionEnd: DBXTeamLogEventTypeArgResellerSupportSessionEnd? { - self as? DBXTeamLogEventTypeArgResellerSupportSessionEnd + public init() { + let swift = TeamLog.EventTypeArg.memberChangeMembershipType + super.init(swift: swift) } +} +/// (members) Changed team member name +@objc +public class DBXTeamLogEventTypeArgMemberChangeName: DBXTeamLogEventTypeArg { @objc - public var asResellerSupportSessionStart: DBXTeamLogEventTypeArgResellerSupportSessionStart? { - self as? DBXTeamLogEventTypeArgResellerSupportSessionStart + public init() { + let swift = TeamLog.EventTypeArg.memberChangeName + super.init(swift: swift) } +} +/// (members) Changed team member reseller role +@objc +public class DBXTeamLogEventTypeArgMemberChangeResellerRole: DBXTeamLogEventTypeArg { @objc - public var asSignInAsSessionEnd: DBXTeamLogEventTypeArgSignInAsSessionEnd? { - self as? DBXTeamLogEventTypeArgSignInAsSessionEnd + public init() { + let swift = TeamLog.EventTypeArg.memberChangeResellerRole + super.init(swift: swift) } +} +/// (members) Changed member status (invited, joined, suspended, etc.) +@objc +public class DBXTeamLogEventTypeArgMemberChangeStatus: DBXTeamLogEventTypeArg { @objc - public var asSignInAsSessionStart: DBXTeamLogEventTypeArgSignInAsSessionStart? { - self as? DBXTeamLogEventTypeArgSignInAsSessionStart + public init() { + let swift = TeamLog.EventTypeArg.memberChangeStatus + super.init(swift: swift) } +} +/// (members) Cleared manually added contacts +@objc +public class DBXTeamLogEventTypeArgMemberDeleteManualContacts: DBXTeamLogEventTypeArg { @objc - public var asSsoError: DBXTeamLogEventTypeArgSsoError? { - self as? DBXTeamLogEventTypeArgSsoError + public init() { + let swift = TeamLog.EventTypeArg.memberDeleteManualContacts + super.init(swift: swift) } +} +/// (members) Deleted team member profile photo +@objc +public class DBXTeamLogEventTypeArgMemberDeleteProfilePhoto: DBXTeamLogEventTypeArg { @objc - public var asBackupAdminInvitationSent: DBXTeamLogEventTypeArgBackupAdminInvitationSent? { - self as? DBXTeamLogEventTypeArgBackupAdminInvitationSent + public init() { + let swift = TeamLog.EventTypeArg.memberDeleteProfilePhoto + super.init(swift: swift) } +} +/// (members) Admin browsed a team member's folder contents +@objc +public class DBXTeamLogEventTypeArgMemberFolderContentsAccessed: DBXTeamLogEventTypeArg { @objc - public var asBackupInvitationOpened: DBXTeamLogEventTypeArgBackupInvitationOpened? { - self as? DBXTeamLogEventTypeArgBackupInvitationOpened + public init() { + let swift = TeamLog.EventTypeArg.memberFolderContentsAccessed + super.init(swift: swift) } +} +/// (members) Permanently deleted contents of deleted team member account +@objc +public class DBXTeamLogEventTypeArgMemberPermanentlyDeleteAccountContents: DBXTeamLogEventTypeArg { @objc - public var asCreateTeamInviteLink: DBXTeamLogEventTypeArgCreateTeamInviteLink? { - self as? DBXTeamLogEventTypeArgCreateTeamInviteLink + public init() { + let swift = TeamLog.EventTypeArg.memberPermanentlyDeleteAccountContents + super.init(swift: swift) } +} +/// (members) Removed the external ID for team member +@objc +public class DBXTeamLogEventTypeArgMemberRemoveExternalId: DBXTeamLogEventTypeArg { @objc - public var asDeleteTeamInviteLink: DBXTeamLogEventTypeArgDeleteTeamInviteLink? { - self as? DBXTeamLogEventTypeArgDeleteTeamInviteLink + public init() { + let swift = TeamLog.EventTypeArg.memberRemoveExternalId + super.init(swift: swift) } +} +/// (members) Set team member profile photo +@objc +public class DBXTeamLogEventTypeArgMemberSetProfilePhoto: DBXTeamLogEventTypeArg { @objc - public var asMemberAddExternalId: DBXTeamLogEventTypeArgMemberAddExternalId? { - self as? DBXTeamLogEventTypeArgMemberAddExternalId + public init() { + let swift = TeamLog.EventTypeArg.memberSetProfilePhoto + super.init(swift: swift) } +} +/// (members) Set custom member space limit +@objc +public class DBXTeamLogEventTypeArgMemberSpaceLimitsAddCustomQuota: DBXTeamLogEventTypeArg { @objc - public var asMemberAddName: DBXTeamLogEventTypeArgMemberAddName? { - self as? DBXTeamLogEventTypeArgMemberAddName + public init() { + let swift = TeamLog.EventTypeArg.memberSpaceLimitsAddCustomQuota + super.init(swift: swift) } +} +/// (members) Changed custom member space limit +@objc +public class DBXTeamLogEventTypeArgMemberSpaceLimitsChangeCustomQuota: DBXTeamLogEventTypeArg { @objc - public var asMemberChangeAdminRole: DBXTeamLogEventTypeArgMemberChangeAdminRole? { - self as? DBXTeamLogEventTypeArgMemberChangeAdminRole + public init() { + let swift = TeamLog.EventTypeArg.memberSpaceLimitsChangeCustomQuota + super.init(swift: swift) } +} +/// (members) Changed space limit status +@objc +public class DBXTeamLogEventTypeArgMemberSpaceLimitsChangeStatus: DBXTeamLogEventTypeArg { @objc - public var asMemberChangeEmail: DBXTeamLogEventTypeArgMemberChangeEmail? { - self as? DBXTeamLogEventTypeArgMemberChangeEmail + public init() { + let swift = TeamLog.EventTypeArg.memberSpaceLimitsChangeStatus + super.init(swift: swift) } +} +/// (members) Removed custom member space limit +@objc +public class DBXTeamLogEventTypeArgMemberSpaceLimitsRemoveCustomQuota: DBXTeamLogEventTypeArg { @objc - public var asMemberChangeExternalId: DBXTeamLogEventTypeArgMemberChangeExternalId? { - self as? DBXTeamLogEventTypeArgMemberChangeExternalId + public init() { + let swift = TeamLog.EventTypeArg.memberSpaceLimitsRemoveCustomQuota + super.init(swift: swift) } +} +/// (members) Suggested person to add to team +@objc +public class DBXTeamLogEventTypeArgMemberSuggest: DBXTeamLogEventTypeArg { @objc - public var asMemberChangeMembershipType: DBXTeamLogEventTypeArgMemberChangeMembershipType? { - self as? DBXTeamLogEventTypeArgMemberChangeMembershipType + public init() { + let swift = TeamLog.EventTypeArg.memberSuggest + super.init(swift: swift) } +} +/// (members) Transferred contents of deleted member account to another member +@objc +public class DBXTeamLogEventTypeArgMemberTransferAccountContents: DBXTeamLogEventTypeArg { @objc - public var asMemberChangeName: DBXTeamLogEventTypeArgMemberChangeName? { - self as? DBXTeamLogEventTypeArgMemberChangeName + public init() { + let swift = TeamLog.EventTypeArg.memberTransferAccountContents + super.init(swift: swift) } +} +/// (members) Added pending secondary email +@objc +public class DBXTeamLogEventTypeArgPendingSecondaryEmailAdded: DBXTeamLogEventTypeArg { @objc - public var asMemberChangeResellerRole: DBXTeamLogEventTypeArgMemberChangeResellerRole? { - self as? DBXTeamLogEventTypeArgMemberChangeResellerRole + public init() { + let swift = TeamLog.EventTypeArg.pendingSecondaryEmailAdded + super.init(swift: swift) } +} +/// (members) Product assigned to team member +@objc +public class DBXTeamLogEventTypeArgProductAssignedToMember: DBXTeamLogEventTypeArg { @objc - public var asMemberChangeStatus: DBXTeamLogEventTypeArgMemberChangeStatus? { - self as? DBXTeamLogEventTypeArgMemberChangeStatus + public init() { + let swift = TeamLog.EventTypeArg.productAssignedToMember + super.init(swift: swift) } +} +/// (members) Product removed from team member +@objc +public class DBXTeamLogEventTypeArgProductRemovedFromMember: DBXTeamLogEventTypeArg { @objc - public var asMemberDeleteManualContacts: DBXTeamLogEventTypeArgMemberDeleteManualContacts? { - self as? DBXTeamLogEventTypeArgMemberDeleteManualContacts + public init() { + let swift = TeamLog.EventTypeArg.productRemovedFromMember + super.init(swift: swift) } +} +/// (members) Deleted secondary email +@objc +public class DBXTeamLogEventTypeArgSecondaryEmailDeleted: DBXTeamLogEventTypeArg { @objc - public var asMemberDeleteProfilePhoto: DBXTeamLogEventTypeArgMemberDeleteProfilePhoto? { - self as? DBXTeamLogEventTypeArgMemberDeleteProfilePhoto + public init() { + let swift = TeamLog.EventTypeArg.secondaryEmailDeleted + super.init(swift: swift) } +} +/// (members) Verified secondary email +@objc +public class DBXTeamLogEventTypeArgSecondaryEmailVerified: DBXTeamLogEventTypeArg { @objc - public var asMemberPermanentlyDeleteAccountContents: DBXTeamLogEventTypeArgMemberPermanentlyDeleteAccountContents? { - self as? DBXTeamLogEventTypeArgMemberPermanentlyDeleteAccountContents + public init() { + let swift = TeamLog.EventTypeArg.secondaryEmailVerified + super.init(swift: swift) } +} +/// (members) Secondary mails policy changed +@objc +public class DBXTeamLogEventTypeArgSecondaryMailsPolicyChanged: DBXTeamLogEventTypeArg { @objc - public var asMemberRemoveExternalId: DBXTeamLogEventTypeArgMemberRemoveExternalId? { - self as? DBXTeamLogEventTypeArgMemberRemoveExternalId + public init() { + let swift = TeamLog.EventTypeArg.secondaryMailsPolicyChanged + super.init(swift: swift) } +} +/// (paper) Added Binder page (deprecated, replaced by 'Edited files') +@objc +public class DBXTeamLogEventTypeArgBinderAddPage: DBXTeamLogEventTypeArg { @objc - public var asMemberSetProfilePhoto: DBXTeamLogEventTypeArgMemberSetProfilePhoto? { - self as? DBXTeamLogEventTypeArgMemberSetProfilePhoto + public init() { + let swift = TeamLog.EventTypeArg.binderAddPage + super.init(swift: swift) } +} +/// (paper) Added Binder section (deprecated, replaced by 'Edited files') +@objc +public class DBXTeamLogEventTypeArgBinderAddSection: DBXTeamLogEventTypeArg { @objc - public var asMemberSpaceLimitsAddCustomQuota: DBXTeamLogEventTypeArgMemberSpaceLimitsAddCustomQuota? { - self as? DBXTeamLogEventTypeArgMemberSpaceLimitsAddCustomQuota + public init() { + let swift = TeamLog.EventTypeArg.binderAddSection + super.init(swift: swift) } +} +/// (paper) Removed Binder page (deprecated, replaced by 'Edited files') +@objc +public class DBXTeamLogEventTypeArgBinderRemovePage: DBXTeamLogEventTypeArg { @objc - public var asMemberSpaceLimitsChangeCustomQuota: DBXTeamLogEventTypeArgMemberSpaceLimitsChangeCustomQuota? { - self as? DBXTeamLogEventTypeArgMemberSpaceLimitsChangeCustomQuota + public init() { + let swift = TeamLog.EventTypeArg.binderRemovePage + super.init(swift: swift) } +} +/// (paper) Removed Binder section (deprecated, replaced by 'Edited files') +@objc +public class DBXTeamLogEventTypeArgBinderRemoveSection: DBXTeamLogEventTypeArg { @objc - public var asMemberSpaceLimitsChangeStatus: DBXTeamLogEventTypeArgMemberSpaceLimitsChangeStatus? { - self as? DBXTeamLogEventTypeArgMemberSpaceLimitsChangeStatus + public init() { + let swift = TeamLog.EventTypeArg.binderRemoveSection + super.init(swift: swift) } +} +/// (paper) Renamed Binder page (deprecated, replaced by 'Edited files') +@objc +public class DBXTeamLogEventTypeArgBinderRenamePage: DBXTeamLogEventTypeArg { @objc - public var asMemberSpaceLimitsRemoveCustomQuota: DBXTeamLogEventTypeArgMemberSpaceLimitsRemoveCustomQuota? { - self as? DBXTeamLogEventTypeArgMemberSpaceLimitsRemoveCustomQuota + public init() { + let swift = TeamLog.EventTypeArg.binderRenamePage + super.init(swift: swift) } +} +/// (paper) Renamed Binder section (deprecated, replaced by 'Edited files') +@objc +public class DBXTeamLogEventTypeArgBinderRenameSection: DBXTeamLogEventTypeArg { @objc - public var asMemberSuggest: DBXTeamLogEventTypeArgMemberSuggest? { - self as? DBXTeamLogEventTypeArgMemberSuggest + public init() { + let swift = TeamLog.EventTypeArg.binderRenameSection + super.init(swift: swift) } +} +/// (paper) Reordered Binder page (deprecated, replaced by 'Edited files') +@objc +public class DBXTeamLogEventTypeArgBinderReorderPage: DBXTeamLogEventTypeArg { @objc - public var asMemberTransferAccountContents: DBXTeamLogEventTypeArgMemberTransferAccountContents? { - self as? DBXTeamLogEventTypeArgMemberTransferAccountContents + public init() { + let swift = TeamLog.EventTypeArg.binderReorderPage + super.init(swift: swift) } +} +/// (paper) Reordered Binder section (deprecated, replaced by 'Edited files') +@objc +public class DBXTeamLogEventTypeArgBinderReorderSection: DBXTeamLogEventTypeArg { @objc - public var asPendingSecondaryEmailAdded: DBXTeamLogEventTypeArgPendingSecondaryEmailAdded? { - self as? DBXTeamLogEventTypeArgPendingSecondaryEmailAdded + public init() { + let swift = TeamLog.EventTypeArg.binderReorderSection + super.init(swift: swift) } +} +/// (paper) Added users and/or groups to Paper doc/folder +@objc +public class DBXTeamLogEventTypeArgPaperContentAddMember: DBXTeamLogEventTypeArg { @objc - public var asSecondaryEmailDeleted: DBXTeamLogEventTypeArgSecondaryEmailDeleted? { - self as? DBXTeamLogEventTypeArgSecondaryEmailDeleted + public init() { + let swift = TeamLog.EventTypeArg.paperContentAddMember + super.init(swift: swift) } +} +/// (paper) Added Paper doc/folder to folder +@objc +public class DBXTeamLogEventTypeArgPaperContentAddToFolder: DBXTeamLogEventTypeArg { @objc - public var asSecondaryEmailVerified: DBXTeamLogEventTypeArgSecondaryEmailVerified? { - self as? DBXTeamLogEventTypeArgSecondaryEmailVerified + public init() { + let swift = TeamLog.EventTypeArg.paperContentAddToFolder + super.init(swift: swift) } +} +/// (paper) Archived Paper doc/folder +@objc +public class DBXTeamLogEventTypeArgPaperContentArchive: DBXTeamLogEventTypeArg { @objc - public var asSecondaryMailsPolicyChanged: DBXTeamLogEventTypeArgSecondaryMailsPolicyChanged? { - self as? DBXTeamLogEventTypeArgSecondaryMailsPolicyChanged + public init() { + let swift = TeamLog.EventTypeArg.paperContentArchive + super.init(swift: swift) } +} +/// (paper) Created Paper doc/folder +@objc +public class DBXTeamLogEventTypeArgPaperContentCreate: DBXTeamLogEventTypeArg { @objc - public var asBinderAddPage: DBXTeamLogEventTypeArgBinderAddPage? { - self as? DBXTeamLogEventTypeArgBinderAddPage + public init() { + let swift = TeamLog.EventTypeArg.paperContentCreate + super.init(swift: swift) } +} +/// (paper) Permanently deleted Paper doc/folder +@objc +public class DBXTeamLogEventTypeArgPaperContentPermanentlyDelete: DBXTeamLogEventTypeArg { @objc - public var asBinderAddSection: DBXTeamLogEventTypeArgBinderAddSection? { - self as? DBXTeamLogEventTypeArgBinderAddSection + public init() { + let swift = TeamLog.EventTypeArg.paperContentPermanentlyDelete + super.init(swift: swift) } +} +/// (paper) Removed Paper doc/folder from folder +@objc +public class DBXTeamLogEventTypeArgPaperContentRemoveFromFolder: DBXTeamLogEventTypeArg { @objc - public var asBinderRemovePage: DBXTeamLogEventTypeArgBinderRemovePage? { - self as? DBXTeamLogEventTypeArgBinderRemovePage + public init() { + let swift = TeamLog.EventTypeArg.paperContentRemoveFromFolder + super.init(swift: swift) } +} +/// (paper) Removed users and/or groups from Paper doc/folder +@objc +public class DBXTeamLogEventTypeArgPaperContentRemoveMember: DBXTeamLogEventTypeArg { @objc - public var asBinderRemoveSection: DBXTeamLogEventTypeArgBinderRemoveSection? { - self as? DBXTeamLogEventTypeArgBinderRemoveSection + public init() { + let swift = TeamLog.EventTypeArg.paperContentRemoveMember + super.init(swift: swift) } +} +/// (paper) Renamed Paper doc/folder +@objc +public class DBXTeamLogEventTypeArgPaperContentRename: DBXTeamLogEventTypeArg { @objc - public var asBinderRenamePage: DBXTeamLogEventTypeArgBinderRenamePage? { - self as? DBXTeamLogEventTypeArgBinderRenamePage + public init() { + let swift = TeamLog.EventTypeArg.paperContentRename + super.init(swift: swift) } +} +/// (paper) Restored archived Paper doc/folder +@objc +public class DBXTeamLogEventTypeArgPaperContentRestore: DBXTeamLogEventTypeArg { @objc - public var asBinderRenameSection: DBXTeamLogEventTypeArgBinderRenameSection? { - self as? DBXTeamLogEventTypeArgBinderRenameSection + public init() { + let swift = TeamLog.EventTypeArg.paperContentRestore + super.init(swift: swift) } +} +/// (paper) Added Paper doc comment +@objc +public class DBXTeamLogEventTypeArgPaperDocAddComment: DBXTeamLogEventTypeArg { @objc - public var asBinderReorderPage: DBXTeamLogEventTypeArgBinderReorderPage? { - self as? DBXTeamLogEventTypeArgBinderReorderPage + public init() { + let swift = TeamLog.EventTypeArg.paperDocAddComment + super.init(swift: swift) } +} +/// (paper) Changed member permissions for Paper doc +@objc +public class DBXTeamLogEventTypeArgPaperDocChangeMemberRole: DBXTeamLogEventTypeArg { @objc - public var asBinderReorderSection: DBXTeamLogEventTypeArgBinderReorderSection? { - self as? DBXTeamLogEventTypeArgBinderReorderSection + public init() { + let swift = TeamLog.EventTypeArg.paperDocChangeMemberRole + super.init(swift: swift) } +} +/// (paper) Changed sharing setting for Paper doc +@objc +public class DBXTeamLogEventTypeArgPaperDocChangeSharingPolicy: DBXTeamLogEventTypeArg { @objc - public var asPaperContentAddMember: DBXTeamLogEventTypeArgPaperContentAddMember? { - self as? DBXTeamLogEventTypeArgPaperContentAddMember + public init() { + let swift = TeamLog.EventTypeArg.paperDocChangeSharingPolicy + super.init(swift: swift) } +} +/// (paper) Followed/unfollowed Paper doc +@objc +public class DBXTeamLogEventTypeArgPaperDocChangeSubscription: DBXTeamLogEventTypeArg { @objc - public var asPaperContentAddToFolder: DBXTeamLogEventTypeArgPaperContentAddToFolder? { - self as? DBXTeamLogEventTypeArgPaperContentAddToFolder + public init() { + let swift = TeamLog.EventTypeArg.paperDocChangeSubscription + super.init(swift: swift) } +} +/// (paper) Archived Paper doc (deprecated, no longer logged) +@objc +public class DBXTeamLogEventTypeArgPaperDocDeleted: DBXTeamLogEventTypeArg { @objc - public var asPaperContentArchive: DBXTeamLogEventTypeArgPaperContentArchive? { - self as? DBXTeamLogEventTypeArgPaperContentArchive + public init() { + let swift = TeamLog.EventTypeArg.paperDocDeleted + super.init(swift: swift) } +} +/// (paper) Deleted Paper doc comment +@objc +public class DBXTeamLogEventTypeArgPaperDocDeleteComment: DBXTeamLogEventTypeArg { @objc - public var asPaperContentCreate: DBXTeamLogEventTypeArgPaperContentCreate? { - self as? DBXTeamLogEventTypeArgPaperContentCreate + public init() { + let swift = TeamLog.EventTypeArg.paperDocDeleteComment + super.init(swift: swift) } +} +/// (paper) Downloaded Paper doc in specific format +@objc +public class DBXTeamLogEventTypeArgPaperDocDownload: DBXTeamLogEventTypeArg { @objc - public var asPaperContentPermanentlyDelete: DBXTeamLogEventTypeArgPaperContentPermanentlyDelete? { - self as? DBXTeamLogEventTypeArgPaperContentPermanentlyDelete + public init() { + let swift = TeamLog.EventTypeArg.paperDocDownload + super.init(swift: swift) } +} +/// (paper) Edited Paper doc +@objc +public class DBXTeamLogEventTypeArgPaperDocEdit: DBXTeamLogEventTypeArg { @objc - public var asPaperContentRemoveFromFolder: DBXTeamLogEventTypeArgPaperContentRemoveFromFolder? { - self as? DBXTeamLogEventTypeArgPaperContentRemoveFromFolder + public init() { + let swift = TeamLog.EventTypeArg.paperDocEdit + super.init(swift: swift) } +} +/// (paper) Edited Paper doc comment +@objc +public class DBXTeamLogEventTypeArgPaperDocEditComment: DBXTeamLogEventTypeArg { @objc - public var asPaperContentRemoveMember: DBXTeamLogEventTypeArgPaperContentRemoveMember? { - self as? DBXTeamLogEventTypeArgPaperContentRemoveMember + public init() { + let swift = TeamLog.EventTypeArg.paperDocEditComment + super.init(swift: swift) } +} +/// (paper) Followed Paper doc (deprecated, replaced by 'Followed/unfollowed Paper doc') +@objc +public class DBXTeamLogEventTypeArgPaperDocFollowed: DBXTeamLogEventTypeArg { @objc - public var asPaperContentRename: DBXTeamLogEventTypeArgPaperContentRename? { - self as? DBXTeamLogEventTypeArgPaperContentRename + public init() { + let swift = TeamLog.EventTypeArg.paperDocFollowed + super.init(swift: swift) } +} +/// (paper) Mentioned user in Paper doc +@objc +public class DBXTeamLogEventTypeArgPaperDocMention: DBXTeamLogEventTypeArg { @objc - public var asPaperContentRestore: DBXTeamLogEventTypeArgPaperContentRestore? { - self as? DBXTeamLogEventTypeArgPaperContentRestore + public init() { + let swift = TeamLog.EventTypeArg.paperDocMention + super.init(swift: swift) } +} +/// (paper) Transferred ownership of Paper doc +@objc +public class DBXTeamLogEventTypeArgPaperDocOwnershipChanged: DBXTeamLogEventTypeArg { @objc - public var asPaperDocAddComment: DBXTeamLogEventTypeArgPaperDocAddComment? { - self as? DBXTeamLogEventTypeArgPaperDocAddComment + public init() { + let swift = TeamLog.EventTypeArg.paperDocOwnershipChanged + super.init(swift: swift) } +} +/// (paper) Requested access to Paper doc +@objc +public class DBXTeamLogEventTypeArgPaperDocRequestAccess: DBXTeamLogEventTypeArg { @objc - public var asPaperDocChangeMemberRole: DBXTeamLogEventTypeArgPaperDocChangeMemberRole? { - self as? DBXTeamLogEventTypeArgPaperDocChangeMemberRole + public init() { + let swift = TeamLog.EventTypeArg.paperDocRequestAccess + super.init(swift: swift) } +} +/// (paper) Resolved Paper doc comment +@objc +public class DBXTeamLogEventTypeArgPaperDocResolveComment: DBXTeamLogEventTypeArg { @objc - public var asPaperDocChangeSharingPolicy: DBXTeamLogEventTypeArgPaperDocChangeSharingPolicy? { - self as? DBXTeamLogEventTypeArgPaperDocChangeSharingPolicy + public init() { + let swift = TeamLog.EventTypeArg.paperDocResolveComment + super.init(swift: swift) } +} +/// (paper) Restored Paper doc to previous version +@objc +public class DBXTeamLogEventTypeArgPaperDocRevert: DBXTeamLogEventTypeArg { @objc - public var asPaperDocChangeSubscription: DBXTeamLogEventTypeArgPaperDocChangeSubscription? { - self as? DBXTeamLogEventTypeArgPaperDocChangeSubscription + public init() { + let swift = TeamLog.EventTypeArg.paperDocRevert + super.init(swift: swift) } +} +/// (paper) Shared Paper doc via Slack +@objc +public class DBXTeamLogEventTypeArgPaperDocSlackShare: DBXTeamLogEventTypeArg { @objc - public var asPaperDocDeleted: DBXTeamLogEventTypeArgPaperDocDeleted? { - self as? DBXTeamLogEventTypeArgPaperDocDeleted + public init() { + let swift = TeamLog.EventTypeArg.paperDocSlackShare + super.init(swift: swift) } +} +/// (paper) Shared Paper doc with users and/or groups (deprecated, no longer logged) +@objc +public class DBXTeamLogEventTypeArgPaperDocTeamInvite: DBXTeamLogEventTypeArg { @objc - public var asPaperDocDeleteComment: DBXTeamLogEventTypeArgPaperDocDeleteComment? { - self as? DBXTeamLogEventTypeArgPaperDocDeleteComment + public init() { + let swift = TeamLog.EventTypeArg.paperDocTeamInvite + super.init(swift: swift) } +} +/// (paper) Deleted Paper doc +@objc +public class DBXTeamLogEventTypeArgPaperDocTrashed: DBXTeamLogEventTypeArg { @objc - public var asPaperDocDownload: DBXTeamLogEventTypeArgPaperDocDownload? { - self as? DBXTeamLogEventTypeArgPaperDocDownload + public init() { + let swift = TeamLog.EventTypeArg.paperDocTrashed + super.init(swift: swift) } +} +/// (paper) Unresolved Paper doc comment +@objc +public class DBXTeamLogEventTypeArgPaperDocUnresolveComment: DBXTeamLogEventTypeArg { @objc - public var asPaperDocEdit: DBXTeamLogEventTypeArgPaperDocEdit? { - self as? DBXTeamLogEventTypeArgPaperDocEdit + public init() { + let swift = TeamLog.EventTypeArg.paperDocUnresolveComment + super.init(swift: swift) } +} +/// (paper) Restored Paper doc +@objc +public class DBXTeamLogEventTypeArgPaperDocUntrashed: DBXTeamLogEventTypeArg { @objc - public var asPaperDocEditComment: DBXTeamLogEventTypeArgPaperDocEditComment? { - self as? DBXTeamLogEventTypeArgPaperDocEditComment + public init() { + let swift = TeamLog.EventTypeArg.paperDocUntrashed + super.init(swift: swift) } +} +/// (paper) Viewed Paper doc +@objc +public class DBXTeamLogEventTypeArgPaperDocView: DBXTeamLogEventTypeArg { @objc - public var asPaperDocFollowed: DBXTeamLogEventTypeArgPaperDocFollowed? { - self as? DBXTeamLogEventTypeArgPaperDocFollowed + public init() { + let swift = TeamLog.EventTypeArg.paperDocView + super.init(swift: swift) } +} +/// (paper) Changed Paper external sharing setting to anyone (deprecated, no longer logged) +@objc +public class DBXTeamLogEventTypeArgPaperExternalViewAllow: DBXTeamLogEventTypeArg { @objc - public var asPaperDocMention: DBXTeamLogEventTypeArgPaperDocMention? { - self as? DBXTeamLogEventTypeArgPaperDocMention + public init() { + let swift = TeamLog.EventTypeArg.paperExternalViewAllow + super.init(swift: swift) } +} +/// (paper) Changed Paper external sharing setting to default team (deprecated, no longer logged) +@objc +public class DBXTeamLogEventTypeArgPaperExternalViewDefaultTeam: DBXTeamLogEventTypeArg { @objc - public var asPaperDocOwnershipChanged: DBXTeamLogEventTypeArgPaperDocOwnershipChanged? { - self as? DBXTeamLogEventTypeArgPaperDocOwnershipChanged + public init() { + let swift = TeamLog.EventTypeArg.paperExternalViewDefaultTeam + super.init(swift: swift) } +} +/// (paper) Changed Paper external sharing setting to team-only (deprecated, no longer logged) +@objc +public class DBXTeamLogEventTypeArgPaperExternalViewForbid: DBXTeamLogEventTypeArg { @objc - public var asPaperDocRequestAccess: DBXTeamLogEventTypeArgPaperDocRequestAccess? { - self as? DBXTeamLogEventTypeArgPaperDocRequestAccess + public init() { + let swift = TeamLog.EventTypeArg.paperExternalViewForbid + super.init(swift: swift) } +} +/// (paper) Followed/unfollowed Paper folder +@objc +public class DBXTeamLogEventTypeArgPaperFolderChangeSubscription: DBXTeamLogEventTypeArg { @objc - public var asPaperDocResolveComment: DBXTeamLogEventTypeArgPaperDocResolveComment? { - self as? DBXTeamLogEventTypeArgPaperDocResolveComment + public init() { + let swift = TeamLog.EventTypeArg.paperFolderChangeSubscription + super.init(swift: swift) } +} +/// (paper) Archived Paper folder (deprecated, no longer logged) +@objc +public class DBXTeamLogEventTypeArgPaperFolderDeleted: DBXTeamLogEventTypeArg { @objc - public var asPaperDocRevert: DBXTeamLogEventTypeArgPaperDocRevert? { - self as? DBXTeamLogEventTypeArgPaperDocRevert + public init() { + let swift = TeamLog.EventTypeArg.paperFolderDeleted + super.init(swift: swift) } +} +/// (paper) Followed Paper folder (deprecated, replaced by 'Followed/unfollowed Paper folder') +@objc +public class DBXTeamLogEventTypeArgPaperFolderFollowed: DBXTeamLogEventTypeArg { @objc - public var asPaperDocSlackShare: DBXTeamLogEventTypeArgPaperDocSlackShare? { - self as? DBXTeamLogEventTypeArgPaperDocSlackShare + public init() { + let swift = TeamLog.EventTypeArg.paperFolderFollowed + super.init(swift: swift) } +} +/// (paper) Shared Paper folder with users and/or groups (deprecated, no longer logged) +@objc +public class DBXTeamLogEventTypeArgPaperFolderTeamInvite: DBXTeamLogEventTypeArg { @objc - public var asPaperDocTeamInvite: DBXTeamLogEventTypeArgPaperDocTeamInvite? { - self as? DBXTeamLogEventTypeArgPaperDocTeamInvite + public init() { + let swift = TeamLog.EventTypeArg.paperFolderTeamInvite + super.init(swift: swift) } +} +/// (paper) Changed permissions for published doc +@objc +public class DBXTeamLogEventTypeArgPaperPublishedLinkChangePermission: DBXTeamLogEventTypeArg { @objc - public var asPaperDocTrashed: DBXTeamLogEventTypeArgPaperDocTrashed? { - self as? DBXTeamLogEventTypeArgPaperDocTrashed + public init() { + let swift = TeamLog.EventTypeArg.paperPublishedLinkChangePermission + super.init(swift: swift) } +} +/// (paper) Published doc +@objc +public class DBXTeamLogEventTypeArgPaperPublishedLinkCreate: DBXTeamLogEventTypeArg { @objc - public var asPaperDocUnresolveComment: DBXTeamLogEventTypeArgPaperDocUnresolveComment? { - self as? DBXTeamLogEventTypeArgPaperDocUnresolveComment + public init() { + let swift = TeamLog.EventTypeArg.paperPublishedLinkCreate + super.init(swift: swift) } +} +/// (paper) Unpublished doc +@objc +public class DBXTeamLogEventTypeArgPaperPublishedLinkDisabled: DBXTeamLogEventTypeArg { @objc - public var asPaperDocUntrashed: DBXTeamLogEventTypeArgPaperDocUntrashed? { - self as? DBXTeamLogEventTypeArgPaperDocUntrashed + public init() { + let swift = TeamLog.EventTypeArg.paperPublishedLinkDisabled + super.init(swift: swift) } +} +/// (paper) Viewed published doc +@objc +public class DBXTeamLogEventTypeArgPaperPublishedLinkView: DBXTeamLogEventTypeArg { @objc - public var asPaperDocView: DBXTeamLogEventTypeArgPaperDocView? { - self as? DBXTeamLogEventTypeArgPaperDocView + public init() { + let swift = TeamLog.EventTypeArg.paperPublishedLinkView + super.init(swift: swift) } +} +/// (passwords) Changed password +@objc +public class DBXTeamLogEventTypeArgPasswordChange: DBXTeamLogEventTypeArg { @objc - public var asPaperExternalViewAllow: DBXTeamLogEventTypeArgPaperExternalViewAllow? { - self as? DBXTeamLogEventTypeArgPaperExternalViewAllow + public init() { + let swift = TeamLog.EventTypeArg.passwordChange + super.init(swift: swift) } +} +/// (passwords) Reset password +@objc +public class DBXTeamLogEventTypeArgPasswordReset: DBXTeamLogEventTypeArg { @objc - public var asPaperExternalViewDefaultTeam: DBXTeamLogEventTypeArgPaperExternalViewDefaultTeam? { - self as? DBXTeamLogEventTypeArgPaperExternalViewDefaultTeam + public init() { + let swift = TeamLog.EventTypeArg.passwordReset + super.init(swift: swift) } +} +/// (passwords) Reset all team member passwords +@objc +public class DBXTeamLogEventTypeArgPasswordResetAll: DBXTeamLogEventTypeArg { @objc - public var asPaperExternalViewForbid: DBXTeamLogEventTypeArgPaperExternalViewForbid? { - self as? DBXTeamLogEventTypeArgPaperExternalViewForbid + public init() { + let swift = TeamLog.EventTypeArg.passwordResetAll + super.init(swift: swift) } +} +/// (protect) Added collaborators via Dropbox Protect +@objc +public class DBXTeamLogEventTypeArgProtectActionAddCollaborator: DBXTeamLogEventTypeArg { @objc - public var asPaperFolderChangeSubscription: DBXTeamLogEventTypeArgPaperFolderChangeSubscription? { - self as? DBXTeamLogEventTypeArgPaperFolderChangeSubscription + public init() { + let swift = TeamLog.EventTypeArg.protectActionAddCollaborator + super.init(swift: swift) } +} +/// (protect) Added a link via Dropbox Protect +@objc +public class DBXTeamLogEventTypeArgProtectActionAddLink: DBXTeamLogEventTypeArg { @objc - public var asPaperFolderDeleted: DBXTeamLogEventTypeArgPaperFolderDeleted? { - self as? DBXTeamLogEventTypeArgPaperFolderDeleted + public init() { + let swift = TeamLog.EventTypeArg.protectActionAddLink + super.init(swift: swift) } +} +/// (protect) Deleted content via Dropbox Protect +@objc +public class DBXTeamLogEventTypeArgProtectActionDelete: DBXTeamLogEventTypeArg { @objc - public var asPaperFolderFollowed: DBXTeamLogEventTypeArgPaperFolderFollowed? { - self as? DBXTeamLogEventTypeArgPaperFolderFollowed + public init() { + let swift = TeamLog.EventTypeArg.protectActionDelete + super.init(swift: swift) } +} +/// (protect) Exported content via Dropbox Protect +@objc +public class DBXTeamLogEventTypeArgProtectActionExport: DBXTeamLogEventTypeArg { @objc - public var asPaperFolderTeamInvite: DBXTeamLogEventTypeArgPaperFolderTeamInvite? { - self as? DBXTeamLogEventTypeArgPaperFolderTeamInvite + public init() { + let swift = TeamLog.EventTypeArg.protectActionExport + super.init(swift: swift) } +} +/// (protect) Removed collaborators via Dropbox Protect +@objc +public class DBXTeamLogEventTypeArgProtectActionRemoveCollaborator: DBXTeamLogEventTypeArg { @objc - public var asPaperPublishedLinkChangePermission: DBXTeamLogEventTypeArgPaperPublishedLinkChangePermission? { - self as? DBXTeamLogEventTypeArgPaperPublishedLinkChangePermission + public init() { + let swift = TeamLog.EventTypeArg.protectActionRemoveCollaborator + super.init(swift: swift) } +} +/// (protect) Removed a link via Dropbox Protect +@objc +public class DBXTeamLogEventTypeArgProtectActionRemoveLink: DBXTeamLogEventTypeArg { @objc - public var asPaperPublishedLinkCreate: DBXTeamLogEventTypeArgPaperPublishedLinkCreate? { - self as? DBXTeamLogEventTypeArgPaperPublishedLinkCreate + public init() { + let swift = TeamLog.EventTypeArg.protectActionRemoveLink + super.init(swift: swift) } +} +/// (protect) Stopped sharing content via Dropbox Protect +@objc +public class DBXTeamLogEventTypeArgProtectActionStopSharing: DBXTeamLogEventTypeArg { @objc - public var asPaperPublishedLinkDisabled: DBXTeamLogEventTypeArgPaperPublishedLinkDisabled? { - self as? DBXTeamLogEventTypeArgPaperPublishedLinkDisabled + public init() { + let swift = TeamLog.EventTypeArg.protectActionStopSharing + super.init(swift: swift) } +} +/// (protect) Modified Protect internal domains list +@objc +public class DBXTeamLogEventTypeArgProtectInternalDomainsChanged: DBXTeamLogEventTypeArg { @objc - public var asPaperPublishedLinkView: DBXTeamLogEventTypeArgPaperPublishedLinkView? { - self as? DBXTeamLogEventTypeArgPaperPublishedLinkView + public init() { + let swift = TeamLog.EventTypeArg.protectInternalDomainsChanged + super.init(swift: swift) } +} +/// (reports) Created Classification report +@objc +public class DBXTeamLogEventTypeArgClassificationCreateReport: DBXTeamLogEventTypeArg { @objc - public var asPasswordChange: DBXTeamLogEventTypeArgPasswordChange? { - self as? DBXTeamLogEventTypeArgPasswordChange + public init() { + let swift = TeamLog.EventTypeArg.classificationCreateReport + super.init(swift: swift) } +} +/// (reports) Couldn't create Classification report +@objc +public class DBXTeamLogEventTypeArgClassificationCreateReportFail: DBXTeamLogEventTypeArg { @objc - public var asPasswordReset: DBXTeamLogEventTypeArgPasswordReset? { - self as? DBXTeamLogEventTypeArgPasswordReset + public init() { + let swift = TeamLog.EventTypeArg.classificationCreateReportFail + super.init(swift: swift) } +} +/// (reports) Created EMM-excluded users report +@objc +public class DBXTeamLogEventTypeArgEmmCreateExceptionsReport: DBXTeamLogEventTypeArg { @objc - public var asPasswordResetAll: DBXTeamLogEventTypeArgPasswordResetAll? { - self as? DBXTeamLogEventTypeArgPasswordResetAll + public init() { + let swift = TeamLog.EventTypeArg.emmCreateExceptionsReport + super.init(swift: swift) } +} +/// (reports) Created EMM mobile app usage report +@objc +public class DBXTeamLogEventTypeArgEmmCreateUsageReport: DBXTeamLogEventTypeArg { @objc - public var asClassificationCreateReport: DBXTeamLogEventTypeArgClassificationCreateReport? { - self as? DBXTeamLogEventTypeArgClassificationCreateReport + public init() { + let swift = TeamLog.EventTypeArg.emmCreateUsageReport + super.init(swift: swift) } +} +/// (reports) Created member data report +@objc +public class DBXTeamLogEventTypeArgExportMembersReport: DBXTeamLogEventTypeArg { @objc - public var asClassificationCreateReportFail: DBXTeamLogEventTypeArgClassificationCreateReportFail? { - self as? DBXTeamLogEventTypeArgClassificationCreateReportFail + public init() { + let swift = TeamLog.EventTypeArg.exportMembersReport + super.init(swift: swift) } +} +/// (reports) Failed to create members data report +@objc +public class DBXTeamLogEventTypeArgExportMembersReportFail: DBXTeamLogEventTypeArg { @objc - public var asEmmCreateExceptionsReport: DBXTeamLogEventTypeArgEmmCreateExceptionsReport? { - self as? DBXTeamLogEventTypeArgEmmCreateExceptionsReport + public init() { + let swift = TeamLog.EventTypeArg.exportMembersReportFail + super.init(swift: swift) } +} +/// (reports) Created External sharing report +@objc +public class DBXTeamLogEventTypeArgExternalSharingCreateReport: DBXTeamLogEventTypeArg { @objc - public var asEmmCreateUsageReport: DBXTeamLogEventTypeArgEmmCreateUsageReport? { - self as? DBXTeamLogEventTypeArgEmmCreateUsageReport + public init() { + let swift = TeamLog.EventTypeArg.externalSharingCreateReport + super.init(swift: swift) } +} +/// (reports) Couldn't create External sharing report +@objc +public class DBXTeamLogEventTypeArgExternalSharingReportFailed: DBXTeamLogEventTypeArg { @objc - public var asExportMembersReport: DBXTeamLogEventTypeArgExportMembersReport? { - self as? DBXTeamLogEventTypeArgExportMembersReport + public init() { + let swift = TeamLog.EventTypeArg.externalSharingReportFailed + super.init(swift: swift) } +} +/// (reports) Created member access report +@objc +public class DBXTeamLogEventTypeArgMemberAccessDetailsCreateReport: DBXTeamLogEventTypeArg { @objc - public var asExportMembersReportFail: DBXTeamLogEventTypeArgExportMembersReportFail? { - self as? DBXTeamLogEventTypeArgExportMembersReportFail + public init() { + let swift = TeamLog.EventTypeArg.memberAccessDetailsCreateReport + super.init(swift: swift) } +} +/// (reports) Couldn't generate member access report +@objc +public class DBXTeamLogEventTypeArgMemberAccessDetailsCreateReportFailed: DBXTeamLogEventTypeArg { @objc - public var asExternalSharingCreateReport: DBXTeamLogEventTypeArgExternalSharingCreateReport? { - self as? DBXTeamLogEventTypeArgExternalSharingCreateReport + public init() { + let swift = TeamLog.EventTypeArg.memberAccessDetailsCreateReportFailed + super.init(swift: swift) } +} +/// (reports) Report created: Links created with no expiration +@objc +public class DBXTeamLogEventTypeArgNoExpirationLinkGenCreateReport: DBXTeamLogEventTypeArg { @objc - public var asExternalSharingReportFailed: DBXTeamLogEventTypeArgExternalSharingReportFailed? { - self as? DBXTeamLogEventTypeArgExternalSharingReportFailed + public init() { + let swift = TeamLog.EventTypeArg.noExpirationLinkGenCreateReport + super.init(swift: swift) } +} +/// (reports) Couldn't create report: Links created with no expiration +@objc +public class DBXTeamLogEventTypeArgNoExpirationLinkGenReportFailed: DBXTeamLogEventTypeArg { @objc - public var asNoExpirationLinkGenCreateReport: DBXTeamLogEventTypeArgNoExpirationLinkGenCreateReport? { - self as? DBXTeamLogEventTypeArgNoExpirationLinkGenCreateReport + public init() { + let swift = TeamLog.EventTypeArg.noExpirationLinkGenReportFailed + super.init(swift: swift) } +} +/// (reports) Report created: Links created without passwords +@objc +public class DBXTeamLogEventTypeArgNoPasswordLinkGenCreateReport: DBXTeamLogEventTypeArg { @objc - public var asNoExpirationLinkGenReportFailed: DBXTeamLogEventTypeArgNoExpirationLinkGenReportFailed? { - self as? DBXTeamLogEventTypeArgNoExpirationLinkGenReportFailed + public init() { + let swift = TeamLog.EventTypeArg.noPasswordLinkGenCreateReport + super.init(swift: swift) } +} +/// (reports) Couldn't create report: Links created without passwords +@objc +public class DBXTeamLogEventTypeArgNoPasswordLinkGenReportFailed: DBXTeamLogEventTypeArg { @objc - public var asNoPasswordLinkGenCreateReport: DBXTeamLogEventTypeArgNoPasswordLinkGenCreateReport? { - self as? DBXTeamLogEventTypeArgNoPasswordLinkGenCreateReport + public init() { + let swift = TeamLog.EventTypeArg.noPasswordLinkGenReportFailed + super.init(swift: swift) } +} +/// (reports) Report created: Views of links without passwords +@objc +public class DBXTeamLogEventTypeArgNoPasswordLinkViewCreateReport: DBXTeamLogEventTypeArg { @objc - public var asNoPasswordLinkGenReportFailed: DBXTeamLogEventTypeArgNoPasswordLinkGenReportFailed? { - self as? DBXTeamLogEventTypeArgNoPasswordLinkGenReportFailed + public init() { + let swift = TeamLog.EventTypeArg.noPasswordLinkViewCreateReport + super.init(swift: swift) } +} +/// (reports) Couldn't create report: Views of links without passwords +@objc +public class DBXTeamLogEventTypeArgNoPasswordLinkViewReportFailed: DBXTeamLogEventTypeArg { @objc - public var asNoPasswordLinkViewCreateReport: DBXTeamLogEventTypeArgNoPasswordLinkViewCreateReport? { - self as? DBXTeamLogEventTypeArgNoPasswordLinkViewCreateReport + public init() { + let swift = TeamLog.EventTypeArg.noPasswordLinkViewReportFailed + super.init(swift: swift) } +} +/// (reports) Report created: Views of old links +@objc +public class DBXTeamLogEventTypeArgOutdatedLinkViewCreateReport: DBXTeamLogEventTypeArg { @objc - public var asNoPasswordLinkViewReportFailed: DBXTeamLogEventTypeArgNoPasswordLinkViewReportFailed? { - self as? DBXTeamLogEventTypeArgNoPasswordLinkViewReportFailed + public init() { + let swift = TeamLog.EventTypeArg.outdatedLinkViewCreateReport + super.init(swift: swift) } +} +/// (reports) Couldn't create report: Views of old links +@objc +public class DBXTeamLogEventTypeArgOutdatedLinkViewReportFailed: DBXTeamLogEventTypeArg { @objc - public var asOutdatedLinkViewCreateReport: DBXTeamLogEventTypeArgOutdatedLinkViewCreateReport? { - self as? DBXTeamLogEventTypeArgOutdatedLinkViewCreateReport + public init() { + let swift = TeamLog.EventTypeArg.outdatedLinkViewReportFailed + super.init(swift: swift) } +} +/// (reports) Exported all team Paper docs +@objc +public class DBXTeamLogEventTypeArgPaperAdminExportStart: DBXTeamLogEventTypeArg { @objc - public var asOutdatedLinkViewReportFailed: DBXTeamLogEventTypeArgOutdatedLinkViewReportFailed? { - self as? DBXTeamLogEventTypeArgOutdatedLinkViewReportFailed + public init() { + let swift = TeamLog.EventTypeArg.paperAdminExportStart + super.init(swift: swift) } +} +/// (reports) Created ransomware report +@objc +public class DBXTeamLogEventTypeArgRansomwareAlertCreateReport: DBXTeamLogEventTypeArg { @objc - public var asPaperAdminExportStart: DBXTeamLogEventTypeArgPaperAdminExportStart? { - self as? DBXTeamLogEventTypeArgPaperAdminExportStart + public init() { + let swift = TeamLog.EventTypeArg.ransomwareAlertCreateReport + super.init(swift: swift) } +} +/// (reports) Couldn't generate ransomware report +@objc +public class DBXTeamLogEventTypeArgRansomwareAlertCreateReportFailed: DBXTeamLogEventTypeArg { @objc - public var asRansomwareAlertCreateReport: DBXTeamLogEventTypeArgRansomwareAlertCreateReport? { - self as? DBXTeamLogEventTypeArgRansomwareAlertCreateReport + public init() { + let swift = TeamLog.EventTypeArg.ransomwareAlertCreateReportFailed + super.init(swift: swift) } +} +/// (reports) Created shared folders report +@objc +public class DBXTeamLogEventTypeArgSharedFoldersCreateReport: DBXTeamLogEventTypeArg { @objc - public var asRansomwareAlertCreateReportFailed: DBXTeamLogEventTypeArgRansomwareAlertCreateReportFailed? { - self as? DBXTeamLogEventTypeArgRansomwareAlertCreateReportFailed + public init() { + let swift = TeamLog.EventTypeArg.sharedFoldersCreateReport + super.init(swift: swift) } +} +/// (reports) Couldn't generate shared folders report +@objc +public class DBXTeamLogEventTypeArgSharedFoldersCreateReportFailed: DBXTeamLogEventTypeArg { @objc - public var asSmartSyncCreateAdminPrivilegeReport: DBXTeamLogEventTypeArgSmartSyncCreateAdminPrivilegeReport? { - self as? DBXTeamLogEventTypeArgSmartSyncCreateAdminPrivilegeReport + public init() { + let swift = TeamLog.EventTypeArg.sharedFoldersCreateReportFailed + super.init(swift: swift) } +} +/// (reports) Created Smart Sync non-admin devices report +@objc +public class DBXTeamLogEventTypeArgSmartSyncCreateAdminPrivilegeReport: DBXTeamLogEventTypeArg { @objc - public var asTeamActivityCreateReport: DBXTeamLogEventTypeArgTeamActivityCreateReport? { - self as? DBXTeamLogEventTypeArgTeamActivityCreateReport + public init() { + let swift = TeamLog.EventTypeArg.smartSyncCreateAdminPrivilegeReport + super.init(swift: swift) } +} +/// (reports) Created team activity report +@objc +public class DBXTeamLogEventTypeArgTeamActivityCreateReport: DBXTeamLogEventTypeArg { @objc - public var asTeamActivityCreateReportFail: DBXTeamLogEventTypeArgTeamActivityCreateReportFail? { - self as? DBXTeamLogEventTypeArgTeamActivityCreateReportFail + public init() { + let swift = TeamLog.EventTypeArg.teamActivityCreateReport + super.init(swift: swift) } +} +/// (reports) Couldn't generate team activity report +@objc +public class DBXTeamLogEventTypeArgTeamActivityCreateReportFail: DBXTeamLogEventTypeArg { @objc - public var asCollectionShare: DBXTeamLogEventTypeArgCollectionShare? { - self as? DBXTeamLogEventTypeArgCollectionShare + public init() { + let swift = TeamLog.EventTypeArg.teamActivityCreateReportFail + super.init(swift: swift) } +} +/// (reports) Created team folders report +@objc +public class DBXTeamLogEventTypeArgTeamFoldersCreateReport: DBXTeamLogEventTypeArg { @objc - public var asFileTransfersFileAdd: DBXTeamLogEventTypeArgFileTransfersFileAdd? { - self as? DBXTeamLogEventTypeArgFileTransfersFileAdd + public init() { + let swift = TeamLog.EventTypeArg.teamFoldersCreateReport + super.init(swift: swift) } +} +/// (reports) Couldn't generate team folders report +@objc +public class DBXTeamLogEventTypeArgTeamFoldersCreateReportFailed: DBXTeamLogEventTypeArg { @objc - public var asFileTransfersTransferDelete: DBXTeamLogEventTypeArgFileTransfersTransferDelete? { - self as? DBXTeamLogEventTypeArgFileTransfersTransferDelete + public init() { + let swift = TeamLog.EventTypeArg.teamFoldersCreateReportFailed + super.init(swift: swift) } +} +/// (reports) Created team storage report +@objc +public class DBXTeamLogEventTypeArgTeamStorageCreateReport: DBXTeamLogEventTypeArg { @objc - public var asFileTransfersTransferDownload: DBXTeamLogEventTypeArgFileTransfersTransferDownload? { - self as? DBXTeamLogEventTypeArgFileTransfersTransferDownload + public init() { + let swift = TeamLog.EventTypeArg.teamStorageCreateReport + super.init(swift: swift) } +} +/// (reports) Couldn't generate team storage report +@objc +public class DBXTeamLogEventTypeArgTeamStorageCreateReportFailed: DBXTeamLogEventTypeArg { @objc - public var asFileTransfersTransferSend: DBXTeamLogEventTypeArgFileTransfersTransferSend? { - self as? DBXTeamLogEventTypeArgFileTransfersTransferSend + public init() { + let swift = TeamLog.EventTypeArg.teamStorageCreateReportFailed + super.init(swift: swift) } +} +/// (sharing) Shared album +@objc +public class DBXTeamLogEventTypeArgCollectionShare: DBXTeamLogEventTypeArg { @objc - public var asFileTransfersTransferView: DBXTeamLogEventTypeArgFileTransfersTransferView? { - self as? DBXTeamLogEventTypeArgFileTransfersTransferView + public init() { + let swift = TeamLog.EventTypeArg.collectionShare + super.init(swift: swift) } +} +/// (sharing) Transfer files added +@objc +public class DBXTeamLogEventTypeArgFileTransfersFileAdd: DBXTeamLogEventTypeArg { @objc - public var asNoteAclInviteOnly: DBXTeamLogEventTypeArgNoteAclInviteOnly? { - self as? DBXTeamLogEventTypeArgNoteAclInviteOnly + public init() { + let swift = TeamLog.EventTypeArg.fileTransfersFileAdd + super.init(swift: swift) } +} +/// (sharing) Deleted transfer +@objc +public class DBXTeamLogEventTypeArgFileTransfersTransferDelete: DBXTeamLogEventTypeArg { @objc - public var asNoteAclLink: DBXTeamLogEventTypeArgNoteAclLink? { - self as? DBXTeamLogEventTypeArgNoteAclLink + public init() { + let swift = TeamLog.EventTypeArg.fileTransfersTransferDelete + super.init(swift: swift) } +} +/// (sharing) Transfer downloaded +@objc +public class DBXTeamLogEventTypeArgFileTransfersTransferDownload: DBXTeamLogEventTypeArg { @objc - public var asNoteAclTeamLink: DBXTeamLogEventTypeArgNoteAclTeamLink? { - self as? DBXTeamLogEventTypeArgNoteAclTeamLink + public init() { + let swift = TeamLog.EventTypeArg.fileTransfersTransferDownload + super.init(swift: swift) } +} +/// (sharing) Sent transfer +@objc +public class DBXTeamLogEventTypeArgFileTransfersTransferSend: DBXTeamLogEventTypeArg { @objc - public var asNoteShared: DBXTeamLogEventTypeArgNoteShared? { - self as? DBXTeamLogEventTypeArgNoteShared + public init() { + let swift = TeamLog.EventTypeArg.fileTransfersTransferSend + super.init(swift: swift) } +} +/// (sharing) Viewed transfer +@objc +public class DBXTeamLogEventTypeArgFileTransfersTransferView: DBXTeamLogEventTypeArg { @objc - public var asNoteShareReceive: DBXTeamLogEventTypeArgNoteShareReceive? { - self as? DBXTeamLogEventTypeArgNoteShareReceive + public init() { + let swift = TeamLog.EventTypeArg.fileTransfersTransferView + super.init(swift: swift) } +} +/// (sharing) Added member to Replay project +@objc +public class DBXTeamLogEventTypeArgMediaHubProjectTeamAdd: DBXTeamLogEventTypeArg { @objc - public var asOpenNoteShared: DBXTeamLogEventTypeArgOpenNoteShared? { - self as? DBXTeamLogEventTypeArgOpenNoteShared + public init() { + let swift = TeamLog.EventTypeArg.mediaHubProjectTeamAdd + super.init(swift: swift) } +} +/// (sharing) Removed member from Replay project +@objc +public class DBXTeamLogEventTypeArgMediaHubProjectTeamDelete: DBXTeamLogEventTypeArg { @objc - public var asReplayFileSharedLinkCreated: DBXTeamLogEventTypeArgReplayFileSharedLinkCreated? { - self as? DBXTeamLogEventTypeArgReplayFileSharedLinkCreated + public init() { + let swift = TeamLog.EventTypeArg.mediaHubProjectTeamDelete + super.init(swift: swift) } +} +/// (sharing) Changed member role in Replay project +@objc +public class DBXTeamLogEventTypeArgMediaHubProjectTeamRoleChanged: DBXTeamLogEventTypeArg { @objc - public var asReplayFileSharedLinkModified: DBXTeamLogEventTypeArgReplayFileSharedLinkModified? { - self as? DBXTeamLogEventTypeArgReplayFileSharedLinkModified + public init() { + let swift = TeamLog.EventTypeArg.mediaHubProjectTeamRoleChanged + super.init(swift: swift) } +} +/// (sharing) Changed Replay shared link audience +@objc +public class DBXTeamLogEventTypeArgMediaHubSharedLinkAudienceChanged: DBXTeamLogEventTypeArg { @objc - public var asReplayProjectTeamAdd: DBXTeamLogEventTypeArgReplayProjectTeamAdd? { - self as? DBXTeamLogEventTypeArgReplayProjectTeamAdd + public init() { + let swift = TeamLog.EventTypeArg.mediaHubSharedLinkAudienceChanged + super.init(swift: swift) } +} +/// (sharing) Created Replay shared link +@objc +public class DBXTeamLogEventTypeArgMediaHubSharedLinkCreated: DBXTeamLogEventTypeArg { @objc - public var asReplayProjectTeamDelete: DBXTeamLogEventTypeArgReplayProjectTeamDelete? { - self as? DBXTeamLogEventTypeArgReplayProjectTeamDelete + public init() { + let swift = TeamLog.EventTypeArg.mediaHubSharedLinkCreated + super.init(swift: swift) } +} +/// (sharing) Changed Replay shared link download setting +@objc +public class DBXTeamLogEventTypeArgMediaHubSharedLinkDownloadSettingChanged: DBXTeamLogEventTypeArg { @objc - public var asSfAddGroup: DBXTeamLogEventTypeArgSfAddGroup? { - self as? DBXTeamLogEventTypeArgSfAddGroup + public init() { + let swift = TeamLog.EventTypeArg.mediaHubSharedLinkDownloadSettingChanged + super.init(swift: swift) } +} +/// (sharing) Revoked Replay shared link +@objc +public class DBXTeamLogEventTypeArgMediaHubSharedLinkRevoked: DBXTeamLogEventTypeArg { @objc - public var asSfAllowNonMembersToViewSharedLinks: DBXTeamLogEventTypeArgSfAllowNonMembersToViewSharedLinks? { - self as? DBXTeamLogEventTypeArgSfAllowNonMembersToViewSharedLinks + public init() { + let swift = TeamLog.EventTypeArg.mediaHubSharedLinkRevoked + super.init(swift: swift) } +} +/// (sharing) Changed Paper doc to invite-only (deprecated, no longer logged) +@objc +public class DBXTeamLogEventTypeArgNoteAclInviteOnly: DBXTeamLogEventTypeArg { @objc - public var asSfExternalInviteWarn: DBXTeamLogEventTypeArgSfExternalInviteWarn? { - self as? DBXTeamLogEventTypeArgSfExternalInviteWarn + public init() { + let swift = TeamLog.EventTypeArg.noteAclInviteOnly + super.init(swift: swift) } +} +/// (sharing) Changed Paper doc to link-accessible (deprecated, no longer logged) +@objc +public class DBXTeamLogEventTypeArgNoteAclLink: DBXTeamLogEventTypeArg { @objc - public var asSfFbInvite: DBXTeamLogEventTypeArgSfFbInvite? { - self as? DBXTeamLogEventTypeArgSfFbInvite + public init() { + let swift = TeamLog.EventTypeArg.noteAclLink + super.init(swift: swift) } +} +/// (sharing) Changed Paper doc to link-accessible for team (deprecated, no longer logged) +@objc +public class DBXTeamLogEventTypeArgNoteAclTeamLink: DBXTeamLogEventTypeArg { @objc - public var asSfFbInviteChangeRole: DBXTeamLogEventTypeArgSfFbInviteChangeRole? { - self as? DBXTeamLogEventTypeArgSfFbInviteChangeRole + public init() { + let swift = TeamLog.EventTypeArg.noteAclTeamLink + super.init(swift: swift) } +} +/// (sharing) Shared Paper doc (deprecated, no longer logged) +@objc +public class DBXTeamLogEventTypeArgNoteShared: DBXTeamLogEventTypeArg { @objc - public var asSfFbUninvite: DBXTeamLogEventTypeArgSfFbUninvite? { - self as? DBXTeamLogEventTypeArgSfFbUninvite + public init() { + let swift = TeamLog.EventTypeArg.noteShared + super.init(swift: swift) } +} +/// (sharing) Shared received Paper doc (deprecated, no longer logged) +@objc +public class DBXTeamLogEventTypeArgNoteShareReceive: DBXTeamLogEventTypeArg { @objc - public var asSfInviteGroup: DBXTeamLogEventTypeArgSfInviteGroup? { - self as? DBXTeamLogEventTypeArgSfInviteGroup + public init() { + let swift = TeamLog.EventTypeArg.noteShareReceive + super.init(swift: swift) } +} +/// (sharing) Opened shared Paper doc (deprecated, no longer logged) +@objc +public class DBXTeamLogEventTypeArgOpenNoteShared: DBXTeamLogEventTypeArg { @objc - public var asSfTeamGrantAccess: DBXTeamLogEventTypeArgSfTeamGrantAccess? { - self as? DBXTeamLogEventTypeArgSfTeamGrantAccess + public init() { + let swift = TeamLog.EventTypeArg.openNoteShared + super.init(swift: swift) } +} +/// (sharing) Created shared link in Replay +@objc +public class DBXTeamLogEventTypeArgReplayFileSharedLinkCreated: DBXTeamLogEventTypeArg { @objc - public var asSfTeamInvite: DBXTeamLogEventTypeArgSfTeamInvite? { - self as? DBXTeamLogEventTypeArgSfTeamInvite + public init() { + let swift = TeamLog.EventTypeArg.replayFileSharedLinkCreated + super.init(swift: swift) } +} +/// (sharing) Changed shared link in Replay +@objc +public class DBXTeamLogEventTypeArgReplayFileSharedLinkModified: DBXTeamLogEventTypeArg { @objc - public var asSfTeamInviteChangeRole: DBXTeamLogEventTypeArgSfTeamInviteChangeRole? { - self as? DBXTeamLogEventTypeArgSfTeamInviteChangeRole + public init() { + let swift = TeamLog.EventTypeArg.replayFileSharedLinkModified + super.init(swift: swift) } +} +/// (sharing) Added member to Replay Project +@objc +public class DBXTeamLogEventTypeArgReplayProjectTeamAdd: DBXTeamLogEventTypeArg { @objc - public var asSfTeamJoin: DBXTeamLogEventTypeArgSfTeamJoin? { - self as? DBXTeamLogEventTypeArgSfTeamJoin + public init() { + let swift = TeamLog.EventTypeArg.replayProjectTeamAdd + super.init(swift: swift) } +} +/// (sharing) Removed member from Replay Project +@objc +public class DBXTeamLogEventTypeArgReplayProjectTeamDelete: DBXTeamLogEventTypeArg { @objc - public var asSfTeamJoinFromOobLink: DBXTeamLogEventTypeArgSfTeamJoinFromOobLink? { - self as? DBXTeamLogEventTypeArgSfTeamJoinFromOobLink + public init() { + let swift = TeamLog.EventTypeArg.replayProjectTeamDelete + super.init(swift: swift) } +} +/// (sharing) File added to Send and Track +@objc +public class DBXTeamLogEventTypeArgSendAndTrackFileAdded: DBXTeamLogEventTypeArg { @objc - public var asSfTeamUninvite: DBXTeamLogEventTypeArgSfTeamUninvite? { - self as? DBXTeamLogEventTypeArgSfTeamUninvite + public init() { + let swift = TeamLog.EventTypeArg.sendAndTrackFileAdded + super.init(swift: swift) } +} +/// (sharing) File renamed in Send and Track +@objc +public class DBXTeamLogEventTypeArgSendAndTrackFileRenamed: DBXTeamLogEventTypeArg { @objc - public var asSharedContentAddInvitees: DBXTeamLogEventTypeArgSharedContentAddInvitees? { - self as? DBXTeamLogEventTypeArgSharedContentAddInvitees + public init() { + let swift = TeamLog.EventTypeArg.sendAndTrackFileRenamed + super.init(swift: swift) } +} +/// (sharing) File updated in Send and Track +@objc +public class DBXTeamLogEventTypeArgSendAndTrackFileUpdated: DBXTeamLogEventTypeArg { @objc - public var asSharedContentAddLinkExpiry: DBXTeamLogEventTypeArgSharedContentAddLinkExpiry? { - self as? DBXTeamLogEventTypeArgSharedContentAddLinkExpiry + public init() { + let swift = TeamLog.EventTypeArg.sendAndTrackFileUpdated + super.init(swift: swift) } +} +/// (sharing) Link created in Send and Track +@objc +public class DBXTeamLogEventTypeArgSendAndTrackLinkCreated: DBXTeamLogEventTypeArg { @objc - public var asSharedContentAddLinkPassword: DBXTeamLogEventTypeArgSharedContentAddLinkPassword? { - self as? DBXTeamLogEventTypeArgSharedContentAddLinkPassword + public init() { + let swift = TeamLog.EventTypeArg.sendAndTrackLinkCreated + super.init(swift: swift) } +} +/// (sharing) Link deleted in Send and Track +@objc +public class DBXTeamLogEventTypeArgSendAndTrackLinkDeleted: DBXTeamLogEventTypeArg { @objc - public var asSharedContentAddMember: DBXTeamLogEventTypeArgSharedContentAddMember? { - self as? DBXTeamLogEventTypeArgSharedContentAddMember + public init() { + let swift = TeamLog.EventTypeArg.sendAndTrackLinkDeleted + super.init(swift: swift) } +} +/// (sharing) Send and Track Link Updated +@objc +public class DBXTeamLogEventTypeArgSendAndTrackLinkUpdated: DBXTeamLogEventTypeArg { @objc - public var asSharedContentChangeDownloadsPolicy: DBXTeamLogEventTypeArgSharedContentChangeDownloadsPolicy? { - self as? DBXTeamLogEventTypeArgSharedContentChangeDownloadsPolicy + public init() { + let swift = TeamLog.EventTypeArg.sendAndTrackLinkUpdated + super.init(swift: swift) } +} +/// (sharing) Send and Track Link Visited +@objc +public class DBXTeamLogEventTypeArgSendAndTrackLinkViewed: DBXTeamLogEventTypeArg { @objc - public var asSharedContentChangeInviteeRole: DBXTeamLogEventTypeArgSharedContentChangeInviteeRole? { - self as? DBXTeamLogEventTypeArgSharedContentChangeInviteeRole + public init() { + let swift = TeamLog.EventTypeArg.sendAndTrackLinkViewed + super.init(swift: swift) } +} +/// (sharing) Send and Track file and associated links deleted +@objc +public class DBXTeamLogEventTypeArgSendAndTrackRemovedFileAndAssociatedLinks: DBXTeamLogEventTypeArg { @objc - public var asSharedContentChangeLinkAudience: DBXTeamLogEventTypeArgSharedContentChangeLinkAudience? { - self as? DBXTeamLogEventTypeArgSharedContentChangeLinkAudience + public init() { + let swift = TeamLog.EventTypeArg.sendAndTrackRemovedFileAndAssociatedLinks + super.init(swift: swift) } +} +/// (sharing) Added team to shared folder (deprecated, no longer logged) +@objc +public class DBXTeamLogEventTypeArgSfAddGroup: DBXTeamLogEventTypeArg { @objc - public var asSharedContentChangeLinkExpiry: DBXTeamLogEventTypeArgSharedContentChangeLinkExpiry? { - self as? DBXTeamLogEventTypeArgSharedContentChangeLinkExpiry + public init() { + let swift = TeamLog.EventTypeArg.sfAddGroup + super.init(swift: swift) } +} +/// (sharing) Allowed non-collaborators to view links to files in shared folder (deprecated, no longer logged) +@objc +public class DBXTeamLogEventTypeArgSfAllowNonMembersToViewSharedLinks: DBXTeamLogEventTypeArg { @objc - public var asSharedContentChangeLinkPassword: DBXTeamLogEventTypeArgSharedContentChangeLinkPassword? { - self as? DBXTeamLogEventTypeArgSharedContentChangeLinkPassword + public init() { + let swift = TeamLog.EventTypeArg.sfAllowNonMembersToViewSharedLinks + super.init(swift: swift) } +} +/// (sharing) Set team members to see warning before sharing folders outside team (deprecated, no longer logged) +@objc +public class DBXTeamLogEventTypeArgSfExternalInviteWarn: DBXTeamLogEventTypeArg { @objc - public var asSharedContentChangeMemberRole: DBXTeamLogEventTypeArgSharedContentChangeMemberRole? { - self as? DBXTeamLogEventTypeArgSharedContentChangeMemberRole + public init() { + let swift = TeamLog.EventTypeArg.sfExternalInviteWarn + super.init(swift: swift) } +} +/// (sharing) Invited Facebook users to shared folder (deprecated, no longer logged) +@objc +public class DBXTeamLogEventTypeArgSfFbInvite: DBXTeamLogEventTypeArg { @objc - public var asSharedContentChangeViewerInfoPolicy: DBXTeamLogEventTypeArgSharedContentChangeViewerInfoPolicy? { - self as? DBXTeamLogEventTypeArgSharedContentChangeViewerInfoPolicy + public init() { + let swift = TeamLog.EventTypeArg.sfFbInvite + super.init(swift: swift) } +} +/// (sharing) Changed Facebook user's role in shared folder (deprecated, no longer logged) +@objc +public class DBXTeamLogEventTypeArgSfFbInviteChangeRole: DBXTeamLogEventTypeArg { @objc - public var asSharedContentClaimInvitation: DBXTeamLogEventTypeArgSharedContentClaimInvitation? { - self as? DBXTeamLogEventTypeArgSharedContentClaimInvitation + public init() { + let swift = TeamLog.EventTypeArg.sfFbInviteChangeRole + super.init(swift: swift) } +} +/// (sharing) Uninvited Facebook user from shared folder (deprecated, no longer logged) +@objc +public class DBXTeamLogEventTypeArgSfFbUninvite: DBXTeamLogEventTypeArg { @objc - public var asSharedContentCopy: DBXTeamLogEventTypeArgSharedContentCopy? { - self as? DBXTeamLogEventTypeArgSharedContentCopy + public init() { + let swift = TeamLog.EventTypeArg.sfFbUninvite + super.init(swift: swift) } +} +/// (sharing) Invited group to shared folder (deprecated, no longer logged) +@objc +public class DBXTeamLogEventTypeArgSfInviteGroup: DBXTeamLogEventTypeArg { @objc - public var asSharedContentDownload: DBXTeamLogEventTypeArgSharedContentDownload? { - self as? DBXTeamLogEventTypeArgSharedContentDownload + public init() { + let swift = TeamLog.EventTypeArg.sfInviteGroup + super.init(swift: swift) } +} +/// (sharing) Granted access to shared folder (deprecated, no longer logged) +@objc +public class DBXTeamLogEventTypeArgSfTeamGrantAccess: DBXTeamLogEventTypeArg { @objc - public var asSharedContentRelinquishMembership: DBXTeamLogEventTypeArgSharedContentRelinquishMembership? { - self as? DBXTeamLogEventTypeArgSharedContentRelinquishMembership + public init() { + let swift = TeamLog.EventTypeArg.sfTeamGrantAccess + super.init(swift: swift) } +} +/// (sharing) Invited team members to shared folder (deprecated, replaced by 'Invited user to Dropbox and added + /// them to shared file/folder') +@objc +public class DBXTeamLogEventTypeArgSfTeamInvite: DBXTeamLogEventTypeArg { @objc - public var asSharedContentRemoveInvitees: DBXTeamLogEventTypeArgSharedContentRemoveInvitees? { - self as? DBXTeamLogEventTypeArgSharedContentRemoveInvitees + public init() { + let swift = TeamLog.EventTypeArg.sfTeamInvite + super.init(swift: swift) } +} +/// (sharing) Changed team member's role in shared folder (deprecated, no longer logged) +@objc +public class DBXTeamLogEventTypeArgSfTeamInviteChangeRole: DBXTeamLogEventTypeArg { @objc - public var asSharedContentRemoveLinkExpiry: DBXTeamLogEventTypeArgSharedContentRemoveLinkExpiry? { - self as? DBXTeamLogEventTypeArgSharedContentRemoveLinkExpiry + public init() { + let swift = TeamLog.EventTypeArg.sfTeamInviteChangeRole + super.init(swift: swift) } +} +/// (sharing) Joined team member's shared folder (deprecated, no longer logged) +@objc +public class DBXTeamLogEventTypeArgSfTeamJoin: DBXTeamLogEventTypeArg { @objc - public var asSharedContentRemoveLinkPassword: DBXTeamLogEventTypeArgSharedContentRemoveLinkPassword? { - self as? DBXTeamLogEventTypeArgSharedContentRemoveLinkPassword + public init() { + let swift = TeamLog.EventTypeArg.sfTeamJoin + super.init(swift: swift) } +} +/// (sharing) Joined team member's shared folder from link (deprecated, no longer logged) +@objc +public class DBXTeamLogEventTypeArgSfTeamJoinFromOobLink: DBXTeamLogEventTypeArg { @objc - public var asSharedContentRemoveMember: DBXTeamLogEventTypeArgSharedContentRemoveMember? { - self as? DBXTeamLogEventTypeArgSharedContentRemoveMember + public init() { + let swift = TeamLog.EventTypeArg.sfTeamJoinFromOobLink + super.init(swift: swift) } +} +/// (sharing) Unshared folder with team member (deprecated, replaced by 'Removed invitee from shared file/folder + /// before invite was accepted') +@objc +public class DBXTeamLogEventTypeArgSfTeamUninvite: DBXTeamLogEventTypeArg { @objc - public var asSharedContentRequestAccess: DBXTeamLogEventTypeArgSharedContentRequestAccess? { - self as? DBXTeamLogEventTypeArgSharedContentRequestAccess + public init() { + let swift = TeamLog.EventTypeArg.sfTeamUninvite + super.init(swift: swift) } +} +/// (sharing) Invited user to Dropbox and added them to shared file/folder +@objc +public class DBXTeamLogEventTypeArgSharedContentAddInvitees: DBXTeamLogEventTypeArg { @objc - public var asSharedContentRestoreInvitees: DBXTeamLogEventTypeArgSharedContentRestoreInvitees? { - self as? DBXTeamLogEventTypeArgSharedContentRestoreInvitees + public init() { + let swift = TeamLog.EventTypeArg.sharedContentAddInvitees + super.init(swift: swift) } +} +/// (sharing) Added expiration date to link for shared file/folder (deprecated, no longer logged) +@objc +public class DBXTeamLogEventTypeArgSharedContentAddLinkExpiry: DBXTeamLogEventTypeArg { @objc - public var asSharedContentRestoreMember: DBXTeamLogEventTypeArgSharedContentRestoreMember? { - self as? DBXTeamLogEventTypeArgSharedContentRestoreMember + public init() { + let swift = TeamLog.EventTypeArg.sharedContentAddLinkExpiry + super.init(swift: swift) } +} +/// (sharing) Added password to link for shared file/folder (deprecated, no longer logged) +@objc +public class DBXTeamLogEventTypeArgSharedContentAddLinkPassword: DBXTeamLogEventTypeArg { @objc - public var asSharedContentUnshare: DBXTeamLogEventTypeArgSharedContentUnshare? { - self as? DBXTeamLogEventTypeArgSharedContentUnshare + public init() { + let swift = TeamLog.EventTypeArg.sharedContentAddLinkPassword + super.init(swift: swift) } +} +/// (sharing) Added users and/or groups to shared file/folder +@objc +public class DBXTeamLogEventTypeArgSharedContentAddMember: DBXTeamLogEventTypeArg { @objc - public var asSharedContentView: DBXTeamLogEventTypeArgSharedContentView? { - self as? DBXTeamLogEventTypeArgSharedContentView + public init() { + let swift = TeamLog.EventTypeArg.sharedContentAddMember + super.init(swift: swift) } +} +/// (sharing) Changed whether members can download shared file/folder (deprecated, no longer logged) +@objc +public class DBXTeamLogEventTypeArgSharedContentChangeDownloadsPolicy: DBXTeamLogEventTypeArg { @objc - public var asSharedFolderChangeLinkPolicy: DBXTeamLogEventTypeArgSharedFolderChangeLinkPolicy? { - self as? DBXTeamLogEventTypeArgSharedFolderChangeLinkPolicy + public init() { + let swift = TeamLog.EventTypeArg.sharedContentChangeDownloadsPolicy + super.init(swift: swift) } +} +/// (sharing) Changed access type of invitee to shared file/folder before invite was accepted +@objc +public class DBXTeamLogEventTypeArgSharedContentChangeInviteeRole: DBXTeamLogEventTypeArg { @objc - public var asSharedFolderChangeMembersInheritancePolicy: DBXTeamLogEventTypeArgSharedFolderChangeMembersInheritancePolicy? { - self as? DBXTeamLogEventTypeArgSharedFolderChangeMembersInheritancePolicy + public init() { + let swift = TeamLog.EventTypeArg.sharedContentChangeInviteeRole + super.init(swift: swift) } +} +/// (sharing) Changed link audience of shared file/folder (deprecated, no longer logged) +@objc +public class DBXTeamLogEventTypeArgSharedContentChangeLinkAudience: DBXTeamLogEventTypeArg { @objc - public var asSharedFolderChangeMembersManagementPolicy: DBXTeamLogEventTypeArgSharedFolderChangeMembersManagementPolicy? { - self as? DBXTeamLogEventTypeArgSharedFolderChangeMembersManagementPolicy + public init() { + let swift = TeamLog.EventTypeArg.sharedContentChangeLinkAudience + super.init(swift: swift) } +} +/// (sharing) Changed link expiration of shared file/folder (deprecated, no longer logged) +@objc +public class DBXTeamLogEventTypeArgSharedContentChangeLinkExpiry: DBXTeamLogEventTypeArg { @objc - public var asSharedFolderChangeMembersPolicy: DBXTeamLogEventTypeArgSharedFolderChangeMembersPolicy? { - self as? DBXTeamLogEventTypeArgSharedFolderChangeMembersPolicy + public init() { + let swift = TeamLog.EventTypeArg.sharedContentChangeLinkExpiry + super.init(swift: swift) } +} +/// (sharing) Changed link password of shared file/folder (deprecated, no longer logged) +@objc +public class DBXTeamLogEventTypeArgSharedContentChangeLinkPassword: DBXTeamLogEventTypeArg { @objc - public var asSharedFolderCreate: DBXTeamLogEventTypeArgSharedFolderCreate? { - self as? DBXTeamLogEventTypeArgSharedFolderCreate + public init() { + let swift = TeamLog.EventTypeArg.sharedContentChangeLinkPassword + super.init(swift: swift) } +} +/// (sharing) Changed access type of shared file/folder member +@objc +public class DBXTeamLogEventTypeArgSharedContentChangeMemberRole: DBXTeamLogEventTypeArg { @objc - public var asSharedFolderDeclineInvitation: DBXTeamLogEventTypeArgSharedFolderDeclineInvitation? { - self as? DBXTeamLogEventTypeArgSharedFolderDeclineInvitation + public init() { + let swift = TeamLog.EventTypeArg.sharedContentChangeMemberRole + super.init(swift: swift) } +} +/// (sharing) Changed whether members can see who viewed shared file/folder +@objc +public class DBXTeamLogEventTypeArgSharedContentChangeViewerInfoPolicy: DBXTeamLogEventTypeArg { @objc - public var asSharedFolderMount: DBXTeamLogEventTypeArgSharedFolderMount? { - self as? DBXTeamLogEventTypeArgSharedFolderMount + public init() { + let swift = TeamLog.EventTypeArg.sharedContentChangeViewerInfoPolicy + super.init(swift: swift) } +} +/// (sharing) Acquired membership of shared file/folder by accepting invite +@objc +public class DBXTeamLogEventTypeArgSharedContentClaimInvitation: DBXTeamLogEventTypeArg { @objc - public var asSharedFolderNest: DBXTeamLogEventTypeArgSharedFolderNest? { - self as? DBXTeamLogEventTypeArgSharedFolderNest + public init() { + let swift = TeamLog.EventTypeArg.sharedContentClaimInvitation + super.init(swift: swift) } +} +/// (sharing) Copied shared file/folder to own Dropbox +@objc +public class DBXTeamLogEventTypeArgSharedContentCopy: DBXTeamLogEventTypeArg { @objc - public var asSharedFolderTransferOwnership: DBXTeamLogEventTypeArgSharedFolderTransferOwnership? { - self as? DBXTeamLogEventTypeArgSharedFolderTransferOwnership + public init() { + let swift = TeamLog.EventTypeArg.sharedContentCopy + super.init(swift: swift) } +} +/// (sharing) Downloaded shared file/folder +@objc +public class DBXTeamLogEventTypeArgSharedContentDownload: DBXTeamLogEventTypeArg { @objc - public var asSharedFolderUnmount: DBXTeamLogEventTypeArgSharedFolderUnmount? { - self as? DBXTeamLogEventTypeArgSharedFolderUnmount + public init() { + let swift = TeamLog.EventTypeArg.sharedContentDownload + super.init(swift: swift) } +} +/// (sharing) Left shared file/folder +@objc +public class DBXTeamLogEventTypeArgSharedContentRelinquishMembership: DBXTeamLogEventTypeArg { @objc - public var asSharedLinkAddExpiry: DBXTeamLogEventTypeArgSharedLinkAddExpiry? { - self as? DBXTeamLogEventTypeArgSharedLinkAddExpiry + public init() { + let swift = TeamLog.EventTypeArg.sharedContentRelinquishMembership + super.init(swift: swift) } +} +/// (sharing) Removed invitee from shared file/folder before invite was accepted +@objc +public class DBXTeamLogEventTypeArgSharedContentRemoveInvitees: DBXTeamLogEventTypeArg { @objc - public var asSharedLinkChangeExpiry: DBXTeamLogEventTypeArgSharedLinkChangeExpiry? { - self as? DBXTeamLogEventTypeArgSharedLinkChangeExpiry + public init() { + let swift = TeamLog.EventTypeArg.sharedContentRemoveInvitees + super.init(swift: swift) } +} +/// (sharing) Removed link expiration date of shared file/folder (deprecated, no longer logged) +@objc +public class DBXTeamLogEventTypeArgSharedContentRemoveLinkExpiry: DBXTeamLogEventTypeArg { @objc - public var asSharedLinkChangeVisibility: DBXTeamLogEventTypeArgSharedLinkChangeVisibility? { - self as? DBXTeamLogEventTypeArgSharedLinkChangeVisibility + public init() { + let swift = TeamLog.EventTypeArg.sharedContentRemoveLinkExpiry + super.init(swift: swift) } +} +/// (sharing) Removed link password of shared file/folder (deprecated, no longer logged) +@objc +public class DBXTeamLogEventTypeArgSharedContentRemoveLinkPassword: DBXTeamLogEventTypeArg { @objc - public var asSharedLinkCopy: DBXTeamLogEventTypeArgSharedLinkCopy? { - self as? DBXTeamLogEventTypeArgSharedLinkCopy + public init() { + let swift = TeamLog.EventTypeArg.sharedContentRemoveLinkPassword + super.init(swift: swift) } +} +/// (sharing) Removed user/group from shared file/folder +@objc +public class DBXTeamLogEventTypeArgSharedContentRemoveMember: DBXTeamLogEventTypeArg { @objc - public var asSharedLinkCreate: DBXTeamLogEventTypeArgSharedLinkCreate? { - self as? DBXTeamLogEventTypeArgSharedLinkCreate + public init() { + let swift = TeamLog.EventTypeArg.sharedContentRemoveMember + super.init(swift: swift) } +} +/// (sharing) Requested access to shared file/folder +@objc +public class DBXTeamLogEventTypeArgSharedContentRequestAccess: DBXTeamLogEventTypeArg { @objc - public var asSharedLinkDisable: DBXTeamLogEventTypeArgSharedLinkDisable? { - self as? DBXTeamLogEventTypeArgSharedLinkDisable + public init() { + let swift = TeamLog.EventTypeArg.sharedContentRequestAccess + super.init(swift: swift) } +} +/// (sharing) Restored shared file/folder invitees +@objc +public class DBXTeamLogEventTypeArgSharedContentRestoreInvitees: DBXTeamLogEventTypeArg { @objc - public var asSharedLinkDownload: DBXTeamLogEventTypeArgSharedLinkDownload? { - self as? DBXTeamLogEventTypeArgSharedLinkDownload + public init() { + let swift = TeamLog.EventTypeArg.sharedContentRestoreInvitees + super.init(swift: swift) } +} +/// (sharing) Restored users and/or groups to membership of shared file/folder +@objc +public class DBXTeamLogEventTypeArgSharedContentRestoreMember: DBXTeamLogEventTypeArg { @objc - public var asSharedLinkRemoveExpiry: DBXTeamLogEventTypeArgSharedLinkRemoveExpiry? { - self as? DBXTeamLogEventTypeArgSharedLinkRemoveExpiry + public init() { + let swift = TeamLog.EventTypeArg.sharedContentRestoreMember + super.init(swift: swift) } +} +/// (sharing) Unshared file/folder by clearing membership +@objc +public class DBXTeamLogEventTypeArgSharedContentUnshare: DBXTeamLogEventTypeArg { @objc - public var asSharedLinkSettingsAddExpiration: DBXTeamLogEventTypeArgSharedLinkSettingsAddExpiration? { - self as? DBXTeamLogEventTypeArgSharedLinkSettingsAddExpiration + public init() { + let swift = TeamLog.EventTypeArg.sharedContentUnshare + super.init(swift: swift) } +} +/// (sharing) Previewed shared file/folder +@objc +public class DBXTeamLogEventTypeArgSharedContentView: DBXTeamLogEventTypeArg { @objc - public var asSharedLinkSettingsAddPassword: DBXTeamLogEventTypeArgSharedLinkSettingsAddPassword? { - self as? DBXTeamLogEventTypeArgSharedLinkSettingsAddPassword + public init() { + let swift = TeamLog.EventTypeArg.sharedContentView + super.init(swift: swift) } +} +/// (sharing) Changed who can access shared folder via link +@objc +public class DBXTeamLogEventTypeArgSharedFolderChangeLinkPolicy: DBXTeamLogEventTypeArg { @objc - public var asSharedLinkSettingsAllowDownloadDisabled: DBXTeamLogEventTypeArgSharedLinkSettingsAllowDownloadDisabled? { - self as? DBXTeamLogEventTypeArgSharedLinkSettingsAllowDownloadDisabled + public init() { + let swift = TeamLog.EventTypeArg.sharedFolderChangeLinkPolicy + super.init(swift: swift) } +} +/// (sharing) Changed whether shared folder inherits members from parent folder +@objc +public class DBXTeamLogEventTypeArgSharedFolderChangeMembersInheritancePolicy: DBXTeamLogEventTypeArg { @objc - public var asSharedLinkSettingsAllowDownloadEnabled: DBXTeamLogEventTypeArgSharedLinkSettingsAllowDownloadEnabled? { - self as? DBXTeamLogEventTypeArgSharedLinkSettingsAllowDownloadEnabled + public init() { + let swift = TeamLog.EventTypeArg.sharedFolderChangeMembersInheritancePolicy + super.init(swift: swift) } +} +/// (sharing) Changed who can add/remove members of shared folder +@objc +public class DBXTeamLogEventTypeArgSharedFolderChangeMembersManagementPolicy: DBXTeamLogEventTypeArg { @objc - public var asSharedLinkSettingsChangeAudience: DBXTeamLogEventTypeArgSharedLinkSettingsChangeAudience? { - self as? DBXTeamLogEventTypeArgSharedLinkSettingsChangeAudience + public init() { + let swift = TeamLog.EventTypeArg.sharedFolderChangeMembersManagementPolicy + super.init(swift: swift) } +} +/// (sharing) Changed who can become member of shared folder +@objc +public class DBXTeamLogEventTypeArgSharedFolderChangeMembersPolicy: DBXTeamLogEventTypeArg { @objc - public var asSharedLinkSettingsChangeExpiration: DBXTeamLogEventTypeArgSharedLinkSettingsChangeExpiration? { - self as? DBXTeamLogEventTypeArgSharedLinkSettingsChangeExpiration + public init() { + let swift = TeamLog.EventTypeArg.sharedFolderChangeMembersPolicy + super.init(swift: swift) } +} +/// (sharing) Created shared folder +@objc +public class DBXTeamLogEventTypeArgSharedFolderCreate: DBXTeamLogEventTypeArg { @objc - public var asSharedLinkSettingsChangePassword: DBXTeamLogEventTypeArgSharedLinkSettingsChangePassword? { - self as? DBXTeamLogEventTypeArgSharedLinkSettingsChangePassword + public init() { + let swift = TeamLog.EventTypeArg.sharedFolderCreate + super.init(swift: swift) } +} +/// (sharing) Declined team member's invite to shared folder +@objc +public class DBXTeamLogEventTypeArgSharedFolderDeclineInvitation: DBXTeamLogEventTypeArg { @objc - public var asSharedLinkSettingsRemoveExpiration: DBXTeamLogEventTypeArgSharedLinkSettingsRemoveExpiration? { - self as? DBXTeamLogEventTypeArgSharedLinkSettingsRemoveExpiration + public init() { + let swift = TeamLog.EventTypeArg.sharedFolderDeclineInvitation + super.init(swift: swift) } +} +/// (sharing) Added shared folder to own Dropbox +@objc +public class DBXTeamLogEventTypeArgSharedFolderMount: DBXTeamLogEventTypeArg { @objc - public var asSharedLinkSettingsRemovePassword: DBXTeamLogEventTypeArgSharedLinkSettingsRemovePassword? { - self as? DBXTeamLogEventTypeArgSharedLinkSettingsRemovePassword + public init() { + let swift = TeamLog.EventTypeArg.sharedFolderMount + super.init(swift: swift) } +} +/// (sharing) Changed parent of shared folder +@objc +public class DBXTeamLogEventTypeArgSharedFolderNest: DBXTeamLogEventTypeArg { @objc - public var asSharedLinkShare: DBXTeamLogEventTypeArgSharedLinkShare? { - self as? DBXTeamLogEventTypeArgSharedLinkShare + public init() { + let swift = TeamLog.EventTypeArg.sharedFolderNest + super.init(swift: swift) } +} +/// (sharing) Transferred ownership of shared folder to another member +@objc +public class DBXTeamLogEventTypeArgSharedFolderTransferOwnership: DBXTeamLogEventTypeArg { @objc - public var asSharedLinkView: DBXTeamLogEventTypeArgSharedLinkView? { - self as? DBXTeamLogEventTypeArgSharedLinkView + public init() { + let swift = TeamLog.EventTypeArg.sharedFolderTransferOwnership + super.init(swift: swift) } +} +/// (sharing) Deleted shared folder from Dropbox +@objc +public class DBXTeamLogEventTypeArgSharedFolderUnmount: DBXTeamLogEventTypeArg { @objc - public var asSharedNoteOpened: DBXTeamLogEventTypeArgSharedNoteOpened? { - self as? DBXTeamLogEventTypeArgSharedNoteOpened + public init() { + let swift = TeamLog.EventTypeArg.sharedFolderUnmount + super.init(swift: swift) } +} +/// (sharing) Added shared link expiration date +@objc +public class DBXTeamLogEventTypeArgSharedLinkAddExpiry: DBXTeamLogEventTypeArg { @objc - public var asShmodelDisableDownloads: DBXTeamLogEventTypeArgShmodelDisableDownloads? { - self as? DBXTeamLogEventTypeArgShmodelDisableDownloads + public init() { + let swift = TeamLog.EventTypeArg.sharedLinkAddExpiry + super.init(swift: swift) } +} +/// (sharing) Changed shared link expiration date +@objc +public class DBXTeamLogEventTypeArgSharedLinkChangeExpiry: DBXTeamLogEventTypeArg { @objc - public var asShmodelEnableDownloads: DBXTeamLogEventTypeArgShmodelEnableDownloads? { - self as? DBXTeamLogEventTypeArgShmodelEnableDownloads + public init() { + let swift = TeamLog.EventTypeArg.sharedLinkChangeExpiry + super.init(swift: swift) } +} +/// (sharing) Changed visibility of shared link +@objc +public class DBXTeamLogEventTypeArgSharedLinkChangeVisibility: DBXTeamLogEventTypeArg { @objc - public var asShmodelGroupShare: DBXTeamLogEventTypeArgShmodelGroupShare? { - self as? DBXTeamLogEventTypeArgShmodelGroupShare + public init() { + let swift = TeamLog.EventTypeArg.sharedLinkChangeVisibility + super.init(swift: swift) } +} +/// (sharing) Added file/folder to Dropbox from shared link +@objc +public class DBXTeamLogEventTypeArgSharedLinkCopy: DBXTeamLogEventTypeArg { @objc - public var asShowcaseAccessGranted: DBXTeamLogEventTypeArgShowcaseAccessGranted? { - self as? DBXTeamLogEventTypeArgShowcaseAccessGranted + public init() { + let swift = TeamLog.EventTypeArg.sharedLinkCopy + super.init(swift: swift) } +} +/// (sharing) Created shared link +@objc +public class DBXTeamLogEventTypeArgSharedLinkCreate: DBXTeamLogEventTypeArg { @objc - public var asShowcaseAddMember: DBXTeamLogEventTypeArgShowcaseAddMember? { - self as? DBXTeamLogEventTypeArgShowcaseAddMember + public init() { + let swift = TeamLog.EventTypeArg.sharedLinkCreate + super.init(swift: swift) } +} +/// (sharing) Removed shared link +@objc +public class DBXTeamLogEventTypeArgSharedLinkDisable: DBXTeamLogEventTypeArg { @objc - public var asShowcaseArchived: DBXTeamLogEventTypeArgShowcaseArchived? { - self as? DBXTeamLogEventTypeArgShowcaseArchived + public init() { + let swift = TeamLog.EventTypeArg.sharedLinkDisable + super.init(swift: swift) } +} +/// (sharing) Downloaded file/folder from shared link +@objc +public class DBXTeamLogEventTypeArgSharedLinkDownload: DBXTeamLogEventTypeArg { @objc - public var asShowcaseCreated: DBXTeamLogEventTypeArgShowcaseCreated? { - self as? DBXTeamLogEventTypeArgShowcaseCreated + public init() { + let swift = TeamLog.EventTypeArg.sharedLinkDownload + super.init(swift: swift) } +} +/// (sharing) Removed shared link expiration date +@objc +public class DBXTeamLogEventTypeArgSharedLinkRemoveExpiry: DBXTeamLogEventTypeArg { @objc - public var asShowcaseDeleteComment: DBXTeamLogEventTypeArgShowcaseDeleteComment? { - self as? DBXTeamLogEventTypeArgShowcaseDeleteComment + public init() { + let swift = TeamLog.EventTypeArg.sharedLinkRemoveExpiry + super.init(swift: swift) } +} +/// (sharing) Removed link visitor +@objc +public class DBXTeamLogEventTypeArgSharedLinkRemoveVisitor: DBXTeamLogEventTypeArg { @objc - public var asShowcaseEdited: DBXTeamLogEventTypeArgShowcaseEdited? { - self as? DBXTeamLogEventTypeArgShowcaseEdited + public init() { + let swift = TeamLog.EventTypeArg.sharedLinkRemoveVisitor + super.init(swift: swift) } +} +/// (sharing) Added an expiration date to the shared link +@objc +public class DBXTeamLogEventTypeArgSharedLinkSettingsAddExpiration: DBXTeamLogEventTypeArg { @objc - public var asShowcaseEditComment: DBXTeamLogEventTypeArgShowcaseEditComment? { - self as? DBXTeamLogEventTypeArgShowcaseEditComment + public init() { + let swift = TeamLog.EventTypeArg.sharedLinkSettingsAddExpiration + super.init(swift: swift) } +} +/// (sharing) Added a password to the shared link +@objc +public class DBXTeamLogEventTypeArgSharedLinkSettingsAddPassword: DBXTeamLogEventTypeArg { @objc - public var asShowcaseFileAdded: DBXTeamLogEventTypeArgShowcaseFileAdded? { - self as? DBXTeamLogEventTypeArgShowcaseFileAdded + public init() { + let swift = TeamLog.EventTypeArg.sharedLinkSettingsAddPassword + super.init(swift: swift) } +} +/// (sharing) Disabled downloads +@objc +public class DBXTeamLogEventTypeArgSharedLinkSettingsAllowDownloadDisabled: DBXTeamLogEventTypeArg { @objc - public var asShowcaseFileDownload: DBXTeamLogEventTypeArgShowcaseFileDownload? { - self as? DBXTeamLogEventTypeArgShowcaseFileDownload + public init() { + let swift = TeamLog.EventTypeArg.sharedLinkSettingsAllowDownloadDisabled + super.init(swift: swift) } +} +/// (sharing) Enabled downloads +@objc +public class DBXTeamLogEventTypeArgSharedLinkSettingsAllowDownloadEnabled: DBXTeamLogEventTypeArg { @objc - public var asShowcaseFileRemoved: DBXTeamLogEventTypeArgShowcaseFileRemoved? { - self as? DBXTeamLogEventTypeArgShowcaseFileRemoved + public init() { + let swift = TeamLog.EventTypeArg.sharedLinkSettingsAllowDownloadEnabled + super.init(swift: swift) } +} +/// (sharing) Changed the audience of the shared link +@objc +public class DBXTeamLogEventTypeArgSharedLinkSettingsChangeAudience: DBXTeamLogEventTypeArg { @objc - public var asShowcaseFileView: DBXTeamLogEventTypeArgShowcaseFileView? { - self as? DBXTeamLogEventTypeArgShowcaseFileView + public init() { + let swift = TeamLog.EventTypeArg.sharedLinkSettingsChangeAudience + super.init(swift: swift) } +} +/// (sharing) Changed the expiration date of the shared link +@objc +public class DBXTeamLogEventTypeArgSharedLinkSettingsChangeExpiration: DBXTeamLogEventTypeArg { @objc - public var asShowcasePermanentlyDeleted: DBXTeamLogEventTypeArgShowcasePermanentlyDeleted? { - self as? DBXTeamLogEventTypeArgShowcasePermanentlyDeleted + public init() { + let swift = TeamLog.EventTypeArg.sharedLinkSettingsChangeExpiration + super.init(swift: swift) } +} +/// (sharing) Changed the password of the shared link +@objc +public class DBXTeamLogEventTypeArgSharedLinkSettingsChangePassword: DBXTeamLogEventTypeArg { @objc - public var asShowcasePostComment: DBXTeamLogEventTypeArgShowcasePostComment? { - self as? DBXTeamLogEventTypeArgShowcasePostComment + public init() { + let swift = TeamLog.EventTypeArg.sharedLinkSettingsChangePassword + super.init(swift: swift) } +} +/// (sharing) Removed the expiration date from the shared link +@objc +public class DBXTeamLogEventTypeArgSharedLinkSettingsRemoveExpiration: DBXTeamLogEventTypeArg { @objc - public var asShowcaseRemoveMember: DBXTeamLogEventTypeArgShowcaseRemoveMember? { - self as? DBXTeamLogEventTypeArgShowcaseRemoveMember + public init() { + let swift = TeamLog.EventTypeArg.sharedLinkSettingsRemoveExpiration + super.init(swift: swift) } +} +/// (sharing) Removed the password from the shared link +@objc +public class DBXTeamLogEventTypeArgSharedLinkSettingsRemovePassword: DBXTeamLogEventTypeArg { @objc - public var asShowcaseRenamed: DBXTeamLogEventTypeArgShowcaseRenamed? { - self as? DBXTeamLogEventTypeArgShowcaseRenamed + public init() { + let swift = TeamLog.EventTypeArg.sharedLinkSettingsRemovePassword + super.init(swift: swift) } +} +/// (sharing) Added members as audience of shared link +@objc +public class DBXTeamLogEventTypeArgSharedLinkShare: DBXTeamLogEventTypeArg { @objc - public var asShowcaseRequestAccess: DBXTeamLogEventTypeArgShowcaseRequestAccess? { - self as? DBXTeamLogEventTypeArgShowcaseRequestAccess + public init() { + let swift = TeamLog.EventTypeArg.sharedLinkShare + super.init(swift: swift) } +} +/// (sharing) Opened shared link +@objc +public class DBXTeamLogEventTypeArgSharedLinkView: DBXTeamLogEventTypeArg { @objc - public var asShowcaseResolveComment: DBXTeamLogEventTypeArgShowcaseResolveComment? { - self as? DBXTeamLogEventTypeArgShowcaseResolveComment + public init() { + let swift = TeamLog.EventTypeArg.sharedLinkView + super.init(swift: swift) } +} +/// (sharing) Opened shared Paper doc (deprecated, no longer logged) +@objc +public class DBXTeamLogEventTypeArgSharedNoteOpened: DBXTeamLogEventTypeArg { @objc - public var asShowcaseRestored: DBXTeamLogEventTypeArgShowcaseRestored? { - self as? DBXTeamLogEventTypeArgShowcaseRestored + public init() { + let swift = TeamLog.EventTypeArg.sharedNoteOpened + super.init(swift: swift) } +} +/// (sharing) Disabled downloads for link (deprecated, no longer logged) +@objc +public class DBXTeamLogEventTypeArgShmodelDisableDownloads: DBXTeamLogEventTypeArg { @objc - public var asShowcaseTrashed: DBXTeamLogEventTypeArgShowcaseTrashed? { - self as? DBXTeamLogEventTypeArgShowcaseTrashed + public init() { + let swift = TeamLog.EventTypeArg.shmodelDisableDownloads + super.init(swift: swift) } +} +/// (sharing) Enabled downloads for link (deprecated, no longer logged) +@objc +public class DBXTeamLogEventTypeArgShmodelEnableDownloads: DBXTeamLogEventTypeArg { @objc - public var asShowcaseTrashedDeprecated: DBXTeamLogEventTypeArgShowcaseTrashedDeprecated? { - self as? DBXTeamLogEventTypeArgShowcaseTrashedDeprecated + public init() { + let swift = TeamLog.EventTypeArg.shmodelEnableDownloads + super.init(swift: swift) } +} +/// (sharing) Shared link with group (deprecated, no longer logged) +@objc +public class DBXTeamLogEventTypeArgShmodelGroupShare: DBXTeamLogEventTypeArg { @objc - public var asShowcaseUnresolveComment: DBXTeamLogEventTypeArgShowcaseUnresolveComment? { - self as? DBXTeamLogEventTypeArgShowcaseUnresolveComment + public init() { + let swift = TeamLog.EventTypeArg.shmodelGroupShare + super.init(swift: swift) } +} +/// (showcase) Granted access to showcase +@objc +public class DBXTeamLogEventTypeArgShowcaseAccessGranted: DBXTeamLogEventTypeArg { @objc - public var asShowcaseUntrashed: DBXTeamLogEventTypeArgShowcaseUntrashed? { - self as? DBXTeamLogEventTypeArgShowcaseUntrashed + public init() { + let swift = TeamLog.EventTypeArg.showcaseAccessGranted + super.init(swift: swift) } +} +/// (showcase) Added member to showcase +@objc +public class DBXTeamLogEventTypeArgShowcaseAddMember: DBXTeamLogEventTypeArg { @objc - public var asShowcaseUntrashedDeprecated: DBXTeamLogEventTypeArgShowcaseUntrashedDeprecated? { - self as? DBXTeamLogEventTypeArgShowcaseUntrashedDeprecated + public init() { + let swift = TeamLog.EventTypeArg.showcaseAddMember + super.init(swift: swift) } +} +/// (showcase) Archived showcase +@objc +public class DBXTeamLogEventTypeArgShowcaseArchived: DBXTeamLogEventTypeArg { @objc - public var asShowcaseView: DBXTeamLogEventTypeArgShowcaseView? { - self as? DBXTeamLogEventTypeArgShowcaseView + public init() { + let swift = TeamLog.EventTypeArg.showcaseArchived + super.init(swift: swift) } +} +/// (showcase) Created showcase +@objc +public class DBXTeamLogEventTypeArgShowcaseCreated: DBXTeamLogEventTypeArg { @objc - public var asSsoAddCert: DBXTeamLogEventTypeArgSsoAddCert? { - self as? DBXTeamLogEventTypeArgSsoAddCert + public init() { + let swift = TeamLog.EventTypeArg.showcaseCreated + super.init(swift: swift) } +} +/// (showcase) Deleted showcase comment +@objc +public class DBXTeamLogEventTypeArgShowcaseDeleteComment: DBXTeamLogEventTypeArg { @objc - public var asSsoAddLoginUrl: DBXTeamLogEventTypeArgSsoAddLoginUrl? { - self as? DBXTeamLogEventTypeArgSsoAddLoginUrl + public init() { + let swift = TeamLog.EventTypeArg.showcaseDeleteComment + super.init(swift: swift) } +} +/// (showcase) Edited showcase +@objc +public class DBXTeamLogEventTypeArgShowcaseEdited: DBXTeamLogEventTypeArg { @objc - public var asSsoAddLogoutUrl: DBXTeamLogEventTypeArgSsoAddLogoutUrl? { - self as? DBXTeamLogEventTypeArgSsoAddLogoutUrl + public init() { + let swift = TeamLog.EventTypeArg.showcaseEdited + super.init(swift: swift) } +} +/// (showcase) Edited showcase comment +@objc +public class DBXTeamLogEventTypeArgShowcaseEditComment: DBXTeamLogEventTypeArg { @objc - public var asSsoChangeCert: DBXTeamLogEventTypeArgSsoChangeCert? { - self as? DBXTeamLogEventTypeArgSsoChangeCert + public init() { + let swift = TeamLog.EventTypeArg.showcaseEditComment + super.init(swift: swift) } +} +/// (showcase) Added file to showcase +@objc +public class DBXTeamLogEventTypeArgShowcaseFileAdded: DBXTeamLogEventTypeArg { @objc - public var asSsoChangeLoginUrl: DBXTeamLogEventTypeArgSsoChangeLoginUrl? { - self as? DBXTeamLogEventTypeArgSsoChangeLoginUrl + public init() { + let swift = TeamLog.EventTypeArg.showcaseFileAdded + super.init(swift: swift) } +} +/// (showcase) Downloaded file from showcase +@objc +public class DBXTeamLogEventTypeArgShowcaseFileDownload: DBXTeamLogEventTypeArg { @objc - public var asSsoChangeLogoutUrl: DBXTeamLogEventTypeArgSsoChangeLogoutUrl? { - self as? DBXTeamLogEventTypeArgSsoChangeLogoutUrl + public init() { + let swift = TeamLog.EventTypeArg.showcaseFileDownload + super.init(swift: swift) } +} +/// (showcase) Removed file from showcase +@objc +public class DBXTeamLogEventTypeArgShowcaseFileRemoved: DBXTeamLogEventTypeArg { @objc - public var asSsoChangeSamlIdentityMode: DBXTeamLogEventTypeArgSsoChangeSamlIdentityMode? { - self as? DBXTeamLogEventTypeArgSsoChangeSamlIdentityMode + public init() { + let swift = TeamLog.EventTypeArg.showcaseFileRemoved + super.init(swift: swift) } +} +/// (showcase) Viewed file in showcase +@objc +public class DBXTeamLogEventTypeArgShowcaseFileView: DBXTeamLogEventTypeArg { @objc - public var asSsoRemoveCert: DBXTeamLogEventTypeArgSsoRemoveCert? { - self as? DBXTeamLogEventTypeArgSsoRemoveCert + public init() { + let swift = TeamLog.EventTypeArg.showcaseFileView + super.init(swift: swift) } +} +/// (showcase) Permanently deleted showcase +@objc +public class DBXTeamLogEventTypeArgShowcasePermanentlyDeleted: DBXTeamLogEventTypeArg { @objc - public var asSsoRemoveLoginUrl: DBXTeamLogEventTypeArgSsoRemoveLoginUrl? { - self as? DBXTeamLogEventTypeArgSsoRemoveLoginUrl + public init() { + let swift = TeamLog.EventTypeArg.showcasePermanentlyDeleted + super.init(swift: swift) } +} +/// (showcase) Added showcase comment +@objc +public class DBXTeamLogEventTypeArgShowcasePostComment: DBXTeamLogEventTypeArg { @objc - public var asSsoRemoveLogoutUrl: DBXTeamLogEventTypeArgSsoRemoveLogoutUrl? { - self as? DBXTeamLogEventTypeArgSsoRemoveLogoutUrl + public init() { + let swift = TeamLog.EventTypeArg.showcasePostComment + super.init(swift: swift) } +} +/// (showcase) Removed member from showcase +@objc +public class DBXTeamLogEventTypeArgShowcaseRemoveMember: DBXTeamLogEventTypeArg { @objc - public var asTeamFolderChangeStatus: DBXTeamLogEventTypeArgTeamFolderChangeStatus? { - self as? DBXTeamLogEventTypeArgTeamFolderChangeStatus + public init() { + let swift = TeamLog.EventTypeArg.showcaseRemoveMember + super.init(swift: swift) } +} +/// (showcase) Renamed showcase +@objc +public class DBXTeamLogEventTypeArgShowcaseRenamed: DBXTeamLogEventTypeArg { @objc - public var asTeamFolderCreate: DBXTeamLogEventTypeArgTeamFolderCreate? { - self as? DBXTeamLogEventTypeArgTeamFolderCreate + public init() { + let swift = TeamLog.EventTypeArg.showcaseRenamed + super.init(swift: swift) } +} +/// (showcase) Requested access to showcase +@objc +public class DBXTeamLogEventTypeArgShowcaseRequestAccess: DBXTeamLogEventTypeArg { @objc - public var asTeamFolderDowngrade: DBXTeamLogEventTypeArgTeamFolderDowngrade? { - self as? DBXTeamLogEventTypeArgTeamFolderDowngrade + public init() { + let swift = TeamLog.EventTypeArg.showcaseRequestAccess + super.init(swift: swift) } +} +/// (showcase) Resolved showcase comment +@objc +public class DBXTeamLogEventTypeArgShowcaseResolveComment: DBXTeamLogEventTypeArg { @objc - public var asTeamFolderPermanentlyDelete: DBXTeamLogEventTypeArgTeamFolderPermanentlyDelete? { - self as? DBXTeamLogEventTypeArgTeamFolderPermanentlyDelete + public init() { + let swift = TeamLog.EventTypeArg.showcaseResolveComment + super.init(swift: swift) } +} +/// (showcase) Unarchived showcase +@objc +public class DBXTeamLogEventTypeArgShowcaseRestored: DBXTeamLogEventTypeArg { @objc - public var asTeamFolderRename: DBXTeamLogEventTypeArgTeamFolderRename? { - self as? DBXTeamLogEventTypeArgTeamFolderRename + public init() { + let swift = TeamLog.EventTypeArg.showcaseRestored + super.init(swift: swift) } +} +/// (showcase) Deleted showcase +@objc +public class DBXTeamLogEventTypeArgShowcaseTrashed: DBXTeamLogEventTypeArg { @objc - public var asTeamSelectiveSyncSettingsChanged: DBXTeamLogEventTypeArgTeamSelectiveSyncSettingsChanged? { - self as? DBXTeamLogEventTypeArgTeamSelectiveSyncSettingsChanged + public init() { + let swift = TeamLog.EventTypeArg.showcaseTrashed + super.init(swift: swift) } +} +/// (showcase) Deleted showcase (old version) (deprecated, replaced by 'Deleted showcase') +@objc +public class DBXTeamLogEventTypeArgShowcaseTrashedDeprecated: DBXTeamLogEventTypeArg { @objc - public var asAccountCaptureChangePolicy: DBXTeamLogEventTypeArgAccountCaptureChangePolicy? { - self as? DBXTeamLogEventTypeArgAccountCaptureChangePolicy + public init() { + let swift = TeamLog.EventTypeArg.showcaseTrashedDeprecated + super.init(swift: swift) } +} +/// (showcase) Unresolved showcase comment +@objc +public class DBXTeamLogEventTypeArgShowcaseUnresolveComment: DBXTeamLogEventTypeArg { @objc - public var asAdminEmailRemindersChanged: DBXTeamLogEventTypeArgAdminEmailRemindersChanged? { - self as? DBXTeamLogEventTypeArgAdminEmailRemindersChanged + public init() { + let swift = TeamLog.EventTypeArg.showcaseUnresolveComment + super.init(swift: swift) } +} +/// (showcase) Restored showcase +@objc +public class DBXTeamLogEventTypeArgShowcaseUntrashed: DBXTeamLogEventTypeArg { @objc - public var asAllowDownloadDisabled: DBXTeamLogEventTypeArgAllowDownloadDisabled? { - self as? DBXTeamLogEventTypeArgAllowDownloadDisabled + public init() { + let swift = TeamLog.EventTypeArg.showcaseUntrashed + super.init(swift: swift) } +} +/// (showcase) Restored showcase (old version) (deprecated, replaced by 'Restored showcase') +@objc +public class DBXTeamLogEventTypeArgShowcaseUntrashedDeprecated: DBXTeamLogEventTypeArg { @objc - public var asAllowDownloadEnabled: DBXTeamLogEventTypeArgAllowDownloadEnabled? { - self as? DBXTeamLogEventTypeArgAllowDownloadEnabled + public init() { + let swift = TeamLog.EventTypeArg.showcaseUntrashedDeprecated + super.init(swift: swift) } +} +/// (showcase) Viewed showcase +@objc +public class DBXTeamLogEventTypeArgShowcaseView: DBXTeamLogEventTypeArg { @objc - public var asAppPermissionsChanged: DBXTeamLogEventTypeArgAppPermissionsChanged? { - self as? DBXTeamLogEventTypeArgAppPermissionsChanged + public init() { + let swift = TeamLog.EventTypeArg.showcaseView + super.init(swift: swift) } +} +/// (signatures) Canceled signature request +@objc +public class DBXTeamLogEventTypeArgSignSignatureRequestCanceled: DBXTeamLogEventTypeArg { @objc - public var asCameraUploadsPolicyChanged: DBXTeamLogEventTypeArgCameraUploadsPolicyChanged? { - self as? DBXTeamLogEventTypeArgCameraUploadsPolicyChanged + public init() { + let swift = TeamLog.EventTypeArg.signSignatureRequestCanceled + super.init(swift: swift) } +} +/// (signatures) Completed signature request +@objc +public class DBXTeamLogEventTypeArgSignSignatureRequestCompleted: DBXTeamLogEventTypeArg { @objc - public var asCaptureTranscriptPolicyChanged: DBXTeamLogEventTypeArgCaptureTranscriptPolicyChanged? { - self as? DBXTeamLogEventTypeArgCaptureTranscriptPolicyChanged + public init() { + let swift = TeamLog.EventTypeArg.signSignatureRequestCompleted + super.init(swift: swift) } +} +/// (signatures) Declined signature request +@objc +public class DBXTeamLogEventTypeArgSignSignatureRequestDeclined: DBXTeamLogEventTypeArg { @objc - public var asClassificationChangePolicy: DBXTeamLogEventTypeArgClassificationChangePolicy? { - self as? DBXTeamLogEventTypeArgClassificationChangePolicy + public init() { + let swift = TeamLog.EventTypeArg.signSignatureRequestDeclined + super.init(swift: swift) } +} +/// (signatures) Opened signature request +@objc +public class DBXTeamLogEventTypeArgSignSignatureRequestOpened: DBXTeamLogEventTypeArg { @objc - public var asComputerBackupPolicyChanged: DBXTeamLogEventTypeArgComputerBackupPolicyChanged? { - self as? DBXTeamLogEventTypeArgComputerBackupPolicyChanged + public init() { + let swift = TeamLog.EventTypeArg.signSignatureRequestOpened + super.init(swift: swift) } +} +/// (signatures) Sent signature request reminder +@objc +public class DBXTeamLogEventTypeArgSignSignatureRequestReminderSent: DBXTeamLogEventTypeArg { @objc - public var asContentAdministrationPolicyChanged: DBXTeamLogEventTypeArgContentAdministrationPolicyChanged? { - self as? DBXTeamLogEventTypeArgContentAdministrationPolicyChanged + public init() { + let swift = TeamLog.EventTypeArg.signSignatureRequestReminderSent + super.init(swift: swift) } +} +/// (signatures) Sent signature request +@objc +public class DBXTeamLogEventTypeArgSignSignatureRequestSent: DBXTeamLogEventTypeArg { @objc - public var asDataPlacementRestrictionChangePolicy: DBXTeamLogEventTypeArgDataPlacementRestrictionChangePolicy? { - self as? DBXTeamLogEventTypeArgDataPlacementRestrictionChangePolicy + public init() { + let swift = TeamLog.EventTypeArg.signSignatureRequestSent + super.init(swift: swift) } +} +/// (signatures) Created template +@objc +public class DBXTeamLogEventTypeArgSignTemplateCreated: DBXTeamLogEventTypeArg { @objc - public var asDataPlacementRestrictionSatisfyPolicy: DBXTeamLogEventTypeArgDataPlacementRestrictionSatisfyPolicy? { - self as? DBXTeamLogEventTypeArgDataPlacementRestrictionSatisfyPolicy + public init() { + let swift = TeamLog.EventTypeArg.signTemplateCreated + super.init(swift: swift) } +} +/// (signatures) Shared template +@objc +public class DBXTeamLogEventTypeArgSignTemplateShared: DBXTeamLogEventTypeArg { @objc - public var asDeviceApprovalsAddException: DBXTeamLogEventTypeArgDeviceApprovalsAddException? { - self as? DBXTeamLogEventTypeArgDeviceApprovalsAddException + public init() { + let swift = TeamLog.EventTypeArg.signTemplateShared + super.init(swift: swift) } +} +/// (sso) RISC security event received from external provider +@objc +public class DBXTeamLogEventTypeArgRiscSecurityEvent: DBXTeamLogEventTypeArg { @objc - public var asDeviceApprovalsChangeDesktopPolicy: DBXTeamLogEventTypeArgDeviceApprovalsChangeDesktopPolicy? { - self as? DBXTeamLogEventTypeArgDeviceApprovalsChangeDesktopPolicy + public init() { + let swift = TeamLog.EventTypeArg.riscSecurityEvent + super.init(swift: swift) } +} +/// (sso) Added X.509 certificate for SSO +@objc +public class DBXTeamLogEventTypeArgSsoAddCert: DBXTeamLogEventTypeArg { @objc - public var asDeviceApprovalsChangeMobilePolicy: DBXTeamLogEventTypeArgDeviceApprovalsChangeMobilePolicy? { - self as? DBXTeamLogEventTypeArgDeviceApprovalsChangeMobilePolicy + public init() { + let swift = TeamLog.EventTypeArg.ssoAddCert + super.init(swift: swift) } +} +/// (sso) Added sign-in URL for SSO +@objc +public class DBXTeamLogEventTypeArgSsoAddLoginUrl: DBXTeamLogEventTypeArg { @objc - public var asDeviceApprovalsChangeOverageAction: DBXTeamLogEventTypeArgDeviceApprovalsChangeOverageAction? { - self as? DBXTeamLogEventTypeArgDeviceApprovalsChangeOverageAction + public init() { + let swift = TeamLog.EventTypeArg.ssoAddLoginUrl + super.init(swift: swift) } +} +/// (sso) Added sign-out URL for SSO +@objc +public class DBXTeamLogEventTypeArgSsoAddLogoutUrl: DBXTeamLogEventTypeArg { @objc - public var asDeviceApprovalsChangeUnlinkAction: DBXTeamLogEventTypeArgDeviceApprovalsChangeUnlinkAction? { - self as? DBXTeamLogEventTypeArgDeviceApprovalsChangeUnlinkAction + public init() { + let swift = TeamLog.EventTypeArg.ssoAddLogoutUrl + super.init(swift: swift) } +} +/// (sso) Changed X.509 certificate for SSO +@objc +public class DBXTeamLogEventTypeArgSsoChangeCert: DBXTeamLogEventTypeArg { @objc - public var asDeviceApprovalsRemoveException: DBXTeamLogEventTypeArgDeviceApprovalsRemoveException? { - self as? DBXTeamLogEventTypeArgDeviceApprovalsRemoveException + public init() { + let swift = TeamLog.EventTypeArg.ssoChangeCert + super.init(swift: swift) } +} +/// (sso) Changed sign-in URL for SSO +@objc +public class DBXTeamLogEventTypeArgSsoChangeLoginUrl: DBXTeamLogEventTypeArg { @objc - public var asDirectoryRestrictionsAddMembers: DBXTeamLogEventTypeArgDirectoryRestrictionsAddMembers? { - self as? DBXTeamLogEventTypeArgDirectoryRestrictionsAddMembers + public init() { + let swift = TeamLog.EventTypeArg.ssoChangeLoginUrl + super.init(swift: swift) } +} +/// (sso) Changed sign-out URL for SSO +@objc +public class DBXTeamLogEventTypeArgSsoChangeLogoutUrl: DBXTeamLogEventTypeArg { @objc - public var asDirectoryRestrictionsRemoveMembers: DBXTeamLogEventTypeArgDirectoryRestrictionsRemoveMembers? { - self as? DBXTeamLogEventTypeArgDirectoryRestrictionsRemoveMembers + public init() { + let swift = TeamLog.EventTypeArg.ssoChangeLogoutUrl + super.init(swift: swift) } +} +/// (sso) Changed SAML identity mode for SSO +@objc +public class DBXTeamLogEventTypeArgSsoChangeSamlIdentityMode: DBXTeamLogEventTypeArg { @objc - public var asDropboxPasswordsPolicyChanged: DBXTeamLogEventTypeArgDropboxPasswordsPolicyChanged? { - self as? DBXTeamLogEventTypeArgDropboxPasswordsPolicyChanged + public init() { + let swift = TeamLog.EventTypeArg.ssoChangeSamlIdentityMode + super.init(swift: swift) } +} +/// (sso) Removed X.509 certificate for SSO +@objc +public class DBXTeamLogEventTypeArgSsoRemoveCert: DBXTeamLogEventTypeArg { @objc - public var asEmailIngestPolicyChanged: DBXTeamLogEventTypeArgEmailIngestPolicyChanged? { - self as? DBXTeamLogEventTypeArgEmailIngestPolicyChanged + public init() { + let swift = TeamLog.EventTypeArg.ssoRemoveCert + super.init(swift: swift) } +} +/// (sso) Removed sign-in URL for SSO +@objc +public class DBXTeamLogEventTypeArgSsoRemoveLoginUrl: DBXTeamLogEventTypeArg { @objc - public var asEmmAddException: DBXTeamLogEventTypeArgEmmAddException? { - self as? DBXTeamLogEventTypeArgEmmAddException + public init() { + let swift = TeamLog.EventTypeArg.ssoRemoveLoginUrl + super.init(swift: swift) } +} +/// (sso) Removed sign-out URL for SSO +@objc +public class DBXTeamLogEventTypeArgSsoRemoveLogoutUrl: DBXTeamLogEventTypeArg { @objc - public var asEmmChangePolicy: DBXTeamLogEventTypeArgEmmChangePolicy? { - self as? DBXTeamLogEventTypeArgEmmChangePolicy + public init() { + let swift = TeamLog.EventTypeArg.ssoRemoveLogoutUrl + super.init(swift: swift) } +} +/// (team_folders) Changed archival status of team folder +@objc +public class DBXTeamLogEventTypeArgTeamFolderChangeStatus: DBXTeamLogEventTypeArg { @objc - public var asEmmRemoveException: DBXTeamLogEventTypeArgEmmRemoveException? { - self as? DBXTeamLogEventTypeArgEmmRemoveException + public init() { + let swift = TeamLog.EventTypeArg.teamFolderChangeStatus + super.init(swift: swift) } +} +/// (team_folders) Created team folder in active status +@objc +public class DBXTeamLogEventTypeArgTeamFolderCreate: DBXTeamLogEventTypeArg { @objc - public var asExtendedVersionHistoryChangePolicy: DBXTeamLogEventTypeArgExtendedVersionHistoryChangePolicy? { - self as? DBXTeamLogEventTypeArgExtendedVersionHistoryChangePolicy + public init() { + let swift = TeamLog.EventTypeArg.teamFolderCreate + super.init(swift: swift) } +} +/// (team_folders) Downgraded team folder to regular shared folder +@objc +public class DBXTeamLogEventTypeArgTeamFolderDowngrade: DBXTeamLogEventTypeArg { @objc - public var asExternalDriveBackupPolicyChanged: DBXTeamLogEventTypeArgExternalDriveBackupPolicyChanged? { - self as? DBXTeamLogEventTypeArgExternalDriveBackupPolicyChanged + public init() { + let swift = TeamLog.EventTypeArg.teamFolderDowngrade + super.init(swift: swift) } +} +/// (team_folders) Permanently deleted archived team folder +@objc +public class DBXTeamLogEventTypeArgTeamFolderPermanentlyDelete: DBXTeamLogEventTypeArg { @objc - public var asFileCommentsChangePolicy: DBXTeamLogEventTypeArgFileCommentsChangePolicy? { - self as? DBXTeamLogEventTypeArgFileCommentsChangePolicy + public init() { + let swift = TeamLog.EventTypeArg.teamFolderPermanentlyDelete + super.init(swift: swift) } +} +/// (team_folders) Renamed active/archived team folder +@objc +public class DBXTeamLogEventTypeArgTeamFolderRename: DBXTeamLogEventTypeArg { @objc - public var asFileLockingPolicyChanged: DBXTeamLogEventTypeArgFileLockingPolicyChanged? { - self as? DBXTeamLogEventTypeArgFileLockingPolicyChanged + public init() { + let swift = TeamLog.EventTypeArg.teamFolderRename + super.init(swift: swift) } +} +/// (team_folders) Changed team folder space limit enforcement type +@objc +public class DBXTeamLogEventTypeArgTeamFolderSpaceLimitsChangeCapsType: DBXTeamLogEventTypeArg { @objc - public var asFileProviderMigrationPolicyChanged: DBXTeamLogEventTypeArgFileProviderMigrationPolicyChanged? { - self as? DBXTeamLogEventTypeArgFileProviderMigrationPolicyChanged + public init() { + let swift = TeamLog.EventTypeArg.teamFolderSpaceLimitsChangeCapsType + super.init(swift: swift) } +} +/// (team_folders) Changed team folder space limit +@objc +public class DBXTeamLogEventTypeArgTeamFolderSpaceLimitsChangeLimit: DBXTeamLogEventTypeArg { @objc - public var asFileRequestsChangePolicy: DBXTeamLogEventTypeArgFileRequestsChangePolicy? { - self as? DBXTeamLogEventTypeArgFileRequestsChangePolicy + public init() { + let swift = TeamLog.EventTypeArg.teamFolderSpaceLimitsChangeLimit + super.init(swift: swift) } +} +/// (team_folders) Changed team folder space limit notification target +@objc +public class DBXTeamLogEventTypeArgTeamFolderSpaceLimitsChangeNotificationTarget: DBXTeamLogEventTypeArg { @objc - public var asFileRequestsEmailsEnabled: DBXTeamLogEventTypeArgFileRequestsEmailsEnabled? { - self as? DBXTeamLogEventTypeArgFileRequestsEmailsEnabled + public init() { + let swift = TeamLog.EventTypeArg.teamFolderSpaceLimitsChangeNotificationTarget + super.init(swift: swift) } +} +/// (team_folders) Changed sync default +@objc +public class DBXTeamLogEventTypeArgTeamSelectiveSyncSettingsChanged: DBXTeamLogEventTypeArg { @objc - public var asFileRequestsEmailsRestrictedToTeamOnly: DBXTeamLogEventTypeArgFileRequestsEmailsRestrictedToTeamOnly? { - self as? DBXTeamLogEventTypeArgFileRequestsEmailsRestrictedToTeamOnly + public init() { + let swift = TeamLog.EventTypeArg.teamSelectiveSyncSettingsChanged + super.init(swift: swift) } +} +/// (team_policies) Changed account capture setting on team domain +@objc +public class DBXTeamLogEventTypeArgAccountCaptureChangePolicy: DBXTeamLogEventTypeArg { @objc - public var asFileTransfersPolicyChanged: DBXTeamLogEventTypeArgFileTransfersPolicyChanged? { - self as? DBXTeamLogEventTypeArgFileTransfersPolicyChanged + public init() { + let swift = TeamLog.EventTypeArg.accountCaptureChangePolicy + super.init(swift: swift) } +} +/// (team_policies) Changed admin reminder settings for requests to join the team +@objc +public class DBXTeamLogEventTypeArgAdminEmailRemindersChanged: DBXTeamLogEventTypeArg { @objc - public var asFolderLinkRestrictionPolicyChanged: DBXTeamLogEventTypeArgFolderLinkRestrictionPolicyChanged? { - self as? DBXTeamLogEventTypeArgFolderLinkRestrictionPolicyChanged + public init() { + let swift = TeamLog.EventTypeArg.adminEmailRemindersChanged + super.init(swift: swift) } +} +/// (team_policies) Changed AI third party sharing policy for team +@objc +public class DBXTeamLogEventTypeArgAiThirdPartySharingDropboxBasePolicyChanged: DBXTeamLogEventTypeArg { @objc - public var asGoogleSsoChangePolicy: DBXTeamLogEventTypeArgGoogleSsoChangePolicy? { - self as? DBXTeamLogEventTypeArgGoogleSsoChangePolicy + public init() { + let swift = TeamLog.EventTypeArg.aiThirdPartySharingDropboxBasePolicyChanged + super.init(swift: swift) } +} +/// (team_policies) Disabled downloads (deprecated, no longer logged) +@objc +public class DBXTeamLogEventTypeArgAllowDownloadDisabled: DBXTeamLogEventTypeArg { @objc - public var asGroupUserManagementChangePolicy: DBXTeamLogEventTypeArgGroupUserManagementChangePolicy? { - self as? DBXTeamLogEventTypeArgGroupUserManagementChangePolicy + public init() { + let swift = TeamLog.EventTypeArg.allowDownloadDisabled + super.init(swift: swift) } +} +/// (team_policies) Enabled downloads (deprecated, no longer logged) +@objc +public class DBXTeamLogEventTypeArgAllowDownloadEnabled: DBXTeamLogEventTypeArg { @objc - public var asIntegrationPolicyChanged: DBXTeamLogEventTypeArgIntegrationPolicyChanged? { - self as? DBXTeamLogEventTypeArgIntegrationPolicyChanged + public init() { + let swift = TeamLog.EventTypeArg.allowDownloadEnabled + super.init(swift: swift) } +} +/// (team_policies) Enabled/disabled Apple login for team +@objc +public class DBXTeamLogEventTypeArgAppleLoginChangePolicy: DBXTeamLogEventTypeArg { @objc - public var asInviteAcceptanceEmailPolicyChanged: DBXTeamLogEventTypeArgInviteAcceptanceEmailPolicyChanged? { - self as? DBXTeamLogEventTypeArgInviteAcceptanceEmailPolicyChanged + public init() { + let swift = TeamLog.EventTypeArg.appleLoginChangePolicy + super.init(swift: swift) } +} +/// (team_policies) Changed app permissions +@objc +public class DBXTeamLogEventTypeArgAppPermissionsChanged: DBXTeamLogEventTypeArg { @objc - public var asMemberRequestsChangePolicy: DBXTeamLogEventTypeArgMemberRequestsChangePolicy? { - self as? DBXTeamLogEventTypeArgMemberRequestsChangePolicy + public init() { + let swift = TeamLog.EventTypeArg.appPermissionsChanged + super.init(swift: swift) } +} +/// (team_policies) Changed camera uploads setting for team +@objc +public class DBXTeamLogEventTypeArgCameraUploadsPolicyChanged: DBXTeamLogEventTypeArg { @objc - public var asMemberSendInvitePolicyChanged: DBXTeamLogEventTypeArgMemberSendInvitePolicyChanged? { - self as? DBXTeamLogEventTypeArgMemberSendInvitePolicyChanged + public init() { + let swift = TeamLog.EventTypeArg.cameraUploadsPolicyChanged + super.init(swift: swift) } +} +/// (team_policies) Changed Capture team space policy for team +@objc +public class DBXTeamLogEventTypeArgCaptureTeamSpacePolicyChanged: DBXTeamLogEventTypeArg { @objc - public var asMemberSpaceLimitsAddException: DBXTeamLogEventTypeArgMemberSpaceLimitsAddException? { - self as? DBXTeamLogEventTypeArgMemberSpaceLimitsAddException + public init() { + let swift = TeamLog.EventTypeArg.captureTeamSpacePolicyChanged + super.init(swift: swift) } +} +/// (team_policies) Changed Capture transcription policy for team +@objc +public class DBXTeamLogEventTypeArgCaptureTranscriptPolicyChanged: DBXTeamLogEventTypeArg { @objc - public var asMemberSpaceLimitsChangeCapsTypePolicy: DBXTeamLogEventTypeArgMemberSpaceLimitsChangeCapsTypePolicy? { - self as? DBXTeamLogEventTypeArgMemberSpaceLimitsChangeCapsTypePolicy + public init() { + let swift = TeamLog.EventTypeArg.captureTranscriptPolicyChanged + super.init(swift: swift) } +} +/// (team_policies) Changed classification policy for team +@objc +public class DBXTeamLogEventTypeArgClassificationChangePolicy: DBXTeamLogEventTypeArg { @objc - public var asMemberSpaceLimitsChangePolicy: DBXTeamLogEventTypeArgMemberSpaceLimitsChangePolicy? { - self as? DBXTeamLogEventTypeArgMemberSpaceLimitsChangePolicy + public init() { + let swift = TeamLog.EventTypeArg.classificationChangePolicy + super.init(swift: swift) } +} +/// (team_policies) Changed computer backup policy for team +@objc +public class DBXTeamLogEventTypeArgComputerBackupPolicyChanged: DBXTeamLogEventTypeArg { @objc - public var asMemberSpaceLimitsRemoveException: DBXTeamLogEventTypeArgMemberSpaceLimitsRemoveException? { - self as? DBXTeamLogEventTypeArgMemberSpaceLimitsRemoveException + public init() { + let swift = TeamLog.EventTypeArg.computerBackupPolicyChanged + super.init(swift: swift) } +} +/// (team_policies) Changed content management setting +@objc +public class DBXTeamLogEventTypeArgContentAdministrationPolicyChanged: DBXTeamLogEventTypeArg { @objc - public var asMemberSuggestionsChangePolicy: DBXTeamLogEventTypeArgMemberSuggestionsChangePolicy? { - self as? DBXTeamLogEventTypeArgMemberSuggestionsChangePolicy + public init() { + let swift = TeamLog.EventTypeArg.contentAdministrationPolicyChanged + super.init(swift: swift) } +} +/// (team_policies) Changed content deletion protection policy for team +@objc +public class DBXTeamLogEventTypeArgContentDeletionProtectionChangePolicy: DBXTeamLogEventTypeArg { @objc - public var asMicrosoftOfficeAddinChangePolicy: DBXTeamLogEventTypeArgMicrosoftOfficeAddinChangePolicy? { - self as? DBXTeamLogEventTypeArgMicrosoftOfficeAddinChangePolicy + public init() { + let swift = TeamLog.EventTypeArg.contentDeletionProtectionChangePolicy + super.init(swift: swift) } +} +/// (team_policies) Changed Dash external sharing policy for team +@objc +public class DBXTeamLogEventTypeArgDashExternalSharingPolicyChanged: DBXTeamLogEventTypeArg { @objc - public var asNetworkControlChangePolicy: DBXTeamLogEventTypeArgNetworkControlChangePolicy? { - self as? DBXTeamLogEventTypeArgNetworkControlChangePolicy + public init() { + let swift = TeamLog.EventTypeArg.dashExternalSharingPolicyChanged + super.init(swift: swift) } +} +/// (team_policies) Set restrictions on data center locations where team data resides +@objc +public class DBXTeamLogEventTypeArgDataPlacementRestrictionChangePolicy: DBXTeamLogEventTypeArg { @objc - public var asPaperChangeDeploymentPolicy: DBXTeamLogEventTypeArgPaperChangeDeploymentPolicy? { - self as? DBXTeamLogEventTypeArgPaperChangeDeploymentPolicy + public init() { + let swift = TeamLog.EventTypeArg.dataPlacementRestrictionChangePolicy + super.init(swift: swift) } +} +/// (team_policies) Completed restrictions on data center locations where team data resides +@objc +public class DBXTeamLogEventTypeArgDataPlacementRestrictionSatisfyPolicy: DBXTeamLogEventTypeArg { @objc - public var asPaperChangeMemberLinkPolicy: DBXTeamLogEventTypeArgPaperChangeMemberLinkPolicy? { - self as? DBXTeamLogEventTypeArgPaperChangeMemberLinkPolicy + public init() { + let swift = TeamLog.EventTypeArg.dataPlacementRestrictionSatisfyPolicy + super.init(swift: swift) } +} +/// (team_policies) Added members to device approvals exception list +@objc +public class DBXTeamLogEventTypeArgDeviceApprovalsAddException: DBXTeamLogEventTypeArg { @objc - public var asPaperChangeMemberPolicy: DBXTeamLogEventTypeArgPaperChangeMemberPolicy? { - self as? DBXTeamLogEventTypeArgPaperChangeMemberPolicy + public init() { + let swift = TeamLog.EventTypeArg.deviceApprovalsAddException + super.init(swift: swift) } +} +/// (team_policies) Set/removed limit on number of computers member can link to team Dropbox account +@objc +public class DBXTeamLogEventTypeArgDeviceApprovalsChangeDesktopPolicy: DBXTeamLogEventTypeArg { @objc - public var asPaperChangePolicy: DBXTeamLogEventTypeArgPaperChangePolicy? { - self as? DBXTeamLogEventTypeArgPaperChangePolicy + public init() { + let swift = TeamLog.EventTypeArg.deviceApprovalsChangeDesktopPolicy + super.init(swift: swift) } +} +/// (team_policies) Set/removed limit on number of mobile devices member can link to team Dropbox account +@objc +public class DBXTeamLogEventTypeArgDeviceApprovalsChangeMobilePolicy: DBXTeamLogEventTypeArg { @objc - public var asPaperDefaultFolderPolicyChanged: DBXTeamLogEventTypeArgPaperDefaultFolderPolicyChanged? { - self as? DBXTeamLogEventTypeArgPaperDefaultFolderPolicyChanged + public init() { + let swift = TeamLog.EventTypeArg.deviceApprovalsChangeMobilePolicy + super.init(swift: swift) } +} +/// (team_policies) Changed device approvals setting when member is over limit +@objc +public class DBXTeamLogEventTypeArgDeviceApprovalsChangeOverageAction: DBXTeamLogEventTypeArg { @objc - public var asPaperDesktopPolicyChanged: DBXTeamLogEventTypeArgPaperDesktopPolicyChanged? { - self as? DBXTeamLogEventTypeArgPaperDesktopPolicyChanged + public init() { + let swift = TeamLog.EventTypeArg.deviceApprovalsChangeOverageAction + super.init(swift: swift) } +} +/// (team_policies) Changed device approvals setting when member unlinks approved device +@objc +public class DBXTeamLogEventTypeArgDeviceApprovalsChangeUnlinkAction: DBXTeamLogEventTypeArg { @objc - public var asPaperEnabledUsersGroupAddition: DBXTeamLogEventTypeArgPaperEnabledUsersGroupAddition? { - self as? DBXTeamLogEventTypeArgPaperEnabledUsersGroupAddition + public init() { + let swift = TeamLog.EventTypeArg.deviceApprovalsChangeUnlinkAction + super.init(swift: swift) } +} +/// (team_policies) Removed members from device approvals exception list +@objc +public class DBXTeamLogEventTypeArgDeviceApprovalsRemoveException: DBXTeamLogEventTypeArg { @objc - public var asPaperEnabledUsersGroupRemoval: DBXTeamLogEventTypeArgPaperEnabledUsersGroupRemoval? { - self as? DBXTeamLogEventTypeArgPaperEnabledUsersGroupRemoval + public init() { + let swift = TeamLog.EventTypeArg.deviceApprovalsRemoveException + super.init(swift: swift) } +} +/// (team_policies) Added members to directory restrictions list +@objc +public class DBXTeamLogEventTypeArgDirectoryRestrictionsAddMembers: DBXTeamLogEventTypeArg { @objc - public var asPasswordStrengthRequirementsChangePolicy: DBXTeamLogEventTypeArgPasswordStrengthRequirementsChangePolicy? { - self as? DBXTeamLogEventTypeArgPasswordStrengthRequirementsChangePolicy + public init() { + let swift = TeamLog.EventTypeArg.directoryRestrictionsAddMembers + super.init(swift: swift) } +} +/// (team_policies) Removed members from directory restrictions list +@objc +public class DBXTeamLogEventTypeArgDirectoryRestrictionsRemoveMembers: DBXTeamLogEventTypeArg { @objc - public var asPermanentDeleteChangePolicy: DBXTeamLogEventTypeArgPermanentDeleteChangePolicy? { - self as? DBXTeamLogEventTypeArgPermanentDeleteChangePolicy + public init() { + let swift = TeamLog.EventTypeArg.directoryRestrictionsRemoveMembers + super.init(swift: swift) } +} +/// (team_policies) Changed Dropbox Passwords policy for team +@objc +public class DBXTeamLogEventTypeArgDropboxPasswordsPolicyChanged: DBXTeamLogEventTypeArg { @objc - public var asResellerSupportChangePolicy: DBXTeamLogEventTypeArgResellerSupportChangePolicy? { - self as? DBXTeamLogEventTypeArgResellerSupportChangePolicy + public init() { + let swift = TeamLog.EventTypeArg.dropboxPasswordsPolicyChanged + super.init(swift: swift) } +} +/// (team_policies) Changed email to Dropbox policy for team +@objc +public class DBXTeamLogEventTypeArgEmailIngestPolicyChanged: DBXTeamLogEventTypeArg { @objc - public var asRewindPolicyChanged: DBXTeamLogEventTypeArgRewindPolicyChanged? { - self as? DBXTeamLogEventTypeArgRewindPolicyChanged + public init() { + let swift = TeamLog.EventTypeArg.emailIngestPolicyChanged + super.init(swift: swift) } +} +/// (team_policies) Added members to EMM exception list +@objc +public class DBXTeamLogEventTypeArgEmmAddException: DBXTeamLogEventTypeArg { @objc - public var asSendForSignaturePolicyChanged: DBXTeamLogEventTypeArgSendForSignaturePolicyChanged? { - self as? DBXTeamLogEventTypeArgSendForSignaturePolicyChanged + public init() { + let swift = TeamLog.EventTypeArg.emmAddException + super.init(swift: swift) } +} +/// (team_policies) Enabled/disabled enterprise mobility management for members +@objc +public class DBXTeamLogEventTypeArgEmmChangePolicy: DBXTeamLogEventTypeArg { @objc - public var asSharingChangeFolderJoinPolicy: DBXTeamLogEventTypeArgSharingChangeFolderJoinPolicy? { - self as? DBXTeamLogEventTypeArgSharingChangeFolderJoinPolicy + public init() { + let swift = TeamLog.EventTypeArg.emmChangePolicy + super.init(swift: swift) } +} +/// (team_policies) Removed members from EMM exception list +@objc +public class DBXTeamLogEventTypeArgEmmRemoveException: DBXTeamLogEventTypeArg { @objc - public var asSharingChangeLinkAllowChangeExpirationPolicy: DBXTeamLogEventTypeArgSharingChangeLinkAllowChangeExpirationPolicy? { - self as? DBXTeamLogEventTypeArgSharingChangeLinkAllowChangeExpirationPolicy + public init() { + let swift = TeamLog.EventTypeArg.emmRemoveException + super.init(swift: swift) } +} +/// (team_policies) Accepted/opted out of extended version history +@objc +public class DBXTeamLogEventTypeArgExtendedVersionHistoryChangePolicy: DBXTeamLogEventTypeArg { @objc - public var asSharingChangeLinkDefaultExpirationPolicy: DBXTeamLogEventTypeArgSharingChangeLinkDefaultExpirationPolicy? { - self as? DBXTeamLogEventTypeArgSharingChangeLinkDefaultExpirationPolicy + public init() { + let swift = TeamLog.EventTypeArg.extendedVersionHistoryChangePolicy + super.init(swift: swift) } +} +/// (team_policies) Changed external drive backup policy for team +@objc +public class DBXTeamLogEventTypeArgExternalDriveBackupPolicyChanged: DBXTeamLogEventTypeArg { @objc - public var asSharingChangeLinkEnforcePasswordPolicy: DBXTeamLogEventTypeArgSharingChangeLinkEnforcePasswordPolicy? { - self as? DBXTeamLogEventTypeArgSharingChangeLinkEnforcePasswordPolicy + public init() { + let swift = TeamLog.EventTypeArg.externalDriveBackupPolicyChanged + super.init(swift: swift) } +} +/// (team_policies) Enabled/disabled commenting on team files +@objc +public class DBXTeamLogEventTypeArgFileCommentsChangePolicy: DBXTeamLogEventTypeArg { @objc - public var asSharingChangeLinkPolicy: DBXTeamLogEventTypeArgSharingChangeLinkPolicy? { - self as? DBXTeamLogEventTypeArgSharingChangeLinkPolicy + public init() { + let swift = TeamLog.EventTypeArg.fileCommentsChangePolicy + super.init(swift: swift) } +} +/// (team_policies) Changed file locking policy for team +@objc +public class DBXTeamLogEventTypeArgFileLockingPolicyChanged: DBXTeamLogEventTypeArg { @objc - public var asSharingChangeMemberPolicy: DBXTeamLogEventTypeArgSharingChangeMemberPolicy? { - self as? DBXTeamLogEventTypeArgSharingChangeMemberPolicy + public init() { + let swift = TeamLog.EventTypeArg.fileLockingPolicyChanged + super.init(swift: swift) } +} +/// (team_policies) Changed File Provider Migration policy for team +@objc +public class DBXTeamLogEventTypeArgFileProviderMigrationPolicyChanged: DBXTeamLogEventTypeArg { @objc - public var asShowcaseChangeDownloadPolicy: DBXTeamLogEventTypeArgShowcaseChangeDownloadPolicy? { - self as? DBXTeamLogEventTypeArgShowcaseChangeDownloadPolicy + public init() { + let swift = TeamLog.EventTypeArg.fileProviderMigrationPolicyChanged + super.init(swift: swift) } +} +/// (team_policies) Enabled/disabled file requests +@objc +public class DBXTeamLogEventTypeArgFileRequestsChangePolicy: DBXTeamLogEventTypeArg { @objc - public var asShowcaseChangeEnabledPolicy: DBXTeamLogEventTypeArgShowcaseChangeEnabledPolicy? { - self as? DBXTeamLogEventTypeArgShowcaseChangeEnabledPolicy + public init() { + let swift = TeamLog.EventTypeArg.fileRequestsChangePolicy + super.init(swift: swift) } +} +/// (team_policies) Enabled file request emails for everyone (deprecated, no longer logged) +@objc +public class DBXTeamLogEventTypeArgFileRequestsEmailsEnabled: DBXTeamLogEventTypeArg { @objc - public var asShowcaseChangeExternalSharingPolicy: DBXTeamLogEventTypeArgShowcaseChangeExternalSharingPolicy? { - self as? DBXTeamLogEventTypeArgShowcaseChangeExternalSharingPolicy + public init() { + let swift = TeamLog.EventTypeArg.fileRequestsEmailsEnabled + super.init(swift: swift) } +} +/// (team_policies) Enabled file request emails for team (deprecated, no longer logged) +@objc +public class DBXTeamLogEventTypeArgFileRequestsEmailsRestrictedToTeamOnly: DBXTeamLogEventTypeArg { @objc - public var asSmarterSmartSyncPolicyChanged: DBXTeamLogEventTypeArgSmarterSmartSyncPolicyChanged? { - self as? DBXTeamLogEventTypeArgSmarterSmartSyncPolicyChanged + public init() { + let swift = TeamLog.EventTypeArg.fileRequestsEmailsRestrictedToTeamOnly + super.init(swift: swift) } +} +/// (team_policies) Changed file transfers policy for team +@objc +public class DBXTeamLogEventTypeArgFileTransfersPolicyChanged: DBXTeamLogEventTypeArg { @objc - public var asSmartSyncChangePolicy: DBXTeamLogEventTypeArgSmartSyncChangePolicy? { - self as? DBXTeamLogEventTypeArgSmartSyncChangePolicy + public init() { + let swift = TeamLog.EventTypeArg.fileTransfersPolicyChanged + super.init(swift: swift) } +} +/// (team_policies) Changed flexible file names policy for team +@objc +public class DBXTeamLogEventTypeArgFlexibleFileNamesPolicyChanged: DBXTeamLogEventTypeArg { @objc - public var asSmartSyncNotOptOut: DBXTeamLogEventTypeArgSmartSyncNotOptOut? { - self as? DBXTeamLogEventTypeArgSmartSyncNotOptOut + public init() { + let swift = TeamLog.EventTypeArg.flexibleFileNamesPolicyChanged + super.init(swift: swift) } +} +/// (team_policies) Changed folder link restrictions policy for team +@objc +public class DBXTeamLogEventTypeArgFolderLinkRestrictionPolicyChanged: DBXTeamLogEventTypeArg { @objc - public var asSmartSyncOptOut: DBXTeamLogEventTypeArgSmartSyncOptOut? { - self as? DBXTeamLogEventTypeArgSmartSyncOptOut + public init() { + let swift = TeamLog.EventTypeArg.folderLinkRestrictionPolicyChanged + super.init(swift: swift) } +} +/// (team_policies) Enabled/disabled Google single sign-on for team +@objc +public class DBXTeamLogEventTypeArgGoogleSsoChangePolicy: DBXTeamLogEventTypeArg { @objc - public var asSsoChangePolicy: DBXTeamLogEventTypeArgSsoChangePolicy? { - self as? DBXTeamLogEventTypeArgSsoChangePolicy + public init() { + let swift = TeamLog.EventTypeArg.googleSsoChangePolicy + super.init(swift: swift) } +} +/// (team_policies) Changed who can create groups +@objc +public class DBXTeamLogEventTypeArgGroupUserManagementChangePolicy: DBXTeamLogEventTypeArg { @objc - public var asTeamBrandingPolicyChanged: DBXTeamLogEventTypeArgTeamBrandingPolicyChanged? { - self as? DBXTeamLogEventTypeArgTeamBrandingPolicyChanged + public init() { + let swift = TeamLog.EventTypeArg.groupUserManagementChangePolicy + super.init(swift: swift) } +} +/// (team_policies) Changed integration policy for team +@objc +public class DBXTeamLogEventTypeArgIntegrationPolicyChanged: DBXTeamLogEventTypeArg { @objc - public var asTeamExtensionsPolicyChanged: DBXTeamLogEventTypeArgTeamExtensionsPolicyChanged? { - self as? DBXTeamLogEventTypeArgTeamExtensionsPolicyChanged + public init() { + let swift = TeamLog.EventTypeArg.integrationPolicyChanged + super.init(swift: swift) } +} +/// (team_policies) Changed invite accept email policy for team +@objc +public class DBXTeamLogEventTypeArgInviteAcceptanceEmailPolicyChanged: DBXTeamLogEventTypeArg { @objc - public var asTeamSelectiveSyncPolicyChanged: DBXTeamLogEventTypeArgTeamSelectiveSyncPolicyChanged? { - self as? DBXTeamLogEventTypeArgTeamSelectiveSyncPolicyChanged + public init() { + let swift = TeamLog.EventTypeArg.inviteAcceptanceEmailPolicyChanged + super.init(swift: swift) } +} +/// (team_policies) Changed the policy for adding people to Replay content +@objc +public class DBXTeamLogEventTypeArgMediaHubAddingPeoplePolicyChanged: DBXTeamLogEventTypeArg { @objc - public var asTeamSharingWhitelistSubjectsChanged: DBXTeamLogEventTypeArgTeamSharingWhitelistSubjectsChanged? { - self as? DBXTeamLogEventTypeArgTeamSharingWhitelistSubjectsChanged + public init() { + let swift = TeamLog.EventTypeArg.mediaHubAddingPeoplePolicyChanged + super.init(swift: swift) } +} +/// (team_policies) Changed the policy for downloading Replay content +@objc +public class DBXTeamLogEventTypeArgMediaHubDownloadPolicyChanged: DBXTeamLogEventTypeArg { @objc - public var asTfaAddException: DBXTeamLogEventTypeArgTfaAddException? { - self as? DBXTeamLogEventTypeArgTfaAddException + public init() { + let swift = TeamLog.EventTypeArg.mediaHubDownloadPolicyChanged + super.init(swift: swift) } +} +/// (team_policies) Changed the policy for sharing Replay content +@objc +public class DBXTeamLogEventTypeArgMediaHubLinkSharingPolicyChanged: DBXTeamLogEventTypeArg { @objc - public var asTfaChangePolicy: DBXTeamLogEventTypeArgTfaChangePolicy? { - self as? DBXTeamLogEventTypeArgTfaChangePolicy + public init() { + let swift = TeamLog.EventTypeArg.mediaHubLinkSharingPolicyChanged + super.init(swift: swift) } +} +/// (team_policies) Changed whether users can find team when not invited +@objc +public class DBXTeamLogEventTypeArgMemberRequestsChangePolicy: DBXTeamLogEventTypeArg { @objc - public var asTfaRemoveException: DBXTeamLogEventTypeArgTfaRemoveException? { - self as? DBXTeamLogEventTypeArgTfaRemoveException + public init() { + let swift = TeamLog.EventTypeArg.memberRequestsChangePolicy + super.init(swift: swift) } +} +/// (team_policies) Changed member send invite policy for team +@objc +public class DBXTeamLogEventTypeArgMemberSendInvitePolicyChanged: DBXTeamLogEventTypeArg { @objc - public var asTwoAccountChangePolicy: DBXTeamLogEventTypeArgTwoAccountChangePolicy? { - self as? DBXTeamLogEventTypeArgTwoAccountChangePolicy + public init() { + let swift = TeamLog.EventTypeArg.memberSendInvitePolicyChanged + super.init(swift: swift) } +} +/// (team_policies) Added members to member space limit exception list +@objc +public class DBXTeamLogEventTypeArgMemberSpaceLimitsAddException: DBXTeamLogEventTypeArg { @objc - public var asViewerInfoPolicyChanged: DBXTeamLogEventTypeArgViewerInfoPolicyChanged? { - self as? DBXTeamLogEventTypeArgViewerInfoPolicyChanged + public init() { + let swift = TeamLog.EventTypeArg.memberSpaceLimitsAddException + super.init(swift: swift) } +} +/// (team_policies) Changed member space limit type for team +@objc +public class DBXTeamLogEventTypeArgMemberSpaceLimitsChangeCapsTypePolicy: DBXTeamLogEventTypeArg { @objc - public var asWatermarkingPolicyChanged: DBXTeamLogEventTypeArgWatermarkingPolicyChanged? { - self as? DBXTeamLogEventTypeArgWatermarkingPolicyChanged + public init() { + let swift = TeamLog.EventTypeArg.memberSpaceLimitsChangeCapsTypePolicy + super.init(swift: swift) } +} +/// (team_policies) Changed team default member space limit +@objc +public class DBXTeamLogEventTypeArgMemberSpaceLimitsChangePolicy: DBXTeamLogEventTypeArg { @objc - public var asWebSessionsChangeActiveSessionLimit: DBXTeamLogEventTypeArgWebSessionsChangeActiveSessionLimit? { - self as? DBXTeamLogEventTypeArgWebSessionsChangeActiveSessionLimit + public init() { + let swift = TeamLog.EventTypeArg.memberSpaceLimitsChangePolicy + super.init(swift: swift) } +} +/// (team_policies) Removed members from member space limit exception list +@objc +public class DBXTeamLogEventTypeArgMemberSpaceLimitsRemoveException: DBXTeamLogEventTypeArg { @objc - public var asWebSessionsChangeFixedLengthPolicy: DBXTeamLogEventTypeArgWebSessionsChangeFixedLengthPolicy? { - self as? DBXTeamLogEventTypeArgWebSessionsChangeFixedLengthPolicy + public init() { + let swift = TeamLog.EventTypeArg.memberSpaceLimitsRemoveException + super.init(swift: swift) } +} +/// (team_policies) Enabled/disabled option for team members to suggest people to add to team +@objc +public class DBXTeamLogEventTypeArgMemberSuggestionsChangePolicy: DBXTeamLogEventTypeArg { @objc - public var asWebSessionsChangeIdleLengthPolicy: DBXTeamLogEventTypeArgWebSessionsChangeIdleLengthPolicy? { - self as? DBXTeamLogEventTypeArgWebSessionsChangeIdleLengthPolicy + public init() { + let swift = TeamLog.EventTypeArg.memberSuggestionsChangePolicy + super.init(swift: swift) } +} +/// (team_policies) Enabled/disabled Microsoft login for team +@objc +public class DBXTeamLogEventTypeArgMicrosoftLoginChangePolicy: DBXTeamLogEventTypeArg { @objc - public var asDataResidencyMigrationRequestSuccessful: DBXTeamLogEventTypeArgDataResidencyMigrationRequestSuccessful? { - self as? DBXTeamLogEventTypeArgDataResidencyMigrationRequestSuccessful + public init() { + let swift = TeamLog.EventTypeArg.microsoftLoginChangePolicy + super.init(swift: swift) } +} +/// (team_policies) Enabled/disabled Microsoft Office add-in +@objc +public class DBXTeamLogEventTypeArgMicrosoftOfficeAddinChangePolicy: DBXTeamLogEventTypeArg { @objc - public var asDataResidencyMigrationRequestUnsuccessful: DBXTeamLogEventTypeArgDataResidencyMigrationRequestUnsuccessful? { - self as? DBXTeamLogEventTypeArgDataResidencyMigrationRequestUnsuccessful + public init() { + let swift = TeamLog.EventTypeArg.microsoftOfficeAddinChangePolicy + super.init(swift: swift) } +} +/// (team_policies) Changed multi-team identity policy for team +@objc +public class DBXTeamLogEventTypeArgMultiTeamIdentityPolicyChanged: DBXTeamLogEventTypeArg { @objc - public var asTeamMergeFrom: DBXTeamLogEventTypeArgTeamMergeFrom? { - self as? DBXTeamLogEventTypeArgTeamMergeFrom + public init() { + let swift = TeamLog.EventTypeArg.multiTeamIdentityPolicyChanged + super.init(swift: swift) } +} +/// (team_policies) Enabled/disabled network control +@objc +public class DBXTeamLogEventTypeArgNetworkControlChangePolicy: DBXTeamLogEventTypeArg { @objc - public var asTeamMergeTo: DBXTeamLogEventTypeArgTeamMergeTo? { - self as? DBXTeamLogEventTypeArgTeamMergeTo + public init() { + let swift = TeamLog.EventTypeArg.networkControlChangePolicy + super.init(swift: swift) } +} +/// (team_policies) Changed whether Dropbox Paper, when enabled, is deployed to all members or to specific + /// members +@objc +public class DBXTeamLogEventTypeArgPaperChangeDeploymentPolicy: DBXTeamLogEventTypeArg { @objc - public var asTeamProfileAddBackground: DBXTeamLogEventTypeArgTeamProfileAddBackground? { - self as? DBXTeamLogEventTypeArgTeamProfileAddBackground + public init() { + let swift = TeamLog.EventTypeArg.paperChangeDeploymentPolicy + super.init(swift: swift) } +} +/// (team_policies) Changed whether non-members can view Paper docs with link (deprecated, no longer logged) +@objc +public class DBXTeamLogEventTypeArgPaperChangeMemberLinkPolicy: DBXTeamLogEventTypeArg { @objc - public var asTeamProfileAddLogo: DBXTeamLogEventTypeArgTeamProfileAddLogo? { - self as? DBXTeamLogEventTypeArgTeamProfileAddLogo + public init() { + let swift = TeamLog.EventTypeArg.paperChangeMemberLinkPolicy + super.init(swift: swift) } +} +/// (team_policies) Changed whether members can share Paper docs outside team, and if docs are accessible only + /// by team members or anyone by default +@objc +public class DBXTeamLogEventTypeArgPaperChangeMemberPolicy: DBXTeamLogEventTypeArg { @objc - public var asTeamProfileChangeBackground: DBXTeamLogEventTypeArgTeamProfileChangeBackground? { - self as? DBXTeamLogEventTypeArgTeamProfileChangeBackground + public init() { + let swift = TeamLog.EventTypeArg.paperChangeMemberPolicy + super.init(swift: swift) } +} +/// (team_policies) Enabled/disabled Dropbox Paper for team +@objc +public class DBXTeamLogEventTypeArgPaperChangePolicy: DBXTeamLogEventTypeArg { @objc - public var asTeamProfileChangeDefaultLanguage: DBXTeamLogEventTypeArgTeamProfileChangeDefaultLanguage? { - self as? DBXTeamLogEventTypeArgTeamProfileChangeDefaultLanguage + public init() { + let swift = TeamLog.EventTypeArg.paperChangePolicy + super.init(swift: swift) } +} +/// (team_policies) Changed Paper Default Folder Policy setting for team +@objc +public class DBXTeamLogEventTypeArgPaperDefaultFolderPolicyChanged: DBXTeamLogEventTypeArg { @objc - public var asTeamProfileChangeLogo: DBXTeamLogEventTypeArgTeamProfileChangeLogo? { - self as? DBXTeamLogEventTypeArgTeamProfileChangeLogo + public init() { + let swift = TeamLog.EventTypeArg.paperDefaultFolderPolicyChanged + super.init(swift: swift) } +} +/// (team_policies) Enabled/disabled Paper Desktop for team +@objc +public class DBXTeamLogEventTypeArgPaperDesktopPolicyChanged: DBXTeamLogEventTypeArg { @objc - public var asTeamProfileChangeName: DBXTeamLogEventTypeArgTeamProfileChangeName? { - self as? DBXTeamLogEventTypeArgTeamProfileChangeName + public init() { + let swift = TeamLog.EventTypeArg.paperDesktopPolicyChanged + super.init(swift: swift) } +} +/// (team_policies) Added users to Paper-enabled users list +@objc +public class DBXTeamLogEventTypeArgPaperEnabledUsersGroupAddition: DBXTeamLogEventTypeArg { @objc - public var asTeamProfileRemoveBackground: DBXTeamLogEventTypeArgTeamProfileRemoveBackground? { - self as? DBXTeamLogEventTypeArgTeamProfileRemoveBackground + public init() { + let swift = TeamLog.EventTypeArg.paperEnabledUsersGroupAddition + super.init(swift: swift) } +} +/// (team_policies) Removed users from Paper-enabled users list +@objc +public class DBXTeamLogEventTypeArgPaperEnabledUsersGroupRemoval: DBXTeamLogEventTypeArg { @objc - public var asTeamProfileRemoveLogo: DBXTeamLogEventTypeArgTeamProfileRemoveLogo? { - self as? DBXTeamLogEventTypeArgTeamProfileRemoveLogo + public init() { + let swift = TeamLog.EventTypeArg.paperEnabledUsersGroupRemoval + super.init(swift: swift) } +} +/// (team_policies) Changed passkey login policy for team +@objc +public class DBXTeamLogEventTypeArgPasskeyLoginPolicyChanged: DBXTeamLogEventTypeArg { @objc - public var asTfaAddBackupPhone: DBXTeamLogEventTypeArgTfaAddBackupPhone? { - self as? DBXTeamLogEventTypeArgTfaAddBackupPhone + public init() { + let swift = TeamLog.EventTypeArg.passkeyLoginPolicyChanged + super.init(swift: swift) } +} +/// (team_policies) Changed team password strength requirements +@objc +public class DBXTeamLogEventTypeArgPasswordStrengthRequirementsChangePolicy: DBXTeamLogEventTypeArg { @objc - public var asTfaAddSecurityKey: DBXTeamLogEventTypeArgTfaAddSecurityKey? { - self as? DBXTeamLogEventTypeArgTfaAddSecurityKey + public init() { + let swift = TeamLog.EventTypeArg.passwordStrengthRequirementsChangePolicy + super.init(swift: swift) } +} +/// (team_policies) Enabled/disabled ability of team members to permanently delete content +@objc +public class DBXTeamLogEventTypeArgPermanentDeleteChangePolicy: DBXTeamLogEventTypeArg { @objc - public var asTfaChangeBackupPhone: DBXTeamLogEventTypeArgTfaChangeBackupPhone? { - self as? DBXTeamLogEventTypeArgTfaChangeBackupPhone + public init() { + let swift = TeamLog.EventTypeArg.permanentDeleteChangePolicy + super.init(swift: swift) } +} +/// (team_policies) Changed Dropbox AI policy for team +@objc +public class DBXTeamLogEventTypeArgPreviewsAiPolicyChanged: DBXTeamLogEventTypeArg { @objc - public var asTfaChangeStatus: DBXTeamLogEventTypeArgTfaChangeStatus? { - self as? DBXTeamLogEventTypeArgTfaChangeStatus + public init() { + let swift = TeamLog.EventTypeArg.previewsAiPolicyChanged + super.init(swift: swift) } +} +/// (team_policies) Changed the policy for adding people to Replay content +@objc +public class DBXTeamLogEventTypeArgReplayAddingPeoplePolicyChanged: DBXTeamLogEventTypeArg { @objc - public var asTfaRemoveBackupPhone: DBXTeamLogEventTypeArgTfaRemoveBackupPhone? { - self as? DBXTeamLogEventTypeArgTfaRemoveBackupPhone + public init() { + let swift = TeamLog.EventTypeArg.replayAddingPeoplePolicyChanged + super.init(swift: swift) } +} +/// (team_policies) Changed the policy for sharing Replay content +@objc +public class DBXTeamLogEventTypeArgReplaySharingPolicyChanged: DBXTeamLogEventTypeArg { @objc - public var asTfaRemoveSecurityKey: DBXTeamLogEventTypeArgTfaRemoveSecurityKey? { - self as? DBXTeamLogEventTypeArgTfaRemoveSecurityKey + public init() { + let swift = TeamLog.EventTypeArg.replaySharingPolicyChanged + super.init(swift: swift) } +} +/// (team_policies) Enabled/disabled reseller support +@objc +public class DBXTeamLogEventTypeArgResellerSupportChangePolicy: DBXTeamLogEventTypeArg { @objc - public var asTfaReset: DBXTeamLogEventTypeArgTfaReset? { - self as? DBXTeamLogEventTypeArgTfaReset + public init() { + let swift = TeamLog.EventTypeArg.resellerSupportChangePolicy + super.init(swift: swift) } +} +/// (team_policies) Changed Rewind policy for team +@objc +public class DBXTeamLogEventTypeArgRewindPolicyChanged: DBXTeamLogEventTypeArg { @objc - public var asChangedEnterpriseAdminRole: DBXTeamLogEventTypeArgChangedEnterpriseAdminRole? { - self as? DBXTeamLogEventTypeArgChangedEnterpriseAdminRole + public init() { + let swift = TeamLog.EventTypeArg.rewindPolicyChanged + super.init(swift: swift) } +} +/// (team_policies) Changed “Send and track” policy for team +@objc +public class DBXTeamLogEventTypeArgSendAndTrackPolicyChanged: DBXTeamLogEventTypeArg { @objc - public var asChangedEnterpriseConnectedTeamStatus: DBXTeamLogEventTypeArgChangedEnterpriseConnectedTeamStatus? { - self as? DBXTeamLogEventTypeArgChangedEnterpriseConnectedTeamStatus + public init() { + let swift = TeamLog.EventTypeArg.sendAndTrackPolicyChanged + super.init(swift: swift) } +} +/// (team_policies) Changed “Send and track” external sharing policy for team +@objc +public class DBXTeamLogEventTypeArgSendExternalSharingPolicyChanged: DBXTeamLogEventTypeArg { @objc - public var asEndedEnterpriseAdminSession: DBXTeamLogEventTypeArgEndedEnterpriseAdminSession? { - self as? DBXTeamLogEventTypeArgEndedEnterpriseAdminSession + public init() { + let swift = TeamLog.EventTypeArg.sendExternalSharingPolicyChanged + super.init(swift: swift) } +} +/// (team_policies) Changed send for signature policy for team +@objc +public class DBXTeamLogEventTypeArgSendForSignaturePolicyChanged: DBXTeamLogEventTypeArg { @objc - public var asEndedEnterpriseAdminSessionDeprecated: DBXTeamLogEventTypeArgEndedEnterpriseAdminSessionDeprecated? { - self as? DBXTeamLogEventTypeArgEndedEnterpriseAdminSessionDeprecated + public init() { + let swift = TeamLog.EventTypeArg.sendForSignaturePolicyChanged + super.init(swift: swift) } +} +/// (team_policies) Changed shared link default permissions policy for team +@objc +public class DBXTeamLogEventTypeArgSharedLinkDefaultPermissionsPolicyChanged: DBXTeamLogEventTypeArg { @objc - public var asEnterpriseSettingsLocking: DBXTeamLogEventTypeArgEnterpriseSettingsLocking? { - self as? DBXTeamLogEventTypeArgEnterpriseSettingsLocking + public init() { + let swift = TeamLog.EventTypeArg.sharedLinkDefaultPermissionsPolicyChanged + super.init(swift: swift) } +} +/// (team_policies) Changed whether team members can join shared folders owned outside team +@objc +public class DBXTeamLogEventTypeArgSharingChangeFolderJoinPolicy: DBXTeamLogEventTypeArg { @objc - public var asGuestAdminChangeStatus: DBXTeamLogEventTypeArgGuestAdminChangeStatus? { - self as? DBXTeamLogEventTypeArgGuestAdminChangeStatus + public init() { + let swift = TeamLog.EventTypeArg.sharingChangeFolderJoinPolicy + super.init(swift: swift) } +} +/// (team_policies) Changed the allow remove or change expiration policy for the links shared outside of the + /// team +@objc +public class DBXTeamLogEventTypeArgSharingChangeLinkAllowChangeExpirationPolicy: DBXTeamLogEventTypeArg { @objc - public var asStartedEnterpriseAdminSession: DBXTeamLogEventTypeArgStartedEnterpriseAdminSession? { - self as? DBXTeamLogEventTypeArgStartedEnterpriseAdminSession + public init() { + let swift = TeamLog.EventTypeArg.sharingChangeLinkAllowChangeExpirationPolicy + super.init(swift: swift) } +} +/// (team_policies) Changed the default expiration for the links shared outside of the team +@objc +public class DBXTeamLogEventTypeArgSharingChangeLinkDefaultExpirationPolicy: DBXTeamLogEventTypeArg { @objc - public var asTeamMergeRequestAccepted: DBXTeamLogEventTypeArgTeamMergeRequestAccepted? { - self as? DBXTeamLogEventTypeArgTeamMergeRequestAccepted + public init() { + let swift = TeamLog.EventTypeArg.sharingChangeLinkDefaultExpirationPolicy + super.init(swift: swift) } +} +/// (team_policies) Changed the password requirement for the links shared outside of the team +@objc +public class DBXTeamLogEventTypeArgSharingChangeLinkEnforcePasswordPolicy: DBXTeamLogEventTypeArg { @objc - public var asTeamMergeRequestAcceptedShownToPrimaryTeam: DBXTeamLogEventTypeArgTeamMergeRequestAcceptedShownToPrimaryTeam? { - self as? DBXTeamLogEventTypeArgTeamMergeRequestAcceptedShownToPrimaryTeam + public init() { + let swift = TeamLog.EventTypeArg.sharingChangeLinkEnforcePasswordPolicy + super.init(swift: swift) } +} +/// (team_policies) Changed whether members can share links outside team, and if links are accessible only by + /// team members or anyone by default +@objc +public class DBXTeamLogEventTypeArgSharingChangeLinkPolicy: DBXTeamLogEventTypeArg { @objc - public var asTeamMergeRequestAcceptedShownToSecondaryTeam: DBXTeamLogEventTypeArgTeamMergeRequestAcceptedShownToSecondaryTeam? { - self as? DBXTeamLogEventTypeArgTeamMergeRequestAcceptedShownToSecondaryTeam + public init() { + let swift = TeamLog.EventTypeArg.sharingChangeLinkPolicy + super.init(swift: swift) } +} +/// (team_policies) Changed whether members can share files/folders outside team +@objc +public class DBXTeamLogEventTypeArgSharingChangeMemberPolicy: DBXTeamLogEventTypeArg { @objc - public var asTeamMergeRequestAutoCanceled: DBXTeamLogEventTypeArgTeamMergeRequestAutoCanceled? { - self as? DBXTeamLogEventTypeArgTeamMergeRequestAutoCanceled + public init() { + let swift = TeamLog.EventTypeArg.sharingChangeMemberPolicy + super.init(swift: swift) } +} +/// (team_policies) Enabled/disabled downloading files from Dropbox Showcase for team +@objc +public class DBXTeamLogEventTypeArgShowcaseChangeDownloadPolicy: DBXTeamLogEventTypeArg { @objc - public var asTeamMergeRequestCanceled: DBXTeamLogEventTypeArgTeamMergeRequestCanceled? { - self as? DBXTeamLogEventTypeArgTeamMergeRequestCanceled + public init() { + let swift = TeamLog.EventTypeArg.showcaseChangeDownloadPolicy + super.init(swift: swift) } +} +/// (team_policies) Enabled/disabled Dropbox Showcase for team +@objc +public class DBXTeamLogEventTypeArgShowcaseChangeEnabledPolicy: DBXTeamLogEventTypeArg { @objc - public var asTeamMergeRequestCanceledShownToPrimaryTeam: DBXTeamLogEventTypeArgTeamMergeRequestCanceledShownToPrimaryTeam? { - self as? DBXTeamLogEventTypeArgTeamMergeRequestCanceledShownToPrimaryTeam + public init() { + let swift = TeamLog.EventTypeArg.showcaseChangeEnabledPolicy + super.init(swift: swift) } +} +/// (team_policies) Enabled/disabled sharing Dropbox Showcase externally for team +@objc +public class DBXTeamLogEventTypeArgShowcaseChangeExternalSharingPolicy: DBXTeamLogEventTypeArg { @objc - public var asTeamMergeRequestCanceledShownToSecondaryTeam: DBXTeamLogEventTypeArgTeamMergeRequestCanceledShownToSecondaryTeam? { - self as? DBXTeamLogEventTypeArgTeamMergeRequestCanceledShownToSecondaryTeam + public init() { + let swift = TeamLog.EventTypeArg.showcaseChangeExternalSharingPolicy + super.init(swift: swift) } +} +/// (team_policies) Changed Signatures external sharing policy for team +@objc +public class DBXTeamLogEventTypeArgSignExternalSharingPolicyChanged: DBXTeamLogEventTypeArg { @objc - public var asTeamMergeRequestExpired: DBXTeamLogEventTypeArgTeamMergeRequestExpired? { - self as? DBXTeamLogEventTypeArgTeamMergeRequestExpired + public init() { + let swift = TeamLog.EventTypeArg.signExternalSharingPolicyChanged + super.init(swift: swift) } +} +/// (team_policies) Changed template creation permission +@objc +public class DBXTeamLogEventTypeArgSignTemplateCreationPermissionChanged: DBXTeamLogEventTypeArg { @objc - public var asTeamMergeRequestExpiredShownToPrimaryTeam: DBXTeamLogEventTypeArgTeamMergeRequestExpiredShownToPrimaryTeam? { - self as? DBXTeamLogEventTypeArgTeamMergeRequestExpiredShownToPrimaryTeam + public init() { + let swift = TeamLog.EventTypeArg.signTemplateCreationPermissionChanged + super.init(swift: swift) } +} +/// (team_policies) Changed automatic Smart Sync setting for team +@objc +public class DBXTeamLogEventTypeArgSmarterSmartSyncPolicyChanged: DBXTeamLogEventTypeArg { @objc - public var asTeamMergeRequestExpiredShownToSecondaryTeam: DBXTeamLogEventTypeArgTeamMergeRequestExpiredShownToSecondaryTeam? { - self as? DBXTeamLogEventTypeArgTeamMergeRequestExpiredShownToSecondaryTeam + public init() { + let swift = TeamLog.EventTypeArg.smarterSmartSyncPolicyChanged + super.init(swift: swift) } +} +/// (team_policies) Changed default Smart Sync setting for team members +@objc +public class DBXTeamLogEventTypeArgSmartSyncChangePolicy: DBXTeamLogEventTypeArg { @objc - public var asTeamMergeRequestRejectedShownToPrimaryTeam: DBXTeamLogEventTypeArgTeamMergeRequestRejectedShownToPrimaryTeam? { - self as? DBXTeamLogEventTypeArgTeamMergeRequestRejectedShownToPrimaryTeam + public init() { + let swift = TeamLog.EventTypeArg.smartSyncChangePolicy + super.init(swift: swift) } +} +/// (team_policies) Opted team into Smart Sync +@objc +public class DBXTeamLogEventTypeArgSmartSyncNotOptOut: DBXTeamLogEventTypeArg { @objc - public var asTeamMergeRequestRejectedShownToSecondaryTeam: DBXTeamLogEventTypeArgTeamMergeRequestRejectedShownToSecondaryTeam? { - self as? DBXTeamLogEventTypeArgTeamMergeRequestRejectedShownToSecondaryTeam + public init() { + let swift = TeamLog.EventTypeArg.smartSyncNotOptOut + super.init(swift: swift) } +} +/// (team_policies) Opted team out of Smart Sync +@objc +public class DBXTeamLogEventTypeArgSmartSyncOptOut: DBXTeamLogEventTypeArg { @objc - public var asTeamMergeRequestReminder: DBXTeamLogEventTypeArgTeamMergeRequestReminder? { - self as? DBXTeamLogEventTypeArgTeamMergeRequestReminder + public init() { + let swift = TeamLog.EventTypeArg.smartSyncOptOut + super.init(swift: swift) } +} +/// (team_policies) Changed single sign-on setting for team +@objc +public class DBXTeamLogEventTypeArgSsoChangePolicy: DBXTeamLogEventTypeArg { @objc - public var asTeamMergeRequestReminderShownToPrimaryTeam: DBXTeamLogEventTypeArgTeamMergeRequestReminderShownToPrimaryTeam? { - self as? DBXTeamLogEventTypeArgTeamMergeRequestReminderShownToPrimaryTeam + public init() { + let swift = TeamLog.EventTypeArg.ssoChangePolicy + super.init(swift: swift) } +} +/// (team_policies) Changed cross-team Stack access policy for team +@objc +public class DBXTeamLogEventTypeArgStackCrossTeamAccessPolicyChanged: DBXTeamLogEventTypeArg { @objc - public var asTeamMergeRequestReminderShownToSecondaryTeam: DBXTeamLogEventTypeArgTeamMergeRequestReminderShownToSecondaryTeam? { - self as? DBXTeamLogEventTypeArgTeamMergeRequestReminderShownToSecondaryTeam + public init() { + let swift = TeamLog.EventTypeArg.stackCrossTeamAccessPolicyChanged + super.init(swift: swift) } +} +/// (team_policies) Changed team branding policy for team +@objc +public class DBXTeamLogEventTypeArgTeamBrandingPolicyChanged: DBXTeamLogEventTypeArg { @objc - public var asTeamMergeRequestRevoked: DBXTeamLogEventTypeArgTeamMergeRequestRevoked? { - self as? DBXTeamLogEventTypeArgTeamMergeRequestRevoked + public init() { + let swift = TeamLog.EventTypeArg.teamBrandingPolicyChanged + super.init(swift: swift) } +} +/// (team_policies) Changed App Integrations setting for team +@objc +public class DBXTeamLogEventTypeArgTeamExtensionsPolicyChanged: DBXTeamLogEventTypeArg { @objc - public var asTeamMergeRequestSentShownToPrimaryTeam: DBXTeamLogEventTypeArgTeamMergeRequestSentShownToPrimaryTeam? { - self as? DBXTeamLogEventTypeArgTeamMergeRequestSentShownToPrimaryTeam + public init() { + let swift = TeamLog.EventTypeArg.teamExtensionsPolicyChanged + super.init(swift: swift) } +} +/// (team_policies) Changed team member storage request policy for team +@objc +public class DBXTeamLogEventTypeArgTeamMemberStorageRequestPolicyChanged: DBXTeamLogEventTypeArg { @objc - public var asTeamMergeRequestSentShownToSecondaryTeam: DBXTeamLogEventTypeArgTeamMergeRequestSentShownToSecondaryTeam? { - self as? DBXTeamLogEventTypeArgTeamMergeRequestSentShownToSecondaryTeam + public init() { + let swift = TeamLog.EventTypeArg.teamMemberStorageRequestPolicyChanged + super.init(swift: swift) } +} +/// (team_policies) Enabled/disabled Team Selective Sync for team +@objc +public class DBXTeamLogEventTypeArgTeamSelectiveSyncPolicyChanged: DBXTeamLogEventTypeArg { @objc - public var asOther: DBXTeamLogEventTypeArgOther? { - self as? DBXTeamLogEventTypeArgOther + public init() { + let swift = TeamLog.EventTypeArg.teamSelectiveSyncPolicyChanged + super.init(swift: swift) } } -/// (admin_alerting) Changed an alert state +/// (team_policies) Edited the approved list for sharing externally @objc -public class DBXTeamLogEventTypeArgAdminAlertingAlertStateChanged: DBXTeamLogEventTypeArg { +public class DBXTeamLogEventTypeArgTeamSharingWhitelistSubjectsChanged: DBXTeamLogEventTypeArg { @objc public init() { - let swift = TeamLog.EventTypeArg.adminAlertingAlertStateChanged + let swift = TeamLog.EventTypeArg.teamSharingWhitelistSubjectsChanged super.init(swift: swift) } } -/// (admin_alerting) Changed an alert setting +/// (team_policies) Added members to two factor authentication exception list @objc -public class DBXTeamLogEventTypeArgAdminAlertingChangedAlertConfig: DBXTeamLogEventTypeArg { +public class DBXTeamLogEventTypeArgTfaAddException: DBXTeamLogEventTypeArg { @objc public init() { - let swift = TeamLog.EventTypeArg.adminAlertingChangedAlertConfig + let swift = TeamLog.EventTypeArg.tfaAddException super.init(swift: swift) } } -/// (admin_alerting) Triggered security alert +/// (team_policies) Changed two-factor authentication setting for team @objc -public class DBXTeamLogEventTypeArgAdminAlertingTriggeredAlert: DBXTeamLogEventTypeArg { +public class DBXTeamLogEventTypeArgTfaChangePolicy: DBXTeamLogEventTypeArg { @objc public init() { - let swift = TeamLog.EventTypeArg.adminAlertingTriggeredAlert + let swift = TeamLog.EventTypeArg.tfaChangePolicy super.init(swift: swift) } } -/// (admin_alerting) Completed ransomware restore process +/// (team_policies) Removed members from two factor authentication exception list @objc -public class DBXTeamLogEventTypeArgRansomwareRestoreProcessCompleted: DBXTeamLogEventTypeArg { +public class DBXTeamLogEventTypeArgTfaRemoveException: DBXTeamLogEventTypeArg { @objc public init() { - let swift = TeamLog.EventTypeArg.ransomwareRestoreProcessCompleted + let swift = TeamLog.EventTypeArg.tfaRemoveException super.init(swift: swift) } } -/// (admin_alerting) Started ransomware restore process +/// (team_policies) Changed top level content setting for team @objc -public class DBXTeamLogEventTypeArgRansomwareRestoreProcessStarted: DBXTeamLogEventTypeArg { +public class DBXTeamLogEventTypeArgTopLevelContentPolicyChanged: DBXTeamLogEventTypeArg { @objc public init() { - let swift = TeamLog.EventTypeArg.ransomwareRestoreProcessStarted + let swift = TeamLog.EventTypeArg.topLevelContentPolicyChanged super.init(swift: swift) } } -/// (apps) Failed to connect app for member +/// (team_policies) Enabled/disabled option for members to link personal Dropbox account and team account to + /// same computer @objc -public class DBXTeamLogEventTypeArgAppBlockedByPermissions: DBXTeamLogEventTypeArg { +public class DBXTeamLogEventTypeArgTwoAccountChangePolicy: DBXTeamLogEventTypeArg { @objc public init() { - let swift = TeamLog.EventTypeArg.appBlockedByPermissions + let swift = TeamLog.EventTypeArg.twoAccountChangePolicy super.init(swift: swift) } } -/// (apps) Linked app for team +/// (team_policies) Changed team policy for viewer info @objc -public class DBXTeamLogEventTypeArgAppLinkTeam: DBXTeamLogEventTypeArg { +public class DBXTeamLogEventTypeArgViewerInfoPolicyChanged: DBXTeamLogEventTypeArg { @objc public init() { - let swift = TeamLog.EventTypeArg.appLinkTeam + let swift = TeamLog.EventTypeArg.viewerInfoPolicyChanged super.init(swift: swift) } } -/// (apps) Linked app for member +/// (team_policies) Changed watermarking policy for team @objc -public class DBXTeamLogEventTypeArgAppLinkUser: DBXTeamLogEventTypeArg { +public class DBXTeamLogEventTypeArgWatermarkingPolicyChanged: DBXTeamLogEventTypeArg { @objc public init() { - let swift = TeamLog.EventTypeArg.appLinkUser + let swift = TeamLog.EventTypeArg.watermarkingPolicyChanged super.init(swift: swift) } } -/// (apps) Unlinked app for team +/// (team_policies) Changed limit on active sessions per member @objc -public class DBXTeamLogEventTypeArgAppUnlinkTeam: DBXTeamLogEventTypeArg { +public class DBXTeamLogEventTypeArgWebSessionsChangeActiveSessionLimit: DBXTeamLogEventTypeArg { @objc public init() { - let swift = TeamLog.EventTypeArg.appUnlinkTeam + let swift = TeamLog.EventTypeArg.webSessionsChangeActiveSessionLimit super.init(swift: swift) } } -/// (apps) Unlinked app for member +/// (team_policies) Changed how long members can stay signed in to Dropbox.com @objc -public class DBXTeamLogEventTypeArgAppUnlinkUser: DBXTeamLogEventTypeArg { +public class DBXTeamLogEventTypeArgWebSessionsChangeFixedLengthPolicy: DBXTeamLogEventTypeArg { @objc public init() { - let swift = TeamLog.EventTypeArg.appUnlinkUser + let swift = TeamLog.EventTypeArg.webSessionsChangeFixedLengthPolicy super.init(swift: swift) } } -/// (apps) Connected integration for member +/// (team_policies) Changed how long team members can be idle while signed in to Dropbox.com @objc -public class DBXTeamLogEventTypeArgIntegrationConnected: DBXTeamLogEventTypeArg { +public class DBXTeamLogEventTypeArgWebSessionsChangeIdleLengthPolicy: DBXTeamLogEventTypeArg { @objc public init() { - let swift = TeamLog.EventTypeArg.integrationConnected + let swift = TeamLog.EventTypeArg.webSessionsChangeIdleLengthPolicy super.init(swift: swift) } } -/// (apps) Disconnected integration for member +/// (team_profile) Requested data residency migration for team data @objc -public class DBXTeamLogEventTypeArgIntegrationDisconnected: DBXTeamLogEventTypeArg { +public class DBXTeamLogEventTypeArgDataResidencyMigrationRequestSuccessful: DBXTeamLogEventTypeArg { @objc public init() { - let swift = TeamLog.EventTypeArg.integrationDisconnected + let swift = TeamLog.EventTypeArg.dataResidencyMigrationRequestSuccessful super.init(swift: swift) } } -/// (comments) Added file comment +/// (team_profile) Request for data residency migration for team data has failed @objc -public class DBXTeamLogEventTypeArgFileAddComment: DBXTeamLogEventTypeArg { +public class DBXTeamLogEventTypeArgDataResidencyMigrationRequestUnsuccessful: DBXTeamLogEventTypeArg { @objc public init() { - let swift = TeamLog.EventTypeArg.fileAddComment + let swift = TeamLog.EventTypeArg.dataResidencyMigrationRequestUnsuccessful super.init(swift: swift) } } -/// (comments) Subscribed to or unsubscribed from comment notifications for file +/// (team_profile) Merged another team into this team @objc -public class DBXTeamLogEventTypeArgFileChangeCommentSubscription: DBXTeamLogEventTypeArg { +public class DBXTeamLogEventTypeArgTeamMergeFrom: DBXTeamLogEventTypeArg { @objc public init() { - let swift = TeamLog.EventTypeArg.fileChangeCommentSubscription + let swift = TeamLog.EventTypeArg.teamMergeFrom super.init(swift: swift) } } -/// (comments) Deleted file comment +/// (team_profile) Merged this team into another team @objc -public class DBXTeamLogEventTypeArgFileDeleteComment: DBXTeamLogEventTypeArg { +public class DBXTeamLogEventTypeArgTeamMergeTo: DBXTeamLogEventTypeArg { @objc public init() { - let swift = TeamLog.EventTypeArg.fileDeleteComment + let swift = TeamLog.EventTypeArg.teamMergeTo super.init(swift: swift) } } -/// (comments) Edited file comment +/// (team_profile) Added team background to display on shared link headers @objc -public class DBXTeamLogEventTypeArgFileEditComment: DBXTeamLogEventTypeArg { +public class DBXTeamLogEventTypeArgTeamProfileAddBackground: DBXTeamLogEventTypeArg { @objc public init() { - let swift = TeamLog.EventTypeArg.fileEditComment + let swift = TeamLog.EventTypeArg.teamProfileAddBackground super.init(swift: swift) } } -/// (comments) Liked file comment (deprecated, no longer logged) +/// (team_profile) Added team logo to display on shared link headers @objc -public class DBXTeamLogEventTypeArgFileLikeComment: DBXTeamLogEventTypeArg { +public class DBXTeamLogEventTypeArgTeamProfileAddLogo: DBXTeamLogEventTypeArg { @objc public init() { - let swift = TeamLog.EventTypeArg.fileLikeComment + let swift = TeamLog.EventTypeArg.teamProfileAddLogo super.init(swift: swift) } } -/// (comments) Resolved file comment +/// (team_profile) Changed team background displayed on shared link headers @objc -public class DBXTeamLogEventTypeArgFileResolveComment: DBXTeamLogEventTypeArg { +public class DBXTeamLogEventTypeArgTeamProfileChangeBackground: DBXTeamLogEventTypeArg { @objc public init() { - let swift = TeamLog.EventTypeArg.fileResolveComment + let swift = TeamLog.EventTypeArg.teamProfileChangeBackground super.init(swift: swift) } } -/// (comments) Unliked file comment (deprecated, no longer logged) +/// (team_profile) Changed default language for team @objc -public class DBXTeamLogEventTypeArgFileUnlikeComment: DBXTeamLogEventTypeArg { +public class DBXTeamLogEventTypeArgTeamProfileChangeDefaultLanguage: DBXTeamLogEventTypeArg { @objc public init() { - let swift = TeamLog.EventTypeArg.fileUnlikeComment + let swift = TeamLog.EventTypeArg.teamProfileChangeDefaultLanguage super.init(swift: swift) } } -/// (comments) Unresolved file comment +/// (team_profile) Changed team logo displayed on shared link headers @objc -public class DBXTeamLogEventTypeArgFileUnresolveComment: DBXTeamLogEventTypeArg { +public class DBXTeamLogEventTypeArgTeamProfileChangeLogo: DBXTeamLogEventTypeArg { @objc public init() { - let swift = TeamLog.EventTypeArg.fileUnresolveComment + let swift = TeamLog.EventTypeArg.teamProfileChangeLogo super.init(swift: swift) } } -/// (data_governance) Added folders to policy +/// (team_profile) Changed team name @objc -public class DBXTeamLogEventTypeArgGovernancePolicyAddFolders: DBXTeamLogEventTypeArg { +public class DBXTeamLogEventTypeArgTeamProfileChangeName: DBXTeamLogEventTypeArg { @objc public init() { - let swift = TeamLog.EventTypeArg.governancePolicyAddFolders + let swift = TeamLog.EventTypeArg.teamProfileChangeName super.init(swift: swift) } } -/// (data_governance) Couldn't add a folder to a policy +/// (team_profile) Removed team background displayed on shared link headers @objc -public class DBXTeamLogEventTypeArgGovernancePolicyAddFolderFailed: DBXTeamLogEventTypeArg { +public class DBXTeamLogEventTypeArgTeamProfileRemoveBackground: DBXTeamLogEventTypeArg { @objc public init() { - let swift = TeamLog.EventTypeArg.governancePolicyAddFolderFailed + let swift = TeamLog.EventTypeArg.teamProfileRemoveBackground super.init(swift: swift) } } -/// (data_governance) Content disposed +/// (team_profile) Removed team logo displayed on shared link headers @objc -public class DBXTeamLogEventTypeArgGovernancePolicyContentDisposed: DBXTeamLogEventTypeArg { +public class DBXTeamLogEventTypeArgTeamProfileRemoveLogo: DBXTeamLogEventTypeArg { @objc public init() { - let swift = TeamLog.EventTypeArg.governancePolicyContentDisposed + let swift = TeamLog.EventTypeArg.teamProfileRemoveLogo super.init(swift: swift) } } -/// (data_governance) Activated a new policy +/// (tfa) Added passkey for login @objc -public class DBXTeamLogEventTypeArgGovernancePolicyCreate: DBXTeamLogEventTypeArg { +public class DBXTeamLogEventTypeArgPasskeyAdd: DBXTeamLogEventTypeArg { @objc public init() { - let swift = TeamLog.EventTypeArg.governancePolicyCreate + let swift = TeamLog.EventTypeArg.passkeyAdd super.init(swift: swift) } } -/// (data_governance) Deleted a policy +/// (tfa) Removed passkey for login @objc -public class DBXTeamLogEventTypeArgGovernancePolicyDelete: DBXTeamLogEventTypeArg { +public class DBXTeamLogEventTypeArgPasskeyRemove: DBXTeamLogEventTypeArg { @objc public init() { - let swift = TeamLog.EventTypeArg.governancePolicyDelete + let swift = TeamLog.EventTypeArg.passkeyRemove super.init(swift: swift) } } -/// (data_governance) Edited policy +/// (tfa) Added backup phone for two-factor authentication @objc -public class DBXTeamLogEventTypeArgGovernancePolicyEditDetails: DBXTeamLogEventTypeArg { +public class DBXTeamLogEventTypeArgTfaAddBackupPhone: DBXTeamLogEventTypeArg { @objc public init() { - let swift = TeamLog.EventTypeArg.governancePolicyEditDetails + let swift = TeamLog.EventTypeArg.tfaAddBackupPhone super.init(swift: swift) } } -/// (data_governance) Changed policy duration +/// (tfa) Added security key for two-factor authentication @objc -public class DBXTeamLogEventTypeArgGovernancePolicyEditDuration: DBXTeamLogEventTypeArg { +public class DBXTeamLogEventTypeArgTfaAddSecurityKey: DBXTeamLogEventTypeArg { @objc public init() { - let swift = TeamLog.EventTypeArg.governancePolicyEditDuration + let swift = TeamLog.EventTypeArg.tfaAddSecurityKey super.init(swift: swift) } } -/// (data_governance) Created a policy download +/// (tfa) Changed backup phone for two-factor authentication @objc -public class DBXTeamLogEventTypeArgGovernancePolicyExportCreated: DBXTeamLogEventTypeArg { +public class DBXTeamLogEventTypeArgTfaChangeBackupPhone: DBXTeamLogEventTypeArg { @objc public init() { - let swift = TeamLog.EventTypeArg.governancePolicyExportCreated + let swift = TeamLog.EventTypeArg.tfaChangeBackupPhone super.init(swift: swift) } } -/// (data_governance) Removed a policy download +/// (tfa) Enabled/disabled/changed two-factor authentication setting @objc -public class DBXTeamLogEventTypeArgGovernancePolicyExportRemoved: DBXTeamLogEventTypeArg { +public class DBXTeamLogEventTypeArgTfaChangeStatus: DBXTeamLogEventTypeArg { @objc public init() { - let swift = TeamLog.EventTypeArg.governancePolicyExportRemoved + let swift = TeamLog.EventTypeArg.tfaChangeStatus super.init(swift: swift) } } -/// (data_governance) Removed folders from policy +/// (tfa) Removed backup phone for two-factor authentication @objc -public class DBXTeamLogEventTypeArgGovernancePolicyRemoveFolders: DBXTeamLogEventTypeArg { +public class DBXTeamLogEventTypeArgTfaRemoveBackupPhone: DBXTeamLogEventTypeArg { @objc public init() { - let swift = TeamLog.EventTypeArg.governancePolicyRemoveFolders + let swift = TeamLog.EventTypeArg.tfaRemoveBackupPhone super.init(swift: swift) } } -/// (data_governance) Created a summary report for a policy +/// (tfa) Removed security key for two-factor authentication @objc -public class DBXTeamLogEventTypeArgGovernancePolicyReportCreated: DBXTeamLogEventTypeArg { +public class DBXTeamLogEventTypeArgTfaRemoveSecurityKey: DBXTeamLogEventTypeArg { @objc public init() { - let swift = TeamLog.EventTypeArg.governancePolicyReportCreated + let swift = TeamLog.EventTypeArg.tfaRemoveSecurityKey super.init(swift: swift) } } -/// (data_governance) Downloaded content from a policy +/// (tfa) Reset two-factor authentication for team member @objc -public class DBXTeamLogEventTypeArgGovernancePolicyZipPartDownloaded: DBXTeamLogEventTypeArg { +public class DBXTeamLogEventTypeArgTfaReset: DBXTeamLogEventTypeArg { @objc public init() { - let swift = TeamLog.EventTypeArg.governancePolicyZipPartDownloaded + let swift = TeamLog.EventTypeArg.tfaReset super.init(swift: swift) } } -/// (data_governance) Activated a hold +/// (trusted_teams) Changed enterprise admin role @objc -public class DBXTeamLogEventTypeArgLegalHoldsActivateAHold: DBXTeamLogEventTypeArg { +public class DBXTeamLogEventTypeArgChangedEnterpriseAdminRole: DBXTeamLogEventTypeArg { @objc public init() { - let swift = TeamLog.EventTypeArg.legalHoldsActivateAHold + let swift = TeamLog.EventTypeArg.changedEnterpriseAdminRole super.init(swift: swift) } } -/// (data_governance) Added members to a hold +/// (trusted_teams) Changed enterprise-connected team status @objc -public class DBXTeamLogEventTypeArgLegalHoldsAddMembers: DBXTeamLogEventTypeArg { +public class DBXTeamLogEventTypeArgChangedEnterpriseConnectedTeamStatus: DBXTeamLogEventTypeArg { @objc public init() { - let swift = TeamLog.EventTypeArg.legalHoldsAddMembers + let swift = TeamLog.EventTypeArg.changedEnterpriseConnectedTeamStatus super.init(swift: swift) } } -/// (data_governance) Edited details for a hold +/// (trusted_teams) Ended enterprise admin session @objc -public class DBXTeamLogEventTypeArgLegalHoldsChangeHoldDetails: DBXTeamLogEventTypeArg { +public class DBXTeamLogEventTypeArgEndedEnterpriseAdminSession: DBXTeamLogEventTypeArg { @objc public init() { - let swift = TeamLog.EventTypeArg.legalHoldsChangeHoldDetails + let swift = TeamLog.EventTypeArg.endedEnterpriseAdminSession super.init(swift: swift) } } -/// (data_governance) Renamed a hold +/// (trusted_teams) Ended enterprise admin session (deprecated, replaced by 'Ended enterprise admin session') @objc -public class DBXTeamLogEventTypeArgLegalHoldsChangeHoldName: DBXTeamLogEventTypeArg { +public class DBXTeamLogEventTypeArgEndedEnterpriseAdminSessionDeprecated: DBXTeamLogEventTypeArg { @objc public init() { - let swift = TeamLog.EventTypeArg.legalHoldsChangeHoldName + let swift = TeamLog.EventTypeArg.endedEnterpriseAdminSessionDeprecated super.init(swift: swift) } } -/// (data_governance) Exported hold +/// (trusted_teams) Changed who can update a setting @objc -public class DBXTeamLogEventTypeArgLegalHoldsExportAHold: DBXTeamLogEventTypeArg { +public class DBXTeamLogEventTypeArgEnterpriseSettingsLocking: DBXTeamLogEventTypeArg { @objc public init() { - let swift = TeamLog.EventTypeArg.legalHoldsExportAHold + let swift = TeamLog.EventTypeArg.enterpriseSettingsLocking super.init(swift: swift) } } -/// (data_governance) Canceled export for a hold +/// (trusted_teams) Changed guest team admin status @objc -public class DBXTeamLogEventTypeArgLegalHoldsExportCancelled: DBXTeamLogEventTypeArg { +public class DBXTeamLogEventTypeArgGuestAdminChangeStatus: DBXTeamLogEventTypeArg { @objc public init() { - let swift = TeamLog.EventTypeArg.legalHoldsExportCancelled + let swift = TeamLog.EventTypeArg.guestAdminChangeStatus super.init(swift: swift) } } -/// (data_governance) Downloaded export for a hold +/// (trusted_teams) Started enterprise admin session @objc -public class DBXTeamLogEventTypeArgLegalHoldsExportDownloaded: DBXTeamLogEventTypeArg { +public class DBXTeamLogEventTypeArgStartedEnterpriseAdminSession: DBXTeamLogEventTypeArg { @objc public init() { - let swift = TeamLog.EventTypeArg.legalHoldsExportDownloaded + let swift = TeamLog.EventTypeArg.startedEnterpriseAdminSession super.init(swift: swift) } } -/// (data_governance) Removed export for a hold +/// (trusted_teams) Accepted a team merge request @objc -public class DBXTeamLogEventTypeArgLegalHoldsExportRemoved: DBXTeamLogEventTypeArg { +public class DBXTeamLogEventTypeArgTeamMergeRequestAccepted: DBXTeamLogEventTypeArg { @objc public init() { - let swift = TeamLog.EventTypeArg.legalHoldsExportRemoved + let swift = TeamLog.EventTypeArg.teamMergeRequestAccepted super.init(swift: swift) } } -/// (data_governance) Released a hold +/// (trusted_teams) Accepted a team merge request (deprecated, replaced by 'Accepted a team merge request') @objc -public class DBXTeamLogEventTypeArgLegalHoldsReleaseAHold: DBXTeamLogEventTypeArg { +public class DBXTeamLogEventTypeArgTeamMergeRequestAcceptedShownToPrimaryTeam: DBXTeamLogEventTypeArg { @objc public init() { - let swift = TeamLog.EventTypeArg.legalHoldsReleaseAHold + let swift = TeamLog.EventTypeArg.teamMergeRequestAcceptedShownToPrimaryTeam super.init(swift: swift) } } -/// (data_governance) Removed members from a hold +/// (trusted_teams) Accepted a team merge request (deprecated, replaced by 'Accepted a team merge request') @objc -public class DBXTeamLogEventTypeArgLegalHoldsRemoveMembers: DBXTeamLogEventTypeArg { +public class DBXTeamLogEventTypeArgTeamMergeRequestAcceptedShownToSecondaryTeam: DBXTeamLogEventTypeArg { @objc public init() { - let swift = TeamLog.EventTypeArg.legalHoldsRemoveMembers + let swift = TeamLog.EventTypeArg.teamMergeRequestAcceptedShownToSecondaryTeam super.init(swift: swift) } } -/// (data_governance) Created a summary report for a hold +/// (trusted_teams) Automatically canceled team merge request @objc -public class DBXTeamLogEventTypeArgLegalHoldsReportAHold: DBXTeamLogEventTypeArg { +public class DBXTeamLogEventTypeArgTeamMergeRequestAutoCanceled: DBXTeamLogEventTypeArg { @objc public init() { - let swift = TeamLog.EventTypeArg.legalHoldsReportAHold + let swift = TeamLog.EventTypeArg.teamMergeRequestAutoCanceled super.init(swift: swift) } } -/// (devices) Changed IP address associated with active desktop session +/// (trusted_teams) Canceled a team merge request @objc -public class DBXTeamLogEventTypeArgDeviceChangeIpDesktop: DBXTeamLogEventTypeArg { +public class DBXTeamLogEventTypeArgTeamMergeRequestCanceled: DBXTeamLogEventTypeArg { @objc public init() { - let swift = TeamLog.EventTypeArg.deviceChangeIpDesktop + let swift = TeamLog.EventTypeArg.teamMergeRequestCanceled super.init(swift: swift) } } -/// (devices) Changed IP address associated with active mobile session +/// (trusted_teams) Canceled a team merge request (deprecated, replaced by 'Canceled a team merge request') @objc -public class DBXTeamLogEventTypeArgDeviceChangeIpMobile: DBXTeamLogEventTypeArg { +public class DBXTeamLogEventTypeArgTeamMergeRequestCanceledShownToPrimaryTeam: DBXTeamLogEventTypeArg { @objc public init() { - let swift = TeamLog.EventTypeArg.deviceChangeIpMobile + let swift = TeamLog.EventTypeArg.teamMergeRequestCanceledShownToPrimaryTeam super.init(swift: swift) } } -/// (devices) Changed IP address associated with active web session +/// (trusted_teams) Canceled a team merge request (deprecated, replaced by 'Canceled a team merge request') @objc -public class DBXTeamLogEventTypeArgDeviceChangeIpWeb: DBXTeamLogEventTypeArg { +public class DBXTeamLogEventTypeArgTeamMergeRequestCanceledShownToSecondaryTeam: DBXTeamLogEventTypeArg { @objc public init() { - let swift = TeamLog.EventTypeArg.deviceChangeIpWeb + let swift = TeamLog.EventTypeArg.teamMergeRequestCanceledShownToSecondaryTeam super.init(swift: swift) } } -/// (devices) Failed to delete all files from unlinked device +/// (trusted_teams) Team merge request expired @objc -public class DBXTeamLogEventTypeArgDeviceDeleteOnUnlinkFail: DBXTeamLogEventTypeArg { +public class DBXTeamLogEventTypeArgTeamMergeRequestExpired: DBXTeamLogEventTypeArg { @objc public init() { - let swift = TeamLog.EventTypeArg.deviceDeleteOnUnlinkFail + let swift = TeamLog.EventTypeArg.teamMergeRequestExpired super.init(swift: swift) } } -/// (devices) Deleted all files from unlinked device +/// (trusted_teams) Team merge request expired (deprecated, replaced by 'Team merge request expired') @objc -public class DBXTeamLogEventTypeArgDeviceDeleteOnUnlinkSuccess: DBXTeamLogEventTypeArg { +public class DBXTeamLogEventTypeArgTeamMergeRequestExpiredShownToPrimaryTeam: DBXTeamLogEventTypeArg { @objc public init() { - let swift = TeamLog.EventTypeArg.deviceDeleteOnUnlinkSuccess + let swift = TeamLog.EventTypeArg.teamMergeRequestExpiredShownToPrimaryTeam super.init(swift: swift) } } -/// (devices) Failed to link device +/// (trusted_teams) Team merge request expired (deprecated, replaced by 'Team merge request expired') @objc -public class DBXTeamLogEventTypeArgDeviceLinkFail: DBXTeamLogEventTypeArg { +public class DBXTeamLogEventTypeArgTeamMergeRequestExpiredShownToSecondaryTeam: DBXTeamLogEventTypeArg { @objc public init() { - let swift = TeamLog.EventTypeArg.deviceLinkFail + let swift = TeamLog.EventTypeArg.teamMergeRequestExpiredShownToSecondaryTeam super.init(swift: swift) } } -/// (devices) Linked device +/// (trusted_teams) Rejected a team merge request (deprecated, no longer logged) @objc -public class DBXTeamLogEventTypeArgDeviceLinkSuccess: DBXTeamLogEventTypeArg { +public class DBXTeamLogEventTypeArgTeamMergeRequestRejectedShownToPrimaryTeam: DBXTeamLogEventTypeArg { @objc public init() { - let swift = TeamLog.EventTypeArg.deviceLinkSuccess + let swift = TeamLog.EventTypeArg.teamMergeRequestRejectedShownToPrimaryTeam super.init(swift: swift) } } -/// (devices) Disabled device management (deprecated, no longer logged) +/// (trusted_teams) Rejected a team merge request (deprecated, no longer logged) @objc -public class DBXTeamLogEventTypeArgDeviceManagementDisabled: DBXTeamLogEventTypeArg { +public class DBXTeamLogEventTypeArgTeamMergeRequestRejectedShownToSecondaryTeam: DBXTeamLogEventTypeArg { @objc public init() { - let swift = TeamLog.EventTypeArg.deviceManagementDisabled + let swift = TeamLog.EventTypeArg.teamMergeRequestRejectedShownToSecondaryTeam super.init(swift: swift) } } -/// (devices) Enabled device management (deprecated, no longer logged) +/// (trusted_teams) Sent a team merge request reminder @objc -public class DBXTeamLogEventTypeArgDeviceManagementEnabled: DBXTeamLogEventTypeArg { +public class DBXTeamLogEventTypeArgTeamMergeRequestReminder: DBXTeamLogEventTypeArg { @objc public init() { - let swift = TeamLog.EventTypeArg.deviceManagementEnabled + let swift = TeamLog.EventTypeArg.teamMergeRequestReminder super.init(swift: swift) } } -/// (devices) Enabled/disabled backup for computer +/// (trusted_teams) Sent a team merge request reminder (deprecated, replaced by 'Sent a team merge request + /// reminder') @objc -public class DBXTeamLogEventTypeArgDeviceSyncBackupStatusChanged: DBXTeamLogEventTypeArg { +public class DBXTeamLogEventTypeArgTeamMergeRequestReminderShownToPrimaryTeam: DBXTeamLogEventTypeArg { @objc public init() { - let swift = TeamLog.EventTypeArg.deviceSyncBackupStatusChanged + let swift = TeamLog.EventTypeArg.teamMergeRequestReminderShownToPrimaryTeam super.init(swift: swift) } } -/// (devices) Disconnected device +/// (trusted_teams) Sent a team merge request reminder (deprecated, replaced by 'Sent a team merge request + /// reminder') @objc -public class DBXTeamLogEventTypeArgDeviceUnlink: DBXTeamLogEventTypeArg { +public class DBXTeamLogEventTypeArgTeamMergeRequestReminderShownToSecondaryTeam: DBXTeamLogEventTypeArg { @objc public init() { - let swift = TeamLog.EventTypeArg.deviceUnlink + let swift = TeamLog.EventTypeArg.teamMergeRequestReminderShownToSecondaryTeam super.init(swift: swift) } } -/// (devices) Exported passwords +/// (trusted_teams) Canceled the team merge @objc -public class DBXTeamLogEventTypeArgDropboxPasswordsExported: DBXTeamLogEventTypeArg { +public class DBXTeamLogEventTypeArgTeamMergeRequestRevoked: DBXTeamLogEventTypeArg { @objc public init() { - let swift = TeamLog.EventTypeArg.dropboxPasswordsExported + let swift = TeamLog.EventTypeArg.teamMergeRequestRevoked super.init(swift: swift) } } -/// (devices) Enrolled new Dropbox Passwords device +/// (trusted_teams) Requested to merge their Dropbox team into yours @objc -public class DBXTeamLogEventTypeArgDropboxPasswordsNewDeviceEnrolled: DBXTeamLogEventTypeArg { +public class DBXTeamLogEventTypeArgTeamMergeRequestSentShownToPrimaryTeam: DBXTeamLogEventTypeArg { @objc public init() { - let swift = TeamLog.EventTypeArg.dropboxPasswordsNewDeviceEnrolled + let swift = TeamLog.EventTypeArg.teamMergeRequestSentShownToPrimaryTeam super.init(swift: swift) } } -/// (devices) Refreshed auth token used for setting up EMM +/// (trusted_teams) Requested to merge your team into another Dropbox team @objc -public class DBXTeamLogEventTypeArgEmmRefreshAuthToken: DBXTeamLogEventTypeArg { +public class DBXTeamLogEventTypeArgTeamMergeRequestSentShownToSecondaryTeam: DBXTeamLogEventTypeArg { @objc public init() { - let swift = TeamLog.EventTypeArg.emmRefreshAuthToken + let swift = TeamLog.EventTypeArg.teamMergeRequestSentShownToSecondaryTeam super.init(swift: swift) } } -/// (devices) Checked external drive backup eligibility status +/// An unspecified error. @objc -public class DBXTeamLogEventTypeArgExternalDriveBackupEligibilityStatusChecked: DBXTeamLogEventTypeArg { +public class DBXTeamLogEventTypeArgOther: DBXTeamLogEventTypeArg { @objc public init() { - let swift = TeamLog.EventTypeArg.externalDriveBackupEligibilityStatusChecked + let swift = TeamLog.EventTypeArg.other super.init(swift: swift) } } -/// (devices) Modified external drive backup +/// Created member data report. @objc -public class DBXTeamLogEventTypeArgExternalDriveBackupStatusChanged: DBXTeamLogEventTypeArg { +public class DBXTeamLogExportMembersReportDetails: NSObject { + + let swift: TeamLog.ExportMembersReportDetails + + public init(swift: TeamLog.ExportMembersReportDetails) { + self.swift = swift + } + + @objc - public init() { - let swift = TeamLog.EventTypeArg.externalDriveBackupStatusChanged - super.init(swift: swift) + public override var description: String { swift.description } +} + +/// Failed to create members data report. +@objc +public class DBXTeamLogExportMembersReportFailDetails: NSObject { + /// Failure reason. + @objc + public var failureReason: DBXTeamTeamReportFailureReason { DBXTeamTeamReportFailureReason(swift: swift.failureReason) } + + @objc + public init(failureReason: DBXTeamTeamReportFailureReason) { + self.swift = TeamLog.ExportMembersReportFailDetails(failureReason: failureReason.swift) + } + + let swift: TeamLog.ExportMembersReportFailDetails + + public init(swift: TeamLog.ExportMembersReportFailDetails) { + self.swift = swift } + + + @objc + public override var description: String { swift.description } } -/// (domains) Granted/revoked option to enable account capture on team domains +/// Objective-C compatible ExportMembersReportFailType struct @objc -public class DBXTeamLogEventTypeArgAccountCaptureChangeAvailability: DBXTeamLogEventTypeArg { +public class DBXTeamLogExportMembersReportFailType: NSObject { + /// (no description) @objc - public init() { - let swift = TeamLog.EventTypeArg.accountCaptureChangeAvailability - super.init(swift: swift) + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.ExportMembersReportFailType(description_: description_) + } + + let swift: TeamLog.ExportMembersReportFailType + + public init(swift: TeamLog.ExportMembersReportFailType) { + self.swift = swift } + + + @objc + public override var description: String { swift.description } } -/// (domains) Account-captured user migrated account to team +/// Objective-C compatible ExportMembersReportType struct @objc -public class DBXTeamLogEventTypeArgAccountCaptureMigrateAccount: DBXTeamLogEventTypeArg { +public class DBXTeamLogExportMembersReportType: NSObject { + /// (no description) @objc - public init() { - let swift = TeamLog.EventTypeArg.accountCaptureMigrateAccount - super.init(swift: swift) + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.ExportMembersReportType(description_: description_) + } + + let swift: TeamLog.ExportMembersReportType + + public init(swift: TeamLog.ExportMembersReportType) { + self.swift = swift } + + + @objc + public override var description: String { swift.description } } -/// (domains) Sent account capture email to all unmanaged members +/// Accepted/opted out of extended version history. @objc -public class DBXTeamLogEventTypeArgAccountCaptureNotificationEmailsSent: DBXTeamLogEventTypeArg { +public class DBXTeamLogExtendedVersionHistoryChangePolicyDetails: NSObject { + /// New extended version history policy. @objc - public init() { - let swift = TeamLog.EventTypeArg.accountCaptureNotificationEmailsSent - super.init(swift: swift) + public var newValue: DBXTeamLogExtendedVersionHistoryPolicy { DBXTeamLogExtendedVersionHistoryPolicy(swift: swift.newValue) } + /// Previous extended version history policy. Might be missing due to historical data gap. + @objc + public var previousValue: DBXTeamLogExtendedVersionHistoryPolicy? { guard let swift = swift.previousValue else { return nil }; return DBXTeamLogExtendedVersionHistoryPolicy(swift: swift) } + + @objc + public init(newValue: DBXTeamLogExtendedVersionHistoryPolicy, previousValue: DBXTeamLogExtendedVersionHistoryPolicy?) { + self.swift = TeamLog.ExtendedVersionHistoryChangePolicyDetails(newValue: newValue.swift, previousValue: previousValue?.swift) + } + + let swift: TeamLog.ExtendedVersionHistoryChangePolicyDetails + + public init(swift: TeamLog.ExtendedVersionHistoryChangePolicyDetails) { + self.swift = swift } + + + @objc + public override var description: String { swift.description } } -/// (domains) Account-captured user changed account email to personal email +/// Objective-C compatible ExtendedVersionHistoryChangePolicyType struct @objc -public class DBXTeamLogEventTypeArgAccountCaptureRelinquishAccount: DBXTeamLogEventTypeArg { +public class DBXTeamLogExtendedVersionHistoryChangePolicyType: NSObject { + /// (no description) @objc - public init() { - let swift = TeamLog.EventTypeArg.accountCaptureRelinquishAccount - super.init(swift: swift) + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.ExtendedVersionHistoryChangePolicyType(description_: description_) + } + + let swift: TeamLog.ExtendedVersionHistoryChangePolicyType + + public init(swift: TeamLog.ExtendedVersionHistoryChangePolicyType) { + self.swift = swift } + + + @objc + public override var description: String { swift.description } } -/// (domains) Disabled domain invites (deprecated, no longer logged) +/// Objective-C compatible ExtendedVersionHistoryPolicy union @objc -public class DBXTeamLogEventTypeArgDisabledDomainInvites: DBXTeamLogEventTypeArg { +public class DBXTeamLogExtendedVersionHistoryPolicy: NSObject { + let swift: TeamLog.ExtendedVersionHistoryPolicy + + public init(swift: TeamLog.ExtendedVersionHistoryPolicy) { + self.swift = swift + } + + public static func factory(swift: TeamLog.ExtendedVersionHistoryPolicy) -> DBXTeamLogExtendedVersionHistoryPolicy { + switch swift { + case .explicitlyLimited: + return DBXTeamLogExtendedVersionHistoryPolicyExplicitlyLimited() + case .explicitlyUnlimited: + return DBXTeamLogExtendedVersionHistoryPolicyExplicitlyUnlimited() + case .implicitlyLimited: + return DBXTeamLogExtendedVersionHistoryPolicyImplicitlyLimited() + case .implicitlyUnlimited: + return DBXTeamLogExtendedVersionHistoryPolicyImplicitlyUnlimited() + case .other: + return DBXTeamLogExtendedVersionHistoryPolicyOther() + } + } + @objc - public init() { - let swift = TeamLog.EventTypeArg.disabledDomainInvites - super.init(swift: swift) + public override var description: String { swift.description } + + @objc + public var asExplicitlyLimited: DBXTeamLogExtendedVersionHistoryPolicyExplicitlyLimited? { + return self as? DBXTeamLogExtendedVersionHistoryPolicyExplicitlyLimited + } + + @objc + public var asExplicitlyUnlimited: DBXTeamLogExtendedVersionHistoryPolicyExplicitlyUnlimited? { + return self as? DBXTeamLogExtendedVersionHistoryPolicyExplicitlyUnlimited + } + + @objc + public var asImplicitlyLimited: DBXTeamLogExtendedVersionHistoryPolicyImplicitlyLimited? { + return self as? DBXTeamLogExtendedVersionHistoryPolicyImplicitlyLimited + } + + @objc + public var asImplicitlyUnlimited: DBXTeamLogExtendedVersionHistoryPolicyImplicitlyUnlimited? { + return self as? DBXTeamLogExtendedVersionHistoryPolicyImplicitlyUnlimited + } + + @objc + public var asOther: DBXTeamLogExtendedVersionHistoryPolicyOther? { + return self as? DBXTeamLogExtendedVersionHistoryPolicyOther } } -/// (domains) Approved user's request to join team +/// An unspecified error. @objc -public class DBXTeamLogEventTypeArgDomainInvitesApproveRequestToJoinTeam: DBXTeamLogEventTypeArg { +public class DBXTeamLogExtendedVersionHistoryPolicyExplicitlyLimited: DBXTeamLogExtendedVersionHistoryPolicy { @objc public init() { - let swift = TeamLog.EventTypeArg.domainInvitesApproveRequestToJoinTeam + let swift = TeamLog.ExtendedVersionHistoryPolicy.explicitlyLimited super.init(swift: swift) } } -/// (domains) Declined user's request to join team +/// An unspecified error. @objc -public class DBXTeamLogEventTypeArgDomainInvitesDeclineRequestToJoinTeam: DBXTeamLogEventTypeArg { +public class DBXTeamLogExtendedVersionHistoryPolicyExplicitlyUnlimited: DBXTeamLogExtendedVersionHistoryPolicy { @objc public init() { - let swift = TeamLog.EventTypeArg.domainInvitesDeclineRequestToJoinTeam + let swift = TeamLog.ExtendedVersionHistoryPolicy.explicitlyUnlimited super.init(swift: swift) } } -/// (domains) Sent domain invites to existing domain accounts (deprecated, no longer logged) +/// An unspecified error. @objc -public class DBXTeamLogEventTypeArgDomainInvitesEmailExistingUsers: DBXTeamLogEventTypeArg { +public class DBXTeamLogExtendedVersionHistoryPolicyImplicitlyLimited: DBXTeamLogExtendedVersionHistoryPolicy { @objc public init() { - let swift = TeamLog.EventTypeArg.domainInvitesEmailExistingUsers + let swift = TeamLog.ExtendedVersionHistoryPolicy.implicitlyLimited super.init(swift: swift) } } -/// (domains) Requested to join team +/// An unspecified error. @objc -public class DBXTeamLogEventTypeArgDomainInvitesRequestToJoinTeam: DBXTeamLogEventTypeArg { +public class DBXTeamLogExtendedVersionHistoryPolicyImplicitlyUnlimited: DBXTeamLogExtendedVersionHistoryPolicy { @objc public init() { - let swift = TeamLog.EventTypeArg.domainInvitesRequestToJoinTeam + let swift = TeamLog.ExtendedVersionHistoryPolicy.implicitlyUnlimited super.init(swift: swift) } } -/// (domains) Disabled "Automatically invite new users" (deprecated, no longer logged) +/// An unspecified error. @objc -public class DBXTeamLogEventTypeArgDomainInvitesSetInviteNewUserPrefToNo: DBXTeamLogEventTypeArg { +public class DBXTeamLogExtendedVersionHistoryPolicyOther: DBXTeamLogExtendedVersionHistoryPolicy { @objc public init() { - let swift = TeamLog.EventTypeArg.domainInvitesSetInviteNewUserPrefToNo + let swift = TeamLog.ExtendedVersionHistoryPolicy.other super.init(swift: swift) } } -/// (domains) Enabled "Automatically invite new users" (deprecated, no longer logged) +/// External Drive Backup eligibility status @objc -public class DBXTeamLogEventTypeArgDomainInvitesSetInviteNewUserPrefToYes: DBXTeamLogEventTypeArg { +public class DBXTeamLogExternalDriveBackupEligibilityStatus: NSObject { + let swift: TeamLog.ExternalDriveBackupEligibilityStatus + + public init(swift: TeamLog.ExternalDriveBackupEligibilityStatus) { + self.swift = swift + } + + public static func factory(swift: TeamLog.ExternalDriveBackupEligibilityStatus) -> DBXTeamLogExternalDriveBackupEligibilityStatus { + switch swift { + case .exceedLicenseCap: + return DBXTeamLogExternalDriveBackupEligibilityStatusExceedLicenseCap() + case .skip: + return DBXTeamLogExternalDriveBackupEligibilityStatusSkip() + case .success: + return DBXTeamLogExternalDriveBackupEligibilityStatusSuccess() + case .other: + return DBXTeamLogExternalDriveBackupEligibilityStatusOther() + } + } + @objc - public init() { - let swift = TeamLog.EventTypeArg.domainInvitesSetInviteNewUserPrefToYes - super.init(swift: swift) + public override var description: String { swift.description } + + @objc + public var asExceedLicenseCap: DBXTeamLogExternalDriveBackupEligibilityStatusExceedLicenseCap? { + return self as? DBXTeamLogExternalDriveBackupEligibilityStatusExceedLicenseCap + } + + @objc + public var asSkip: DBXTeamLogExternalDriveBackupEligibilityStatusSkip? { + return self as? DBXTeamLogExternalDriveBackupEligibilityStatusSkip + } + + @objc + public var asSuccess: DBXTeamLogExternalDriveBackupEligibilityStatusSuccess? { + return self as? DBXTeamLogExternalDriveBackupEligibilityStatusSuccess + } + + @objc + public var asOther: DBXTeamLogExternalDriveBackupEligibilityStatusOther? { + return self as? DBXTeamLogExternalDriveBackupEligibilityStatusOther } } -/// (domains) Failed to verify team domain +/// An unspecified error. @objc -public class DBXTeamLogEventTypeArgDomainVerificationAddDomainFail: DBXTeamLogEventTypeArg { +public class DBXTeamLogExternalDriveBackupEligibilityStatusExceedLicenseCap: DBXTeamLogExternalDriveBackupEligibilityStatus { @objc public init() { - let swift = TeamLog.EventTypeArg.domainVerificationAddDomainFail + let swift = TeamLog.ExternalDriveBackupEligibilityStatus.exceedLicenseCap super.init(swift: swift) } } -/// (domains) Verified team domain +/// An unspecified error. @objc -public class DBXTeamLogEventTypeArgDomainVerificationAddDomainSuccess: DBXTeamLogEventTypeArg { +public class DBXTeamLogExternalDriveBackupEligibilityStatusSkip: DBXTeamLogExternalDriveBackupEligibilityStatus { @objc public init() { - let swift = TeamLog.EventTypeArg.domainVerificationAddDomainSuccess + let swift = TeamLog.ExternalDriveBackupEligibilityStatus.skip super.init(swift: swift) } } -/// (domains) Removed domain from list of verified team domains +/// An unspecified error. @objc -public class DBXTeamLogEventTypeArgDomainVerificationRemoveDomain: DBXTeamLogEventTypeArg { +public class DBXTeamLogExternalDriveBackupEligibilityStatusSuccess: DBXTeamLogExternalDriveBackupEligibilityStatus { @objc public init() { - let swift = TeamLog.EventTypeArg.domainVerificationRemoveDomain + let swift = TeamLog.ExternalDriveBackupEligibilityStatus.success super.init(swift: swift) } } -/// (domains) Enabled domain invites (deprecated, no longer logged) +/// An unspecified error. @objc -public class DBXTeamLogEventTypeArgEnabledDomainInvites: DBXTeamLogEventTypeArg { +public class DBXTeamLogExternalDriveBackupEligibilityStatusOther: DBXTeamLogExternalDriveBackupEligibilityStatus { @objc public init() { - let swift = TeamLog.EventTypeArg.enabledDomainInvites + let swift = TeamLog.ExternalDriveBackupEligibilityStatus.other super.init(swift: swift) } } -/// (encryption) Canceled team encryption key deletion +/// Checked external drive backup eligibility status. @objc -public class DBXTeamLogEventTypeArgTeamEncryptionKeyCancelKeyDeletion: DBXTeamLogEventTypeArg { +public class DBXTeamLogExternalDriveBackupEligibilityStatusCheckedDetails: NSObject { + /// Device's session logged information. @objc - public init() { - let swift = TeamLog.EventTypeArg.teamEncryptionKeyCancelKeyDeletion - super.init(swift: swift) + public var desktopDeviceSessionInfo: DBXTeamLogDesktopDeviceSessionLogInfo { DBXTeamLogDesktopDeviceSessionLogInfo(swift: swift.desktopDeviceSessionInfo) } + /// Current eligibility status of external drive backup. + @objc + public var status: DBXTeamLogExternalDriveBackupEligibilityStatus { DBXTeamLogExternalDriveBackupEligibilityStatus(swift: swift.status) } + /// Total number of valid external drive backup for all the team members. + @objc + public var numberOfExternalDriveBackup: NSNumber { swift.numberOfExternalDriveBackup as NSNumber } + + @objc + public init(desktopDeviceSessionInfo: DBXTeamLogDesktopDeviceSessionLogInfo, status: DBXTeamLogExternalDriveBackupEligibilityStatus, numberOfExternalDriveBackup: NSNumber) { + self.swift = TeamLog.ExternalDriveBackupEligibilityStatusCheckedDetails(desktopDeviceSessionInfo: desktopDeviceSessionInfo.subSwift, status: status.swift, numberOfExternalDriveBackup: numberOfExternalDriveBackup.uint64Value) + } + + let swift: TeamLog.ExternalDriveBackupEligibilityStatusCheckedDetails + + public init(swift: TeamLog.ExternalDriveBackupEligibilityStatusCheckedDetails) { + self.swift = swift } + + + @objc + public override var description: String { swift.description } } -/// (encryption) Created team encryption key +/// Objective-C compatible ExternalDriveBackupEligibilityStatusCheckedType struct @objc -public class DBXTeamLogEventTypeArgTeamEncryptionKeyCreateKey: DBXTeamLogEventTypeArg { +public class DBXTeamLogExternalDriveBackupEligibilityStatusCheckedType: NSObject { + /// (no description) @objc - public init() { - let swift = TeamLog.EventTypeArg.teamEncryptionKeyCreateKey - super.init(swift: swift) + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.ExternalDriveBackupEligibilityStatusCheckedType(description_: description_) + } + + let swift: TeamLog.ExternalDriveBackupEligibilityStatusCheckedType + + public init(swift: TeamLog.ExternalDriveBackupEligibilityStatusCheckedType) { + self.swift = swift } + + + @objc + public override var description: String { swift.description } } -/// (encryption) Deleted team encryption key -@objc -public class DBXTeamLogEventTypeArgTeamEncryptionKeyDeleteKey: DBXTeamLogEventTypeArg { +/// Policy for controlling team access to external drive backup feature +@objc +public class DBXTeamLogExternalDriveBackupPolicy: NSObject { + let swift: TeamLog.ExternalDriveBackupPolicy + + public init(swift: TeamLog.ExternalDriveBackupPolicy) { + self.swift = swift + } + + public static func factory(swift: TeamLog.ExternalDriveBackupPolicy) -> DBXTeamLogExternalDriveBackupPolicy { + switch swift { + case .default_: + return DBXTeamLogExternalDriveBackupPolicyDefault_() + case .disabled: + return DBXTeamLogExternalDriveBackupPolicyDisabled() + case .enabled: + return DBXTeamLogExternalDriveBackupPolicyEnabled() + case .other: + return DBXTeamLogExternalDriveBackupPolicyOther() + } + } + + @objc + public override var description: String { swift.description } + @objc - public init() { - let swift = TeamLog.EventTypeArg.teamEncryptionKeyDeleteKey - super.init(swift: swift) + public var asDefault_: DBXTeamLogExternalDriveBackupPolicyDefault_? { + return self as? DBXTeamLogExternalDriveBackupPolicyDefault_ } -} -/// (encryption) Disabled team encryption key -@objc -public class DBXTeamLogEventTypeArgTeamEncryptionKeyDisableKey: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.teamEncryptionKeyDisableKey - super.init(swift: swift) + public var asDisabled: DBXTeamLogExternalDriveBackupPolicyDisabled? { + return self as? DBXTeamLogExternalDriveBackupPolicyDisabled } -} -/// (encryption) Enabled team encryption key -@objc -public class DBXTeamLogEventTypeArgTeamEncryptionKeyEnableKey: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.teamEncryptionKeyEnableKey - super.init(swift: swift) + public var asEnabled: DBXTeamLogExternalDriveBackupPolicyEnabled? { + return self as? DBXTeamLogExternalDriveBackupPolicyEnabled } -} -/// (encryption) Rotated team encryption key (deprecated, no longer logged) -@objc -public class DBXTeamLogEventTypeArgTeamEncryptionKeyRotateKey: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.teamEncryptionKeyRotateKey - super.init(swift: swift) + public var asOther: DBXTeamLogExternalDriveBackupPolicyOther? { + return self as? DBXTeamLogExternalDriveBackupPolicyOther } } -/// (encryption) Scheduled encryption key deletion +/// An unspecified error. @objc -public class DBXTeamLogEventTypeArgTeamEncryptionKeyScheduleKeyDeletion: DBXTeamLogEventTypeArg { +public class DBXTeamLogExternalDriveBackupPolicyDefault_: DBXTeamLogExternalDriveBackupPolicy { @objc public init() { - let swift = TeamLog.EventTypeArg.teamEncryptionKeyScheduleKeyDeletion + let swift = TeamLog.ExternalDriveBackupPolicy.default_ super.init(swift: swift) } } -/// (file_operations) Applied naming convention +/// An unspecified error. @objc -public class DBXTeamLogEventTypeArgApplyNamingConvention: DBXTeamLogEventTypeArg { +public class DBXTeamLogExternalDriveBackupPolicyDisabled: DBXTeamLogExternalDriveBackupPolicy { @objc public init() { - let swift = TeamLog.EventTypeArg.applyNamingConvention + let swift = TeamLog.ExternalDriveBackupPolicy.disabled super.init(swift: swift) } } -/// (file_operations) Created folders (deprecated, no longer logged) +/// An unspecified error. @objc -public class DBXTeamLogEventTypeArgCreateFolder: DBXTeamLogEventTypeArg { +public class DBXTeamLogExternalDriveBackupPolicyEnabled: DBXTeamLogExternalDriveBackupPolicy { @objc public init() { - let swift = TeamLog.EventTypeArg.createFolder + let swift = TeamLog.ExternalDriveBackupPolicy.enabled super.init(swift: swift) } } -/// (file_operations) Added files and/or folders +/// An unspecified error. @objc -public class DBXTeamLogEventTypeArgFileAdd: DBXTeamLogEventTypeArg { +public class DBXTeamLogExternalDriveBackupPolicyOther: DBXTeamLogExternalDriveBackupPolicy { @objc public init() { - let swift = TeamLog.EventTypeArg.fileAdd + let swift = TeamLog.ExternalDriveBackupPolicy.other super.init(swift: swift) } } -/// (file_operations) Added files and/or folders from automation +/// Changed external drive backup policy for team. @objc -public class DBXTeamLogEventTypeArgFileAddFromAutomation: DBXTeamLogEventTypeArg { +public class DBXTeamLogExternalDriveBackupPolicyChangedDetails: NSObject { + /// New external drive backup policy. @objc - public init() { - let swift = TeamLog.EventTypeArg.fileAddFromAutomation - super.init(swift: swift) + public var newValue: DBXTeamLogExternalDriveBackupPolicy { DBXTeamLogExternalDriveBackupPolicy(swift: swift.newValue) } + /// Previous external drive backup policy. + @objc + public var previousValue: DBXTeamLogExternalDriveBackupPolicy { DBXTeamLogExternalDriveBackupPolicy(swift: swift.previousValue) } + + @objc + public init(newValue: DBXTeamLogExternalDriveBackupPolicy, previousValue: DBXTeamLogExternalDriveBackupPolicy) { + self.swift = TeamLog.ExternalDriveBackupPolicyChangedDetails(newValue: newValue.swift, previousValue: previousValue.swift) } + + let swift: TeamLog.ExternalDriveBackupPolicyChangedDetails + + public init(swift: TeamLog.ExternalDriveBackupPolicyChangedDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } } -/// (file_operations) Copied files and/or folders +/// Objective-C compatible ExternalDriveBackupPolicyChangedType struct @objc -public class DBXTeamLogEventTypeArgFileCopy: DBXTeamLogEventTypeArg { +public class DBXTeamLogExternalDriveBackupPolicyChangedType: NSObject { + /// (no description) @objc - public init() { - let swift = TeamLog.EventTypeArg.fileCopy - super.init(swift: swift) + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.ExternalDriveBackupPolicyChangedType(description_: description_) + } + + let swift: TeamLog.ExternalDriveBackupPolicyChangedType + + public init(swift: TeamLog.ExternalDriveBackupPolicyChangedType) { + self.swift = swift } + + + @objc + public override var description: String { swift.description } } -/// (file_operations) Deleted files and/or folders +/// External Drive Backup status @objc -public class DBXTeamLogEventTypeArgFileDelete: DBXTeamLogEventTypeArg { +public class DBXTeamLogExternalDriveBackupStatus: NSObject { + let swift: TeamLog.ExternalDriveBackupStatus + + public init(swift: TeamLog.ExternalDriveBackupStatus) { + self.swift = swift + } + + public static func factory(swift: TeamLog.ExternalDriveBackupStatus) -> DBXTeamLogExternalDriveBackupStatus { + switch swift { + case .broken: + return DBXTeamLogExternalDriveBackupStatusBroken() + case .created: + return DBXTeamLogExternalDriveBackupStatusCreated() + case .createdOrBroken: + return DBXTeamLogExternalDriveBackupStatusCreatedOrBroken() + case .deleted: + return DBXTeamLogExternalDriveBackupStatusDeleted() + case .empty: + return DBXTeamLogExternalDriveBackupStatusEmpty() + case .unknown: + return DBXTeamLogExternalDriveBackupStatusUnknown() + case .other: + return DBXTeamLogExternalDriveBackupStatusOther() + } + } + @objc - public init() { - let swift = TeamLog.EventTypeArg.fileDelete - super.init(swift: swift) + public override var description: String { swift.description } + + @objc + public var asBroken: DBXTeamLogExternalDriveBackupStatusBroken? { + return self as? DBXTeamLogExternalDriveBackupStatusBroken } -} -/// (file_operations) Downloaded files and/or folders -@objc -public class DBXTeamLogEventTypeArgFileDownload: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.fileDownload - super.init(swift: swift) + public var asCreated: DBXTeamLogExternalDriveBackupStatusCreated? { + return self as? DBXTeamLogExternalDriveBackupStatusCreated } -} -/// (file_operations) Edited files -@objc -public class DBXTeamLogEventTypeArgFileEdit: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.fileEdit - super.init(swift: swift) + public var asCreatedOrBroken: DBXTeamLogExternalDriveBackupStatusCreatedOrBroken? { + return self as? DBXTeamLogExternalDriveBackupStatusCreatedOrBroken } -} -/// (file_operations) Created copy reference to file/folder -@objc -public class DBXTeamLogEventTypeArgFileGetCopyReference: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.fileGetCopyReference - super.init(swift: swift) + public var asDeleted: DBXTeamLogExternalDriveBackupStatusDeleted? { + return self as? DBXTeamLogExternalDriveBackupStatusDeleted } -} -/// (file_operations) Locked/unlocked editing for a file -@objc -public class DBXTeamLogEventTypeArgFileLockingLockStatusChanged: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.fileLockingLockStatusChanged - super.init(swift: swift) + public var asEmpty: DBXTeamLogExternalDriveBackupStatusEmpty? { + return self as? DBXTeamLogExternalDriveBackupStatusEmpty } -} -/// (file_operations) Moved files and/or folders -@objc -public class DBXTeamLogEventTypeArgFileMove: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.fileMove - super.init(swift: swift) + public var asUnknown: DBXTeamLogExternalDriveBackupStatusUnknown? { + return self as? DBXTeamLogExternalDriveBackupStatusUnknown } -} -/// (file_operations) Permanently deleted files and/or folders -@objc -public class DBXTeamLogEventTypeArgFilePermanentlyDelete: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.filePermanentlyDelete - super.init(swift: swift) + public var asOther: DBXTeamLogExternalDriveBackupStatusOther? { + return self as? DBXTeamLogExternalDriveBackupStatusOther } } -/// (file_operations) Previewed files and/or folders +/// An unspecified error. @objc -public class DBXTeamLogEventTypeArgFilePreview: DBXTeamLogEventTypeArg { +public class DBXTeamLogExternalDriveBackupStatusBroken: DBXTeamLogExternalDriveBackupStatus { @objc public init() { - let swift = TeamLog.EventTypeArg.filePreview + let swift = TeamLog.ExternalDriveBackupStatus.broken super.init(swift: swift) } } -/// (file_operations) Renamed files and/or folders +/// An unspecified error. @objc -public class DBXTeamLogEventTypeArgFileRename: DBXTeamLogEventTypeArg { +public class DBXTeamLogExternalDriveBackupStatusCreated: DBXTeamLogExternalDriveBackupStatus { @objc public init() { - let swift = TeamLog.EventTypeArg.fileRename + let swift = TeamLog.ExternalDriveBackupStatus.created super.init(swift: swift) } } -/// (file_operations) Restored deleted files and/or folders +/// An unspecified error. @objc -public class DBXTeamLogEventTypeArgFileRestore: DBXTeamLogEventTypeArg { +public class DBXTeamLogExternalDriveBackupStatusCreatedOrBroken: DBXTeamLogExternalDriveBackupStatus { @objc public init() { - let swift = TeamLog.EventTypeArg.fileRestore + let swift = TeamLog.ExternalDriveBackupStatus.createdOrBroken super.init(swift: swift) } } -/// (file_operations) Reverted files to previous version +/// An unspecified error. @objc -public class DBXTeamLogEventTypeArgFileRevert: DBXTeamLogEventTypeArg { +public class DBXTeamLogExternalDriveBackupStatusDeleted: DBXTeamLogExternalDriveBackupStatus { @objc public init() { - let swift = TeamLog.EventTypeArg.fileRevert + let swift = TeamLog.ExternalDriveBackupStatus.deleted super.init(swift: swift) } } -/// (file_operations) Rolled back file actions +/// An unspecified error. @objc -public class DBXTeamLogEventTypeArgFileRollbackChanges: DBXTeamLogEventTypeArg { +public class DBXTeamLogExternalDriveBackupStatusEmpty: DBXTeamLogExternalDriveBackupStatus { @objc public init() { - let swift = TeamLog.EventTypeArg.fileRollbackChanges + let swift = TeamLog.ExternalDriveBackupStatus.empty super.init(swift: swift) } } -/// (file_operations) Saved file/folder using copy reference +/// An unspecified error. @objc -public class DBXTeamLogEventTypeArgFileSaveCopyReference: DBXTeamLogEventTypeArg { +public class DBXTeamLogExternalDriveBackupStatusUnknown: DBXTeamLogExternalDriveBackupStatus { @objc public init() { - let swift = TeamLog.EventTypeArg.fileSaveCopyReference + let swift = TeamLog.ExternalDriveBackupStatus.unknown super.init(swift: swift) } } -/// (file_operations) Updated folder overview +/// An unspecified error. @objc -public class DBXTeamLogEventTypeArgFolderOverviewDescriptionChanged: DBXTeamLogEventTypeArg { +public class DBXTeamLogExternalDriveBackupStatusOther: DBXTeamLogExternalDriveBackupStatus { @objc public init() { - let swift = TeamLog.EventTypeArg.folderOverviewDescriptionChanged + let swift = TeamLog.ExternalDriveBackupStatus.other super.init(swift: swift) } } -/// (file_operations) Pinned item to folder overview +/// Modified external drive backup. @objc -public class DBXTeamLogEventTypeArgFolderOverviewItemPinned: DBXTeamLogEventTypeArg { +public class DBXTeamLogExternalDriveBackupStatusChangedDetails: NSObject { + /// Device's session logged information. @objc - public init() { - let swift = TeamLog.EventTypeArg.folderOverviewItemPinned - super.init(swift: swift) + public var desktopDeviceSessionInfo: DBXTeamLogDesktopDeviceSessionLogInfo { DBXTeamLogDesktopDeviceSessionLogInfo(swift: swift.desktopDeviceSessionInfo) } + /// Previous status of this external drive backup. + @objc + public var previousValue: DBXTeamLogExternalDriveBackupStatus { DBXTeamLogExternalDriveBackupStatus(swift: swift.previousValue) } + /// Next status of this external drive backup. + @objc + public var newValue: DBXTeamLogExternalDriveBackupStatus { DBXTeamLogExternalDriveBackupStatus(swift: swift.newValue) } + + @objc + public init(desktopDeviceSessionInfo: DBXTeamLogDesktopDeviceSessionLogInfo, previousValue: DBXTeamLogExternalDriveBackupStatus, newValue: DBXTeamLogExternalDriveBackupStatus) { + self.swift = TeamLog.ExternalDriveBackupStatusChangedDetails(desktopDeviceSessionInfo: desktopDeviceSessionInfo.subSwift, previousValue: previousValue.swift, newValue: newValue.swift) } + + let swift: TeamLog.ExternalDriveBackupStatusChangedDetails + + public init(swift: TeamLog.ExternalDriveBackupStatusChangedDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } } -/// (file_operations) Unpinned item from folder overview +/// Objective-C compatible ExternalDriveBackupStatusChangedType struct @objc -public class DBXTeamLogEventTypeArgFolderOverviewItemUnpinned: DBXTeamLogEventTypeArg { +public class DBXTeamLogExternalDriveBackupStatusChangedType: NSObject { + /// (no description) @objc - public init() { - let swift = TeamLog.EventTypeArg.folderOverviewItemUnpinned - super.init(swift: swift) + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.ExternalDriveBackupStatusChangedType(description_: description_) + } + + let swift: TeamLog.ExternalDriveBackupStatusChangedType + + public init(swift: TeamLog.ExternalDriveBackupStatusChangedType) { + self.swift = swift } + + + @objc + public override var description: String { swift.description } } -/// (file_operations) Added a label +/// Created External sharing report. @objc -public class DBXTeamLogEventTypeArgObjectLabelAdded: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.objectLabelAdded - super.init(swift: swift) +public class DBXTeamLogExternalSharingCreateReportDetails: NSObject { + + let swift: TeamLog.ExternalSharingCreateReportDetails + + public init(swift: TeamLog.ExternalSharingCreateReportDetails) { + self.swift = swift } + + + @objc + public override var description: String { swift.description } } -/// (file_operations) Removed a label +/// Objective-C compatible ExternalSharingCreateReportType struct @objc -public class DBXTeamLogEventTypeArgObjectLabelRemoved: DBXTeamLogEventTypeArg { +public class DBXTeamLogExternalSharingCreateReportType: NSObject { + /// (no description) @objc - public init() { - let swift = TeamLog.EventTypeArg.objectLabelRemoved - super.init(swift: swift) + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.ExternalSharingCreateReportType(description_: description_) + } + + let swift: TeamLog.ExternalSharingCreateReportType + + public init(swift: TeamLog.ExternalSharingCreateReportType) { + self.swift = swift } + + + @objc + public override var description: String { swift.description } } -/// (file_operations) Updated a label's value +/// Couldn't create External sharing report. @objc -public class DBXTeamLogEventTypeArgObjectLabelUpdatedValue: DBXTeamLogEventTypeArg { +public class DBXTeamLogExternalSharingReportFailedDetails: NSObject { + /// Failure reason. @objc - public init() { - let swift = TeamLog.EventTypeArg.objectLabelUpdatedValue - super.init(swift: swift) + public var failureReason: DBXTeamTeamReportFailureReason { DBXTeamTeamReportFailureReason(swift: swift.failureReason) } + + @objc + public init(failureReason: DBXTeamTeamReportFailureReason) { + self.swift = TeamLog.ExternalSharingReportFailedDetails(failureReason: failureReason.swift) + } + + let swift: TeamLog.ExternalSharingReportFailedDetails + + public init(swift: TeamLog.ExternalSharingReportFailedDetails) { + self.swift = swift } + + + @objc + public override var description: String { swift.description } } -/// (file_operations) Organized a folder with multi-file organize +/// Objective-C compatible ExternalSharingReportFailedType struct @objc -public class DBXTeamLogEventTypeArgOrganizeFolderWithTidy: DBXTeamLogEventTypeArg { +public class DBXTeamLogExternalSharingReportFailedType: NSObject { + /// (no description) @objc - public init() { - let swift = TeamLog.EventTypeArg.organizeFolderWithTidy - super.init(swift: swift) + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.ExternalSharingReportFailedType(description_: description_) + } + + let swift: TeamLog.ExternalSharingReportFailedType + + public init(swift: TeamLog.ExternalSharingReportFailedType) { + self.swift = swift } + + + @objc + public override var description: String { swift.description } } -/// (file_operations) Deleted files in Replay +/// External sharing setting @objc -public class DBXTeamLogEventTypeArgReplayFileDelete: DBXTeamLogEventTypeArg { +public class DBXTeamLogExternalSharingSetting: NSObject { + let swift: TeamLog.ExternalSharingSetting + + public init(swift: TeamLog.ExternalSharingSetting) { + self.swift = swift + } + + public static func factory(swift: TeamLog.ExternalSharingSetting) -> DBXTeamLogExternalSharingSetting { + switch swift { + case .allow: + return DBXTeamLogExternalSharingSettingAllow() + case .forbid: + return DBXTeamLogExternalSharingSettingForbid() + case .unset: + return DBXTeamLogExternalSharingSettingUnset() + case .other: + return DBXTeamLogExternalSharingSettingOther() + } + } + @objc - public init() { - let swift = TeamLog.EventTypeArg.replayFileDelete - super.init(swift: swift) + public override var description: String { swift.description } + + @objc + public var asAllow: DBXTeamLogExternalSharingSettingAllow? { + return self as? DBXTeamLogExternalSharingSettingAllow } -} -/// (file_operations) Rewound a folder -@objc -public class DBXTeamLogEventTypeArgRewindFolder: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.rewindFolder - super.init(swift: swift) + public var asForbid: DBXTeamLogExternalSharingSettingForbid? { + return self as? DBXTeamLogExternalSharingSettingForbid } -} -/// (file_operations) Reverted naming convention -@objc -public class DBXTeamLogEventTypeArgUndoNamingConvention: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.undoNamingConvention - super.init(swift: swift) + public var asUnset: DBXTeamLogExternalSharingSettingUnset? { + return self as? DBXTeamLogExternalSharingSettingUnset } -} -/// (file_operations) Removed multi-file organize -@objc -public class DBXTeamLogEventTypeArgUndoOrganizeFolderWithTidy: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.undoOrganizeFolderWithTidy - super.init(swift: swift) + public var asOther: DBXTeamLogExternalSharingSettingOther? { + return self as? DBXTeamLogExternalSharingSettingOther } } -/// (file_operations) Tagged a file +/// An unspecified error. @objc -public class DBXTeamLogEventTypeArgUserTagsAdded: DBXTeamLogEventTypeArg { +public class DBXTeamLogExternalSharingSettingAllow: DBXTeamLogExternalSharingSetting { @objc public init() { - let swift = TeamLog.EventTypeArg.userTagsAdded + let swift = TeamLog.ExternalSharingSetting.allow super.init(swift: swift) } } -/// (file_operations) Removed tags +/// An unspecified error. @objc -public class DBXTeamLogEventTypeArgUserTagsRemoved: DBXTeamLogEventTypeArg { +public class DBXTeamLogExternalSharingSettingForbid: DBXTeamLogExternalSharingSetting { @objc public init() { - let swift = TeamLog.EventTypeArg.userTagsRemoved + let swift = TeamLog.ExternalSharingSetting.forbid super.init(swift: swift) } } -/// (file_requests) Received files via Email to Dropbox +/// An unspecified error. @objc -public class DBXTeamLogEventTypeArgEmailIngestReceiveFile: DBXTeamLogEventTypeArg { +public class DBXTeamLogExternalSharingSettingUnset: DBXTeamLogExternalSharingSetting { @objc public init() { - let swift = TeamLog.EventTypeArg.emailIngestReceiveFile + let swift = TeamLog.ExternalSharingSetting.unset super.init(swift: swift) } } -/// (file_requests) Changed file request +/// An unspecified error. @objc -public class DBXTeamLogEventTypeArgFileRequestChange: DBXTeamLogEventTypeArg { +public class DBXTeamLogExternalSharingSettingOther: DBXTeamLogExternalSharingSetting { @objc public init() { - let swift = TeamLog.EventTypeArg.fileRequestChange + let swift = TeamLog.ExternalSharingSetting.other super.init(swift: swift) } } -/// (file_requests) Closed file request +/// A user without a Dropbox account. @objc -public class DBXTeamLogEventTypeArgFileRequestClose: DBXTeamLogEventTypeArg { +public class DBXTeamLogExternalUserLogInfo: NSObject { + /// An external user identifier. @objc - public init() { - let swift = TeamLog.EventTypeArg.fileRequestClose - super.init(swift: swift) + public var userIdentifier: String { swift.userIdentifier } + /// Identifier type. + @objc + public var identifierType: DBXTeamLogIdentifierType { DBXTeamLogIdentifierType(swift: swift.identifierType) } + + @objc + public init(userIdentifier: String, identifierType: DBXTeamLogIdentifierType) { + self.swift = TeamLog.ExternalUserLogInfo(userIdentifier: userIdentifier, identifierType: identifierType.swift) + } + + let swift: TeamLog.ExternalUserLogInfo + + public init(swift: TeamLog.ExternalUserLogInfo) { + self.swift = swift } + + + @objc + public override var description: String { swift.description } } -/// (file_requests) Created file request +/// Provides details about a failure @objc -public class DBXTeamLogEventTypeArgFileRequestCreate: DBXTeamLogEventTypeArg { +public class DBXTeamLogFailureDetailsLogInfo: NSObject { + /// A user friendly explanation of the error. @objc - public init() { - let swift = TeamLog.EventTypeArg.fileRequestCreate - super.init(swift: swift) + public var userFriendlyMessage: String? { swift.userFriendlyMessage } + /// A technical explanation of the error. This is relevant for some errors. + @objc + public var technicalErrorMessage: String? { swift.technicalErrorMessage } + + @objc + public init(userFriendlyMessage: String?, technicalErrorMessage: String?) { + self.swift = TeamLog.FailureDetailsLogInfo(userFriendlyMessage: userFriendlyMessage, technicalErrorMessage: technicalErrorMessage) + } + + let swift: TeamLog.FailureDetailsLogInfo + + public init(swift: TeamLog.FailureDetailsLogInfo) { + self.swift = swift } + + + @objc + public override var description: String { swift.description } } -/// (file_requests) Delete file request +/// Objective-C compatible FedAdminRole union @objc -public class DBXTeamLogEventTypeArgFileRequestDelete: DBXTeamLogEventTypeArg { +public class DBXTeamLogFedAdminRole: NSObject { + let swift: TeamLog.FedAdminRole + + public init(swift: TeamLog.FedAdminRole) { + self.swift = swift + } + + public static func factory(swift: TeamLog.FedAdminRole) -> DBXTeamLogFedAdminRole { + switch swift { + case .enterpriseAdmin: + return DBXTeamLogFedAdminRoleEnterpriseAdmin() + case .notEnterpriseAdmin: + return DBXTeamLogFedAdminRoleNotEnterpriseAdmin() + case .other: + return DBXTeamLogFedAdminRoleOther() + } + } + @objc - public init() { - let swift = TeamLog.EventTypeArg.fileRequestDelete - super.init(swift: swift) + public override var description: String { swift.description } + + @objc + public var asEnterpriseAdmin: DBXTeamLogFedAdminRoleEnterpriseAdmin? { + return self as? DBXTeamLogFedAdminRoleEnterpriseAdmin } -} -/// (file_requests) Received files for file request -@objc -public class DBXTeamLogEventTypeArgFileRequestReceiveFile: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.fileRequestReceiveFile - super.init(swift: swift) + public var asNotEnterpriseAdmin: DBXTeamLogFedAdminRoleNotEnterpriseAdmin? { + return self as? DBXTeamLogFedAdminRoleNotEnterpriseAdmin + } + + @objc + public var asOther: DBXTeamLogFedAdminRoleOther? { + return self as? DBXTeamLogFedAdminRoleOther } } -/// (groups) Added external ID for group +/// An unspecified error. @objc -public class DBXTeamLogEventTypeArgGroupAddExternalId: DBXTeamLogEventTypeArg { +public class DBXTeamLogFedAdminRoleEnterpriseAdmin: DBXTeamLogFedAdminRole { @objc public init() { - let swift = TeamLog.EventTypeArg.groupAddExternalId + let swift = TeamLog.FedAdminRole.enterpriseAdmin super.init(swift: swift) } } -/// (groups) Added team members to group +/// An unspecified error. @objc -public class DBXTeamLogEventTypeArgGroupAddMember: DBXTeamLogEventTypeArg { +public class DBXTeamLogFedAdminRoleNotEnterpriseAdmin: DBXTeamLogFedAdminRole { @objc public init() { - let swift = TeamLog.EventTypeArg.groupAddMember + let swift = TeamLog.FedAdminRole.notEnterpriseAdmin super.init(swift: swift) } } -/// (groups) Changed external ID for group +/// An unspecified error. @objc -public class DBXTeamLogEventTypeArgGroupChangeExternalId: DBXTeamLogEventTypeArg { +public class DBXTeamLogFedAdminRoleOther: DBXTeamLogFedAdminRole { @objc public init() { - let swift = TeamLog.EventTypeArg.groupChangeExternalId + let swift = TeamLog.FedAdminRole.other super.init(swift: swift) } } -/// (groups) Changed group management type +/// More details about the organization or team. @objc -public class DBXTeamLogEventTypeArgGroupChangeManagementType: DBXTeamLogEventTypeArg { +public class DBXTeamLogFedExtraDetails: NSObject { + let swift: TeamLog.FedExtraDetails + + public init(swift: TeamLog.FedExtraDetails) { + self.swift = swift + } + + public static func factory(swift: TeamLog.FedExtraDetails) -> DBXTeamLogFedExtraDetails { + switch swift { + case .organization(let swiftArg): + let arg = DBXTeamLogOrganizationDetails(swift: swiftArg) + return DBXTeamLogFedExtraDetailsOrganization(arg) + case .team(let swiftArg): + let arg = DBXTeamLogTeamDetails(swift: swiftArg) + return DBXTeamLogFedExtraDetailsTeam(arg) + case .other: + return DBXTeamLogFedExtraDetailsOther() + } + } + @objc - public init() { - let swift = TeamLog.EventTypeArg.groupChangeManagementType - super.init(swift: swift) + public override var description: String { swift.description } + + @objc + public var asOrganization: DBXTeamLogFedExtraDetailsOrganization? { + return self as? DBXTeamLogFedExtraDetailsOrganization } -} -/// (groups) Changed manager permissions of group member -@objc -public class DBXTeamLogEventTypeArgGroupChangeMemberRole: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.groupChangeMemberRole - super.init(swift: swift) + public var asTeam: DBXTeamLogFedExtraDetailsTeam? { + return self as? DBXTeamLogFedExtraDetailsTeam } -} -/// (groups) Created group -@objc -public class DBXTeamLogEventTypeArgGroupCreate: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.groupCreate - super.init(swift: swift) + public var asOther: DBXTeamLogFedExtraDetailsOther? { + return self as? DBXTeamLogFedExtraDetailsOther } } -/// (groups) Deleted group +/// More details about the organization. @objc -public class DBXTeamLogEventTypeArgGroupDelete: DBXTeamLogEventTypeArg { +public class DBXTeamLogFedExtraDetailsOrganization: DBXTeamLogFedExtraDetails { @objc - public init() { - let swift = TeamLog.EventTypeArg.groupDelete + public var organization: DBXTeamLogOrganizationDetails + + @objc + public init(_ arg: DBXTeamLogOrganizationDetails) { + organization = arg + let swift = TeamLog.FedExtraDetails.organization(arg.swift) super.init(swift: swift) } } -/// (groups) Updated group (deprecated, no longer logged) +/// More details about the team. @objc -public class DBXTeamLogEventTypeArgGroupDescriptionUpdated: DBXTeamLogEventTypeArg { +public class DBXTeamLogFedExtraDetailsTeam: DBXTeamLogFedExtraDetails { @objc - public init() { - let swift = TeamLog.EventTypeArg.groupDescriptionUpdated + public var team: DBXTeamLogTeamDetails + + @objc + public init(_ arg: DBXTeamLogTeamDetails) { + team = arg + let swift = TeamLog.FedExtraDetails.team(arg.swift) super.init(swift: swift) } } -/// (groups) Updated group join policy (deprecated, no longer logged) +/// An unspecified error. @objc -public class DBXTeamLogEventTypeArgGroupJoinPolicyUpdated: DBXTeamLogEventTypeArg { +public class DBXTeamLogFedExtraDetailsOther: DBXTeamLogFedExtraDetails { @objc public init() { - let swift = TeamLog.EventTypeArg.groupJoinPolicyUpdated + let swift = TeamLog.FedExtraDetails.other super.init(swift: swift) } } -/// (groups) Moved group (deprecated, no longer logged) +/// Objective-C compatible FedHandshakeAction union @objc -public class DBXTeamLogEventTypeArgGroupMoved: DBXTeamLogEventTypeArg { +public class DBXTeamLogFedHandshakeAction: NSObject { + let swift: TeamLog.FedHandshakeAction + + public init(swift: TeamLog.FedHandshakeAction) { + self.swift = swift + } + + public static func factory(swift: TeamLog.FedHandshakeAction) -> DBXTeamLogFedHandshakeAction { + switch swift { + case .acceptedInvite: + return DBXTeamLogFedHandshakeActionAcceptedInvite() + case .canceledInvite: + return DBXTeamLogFedHandshakeActionCanceledInvite() + case .inviteExpired: + return DBXTeamLogFedHandshakeActionInviteExpired() + case .invited: + return DBXTeamLogFedHandshakeActionInvited() + case .rejectedInvite: + return DBXTeamLogFedHandshakeActionRejectedInvite() + case .removedTeam: + return DBXTeamLogFedHandshakeActionRemovedTeam() + case .other: + return DBXTeamLogFedHandshakeActionOther() + } + } + @objc - public init() { - let swift = TeamLog.EventTypeArg.groupMoved - super.init(swift: swift) + public override var description: String { swift.description } + + @objc + public var asAcceptedInvite: DBXTeamLogFedHandshakeActionAcceptedInvite? { + return self as? DBXTeamLogFedHandshakeActionAcceptedInvite } -} -/// (groups) Removed external ID for group -@objc -public class DBXTeamLogEventTypeArgGroupRemoveExternalId: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.groupRemoveExternalId - super.init(swift: swift) + public var asCanceledInvite: DBXTeamLogFedHandshakeActionCanceledInvite? { + return self as? DBXTeamLogFedHandshakeActionCanceledInvite } -} -/// (groups) Removed team members from group -@objc -public class DBXTeamLogEventTypeArgGroupRemoveMember: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.groupRemoveMember - super.init(swift: swift) + public var asInviteExpired: DBXTeamLogFedHandshakeActionInviteExpired? { + return self as? DBXTeamLogFedHandshakeActionInviteExpired } -} -/// (groups) Renamed group -@objc -public class DBXTeamLogEventTypeArgGroupRename: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.groupRename - super.init(swift: swift) + public var asInvited: DBXTeamLogFedHandshakeActionInvited? { + return self as? DBXTeamLogFedHandshakeActionInvited } -} -/// (logins) Unlocked/locked account after failed sign in attempts -@objc -public class DBXTeamLogEventTypeArgAccountLockOrUnlocked: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.accountLockOrUnlocked - super.init(swift: swift) + public var asRejectedInvite: DBXTeamLogFedHandshakeActionRejectedInvite? { + return self as? DBXTeamLogFedHandshakeActionRejectedInvite } -} -/// (logins) Failed to sign in via EMM (deprecated, replaced by 'Failed to sign in') -@objc -public class DBXTeamLogEventTypeArgEmmError: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.emmError - super.init(swift: swift) + public var asRemovedTeam: DBXTeamLogFedHandshakeActionRemovedTeam? { + return self as? DBXTeamLogFedHandshakeActionRemovedTeam } -} -/// (logins) Started trusted team admin session -@objc -public class DBXTeamLogEventTypeArgGuestAdminSignedInViaTrustedTeams: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.guestAdminSignedInViaTrustedTeams - super.init(swift: swift) + public var asOther: DBXTeamLogFedHandshakeActionOther? { + return self as? DBXTeamLogFedHandshakeActionOther } } -/// (logins) Ended trusted team admin session +/// An unspecified error. @objc -public class DBXTeamLogEventTypeArgGuestAdminSignedOutViaTrustedTeams: DBXTeamLogEventTypeArg { +public class DBXTeamLogFedHandshakeActionAcceptedInvite: DBXTeamLogFedHandshakeAction { @objc public init() { - let swift = TeamLog.EventTypeArg.guestAdminSignedOutViaTrustedTeams + let swift = TeamLog.FedHandshakeAction.acceptedInvite super.init(swift: swift) } } -/// (logins) Failed to sign in +/// An unspecified error. @objc -public class DBXTeamLogEventTypeArgLoginFail: DBXTeamLogEventTypeArg { +public class DBXTeamLogFedHandshakeActionCanceledInvite: DBXTeamLogFedHandshakeAction { @objc public init() { - let swift = TeamLog.EventTypeArg.loginFail + let swift = TeamLog.FedHandshakeAction.canceledInvite super.init(swift: swift) } } -/// (logins) Signed in +/// An unspecified error. @objc -public class DBXTeamLogEventTypeArgLoginSuccess: DBXTeamLogEventTypeArg { +public class DBXTeamLogFedHandshakeActionInviteExpired: DBXTeamLogFedHandshakeAction { @objc public init() { - let swift = TeamLog.EventTypeArg.loginSuccess + let swift = TeamLog.FedHandshakeAction.inviteExpired super.init(swift: swift) } } -/// (logins) Signed out +/// An unspecified error. @objc -public class DBXTeamLogEventTypeArgLogout: DBXTeamLogEventTypeArg { +public class DBXTeamLogFedHandshakeActionInvited: DBXTeamLogFedHandshakeAction { @objc public init() { - let swift = TeamLog.EventTypeArg.logout + let swift = TeamLog.FedHandshakeAction.invited super.init(swift: swift) } } -/// (logins) Ended reseller support session +/// An unspecified error. @objc -public class DBXTeamLogEventTypeArgResellerSupportSessionEnd: DBXTeamLogEventTypeArg { +public class DBXTeamLogFedHandshakeActionRejectedInvite: DBXTeamLogFedHandshakeAction { @objc public init() { - let swift = TeamLog.EventTypeArg.resellerSupportSessionEnd + let swift = TeamLog.FedHandshakeAction.rejectedInvite super.init(swift: swift) } } -/// (logins) Started reseller support session +/// An unspecified error. @objc -public class DBXTeamLogEventTypeArgResellerSupportSessionStart: DBXTeamLogEventTypeArg { +public class DBXTeamLogFedHandshakeActionRemovedTeam: DBXTeamLogFedHandshakeAction { @objc public init() { - let swift = TeamLog.EventTypeArg.resellerSupportSessionStart + let swift = TeamLog.FedHandshakeAction.removedTeam super.init(swift: swift) } } -/// (logins) Ended admin sign-in-as session +/// An unspecified error. @objc -public class DBXTeamLogEventTypeArgSignInAsSessionEnd: DBXTeamLogEventTypeArg { +public class DBXTeamLogFedHandshakeActionOther: DBXTeamLogFedHandshakeAction { @objc public init() { - let swift = TeamLog.EventTypeArg.signInAsSessionEnd + let swift = TeamLog.FedHandshakeAction.other super.init(swift: swift) } } -/// (logins) Started admin sign-in-as session +/// Additional information about the organization or connected team @objc -public class DBXTeamLogEventTypeArgSignInAsSessionStart: DBXTeamLogEventTypeArg { +public class DBXTeamLogFederationStatusChangeAdditionalInfo: NSObject { + let swift: TeamLog.FederationStatusChangeAdditionalInfo + + public init(swift: TeamLog.FederationStatusChangeAdditionalInfo) { + self.swift = swift + } + + public static func factory(swift: TeamLog.FederationStatusChangeAdditionalInfo) -> DBXTeamLogFederationStatusChangeAdditionalInfo { + switch swift { + case .connectedTeamName(let swiftArg): + let arg = DBXTeamLogConnectedTeamName(swift: swiftArg) + return DBXTeamLogFederationStatusChangeAdditionalInfoConnectedTeamName(arg) + case .nonTrustedTeamDetails(let swiftArg): + let arg = DBXTeamLogNonTrustedTeamDetails(swift: swiftArg) + return DBXTeamLogFederationStatusChangeAdditionalInfoNonTrustedTeamDetails(arg) + case .organizationName(let swiftArg): + let arg = DBXTeamLogOrganizationName(swift: swiftArg) + return DBXTeamLogFederationStatusChangeAdditionalInfoOrganizationName(arg) + case .other: + return DBXTeamLogFederationStatusChangeAdditionalInfoOther() + } + } + @objc - public init() { - let swift = TeamLog.EventTypeArg.signInAsSessionStart - super.init(swift: swift) + public override var description: String { swift.description } + + @objc + public var asConnectedTeamName: DBXTeamLogFederationStatusChangeAdditionalInfoConnectedTeamName? { + return self as? DBXTeamLogFederationStatusChangeAdditionalInfoConnectedTeamName } -} -/// (logins) Failed to sign in via SSO (deprecated, replaced by 'Failed to sign in') -@objc -public class DBXTeamLogEventTypeArgSsoError: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.ssoError - super.init(swift: swift) + public var asNonTrustedTeamDetails: DBXTeamLogFederationStatusChangeAdditionalInfoNonTrustedTeamDetails? { + return self as? DBXTeamLogFederationStatusChangeAdditionalInfoNonTrustedTeamDetails } -} -/// (members) Invited members to activate Backup -@objc -public class DBXTeamLogEventTypeArgBackupAdminInvitationSent: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.backupAdminInvitationSent - super.init(swift: swift) + public var asOrganizationName: DBXTeamLogFederationStatusChangeAdditionalInfoOrganizationName? { + return self as? DBXTeamLogFederationStatusChangeAdditionalInfoOrganizationName } -} -/// (members) Opened Backup invite -@objc -public class DBXTeamLogEventTypeArgBackupInvitationOpened: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.backupInvitationOpened - super.init(swift: swift) + public var asOther: DBXTeamLogFederationStatusChangeAdditionalInfoOther? { + return self as? DBXTeamLogFederationStatusChangeAdditionalInfoOther } } -/// (members) Created team invite link +/// The name of the team @objc -public class DBXTeamLogEventTypeArgCreateTeamInviteLink: DBXTeamLogEventTypeArg { +public class DBXTeamLogFederationStatusChangeAdditionalInfoConnectedTeamName: DBXTeamLogFederationStatusChangeAdditionalInfo { @objc - public init() { - let swift = TeamLog.EventTypeArg.createTeamInviteLink + public var connectedTeamName: DBXTeamLogConnectedTeamName + + @objc + public init(_ arg: DBXTeamLogConnectedTeamName) { + connectedTeamName = arg + let swift = TeamLog.FederationStatusChangeAdditionalInfo.connectedTeamName(arg.swift) super.init(swift: swift) } } -/// (members) Deleted team invite link +/// The email to which the request was sent @objc -public class DBXTeamLogEventTypeArgDeleteTeamInviteLink: DBXTeamLogEventTypeArg { +public class DBXTeamLogFederationStatusChangeAdditionalInfoNonTrustedTeamDetails: DBXTeamLogFederationStatusChangeAdditionalInfo { @objc - public init() { - let swift = TeamLog.EventTypeArg.deleteTeamInviteLink + public var nonTrustedTeamDetails: DBXTeamLogNonTrustedTeamDetails + + @objc + public init(_ arg: DBXTeamLogNonTrustedTeamDetails) { + nonTrustedTeamDetails = arg + let swift = TeamLog.FederationStatusChangeAdditionalInfo.nonTrustedTeamDetails(arg.swift) super.init(swift: swift) } } -/// (members) Added an external ID for team member +/// The name of the organization @objc -public class DBXTeamLogEventTypeArgMemberAddExternalId: DBXTeamLogEventTypeArg { +public class DBXTeamLogFederationStatusChangeAdditionalInfoOrganizationName: DBXTeamLogFederationStatusChangeAdditionalInfo { @objc - public init() { - let swift = TeamLog.EventTypeArg.memberAddExternalId + public var organizationName: DBXTeamLogOrganizationName + + @objc + public init(_ arg: DBXTeamLogOrganizationName) { + organizationName = arg + let swift = TeamLog.FederationStatusChangeAdditionalInfo.organizationName(arg.swift) super.init(swift: swift) } } -/// (members) Added team member name +/// An unspecified error. @objc -public class DBXTeamLogEventTypeArgMemberAddName: DBXTeamLogEventTypeArg { +public class DBXTeamLogFederationStatusChangeAdditionalInfoOther: DBXTeamLogFederationStatusChangeAdditionalInfo { @objc public init() { - let swift = TeamLog.EventTypeArg.memberAddName + let swift = TeamLog.FederationStatusChangeAdditionalInfo.other super.init(swift: swift) } } -/// (members) Changed team member admin role +/// Added file comment. @objc -public class DBXTeamLogEventTypeArgMemberChangeAdminRole: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileAddCommentDetails: NSObject { + /// Comment text. @objc - public init() { - let swift = TeamLog.EventTypeArg.memberChangeAdminRole - super.init(swift: swift) + public var commentText: String? { swift.commentText } + + @objc + public init(commentText: String?) { + self.swift = TeamLog.FileAddCommentDetails(commentText: commentText) + } + + let swift: TeamLog.FileAddCommentDetails + + public init(swift: TeamLog.FileAddCommentDetails) { + self.swift = swift } + + + @objc + public override var description: String { swift.description } } -/// (members) Changed team member email +/// Objective-C compatible FileAddCommentType struct @objc -public class DBXTeamLogEventTypeArgMemberChangeEmail: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileAddCommentType: NSObject { + /// (no description) @objc - public init() { - let swift = TeamLog.EventTypeArg.memberChangeEmail - super.init(swift: swift) + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.FileAddCommentType(description_: description_) + } + + let swift: TeamLog.FileAddCommentType + + public init(swift: TeamLog.FileAddCommentType) { + self.swift = swift } + + + @objc + public override var description: String { swift.description } } -/// (members) Changed the external ID for team member +/// Added files and/or folders. @objc -public class DBXTeamLogEventTypeArgMemberChangeExternalId: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.memberChangeExternalId - super.init(swift: swift) +public class DBXTeamLogFileAddDetails: NSObject { + + let swift: TeamLog.FileAddDetails + + public init(swift: TeamLog.FileAddDetails) { + self.swift = swift } + + + @objc + public override var description: String { swift.description } } -/// (members) Changed membership type (limited/full) of member (deprecated, no longer logged) +/// Added files and/or folders from automation. @objc -public class DBXTeamLogEventTypeArgMemberChangeMembershipType: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.memberChangeMembershipType - super.init(swift: swift) +public class DBXTeamLogFileAddFromAutomationDetails: NSObject { + + let swift: TeamLog.FileAddFromAutomationDetails + + public init(swift: TeamLog.FileAddFromAutomationDetails) { + self.swift = swift } + + + @objc + public override var description: String { swift.description } } -/// (members) Changed team member name +/// Objective-C compatible FileAddFromAutomationType struct @objc -public class DBXTeamLogEventTypeArgMemberChangeName: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileAddFromAutomationType: NSObject { + /// (no description) @objc - public init() { - let swift = TeamLog.EventTypeArg.memberChangeName - super.init(swift: swift) + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.FileAddFromAutomationType(description_: description_) + } + + let swift: TeamLog.FileAddFromAutomationType + + public init(swift: TeamLog.FileAddFromAutomationType) { + self.swift = swift } + + + @objc + public override var description: String { swift.description } } -/// (members) Changed team member reseller role +/// Objective-C compatible FileAddType struct @objc -public class DBXTeamLogEventTypeArgMemberChangeResellerRole: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileAddType: NSObject { + /// (no description) @objc - public init() { - let swift = TeamLog.EventTypeArg.memberChangeResellerRole - super.init(swift: swift) + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.FileAddType(description_: description_) + } + + let swift: TeamLog.FileAddType + + public init(swift: TeamLog.FileAddType) { + self.swift = swift } + + + @objc + public override var description: String { swift.description } } -/// (members) Changed member status (invited, joined, suspended, etc.) +/// Subscribed to or unsubscribed from comment notifications for file. @objc -public class DBXTeamLogEventTypeArgMemberChangeStatus: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileChangeCommentSubscriptionDetails: NSObject { + /// New file comment subscription. @objc - public init() { - let swift = TeamLog.EventTypeArg.memberChangeStatus - super.init(swift: swift) + public var newValue: DBXTeamLogFileCommentNotificationPolicy { DBXTeamLogFileCommentNotificationPolicy(swift: swift.newValue) } + /// Previous file comment subscription. Might be missing due to historical data gap. + @objc + public var previousValue: DBXTeamLogFileCommentNotificationPolicy? { guard let swift = swift.previousValue else { return nil }; return DBXTeamLogFileCommentNotificationPolicy(swift: swift) } + + @objc + public init(newValue: DBXTeamLogFileCommentNotificationPolicy, previousValue: DBXTeamLogFileCommentNotificationPolicy?) { + self.swift = TeamLog.FileChangeCommentSubscriptionDetails(newValue: newValue.swift, previousValue: previousValue?.swift) + } + + let swift: TeamLog.FileChangeCommentSubscriptionDetails + + public init(swift: TeamLog.FileChangeCommentSubscriptionDetails) { + self.swift = swift } + + + @objc + public override var description: String { swift.description } } -/// (members) Cleared manually added contacts +/// Objective-C compatible FileChangeCommentSubscriptionType struct @objc -public class DBXTeamLogEventTypeArgMemberDeleteManualContacts: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileChangeCommentSubscriptionType: NSObject { + /// (no description) @objc - public init() { - let swift = TeamLog.EventTypeArg.memberDeleteManualContacts - super.init(swift: swift) + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.FileChangeCommentSubscriptionType(description_: description_) + } + + let swift: TeamLog.FileChangeCommentSubscriptionType + + public init(swift: TeamLog.FileChangeCommentSubscriptionType) { + self.swift = swift } + + + @objc + public override var description: String { swift.description } } -/// (members) Deleted team member profile photo -@objc -public class DBXTeamLogEventTypeArgMemberDeleteProfilePhoto: DBXTeamLogEventTypeArg { +/// Enable or disable file comments notifications +@objc +public class DBXTeamLogFileCommentNotificationPolicy: NSObject { + let swift: TeamLog.FileCommentNotificationPolicy + + public init(swift: TeamLog.FileCommentNotificationPolicy) { + self.swift = swift + } + + public static func factory(swift: TeamLog.FileCommentNotificationPolicy) -> DBXTeamLogFileCommentNotificationPolicy { + switch swift { + case .disabled: + return DBXTeamLogFileCommentNotificationPolicyDisabled() + case .enabled: + return DBXTeamLogFileCommentNotificationPolicyEnabled() + case .other: + return DBXTeamLogFileCommentNotificationPolicyOther() + } + } + + @objc + public override var description: String { swift.description } + @objc - public init() { - let swift = TeamLog.EventTypeArg.memberDeleteProfilePhoto - super.init(swift: swift) + public var asDisabled: DBXTeamLogFileCommentNotificationPolicyDisabled? { + return self as? DBXTeamLogFileCommentNotificationPolicyDisabled } -} -/// (members) Permanently deleted contents of deleted team member account -@objc -public class DBXTeamLogEventTypeArgMemberPermanentlyDeleteAccountContents: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.memberPermanentlyDeleteAccountContents - super.init(swift: swift) + public var asEnabled: DBXTeamLogFileCommentNotificationPolicyEnabled? { + return self as? DBXTeamLogFileCommentNotificationPolicyEnabled } -} -/// (members) Removed the external ID for team member -@objc -public class DBXTeamLogEventTypeArgMemberRemoveExternalId: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.memberRemoveExternalId - super.init(swift: swift) + public var asOther: DBXTeamLogFileCommentNotificationPolicyOther? { + return self as? DBXTeamLogFileCommentNotificationPolicyOther } } -/// (members) Set team member profile photo +/// An unspecified error. @objc -public class DBXTeamLogEventTypeArgMemberSetProfilePhoto: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileCommentNotificationPolicyDisabled: DBXTeamLogFileCommentNotificationPolicy { @objc public init() { - let swift = TeamLog.EventTypeArg.memberSetProfilePhoto + let swift = TeamLog.FileCommentNotificationPolicy.disabled super.init(swift: swift) } } -/// (members) Set custom member space limit +/// An unspecified error. @objc -public class DBXTeamLogEventTypeArgMemberSpaceLimitsAddCustomQuota: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileCommentNotificationPolicyEnabled: DBXTeamLogFileCommentNotificationPolicy { @objc public init() { - let swift = TeamLog.EventTypeArg.memberSpaceLimitsAddCustomQuota + let swift = TeamLog.FileCommentNotificationPolicy.enabled super.init(swift: swift) } } -/// (members) Changed custom member space limit +/// An unspecified error. @objc -public class DBXTeamLogEventTypeArgMemberSpaceLimitsChangeCustomQuota: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileCommentNotificationPolicyOther: DBXTeamLogFileCommentNotificationPolicy { @objc public init() { - let swift = TeamLog.EventTypeArg.memberSpaceLimitsChangeCustomQuota + let swift = TeamLog.FileCommentNotificationPolicy.other super.init(swift: swift) } } -/// (members) Changed space limit status +/// Enabled/disabled commenting on team files. @objc -public class DBXTeamLogEventTypeArgMemberSpaceLimitsChangeStatus: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileCommentsChangePolicyDetails: NSObject { + /// New commenting on team files policy. @objc - public init() { - let swift = TeamLog.EventTypeArg.memberSpaceLimitsChangeStatus - super.init(swift: swift) - } -} + public var newValue: DBXTeamLogFileCommentsPolicy { DBXTeamLogFileCommentsPolicy(swift: swift.newValue) } + /// Previous commenting on team files policy. Might be missing due to historical data gap. + @objc + public var previousValue: DBXTeamLogFileCommentsPolicy? { guard let swift = swift.previousValue else { return nil }; return DBXTeamLogFileCommentsPolicy(swift: swift) } -/// (members) Removed custom member space limit -@objc -public class DBXTeamLogEventTypeArgMemberSpaceLimitsRemoveCustomQuota: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.memberSpaceLimitsRemoveCustomQuota - super.init(swift: swift) + public init(newValue: DBXTeamLogFileCommentsPolicy, previousValue: DBXTeamLogFileCommentsPolicy?) { + self.swift = TeamLog.FileCommentsChangePolicyDetails(newValue: newValue.swift, previousValue: previousValue?.swift) } -} -/// (members) Suggested person to add to team -@objc -public class DBXTeamLogEventTypeArgMemberSuggest: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.memberSuggest - super.init(swift: swift) + let swift: TeamLog.FileCommentsChangePolicyDetails + + public init(swift: TeamLog.FileCommentsChangePolicyDetails) { + self.swift = swift } -} -/// (members) Transferred contents of deleted member account to another member -@objc -public class DBXTeamLogEventTypeArgMemberTransferAccountContents: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.memberTransferAccountContents - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (members) Added pending secondary email +/// Objective-C compatible FileCommentsChangePolicyType struct @objc -public class DBXTeamLogEventTypeArgPendingSecondaryEmailAdded: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileCommentsChangePolicyType: NSObject { + /// (no description) @objc - public init() { - let swift = TeamLog.EventTypeArg.pendingSecondaryEmailAdded - super.init(swift: swift) - } -} + public var description_: String { swift.description_ } -/// (members) Deleted secondary email -@objc -public class DBXTeamLogEventTypeArgSecondaryEmailDeleted: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.secondaryEmailDeleted - super.init(swift: swift) + public init(description_: String) { + self.swift = TeamLog.FileCommentsChangePolicyType(description_: description_) } -} -/// (members) Verified secondary email -@objc -public class DBXTeamLogEventTypeArgSecondaryEmailVerified: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.secondaryEmailVerified - super.init(swift: swift) + let swift: TeamLog.FileCommentsChangePolicyType + + public init(swift: TeamLog.FileCommentsChangePolicyType) { + self.swift = swift } -} -/// (members) Secondary mails policy changed -@objc -public class DBXTeamLogEventTypeArgSecondaryMailsPolicyChanged: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.secondaryMailsPolicyChanged - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (paper) Added Binder page (deprecated, replaced by 'Edited files') +/// File comments policy @objc -public class DBXTeamLogEventTypeArgBinderAddPage: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.binderAddPage - super.init(swift: swift) +public class DBXTeamLogFileCommentsPolicy: NSObject { + let swift: TeamLog.FileCommentsPolicy + + public init(swift: TeamLog.FileCommentsPolicy) { + self.swift = swift } -} -/// (paper) Added Binder section (deprecated, replaced by 'Edited files') -@objc -public class DBXTeamLogEventTypeArgBinderAddSection: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.binderAddSection - super.init(swift: swift) + public static func factory(swift: TeamLog.FileCommentsPolicy) -> DBXTeamLogFileCommentsPolicy { + switch swift { + case .disabled: + return DBXTeamLogFileCommentsPolicyDisabled() + case .enabled: + return DBXTeamLogFileCommentsPolicyEnabled() + case .other: + return DBXTeamLogFileCommentsPolicyOther() + } } -} -/// (paper) Removed Binder page (deprecated, replaced by 'Edited files') -@objc -public class DBXTeamLogEventTypeArgBinderRemovePage: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.binderRemovePage - super.init(swift: swift) - } -} + public override var description: String { swift.description } -/// (paper) Removed Binder section (deprecated, replaced by 'Edited files') -@objc -public class DBXTeamLogEventTypeArgBinderRemoveSection: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.binderRemoveSection - super.init(swift: swift) + public var asDisabled: DBXTeamLogFileCommentsPolicyDisabled? { + return self as? DBXTeamLogFileCommentsPolicyDisabled } -} -/// (paper) Renamed Binder page (deprecated, replaced by 'Edited files') -@objc -public class DBXTeamLogEventTypeArgBinderRenamePage: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.binderRenamePage - super.init(swift: swift) + public var asEnabled: DBXTeamLogFileCommentsPolicyEnabled? { + return self as? DBXTeamLogFileCommentsPolicyEnabled } -} -/// (paper) Renamed Binder section (deprecated, replaced by 'Edited files') -@objc -public class DBXTeamLogEventTypeArgBinderRenameSection: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.binderRenameSection - super.init(swift: swift) + public var asOther: DBXTeamLogFileCommentsPolicyOther? { + return self as? DBXTeamLogFileCommentsPolicyOther } } -/// (paper) Reordered Binder page (deprecated, replaced by 'Edited files') +/// An unspecified error. @objc -public class DBXTeamLogEventTypeArgBinderReorderPage: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileCommentsPolicyDisabled: DBXTeamLogFileCommentsPolicy { @objc public init() { - let swift = TeamLog.EventTypeArg.binderReorderPage + let swift = TeamLog.FileCommentsPolicy.disabled super.init(swift: swift) } } -/// (paper) Reordered Binder section (deprecated, replaced by 'Edited files') +/// An unspecified error. @objc -public class DBXTeamLogEventTypeArgBinderReorderSection: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileCommentsPolicyEnabled: DBXTeamLogFileCommentsPolicy { @objc public init() { - let swift = TeamLog.EventTypeArg.binderReorderSection + let swift = TeamLog.FileCommentsPolicy.enabled super.init(swift: swift) } } -/// (paper) Added users and/or groups to Paper doc/folder +/// An unspecified error. @objc -public class DBXTeamLogEventTypeArgPaperContentAddMember: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileCommentsPolicyOther: DBXTeamLogFileCommentsPolicy { @objc public init() { - let swift = TeamLog.EventTypeArg.paperContentAddMember + let swift = TeamLog.FileCommentsPolicy.other super.init(swift: swift) } } -/// (paper) Added Paper doc/folder to folder +/// Copied files and/or folders. @objc -public class DBXTeamLogEventTypeArgPaperContentAddToFolder: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileCopyDetails: NSObject { + /// Relocate action details. @objc - public init() { - let swift = TeamLog.EventTypeArg.paperContentAddToFolder - super.init(swift: swift) - } -} + public var relocateActionDetails: Array { swift.relocateActionDetails.map { DBXTeamLogRelocateAssetReferencesLogInfo(swift: $0) } } -/// (paper) Archived Paper doc/folder -@objc -public class DBXTeamLogEventTypeArgPaperContentArchive: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.paperContentArchive - super.init(swift: swift) + public init(relocateActionDetails: Array) { + self.swift = TeamLog.FileCopyDetails(relocateActionDetails: relocateActionDetails.map { $0.swift }) } -} -/// (paper) Created Paper doc/folder -@objc -public class DBXTeamLogEventTypeArgPaperContentCreate: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.paperContentCreate - super.init(swift: swift) + let swift: TeamLog.FileCopyDetails + + public init(swift: TeamLog.FileCopyDetails) { + self.swift = swift } -} -/// (paper) Permanently deleted Paper doc/folder -@objc -public class DBXTeamLogEventTypeArgPaperContentPermanentlyDelete: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.paperContentPermanentlyDelete - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (paper) Removed Paper doc/folder from folder +/// Objective-C compatible FileCopyType struct @objc -public class DBXTeamLogEventTypeArgPaperContentRemoveFromFolder: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileCopyType: NSObject { + /// (no description) @objc - public init() { - let swift = TeamLog.EventTypeArg.paperContentRemoveFromFolder - super.init(swift: swift) - } -} + public var description_: String { swift.description_ } -/// (paper) Removed users and/or groups from Paper doc/folder -@objc -public class DBXTeamLogEventTypeArgPaperContentRemoveMember: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.paperContentRemoveMember - super.init(swift: swift) + public init(description_: String) { + self.swift = TeamLog.FileCopyType(description_: description_) } -} -/// (paper) Renamed Paper doc/folder -@objc -public class DBXTeamLogEventTypeArgPaperContentRename: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.paperContentRename - super.init(swift: swift) + let swift: TeamLog.FileCopyType + + public init(swift: TeamLog.FileCopyType) { + self.swift = swift } -} -/// (paper) Restored archived Paper doc/folder -@objc -public class DBXTeamLogEventTypeArgPaperContentRestore: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.paperContentRestore - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (paper) Added Paper doc comment +/// Deleted file comment. @objc -public class DBXTeamLogEventTypeArgPaperDocAddComment: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileDeleteCommentDetails: NSObject { + /// Comment text. @objc - public init() { - let swift = TeamLog.EventTypeArg.paperDocAddComment - super.init(swift: swift) + public var commentText: String? { swift.commentText } + + @objc + public init(commentText: String?) { + self.swift = TeamLog.FileDeleteCommentDetails(commentText: commentText) + } + + let swift: TeamLog.FileDeleteCommentDetails + + public init(swift: TeamLog.FileDeleteCommentDetails) { + self.swift = swift } + + + @objc + public override var description: String { swift.description } } -/// (paper) Changed member permissions for Paper doc +/// Objective-C compatible FileDeleteCommentType struct @objc -public class DBXTeamLogEventTypeArgPaperDocChangeMemberRole: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileDeleteCommentType: NSObject { + /// (no description) @objc - public init() { - let swift = TeamLog.EventTypeArg.paperDocChangeMemberRole - super.init(swift: swift) + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.FileDeleteCommentType(description_: description_) + } + + let swift: TeamLog.FileDeleteCommentType + + public init(swift: TeamLog.FileDeleteCommentType) { + self.swift = swift } + + + @objc + public override var description: String { swift.description } } -/// (paper) Changed sharing setting for Paper doc +/// Deleted files and/or folders. @objc -public class DBXTeamLogEventTypeArgPaperDocChangeSharingPolicy: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.paperDocChangeSharingPolicy - super.init(swift: swift) +public class DBXTeamLogFileDeleteDetails: NSObject { + + let swift: TeamLog.FileDeleteDetails + + public init(swift: TeamLog.FileDeleteDetails) { + self.swift = swift } + + + @objc + public override var description: String { swift.description } } -/// (paper) Followed/unfollowed Paper doc +/// Objective-C compatible FileDeleteType struct @objc -public class DBXTeamLogEventTypeArgPaperDocChangeSubscription: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileDeleteType: NSObject { + /// (no description) @objc - public init() { - let swift = TeamLog.EventTypeArg.paperDocChangeSubscription - super.init(swift: swift) + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.FileDeleteType(description_: description_) + } + + let swift: TeamLog.FileDeleteType + + public init(swift: TeamLog.FileDeleteType) { + self.swift = swift } + + + @objc + public override var description: String { swift.description } } -/// (paper) Archived Paper doc (deprecated, no longer logged) +/// Downloaded files and/or folders. @objc -public class DBXTeamLogEventTypeArgPaperDocDeleted: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.paperDocDeleted - super.init(swift: swift) +public class DBXTeamLogFileDownloadDetails: NSObject { + + let swift: TeamLog.FileDownloadDetails + + public init(swift: TeamLog.FileDownloadDetails) { + self.swift = swift } + + + @objc + public override var description: String { swift.description } } -/// (paper) Deleted Paper doc comment +/// Objective-C compatible FileDownloadType struct @objc -public class DBXTeamLogEventTypeArgPaperDocDeleteComment: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileDownloadType: NSObject { + /// (no description) @objc - public init() { - let swift = TeamLog.EventTypeArg.paperDocDeleteComment - super.init(swift: swift) + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.FileDownloadType(description_: description_) + } + + let swift: TeamLog.FileDownloadType + + public init(swift: TeamLog.FileDownloadType) { + self.swift = swift } + + + @objc + public override var description: String { swift.description } } -/// (paper) Downloaded Paper doc in specific format +/// Edited file comment. @objc -public class DBXTeamLogEventTypeArgPaperDocDownload: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileEditCommentDetails: NSObject { + /// Comment text. @objc - public init() { - let swift = TeamLog.EventTypeArg.paperDocDownload - super.init(swift: swift) + public var commentText: String? { swift.commentText } + /// Previous comment text. + @objc + public var previousCommentText: String { swift.previousCommentText } + + @objc + public init(previousCommentText: String, commentText: String?) { + self.swift = TeamLog.FileEditCommentDetails(previousCommentText: previousCommentText, commentText: commentText) + } + + let swift: TeamLog.FileEditCommentDetails + + public init(swift: TeamLog.FileEditCommentDetails) { + self.swift = swift } + + + @objc + public override var description: String { swift.description } } -/// (paper) Edited Paper doc +/// Objective-C compatible FileEditCommentType struct @objc -public class DBXTeamLogEventTypeArgPaperDocEdit: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileEditCommentType: NSObject { + /// (no description) @objc - public init() { - let swift = TeamLog.EventTypeArg.paperDocEdit - super.init(swift: swift) + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.FileEditCommentType(description_: description_) + } + + let swift: TeamLog.FileEditCommentType + + public init(swift: TeamLog.FileEditCommentType) { + self.swift = swift } + + + @objc + public override var description: String { swift.description } } -/// (paper) Edited Paper doc comment +/// Edited files. @objc -public class DBXTeamLogEventTypeArgPaperDocEditComment: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.paperDocEditComment - super.init(swift: swift) +public class DBXTeamLogFileEditDetails: NSObject { + + let swift: TeamLog.FileEditDetails + + public init(swift: TeamLog.FileEditDetails) { + self.swift = swift } + + + @objc + public override var description: String { swift.description } } -/// (paper) Followed Paper doc (deprecated, replaced by 'Followed/unfollowed Paper doc') +/// Objective-C compatible FileEditType struct @objc -public class DBXTeamLogEventTypeArgPaperDocFollowed: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileEditType: NSObject { + /// (no description) @objc - public init() { - let swift = TeamLog.EventTypeArg.paperDocFollowed - super.init(swift: swift) + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.FileEditType(description_: description_) + } + + let swift: TeamLog.FileEditType + + public init(swift: TeamLog.FileEditType) { + self.swift = swift } + + + @objc + public override var description: String { swift.description } } -/// (paper) Mentioned user in Paper doc +/// Created copy reference to file/folder. @objc -public class DBXTeamLogEventTypeArgPaperDocMention: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.paperDocMention - super.init(swift: swift) +public class DBXTeamLogFileGetCopyReferenceDetails: NSObject { + + let swift: TeamLog.FileGetCopyReferenceDetails + + public init(swift: TeamLog.FileGetCopyReferenceDetails) { + self.swift = swift } -} -/// (paper) Transferred ownership of Paper doc -@objc -public class DBXTeamLogEventTypeArgPaperDocOwnershipChanged: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.paperDocOwnershipChanged - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (paper) Requested access to Paper doc +/// Objective-C compatible FileGetCopyReferenceType struct @objc -public class DBXTeamLogEventTypeArgPaperDocRequestAccess: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileGetCopyReferenceType: NSObject { + /// (no description) @objc - public init() { - let swift = TeamLog.EventTypeArg.paperDocRequestAccess - super.init(swift: swift) - } -} + public var description_: String { swift.description_ } -/// (paper) Resolved Paper doc comment -@objc -public class DBXTeamLogEventTypeArgPaperDocResolveComment: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.paperDocResolveComment - super.init(swift: swift) + public init(description_: String) { + self.swift = TeamLog.FileGetCopyReferenceType(description_: description_) } -} -/// (paper) Restored Paper doc to previous version -@objc -public class DBXTeamLogEventTypeArgPaperDocRevert: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.paperDocRevert - super.init(swift: swift) + let swift: TeamLog.FileGetCopyReferenceType + + public init(swift: TeamLog.FileGetCopyReferenceType) { + self.swift = swift } -} -/// (paper) Shared Paper doc via Slack -@objc -public class DBXTeamLogEventTypeArgPaperDocSlackShare: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.paperDocSlackShare - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (paper) Shared Paper doc with users and/or groups (deprecated, no longer logged) +/// Liked file comment. @objc -public class DBXTeamLogEventTypeArgPaperDocTeamInvite: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileLikeCommentDetails: NSObject { + /// Comment text. @objc - public init() { - let swift = TeamLog.EventTypeArg.paperDocTeamInvite - super.init(swift: swift) - } -} + public var commentText: String? { swift.commentText } -/// (paper) Deleted Paper doc -@objc -public class DBXTeamLogEventTypeArgPaperDocTrashed: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.paperDocTrashed - super.init(swift: swift) + public init(commentText: String?) { + self.swift = TeamLog.FileLikeCommentDetails(commentText: commentText) } -} -/// (paper) Unresolved Paper doc comment -@objc -public class DBXTeamLogEventTypeArgPaperDocUnresolveComment: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.paperDocUnresolveComment - super.init(swift: swift) + let swift: TeamLog.FileLikeCommentDetails + + public init(swift: TeamLog.FileLikeCommentDetails) { + self.swift = swift } -} -/// (paper) Restored Paper doc -@objc -public class DBXTeamLogEventTypeArgPaperDocUntrashed: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.paperDocUntrashed - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (paper) Viewed Paper doc +/// Objective-C compatible FileLikeCommentType struct @objc -public class DBXTeamLogEventTypeArgPaperDocView: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileLikeCommentType: NSObject { + /// (no description) @objc - public init() { - let swift = TeamLog.EventTypeArg.paperDocView - super.init(swift: swift) - } -} + public var description_: String { swift.description_ } -/// (paper) Changed Paper external sharing setting to anyone (deprecated, no longer logged) -@objc -public class DBXTeamLogEventTypeArgPaperExternalViewAllow: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.paperExternalViewAllow - super.init(swift: swift) + public init(description_: String) { + self.swift = TeamLog.FileLikeCommentType(description_: description_) } -} -/// (paper) Changed Paper external sharing setting to default team (deprecated, no longer logged) -@objc -public class DBXTeamLogEventTypeArgPaperExternalViewDefaultTeam: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.paperExternalViewDefaultTeam - super.init(swift: swift) + let swift: TeamLog.FileLikeCommentType + + public init(swift: TeamLog.FileLikeCommentType) { + self.swift = swift } -} -/// (paper) Changed Paper external sharing setting to team-only (deprecated, no longer logged) -@objc -public class DBXTeamLogEventTypeArgPaperExternalViewForbid: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.paperExternalViewForbid - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (paper) Followed/unfollowed Paper folder +/// Locked/unlocked editing for a file. @objc -public class DBXTeamLogEventTypeArgPaperFolderChangeSubscription: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileLockingLockStatusChangedDetails: NSObject { + /// Previous lock status of the file. @objc - public init() { - let swift = TeamLog.EventTypeArg.paperFolderChangeSubscription - super.init(swift: swift) - } -} + public var previousValue: DBXTeamLogLockStatus { DBXTeamLogLockStatus(swift: swift.previousValue) } + /// New lock status of the file. + @objc + public var newValue: DBXTeamLogLockStatus { DBXTeamLogLockStatus(swift: swift.newValue) } -/// (paper) Archived Paper folder (deprecated, no longer logged) -@objc -public class DBXTeamLogEventTypeArgPaperFolderDeleted: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.paperFolderDeleted - super.init(swift: swift) + public init(previousValue: DBXTeamLogLockStatus, newValue: DBXTeamLogLockStatus) { + self.swift = TeamLog.FileLockingLockStatusChangedDetails(previousValue: previousValue.swift, newValue: newValue.swift) } -} -/// (paper) Followed Paper folder (deprecated, replaced by 'Followed/unfollowed Paper folder') -@objc -public class DBXTeamLogEventTypeArgPaperFolderFollowed: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.paperFolderFollowed - super.init(swift: swift) + let swift: TeamLog.FileLockingLockStatusChangedDetails + + public init(swift: TeamLog.FileLockingLockStatusChangedDetails) { + self.swift = swift } -} -/// (paper) Shared Paper folder with users and/or groups (deprecated, no longer logged) -@objc -public class DBXTeamLogEventTypeArgPaperFolderTeamInvite: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.paperFolderTeamInvite - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (paper) Changed permissions for published doc +/// Objective-C compatible FileLockingLockStatusChangedType struct @objc -public class DBXTeamLogEventTypeArgPaperPublishedLinkChangePermission: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileLockingLockStatusChangedType: NSObject { + /// (no description) @objc - public init() { - let swift = TeamLog.EventTypeArg.paperPublishedLinkChangePermission - super.init(swift: swift) - } -} + public var description_: String { swift.description_ } -/// (paper) Published doc -@objc -public class DBXTeamLogEventTypeArgPaperPublishedLinkCreate: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.paperPublishedLinkCreate - super.init(swift: swift) + public init(description_: String) { + self.swift = TeamLog.FileLockingLockStatusChangedType(description_: description_) } -} -/// (paper) Unpublished doc -@objc -public class DBXTeamLogEventTypeArgPaperPublishedLinkDisabled: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.paperPublishedLinkDisabled - super.init(swift: swift) + let swift: TeamLog.FileLockingLockStatusChangedType + + public init(swift: TeamLog.FileLockingLockStatusChangedType) { + self.swift = swift } -} -/// (paper) Viewed published doc -@objc -public class DBXTeamLogEventTypeArgPaperPublishedLinkView: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.paperPublishedLinkView - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (passwords) Changed password +/// Changed file locking policy for team. @objc -public class DBXTeamLogEventTypeArgPasswordChange: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileLockingPolicyChangedDetails: NSObject { + /// New file locking policy. @objc - public init() { - let swift = TeamLog.EventTypeArg.passwordChange - super.init(swift: swift) - } -} + public var newValue: DBXTeamPoliciesFileLockingPolicyState { DBXTeamPoliciesFileLockingPolicyState(swift: swift.newValue) } + /// Previous file locking policy. + @objc + public var previousValue: DBXTeamPoliciesFileLockingPolicyState { DBXTeamPoliciesFileLockingPolicyState(swift: swift.previousValue) } -/// (passwords) Reset password -@objc -public class DBXTeamLogEventTypeArgPasswordReset: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.passwordReset - super.init(swift: swift) + public init(newValue: DBXTeamPoliciesFileLockingPolicyState, previousValue: DBXTeamPoliciesFileLockingPolicyState) { + self.swift = TeamLog.FileLockingPolicyChangedDetails(newValue: newValue.swift, previousValue: previousValue.swift) } -} -/// (passwords) Reset all team member passwords -@objc -public class DBXTeamLogEventTypeArgPasswordResetAll: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.passwordResetAll - super.init(swift: swift) + let swift: TeamLog.FileLockingPolicyChangedDetails + + public init(swift: TeamLog.FileLockingPolicyChangedDetails) { + self.swift = swift } -} -/// (reports) Created Classification report -@objc -public class DBXTeamLogEventTypeArgClassificationCreateReport: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.classificationCreateReport - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (reports) Couldn't create Classification report +/// Objective-C compatible FileLockingPolicyChangedType struct @objc -public class DBXTeamLogEventTypeArgClassificationCreateReportFail: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileLockingPolicyChangedType: NSObject { + /// (no description) @objc - public init() { - let swift = TeamLog.EventTypeArg.classificationCreateReportFail - super.init(swift: swift) - } -} + public var description_: String { swift.description_ } -/// (reports) Created EMM-excluded users report -@objc -public class DBXTeamLogEventTypeArgEmmCreateExceptionsReport: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.emmCreateExceptionsReport - super.init(swift: swift) + public init(description_: String) { + self.swift = TeamLog.FileLockingPolicyChangedType(description_: description_) } -} -/// (reports) Created EMM mobile app usage report -@objc -public class DBXTeamLogEventTypeArgEmmCreateUsageReport: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.emmCreateUsageReport - super.init(swift: swift) + let swift: TeamLog.FileLockingPolicyChangedType + + public init(swift: TeamLog.FileLockingPolicyChangedType) { + self.swift = swift } -} -/// (reports) Created member data report -@objc -public class DBXTeamLogEventTypeArgExportMembersReport: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.exportMembersReport - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (reports) Failed to create members data report +/// Generic information relevant both for files and folders @objc -public class DBXTeamLogEventTypeArgExportMembersReportFail: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileOrFolderLogInfo: NSObject { + /// Path relative to event context. @objc - public init() { - let swift = TeamLog.EventTypeArg.exportMembersReportFail - super.init(swift: swift) - } -} + public var path: DBXTeamLogPathLogInfo { DBXTeamLogPathLogInfo(swift: swift.path) } + /// Display name. + @objc + public var displayName: String? { swift.displayName } + /// Unique ID. + @objc + public var fileId: String? { swift.fileId } + /// File or folder size in bytes. + @objc + public var fileSize: NSNumber? { swift.fileSize as NSNumber? } -/// (reports) Created External sharing report -@objc -public class DBXTeamLogEventTypeArgExternalSharingCreateReport: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.externalSharingCreateReport - super.init(swift: swift) + public init(path: DBXTeamLogPathLogInfo, displayName: String?, fileId: String?, fileSize: NSNumber?) { + self.swift = TeamLog.FileOrFolderLogInfo(path: path.swift, displayName: displayName, fileId: fileId, fileSize: fileSize?.uint64Value) } -} -/// (reports) Couldn't create External sharing report -@objc -public class DBXTeamLogEventTypeArgExternalSharingReportFailed: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.externalSharingReportFailed - super.init(swift: swift) + let swift: TeamLog.FileOrFolderLogInfo + + public init(swift: TeamLog.FileOrFolderLogInfo) { + self.swift = swift } -} -/// (reports) Report created: Links created with no expiration -@objc -public class DBXTeamLogEventTypeArgNoExpirationLinkGenCreateReport: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.noExpirationLinkGenCreateReport - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (reports) Couldn't create report: Links created with no expiration +/// File's logged information. @objc -public class DBXTeamLogEventTypeArgNoExpirationLinkGenReportFailed: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.noExpirationLinkGenReportFailed +public class DBXTeamLogFileLogInfo: DBXTeamLogFileOrFolderLogInfo { + + let subSwift: TeamLog.FileLogInfo + + public init(swift: TeamLog.FileLogInfo) { + self.subSwift = swift super.init(swift: swift) } -} -/// (reports) Report created: Links created without passwords -@objc -public class DBXTeamLogEventTypeArgNoPasswordLinkGenCreateReport: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.noPasswordLinkGenCreateReport - super.init(swift: swift) - } + public override var description: String { subSwift.description } } -/// (reports) Couldn't create report: Links created without passwords +/// Moved files and/or folders. @objc -public class DBXTeamLogEventTypeArgNoPasswordLinkGenReportFailed: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileMoveDetails: NSObject { + /// Relocate action details. @objc - public init() { - let swift = TeamLog.EventTypeArg.noPasswordLinkGenReportFailed - super.init(swift: swift) - } -} + public var relocateActionDetails: Array { swift.relocateActionDetails.map { DBXTeamLogRelocateAssetReferencesLogInfo(swift: $0) } } -/// (reports) Report created: Views of links without passwords -@objc -public class DBXTeamLogEventTypeArgNoPasswordLinkViewCreateReport: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.noPasswordLinkViewCreateReport - super.init(swift: swift) + public init(relocateActionDetails: Array) { + self.swift = TeamLog.FileMoveDetails(relocateActionDetails: relocateActionDetails.map { $0.swift }) } -} -/// (reports) Couldn't create report: Views of links without passwords -@objc -public class DBXTeamLogEventTypeArgNoPasswordLinkViewReportFailed: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.noPasswordLinkViewReportFailed - super.init(swift: swift) + let swift: TeamLog.FileMoveDetails + + public init(swift: TeamLog.FileMoveDetails) { + self.swift = swift } -} -/// (reports) Report created: Views of old links -@objc -public class DBXTeamLogEventTypeArgOutdatedLinkViewCreateReport: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.outdatedLinkViewCreateReport - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (reports) Couldn't create report: Views of old links +/// Objective-C compatible FileMoveType struct @objc -public class DBXTeamLogEventTypeArgOutdatedLinkViewReportFailed: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileMoveType: NSObject { + /// (no description) @objc - public init() { - let swift = TeamLog.EventTypeArg.outdatedLinkViewReportFailed - super.init(swift: swift) - } -} + public var description_: String { swift.description_ } -/// (reports) Exported all team Paper docs -@objc -public class DBXTeamLogEventTypeArgPaperAdminExportStart: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.paperAdminExportStart - super.init(swift: swift) + public init(description_: String) { + self.swift = TeamLog.FileMoveType(description_: description_) } -} -/// (reports) Created ransomware report -@objc -public class DBXTeamLogEventTypeArgRansomwareAlertCreateReport: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.ransomwareAlertCreateReport - super.init(swift: swift) + let swift: TeamLog.FileMoveType + + public init(swift: TeamLog.FileMoveType) { + self.swift = swift } -} -/// (reports) Couldn't generate ransomware report -@objc -public class DBXTeamLogEventTypeArgRansomwareAlertCreateReportFailed: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.ransomwareAlertCreateReportFailed - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (reports) Created Smart Sync non-admin devices report +/// Permanently deleted files and/or folders. @objc -public class DBXTeamLogEventTypeArgSmartSyncCreateAdminPrivilegeReport: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.smartSyncCreateAdminPrivilegeReport - super.init(swift: swift) +public class DBXTeamLogFilePermanentlyDeleteDetails: NSObject { + + let swift: TeamLog.FilePermanentlyDeleteDetails + + public init(swift: TeamLog.FilePermanentlyDeleteDetails) { + self.swift = swift } -} -/// (reports) Created team activity report -@objc -public class DBXTeamLogEventTypeArgTeamActivityCreateReport: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.teamActivityCreateReport - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (reports) Couldn't generate team activity report +/// Objective-C compatible FilePermanentlyDeleteType struct @objc -public class DBXTeamLogEventTypeArgTeamActivityCreateReportFail: DBXTeamLogEventTypeArg { +public class DBXTeamLogFilePermanentlyDeleteType: NSObject { + /// (no description) @objc - public init() { - let swift = TeamLog.EventTypeArg.teamActivityCreateReportFail - super.init(swift: swift) - } -} + public var description_: String { swift.description_ } -/// (sharing) Shared album -@objc -public class DBXTeamLogEventTypeArgCollectionShare: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.collectionShare - super.init(swift: swift) + public init(description_: String) { + self.swift = TeamLog.FilePermanentlyDeleteType(description_: description_) } -} -/// (sharing) Transfer files added -@objc -public class DBXTeamLogEventTypeArgFileTransfersFileAdd: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.fileTransfersFileAdd - super.init(swift: swift) + let swift: TeamLog.FilePermanentlyDeleteType + + public init(swift: TeamLog.FilePermanentlyDeleteType) { + self.swift = swift } -} -/// (sharing) Deleted transfer -@objc -public class DBXTeamLogEventTypeArgFileTransfersTransferDelete: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.fileTransfersTransferDelete - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (sharing) Transfer downloaded +/// Previewed files and/or folders. @objc -public class DBXTeamLogEventTypeArgFileTransfersTransferDownload: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.fileTransfersTransferDownload - super.init(swift: swift) +public class DBXTeamLogFilePreviewDetails: NSObject { + + let swift: TeamLog.FilePreviewDetails + + public init(swift: TeamLog.FilePreviewDetails) { + self.swift = swift } -} -/// (sharing) Sent transfer -@objc -public class DBXTeamLogEventTypeArgFileTransfersTransferSend: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.fileTransfersTransferSend - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (sharing) Viewed transfer +/// Objective-C compatible FilePreviewType struct @objc -public class DBXTeamLogEventTypeArgFileTransfersTransferView: DBXTeamLogEventTypeArg { +public class DBXTeamLogFilePreviewType: NSObject { + /// (no description) @objc - public init() { - let swift = TeamLog.EventTypeArg.fileTransfersTransferView - super.init(swift: swift) - } -} + public var description_: String { swift.description_ } -/// (sharing) Changed Paper doc to invite-only (deprecated, no longer logged) -@objc -public class DBXTeamLogEventTypeArgNoteAclInviteOnly: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.noteAclInviteOnly - super.init(swift: swift) + public init(description_: String) { + self.swift = TeamLog.FilePreviewType(description_: description_) } -} -/// (sharing) Changed Paper doc to link-accessible (deprecated, no longer logged) -@objc -public class DBXTeamLogEventTypeArgNoteAclLink: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.noteAclLink - super.init(swift: swift) + let swift: TeamLog.FilePreviewType + + public init(swift: TeamLog.FilePreviewType) { + self.swift = swift } -} -/// (sharing) Changed Paper doc to link-accessible for team (deprecated, no longer logged) -@objc -public class DBXTeamLogEventTypeArgNoteAclTeamLink: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.noteAclTeamLink - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (sharing) Shared Paper doc (deprecated, no longer logged) +/// Changed File Provider Migration policy for team. @objc -public class DBXTeamLogEventTypeArgNoteShared: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileProviderMigrationPolicyChangedDetails: NSObject { + /// To. @objc - public init() { - let swift = TeamLog.EventTypeArg.noteShared - super.init(swift: swift) - } -} + public var newValue: DBXTeamPoliciesFileProviderMigrationPolicyState { DBXTeamPoliciesFileProviderMigrationPolicyState(swift: swift.newValue) } + /// From. + @objc + public var previousValue: DBXTeamPoliciesFileProviderMigrationPolicyState { DBXTeamPoliciesFileProviderMigrationPolicyState(swift: swift.previousValue) } -/// (sharing) Shared received Paper doc (deprecated, no longer logged) -@objc -public class DBXTeamLogEventTypeArgNoteShareReceive: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.noteShareReceive - super.init(swift: swift) + public init(newValue: DBXTeamPoliciesFileProviderMigrationPolicyState, previousValue: DBXTeamPoliciesFileProviderMigrationPolicyState) { + self.swift = TeamLog.FileProviderMigrationPolicyChangedDetails(newValue: newValue.swift, previousValue: previousValue.swift) } -} -/// (sharing) Opened shared Paper doc (deprecated, no longer logged) -@objc -public class DBXTeamLogEventTypeArgOpenNoteShared: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.openNoteShared - super.init(swift: swift) + let swift: TeamLog.FileProviderMigrationPolicyChangedDetails + + public init(swift: TeamLog.FileProviderMigrationPolicyChangedDetails) { + self.swift = swift } -} -/// (sharing) Created shared link in Replay -@objc -public class DBXTeamLogEventTypeArgReplayFileSharedLinkCreated: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.replayFileSharedLinkCreated - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (sharing) Modified shared link in Replay +/// Objective-C compatible FileProviderMigrationPolicyChangedType struct @objc -public class DBXTeamLogEventTypeArgReplayFileSharedLinkModified: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileProviderMigrationPolicyChangedType: NSObject { + /// (no description) @objc - public init() { - let swift = TeamLog.EventTypeArg.replayFileSharedLinkModified - super.init(swift: swift) - } -} + public var description_: String { swift.description_ } -/// (sharing) Added member to Replay Project -@objc -public class DBXTeamLogEventTypeArgReplayProjectTeamAdd: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.replayProjectTeamAdd - super.init(swift: swift) + public init(description_: String) { + self.swift = TeamLog.FileProviderMigrationPolicyChangedType(description_: description_) } -} -/// (sharing) Removed member from Replay Project -@objc -public class DBXTeamLogEventTypeArgReplayProjectTeamDelete: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.replayProjectTeamDelete - super.init(swift: swift) + let swift: TeamLog.FileProviderMigrationPolicyChangedType + + public init(swift: TeamLog.FileProviderMigrationPolicyChangedType) { + self.swift = swift } -} -/// (sharing) Added team to shared folder (deprecated, no longer logged) -@objc -public class DBXTeamLogEventTypeArgSfAddGroup: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.sfAddGroup - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (sharing) Allowed non-collaborators to view links to files in shared folder (deprecated, no longer logged) +/// Renamed files and/or folders. @objc -public class DBXTeamLogEventTypeArgSfAllowNonMembersToViewSharedLinks: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileRenameDetails: NSObject { + /// Relocate action details. @objc - public init() { - let swift = TeamLog.EventTypeArg.sfAllowNonMembersToViewSharedLinks - super.init(swift: swift) - } -} + public var relocateActionDetails: Array { swift.relocateActionDetails.map { DBXTeamLogRelocateAssetReferencesLogInfo(swift: $0) } } -/// (sharing) Set team members to see warning before sharing folders outside team (deprecated, no longer logged) -@objc -public class DBXTeamLogEventTypeArgSfExternalInviteWarn: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.sfExternalInviteWarn - super.init(swift: swift) + public init(relocateActionDetails: Array) { + self.swift = TeamLog.FileRenameDetails(relocateActionDetails: relocateActionDetails.map { $0.swift }) } -} -/// (sharing) Invited Facebook users to shared folder (deprecated, no longer logged) -@objc -public class DBXTeamLogEventTypeArgSfFbInvite: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.sfFbInvite - super.init(swift: swift) + let swift: TeamLog.FileRenameDetails + + public init(swift: TeamLog.FileRenameDetails) { + self.swift = swift } -} -/// (sharing) Changed Facebook user's role in shared folder (deprecated, no longer logged) -@objc -public class DBXTeamLogEventTypeArgSfFbInviteChangeRole: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.sfFbInviteChangeRole - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (sharing) Uninvited Facebook user from shared folder (deprecated, no longer logged) +/// Objective-C compatible FileRenameType struct @objc -public class DBXTeamLogEventTypeArgSfFbUninvite: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileRenameType: NSObject { + /// (no description) @objc - public init() { - let swift = TeamLog.EventTypeArg.sfFbUninvite - super.init(swift: swift) - } -} + public var description_: String { swift.description_ } -/// (sharing) Invited group to shared folder (deprecated, no longer logged) -@objc -public class DBXTeamLogEventTypeArgSfInviteGroup: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.sfInviteGroup - super.init(swift: swift) + public init(description_: String) { + self.swift = TeamLog.FileRenameType(description_: description_) } -} -/// (sharing) Granted access to shared folder (deprecated, no longer logged) -@objc -public class DBXTeamLogEventTypeArgSfTeamGrantAccess: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.sfTeamGrantAccess - super.init(swift: swift) + let swift: TeamLog.FileRenameType + + public init(swift: TeamLog.FileRenameType) { + self.swift = swift } -} -/// (sharing) Invited team members to shared folder (deprecated, replaced by 'Invited user to Dropbox and added -/// them to shared file/folder') -@objc -public class DBXTeamLogEventTypeArgSfTeamInvite: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.sfTeamInvite - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (sharing) Changed team member's role in shared folder (deprecated, no longer logged) +/// Auto closed file request. @objc -public class DBXTeamLogEventTypeArgSfTeamInviteChangeRole: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileRequestAutoCloseDetails: NSObject { + /// File request id. Might be missing due to historical data gap. @objc - public init() { - let swift = TeamLog.EventTypeArg.sfTeamInviteChangeRole - super.init(swift: swift) - } -} + public var fileRequestId: String? { swift.fileRequestId } + /// Reason for the auto close. + @objc + public var reason: String? { swift.reason } + /// Previous file request details. Might be missing due to historical data gap. + @objc + public var previousDetails: DBXTeamLogFileRequestDetails? { guard let swift = swift.previousDetails else { return nil }; return DBXTeamLogFileRequestDetails(swift: swift) } -/// (sharing) Joined team member's shared folder (deprecated, no longer logged) -@objc -public class DBXTeamLogEventTypeArgSfTeamJoin: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.sfTeamJoin - super.init(swift: swift) + public init(fileRequestId: String?, reason: String?, previousDetails: DBXTeamLogFileRequestDetails?) { + self.swift = TeamLog.FileRequestAutoCloseDetails(fileRequestId: fileRequestId, reason: reason, previousDetails: previousDetails?.swift) } -} -/// (sharing) Joined team member's shared folder from link (deprecated, no longer logged) -@objc -public class DBXTeamLogEventTypeArgSfTeamJoinFromOobLink: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.sfTeamJoinFromOobLink - super.init(swift: swift) + let swift: TeamLog.FileRequestAutoCloseDetails + + public init(swift: TeamLog.FileRequestAutoCloseDetails) { + self.swift = swift } -} -/// (sharing) Unshared folder with team member (deprecated, replaced by 'Removed invitee from shared file/folder -/// before invite was accepted') -@objc -public class DBXTeamLogEventTypeArgSfTeamUninvite: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.sfTeamUninvite - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (sharing) Invited user to Dropbox and added them to shared file/folder +/// Objective-C compatible FileRequestAutoCloseType struct @objc -public class DBXTeamLogEventTypeArgSharedContentAddInvitees: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileRequestAutoCloseType: NSObject { + /// (no description) @objc - public init() { - let swift = TeamLog.EventTypeArg.sharedContentAddInvitees - super.init(swift: swift) - } -} + public var description_: String { swift.description_ } -/// (sharing) Added expiration date to link for shared file/folder (deprecated, no longer logged) -@objc -public class DBXTeamLogEventTypeArgSharedContentAddLinkExpiry: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.sharedContentAddLinkExpiry - super.init(swift: swift) + public init(description_: String) { + self.swift = TeamLog.FileRequestAutoCloseType(description_: description_) } -} -/// (sharing) Added password to link for shared file/folder (deprecated, no longer logged) -@objc -public class DBXTeamLogEventTypeArgSharedContentAddLinkPassword: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.sharedContentAddLinkPassword - super.init(swift: swift) + let swift: TeamLog.FileRequestAutoCloseType + + public init(swift: TeamLog.FileRequestAutoCloseType) { + self.swift = swift } -} -/// (sharing) Added users and/or groups to shared file/folder -@objc -public class DBXTeamLogEventTypeArgSharedContentAddMember: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.sharedContentAddMember - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (sharing) Changed whether members can download shared file/folder (deprecated, no longer logged) +/// Changed file request. @objc -public class DBXTeamLogEventTypeArgSharedContentChangeDownloadsPolicy: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileRequestChangeDetails: NSObject { + /// File request id. Might be missing due to historical data gap. @objc - public init() { - let swift = TeamLog.EventTypeArg.sharedContentChangeDownloadsPolicy - super.init(swift: swift) - } -} + public var fileRequestId: String? { swift.fileRequestId } + /// Previous file request details. Might be missing due to historical data gap. + @objc + public var previousDetails: DBXTeamLogFileRequestDetails? { guard let swift = swift.previousDetails else { return nil }; return DBXTeamLogFileRequestDetails(swift: swift) } + /// New file request details. + @objc + public var newDetails: DBXTeamLogFileRequestDetails { DBXTeamLogFileRequestDetails(swift: swift.newDetails) } -/// (sharing) Changed access type of invitee to shared file/folder before invite was accepted -@objc -public class DBXTeamLogEventTypeArgSharedContentChangeInviteeRole: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.sharedContentChangeInviteeRole - super.init(swift: swift) + public init(newDetails: DBXTeamLogFileRequestDetails, fileRequestId: String?, previousDetails: DBXTeamLogFileRequestDetails?) { + self.swift = TeamLog.FileRequestChangeDetails(newDetails: newDetails.swift, fileRequestId: fileRequestId, previousDetails: previousDetails?.swift) } -} -/// (sharing) Changed link audience of shared file/folder (deprecated, no longer logged) -@objc -public class DBXTeamLogEventTypeArgSharedContentChangeLinkAudience: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.sharedContentChangeLinkAudience - super.init(swift: swift) + let swift: TeamLog.FileRequestChangeDetails + + public init(swift: TeamLog.FileRequestChangeDetails) { + self.swift = swift } -} -/// (sharing) Changed link expiration of shared file/folder (deprecated, no longer logged) -@objc -public class DBXTeamLogEventTypeArgSharedContentChangeLinkExpiry: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.sharedContentChangeLinkExpiry - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (sharing) Changed link password of shared file/folder (deprecated, no longer logged) +/// Objective-C compatible FileRequestChangeType struct @objc -public class DBXTeamLogEventTypeArgSharedContentChangeLinkPassword: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileRequestChangeType: NSObject { + /// (no description) @objc - public init() { - let swift = TeamLog.EventTypeArg.sharedContentChangeLinkPassword - super.init(swift: swift) - } -} + public var description_: String { swift.description_ } -/// (sharing) Changed access type of shared file/folder member -@objc -public class DBXTeamLogEventTypeArgSharedContentChangeMemberRole: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.sharedContentChangeMemberRole - super.init(swift: swift) + public init(description_: String) { + self.swift = TeamLog.FileRequestChangeType(description_: description_) } -} -/// (sharing) Changed whether members can see who viewed shared file/folder -@objc -public class DBXTeamLogEventTypeArgSharedContentChangeViewerInfoPolicy: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.sharedContentChangeViewerInfoPolicy - super.init(swift: swift) + let swift: TeamLog.FileRequestChangeType + + public init(swift: TeamLog.FileRequestChangeType) { + self.swift = swift } -} -/// (sharing) Acquired membership of shared file/folder by accepting invite -@objc -public class DBXTeamLogEventTypeArgSharedContentClaimInvitation: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.sharedContentClaimInvitation - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (sharing) Copied shared file/folder to own Dropbox +/// Closed file request. @objc -public class DBXTeamLogEventTypeArgSharedContentCopy: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileRequestCloseDetails: NSObject { + /// File request id. Might be missing due to historical data gap. @objc - public init() { - let swift = TeamLog.EventTypeArg.sharedContentCopy - super.init(swift: swift) - } -} + public var fileRequestId: String? { swift.fileRequestId } + /// Previous file request details. Might be missing due to historical data gap. + @objc + public var previousDetails: DBXTeamLogFileRequestDetails? { guard let swift = swift.previousDetails else { return nil }; return DBXTeamLogFileRequestDetails(swift: swift) } -/// (sharing) Downloaded shared file/folder -@objc -public class DBXTeamLogEventTypeArgSharedContentDownload: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.sharedContentDownload - super.init(swift: swift) + public init(fileRequestId: String?, previousDetails: DBXTeamLogFileRequestDetails?) { + self.swift = TeamLog.FileRequestCloseDetails(fileRequestId: fileRequestId, previousDetails: previousDetails?.swift) } -} -/// (sharing) Left shared file/folder -@objc -public class DBXTeamLogEventTypeArgSharedContentRelinquishMembership: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.sharedContentRelinquishMembership - super.init(swift: swift) + let swift: TeamLog.FileRequestCloseDetails + + public init(swift: TeamLog.FileRequestCloseDetails) { + self.swift = swift } -} -/// (sharing) Removed invitee from shared file/folder before invite was accepted -@objc -public class DBXTeamLogEventTypeArgSharedContentRemoveInvitees: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.sharedContentRemoveInvitees - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (sharing) Removed link expiration date of shared file/folder (deprecated, no longer logged) +/// Objective-C compatible FileRequestCloseType struct @objc -public class DBXTeamLogEventTypeArgSharedContentRemoveLinkExpiry: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileRequestCloseType: NSObject { + /// (no description) @objc - public init() { - let swift = TeamLog.EventTypeArg.sharedContentRemoveLinkExpiry - super.init(swift: swift) - } -} + public var description_: String { swift.description_ } -/// (sharing) Removed link password of shared file/folder (deprecated, no longer logged) -@objc -public class DBXTeamLogEventTypeArgSharedContentRemoveLinkPassword: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.sharedContentRemoveLinkPassword - super.init(swift: swift) + public init(description_: String) { + self.swift = TeamLog.FileRequestCloseType(description_: description_) } -} -/// (sharing) Removed user/group from shared file/folder -@objc -public class DBXTeamLogEventTypeArgSharedContentRemoveMember: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.sharedContentRemoveMember - super.init(swift: swift) + let swift: TeamLog.FileRequestCloseType + + public init(swift: TeamLog.FileRequestCloseType) { + self.swift = swift } -} -/// (sharing) Requested access to shared file/folder -@objc -public class DBXTeamLogEventTypeArgSharedContentRequestAccess: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.sharedContentRequestAccess - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (sharing) Restored shared file/folder invitees +/// Created file request. @objc -public class DBXTeamLogEventTypeArgSharedContentRestoreInvitees: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileRequestCreateDetails: NSObject { + /// File request id. Might be missing due to historical data gap. @objc - public init() { - let swift = TeamLog.EventTypeArg.sharedContentRestoreInvitees - super.init(swift: swift) - } -} + public var fileRequestId: String? { swift.fileRequestId } + /// File request details. Might be missing due to historical data gap. + @objc + public var requestDetails: DBXTeamLogFileRequestDetails? { guard let swift = swift.requestDetails else { return nil }; return DBXTeamLogFileRequestDetails(swift: swift) } -/// (sharing) Restored users and/or groups to membership of shared file/folder -@objc -public class DBXTeamLogEventTypeArgSharedContentRestoreMember: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.sharedContentRestoreMember - super.init(swift: swift) + public init(fileRequestId: String?, requestDetails: DBXTeamLogFileRequestDetails?) { + self.swift = TeamLog.FileRequestCreateDetails(fileRequestId: fileRequestId, requestDetails: requestDetails?.swift) + } + + let swift: TeamLog.FileRequestCreateDetails + + public init(swift: TeamLog.FileRequestCreateDetails) { + self.swift = swift } + + + @objc + public override var description: String { swift.description } } -/// (sharing) Unshared file/folder by clearing membership +/// Objective-C compatible FileRequestCreateType struct @objc -public class DBXTeamLogEventTypeArgSharedContentUnshare: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileRequestCreateType: NSObject { + /// (no description) @objc - public init() { - let swift = TeamLog.EventTypeArg.sharedContentUnshare - super.init(swift: swift) - } -} + public var description_: String { swift.description_ } -/// (sharing) Previewed shared file/folder -@objc -public class DBXTeamLogEventTypeArgSharedContentView: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.sharedContentView - super.init(swift: swift) + public init(description_: String) { + self.swift = TeamLog.FileRequestCreateType(description_: description_) } -} -/// (sharing) Changed who can access shared folder via link -@objc -public class DBXTeamLogEventTypeArgSharedFolderChangeLinkPolicy: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.sharedFolderChangeLinkPolicy - super.init(swift: swift) + let swift: TeamLog.FileRequestCreateType + + public init(swift: TeamLog.FileRequestCreateType) { + self.swift = swift } -} -/// (sharing) Changed whether shared folder inherits members from parent folder -@objc -public class DBXTeamLogEventTypeArgSharedFolderChangeMembersInheritancePolicy: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.sharedFolderChangeMembersInheritancePolicy - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (sharing) Changed who can add/remove members of shared folder +/// File request deadline @objc -public class DBXTeamLogEventTypeArgSharedFolderChangeMembersManagementPolicy: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileRequestDeadline: NSObject { + /// The deadline for this file request. Might be missing due to historical data gap. @objc - public init() { - let swift = TeamLog.EventTypeArg.sharedFolderChangeMembersManagementPolicy - super.init(swift: swift) - } -} + public var deadline: Date? { swift.deadline } + /// If set, allow uploads after the deadline has passed. + @objc + public var allowLateUploads: String? { swift.allowLateUploads } -/// (sharing) Changed who can become member of shared folder -@objc -public class DBXTeamLogEventTypeArgSharedFolderChangeMembersPolicy: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.sharedFolderChangeMembersPolicy - super.init(swift: swift) + public init(deadline: Date?, allowLateUploads: String?) { + self.swift = TeamLog.FileRequestDeadline(deadline: deadline, allowLateUploads: allowLateUploads) } -} -/// (sharing) Created shared folder -@objc -public class DBXTeamLogEventTypeArgSharedFolderCreate: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.sharedFolderCreate - super.init(swift: swift) + let swift: TeamLog.FileRequestDeadline + + public init(swift: TeamLog.FileRequestDeadline) { + self.swift = swift } -} -/// (sharing) Declined team member's invite to shared folder -@objc -public class DBXTeamLogEventTypeArgSharedFolderDeclineInvitation: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.sharedFolderDeclineInvitation - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (sharing) Added shared folder to own Dropbox +/// Delete file request. @objc -public class DBXTeamLogEventTypeArgSharedFolderMount: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileRequestDeleteDetails: NSObject { + /// File request id. Might be missing due to historical data gap. @objc - public init() { - let swift = TeamLog.EventTypeArg.sharedFolderMount - super.init(swift: swift) - } -} + public var fileRequestId: String? { swift.fileRequestId } + /// Previous file request details. Might be missing due to historical data gap. + @objc + public var previousDetails: DBXTeamLogFileRequestDetails? { guard let swift = swift.previousDetails else { return nil }; return DBXTeamLogFileRequestDetails(swift: swift) } -/// (sharing) Changed parent of shared folder -@objc -public class DBXTeamLogEventTypeArgSharedFolderNest: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.sharedFolderNest - super.init(swift: swift) + public init(fileRequestId: String?, previousDetails: DBXTeamLogFileRequestDetails?) { + self.swift = TeamLog.FileRequestDeleteDetails(fileRequestId: fileRequestId, previousDetails: previousDetails?.swift) } -} -/// (sharing) Transferred ownership of shared folder to another member -@objc -public class DBXTeamLogEventTypeArgSharedFolderTransferOwnership: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.sharedFolderTransferOwnership - super.init(swift: swift) + let swift: TeamLog.FileRequestDeleteDetails + + public init(swift: TeamLog.FileRequestDeleteDetails) { + self.swift = swift } -} -/// (sharing) Deleted shared folder from Dropbox -@objc -public class DBXTeamLogEventTypeArgSharedFolderUnmount: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.sharedFolderUnmount - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (sharing) Added shared link expiration date +/// Objective-C compatible FileRequestDeleteType struct @objc -public class DBXTeamLogEventTypeArgSharedLinkAddExpiry: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileRequestDeleteType: NSObject { + /// (no description) @objc - public init() { - let swift = TeamLog.EventTypeArg.sharedLinkAddExpiry - super.init(swift: swift) - } -} + public var description_: String { swift.description_ } -/// (sharing) Changed shared link expiration date -@objc -public class DBXTeamLogEventTypeArgSharedLinkChangeExpiry: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.sharedLinkChangeExpiry - super.init(swift: swift) + public init(description_: String) { + self.swift = TeamLog.FileRequestDeleteType(description_: description_) } -} -/// (sharing) Changed visibility of shared link -@objc -public class DBXTeamLogEventTypeArgSharedLinkChangeVisibility: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.sharedLinkChangeVisibility - super.init(swift: swift) + let swift: TeamLog.FileRequestDeleteType + + public init(swift: TeamLog.FileRequestDeleteType) { + self.swift = swift } -} -/// (sharing) Added file/folder to Dropbox from shared link -@objc -public class DBXTeamLogEventTypeArgSharedLinkCopy: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.sharedLinkCopy - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (sharing) Created shared link +/// File request details @objc -public class DBXTeamLogEventTypeArgSharedLinkCreate: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileRequestDetails: NSObject { + /// Asset position in the Assets list. @objc - public init() { - let swift = TeamLog.EventTypeArg.sharedLinkCreate - super.init(swift: swift) - } -} + public var assetIndex: NSNumber { swift.assetIndex as NSNumber } + /// File request deadline. + @objc + public var deadline: DBXTeamLogFileRequestDeadline? { guard let swift = swift.deadline else { return nil }; return DBXTeamLogFileRequestDeadline(swift: swift) } + /// Flag represents if this file request has password. + @objc + public var hasPassword: NSNumber? { swift.hasPassword as NSNumber? } -/// (sharing) Removed shared link -@objc -public class DBXTeamLogEventTypeArgSharedLinkDisable: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.sharedLinkDisable - super.init(swift: swift) + public init(assetIndex: NSNumber, deadline: DBXTeamLogFileRequestDeadline?, hasPassword: NSNumber?) { + self.swift = TeamLog.FileRequestDetails(assetIndex: assetIndex.uint64Value, deadline: deadline?.swift, hasPassword: hasPassword?.boolValue) } -} -/// (sharing) Downloaded file/folder from shared link -@objc -public class DBXTeamLogEventTypeArgSharedLinkDownload: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.sharedLinkDownload - super.init(swift: swift) + let swift: TeamLog.FileRequestDetails + + public init(swift: TeamLog.FileRequestDetails) { + self.swift = swift } -} -/// (sharing) Removed shared link expiration date -@objc -public class DBXTeamLogEventTypeArgSharedLinkRemoveExpiry: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.sharedLinkRemoveExpiry - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (sharing) Added an expiration date to the shared link +/// Received files for file request. @objc -public class DBXTeamLogEventTypeArgSharedLinkSettingsAddExpiration: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileRequestReceiveFileDetails: NSObject { + /// File request id. Might be missing due to historical data gap. @objc - public init() { - let swift = TeamLog.EventTypeArg.sharedLinkSettingsAddExpiration - super.init(swift: swift) - } -} + public var fileRequestId: String? { swift.fileRequestId } + /// File request details. Might be missing due to historical data gap. + @objc + public var fileRequestDetails: DBXTeamLogFileRequestDetails? { guard let swift = swift.fileRequestDetails else { return nil }; return DBXTeamLogFileRequestDetails(swift: swift) } + /// Submitted file names. + @objc + public var submittedFileNames: Array { swift.submittedFileNames } + /// The name as provided by the submitter. + @objc + public var submitterName: String? { swift.submitterName } + /// The email as provided by the submitter. + @objc + public var submitterEmail: String? { swift.submitterEmail } -/// (sharing) Added a password to the shared link -@objc -public class DBXTeamLogEventTypeArgSharedLinkSettingsAddPassword: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.sharedLinkSettingsAddPassword - super.init(swift: swift) + public init(submittedFileNames: Array, fileRequestId: String?, fileRequestDetails: DBXTeamLogFileRequestDetails?, submitterName: String?, submitterEmail: String?) { + self.swift = TeamLog.FileRequestReceiveFileDetails(submittedFileNames: submittedFileNames, fileRequestId: fileRequestId, fileRequestDetails: fileRequestDetails?.swift, submitterName: submitterName, submitterEmail: submitterEmail) } -} -/// (sharing) Disabled downloads -@objc -public class DBXTeamLogEventTypeArgSharedLinkSettingsAllowDownloadDisabled: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.sharedLinkSettingsAllowDownloadDisabled - super.init(swift: swift) + let swift: TeamLog.FileRequestReceiveFileDetails + + public init(swift: TeamLog.FileRequestReceiveFileDetails) { + self.swift = swift } -} -/// (sharing) Enabled downloads -@objc -public class DBXTeamLogEventTypeArgSharedLinkSettingsAllowDownloadEnabled: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.sharedLinkSettingsAllowDownloadEnabled - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (sharing) Changed the audience of the shared link +/// Objective-C compatible FileRequestReceiveFileType struct @objc -public class DBXTeamLogEventTypeArgSharedLinkSettingsChangeAudience: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileRequestReceiveFileType: NSObject { + /// (no description) @objc - public init() { - let swift = TeamLog.EventTypeArg.sharedLinkSettingsChangeAudience - super.init(swift: swift) - } -} + public var description_: String { swift.description_ } -/// (sharing) Changed the expiration date of the shared link -@objc -public class DBXTeamLogEventTypeArgSharedLinkSettingsChangeExpiration: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.sharedLinkSettingsChangeExpiration - super.init(swift: swift) + public init(description_: String) { + self.swift = TeamLog.FileRequestReceiveFileType(description_: description_) } -} -/// (sharing) Changed the password of the shared link -@objc -public class DBXTeamLogEventTypeArgSharedLinkSettingsChangePassword: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.sharedLinkSettingsChangePassword - super.init(swift: swift) + let swift: TeamLog.FileRequestReceiveFileType + + public init(swift: TeamLog.FileRequestReceiveFileType) { + self.swift = swift } -} -/// (sharing) Removed the expiration date from the shared link -@objc -public class DBXTeamLogEventTypeArgSharedLinkSettingsRemoveExpiration: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.sharedLinkSettingsRemoveExpiration - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (sharing) Removed the password from the shared link +/// Enabled/disabled file requests. @objc -public class DBXTeamLogEventTypeArgSharedLinkSettingsRemovePassword: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileRequestsChangePolicyDetails: NSObject { + /// New file requests policy. @objc - public init() { - let swift = TeamLog.EventTypeArg.sharedLinkSettingsRemovePassword - super.init(swift: swift) - } -} + public var newValue: DBXTeamLogFileRequestsPolicy { DBXTeamLogFileRequestsPolicy(swift: swift.newValue) } + /// Previous file requests policy. Might be missing due to historical data gap. + @objc + public var previousValue: DBXTeamLogFileRequestsPolicy? { guard let swift = swift.previousValue else { return nil }; return DBXTeamLogFileRequestsPolicy(swift: swift) } -/// (sharing) Added members as audience of shared link -@objc -public class DBXTeamLogEventTypeArgSharedLinkShare: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.sharedLinkShare - super.init(swift: swift) + public init(newValue: DBXTeamLogFileRequestsPolicy, previousValue: DBXTeamLogFileRequestsPolicy?) { + self.swift = TeamLog.FileRequestsChangePolicyDetails(newValue: newValue.swift, previousValue: previousValue?.swift) } -} -/// (sharing) Opened shared link -@objc -public class DBXTeamLogEventTypeArgSharedLinkView: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.sharedLinkView - super.init(swift: swift) + let swift: TeamLog.FileRequestsChangePolicyDetails + + public init(swift: TeamLog.FileRequestsChangePolicyDetails) { + self.swift = swift } -} -/// (sharing) Opened shared Paper doc (deprecated, no longer logged) -@objc -public class DBXTeamLogEventTypeArgSharedNoteOpened: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.sharedNoteOpened - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (sharing) Disabled downloads for link (deprecated, no longer logged) +/// Objective-C compatible FileRequestsChangePolicyType struct @objc -public class DBXTeamLogEventTypeArgShmodelDisableDownloads: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileRequestsChangePolicyType: NSObject { + /// (no description) @objc - public init() { - let swift = TeamLog.EventTypeArg.shmodelDisableDownloads - super.init(swift: swift) - } -} + public var description_: String { swift.description_ } -/// (sharing) Enabled downloads for link (deprecated, no longer logged) -@objc -public class DBXTeamLogEventTypeArgShmodelEnableDownloads: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.shmodelEnableDownloads - super.init(swift: swift) + public init(description_: String) { + self.swift = TeamLog.FileRequestsChangePolicyType(description_: description_) } -} -/// (sharing) Shared link with group (deprecated, no longer logged) -@objc -public class DBXTeamLogEventTypeArgShmodelGroupShare: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.shmodelGroupShare - super.init(swift: swift) + let swift: TeamLog.FileRequestsChangePolicyType + + public init(swift: TeamLog.FileRequestsChangePolicyType) { + self.swift = swift } -} -/// (showcase) Granted access to showcase -@objc -public class DBXTeamLogEventTypeArgShowcaseAccessGranted: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.showcaseAccessGranted - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (showcase) Added member to showcase +/// Enabled file request emails for everyone. @objc -public class DBXTeamLogEventTypeArgShowcaseAddMember: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.showcaseAddMember - super.init(swift: swift) +public class DBXTeamLogFileRequestsEmailsEnabledDetails: NSObject { + + let swift: TeamLog.FileRequestsEmailsEnabledDetails + + public init(swift: TeamLog.FileRequestsEmailsEnabledDetails) { + self.swift = swift } -} -/// (showcase) Archived showcase -@objc -public class DBXTeamLogEventTypeArgShowcaseArchived: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.showcaseArchived - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (showcase) Created showcase +/// Objective-C compatible FileRequestsEmailsEnabledType struct @objc -public class DBXTeamLogEventTypeArgShowcaseCreated: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileRequestsEmailsEnabledType: NSObject { + /// (no description) @objc - public init() { - let swift = TeamLog.EventTypeArg.showcaseCreated - super.init(swift: swift) - } -} + public var description_: String { swift.description_ } -/// (showcase) Deleted showcase comment -@objc -public class DBXTeamLogEventTypeArgShowcaseDeleteComment: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.showcaseDeleteComment - super.init(swift: swift) + public init(description_: String) { + self.swift = TeamLog.FileRequestsEmailsEnabledType(description_: description_) } -} -/// (showcase) Edited showcase -@objc -public class DBXTeamLogEventTypeArgShowcaseEdited: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.showcaseEdited - super.init(swift: swift) + let swift: TeamLog.FileRequestsEmailsEnabledType + + public init(swift: TeamLog.FileRequestsEmailsEnabledType) { + self.swift = swift } -} -/// (showcase) Edited showcase comment -@objc -public class DBXTeamLogEventTypeArgShowcaseEditComment: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.showcaseEditComment - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (showcase) Added file to showcase +/// Enabled file request emails for team. @objc -public class DBXTeamLogEventTypeArgShowcaseFileAdded: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.showcaseFileAdded - super.init(swift: swift) +public class DBXTeamLogFileRequestsEmailsRestrictedToTeamOnlyDetails: NSObject { + + let swift: TeamLog.FileRequestsEmailsRestrictedToTeamOnlyDetails + + public init(swift: TeamLog.FileRequestsEmailsRestrictedToTeamOnlyDetails) { + self.swift = swift } -} -/// (showcase) Downloaded file from showcase -@objc -public class DBXTeamLogEventTypeArgShowcaseFileDownload: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.showcaseFileDownload - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (showcase) Removed file from showcase +/// Objective-C compatible FileRequestsEmailsRestrictedToTeamOnlyType struct @objc -public class DBXTeamLogEventTypeArgShowcaseFileRemoved: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileRequestsEmailsRestrictedToTeamOnlyType: NSObject { + /// (no description) @objc - public init() { - let swift = TeamLog.EventTypeArg.showcaseFileRemoved - super.init(swift: swift) + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.FileRequestsEmailsRestrictedToTeamOnlyType(description_: description_) + } + + let swift: TeamLog.FileRequestsEmailsRestrictedToTeamOnlyType + + public init(swift: TeamLog.FileRequestsEmailsRestrictedToTeamOnlyType) { + self.swift = swift } + + + @objc + public override var description: String { swift.description } } -/// (showcase) Viewed file in showcase +/// File requests policy @objc -public class DBXTeamLogEventTypeArgShowcaseFileView: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.showcaseFileView - super.init(swift: swift) +public class DBXTeamLogFileRequestsPolicy: NSObject { + let swift: TeamLog.FileRequestsPolicy + + public init(swift: TeamLog.FileRequestsPolicy) { + self.swift = swift + } + + public static func factory(swift: TeamLog.FileRequestsPolicy) -> DBXTeamLogFileRequestsPolicy { + switch swift { + case .disabled: + return DBXTeamLogFileRequestsPolicyDisabled() + case .enabled: + return DBXTeamLogFileRequestsPolicyEnabled() + case .other: + return DBXTeamLogFileRequestsPolicyOther() + } } -} -/// (showcase) Permanently deleted showcase -@objc -public class DBXTeamLogEventTypeArgShowcasePermanentlyDeleted: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.showcasePermanentlyDeleted - super.init(swift: swift) - } -} + public override var description: String { swift.description } -/// (showcase) Added showcase comment -@objc -public class DBXTeamLogEventTypeArgShowcasePostComment: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.showcasePostComment - super.init(swift: swift) + public var asDisabled: DBXTeamLogFileRequestsPolicyDisabled? { + return self as? DBXTeamLogFileRequestsPolicyDisabled } -} -/// (showcase) Removed member from showcase -@objc -public class DBXTeamLogEventTypeArgShowcaseRemoveMember: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.showcaseRemoveMember - super.init(swift: swift) + public var asEnabled: DBXTeamLogFileRequestsPolicyEnabled? { + return self as? DBXTeamLogFileRequestsPolicyEnabled } -} -/// (showcase) Renamed showcase -@objc -public class DBXTeamLogEventTypeArgShowcaseRenamed: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.showcaseRenamed - super.init(swift: swift) + public var asOther: DBXTeamLogFileRequestsPolicyOther? { + return self as? DBXTeamLogFileRequestsPolicyOther } } -/// (showcase) Requested access to showcase +/// An unspecified error. @objc -public class DBXTeamLogEventTypeArgShowcaseRequestAccess: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileRequestsPolicyDisabled: DBXTeamLogFileRequestsPolicy { @objc public init() { - let swift = TeamLog.EventTypeArg.showcaseRequestAccess + let swift = TeamLog.FileRequestsPolicy.disabled super.init(swift: swift) } } -/// (showcase) Resolved showcase comment +/// An unspecified error. @objc -public class DBXTeamLogEventTypeArgShowcaseResolveComment: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileRequestsPolicyEnabled: DBXTeamLogFileRequestsPolicy { @objc public init() { - let swift = TeamLog.EventTypeArg.showcaseResolveComment + let swift = TeamLog.FileRequestsPolicy.enabled super.init(swift: swift) } } -/// (showcase) Unarchived showcase +/// An unspecified error. @objc -public class DBXTeamLogEventTypeArgShowcaseRestored: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileRequestsPolicyOther: DBXTeamLogFileRequestsPolicy { @objc public init() { - let swift = TeamLog.EventTypeArg.showcaseRestored + let swift = TeamLog.FileRequestsPolicy.other super.init(swift: swift) } } -/// (showcase) Deleted showcase +/// Resolved file comment. @objc -public class DBXTeamLogEventTypeArgShowcaseTrashed: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileResolveCommentDetails: NSObject { + /// Comment text. @objc - public init() { - let swift = TeamLog.EventTypeArg.showcaseTrashed - super.init(swift: swift) - } -} + public var commentText: String? { swift.commentText } -/// (showcase) Deleted showcase (old version) (deprecated, replaced by 'Deleted showcase') -@objc -public class DBXTeamLogEventTypeArgShowcaseTrashedDeprecated: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.showcaseTrashedDeprecated - super.init(swift: swift) + public init(commentText: String?) { + self.swift = TeamLog.FileResolveCommentDetails(commentText: commentText) } -} -/// (showcase) Unresolved showcase comment -@objc -public class DBXTeamLogEventTypeArgShowcaseUnresolveComment: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.showcaseUnresolveComment - super.init(swift: swift) - } -} + let swift: TeamLog.FileResolveCommentDetails -/// (showcase) Restored showcase -@objc -public class DBXTeamLogEventTypeArgShowcaseUntrashed: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.showcaseUntrashed - super.init(swift: swift) + public init(swift: TeamLog.FileResolveCommentDetails) { + self.swift = swift } -} -/// (showcase) Restored showcase (old version) (deprecated, replaced by 'Restored showcase') -@objc -public class DBXTeamLogEventTypeArgShowcaseUntrashedDeprecated: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.showcaseUntrashedDeprecated - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (showcase) Viewed showcase +/// Objective-C compatible FileResolveCommentType struct @objc -public class DBXTeamLogEventTypeArgShowcaseView: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileResolveCommentType: NSObject { + /// (no description) @objc - public init() { - let swift = TeamLog.EventTypeArg.showcaseView - super.init(swift: swift) - } -} + public var description_: String { swift.description_ } -/// (sso) Added X.509 certificate for SSO -@objc -public class DBXTeamLogEventTypeArgSsoAddCert: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.ssoAddCert - super.init(swift: swift) + public init(description_: String) { + self.swift = TeamLog.FileResolveCommentType(description_: description_) } -} -/// (sso) Added sign-in URL for SSO -@objc -public class DBXTeamLogEventTypeArgSsoAddLoginUrl: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.ssoAddLoginUrl - super.init(swift: swift) + let swift: TeamLog.FileResolveCommentType + + public init(swift: TeamLog.FileResolveCommentType) { + self.swift = swift } -} -/// (sso) Added sign-out URL for SSO -@objc -public class DBXTeamLogEventTypeArgSsoAddLogoutUrl: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.ssoAddLogoutUrl - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (sso) Changed X.509 certificate for SSO +/// Restored deleted files and/or folders. @objc -public class DBXTeamLogEventTypeArgSsoChangeCert: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.ssoChangeCert - super.init(swift: swift) +public class DBXTeamLogFileRestoreDetails: NSObject { + + let swift: TeamLog.FileRestoreDetails + + public init(swift: TeamLog.FileRestoreDetails) { + self.swift = swift } -} -/// (sso) Changed sign-in URL for SSO -@objc -public class DBXTeamLogEventTypeArgSsoChangeLoginUrl: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.ssoChangeLoginUrl - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (sso) Changed sign-out URL for SSO +/// Objective-C compatible FileRestoreType struct @objc -public class DBXTeamLogEventTypeArgSsoChangeLogoutUrl: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileRestoreType: NSObject { + /// (no description) @objc - public init() { - let swift = TeamLog.EventTypeArg.ssoChangeLogoutUrl - super.init(swift: swift) - } -} + public var description_: String { swift.description_ } -/// (sso) Changed SAML identity mode for SSO -@objc -public class DBXTeamLogEventTypeArgSsoChangeSamlIdentityMode: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.ssoChangeSamlIdentityMode - super.init(swift: swift) + public init(description_: String) { + self.swift = TeamLog.FileRestoreType(description_: description_) } -} -/// (sso) Removed X.509 certificate for SSO -@objc -public class DBXTeamLogEventTypeArgSsoRemoveCert: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.ssoRemoveCert - super.init(swift: swift) + let swift: TeamLog.FileRestoreType + + public init(swift: TeamLog.FileRestoreType) { + self.swift = swift } -} -/// (sso) Removed sign-in URL for SSO -@objc -public class DBXTeamLogEventTypeArgSsoRemoveLoginUrl: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.ssoRemoveLoginUrl - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (sso) Removed sign-out URL for SSO +/// Reverted files to previous version. @objc -public class DBXTeamLogEventTypeArgSsoRemoveLogoutUrl: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.ssoRemoveLogoutUrl - super.init(swift: swift) +public class DBXTeamLogFileRevertDetails: NSObject { + + let swift: TeamLog.FileRevertDetails + + public init(swift: TeamLog.FileRevertDetails) { + self.swift = swift } -} -/// (team_folders) Changed archival status of team folder -@objc -public class DBXTeamLogEventTypeArgTeamFolderChangeStatus: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.teamFolderChangeStatus - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (team_folders) Created team folder in active status +/// Objective-C compatible FileRevertType struct @objc -public class DBXTeamLogEventTypeArgTeamFolderCreate: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileRevertType: NSObject { + /// (no description) @objc - public init() { - let swift = TeamLog.EventTypeArg.teamFolderCreate - super.init(swift: swift) - } -} + public var description_: String { swift.description_ } -/// (team_folders) Downgraded team folder to regular shared folder -@objc -public class DBXTeamLogEventTypeArgTeamFolderDowngrade: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.teamFolderDowngrade - super.init(swift: swift) + public init(description_: String) { + self.swift = TeamLog.FileRevertType(description_: description_) } -} -/// (team_folders) Permanently deleted archived team folder -@objc -public class DBXTeamLogEventTypeArgTeamFolderPermanentlyDelete: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.teamFolderPermanentlyDelete - super.init(swift: swift) + let swift: TeamLog.FileRevertType + + public init(swift: TeamLog.FileRevertType) { + self.swift = swift } -} -/// (team_folders) Renamed active/archived team folder -@objc -public class DBXTeamLogEventTypeArgTeamFolderRename: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.teamFolderRename - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (team_folders) Changed sync default +/// Rolled back file actions. @objc -public class DBXTeamLogEventTypeArgTeamSelectiveSyncSettingsChanged: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.teamSelectiveSyncSettingsChanged - super.init(swift: swift) +public class DBXTeamLogFileRollbackChangesDetails: NSObject { + + let swift: TeamLog.FileRollbackChangesDetails + + public init(swift: TeamLog.FileRollbackChangesDetails) { + self.swift = swift } -} -/// (team_policies) Changed account capture setting on team domain -@objc -public class DBXTeamLogEventTypeArgAccountCaptureChangePolicy: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.accountCaptureChangePolicy - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (team_policies) Changed admin reminder settings for requests to join the team +/// Objective-C compatible FileRollbackChangesType struct @objc -public class DBXTeamLogEventTypeArgAdminEmailRemindersChanged: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileRollbackChangesType: NSObject { + /// (no description) @objc - public init() { - let swift = TeamLog.EventTypeArg.adminEmailRemindersChanged - super.init(swift: swift) - } -} + public var description_: String { swift.description_ } -/// (team_policies) Disabled downloads (deprecated, no longer logged) -@objc -public class DBXTeamLogEventTypeArgAllowDownloadDisabled: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.allowDownloadDisabled - super.init(swift: swift) + public init(description_: String) { + self.swift = TeamLog.FileRollbackChangesType(description_: description_) } -} -/// (team_policies) Enabled downloads (deprecated, no longer logged) -@objc -public class DBXTeamLogEventTypeArgAllowDownloadEnabled: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.allowDownloadEnabled - super.init(swift: swift) + let swift: TeamLog.FileRollbackChangesType + + public init(swift: TeamLog.FileRollbackChangesType) { + self.swift = swift } -} -/// (team_policies) Changed app permissions -@objc -public class DBXTeamLogEventTypeArgAppPermissionsChanged: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.appPermissionsChanged - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (team_policies) Changed camera uploads setting for team +/// Saved file/folder using copy reference. @objc -public class DBXTeamLogEventTypeArgCameraUploadsPolicyChanged: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileSaveCopyReferenceDetails: NSObject { + /// Relocate action details. @objc - public init() { - let swift = TeamLog.EventTypeArg.cameraUploadsPolicyChanged - super.init(swift: swift) - } -} + public var relocateActionDetails: Array { swift.relocateActionDetails.map { DBXTeamLogRelocateAssetReferencesLogInfo(swift: $0) } } -/// (team_policies) Changed Capture transcription policy for team -@objc -public class DBXTeamLogEventTypeArgCaptureTranscriptPolicyChanged: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.captureTranscriptPolicyChanged - super.init(swift: swift) + public init(relocateActionDetails: Array) { + self.swift = TeamLog.FileSaveCopyReferenceDetails(relocateActionDetails: relocateActionDetails.map { $0.swift }) } -} -/// (team_policies) Changed classification policy for team -@objc -public class DBXTeamLogEventTypeArgClassificationChangePolicy: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.classificationChangePolicy - super.init(swift: swift) + let swift: TeamLog.FileSaveCopyReferenceDetails + + public init(swift: TeamLog.FileSaveCopyReferenceDetails) { + self.swift = swift } -} -/// (team_policies) Changed computer backup policy for team -@objc -public class DBXTeamLogEventTypeArgComputerBackupPolicyChanged: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.computerBackupPolicyChanged - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (team_policies) Changed content management setting +/// Objective-C compatible FileSaveCopyReferenceType struct @objc -public class DBXTeamLogEventTypeArgContentAdministrationPolicyChanged: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileSaveCopyReferenceType: NSObject { + /// (no description) @objc - public init() { - let swift = TeamLog.EventTypeArg.contentAdministrationPolicyChanged - super.init(swift: swift) - } -} + public var description_: String { swift.description_ } -/// (team_policies) Set restrictions on data center locations where team data resides -@objc -public class DBXTeamLogEventTypeArgDataPlacementRestrictionChangePolicy: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.dataPlacementRestrictionChangePolicy - super.init(swift: swift) + public init(description_: String) { + self.swift = TeamLog.FileSaveCopyReferenceType(description_: description_) } -} -/// (team_policies) Completed restrictions on data center locations where team data resides -@objc -public class DBXTeamLogEventTypeArgDataPlacementRestrictionSatisfyPolicy: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.dataPlacementRestrictionSatisfyPolicy - super.init(swift: swift) + let swift: TeamLog.FileSaveCopyReferenceType + + public init(swift: TeamLog.FileSaveCopyReferenceType) { + self.swift = swift } -} -/// (team_policies) Added members to device approvals exception list -@objc -public class DBXTeamLogEventTypeArgDeviceApprovalsAddException: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.deviceApprovalsAddException - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (team_policies) Set/removed limit on number of computers member can link to team Dropbox account +/// Transfer files added. @objc -public class DBXTeamLogEventTypeArgDeviceApprovalsChangeDesktopPolicy: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileTransfersFileAddDetails: NSObject { + /// Transfer id. @objc - public init() { - let swift = TeamLog.EventTypeArg.deviceApprovalsChangeDesktopPolicy - super.init(swift: swift) - } -} + public var fileTransferId: String { swift.fileTransferId } -/// (team_policies) Set/removed limit on number of mobile devices member can link to team Dropbox account -@objc -public class DBXTeamLogEventTypeArgDeviceApprovalsChangeMobilePolicy: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.deviceApprovalsChangeMobilePolicy - super.init(swift: swift) + public init(fileTransferId: String) { + self.swift = TeamLog.FileTransfersFileAddDetails(fileTransferId: fileTransferId) } -} -/// (team_policies) Changed device approvals setting when member is over limit -@objc -public class DBXTeamLogEventTypeArgDeviceApprovalsChangeOverageAction: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.deviceApprovalsChangeOverageAction - super.init(swift: swift) + let swift: TeamLog.FileTransfersFileAddDetails + + public init(swift: TeamLog.FileTransfersFileAddDetails) { + self.swift = swift } -} -/// (team_policies) Changed device approvals setting when member unlinks approved device -@objc -public class DBXTeamLogEventTypeArgDeviceApprovalsChangeUnlinkAction: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.deviceApprovalsChangeUnlinkAction - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (team_policies) Removed members from device approvals exception list +/// Objective-C compatible FileTransfersFileAddType struct @objc -public class DBXTeamLogEventTypeArgDeviceApprovalsRemoveException: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileTransfersFileAddType: NSObject { + /// (no description) @objc - public init() { - let swift = TeamLog.EventTypeArg.deviceApprovalsRemoveException - super.init(swift: swift) - } -} + public var description_: String { swift.description_ } -/// (team_policies) Added members to directory restrictions list -@objc -public class DBXTeamLogEventTypeArgDirectoryRestrictionsAddMembers: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.directoryRestrictionsAddMembers - super.init(swift: swift) + public init(description_: String) { + self.swift = TeamLog.FileTransfersFileAddType(description_: description_) } -} -/// (team_policies) Removed members from directory restrictions list -@objc -public class DBXTeamLogEventTypeArgDirectoryRestrictionsRemoveMembers: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.directoryRestrictionsRemoveMembers - super.init(swift: swift) + let swift: TeamLog.FileTransfersFileAddType + + public init(swift: TeamLog.FileTransfersFileAddType) { + self.swift = swift } -} -/// (team_policies) Changed Dropbox Passwords policy for team -@objc -public class DBXTeamLogEventTypeArgDropboxPasswordsPolicyChanged: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.dropboxPasswordsPolicyChanged - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (team_policies) Changed email to Dropbox policy for team +/// File transfers policy @objc -public class DBXTeamLogEventTypeArgEmailIngestPolicyChanged: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.emailIngestPolicyChanged - super.init(swift: swift) +public class DBXTeamLogFileTransfersPolicy: NSObject { + let swift: TeamLog.FileTransfersPolicy + + public init(swift: TeamLog.FileTransfersPolicy) { + self.swift = swift } -} -/// (team_policies) Added members to EMM exception list -@objc -public class DBXTeamLogEventTypeArgEmmAddException: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.emmAddException - super.init(swift: swift) + public static func factory(swift: TeamLog.FileTransfersPolicy) -> DBXTeamLogFileTransfersPolicy { + switch swift { + case .disabled: + return DBXTeamLogFileTransfersPolicyDisabled() + case .enabled: + return DBXTeamLogFileTransfersPolicyEnabled() + case .other: + return DBXTeamLogFileTransfersPolicyOther() + } } -} -/// (team_policies) Enabled/disabled enterprise mobility management for members -@objc -public class DBXTeamLogEventTypeArgEmmChangePolicy: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.emmChangePolicy - super.init(swift: swift) - } -} + public override var description: String { swift.description } -/// (team_policies) Removed members from EMM exception list -@objc -public class DBXTeamLogEventTypeArgEmmRemoveException: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.emmRemoveException - super.init(swift: swift) + public var asDisabled: DBXTeamLogFileTransfersPolicyDisabled? { + return self as? DBXTeamLogFileTransfersPolicyDisabled } -} -/// (team_policies) Accepted/opted out of extended version history -@objc -public class DBXTeamLogEventTypeArgExtendedVersionHistoryChangePolicy: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.extendedVersionHistoryChangePolicy - super.init(swift: swift) + public var asEnabled: DBXTeamLogFileTransfersPolicyEnabled? { + return self as? DBXTeamLogFileTransfersPolicyEnabled } -} -/// (team_policies) Changed external drive backup policy for team -@objc -public class DBXTeamLogEventTypeArgExternalDriveBackupPolicyChanged: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.externalDriveBackupPolicyChanged - super.init(swift: swift) + public var asOther: DBXTeamLogFileTransfersPolicyOther? { + return self as? DBXTeamLogFileTransfersPolicyOther } } -/// (team_policies) Enabled/disabled commenting on team files +/// An unspecified error. @objc -public class DBXTeamLogEventTypeArgFileCommentsChangePolicy: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileTransfersPolicyDisabled: DBXTeamLogFileTransfersPolicy { @objc public init() { - let swift = TeamLog.EventTypeArg.fileCommentsChangePolicy + let swift = TeamLog.FileTransfersPolicy.disabled super.init(swift: swift) } } -/// (team_policies) Changed file locking policy for team +/// An unspecified error. @objc -public class DBXTeamLogEventTypeArgFileLockingPolicyChanged: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileTransfersPolicyEnabled: DBXTeamLogFileTransfersPolicy { @objc public init() { - let swift = TeamLog.EventTypeArg.fileLockingPolicyChanged + let swift = TeamLog.FileTransfersPolicy.enabled super.init(swift: swift) } } -/// (team_policies) Changed File Provider Migration policy for team +/// An unspecified error. @objc -public class DBXTeamLogEventTypeArgFileProviderMigrationPolicyChanged: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileTransfersPolicyOther: DBXTeamLogFileTransfersPolicy { @objc public init() { - let swift = TeamLog.EventTypeArg.fileProviderMigrationPolicyChanged + let swift = TeamLog.FileTransfersPolicy.other super.init(swift: swift) } } -/// (team_policies) Enabled/disabled file requests +/// Changed file transfers policy for team. @objc -public class DBXTeamLogEventTypeArgFileRequestsChangePolicy: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileTransfersPolicyChangedDetails: NSObject { + /// New file transfers policy. @objc - public init() { - let swift = TeamLog.EventTypeArg.fileRequestsChangePolicy - super.init(swift: swift) - } -} + public var newValue: DBXTeamLogFileTransfersPolicy { DBXTeamLogFileTransfersPolicy(swift: swift.newValue) } + /// Previous file transfers policy. + @objc + public var previousValue: DBXTeamLogFileTransfersPolicy { DBXTeamLogFileTransfersPolicy(swift: swift.previousValue) } -/// (team_policies) Enabled file request emails for everyone (deprecated, no longer logged) -@objc -public class DBXTeamLogEventTypeArgFileRequestsEmailsEnabled: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.fileRequestsEmailsEnabled - super.init(swift: swift) + public init(newValue: DBXTeamLogFileTransfersPolicy, previousValue: DBXTeamLogFileTransfersPolicy) { + self.swift = TeamLog.FileTransfersPolicyChangedDetails(newValue: newValue.swift, previousValue: previousValue.swift) } -} -/// (team_policies) Enabled file request emails for team (deprecated, no longer logged) -@objc -public class DBXTeamLogEventTypeArgFileRequestsEmailsRestrictedToTeamOnly: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.fileRequestsEmailsRestrictedToTeamOnly - super.init(swift: swift) + let swift: TeamLog.FileTransfersPolicyChangedDetails + + public init(swift: TeamLog.FileTransfersPolicyChangedDetails) { + self.swift = swift } -} -/// (team_policies) Changed file transfers policy for team -@objc -public class DBXTeamLogEventTypeArgFileTransfersPolicyChanged: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.fileTransfersPolicyChanged - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (team_policies) Changed folder link restrictions policy for team +/// Objective-C compatible FileTransfersPolicyChangedType struct @objc -public class DBXTeamLogEventTypeArgFolderLinkRestrictionPolicyChanged: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileTransfersPolicyChangedType: NSObject { + /// (no description) @objc - public init() { - let swift = TeamLog.EventTypeArg.folderLinkRestrictionPolicyChanged - super.init(swift: swift) - } -} + public var description_: String { swift.description_ } -/// (team_policies) Enabled/disabled Google single sign-on for team -@objc -public class DBXTeamLogEventTypeArgGoogleSsoChangePolicy: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.googleSsoChangePolicy - super.init(swift: swift) + public init(description_: String) { + self.swift = TeamLog.FileTransfersPolicyChangedType(description_: description_) } -} -/// (team_policies) Changed who can create groups -@objc -public class DBXTeamLogEventTypeArgGroupUserManagementChangePolicy: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.groupUserManagementChangePolicy - super.init(swift: swift) + let swift: TeamLog.FileTransfersPolicyChangedType + + public init(swift: TeamLog.FileTransfersPolicyChangedType) { + self.swift = swift } -} -/// (team_policies) Changed integration policy for team -@objc -public class DBXTeamLogEventTypeArgIntegrationPolicyChanged: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.integrationPolicyChanged - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (team_policies) Changed invite accept email policy for team +/// Deleted transfer. @objc -public class DBXTeamLogEventTypeArgInviteAcceptanceEmailPolicyChanged: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileTransfersTransferDeleteDetails: NSObject { + /// Transfer id. @objc - public init() { - let swift = TeamLog.EventTypeArg.inviteAcceptanceEmailPolicyChanged - super.init(swift: swift) - } -} + public var fileTransferId: String { swift.fileTransferId } -/// (team_policies) Changed whether users can find team when not invited -@objc -public class DBXTeamLogEventTypeArgMemberRequestsChangePolicy: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.memberRequestsChangePolicy - super.init(swift: swift) + public init(fileTransferId: String) { + self.swift = TeamLog.FileTransfersTransferDeleteDetails(fileTransferId: fileTransferId) } -} -/// (team_policies) Changed member send invite policy for team -@objc -public class DBXTeamLogEventTypeArgMemberSendInvitePolicyChanged: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.memberSendInvitePolicyChanged - super.init(swift: swift) + let swift: TeamLog.FileTransfersTransferDeleteDetails + + public init(swift: TeamLog.FileTransfersTransferDeleteDetails) { + self.swift = swift } -} -/// (team_policies) Added members to member space limit exception list -@objc -public class DBXTeamLogEventTypeArgMemberSpaceLimitsAddException: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.memberSpaceLimitsAddException - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (team_policies) Changed member space limit type for team +/// Objective-C compatible FileTransfersTransferDeleteType struct @objc -public class DBXTeamLogEventTypeArgMemberSpaceLimitsChangeCapsTypePolicy: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileTransfersTransferDeleteType: NSObject { + /// (no description) @objc - public init() { - let swift = TeamLog.EventTypeArg.memberSpaceLimitsChangeCapsTypePolicy - super.init(swift: swift) - } -} + public var description_: String { swift.description_ } -/// (team_policies) Changed team default member space limit -@objc -public class DBXTeamLogEventTypeArgMemberSpaceLimitsChangePolicy: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.memberSpaceLimitsChangePolicy - super.init(swift: swift) + public init(description_: String) { + self.swift = TeamLog.FileTransfersTransferDeleteType(description_: description_) } -} -/// (team_policies) Removed members from member space limit exception list -@objc -public class DBXTeamLogEventTypeArgMemberSpaceLimitsRemoveException: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.memberSpaceLimitsRemoveException - super.init(swift: swift) + let swift: TeamLog.FileTransfersTransferDeleteType + + public init(swift: TeamLog.FileTransfersTransferDeleteType) { + self.swift = swift } -} -/// (team_policies) Enabled/disabled option for team members to suggest people to add to team -@objc -public class DBXTeamLogEventTypeArgMemberSuggestionsChangePolicy: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.memberSuggestionsChangePolicy - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (team_policies) Enabled/disabled Microsoft Office add-in +/// Transfer downloaded. @objc -public class DBXTeamLogEventTypeArgMicrosoftOfficeAddinChangePolicy: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileTransfersTransferDownloadDetails: NSObject { + /// Transfer id. @objc - public init() { - let swift = TeamLog.EventTypeArg.microsoftOfficeAddinChangePolicy - super.init(swift: swift) - } -} + public var fileTransferId: String { swift.fileTransferId } -/// (team_policies) Enabled/disabled network control -@objc -public class DBXTeamLogEventTypeArgNetworkControlChangePolicy: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.networkControlChangePolicy - super.init(swift: swift) + public init(fileTransferId: String) { + self.swift = TeamLog.FileTransfersTransferDownloadDetails(fileTransferId: fileTransferId) } -} -/// (team_policies) Changed whether Dropbox Paper, when enabled, is deployed to all members or to specific -/// members -@objc -public class DBXTeamLogEventTypeArgPaperChangeDeploymentPolicy: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.paperChangeDeploymentPolicy - super.init(swift: swift) + let swift: TeamLog.FileTransfersTransferDownloadDetails + + public init(swift: TeamLog.FileTransfersTransferDownloadDetails) { + self.swift = swift } -} -/// (team_policies) Changed whether non-members can view Paper docs with link (deprecated, no longer logged) -@objc -public class DBXTeamLogEventTypeArgPaperChangeMemberLinkPolicy: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.paperChangeMemberLinkPolicy - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (team_policies) Changed whether members can share Paper docs outside team, and if docs are accessible only -/// by team members or anyone by default +/// Objective-C compatible FileTransfersTransferDownloadType struct @objc -public class DBXTeamLogEventTypeArgPaperChangeMemberPolicy: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileTransfersTransferDownloadType: NSObject { + /// (no description) @objc - public init() { - let swift = TeamLog.EventTypeArg.paperChangeMemberPolicy - super.init(swift: swift) - } -} + public var description_: String { swift.description_ } -/// (team_policies) Enabled/disabled Dropbox Paper for team -@objc -public class DBXTeamLogEventTypeArgPaperChangePolicy: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.paperChangePolicy - super.init(swift: swift) + public init(description_: String) { + self.swift = TeamLog.FileTransfersTransferDownloadType(description_: description_) } -} -/// (team_policies) Changed Paper Default Folder Policy setting for team -@objc -public class DBXTeamLogEventTypeArgPaperDefaultFolderPolicyChanged: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.paperDefaultFolderPolicyChanged - super.init(swift: swift) + let swift: TeamLog.FileTransfersTransferDownloadType + + public init(swift: TeamLog.FileTransfersTransferDownloadType) { + self.swift = swift } -} -/// (team_policies) Enabled/disabled Paper Desktop for team -@objc -public class DBXTeamLogEventTypeArgPaperDesktopPolicyChanged: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.paperDesktopPolicyChanged - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (team_policies) Added users to Paper-enabled users list +/// Sent transfer. @objc -public class DBXTeamLogEventTypeArgPaperEnabledUsersGroupAddition: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileTransfersTransferSendDetails: NSObject { + /// Transfer id. @objc - public init() { - let swift = TeamLog.EventTypeArg.paperEnabledUsersGroupAddition - super.init(swift: swift) - } -} + public var fileTransferId: String { swift.fileTransferId } -/// (team_policies) Removed users from Paper-enabled users list -@objc -public class DBXTeamLogEventTypeArgPaperEnabledUsersGroupRemoval: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.paperEnabledUsersGroupRemoval - super.init(swift: swift) + public init(fileTransferId: String) { + self.swift = TeamLog.FileTransfersTransferSendDetails(fileTransferId: fileTransferId) } -} -/// (team_policies) Changed team password strength requirements -@objc -public class DBXTeamLogEventTypeArgPasswordStrengthRequirementsChangePolicy: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.passwordStrengthRequirementsChangePolicy - super.init(swift: swift) + let swift: TeamLog.FileTransfersTransferSendDetails + + public init(swift: TeamLog.FileTransfersTransferSendDetails) { + self.swift = swift } -} -/// (team_policies) Enabled/disabled ability of team members to permanently delete content -@objc -public class DBXTeamLogEventTypeArgPermanentDeleteChangePolicy: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.permanentDeleteChangePolicy - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (team_policies) Enabled/disabled reseller support +/// Objective-C compatible FileTransfersTransferSendType struct @objc -public class DBXTeamLogEventTypeArgResellerSupportChangePolicy: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileTransfersTransferSendType: NSObject { + /// (no description) @objc - public init() { - let swift = TeamLog.EventTypeArg.resellerSupportChangePolicy - super.init(swift: swift) - } -} + public var description_: String { swift.description_ } -/// (team_policies) Changed Rewind policy for team -@objc -public class DBXTeamLogEventTypeArgRewindPolicyChanged: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.rewindPolicyChanged - super.init(swift: swift) + public init(description_: String) { + self.swift = TeamLog.FileTransfersTransferSendType(description_: description_) } -} -/// (team_policies) Changed send for signature policy for team -@objc -public class DBXTeamLogEventTypeArgSendForSignaturePolicyChanged: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.sendForSignaturePolicyChanged - super.init(swift: swift) + let swift: TeamLog.FileTransfersTransferSendType + + public init(swift: TeamLog.FileTransfersTransferSendType) { + self.swift = swift } -} -/// (team_policies) Changed whether team members can join shared folders owned outside team -@objc -public class DBXTeamLogEventTypeArgSharingChangeFolderJoinPolicy: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.sharingChangeFolderJoinPolicy - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (team_policies) Changed the allow remove or change expiration policy for the links shared outside of the -/// team +/// Viewed transfer. @objc -public class DBXTeamLogEventTypeArgSharingChangeLinkAllowChangeExpirationPolicy: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileTransfersTransferViewDetails: NSObject { + /// Transfer id. @objc - public init() { - let swift = TeamLog.EventTypeArg.sharingChangeLinkAllowChangeExpirationPolicy - super.init(swift: swift) - } -} + public var fileTransferId: String { swift.fileTransferId } -/// (team_policies) Changed the default expiration for the links shared outside of the team -@objc -public class DBXTeamLogEventTypeArgSharingChangeLinkDefaultExpirationPolicy: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.sharingChangeLinkDefaultExpirationPolicy - super.init(swift: swift) + public init(fileTransferId: String) { + self.swift = TeamLog.FileTransfersTransferViewDetails(fileTransferId: fileTransferId) } -} -/// (team_policies) Changed the password requirement for the links shared outside of the team -@objc -public class DBXTeamLogEventTypeArgSharingChangeLinkEnforcePasswordPolicy: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.sharingChangeLinkEnforcePasswordPolicy - super.init(swift: swift) + let swift: TeamLog.FileTransfersTransferViewDetails + + public init(swift: TeamLog.FileTransfersTransferViewDetails) { + self.swift = swift } -} -/// (team_policies) Changed whether members can share links outside team, and if links are accessible only by -/// team members or anyone by default -@objc -public class DBXTeamLogEventTypeArgSharingChangeLinkPolicy: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.sharingChangeLinkPolicy - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (team_policies) Changed whether members can share files/folders outside team +/// Objective-C compatible FileTransfersTransferViewType struct @objc -public class DBXTeamLogEventTypeArgSharingChangeMemberPolicy: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileTransfersTransferViewType: NSObject { + /// (no description) @objc - public init() { - let swift = TeamLog.EventTypeArg.sharingChangeMemberPolicy - super.init(swift: swift) - } -} + public var description_: String { swift.description_ } -/// (team_policies) Enabled/disabled downloading files from Dropbox Showcase for team -@objc -public class DBXTeamLogEventTypeArgShowcaseChangeDownloadPolicy: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.showcaseChangeDownloadPolicy - super.init(swift: swift) + public init(description_: String) { + self.swift = TeamLog.FileTransfersTransferViewType(description_: description_) } -} -/// (team_policies) Enabled/disabled Dropbox Showcase for team -@objc -public class DBXTeamLogEventTypeArgShowcaseChangeEnabledPolicy: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.showcaseChangeEnabledPolicy - super.init(swift: swift) + let swift: TeamLog.FileTransfersTransferViewType + + public init(swift: TeamLog.FileTransfersTransferViewType) { + self.swift = swift } -} -/// (team_policies) Enabled/disabled sharing Dropbox Showcase externally for team -@objc -public class DBXTeamLogEventTypeArgShowcaseChangeExternalSharingPolicy: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.showcaseChangeExternalSharingPolicy - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (team_policies) Changed automatic Smart Sync setting for team +/// Unliked file comment. @objc -public class DBXTeamLogEventTypeArgSmarterSmartSyncPolicyChanged: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileUnlikeCommentDetails: NSObject { + /// Comment text. @objc - public init() { - let swift = TeamLog.EventTypeArg.smarterSmartSyncPolicyChanged - super.init(swift: swift) - } -} + public var commentText: String? { swift.commentText } -/// (team_policies) Changed default Smart Sync setting for team members -@objc -public class DBXTeamLogEventTypeArgSmartSyncChangePolicy: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.smartSyncChangePolicy - super.init(swift: swift) + public init(commentText: String?) { + self.swift = TeamLog.FileUnlikeCommentDetails(commentText: commentText) } -} -/// (team_policies) Opted team into Smart Sync -@objc -public class DBXTeamLogEventTypeArgSmartSyncNotOptOut: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.smartSyncNotOptOut - super.init(swift: swift) + let swift: TeamLog.FileUnlikeCommentDetails + + public init(swift: TeamLog.FileUnlikeCommentDetails) { + self.swift = swift } -} -/// (team_policies) Opted team out of Smart Sync -@objc -public class DBXTeamLogEventTypeArgSmartSyncOptOut: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.smartSyncOptOut - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (team_policies) Changed single sign-on setting for team +/// Objective-C compatible FileUnlikeCommentType struct @objc -public class DBXTeamLogEventTypeArgSsoChangePolicy: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileUnlikeCommentType: NSObject { + /// (no description) @objc - public init() { - let swift = TeamLog.EventTypeArg.ssoChangePolicy - super.init(swift: swift) - } -} + public var description_: String { swift.description_ } -/// (team_policies) Changed team branding policy for team -@objc -public class DBXTeamLogEventTypeArgTeamBrandingPolicyChanged: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.teamBrandingPolicyChanged - super.init(swift: swift) + public init(description_: String) { + self.swift = TeamLog.FileUnlikeCommentType(description_: description_) } -} -/// (team_policies) Changed App Integrations setting for team -@objc -public class DBXTeamLogEventTypeArgTeamExtensionsPolicyChanged: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.teamExtensionsPolicyChanged - super.init(swift: swift) + let swift: TeamLog.FileUnlikeCommentType + + public init(swift: TeamLog.FileUnlikeCommentType) { + self.swift = swift } -} -/// (team_policies) Enabled/disabled Team Selective Sync for team -@objc -public class DBXTeamLogEventTypeArgTeamSelectiveSyncPolicyChanged: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.teamSelectiveSyncPolicyChanged - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (team_policies) Edited the approved list for sharing externally +/// Unresolved file comment. @objc -public class DBXTeamLogEventTypeArgTeamSharingWhitelistSubjectsChanged: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileUnresolveCommentDetails: NSObject { + /// Comment text. @objc - public init() { - let swift = TeamLog.EventTypeArg.teamSharingWhitelistSubjectsChanged - super.init(swift: swift) - } -} + public var commentText: String? { swift.commentText } -/// (team_policies) Added members to two factor authentication exception list -@objc -public class DBXTeamLogEventTypeArgTfaAddException: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.tfaAddException - super.init(swift: swift) + public init(commentText: String?) { + self.swift = TeamLog.FileUnresolveCommentDetails(commentText: commentText) } -} -/// (team_policies) Changed two-step verification setting for team -@objc -public class DBXTeamLogEventTypeArgTfaChangePolicy: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.tfaChangePolicy - super.init(swift: swift) + let swift: TeamLog.FileUnresolveCommentDetails + + public init(swift: TeamLog.FileUnresolveCommentDetails) { + self.swift = swift } -} -/// (team_policies) Removed members from two factor authentication exception list -@objc -public class DBXTeamLogEventTypeArgTfaRemoveException: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.tfaRemoveException - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (team_policies) Enabled/disabled option for members to link personal Dropbox account and team account to -/// same computer +/// Objective-C compatible FileUnresolveCommentType struct @objc -public class DBXTeamLogEventTypeArgTwoAccountChangePolicy: DBXTeamLogEventTypeArg { +public class DBXTeamLogFileUnresolveCommentType: NSObject { + /// (no description) @objc - public init() { - let swift = TeamLog.EventTypeArg.twoAccountChangePolicy - super.init(swift: swift) - } -} + public var description_: String { swift.description_ } -/// (team_policies) Changed team policy for viewer info -@objc -public class DBXTeamLogEventTypeArgViewerInfoPolicyChanged: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.viewerInfoPolicyChanged - super.init(swift: swift) + public init(description_: String) { + self.swift = TeamLog.FileUnresolveCommentType(description_: description_) } -} -/// (team_policies) Changed watermarking policy for team -@objc -public class DBXTeamLogEventTypeArgWatermarkingPolicyChanged: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.watermarkingPolicyChanged - super.init(swift: swift) + let swift: TeamLog.FileUnresolveCommentType + + public init(swift: TeamLog.FileUnresolveCommentType) { + self.swift = swift } -} -/// (team_policies) Changed limit on active sessions per member -@objc -public class DBXTeamLogEventTypeArgWebSessionsChangeActiveSessionLimit: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.webSessionsChangeActiveSessionLimit - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (team_policies) Changed how long members can stay signed in to Dropbox.com +/// Flexible file names policy @objc -public class DBXTeamLogEventTypeArgWebSessionsChangeFixedLengthPolicy: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.webSessionsChangeFixedLengthPolicy - super.init(swift: swift) +public class DBXTeamLogFlexibleFileNamesPolicy: NSObject { + let swift: TeamLog.FlexibleFileNamesPolicy + + public init(swift: TeamLog.FlexibleFileNamesPolicy) { + self.swift = swift } -} -/// (team_policies) Changed how long team members can be idle while signed in to Dropbox.com -@objc -public class DBXTeamLogEventTypeArgWebSessionsChangeIdleLengthPolicy: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.webSessionsChangeIdleLengthPolicy - super.init(swift: swift) + public static func factory(swift: TeamLog.FlexibleFileNamesPolicy) -> DBXTeamLogFlexibleFileNamesPolicy { + switch swift { + case .off: + return DBXTeamLogFlexibleFileNamesPolicyOff() + case .offDefault: + return DBXTeamLogFlexibleFileNamesPolicyOffDefault() + case .optional: + return DBXTeamLogFlexibleFileNamesPolicyOptional() + case .optionalDefault: + return DBXTeamLogFlexibleFileNamesPolicyOptionalDefault() + case .required: + return DBXTeamLogFlexibleFileNamesPolicyRequired() + case .requiredDefault: + return DBXTeamLogFlexibleFileNamesPolicyRequiredDefault() + case .other: + return DBXTeamLogFlexibleFileNamesPolicyOther() + } } -} -/// (team_profile) Requested data residency migration for team data -@objc -public class DBXTeamLogEventTypeArgDataResidencyMigrationRequestSuccessful: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.dataResidencyMigrationRequestSuccessful - super.init(swift: swift) - } -} + public override var description: String { swift.description } -/// (team_profile) Request for data residency migration for team data has failed -@objc -public class DBXTeamLogEventTypeArgDataResidencyMigrationRequestUnsuccessful: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.dataResidencyMigrationRequestUnsuccessful - super.init(swift: swift) + public var asOff: DBXTeamLogFlexibleFileNamesPolicyOff? { + return self as? DBXTeamLogFlexibleFileNamesPolicyOff } -} -/// (team_profile) Merged another team into this team -@objc -public class DBXTeamLogEventTypeArgTeamMergeFrom: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.teamMergeFrom - super.init(swift: swift) + public var asOffDefault: DBXTeamLogFlexibleFileNamesPolicyOffDefault? { + return self as? DBXTeamLogFlexibleFileNamesPolicyOffDefault } -} -/// (team_profile) Merged this team into another team -@objc -public class DBXTeamLogEventTypeArgTeamMergeTo: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.teamMergeTo - super.init(swift: swift) + public var asOptional: DBXTeamLogFlexibleFileNamesPolicyOptional? { + return self as? DBXTeamLogFlexibleFileNamesPolicyOptional } -} -/// (team_profile) Added team background to display on shared link headers -@objc -public class DBXTeamLogEventTypeArgTeamProfileAddBackground: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.teamProfileAddBackground - super.init(swift: swift) + public var asOptionalDefault: DBXTeamLogFlexibleFileNamesPolicyOptionalDefault? { + return self as? DBXTeamLogFlexibleFileNamesPolicyOptionalDefault } -} -/// (team_profile) Added team logo to display on shared link headers -@objc -public class DBXTeamLogEventTypeArgTeamProfileAddLogo: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.teamProfileAddLogo - super.init(swift: swift) + public var asRequired: DBXTeamLogFlexibleFileNamesPolicyRequired? { + return self as? DBXTeamLogFlexibleFileNamesPolicyRequired } -} -/// (team_profile) Changed team background displayed on shared link headers -@objc -public class DBXTeamLogEventTypeArgTeamProfileChangeBackground: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.teamProfileChangeBackground - super.init(swift: swift) + public var asRequiredDefault: DBXTeamLogFlexibleFileNamesPolicyRequiredDefault? { + return self as? DBXTeamLogFlexibleFileNamesPolicyRequiredDefault } -} -/// (team_profile) Changed default language for team -@objc -public class DBXTeamLogEventTypeArgTeamProfileChangeDefaultLanguage: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.teamProfileChangeDefaultLanguage - super.init(swift: swift) + public var asOther: DBXTeamLogFlexibleFileNamesPolicyOther? { + return self as? DBXTeamLogFlexibleFileNamesPolicyOther } } -/// (team_profile) Changed team logo displayed on shared link headers +/// An unspecified error. @objc -public class DBXTeamLogEventTypeArgTeamProfileChangeLogo: DBXTeamLogEventTypeArg { +public class DBXTeamLogFlexibleFileNamesPolicyOff: DBXTeamLogFlexibleFileNamesPolicy { @objc public init() { - let swift = TeamLog.EventTypeArg.teamProfileChangeLogo + let swift = TeamLog.FlexibleFileNamesPolicy.off super.init(swift: swift) } } -/// (team_profile) Changed team name +/// An unspecified error. @objc -public class DBXTeamLogEventTypeArgTeamProfileChangeName: DBXTeamLogEventTypeArg { +public class DBXTeamLogFlexibleFileNamesPolicyOffDefault: DBXTeamLogFlexibleFileNamesPolicy { @objc public init() { - let swift = TeamLog.EventTypeArg.teamProfileChangeName + let swift = TeamLog.FlexibleFileNamesPolicy.offDefault super.init(swift: swift) } } -/// (team_profile) Removed team background displayed on shared link headers +/// An unspecified error. @objc -public class DBXTeamLogEventTypeArgTeamProfileRemoveBackground: DBXTeamLogEventTypeArg { +public class DBXTeamLogFlexibleFileNamesPolicyOptional: DBXTeamLogFlexibleFileNamesPolicy { @objc public init() { - let swift = TeamLog.EventTypeArg.teamProfileRemoveBackground + let swift = TeamLog.FlexibleFileNamesPolicy.optional super.init(swift: swift) } } -/// (team_profile) Removed team logo displayed on shared link headers +/// An unspecified error. @objc -public class DBXTeamLogEventTypeArgTeamProfileRemoveLogo: DBXTeamLogEventTypeArg { +public class DBXTeamLogFlexibleFileNamesPolicyOptionalDefault: DBXTeamLogFlexibleFileNamesPolicy { @objc public init() { - let swift = TeamLog.EventTypeArg.teamProfileRemoveLogo + let swift = TeamLog.FlexibleFileNamesPolicy.optionalDefault super.init(swift: swift) } } -/// (tfa) Added backup phone for two-step verification +/// An unspecified error. @objc -public class DBXTeamLogEventTypeArgTfaAddBackupPhone: DBXTeamLogEventTypeArg { +public class DBXTeamLogFlexibleFileNamesPolicyRequired: DBXTeamLogFlexibleFileNamesPolicy { @objc public init() { - let swift = TeamLog.EventTypeArg.tfaAddBackupPhone + let swift = TeamLog.FlexibleFileNamesPolicy.required super.init(swift: swift) } } -/// (tfa) Added security key for two-step verification +/// An unspecified error. @objc -public class DBXTeamLogEventTypeArgTfaAddSecurityKey: DBXTeamLogEventTypeArg { +public class DBXTeamLogFlexibleFileNamesPolicyRequiredDefault: DBXTeamLogFlexibleFileNamesPolicy { @objc public init() { - let swift = TeamLog.EventTypeArg.tfaAddSecurityKey + let swift = TeamLog.FlexibleFileNamesPolicy.requiredDefault super.init(swift: swift) } } -/// (tfa) Changed backup phone for two-step verification +/// An unspecified error. @objc -public class DBXTeamLogEventTypeArgTfaChangeBackupPhone: DBXTeamLogEventTypeArg { +public class DBXTeamLogFlexibleFileNamesPolicyOther: DBXTeamLogFlexibleFileNamesPolicy { @objc public init() { - let swift = TeamLog.EventTypeArg.tfaChangeBackupPhone + let swift = TeamLog.FlexibleFileNamesPolicy.other super.init(swift: swift) } } -/// (tfa) Enabled/disabled/changed two-step verification setting +/// Changed flexible file names policy for team. @objc -public class DBXTeamLogEventTypeArgTfaChangeStatus: DBXTeamLogEventTypeArg { +public class DBXTeamLogFlexibleFileNamesPolicyChangedDetails: NSObject { + /// New flexible file names policy. @objc - public init() { - let swift = TeamLog.EventTypeArg.tfaChangeStatus - super.init(swift: swift) - } -} + public var newValue: DBXTeamLogFlexibleFileNamesPolicy { DBXTeamLogFlexibleFileNamesPolicy(swift: swift.newValue) } + /// Previous flexible file names policy. Might be missing due to historical data gap. + @objc + public var previousValue: DBXTeamLogFlexibleFileNamesPolicy? { guard let swift = swift.previousValue else { return nil }; return DBXTeamLogFlexibleFileNamesPolicy(swift: swift) } -/// (tfa) Removed backup phone for two-step verification -@objc -public class DBXTeamLogEventTypeArgTfaRemoveBackupPhone: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.tfaRemoveBackupPhone - super.init(swift: swift) + public init(newValue: DBXTeamLogFlexibleFileNamesPolicy, previousValue: DBXTeamLogFlexibleFileNamesPolicy?) { + self.swift = TeamLog.FlexibleFileNamesPolicyChangedDetails(newValue: newValue.swift, previousValue: previousValue?.swift) } -} -/// (tfa) Removed security key for two-step verification -@objc -public class DBXTeamLogEventTypeArgTfaRemoveSecurityKey: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.tfaRemoveSecurityKey - super.init(swift: swift) + let swift: TeamLog.FlexibleFileNamesPolicyChangedDetails + + public init(swift: TeamLog.FlexibleFileNamesPolicyChangedDetails) { + self.swift = swift } -} -/// (tfa) Reset two-step verification for team member -@objc -public class DBXTeamLogEventTypeArgTfaReset: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.tfaReset - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (trusted_teams) Changed enterprise admin role +/// Objective-C compatible FlexibleFileNamesPolicyChangedType struct @objc -public class DBXTeamLogEventTypeArgChangedEnterpriseAdminRole: DBXTeamLogEventTypeArg { +public class DBXTeamLogFlexibleFileNamesPolicyChangedType: NSObject { + /// (no description) @objc - public init() { - let swift = TeamLog.EventTypeArg.changedEnterpriseAdminRole - super.init(swift: swift) - } -} + public var description_: String { swift.description_ } -/// (trusted_teams) Changed enterprise-connected team status -@objc -public class DBXTeamLogEventTypeArgChangedEnterpriseConnectedTeamStatus: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.changedEnterpriseConnectedTeamStatus - super.init(swift: swift) + public init(description_: String) { + self.swift = TeamLog.FlexibleFileNamesPolicyChangedType(description_: description_) } -} -/// (trusted_teams) Ended enterprise admin session -@objc -public class DBXTeamLogEventTypeArgEndedEnterpriseAdminSession: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.endedEnterpriseAdminSession - super.init(swift: swift) + let swift: TeamLog.FlexibleFileNamesPolicyChangedType + + public init(swift: TeamLog.FlexibleFileNamesPolicyChangedType) { + self.swift = swift } -} -/// (trusted_teams) Ended enterprise admin session (deprecated, replaced by 'Ended enterprise admin session') -@objc -public class DBXTeamLogEventTypeArgEndedEnterpriseAdminSessionDeprecated: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.endedEnterpriseAdminSessionDeprecated - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (trusted_teams) Changed who can update a setting +/// Policy for deciding whether applying link restrictions on all team owned folders @objc -public class DBXTeamLogEventTypeArgEnterpriseSettingsLocking: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.enterpriseSettingsLocking - super.init(swift: swift) +public class DBXTeamLogFolderLinkRestrictionPolicy: NSObject { + let swift: TeamLog.FolderLinkRestrictionPolicy + + public init(swift: TeamLog.FolderLinkRestrictionPolicy) { + self.swift = swift } -} -/// (trusted_teams) Changed guest team admin status -@objc -public class DBXTeamLogEventTypeArgGuestAdminChangeStatus: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.guestAdminChangeStatus - super.init(swift: swift) + public static func factory(swift: TeamLog.FolderLinkRestrictionPolicy) -> DBXTeamLogFolderLinkRestrictionPolicy { + switch swift { + case .disabled: + return DBXTeamLogFolderLinkRestrictionPolicyDisabled() + case .enabled: + return DBXTeamLogFolderLinkRestrictionPolicyEnabled() + case .other: + return DBXTeamLogFolderLinkRestrictionPolicyOther() + } } -} -/// (trusted_teams) Started enterprise admin session -@objc -public class DBXTeamLogEventTypeArgStartedEnterpriseAdminSession: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.startedEnterpriseAdminSession - super.init(swift: swift) - } -} + public override var description: String { swift.description } -/// (trusted_teams) Accepted a team merge request -@objc -public class DBXTeamLogEventTypeArgTeamMergeRequestAccepted: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.teamMergeRequestAccepted - super.init(swift: swift) + public var asDisabled: DBXTeamLogFolderLinkRestrictionPolicyDisabled? { + return self as? DBXTeamLogFolderLinkRestrictionPolicyDisabled } -} -/// (trusted_teams) Accepted a team merge request (deprecated, replaced by 'Accepted a team merge request') -@objc -public class DBXTeamLogEventTypeArgTeamMergeRequestAcceptedShownToPrimaryTeam: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.teamMergeRequestAcceptedShownToPrimaryTeam - super.init(swift: swift) + public var asEnabled: DBXTeamLogFolderLinkRestrictionPolicyEnabled? { + return self as? DBXTeamLogFolderLinkRestrictionPolicyEnabled } -} -/// (trusted_teams) Accepted a team merge request (deprecated, replaced by 'Accepted a team merge request') -@objc -public class DBXTeamLogEventTypeArgTeamMergeRequestAcceptedShownToSecondaryTeam: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.teamMergeRequestAcceptedShownToSecondaryTeam - super.init(swift: swift) + public var asOther: DBXTeamLogFolderLinkRestrictionPolicyOther? { + return self as? DBXTeamLogFolderLinkRestrictionPolicyOther } } -/// (trusted_teams) Automatically canceled team merge request +/// An unspecified error. @objc -public class DBXTeamLogEventTypeArgTeamMergeRequestAutoCanceled: DBXTeamLogEventTypeArg { +public class DBXTeamLogFolderLinkRestrictionPolicyDisabled: DBXTeamLogFolderLinkRestrictionPolicy { @objc public init() { - let swift = TeamLog.EventTypeArg.teamMergeRequestAutoCanceled + let swift = TeamLog.FolderLinkRestrictionPolicy.disabled super.init(swift: swift) } } -/// (trusted_teams) Canceled a team merge request +/// An unspecified error. @objc -public class DBXTeamLogEventTypeArgTeamMergeRequestCanceled: DBXTeamLogEventTypeArg { +public class DBXTeamLogFolderLinkRestrictionPolicyEnabled: DBXTeamLogFolderLinkRestrictionPolicy { @objc public init() { - let swift = TeamLog.EventTypeArg.teamMergeRequestCanceled + let swift = TeamLog.FolderLinkRestrictionPolicy.enabled super.init(swift: swift) } } -/// (trusted_teams) Canceled a team merge request (deprecated, replaced by 'Canceled a team merge request') +/// An unspecified error. @objc -public class DBXTeamLogEventTypeArgTeamMergeRequestCanceledShownToPrimaryTeam: DBXTeamLogEventTypeArg { +public class DBXTeamLogFolderLinkRestrictionPolicyOther: DBXTeamLogFolderLinkRestrictionPolicy { @objc public init() { - let swift = TeamLog.EventTypeArg.teamMergeRequestCanceledShownToPrimaryTeam + let swift = TeamLog.FolderLinkRestrictionPolicy.other super.init(swift: swift) } } -/// (trusted_teams) Canceled a team merge request (deprecated, replaced by 'Canceled a team merge request') +/// Changed folder link restrictions policy for team. @objc -public class DBXTeamLogEventTypeArgTeamMergeRequestCanceledShownToSecondaryTeam: DBXTeamLogEventTypeArg { +public class DBXTeamLogFolderLinkRestrictionPolicyChangedDetails: NSObject { + /// To. @objc - public init() { - let swift = TeamLog.EventTypeArg.teamMergeRequestCanceledShownToSecondaryTeam - super.init(swift: swift) - } -} + public var newValue: DBXTeamLogFolderLinkRestrictionPolicy { DBXTeamLogFolderLinkRestrictionPolicy(swift: swift.newValue) } + /// From. + @objc + public var previousValue: DBXTeamLogFolderLinkRestrictionPolicy { DBXTeamLogFolderLinkRestrictionPolicy(swift: swift.previousValue) } -/// (trusted_teams) Team merge request expired -@objc -public class DBXTeamLogEventTypeArgTeamMergeRequestExpired: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.teamMergeRequestExpired - super.init(swift: swift) + public init(newValue: DBXTeamLogFolderLinkRestrictionPolicy, previousValue: DBXTeamLogFolderLinkRestrictionPolicy) { + self.swift = TeamLog.FolderLinkRestrictionPolicyChangedDetails(newValue: newValue.swift, previousValue: previousValue.swift) } -} -/// (trusted_teams) Team merge request expired (deprecated, replaced by 'Team merge request expired') -@objc -public class DBXTeamLogEventTypeArgTeamMergeRequestExpiredShownToPrimaryTeam: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.teamMergeRequestExpiredShownToPrimaryTeam - super.init(swift: swift) + let swift: TeamLog.FolderLinkRestrictionPolicyChangedDetails + + public init(swift: TeamLog.FolderLinkRestrictionPolicyChangedDetails) { + self.swift = swift } -} -/// (trusted_teams) Team merge request expired (deprecated, replaced by 'Team merge request expired') -@objc -public class DBXTeamLogEventTypeArgTeamMergeRequestExpiredShownToSecondaryTeam: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.teamMergeRequestExpiredShownToSecondaryTeam - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (trusted_teams) Rejected a team merge request (deprecated, no longer logged) +/// Objective-C compatible FolderLinkRestrictionPolicyChangedType struct @objc -public class DBXTeamLogEventTypeArgTeamMergeRequestRejectedShownToPrimaryTeam: DBXTeamLogEventTypeArg { +public class DBXTeamLogFolderLinkRestrictionPolicyChangedType: NSObject { + /// (no description) @objc - public init() { - let swift = TeamLog.EventTypeArg.teamMergeRequestRejectedShownToPrimaryTeam - super.init(swift: swift) - } -} + public var description_: String { swift.description_ } -/// (trusted_teams) Rejected a team merge request (deprecated, no longer logged) -@objc -public class DBXTeamLogEventTypeArgTeamMergeRequestRejectedShownToSecondaryTeam: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.teamMergeRequestRejectedShownToSecondaryTeam - super.init(swift: swift) + public init(description_: String) { + self.swift = TeamLog.FolderLinkRestrictionPolicyChangedType(description_: description_) } -} -/// (trusted_teams) Sent a team merge request reminder -@objc -public class DBXTeamLogEventTypeArgTeamMergeRequestReminder: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.teamMergeRequestReminder - super.init(swift: swift) + let swift: TeamLog.FolderLinkRestrictionPolicyChangedType + + public init(swift: TeamLog.FolderLinkRestrictionPolicyChangedType) { + self.swift = swift } -} -/// (trusted_teams) Sent a team merge request reminder (deprecated, replaced by 'Sent a team merge request -/// reminder') -@objc -public class DBXTeamLogEventTypeArgTeamMergeRequestReminderShownToPrimaryTeam: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.teamMergeRequestReminderShownToPrimaryTeam - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// (trusted_teams) Sent a team merge request reminder (deprecated, replaced by 'Sent a team merge request -/// reminder') +/// Folder's logged information. @objc -public class DBXTeamLogEventTypeArgTeamMergeRequestReminderShownToSecondaryTeam: DBXTeamLogEventTypeArg { +public class DBXTeamLogFolderLogInfo: DBXTeamLogFileOrFolderLogInfo { + /// Number of files within the folder. @objc - public init() { - let swift = TeamLog.EventTypeArg.teamMergeRequestReminderShownToSecondaryTeam - super.init(swift: swift) - } -} + public var fileCount: NSNumber? { subSwift.fileCount as NSNumber? } -/// (trusted_teams) Canceled the team merge -@objc -public class DBXTeamLogEventTypeArgTeamMergeRequestRevoked: DBXTeamLogEventTypeArg { @objc - public init() { - let swift = TeamLog.EventTypeArg.teamMergeRequestRevoked + public init(path: DBXTeamLogPathLogInfo, displayName: String?, fileId: String?, fileSize: NSNumber?, fileCount: NSNumber?) { + let swift = TeamLog.FolderLogInfo(path: path.swift, displayName: displayName, fileId: fileId, fileSize: fileSize?.uint64Value, fileCount: fileCount?.uint64Value) + self.subSwift = swift super.init(swift: swift) } -} -/// (trusted_teams) Requested to merge their Dropbox team into yours -@objc -public class DBXTeamLogEventTypeArgTeamMergeRequestSentShownToPrimaryTeam: DBXTeamLogEventTypeArg { - @objc - public init() { - let swift = TeamLog.EventTypeArg.teamMergeRequestSentShownToPrimaryTeam + let subSwift: TeamLog.FolderLogInfo + + public init(swift: TeamLog.FolderLogInfo) { + self.subSwift = swift super.init(swift: swift) } -} -/// (trusted_teams) Requested to merge your team into another Dropbox team -@objc -public class DBXTeamLogEventTypeArgTeamMergeRequestSentShownToSecondaryTeam: DBXTeamLogEventTypeArg { + @objc - public init() { - let swift = TeamLog.EventTypeArg.teamMergeRequestSentShownToSecondaryTeam - super.init(swift: swift) - } + public override var description: String { subSwift.description } } -/// An unspecified error. -@objc -public class DBXTeamLogEventTypeArgOther: DBXTeamLogEventTypeArg { +/// Updated folder overview. +@objc +public class DBXTeamLogFolderOverviewDescriptionChangedDetails: NSObject { + /// Folder Overview location position in the Assets list. + @objc + public var folderOverviewLocationAsset: NSNumber { swift.folderOverviewLocationAsset as NSNumber } + @objc - public init() { - let swift = TeamLog.EventTypeArg.other - super.init(swift: swift) + public init(folderOverviewLocationAsset: NSNumber) { + self.swift = TeamLog.FolderOverviewDescriptionChangedDetails(folderOverviewLocationAsset: folderOverviewLocationAsset.uint64Value) } -} -/// Created member data report. -@objc -public class DBXTeamLogExportMembersReportDetails: NSObject { - let swift: TeamLog.ExportMembersReportDetails + let swift: TeamLog.FolderOverviewDescriptionChangedDetails - public init(swift: TeamLog.ExportMembersReportDetails) { + public init(swift: TeamLog.FolderOverviewDescriptionChangedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Failed to create members data report. +/// Objective-C compatible FolderOverviewDescriptionChangedType struct @objc -public class DBXTeamLogExportMembersReportFailDetails: NSObject { - /// Failure reason. +public class DBXTeamLogFolderOverviewDescriptionChangedType: NSObject { + /// (no description) @objc - public var failureReason: DBXTeamTeamReportFailureReason { DBXTeamTeamReportFailureReason(swift: swift.failureReason) } + public var description_: String { swift.description_ } @objc - public init(failureReason: DBXTeamTeamReportFailureReason) { - self.swift = TeamLog.ExportMembersReportFailDetails(failureReason: failureReason.swift) + public init(description_: String) { + self.swift = TeamLog.FolderOverviewDescriptionChangedType(description_: description_) } - let swift: TeamLog.ExportMembersReportFailDetails + let swift: TeamLog.FolderOverviewDescriptionChangedType - public init(swift: TeamLog.ExportMembersReportFailDetails) { + public init(swift: TeamLog.FolderOverviewDescriptionChangedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible ExportMembersReportFailType struct +/// Pinned item to folder overview. @objc -public class DBXTeamLogExportMembersReportFailType: NSObject { - /// (no description) +public class DBXTeamLogFolderOverviewItemPinnedDetails: NSObject { + /// Folder Overview location position in the Assets list. @objc - public var description_: String { swift.description_ } + public var folderOverviewLocationAsset: NSNumber { swift.folderOverviewLocationAsset as NSNumber } + /// Pinned items positions in the Assets list. + @objc + public var pinnedItemsAssetIndices: Array { swift.pinnedItemsAssetIndices.map { $0 as NSNumber } } @objc - public init(description_: String) { - self.swift = TeamLog.ExportMembersReportFailType(description_: description_) + public init(folderOverviewLocationAsset: NSNumber, pinnedItemsAssetIndices: Array) { + self.swift = TeamLog.FolderOverviewItemPinnedDetails(folderOverviewLocationAsset: folderOverviewLocationAsset.uint64Value, pinnedItemsAssetIndices: pinnedItemsAssetIndices.map { $0.uint64Value }) } - let swift: TeamLog.ExportMembersReportFailType + let swift: TeamLog.FolderOverviewItemPinnedDetails - public init(swift: TeamLog.ExportMembersReportFailType) { + public init(swift: TeamLog.FolderOverviewItemPinnedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible ExportMembersReportType struct +/// Objective-C compatible FolderOverviewItemPinnedType struct @objc -public class DBXTeamLogExportMembersReportType: NSObject { +public class DBXTeamLogFolderOverviewItemPinnedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.ExportMembersReportType(description_: description_) + self.swift = TeamLog.FolderOverviewItemPinnedType(description_: description_) } - let swift: TeamLog.ExportMembersReportType + let swift: TeamLog.FolderOverviewItemPinnedType - public init(swift: TeamLog.ExportMembersReportType) { + public init(swift: TeamLog.FolderOverviewItemPinnedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Accepted/opted out of extended version history. +/// Unpinned item from folder overview. @objc -public class DBXTeamLogExtendedVersionHistoryChangePolicyDetails: NSObject { - /// New extended version history policy. +public class DBXTeamLogFolderOverviewItemUnpinnedDetails: NSObject { + /// Folder Overview location position in the Assets list. @objc - public var newValue: DBXTeamLogExtendedVersionHistoryPolicy { DBXTeamLogExtendedVersionHistoryPolicy(swift: swift.newValue) } - /// Previous extended version history policy. Might be missing due to historical data gap. + public var folderOverviewLocationAsset: NSNumber { swift.folderOverviewLocationAsset as NSNumber } + /// Pinned items positions in the Assets list. @objc - public var previousValue: DBXTeamLogExtendedVersionHistoryPolicy? { guard let swift = swift.previousValue else { return nil } - return DBXTeamLogExtendedVersionHistoryPolicy(swift: swift) - } + public var pinnedItemsAssetIndices: Array { swift.pinnedItemsAssetIndices.map { $0 as NSNumber } } @objc - public init(newValue: DBXTeamLogExtendedVersionHistoryPolicy, previousValue: DBXTeamLogExtendedVersionHistoryPolicy?) { - self.swift = TeamLog.ExtendedVersionHistoryChangePolicyDetails(newValue: newValue.swift, previousValue: previousValue?.swift) + public init(folderOverviewLocationAsset: NSNumber, pinnedItemsAssetIndices: Array) { + self.swift = TeamLog.FolderOverviewItemUnpinnedDetails(folderOverviewLocationAsset: folderOverviewLocationAsset.uint64Value, pinnedItemsAssetIndices: pinnedItemsAssetIndices.map { $0.uint64Value }) } - let swift: TeamLog.ExtendedVersionHistoryChangePolicyDetails + let swift: TeamLog.FolderOverviewItemUnpinnedDetails - public init(swift: TeamLog.ExtendedVersionHistoryChangePolicyDetails) { + public init(swift: TeamLog.FolderOverviewItemUnpinnedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible ExtendedVersionHistoryChangePolicyType struct +/// Objective-C compatible FolderOverviewItemUnpinnedType struct @objc -public class DBXTeamLogExtendedVersionHistoryChangePolicyType: NSObject { +public class DBXTeamLogFolderOverviewItemUnpinnedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.ExtendedVersionHistoryChangePolicyType(description_: description_) + self.swift = TeamLog.FolderOverviewItemUnpinnedType(description_: description_) } - let swift: TeamLog.ExtendedVersionHistoryChangePolicyType + let swift: TeamLog.FolderOverviewItemUnpinnedType - public init(swift: TeamLog.ExtendedVersionHistoryChangePolicyType) { + public init(swift: TeamLog.FolderOverviewItemUnpinnedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible ExtendedVersionHistoryPolicy union +/// Geographic location details. @objc -public class DBXTeamLogExtendedVersionHistoryPolicy: NSObject { - let swift: TeamLog.ExtendedVersionHistoryPolicy +public class DBXTeamLogGeoLocationLogInfo: NSObject { + /// City name. + @objc + public var city: String? { swift.city } + /// Region name. + @objc + public var region: String? { swift.region } + /// Country code. + @objc + public var country: String? { swift.country } + /// IP address. + @objc + public var ipAddress: String { swift.ipAddress } - public init(swift: TeamLog.ExtendedVersionHistoryPolicy) { - self.swift = swift + @objc + public init(ipAddress: String, city: String?, region: String?, country: String?) { + self.swift = TeamLog.GeoLocationLogInfo(ipAddress: ipAddress, city: city, region: region, country: country) } - public static func factory(swift: TeamLog.ExtendedVersionHistoryPolicy) -> DBXTeamLogExtendedVersionHistoryPolicy { - switch swift { - case .explicitlyLimited: - return DBXTeamLogExtendedVersionHistoryPolicyExplicitlyLimited() - case .explicitlyUnlimited: - return DBXTeamLogExtendedVersionHistoryPolicyExplicitlyUnlimited() - case .implicitlyLimited: - return DBXTeamLogExtendedVersionHistoryPolicyImplicitlyLimited() - case .implicitlyUnlimited: - return DBXTeamLogExtendedVersionHistoryPolicyImplicitlyUnlimited() - case .other: - return DBXTeamLogExtendedVersionHistoryPolicyOther() - } + let swift: TeamLog.GeoLocationLogInfo + + public init(swift: TeamLog.GeoLocationLogInfo) { + self.swift = swift } + @objc public override var description: String { swift.description } +} +/// Objective-C compatible GetTeamEventsArg struct +@objc +public class DBXTeamLogGetTeamEventsArg: NSObject { + /// The maximal number of results to return per call. Note that some calls may not return limit number of + /// events, and may even return no events, even with `has_more` set to true. In this case, callers should + /// fetch again using getEventsContinue. @objc - public var asExplicitlyLimited: DBXTeamLogExtendedVersionHistoryPolicyExplicitlyLimited? { - self as? DBXTeamLogExtendedVersionHistoryPolicyExplicitlyLimited - } - + public var limit: NSNumber { swift.limit as NSNumber } + /// Filter the events by account ID. Return only events with this account_id as either Actor, Context, or + /// Participants. @objc - public var asExplicitlyUnlimited: DBXTeamLogExtendedVersionHistoryPolicyExplicitlyUnlimited? { - self as? DBXTeamLogExtendedVersionHistoryPolicyExplicitlyUnlimited - } - + public var accountId: String? { swift.accountId } + /// Filter by time range. @objc - public var asImplicitlyLimited: DBXTeamLogExtendedVersionHistoryPolicyImplicitlyLimited? { - self as? DBXTeamLogExtendedVersionHistoryPolicyImplicitlyLimited - } + public var time: DBXTeamCommonTimeRange? { guard let swift = swift.time else { return nil }; return DBXTeamCommonTimeRange(swift: swift) } + /// Filter the returned events to a single category. Note that category shouldn't be provided together with + /// event_type. + @objc + public var category: DBXTeamLogEventCategory? { guard let swift = swift.category else { return nil }; return DBXTeamLogEventCategory(swift: swift) } + /// Filter the returned events to a single event type. Note that event_type shouldn't be provided together with + /// category. + @objc + public var eventType: DBXTeamLogEventTypeArg? { guard let swift = swift.eventType else { return nil }; return DBXTeamLogEventTypeArg(swift: swift) } @objc - public var asImplicitlyUnlimited: DBXTeamLogExtendedVersionHistoryPolicyImplicitlyUnlimited? { - self as? DBXTeamLogExtendedVersionHistoryPolicyImplicitlyUnlimited + public init(limit: NSNumber, accountId: String?, time: DBXTeamCommonTimeRange?, category: DBXTeamLogEventCategory?, eventType: DBXTeamLogEventTypeArg?) { + self.swift = TeamLog.GetTeamEventsArg(limit: limit.uint32Value, accountId: accountId, time: time?.swift, category: category?.swift, eventType: eventType?.swift) } - @objc - public var asOther: DBXTeamLogExtendedVersionHistoryPolicyOther? { - self as? DBXTeamLogExtendedVersionHistoryPolicyOther + let swift: TeamLog.GetTeamEventsArg + + public init(swift: TeamLog.GetTeamEventsArg) { + self.swift = swift } -} -/// An unspecified error. -@objc -public class DBXTeamLogExtendedVersionHistoryPolicyExplicitlyLimited: DBXTeamLogExtendedVersionHistoryPolicy { + @objc - public init() { - let swift = TeamLog.ExtendedVersionHistoryPolicy.explicitlyLimited - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// An unspecified error. +/// Objective-C compatible GetTeamEventsContinueArg struct @objc -public class DBXTeamLogExtendedVersionHistoryPolicyExplicitlyUnlimited: DBXTeamLogExtendedVersionHistoryPolicy { +public class DBXTeamLogGetTeamEventsContinueArg: NSObject { + /// Indicates from what point to get the next set of events. @objc - public init() { - let swift = TeamLog.ExtendedVersionHistoryPolicy.explicitlyUnlimited - super.init(swift: swift) - } -} + public var cursor: String { swift.cursor } -/// An unspecified error. -@objc -public class DBXTeamLogExtendedVersionHistoryPolicyImplicitlyLimited: DBXTeamLogExtendedVersionHistoryPolicy { @objc - public init() { - let swift = TeamLog.ExtendedVersionHistoryPolicy.implicitlyLimited - super.init(swift: swift) + public init(cursor: String) { + self.swift = TeamLog.GetTeamEventsContinueArg(cursor: cursor) } -} -/// An unspecified error. -@objc -public class DBXTeamLogExtendedVersionHistoryPolicyImplicitlyUnlimited: DBXTeamLogExtendedVersionHistoryPolicy { - @objc - public init() { - let swift = TeamLog.ExtendedVersionHistoryPolicy.implicitlyUnlimited - super.init(swift: swift) + let swift: TeamLog.GetTeamEventsContinueArg + + public init(swift: TeamLog.GetTeamEventsContinueArg) { + self.swift = swift } -} -/// An unspecified error. -@objc -public class DBXTeamLogExtendedVersionHistoryPolicyOther: DBXTeamLogExtendedVersionHistoryPolicy { + @objc - public init() { - let swift = TeamLog.ExtendedVersionHistoryPolicy.other - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// External Drive Backup eligibility status +/// Errors that can be raised when calling getEventsContinue. @objc -public class DBXTeamLogExternalDriveBackupEligibilityStatus: NSObject { - let swift: TeamLog.ExternalDriveBackupEligibilityStatus +public class DBXTeamLogGetTeamEventsContinueError: NSObject { + let swift: TeamLog.GetTeamEventsContinueError - public init(swift: TeamLog.ExternalDriveBackupEligibilityStatus) { + public init(swift: TeamLog.GetTeamEventsContinueError) { self.swift = swift } - public static func factory(swift: TeamLog.ExternalDriveBackupEligibilityStatus) -> DBXTeamLogExternalDriveBackupEligibilityStatus { + public static func factory(swift: TeamLog.GetTeamEventsContinueError) -> DBXTeamLogGetTeamEventsContinueError { switch swift { - case .exceedLicenseCap: - return DBXTeamLogExternalDriveBackupEligibilityStatusExceedLicenseCap() - case .success: - return DBXTeamLogExternalDriveBackupEligibilityStatusSuccess() + case .badCursor: + return DBXTeamLogGetTeamEventsContinueErrorBadCursor() + case .reset(let swiftArg): + let arg = swiftArg + return DBXTeamLogGetTeamEventsContinueErrorReset(arg) case .other: - return DBXTeamLogExternalDriveBackupEligibilityStatusOther() + return DBXTeamLogGetTeamEventsContinueErrorOther() } } @@ -39550,128 +54220,77 @@ public class DBXTeamLogExternalDriveBackupEligibilityStatus: NSObject { public override var description: String { swift.description } @objc - public var asExceedLicenseCap: DBXTeamLogExternalDriveBackupEligibilityStatusExceedLicenseCap? { - self as? DBXTeamLogExternalDriveBackupEligibilityStatusExceedLicenseCap + public var asBadCursor: DBXTeamLogGetTeamEventsContinueErrorBadCursor? { + return self as? DBXTeamLogGetTeamEventsContinueErrorBadCursor } @objc - public var asSuccess: DBXTeamLogExternalDriveBackupEligibilityStatusSuccess? { - self as? DBXTeamLogExternalDriveBackupEligibilityStatusSuccess + public var asReset: DBXTeamLogGetTeamEventsContinueErrorReset? { + return self as? DBXTeamLogGetTeamEventsContinueErrorReset } @objc - public var asOther: DBXTeamLogExternalDriveBackupEligibilityStatusOther? { - self as? DBXTeamLogExternalDriveBackupEligibilityStatusOther + public var asOther: DBXTeamLogGetTeamEventsContinueErrorOther? { + return self as? DBXTeamLogGetTeamEventsContinueErrorOther } } -/// An unspecified error. +/// Bad cursor. @objc -public class DBXTeamLogExternalDriveBackupEligibilityStatusExceedLicenseCap: DBXTeamLogExternalDriveBackupEligibilityStatus { +public class DBXTeamLogGetTeamEventsContinueErrorBadCursor: DBXTeamLogGetTeamEventsContinueError { @objc public init() { - let swift = TeamLog.ExternalDriveBackupEligibilityStatus.exceedLicenseCap + let swift = TeamLog.GetTeamEventsContinueError.badCursor super.init(swift: swift) } } -/// An unspecified error. +/// Cursors are intended to be used quickly. Individual cursor values are normally valid for days, but in rare + /// cases may be reset sooner. Cursor reset errors should be handled by fetching a new cursor from + /// getEvents. The associated value is the approximate timestamp of the most recent event returned by + /// the cursor. This should be used as a resumption point when calling getEvents to obtain a new cursor. @objc -public class DBXTeamLogExternalDriveBackupEligibilityStatusSuccess: DBXTeamLogExternalDriveBackupEligibilityStatus { +public class DBXTeamLogGetTeamEventsContinueErrorReset: DBXTeamLogGetTeamEventsContinueError { @objc - public init() { - let swift = TeamLog.ExternalDriveBackupEligibilityStatus.success + public var reset: Date + + @objc + public init(_ arg: Date) { + reset = arg + let swift = TeamLog.GetTeamEventsContinueError.reset(arg) super.init(swift: swift) } } /// An unspecified error. @objc -public class DBXTeamLogExternalDriveBackupEligibilityStatusOther: DBXTeamLogExternalDriveBackupEligibilityStatus { +public class DBXTeamLogGetTeamEventsContinueErrorOther: DBXTeamLogGetTeamEventsContinueError { @objc public init() { - let swift = TeamLog.ExternalDriveBackupEligibilityStatus.other + let swift = TeamLog.GetTeamEventsContinueError.other super.init(swift: swift) } } -/// Checked external drive backup eligibility status. -@objc -public class DBXTeamLogExternalDriveBackupEligibilityStatusCheckedDetails: NSObject { - /// Device's session logged information. - @objc - public var desktopDeviceSessionInfo: DBXTeamLogDesktopDeviceSessionLogInfo { DBXTeamLogDesktopDeviceSessionLogInfo(swift: swift.desktopDeviceSessionInfo) } - /// Current eligibility status of external drive backup. - @objc - public var status: DBXTeamLogExternalDriveBackupEligibilityStatus { DBXTeamLogExternalDriveBackupEligibilityStatus(swift: swift.status) } - /// Total number of valid external drive backup for all the team members. - @objc - public var numberOfExternalDriveBackup: NSNumber { swift.numberOfExternalDriveBackup as NSNumber } - - @objc - public init( - desktopDeviceSessionInfo: DBXTeamLogDesktopDeviceSessionLogInfo, - status: DBXTeamLogExternalDriveBackupEligibilityStatus, - numberOfExternalDriveBackup: NSNumber - ) { - self.swift = TeamLog.ExternalDriveBackupEligibilityStatusCheckedDetails( - desktopDeviceSessionInfo: desktopDeviceSessionInfo.subSwift, - status: status.swift, - numberOfExternalDriveBackup: numberOfExternalDriveBackup.uint64Value - ) - } - - let swift: TeamLog.ExternalDriveBackupEligibilityStatusCheckedDetails - - public init(swift: TeamLog.ExternalDriveBackupEligibilityStatusCheckedDetails) { - self.swift = swift - } - - @objc - public override var description: String { swift.description } -} - -/// Objective-C compatible ExternalDriveBackupEligibilityStatusCheckedType struct -@objc -public class DBXTeamLogExternalDriveBackupEligibilityStatusCheckedType: NSObject { - /// (no description) - @objc - public var description_: String { swift.description_ } - - @objc - public init(description_: String) { - self.swift = TeamLog.ExternalDriveBackupEligibilityStatusCheckedType(description_: description_) - } - - let swift: TeamLog.ExternalDriveBackupEligibilityStatusCheckedType - - public init(swift: TeamLog.ExternalDriveBackupEligibilityStatusCheckedType) { - self.swift = swift - } - - @objc - public override var description: String { swift.description } -} - -/// Policy for controlling team access to external drive backup feature +/// Errors that can be raised when calling getEvents. @objc -public class DBXTeamLogExternalDriveBackupPolicy: NSObject { - let swift: TeamLog.ExternalDriveBackupPolicy +public class DBXTeamLogGetTeamEventsError: NSObject { + let swift: TeamLog.GetTeamEventsError - public init(swift: TeamLog.ExternalDriveBackupPolicy) { + public init(swift: TeamLog.GetTeamEventsError) { self.swift = swift } - public static func factory(swift: TeamLog.ExternalDriveBackupPolicy) -> DBXTeamLogExternalDriveBackupPolicy { + public static func factory(swift: TeamLog.GetTeamEventsError) -> DBXTeamLogGetTeamEventsError { switch swift { - case .default_: - return DBXTeamLogExternalDriveBackupPolicyDefault_() - case .disabled: - return DBXTeamLogExternalDriveBackupPolicyDisabled() - case .enabled: - return DBXTeamLogExternalDriveBackupPolicyEnabled() + case .accountIdNotFound: + return DBXTeamLogGetTeamEventsErrorAccountIdNotFound() + case .invalidTimeRange: + return DBXTeamLogGetTeamEventsErrorInvalidTimeRange() + case .invalidFilters: + return DBXTeamLogGetTeamEventsErrorInvalidFilters() case .other: - return DBXTeamLogExternalDriveBackupPolicyOther() + return DBXTeamLogGetTeamEventsErrorOther() } } @@ -39679,2301 +54298,2410 @@ public class DBXTeamLogExternalDriveBackupPolicy: NSObject { public override var description: String { swift.description } @objc - public var asDefault_: DBXTeamLogExternalDriveBackupPolicyDefault_? { - self as? DBXTeamLogExternalDriveBackupPolicyDefault_ + public var asAccountIdNotFound: DBXTeamLogGetTeamEventsErrorAccountIdNotFound? { + return self as? DBXTeamLogGetTeamEventsErrorAccountIdNotFound } @objc - public var asDisabled: DBXTeamLogExternalDriveBackupPolicyDisabled? { - self as? DBXTeamLogExternalDriveBackupPolicyDisabled + public var asInvalidTimeRange: DBXTeamLogGetTeamEventsErrorInvalidTimeRange? { + return self as? DBXTeamLogGetTeamEventsErrorInvalidTimeRange } @objc - public var asEnabled: DBXTeamLogExternalDriveBackupPolicyEnabled? { - self as? DBXTeamLogExternalDriveBackupPolicyEnabled + public var asInvalidFilters: DBXTeamLogGetTeamEventsErrorInvalidFilters? { + return self as? DBXTeamLogGetTeamEventsErrorInvalidFilters } @objc - public var asOther: DBXTeamLogExternalDriveBackupPolicyOther? { - self as? DBXTeamLogExternalDriveBackupPolicyOther + public var asOther: DBXTeamLogGetTeamEventsErrorOther? { + return self as? DBXTeamLogGetTeamEventsErrorOther } } -/// An unspecified error. +/// No user found matching the provided account_id. @objc -public class DBXTeamLogExternalDriveBackupPolicyDefault_: DBXTeamLogExternalDriveBackupPolicy { +public class DBXTeamLogGetTeamEventsErrorAccountIdNotFound: DBXTeamLogGetTeamEventsError { @objc public init() { - let swift = TeamLog.ExternalDriveBackupPolicy.default_ + let swift = TeamLog.GetTeamEventsError.accountIdNotFound super.init(swift: swift) } } -/// An unspecified error. +/// Invalid time range. @objc -public class DBXTeamLogExternalDriveBackupPolicyDisabled: DBXTeamLogExternalDriveBackupPolicy { +public class DBXTeamLogGetTeamEventsErrorInvalidTimeRange: DBXTeamLogGetTeamEventsError { @objc public init() { - let swift = TeamLog.ExternalDriveBackupPolicy.disabled + let swift = TeamLog.GetTeamEventsError.invalidTimeRange super.init(swift: swift) } } -/// An unspecified error. +/// Invalid filters. Do not specify both event_type and category parameters for the same call. @objc -public class DBXTeamLogExternalDriveBackupPolicyEnabled: DBXTeamLogExternalDriveBackupPolicy { +public class DBXTeamLogGetTeamEventsErrorInvalidFilters: DBXTeamLogGetTeamEventsError { @objc public init() { - let swift = TeamLog.ExternalDriveBackupPolicy.enabled + let swift = TeamLog.GetTeamEventsError.invalidFilters super.init(swift: swift) } } /// An unspecified error. @objc -public class DBXTeamLogExternalDriveBackupPolicyOther: DBXTeamLogExternalDriveBackupPolicy { +public class DBXTeamLogGetTeamEventsErrorOther: DBXTeamLogGetTeamEventsError { @objc public init() { - let swift = TeamLog.ExternalDriveBackupPolicy.other + let swift = TeamLog.GetTeamEventsError.other super.init(swift: swift) } } -/// Changed external drive backup policy for team. +/// Objective-C compatible GetTeamEventsResult struct @objc -public class DBXTeamLogExternalDriveBackupPolicyChangedDetails: NSObject { - /// New external drive backup policy. +public class DBXTeamLogGetTeamEventsResult: NSObject { + /// List of events. Note that events are not guaranteed to be sorted by their timestamp value. @objc - public var newValue: DBXTeamLogExternalDriveBackupPolicy { DBXTeamLogExternalDriveBackupPolicy(swift: swift.newValue) } - /// Previous external drive backup policy. + public var events: Array { swift.events.map { DBXTeamLogTeamEvent(swift: $0) } } + /// Pass the cursor into getEventsContinue to obtain additional events. The value of cursor may change for each + /// response from getEventsContinue, regardless of the value of hasMore; older cursor strings may expire. + /// Thus, callers should ensure that they update their cursor based on the latest value of cursor after each + /// call, and poll regularly if they wish to poll for new events. Callers should handle reset exceptions for + /// expired cursors. @objc - public var previousValue: DBXTeamLogExternalDriveBackupPolicy { DBXTeamLogExternalDriveBackupPolicy(swift: swift.previousValue) } + public var cursor: String { swift.cursor } + /// Is true if there may be additional events that have not been returned yet. An additional call to + /// getEventsContinue can retrieve them. Note that hasMore may be true, even if events is empty. + @objc + public var hasMore: NSNumber { swift.hasMore as NSNumber } @objc - public init(newValue: DBXTeamLogExternalDriveBackupPolicy, previousValue: DBXTeamLogExternalDriveBackupPolicy) { - self.swift = TeamLog.ExternalDriveBackupPolicyChangedDetails(newValue: newValue.swift, previousValue: previousValue.swift) + public init(events: Array, cursor: String, hasMore: NSNumber) { + self.swift = TeamLog.GetTeamEventsResult(events: events.map { $0.swift }, cursor: cursor, hasMore: hasMore.boolValue) } - let swift: TeamLog.ExternalDriveBackupPolicyChangedDetails + let swift: TeamLog.GetTeamEventsResult - public init(swift: TeamLog.ExternalDriveBackupPolicyChangedDetails) { + public init(swift: TeamLog.GetTeamEventsResult) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible ExternalDriveBackupPolicyChangedType struct +/// Enabled/disabled Google single sign-on for team. @objc -public class DBXTeamLogExternalDriveBackupPolicyChangedType: NSObject { - /// (no description) +public class DBXTeamLogGoogleSsoChangePolicyDetails: NSObject { + /// New Google single sign-on policy. @objc - public var description_: String { swift.description_ } + public var newValue: DBXTeamLogGoogleSsoPolicy { DBXTeamLogGoogleSsoPolicy(swift: swift.newValue) } + /// Previous Google single sign-on policy. Might be missing due to historical data gap. + @objc + public var previousValue: DBXTeamLogGoogleSsoPolicy? { guard let swift = swift.previousValue else { return nil }; return DBXTeamLogGoogleSsoPolicy(swift: swift) } @objc - public init(description_: String) { - self.swift = TeamLog.ExternalDriveBackupPolicyChangedType(description_: description_) + public init(newValue: DBXTeamLogGoogleSsoPolicy, previousValue: DBXTeamLogGoogleSsoPolicy?) { + self.swift = TeamLog.GoogleSsoChangePolicyDetails(newValue: newValue.swift, previousValue: previousValue?.swift) } - let swift: TeamLog.ExternalDriveBackupPolicyChangedType + let swift: TeamLog.GoogleSsoChangePolicyDetails - public init(swift: TeamLog.ExternalDriveBackupPolicyChangedType) { + public init(swift: TeamLog.GoogleSsoChangePolicyDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// External Drive Backup status +/// Objective-C compatible GoogleSsoChangePolicyType struct @objc -public class DBXTeamLogExternalDriveBackupStatus: NSObject { - let swift: TeamLog.ExternalDriveBackupStatus - - public init(swift: TeamLog.ExternalDriveBackupStatus) { - self.swift = swift - } - - public static func factory(swift: TeamLog.ExternalDriveBackupStatus) -> DBXTeamLogExternalDriveBackupStatus { - switch swift { - case .broken: - return DBXTeamLogExternalDriveBackupStatusBroken() - case .created: - return DBXTeamLogExternalDriveBackupStatusCreated() - case .createdOrBroken: - return DBXTeamLogExternalDriveBackupStatusCreatedOrBroken() - case .deleted: - return DBXTeamLogExternalDriveBackupStatusDeleted() - case .empty: - return DBXTeamLogExternalDriveBackupStatusEmpty() - case .unknown: - return DBXTeamLogExternalDriveBackupStatusUnknown() - case .other: - return DBXTeamLogExternalDriveBackupStatusOther() - } - } - +public class DBXTeamLogGoogleSsoChangePolicyType: NSObject { + /// (no description) @objc - public override var description: String { swift.description } + public var description_: String { swift.description_ } @objc - public var asBroken: DBXTeamLogExternalDriveBackupStatusBroken? { - self as? DBXTeamLogExternalDriveBackupStatusBroken + public init(description_: String) { + self.swift = TeamLog.GoogleSsoChangePolicyType(description_: description_) } - @objc - public var asCreated: DBXTeamLogExternalDriveBackupStatusCreated? { - self as? DBXTeamLogExternalDriveBackupStatusCreated - } + let swift: TeamLog.GoogleSsoChangePolicyType - @objc - public var asCreatedOrBroken: DBXTeamLogExternalDriveBackupStatusCreatedOrBroken? { - self as? DBXTeamLogExternalDriveBackupStatusCreatedOrBroken + public init(swift: TeamLog.GoogleSsoChangePolicyType) { + self.swift = swift } - @objc - public var asDeleted: DBXTeamLogExternalDriveBackupStatusDeleted? { - self as? DBXTeamLogExternalDriveBackupStatusDeleted - } @objc - public var asEmpty: DBXTeamLogExternalDriveBackupStatusEmpty? { - self as? DBXTeamLogExternalDriveBackupStatusEmpty - } + public override var description: String { swift.description } +} - @objc - public var asUnknown: DBXTeamLogExternalDriveBackupStatusUnknown? { - self as? DBXTeamLogExternalDriveBackupStatusUnknown +/// Google SSO policy +@objc +public class DBXTeamLogGoogleSsoPolicy: NSObject { + let swift: TeamLog.GoogleSsoPolicy + + public init(swift: TeamLog.GoogleSsoPolicy) { + self.swift = swift } - @objc - public var asOther: DBXTeamLogExternalDriveBackupStatusOther? { - self as? DBXTeamLogExternalDriveBackupStatusOther + public static func factory(swift: TeamLog.GoogleSsoPolicy) -> DBXTeamLogGoogleSsoPolicy { + switch swift { + case .disabled: + return DBXTeamLogGoogleSsoPolicyDisabled() + case .enabled: + return DBXTeamLogGoogleSsoPolicyEnabled() + case .other: + return DBXTeamLogGoogleSsoPolicyOther() + } } -} -/// An unspecified error. -@objc -public class DBXTeamLogExternalDriveBackupStatusBroken: DBXTeamLogExternalDriveBackupStatus { @objc - public init() { - let swift = TeamLog.ExternalDriveBackupStatus.broken - super.init(swift: swift) - } -} + public override var description: String { swift.description } -/// An unspecified error. -@objc -public class DBXTeamLogExternalDriveBackupStatusCreated: DBXTeamLogExternalDriveBackupStatus { @objc - public init() { - let swift = TeamLog.ExternalDriveBackupStatus.created - super.init(swift: swift) + public var asDisabled: DBXTeamLogGoogleSsoPolicyDisabled? { + return self as? DBXTeamLogGoogleSsoPolicyDisabled } -} -/// An unspecified error. -@objc -public class DBXTeamLogExternalDriveBackupStatusCreatedOrBroken: DBXTeamLogExternalDriveBackupStatus { @objc - public init() { - let swift = TeamLog.ExternalDriveBackupStatus.createdOrBroken - super.init(swift: swift) + public var asEnabled: DBXTeamLogGoogleSsoPolicyEnabled? { + return self as? DBXTeamLogGoogleSsoPolicyEnabled } -} -/// An unspecified error. -@objc -public class DBXTeamLogExternalDriveBackupStatusDeleted: DBXTeamLogExternalDriveBackupStatus { @objc - public init() { - let swift = TeamLog.ExternalDriveBackupStatus.deleted - super.init(swift: swift) + public var asOther: DBXTeamLogGoogleSsoPolicyOther? { + return self as? DBXTeamLogGoogleSsoPolicyOther } } /// An unspecified error. @objc -public class DBXTeamLogExternalDriveBackupStatusEmpty: DBXTeamLogExternalDriveBackupStatus { +public class DBXTeamLogGoogleSsoPolicyDisabled: DBXTeamLogGoogleSsoPolicy { @objc public init() { - let swift = TeamLog.ExternalDriveBackupStatus.empty + let swift = TeamLog.GoogleSsoPolicy.disabled super.init(swift: swift) } } /// An unspecified error. @objc -public class DBXTeamLogExternalDriveBackupStatusUnknown: DBXTeamLogExternalDriveBackupStatus { +public class DBXTeamLogGoogleSsoPolicyEnabled: DBXTeamLogGoogleSsoPolicy { @objc public init() { - let swift = TeamLog.ExternalDriveBackupStatus.unknown + let swift = TeamLog.GoogleSsoPolicy.enabled super.init(swift: swift) } } /// An unspecified error. @objc -public class DBXTeamLogExternalDriveBackupStatusOther: DBXTeamLogExternalDriveBackupStatus { +public class DBXTeamLogGoogleSsoPolicyOther: DBXTeamLogGoogleSsoPolicy { @objc public init() { - let swift = TeamLog.ExternalDriveBackupStatus.other + let swift = TeamLog.GoogleSsoPolicy.other super.init(swift: swift) } } -/// Modified external drive backup. +/// Couldn't add a folder to a policy. @objc -public class DBXTeamLogExternalDriveBackupStatusChangedDetails: NSObject { - /// Device's session logged information. +public class DBXTeamLogGovernancePolicyAddFolderFailedDetails: NSObject { + /// Policy ID. @objc - public var desktopDeviceSessionInfo: DBXTeamLogDesktopDeviceSessionLogInfo { DBXTeamLogDesktopDeviceSessionLogInfo(swift: swift.desktopDeviceSessionInfo) } - /// Previous status of this external drive backup. + public var governancePolicyId: String { swift.governancePolicyId } + /// Policy name. @objc - public var previousValue: DBXTeamLogExternalDriveBackupStatus { DBXTeamLogExternalDriveBackupStatus(swift: swift.previousValue) } - /// Next status of this external drive backup. + public var name: String { swift.name } + /// Policy type. @objc - public var newValue: DBXTeamLogExternalDriveBackupStatus { DBXTeamLogExternalDriveBackupStatus(swift: swift.newValue) } + public var policyType: DBXTeamLogPolicyType? { guard let swift = swift.policyType else { return nil }; return DBXTeamLogPolicyType(swift: swift) } + /// Folder. + @objc + public var folder: String { swift.folder } + /// Reason. + @objc + public var reason: String? { swift.reason } @objc - public init( - desktopDeviceSessionInfo: DBXTeamLogDesktopDeviceSessionLogInfo, - previousValue: DBXTeamLogExternalDriveBackupStatus, - newValue: DBXTeamLogExternalDriveBackupStatus - ) { - self.swift = TeamLog.ExternalDriveBackupStatusChangedDetails( - desktopDeviceSessionInfo: desktopDeviceSessionInfo.subSwift, - previousValue: previousValue.swift, - newValue: newValue.swift - ) + public init(governancePolicyId: String, name: String, folder: String, policyType: DBXTeamLogPolicyType?, reason: String?) { + self.swift = TeamLog.GovernancePolicyAddFolderFailedDetails(governancePolicyId: governancePolicyId, name: name, folder: folder, policyType: policyType?.swift, reason: reason) } - let swift: TeamLog.ExternalDriveBackupStatusChangedDetails + let swift: TeamLog.GovernancePolicyAddFolderFailedDetails - public init(swift: TeamLog.ExternalDriveBackupStatusChangedDetails) { + public init(swift: TeamLog.GovernancePolicyAddFolderFailedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible ExternalDriveBackupStatusChangedType struct +/// Objective-C compatible GovernancePolicyAddFolderFailedType struct @objc -public class DBXTeamLogExternalDriveBackupStatusChangedType: NSObject { +public class DBXTeamLogGovernancePolicyAddFolderFailedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.ExternalDriveBackupStatusChangedType(description_: description_) + self.swift = TeamLog.GovernancePolicyAddFolderFailedType(description_: description_) } - let swift: TeamLog.ExternalDriveBackupStatusChangedType + let swift: TeamLog.GovernancePolicyAddFolderFailedType - public init(swift: TeamLog.ExternalDriveBackupStatusChangedType) { + public init(swift: TeamLog.GovernancePolicyAddFolderFailedType) { self.swift = swift } - @objc - public override var description: String { swift.description } -} - -/// Created External sharing report. -@objc -public class DBXTeamLogExternalSharingCreateReportDetails: NSObject { - let swift: TeamLog.ExternalSharingCreateReportDetails - - public init(swift: TeamLog.ExternalSharingCreateReportDetails) { - self.swift = swift - } @objc public override var description: String { swift.description } } -/// Objective-C compatible ExternalSharingCreateReportType struct +/// Added folders to policy. @objc -public class DBXTeamLogExternalSharingCreateReportType: NSObject { - /// (no description) +public class DBXTeamLogGovernancePolicyAddFoldersDetails: NSObject { + /// Policy ID. @objc - public var description_: String { swift.description_ } - + public var governancePolicyId: String { swift.governancePolicyId } + /// Policy name. @objc - public init(description_: String) { - self.swift = TeamLog.ExternalSharingCreateReportType(description_: description_) - } - - let swift: TeamLog.ExternalSharingCreateReportType - - public init(swift: TeamLog.ExternalSharingCreateReportType) { - self.swift = swift - } - + public var name: String { swift.name } + /// Policy type. @objc - public override var description: String { swift.description } -} - -/// Couldn't create External sharing report. -@objc -public class DBXTeamLogExternalSharingReportFailedDetails: NSObject { - /// Failure reason. + public var policyType: DBXTeamLogPolicyType? { guard let swift = swift.policyType else { return nil }; return DBXTeamLogPolicyType(swift: swift) } + /// Folders. @objc - public var failureReason: DBXTeamTeamReportFailureReason { DBXTeamTeamReportFailureReason(swift: swift.failureReason) } + public var folders: Array? { swift.folders } @objc - public init(failureReason: DBXTeamTeamReportFailureReason) { - self.swift = TeamLog.ExternalSharingReportFailedDetails(failureReason: failureReason.swift) + public init(governancePolicyId: String, name: String, policyType: DBXTeamLogPolicyType?, folders: Array?) { + self.swift = TeamLog.GovernancePolicyAddFoldersDetails(governancePolicyId: governancePolicyId, name: name, policyType: policyType?.swift, folders: folders) } - let swift: TeamLog.ExternalSharingReportFailedDetails + let swift: TeamLog.GovernancePolicyAddFoldersDetails - public init(swift: TeamLog.ExternalSharingReportFailedDetails) { + public init(swift: TeamLog.GovernancePolicyAddFoldersDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible ExternalSharingReportFailedType struct +/// Objective-C compatible GovernancePolicyAddFoldersType struct @objc -public class DBXTeamLogExternalSharingReportFailedType: NSObject { +public class DBXTeamLogGovernancePolicyAddFoldersType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.ExternalSharingReportFailedType(description_: description_) + self.swift = TeamLog.GovernancePolicyAddFoldersType(description_: description_) } - let swift: TeamLog.ExternalSharingReportFailedType + let swift: TeamLog.GovernancePolicyAddFoldersType - public init(swift: TeamLog.ExternalSharingReportFailedType) { + public init(swift: TeamLog.GovernancePolicyAddFoldersType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// A user without a Dropbox account. +/// Content disposed. @objc -public class DBXTeamLogExternalUserLogInfo: NSObject { - /// An external user identifier. +public class DBXTeamLogGovernancePolicyContentDisposedDetails: NSObject { + /// Policy ID. @objc - public var userIdentifier: String { swift.userIdentifier } - /// Identifier type. + public var governancePolicyId: String { swift.governancePolicyId } + /// Policy name. @objc - public var identifierType: DBXTeamLogIdentifierType { DBXTeamLogIdentifierType(swift: swift.identifierType) } + public var name: String { swift.name } + /// Policy type. + @objc + public var policyType: DBXTeamLogPolicyType? { guard let swift = swift.policyType else { return nil }; return DBXTeamLogPolicyType(swift: swift) } + /// Disposition type. + @objc + public var dispositionType: DBXTeamLogDispositionActionType { DBXTeamLogDispositionActionType(swift: swift.dispositionType) } @objc - public init(userIdentifier: String, identifierType: DBXTeamLogIdentifierType) { - self.swift = TeamLog.ExternalUserLogInfo(userIdentifier: userIdentifier, identifierType: identifierType.swift) + public init(governancePolicyId: String, name: String, dispositionType: DBXTeamLogDispositionActionType, policyType: DBXTeamLogPolicyType?) { + self.swift = TeamLog.GovernancePolicyContentDisposedDetails(governancePolicyId: governancePolicyId, name: name, dispositionType: dispositionType.swift, policyType: policyType?.swift) } - let swift: TeamLog.ExternalUserLogInfo + let swift: TeamLog.GovernancePolicyContentDisposedDetails - public init(swift: TeamLog.ExternalUserLogInfo) { + public init(swift: TeamLog.GovernancePolicyContentDisposedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Provides details about a failure +/// Objective-C compatible GovernancePolicyContentDisposedType struct @objc -public class DBXTeamLogFailureDetailsLogInfo: NSObject { - /// A user friendly explanation of the error. - @objc - public var userFriendlyMessage: String? { swift.userFriendlyMessage } - /// A technical explanation of the error. This is relevant for some errors. +public class DBXTeamLogGovernancePolicyContentDisposedType: NSObject { + /// (no description) @objc - public var technicalErrorMessage: String? { swift.technicalErrorMessage } + public var description_: String { swift.description_ } @objc - public init(userFriendlyMessage: String?, technicalErrorMessage: String?) { - self.swift = TeamLog.FailureDetailsLogInfo(userFriendlyMessage: userFriendlyMessage, technicalErrorMessage: technicalErrorMessage) + public init(description_: String) { + self.swift = TeamLog.GovernancePolicyContentDisposedType(description_: description_) } - let swift: TeamLog.FailureDetailsLogInfo + let swift: TeamLog.GovernancePolicyContentDisposedType - public init(swift: TeamLog.FailureDetailsLogInfo) { + public init(swift: TeamLog.GovernancePolicyContentDisposedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible FedAdminRole union +/// Activated a new policy. @objc -public class DBXTeamLogFedAdminRole: NSObject { - let swift: TeamLog.FedAdminRole - - public init(swift: TeamLog.FedAdminRole) { - self.swift = swift - } - - public static func factory(swift: TeamLog.FedAdminRole) -> DBXTeamLogFedAdminRole { - switch swift { - case .enterpriseAdmin: - return DBXTeamLogFedAdminRoleEnterpriseAdmin() - case .notEnterpriseAdmin: - return DBXTeamLogFedAdminRoleNotEnterpriseAdmin() - case .other: - return DBXTeamLogFedAdminRoleOther() - } - } - - @objc - public override var description: String { swift.description } - +public class DBXTeamLogGovernancePolicyCreateDetails: NSObject { + /// Policy ID. @objc - public var asEnterpriseAdmin: DBXTeamLogFedAdminRoleEnterpriseAdmin? { - self as? DBXTeamLogFedAdminRoleEnterpriseAdmin - } - + public var governancePolicyId: String { swift.governancePolicyId } + /// Policy name. @objc - public var asNotEnterpriseAdmin: DBXTeamLogFedAdminRoleNotEnterpriseAdmin? { - self as? DBXTeamLogFedAdminRoleNotEnterpriseAdmin - } - + public var name: String { swift.name } + /// Policy type. @objc - public var asOther: DBXTeamLogFedAdminRoleOther? { - self as? DBXTeamLogFedAdminRoleOther - } -} - -/// An unspecified error. -@objc -public class DBXTeamLogFedAdminRoleEnterpriseAdmin: DBXTeamLogFedAdminRole { + public var policyType: DBXTeamLogPolicyType? { guard let swift = swift.policyType else { return nil }; return DBXTeamLogPolicyType(swift: swift) } + /// Duration in days. @objc - public init() { - let swift = TeamLog.FedAdminRole.enterpriseAdmin - super.init(swift: swift) - } -} - -/// An unspecified error. -@objc -public class DBXTeamLogFedAdminRoleNotEnterpriseAdmin: DBXTeamLogFedAdminRole { + public var duration: DBXTeamLogDurationLogInfo { DBXTeamLogDurationLogInfo(swift: swift.duration) } + /// Folders. @objc - public init() { - let swift = TeamLog.FedAdminRole.notEnterpriseAdmin - super.init(swift: swift) - } -} + public var folders: Array? { swift.folders } -/// An unspecified error. -@objc -public class DBXTeamLogFedAdminRoleOther: DBXTeamLogFedAdminRole { @objc - public init() { - let swift = TeamLog.FedAdminRole.other - super.init(swift: swift) + public init(governancePolicyId: String, name: String, duration: DBXTeamLogDurationLogInfo, policyType: DBXTeamLogPolicyType?, folders: Array?) { + self.swift = TeamLog.GovernancePolicyCreateDetails(governancePolicyId: governancePolicyId, name: name, duration: duration.swift, policyType: policyType?.swift, folders: folders) } -} -/// More details about the organization or team. -@objc -public class DBXTeamLogFedExtraDetails: NSObject { - let swift: TeamLog.FedExtraDetails + let swift: TeamLog.GovernancePolicyCreateDetails - public init(swift: TeamLog.FedExtraDetails) { + public init(swift: TeamLog.GovernancePolicyCreateDetails) { self.swift = swift } - public static func factory(swift: TeamLog.FedExtraDetails) -> DBXTeamLogFedExtraDetails { - switch swift { - case .organization(let swiftArg): - let arg = DBXTeamLogOrganizationDetails(swift: swiftArg) - return DBXTeamLogFedExtraDetailsOrganization(arg) - case .team(let swiftArg): - let arg = DBXTeamLogTeamDetails(swift: swiftArg) - return DBXTeamLogFedExtraDetailsTeam(arg) - case .other: - return DBXTeamLogFedExtraDetailsOther() - } - } @objc public override var description: String { swift.description } +} +/// Objective-C compatible GovernancePolicyCreateType struct +@objc +public class DBXTeamLogGovernancePolicyCreateType: NSObject { + /// (no description) @objc - public var asOrganization: DBXTeamLogFedExtraDetailsOrganization? { - self as? DBXTeamLogFedExtraDetailsOrganization - } + public var description_: String { swift.description_ } @objc - public var asTeam: DBXTeamLogFedExtraDetailsTeam? { - self as? DBXTeamLogFedExtraDetailsTeam + public init(description_: String) { + self.swift = TeamLog.GovernancePolicyCreateType(description_: description_) } - @objc - public var asOther: DBXTeamLogFedExtraDetailsOther? { - self as? DBXTeamLogFedExtraDetailsOther + let swift: TeamLog.GovernancePolicyCreateType + + public init(swift: TeamLog.GovernancePolicyCreateType) { + self.swift = swift } -} -/// More details about the organization. -@objc -public class DBXTeamLogFedExtraDetailsOrganization: DBXTeamLogFedExtraDetails { - @objc - public var organization: DBXTeamLogOrganizationDetails @objc - public init(_ arg: DBXTeamLogOrganizationDetails) { - self.organization = arg - let swift = TeamLog.FedExtraDetails.organization(arg.swift) - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// More details about the team. +/// Deleted a policy. @objc -public class DBXTeamLogFedExtraDetailsTeam: DBXTeamLogFedExtraDetails { +public class DBXTeamLogGovernancePolicyDeleteDetails: NSObject { + /// Policy ID. @objc - public var team: DBXTeamLogTeamDetails - + public var governancePolicyId: String { swift.governancePolicyId } + /// Policy name. @objc - public init(_ arg: DBXTeamLogTeamDetails) { - self.team = arg - let swift = TeamLog.FedExtraDetails.team(arg.swift) - super.init(swift: swift) - } -} + public var name: String { swift.name } + /// Policy type. + @objc + public var policyType: DBXTeamLogPolicyType? { guard let swift = swift.policyType else { return nil }; return DBXTeamLogPolicyType(swift: swift) } -/// An unspecified error. -@objc -public class DBXTeamLogFedExtraDetailsOther: DBXTeamLogFedExtraDetails { @objc - public init() { - let swift = TeamLog.FedExtraDetails.other - super.init(swift: swift) + public init(governancePolicyId: String, name: String, policyType: DBXTeamLogPolicyType?) { + self.swift = TeamLog.GovernancePolicyDeleteDetails(governancePolicyId: governancePolicyId, name: name, policyType: policyType?.swift) } -} -/// Objective-C compatible FedHandshakeAction union -@objc -public class DBXTeamLogFedHandshakeAction: NSObject { - let swift: TeamLog.FedHandshakeAction + let swift: TeamLog.GovernancePolicyDeleteDetails - public init(swift: TeamLog.FedHandshakeAction) { + public init(swift: TeamLog.GovernancePolicyDeleteDetails) { self.swift = swift } - public static func factory(swift: TeamLog.FedHandshakeAction) -> DBXTeamLogFedHandshakeAction { - switch swift { - case .acceptedInvite: - return DBXTeamLogFedHandshakeActionAcceptedInvite() - case .canceledInvite: - return DBXTeamLogFedHandshakeActionCanceledInvite() - case .inviteExpired: - return DBXTeamLogFedHandshakeActionInviteExpired() - case .invited: - return DBXTeamLogFedHandshakeActionInvited() - case .rejectedInvite: - return DBXTeamLogFedHandshakeActionRejectedInvite() - case .removedTeam: - return DBXTeamLogFedHandshakeActionRemovedTeam() - case .other: - return DBXTeamLogFedHandshakeActionOther() - } - } @objc public override var description: String { swift.description } +} +/// Objective-C compatible GovernancePolicyDeleteType struct +@objc +public class DBXTeamLogGovernancePolicyDeleteType: NSObject { + /// (no description) @objc - public var asAcceptedInvite: DBXTeamLogFedHandshakeActionAcceptedInvite? { - self as? DBXTeamLogFedHandshakeActionAcceptedInvite - } - - @objc - public var asCanceledInvite: DBXTeamLogFedHandshakeActionCanceledInvite? { - self as? DBXTeamLogFedHandshakeActionCanceledInvite - } + public var description_: String { swift.description_ } @objc - public var asInviteExpired: DBXTeamLogFedHandshakeActionInviteExpired? { - self as? DBXTeamLogFedHandshakeActionInviteExpired + public init(description_: String) { + self.swift = TeamLog.GovernancePolicyDeleteType(description_: description_) } - @objc - public var asInvited: DBXTeamLogFedHandshakeActionInvited? { - self as? DBXTeamLogFedHandshakeActionInvited - } + let swift: TeamLog.GovernancePolicyDeleteType - @objc - public var asRejectedInvite: DBXTeamLogFedHandshakeActionRejectedInvite? { - self as? DBXTeamLogFedHandshakeActionRejectedInvite + public init(swift: TeamLog.GovernancePolicyDeleteType) { + self.swift = swift } - @objc - public var asRemovedTeam: DBXTeamLogFedHandshakeActionRemovedTeam? { - self as? DBXTeamLogFedHandshakeActionRemovedTeam - } @objc - public var asOther: DBXTeamLogFedHandshakeActionOther? { - self as? DBXTeamLogFedHandshakeActionOther - } + public override var description: String { swift.description } } -/// An unspecified error. +/// Edited policy. @objc -public class DBXTeamLogFedHandshakeActionAcceptedInvite: DBXTeamLogFedHandshakeAction { +public class DBXTeamLogGovernancePolicyEditDetailsDetails: NSObject { + /// Policy ID. @objc - public init() { - let swift = TeamLog.FedHandshakeAction.acceptedInvite - super.init(swift: swift) - } -} - -/// An unspecified error. -@objc -public class DBXTeamLogFedHandshakeActionCanceledInvite: DBXTeamLogFedHandshakeAction { + public var governancePolicyId: String { swift.governancePolicyId } + /// Policy name. @objc - public init() { - let swift = TeamLog.FedHandshakeAction.canceledInvite - super.init(swift: swift) - } -} - -/// An unspecified error. -@objc -public class DBXTeamLogFedHandshakeActionInviteExpired: DBXTeamLogFedHandshakeAction { + public var name: String { swift.name } + /// Policy type. @objc - public init() { - let swift = TeamLog.FedHandshakeAction.inviteExpired - super.init(swift: swift) - } -} - -/// An unspecified error. -@objc -public class DBXTeamLogFedHandshakeActionInvited: DBXTeamLogFedHandshakeAction { + public var policyType: DBXTeamLogPolicyType? { guard let swift = swift.policyType else { return nil }; return DBXTeamLogPolicyType(swift: swift) } + /// Attribute. @objc - public init() { - let swift = TeamLog.FedHandshakeAction.invited - super.init(swift: swift) - } -} - -/// An unspecified error. -@objc -public class DBXTeamLogFedHandshakeActionRejectedInvite: DBXTeamLogFedHandshakeAction { + public var attribute: String { swift.attribute } + /// From. @objc - public init() { - let swift = TeamLog.FedHandshakeAction.rejectedInvite - super.init(swift: swift) - } -} - -/// An unspecified error. -@objc -public class DBXTeamLogFedHandshakeActionRemovedTeam: DBXTeamLogFedHandshakeAction { + public var previousValue: String { swift.previousValue } + /// To. @objc - public init() { - let swift = TeamLog.FedHandshakeAction.removedTeam - super.init(swift: swift) - } -} + public var newValue: String { swift.newValue } -/// An unspecified error. -@objc -public class DBXTeamLogFedHandshakeActionOther: DBXTeamLogFedHandshakeAction { @objc - public init() { - let swift = TeamLog.FedHandshakeAction.other - super.init(swift: swift) + public init(governancePolicyId: String, name: String, attribute: String, previousValue: String, newValue: String, policyType: DBXTeamLogPolicyType?) { + self.swift = TeamLog.GovernancePolicyEditDetailsDetails(governancePolicyId: governancePolicyId, name: name, attribute: attribute, previousValue: previousValue, newValue: newValue, policyType: policyType?.swift) } -} -/// Additional information about the organization or connected team -@objc -public class DBXTeamLogFederationStatusChangeAdditionalInfo: NSObject { - let swift: TeamLog.FederationStatusChangeAdditionalInfo + let swift: TeamLog.GovernancePolicyEditDetailsDetails - public init(swift: TeamLog.FederationStatusChangeAdditionalInfo) { + public init(swift: TeamLog.GovernancePolicyEditDetailsDetails) { self.swift = swift } - public static func factory(swift: TeamLog.FederationStatusChangeAdditionalInfo) -> DBXTeamLogFederationStatusChangeAdditionalInfo { - switch swift { - case .connectedTeamName(let swiftArg): - let arg = DBXTeamLogConnectedTeamName(swift: swiftArg) - return DBXTeamLogFederationStatusChangeAdditionalInfoConnectedTeamName(arg) - case .nonTrustedTeamDetails(let swiftArg): - let arg = DBXTeamLogNonTrustedTeamDetails(swift: swiftArg) - return DBXTeamLogFederationStatusChangeAdditionalInfoNonTrustedTeamDetails(arg) - case .organizationName(let swiftArg): - let arg = DBXTeamLogOrganizationName(swift: swiftArg) - return DBXTeamLogFederationStatusChangeAdditionalInfoOrganizationName(arg) - case .other: - return DBXTeamLogFederationStatusChangeAdditionalInfoOther() - } - } @objc public override var description: String { swift.description } - - @objc - public var asConnectedTeamName: DBXTeamLogFederationStatusChangeAdditionalInfoConnectedTeamName? { - self as? DBXTeamLogFederationStatusChangeAdditionalInfoConnectedTeamName - } - - @objc - public var asNonTrustedTeamDetails: DBXTeamLogFederationStatusChangeAdditionalInfoNonTrustedTeamDetails? { - self as? DBXTeamLogFederationStatusChangeAdditionalInfoNonTrustedTeamDetails - } - - @objc - public var asOrganizationName: DBXTeamLogFederationStatusChangeAdditionalInfoOrganizationName? { - self as? DBXTeamLogFederationStatusChangeAdditionalInfoOrganizationName - } - - @objc - public var asOther: DBXTeamLogFederationStatusChangeAdditionalInfoOther? { - self as? DBXTeamLogFederationStatusChangeAdditionalInfoOther - } } -/// The name of the team. +/// Objective-C compatible GovernancePolicyEditDetailsType struct @objc -public class DBXTeamLogFederationStatusChangeAdditionalInfoConnectedTeamName: DBXTeamLogFederationStatusChangeAdditionalInfo { +public class DBXTeamLogGovernancePolicyEditDetailsType: NSObject { + /// (no description) @objc - public var connectedTeamName: DBXTeamLogConnectedTeamName + public var description_: String { swift.description_ } @objc - public init(_ arg: DBXTeamLogConnectedTeamName) { - self.connectedTeamName = arg - let swift = TeamLog.FederationStatusChangeAdditionalInfo.connectedTeamName(arg.swift) - super.init(swift: swift) + public init(description_: String) { + self.swift = TeamLog.GovernancePolicyEditDetailsType(description_: description_) } -} -/// The email to which the request was sent. -@objc -public class DBXTeamLogFederationStatusChangeAdditionalInfoNonTrustedTeamDetails: DBXTeamLogFederationStatusChangeAdditionalInfo { - @objc - public var nonTrustedTeamDetails: DBXTeamLogNonTrustedTeamDetails + let swift: TeamLog.GovernancePolicyEditDetailsType - @objc - public init(_ arg: DBXTeamLogNonTrustedTeamDetails) { - self.nonTrustedTeamDetails = arg - let swift = TeamLog.FederationStatusChangeAdditionalInfo.nonTrustedTeamDetails(arg.swift) - super.init(swift: swift) + public init(swift: TeamLog.GovernancePolicyEditDetailsType) { + self.swift = swift } -} - -/// The name of the organization. -@objc -public class DBXTeamLogFederationStatusChangeAdditionalInfoOrganizationName: DBXTeamLogFederationStatusChangeAdditionalInfo { - @objc - public var organizationName: DBXTeamLogOrganizationName - @objc - public init(_ arg: DBXTeamLogOrganizationName) { - self.organizationName = arg - let swift = TeamLog.FederationStatusChangeAdditionalInfo.organizationName(arg.swift) - super.init(swift: swift) - } -} -/// An unspecified error. -@objc -public class DBXTeamLogFederationStatusChangeAdditionalInfoOther: DBXTeamLogFederationStatusChangeAdditionalInfo { @objc - public init() { - let swift = TeamLog.FederationStatusChangeAdditionalInfo.other - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// Added file comment. +/// Changed policy duration. @objc -public class DBXTeamLogFileAddCommentDetails: NSObject { - /// Comment text. +public class DBXTeamLogGovernancePolicyEditDurationDetails: NSObject { + /// Policy ID. @objc - public var commentText: String? { swift.commentText } + public var governancePolicyId: String { swift.governancePolicyId } + /// Policy name. + @objc + public var name: String { swift.name } + /// Policy type. + @objc + public var policyType: DBXTeamLogPolicyType? { guard let swift = swift.policyType else { return nil }; return DBXTeamLogPolicyType(swift: swift) } + /// From. + @objc + public var previousValue: DBXTeamLogDurationLogInfo { DBXTeamLogDurationLogInfo(swift: swift.previousValue) } + /// To. + @objc + public var newValue: DBXTeamLogDurationLogInfo { DBXTeamLogDurationLogInfo(swift: swift.newValue) } @objc - public init(commentText: String?) { - self.swift = TeamLog.FileAddCommentDetails(commentText: commentText) + public init(governancePolicyId: String, name: String, previousValue: DBXTeamLogDurationLogInfo, newValue: DBXTeamLogDurationLogInfo, policyType: DBXTeamLogPolicyType?) { + self.swift = TeamLog.GovernancePolicyEditDurationDetails(governancePolicyId: governancePolicyId, name: name, previousValue: previousValue.swift, newValue: newValue.swift, policyType: policyType?.swift) } - let swift: TeamLog.FileAddCommentDetails + let swift: TeamLog.GovernancePolicyEditDurationDetails - public init(swift: TeamLog.FileAddCommentDetails) { + public init(swift: TeamLog.GovernancePolicyEditDurationDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible FileAddCommentType struct +/// Objective-C compatible GovernancePolicyEditDurationType struct @objc -public class DBXTeamLogFileAddCommentType: NSObject { +public class DBXTeamLogGovernancePolicyEditDurationType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.FileAddCommentType(description_: description_) + self.swift = TeamLog.GovernancePolicyEditDurationType(description_: description_) } - let swift: TeamLog.FileAddCommentType + let swift: TeamLog.GovernancePolicyEditDurationType - public init(swift: TeamLog.FileAddCommentType) { + public init(swift: TeamLog.GovernancePolicyEditDurationType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Added files and/or folders. +/// Created a policy download. @objc -public class DBXTeamLogFileAddDetails: NSObject { - let swift: TeamLog.FileAddDetails +public class DBXTeamLogGovernancePolicyExportCreatedDetails: NSObject { + /// Policy ID. + @objc + public var governancePolicyId: String { swift.governancePolicyId } + /// Policy name. + @objc + public var name: String { swift.name } + /// Policy type. + @objc + public var policyType: DBXTeamLogPolicyType? { guard let swift = swift.policyType else { return nil }; return DBXTeamLogPolicyType(swift: swift) } + /// Export name. + @objc + public var exportName: String { swift.exportName } - public init(swift: TeamLog.FileAddDetails) { + @objc + public init(governancePolicyId: String, name: String, exportName: String, policyType: DBXTeamLogPolicyType?) { + self.swift = TeamLog.GovernancePolicyExportCreatedDetails(governancePolicyId: governancePolicyId, name: name, exportName: exportName, policyType: policyType?.swift) + } + + let swift: TeamLog.GovernancePolicyExportCreatedDetails + + public init(swift: TeamLog.GovernancePolicyExportCreatedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Added files and/or folders from automation. +/// Objective-C compatible GovernancePolicyExportCreatedType struct @objc -public class DBXTeamLogFileAddFromAutomationDetails: NSObject { - let swift: TeamLog.FileAddFromAutomationDetails +public class DBXTeamLogGovernancePolicyExportCreatedType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } - public init(swift: TeamLog.FileAddFromAutomationDetails) { + @objc + public init(description_: String) { + self.swift = TeamLog.GovernancePolicyExportCreatedType(description_: description_) + } + + let swift: TeamLog.GovernancePolicyExportCreatedType + + public init(swift: TeamLog.GovernancePolicyExportCreatedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible FileAddFromAutomationType struct +/// Removed a policy download. @objc -public class DBXTeamLogFileAddFromAutomationType: NSObject { - /// (no description) +public class DBXTeamLogGovernancePolicyExportRemovedDetails: NSObject { + /// Policy ID. @objc - public var description_: String { swift.description_ } + public var governancePolicyId: String { swift.governancePolicyId } + /// Policy name. + @objc + public var name: String { swift.name } + /// Policy type. + @objc + public var policyType: DBXTeamLogPolicyType? { guard let swift = swift.policyType else { return nil }; return DBXTeamLogPolicyType(swift: swift) } + /// Export name. + @objc + public var exportName: String { swift.exportName } @objc - public init(description_: String) { - self.swift = TeamLog.FileAddFromAutomationType(description_: description_) + public init(governancePolicyId: String, name: String, exportName: String, policyType: DBXTeamLogPolicyType?) { + self.swift = TeamLog.GovernancePolicyExportRemovedDetails(governancePolicyId: governancePolicyId, name: name, exportName: exportName, policyType: policyType?.swift) } - let swift: TeamLog.FileAddFromAutomationType + let swift: TeamLog.GovernancePolicyExportRemovedDetails - public init(swift: TeamLog.FileAddFromAutomationType) { + public init(swift: TeamLog.GovernancePolicyExportRemovedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible FileAddType struct +/// Objective-C compatible GovernancePolicyExportRemovedType struct @objc -public class DBXTeamLogFileAddType: NSObject { +public class DBXTeamLogGovernancePolicyExportRemovedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.FileAddType(description_: description_) + self.swift = TeamLog.GovernancePolicyExportRemovedType(description_: description_) } - let swift: TeamLog.FileAddType + let swift: TeamLog.GovernancePolicyExportRemovedType - public init(swift: TeamLog.FileAddType) { + public init(swift: TeamLog.GovernancePolicyExportRemovedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Subscribed to or unsubscribed from comment notifications for file. +/// Removed folders from policy. @objc -public class DBXTeamLogFileChangeCommentSubscriptionDetails: NSObject { - /// New file comment subscription. +public class DBXTeamLogGovernancePolicyRemoveFoldersDetails: NSObject { + /// Policy ID. @objc - public var newValue: DBXTeamLogFileCommentNotificationPolicy { DBXTeamLogFileCommentNotificationPolicy(swift: swift.newValue) } - /// Previous file comment subscription. Might be missing due to historical data gap. + public var governancePolicyId: String { swift.governancePolicyId } + /// Policy name. @objc - public var previousValue: DBXTeamLogFileCommentNotificationPolicy? { guard let swift = swift.previousValue else { return nil } - return DBXTeamLogFileCommentNotificationPolicy(swift: swift) - } + public var name: String { swift.name } + /// Policy type. + @objc + public var policyType: DBXTeamLogPolicyType? { guard let swift = swift.policyType else { return nil }; return DBXTeamLogPolicyType(swift: swift) } + /// Folders. + @objc + public var folders: Array? { swift.folders } + /// Reason. + @objc + public var reason: String? { swift.reason } @objc - public init(newValue: DBXTeamLogFileCommentNotificationPolicy, previousValue: DBXTeamLogFileCommentNotificationPolicy?) { - self.swift = TeamLog.FileChangeCommentSubscriptionDetails(newValue: newValue.swift, previousValue: previousValue?.swift) + public init(governancePolicyId: String, name: String, policyType: DBXTeamLogPolicyType?, folders: Array?, reason: String?) { + self.swift = TeamLog.GovernancePolicyRemoveFoldersDetails(governancePolicyId: governancePolicyId, name: name, policyType: policyType?.swift, folders: folders, reason: reason) } - let swift: TeamLog.FileChangeCommentSubscriptionDetails + let swift: TeamLog.GovernancePolicyRemoveFoldersDetails - public init(swift: TeamLog.FileChangeCommentSubscriptionDetails) { + public init(swift: TeamLog.GovernancePolicyRemoveFoldersDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible FileChangeCommentSubscriptionType struct +/// Objective-C compatible GovernancePolicyRemoveFoldersType struct @objc -public class DBXTeamLogFileChangeCommentSubscriptionType: NSObject { +public class DBXTeamLogGovernancePolicyRemoveFoldersType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.FileChangeCommentSubscriptionType(description_: description_) + self.swift = TeamLog.GovernancePolicyRemoveFoldersType(description_: description_) } - let swift: TeamLog.FileChangeCommentSubscriptionType + let swift: TeamLog.GovernancePolicyRemoveFoldersType - public init(swift: TeamLog.FileChangeCommentSubscriptionType) { + public init(swift: TeamLog.GovernancePolicyRemoveFoldersType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Enable or disable file comments notifications +/// Created a summary report for a policy. @objc -public class DBXTeamLogFileCommentNotificationPolicy: NSObject { - let swift: TeamLog.FileCommentNotificationPolicy +public class DBXTeamLogGovernancePolicyReportCreatedDetails: NSObject { + /// Policy ID. + @objc + public var governancePolicyId: String { swift.governancePolicyId } + /// Policy name. + @objc + public var name: String { swift.name } + /// Policy type. + @objc + public var policyType: DBXTeamLogPolicyType? { guard let swift = swift.policyType else { return nil }; return DBXTeamLogPolicyType(swift: swift) } - public init(swift: TeamLog.FileCommentNotificationPolicy) { - self.swift = swift + @objc + public init(governancePolicyId: String, name: String, policyType: DBXTeamLogPolicyType?) { + self.swift = TeamLog.GovernancePolicyReportCreatedDetails(governancePolicyId: governancePolicyId, name: name, policyType: policyType?.swift) } - public static func factory(swift: TeamLog.FileCommentNotificationPolicy) -> DBXTeamLogFileCommentNotificationPolicy { - switch swift { - case .disabled: - return DBXTeamLogFileCommentNotificationPolicyDisabled() - case .enabled: - return DBXTeamLogFileCommentNotificationPolicyEnabled() - case .other: - return DBXTeamLogFileCommentNotificationPolicyOther() - } + let swift: TeamLog.GovernancePolicyReportCreatedDetails + + public init(swift: TeamLog.GovernancePolicyReportCreatedDetails) { + self.swift = swift } + @objc public override var description: String { swift.description } +} +/// Objective-C compatible GovernancePolicyReportCreatedType struct +@objc +public class DBXTeamLogGovernancePolicyReportCreatedType: NSObject { + /// (no description) @objc - public var asDisabled: DBXTeamLogFileCommentNotificationPolicyDisabled? { - self as? DBXTeamLogFileCommentNotificationPolicyDisabled - } + public var description_: String { swift.description_ } @objc - public var asEnabled: DBXTeamLogFileCommentNotificationPolicyEnabled? { - self as? DBXTeamLogFileCommentNotificationPolicyEnabled + public init(description_: String) { + self.swift = TeamLog.GovernancePolicyReportCreatedType(description_: description_) } - @objc - public var asOther: DBXTeamLogFileCommentNotificationPolicyOther? { - self as? DBXTeamLogFileCommentNotificationPolicyOther - } -} + let swift: TeamLog.GovernancePolicyReportCreatedType -/// An unspecified error. -@objc -public class DBXTeamLogFileCommentNotificationPolicyDisabled: DBXTeamLogFileCommentNotificationPolicy { - @objc - public init() { - let swift = TeamLog.FileCommentNotificationPolicy.disabled - super.init(swift: swift) + public init(swift: TeamLog.GovernancePolicyReportCreatedType) { + self.swift = swift } -} -/// An unspecified error. -@objc -public class DBXTeamLogFileCommentNotificationPolicyEnabled: DBXTeamLogFileCommentNotificationPolicy { - @objc - public init() { - let swift = TeamLog.FileCommentNotificationPolicy.enabled - super.init(swift: swift) - } -} -/// An unspecified error. -@objc -public class DBXTeamLogFileCommentNotificationPolicyOther: DBXTeamLogFileCommentNotificationPolicy { @objc - public init() { - let swift = TeamLog.FileCommentNotificationPolicy.other - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// Enabled/disabled commenting on team files. +/// Downloaded content from a policy. @objc -public class DBXTeamLogFileCommentsChangePolicyDetails: NSObject { - /// New commenting on team files policy. +public class DBXTeamLogGovernancePolicyZipPartDownloadedDetails: NSObject { + /// Policy ID. @objc - public var newValue: DBXTeamLogFileCommentsPolicy { DBXTeamLogFileCommentsPolicy(swift: swift.newValue) } - /// Previous commenting on team files policy. Might be missing due to historical data gap. + public var governancePolicyId: String { swift.governancePolicyId } + /// Policy name. @objc - public var previousValue: DBXTeamLogFileCommentsPolicy? { guard let swift = swift.previousValue else { return nil } - return DBXTeamLogFileCommentsPolicy(swift: swift) - } + public var name: String { swift.name } + /// Policy type. + @objc + public var policyType: DBXTeamLogPolicyType? { guard let swift = swift.policyType else { return nil }; return DBXTeamLogPolicyType(swift: swift) } + /// Export name. + @objc + public var exportName: String { swift.exportName } + /// Part. + @objc + public var part: String? { swift.part } @objc - public init(newValue: DBXTeamLogFileCommentsPolicy, previousValue: DBXTeamLogFileCommentsPolicy?) { - self.swift = TeamLog.FileCommentsChangePolicyDetails(newValue: newValue.swift, previousValue: previousValue?.swift) + public init(governancePolicyId: String, name: String, exportName: String, policyType: DBXTeamLogPolicyType?, part: String?) { + self.swift = TeamLog.GovernancePolicyZipPartDownloadedDetails(governancePolicyId: governancePolicyId, name: name, exportName: exportName, policyType: policyType?.swift, part: part) } - let swift: TeamLog.FileCommentsChangePolicyDetails + let swift: TeamLog.GovernancePolicyZipPartDownloadedDetails - public init(swift: TeamLog.FileCommentsChangePolicyDetails) { + public init(swift: TeamLog.GovernancePolicyZipPartDownloadedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible FileCommentsChangePolicyType struct +/// Objective-C compatible GovernancePolicyZipPartDownloadedType struct @objc -public class DBXTeamLogFileCommentsChangePolicyType: NSObject { +public class DBXTeamLogGovernancePolicyZipPartDownloadedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.FileCommentsChangePolicyType(description_: description_) + self.swift = TeamLog.GovernancePolicyZipPartDownloadedType(description_: description_) } - let swift: TeamLog.FileCommentsChangePolicyType + let swift: TeamLog.GovernancePolicyZipPartDownloadedType - public init(swift: TeamLog.FileCommentsChangePolicyType) { + public init(swift: TeamLog.GovernancePolicyZipPartDownloadedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// File comments policy +/// Added external ID for group. @objc -public class DBXTeamLogFileCommentsPolicy: NSObject { - let swift: TeamLog.FileCommentsPolicy +public class DBXTeamLogGroupAddExternalIdDetails: NSObject { + /// Current external id. + @objc + public var newValue: String { swift.newValue } - public init(swift: TeamLog.FileCommentsPolicy) { - self.swift = swift + @objc + public init(newValue: String) { + self.swift = TeamLog.GroupAddExternalIdDetails(newValue: newValue) } - public static func factory(swift: TeamLog.FileCommentsPolicy) -> DBXTeamLogFileCommentsPolicy { - switch swift { - case .disabled: - return DBXTeamLogFileCommentsPolicyDisabled() - case .enabled: - return DBXTeamLogFileCommentsPolicyEnabled() - case .other: - return DBXTeamLogFileCommentsPolicyOther() - } + let swift: TeamLog.GroupAddExternalIdDetails + + public init(swift: TeamLog.GroupAddExternalIdDetails) { + self.swift = swift } + @objc public override var description: String { swift.description } +} +/// Objective-C compatible GroupAddExternalIdType struct +@objc +public class DBXTeamLogGroupAddExternalIdType: NSObject { + /// (no description) @objc - public var asDisabled: DBXTeamLogFileCommentsPolicyDisabled? { - self as? DBXTeamLogFileCommentsPolicyDisabled - } + public var description_: String { swift.description_ } @objc - public var asEnabled: DBXTeamLogFileCommentsPolicyEnabled? { - self as? DBXTeamLogFileCommentsPolicyEnabled + public init(description_: String) { + self.swift = TeamLog.GroupAddExternalIdType(description_: description_) } - @objc - public var asOther: DBXTeamLogFileCommentsPolicyOther? { - self as? DBXTeamLogFileCommentsPolicyOther - } -} + let swift: TeamLog.GroupAddExternalIdType -/// An unspecified error. -@objc -public class DBXTeamLogFileCommentsPolicyDisabled: DBXTeamLogFileCommentsPolicy { - @objc - public init() { - let swift = TeamLog.FileCommentsPolicy.disabled - super.init(swift: swift) + public init(swift: TeamLog.GroupAddExternalIdType) { + self.swift = swift } -} -/// An unspecified error. -@objc -public class DBXTeamLogFileCommentsPolicyEnabled: DBXTeamLogFileCommentsPolicy { - @objc - public init() { - let swift = TeamLog.FileCommentsPolicy.enabled - super.init(swift: swift) - } -} -/// An unspecified error. -@objc -public class DBXTeamLogFileCommentsPolicyOther: DBXTeamLogFileCommentsPolicy { @objc - public init() { - let swift = TeamLog.FileCommentsPolicy.other - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// Copied files and/or folders. +/// Added team members to group. @objc -public class DBXTeamLogFileCopyDetails: NSObject { - /// Relocate action details. +public class DBXTeamLogGroupAddMemberDetails: NSObject { + /// Is group owner. @objc - public var relocateActionDetails: [DBXTeamLogRelocateAssetReferencesLogInfo] { - swift.relocateActionDetails.map { DBXTeamLogRelocateAssetReferencesLogInfo(swift: $0) } - } + public var isGroupOwner: NSNumber { swift.isGroupOwner as NSNumber } @objc - public init(relocateActionDetails: [DBXTeamLogRelocateAssetReferencesLogInfo]) { - self.swift = TeamLog.FileCopyDetails(relocateActionDetails: relocateActionDetails.map(\.swift)) + public init(isGroupOwner: NSNumber) { + self.swift = TeamLog.GroupAddMemberDetails(isGroupOwner: isGroupOwner.boolValue) } - let swift: TeamLog.FileCopyDetails + let swift: TeamLog.GroupAddMemberDetails - public init(swift: TeamLog.FileCopyDetails) { + public init(swift: TeamLog.GroupAddMemberDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible FileCopyType struct +/// Objective-C compatible GroupAddMemberType struct @objc -public class DBXTeamLogFileCopyType: NSObject { +public class DBXTeamLogGroupAddMemberType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.FileCopyType(description_: description_) + self.swift = TeamLog.GroupAddMemberType(description_: description_) } - let swift: TeamLog.FileCopyType + let swift: TeamLog.GroupAddMemberType - public init(swift: TeamLog.FileCopyType) { + public init(swift: TeamLog.GroupAddMemberType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Deleted file comment. +/// Changed external ID for group. @objc -public class DBXTeamLogFileDeleteCommentDetails: NSObject { - /// Comment text. +public class DBXTeamLogGroupChangeExternalIdDetails: NSObject { + /// Current external id. @objc - public var commentText: String? { swift.commentText } + public var newValue: String { swift.newValue } + /// Old external id. + @objc + public var previousValue: String { swift.previousValue } @objc - public init(commentText: String?) { - self.swift = TeamLog.FileDeleteCommentDetails(commentText: commentText) + public init(newValue: String, previousValue: String) { + self.swift = TeamLog.GroupChangeExternalIdDetails(newValue: newValue, previousValue: previousValue) } - let swift: TeamLog.FileDeleteCommentDetails + let swift: TeamLog.GroupChangeExternalIdDetails - public init(swift: TeamLog.FileDeleteCommentDetails) { + public init(swift: TeamLog.GroupChangeExternalIdDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible FileDeleteCommentType struct +/// Objective-C compatible GroupChangeExternalIdType struct @objc -public class DBXTeamLogFileDeleteCommentType: NSObject { +public class DBXTeamLogGroupChangeExternalIdType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.FileDeleteCommentType(description_: description_) + self.swift = TeamLog.GroupChangeExternalIdType(description_: description_) } - let swift: TeamLog.FileDeleteCommentType + let swift: TeamLog.GroupChangeExternalIdType - public init(swift: TeamLog.FileDeleteCommentType) { + public init(swift: TeamLog.GroupChangeExternalIdType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Deleted files and/or folders. +/// Changed group management type. @objc -public class DBXTeamLogFileDeleteDetails: NSObject { - let swift: TeamLog.FileDeleteDetails +public class DBXTeamLogGroupChangeManagementTypeDetails: NSObject { + /// New group management type. + @objc + public var newValue: DBXTeamCommonGroupManagementType { DBXTeamCommonGroupManagementType(swift: swift.newValue) } + /// Previous group management type. Might be missing due to historical data gap. + @objc + public var previousValue: DBXTeamCommonGroupManagementType? { guard let swift = swift.previousValue else { return nil }; return DBXTeamCommonGroupManagementType(swift: swift) } - public init(swift: TeamLog.FileDeleteDetails) { + @objc + public init(newValue: DBXTeamCommonGroupManagementType, previousValue: DBXTeamCommonGroupManagementType?) { + self.swift = TeamLog.GroupChangeManagementTypeDetails(newValue: newValue.swift, previousValue: previousValue?.swift) + } + + let swift: TeamLog.GroupChangeManagementTypeDetails + + public init(swift: TeamLog.GroupChangeManagementTypeDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible FileDeleteType struct +/// Objective-C compatible GroupChangeManagementTypeType struct @objc -public class DBXTeamLogFileDeleteType: NSObject { +public class DBXTeamLogGroupChangeManagementTypeType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.FileDeleteType(description_: description_) + self.swift = TeamLog.GroupChangeManagementTypeType(description_: description_) } - let swift: TeamLog.FileDeleteType + let swift: TeamLog.GroupChangeManagementTypeType - public init(swift: TeamLog.FileDeleteType) { + public init(swift: TeamLog.GroupChangeManagementTypeType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Downloaded files and/or folders. +/// Changed manager permissions of group member. @objc -public class DBXTeamLogFileDownloadDetails: NSObject { - let swift: TeamLog.FileDownloadDetails +public class DBXTeamLogGroupChangeMemberRoleDetails: NSObject { + /// Is group owner. + @objc + public var isGroupOwner: NSNumber { swift.isGroupOwner as NSNumber } - public init(swift: TeamLog.FileDownloadDetails) { + @objc + public init(isGroupOwner: NSNumber) { + self.swift = TeamLog.GroupChangeMemberRoleDetails(isGroupOwner: isGroupOwner.boolValue) + } + + let swift: TeamLog.GroupChangeMemberRoleDetails + + public init(swift: TeamLog.GroupChangeMemberRoleDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible FileDownloadType struct +/// Objective-C compatible GroupChangeMemberRoleType struct @objc -public class DBXTeamLogFileDownloadType: NSObject { +public class DBXTeamLogGroupChangeMemberRoleType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.FileDownloadType(description_: description_) + self.swift = TeamLog.GroupChangeMemberRoleType(description_: description_) } - let swift: TeamLog.FileDownloadType + let swift: TeamLog.GroupChangeMemberRoleType - public init(swift: TeamLog.FileDownloadType) { + public init(swift: TeamLog.GroupChangeMemberRoleType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Edited file comment. +/// Created group. @objc -public class DBXTeamLogFileEditCommentDetails: NSObject { - /// Comment text. +public class DBXTeamLogGroupCreateDetails: NSObject { + /// Is company managed group. @objc - public var commentText: String? { swift.commentText } - /// Previous comment text. + public var isCompanyManaged: NSNumber? { swift.isCompanyManaged as NSNumber? } + /// Group join policy. @objc - public var previousCommentText: String { swift.previousCommentText } + public var joinPolicy: DBXTeamLogGroupJoinPolicy? { guard let swift = swift.joinPolicy else { return nil }; return DBXTeamLogGroupJoinPolicy(swift: swift) } @objc - public init(previousCommentText: String, commentText: String?) { - self.swift = TeamLog.FileEditCommentDetails(previousCommentText: previousCommentText, commentText: commentText) + public init(isCompanyManaged: NSNumber?, joinPolicy: DBXTeamLogGroupJoinPolicy?) { + self.swift = TeamLog.GroupCreateDetails(isCompanyManaged: isCompanyManaged?.boolValue, joinPolicy: joinPolicy?.swift) } - let swift: TeamLog.FileEditCommentDetails + let swift: TeamLog.GroupCreateDetails - public init(swift: TeamLog.FileEditCommentDetails) { + public init(swift: TeamLog.GroupCreateDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible FileEditCommentType struct +/// Objective-C compatible GroupCreateType struct @objc -public class DBXTeamLogFileEditCommentType: NSObject { +public class DBXTeamLogGroupCreateType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.FileEditCommentType(description_: description_) + self.swift = TeamLog.GroupCreateType(description_: description_) } - let swift: TeamLog.FileEditCommentType + let swift: TeamLog.GroupCreateType - public init(swift: TeamLog.FileEditCommentType) { + public init(swift: TeamLog.GroupCreateType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Edited files. +/// Deleted group. @objc -public class DBXTeamLogFileEditDetails: NSObject { - let swift: TeamLog.FileEditDetails +public class DBXTeamLogGroupDeleteDetails: NSObject { + /// Is company managed group. + @objc + public var isCompanyManaged: NSNumber? { swift.isCompanyManaged as NSNumber? } - public init(swift: TeamLog.FileEditDetails) { + @objc + public init(isCompanyManaged: NSNumber?) { + self.swift = TeamLog.GroupDeleteDetails(isCompanyManaged: isCompanyManaged?.boolValue) + } + + let swift: TeamLog.GroupDeleteDetails + + public init(swift: TeamLog.GroupDeleteDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible FileEditType struct +/// Objective-C compatible GroupDeleteType struct @objc -public class DBXTeamLogFileEditType: NSObject { +public class DBXTeamLogGroupDeleteType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.FileEditType(description_: description_) + self.swift = TeamLog.GroupDeleteType(description_: description_) } - let swift: TeamLog.FileEditType + let swift: TeamLog.GroupDeleteType - public init(swift: TeamLog.FileEditType) { + public init(swift: TeamLog.GroupDeleteType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Created copy reference to file/folder. -@objc -public class DBXTeamLogFileGetCopyReferenceDetails: NSObject { - let swift: TeamLog.FileGetCopyReferenceDetails +/// Updated group. +@objc +public class DBXTeamLogGroupDescriptionUpdatedDetails: NSObject { - public init(swift: TeamLog.FileGetCopyReferenceDetails) { + let swift: TeamLog.GroupDescriptionUpdatedDetails + + public init(swift: TeamLog.GroupDescriptionUpdatedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible FileGetCopyReferenceType struct +/// Objective-C compatible GroupDescriptionUpdatedType struct @objc -public class DBXTeamLogFileGetCopyReferenceType: NSObject { +public class DBXTeamLogGroupDescriptionUpdatedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.FileGetCopyReferenceType(description_: description_) + self.swift = TeamLog.GroupDescriptionUpdatedType(description_: description_) } - let swift: TeamLog.FileGetCopyReferenceType + let swift: TeamLog.GroupDescriptionUpdatedType - public init(swift: TeamLog.FileGetCopyReferenceType) { + public init(swift: TeamLog.GroupDescriptionUpdatedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Liked file comment. +/// Changed group's external sharing setting. @objc -public class DBXTeamLogFileLikeCommentDetails: NSObject { - /// Comment text. +public class DBXTeamLogGroupExternalSharingSettingOverrideChangedDetails: NSObject { + /// New external sharing setting. @objc - public var commentText: String? { swift.commentText } + public var newValue: DBXTeamLogExternalSharingSetting { DBXTeamLogExternalSharingSetting(swift: swift.newValue) } + /// Previous external sharing setting. + @objc + public var previousValue: DBXTeamLogExternalSharingSetting { DBXTeamLogExternalSharingSetting(swift: swift.previousValue) } @objc - public init(commentText: String?) { - self.swift = TeamLog.FileLikeCommentDetails(commentText: commentText) + public init(newValue: DBXTeamLogExternalSharingSetting, previousValue: DBXTeamLogExternalSharingSetting) { + self.swift = TeamLog.GroupExternalSharingSettingOverrideChangedDetails(newValue: newValue.swift, previousValue: previousValue.swift) } - let swift: TeamLog.FileLikeCommentDetails + let swift: TeamLog.GroupExternalSharingSettingOverrideChangedDetails - public init(swift: TeamLog.FileLikeCommentDetails) { + public init(swift: TeamLog.GroupExternalSharingSettingOverrideChangedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible FileLikeCommentType struct +/// Objective-C compatible GroupExternalSharingSettingOverrideChangedType struct @objc -public class DBXTeamLogFileLikeCommentType: NSObject { +public class DBXTeamLogGroupExternalSharingSettingOverrideChangedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.FileLikeCommentType(description_: description_) + self.swift = TeamLog.GroupExternalSharingSettingOverrideChangedType(description_: description_) } - let swift: TeamLog.FileLikeCommentType + let swift: TeamLog.GroupExternalSharingSettingOverrideChangedType - public init(swift: TeamLog.FileLikeCommentType) { + public init(swift: TeamLog.GroupExternalSharingSettingOverrideChangedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Locked/unlocked editing for a file. +/// Objective-C compatible GroupJoinPolicy union @objc -public class DBXTeamLogFileLockingLockStatusChangedDetails: NSObject { - /// Previous lock status of the file. - @objc - public var previousValue: DBXTeamLogLockStatus { DBXTeamLogLockStatus(swift: swift.previousValue) } - /// New lock status of the file. - @objc - public var newValue: DBXTeamLogLockStatus { DBXTeamLogLockStatus(swift: swift.newValue) } +public class DBXTeamLogGroupJoinPolicy: NSObject { + let swift: TeamLog.GroupJoinPolicy - @objc - public init(previousValue: DBXTeamLogLockStatus, newValue: DBXTeamLogLockStatus) { - self.swift = TeamLog.FileLockingLockStatusChangedDetails(previousValue: previousValue.swift, newValue: newValue.swift) + public init(swift: TeamLog.GroupJoinPolicy) { + self.swift = swift } - let swift: TeamLog.FileLockingLockStatusChangedDetails - - public init(swift: TeamLog.FileLockingLockStatusChangedDetails) { - self.swift = swift + public static func factory(swift: TeamLog.GroupJoinPolicy) -> DBXTeamLogGroupJoinPolicy { + switch swift { + case .open: + return DBXTeamLogGroupJoinPolicyOpen() + case .requestToJoin: + return DBXTeamLogGroupJoinPolicyRequestToJoin() + case .other: + return DBXTeamLogGroupJoinPolicyOther() + } } @objc public override var description: String { swift.description } -} -/// Objective-C compatible FileLockingLockStatusChangedType struct -@objc -public class DBXTeamLogFileLockingLockStatusChangedType: NSObject { - /// (no description) @objc - public var description_: String { swift.description_ } + public var asOpen: DBXTeamLogGroupJoinPolicyOpen? { + return self as? DBXTeamLogGroupJoinPolicyOpen + } @objc - public init(description_: String) { - self.swift = TeamLog.FileLockingLockStatusChangedType(description_: description_) + public var asRequestToJoin: DBXTeamLogGroupJoinPolicyRequestToJoin? { + return self as? DBXTeamLogGroupJoinPolicyRequestToJoin } - let swift: TeamLog.FileLockingLockStatusChangedType + @objc + public var asOther: DBXTeamLogGroupJoinPolicyOther? { + return self as? DBXTeamLogGroupJoinPolicyOther + } +} - public init(swift: TeamLog.FileLockingLockStatusChangedType) { - self.swift = swift +/// An unspecified error. +@objc +public class DBXTeamLogGroupJoinPolicyOpen: DBXTeamLogGroupJoinPolicy { + @objc + public init() { + let swift = TeamLog.GroupJoinPolicy.open + super.init(swift: swift) } +} +/// An unspecified error. +@objc +public class DBXTeamLogGroupJoinPolicyRequestToJoin: DBXTeamLogGroupJoinPolicy { @objc - public override var description: String { swift.description } + public init() { + let swift = TeamLog.GroupJoinPolicy.requestToJoin + super.init(swift: swift) + } } -/// Changed file locking policy for team. +/// An unspecified error. @objc -public class DBXTeamLogFileLockingPolicyChangedDetails: NSObject { - /// New file locking policy. +public class DBXTeamLogGroupJoinPolicyOther: DBXTeamLogGroupJoinPolicy { @objc - public var newValue: DBXTeamPoliciesFileLockingPolicyState { DBXTeamPoliciesFileLockingPolicyState(swift: swift.newValue) } - /// Previous file locking policy. + public init() { + let swift = TeamLog.GroupJoinPolicy.other + super.init(swift: swift) + } +} + +/// Updated group join policy. +@objc +public class DBXTeamLogGroupJoinPolicyUpdatedDetails: NSObject { + /// Is company managed group. @objc - public var previousValue: DBXTeamPoliciesFileLockingPolicyState { DBXTeamPoliciesFileLockingPolicyState(swift: swift.previousValue) } + public var isCompanyManaged: NSNumber? { swift.isCompanyManaged as NSNumber? } + /// Group join policy. + @objc + public var joinPolicy: DBXTeamLogGroupJoinPolicy? { guard let swift = swift.joinPolicy else { return nil }; return DBXTeamLogGroupJoinPolicy(swift: swift) } @objc - public init(newValue: DBXTeamPoliciesFileLockingPolicyState, previousValue: DBXTeamPoliciesFileLockingPolicyState) { - self.swift = TeamLog.FileLockingPolicyChangedDetails(newValue: newValue.swift, previousValue: previousValue.swift) + public init(isCompanyManaged: NSNumber?, joinPolicy: DBXTeamLogGroupJoinPolicy?) { + self.swift = TeamLog.GroupJoinPolicyUpdatedDetails(isCompanyManaged: isCompanyManaged?.boolValue, joinPolicy: joinPolicy?.swift) } - let swift: TeamLog.FileLockingPolicyChangedDetails + let swift: TeamLog.GroupJoinPolicyUpdatedDetails - public init(swift: TeamLog.FileLockingPolicyChangedDetails) { + public init(swift: TeamLog.GroupJoinPolicyUpdatedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible FileLockingPolicyChangedType struct +/// Objective-C compatible GroupJoinPolicyUpdatedType struct @objc -public class DBXTeamLogFileLockingPolicyChangedType: NSObject { +public class DBXTeamLogGroupJoinPolicyUpdatedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.FileLockingPolicyChangedType(description_: description_) + self.swift = TeamLog.GroupJoinPolicyUpdatedType(description_: description_) } - let swift: TeamLog.FileLockingPolicyChangedType + let swift: TeamLog.GroupJoinPolicyUpdatedType - public init(swift: TeamLog.FileLockingPolicyChangedType) { + public init(swift: TeamLog.GroupJoinPolicyUpdatedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Generic information relevant both for files and folders +/// Group's logged information. @objc -public class DBXTeamLogFileOrFolderLogInfo: NSObject { - /// Path relative to event context. - @objc - public var path: DBXTeamLogPathLogInfo { DBXTeamLogPathLogInfo(swift: swift.path) } - /// Display name. +public class DBXTeamLogGroupLogInfo: NSObject { + /// The unique id of this group. @objc - public var displayName: String? { swift.displayName } - /// Unique ID. + public var groupId: String? { swift.groupId } + /// The name of this group. @objc - public var fileId: String? { swift.fileId } - /// File or folder size in bytes. + public var displayName: String { swift.displayName } + /// External group ID. @objc - public var fileSize: NSNumber? { swift.fileSize as NSNumber? } + public var externalId: String? { swift.externalId } @objc - public init(path: DBXTeamLogPathLogInfo, displayName: String?, fileId: String?, fileSize: NSNumber?) { - self.swift = TeamLog.FileOrFolderLogInfo(path: path.swift, displayName: displayName, fileId: fileId, fileSize: fileSize?.uint64Value) + public init(displayName: String, groupId: String?, externalId: String?) { + self.swift = TeamLog.GroupLogInfo(displayName: displayName, groupId: groupId, externalId: externalId) } - let swift: TeamLog.FileOrFolderLogInfo + let swift: TeamLog.GroupLogInfo - public init(swift: TeamLog.FileOrFolderLogInfo) { + public init(swift: TeamLog.GroupLogInfo) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// File's logged information. +/// Moved group. @objc -public class DBXTeamLogFileLogInfo: DBXTeamLogFileOrFolderLogInfo { - let subSwift: TeamLog.FileLogInfo +public class DBXTeamLogGroupMovedDetails: NSObject { - public init(swift: TeamLog.FileLogInfo) { - self.subSwift = swift - super.init(swift: swift) + let swift: TeamLog.GroupMovedDetails + + public init(swift: TeamLog.GroupMovedDetails) { + self.swift = swift } + @objc - public override var description: String { subSwift.description } + public override var description: String { swift.description } } -/// Moved files and/or folders. +/// Objective-C compatible GroupMovedType struct @objc -public class DBXTeamLogFileMoveDetails: NSObject { - /// Relocate action details. +public class DBXTeamLogGroupMovedType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + @objc - public var relocateActionDetails: [DBXTeamLogRelocateAssetReferencesLogInfo] { - swift.relocateActionDetails.map { DBXTeamLogRelocateAssetReferencesLogInfo(swift: $0) } + public init(description_: String) { + self.swift = TeamLog.GroupMovedType(description_: description_) } + let swift: TeamLog.GroupMovedType + + public init(swift: TeamLog.GroupMovedType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Removed external ID for group. +@objc +public class DBXTeamLogGroupRemoveExternalIdDetails: NSObject { + /// Old external id. + @objc + public var previousValue: String { swift.previousValue } + @objc - public init(relocateActionDetails: [DBXTeamLogRelocateAssetReferencesLogInfo]) { - self.swift = TeamLog.FileMoveDetails(relocateActionDetails: relocateActionDetails.map(\.swift)) + public init(previousValue: String) { + self.swift = TeamLog.GroupRemoveExternalIdDetails(previousValue: previousValue) } - let swift: TeamLog.FileMoveDetails + let swift: TeamLog.GroupRemoveExternalIdDetails - public init(swift: TeamLog.FileMoveDetails) { + public init(swift: TeamLog.GroupRemoveExternalIdDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible FileMoveType struct +/// Objective-C compatible GroupRemoveExternalIdType struct @objc -public class DBXTeamLogFileMoveType: NSObject { +public class DBXTeamLogGroupRemoveExternalIdType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.FileMoveType(description_: description_) + self.swift = TeamLog.GroupRemoveExternalIdType(description_: description_) } - let swift: TeamLog.FileMoveType + let swift: TeamLog.GroupRemoveExternalIdType - public init(swift: TeamLog.FileMoveType) { + public init(swift: TeamLog.GroupRemoveExternalIdType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Permanently deleted files and/or folders. +/// Removed team members from group. @objc -public class DBXTeamLogFilePermanentlyDeleteDetails: NSObject { - let swift: TeamLog.FilePermanentlyDeleteDetails +public class DBXTeamLogGroupRemoveMemberDetails: NSObject { - public init(swift: TeamLog.FilePermanentlyDeleteDetails) { + let swift: TeamLog.GroupRemoveMemberDetails + + public init(swift: TeamLog.GroupRemoveMemberDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible FilePermanentlyDeleteType struct +/// Objective-C compatible GroupRemoveMemberType struct @objc -public class DBXTeamLogFilePermanentlyDeleteType: NSObject { +public class DBXTeamLogGroupRemoveMemberType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.FilePermanentlyDeleteType(description_: description_) + self.swift = TeamLog.GroupRemoveMemberType(description_: description_) } - let swift: TeamLog.FilePermanentlyDeleteType + let swift: TeamLog.GroupRemoveMemberType - public init(swift: TeamLog.FilePermanentlyDeleteType) { + public init(swift: TeamLog.GroupRemoveMemberType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Previewed files and/or folders. +/// Renamed group. @objc -public class DBXTeamLogFilePreviewDetails: NSObject { - let swift: TeamLog.FilePreviewDetails +public class DBXTeamLogGroupRenameDetails: NSObject { + /// Previous display name. + @objc + public var previousValue: String { swift.previousValue } + /// New display name. + @objc + public var newValue: String { swift.newValue } - public init(swift: TeamLog.FilePreviewDetails) { + @objc + public init(previousValue: String, newValue: String) { + self.swift = TeamLog.GroupRenameDetails(previousValue: previousValue, newValue: newValue) + } + + let swift: TeamLog.GroupRenameDetails + + public init(swift: TeamLog.GroupRenameDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible FilePreviewType struct +/// Objective-C compatible GroupRenameType struct @objc -public class DBXTeamLogFilePreviewType: NSObject { +public class DBXTeamLogGroupRenameType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.FilePreviewType(description_: description_) + self.swift = TeamLog.GroupRenameType(description_: description_) } - let swift: TeamLog.FilePreviewType + let swift: TeamLog.GroupRenameType - public init(swift: TeamLog.FilePreviewType) { + public init(swift: TeamLog.GroupRenameType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Changed File Provider Migration policy for team. +/// Changed who can create groups. @objc -public class DBXTeamLogFileProviderMigrationPolicyChangedDetails: NSObject { - /// To. +public class DBXTeamLogGroupUserManagementChangePolicyDetails: NSObject { + /// New group users management policy. @objc - public var newValue: DBXTeamPoliciesFileProviderMigrationPolicyState { DBXTeamPoliciesFileProviderMigrationPolicyState(swift: swift.newValue) } - /// From. + public var newValue: DBXTeamPoliciesGroupCreation { DBXTeamPoliciesGroupCreation(swift: swift.newValue) } + /// Previous group users management policy. Might be missing due to historical data gap. @objc - public var previousValue: DBXTeamPoliciesFileProviderMigrationPolicyState { DBXTeamPoliciesFileProviderMigrationPolicyState(swift: swift.previousValue) } + public var previousValue: DBXTeamPoliciesGroupCreation? { guard let swift = swift.previousValue else { return nil }; return DBXTeamPoliciesGroupCreation(swift: swift) } @objc - public init(newValue: DBXTeamPoliciesFileProviderMigrationPolicyState, previousValue: DBXTeamPoliciesFileProviderMigrationPolicyState) { - self.swift = TeamLog.FileProviderMigrationPolicyChangedDetails(newValue: newValue.swift, previousValue: previousValue.swift) + public init(newValue: DBXTeamPoliciesGroupCreation, previousValue: DBXTeamPoliciesGroupCreation?) { + self.swift = TeamLog.GroupUserManagementChangePolicyDetails(newValue: newValue.swift, previousValue: previousValue?.swift) } - let swift: TeamLog.FileProviderMigrationPolicyChangedDetails + let swift: TeamLog.GroupUserManagementChangePolicyDetails - public init(swift: TeamLog.FileProviderMigrationPolicyChangedDetails) { + public init(swift: TeamLog.GroupUserManagementChangePolicyDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible FileProviderMigrationPolicyChangedType struct +/// Objective-C compatible GroupUserManagementChangePolicyType struct @objc -public class DBXTeamLogFileProviderMigrationPolicyChangedType: NSObject { +public class DBXTeamLogGroupUserManagementChangePolicyType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.FileProviderMigrationPolicyChangedType(description_: description_) + self.swift = TeamLog.GroupUserManagementChangePolicyType(description_: description_) } - let swift: TeamLog.FileProviderMigrationPolicyChangedType + let swift: TeamLog.GroupUserManagementChangePolicyType - public init(swift: TeamLog.FileProviderMigrationPolicyChangedType) { + public init(swift: TeamLog.GroupUserManagementChangePolicyType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Renamed files and/or folders. +/// Changed guest team admin status. @objc -public class DBXTeamLogFileRenameDetails: NSObject { - /// Relocate action details. +public class DBXTeamLogGuestAdminChangeStatusDetails: NSObject { + /// True for guest, false for host. @objc - public var relocateActionDetails: [DBXTeamLogRelocateAssetReferencesLogInfo] { - swift.relocateActionDetails.map { DBXTeamLogRelocateAssetReferencesLogInfo(swift: $0) } - } + public var isGuest: NSNumber { swift.isGuest as NSNumber } + /// The name of the guest team. + @objc + public var guestTeamName: String? { swift.guestTeamName } + /// The name of the host team. + @objc + public var hostTeamName: String? { swift.hostTeamName } + /// Previous request state. + @objc + public var previousValue: DBXTeamLogTrustedTeamsRequestState { DBXTeamLogTrustedTeamsRequestState(swift: swift.previousValue) } + /// New request state. + @objc + public var newValue: DBXTeamLogTrustedTeamsRequestState { DBXTeamLogTrustedTeamsRequestState(swift: swift.newValue) } + /// Action details. + @objc + public var actionDetails: DBXTeamLogTrustedTeamsRequestAction { DBXTeamLogTrustedTeamsRequestAction(swift: swift.actionDetails) } @objc - public init(relocateActionDetails: [DBXTeamLogRelocateAssetReferencesLogInfo]) { - self.swift = TeamLog.FileRenameDetails(relocateActionDetails: relocateActionDetails.map(\.swift)) + public init(isGuest: NSNumber, previousValue: DBXTeamLogTrustedTeamsRequestState, newValue: DBXTeamLogTrustedTeamsRequestState, actionDetails: DBXTeamLogTrustedTeamsRequestAction, guestTeamName: String?, hostTeamName: String?) { + self.swift = TeamLog.GuestAdminChangeStatusDetails(isGuest: isGuest.boolValue, previousValue: previousValue.swift, newValue: newValue.swift, actionDetails: actionDetails.swift, guestTeamName: guestTeamName, hostTeamName: hostTeamName) } - let swift: TeamLog.FileRenameDetails + let swift: TeamLog.GuestAdminChangeStatusDetails - public init(swift: TeamLog.FileRenameDetails) { + public init(swift: TeamLog.GuestAdminChangeStatusDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible FileRenameType struct +/// Objective-C compatible GuestAdminChangeStatusType struct @objc -public class DBXTeamLogFileRenameType: NSObject { +public class DBXTeamLogGuestAdminChangeStatusType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.FileRenameType(description_: description_) + self.swift = TeamLog.GuestAdminChangeStatusType(description_: description_) } - let swift: TeamLog.FileRenameType + let swift: TeamLog.GuestAdminChangeStatusType - public init(swift: TeamLog.FileRenameType) { + public init(swift: TeamLog.GuestAdminChangeStatusType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Changed file request. +/// Started trusted team admin session. @objc -public class DBXTeamLogFileRequestChangeDetails: NSObject { - /// File request id. Might be missing due to historical data gap. - @objc - public var fileRequestId: String? { swift.fileRequestId } - /// Previous file request details. Might be missing due to historical data gap. +public class DBXTeamLogGuestAdminSignedInViaTrustedTeamsDetails: NSObject { + /// Host team name. @objc - public var previousDetails: DBXTeamLogFileRequestDetails? { guard let swift = swift.previousDetails else { return nil } - return DBXTeamLogFileRequestDetails(swift: swift) - } - - /// New file request details. + public var teamName: String? { swift.teamName } + /// Trusted team name. @objc - public var newDetails: DBXTeamLogFileRequestDetails { DBXTeamLogFileRequestDetails(swift: swift.newDetails) } + public var trustedTeamName: String? { swift.trustedTeamName } @objc - public init(newDetails: DBXTeamLogFileRequestDetails, fileRequestId: String?, previousDetails: DBXTeamLogFileRequestDetails?) { - self.swift = TeamLog.FileRequestChangeDetails(newDetails: newDetails.swift, fileRequestId: fileRequestId, previousDetails: previousDetails?.swift) + public init(teamName: String?, trustedTeamName: String?) { + self.swift = TeamLog.GuestAdminSignedInViaTrustedTeamsDetails(teamName: teamName, trustedTeamName: trustedTeamName) } - let swift: TeamLog.FileRequestChangeDetails + let swift: TeamLog.GuestAdminSignedInViaTrustedTeamsDetails - public init(swift: TeamLog.FileRequestChangeDetails) { + public init(swift: TeamLog.GuestAdminSignedInViaTrustedTeamsDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible FileRequestChangeType struct +/// Objective-C compatible GuestAdminSignedInViaTrustedTeamsType struct @objc -public class DBXTeamLogFileRequestChangeType: NSObject { +public class DBXTeamLogGuestAdminSignedInViaTrustedTeamsType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.FileRequestChangeType(description_: description_) + self.swift = TeamLog.GuestAdminSignedInViaTrustedTeamsType(description_: description_) } - let swift: TeamLog.FileRequestChangeType + let swift: TeamLog.GuestAdminSignedInViaTrustedTeamsType - public init(swift: TeamLog.FileRequestChangeType) { + public init(swift: TeamLog.GuestAdminSignedInViaTrustedTeamsType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Closed file request. +/// Ended trusted team admin session. @objc -public class DBXTeamLogFileRequestCloseDetails: NSObject { - /// File request id. Might be missing due to historical data gap. +public class DBXTeamLogGuestAdminSignedOutViaTrustedTeamsDetails: NSObject { + /// Host team name. @objc - public var fileRequestId: String? { swift.fileRequestId } - /// Previous file request details. Might be missing due to historical data gap. + public var teamName: String? { swift.teamName } + /// Trusted team name. @objc - public var previousDetails: DBXTeamLogFileRequestDetails? { guard let swift = swift.previousDetails else { return nil } - return DBXTeamLogFileRequestDetails(swift: swift) - } + public var trustedTeamName: String? { swift.trustedTeamName } @objc - public init(fileRequestId: String?, previousDetails: DBXTeamLogFileRequestDetails?) { - self.swift = TeamLog.FileRequestCloseDetails(fileRequestId: fileRequestId, previousDetails: previousDetails?.swift) + public init(teamName: String?, trustedTeamName: String?) { + self.swift = TeamLog.GuestAdminSignedOutViaTrustedTeamsDetails(teamName: teamName, trustedTeamName: trustedTeamName) } - let swift: TeamLog.FileRequestCloseDetails + let swift: TeamLog.GuestAdminSignedOutViaTrustedTeamsDetails - public init(swift: TeamLog.FileRequestCloseDetails) { + public init(swift: TeamLog.GuestAdminSignedOutViaTrustedTeamsDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible FileRequestCloseType struct +/// Objective-C compatible GuestAdminSignedOutViaTrustedTeamsType struct @objc -public class DBXTeamLogFileRequestCloseType: NSObject { +public class DBXTeamLogGuestAdminSignedOutViaTrustedTeamsType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.FileRequestCloseType(description_: description_) + self.swift = TeamLog.GuestAdminSignedOutViaTrustedTeamsType(description_: description_) } - let swift: TeamLog.FileRequestCloseType + let swift: TeamLog.GuestAdminSignedOutViaTrustedTeamsType - public init(swift: TeamLog.FileRequestCloseType) { + public init(swift: TeamLog.GuestAdminSignedOutViaTrustedTeamsType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Created file request. +/// Objective-C compatible IdentifierType union @objc -public class DBXTeamLogFileRequestCreateDetails: NSObject { - /// File request id. Might be missing due to historical data gap. +public class DBXTeamLogIdentifierType: NSObject { + let swift: TeamLog.IdentifierType + + public init(swift: TeamLog.IdentifierType) { + self.swift = swift + } + + public static func factory(swift: TeamLog.IdentifierType) -> DBXTeamLogIdentifierType { + switch swift { + case .email: + return DBXTeamLogIdentifierTypeEmail() + case .facebookProfileName: + return DBXTeamLogIdentifierTypeFacebookProfileName() + case .other: + return DBXTeamLogIdentifierTypeOther() + } + } + @objc - public var fileRequestId: String? { swift.fileRequestId } - /// File request details. Might be missing due to historical data gap. + public override var description: String { swift.description } + @objc - public var requestDetails: DBXTeamLogFileRequestDetails? { guard let swift = swift.requestDetails else { return nil } - return DBXTeamLogFileRequestDetails(swift: swift) + public var asEmail: DBXTeamLogIdentifierTypeEmail? { + return self as? DBXTeamLogIdentifierTypeEmail } @objc - public init(fileRequestId: String?, requestDetails: DBXTeamLogFileRequestDetails?) { - self.swift = TeamLog.FileRequestCreateDetails(fileRequestId: fileRequestId, requestDetails: requestDetails?.swift) + public var asFacebookProfileName: DBXTeamLogIdentifierTypeFacebookProfileName? { + return self as? DBXTeamLogIdentifierTypeFacebookProfileName } - let swift: TeamLog.FileRequestCreateDetails + @objc + public var asOther: DBXTeamLogIdentifierTypeOther? { + return self as? DBXTeamLogIdentifierTypeOther + } +} - public init(swift: TeamLog.FileRequestCreateDetails) { - self.swift = swift +/// An unspecified error. +@objc +public class DBXTeamLogIdentifierTypeEmail: DBXTeamLogIdentifierType { + @objc + public init() { + let swift = TeamLog.IdentifierType.email + super.init(swift: swift) } +} +/// An unspecified error. +@objc +public class DBXTeamLogIdentifierTypeFacebookProfileName: DBXTeamLogIdentifierType { @objc - public override var description: String { swift.description } + public init() { + let swift = TeamLog.IdentifierType.facebookProfileName + super.init(swift: swift) + } } -/// Objective-C compatible FileRequestCreateType struct +/// An unspecified error. @objc -public class DBXTeamLogFileRequestCreateType: NSObject { - /// (no description) +public class DBXTeamLogIdentifierTypeOther: DBXTeamLogIdentifierType { @objc - public var description_: String { swift.description_ } + public init() { + let swift = TeamLog.IdentifierType.other + super.init(swift: swift) + } +} +/// Connected integration for member. +@objc +public class DBXTeamLogIntegrationConnectedDetails: NSObject { + /// Name of the third-party integration. @objc - public init(description_: String) { - self.swift = TeamLog.FileRequestCreateType(description_: description_) + public var integrationName: String { swift.integrationName } + + @objc + public init(integrationName: String) { + self.swift = TeamLog.IntegrationConnectedDetails(integrationName: integrationName) } - let swift: TeamLog.FileRequestCreateType + let swift: TeamLog.IntegrationConnectedDetails - public init(swift: TeamLog.FileRequestCreateType) { + public init(swift: TeamLog.IntegrationConnectedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// File request deadline +/// Objective-C compatible IntegrationConnectedType struct @objc -public class DBXTeamLogFileRequestDeadline: NSObject { - /// The deadline for this file request. Might be missing due to historical data gap. - @objc - public var deadline: Date? { swift.deadline } - /// If set, allow uploads after the deadline has passed. +public class DBXTeamLogIntegrationConnectedType: NSObject { + /// (no description) @objc - public var allowLateUploads: String? { swift.allowLateUploads } + public var description_: String { swift.description_ } @objc - public init(deadline: Date?, allowLateUploads: String?) { - self.swift = TeamLog.FileRequestDeadline(deadline: deadline, allowLateUploads: allowLateUploads) + public init(description_: String) { + self.swift = TeamLog.IntegrationConnectedType(description_: description_) } - let swift: TeamLog.FileRequestDeadline + let swift: TeamLog.IntegrationConnectedType - public init(swift: TeamLog.FileRequestDeadline) { + public init(swift: TeamLog.IntegrationConnectedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Delete file request. +/// Disconnected integration for member. @objc -public class DBXTeamLogFileRequestDeleteDetails: NSObject { - /// File request id. Might be missing due to historical data gap. - @objc - public var fileRequestId: String? { swift.fileRequestId } - /// Previous file request details. Might be missing due to historical data gap. +public class DBXTeamLogIntegrationDisconnectedDetails: NSObject { + /// Name of the third-party integration. @objc - public var previousDetails: DBXTeamLogFileRequestDetails? { guard let swift = swift.previousDetails else { return nil } - return DBXTeamLogFileRequestDetails(swift: swift) - } + public var integrationName: String { swift.integrationName } @objc - public init(fileRequestId: String?, previousDetails: DBXTeamLogFileRequestDetails?) { - self.swift = TeamLog.FileRequestDeleteDetails(fileRequestId: fileRequestId, previousDetails: previousDetails?.swift) + public init(integrationName: String) { + self.swift = TeamLog.IntegrationDisconnectedDetails(integrationName: integrationName) } - let swift: TeamLog.FileRequestDeleteDetails + let swift: TeamLog.IntegrationDisconnectedDetails - public init(swift: TeamLog.FileRequestDeleteDetails) { + public init(swift: TeamLog.IntegrationDisconnectedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible FileRequestDeleteType struct +/// Objective-C compatible IntegrationDisconnectedType struct @objc -public class DBXTeamLogFileRequestDeleteType: NSObject { +public class DBXTeamLogIntegrationDisconnectedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.FileRequestDeleteType(description_: description_) + self.swift = TeamLog.IntegrationDisconnectedType(description_: description_) } - let swift: TeamLog.FileRequestDeleteType + let swift: TeamLog.IntegrationDisconnectedType - public init(swift: TeamLog.FileRequestDeleteType) { + public init(swift: TeamLog.IntegrationDisconnectedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// File request details +/// Policy for controlling whether a service integration is enabled for the team. @objc -public class DBXTeamLogFileRequestDetails: NSObject { - /// Asset position in the Assets list. +public class DBXTeamLogIntegrationPolicy: NSObject { + let swift: TeamLog.IntegrationPolicy + + public init(swift: TeamLog.IntegrationPolicy) { + self.swift = swift + } + + public static func factory(swift: TeamLog.IntegrationPolicy) -> DBXTeamLogIntegrationPolicy { + switch swift { + case .disabled: + return DBXTeamLogIntegrationPolicyDisabled() + case .enabled: + return DBXTeamLogIntegrationPolicyEnabled() + case .other: + return DBXTeamLogIntegrationPolicyOther() + } + } + @objc - public var assetIndex: NSNumber { swift.assetIndex as NSNumber } - /// File request deadline. + public override var description: String { swift.description } + @objc - public var deadline: DBXTeamLogFileRequestDeadline? { guard let swift = swift.deadline else { return nil } - return DBXTeamLogFileRequestDeadline(swift: swift) + public var asDisabled: DBXTeamLogIntegrationPolicyDisabled? { + return self as? DBXTeamLogIntegrationPolicyDisabled } @objc - public init(assetIndex: NSNumber, deadline: DBXTeamLogFileRequestDeadline?) { - self.swift = TeamLog.FileRequestDetails(assetIndex: assetIndex.uint64Value, deadline: deadline?.swift) + public var asEnabled: DBXTeamLogIntegrationPolicyEnabled? { + return self as? DBXTeamLogIntegrationPolicyEnabled } - let swift: TeamLog.FileRequestDetails - - public init(swift: TeamLog.FileRequestDetails) { - self.swift = swift + @objc + public var asOther: DBXTeamLogIntegrationPolicyOther? { + return self as? DBXTeamLogIntegrationPolicyOther } +} +/// An unspecified error. +@objc +public class DBXTeamLogIntegrationPolicyDisabled: DBXTeamLogIntegrationPolicy { @objc - public override var description: String { swift.description } + public init() { + let swift = TeamLog.IntegrationPolicy.disabled + super.init(swift: swift) + } } -/// Received files for file request. +/// An unspecified error. @objc -public class DBXTeamLogFileRequestReceiveFileDetails: NSObject { - /// File request id. Might be missing due to historical data gap. +public class DBXTeamLogIntegrationPolicyEnabled: DBXTeamLogIntegrationPolicy { @objc - public var fileRequestId: String? { swift.fileRequestId } - /// File request details. Might be missing due to historical data gap. + public init() { + let swift = TeamLog.IntegrationPolicy.enabled + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogIntegrationPolicyOther: DBXTeamLogIntegrationPolicy { @objc - public var fileRequestDetails: DBXTeamLogFileRequestDetails? { guard let swift = swift.fileRequestDetails else { return nil } - return DBXTeamLogFileRequestDetails(swift: swift) + public init() { + let swift = TeamLog.IntegrationPolicy.other + super.init(swift: swift) } +} - /// Submitted file names. +/// Changed integration policy for team. +@objc +public class DBXTeamLogIntegrationPolicyChangedDetails: NSObject { + /// Name of the third-party integration. @objc - public var submittedFileNames: [String] { swift.submittedFileNames } - /// The name as provided by the submitter. + public var integrationName: String { swift.integrationName } + /// New integration policy. @objc - public var submitterName: String? { swift.submitterName } - /// The email as provided by the submitter. + public var newValue: DBXTeamLogIntegrationPolicy { DBXTeamLogIntegrationPolicy(swift: swift.newValue) } + /// Previous integration policy. @objc - public var submitterEmail: String? { swift.submitterEmail } + public var previousValue: DBXTeamLogIntegrationPolicy { DBXTeamLogIntegrationPolicy(swift: swift.previousValue) } @objc - public init( - submittedFileNames: [String], - fileRequestId: String?, - fileRequestDetails: DBXTeamLogFileRequestDetails?, - submitterName: String?, - submitterEmail: String? - ) { - self.swift = TeamLog.FileRequestReceiveFileDetails( - submittedFileNames: submittedFileNames, - fileRequestId: fileRequestId, - fileRequestDetails: fileRequestDetails?.swift, - submitterName: submitterName, - submitterEmail: submitterEmail - ) + public init(integrationName: String, newValue: DBXTeamLogIntegrationPolicy, previousValue: DBXTeamLogIntegrationPolicy) { + self.swift = TeamLog.IntegrationPolicyChangedDetails(integrationName: integrationName, newValue: newValue.swift, previousValue: previousValue.swift) } - let swift: TeamLog.FileRequestReceiveFileDetails + let swift: TeamLog.IntegrationPolicyChangedDetails - public init(swift: TeamLog.FileRequestReceiveFileDetails) { + public init(swift: TeamLog.IntegrationPolicyChangedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible FileRequestReceiveFileType struct +/// Objective-C compatible IntegrationPolicyChangedType struct @objc -public class DBXTeamLogFileRequestReceiveFileType: NSObject { +public class DBXTeamLogIntegrationPolicyChangedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.FileRequestReceiveFileType(description_: description_) + self.swift = TeamLog.IntegrationPolicyChangedType(description_: description_) } - let swift: TeamLog.FileRequestReceiveFileType + let swift: TeamLog.IntegrationPolicyChangedType - public init(swift: TeamLog.FileRequestReceiveFileType) { + public init(swift: TeamLog.IntegrationPolicyChangedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Enabled/disabled file requests. +/// Policy for deciding whether team admins receive email when an invitation to join the team is accepted @objc -public class DBXTeamLogFileRequestsChangePolicyDetails: NSObject { - /// New file requests policy. +public class DBXTeamLogInviteAcceptanceEmailPolicy: NSObject { + let swift: TeamLog.InviteAcceptanceEmailPolicy + + public init(swift: TeamLog.InviteAcceptanceEmailPolicy) { + self.swift = swift + } + + public static func factory(swift: TeamLog.InviteAcceptanceEmailPolicy) -> DBXTeamLogInviteAcceptanceEmailPolicy { + switch swift { + case .disabled: + return DBXTeamLogInviteAcceptanceEmailPolicyDisabled() + case .enabled: + return DBXTeamLogInviteAcceptanceEmailPolicyEnabled() + case .other: + return DBXTeamLogInviteAcceptanceEmailPolicyOther() + } + } + @objc - public var newValue: DBXTeamLogFileRequestsPolicy { DBXTeamLogFileRequestsPolicy(swift: swift.newValue) } - /// Previous file requests policy. Might be missing due to historical data gap. + public override var description: String { swift.description } + + @objc + public var asDisabled: DBXTeamLogInviteAcceptanceEmailPolicyDisabled? { + return self as? DBXTeamLogInviteAcceptanceEmailPolicyDisabled + } + @objc - public var previousValue: DBXTeamLogFileRequestsPolicy? { guard let swift = swift.previousValue else { return nil } - return DBXTeamLogFileRequestsPolicy(swift: swift) + public var asEnabled: DBXTeamLogInviteAcceptanceEmailPolicyEnabled? { + return self as? DBXTeamLogInviteAcceptanceEmailPolicyEnabled } @objc - public init(newValue: DBXTeamLogFileRequestsPolicy, previousValue: DBXTeamLogFileRequestsPolicy?) { - self.swift = TeamLog.FileRequestsChangePolicyDetails(newValue: newValue.swift, previousValue: previousValue?.swift) + public var asOther: DBXTeamLogInviteAcceptanceEmailPolicyOther? { + return self as? DBXTeamLogInviteAcceptanceEmailPolicyOther } +} - let swift: TeamLog.FileRequestsChangePolicyDetails +/// An unspecified error. +@objc +public class DBXTeamLogInviteAcceptanceEmailPolicyDisabled: DBXTeamLogInviteAcceptanceEmailPolicy { + @objc + public init() { + let swift = TeamLog.InviteAcceptanceEmailPolicy.disabled + super.init(swift: swift) + } +} - public init(swift: TeamLog.FileRequestsChangePolicyDetails) { +/// An unspecified error. +@objc +public class DBXTeamLogInviteAcceptanceEmailPolicyEnabled: DBXTeamLogInviteAcceptanceEmailPolicy { + @objc + public init() { + let swift = TeamLog.InviteAcceptanceEmailPolicy.enabled + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogInviteAcceptanceEmailPolicyOther: DBXTeamLogInviteAcceptanceEmailPolicy { + @objc + public init() { + let swift = TeamLog.InviteAcceptanceEmailPolicy.other + super.init(swift: swift) + } +} + +/// Changed invite accept email policy for team. +@objc +public class DBXTeamLogInviteAcceptanceEmailPolicyChangedDetails: NSObject { + /// To. + @objc + public var newValue: DBXTeamLogInviteAcceptanceEmailPolicy { DBXTeamLogInviteAcceptanceEmailPolicy(swift: swift.newValue) } + /// From. + @objc + public var previousValue: DBXTeamLogInviteAcceptanceEmailPolicy { DBXTeamLogInviteAcceptanceEmailPolicy(swift: swift.previousValue) } + + @objc + public init(newValue: DBXTeamLogInviteAcceptanceEmailPolicy, previousValue: DBXTeamLogInviteAcceptanceEmailPolicy) { + self.swift = TeamLog.InviteAcceptanceEmailPolicyChangedDetails(newValue: newValue.swift, previousValue: previousValue.swift) + } + + let swift: TeamLog.InviteAcceptanceEmailPolicyChangedDetails + + public init(swift: TeamLog.InviteAcceptanceEmailPolicyChangedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible FileRequestsChangePolicyType struct +/// Objective-C compatible InviteAcceptanceEmailPolicyChangedType struct @objc -public class DBXTeamLogFileRequestsChangePolicyType: NSObject { +public class DBXTeamLogInviteAcceptanceEmailPolicyChangedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.FileRequestsChangePolicyType(description_: description_) + self.swift = TeamLog.InviteAcceptanceEmailPolicyChangedType(description_: description_) } - let swift: TeamLog.FileRequestsChangePolicyType + let swift: TeamLog.InviteAcceptanceEmailPolicyChangedType - public init(swift: TeamLog.FileRequestsChangePolicyType) { + public init(swift: TeamLog.InviteAcceptanceEmailPolicyChangedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Enabled file request emails for everyone. +/// Objective-C compatible InviteMethod union @objc -public class DBXTeamLogFileRequestsEmailsEnabledDetails: NSObject { - let swift: TeamLog.FileRequestsEmailsEnabledDetails +public class DBXTeamLogInviteMethod: NSObject { + let swift: TeamLog.InviteMethod - public init(swift: TeamLog.FileRequestsEmailsEnabledDetails) { + public init(swift: TeamLog.InviteMethod) { self.swift = swift } + public static func factory(swift: TeamLog.InviteMethod) -> DBXTeamLogInviteMethod { + switch swift { + case .autoApprove: + return DBXTeamLogInviteMethodAutoApprove() + case .inviteLink: + return DBXTeamLogInviteMethodInviteLink() + case .memberInvite: + return DBXTeamLogInviteMethodMemberInvite() + case .movedFromAnotherTeam: + return DBXTeamLogInviteMethodMovedFromAnotherTeam() + case .other: + return DBXTeamLogInviteMethodOther() + } + } + @objc public override var description: String { swift.description } -} -/// Objective-C compatible FileRequestsEmailsEnabledType struct -@objc -public class DBXTeamLogFileRequestsEmailsEnabledType: NSObject { - /// (no description) @objc - public var description_: String { swift.description_ } + public var asAutoApprove: DBXTeamLogInviteMethodAutoApprove? { + return self as? DBXTeamLogInviteMethodAutoApprove + } @objc - public init(description_: String) { - self.swift = TeamLog.FileRequestsEmailsEnabledType(description_: description_) + public var asInviteLink: DBXTeamLogInviteMethodInviteLink? { + return self as? DBXTeamLogInviteMethodInviteLink } - let swift: TeamLog.FileRequestsEmailsEnabledType + @objc + public var asMemberInvite: DBXTeamLogInviteMethodMemberInvite? { + return self as? DBXTeamLogInviteMethodMemberInvite + } - public init(swift: TeamLog.FileRequestsEmailsEnabledType) { - self.swift = swift + @objc + public var asMovedFromAnotherTeam: DBXTeamLogInviteMethodMovedFromAnotherTeam? { + return self as? DBXTeamLogInviteMethodMovedFromAnotherTeam } @objc - public override var description: String { swift.description } + public var asOther: DBXTeamLogInviteMethodOther? { + return self as? DBXTeamLogInviteMethodOther + } } -/// Enabled file request emails for team. +/// An unspecified error. @objc -public class DBXTeamLogFileRequestsEmailsRestrictedToTeamOnlyDetails: NSObject { - let swift: TeamLog.FileRequestsEmailsRestrictedToTeamOnlyDetails +public class DBXTeamLogInviteMethodAutoApprove: DBXTeamLogInviteMethod { + @objc + public init() { + let swift = TeamLog.InviteMethod.autoApprove + super.init(swift: swift) + } +} - public init(swift: TeamLog.FileRequestsEmailsRestrictedToTeamOnlyDetails) { - self.swift = swift +/// An unspecified error. +@objc +public class DBXTeamLogInviteMethodInviteLink: DBXTeamLogInviteMethod { + @objc + public init() { + let swift = TeamLog.InviteMethod.inviteLink + super.init(swift: swift) } +} +/// An unspecified error. +@objc +public class DBXTeamLogInviteMethodMemberInvite: DBXTeamLogInviteMethod { @objc - public override var description: String { swift.description } + public init() { + let swift = TeamLog.InviteMethod.memberInvite + super.init(swift: swift) + } } -/// Objective-C compatible FileRequestsEmailsRestrictedToTeamOnlyType struct +/// An unspecified error. @objc -public class DBXTeamLogFileRequestsEmailsRestrictedToTeamOnlyType: NSObject { - /// (no description) +public class DBXTeamLogInviteMethodMovedFromAnotherTeam: DBXTeamLogInviteMethod { @objc - public var description_: String { swift.description_ } + public init() { + let swift = TeamLog.InviteMethod.movedFromAnotherTeam + super.init(swift: swift) + } +} +/// An unspecified error. +@objc +public class DBXTeamLogInviteMethodOther: DBXTeamLogInviteMethod { @objc - public init(description_: String) { - self.swift = TeamLog.FileRequestsEmailsRestrictedToTeamOnlyType(description_: description_) + public init() { + let swift = TeamLog.InviteMethod.other + super.init(swift: swift) } +} - let swift: TeamLog.FileRequestsEmailsRestrictedToTeamOnlyType +/// Additional information relevant when a new member joins the team. +@objc +public class DBXTeamLogJoinTeamDetails: NSObject { + /// Field is deprecated. Linked applications. (Deprecated) Please use has_linked_apps boolean field instead. + @objc + public var linkedApps: Array { swift.linkedApps.map { DBXTeamLogUserLinkedAppLogInfo(swift: $0) } } + /// Field is deprecated. Linked devices. (Deprecated) Please use has_linked_devices boolean field instead. + @objc + public var linkedDevices: Array { swift.linkedDevices.map { DBXTeamLogLinkedDeviceLogInfo(swift: $0) } } + /// Field is deprecated. Linked shared folders. (Deprecated) Please use has_linked_shared_folders boolean field + /// instead. + @objc + public var linkedSharedFolders: Array { swift.linkedSharedFolders.map { DBXTeamLogFolderLogInfo(swift: $0) } } + /// Field is deprecated. (Deprecated) True if the linked_apps list was truncated to the maximum supported length + /// (50). + @objc + public var wasLinkedAppsTruncated: NSNumber? { swift.wasLinkedAppsTruncated as NSNumber? } + /// Field is deprecated. (Deprecated) True if the linked_devices list was truncated to the maximum supported + /// length (50). + @objc + public var wasLinkedDevicesTruncated: NSNumber? { swift.wasLinkedDevicesTruncated as NSNumber? } + /// Field is deprecated. (Deprecated) True if the linked_shared_folders list was truncated to the maximum + /// supported length (50). + @objc + public var wasLinkedSharedFoldersTruncated: NSNumber? { swift.wasLinkedSharedFoldersTruncated as NSNumber? } + /// True if the user had linked apps at event time. + @objc + public var hasLinkedApps: NSNumber? { swift.hasLinkedApps as NSNumber? } + /// True if the user had linked apps at event time. + @objc + public var hasLinkedDevices: NSNumber? { swift.hasLinkedDevices as NSNumber? } + /// True if the user had linked shared folders at event time. + @objc + public var hasLinkedSharedFolders: NSNumber? { swift.hasLinkedSharedFolders as NSNumber? } - public init(swift: TeamLog.FileRequestsEmailsRestrictedToTeamOnlyType) { + @objc + public init(linkedApps: Array, linkedDevices: Array, linkedSharedFolders: Array, wasLinkedAppsTruncated: NSNumber?, wasLinkedDevicesTruncated: NSNumber?, wasLinkedSharedFoldersTruncated: NSNumber?, hasLinkedApps: NSNumber?, hasLinkedDevices: NSNumber?, hasLinkedSharedFolders: NSNumber?) { + self.swift = TeamLog.JoinTeamDetails(linkedApps: linkedApps.map { $0.subSwift }, linkedDevices: linkedDevices.map { $0.swift }, linkedSharedFolders: linkedSharedFolders.map { $0.subSwift }, wasLinkedAppsTruncated: wasLinkedAppsTruncated?.boolValue, wasLinkedDevicesTruncated: wasLinkedDevicesTruncated?.boolValue, wasLinkedSharedFoldersTruncated: wasLinkedSharedFoldersTruncated?.boolValue, hasLinkedApps: hasLinkedApps?.boolValue, hasLinkedDevices: hasLinkedDevices?.boolValue, hasLinkedSharedFolders: hasLinkedSharedFolders?.boolValue) + } + + let swift: TeamLog.JoinTeamDetails + + public init(swift: TeamLog.JoinTeamDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// File requests policy +/// Label type @objc -public class DBXTeamLogFileRequestsPolicy: NSObject { - let swift: TeamLog.FileRequestsPolicy +public class DBXTeamLogLabelType: NSObject { + let swift: TeamLog.LabelType - public init(swift: TeamLog.FileRequestsPolicy) { + public init(swift: TeamLog.LabelType) { self.swift = swift } - public static func factory(swift: TeamLog.FileRequestsPolicy) -> DBXTeamLogFileRequestsPolicy { + public static func factory(swift: TeamLog.LabelType) -> DBXTeamLogLabelType { switch swift { - case .disabled: - return DBXTeamLogFileRequestsPolicyDisabled() - case .enabled: - return DBXTeamLogFileRequestsPolicyEnabled() + case .personalInformation: + return DBXTeamLogLabelTypePersonalInformation() + case .testOnly: + return DBXTeamLogLabelTypeTestOnly() + case .userDefinedTag: + return DBXTeamLogLabelTypeUserDefinedTag() case .other: - return DBXTeamLogFileRequestsPolicyOther() + return DBXTeamLogLabelTypeOther() } } @@ -41981,687 +56709,867 @@ public class DBXTeamLogFileRequestsPolicy: NSObject { public override var description: String { swift.description } @objc - public var asDisabled: DBXTeamLogFileRequestsPolicyDisabled? { - self as? DBXTeamLogFileRequestsPolicyDisabled + public var asPersonalInformation: DBXTeamLogLabelTypePersonalInformation? { + return self as? DBXTeamLogLabelTypePersonalInformation } @objc - public var asEnabled: DBXTeamLogFileRequestsPolicyEnabled? { - self as? DBXTeamLogFileRequestsPolicyEnabled + public var asTestOnly: DBXTeamLogLabelTypeTestOnly? { + return self as? DBXTeamLogLabelTypeTestOnly } @objc - public var asOther: DBXTeamLogFileRequestsPolicyOther? { - self as? DBXTeamLogFileRequestsPolicyOther + public var asUserDefinedTag: DBXTeamLogLabelTypeUserDefinedTag? { + return self as? DBXTeamLogLabelTypeUserDefinedTag + } + + @objc + public var asOther: DBXTeamLogLabelTypeOther? { + return self as? DBXTeamLogLabelTypeOther } } /// An unspecified error. @objc -public class DBXTeamLogFileRequestsPolicyDisabled: DBXTeamLogFileRequestsPolicy { +public class DBXTeamLogLabelTypePersonalInformation: DBXTeamLogLabelType { @objc public init() { - let swift = TeamLog.FileRequestsPolicy.disabled + let swift = TeamLog.LabelType.personalInformation super.init(swift: swift) } } /// An unspecified error. @objc -public class DBXTeamLogFileRequestsPolicyEnabled: DBXTeamLogFileRequestsPolicy { +public class DBXTeamLogLabelTypeTestOnly: DBXTeamLogLabelType { @objc public init() { - let swift = TeamLog.FileRequestsPolicy.enabled + let swift = TeamLog.LabelType.testOnly super.init(swift: swift) } } /// An unspecified error. @objc -public class DBXTeamLogFileRequestsPolicyOther: DBXTeamLogFileRequestsPolicy { +public class DBXTeamLogLabelTypeUserDefinedTag: DBXTeamLogLabelType { @objc public init() { - let swift = TeamLog.FileRequestsPolicy.other + let swift = TeamLog.LabelType.userDefinedTag super.init(swift: swift) } } -/// Resolved file comment. +/// An unspecified error. @objc -public class DBXTeamLogFileResolveCommentDetails: NSObject { - /// Comment text. +public class DBXTeamLogLabelTypeOther: DBXTeamLogLabelType { @objc - public var commentText: String? { swift.commentText } + public init() { + let swift = TeamLog.LabelType.other + super.init(swift: swift) + } +} +/// Information on sessions, in legacy format +@objc +public class DBXTeamLogLegacyDeviceSessionLogInfo: DBXTeamLogDeviceSessionLogInfo { + /// Session unique id. @objc - public init(commentText: String?) { - self.swift = TeamLog.FileResolveCommentDetails(commentText: commentText) + public var sessionInfo: DBXTeamLogSessionLogInfo? { guard let swift = subSwift.sessionInfo else { return nil }; return DBXTeamLogSessionLogInfo(swift: swift) } + /// The device name. Might be missing due to historical data gap. + @objc + public var displayName: String? { subSwift.displayName } + /// Is device managed by emm. Might be missing due to historical data gap. + @objc + public var isEmmManaged: NSNumber? { subSwift.isEmmManaged as NSNumber? } + /// Information on the hosting platform. Might be missing due to historical data gap. + @objc + public var platform: String? { subSwift.platform } + /// The mac address of the last activity from this session. Might be missing due to historical data gap. + @objc + public var macAddress: String? { subSwift.macAddress } + /// The hosting OS version. Might be missing due to historical data gap. + @objc + public var osVersion: String? { subSwift.osVersion } + /// Information on the hosting device type. Might be missing due to historical data gap. + @objc + public var deviceType: String? { subSwift.deviceType } + /// The Dropbox client version. Might be missing due to historical data gap. + @objc + public var clientVersion: String? { subSwift.clientVersion } + /// Alternative unique device session id, instead of session id field. Might be missing due to historical data + /// gap. + @objc + public var legacyUniqId: String? { subSwift.legacyUniqId } + + @objc + public init(ipAddress: String?, created: Date?, updated: Date?, sessionInfo: DBXTeamLogSessionLogInfo?, displayName: String?, isEmmManaged: NSNumber?, platform: String?, macAddress: String?, osVersion: String?, deviceType: String?, clientVersion: String?, legacyUniqId: String?) { + let swift = TeamLog.LegacyDeviceSessionLogInfo(ipAddress: ipAddress, created: created, updated: updated, sessionInfo: sessionInfo?.swift, displayName: displayName, isEmmManaged: isEmmManaged?.boolValue, platform: platform, macAddress: macAddress, osVersion: osVersion, deviceType: deviceType, clientVersion: clientVersion, legacyUniqId: legacyUniqId) + self.subSwift = swift + super.init(swift: swift) } - let swift: TeamLog.FileResolveCommentDetails + let subSwift: TeamLog.LegacyDeviceSessionLogInfo - public init(swift: TeamLog.FileResolveCommentDetails) { + public init(swift: TeamLog.LegacyDeviceSessionLogInfo) { + self.subSwift = swift + super.init(swift: swift) + } + + + @objc + public override var description: String { subSwift.description } +} + +/// Activated a hold. +@objc +public class DBXTeamLogLegalHoldsActivateAHoldDetails: NSObject { + /// Hold ID. + @objc + public var legalHoldId: String { swift.legalHoldId } + /// Hold name. + @objc + public var name: String { swift.name } + /// Hold start date. + @objc + public var startDate: Date { swift.startDate } + /// Hold end date. + @objc + public var endDate: Date? { swift.endDate } + + @objc + public init(legalHoldId: String, name: String, startDate: Date, endDate: Date?) { + self.swift = TeamLog.LegalHoldsActivateAHoldDetails(legalHoldId: legalHoldId, name: name, startDate: startDate, endDate: endDate) + } + + let swift: TeamLog.LegalHoldsActivateAHoldDetails + + public init(swift: TeamLog.LegalHoldsActivateAHoldDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible FileResolveCommentType struct +/// Objective-C compatible LegalHoldsActivateAHoldType struct @objc -public class DBXTeamLogFileResolveCommentType: NSObject { +public class DBXTeamLogLegalHoldsActivateAHoldType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.FileResolveCommentType(description_: description_) + self.swift = TeamLog.LegalHoldsActivateAHoldType(description_: description_) } - let swift: TeamLog.FileResolveCommentType + let swift: TeamLog.LegalHoldsActivateAHoldType - public init(swift: TeamLog.FileResolveCommentType) { + public init(swift: TeamLog.LegalHoldsActivateAHoldType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Restored deleted files and/or folders. +/// Added members to a hold. @objc -public class DBXTeamLogFileRestoreDetails: NSObject { - let swift: TeamLog.FileRestoreDetails +public class DBXTeamLogLegalHoldsAddMembersDetails: NSObject { + /// Hold ID. + @objc + public var legalHoldId: String { swift.legalHoldId } + /// Hold name. + @objc + public var name: String { swift.name } - public init(swift: TeamLog.FileRestoreDetails) { + @objc + public init(legalHoldId: String, name: String) { + self.swift = TeamLog.LegalHoldsAddMembersDetails(legalHoldId: legalHoldId, name: name) + } + + let swift: TeamLog.LegalHoldsAddMembersDetails + + public init(swift: TeamLog.LegalHoldsAddMembersDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible FileRestoreType struct +/// Objective-C compatible LegalHoldsAddMembersType struct @objc -public class DBXTeamLogFileRestoreType: NSObject { +public class DBXTeamLogLegalHoldsAddMembersType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.FileRestoreType(description_: description_) + self.swift = TeamLog.LegalHoldsAddMembersType(description_: description_) } - let swift: TeamLog.FileRestoreType + let swift: TeamLog.LegalHoldsAddMembersType - public init(swift: TeamLog.FileRestoreType) { + public init(swift: TeamLog.LegalHoldsAddMembersType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Reverted files to previous version. +/// Edited details for a hold. @objc -public class DBXTeamLogFileRevertDetails: NSObject { - let swift: TeamLog.FileRevertDetails +public class DBXTeamLogLegalHoldsChangeHoldDetailsDetails: NSObject { + /// Hold ID. + @objc + public var legalHoldId: String { swift.legalHoldId } + /// Hold name. + @objc + public var name: String { swift.name } + /// Previous details. + @objc + public var previousValue: String { swift.previousValue } + /// New details. + @objc + public var newValue: String { swift.newValue } - public init(swift: TeamLog.FileRevertDetails) { + @objc + public init(legalHoldId: String, name: String, previousValue: String, newValue: String) { + self.swift = TeamLog.LegalHoldsChangeHoldDetailsDetails(legalHoldId: legalHoldId, name: name, previousValue: previousValue, newValue: newValue) + } + + let swift: TeamLog.LegalHoldsChangeHoldDetailsDetails + + public init(swift: TeamLog.LegalHoldsChangeHoldDetailsDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible FileRevertType struct +/// Objective-C compatible LegalHoldsChangeHoldDetailsType struct @objc -public class DBXTeamLogFileRevertType: NSObject { +public class DBXTeamLogLegalHoldsChangeHoldDetailsType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.FileRevertType(description_: description_) + self.swift = TeamLog.LegalHoldsChangeHoldDetailsType(description_: description_) } - let swift: TeamLog.FileRevertType + let swift: TeamLog.LegalHoldsChangeHoldDetailsType - public init(swift: TeamLog.FileRevertType) { + public init(swift: TeamLog.LegalHoldsChangeHoldDetailsType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Rolled back file actions. +/// Renamed a hold. @objc -public class DBXTeamLogFileRollbackChangesDetails: NSObject { - let swift: TeamLog.FileRollbackChangesDetails +public class DBXTeamLogLegalHoldsChangeHoldNameDetails: NSObject { + /// Hold ID. + @objc + public var legalHoldId: String { swift.legalHoldId } + /// Previous Name. + @objc + public var previousValue: String { swift.previousValue } + /// New Name. + @objc + public var newValue: String { swift.newValue } - public init(swift: TeamLog.FileRollbackChangesDetails) { + @objc + public init(legalHoldId: String, previousValue: String, newValue: String) { + self.swift = TeamLog.LegalHoldsChangeHoldNameDetails(legalHoldId: legalHoldId, previousValue: previousValue, newValue: newValue) + } + + let swift: TeamLog.LegalHoldsChangeHoldNameDetails + + public init(swift: TeamLog.LegalHoldsChangeHoldNameDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible FileRollbackChangesType struct +/// Objective-C compatible LegalHoldsChangeHoldNameType struct @objc -public class DBXTeamLogFileRollbackChangesType: NSObject { +public class DBXTeamLogLegalHoldsChangeHoldNameType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.FileRollbackChangesType(description_: description_) + self.swift = TeamLog.LegalHoldsChangeHoldNameType(description_: description_) } - let swift: TeamLog.FileRollbackChangesType + let swift: TeamLog.LegalHoldsChangeHoldNameType - public init(swift: TeamLog.FileRollbackChangesType) { + public init(swift: TeamLog.LegalHoldsChangeHoldNameType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Saved file/folder using copy reference. +/// Exported hold. @objc -public class DBXTeamLogFileSaveCopyReferenceDetails: NSObject { - /// Relocate action details. +public class DBXTeamLogLegalHoldsExportAHoldDetails: NSObject { + /// Hold ID. @objc - public var relocateActionDetails: [DBXTeamLogRelocateAssetReferencesLogInfo] { - swift.relocateActionDetails.map { DBXTeamLogRelocateAssetReferencesLogInfo(swift: $0) } - } + public var legalHoldId: String { swift.legalHoldId } + /// Hold name. + @objc + public var name: String { swift.name } + /// Export name. + @objc + public var exportName: String? { swift.exportName } @objc - public init(relocateActionDetails: [DBXTeamLogRelocateAssetReferencesLogInfo]) { - self.swift = TeamLog.FileSaveCopyReferenceDetails(relocateActionDetails: relocateActionDetails.map(\.swift)) + public init(legalHoldId: String, name: String, exportName: String?) { + self.swift = TeamLog.LegalHoldsExportAHoldDetails(legalHoldId: legalHoldId, name: name, exportName: exportName) } - let swift: TeamLog.FileSaveCopyReferenceDetails + let swift: TeamLog.LegalHoldsExportAHoldDetails - public init(swift: TeamLog.FileSaveCopyReferenceDetails) { + public init(swift: TeamLog.LegalHoldsExportAHoldDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible FileSaveCopyReferenceType struct +/// Objective-C compatible LegalHoldsExportAHoldType struct @objc -public class DBXTeamLogFileSaveCopyReferenceType: NSObject { +public class DBXTeamLogLegalHoldsExportAHoldType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.FileSaveCopyReferenceType(description_: description_) + self.swift = TeamLog.LegalHoldsExportAHoldType(description_: description_) } - let swift: TeamLog.FileSaveCopyReferenceType + let swift: TeamLog.LegalHoldsExportAHoldType - public init(swift: TeamLog.FileSaveCopyReferenceType) { + public init(swift: TeamLog.LegalHoldsExportAHoldType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Transfer files added. +/// Canceled export for a hold. @objc -public class DBXTeamLogFileTransfersFileAddDetails: NSObject { - /// Transfer id. +public class DBXTeamLogLegalHoldsExportCancelledDetails: NSObject { + /// Hold ID. @objc - public var fileTransferId: String { swift.fileTransferId } + public var legalHoldId: String { swift.legalHoldId } + /// Hold name. + @objc + public var name: String { swift.name } + /// Export name. + @objc + public var exportName: String { swift.exportName } @objc - public init(fileTransferId: String) { - self.swift = TeamLog.FileTransfersFileAddDetails(fileTransferId: fileTransferId) + public init(legalHoldId: String, name: String, exportName: String) { + self.swift = TeamLog.LegalHoldsExportCancelledDetails(legalHoldId: legalHoldId, name: name, exportName: exportName) } - let swift: TeamLog.FileTransfersFileAddDetails + let swift: TeamLog.LegalHoldsExportCancelledDetails - public init(swift: TeamLog.FileTransfersFileAddDetails) { + public init(swift: TeamLog.LegalHoldsExportCancelledDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible FileTransfersFileAddType struct +/// Objective-C compatible LegalHoldsExportCancelledType struct @objc -public class DBXTeamLogFileTransfersFileAddType: NSObject { +public class DBXTeamLogLegalHoldsExportCancelledType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.FileTransfersFileAddType(description_: description_) - } - - let swift: TeamLog.FileTransfersFileAddType - - public init(swift: TeamLog.FileTransfersFileAddType) { - self.swift = swift + self.swift = TeamLog.LegalHoldsExportCancelledType(description_: description_) } - @objc - public override var description: String { swift.description } -} - -/// File transfers policy -@objc -public class DBXTeamLogFileTransfersPolicy: NSObject { - let swift: TeamLog.FileTransfersPolicy + let swift: TeamLog.LegalHoldsExportCancelledType - public init(swift: TeamLog.FileTransfersPolicy) { + public init(swift: TeamLog.LegalHoldsExportCancelledType) { self.swift = swift } - public static func factory(swift: TeamLog.FileTransfersPolicy) -> DBXTeamLogFileTransfersPolicy { - switch swift { - case .disabled: - return DBXTeamLogFileTransfersPolicyDisabled() - case .enabled: - return DBXTeamLogFileTransfersPolicyEnabled() - case .other: - return DBXTeamLogFileTransfersPolicyOther() - } - } @objc public override var description: String { swift.description } - - @objc - public var asDisabled: DBXTeamLogFileTransfersPolicyDisabled? { - self as? DBXTeamLogFileTransfersPolicyDisabled - } - - @objc - public var asEnabled: DBXTeamLogFileTransfersPolicyEnabled? { - self as? DBXTeamLogFileTransfersPolicyEnabled - } - - @objc - public var asOther: DBXTeamLogFileTransfersPolicyOther? { - self as? DBXTeamLogFileTransfersPolicyOther - } } -/// An unspecified error. +/// Downloaded export for a hold. @objc -public class DBXTeamLogFileTransfersPolicyDisabled: DBXTeamLogFileTransfersPolicy { +public class DBXTeamLogLegalHoldsExportDownloadedDetails: NSObject { + /// Hold ID. @objc - public init() { - let swift = TeamLog.FileTransfersPolicy.disabled - super.init(swift: swift) - } -} - -/// An unspecified error. -@objc -public class DBXTeamLogFileTransfersPolicyEnabled: DBXTeamLogFileTransfersPolicy { + public var legalHoldId: String { swift.legalHoldId } + /// Hold name. @objc - public init() { - let swift = TeamLog.FileTransfersPolicy.enabled - super.init(swift: swift) - } -} - -/// An unspecified error. -@objc -public class DBXTeamLogFileTransfersPolicyOther: DBXTeamLogFileTransfersPolicy { + public var name: String { swift.name } + /// Export name. @objc - public init() { - let swift = TeamLog.FileTransfersPolicy.other - super.init(swift: swift) - } -} - -/// Changed file transfers policy for team. -@objc -public class DBXTeamLogFileTransfersPolicyChangedDetails: NSObject { - /// New file transfers policy. + public var exportName: String { swift.exportName } + /// Part. @objc - public var newValue: DBXTeamLogFileTransfersPolicy { DBXTeamLogFileTransfersPolicy(swift: swift.newValue) } - /// Previous file transfers policy. + public var part: String? { swift.part } + /// Filename. @objc - public var previousValue: DBXTeamLogFileTransfersPolicy { DBXTeamLogFileTransfersPolicy(swift: swift.previousValue) } + public var fileName: String? { swift.fileName } @objc - public init(newValue: DBXTeamLogFileTransfersPolicy, previousValue: DBXTeamLogFileTransfersPolicy) { - self.swift = TeamLog.FileTransfersPolicyChangedDetails(newValue: newValue.swift, previousValue: previousValue.swift) + public init(legalHoldId: String, name: String, exportName: String, part: String?, fileName: String?) { + self.swift = TeamLog.LegalHoldsExportDownloadedDetails(legalHoldId: legalHoldId, name: name, exportName: exportName, part: part, fileName: fileName) } - let swift: TeamLog.FileTransfersPolicyChangedDetails + let swift: TeamLog.LegalHoldsExportDownloadedDetails - public init(swift: TeamLog.FileTransfersPolicyChangedDetails) { + public init(swift: TeamLog.LegalHoldsExportDownloadedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible FileTransfersPolicyChangedType struct +/// Objective-C compatible LegalHoldsExportDownloadedType struct @objc -public class DBXTeamLogFileTransfersPolicyChangedType: NSObject { +public class DBXTeamLogLegalHoldsExportDownloadedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.FileTransfersPolicyChangedType(description_: description_) + self.swift = TeamLog.LegalHoldsExportDownloadedType(description_: description_) } - let swift: TeamLog.FileTransfersPolicyChangedType + let swift: TeamLog.LegalHoldsExportDownloadedType - public init(swift: TeamLog.FileTransfersPolicyChangedType) { + public init(swift: TeamLog.LegalHoldsExportDownloadedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Deleted transfer. +/// Removed export for a hold. @objc -public class DBXTeamLogFileTransfersTransferDeleteDetails: NSObject { - /// Transfer id. +public class DBXTeamLogLegalHoldsExportRemovedDetails: NSObject { + /// Hold ID. @objc - public var fileTransferId: String { swift.fileTransferId } + public var legalHoldId: String { swift.legalHoldId } + /// Hold name. + @objc + public var name: String { swift.name } + /// Export name. + @objc + public var exportName: String { swift.exportName } @objc - public init(fileTransferId: String) { - self.swift = TeamLog.FileTransfersTransferDeleteDetails(fileTransferId: fileTransferId) + public init(legalHoldId: String, name: String, exportName: String) { + self.swift = TeamLog.LegalHoldsExportRemovedDetails(legalHoldId: legalHoldId, name: name, exportName: exportName) } - let swift: TeamLog.FileTransfersTransferDeleteDetails + let swift: TeamLog.LegalHoldsExportRemovedDetails - public init(swift: TeamLog.FileTransfersTransferDeleteDetails) { + public init(swift: TeamLog.LegalHoldsExportRemovedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible FileTransfersTransferDeleteType struct +/// Objective-C compatible LegalHoldsExportRemovedType struct @objc -public class DBXTeamLogFileTransfersTransferDeleteType: NSObject { +public class DBXTeamLogLegalHoldsExportRemovedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.FileTransfersTransferDeleteType(description_: description_) + self.swift = TeamLog.LegalHoldsExportRemovedType(description_: description_) } - let swift: TeamLog.FileTransfersTransferDeleteType + let swift: TeamLog.LegalHoldsExportRemovedType - public init(swift: TeamLog.FileTransfersTransferDeleteType) { + public init(swift: TeamLog.LegalHoldsExportRemovedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Transfer downloaded. +/// Released a hold. @objc -public class DBXTeamLogFileTransfersTransferDownloadDetails: NSObject { - /// Transfer id. +public class DBXTeamLogLegalHoldsReleaseAHoldDetails: NSObject { + /// Hold ID. @objc - public var fileTransferId: String { swift.fileTransferId } + public var legalHoldId: String { swift.legalHoldId } + /// Hold name. + @objc + public var name: String { swift.name } @objc - public init(fileTransferId: String) { - self.swift = TeamLog.FileTransfersTransferDownloadDetails(fileTransferId: fileTransferId) + public init(legalHoldId: String, name: String) { + self.swift = TeamLog.LegalHoldsReleaseAHoldDetails(legalHoldId: legalHoldId, name: name) } - let swift: TeamLog.FileTransfersTransferDownloadDetails + let swift: TeamLog.LegalHoldsReleaseAHoldDetails - public init(swift: TeamLog.FileTransfersTransferDownloadDetails) { + public init(swift: TeamLog.LegalHoldsReleaseAHoldDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible FileTransfersTransferDownloadType struct +/// Objective-C compatible LegalHoldsReleaseAHoldType struct @objc -public class DBXTeamLogFileTransfersTransferDownloadType: NSObject { +public class DBXTeamLogLegalHoldsReleaseAHoldType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.FileTransfersTransferDownloadType(description_: description_) + self.swift = TeamLog.LegalHoldsReleaseAHoldType(description_: description_) } - let swift: TeamLog.FileTransfersTransferDownloadType + let swift: TeamLog.LegalHoldsReleaseAHoldType - public init(swift: TeamLog.FileTransfersTransferDownloadType) { + public init(swift: TeamLog.LegalHoldsReleaseAHoldType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Sent transfer. +/// Removed members from a hold. @objc -public class DBXTeamLogFileTransfersTransferSendDetails: NSObject { - /// Transfer id. +public class DBXTeamLogLegalHoldsRemoveMembersDetails: NSObject { + /// Hold ID. @objc - public var fileTransferId: String { swift.fileTransferId } + public var legalHoldId: String { swift.legalHoldId } + /// Hold name. + @objc + public var name: String { swift.name } @objc - public init(fileTransferId: String) { - self.swift = TeamLog.FileTransfersTransferSendDetails(fileTransferId: fileTransferId) + public init(legalHoldId: String, name: String) { + self.swift = TeamLog.LegalHoldsRemoveMembersDetails(legalHoldId: legalHoldId, name: name) } - let swift: TeamLog.FileTransfersTransferSendDetails + let swift: TeamLog.LegalHoldsRemoveMembersDetails - public init(swift: TeamLog.FileTransfersTransferSendDetails) { + public init(swift: TeamLog.LegalHoldsRemoveMembersDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible FileTransfersTransferSendType struct +/// Objective-C compatible LegalHoldsRemoveMembersType struct @objc -public class DBXTeamLogFileTransfersTransferSendType: NSObject { +public class DBXTeamLogLegalHoldsRemoveMembersType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.FileTransfersTransferSendType(description_: description_) + self.swift = TeamLog.LegalHoldsRemoveMembersType(description_: description_) } - let swift: TeamLog.FileTransfersTransferSendType + let swift: TeamLog.LegalHoldsRemoveMembersType - public init(swift: TeamLog.FileTransfersTransferSendType) { + public init(swift: TeamLog.LegalHoldsRemoveMembersType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Viewed transfer. +/// Created a summary report for a hold. @objc -public class DBXTeamLogFileTransfersTransferViewDetails: NSObject { - /// Transfer id. +public class DBXTeamLogLegalHoldsReportAHoldDetails: NSObject { + /// Hold ID. @objc - public var fileTransferId: String { swift.fileTransferId } + public var legalHoldId: String { swift.legalHoldId } + /// Hold name. + @objc + public var name: String { swift.name } @objc - public init(fileTransferId: String) { - self.swift = TeamLog.FileTransfersTransferViewDetails(fileTransferId: fileTransferId) + public init(legalHoldId: String, name: String) { + self.swift = TeamLog.LegalHoldsReportAHoldDetails(legalHoldId: legalHoldId, name: name) } - let swift: TeamLog.FileTransfersTransferViewDetails + let swift: TeamLog.LegalHoldsReportAHoldDetails - public init(swift: TeamLog.FileTransfersTransferViewDetails) { + public init(swift: TeamLog.LegalHoldsReportAHoldDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible FileTransfersTransferViewType struct +/// Objective-C compatible LegalHoldsReportAHoldType struct @objc -public class DBXTeamLogFileTransfersTransferViewType: NSObject { +public class DBXTeamLogLegalHoldsReportAHoldType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.FileTransfersTransferViewType(description_: description_) + self.swift = TeamLog.LegalHoldsReportAHoldType(description_: description_) } - let swift: TeamLog.FileTransfersTransferViewType + let swift: TeamLog.LegalHoldsReportAHoldType - public init(swift: TeamLog.FileTransfersTransferViewType) { + public init(swift: TeamLog.LegalHoldsReportAHoldType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Unliked file comment. +/// Link Settings @objc -public class DBXTeamLogFileUnlikeCommentDetails: NSObject { - /// Comment text. +public class DBXTeamLogLinkSettingsLogInfo: NSObject { + /// Link Name. @objc - public var commentText: String? { swift.commentText } + public var name: String { swift.name } + /// Email Required. + @objc + public var requireEmail: NSNumber { swift.requireEmail as NSNumber } + /// Downloadable. + @objc + public var downloadable: NSNumber { swift.downloadable as NSNumber } + /// Expires at. + @objc + public var expireAt: Date? { swift.expireAt } + /// Password required. + @objc + public var passwordRequired: NSNumber { swift.passwordRequired as NSNumber } + /// Link URL. + @objc + public var url: String { swift.url } @objc - public init(commentText: String?) { - self.swift = TeamLog.FileUnlikeCommentDetails(commentText: commentText) + public init(name: String, requireEmail: NSNumber, downloadable: NSNumber, passwordRequired: NSNumber, url: String, expireAt: Date?) { + self.swift = TeamLog.LinkSettingsLogInfo(name: name, requireEmail: requireEmail.boolValue, downloadable: downloadable.boolValue, passwordRequired: passwordRequired.boolValue, url: url, expireAt: expireAt) } - let swift: TeamLog.FileUnlikeCommentDetails + let swift: TeamLog.LinkSettingsLogInfo - public init(swift: TeamLog.FileUnlikeCommentDetails) { + public init(swift: TeamLog.LinkSettingsLogInfo) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible FileUnlikeCommentType struct +/// The device sessions that user is linked to. @objc -public class DBXTeamLogFileUnlikeCommentType: NSObject { - /// (no description) +public class DBXTeamLogLinkedDeviceLogInfo: NSObject { + let swift: TeamLog.LinkedDeviceLogInfo + + public init(swift: TeamLog.LinkedDeviceLogInfo) { + self.swift = swift + } + + public static func factory(swift: TeamLog.LinkedDeviceLogInfo) -> DBXTeamLogLinkedDeviceLogInfo { + switch swift { + case .desktopDeviceSession(let swiftArg): + let arg = DBXTeamLogDesktopDeviceSessionLogInfo(swift: swiftArg) + return DBXTeamLogLinkedDeviceLogInfoDesktopDeviceSession(arg) + case .legacyDeviceSession(let swiftArg): + let arg = DBXTeamLogLegacyDeviceSessionLogInfo(swift: swiftArg) + return DBXTeamLogLinkedDeviceLogInfoLegacyDeviceSession(arg) + case .mobileDeviceSession(let swiftArg): + let arg = DBXTeamLogMobileDeviceSessionLogInfo(swift: swiftArg) + return DBXTeamLogLinkedDeviceLogInfoMobileDeviceSession(arg) + case .webDeviceSession(let swiftArg): + let arg = DBXTeamLogWebDeviceSessionLogInfo(swift: swiftArg) + return DBXTeamLogLinkedDeviceLogInfoWebDeviceSession(arg) + case .other: + return DBXTeamLogLinkedDeviceLogInfoOther() + } + } + @objc - public var description_: String { swift.description_ } + public override var description: String { swift.description } @objc - public init(description_: String) { - self.swift = TeamLog.FileUnlikeCommentType(description_: description_) + public var asDesktopDeviceSession: DBXTeamLogLinkedDeviceLogInfoDesktopDeviceSession? { + return self as? DBXTeamLogLinkedDeviceLogInfoDesktopDeviceSession } - let swift: TeamLog.FileUnlikeCommentType + @objc + public var asLegacyDeviceSession: DBXTeamLogLinkedDeviceLogInfoLegacyDeviceSession? { + return self as? DBXTeamLogLinkedDeviceLogInfoLegacyDeviceSession + } - public init(swift: TeamLog.FileUnlikeCommentType) { - self.swift = swift + @objc + public var asMobileDeviceSession: DBXTeamLogLinkedDeviceLogInfoMobileDeviceSession? { + return self as? DBXTeamLogLinkedDeviceLogInfoMobileDeviceSession } @objc - public override var description: String { swift.description } + public var asWebDeviceSession: DBXTeamLogLinkedDeviceLogInfoWebDeviceSession? { + return self as? DBXTeamLogLinkedDeviceLogInfoWebDeviceSession + } + + @objc + public var asOther: DBXTeamLogLinkedDeviceLogInfoOther? { + return self as? DBXTeamLogLinkedDeviceLogInfoOther + } } -/// Unresolved file comment. +/// desktop device session's details. @objc -public class DBXTeamLogFileUnresolveCommentDetails: NSObject { - /// Comment text. +public class DBXTeamLogLinkedDeviceLogInfoDesktopDeviceSession: DBXTeamLogLinkedDeviceLogInfo { @objc - public var commentText: String? { swift.commentText } + public var desktopDeviceSession: DBXTeamLogDesktopDeviceSessionLogInfo @objc - public init(commentText: String?) { - self.swift = TeamLog.FileUnresolveCommentDetails(commentText: commentText) + public init(_ arg: DBXTeamLogDesktopDeviceSessionLogInfo) { + desktopDeviceSession = arg + let swift = TeamLog.LinkedDeviceLogInfo.desktopDeviceSession(arg.subSwift) + super.init(swift: swift) } +} - let swift: TeamLog.FileUnresolveCommentDetails - - public init(swift: TeamLog.FileUnresolveCommentDetails) { - self.swift = swift - } +/// legacy device session's details. +@objc +public class DBXTeamLogLinkedDeviceLogInfoLegacyDeviceSession: DBXTeamLogLinkedDeviceLogInfo { + @objc + public var legacyDeviceSession: DBXTeamLogLegacyDeviceSessionLogInfo @objc - public override var description: String { swift.description } + public init(_ arg: DBXTeamLogLegacyDeviceSessionLogInfo) { + legacyDeviceSession = arg + let swift = TeamLog.LinkedDeviceLogInfo.legacyDeviceSession(arg.subSwift) + super.init(swift: swift) + } } -/// Objective-C compatible FileUnresolveCommentType struct +/// mobile device session's details. @objc -public class DBXTeamLogFileUnresolveCommentType: NSObject { - /// (no description) +public class DBXTeamLogLinkedDeviceLogInfoMobileDeviceSession: DBXTeamLogLinkedDeviceLogInfo { @objc - public var description_: String { swift.description_ } + public var mobileDeviceSession: DBXTeamLogMobileDeviceSessionLogInfo @objc - public init(description_: String) { - self.swift = TeamLog.FileUnresolveCommentType(description_: description_) + public init(_ arg: DBXTeamLogMobileDeviceSessionLogInfo) { + mobileDeviceSession = arg + let swift = TeamLog.LinkedDeviceLogInfo.mobileDeviceSession(arg.subSwift) + super.init(swift: swift) } +} - let swift: TeamLog.FileUnresolveCommentType +/// web device session's details. +@objc +public class DBXTeamLogLinkedDeviceLogInfoWebDeviceSession: DBXTeamLogLinkedDeviceLogInfo { + @objc + public var webDeviceSession: DBXTeamLogWebDeviceSessionLogInfo - public init(swift: TeamLog.FileUnresolveCommentType) { - self.swift = swift + @objc + public init(_ arg: DBXTeamLogWebDeviceSessionLogInfo) { + webDeviceSession = arg + let swift = TeamLog.LinkedDeviceLogInfo.webDeviceSession(arg.subSwift) + super.init(swift: swift) } +} +/// An unspecified error. +@objc +public class DBXTeamLogLinkedDeviceLogInfoOther: DBXTeamLogLinkedDeviceLogInfo { @objc - public override var description: String { swift.description } + public init() { + let swift = TeamLog.LinkedDeviceLogInfo.other + super.init(swift: swift) + } } -/// Policy for deciding whether applying link restrictions on all team owned folders +/// File lock status @objc -public class DBXTeamLogFolderLinkRestrictionPolicy: NSObject { - let swift: TeamLog.FolderLinkRestrictionPolicy +public class DBXTeamLogLockStatus: NSObject { + let swift: TeamLog.LockStatus - public init(swift: TeamLog.FolderLinkRestrictionPolicy) { + public init(swift: TeamLog.LockStatus) { self.swift = swift } - public static func factory(swift: TeamLog.FolderLinkRestrictionPolicy) -> DBXTeamLogFolderLinkRestrictionPolicy { + public static func factory(swift: TeamLog.LockStatus) -> DBXTeamLogLockStatus { switch swift { - case .disabled: - return DBXTeamLogFolderLinkRestrictionPolicyDisabled() - case .enabled: - return DBXTeamLogFolderLinkRestrictionPolicyEnabled() + case .locked: + return DBXTeamLogLockStatusLocked() + case .unlocked: + return DBXTeamLogLockStatusUnlocked() case .other: - return DBXTeamLogFolderLinkRestrictionPolicyOther() + return DBXTeamLogLockStatusOther() } } @@ -42669,475 +57577,483 @@ public class DBXTeamLogFolderLinkRestrictionPolicy: NSObject { public override var description: String { swift.description } @objc - public var asDisabled: DBXTeamLogFolderLinkRestrictionPolicyDisabled? { - self as? DBXTeamLogFolderLinkRestrictionPolicyDisabled + public var asLocked: DBXTeamLogLockStatusLocked? { + return self as? DBXTeamLogLockStatusLocked } @objc - public var asEnabled: DBXTeamLogFolderLinkRestrictionPolicyEnabled? { - self as? DBXTeamLogFolderLinkRestrictionPolicyEnabled + public var asUnlocked: DBXTeamLogLockStatusUnlocked? { + return self as? DBXTeamLogLockStatusUnlocked } @objc - public var asOther: DBXTeamLogFolderLinkRestrictionPolicyOther? { - self as? DBXTeamLogFolderLinkRestrictionPolicyOther + public var asOther: DBXTeamLogLockStatusOther? { + return self as? DBXTeamLogLockStatusOther } } /// An unspecified error. @objc -public class DBXTeamLogFolderLinkRestrictionPolicyDisabled: DBXTeamLogFolderLinkRestrictionPolicy { +public class DBXTeamLogLockStatusLocked: DBXTeamLogLockStatus { @objc public init() { - let swift = TeamLog.FolderLinkRestrictionPolicy.disabled + let swift = TeamLog.LockStatus.locked super.init(swift: swift) } } /// An unspecified error. @objc -public class DBXTeamLogFolderLinkRestrictionPolicyEnabled: DBXTeamLogFolderLinkRestrictionPolicy { +public class DBXTeamLogLockStatusUnlocked: DBXTeamLogLockStatus { @objc public init() { - let swift = TeamLog.FolderLinkRestrictionPolicy.enabled + let swift = TeamLog.LockStatus.unlocked super.init(swift: swift) } } /// An unspecified error. @objc -public class DBXTeamLogFolderLinkRestrictionPolicyOther: DBXTeamLogFolderLinkRestrictionPolicy { +public class DBXTeamLogLockStatusOther: DBXTeamLogLockStatus { @objc public init() { - let swift = TeamLog.FolderLinkRestrictionPolicy.other + let swift = TeamLog.LockStatus.other super.init(swift: swift) } } -/// Changed folder link restrictions policy for team. +/// Failed to sign in. @objc -public class DBXTeamLogFolderLinkRestrictionPolicyChangedDetails: NSObject { - /// To. +public class DBXTeamLogLoginFailDetails: NSObject { + /// Tells if the login device is EMM managed. Might be missing due to historical data gap. @objc - public var newValue: DBXTeamLogFolderLinkRestrictionPolicy { DBXTeamLogFolderLinkRestrictionPolicy(swift: swift.newValue) } - /// From. + public var isEmmManaged: NSNumber? { swift.isEmmManaged as NSNumber? } + /// Login method. @objc - public var previousValue: DBXTeamLogFolderLinkRestrictionPolicy { DBXTeamLogFolderLinkRestrictionPolicy(swift: swift.previousValue) } + public var loginMethod: DBXTeamLogLoginMethod { DBXTeamLogLoginMethod(swift: swift.loginMethod) } + /// Error details. + @objc + public var errorDetails: DBXTeamLogFailureDetailsLogInfo { DBXTeamLogFailureDetailsLogInfo(swift: swift.errorDetails) } @objc - public init(newValue: DBXTeamLogFolderLinkRestrictionPolicy, previousValue: DBXTeamLogFolderLinkRestrictionPolicy) { - self.swift = TeamLog.FolderLinkRestrictionPolicyChangedDetails(newValue: newValue.swift, previousValue: previousValue.swift) + public init(loginMethod: DBXTeamLogLoginMethod, errorDetails: DBXTeamLogFailureDetailsLogInfo, isEmmManaged: NSNumber?) { + self.swift = TeamLog.LoginFailDetails(loginMethod: loginMethod.swift, errorDetails: errorDetails.swift, isEmmManaged: isEmmManaged?.boolValue) } - let swift: TeamLog.FolderLinkRestrictionPolicyChangedDetails + let swift: TeamLog.LoginFailDetails - public init(swift: TeamLog.FolderLinkRestrictionPolicyChangedDetails) { + public init(swift: TeamLog.LoginFailDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible FolderLinkRestrictionPolicyChangedType struct +/// Objective-C compatible LoginFailType struct @objc -public class DBXTeamLogFolderLinkRestrictionPolicyChangedType: NSObject { +public class DBXTeamLogLoginFailType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.FolderLinkRestrictionPolicyChangedType(description_: description_) + self.swift = TeamLog.LoginFailType(description_: description_) } - let swift: TeamLog.FolderLinkRestrictionPolicyChangedType + let swift: TeamLog.LoginFailType - public init(swift: TeamLog.FolderLinkRestrictionPolicyChangedType) { + public init(swift: TeamLog.LoginFailType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Folder's logged information. +/// Objective-C compatible LoginMethod union @objc -public class DBXTeamLogFolderLogInfo: DBXTeamLogFileOrFolderLogInfo { - /// Number of files within the folder. - @objc - public var fileCount: NSNumber? { subSwift.fileCount as NSNumber? } +public class DBXTeamLogLoginMethod: NSObject { + let swift: TeamLog.LoginMethod - @objc - public init(path: DBXTeamLogPathLogInfo, displayName: String?, fileId: String?, fileSize: NSNumber?, fileCount: NSNumber?) { - let swift = TeamLog.FolderLogInfo( - path: path.swift, - displayName: displayName, - fileId: fileId, - fileSize: fileSize?.uint64Value, - fileCount: fileCount?.uint64Value - ) - self.subSwift = swift - super.init(swift: swift) + public init(swift: TeamLog.LoginMethod) { + self.swift = swift } - let subSwift: TeamLog.FolderLogInfo - - public init(swift: TeamLog.FolderLogInfo) { - self.subSwift = swift - super.init(swift: swift) + public static func factory(swift: TeamLog.LoginMethod) -> DBXTeamLogLoginMethod { + switch swift { + case .appleOauth: + return DBXTeamLogLoginMethodAppleOauth() + case .firstPartyTokenExchange: + return DBXTeamLogLoginMethodFirstPartyTokenExchange() + case .googleOauth: + return DBXTeamLogLoginMethodGoogleOauth() + case .kakaoOauth: + return DBXTeamLogLoginMethodKakaoOauth() + case .lenovoOauth: + return DBXTeamLogLoginMethodLenovoOauth() + case .passkey: + return DBXTeamLogLoginMethodPasskey() + case .password: + return DBXTeamLogLoginMethodPassword() + case .qrCode: + return DBXTeamLogLoginMethodQrCode() + case .saml: + return DBXTeamLogLoginMethodSaml() + case .twoFactorAuthentication: + return DBXTeamLogLoginMethodTwoFactorAuthentication() + case .webSession: + return DBXTeamLogLoginMethodWebSession() + case .microsoftOauth: + return DBXTeamLogLoginMethodMicrosoftOauth() + case .other: + return DBXTeamLogLoginMethodOther() + } } @objc - public override var description: String { subSwift.description } -} + public override var description: String { swift.description } -/// Updated folder overview. -@objc -public class DBXTeamLogFolderOverviewDescriptionChangedDetails: NSObject { - /// Folder Overview location position in the Assets list. @objc - public var folderOverviewLocationAsset: NSNumber { swift.folderOverviewLocationAsset as NSNumber } + public var asAppleOauth: DBXTeamLogLoginMethodAppleOauth? { + return self as? DBXTeamLogLoginMethodAppleOauth + } @objc - public init(folderOverviewLocationAsset: NSNumber) { - self.swift = TeamLog.FolderOverviewDescriptionChangedDetails(folderOverviewLocationAsset: folderOverviewLocationAsset.uint64Value) + public var asFirstPartyTokenExchange: DBXTeamLogLoginMethodFirstPartyTokenExchange? { + return self as? DBXTeamLogLoginMethodFirstPartyTokenExchange } - let swift: TeamLog.FolderOverviewDescriptionChangedDetails - - public init(swift: TeamLog.FolderOverviewDescriptionChangedDetails) { - self.swift = swift + @objc + public var asGoogleOauth: DBXTeamLogLoginMethodGoogleOauth? { + return self as? DBXTeamLogLoginMethodGoogleOauth } @objc - public override var description: String { swift.description } -} + public var asKakaoOauth: DBXTeamLogLoginMethodKakaoOauth? { + return self as? DBXTeamLogLoginMethodKakaoOauth + } -/// Objective-C compatible FolderOverviewDescriptionChangedType struct -@objc -public class DBXTeamLogFolderOverviewDescriptionChangedType: NSObject { - /// (no description) @objc - public var description_: String { swift.description_ } + public var asLenovoOauth: DBXTeamLogLoginMethodLenovoOauth? { + return self as? DBXTeamLogLoginMethodLenovoOauth + } @objc - public init(description_: String) { - self.swift = TeamLog.FolderOverviewDescriptionChangedType(description_: description_) + public var asPasskey: DBXTeamLogLoginMethodPasskey? { + return self as? DBXTeamLogLoginMethodPasskey } - let swift: TeamLog.FolderOverviewDescriptionChangedType - - public init(swift: TeamLog.FolderOverviewDescriptionChangedType) { - self.swift = swift + @objc + public var asPassword: DBXTeamLogLoginMethodPassword? { + return self as? DBXTeamLogLoginMethodPassword } @objc - public override var description: String { swift.description } -} + public var asQrCode: DBXTeamLogLoginMethodQrCode? { + return self as? DBXTeamLogLoginMethodQrCode + } -/// Pinned item to folder overview. -@objc -public class DBXTeamLogFolderOverviewItemPinnedDetails: NSObject { - /// Folder Overview location position in the Assets list. @objc - public var folderOverviewLocationAsset: NSNumber { swift.folderOverviewLocationAsset as NSNumber } - /// Pinned items positions in the Assets list. - @objc - public var pinnedItemsAssetIndices: [NSNumber] { swift.pinnedItemsAssetIndices.map { $0 as NSNumber } } + public var asSaml: DBXTeamLogLoginMethodSaml? { + return self as? DBXTeamLogLoginMethodSaml + } @objc - public init(folderOverviewLocationAsset: NSNumber, pinnedItemsAssetIndices: [NSNumber]) { - self.swift = TeamLog.FolderOverviewItemPinnedDetails( - folderOverviewLocationAsset: folderOverviewLocationAsset.uint64Value, - pinnedItemsAssetIndices: pinnedItemsAssetIndices.map(\.uint64Value) - ) + public var asTwoFactorAuthentication: DBXTeamLogLoginMethodTwoFactorAuthentication? { + return self as? DBXTeamLogLoginMethodTwoFactorAuthentication } - let swift: TeamLog.FolderOverviewItemPinnedDetails + @objc + public var asWebSession: DBXTeamLogLoginMethodWebSession? { + return self as? DBXTeamLogLoginMethodWebSession + } - public init(swift: TeamLog.FolderOverviewItemPinnedDetails) { - self.swift = swift + @objc + public var asMicrosoftOauth: DBXTeamLogLoginMethodMicrosoftOauth? { + return self as? DBXTeamLogLoginMethodMicrosoftOauth } @objc - public override var description: String { swift.description } + public var asOther: DBXTeamLogLoginMethodOther? { + return self as? DBXTeamLogLoginMethodOther + } } -/// Objective-C compatible FolderOverviewItemPinnedType struct +/// An unspecified error. @objc -public class DBXTeamLogFolderOverviewItemPinnedType: NSObject { - /// (no description) +public class DBXTeamLogLoginMethodAppleOauth: DBXTeamLogLoginMethod { @objc - public var description_: String { swift.description_ } + public init() { + let swift = TeamLog.LoginMethod.appleOauth + super.init(swift: swift) + } +} +/// An unspecified error. +@objc +public class DBXTeamLogLoginMethodFirstPartyTokenExchange: DBXTeamLogLoginMethod { @objc - public init(description_: String) { - self.swift = TeamLog.FolderOverviewItemPinnedType(description_: description_) + public init() { + let swift = TeamLog.LoginMethod.firstPartyTokenExchange + super.init(swift: swift) } +} - let swift: TeamLog.FolderOverviewItemPinnedType - - public init(swift: TeamLog.FolderOverviewItemPinnedType) { - self.swift = swift +/// An unspecified error. +@objc +public class DBXTeamLogLoginMethodGoogleOauth: DBXTeamLogLoginMethod { + @objc + public init() { + let swift = TeamLog.LoginMethod.googleOauth + super.init(swift: swift) } +} +/// An unspecified error. +@objc +public class DBXTeamLogLoginMethodKakaoOauth: DBXTeamLogLoginMethod { @objc - public override var description: String { swift.description } + public init() { + let swift = TeamLog.LoginMethod.kakaoOauth + super.init(swift: swift) + } } -/// Unpinned item from folder overview. +/// An unspecified error. @objc -public class DBXTeamLogFolderOverviewItemUnpinnedDetails: NSObject { - /// Folder Overview location position in the Assets list. - @objc - public var folderOverviewLocationAsset: NSNumber { swift.folderOverviewLocationAsset as NSNumber } - /// Pinned items positions in the Assets list. +public class DBXTeamLogLoginMethodLenovoOauth: DBXTeamLogLoginMethod { @objc - public var pinnedItemsAssetIndices: [NSNumber] { swift.pinnedItemsAssetIndices.map { $0 as NSNumber } } + public init() { + let swift = TeamLog.LoginMethod.lenovoOauth + super.init(swift: swift) + } +} +/// An unspecified error. +@objc +public class DBXTeamLogLoginMethodPasskey: DBXTeamLogLoginMethod { @objc - public init(folderOverviewLocationAsset: NSNumber, pinnedItemsAssetIndices: [NSNumber]) { - self.swift = TeamLog.FolderOverviewItemUnpinnedDetails( - folderOverviewLocationAsset: folderOverviewLocationAsset.uint64Value, - pinnedItemsAssetIndices: pinnedItemsAssetIndices.map(\.uint64Value) - ) + public init() { + let swift = TeamLog.LoginMethod.passkey + super.init(swift: swift) } +} - let swift: TeamLog.FolderOverviewItemUnpinnedDetails - - public init(swift: TeamLog.FolderOverviewItemUnpinnedDetails) { - self.swift = swift +/// An unspecified error. +@objc +public class DBXTeamLogLoginMethodPassword: DBXTeamLogLoginMethod { + @objc + public init() { + let swift = TeamLog.LoginMethod.password + super.init(swift: swift) } +} +/// An unspecified error. +@objc +public class DBXTeamLogLoginMethodQrCode: DBXTeamLogLoginMethod { @objc - public override var description: String { swift.description } + public init() { + let swift = TeamLog.LoginMethod.qrCode + super.init(swift: swift) + } } -/// Objective-C compatible FolderOverviewItemUnpinnedType struct +/// An unspecified error. @objc -public class DBXTeamLogFolderOverviewItemUnpinnedType: NSObject { - /// (no description) +public class DBXTeamLogLoginMethodSaml: DBXTeamLogLoginMethod { @objc - public var description_: String { swift.description_ } + public init() { + let swift = TeamLog.LoginMethod.saml + super.init(swift: swift) + } +} +/// An unspecified error. +@objc +public class DBXTeamLogLoginMethodTwoFactorAuthentication: DBXTeamLogLoginMethod { @objc - public init(description_: String) { - self.swift = TeamLog.FolderOverviewItemUnpinnedType(description_: description_) + public init() { + let swift = TeamLog.LoginMethod.twoFactorAuthentication + super.init(swift: swift) } +} - let swift: TeamLog.FolderOverviewItemUnpinnedType - - public init(swift: TeamLog.FolderOverviewItemUnpinnedType) { - self.swift = swift +/// An unspecified error. +@objc +public class DBXTeamLogLoginMethodWebSession: DBXTeamLogLoginMethod { + @objc + public init() { + let swift = TeamLog.LoginMethod.webSession + super.init(swift: swift) } +} +/// An unspecified error. +@objc +public class DBXTeamLogLoginMethodMicrosoftOauth: DBXTeamLogLoginMethod { @objc - public override var description: String { swift.description } + public init() { + let swift = TeamLog.LoginMethod.microsoftOauth + super.init(swift: swift) + } } -/// Geographic location details. +/// An unspecified error. @objc -public class DBXTeamLogGeoLocationLogInfo: NSObject { - /// City name. - @objc - public var city: String? { swift.city } - /// Region name. +public class DBXTeamLogLoginMethodOther: DBXTeamLogLoginMethod { @objc - public var region: String? { swift.region } - /// Country code. + public init() { + let swift = TeamLog.LoginMethod.other + super.init(swift: swift) + } +} + +/// Signed in. +@objc +public class DBXTeamLogLoginSuccessDetails: NSObject { + /// Tells if the login device is EMM managed. Might be missing due to historical data gap. @objc - public var country: String? { swift.country } - /// IP address. + public var isEmmManaged: NSNumber? { swift.isEmmManaged as NSNumber? } + /// Login method. @objc - public var ipAddress: String { swift.ipAddress } + public var loginMethod: DBXTeamLogLoginMethod { DBXTeamLogLoginMethod(swift: swift.loginMethod) } @objc - public init(ipAddress: String, city: String?, region: String?, country: String?) { - self.swift = TeamLog.GeoLocationLogInfo(ipAddress: ipAddress, city: city, region: region, country: country) + public init(loginMethod: DBXTeamLogLoginMethod, isEmmManaged: NSNumber?) { + self.swift = TeamLog.LoginSuccessDetails(loginMethod: loginMethod.swift, isEmmManaged: isEmmManaged?.boolValue) } - let swift: TeamLog.GeoLocationLogInfo + let swift: TeamLog.LoginSuccessDetails - public init(swift: TeamLog.GeoLocationLogInfo) { + public init(swift: TeamLog.LoginSuccessDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible GetTeamEventsArg struct +/// Objective-C compatible LoginSuccessType struct @objc -public class DBXTeamLogGetTeamEventsArg: NSObject { - /// The maximal number of results to return per call. Note that some calls may not return limit number of - /// events, and may even return no events, even with `has_more` set to true. In this case, callers should - /// fetch again using getEventsContinue. - @objc - public var limit: NSNumber { swift.limit as NSNumber } - /// Filter the events by account ID. Return only events with this account_id as either Actor, Context, or - /// Participants. - @objc - public var accountId: String? { swift.accountId } - /// Filter by time range. - @objc - public var time: DBXTeamCommonTimeRange? { guard let swift = swift.time else { return nil } - return DBXTeamCommonTimeRange(swift: swift) - } - - /// Filter the returned events to a single category. Note that category shouldn't be provided together with - /// event_type. - @objc - public var category: DBXTeamLogEventCategory? { guard let swift = swift.category else { return nil } - return DBXTeamLogEventCategory(swift: swift) - } - - /// Filter the returned events to a single event type. Note that event_type shouldn't be provided together with - /// category. +public class DBXTeamLogLoginSuccessType: NSObject { + /// (no description) @objc - public var eventType: DBXTeamLogEventTypeArg? { guard let swift = swift.eventType else { return nil } - return DBXTeamLogEventTypeArg(swift: swift) - } + public var description_: String { swift.description_ } @objc - public init(limit: NSNumber, accountId: String?, time: DBXTeamCommonTimeRange?, category: DBXTeamLogEventCategory?, eventType: DBXTeamLogEventTypeArg?) { - self.swift = TeamLog.GetTeamEventsArg( - limit: limit.uint32Value, - accountId: accountId, - time: time?.swift, - category: category?.swift, - eventType: eventType?.swift - ) + public init(description_: String) { + self.swift = TeamLog.LoginSuccessType(description_: description_) } - let swift: TeamLog.GetTeamEventsArg + let swift: TeamLog.LoginSuccessType - public init(swift: TeamLog.GetTeamEventsArg) { + public init(swift: TeamLog.LoginSuccessType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible GetTeamEventsContinueArg struct +/// Signed out. @objc -public class DBXTeamLogGetTeamEventsContinueArg: NSObject { - /// Indicates from what point to get the next set of events. +public class DBXTeamLogLogoutDetails: NSObject { + /// Login session id. @objc - public var cursor: String { swift.cursor } + public var loginId: String? { swift.loginId } @objc - public init(cursor: String) { - self.swift = TeamLog.GetTeamEventsContinueArg(cursor: cursor) + public init(loginId: String?) { + self.swift = TeamLog.LogoutDetails(loginId: loginId) } - let swift: TeamLog.GetTeamEventsContinueArg + let swift: TeamLog.LogoutDetails - public init(swift: TeamLog.GetTeamEventsContinueArg) { + public init(swift: TeamLog.LogoutDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Errors that can be raised when calling getEventsContinue. +/// Objective-C compatible LogoutType struct @objc -public class DBXTeamLogGetTeamEventsContinueError: NSObject { - let swift: TeamLog.GetTeamEventsContinueError +public class DBXTeamLogLogoutType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } - public init(swift: TeamLog.GetTeamEventsContinueError) { - self.swift = swift + @objc + public init(description_: String) { + self.swift = TeamLog.LogoutType(description_: description_) } - public static func factory(swift: TeamLog.GetTeamEventsContinueError) -> DBXTeamLogGetTeamEventsContinueError { - switch swift { - case .badCursor: - return DBXTeamLogGetTeamEventsContinueErrorBadCursor() - case .reset(let swiftArg): - let arg = swiftArg - return DBXTeamLogGetTeamEventsContinueErrorReset(arg) - case .other: - return DBXTeamLogGetTeamEventsContinueErrorOther() - } + let swift: TeamLog.LogoutType + + public init(swift: TeamLog.LogoutType) { + self.swift = swift } + @objc public override var description: String { swift.description } +} +/// Malware exclusion list state +@objc +public class DBXTeamLogMalwareExclusionState: NSObject { + /// The number of files that are excluded from the monitoring for malware alerts. @objc - public var asBadCursor: DBXTeamLogGetTeamEventsContinueErrorBadCursor? { - self as? DBXTeamLogGetTeamEventsContinueErrorBadCursor - } - + public var excludedFileHashesCount: NSNumber { swift.excludedFileHashesCount as NSNumber } + /// The file path of the last exclusion operation. @objc - public var asReset: DBXTeamLogGetTeamEventsContinueErrorReset? { - self as? DBXTeamLogGetTeamEventsContinueErrorReset - } - + public var filePathFromLastExclusion: String? { swift.filePathFromLastExclusion } + /// The file path of the last inclusion operation. @objc - public var asOther: DBXTeamLogGetTeamEventsContinueErrorOther? { - self as? DBXTeamLogGetTeamEventsContinueErrorOther - } -} + public var filePathFromLastInclusion: String? { swift.filePathFromLastInclusion } -/// Bad cursor. -@objc -public class DBXTeamLogGetTeamEventsContinueErrorBadCursor: DBXTeamLogGetTeamEventsContinueError { @objc - public init() { - let swift = TeamLog.GetTeamEventsContinueError.badCursor - super.init(swift: swift) + public init(excludedFileHashesCount: NSNumber, filePathFromLastExclusion: String?, filePathFromLastInclusion: String?) { + self.swift = TeamLog.MalwareExclusionState(excludedFileHashesCount: excludedFileHashesCount.int64Value, filePathFromLastExclusion: filePathFromLastExclusion, filePathFromLastInclusion: filePathFromLastInclusion) } -} -/// Cursors are intended to be used quickly. Individual cursor values are normally valid for days, but in rare -/// cases may be reset sooner. Cursor reset errors should be handled by fetching a new cursor from -/// getEvents. The associated value is the approximate timestamp of the most recent event returned by -/// the cursor. This should be used as a resumption point when calling getEvents to obtain a new cursor. -@objc -public class DBXTeamLogGetTeamEventsContinueErrorReset: DBXTeamLogGetTeamEventsContinueError { - @objc - public var reset: Date + let swift: TeamLog.MalwareExclusionState - @objc - public init(_ arg: Date) { - self.reset = arg - let swift = TeamLog.GetTeamEventsContinueError.reset(arg) - super.init(swift: swift) + public init(swift: TeamLog.MalwareExclusionState) { + self.swift = swift } -} -/// An unspecified error. -@objc -public class DBXTeamLogGetTeamEventsContinueErrorOther: DBXTeamLogGetTeamEventsContinueError { + @objc - public init() { - let swift = TeamLog.GetTeamEventsContinueError.other - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// Errors that can be raised when calling getEvents. +/// Policy for deciding who can be added to Media Hub content @objc -public class DBXTeamLogGetTeamEventsError: NSObject { - let swift: TeamLog.GetTeamEventsError +public class DBXTeamLogMediaHubAddingPeoplePolicy: NSObject { + let swift: TeamLog.MediaHubAddingPeoplePolicy - public init(swift: TeamLog.GetTeamEventsError) { + public init(swift: TeamLog.MediaHubAddingPeoplePolicy) { self.swift = swift } - public static func factory(swift: TeamLog.GetTeamEventsError) -> DBXTeamLogGetTeamEventsError { + public static func factory(swift: TeamLog.MediaHubAddingPeoplePolicy) -> DBXTeamLogMediaHubAddingPeoplePolicy { switch swift { - case .accountIdNotFound: - return DBXTeamLogGetTeamEventsErrorAccountIdNotFound() - case .invalidTimeRange: - return DBXTeamLogGetTeamEventsErrorInvalidTimeRange() - case .invalidFilters: - return DBXTeamLogGetTeamEventsErrorInvalidFilters() + case .anyone: + return DBXTeamLogMediaHubAddingPeoplePolicyAnyone() + case .teamOnly: + return DBXTeamLogMediaHubAddingPeoplePolicyTeamOnly() case .other: - return DBXTeamLogGetTeamEventsErrorOther() + return DBXTeamLogMediaHubAddingPeoplePolicyOther() } } @@ -43145,165 +58061,117 @@ public class DBXTeamLogGetTeamEventsError: NSObject { public override var description: String { swift.description } @objc - public var asAccountIdNotFound: DBXTeamLogGetTeamEventsErrorAccountIdNotFound? { - self as? DBXTeamLogGetTeamEventsErrorAccountIdNotFound - } - - @objc - public var asInvalidTimeRange: DBXTeamLogGetTeamEventsErrorInvalidTimeRange? { - self as? DBXTeamLogGetTeamEventsErrorInvalidTimeRange - } - - @objc - public var asInvalidFilters: DBXTeamLogGetTeamEventsErrorInvalidFilters? { - self as? DBXTeamLogGetTeamEventsErrorInvalidFilters + public var asAnyone: DBXTeamLogMediaHubAddingPeoplePolicyAnyone? { + return self as? DBXTeamLogMediaHubAddingPeoplePolicyAnyone } @objc - public var asOther: DBXTeamLogGetTeamEventsErrorOther? { - self as? DBXTeamLogGetTeamEventsErrorOther + public var asTeamOnly: DBXTeamLogMediaHubAddingPeoplePolicyTeamOnly? { + return self as? DBXTeamLogMediaHubAddingPeoplePolicyTeamOnly } -} -/// No user found matching the provided account_id. -@objc -public class DBXTeamLogGetTeamEventsErrorAccountIdNotFound: DBXTeamLogGetTeamEventsError { @objc - public init() { - let swift = TeamLog.GetTeamEventsError.accountIdNotFound - super.init(swift: swift) + public var asOther: DBXTeamLogMediaHubAddingPeoplePolicyOther? { + return self as? DBXTeamLogMediaHubAddingPeoplePolicyOther } } -/// Invalid time range. +/// An unspecified error. @objc -public class DBXTeamLogGetTeamEventsErrorInvalidTimeRange: DBXTeamLogGetTeamEventsError { +public class DBXTeamLogMediaHubAddingPeoplePolicyAnyone: DBXTeamLogMediaHubAddingPeoplePolicy { @objc public init() { - let swift = TeamLog.GetTeamEventsError.invalidTimeRange + let swift = TeamLog.MediaHubAddingPeoplePolicy.anyone super.init(swift: swift) } } -/// Invalid filters. Do not specify both event_type and category parameters for the same call. +/// An unspecified error. @objc -public class DBXTeamLogGetTeamEventsErrorInvalidFilters: DBXTeamLogGetTeamEventsError { +public class DBXTeamLogMediaHubAddingPeoplePolicyTeamOnly: DBXTeamLogMediaHubAddingPeoplePolicy { @objc public init() { - let swift = TeamLog.GetTeamEventsError.invalidFilters + let swift = TeamLog.MediaHubAddingPeoplePolicy.teamOnly super.init(swift: swift) } } /// An unspecified error. @objc -public class DBXTeamLogGetTeamEventsErrorOther: DBXTeamLogGetTeamEventsError { +public class DBXTeamLogMediaHubAddingPeoplePolicyOther: DBXTeamLogMediaHubAddingPeoplePolicy { @objc public init() { - let swift = TeamLog.GetTeamEventsError.other + let swift = TeamLog.MediaHubAddingPeoplePolicy.other super.init(swift: swift) } } -/// Objective-C compatible GetTeamEventsResult struct -@objc -public class DBXTeamLogGetTeamEventsResult: NSObject { - /// List of events. Note that events are not guaranteed to be sorted by their timestamp value. - @objc - public var events: [DBXTeamLogTeamEvent] { swift.events.map { DBXTeamLogTeamEvent(swift: $0) } } - /// Pass the cursor into getEventsContinue to obtain additional events. The value of cursor may change for each - /// response from getEventsContinue, regardless of the value of hasMore; older cursor strings may expire. - /// Thus, callers should ensure that they update their cursor based on the latest value of cursor after each - /// call, and poll regularly if they wish to poll for new events. Callers should handle reset exceptions for - /// expired cursors. - @objc - public var cursor: String { swift.cursor } - /// Is true if there may be additional events that have not been returned yet. An additional call to - /// getEventsContinue can retrieve them. Note that hasMore may be true, even if events is empty. - @objc - public var hasMore: NSNumber { swift.hasMore as NSNumber } - - @objc - public init(events: [DBXTeamLogTeamEvent], cursor: String, hasMore: NSNumber) { - self.swift = TeamLog.GetTeamEventsResult(events: events.map(\.swift), cursor: cursor, hasMore: hasMore.boolValue) - } - - let swift: TeamLog.GetTeamEventsResult - - public init(swift: TeamLog.GetTeamEventsResult) { - self.swift = swift - } - - @objc - public override var description: String { swift.description } -} - -/// Enabled/disabled Google single sign-on for team. +/// Changed the policy for adding people to Replay content. @objc -public class DBXTeamLogGoogleSsoChangePolicyDetails: NSObject { - /// New Google single sign-on policy. - @objc - public var newValue: DBXTeamLogGoogleSsoPolicy { DBXTeamLogGoogleSsoPolicy(swift: swift.newValue) } - /// Previous Google single sign-on policy. Might be missing due to historical data gap. +public class DBXTeamLogMediaHubAddingPeoplePolicyChangedDetails: NSObject { + /// To. @objc - public var previousValue: DBXTeamLogGoogleSsoPolicy? { guard let swift = swift.previousValue else { return nil } - return DBXTeamLogGoogleSsoPolicy(swift: swift) - } + public var newValue: DBXTeamLogMediaHubAddingPeoplePolicy { DBXTeamLogMediaHubAddingPeoplePolicy(swift: swift.newValue) } + /// From. + @objc + public var previousValue: DBXTeamLogMediaHubAddingPeoplePolicy { DBXTeamLogMediaHubAddingPeoplePolicy(swift: swift.previousValue) } @objc - public init(newValue: DBXTeamLogGoogleSsoPolicy, previousValue: DBXTeamLogGoogleSsoPolicy?) { - self.swift = TeamLog.GoogleSsoChangePolicyDetails(newValue: newValue.swift, previousValue: previousValue?.swift) + public init(newValue: DBXTeamLogMediaHubAddingPeoplePolicy, previousValue: DBXTeamLogMediaHubAddingPeoplePolicy) { + self.swift = TeamLog.MediaHubAddingPeoplePolicyChangedDetails(newValue: newValue.swift, previousValue: previousValue.swift) } - let swift: TeamLog.GoogleSsoChangePolicyDetails + let swift: TeamLog.MediaHubAddingPeoplePolicyChangedDetails - public init(swift: TeamLog.GoogleSsoChangePolicyDetails) { + public init(swift: TeamLog.MediaHubAddingPeoplePolicyChangedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible GoogleSsoChangePolicyType struct +/// Objective-C compatible MediaHubAddingPeoplePolicyChangedType struct @objc -public class DBXTeamLogGoogleSsoChangePolicyType: NSObject { +public class DBXTeamLogMediaHubAddingPeoplePolicyChangedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.GoogleSsoChangePolicyType(description_: description_) + self.swift = TeamLog.MediaHubAddingPeoplePolicyChangedType(description_: description_) } - let swift: TeamLog.GoogleSsoChangePolicyType + let swift: TeamLog.MediaHubAddingPeoplePolicyChangedType - public init(swift: TeamLog.GoogleSsoChangePolicyType) { + public init(swift: TeamLog.MediaHubAddingPeoplePolicyChangedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Google SSO policy +/// Policy for deciding whether Media Hub content can be downloaded @objc -public class DBXTeamLogGoogleSsoPolicy: NSObject { - let swift: TeamLog.GoogleSsoPolicy +public class DBXTeamLogMediaHubDownloadPolicy: NSObject { + let swift: TeamLog.MediaHubDownloadPolicy - public init(swift: TeamLog.GoogleSsoPolicy) { + public init(swift: TeamLog.MediaHubDownloadPolicy) { self.swift = swift } - public static func factory(swift: TeamLog.GoogleSsoPolicy) -> DBXTeamLogGoogleSsoPolicy { + public static func factory(swift: TeamLog.MediaHubDownloadPolicy) -> DBXTeamLogMediaHubDownloadPolicy { switch swift { case .disabled: - return DBXTeamLogGoogleSsoPolicyDisabled() + return DBXTeamLogMediaHubDownloadPolicyDisabled() case .enabled: - return DBXTeamLogGoogleSsoPolicyEnabled() + return DBXTeamLogMediaHubDownloadPolicyEnabled() case .other: - return DBXTeamLogGoogleSsoPolicyOther() + return DBXTeamLogMediaHubDownloadPolicyOther() } } @@ -43311,1695 +58179,1668 @@ public class DBXTeamLogGoogleSsoPolicy: NSObject { public override var description: String { swift.description } @objc - public var asDisabled: DBXTeamLogGoogleSsoPolicyDisabled? { - self as? DBXTeamLogGoogleSsoPolicyDisabled + public var asDisabled: DBXTeamLogMediaHubDownloadPolicyDisabled? { + return self as? DBXTeamLogMediaHubDownloadPolicyDisabled } @objc - public var asEnabled: DBXTeamLogGoogleSsoPolicyEnabled? { - self as? DBXTeamLogGoogleSsoPolicyEnabled + public var asEnabled: DBXTeamLogMediaHubDownloadPolicyEnabled? { + return self as? DBXTeamLogMediaHubDownloadPolicyEnabled } @objc - public var asOther: DBXTeamLogGoogleSsoPolicyOther? { - self as? DBXTeamLogGoogleSsoPolicyOther + public var asOther: DBXTeamLogMediaHubDownloadPolicyOther? { + return self as? DBXTeamLogMediaHubDownloadPolicyOther } } /// An unspecified error. @objc -public class DBXTeamLogGoogleSsoPolicyDisabled: DBXTeamLogGoogleSsoPolicy { +public class DBXTeamLogMediaHubDownloadPolicyDisabled: DBXTeamLogMediaHubDownloadPolicy { @objc public init() { - let swift = TeamLog.GoogleSsoPolicy.disabled + let swift = TeamLog.MediaHubDownloadPolicy.disabled super.init(swift: swift) } } /// An unspecified error. @objc -public class DBXTeamLogGoogleSsoPolicyEnabled: DBXTeamLogGoogleSsoPolicy { +public class DBXTeamLogMediaHubDownloadPolicyEnabled: DBXTeamLogMediaHubDownloadPolicy { @objc public init() { - let swift = TeamLog.GoogleSsoPolicy.enabled + let swift = TeamLog.MediaHubDownloadPolicy.enabled super.init(swift: swift) } } /// An unspecified error. @objc -public class DBXTeamLogGoogleSsoPolicyOther: DBXTeamLogGoogleSsoPolicy { +public class DBXTeamLogMediaHubDownloadPolicyOther: DBXTeamLogMediaHubDownloadPolicy { @objc public init() { - let swift = TeamLog.GoogleSsoPolicy.other + let swift = TeamLog.MediaHubDownloadPolicy.other super.init(swift: swift) } } -/// Couldn't add a folder to a policy. +/// Changed the policy for downloading Replay content. @objc -public class DBXTeamLogGovernancePolicyAddFolderFailedDetails: NSObject { - /// Policy ID. - @objc - public var governancePolicyId: String { swift.governancePolicyId } - /// Policy name. - @objc - public var name: String { swift.name } - /// Policy type. - @objc - public var policyType: DBXTeamLogPolicyType? { guard let swift = swift.policyType else { return nil } - return DBXTeamLogPolicyType(swift: swift) - } - - /// Folder. +public class DBXTeamLogMediaHubDownloadPolicyChangedDetails: NSObject { + /// To. @objc - public var folder: String { swift.folder } - /// Reason. + public var newValue: DBXTeamLogMediaHubDownloadPolicy { DBXTeamLogMediaHubDownloadPolicy(swift: swift.newValue) } + /// From. @objc - public var reason: String? { swift.reason } + public var previousValue: DBXTeamLogMediaHubDownloadPolicy { DBXTeamLogMediaHubDownloadPolicy(swift: swift.previousValue) } @objc - public init(governancePolicyId: String, name: String, folder: String, policyType: DBXTeamLogPolicyType?, reason: String?) { - self.swift = TeamLog.GovernancePolicyAddFolderFailedDetails( - governancePolicyId: governancePolicyId, - name: name, - folder: folder, - policyType: policyType?.swift, - reason: reason - ) + public init(newValue: DBXTeamLogMediaHubDownloadPolicy, previousValue: DBXTeamLogMediaHubDownloadPolicy) { + self.swift = TeamLog.MediaHubDownloadPolicyChangedDetails(newValue: newValue.swift, previousValue: previousValue.swift) } - let swift: TeamLog.GovernancePolicyAddFolderFailedDetails + let swift: TeamLog.MediaHubDownloadPolicyChangedDetails - public init(swift: TeamLog.GovernancePolicyAddFolderFailedDetails) { + public init(swift: TeamLog.MediaHubDownloadPolicyChangedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible GovernancePolicyAddFolderFailedType struct +/// Objective-C compatible MediaHubDownloadPolicyChangedType struct @objc -public class DBXTeamLogGovernancePolicyAddFolderFailedType: NSObject { +public class DBXTeamLogMediaHubDownloadPolicyChangedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.GovernancePolicyAddFolderFailedType(description_: description_) + self.swift = TeamLog.MediaHubDownloadPolicyChangedType(description_: description_) } - let swift: TeamLog.GovernancePolicyAddFolderFailedType + let swift: TeamLog.MediaHubDownloadPolicyChangedType - public init(swift: TeamLog.GovernancePolicyAddFolderFailedType) { + public init(swift: TeamLog.MediaHubDownloadPolicyChangedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Added folders to policy. +/// Downloaded files in Replay. @objc -public class DBXTeamLogGovernancePolicyAddFoldersDetails: NSObject { - /// Policy ID. - @objc - public var governancePolicyId: String { swift.governancePolicyId } - /// Policy name. - @objc - public var name: String { swift.name } - /// Policy type. - @objc - public var policyType: DBXTeamLogPolicyType? { guard let swift = swift.policyType else { return nil } - return DBXTeamLogPolicyType(swift: swift) - } - - /// Folders. - @objc - public var folders: [String]? { swift.folders } - - @objc - public init(governancePolicyId: String, name: String, policyType: DBXTeamLogPolicyType?, folders: [String]?) { - self.swift = TeamLog.GovernancePolicyAddFoldersDetails( - governancePolicyId: governancePolicyId, - name: name, - policyType: policyType?.swift, - folders: folders - ) - } +public class DBXTeamLogMediaHubFileDownloadedDetails: NSObject { - let swift: TeamLog.GovernancePolicyAddFoldersDetails + let swift: TeamLog.MediaHubFileDownloadedDetails - public init(swift: TeamLog.GovernancePolicyAddFoldersDetails) { + public init(swift: TeamLog.MediaHubFileDownloadedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible GovernancePolicyAddFoldersType struct +/// Objective-C compatible MediaHubFileDownloadedType struct @objc -public class DBXTeamLogGovernancePolicyAddFoldersType: NSObject { +public class DBXTeamLogMediaHubFileDownloadedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.GovernancePolicyAddFoldersType(description_: description_) + self.swift = TeamLog.MediaHubFileDownloadedType(description_: description_) } - let swift: TeamLog.GovernancePolicyAddFoldersType + let swift: TeamLog.MediaHubFileDownloadedType - public init(swift: TeamLog.GovernancePolicyAddFoldersType) { + public init(swift: TeamLog.MediaHubFileDownloadedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Content disposed. +/// Policy for deciding who Media Hub content can be shared with through links @objc -public class DBXTeamLogGovernancePolicyContentDisposedDetails: NSObject { - /// Policy ID. - @objc - public var governancePolicyId: String { swift.governancePolicyId } - /// Policy name. - @objc - public var name: String { swift.name } - /// Policy type. - @objc - public var policyType: DBXTeamLogPolicyType? { guard let swift = swift.policyType else { return nil } - return DBXTeamLogPolicyType(swift: swift) +public class DBXTeamLogMediaHubLinkSharingPolicy: NSObject { + let swift: TeamLog.MediaHubLinkSharingPolicy + + public init(swift: TeamLog.MediaHubLinkSharingPolicy) { + self.swift = swift + } + + public static func factory(swift: TeamLog.MediaHubLinkSharingPolicy) -> DBXTeamLogMediaHubLinkSharingPolicy { + switch swift { + case .noOne: + return DBXTeamLogMediaHubLinkSharingPolicyNoOne() + case .public_: + return DBXTeamLogMediaHubLinkSharingPolicyPublic_() + case .teamOnly: + return DBXTeamLogMediaHubLinkSharingPolicyTeamOnly() + case .other: + return DBXTeamLogMediaHubLinkSharingPolicyOther() + } } - /// Disposition type. @objc - public var dispositionType: DBXTeamLogDispositionActionType { DBXTeamLogDispositionActionType(swift: swift.dispositionType) } + public override var description: String { swift.description } @objc - public init(governancePolicyId: String, name: String, dispositionType: DBXTeamLogDispositionActionType, policyType: DBXTeamLogPolicyType?) { - self.swift = TeamLog.GovernancePolicyContentDisposedDetails( - governancePolicyId: governancePolicyId, - name: name, - dispositionType: dispositionType.swift, - policyType: policyType?.swift - ) + public var asNoOne: DBXTeamLogMediaHubLinkSharingPolicyNoOne? { + return self as? DBXTeamLogMediaHubLinkSharingPolicyNoOne } - let swift: TeamLog.GovernancePolicyContentDisposedDetails + @objc + public var asPublic_: DBXTeamLogMediaHubLinkSharingPolicyPublic_? { + return self as? DBXTeamLogMediaHubLinkSharingPolicyPublic_ + } - public init(swift: TeamLog.GovernancePolicyContentDisposedDetails) { - self.swift = swift + @objc + public var asTeamOnly: DBXTeamLogMediaHubLinkSharingPolicyTeamOnly? { + return self as? DBXTeamLogMediaHubLinkSharingPolicyTeamOnly } @objc - public override var description: String { swift.description } + public var asOther: DBXTeamLogMediaHubLinkSharingPolicyOther? { + return self as? DBXTeamLogMediaHubLinkSharingPolicyOther + } } -/// Objective-C compatible GovernancePolicyContentDisposedType struct +/// An unspecified error. @objc -public class DBXTeamLogGovernancePolicyContentDisposedType: NSObject { - /// (no description) - @objc - public var description_: String { swift.description_ } - +public class DBXTeamLogMediaHubLinkSharingPolicyNoOne: DBXTeamLogMediaHubLinkSharingPolicy { @objc - public init(description_: String) { - self.swift = TeamLog.GovernancePolicyContentDisposedType(description_: description_) + public init() { + let swift = TeamLog.MediaHubLinkSharingPolicy.noOne + super.init(swift: swift) } +} - let swift: TeamLog.GovernancePolicyContentDisposedType - - public init(swift: TeamLog.GovernancePolicyContentDisposedType) { - self.swift = swift +/// An unspecified error. +@objc +public class DBXTeamLogMediaHubLinkSharingPolicyPublic_: DBXTeamLogMediaHubLinkSharingPolicy { + @objc + public init() { + let swift = TeamLog.MediaHubLinkSharingPolicy.public_ + super.init(swift: swift) } +} +/// An unspecified error. +@objc +public class DBXTeamLogMediaHubLinkSharingPolicyTeamOnly: DBXTeamLogMediaHubLinkSharingPolicy { @objc - public override var description: String { swift.description } + public init() { + let swift = TeamLog.MediaHubLinkSharingPolicy.teamOnly + super.init(swift: swift) + } } -/// Activated a new policy. +/// An unspecified error. @objc -public class DBXTeamLogGovernancePolicyCreateDetails: NSObject { - /// Policy ID. - @objc - public var governancePolicyId: String { swift.governancePolicyId } - /// Policy name. +public class DBXTeamLogMediaHubLinkSharingPolicyOther: DBXTeamLogMediaHubLinkSharingPolicy { @objc - public var name: String { swift.name } - /// Policy type. - @objc - public var policyType: DBXTeamLogPolicyType? { guard let swift = swift.policyType else { return nil } - return DBXTeamLogPolicyType(swift: swift) + public init() { + let swift = TeamLog.MediaHubLinkSharingPolicy.other + super.init(swift: swift) } +} - /// Duration in days. +/// Changed the policy for sharing Replay content. +@objc +public class DBXTeamLogMediaHubLinkSharingPolicyChangedDetails: NSObject { + /// To. @objc - public var duration: DBXTeamLogDurationLogInfo { DBXTeamLogDurationLogInfo(swift: swift.duration) } - /// Folders. + public var newValue: DBXTeamLogMediaHubLinkSharingPolicy { DBXTeamLogMediaHubLinkSharingPolicy(swift: swift.newValue) } + /// From. @objc - public var folders: [String]? { swift.folders } + public var previousValue: DBXTeamLogMediaHubLinkSharingPolicy { DBXTeamLogMediaHubLinkSharingPolicy(swift: swift.previousValue) } @objc - public init(governancePolicyId: String, name: String, duration: DBXTeamLogDurationLogInfo, policyType: DBXTeamLogPolicyType?, folders: [String]?) { - self.swift = TeamLog.GovernancePolicyCreateDetails( - governancePolicyId: governancePolicyId, - name: name, - duration: duration.swift, - policyType: policyType?.swift, - folders: folders - ) + public init(newValue: DBXTeamLogMediaHubLinkSharingPolicy, previousValue: DBXTeamLogMediaHubLinkSharingPolicy) { + self.swift = TeamLog.MediaHubLinkSharingPolicyChangedDetails(newValue: newValue.swift, previousValue: previousValue.swift) } - let swift: TeamLog.GovernancePolicyCreateDetails + let swift: TeamLog.MediaHubLinkSharingPolicyChangedDetails - public init(swift: TeamLog.GovernancePolicyCreateDetails) { + public init(swift: TeamLog.MediaHubLinkSharingPolicyChangedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible GovernancePolicyCreateType struct +/// Objective-C compatible MediaHubLinkSharingPolicyChangedType struct @objc -public class DBXTeamLogGovernancePolicyCreateType: NSObject { +public class DBXTeamLogMediaHubLinkSharingPolicyChangedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.GovernancePolicyCreateType(description_: description_) + self.swift = TeamLog.MediaHubLinkSharingPolicyChangedType(description_: description_) } - let swift: TeamLog.GovernancePolicyCreateType + let swift: TeamLog.MediaHubLinkSharingPolicyChangedType - public init(swift: TeamLog.GovernancePolicyCreateType) { + public init(swift: TeamLog.MediaHubLinkSharingPolicyChangedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Deleted a policy. +/// Replay project @objc -public class DBXTeamLogGovernancePolicyDeleteDetails: NSObject { - /// Policy ID. +public class DBXTeamLogMediaHubProjectLogInfo: NSObject { + /// Replay project name. @objc - public var governancePolicyId: String { swift.governancePolicyId } - /// Policy name. - @objc - public var name: String { swift.name } - /// Policy type. + public var projectName: String { swift.projectName } + /// Replay project ID. @objc - public var policyType: DBXTeamLogPolicyType? { guard let swift = swift.policyType else { return nil } - return DBXTeamLogPolicyType(swift: swift) - } + public var projectId: String? { swift.projectId } @objc - public init(governancePolicyId: String, name: String, policyType: DBXTeamLogPolicyType?) { - self.swift = TeamLog.GovernancePolicyDeleteDetails(governancePolicyId: governancePolicyId, name: name, policyType: policyType?.swift) + public init(projectName: String, projectId: String?) { + self.swift = TeamLog.MediaHubProjectLogInfo(projectName: projectName, projectId: projectId) } - let swift: TeamLog.GovernancePolicyDeleteDetails + let swift: TeamLog.MediaHubProjectLogInfo - public init(swift: TeamLog.GovernancePolicyDeleteDetails) { + public init(swift: TeamLog.MediaHubProjectLogInfo) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible GovernancePolicyDeleteType struct +/// Media Hub project role @objc -public class DBXTeamLogGovernancePolicyDeleteType: NSObject { - /// (no description) - @objc - public var description_: String { swift.description_ } +public class DBXTeamLogMediaHubProjectRole: NSObject { + let swift: TeamLog.MediaHubProjectRole - @objc - public init(description_: String) { - self.swift = TeamLog.GovernancePolicyDeleteType(description_: description_) + public init(swift: TeamLog.MediaHubProjectRole) { + self.swift = swift } - let swift: TeamLog.GovernancePolicyDeleteType - - public init(swift: TeamLog.GovernancePolicyDeleteType) { - self.swift = swift + public static func factory(swift: TeamLog.MediaHubProjectRole) -> DBXTeamLogMediaHubProjectRole { + switch swift { + case .editor: + return DBXTeamLogMediaHubProjectRoleEditor() + case .owner: + return DBXTeamLogMediaHubProjectRoleOwner() + case .reviewer: + return DBXTeamLogMediaHubProjectRoleReviewer() + case .other: + return DBXTeamLogMediaHubProjectRoleOther() + } } @objc public override var description: String { swift.description } -} -/// Edited policy. -@objc -public class DBXTeamLogGovernancePolicyEditDetailsDetails: NSObject { - /// Policy ID. - @objc - public var governancePolicyId: String { swift.governancePolicyId } - /// Policy name. @objc - public var name: String { swift.name } - /// Policy type. - @objc - public var policyType: DBXTeamLogPolicyType? { guard let swift = swift.policyType else { return nil } - return DBXTeamLogPolicyType(swift: swift) + public var asEditor: DBXTeamLogMediaHubProjectRoleEditor? { + return self as? DBXTeamLogMediaHubProjectRoleEditor } - /// Attribute. - @objc - public var attribute: String { swift.attribute } - /// From. - @objc - public var previousValue: String { swift.previousValue } - /// To. - @objc - public var newValue: String { swift.newValue } - @objc - public init(governancePolicyId: String, name: String, attribute: String, previousValue: String, newValue: String, policyType: DBXTeamLogPolicyType?) { - self.swift = TeamLog.GovernancePolicyEditDetailsDetails( - governancePolicyId: governancePolicyId, - name: name, - attribute: attribute, - previousValue: previousValue, - newValue: newValue, - policyType: policyType?.swift - ) + public var asOwner: DBXTeamLogMediaHubProjectRoleOwner? { + return self as? DBXTeamLogMediaHubProjectRoleOwner } - let swift: TeamLog.GovernancePolicyEditDetailsDetails - - public init(swift: TeamLog.GovernancePolicyEditDetailsDetails) { - self.swift = swift + @objc + public var asReviewer: DBXTeamLogMediaHubProjectRoleReviewer? { + return self as? DBXTeamLogMediaHubProjectRoleReviewer } @objc - public override var description: String { swift.description } + public var asOther: DBXTeamLogMediaHubProjectRoleOther? { + return self as? DBXTeamLogMediaHubProjectRoleOther + } } -/// Objective-C compatible GovernancePolicyEditDetailsType struct +/// An unspecified error. @objc -public class DBXTeamLogGovernancePolicyEditDetailsType: NSObject { - /// (no description) - @objc - public var description_: String { swift.description_ } - +public class DBXTeamLogMediaHubProjectRoleEditor: DBXTeamLogMediaHubProjectRole { @objc - public init(description_: String) { - self.swift = TeamLog.GovernancePolicyEditDetailsType(description_: description_) + public init() { + let swift = TeamLog.MediaHubProjectRole.editor + super.init(swift: swift) } +} - let swift: TeamLog.GovernancePolicyEditDetailsType - - public init(swift: TeamLog.GovernancePolicyEditDetailsType) { - self.swift = swift +/// An unspecified error. +@objc +public class DBXTeamLogMediaHubProjectRoleOwner: DBXTeamLogMediaHubProjectRole { + @objc + public init() { + let swift = TeamLog.MediaHubProjectRole.owner + super.init(swift: swift) } +} +/// An unspecified error. +@objc +public class DBXTeamLogMediaHubProjectRoleReviewer: DBXTeamLogMediaHubProjectRole { @objc - public override var description: String { swift.description } + public init() { + let swift = TeamLog.MediaHubProjectRole.reviewer + super.init(swift: swift) + } } -/// Changed policy duration. +/// An unspecified error. @objc -public class DBXTeamLogGovernancePolicyEditDurationDetails: NSObject { - /// Policy ID. - @objc - public var governancePolicyId: String { swift.governancePolicyId } - /// Policy name. +public class DBXTeamLogMediaHubProjectRoleOther: DBXTeamLogMediaHubProjectRole { @objc - public var name: String { swift.name } - /// Policy type. - @objc - public var policyType: DBXTeamLogPolicyType? { guard let swift = swift.policyType else { return nil } - return DBXTeamLogPolicyType(swift: swift) + public init() { + let swift = TeamLog.MediaHubProjectRole.other + super.init(swift: swift) } +} - /// From. - @objc - public var previousValue: DBXTeamLogDurationLogInfo { DBXTeamLogDurationLogInfo(swift: swift.previousValue) } - /// To. +/// Added member to Replay project. +@objc +public class DBXTeamLogMediaHubProjectTeamAddDetails: NSObject { + /// Replay project. @objc - public var newValue: DBXTeamLogDurationLogInfo { DBXTeamLogDurationLogInfo(swift: swift.newValue) } + public var project: DBXTeamLogMediaHubProjectLogInfo? { guard let swift = swift.project else { return nil }; return DBXTeamLogMediaHubProjectLogInfo(swift: swift) } @objc - public init( - governancePolicyId: String, - name: String, - previousValue: DBXTeamLogDurationLogInfo, - newValue: DBXTeamLogDurationLogInfo, - policyType: DBXTeamLogPolicyType? - ) { - self.swift = TeamLog.GovernancePolicyEditDurationDetails( - governancePolicyId: governancePolicyId, - name: name, - previousValue: previousValue.swift, - newValue: newValue.swift, - policyType: policyType?.swift - ) + public init(project: DBXTeamLogMediaHubProjectLogInfo?) { + self.swift = TeamLog.MediaHubProjectTeamAddDetails(project: project?.swift) } - let swift: TeamLog.GovernancePolicyEditDurationDetails + let swift: TeamLog.MediaHubProjectTeamAddDetails - public init(swift: TeamLog.GovernancePolicyEditDurationDetails) { + public init(swift: TeamLog.MediaHubProjectTeamAddDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible GovernancePolicyEditDurationType struct +/// Objective-C compatible MediaHubProjectTeamAddType struct @objc -public class DBXTeamLogGovernancePolicyEditDurationType: NSObject { +public class DBXTeamLogMediaHubProjectTeamAddType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.GovernancePolicyEditDurationType(description_: description_) + self.swift = TeamLog.MediaHubProjectTeamAddType(description_: description_) } - let swift: TeamLog.GovernancePolicyEditDurationType + let swift: TeamLog.MediaHubProjectTeamAddType - public init(swift: TeamLog.GovernancePolicyEditDurationType) { + public init(swift: TeamLog.MediaHubProjectTeamAddType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Created a policy download. +/// Removed member from Replay project. @objc -public class DBXTeamLogGovernancePolicyExportCreatedDetails: NSObject { - /// Policy ID. - @objc - public var governancePolicyId: String { swift.governancePolicyId } - /// Policy name. - @objc - public var name: String { swift.name } - /// Policy type. - @objc - public var policyType: DBXTeamLogPolicyType? { guard let swift = swift.policyType else { return nil } - return DBXTeamLogPolicyType(swift: swift) - } - - /// Export name. +public class DBXTeamLogMediaHubProjectTeamDeleteDetails: NSObject { + /// Replay project. @objc - public var exportName: String { swift.exportName } + public var project: DBXTeamLogMediaHubProjectLogInfo? { guard let swift = swift.project else { return nil }; return DBXTeamLogMediaHubProjectLogInfo(swift: swift) } @objc - public init(governancePolicyId: String, name: String, exportName: String, policyType: DBXTeamLogPolicyType?) { - self.swift = TeamLog.GovernancePolicyExportCreatedDetails( - governancePolicyId: governancePolicyId, - name: name, - exportName: exportName, - policyType: policyType?.swift - ) + public init(project: DBXTeamLogMediaHubProjectLogInfo?) { + self.swift = TeamLog.MediaHubProjectTeamDeleteDetails(project: project?.swift) } - let swift: TeamLog.GovernancePolicyExportCreatedDetails + let swift: TeamLog.MediaHubProjectTeamDeleteDetails - public init(swift: TeamLog.GovernancePolicyExportCreatedDetails) { + public init(swift: TeamLog.MediaHubProjectTeamDeleteDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible GovernancePolicyExportCreatedType struct +/// Objective-C compatible MediaHubProjectTeamDeleteType struct @objc -public class DBXTeamLogGovernancePolicyExportCreatedType: NSObject { +public class DBXTeamLogMediaHubProjectTeamDeleteType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.GovernancePolicyExportCreatedType(description_: description_) + self.swift = TeamLog.MediaHubProjectTeamDeleteType(description_: description_) } - let swift: TeamLog.GovernancePolicyExportCreatedType + let swift: TeamLog.MediaHubProjectTeamDeleteType - public init(swift: TeamLog.GovernancePolicyExportCreatedType) { + public init(swift: TeamLog.MediaHubProjectTeamDeleteType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Removed a policy download. +/// Changed member role in Replay project. @objc -public class DBXTeamLogGovernancePolicyExportRemovedDetails: NSObject { - /// Policy ID. +public class DBXTeamLogMediaHubProjectTeamRoleChangedDetails: NSObject { + /// Previous Media Hub project role. @objc - public var governancePolicyId: String { swift.governancePolicyId } - /// Policy name. - @objc - public var name: String { swift.name } - /// Policy type. + public var previousRole: DBXTeamLogMediaHubProjectRole { DBXTeamLogMediaHubProjectRole(swift: swift.previousRole) } + /// New Media Hub project role. @objc - public var policyType: DBXTeamLogPolicyType? { guard let swift = swift.policyType else { return nil } - return DBXTeamLogPolicyType(swift: swift) - } - - /// Export name. + public var newRole: DBXTeamLogMediaHubProjectRole { DBXTeamLogMediaHubProjectRole(swift: swift.newRole) } + /// Replay project. @objc - public var exportName: String { swift.exportName } + public var project: DBXTeamLogMediaHubProjectLogInfo? { guard let swift = swift.project else { return nil }; return DBXTeamLogMediaHubProjectLogInfo(swift: swift) } @objc - public init(governancePolicyId: String, name: String, exportName: String, policyType: DBXTeamLogPolicyType?) { - self.swift = TeamLog.GovernancePolicyExportRemovedDetails( - governancePolicyId: governancePolicyId, - name: name, - exportName: exportName, - policyType: policyType?.swift - ) + public init(previousRole: DBXTeamLogMediaHubProjectRole, newRole: DBXTeamLogMediaHubProjectRole, project: DBXTeamLogMediaHubProjectLogInfo?) { + self.swift = TeamLog.MediaHubProjectTeamRoleChangedDetails(previousRole: previousRole.swift, newRole: newRole.swift, project: project?.swift) } - let swift: TeamLog.GovernancePolicyExportRemovedDetails + let swift: TeamLog.MediaHubProjectTeamRoleChangedDetails - public init(swift: TeamLog.GovernancePolicyExportRemovedDetails) { + public init(swift: TeamLog.MediaHubProjectTeamRoleChangedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible GovernancePolicyExportRemovedType struct +/// Objective-C compatible MediaHubProjectTeamRoleChangedType struct @objc -public class DBXTeamLogGovernancePolicyExportRemovedType: NSObject { +public class DBXTeamLogMediaHubProjectTeamRoleChangedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.GovernancePolicyExportRemovedType(description_: description_) + self.swift = TeamLog.MediaHubProjectTeamRoleChangedType(description_: description_) } - let swift: TeamLog.GovernancePolicyExportRemovedType + let swift: TeamLog.MediaHubProjectTeamRoleChangedType - public init(swift: TeamLog.GovernancePolicyExportRemovedType) { + public init(swift: TeamLog.MediaHubProjectTeamRoleChangedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Removed folders from policy. +/// Media Hub shared link audience @objc -public class DBXTeamLogGovernancePolicyRemoveFoldersDetails: NSObject { - /// Policy ID. - @objc - public var governancePolicyId: String { swift.governancePolicyId } - /// Policy name. - @objc - public var name: String { swift.name } - /// Policy type. - @objc - public var policyType: DBXTeamLogPolicyType? { guard let swift = swift.policyType else { return nil } - return DBXTeamLogPolicyType(swift: swift) +public class DBXTeamLogMediaHubSharedLinkAudience: NSObject { + let swift: TeamLog.MediaHubSharedLinkAudience + + public init(swift: TeamLog.MediaHubSharedLinkAudience) { + self.swift = swift + } + + public static func factory(swift: TeamLog.MediaHubSharedLinkAudience) -> DBXTeamLogMediaHubSharedLinkAudience { + switch swift { + case .noOne: + return DBXTeamLogMediaHubSharedLinkAudienceNoOne() + case .public_: + return DBXTeamLogMediaHubSharedLinkAudiencePublic_() + case .teamOnly: + return DBXTeamLogMediaHubSharedLinkAudienceTeamOnly() + case .other: + return DBXTeamLogMediaHubSharedLinkAudienceOther() + } } - /// Folders. - @objc - public var folders: [String]? { swift.folders } - /// Reason. @objc - public var reason: String? { swift.reason } + public override var description: String { swift.description } @objc - public init(governancePolicyId: String, name: String, policyType: DBXTeamLogPolicyType?, folders: [String]?, reason: String?) { - self.swift = TeamLog.GovernancePolicyRemoveFoldersDetails( - governancePolicyId: governancePolicyId, - name: name, - policyType: policyType?.swift, - folders: folders, - reason: reason - ) + public var asNoOne: DBXTeamLogMediaHubSharedLinkAudienceNoOne? { + return self as? DBXTeamLogMediaHubSharedLinkAudienceNoOne } - let swift: TeamLog.GovernancePolicyRemoveFoldersDetails + @objc + public var asPublic_: DBXTeamLogMediaHubSharedLinkAudiencePublic_? { + return self as? DBXTeamLogMediaHubSharedLinkAudiencePublic_ + } - public init(swift: TeamLog.GovernancePolicyRemoveFoldersDetails) { - self.swift = swift + @objc + public var asTeamOnly: DBXTeamLogMediaHubSharedLinkAudienceTeamOnly? { + return self as? DBXTeamLogMediaHubSharedLinkAudienceTeamOnly } @objc - public override var description: String { swift.description } + public var asOther: DBXTeamLogMediaHubSharedLinkAudienceOther? { + return self as? DBXTeamLogMediaHubSharedLinkAudienceOther + } } -/// Objective-C compatible GovernancePolicyRemoveFoldersType struct +/// An unspecified error. @objc -public class DBXTeamLogGovernancePolicyRemoveFoldersType: NSObject { - /// (no description) +public class DBXTeamLogMediaHubSharedLinkAudienceNoOne: DBXTeamLogMediaHubSharedLinkAudience { @objc - public var description_: String { swift.description_ } + public init() { + let swift = TeamLog.MediaHubSharedLinkAudience.noOne + super.init(swift: swift) + } +} +/// An unspecified error. +@objc +public class DBXTeamLogMediaHubSharedLinkAudiencePublic_: DBXTeamLogMediaHubSharedLinkAudience { @objc - public init(description_: String) { - self.swift = TeamLog.GovernancePolicyRemoveFoldersType(description_: description_) + public init() { + let swift = TeamLog.MediaHubSharedLinkAudience.public_ + super.init(swift: swift) } +} - let swift: TeamLog.GovernancePolicyRemoveFoldersType - - public init(swift: TeamLog.GovernancePolicyRemoveFoldersType) { - self.swift = swift +/// An unspecified error. +@objc +public class DBXTeamLogMediaHubSharedLinkAudienceTeamOnly: DBXTeamLogMediaHubSharedLinkAudience { + @objc + public init() { + let swift = TeamLog.MediaHubSharedLinkAudience.teamOnly + super.init(swift: swift) } +} +/// An unspecified error. +@objc +public class DBXTeamLogMediaHubSharedLinkAudienceOther: DBXTeamLogMediaHubSharedLinkAudience { @objc - public override var description: String { swift.description } + public init() { + let swift = TeamLog.MediaHubSharedLinkAudience.other + super.init(swift: swift) + } } -/// Created a summary report for a policy. +/// Changed Replay shared link audience. @objc -public class DBXTeamLogGovernancePolicyReportCreatedDetails: NSObject { - /// Policy ID. +public class DBXTeamLogMediaHubSharedLinkAudienceChangedDetails: NSObject { + /// Media Hub shared link target type. @objc - public var governancePolicyId: String { swift.governancePolicyId } - /// Policy name. + public var targetType: DBXTeamLogMediaHubSharedLinkTargetType { DBXTeamLogMediaHubSharedLinkTargetType(swift: swift.targetType) } + /// Previous Media Hub shared link audience. @objc - public var name: String { swift.name } - /// Policy type. + public var previousValue: DBXTeamLogMediaHubSharedLinkAudience { DBXTeamLogMediaHubSharedLinkAudience(swift: swift.previousValue) } + /// New Media Hub shared link audience. @objc - public var policyType: DBXTeamLogPolicyType? { guard let swift = swift.policyType else { return nil } - return DBXTeamLogPolicyType(swift: swift) - } + public var newValue: DBXTeamLogMediaHubSharedLinkAudience { DBXTeamLogMediaHubSharedLinkAudience(swift: swift.newValue) } + /// Replay project. + @objc + public var project: DBXTeamLogMediaHubProjectLogInfo? { guard let swift = swift.project else { return nil }; return DBXTeamLogMediaHubProjectLogInfo(swift: swift) } @objc - public init(governancePolicyId: String, name: String, policyType: DBXTeamLogPolicyType?) { - self.swift = TeamLog.GovernancePolicyReportCreatedDetails(governancePolicyId: governancePolicyId, name: name, policyType: policyType?.swift) + public init(targetType: DBXTeamLogMediaHubSharedLinkTargetType, previousValue: DBXTeamLogMediaHubSharedLinkAudience, newValue: DBXTeamLogMediaHubSharedLinkAudience, project: DBXTeamLogMediaHubProjectLogInfo?) { + self.swift = TeamLog.MediaHubSharedLinkAudienceChangedDetails(targetType: targetType.swift, previousValue: previousValue.swift, newValue: newValue.swift, project: project?.swift) } - let swift: TeamLog.GovernancePolicyReportCreatedDetails + let swift: TeamLog.MediaHubSharedLinkAudienceChangedDetails - public init(swift: TeamLog.GovernancePolicyReportCreatedDetails) { + public init(swift: TeamLog.MediaHubSharedLinkAudienceChangedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible GovernancePolicyReportCreatedType struct +/// Objective-C compatible MediaHubSharedLinkAudienceChangedType struct @objc -public class DBXTeamLogGovernancePolicyReportCreatedType: NSObject { +public class DBXTeamLogMediaHubSharedLinkAudienceChangedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.GovernancePolicyReportCreatedType(description_: description_) + self.swift = TeamLog.MediaHubSharedLinkAudienceChangedType(description_: description_) } - let swift: TeamLog.GovernancePolicyReportCreatedType + let swift: TeamLog.MediaHubSharedLinkAudienceChangedType - public init(swift: TeamLog.GovernancePolicyReportCreatedType) { + public init(swift: TeamLog.MediaHubSharedLinkAudienceChangedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Downloaded content from a policy. +/// Created Replay shared link. @objc -public class DBXTeamLogGovernancePolicyZipPartDownloadedDetails: NSObject { - /// Policy ID. - @objc - public var governancePolicyId: String { swift.governancePolicyId } - /// Policy name. - @objc - public var name: String { swift.name } - /// Policy type. +public class DBXTeamLogMediaHubSharedLinkCreatedDetails: NSObject { + /// Media Hub shared link target type. @objc - public var policyType: DBXTeamLogPolicyType? { guard let swift = swift.policyType else { return nil } - return DBXTeamLogPolicyType(swift: swift) - } - - /// Export name. + public var targetType: DBXTeamLogMediaHubSharedLinkTargetType { DBXTeamLogMediaHubSharedLinkTargetType(swift: swift.targetType) } + /// Media Hub shared link audience. @objc - public var exportName: String { swift.exportName } - /// Part. + public var audience: DBXTeamLogMediaHubSharedLinkAudience { DBXTeamLogMediaHubSharedLinkAudience(swift: swift.audience) } + /// Replay project. @objc - public var part: String? { swift.part } + public var project: DBXTeamLogMediaHubProjectLogInfo? { guard let swift = swift.project else { return nil }; return DBXTeamLogMediaHubProjectLogInfo(swift: swift) } @objc - public init(governancePolicyId: String, name: String, exportName: String, policyType: DBXTeamLogPolicyType?, part: String?) { - self.swift = TeamLog.GovernancePolicyZipPartDownloadedDetails( - governancePolicyId: governancePolicyId, - name: name, - exportName: exportName, - policyType: policyType?.swift, - part: part - ) + public init(targetType: DBXTeamLogMediaHubSharedLinkTargetType, audience: DBXTeamLogMediaHubSharedLinkAudience, project: DBXTeamLogMediaHubProjectLogInfo?) { + self.swift = TeamLog.MediaHubSharedLinkCreatedDetails(targetType: targetType.swift, audience: audience.swift, project: project?.swift) } - let swift: TeamLog.GovernancePolicyZipPartDownloadedDetails + let swift: TeamLog.MediaHubSharedLinkCreatedDetails - public init(swift: TeamLog.GovernancePolicyZipPartDownloadedDetails) { + public init(swift: TeamLog.MediaHubSharedLinkCreatedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible GovernancePolicyZipPartDownloadedType struct +/// Objective-C compatible MediaHubSharedLinkCreatedType struct @objc -public class DBXTeamLogGovernancePolicyZipPartDownloadedType: NSObject { +public class DBXTeamLogMediaHubSharedLinkCreatedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.GovernancePolicyZipPartDownloadedType(description_: description_) + self.swift = TeamLog.MediaHubSharedLinkCreatedType(description_: description_) } - let swift: TeamLog.GovernancePolicyZipPartDownloadedType + let swift: TeamLog.MediaHubSharedLinkCreatedType - public init(swift: TeamLog.GovernancePolicyZipPartDownloadedType) { + public init(swift: TeamLog.MediaHubSharedLinkCreatedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Added external ID for group. +/// Media Hub shared link download setting @objc -public class DBXTeamLogGroupAddExternalIdDetails: NSObject { - /// Current external id. - @objc - public var newValue: String { swift.newValue } +public class DBXTeamLogMediaHubSharedLinkDownloadSetting: NSObject { + let swift: TeamLog.MediaHubSharedLinkDownloadSetting - @objc - public init(newValue: String) { - self.swift = TeamLog.GroupAddExternalIdDetails(newValue: newValue) + public init(swift: TeamLog.MediaHubSharedLinkDownloadSetting) { + self.swift = swift } - let swift: TeamLog.GroupAddExternalIdDetails - - public init(swift: TeamLog.GroupAddExternalIdDetails) { - self.swift = swift + public static func factory(swift: TeamLog.MediaHubSharedLinkDownloadSetting) -> DBXTeamLogMediaHubSharedLinkDownloadSetting { + switch swift { + case .disabled: + return DBXTeamLogMediaHubSharedLinkDownloadSettingDisabled() + case .enabled: + return DBXTeamLogMediaHubSharedLinkDownloadSettingEnabled() + case .other: + return DBXTeamLogMediaHubSharedLinkDownloadSettingOther() + } } @objc public override var description: String { swift.description } -} -/// Objective-C compatible GroupAddExternalIdType struct -@objc -public class DBXTeamLogGroupAddExternalIdType: NSObject { - /// (no description) @objc - public var description_: String { swift.description_ } + public var asDisabled: DBXTeamLogMediaHubSharedLinkDownloadSettingDisabled? { + return self as? DBXTeamLogMediaHubSharedLinkDownloadSettingDisabled + } @objc - public init(description_: String) { - self.swift = TeamLog.GroupAddExternalIdType(description_: description_) + public var asEnabled: DBXTeamLogMediaHubSharedLinkDownloadSettingEnabled? { + return self as? DBXTeamLogMediaHubSharedLinkDownloadSettingEnabled } - let swift: TeamLog.GroupAddExternalIdType + @objc + public var asOther: DBXTeamLogMediaHubSharedLinkDownloadSettingOther? { + return self as? DBXTeamLogMediaHubSharedLinkDownloadSettingOther + } +} - public init(swift: TeamLog.GroupAddExternalIdType) { - self.swift = swift +/// An unspecified error. +@objc +public class DBXTeamLogMediaHubSharedLinkDownloadSettingDisabled: DBXTeamLogMediaHubSharedLinkDownloadSetting { + @objc + public init() { + let swift = TeamLog.MediaHubSharedLinkDownloadSetting.disabled + super.init(swift: swift) } +} +/// An unspecified error. +@objc +public class DBXTeamLogMediaHubSharedLinkDownloadSettingEnabled: DBXTeamLogMediaHubSharedLinkDownloadSetting { @objc - public override var description: String { swift.description } + public init() { + let swift = TeamLog.MediaHubSharedLinkDownloadSetting.enabled + super.init(swift: swift) + } } -/// Added team members to group. +/// An unspecified error. @objc -public class DBXTeamLogGroupAddMemberDetails: NSObject { - /// Is group owner. +public class DBXTeamLogMediaHubSharedLinkDownloadSettingOther: DBXTeamLogMediaHubSharedLinkDownloadSetting { @objc - public var isGroupOwner: NSNumber { swift.isGroupOwner as NSNumber } + public init() { + let swift = TeamLog.MediaHubSharedLinkDownloadSetting.other + super.init(swift: swift) + } +} +/// Changed Replay shared link download setting. +@objc +public class DBXTeamLogMediaHubSharedLinkDownloadSettingChangedDetails: NSObject { + /// Media Hub shared link target type. @objc - public init(isGroupOwner: NSNumber) { - self.swift = TeamLog.GroupAddMemberDetails(isGroupOwner: isGroupOwner.boolValue) + public var targetType: DBXTeamLogMediaHubSharedLinkTargetType { DBXTeamLogMediaHubSharedLinkTargetType(swift: swift.targetType) } + /// Previous Media Hub shared link download setting. + @objc + public var previousValue: DBXTeamLogMediaHubSharedLinkDownloadSetting { DBXTeamLogMediaHubSharedLinkDownloadSetting(swift: swift.previousValue) } + /// New Media Hub shared link download setting. + @objc + public var newValue: DBXTeamLogMediaHubSharedLinkDownloadSetting { DBXTeamLogMediaHubSharedLinkDownloadSetting(swift: swift.newValue) } + /// Replay project. + @objc + public var project: DBXTeamLogMediaHubProjectLogInfo? { guard let swift = swift.project else { return nil }; return DBXTeamLogMediaHubProjectLogInfo(swift: swift) } + + @objc + public init(targetType: DBXTeamLogMediaHubSharedLinkTargetType, previousValue: DBXTeamLogMediaHubSharedLinkDownloadSetting, newValue: DBXTeamLogMediaHubSharedLinkDownloadSetting, project: DBXTeamLogMediaHubProjectLogInfo?) { + self.swift = TeamLog.MediaHubSharedLinkDownloadSettingChangedDetails(targetType: targetType.swift, previousValue: previousValue.swift, newValue: newValue.swift, project: project?.swift) } - let swift: TeamLog.GroupAddMemberDetails + let swift: TeamLog.MediaHubSharedLinkDownloadSettingChangedDetails - public init(swift: TeamLog.GroupAddMemberDetails) { + public init(swift: TeamLog.MediaHubSharedLinkDownloadSettingChangedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible GroupAddMemberType struct +/// Objective-C compatible MediaHubSharedLinkDownloadSettingChangedType struct @objc -public class DBXTeamLogGroupAddMemberType: NSObject { +public class DBXTeamLogMediaHubSharedLinkDownloadSettingChangedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.GroupAddMemberType(description_: description_) + self.swift = TeamLog.MediaHubSharedLinkDownloadSettingChangedType(description_: description_) } - let swift: TeamLog.GroupAddMemberType + let swift: TeamLog.MediaHubSharedLinkDownloadSettingChangedType - public init(swift: TeamLog.GroupAddMemberType) { + public init(swift: TeamLog.MediaHubSharedLinkDownloadSettingChangedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Changed external ID for group. +/// Revoked Replay shared link. @objc -public class DBXTeamLogGroupChangeExternalIdDetails: NSObject { - /// Current external id. +public class DBXTeamLogMediaHubSharedLinkRevokedDetails: NSObject { + /// Media Hub shared link target type. @objc - public var newValue: String { swift.newValue } - /// Old external id. + public var targetType: DBXTeamLogMediaHubSharedLinkTargetType { DBXTeamLogMediaHubSharedLinkTargetType(swift: swift.targetType) } + /// Replay project. @objc - public var previousValue: String { swift.previousValue } + public var project: DBXTeamLogMediaHubProjectLogInfo? { guard let swift = swift.project else { return nil }; return DBXTeamLogMediaHubProjectLogInfo(swift: swift) } @objc - public init(newValue: String, previousValue: String) { - self.swift = TeamLog.GroupChangeExternalIdDetails(newValue: newValue, previousValue: previousValue) + public init(targetType: DBXTeamLogMediaHubSharedLinkTargetType, project: DBXTeamLogMediaHubProjectLogInfo?) { + self.swift = TeamLog.MediaHubSharedLinkRevokedDetails(targetType: targetType.swift, project: project?.swift) } - let swift: TeamLog.GroupChangeExternalIdDetails + let swift: TeamLog.MediaHubSharedLinkRevokedDetails - public init(swift: TeamLog.GroupChangeExternalIdDetails) { + public init(swift: TeamLog.MediaHubSharedLinkRevokedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible GroupChangeExternalIdType struct +/// Objective-C compatible MediaHubSharedLinkRevokedType struct @objc -public class DBXTeamLogGroupChangeExternalIdType: NSObject { +public class DBXTeamLogMediaHubSharedLinkRevokedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.GroupChangeExternalIdType(description_: description_) + self.swift = TeamLog.MediaHubSharedLinkRevokedType(description_: description_) } - let swift: TeamLog.GroupChangeExternalIdType + let swift: TeamLog.MediaHubSharedLinkRevokedType - public init(swift: TeamLog.GroupChangeExternalIdType) { + public init(swift: TeamLog.MediaHubSharedLinkRevokedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Changed group management type. +/// Media Hub shared link target type @objc -public class DBXTeamLogGroupChangeManagementTypeDetails: NSObject { - /// New group management type. +public class DBXTeamLogMediaHubSharedLinkTargetType: NSObject { + let swift: TeamLog.MediaHubSharedLinkTargetType + + public init(swift: TeamLog.MediaHubSharedLinkTargetType) { + self.swift = swift + } + + public static func factory(swift: TeamLog.MediaHubSharedLinkTargetType) -> DBXTeamLogMediaHubSharedLinkTargetType { + switch swift { + case .bundle: + return DBXTeamLogMediaHubSharedLinkTargetTypeBundle() + case .project: + return DBXTeamLogMediaHubSharedLinkTargetTypeProject() + case .other: + return DBXTeamLogMediaHubSharedLinkTargetTypeOther() + } + } + @objc - public var newValue: DBXTeamCommonGroupManagementType { DBXTeamCommonGroupManagementType(swift: swift.newValue) } - /// Previous group management type. Might be missing due to historical data gap. + public override var description: String { swift.description } + @objc - public var previousValue: DBXTeamCommonGroupManagementType? { guard let swift = swift.previousValue else { return nil } - return DBXTeamCommonGroupManagementType(swift: swift) + public var asBundle: DBXTeamLogMediaHubSharedLinkTargetTypeBundle? { + return self as? DBXTeamLogMediaHubSharedLinkTargetTypeBundle } @objc - public init(newValue: DBXTeamCommonGroupManagementType, previousValue: DBXTeamCommonGroupManagementType?) { - self.swift = TeamLog.GroupChangeManagementTypeDetails(newValue: newValue.swift, previousValue: previousValue?.swift) + public var asProject: DBXTeamLogMediaHubSharedLinkTargetTypeProject? { + return self as? DBXTeamLogMediaHubSharedLinkTargetTypeProject } - let swift: TeamLog.GroupChangeManagementTypeDetails + @objc + public var asOther: DBXTeamLogMediaHubSharedLinkTargetTypeOther? { + return self as? DBXTeamLogMediaHubSharedLinkTargetTypeOther + } +} - public init(swift: TeamLog.GroupChangeManagementTypeDetails) { +/// An unspecified error. +@objc +public class DBXTeamLogMediaHubSharedLinkTargetTypeBundle: DBXTeamLogMediaHubSharedLinkTargetType { + @objc + public init() { + let swift = TeamLog.MediaHubSharedLinkTargetType.bundle + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogMediaHubSharedLinkTargetTypeProject: DBXTeamLogMediaHubSharedLinkTargetType { + @objc + public init() { + let swift = TeamLog.MediaHubSharedLinkTargetType.project + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogMediaHubSharedLinkTargetTypeOther: DBXTeamLogMediaHubSharedLinkTargetType { + @objc + public init() { + let swift = TeamLog.MediaHubSharedLinkTargetType.other + super.init(swift: swift) + } +} + +/// Created member access report. +@objc +public class DBXTeamLogMemberAccessDetailsCreateReportDetails: NSObject { + + let swift: TeamLog.MemberAccessDetailsCreateReportDetails + + public init(swift: TeamLog.MemberAccessDetailsCreateReportDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible GroupChangeManagementTypeType struct +/// Couldn't generate member access report. @objc -public class DBXTeamLogGroupChangeManagementTypeType: NSObject { - /// (no description) +public class DBXTeamLogMemberAccessDetailsCreateReportFailedDetails: NSObject { + /// Failure reason. @objc - public var description_: String { swift.description_ } + public var failureReason: DBXTeamTeamReportFailureReason { DBXTeamTeamReportFailureReason(swift: swift.failureReason) } @objc - public init(description_: String) { - self.swift = TeamLog.GroupChangeManagementTypeType(description_: description_) + public init(failureReason: DBXTeamTeamReportFailureReason) { + self.swift = TeamLog.MemberAccessDetailsCreateReportFailedDetails(failureReason: failureReason.swift) } - let swift: TeamLog.GroupChangeManagementTypeType + let swift: TeamLog.MemberAccessDetailsCreateReportFailedDetails - public init(swift: TeamLog.GroupChangeManagementTypeType) { + public init(swift: TeamLog.MemberAccessDetailsCreateReportFailedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Changed manager permissions of group member. +/// Objective-C compatible MemberAccessDetailsCreateReportFailedType struct @objc -public class DBXTeamLogGroupChangeMemberRoleDetails: NSObject { - /// Is group owner. +public class DBXTeamLogMemberAccessDetailsCreateReportFailedType: NSObject { + /// (no description) @objc - public var isGroupOwner: NSNumber { swift.isGroupOwner as NSNumber } + public var description_: String { swift.description_ } @objc - public init(isGroupOwner: NSNumber) { - self.swift = TeamLog.GroupChangeMemberRoleDetails(isGroupOwner: isGroupOwner.boolValue) + public init(description_: String) { + self.swift = TeamLog.MemberAccessDetailsCreateReportFailedType(description_: description_) } - let swift: TeamLog.GroupChangeMemberRoleDetails + let swift: TeamLog.MemberAccessDetailsCreateReportFailedType - public init(swift: TeamLog.GroupChangeMemberRoleDetails) { + public init(swift: TeamLog.MemberAccessDetailsCreateReportFailedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible GroupChangeMemberRoleType struct +/// Objective-C compatible MemberAccessDetailsCreateReportType struct @objc -public class DBXTeamLogGroupChangeMemberRoleType: NSObject { +public class DBXTeamLogMemberAccessDetailsCreateReportType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.GroupChangeMemberRoleType(description_: description_) + self.swift = TeamLog.MemberAccessDetailsCreateReportType(description_: description_) } - let swift: TeamLog.GroupChangeMemberRoleType + let swift: TeamLog.MemberAccessDetailsCreateReportType - public init(swift: TeamLog.GroupChangeMemberRoleType) { + public init(swift: TeamLog.MemberAccessDetailsCreateReportType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Created group. +/// Added an external ID for team member. @objc -public class DBXTeamLogGroupCreateDetails: NSObject { - /// Is company managed group. - @objc - public var isCompanyManaged: NSNumber? { swift.isCompanyManaged as NSNumber? } - /// Group join policy. +public class DBXTeamLogMemberAddExternalIdDetails: NSObject { + /// Current external id. @objc - public var joinPolicy: DBXTeamLogGroupJoinPolicy? { guard let swift = swift.joinPolicy else { return nil } - return DBXTeamLogGroupJoinPolicy(swift: swift) - } + public var newValue: String { swift.newValue } @objc - public init(isCompanyManaged: NSNumber?, joinPolicy: DBXTeamLogGroupJoinPolicy?) { - self.swift = TeamLog.GroupCreateDetails(isCompanyManaged: isCompanyManaged?.boolValue, joinPolicy: joinPolicy?.swift) + public init(newValue: String) { + self.swift = TeamLog.MemberAddExternalIdDetails(newValue: newValue) } - let swift: TeamLog.GroupCreateDetails + let swift: TeamLog.MemberAddExternalIdDetails - public init(swift: TeamLog.GroupCreateDetails) { + public init(swift: TeamLog.MemberAddExternalIdDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible GroupCreateType struct +/// Objective-C compatible MemberAddExternalIdType struct @objc -public class DBXTeamLogGroupCreateType: NSObject { +public class DBXTeamLogMemberAddExternalIdType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.GroupCreateType(description_: description_) + self.swift = TeamLog.MemberAddExternalIdType(description_: description_) } - let swift: TeamLog.GroupCreateType + let swift: TeamLog.MemberAddExternalIdType - public init(swift: TeamLog.GroupCreateType) { + public init(swift: TeamLog.MemberAddExternalIdType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Deleted group. +/// Added team member name. @objc -public class DBXTeamLogGroupDeleteDetails: NSObject { - /// Is company managed group. +public class DBXTeamLogMemberAddNameDetails: NSObject { + /// New user's name. @objc - public var isCompanyManaged: NSNumber? { swift.isCompanyManaged as NSNumber? } + public var newValue: DBXTeamLogUserNameLogInfo { DBXTeamLogUserNameLogInfo(swift: swift.newValue) } @objc - public init(isCompanyManaged: NSNumber?) { - self.swift = TeamLog.GroupDeleteDetails(isCompanyManaged: isCompanyManaged?.boolValue) + public init(newValue: DBXTeamLogUserNameLogInfo) { + self.swift = TeamLog.MemberAddNameDetails(newValue: newValue.swift) } - let swift: TeamLog.GroupDeleteDetails + let swift: TeamLog.MemberAddNameDetails - public init(swift: TeamLog.GroupDeleteDetails) { + public init(swift: TeamLog.MemberAddNameDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible GroupDeleteType struct +/// Objective-C compatible MemberAddNameType struct @objc -public class DBXTeamLogGroupDeleteType: NSObject { +public class DBXTeamLogMemberAddNameType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.GroupDeleteType(description_: description_) + self.swift = TeamLog.MemberAddNameType(description_: description_) } - let swift: TeamLog.GroupDeleteType + let swift: TeamLog.MemberAddNameType - public init(swift: TeamLog.GroupDeleteType) { + public init(swift: TeamLog.MemberAddNameType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Updated group. +/// Changed team member admin role. @objc -public class DBXTeamLogGroupDescriptionUpdatedDetails: NSObject { - let swift: TeamLog.GroupDescriptionUpdatedDetails +public class DBXTeamLogMemberChangeAdminRoleDetails: NSObject { + /// New admin role. This field is relevant when the admin role is changed or whenthe user role changes from no + /// admin rights to with admin rights. + @objc + public var newValue: DBXTeamLogAdminRole? { guard let swift = swift.newValue else { return nil }; return DBXTeamLogAdminRole(swift: swift) } + /// Previous admin role. This field is relevant when the admin role is changed or when the admin role is + /// removed. + @objc + public var previousValue: DBXTeamLogAdminRole? { guard let swift = swift.previousValue else { return nil }; return DBXTeamLogAdminRole(swift: swift) } - public init(swift: TeamLog.GroupDescriptionUpdatedDetails) { + @objc + public init(newValue: DBXTeamLogAdminRole?, previousValue: DBXTeamLogAdminRole?) { + self.swift = TeamLog.MemberChangeAdminRoleDetails(newValue: newValue?.swift, previousValue: previousValue?.swift) + } + + let swift: TeamLog.MemberChangeAdminRoleDetails + + public init(swift: TeamLog.MemberChangeAdminRoleDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible GroupDescriptionUpdatedType struct +/// Objective-C compatible MemberChangeAdminRoleType struct @objc -public class DBXTeamLogGroupDescriptionUpdatedType: NSObject { +public class DBXTeamLogMemberChangeAdminRoleType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.GroupDescriptionUpdatedType(description_: description_) + self.swift = TeamLog.MemberChangeAdminRoleType(description_: description_) } - let swift: TeamLog.GroupDescriptionUpdatedType + let swift: TeamLog.MemberChangeAdminRoleType - public init(swift: TeamLog.GroupDescriptionUpdatedType) { + public init(swift: TeamLog.MemberChangeAdminRoleType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible GroupJoinPolicy union +/// Changed team member email. @objc -public class DBXTeamLogGroupJoinPolicy: NSObject { - let swift: TeamLog.GroupJoinPolicy +public class DBXTeamLogMemberChangeEmailDetails: NSObject { + /// New email. + @objc + public var newValue: String { swift.newValue } + /// Previous email. Might be missing due to historical data gap. + @objc + public var previousValue: String? { swift.previousValue } - public init(swift: TeamLog.GroupJoinPolicy) { - self.swift = swift + @objc + public init(newValue: String, previousValue: String?) { + self.swift = TeamLog.MemberChangeEmailDetails(newValue: newValue, previousValue: previousValue) } - public static func factory(swift: TeamLog.GroupJoinPolicy) -> DBXTeamLogGroupJoinPolicy { - switch swift { - case .open: - return DBXTeamLogGroupJoinPolicyOpen() - case .requestToJoin: - return DBXTeamLogGroupJoinPolicyRequestToJoin() - case .other: - return DBXTeamLogGroupJoinPolicyOther() - } + let swift: TeamLog.MemberChangeEmailDetails + + public init(swift: TeamLog.MemberChangeEmailDetails) { + self.swift = swift } + @objc public override var description: String { swift.description } +} +/// Objective-C compatible MemberChangeEmailType struct +@objc +public class DBXTeamLogMemberChangeEmailType: NSObject { + /// (no description) @objc - public var asOpen: DBXTeamLogGroupJoinPolicyOpen? { - self as? DBXTeamLogGroupJoinPolicyOpen - } + public var description_: String { swift.description_ } @objc - public var asRequestToJoin: DBXTeamLogGroupJoinPolicyRequestToJoin? { - self as? DBXTeamLogGroupJoinPolicyRequestToJoin + public init(description_: String) { + self.swift = TeamLog.MemberChangeEmailType(description_: description_) } - @objc - public var asOther: DBXTeamLogGroupJoinPolicyOther? { - self as? DBXTeamLogGroupJoinPolicyOther - } -} + let swift: TeamLog.MemberChangeEmailType -/// An unspecified error. -@objc -public class DBXTeamLogGroupJoinPolicyOpen: DBXTeamLogGroupJoinPolicy { - @objc - public init() { - let swift = TeamLog.GroupJoinPolicy.open - super.init(swift: swift) + public init(swift: TeamLog.MemberChangeEmailType) { + self.swift = swift } -} -/// An unspecified error. -@objc -public class DBXTeamLogGroupJoinPolicyRequestToJoin: DBXTeamLogGroupJoinPolicy { - @objc - public init() { - let swift = TeamLog.GroupJoinPolicy.requestToJoin - super.init(swift: swift) - } -} -/// An unspecified error. -@objc -public class DBXTeamLogGroupJoinPolicyOther: DBXTeamLogGroupJoinPolicy { @objc - public init() { - let swift = TeamLog.GroupJoinPolicy.other - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// Updated group join policy. +/// Changed the external ID for team member. @objc -public class DBXTeamLogGroupJoinPolicyUpdatedDetails: NSObject { - /// Is company managed group. +public class DBXTeamLogMemberChangeExternalIdDetails: NSObject { + /// Current external id. @objc - public var isCompanyManaged: NSNumber? { swift.isCompanyManaged as NSNumber? } - /// Group join policy. + public var newValue: String { swift.newValue } + /// Old external id. @objc - public var joinPolicy: DBXTeamLogGroupJoinPolicy? { guard let swift = swift.joinPolicy else { return nil } - return DBXTeamLogGroupJoinPolicy(swift: swift) - } + public var previousValue: String { swift.previousValue } @objc - public init(isCompanyManaged: NSNumber?, joinPolicy: DBXTeamLogGroupJoinPolicy?) { - self.swift = TeamLog.GroupJoinPolicyUpdatedDetails(isCompanyManaged: isCompanyManaged?.boolValue, joinPolicy: joinPolicy?.swift) + public init(newValue: String, previousValue: String) { + self.swift = TeamLog.MemberChangeExternalIdDetails(newValue: newValue, previousValue: previousValue) } - let swift: TeamLog.GroupJoinPolicyUpdatedDetails + let swift: TeamLog.MemberChangeExternalIdDetails - public init(swift: TeamLog.GroupJoinPolicyUpdatedDetails) { + public init(swift: TeamLog.MemberChangeExternalIdDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible GroupJoinPolicyUpdatedType struct +/// Objective-C compatible MemberChangeExternalIdType struct @objc -public class DBXTeamLogGroupJoinPolicyUpdatedType: NSObject { +public class DBXTeamLogMemberChangeExternalIdType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.GroupJoinPolicyUpdatedType(description_: description_) + self.swift = TeamLog.MemberChangeExternalIdType(description_: description_) } - let swift: TeamLog.GroupJoinPolicyUpdatedType + let swift: TeamLog.MemberChangeExternalIdType - public init(swift: TeamLog.GroupJoinPolicyUpdatedType) { + public init(swift: TeamLog.MemberChangeExternalIdType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Group's logged information. +/// Changed membership type (limited/full) of member. @objc -public class DBXTeamLogGroupLogInfo: NSObject { - /// The unique id of this group. - @objc - public var groupId: String? { swift.groupId } - /// The name of this group. +public class DBXTeamLogMemberChangeMembershipTypeDetails: NSObject { + /// Previous membership type. @objc - public var displayName: String { swift.displayName } - /// External group ID. + public var prevValue: DBXTeamLogTeamMembershipType { DBXTeamLogTeamMembershipType(swift: swift.prevValue) } + /// New membership type. @objc - public var externalId: String? { swift.externalId } + public var newValue: DBXTeamLogTeamMembershipType { DBXTeamLogTeamMembershipType(swift: swift.newValue) } @objc - public init(displayName: String, groupId: String?, externalId: String?) { - self.swift = TeamLog.GroupLogInfo(displayName: displayName, groupId: groupId, externalId: externalId) + public init(prevValue: DBXTeamLogTeamMembershipType, newValue: DBXTeamLogTeamMembershipType) { + self.swift = TeamLog.MemberChangeMembershipTypeDetails(prevValue: prevValue.swift, newValue: newValue.swift) } - let swift: TeamLog.GroupLogInfo + let swift: TeamLog.MemberChangeMembershipTypeDetails - public init(swift: TeamLog.GroupLogInfo) { + public init(swift: TeamLog.MemberChangeMembershipTypeDetails) { self.swift = swift } - @objc - public override var description: String { swift.description } -} - -/// Moved group. -@objc -public class DBXTeamLogGroupMovedDetails: NSObject { - let swift: TeamLog.GroupMovedDetails - - public init(swift: TeamLog.GroupMovedDetails) { - self.swift = swift - } @objc public override var description: String { swift.description } } -/// Objective-C compatible GroupMovedType struct +/// Objective-C compatible MemberChangeMembershipTypeType struct @objc -public class DBXTeamLogGroupMovedType: NSObject { +public class DBXTeamLogMemberChangeMembershipTypeType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.GroupMovedType(description_: description_) + self.swift = TeamLog.MemberChangeMembershipTypeType(description_: description_) } - let swift: TeamLog.GroupMovedType + let swift: TeamLog.MemberChangeMembershipTypeType - public init(swift: TeamLog.GroupMovedType) { + public init(swift: TeamLog.MemberChangeMembershipTypeType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Removed external ID for group. +/// Changed team member name. @objc -public class DBXTeamLogGroupRemoveExternalIdDetails: NSObject { - /// Old external id. +public class DBXTeamLogMemberChangeNameDetails: NSObject { + /// New user's name. @objc - public var previousValue: String { swift.previousValue } + public var newValue: DBXTeamLogUserNameLogInfo { DBXTeamLogUserNameLogInfo(swift: swift.newValue) } + /// Previous user's name. Might be missing due to historical data gap. + @objc + public var previousValue: DBXTeamLogUserNameLogInfo? { guard let swift = swift.previousValue else { return nil }; return DBXTeamLogUserNameLogInfo(swift: swift) } @objc - public init(previousValue: String) { - self.swift = TeamLog.GroupRemoveExternalIdDetails(previousValue: previousValue) + public init(newValue: DBXTeamLogUserNameLogInfo, previousValue: DBXTeamLogUserNameLogInfo?) { + self.swift = TeamLog.MemberChangeNameDetails(newValue: newValue.swift, previousValue: previousValue?.swift) } - let swift: TeamLog.GroupRemoveExternalIdDetails + let swift: TeamLog.MemberChangeNameDetails - public init(swift: TeamLog.GroupRemoveExternalIdDetails) { + public init(swift: TeamLog.MemberChangeNameDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible GroupRemoveExternalIdType struct +/// Objective-C compatible MemberChangeNameType struct @objc -public class DBXTeamLogGroupRemoveExternalIdType: NSObject { +public class DBXTeamLogMemberChangeNameType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.GroupRemoveExternalIdType(description_: description_) + self.swift = TeamLog.MemberChangeNameType(description_: description_) } - let swift: TeamLog.GroupRemoveExternalIdType + let swift: TeamLog.MemberChangeNameType - public init(swift: TeamLog.GroupRemoveExternalIdType) { + public init(swift: TeamLog.MemberChangeNameType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Removed team members from group. +/// Changed team member reseller role. @objc -public class DBXTeamLogGroupRemoveMemberDetails: NSObject { - let swift: TeamLog.GroupRemoveMemberDetails +public class DBXTeamLogMemberChangeResellerRoleDetails: NSObject { + /// New reseller role. This field is relevant when the reseller role is changed. + @objc + public var newValue: DBXTeamLogResellerRole { DBXTeamLogResellerRole(swift: swift.newValue) } + /// Previous reseller role. This field is relevant when the reseller role is changed or when the reseller role + /// is removed. + @objc + public var previousValue: DBXTeamLogResellerRole { DBXTeamLogResellerRole(swift: swift.previousValue) } - public init(swift: TeamLog.GroupRemoveMemberDetails) { + @objc + public init(newValue: DBXTeamLogResellerRole, previousValue: DBXTeamLogResellerRole) { + self.swift = TeamLog.MemberChangeResellerRoleDetails(newValue: newValue.swift, previousValue: previousValue.swift) + } + + let swift: TeamLog.MemberChangeResellerRoleDetails + + public init(swift: TeamLog.MemberChangeResellerRoleDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible GroupRemoveMemberType struct +/// Objective-C compatible MemberChangeResellerRoleType struct @objc -public class DBXTeamLogGroupRemoveMemberType: NSObject { +public class DBXTeamLogMemberChangeResellerRoleType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.GroupRemoveMemberType(description_: description_) + self.swift = TeamLog.MemberChangeResellerRoleType(description_: description_) } - let swift: TeamLog.GroupRemoveMemberType + let swift: TeamLog.MemberChangeResellerRoleType - public init(swift: TeamLog.GroupRemoveMemberType) { + public init(swift: TeamLog.MemberChangeResellerRoleType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Renamed group. +/// Changed member status (invited, joined, suspended, etc.). @objc -public class DBXTeamLogGroupRenameDetails: NSObject { - /// Previous display name. +public class DBXTeamLogMemberChangeStatusDetails: NSObject { + /// Previous member status. Might be missing due to historical data gap. @objc - public var previousValue: String { swift.previousValue } - /// New display name. + public var previousValue: DBXTeamLogMemberStatus? { guard let swift = swift.previousValue else { return nil }; return DBXTeamLogMemberStatus(swift: swift) } + /// New member status. @objc - public var newValue: String { swift.newValue } + public var newValue: DBXTeamLogMemberStatus { DBXTeamLogMemberStatus(swift: swift.newValue) } + /// Additional information indicating the action taken that caused status change. + @objc + public var action: DBXTeamLogActionDetails? { guard let swift = swift.action else { return nil }; return DBXTeamLogActionDetails(swift: swift) } + /// The user's new team name. This field is relevant when the user is transferred off the team. + @objc + public var newTeam: String? { swift.newTeam } + /// The user's previous team name. This field is relevant when the user is transferred onto the team. + @objc + public var previousTeam: String? { swift.previousTeam } @objc - public init(previousValue: String, newValue: String) { - self.swift = TeamLog.GroupRenameDetails(previousValue: previousValue, newValue: newValue) + public init(newValue: DBXTeamLogMemberStatus, previousValue: DBXTeamLogMemberStatus?, action: DBXTeamLogActionDetails?, newTeam: String?, previousTeam: String?) { + self.swift = TeamLog.MemberChangeStatusDetails(newValue: newValue.swift, previousValue: previousValue?.swift, action: action?.swift, newTeam: newTeam, previousTeam: previousTeam) } - let swift: TeamLog.GroupRenameDetails + let swift: TeamLog.MemberChangeStatusDetails - public init(swift: TeamLog.GroupRenameDetails) { + public init(swift: TeamLog.MemberChangeStatusDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible GroupRenameType struct +/// Objective-C compatible MemberChangeStatusType struct @objc -public class DBXTeamLogGroupRenameType: NSObject { +public class DBXTeamLogMemberChangeStatusType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.GroupRenameType(description_: description_) + self.swift = TeamLog.MemberChangeStatusType(description_: description_) } - let swift: TeamLog.GroupRenameType + let swift: TeamLog.MemberChangeStatusType - public init(swift: TeamLog.GroupRenameType) { + public init(swift: TeamLog.MemberChangeStatusType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Changed who can create groups. +/// Cleared manually added contacts. @objc -public class DBXTeamLogGroupUserManagementChangePolicyDetails: NSObject { - /// New group users management policy. - @objc - public var newValue: DBXTeamPoliciesGroupCreation { DBXTeamPoliciesGroupCreation(swift: swift.newValue) } - /// Previous group users management policy. Might be missing due to historical data gap. - @objc - public var previousValue: DBXTeamPoliciesGroupCreation? { guard let swift = swift.previousValue else { return nil } - return DBXTeamPoliciesGroupCreation(swift: swift) - } - - @objc - public init(newValue: DBXTeamPoliciesGroupCreation, previousValue: DBXTeamPoliciesGroupCreation?) { - self.swift = TeamLog.GroupUserManagementChangePolicyDetails(newValue: newValue.swift, previousValue: previousValue?.swift) - } +public class DBXTeamLogMemberDeleteManualContactsDetails: NSObject { - let swift: TeamLog.GroupUserManagementChangePolicyDetails + let swift: TeamLog.MemberDeleteManualContactsDetails - public init(swift: TeamLog.GroupUserManagementChangePolicyDetails) { + public init(swift: TeamLog.MemberDeleteManualContactsDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible GroupUserManagementChangePolicyType struct +/// Objective-C compatible MemberDeleteManualContactsType struct @objc -public class DBXTeamLogGroupUserManagementChangePolicyType: NSObject { +public class DBXTeamLogMemberDeleteManualContactsType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.GroupUserManagementChangePolicyType(description_: description_) + self.swift = TeamLog.MemberDeleteManualContactsType(description_: description_) } - let swift: TeamLog.GroupUserManagementChangePolicyType + let swift: TeamLog.MemberDeleteManualContactsType - public init(swift: TeamLog.GroupUserManagementChangePolicyType) { + public init(swift: TeamLog.MemberDeleteManualContactsType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Changed guest team admin status. +/// Deleted team member profile photo. @objc -public class DBXTeamLogGuestAdminChangeStatusDetails: NSObject { - /// True for guest, false for host. - @objc - public var isGuest: NSNumber { swift.isGuest as NSNumber } - /// The name of the guest team. - @objc - public var guestTeamName: String? { swift.guestTeamName } - /// The name of the host team. - @objc - public var hostTeamName: String? { swift.hostTeamName } - /// Previous request state. - @objc - public var previousValue: DBXTeamLogTrustedTeamsRequestState { DBXTeamLogTrustedTeamsRequestState(swift: swift.previousValue) } - /// New request state. - @objc - public var newValue: DBXTeamLogTrustedTeamsRequestState { DBXTeamLogTrustedTeamsRequestState(swift: swift.newValue) } - /// Action details. - @objc - public var actionDetails: DBXTeamLogTrustedTeamsRequestAction { DBXTeamLogTrustedTeamsRequestAction(swift: swift.actionDetails) } - - @objc - public init( - isGuest: NSNumber, - previousValue: DBXTeamLogTrustedTeamsRequestState, - newValue: DBXTeamLogTrustedTeamsRequestState, - actionDetails: DBXTeamLogTrustedTeamsRequestAction, - guestTeamName: String?, - hostTeamName: String? - ) { - self.swift = TeamLog.GuestAdminChangeStatusDetails( - isGuest: isGuest.boolValue, - previousValue: previousValue.swift, - newValue: newValue.swift, - actionDetails: actionDetails.swift, - guestTeamName: guestTeamName, - hostTeamName: hostTeamName - ) - } +public class DBXTeamLogMemberDeleteProfilePhotoDetails: NSObject { - let swift: TeamLog.GuestAdminChangeStatusDetails + let swift: TeamLog.MemberDeleteProfilePhotoDetails - public init(swift: TeamLog.GuestAdminChangeStatusDetails) { + public init(swift: TeamLog.MemberDeleteProfilePhotoDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible GuestAdminChangeStatusType struct +/// Objective-C compatible MemberDeleteProfilePhotoType struct @objc -public class DBXTeamLogGuestAdminChangeStatusType: NSObject { +public class DBXTeamLogMemberDeleteProfilePhotoType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.GuestAdminChangeStatusType(description_: description_) + self.swift = TeamLog.MemberDeleteProfilePhotoType(description_: description_) } - let swift: TeamLog.GuestAdminChangeStatusType + let swift: TeamLog.MemberDeleteProfilePhotoType - public init(swift: TeamLog.GuestAdminChangeStatusType) { + public init(swift: TeamLog.MemberDeleteProfilePhotoType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Started trusted team admin session. +/// Admin browsed a team member's folder contents. @objc -public class DBXTeamLogGuestAdminSignedInViaTrustedTeamsDetails: NSObject { - /// Host team name. - @objc - public var teamName: String? { swift.teamName } - /// Trusted team name. - @objc - public var trustedTeamName: String? { swift.trustedTeamName } - - @objc - public init(teamName: String?, trustedTeamName: String?) { - self.swift = TeamLog.GuestAdminSignedInViaTrustedTeamsDetails(teamName: teamName, trustedTeamName: trustedTeamName) - } +public class DBXTeamLogMemberFolderContentsAccessedDetails: NSObject { - let swift: TeamLog.GuestAdminSignedInViaTrustedTeamsDetails + let swift: TeamLog.MemberFolderContentsAccessedDetails - public init(swift: TeamLog.GuestAdminSignedInViaTrustedTeamsDetails) { + public init(swift: TeamLog.MemberFolderContentsAccessedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible GuestAdminSignedInViaTrustedTeamsType struct +/// Objective-C compatible MemberFolderContentsAccessedType struct @objc -public class DBXTeamLogGuestAdminSignedInViaTrustedTeamsType: NSObject { +public class DBXTeamLogMemberFolderContentsAccessedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.GuestAdminSignedInViaTrustedTeamsType(description_: description_) + self.swift = TeamLog.MemberFolderContentsAccessedType(description_: description_) } - let swift: TeamLog.GuestAdminSignedInViaTrustedTeamsType + let swift: TeamLog.MemberFolderContentsAccessedType - public init(swift: TeamLog.GuestAdminSignedInViaTrustedTeamsType) { + public init(swift: TeamLog.MemberFolderContentsAccessedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Ended trusted team admin session. +/// Permanently deleted contents of deleted team member account. @objc -public class DBXTeamLogGuestAdminSignedOutViaTrustedTeamsDetails: NSObject { - /// Host team name. - @objc - public var teamName: String? { swift.teamName } - /// Trusted team name. - @objc - public var trustedTeamName: String? { swift.trustedTeamName } - - @objc - public init(teamName: String?, trustedTeamName: String?) { - self.swift = TeamLog.GuestAdminSignedOutViaTrustedTeamsDetails(teamName: teamName, trustedTeamName: trustedTeamName) - } +public class DBXTeamLogMemberPermanentlyDeleteAccountContentsDetails: NSObject { - let swift: TeamLog.GuestAdminSignedOutViaTrustedTeamsDetails + let swift: TeamLog.MemberPermanentlyDeleteAccountContentsDetails - public init(swift: TeamLog.GuestAdminSignedOutViaTrustedTeamsDetails) { + public init(swift: TeamLog.MemberPermanentlyDeleteAccountContentsDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible GuestAdminSignedOutViaTrustedTeamsType struct +/// Objective-C compatible MemberPermanentlyDeleteAccountContentsType struct @objc -public class DBXTeamLogGuestAdminSignedOutViaTrustedTeamsType: NSObject { +public class DBXTeamLogMemberPermanentlyDeleteAccountContentsType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.GuestAdminSignedOutViaTrustedTeamsType(description_: description_) + self.swift = TeamLog.MemberPermanentlyDeleteAccountContentsType(description_: description_) } - let swift: TeamLog.GuestAdminSignedOutViaTrustedTeamsType + let swift: TeamLog.MemberPermanentlyDeleteAccountContentsType - public init(swift: TeamLog.GuestAdminSignedOutViaTrustedTeamsType) { + public init(swift: TeamLog.MemberPermanentlyDeleteAccountContentsType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible IdentifierType union +/// Objective-C compatible MemberRemoveActionType union @objc -public class DBXTeamLogIdentifierType: NSObject { - let swift: TeamLog.IdentifierType +public class DBXTeamLogMemberRemoveActionType: NSObject { + let swift: TeamLog.MemberRemoveActionType - public init(swift: TeamLog.IdentifierType) { + public init(swift: TeamLog.MemberRemoveActionType) { self.swift = swift } - public static func factory(swift: TeamLog.IdentifierType) -> DBXTeamLogIdentifierType { + public static func factory(swift: TeamLog.MemberRemoveActionType) -> DBXTeamLogMemberRemoveActionType { switch swift { - case .email: - return DBXTeamLogIdentifierTypeEmail() - case .facebookProfileName: - return DBXTeamLogIdentifierTypeFacebookProfileName() + case .delete: + return DBXTeamLogMemberRemoveActionTypeDelete() + case .leave: + return DBXTeamLogMemberRemoveActionTypeLeave() + case .offboard: + return DBXTeamLogMemberRemoveActionTypeOffboard() + case .offboardAndRetainTeamFolders: + return DBXTeamLogMemberRemoveActionTypeOffboardAndRetainTeamFolders() case .other: - return DBXTeamLogIdentifierTypeOther() + return DBXTeamLogMemberRemoveActionTypeOther() } } @@ -45007,156 +59848,195 @@ public class DBXTeamLogIdentifierType: NSObject { public override var description: String { swift.description } @objc - public var asEmail: DBXTeamLogIdentifierTypeEmail? { - self as? DBXTeamLogIdentifierTypeEmail + public var asDelete: DBXTeamLogMemberRemoveActionTypeDelete? { + return self as? DBXTeamLogMemberRemoveActionTypeDelete } @objc - public var asFacebookProfileName: DBXTeamLogIdentifierTypeFacebookProfileName? { - self as? DBXTeamLogIdentifierTypeFacebookProfileName + public var asLeave: DBXTeamLogMemberRemoveActionTypeLeave? { + return self as? DBXTeamLogMemberRemoveActionTypeLeave } @objc - public var asOther: DBXTeamLogIdentifierTypeOther? { - self as? DBXTeamLogIdentifierTypeOther + public var asOffboard: DBXTeamLogMemberRemoveActionTypeOffboard? { + return self as? DBXTeamLogMemberRemoveActionTypeOffboard + } + + @objc + public var asOffboardAndRetainTeamFolders: DBXTeamLogMemberRemoveActionTypeOffboardAndRetainTeamFolders? { + return self as? DBXTeamLogMemberRemoveActionTypeOffboardAndRetainTeamFolders + } + + @objc + public var asOther: DBXTeamLogMemberRemoveActionTypeOther? { + return self as? DBXTeamLogMemberRemoveActionTypeOther } } /// An unspecified error. @objc -public class DBXTeamLogIdentifierTypeEmail: DBXTeamLogIdentifierType { +public class DBXTeamLogMemberRemoveActionTypeDelete: DBXTeamLogMemberRemoveActionType { @objc public init() { - let swift = TeamLog.IdentifierType.email + let swift = TeamLog.MemberRemoveActionType.delete super.init(swift: swift) } } /// An unspecified error. @objc -public class DBXTeamLogIdentifierTypeFacebookProfileName: DBXTeamLogIdentifierType { +public class DBXTeamLogMemberRemoveActionTypeLeave: DBXTeamLogMemberRemoveActionType { @objc public init() { - let swift = TeamLog.IdentifierType.facebookProfileName + let swift = TeamLog.MemberRemoveActionType.leave super.init(swift: swift) } } /// An unspecified error. @objc -public class DBXTeamLogIdentifierTypeOther: DBXTeamLogIdentifierType { +public class DBXTeamLogMemberRemoveActionTypeOffboard: DBXTeamLogMemberRemoveActionType { @objc public init() { - let swift = TeamLog.IdentifierType.other + let swift = TeamLog.MemberRemoveActionType.offboard super.init(swift: swift) } } -/// Connected integration for member. +/// An unspecified error. @objc -public class DBXTeamLogIntegrationConnectedDetails: NSObject { - /// Name of the third-party integration. +public class DBXTeamLogMemberRemoveActionTypeOffboardAndRetainTeamFolders: DBXTeamLogMemberRemoveActionType { @objc - public var integrationName: String { swift.integrationName } + public init() { + let swift = TeamLog.MemberRemoveActionType.offboardAndRetainTeamFolders + super.init(swift: swift) + } +} +/// An unspecified error. +@objc +public class DBXTeamLogMemberRemoveActionTypeOther: DBXTeamLogMemberRemoveActionType { @objc - public init(integrationName: String) { - self.swift = TeamLog.IntegrationConnectedDetails(integrationName: integrationName) + public init() { + let swift = TeamLog.MemberRemoveActionType.other + super.init(swift: swift) } +} - let swift: TeamLog.IntegrationConnectedDetails +/// Removed the external ID for team member. +@objc +public class DBXTeamLogMemberRemoveExternalIdDetails: NSObject { + /// Old external id. + @objc + public var previousValue: String { swift.previousValue } - public init(swift: TeamLog.IntegrationConnectedDetails) { + @objc + public init(previousValue: String) { + self.swift = TeamLog.MemberRemoveExternalIdDetails(previousValue: previousValue) + } + + let swift: TeamLog.MemberRemoveExternalIdDetails + + public init(swift: TeamLog.MemberRemoveExternalIdDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible IntegrationConnectedType struct +/// Objective-C compatible MemberRemoveExternalIdType struct @objc -public class DBXTeamLogIntegrationConnectedType: NSObject { +public class DBXTeamLogMemberRemoveExternalIdType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.IntegrationConnectedType(description_: description_) + self.swift = TeamLog.MemberRemoveExternalIdType(description_: description_) } - let swift: TeamLog.IntegrationConnectedType + let swift: TeamLog.MemberRemoveExternalIdType - public init(swift: TeamLog.IntegrationConnectedType) { + public init(swift: TeamLog.MemberRemoveExternalIdType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Disconnected integration for member. +/// Changed whether users can find team when not invited. @objc -public class DBXTeamLogIntegrationDisconnectedDetails: NSObject { - /// Name of the third-party integration. +public class DBXTeamLogMemberRequestsChangePolicyDetails: NSObject { + /// New member change requests policy. @objc - public var integrationName: String { swift.integrationName } + public var newValue: DBXTeamLogMemberRequestsPolicy { DBXTeamLogMemberRequestsPolicy(swift: swift.newValue) } + /// Previous member change requests policy. Might be missing due to historical data gap. + @objc + public var previousValue: DBXTeamLogMemberRequestsPolicy? { guard let swift = swift.previousValue else { return nil }; return DBXTeamLogMemberRequestsPolicy(swift: swift) } @objc - public init(integrationName: String) { - self.swift = TeamLog.IntegrationDisconnectedDetails(integrationName: integrationName) + public init(newValue: DBXTeamLogMemberRequestsPolicy, previousValue: DBXTeamLogMemberRequestsPolicy?) { + self.swift = TeamLog.MemberRequestsChangePolicyDetails(newValue: newValue.swift, previousValue: previousValue?.swift) } - let swift: TeamLog.IntegrationDisconnectedDetails + let swift: TeamLog.MemberRequestsChangePolicyDetails - public init(swift: TeamLog.IntegrationDisconnectedDetails) { + public init(swift: TeamLog.MemberRequestsChangePolicyDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible IntegrationDisconnectedType struct +/// Objective-C compatible MemberRequestsChangePolicyType struct @objc -public class DBXTeamLogIntegrationDisconnectedType: NSObject { +public class DBXTeamLogMemberRequestsChangePolicyType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.IntegrationDisconnectedType(description_: description_) + self.swift = TeamLog.MemberRequestsChangePolicyType(description_: description_) } - let swift: TeamLog.IntegrationDisconnectedType + let swift: TeamLog.MemberRequestsChangePolicyType - public init(swift: TeamLog.IntegrationDisconnectedType) { + public init(swift: TeamLog.MemberRequestsChangePolicyType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Policy for controlling whether a service integration is enabled for the team. +/// Objective-C compatible MemberRequestsPolicy union @objc -public class DBXTeamLogIntegrationPolicy: NSObject { - let swift: TeamLog.IntegrationPolicy +public class DBXTeamLogMemberRequestsPolicy: NSObject { + let swift: TeamLog.MemberRequestsPolicy - public init(swift: TeamLog.IntegrationPolicy) { + public init(swift: TeamLog.MemberRequestsPolicy) { self.swift = swift } - public static func factory(swift: TeamLog.IntegrationPolicy) -> DBXTeamLogIntegrationPolicy { + public static func factory(swift: TeamLog.MemberRequestsPolicy) -> DBXTeamLogMemberRequestsPolicy { switch swift { + case .autoAccept: + return DBXTeamLogMemberRequestsPolicyAutoAccept() case .disabled: - return DBXTeamLogIntegrationPolicyDisabled() - case .enabled: - return DBXTeamLogIntegrationPolicyEnabled() + return DBXTeamLogMemberRequestsPolicyDisabled() + case .requireApproval: + return DBXTeamLogMemberRequestsPolicyRequireApproval() case .other: - return DBXTeamLogIntegrationPolicyOther() + return DBXTeamLogMemberRequestsPolicyOther() } } @@ -45164,118 +60044,85 @@ public class DBXTeamLogIntegrationPolicy: NSObject { public override var description: String { swift.description } @objc - public var asDisabled: DBXTeamLogIntegrationPolicyDisabled? { - self as? DBXTeamLogIntegrationPolicyDisabled + public var asAutoAccept: DBXTeamLogMemberRequestsPolicyAutoAccept? { + return self as? DBXTeamLogMemberRequestsPolicyAutoAccept } @objc - public var asEnabled: DBXTeamLogIntegrationPolicyEnabled? { - self as? DBXTeamLogIntegrationPolicyEnabled + public var asDisabled: DBXTeamLogMemberRequestsPolicyDisabled? { + return self as? DBXTeamLogMemberRequestsPolicyDisabled } @objc - public var asOther: DBXTeamLogIntegrationPolicyOther? { - self as? DBXTeamLogIntegrationPolicyOther + public var asRequireApproval: DBXTeamLogMemberRequestsPolicyRequireApproval? { + return self as? DBXTeamLogMemberRequestsPolicyRequireApproval } -} -/// An unspecified error. -@objc -public class DBXTeamLogIntegrationPolicyDisabled: DBXTeamLogIntegrationPolicy { @objc - public init() { - let swift = TeamLog.IntegrationPolicy.disabled - super.init(swift: swift) + public var asOther: DBXTeamLogMemberRequestsPolicyOther? { + return self as? DBXTeamLogMemberRequestsPolicyOther } } /// An unspecified error. @objc -public class DBXTeamLogIntegrationPolicyEnabled: DBXTeamLogIntegrationPolicy { +public class DBXTeamLogMemberRequestsPolicyAutoAccept: DBXTeamLogMemberRequestsPolicy { @objc public init() { - let swift = TeamLog.IntegrationPolicy.enabled + let swift = TeamLog.MemberRequestsPolicy.autoAccept super.init(swift: swift) } } /// An unspecified error. @objc -public class DBXTeamLogIntegrationPolicyOther: DBXTeamLogIntegrationPolicy { +public class DBXTeamLogMemberRequestsPolicyDisabled: DBXTeamLogMemberRequestsPolicy { @objc public init() { - let swift = TeamLog.IntegrationPolicy.other + let swift = TeamLog.MemberRequestsPolicy.disabled super.init(swift: swift) } } -/// Changed integration policy for team. +/// An unspecified error. @objc -public class DBXTeamLogIntegrationPolicyChangedDetails: NSObject { - /// Name of the third-party integration. - @objc - public var integrationName: String { swift.integrationName } - /// New integration policy. - @objc - public var newValue: DBXTeamLogIntegrationPolicy { DBXTeamLogIntegrationPolicy(swift: swift.newValue) } - /// Previous integration policy. - @objc - public var previousValue: DBXTeamLogIntegrationPolicy { DBXTeamLogIntegrationPolicy(swift: swift.previousValue) } - +public class DBXTeamLogMemberRequestsPolicyRequireApproval: DBXTeamLogMemberRequestsPolicy { @objc - public init(integrationName: String, newValue: DBXTeamLogIntegrationPolicy, previousValue: DBXTeamLogIntegrationPolicy) { - self.swift = TeamLog.IntegrationPolicyChangedDetails(integrationName: integrationName, newValue: newValue.swift, previousValue: previousValue.swift) - } - - let swift: TeamLog.IntegrationPolicyChangedDetails - - public init(swift: TeamLog.IntegrationPolicyChangedDetails) { - self.swift = swift + public init() { + let swift = TeamLog.MemberRequestsPolicy.requireApproval + super.init(swift: swift) } - - @objc - public override var description: String { swift.description } } -/// Objective-C compatible IntegrationPolicyChangedType struct +/// An unspecified error. @objc -public class DBXTeamLogIntegrationPolicyChangedType: NSObject { - /// (no description) - @objc - public var description_: String { swift.description_ } - +public class DBXTeamLogMemberRequestsPolicyOther: DBXTeamLogMemberRequestsPolicy { @objc - public init(description_: String) { - self.swift = TeamLog.IntegrationPolicyChangedType(description_: description_) - } - - let swift: TeamLog.IntegrationPolicyChangedType - - public init(swift: TeamLog.IntegrationPolicyChangedType) { - self.swift = swift + public init() { + let swift = TeamLog.MemberRequestsPolicy.other + super.init(swift: swift) } - - @objc - public override var description: String { swift.description } } -/// Policy for deciding whether team admins receive email when an invitation to join the team is accepted +/// Policy for controlling whether team members can send team invites @objc -public class DBXTeamLogInviteAcceptanceEmailPolicy: NSObject { - let swift: TeamLog.InviteAcceptanceEmailPolicy +public class DBXTeamLogMemberSendInvitePolicy: NSObject { + let swift: TeamLog.MemberSendInvitePolicy - public init(swift: TeamLog.InviteAcceptanceEmailPolicy) { + public init(swift: TeamLog.MemberSendInvitePolicy) { self.swift = swift } - public static func factory(swift: TeamLog.InviteAcceptanceEmailPolicy) -> DBXTeamLogInviteAcceptanceEmailPolicy { + public static func factory(swift: TeamLog.MemberSendInvitePolicy) -> DBXTeamLogMemberSendInvitePolicy { switch swift { case .disabled: - return DBXTeamLogInviteAcceptanceEmailPolicyDisabled() - case .enabled: - return DBXTeamLogInviteAcceptanceEmailPolicyEnabled() + return DBXTeamLogMemberSendInvitePolicyDisabled() + case .everyone: + return DBXTeamLogMemberSendInvitePolicyEveryone() + case .specificMembers: + return DBXTeamLogMemberSendInvitePolicySpecificMembers() case .other: - return DBXTeamLogInviteAcceptanceEmailPolicyOther() + return DBXTeamLogMemberSendInvitePolicyOther() } } @@ -45283,1007 +60130,942 @@ public class DBXTeamLogInviteAcceptanceEmailPolicy: NSObject { public override var description: String { swift.description } @objc - public var asDisabled: DBXTeamLogInviteAcceptanceEmailPolicyDisabled? { - self as? DBXTeamLogInviteAcceptanceEmailPolicyDisabled + public var asDisabled: DBXTeamLogMemberSendInvitePolicyDisabled? { + return self as? DBXTeamLogMemberSendInvitePolicyDisabled } @objc - public var asEnabled: DBXTeamLogInviteAcceptanceEmailPolicyEnabled? { - self as? DBXTeamLogInviteAcceptanceEmailPolicyEnabled + public var asEveryone: DBXTeamLogMemberSendInvitePolicyEveryone? { + return self as? DBXTeamLogMemberSendInvitePolicyEveryone } @objc - public var asOther: DBXTeamLogInviteAcceptanceEmailPolicyOther? { - self as? DBXTeamLogInviteAcceptanceEmailPolicyOther + public var asSpecificMembers: DBXTeamLogMemberSendInvitePolicySpecificMembers? { + return self as? DBXTeamLogMemberSendInvitePolicySpecificMembers + } + + @objc + public var asOther: DBXTeamLogMemberSendInvitePolicyOther? { + return self as? DBXTeamLogMemberSendInvitePolicyOther } } /// An unspecified error. @objc -public class DBXTeamLogInviteAcceptanceEmailPolicyDisabled: DBXTeamLogInviteAcceptanceEmailPolicy { +public class DBXTeamLogMemberSendInvitePolicyDisabled: DBXTeamLogMemberSendInvitePolicy { @objc public init() { - let swift = TeamLog.InviteAcceptanceEmailPolicy.disabled + let swift = TeamLog.MemberSendInvitePolicy.disabled super.init(swift: swift) } } /// An unspecified error. @objc -public class DBXTeamLogInviteAcceptanceEmailPolicyEnabled: DBXTeamLogInviteAcceptanceEmailPolicy { +public class DBXTeamLogMemberSendInvitePolicyEveryone: DBXTeamLogMemberSendInvitePolicy { @objc public init() { - let swift = TeamLog.InviteAcceptanceEmailPolicy.enabled + let swift = TeamLog.MemberSendInvitePolicy.everyone super.init(swift: swift) } } /// An unspecified error. @objc -public class DBXTeamLogInviteAcceptanceEmailPolicyOther: DBXTeamLogInviteAcceptanceEmailPolicy { +public class DBXTeamLogMemberSendInvitePolicySpecificMembers: DBXTeamLogMemberSendInvitePolicy { @objc public init() { - let swift = TeamLog.InviteAcceptanceEmailPolicy.other + let swift = TeamLog.MemberSendInvitePolicy.specificMembers super.init(swift: swift) } } -/// Changed invite accept email policy for team. +/// An unspecified error. @objc -public class DBXTeamLogInviteAcceptanceEmailPolicyChangedDetails: NSObject { - /// To. +public class DBXTeamLogMemberSendInvitePolicyOther: DBXTeamLogMemberSendInvitePolicy { @objc - public var newValue: DBXTeamLogInviteAcceptanceEmailPolicy { DBXTeamLogInviteAcceptanceEmailPolicy(swift: swift.newValue) } - /// From. + public init() { + let swift = TeamLog.MemberSendInvitePolicy.other + super.init(swift: swift) + } +} + +/// Changed member send invite policy for team. +@objc +public class DBXTeamLogMemberSendInvitePolicyChangedDetails: NSObject { + /// New team member send invite policy. @objc - public var previousValue: DBXTeamLogInviteAcceptanceEmailPolicy { DBXTeamLogInviteAcceptanceEmailPolicy(swift: swift.previousValue) } + public var newValue: DBXTeamLogMemberSendInvitePolicy { DBXTeamLogMemberSendInvitePolicy(swift: swift.newValue) } + /// Previous team member send invite policy. + @objc + public var previousValue: DBXTeamLogMemberSendInvitePolicy { DBXTeamLogMemberSendInvitePolicy(swift: swift.previousValue) } @objc - public init(newValue: DBXTeamLogInviteAcceptanceEmailPolicy, previousValue: DBXTeamLogInviteAcceptanceEmailPolicy) { - self.swift = TeamLog.InviteAcceptanceEmailPolicyChangedDetails(newValue: newValue.swift, previousValue: previousValue.swift) + public init(newValue: DBXTeamLogMemberSendInvitePolicy, previousValue: DBXTeamLogMemberSendInvitePolicy) { + self.swift = TeamLog.MemberSendInvitePolicyChangedDetails(newValue: newValue.swift, previousValue: previousValue.swift) } - let swift: TeamLog.InviteAcceptanceEmailPolicyChangedDetails + let swift: TeamLog.MemberSendInvitePolicyChangedDetails - public init(swift: TeamLog.InviteAcceptanceEmailPolicyChangedDetails) { + public init(swift: TeamLog.MemberSendInvitePolicyChangedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible InviteAcceptanceEmailPolicyChangedType struct +/// Objective-C compatible MemberSendInvitePolicyChangedType struct @objc -public class DBXTeamLogInviteAcceptanceEmailPolicyChangedType: NSObject { +public class DBXTeamLogMemberSendInvitePolicyChangedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.InviteAcceptanceEmailPolicyChangedType(description_: description_) + self.swift = TeamLog.MemberSendInvitePolicyChangedType(description_: description_) } - let swift: TeamLog.InviteAcceptanceEmailPolicyChangedType + let swift: TeamLog.MemberSendInvitePolicyChangedType - public init(swift: TeamLog.InviteAcceptanceEmailPolicyChangedType) { + public init(swift: TeamLog.MemberSendInvitePolicyChangedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible InviteMethod union +/// Set team member profile photo. @objc -public class DBXTeamLogInviteMethod: NSObject { - let swift: TeamLog.InviteMethod +public class DBXTeamLogMemberSetProfilePhotoDetails: NSObject { - public init(swift: TeamLog.InviteMethod) { + let swift: TeamLog.MemberSetProfilePhotoDetails + + public init(swift: TeamLog.MemberSetProfilePhotoDetails) { self.swift = swift } - public static func factory(swift: TeamLog.InviteMethod) -> DBXTeamLogInviteMethod { - switch swift { - case .autoApprove: - return DBXTeamLogInviteMethodAutoApprove() - case .inviteLink: - return DBXTeamLogInviteMethodInviteLink() - case .memberInvite: - return DBXTeamLogInviteMethodMemberInvite() - case .movedFromAnotherTeam: - return DBXTeamLogInviteMethodMovedFromAnotherTeam() - case .other: - return DBXTeamLogInviteMethodOther() - } - } @objc public override var description: String { swift.description } +} +/// Objective-C compatible MemberSetProfilePhotoType struct +@objc +public class DBXTeamLogMemberSetProfilePhotoType: NSObject { + /// (no description) @objc - public var asAutoApprove: DBXTeamLogInviteMethodAutoApprove? { - self as? DBXTeamLogInviteMethodAutoApprove - } + public var description_: String { swift.description_ } @objc - public var asInviteLink: DBXTeamLogInviteMethodInviteLink? { - self as? DBXTeamLogInviteMethodInviteLink + public init(description_: String) { + self.swift = TeamLog.MemberSetProfilePhotoType(description_: description_) } - @objc - public var asMemberInvite: DBXTeamLogInviteMethodMemberInvite? { - self as? DBXTeamLogInviteMethodMemberInvite - } + let swift: TeamLog.MemberSetProfilePhotoType - @objc - public var asMovedFromAnotherTeam: DBXTeamLogInviteMethodMovedFromAnotherTeam? { - self as? DBXTeamLogInviteMethodMovedFromAnotherTeam + public init(swift: TeamLog.MemberSetProfilePhotoType) { + self.swift = swift } - @objc - public var asOther: DBXTeamLogInviteMethodOther? { - self as? DBXTeamLogInviteMethodOther - } -} -/// An unspecified error. -@objc -public class DBXTeamLogInviteMethodAutoApprove: DBXTeamLogInviteMethod { @objc - public init() { - let swift = TeamLog.InviteMethod.autoApprove - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// An unspecified error. +/// Set custom member space limit. @objc -public class DBXTeamLogInviteMethodInviteLink: DBXTeamLogInviteMethod { +public class DBXTeamLogMemberSpaceLimitsAddCustomQuotaDetails: NSObject { + /// New custom quota value in bytes. @objc - public init() { - let swift = TeamLog.InviteMethod.inviteLink - super.init(swift: swift) - } -} + public var newValue: NSNumber { swift.newValue as NSNumber } -/// An unspecified error. -@objc -public class DBXTeamLogInviteMethodMemberInvite: DBXTeamLogInviteMethod { @objc - public init() { - let swift = TeamLog.InviteMethod.memberInvite - super.init(swift: swift) + public init(newValue: NSNumber) { + self.swift = TeamLog.MemberSpaceLimitsAddCustomQuotaDetails(newValue: newValue.uint64Value) } -} -/// An unspecified error. -@objc -public class DBXTeamLogInviteMethodMovedFromAnotherTeam: DBXTeamLogInviteMethod { - @objc - public init() { - let swift = TeamLog.InviteMethod.movedFromAnotherTeam - super.init(swift: swift) + let swift: TeamLog.MemberSpaceLimitsAddCustomQuotaDetails + + public init(swift: TeamLog.MemberSpaceLimitsAddCustomQuotaDetails) { + self.swift = swift } -} -/// An unspecified error. -@objc -public class DBXTeamLogInviteMethodOther: DBXTeamLogInviteMethod { + @objc - public init() { - let swift = TeamLog.InviteMethod.other - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// Additional information relevant when a new member joins the team. +/// Objective-C compatible MemberSpaceLimitsAddCustomQuotaType struct @objc -public class DBXTeamLogJoinTeamDetails: NSObject { - /// Linked applications. (Deprecated) Please use has_linked_apps boolean field instead. - @objc - public var linkedApps: [DBXTeamLogUserLinkedAppLogInfo] { swift.linkedApps.map { DBXTeamLogUserLinkedAppLogInfo(swift: $0) } } - /// Linked devices. (Deprecated) Please use has_linked_devices boolean field instead. - @objc - public var linkedDevices: [DBXTeamLogLinkedDeviceLogInfo] { swift.linkedDevices.map { DBXTeamLogLinkedDeviceLogInfo(swift: $0) } } - /// Linked shared folders. (Deprecated) Please use has_linked_shared_folders boolean field instead. - @objc - public var linkedSharedFolders: [DBXTeamLogFolderLogInfo] { swift.linkedSharedFolders.map { DBXTeamLogFolderLogInfo(swift: $0) } } - /// (Deprecated) True if the linked_apps list was truncated to the maximum supported length (50). - @objc - public var wasLinkedAppsTruncated: NSNumber? { swift.wasLinkedAppsTruncated as NSNumber? } - /// (Deprecated) True if the linked_devices list was truncated to the maximum supported length (50). - @objc - public var wasLinkedDevicesTruncated: NSNumber? { swift.wasLinkedDevicesTruncated as NSNumber? } - /// (Deprecated) True if the linked_shared_folders list was truncated to the maximum supported length (50). - @objc - public var wasLinkedSharedFoldersTruncated: NSNumber? { swift.wasLinkedSharedFoldersTruncated as NSNumber? } - /// True if the user had linked apps at event time. - @objc - public var hasLinkedApps: NSNumber? { swift.hasLinkedApps as NSNumber? } - /// True if the user had linked apps at event time. - @objc - public var hasLinkedDevices: NSNumber? { swift.hasLinkedDevices as NSNumber? } - /// True if the user had linked shared folders at event time. +public class DBXTeamLogMemberSpaceLimitsAddCustomQuotaType: NSObject { + /// (no description) @objc - public var hasLinkedSharedFolders: NSNumber? { swift.hasLinkedSharedFolders as NSNumber? } + public var description_: String { swift.description_ } @objc - public init( - linkedApps: [DBXTeamLogUserLinkedAppLogInfo], - linkedDevices: [DBXTeamLogLinkedDeviceLogInfo], - linkedSharedFolders: [DBXTeamLogFolderLogInfo], - wasLinkedAppsTruncated: NSNumber?, - wasLinkedDevicesTruncated: NSNumber?, - wasLinkedSharedFoldersTruncated: NSNumber?, - hasLinkedApps: NSNumber?, - hasLinkedDevices: NSNumber?, - hasLinkedSharedFolders: NSNumber? - ) { - self.swift = TeamLog.JoinTeamDetails( - linkedApps: linkedApps.map(\.subSwift), - linkedDevices: linkedDevices.map(\.swift), - linkedSharedFolders: linkedSharedFolders.map(\.subSwift), - wasLinkedAppsTruncated: wasLinkedAppsTruncated?.boolValue, - wasLinkedDevicesTruncated: wasLinkedDevicesTruncated?.boolValue, - wasLinkedSharedFoldersTruncated: wasLinkedSharedFoldersTruncated?.boolValue, - hasLinkedApps: hasLinkedApps?.boolValue, - hasLinkedDevices: hasLinkedDevices?.boolValue, - hasLinkedSharedFolders: hasLinkedSharedFolders?.boolValue - ) + public init(description_: String) { + self.swift = TeamLog.MemberSpaceLimitsAddCustomQuotaType(description_: description_) } - let swift: TeamLog.JoinTeamDetails + let swift: TeamLog.MemberSpaceLimitsAddCustomQuotaType - public init(swift: TeamLog.JoinTeamDetails) { + public init(swift: TeamLog.MemberSpaceLimitsAddCustomQuotaType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Label type +/// Added members to member space limit exception list. @objc -public class DBXTeamLogLabelType: NSObject { - let swift: TeamLog.LabelType +public class DBXTeamLogMemberSpaceLimitsAddExceptionDetails: NSObject { - public init(swift: TeamLog.LabelType) { + let swift: TeamLog.MemberSpaceLimitsAddExceptionDetails + + public init(swift: TeamLog.MemberSpaceLimitsAddExceptionDetails) { self.swift = swift } - public static func factory(swift: TeamLog.LabelType) -> DBXTeamLogLabelType { - switch swift { - case .personalInformation: - return DBXTeamLogLabelTypePersonalInformation() - case .testOnly: - return DBXTeamLogLabelTypeTestOnly() - case .userDefinedTag: - return DBXTeamLogLabelTypeUserDefinedTag() - case .other: - return DBXTeamLogLabelTypeOther() - } - } @objc public override var description: String { swift.description } +} +/// Objective-C compatible MemberSpaceLimitsAddExceptionType struct +@objc +public class DBXTeamLogMemberSpaceLimitsAddExceptionType: NSObject { + /// (no description) @objc - public var asPersonalInformation: DBXTeamLogLabelTypePersonalInformation? { - self as? DBXTeamLogLabelTypePersonalInformation - } + public var description_: String { swift.description_ } @objc - public var asTestOnly: DBXTeamLogLabelTypeTestOnly? { - self as? DBXTeamLogLabelTypeTestOnly + public init(description_: String) { + self.swift = TeamLog.MemberSpaceLimitsAddExceptionType(description_: description_) } - @objc - public var asUserDefinedTag: DBXTeamLogLabelTypeUserDefinedTag? { - self as? DBXTeamLogLabelTypeUserDefinedTag + let swift: TeamLog.MemberSpaceLimitsAddExceptionType + + public init(swift: TeamLog.MemberSpaceLimitsAddExceptionType) { + self.swift = swift } + @objc - public var asOther: DBXTeamLogLabelTypeOther? { - self as? DBXTeamLogLabelTypeOther - } + public override var description: String { swift.description } } -/// An unspecified error. +/// Changed member space limit type for team. @objc -public class DBXTeamLogLabelTypePersonalInformation: DBXTeamLogLabelType { +public class DBXTeamLogMemberSpaceLimitsChangeCapsTypePolicyDetails: NSObject { + /// Previous space limit type. @objc - public init() { - let swift = TeamLog.LabelType.personalInformation - super.init(swift: swift) - } -} + public var previousValue: DBXTeamLogSpaceCapsType { DBXTeamLogSpaceCapsType(swift: swift.previousValue) } + /// New space limit type. + @objc + public var newValue: DBXTeamLogSpaceCapsType { DBXTeamLogSpaceCapsType(swift: swift.newValue) } -/// An unspecified error. -@objc -public class DBXTeamLogLabelTypeTestOnly: DBXTeamLogLabelType { @objc - public init() { - let swift = TeamLog.LabelType.testOnly - super.init(swift: swift) + public init(previousValue: DBXTeamLogSpaceCapsType, newValue: DBXTeamLogSpaceCapsType) { + self.swift = TeamLog.MemberSpaceLimitsChangeCapsTypePolicyDetails(previousValue: previousValue.swift, newValue: newValue.swift) } -} -/// An unspecified error. -@objc -public class DBXTeamLogLabelTypeUserDefinedTag: DBXTeamLogLabelType { - @objc - public init() { - let swift = TeamLog.LabelType.userDefinedTag - super.init(swift: swift) + let swift: TeamLog.MemberSpaceLimitsChangeCapsTypePolicyDetails + + public init(swift: TeamLog.MemberSpaceLimitsChangeCapsTypePolicyDetails) { + self.swift = swift } -} -/// An unspecified error. -@objc -public class DBXTeamLogLabelTypeOther: DBXTeamLogLabelType { + @objc - public init() { - let swift = TeamLog.LabelType.other - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// Information on sessions, in legacy format +/// Objective-C compatible MemberSpaceLimitsChangeCapsTypePolicyType struct @objc -public class DBXTeamLogLegacyDeviceSessionLogInfo: DBXTeamLogDeviceSessionLogInfo { - /// Session unique id. - @objc - public var sessionInfo: DBXTeamLogSessionLogInfo? { guard let swift = subSwift.sessionInfo else { return nil } - return DBXTeamLogSessionLogInfo(swift: swift) - } - - /// The device name. Might be missing due to historical data gap. - @objc - public var displayName: String? { subSwift.displayName } - /// Is device managed by emm. Might be missing due to historical data gap. - @objc - public var isEmmManaged: NSNumber? { subSwift.isEmmManaged as NSNumber? } - /// Information on the hosting platform. Might be missing due to historical data gap. - @objc - public var platform: String? { subSwift.platform } - /// The mac address of the last activity from this session. Might be missing due to historical data gap. - @objc - public var macAddress: String? { subSwift.macAddress } - /// The hosting OS version. Might be missing due to historical data gap. - @objc - public var osVersion: String? { subSwift.osVersion } - /// Information on the hosting device type. Might be missing due to historical data gap. - @objc - public var deviceType: String? { subSwift.deviceType } - /// The Dropbox client version. Might be missing due to historical data gap. - @objc - public var clientVersion: String? { subSwift.clientVersion } - /// Alternative unique device session id, instead of session id field. Might be missing due to historical data - /// gap. +public class DBXTeamLogMemberSpaceLimitsChangeCapsTypePolicyType: NSObject { + /// (no description) @objc - public var legacyUniqId: String? { subSwift.legacyUniqId } + public var description_: String { swift.description_ } @objc - public init( - ipAddress: String?, - created: Date?, - updated: Date?, - sessionInfo: DBXTeamLogSessionLogInfo?, - displayName: String?, - isEmmManaged: NSNumber?, - platform: String?, - macAddress: String?, - osVersion: String?, - deviceType: String?, - clientVersion: String?, - legacyUniqId: String? - ) { - let swift = TeamLog.LegacyDeviceSessionLogInfo( - ipAddress: ipAddress, - created: created, - updated: updated, - sessionInfo: sessionInfo?.swift, - displayName: displayName, - isEmmManaged: isEmmManaged?.boolValue, - platform: platform, - macAddress: macAddress, - osVersion: osVersion, - deviceType: deviceType, - clientVersion: clientVersion, - legacyUniqId: legacyUniqId - ) - self.subSwift = swift - super.init(swift: swift) + public init(description_: String) { + self.swift = TeamLog.MemberSpaceLimitsChangeCapsTypePolicyType(description_: description_) } - let subSwift: TeamLog.LegacyDeviceSessionLogInfo + let swift: TeamLog.MemberSpaceLimitsChangeCapsTypePolicyType - public init(swift: TeamLog.LegacyDeviceSessionLogInfo) { - self.subSwift = swift - super.init(swift: swift) + public init(swift: TeamLog.MemberSpaceLimitsChangeCapsTypePolicyType) { + self.swift = swift } + @objc - public override var description: String { subSwift.description } + public override var description: String { swift.description } } -/// Activated a hold. +/// Changed custom member space limit. @objc -public class DBXTeamLogLegalHoldsActivateAHoldDetails: NSObject { - /// Hold ID. - @objc - public var legalHoldId: String { swift.legalHoldId } - /// Hold name. - @objc - public var name: String { swift.name } - /// Hold start date. +public class DBXTeamLogMemberSpaceLimitsChangeCustomQuotaDetails: NSObject { + /// Previous custom quota value in bytes. @objc - public var startDate: Date { swift.startDate } - /// Hold end date. + public var previousValue: NSNumber { swift.previousValue as NSNumber } + /// New custom quota value in bytes. @objc - public var endDate: Date? { swift.endDate } + public var newValue: NSNumber { swift.newValue as NSNumber } @objc - public init(legalHoldId: String, name: String, startDate: Date, endDate: Date?) { - self.swift = TeamLog.LegalHoldsActivateAHoldDetails(legalHoldId: legalHoldId, name: name, startDate: startDate, endDate: endDate) + public init(previousValue: NSNumber, newValue: NSNumber) { + self.swift = TeamLog.MemberSpaceLimitsChangeCustomQuotaDetails(previousValue: previousValue.uint64Value, newValue: newValue.uint64Value) } - let swift: TeamLog.LegalHoldsActivateAHoldDetails + let swift: TeamLog.MemberSpaceLimitsChangeCustomQuotaDetails - public init(swift: TeamLog.LegalHoldsActivateAHoldDetails) { + public init(swift: TeamLog.MemberSpaceLimitsChangeCustomQuotaDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible LegalHoldsActivateAHoldType struct +/// Objective-C compatible MemberSpaceLimitsChangeCustomQuotaType struct @objc -public class DBXTeamLogLegalHoldsActivateAHoldType: NSObject { +public class DBXTeamLogMemberSpaceLimitsChangeCustomQuotaType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.LegalHoldsActivateAHoldType(description_: description_) + self.swift = TeamLog.MemberSpaceLimitsChangeCustomQuotaType(description_: description_) } - let swift: TeamLog.LegalHoldsActivateAHoldType + let swift: TeamLog.MemberSpaceLimitsChangeCustomQuotaType - public init(swift: TeamLog.LegalHoldsActivateAHoldType) { + public init(swift: TeamLog.MemberSpaceLimitsChangeCustomQuotaType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Added members to a hold. +/// Changed team default member space limit. @objc -public class DBXTeamLogLegalHoldsAddMembersDetails: NSObject { - /// Hold ID. +public class DBXTeamLogMemberSpaceLimitsChangePolicyDetails: NSObject { + /// Previous team default limit value in bytes. Might be missing due to historical data gap. @objc - public var legalHoldId: String { swift.legalHoldId } - /// Hold name. + public var previousValue: NSNumber? { swift.previousValue as NSNumber? } + /// New team default limit value in bytes. Might be missing due to historical data gap. @objc - public var name: String { swift.name } + public var newValue: NSNumber? { swift.newValue as NSNumber? } @objc - public init(legalHoldId: String, name: String) { - self.swift = TeamLog.LegalHoldsAddMembersDetails(legalHoldId: legalHoldId, name: name) + public init(previousValue: NSNumber?, newValue: NSNumber?) { + self.swift = TeamLog.MemberSpaceLimitsChangePolicyDetails(previousValue: previousValue?.uint64Value, newValue: newValue?.uint64Value) } - let swift: TeamLog.LegalHoldsAddMembersDetails + let swift: TeamLog.MemberSpaceLimitsChangePolicyDetails - public init(swift: TeamLog.LegalHoldsAddMembersDetails) { + public init(swift: TeamLog.MemberSpaceLimitsChangePolicyDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible LegalHoldsAddMembersType struct +/// Objective-C compatible MemberSpaceLimitsChangePolicyType struct @objc -public class DBXTeamLogLegalHoldsAddMembersType: NSObject { +public class DBXTeamLogMemberSpaceLimitsChangePolicyType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.LegalHoldsAddMembersType(description_: description_) + self.swift = TeamLog.MemberSpaceLimitsChangePolicyType(description_: description_) } - let swift: TeamLog.LegalHoldsAddMembersType + let swift: TeamLog.MemberSpaceLimitsChangePolicyType - public init(swift: TeamLog.LegalHoldsAddMembersType) { + public init(swift: TeamLog.MemberSpaceLimitsChangePolicyType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Edited details for a hold. +/// Changed space limit status. @objc -public class DBXTeamLogLegalHoldsChangeHoldDetailsDetails: NSObject { - /// Hold ID. - @objc - public var legalHoldId: String { swift.legalHoldId } - /// Hold name. - @objc - public var name: String { swift.name } - /// Previous details. +public class DBXTeamLogMemberSpaceLimitsChangeStatusDetails: NSObject { + /// Previous storage quota status. @objc - public var previousValue: String { swift.previousValue } - /// New details. + public var previousValue: DBXTeamLogSpaceLimitsStatus { DBXTeamLogSpaceLimitsStatus(swift: swift.previousValue) } + /// New storage quota status. @objc - public var newValue: String { swift.newValue } + public var newValue: DBXTeamLogSpaceLimitsStatus { DBXTeamLogSpaceLimitsStatus(swift: swift.newValue) } @objc - public init(legalHoldId: String, name: String, previousValue: String, newValue: String) { - self.swift = TeamLog.LegalHoldsChangeHoldDetailsDetails(legalHoldId: legalHoldId, name: name, previousValue: previousValue, newValue: newValue) + public init(previousValue: DBXTeamLogSpaceLimitsStatus, newValue: DBXTeamLogSpaceLimitsStatus) { + self.swift = TeamLog.MemberSpaceLimitsChangeStatusDetails(previousValue: previousValue.swift, newValue: newValue.swift) } - let swift: TeamLog.LegalHoldsChangeHoldDetailsDetails + let swift: TeamLog.MemberSpaceLimitsChangeStatusDetails - public init(swift: TeamLog.LegalHoldsChangeHoldDetailsDetails) { + public init(swift: TeamLog.MemberSpaceLimitsChangeStatusDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible LegalHoldsChangeHoldDetailsType struct +/// Objective-C compatible MemberSpaceLimitsChangeStatusType struct @objc -public class DBXTeamLogLegalHoldsChangeHoldDetailsType: NSObject { +public class DBXTeamLogMemberSpaceLimitsChangeStatusType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.LegalHoldsChangeHoldDetailsType(description_: description_) + self.swift = TeamLog.MemberSpaceLimitsChangeStatusType(description_: description_) } - let swift: TeamLog.LegalHoldsChangeHoldDetailsType + let swift: TeamLog.MemberSpaceLimitsChangeStatusType - public init(swift: TeamLog.LegalHoldsChangeHoldDetailsType) { + public init(swift: TeamLog.MemberSpaceLimitsChangeStatusType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Renamed a hold. +/// Removed custom member space limit. @objc -public class DBXTeamLogLegalHoldsChangeHoldNameDetails: NSObject { - /// Hold ID. - @objc - public var legalHoldId: String { swift.legalHoldId } - /// Previous Name. - @objc - public var previousValue: String { swift.previousValue } - /// New Name. - @objc - public var newValue: String { swift.newValue } - - @objc - public init(legalHoldId: String, previousValue: String, newValue: String) { - self.swift = TeamLog.LegalHoldsChangeHoldNameDetails(legalHoldId: legalHoldId, previousValue: previousValue, newValue: newValue) - } +public class DBXTeamLogMemberSpaceLimitsRemoveCustomQuotaDetails: NSObject { - let swift: TeamLog.LegalHoldsChangeHoldNameDetails + let swift: TeamLog.MemberSpaceLimitsRemoveCustomQuotaDetails - public init(swift: TeamLog.LegalHoldsChangeHoldNameDetails) { + public init(swift: TeamLog.MemberSpaceLimitsRemoveCustomQuotaDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible LegalHoldsChangeHoldNameType struct +/// Objective-C compatible MemberSpaceLimitsRemoveCustomQuotaType struct @objc -public class DBXTeamLogLegalHoldsChangeHoldNameType: NSObject { +public class DBXTeamLogMemberSpaceLimitsRemoveCustomQuotaType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.LegalHoldsChangeHoldNameType(description_: description_) + self.swift = TeamLog.MemberSpaceLimitsRemoveCustomQuotaType(description_: description_) } - let swift: TeamLog.LegalHoldsChangeHoldNameType + let swift: TeamLog.MemberSpaceLimitsRemoveCustomQuotaType - public init(swift: TeamLog.LegalHoldsChangeHoldNameType) { + public init(swift: TeamLog.MemberSpaceLimitsRemoveCustomQuotaType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Exported hold. +/// Removed members from member space limit exception list. @objc -public class DBXTeamLogLegalHoldsExportAHoldDetails: NSObject { - /// Hold ID. - @objc - public var legalHoldId: String { swift.legalHoldId } - /// Hold name. - @objc - public var name: String { swift.name } - /// Export name. - @objc - public var exportName: String? { swift.exportName } - - @objc - public init(legalHoldId: String, name: String, exportName: String?) { - self.swift = TeamLog.LegalHoldsExportAHoldDetails(legalHoldId: legalHoldId, name: name, exportName: exportName) - } +public class DBXTeamLogMemberSpaceLimitsRemoveExceptionDetails: NSObject { - let swift: TeamLog.LegalHoldsExportAHoldDetails + let swift: TeamLog.MemberSpaceLimitsRemoveExceptionDetails - public init(swift: TeamLog.LegalHoldsExportAHoldDetails) { + public init(swift: TeamLog.MemberSpaceLimitsRemoveExceptionDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible LegalHoldsExportAHoldType struct +/// Objective-C compatible MemberSpaceLimitsRemoveExceptionType struct @objc -public class DBXTeamLogLegalHoldsExportAHoldType: NSObject { +public class DBXTeamLogMemberSpaceLimitsRemoveExceptionType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.LegalHoldsExportAHoldType(description_: description_) + self.swift = TeamLog.MemberSpaceLimitsRemoveExceptionType(description_: description_) } - let swift: TeamLog.LegalHoldsExportAHoldType + let swift: TeamLog.MemberSpaceLimitsRemoveExceptionType - public init(swift: TeamLog.LegalHoldsExportAHoldType) { + public init(swift: TeamLog.MemberSpaceLimitsRemoveExceptionType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Canceled export for a hold. +/// Objective-C compatible MemberStatus union @objc -public class DBXTeamLogLegalHoldsExportCancelledDetails: NSObject { - /// Hold ID. +public class DBXTeamLogMemberStatus: NSObject { + let swift: TeamLog.MemberStatus + + public init(swift: TeamLog.MemberStatus) { + self.swift = swift + } + + public static func factory(swift: TeamLog.MemberStatus) -> DBXTeamLogMemberStatus { + switch swift { + case .active: + return DBXTeamLogMemberStatusActive() + case .invited: + return DBXTeamLogMemberStatusInvited() + case .movedToAnotherTeam: + return DBXTeamLogMemberStatusMovedToAnotherTeam() + case .notJoined: + return DBXTeamLogMemberStatusNotJoined() + case .removed: + return DBXTeamLogMemberStatusRemoved() + case .suspended: + return DBXTeamLogMemberStatusSuspended() + case .other: + return DBXTeamLogMemberStatusOther() + } + } + @objc - public var legalHoldId: String { swift.legalHoldId } - /// Hold name. + public override var description: String { swift.description } + @objc - public var name: String { swift.name } - /// Export name. + public var asActive: DBXTeamLogMemberStatusActive? { + return self as? DBXTeamLogMemberStatusActive + } + @objc - public var exportName: String { swift.exportName } + public var asInvited: DBXTeamLogMemberStatusInvited? { + return self as? DBXTeamLogMemberStatusInvited + } @objc - public init(legalHoldId: String, name: String, exportName: String) { - self.swift = TeamLog.LegalHoldsExportCancelledDetails(legalHoldId: legalHoldId, name: name, exportName: exportName) + public var asMovedToAnotherTeam: DBXTeamLogMemberStatusMovedToAnotherTeam? { + return self as? DBXTeamLogMemberStatusMovedToAnotherTeam } - let swift: TeamLog.LegalHoldsExportCancelledDetails + @objc + public var asNotJoined: DBXTeamLogMemberStatusNotJoined? { + return self as? DBXTeamLogMemberStatusNotJoined + } - public init(swift: TeamLog.LegalHoldsExportCancelledDetails) { - self.swift = swift + @objc + public var asRemoved: DBXTeamLogMemberStatusRemoved? { + return self as? DBXTeamLogMemberStatusRemoved } @objc - public override var description: String { swift.description } + public var asSuspended: DBXTeamLogMemberStatusSuspended? { + return self as? DBXTeamLogMemberStatusSuspended + } + + @objc + public var asOther: DBXTeamLogMemberStatusOther? { + return self as? DBXTeamLogMemberStatusOther + } } -/// Objective-C compatible LegalHoldsExportCancelledType struct +/// An unspecified error. @objc -public class DBXTeamLogLegalHoldsExportCancelledType: NSObject { - /// (no description) +public class DBXTeamLogMemberStatusActive: DBXTeamLogMemberStatus { @objc - public var description_: String { swift.description_ } + public init() { + let swift = TeamLog.MemberStatus.active + super.init(swift: swift) + } +} +/// An unspecified error. +@objc +public class DBXTeamLogMemberStatusInvited: DBXTeamLogMemberStatus { @objc - public init(description_: String) { - self.swift = TeamLog.LegalHoldsExportCancelledType(description_: description_) + public init() { + let swift = TeamLog.MemberStatus.invited + super.init(swift: swift) } +} - let swift: TeamLog.LegalHoldsExportCancelledType - - public init(swift: TeamLog.LegalHoldsExportCancelledType) { - self.swift = swift +/// An unspecified error. +@objc +public class DBXTeamLogMemberStatusMovedToAnotherTeam: DBXTeamLogMemberStatus { + @objc + public init() { + let swift = TeamLog.MemberStatus.movedToAnotherTeam + super.init(swift: swift) } +} +/// An unspecified error. +@objc +public class DBXTeamLogMemberStatusNotJoined: DBXTeamLogMemberStatus { @objc - public override var description: String { swift.description } + public init() { + let swift = TeamLog.MemberStatus.notJoined + super.init(swift: swift) + } } -/// Downloaded export for a hold. +/// An unspecified error. @objc -public class DBXTeamLogLegalHoldsExportDownloadedDetails: NSObject { - /// Hold ID. - @objc - public var legalHoldId: String { swift.legalHoldId } - /// Hold name. +public class DBXTeamLogMemberStatusRemoved: DBXTeamLogMemberStatus { @objc - public var name: String { swift.name } - /// Export name. + public init() { + let swift = TeamLog.MemberStatus.removed + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogMemberStatusSuspended: DBXTeamLogMemberStatus { @objc - public var exportName: String { swift.exportName } - /// Part. + public init() { + let swift = TeamLog.MemberStatus.suspended + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogMemberStatusOther: DBXTeamLogMemberStatus { @objc - public var part: String? { swift.part } - /// Filename. + public init() { + let swift = TeamLog.MemberStatus.other + super.init(swift: swift) + } +} + +/// Suggested person to add to team. +@objc +public class DBXTeamLogMemberSuggestDetails: NSObject { + /// suggested users emails. @objc - public var fileName: String? { swift.fileName } + public var suggestedMembers: Array { swift.suggestedMembers } @objc - public init(legalHoldId: String, name: String, exportName: String, part: String?, fileName: String?) { - self.swift = TeamLog.LegalHoldsExportDownloadedDetails(legalHoldId: legalHoldId, name: name, exportName: exportName, part: part, fileName: fileName) + public init(suggestedMembers: Array) { + self.swift = TeamLog.MemberSuggestDetails(suggestedMembers: suggestedMembers) } - let swift: TeamLog.LegalHoldsExportDownloadedDetails + let swift: TeamLog.MemberSuggestDetails - public init(swift: TeamLog.LegalHoldsExportDownloadedDetails) { + public init(swift: TeamLog.MemberSuggestDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible LegalHoldsExportDownloadedType struct +/// Objective-C compatible MemberSuggestType struct @objc -public class DBXTeamLogLegalHoldsExportDownloadedType: NSObject { +public class DBXTeamLogMemberSuggestType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.LegalHoldsExportDownloadedType(description_: description_) + self.swift = TeamLog.MemberSuggestType(description_: description_) } - let swift: TeamLog.LegalHoldsExportDownloadedType + let swift: TeamLog.MemberSuggestType - public init(swift: TeamLog.LegalHoldsExportDownloadedType) { + public init(swift: TeamLog.MemberSuggestType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Removed export for a hold. +/// Enabled/disabled option for team members to suggest people to add to team. @objc -public class DBXTeamLogLegalHoldsExportRemovedDetails: NSObject { - /// Hold ID. - @objc - public var legalHoldId: String { swift.legalHoldId } - /// Hold name. +public class DBXTeamLogMemberSuggestionsChangePolicyDetails: NSObject { + /// New team member suggestions policy. @objc - public var name: String { swift.name } - /// Export name. + public var newValue: DBXTeamLogMemberSuggestionsPolicy { DBXTeamLogMemberSuggestionsPolicy(swift: swift.newValue) } + /// Previous team member suggestions policy. Might be missing due to historical data gap. @objc - public var exportName: String { swift.exportName } + public var previousValue: DBXTeamLogMemberSuggestionsPolicy? { guard let swift = swift.previousValue else { return nil }; return DBXTeamLogMemberSuggestionsPolicy(swift: swift) } @objc - public init(legalHoldId: String, name: String, exportName: String) { - self.swift = TeamLog.LegalHoldsExportRemovedDetails(legalHoldId: legalHoldId, name: name, exportName: exportName) + public init(newValue: DBXTeamLogMemberSuggestionsPolicy, previousValue: DBXTeamLogMemberSuggestionsPolicy?) { + self.swift = TeamLog.MemberSuggestionsChangePolicyDetails(newValue: newValue.swift, previousValue: previousValue?.swift) } - let swift: TeamLog.LegalHoldsExportRemovedDetails + let swift: TeamLog.MemberSuggestionsChangePolicyDetails - public init(swift: TeamLog.LegalHoldsExportRemovedDetails) { + public init(swift: TeamLog.MemberSuggestionsChangePolicyDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible LegalHoldsExportRemovedType struct +/// Objective-C compatible MemberSuggestionsChangePolicyType struct @objc -public class DBXTeamLogLegalHoldsExportRemovedType: NSObject { +public class DBXTeamLogMemberSuggestionsChangePolicyType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.LegalHoldsExportRemovedType(description_: description_) + self.swift = TeamLog.MemberSuggestionsChangePolicyType(description_: description_) } - let swift: TeamLog.LegalHoldsExportRemovedType + let swift: TeamLog.MemberSuggestionsChangePolicyType - public init(swift: TeamLog.LegalHoldsExportRemovedType) { + public init(swift: TeamLog.MemberSuggestionsChangePolicyType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Released a hold. +/// Member suggestions policy @objc -public class DBXTeamLogLegalHoldsReleaseAHoldDetails: NSObject { - /// Hold ID. +public class DBXTeamLogMemberSuggestionsPolicy: NSObject { + let swift: TeamLog.MemberSuggestionsPolicy + + public init(swift: TeamLog.MemberSuggestionsPolicy) { + self.swift = swift + } + + public static func factory(swift: TeamLog.MemberSuggestionsPolicy) -> DBXTeamLogMemberSuggestionsPolicy { + switch swift { + case .disabled: + return DBXTeamLogMemberSuggestionsPolicyDisabled() + case .enabled: + return DBXTeamLogMemberSuggestionsPolicyEnabled() + case .other: + return DBXTeamLogMemberSuggestionsPolicyOther() + } + } + @objc - public var legalHoldId: String { swift.legalHoldId } - /// Hold name. + public override var description: String { swift.description } + @objc - public var name: String { swift.name } + public var asDisabled: DBXTeamLogMemberSuggestionsPolicyDisabled? { + return self as? DBXTeamLogMemberSuggestionsPolicyDisabled + } @objc - public init(legalHoldId: String, name: String) { - self.swift = TeamLog.LegalHoldsReleaseAHoldDetails(legalHoldId: legalHoldId, name: name) + public var asEnabled: DBXTeamLogMemberSuggestionsPolicyEnabled? { + return self as? DBXTeamLogMemberSuggestionsPolicyEnabled } - let swift: TeamLog.LegalHoldsReleaseAHoldDetails - - public init(swift: TeamLog.LegalHoldsReleaseAHoldDetails) { - self.swift = swift + @objc + public var asOther: DBXTeamLogMemberSuggestionsPolicyOther? { + return self as? DBXTeamLogMemberSuggestionsPolicyOther } +} +/// An unspecified error. +@objc +public class DBXTeamLogMemberSuggestionsPolicyDisabled: DBXTeamLogMemberSuggestionsPolicy { @objc - public override var description: String { swift.description } + public init() { + let swift = TeamLog.MemberSuggestionsPolicy.disabled + super.init(swift: swift) + } } -/// Objective-C compatible LegalHoldsReleaseAHoldType struct +/// An unspecified error. @objc -public class DBXTeamLogLegalHoldsReleaseAHoldType: NSObject { - /// (no description) +public class DBXTeamLogMemberSuggestionsPolicyEnabled: DBXTeamLogMemberSuggestionsPolicy { @objc - public var description_: String { swift.description_ } + public init() { + let swift = TeamLog.MemberSuggestionsPolicy.enabled + super.init(swift: swift) + } +} +/// An unspecified error. +@objc +public class DBXTeamLogMemberSuggestionsPolicyOther: DBXTeamLogMemberSuggestionsPolicy { @objc - public init(description_: String) { - self.swift = TeamLog.LegalHoldsReleaseAHoldType(description_: description_) + public init() { + let swift = TeamLog.MemberSuggestionsPolicy.other + super.init(swift: swift) } +} - let swift: TeamLog.LegalHoldsReleaseAHoldType +/// Transferred contents of deleted member account to another member. +@objc +public class DBXTeamLogMemberTransferAccountContentsDetails: NSObject { - public init(swift: TeamLog.LegalHoldsReleaseAHoldType) { + let swift: TeamLog.MemberTransferAccountContentsDetails + + public init(swift: TeamLog.MemberTransferAccountContentsDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Removed members from a hold. +/// Objective-C compatible MemberTransferAccountContentsType struct @objc -public class DBXTeamLogLegalHoldsRemoveMembersDetails: NSObject { - /// Hold ID. - @objc - public var legalHoldId: String { swift.legalHoldId } - /// Hold name. +public class DBXTeamLogMemberTransferAccountContentsType: NSObject { + /// (no description) @objc - public var name: String { swift.name } + public var description_: String { swift.description_ } @objc - public init(legalHoldId: String, name: String) { - self.swift = TeamLog.LegalHoldsRemoveMembersDetails(legalHoldId: legalHoldId, name: name) + public init(description_: String) { + self.swift = TeamLog.MemberTransferAccountContentsType(description_: description_) } - let swift: TeamLog.LegalHoldsRemoveMembersDetails + let swift: TeamLog.MemberTransferAccountContentsType - public init(swift: TeamLog.LegalHoldsRemoveMembersDetails) { + public init(swift: TeamLog.MemberTransferAccountContentsType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible LegalHoldsRemoveMembersType struct +/// Internal only - fields for target team computations @objc -public class DBXTeamLogLegalHoldsRemoveMembersType: NSObject { - /// (no description) +public class DBXTeamLogMemberTransferredInternalFields: NSObject { + /// Internal only - team user was moved from. @objc - public var description_: String { swift.description_ } + public var sourceTeamId: String { swift.sourceTeamId } + /// Internal only - team user was moved to. + @objc + public var targetTeamId: String { swift.targetTeamId } @objc - public init(description_: String) { - self.swift = TeamLog.LegalHoldsRemoveMembersType(description_: description_) + public init(sourceTeamId: String, targetTeamId: String) { + self.swift = TeamLog.MemberTransferredInternalFields(sourceTeamId: sourceTeamId, targetTeamId: targetTeamId) } - let swift: TeamLog.LegalHoldsRemoveMembersType + let swift: TeamLog.MemberTransferredInternalFields - public init(swift: TeamLog.LegalHoldsRemoveMembersType) { + public init(swift: TeamLog.MemberTransferredInternalFields) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Created a summary report for a hold. +/// Enabled/disabled Microsoft login for team. @objc -public class DBXTeamLogLegalHoldsReportAHoldDetails: NSObject { - /// Hold ID. +public class DBXTeamLogMicrosoftLoginChangePolicyDetails: NSObject { + /// New Microsoft login policy. @objc - public var legalHoldId: String { swift.legalHoldId } - /// Hold name. + public var newValue: DBXTeamLogMicrosoftLoginPolicy { DBXTeamLogMicrosoftLoginPolicy(swift: swift.newValue) } + /// Previous Microsoft login policy. Might be missing due to historical data gap. @objc - public var name: String { swift.name } + public var previousValue: DBXTeamLogMicrosoftLoginPolicy? { guard let swift = swift.previousValue else { return nil }; return DBXTeamLogMicrosoftLoginPolicy(swift: swift) } @objc - public init(legalHoldId: String, name: String) { - self.swift = TeamLog.LegalHoldsReportAHoldDetails(legalHoldId: legalHoldId, name: name) + public init(newValue: DBXTeamLogMicrosoftLoginPolicy, previousValue: DBXTeamLogMicrosoftLoginPolicy?) { + self.swift = TeamLog.MicrosoftLoginChangePolicyDetails(newValue: newValue.swift, previousValue: previousValue?.swift) } - let swift: TeamLog.LegalHoldsReportAHoldDetails + let swift: TeamLog.MicrosoftLoginChangePolicyDetails - public init(swift: TeamLog.LegalHoldsReportAHoldDetails) { + public init(swift: TeamLog.MicrosoftLoginChangePolicyDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible LegalHoldsReportAHoldType struct +/// Objective-C compatible MicrosoftLoginChangePolicyType struct @objc -public class DBXTeamLogLegalHoldsReportAHoldType: NSObject { +public class DBXTeamLogMicrosoftLoginChangePolicyType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.LegalHoldsReportAHoldType(description_: description_) + self.swift = TeamLog.MicrosoftLoginChangePolicyType(description_: description_) } - let swift: TeamLog.LegalHoldsReportAHoldType + let swift: TeamLog.MicrosoftLoginChangePolicyType - public init(swift: TeamLog.LegalHoldsReportAHoldType) { + public init(swift: TeamLog.MicrosoftLoginChangePolicyType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// The device sessions that user is linked to. +/// Microsoft login policy @objc -public class DBXTeamLogLinkedDeviceLogInfo: NSObject { - let swift: TeamLog.LinkedDeviceLogInfo +public class DBXTeamLogMicrosoftLoginPolicy: NSObject { + let swift: TeamLog.MicrosoftLoginPolicy - public init(swift: TeamLog.LinkedDeviceLogInfo) { + public init(swift: TeamLog.MicrosoftLoginPolicy) { self.swift = swift } - public static func factory(swift: TeamLog.LinkedDeviceLogInfo) -> DBXTeamLogLinkedDeviceLogInfo { + public static func factory(swift: TeamLog.MicrosoftLoginPolicy) -> DBXTeamLogMicrosoftLoginPolicy { switch swift { - case .desktopDeviceSession(let swiftArg): - let arg = DBXTeamLogDesktopDeviceSessionLogInfo(swift: swiftArg) - return DBXTeamLogLinkedDeviceLogInfoDesktopDeviceSession(arg) - case .legacyDeviceSession(let swiftArg): - let arg = DBXTeamLogLegacyDeviceSessionLogInfo(swift: swiftArg) - return DBXTeamLogLinkedDeviceLogInfoLegacyDeviceSession(arg) - case .mobileDeviceSession(let swiftArg): - let arg = DBXTeamLogMobileDeviceSessionLogInfo(swift: swiftArg) - return DBXTeamLogLinkedDeviceLogInfoMobileDeviceSession(arg) - case .webDeviceSession(let swiftArg): - let arg = DBXTeamLogWebDeviceSessionLogInfo(swift: swiftArg) - return DBXTeamLogLinkedDeviceLogInfoWebDeviceSession(arg) + case .default_: + return DBXTeamLogMicrosoftLoginPolicyDefault_() + case .disabled: + return DBXTeamLogMicrosoftLoginPolicyDisabled() + case .enabled: + return DBXTeamLogMicrosoftLoginPolicyEnabled() case .other: - return DBXTeamLogLinkedDeviceLogInfoOther() + return DBXTeamLogMicrosoftLoginPolicyOther() } } @@ -46291,114 +61073,132 @@ public class DBXTeamLogLinkedDeviceLogInfo: NSObject { public override var description: String { swift.description } @objc - public var asDesktopDeviceSession: DBXTeamLogLinkedDeviceLogInfoDesktopDeviceSession? { - self as? DBXTeamLogLinkedDeviceLogInfoDesktopDeviceSession + public var asDefault_: DBXTeamLogMicrosoftLoginPolicyDefault_? { + return self as? DBXTeamLogMicrosoftLoginPolicyDefault_ } @objc - public var asLegacyDeviceSession: DBXTeamLogLinkedDeviceLogInfoLegacyDeviceSession? { - self as? DBXTeamLogLinkedDeviceLogInfoLegacyDeviceSession + public var asDisabled: DBXTeamLogMicrosoftLoginPolicyDisabled? { + return self as? DBXTeamLogMicrosoftLoginPolicyDisabled } @objc - public var asMobileDeviceSession: DBXTeamLogLinkedDeviceLogInfoMobileDeviceSession? { - self as? DBXTeamLogLinkedDeviceLogInfoMobileDeviceSession + public var asEnabled: DBXTeamLogMicrosoftLoginPolicyEnabled? { + return self as? DBXTeamLogMicrosoftLoginPolicyEnabled } @objc - public var asWebDeviceSession: DBXTeamLogLinkedDeviceLogInfoWebDeviceSession? { - self as? DBXTeamLogLinkedDeviceLogInfoWebDeviceSession + public var asOther: DBXTeamLogMicrosoftLoginPolicyOther? { + return self as? DBXTeamLogMicrosoftLoginPolicyOther } +} +/// An unspecified error. +@objc +public class DBXTeamLogMicrosoftLoginPolicyDefault_: DBXTeamLogMicrosoftLoginPolicy { @objc - public var asOther: DBXTeamLogLinkedDeviceLogInfoOther? { - self as? DBXTeamLogLinkedDeviceLogInfoOther + public init() { + let swift = TeamLog.MicrosoftLoginPolicy.default_ + super.init(swift: swift) } } -/// desktop device session's details. +/// An unspecified error. @objc -public class DBXTeamLogLinkedDeviceLogInfoDesktopDeviceSession: DBXTeamLogLinkedDeviceLogInfo { - @objc - public var desktopDeviceSession: DBXTeamLogDesktopDeviceSessionLogInfo - +public class DBXTeamLogMicrosoftLoginPolicyDisabled: DBXTeamLogMicrosoftLoginPolicy { @objc - public init(_ arg: DBXTeamLogDesktopDeviceSessionLogInfo) { - self.desktopDeviceSession = arg - let swift = TeamLog.LinkedDeviceLogInfo.desktopDeviceSession(arg.subSwift) + public init() { + let swift = TeamLog.MicrosoftLoginPolicy.disabled super.init(swift: swift) } } -/// legacy device session's details. +/// An unspecified error. @objc -public class DBXTeamLogLinkedDeviceLogInfoLegacyDeviceSession: DBXTeamLogLinkedDeviceLogInfo { +public class DBXTeamLogMicrosoftLoginPolicyEnabled: DBXTeamLogMicrosoftLoginPolicy { @objc - public var legacyDeviceSession: DBXTeamLogLegacyDeviceSessionLogInfo - - @objc - public init(_ arg: DBXTeamLogLegacyDeviceSessionLogInfo) { - self.legacyDeviceSession = arg - let swift = TeamLog.LinkedDeviceLogInfo.legacyDeviceSession(arg.subSwift) + public init() { + let swift = TeamLog.MicrosoftLoginPolicy.enabled super.init(swift: swift) } } -/// mobile device session's details. +/// An unspecified error. @objc -public class DBXTeamLogLinkedDeviceLogInfoMobileDeviceSession: DBXTeamLogLinkedDeviceLogInfo { - @objc - public var mobileDeviceSession: DBXTeamLogMobileDeviceSessionLogInfo - +public class DBXTeamLogMicrosoftLoginPolicyOther: DBXTeamLogMicrosoftLoginPolicy { @objc - public init(_ arg: DBXTeamLogMobileDeviceSessionLogInfo) { - self.mobileDeviceSession = arg - let swift = TeamLog.LinkedDeviceLogInfo.mobileDeviceSession(arg.subSwift) + public init() { + let swift = TeamLog.MicrosoftLoginPolicy.other super.init(swift: swift) } } -/// web device session's details. +/// Enabled/disabled Microsoft Office add-in. @objc -public class DBXTeamLogLinkedDeviceLogInfoWebDeviceSession: DBXTeamLogLinkedDeviceLogInfo { +public class DBXTeamLogMicrosoftOfficeAddinChangePolicyDetails: NSObject { + /// New Microsoft Office addin policy. @objc - public var webDeviceSession: DBXTeamLogWebDeviceSessionLogInfo + public var newValue: DBXTeamLogMicrosoftOfficeAddinPolicy { DBXTeamLogMicrosoftOfficeAddinPolicy(swift: swift.newValue) } + /// Previous Microsoft Office addin policy. Might be missing due to historical data gap. + @objc + public var previousValue: DBXTeamLogMicrosoftOfficeAddinPolicy? { guard let swift = swift.previousValue else { return nil }; return DBXTeamLogMicrosoftOfficeAddinPolicy(swift: swift) } @objc - public init(_ arg: DBXTeamLogWebDeviceSessionLogInfo) { - self.webDeviceSession = arg - let swift = TeamLog.LinkedDeviceLogInfo.webDeviceSession(arg.subSwift) - super.init(swift: swift) + public init(newValue: DBXTeamLogMicrosoftOfficeAddinPolicy, previousValue: DBXTeamLogMicrosoftOfficeAddinPolicy?) { + self.swift = TeamLog.MicrosoftOfficeAddinChangePolicyDetails(newValue: newValue.swift, previousValue: previousValue?.swift) + } + + let swift: TeamLog.MicrosoftOfficeAddinChangePolicyDetails + + public init(swift: TeamLog.MicrosoftOfficeAddinChangePolicyDetails) { + self.swift = swift } + + + @objc + public override var description: String { swift.description } } -/// An unspecified error. +/// Objective-C compatible MicrosoftOfficeAddinChangePolicyType struct @objc -public class DBXTeamLogLinkedDeviceLogInfoOther: DBXTeamLogLinkedDeviceLogInfo { +public class DBXTeamLogMicrosoftOfficeAddinChangePolicyType: NSObject { + /// (no description) @objc - public init() { - let swift = TeamLog.LinkedDeviceLogInfo.other - super.init(swift: swift) + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.MicrosoftOfficeAddinChangePolicyType(description_: description_) + } + + let swift: TeamLog.MicrosoftOfficeAddinChangePolicyType + + public init(swift: TeamLog.MicrosoftOfficeAddinChangePolicyType) { + self.swift = swift } + + + @objc + public override var description: String { swift.description } } -/// File lock status +/// Microsoft Office addin policy @objc -public class DBXTeamLogLockStatus: NSObject { - let swift: TeamLog.LockStatus +public class DBXTeamLogMicrosoftOfficeAddinPolicy: NSObject { + let swift: TeamLog.MicrosoftOfficeAddinPolicy - public init(swift: TeamLog.LockStatus) { + public init(swift: TeamLog.MicrosoftOfficeAddinPolicy) { self.swift = swift } - public static func factory(swift: TeamLog.LockStatus) -> DBXTeamLogLockStatus { + public static func factory(swift: TeamLog.MicrosoftOfficeAddinPolicy) -> DBXTeamLogMicrosoftOfficeAddinPolicy { switch swift { - case .locked: - return DBXTeamLogLockStatusLocked() - case .unlocked: - return DBXTeamLogLockStatusUnlocked() + case .disabled: + return DBXTeamLogMicrosoftOfficeAddinPolicyDisabled() + case .enabled: + return DBXTeamLogMicrosoftOfficeAddinPolicyEnabled() case .other: - return DBXTeamLogLockStatusOther() + return DBXTeamLogMicrosoftOfficeAddinPolicyOther() } } @@ -46406,2397 +61206,2111 @@ public class DBXTeamLogLockStatus: NSObject { public override var description: String { swift.description } @objc - public var asLocked: DBXTeamLogLockStatusLocked? { - self as? DBXTeamLogLockStatusLocked + public var asDisabled: DBXTeamLogMicrosoftOfficeAddinPolicyDisabled? { + return self as? DBXTeamLogMicrosoftOfficeAddinPolicyDisabled } @objc - public var asUnlocked: DBXTeamLogLockStatusUnlocked? { - self as? DBXTeamLogLockStatusUnlocked + public var asEnabled: DBXTeamLogMicrosoftOfficeAddinPolicyEnabled? { + return self as? DBXTeamLogMicrosoftOfficeAddinPolicyEnabled } @objc - public var asOther: DBXTeamLogLockStatusOther? { - self as? DBXTeamLogLockStatusOther + public var asOther: DBXTeamLogMicrosoftOfficeAddinPolicyOther? { + return self as? DBXTeamLogMicrosoftOfficeAddinPolicyOther } } /// An unspecified error. @objc -public class DBXTeamLogLockStatusLocked: DBXTeamLogLockStatus { +public class DBXTeamLogMicrosoftOfficeAddinPolicyDisabled: DBXTeamLogMicrosoftOfficeAddinPolicy { @objc public init() { - let swift = TeamLog.LockStatus.locked + let swift = TeamLog.MicrosoftOfficeAddinPolicy.disabled super.init(swift: swift) } } /// An unspecified error. @objc -public class DBXTeamLogLockStatusUnlocked: DBXTeamLogLockStatus { +public class DBXTeamLogMicrosoftOfficeAddinPolicyEnabled: DBXTeamLogMicrosoftOfficeAddinPolicy { @objc public init() { - let swift = TeamLog.LockStatus.unlocked + let swift = TeamLog.MicrosoftOfficeAddinPolicy.enabled super.init(swift: swift) } } /// An unspecified error. @objc -public class DBXTeamLogLockStatusOther: DBXTeamLogLockStatus { +public class DBXTeamLogMicrosoftOfficeAddinPolicyOther: DBXTeamLogMicrosoftOfficeAddinPolicy { @objc public init() { - let swift = TeamLog.LockStatus.other + let swift = TeamLog.MicrosoftOfficeAddinPolicy.other super.init(swift: swift) } } -/// Failed to sign in. +/// An indication that an error occurred while retrieving the event. Some attributes of the event may be omitted as +/// a result. @objc -public class DBXTeamLogLoginFailDetails: NSObject { - /// Tells if the login device is EMM managed. Might be missing due to historical data gap. - @objc - public var isEmmManaged: NSNumber? { swift.isEmmManaged as NSNumber? } - /// Login method. - @objc - public var loginMethod: DBXTeamLogLoginMethod { DBXTeamLogLoginMethod(swift: swift.loginMethod) } - /// Error details. +public class DBXTeamLogMissingDetails: NSObject { + /// All the data that could be retrieved and converted from the source event. @objc - public var errorDetails: DBXTeamLogFailureDetailsLogInfo { DBXTeamLogFailureDetailsLogInfo(swift: swift.errorDetails) } + public var sourceEventFields: String? { swift.sourceEventFields } @objc - public init(loginMethod: DBXTeamLogLoginMethod, errorDetails: DBXTeamLogFailureDetailsLogInfo, isEmmManaged: NSNumber?) { - self.swift = TeamLog.LoginFailDetails(loginMethod: loginMethod.swift, errorDetails: errorDetails.swift, isEmmManaged: isEmmManaged?.boolValue) + public init(sourceEventFields: String?) { + self.swift = TeamLog.MissingDetails(sourceEventFields: sourceEventFields) } - let swift: TeamLog.LoginFailDetails + let swift: TeamLog.MissingDetails - public init(swift: TeamLog.LoginFailDetails) { + public init(swift: TeamLog.MissingDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible LoginFailType struct +/// Information about linked Dropbox mobile client sessions @objc -public class DBXTeamLogLoginFailType: NSObject { - /// (no description) +public class DBXTeamLogMobileDeviceSessionLogInfo: DBXTeamLogDeviceSessionLogInfo { + /// Mobile session unique id. @objc - public var description_: String { swift.description_ } - + public var sessionInfo: DBXTeamLogMobileSessionLogInfo? { guard let swift = subSwift.sessionInfo else { return nil }; return DBXTeamLogMobileSessionLogInfo(swift: swift) } + /// The device name. @objc - public init(description_: String) { - self.swift = TeamLog.LoginFailType(description_: description_) - } - - let swift: TeamLog.LoginFailType - - public init(swift: TeamLog.LoginFailType) { - self.swift = swift - } - + public var deviceName: String { subSwift.deviceName } + /// The mobile application type. @objc - public override var description: String { swift.description } -} - -/// Objective-C compatible LoginMethod union -@objc -public class DBXTeamLogLoginMethod: NSObject { - let swift: TeamLog.LoginMethod - - public init(swift: TeamLog.LoginMethod) { - self.swift = swift - } - - public static func factory(swift: TeamLog.LoginMethod) -> DBXTeamLogLoginMethod { - switch swift { - case .appleOauth: - return DBXTeamLogLoginMethodAppleOauth() - case .firstPartyTokenExchange: - return DBXTeamLogLoginMethodFirstPartyTokenExchange() - case .googleOauth: - return DBXTeamLogLoginMethodGoogleOauth() - case .lenovoOauth: - return DBXTeamLogLoginMethodLenovoOauth() - case .password: - return DBXTeamLogLoginMethodPassword() - case .qrCode: - return DBXTeamLogLoginMethodQrCode() - case .saml: - return DBXTeamLogLoginMethodSaml() - case .twoFactorAuthentication: - return DBXTeamLogLoginMethodTwoFactorAuthentication() - case .webSession: - return DBXTeamLogLoginMethodWebSession() - case .other: - return DBXTeamLogLoginMethodOther() - } - } - + public var clientType: DBXTeamMobileClientPlatform { DBXTeamMobileClientPlatform(swift: subSwift.clientType) } + /// The Dropbox client version. @objc - public override var description: String { swift.description } - + public var clientVersion: String? { subSwift.clientVersion } + /// The hosting OS version. @objc - public var asAppleOauth: DBXTeamLogLoginMethodAppleOauth? { - self as? DBXTeamLogLoginMethodAppleOauth - } - + public var osVersion: String? { subSwift.osVersion } + /// last carrier used by the device. @objc - public var asFirstPartyTokenExchange: DBXTeamLogLoginMethodFirstPartyTokenExchange? { - self as? DBXTeamLogLoginMethodFirstPartyTokenExchange - } + public var lastCarrier: String? { subSwift.lastCarrier } @objc - public var asGoogleOauth: DBXTeamLogLoginMethodGoogleOauth? { - self as? DBXTeamLogLoginMethodGoogleOauth + public init(deviceName: String, clientType: DBXTeamMobileClientPlatform, ipAddress: String?, created: Date?, updated: Date?, sessionInfo: DBXTeamLogMobileSessionLogInfo?, clientVersion: String?, osVersion: String?, lastCarrier: String?) { + let swift = TeamLog.MobileDeviceSessionLogInfo(deviceName: deviceName, clientType: clientType.swift, ipAddress: ipAddress, created: created, updated: updated, sessionInfo: sessionInfo?.subSwift, clientVersion: clientVersion, osVersion: osVersion, lastCarrier: lastCarrier) + self.subSwift = swift + super.init(swift: swift) } - @objc - public var asLenovoOauth: DBXTeamLogLoginMethodLenovoOauth? { - self as? DBXTeamLogLoginMethodLenovoOauth - } + let subSwift: TeamLog.MobileDeviceSessionLogInfo - @objc - public var asPassword: DBXTeamLogLoginMethodPassword? { - self as? DBXTeamLogLoginMethodPassword + public init(swift: TeamLog.MobileDeviceSessionLogInfo) { + self.subSwift = swift + super.init(swift: swift) } - @objc - public var asQrCode: DBXTeamLogLoginMethodQrCode? { - self as? DBXTeamLogLoginMethodQrCode - } @objc - public var asSaml: DBXTeamLogLoginMethodSaml? { - self as? DBXTeamLogLoginMethodSaml - } + public override var description: String { subSwift.description } +} - @objc - public var asTwoFactorAuthentication: DBXTeamLogLoginMethodTwoFactorAuthentication? { - self as? DBXTeamLogLoginMethodTwoFactorAuthentication - } +/// Mobile session. +@objc +public class DBXTeamLogMobileSessionLogInfo: DBXTeamLogSessionLogInfo { - @objc - public var asWebSession: DBXTeamLogLoginMethodWebSession? { - self as? DBXTeamLogLoginMethodWebSession + let subSwift: TeamLog.MobileSessionLogInfo + + public init(swift: TeamLog.MobileSessionLogInfo) { + self.subSwift = swift + super.init(swift: swift) } + @objc - public var asOther: DBXTeamLogLoginMethodOther? { - self as? DBXTeamLogLoginMethodOther - } + public override var description: String { subSwift.description } } -/// An unspecified error. +/// Multi-team identity policy @objc -public class DBXTeamLogLoginMethodAppleOauth: DBXTeamLogLoginMethod { - @objc - public init() { - let swift = TeamLog.LoginMethod.appleOauth - super.init(swift: swift) +public class DBXTeamLogMultiTeamIdentityPolicy: NSObject { + let swift: TeamLog.MultiTeamIdentityPolicy + + public init(swift: TeamLog.MultiTeamIdentityPolicy) { + self.swift = swift } -} -/// An unspecified error. -@objc -public class DBXTeamLogLoginMethodFirstPartyTokenExchange: DBXTeamLogLoginMethod { - @objc - public init() { - let swift = TeamLog.LoginMethod.firstPartyTokenExchange - super.init(swift: swift) + public static func factory(swift: TeamLog.MultiTeamIdentityPolicy) -> DBXTeamLogMultiTeamIdentityPolicy { + switch swift { + case .default_: + return DBXTeamLogMultiTeamIdentityPolicyDefault_() + case .disabled: + return DBXTeamLogMultiTeamIdentityPolicyDisabled() + case .enabled: + return DBXTeamLogMultiTeamIdentityPolicyEnabled() + case .other: + return DBXTeamLogMultiTeamIdentityPolicyOther() + } } -} -/// An unspecified error. -@objc -public class DBXTeamLogLoginMethodGoogleOauth: DBXTeamLogLoginMethod { @objc - public init() { - let swift = TeamLog.LoginMethod.googleOauth - super.init(swift: swift) + public override var description: String { swift.description } + + @objc + public var asDefault_: DBXTeamLogMultiTeamIdentityPolicyDefault_? { + return self as? DBXTeamLogMultiTeamIdentityPolicyDefault_ } -} -/// An unspecified error. -@objc -public class DBXTeamLogLoginMethodLenovoOauth: DBXTeamLogLoginMethod { @objc - public init() { - let swift = TeamLog.LoginMethod.lenovoOauth - super.init(swift: swift) + public var asDisabled: DBXTeamLogMultiTeamIdentityPolicyDisabled? { + return self as? DBXTeamLogMultiTeamIdentityPolicyDisabled } -} -/// An unspecified error. -@objc -public class DBXTeamLogLoginMethodPassword: DBXTeamLogLoginMethod { @objc - public init() { - let swift = TeamLog.LoginMethod.password - super.init(swift: swift) + public var asEnabled: DBXTeamLogMultiTeamIdentityPolicyEnabled? { + return self as? DBXTeamLogMultiTeamIdentityPolicyEnabled } -} -/// An unspecified error. -@objc -public class DBXTeamLogLoginMethodQrCode: DBXTeamLogLoginMethod { @objc - public init() { - let swift = TeamLog.LoginMethod.qrCode - super.init(swift: swift) + public var asOther: DBXTeamLogMultiTeamIdentityPolicyOther? { + return self as? DBXTeamLogMultiTeamIdentityPolicyOther } } /// An unspecified error. @objc -public class DBXTeamLogLoginMethodSaml: DBXTeamLogLoginMethod { +public class DBXTeamLogMultiTeamIdentityPolicyDefault_: DBXTeamLogMultiTeamIdentityPolicy { @objc public init() { - let swift = TeamLog.LoginMethod.saml + let swift = TeamLog.MultiTeamIdentityPolicy.default_ super.init(swift: swift) } } /// An unspecified error. @objc -public class DBXTeamLogLoginMethodTwoFactorAuthentication: DBXTeamLogLoginMethod { +public class DBXTeamLogMultiTeamIdentityPolicyDisabled: DBXTeamLogMultiTeamIdentityPolicy { @objc public init() { - let swift = TeamLog.LoginMethod.twoFactorAuthentication + let swift = TeamLog.MultiTeamIdentityPolicy.disabled super.init(swift: swift) } } /// An unspecified error. @objc -public class DBXTeamLogLoginMethodWebSession: DBXTeamLogLoginMethod { +public class DBXTeamLogMultiTeamIdentityPolicyEnabled: DBXTeamLogMultiTeamIdentityPolicy { @objc public init() { - let swift = TeamLog.LoginMethod.webSession + let swift = TeamLog.MultiTeamIdentityPolicy.enabled super.init(swift: swift) } } /// An unspecified error. @objc -public class DBXTeamLogLoginMethodOther: DBXTeamLogLoginMethod { +public class DBXTeamLogMultiTeamIdentityPolicyOther: DBXTeamLogMultiTeamIdentityPolicy { @objc public init() { - let swift = TeamLog.LoginMethod.other + let swift = TeamLog.MultiTeamIdentityPolicy.other super.init(swift: swift) } } -/// Signed in. +/// Changed multi-team identity policy for team. @objc -public class DBXTeamLogLoginSuccessDetails: NSObject { - /// Tells if the login device is EMM managed. Might be missing due to historical data gap. +public class DBXTeamLogMultiTeamIdentityPolicyChangedDetails: NSObject { + /// New multi-team identity policy. @objc - public var isEmmManaged: NSNumber? { swift.isEmmManaged as NSNumber? } - /// Login method. + public var newValue: DBXTeamLogMultiTeamIdentityPolicy { DBXTeamLogMultiTeamIdentityPolicy(swift: swift.newValue) } + /// Previous multi-team identity policy. Might be missing due to historical data gap. @objc - public var loginMethod: DBXTeamLogLoginMethod { DBXTeamLogLoginMethod(swift: swift.loginMethod) } + public var previousValue: DBXTeamLogMultiTeamIdentityPolicy? { guard let swift = swift.previousValue else { return nil }; return DBXTeamLogMultiTeamIdentityPolicy(swift: swift) } @objc - public init(loginMethod: DBXTeamLogLoginMethod, isEmmManaged: NSNumber?) { - self.swift = TeamLog.LoginSuccessDetails(loginMethod: loginMethod.swift, isEmmManaged: isEmmManaged?.boolValue) + public init(newValue: DBXTeamLogMultiTeamIdentityPolicy, previousValue: DBXTeamLogMultiTeamIdentityPolicy?) { + self.swift = TeamLog.MultiTeamIdentityPolicyChangedDetails(newValue: newValue.swift, previousValue: previousValue?.swift) } - let swift: TeamLog.LoginSuccessDetails + let swift: TeamLog.MultiTeamIdentityPolicyChangedDetails - public init(swift: TeamLog.LoginSuccessDetails) { + public init(swift: TeamLog.MultiTeamIdentityPolicyChangedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible LoginSuccessType struct +/// Objective-C compatible MultiTeamIdentityPolicyChangedType struct @objc -public class DBXTeamLogLoginSuccessType: NSObject { +public class DBXTeamLogMultiTeamIdentityPolicyChangedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.LoginSuccessType(description_: description_) + self.swift = TeamLog.MultiTeamIdentityPolicyChangedType(description_: description_) } - let swift: TeamLog.LoginSuccessType + let swift: TeamLog.MultiTeamIdentityPolicyChangedType - public init(swift: TeamLog.LoginSuccessType) { + public init(swift: TeamLog.MultiTeamIdentityPolicyChangedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Signed out. +/// Namespace relative path details. @objc -public class DBXTeamLogLogoutDetails: NSObject { - /// Login session id. - @objc - public var loginId: String? { swift.loginId } - +public class DBXTeamLogNamespaceRelativePathLogInfo: NSObject { + /// Namespace ID. @objc - public init(loginId: String?) { - self.swift = TeamLog.LogoutDetails(loginId: loginId) - } - - let swift: TeamLog.LogoutDetails - - public init(swift: TeamLog.LogoutDetails) { - self.swift = swift - } - + public var nsId: String? { swift.nsId } + /// A path relative to the specified namespace ID. @objc - public override var description: String { swift.description } -} - -/// Objective-C compatible LogoutType struct -@objc -public class DBXTeamLogLogoutType: NSObject { - /// (no description) + public var relativePath: String? { swift.relativePath } + /// True if the namespace is shared. @objc - public var description_: String { swift.description_ } + public var isSharedNamespace: NSNumber? { swift.isSharedNamespace as NSNumber? } @objc - public init(description_: String) { - self.swift = TeamLog.LogoutType(description_: description_) + public init(nsId: String?, relativePath: String?, isSharedNamespace: NSNumber?) { + self.swift = TeamLog.NamespaceRelativePathLogInfo(nsId: nsId, relativePath: relativePath, isSharedNamespace: isSharedNamespace?.boolValue) } - let swift: TeamLog.LogoutType + let swift: TeamLog.NamespaceRelativePathLogInfo - public init(swift: TeamLog.LogoutType) { + public init(swift: TeamLog.NamespaceRelativePathLogInfo) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Added an external ID for team member. +/// Enabled/disabled network control. @objc -public class DBXTeamLogMemberAddExternalIdDetails: NSObject { - /// Current external id. +public class DBXTeamLogNetworkControlChangePolicyDetails: NSObject { + /// New network control policy. @objc - public var newValue: String { swift.newValue } + public var newValue: DBXTeamLogNetworkControlPolicy { DBXTeamLogNetworkControlPolicy(swift: swift.newValue) } + /// Previous network control policy. Might be missing due to historical data gap. + @objc + public var previousValue: DBXTeamLogNetworkControlPolicy? { guard let swift = swift.previousValue else { return nil }; return DBXTeamLogNetworkControlPolicy(swift: swift) } @objc - public init(newValue: String) { - self.swift = TeamLog.MemberAddExternalIdDetails(newValue: newValue) + public init(newValue: DBXTeamLogNetworkControlPolicy, previousValue: DBXTeamLogNetworkControlPolicy?) { + self.swift = TeamLog.NetworkControlChangePolicyDetails(newValue: newValue.swift, previousValue: previousValue?.swift) } - let swift: TeamLog.MemberAddExternalIdDetails + let swift: TeamLog.NetworkControlChangePolicyDetails - public init(swift: TeamLog.MemberAddExternalIdDetails) { + public init(swift: TeamLog.NetworkControlChangePolicyDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible MemberAddExternalIdType struct +/// Objective-C compatible NetworkControlChangePolicyType struct @objc -public class DBXTeamLogMemberAddExternalIdType: NSObject { +public class DBXTeamLogNetworkControlChangePolicyType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.MemberAddExternalIdType(description_: description_) + self.swift = TeamLog.NetworkControlChangePolicyType(description_: description_) } - let swift: TeamLog.MemberAddExternalIdType + let swift: TeamLog.NetworkControlChangePolicyType - public init(swift: TeamLog.MemberAddExternalIdType) { + public init(swift: TeamLog.NetworkControlChangePolicyType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Added team member name. +/// Network control policy @objc -public class DBXTeamLogMemberAddNameDetails: NSObject { - /// New user's name. - @objc - public var newValue: DBXTeamLogUserNameLogInfo { DBXTeamLogUserNameLogInfo(swift: swift.newValue) } +public class DBXTeamLogNetworkControlPolicy: NSObject { + let swift: TeamLog.NetworkControlPolicy - @objc - public init(newValue: DBXTeamLogUserNameLogInfo) { - self.swift = TeamLog.MemberAddNameDetails(newValue: newValue.swift) + public init(swift: TeamLog.NetworkControlPolicy) { + self.swift = swift } - let swift: TeamLog.MemberAddNameDetails - - public init(swift: TeamLog.MemberAddNameDetails) { - self.swift = swift + public static func factory(swift: TeamLog.NetworkControlPolicy) -> DBXTeamLogNetworkControlPolicy { + switch swift { + case .disabled: + return DBXTeamLogNetworkControlPolicyDisabled() + case .enabled: + return DBXTeamLogNetworkControlPolicyEnabled() + case .other: + return DBXTeamLogNetworkControlPolicyOther() + } } @objc public override var description: String { swift.description } -} -/// Objective-C compatible MemberAddNameType struct -@objc -public class DBXTeamLogMemberAddNameType: NSObject { - /// (no description) @objc - public var description_: String { swift.description_ } + public var asDisabled: DBXTeamLogNetworkControlPolicyDisabled? { + return self as? DBXTeamLogNetworkControlPolicyDisabled + } @objc - public init(description_: String) { - self.swift = TeamLog.MemberAddNameType(description_: description_) + public var asEnabled: DBXTeamLogNetworkControlPolicyEnabled? { + return self as? DBXTeamLogNetworkControlPolicyEnabled } - let swift: TeamLog.MemberAddNameType - - public init(swift: TeamLog.MemberAddNameType) { - self.swift = swift + @objc + public var asOther: DBXTeamLogNetworkControlPolicyOther? { + return self as? DBXTeamLogNetworkControlPolicyOther } +} +/// An unspecified error. +@objc +public class DBXTeamLogNetworkControlPolicyDisabled: DBXTeamLogNetworkControlPolicy { @objc - public override var description: String { swift.description } + public init() { + let swift = TeamLog.NetworkControlPolicy.disabled + super.init(swift: swift) + } } -/// Changed team member admin role. +/// An unspecified error. @objc -public class DBXTeamLogMemberChangeAdminRoleDetails: NSObject { - /// New admin role. This field is relevant when the admin role is changed or whenthe user role changes from no - /// admin rights to with admin rights. +public class DBXTeamLogNetworkControlPolicyEnabled: DBXTeamLogNetworkControlPolicy { @objc - public var newValue: DBXTeamLogAdminRole? { guard let swift = swift.newValue else { return nil } - return DBXTeamLogAdminRole(swift: swift) + public init() { + let swift = TeamLog.NetworkControlPolicy.enabled + super.init(swift: swift) } +} - /// Previous admin role. This field is relevant when the admin role is changed or when the admin role is - /// removed. +/// An unspecified error. +@objc +public class DBXTeamLogNetworkControlPolicyOther: DBXTeamLogNetworkControlPolicy { @objc - public var previousValue: DBXTeamLogAdminRole? { guard let swift = swift.previousValue else { return nil } - return DBXTeamLogAdminRole(swift: swift) + public init() { + let swift = TeamLog.NetworkControlPolicy.other + super.init(swift: swift) } +} + +/// Report created: Links created with no expiration. +@objc +public class DBXTeamLogNoExpirationLinkGenCreateReportDetails: NSObject { + /// Report start date. + @objc + public var startDate: Date { swift.startDate } + /// Report end date. + @objc + public var endDate: Date { swift.endDate } @objc - public init(newValue: DBXTeamLogAdminRole?, previousValue: DBXTeamLogAdminRole?) { - self.swift = TeamLog.MemberChangeAdminRoleDetails(newValue: newValue?.swift, previousValue: previousValue?.swift) + public init(startDate: Date, endDate: Date) { + self.swift = TeamLog.NoExpirationLinkGenCreateReportDetails(startDate: startDate, endDate: endDate) } - let swift: TeamLog.MemberChangeAdminRoleDetails + let swift: TeamLog.NoExpirationLinkGenCreateReportDetails - public init(swift: TeamLog.MemberChangeAdminRoleDetails) { + public init(swift: TeamLog.NoExpirationLinkGenCreateReportDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible MemberChangeAdminRoleType struct +/// Objective-C compatible NoExpirationLinkGenCreateReportType struct @objc -public class DBXTeamLogMemberChangeAdminRoleType: NSObject { +public class DBXTeamLogNoExpirationLinkGenCreateReportType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.MemberChangeAdminRoleType(description_: description_) + self.swift = TeamLog.NoExpirationLinkGenCreateReportType(description_: description_) } - let swift: TeamLog.MemberChangeAdminRoleType + let swift: TeamLog.NoExpirationLinkGenCreateReportType - public init(swift: TeamLog.MemberChangeAdminRoleType) { + public init(swift: TeamLog.NoExpirationLinkGenCreateReportType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Changed team member email. +/// Couldn't create report: Links created with no expiration. @objc -public class DBXTeamLogMemberChangeEmailDetails: NSObject { - /// New email. - @objc - public var newValue: String { swift.newValue } - /// Previous email. Might be missing due to historical data gap. +public class DBXTeamLogNoExpirationLinkGenReportFailedDetails: NSObject { + /// Failure reason. @objc - public var previousValue: String? { swift.previousValue } + public var failureReason: DBXTeamTeamReportFailureReason { DBXTeamTeamReportFailureReason(swift: swift.failureReason) } @objc - public init(newValue: String, previousValue: String?) { - self.swift = TeamLog.MemberChangeEmailDetails(newValue: newValue, previousValue: previousValue) + public init(failureReason: DBXTeamTeamReportFailureReason) { + self.swift = TeamLog.NoExpirationLinkGenReportFailedDetails(failureReason: failureReason.swift) } - let swift: TeamLog.MemberChangeEmailDetails + let swift: TeamLog.NoExpirationLinkGenReportFailedDetails - public init(swift: TeamLog.MemberChangeEmailDetails) { + public init(swift: TeamLog.NoExpirationLinkGenReportFailedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible MemberChangeEmailType struct +/// Objective-C compatible NoExpirationLinkGenReportFailedType struct @objc -public class DBXTeamLogMemberChangeEmailType: NSObject { +public class DBXTeamLogNoExpirationLinkGenReportFailedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.MemberChangeEmailType(description_: description_) + self.swift = TeamLog.NoExpirationLinkGenReportFailedType(description_: description_) } - let swift: TeamLog.MemberChangeEmailType + let swift: TeamLog.NoExpirationLinkGenReportFailedType - public init(swift: TeamLog.MemberChangeEmailType) { + public init(swift: TeamLog.NoExpirationLinkGenReportFailedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Changed the external ID for team member. +/// Report created: Links created without passwords. @objc -public class DBXTeamLogMemberChangeExternalIdDetails: NSObject { - /// Current external id. +public class DBXTeamLogNoPasswordLinkGenCreateReportDetails: NSObject { + /// Report start date. @objc - public var newValue: String { swift.newValue } - /// Old external id. + public var startDate: Date { swift.startDate } + /// Report end date. @objc - public var previousValue: String { swift.previousValue } + public var endDate: Date { swift.endDate } @objc - public init(newValue: String, previousValue: String) { - self.swift = TeamLog.MemberChangeExternalIdDetails(newValue: newValue, previousValue: previousValue) + public init(startDate: Date, endDate: Date) { + self.swift = TeamLog.NoPasswordLinkGenCreateReportDetails(startDate: startDate, endDate: endDate) } - let swift: TeamLog.MemberChangeExternalIdDetails + let swift: TeamLog.NoPasswordLinkGenCreateReportDetails - public init(swift: TeamLog.MemberChangeExternalIdDetails) { + public init(swift: TeamLog.NoPasswordLinkGenCreateReportDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible MemberChangeExternalIdType struct +/// Objective-C compatible NoPasswordLinkGenCreateReportType struct @objc -public class DBXTeamLogMemberChangeExternalIdType: NSObject { +public class DBXTeamLogNoPasswordLinkGenCreateReportType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.MemberChangeExternalIdType(description_: description_) + self.swift = TeamLog.NoPasswordLinkGenCreateReportType(description_: description_) } - let swift: TeamLog.MemberChangeExternalIdType + let swift: TeamLog.NoPasswordLinkGenCreateReportType - public init(swift: TeamLog.MemberChangeExternalIdType) { + public init(swift: TeamLog.NoPasswordLinkGenCreateReportType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Changed membership type (limited/full) of member. +/// Couldn't create report: Links created without passwords. @objc -public class DBXTeamLogMemberChangeMembershipTypeDetails: NSObject { - /// Previous membership type. - @objc - public var prevValue: DBXTeamLogTeamMembershipType { DBXTeamLogTeamMembershipType(swift: swift.prevValue) } - /// New membership type. +public class DBXTeamLogNoPasswordLinkGenReportFailedDetails: NSObject { + /// Failure reason. @objc - public var newValue: DBXTeamLogTeamMembershipType { DBXTeamLogTeamMembershipType(swift: swift.newValue) } + public var failureReason: DBXTeamTeamReportFailureReason { DBXTeamTeamReportFailureReason(swift: swift.failureReason) } @objc - public init(prevValue: DBXTeamLogTeamMembershipType, newValue: DBXTeamLogTeamMembershipType) { - self.swift = TeamLog.MemberChangeMembershipTypeDetails(prevValue: prevValue.swift, newValue: newValue.swift) + public init(failureReason: DBXTeamTeamReportFailureReason) { + self.swift = TeamLog.NoPasswordLinkGenReportFailedDetails(failureReason: failureReason.swift) } - let swift: TeamLog.MemberChangeMembershipTypeDetails + let swift: TeamLog.NoPasswordLinkGenReportFailedDetails - public init(swift: TeamLog.MemberChangeMembershipTypeDetails) { + public init(swift: TeamLog.NoPasswordLinkGenReportFailedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible MemberChangeMembershipTypeType struct +/// Objective-C compatible NoPasswordLinkGenReportFailedType struct @objc -public class DBXTeamLogMemberChangeMembershipTypeType: NSObject { +public class DBXTeamLogNoPasswordLinkGenReportFailedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.MemberChangeMembershipTypeType(description_: description_) + self.swift = TeamLog.NoPasswordLinkGenReportFailedType(description_: description_) } - let swift: TeamLog.MemberChangeMembershipTypeType + let swift: TeamLog.NoPasswordLinkGenReportFailedType - public init(swift: TeamLog.MemberChangeMembershipTypeType) { + public init(swift: TeamLog.NoPasswordLinkGenReportFailedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Changed team member name. +/// Report created: Views of links without passwords. @objc -public class DBXTeamLogMemberChangeNameDetails: NSObject { - /// New user's name. +public class DBXTeamLogNoPasswordLinkViewCreateReportDetails: NSObject { + /// Report start date. @objc - public var newValue: DBXTeamLogUserNameLogInfo { DBXTeamLogUserNameLogInfo(swift: swift.newValue) } - /// Previous user's name. Might be missing due to historical data gap. + public var startDate: Date { swift.startDate } + /// Report end date. @objc - public var previousValue: DBXTeamLogUserNameLogInfo? { guard let swift = swift.previousValue else { return nil } - return DBXTeamLogUserNameLogInfo(swift: swift) - } + public var endDate: Date { swift.endDate } @objc - public init(newValue: DBXTeamLogUserNameLogInfo, previousValue: DBXTeamLogUserNameLogInfo?) { - self.swift = TeamLog.MemberChangeNameDetails(newValue: newValue.swift, previousValue: previousValue?.swift) + public init(startDate: Date, endDate: Date) { + self.swift = TeamLog.NoPasswordLinkViewCreateReportDetails(startDate: startDate, endDate: endDate) } - let swift: TeamLog.MemberChangeNameDetails + let swift: TeamLog.NoPasswordLinkViewCreateReportDetails - public init(swift: TeamLog.MemberChangeNameDetails) { + public init(swift: TeamLog.NoPasswordLinkViewCreateReportDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible MemberChangeNameType struct +/// Objective-C compatible NoPasswordLinkViewCreateReportType struct @objc -public class DBXTeamLogMemberChangeNameType: NSObject { +public class DBXTeamLogNoPasswordLinkViewCreateReportType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.MemberChangeNameType(description_: description_) + self.swift = TeamLog.NoPasswordLinkViewCreateReportType(description_: description_) } - let swift: TeamLog.MemberChangeNameType + let swift: TeamLog.NoPasswordLinkViewCreateReportType - public init(swift: TeamLog.MemberChangeNameType) { + public init(swift: TeamLog.NoPasswordLinkViewCreateReportType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Changed team member reseller role. +/// Couldn't create report: Views of links without passwords. @objc -public class DBXTeamLogMemberChangeResellerRoleDetails: NSObject { - /// New reseller role. This field is relevant when the reseller role is changed. - @objc - public var newValue: DBXTeamLogResellerRole { DBXTeamLogResellerRole(swift: swift.newValue) } - /// Previous reseller role. This field is relevant when the reseller role is changed or when the reseller role - /// is removed. +public class DBXTeamLogNoPasswordLinkViewReportFailedDetails: NSObject { + /// Failure reason. @objc - public var previousValue: DBXTeamLogResellerRole { DBXTeamLogResellerRole(swift: swift.previousValue) } + public var failureReason: DBXTeamTeamReportFailureReason { DBXTeamTeamReportFailureReason(swift: swift.failureReason) } @objc - public init(newValue: DBXTeamLogResellerRole, previousValue: DBXTeamLogResellerRole) { - self.swift = TeamLog.MemberChangeResellerRoleDetails(newValue: newValue.swift, previousValue: previousValue.swift) + public init(failureReason: DBXTeamTeamReportFailureReason) { + self.swift = TeamLog.NoPasswordLinkViewReportFailedDetails(failureReason: failureReason.swift) } - let swift: TeamLog.MemberChangeResellerRoleDetails + let swift: TeamLog.NoPasswordLinkViewReportFailedDetails - public init(swift: TeamLog.MemberChangeResellerRoleDetails) { + public init(swift: TeamLog.NoPasswordLinkViewReportFailedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible MemberChangeResellerRoleType struct +/// Objective-C compatible NoPasswordLinkViewReportFailedType struct @objc -public class DBXTeamLogMemberChangeResellerRoleType: NSObject { +public class DBXTeamLogNoPasswordLinkViewReportFailedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.MemberChangeResellerRoleType(description_: description_) + self.swift = TeamLog.NoPasswordLinkViewReportFailedType(description_: description_) } - let swift: TeamLog.MemberChangeResellerRoleType + let swift: TeamLog.NoPasswordLinkViewReportFailedType - public init(swift: TeamLog.MemberChangeResellerRoleType) { + public init(swift: TeamLog.NoPasswordLinkViewReportFailedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Changed member status (invited, joined, suspended, etc.). +/// User's logged information. @objc -public class DBXTeamLogMemberChangeStatusDetails: NSObject { - /// Previous member status. Might be missing due to historical data gap. - @objc - public var previousValue: DBXTeamLogMemberStatus? { guard let swift = swift.previousValue else { return nil } - return DBXTeamLogMemberStatus(swift: swift) - } - - /// New member status. - @objc - public var newValue: DBXTeamLogMemberStatus { DBXTeamLogMemberStatus(swift: swift.newValue) } - /// Additional information indicating the action taken that caused status change. +public class DBXTeamLogUserLogInfo: NSObject { + /// User unique ID. @objc - public var action: DBXTeamLogActionDetails? { guard let swift = swift.action else { return nil } - return DBXTeamLogActionDetails(swift: swift) - } - - /// The user's new team name. This field is relevant when the user is transferred off the team. + public var accountId: String? { swift.accountId } + /// User display name. @objc - public var newTeam: String? { swift.newTeam } - /// The user's previous team name. This field is relevant when the user is transferred onto the team. + public var displayName: String? { swift.displayName } + /// User email address. @objc - public var previousTeam: String? { swift.previousTeam } + public var email: String? { swift.email } @objc - public init( - newValue: DBXTeamLogMemberStatus, - previousValue: DBXTeamLogMemberStatus?, - action: DBXTeamLogActionDetails?, - newTeam: String?, - previousTeam: String? - ) { - self.swift = TeamLog.MemberChangeStatusDetails( - newValue: newValue.swift, - previousValue: previousValue?.swift, - action: action?.swift, - newTeam: newTeam, - previousTeam: previousTeam - ) + public init(accountId: String?, displayName: String?, email: String?) { + self.swift = TeamLog.UserLogInfo(accountId: accountId, displayName: displayName, email: email) } - let swift: TeamLog.MemberChangeStatusDetails + let swift: TeamLog.UserLogInfo - public init(swift: TeamLog.MemberChangeStatusDetails) { + public init(swift: TeamLog.UserLogInfo) { self.swift = swift } + public static func wrapPreservingSubtypes(swift: TeamLog.UserLogInfo) -> DBXTeamLogUserLogInfo { + switch swift { + case let nonTeamMemberLogInfo as TeamLog.NonTeamMemberLogInfo: + return DBXTeamLogNonTeamMemberLogInfo(swift: nonTeamMemberLogInfo) + case let teamMemberLogInfo as TeamLog.TeamMemberLogInfo: + return DBXTeamLogTeamMemberLogInfo(swift: teamMemberLogInfo) + case let trustedNonTeamMemberLogInfo as TeamLog.TrustedNonTeamMemberLogInfo: + return DBXTeamLogTrustedNonTeamMemberLogInfo(swift: trustedNonTeamMemberLogInfo) + default: + return DBXTeamLogUserLogInfo(swift: swift) + } + } + @objc public override var description: String { swift.description } } -/// Objective-C compatible MemberChangeStatusType struct +/// Non team member's logged information. @objc -public class DBXTeamLogMemberChangeStatusType: NSObject { - /// (no description) +public class DBXTeamLogNonTeamMemberLogInfo: DBXTeamLogUserLogInfo { + + let subSwift: TeamLog.NonTeamMemberLogInfo + + public init(swift: TeamLog.NonTeamMemberLogInfo) { + self.subSwift = swift + super.init(swift: swift) + } + + @objc - public var description_: String { swift.description_ } + public override var description: String { subSwift.description } +} + +/// The email to which the request was sent +@objc +public class DBXTeamLogNonTrustedTeamDetails: NSObject { + /// The email to which the request was sent. + @objc + public var team: String { swift.team } @objc - public init(description_: String) { - self.swift = TeamLog.MemberChangeStatusType(description_: description_) + public init(team: String) { + self.swift = TeamLog.NonTrustedTeamDetails(team: team) } - let swift: TeamLog.MemberChangeStatusType + let swift: TeamLog.NonTrustedTeamDetails - public init(swift: TeamLog.MemberChangeStatusType) { + public init(swift: TeamLog.NonTrustedTeamDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Cleared manually added contacts. +/// Changed Paper doc to invite-only. @objc -public class DBXTeamLogMemberDeleteManualContactsDetails: NSObject { - let swift: TeamLog.MemberDeleteManualContactsDetails +public class DBXTeamLogNoteAclInviteOnlyDetails: NSObject { - public init(swift: TeamLog.MemberDeleteManualContactsDetails) { + let swift: TeamLog.NoteAclInviteOnlyDetails + + public init(swift: TeamLog.NoteAclInviteOnlyDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible MemberDeleteManualContactsType struct +/// Objective-C compatible NoteAclInviteOnlyType struct @objc -public class DBXTeamLogMemberDeleteManualContactsType: NSObject { +public class DBXTeamLogNoteAclInviteOnlyType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.MemberDeleteManualContactsType(description_: description_) + self.swift = TeamLog.NoteAclInviteOnlyType(description_: description_) } - let swift: TeamLog.MemberDeleteManualContactsType + let swift: TeamLog.NoteAclInviteOnlyType - public init(swift: TeamLog.MemberDeleteManualContactsType) { + public init(swift: TeamLog.NoteAclInviteOnlyType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Deleted team member profile photo. +/// Changed Paper doc to link-accessible. @objc -public class DBXTeamLogMemberDeleteProfilePhotoDetails: NSObject { - let swift: TeamLog.MemberDeleteProfilePhotoDetails +public class DBXTeamLogNoteAclLinkDetails: NSObject { - public init(swift: TeamLog.MemberDeleteProfilePhotoDetails) { + let swift: TeamLog.NoteAclLinkDetails + + public init(swift: TeamLog.NoteAclLinkDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible MemberDeleteProfilePhotoType struct +/// Objective-C compatible NoteAclLinkType struct @objc -public class DBXTeamLogMemberDeleteProfilePhotoType: NSObject { +public class DBXTeamLogNoteAclLinkType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.MemberDeleteProfilePhotoType(description_: description_) + self.swift = TeamLog.NoteAclLinkType(description_: description_) } - let swift: TeamLog.MemberDeleteProfilePhotoType + let swift: TeamLog.NoteAclLinkType - public init(swift: TeamLog.MemberDeleteProfilePhotoType) { + public init(swift: TeamLog.NoteAclLinkType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Permanently deleted contents of deleted team member account. +/// Changed Paper doc to link-accessible for team. @objc -public class DBXTeamLogMemberPermanentlyDeleteAccountContentsDetails: NSObject { - let swift: TeamLog.MemberPermanentlyDeleteAccountContentsDetails +public class DBXTeamLogNoteAclTeamLinkDetails: NSObject { - public init(swift: TeamLog.MemberPermanentlyDeleteAccountContentsDetails) { + let swift: TeamLog.NoteAclTeamLinkDetails + + public init(swift: TeamLog.NoteAclTeamLinkDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible MemberPermanentlyDeleteAccountContentsType struct +/// Objective-C compatible NoteAclTeamLinkType struct @objc -public class DBXTeamLogMemberPermanentlyDeleteAccountContentsType: NSObject { +public class DBXTeamLogNoteAclTeamLinkType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.MemberPermanentlyDeleteAccountContentsType(description_: description_) + self.swift = TeamLog.NoteAclTeamLinkType(description_: description_) } - let swift: TeamLog.MemberPermanentlyDeleteAccountContentsType + let swift: TeamLog.NoteAclTeamLinkType - public init(swift: TeamLog.MemberPermanentlyDeleteAccountContentsType) { + public init(swift: TeamLog.NoteAclTeamLinkType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible MemberRemoveActionType union +/// Shared received Paper doc. @objc -public class DBXTeamLogMemberRemoveActionType: NSObject { - let swift: TeamLog.MemberRemoveActionType +public class DBXTeamLogNoteShareReceiveDetails: NSObject { - public init(swift: TeamLog.MemberRemoveActionType) { + let swift: TeamLog.NoteShareReceiveDetails + + public init(swift: TeamLog.NoteShareReceiveDetails) { self.swift = swift } - public static func factory(swift: TeamLog.MemberRemoveActionType) -> DBXTeamLogMemberRemoveActionType { - switch swift { - case .delete: - return DBXTeamLogMemberRemoveActionTypeDelete() - case .leave: - return DBXTeamLogMemberRemoveActionTypeLeave() - case .offboard: - return DBXTeamLogMemberRemoveActionTypeOffboard() - case .offboardAndRetainTeamFolders: - return DBXTeamLogMemberRemoveActionTypeOffboardAndRetainTeamFolders() - case .other: - return DBXTeamLogMemberRemoveActionTypeOther() - } - } @objc public override var description: String { swift.description } - - @objc - public var asDelete: DBXTeamLogMemberRemoveActionTypeDelete? { - self as? DBXTeamLogMemberRemoveActionTypeDelete - } - - @objc - public var asLeave: DBXTeamLogMemberRemoveActionTypeLeave? { - self as? DBXTeamLogMemberRemoveActionTypeLeave - } - - @objc - public var asOffboard: DBXTeamLogMemberRemoveActionTypeOffboard? { - self as? DBXTeamLogMemberRemoveActionTypeOffboard - } - - @objc - public var asOffboardAndRetainTeamFolders: DBXTeamLogMemberRemoveActionTypeOffboardAndRetainTeamFolders? { - self as? DBXTeamLogMemberRemoveActionTypeOffboardAndRetainTeamFolders - } - - @objc - public var asOther: DBXTeamLogMemberRemoveActionTypeOther? { - self as? DBXTeamLogMemberRemoveActionTypeOther - } -} - -/// An unspecified error. -@objc -public class DBXTeamLogMemberRemoveActionTypeDelete: DBXTeamLogMemberRemoveActionType { - @objc - public init() { - let swift = TeamLog.MemberRemoveActionType.delete - super.init(swift: swift) - } } -/// An unspecified error. -@objc -public class DBXTeamLogMemberRemoveActionTypeLeave: DBXTeamLogMemberRemoveActionType { - @objc - public init() { - let swift = TeamLog.MemberRemoveActionType.leave - super.init(swift: swift) - } -} - -/// An unspecified error. +/// Objective-C compatible NoteShareReceiveType struct @objc -public class DBXTeamLogMemberRemoveActionTypeOffboard: DBXTeamLogMemberRemoveActionType { +public class DBXTeamLogNoteShareReceiveType: NSObject { + /// (no description) @objc - public init() { - let swift = TeamLog.MemberRemoveActionType.offboard - super.init(swift: swift) - } -} + public var description_: String { swift.description_ } -/// An unspecified error. -@objc -public class DBXTeamLogMemberRemoveActionTypeOffboardAndRetainTeamFolders: DBXTeamLogMemberRemoveActionType { @objc - public init() { - let swift = TeamLog.MemberRemoveActionType.offboardAndRetainTeamFolders - super.init(swift: swift) + public init(description_: String) { + self.swift = TeamLog.NoteShareReceiveType(description_: description_) } -} -/// An unspecified error. -@objc -public class DBXTeamLogMemberRemoveActionTypeOther: DBXTeamLogMemberRemoveActionType { - @objc - public init() { - let swift = TeamLog.MemberRemoveActionType.other - super.init(swift: swift) - } -} + let swift: TeamLog.NoteShareReceiveType + + public init(swift: TeamLog.NoteShareReceiveType) { + self.swift = swift + } -/// Removed the external ID for team member. -@objc -public class DBXTeamLogMemberRemoveExternalIdDetails: NSObject { - /// Old external id. - @objc - public var previousValue: String { swift.previousValue } @objc - public init(previousValue: String) { - self.swift = TeamLog.MemberRemoveExternalIdDetails(previousValue: previousValue) - } + public override var description: String { swift.description } +} - let swift: TeamLog.MemberRemoveExternalIdDetails +/// Shared Paper doc. +@objc +public class DBXTeamLogNoteSharedDetails: NSObject { - public init(swift: TeamLog.MemberRemoveExternalIdDetails) { + let swift: TeamLog.NoteSharedDetails + + public init(swift: TeamLog.NoteSharedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible MemberRemoveExternalIdType struct +/// Objective-C compatible NoteSharedType struct @objc -public class DBXTeamLogMemberRemoveExternalIdType: NSObject { +public class DBXTeamLogNoteSharedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.MemberRemoveExternalIdType(description_: description_) + self.swift = TeamLog.NoteSharedType(description_: description_) } - let swift: TeamLog.MemberRemoveExternalIdType + let swift: TeamLog.NoteSharedType - public init(swift: TeamLog.MemberRemoveExternalIdType) { + public init(swift: TeamLog.NoteSharedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Changed whether users can find team when not invited. +/// Added a label. @objc -public class DBXTeamLogMemberRequestsChangePolicyDetails: NSObject { - /// New member change requests policy. - @objc - public var newValue: DBXTeamLogMemberRequestsPolicy { DBXTeamLogMemberRequestsPolicy(swift: swift.newValue) } - /// Previous member change requests policy. Might be missing due to historical data gap. +public class DBXTeamLogObjectLabelAddedDetails: NSObject { + /// Labels mark a file or folder. @objc - public var previousValue: DBXTeamLogMemberRequestsPolicy? { guard let swift = swift.previousValue else { return nil } - return DBXTeamLogMemberRequestsPolicy(swift: swift) - } + public var labelType: DBXTeamLogLabelType { DBXTeamLogLabelType(swift: swift.labelType) } @objc - public init(newValue: DBXTeamLogMemberRequestsPolicy, previousValue: DBXTeamLogMemberRequestsPolicy?) { - self.swift = TeamLog.MemberRequestsChangePolicyDetails(newValue: newValue.swift, previousValue: previousValue?.swift) + public init(labelType: DBXTeamLogLabelType) { + self.swift = TeamLog.ObjectLabelAddedDetails(labelType: labelType.swift) } - let swift: TeamLog.MemberRequestsChangePolicyDetails + let swift: TeamLog.ObjectLabelAddedDetails - public init(swift: TeamLog.MemberRequestsChangePolicyDetails) { + public init(swift: TeamLog.ObjectLabelAddedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible MemberRequestsChangePolicyType struct +/// Objective-C compatible ObjectLabelAddedType struct @objc -public class DBXTeamLogMemberRequestsChangePolicyType: NSObject { +public class DBXTeamLogObjectLabelAddedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.MemberRequestsChangePolicyType(description_: description_) + self.swift = TeamLog.ObjectLabelAddedType(description_: description_) } - let swift: TeamLog.MemberRequestsChangePolicyType + let swift: TeamLog.ObjectLabelAddedType - public init(swift: TeamLog.MemberRequestsChangePolicyType) { + public init(swift: TeamLog.ObjectLabelAddedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible MemberRequestsPolicy union +/// Removed a label. @objc -public class DBXTeamLogMemberRequestsPolicy: NSObject { - let swift: TeamLog.MemberRequestsPolicy +public class DBXTeamLogObjectLabelRemovedDetails: NSObject { + /// Labels mark a file or folder. + @objc + public var labelType: DBXTeamLogLabelType { DBXTeamLogLabelType(swift: swift.labelType) } - public init(swift: TeamLog.MemberRequestsPolicy) { - self.swift = swift + @objc + public init(labelType: DBXTeamLogLabelType) { + self.swift = TeamLog.ObjectLabelRemovedDetails(labelType: labelType.swift) } - public static func factory(swift: TeamLog.MemberRequestsPolicy) -> DBXTeamLogMemberRequestsPolicy { - switch swift { - case .autoAccept: - return DBXTeamLogMemberRequestsPolicyAutoAccept() - case .disabled: - return DBXTeamLogMemberRequestsPolicyDisabled() - case .requireApproval: - return DBXTeamLogMemberRequestsPolicyRequireApproval() - case .other: - return DBXTeamLogMemberRequestsPolicyOther() - } + let swift: TeamLog.ObjectLabelRemovedDetails + + public init(swift: TeamLog.ObjectLabelRemovedDetails) { + self.swift = swift } + @objc public override var description: String { swift.description } +} +/// Objective-C compatible ObjectLabelRemovedType struct +@objc +public class DBXTeamLogObjectLabelRemovedType: NSObject { + /// (no description) @objc - public var asAutoAccept: DBXTeamLogMemberRequestsPolicyAutoAccept? { - self as? DBXTeamLogMemberRequestsPolicyAutoAccept - } + public var description_: String { swift.description_ } @objc - public var asDisabled: DBXTeamLogMemberRequestsPolicyDisabled? { - self as? DBXTeamLogMemberRequestsPolicyDisabled + public init(description_: String) { + self.swift = TeamLog.ObjectLabelRemovedType(description_: description_) } - @objc - public var asRequireApproval: DBXTeamLogMemberRequestsPolicyRequireApproval? { - self as? DBXTeamLogMemberRequestsPolicyRequireApproval - } + let swift: TeamLog.ObjectLabelRemovedType - @objc - public var asOther: DBXTeamLogMemberRequestsPolicyOther? { - self as? DBXTeamLogMemberRequestsPolicyOther + public init(swift: TeamLog.ObjectLabelRemovedType) { + self.swift = swift } -} -/// An unspecified error. -@objc -public class DBXTeamLogMemberRequestsPolicyAutoAccept: DBXTeamLogMemberRequestsPolicy { - @objc - public init() { - let swift = TeamLog.MemberRequestsPolicy.autoAccept - super.init(swift: swift) - } -} -/// An unspecified error. -@objc -public class DBXTeamLogMemberRequestsPolicyDisabled: DBXTeamLogMemberRequestsPolicy { @objc - public init() { - let swift = TeamLog.MemberRequestsPolicy.disabled - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// An unspecified error. +/// Updated a label's value. @objc -public class DBXTeamLogMemberRequestsPolicyRequireApproval: DBXTeamLogMemberRequestsPolicy { +public class DBXTeamLogObjectLabelUpdatedValueDetails: NSObject { + /// Labels mark a file or folder. @objc - public init() { - let swift = TeamLog.MemberRequestsPolicy.requireApproval - super.init(swift: swift) - } -} + public var labelType: DBXTeamLogLabelType { DBXTeamLogLabelType(swift: swift.labelType) } -/// An unspecified error. -@objc -public class DBXTeamLogMemberRequestsPolicyOther: DBXTeamLogMemberRequestsPolicy { @objc - public init() { - let swift = TeamLog.MemberRequestsPolicy.other - super.init(swift: swift) + public init(labelType: DBXTeamLogLabelType) { + self.swift = TeamLog.ObjectLabelUpdatedValueDetails(labelType: labelType.swift) } -} -/// Policy for controlling whether team members can send team invites -@objc -public class DBXTeamLogMemberSendInvitePolicy: NSObject { - let swift: TeamLog.MemberSendInvitePolicy + let swift: TeamLog.ObjectLabelUpdatedValueDetails - public init(swift: TeamLog.MemberSendInvitePolicy) { + public init(swift: TeamLog.ObjectLabelUpdatedValueDetails) { self.swift = swift } - public static func factory(swift: TeamLog.MemberSendInvitePolicy) -> DBXTeamLogMemberSendInvitePolicy { - switch swift { - case .disabled: - return DBXTeamLogMemberSendInvitePolicyDisabled() - case .everyone: - return DBXTeamLogMemberSendInvitePolicyEveryone() - case .specificMembers: - return DBXTeamLogMemberSendInvitePolicySpecificMembers() - case .other: - return DBXTeamLogMemberSendInvitePolicyOther() - } - } @objc public override var description: String { swift.description } +} +/// Objective-C compatible ObjectLabelUpdatedValueType struct +@objc +public class DBXTeamLogObjectLabelUpdatedValueType: NSObject { + /// (no description) @objc - public var asDisabled: DBXTeamLogMemberSendInvitePolicyDisabled? { - self as? DBXTeamLogMemberSendInvitePolicyDisabled - } + public var description_: String { swift.description_ } @objc - public var asEveryone: DBXTeamLogMemberSendInvitePolicyEveryone? { - self as? DBXTeamLogMemberSendInvitePolicyEveryone + public init(description_: String) { + self.swift = TeamLog.ObjectLabelUpdatedValueType(description_: description_) } - @objc - public var asSpecificMembers: DBXTeamLogMemberSendInvitePolicySpecificMembers? { - self as? DBXTeamLogMemberSendInvitePolicySpecificMembers + let swift: TeamLog.ObjectLabelUpdatedValueType + + public init(swift: TeamLog.ObjectLabelUpdatedValueType) { + self.swift = swift } + @objc - public var asOther: DBXTeamLogMemberSendInvitePolicyOther? { - self as? DBXTeamLogMemberSendInvitePolicyOther - } + public override var description: String { swift.description } } -/// An unspecified error. +/// Opened shared Paper doc. @objc -public class DBXTeamLogMemberSendInvitePolicyDisabled: DBXTeamLogMemberSendInvitePolicy { - @objc - public init() { - let swift = TeamLog.MemberSendInvitePolicy.disabled - super.init(swift: swift) +public class DBXTeamLogOpenNoteSharedDetails: NSObject { + + let swift: TeamLog.OpenNoteSharedDetails + + public init(swift: TeamLog.OpenNoteSharedDetails) { + self.swift = swift } -} -/// An unspecified error. -@objc -public class DBXTeamLogMemberSendInvitePolicyEveryone: DBXTeamLogMemberSendInvitePolicy { + @objc - public init() { - let swift = TeamLog.MemberSendInvitePolicy.everyone - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// An unspecified error. +/// Objective-C compatible OpenNoteSharedType struct @objc -public class DBXTeamLogMemberSendInvitePolicySpecificMembers: DBXTeamLogMemberSendInvitePolicy { +public class DBXTeamLogOpenNoteSharedType: NSObject { + /// (no description) @objc - public init() { - let swift = TeamLog.MemberSendInvitePolicy.specificMembers - super.init(swift: swift) - } -} + public var description_: String { swift.description_ } -/// An unspecified error. -@objc -public class DBXTeamLogMemberSendInvitePolicyOther: DBXTeamLogMemberSendInvitePolicy { @objc - public init() { - let swift = TeamLog.MemberSendInvitePolicy.other - super.init(swift: swift) + public init(description_: String) { + self.swift = TeamLog.OpenNoteSharedType(description_: description_) + } + + let swift: TeamLog.OpenNoteSharedType + + public init(swift: TeamLog.OpenNoteSharedType) { + self.swift = swift } + + + @objc + public override var description: String { swift.description } } -/// Changed member send invite policy for team. +/// More details about the organization. @objc -public class DBXTeamLogMemberSendInvitePolicyChangedDetails: NSObject { - /// New team member send invite policy. - @objc - public var newValue: DBXTeamLogMemberSendInvitePolicy { DBXTeamLogMemberSendInvitePolicy(swift: swift.newValue) } - /// Previous team member send invite policy. +public class DBXTeamLogOrganizationDetails: NSObject { + /// The name of the organization. @objc - public var previousValue: DBXTeamLogMemberSendInvitePolicy { DBXTeamLogMemberSendInvitePolicy(swift: swift.previousValue) } + public var organization: String { swift.organization } @objc - public init(newValue: DBXTeamLogMemberSendInvitePolicy, previousValue: DBXTeamLogMemberSendInvitePolicy) { - self.swift = TeamLog.MemberSendInvitePolicyChangedDetails(newValue: newValue.swift, previousValue: previousValue.swift) + public init(organization: String) { + self.swift = TeamLog.OrganizationDetails(organization: organization) } - let swift: TeamLog.MemberSendInvitePolicyChangedDetails + let swift: TeamLog.OrganizationDetails - public init(swift: TeamLog.MemberSendInvitePolicyChangedDetails) { + public init(swift: TeamLog.OrganizationDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible MemberSendInvitePolicyChangedType struct +/// The name of the organization @objc -public class DBXTeamLogMemberSendInvitePolicyChangedType: NSObject { - /// (no description) +public class DBXTeamLogOrganizationName: NSObject { + /// The name of the organization. @objc - public var description_: String { swift.description_ } + public var organization: String { swift.organization } @objc - public init(description_: String) { - self.swift = TeamLog.MemberSendInvitePolicyChangedType(description_: description_) + public init(organization: String) { + self.swift = TeamLog.OrganizationName(organization: organization) } - let swift: TeamLog.MemberSendInvitePolicyChangedType + let swift: TeamLog.OrganizationName - public init(swift: TeamLog.MemberSendInvitePolicyChangedType) { + public init(swift: TeamLog.OrganizationName) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Set team member profile photo. +/// Organized a folder with multi-file organize. @objc -public class DBXTeamLogMemberSetProfilePhotoDetails: NSObject { - let swift: TeamLog.MemberSetProfilePhotoDetails +public class DBXTeamLogOrganizeFolderWithTidyDetails: NSObject { - public init(swift: TeamLog.MemberSetProfilePhotoDetails) { + let swift: TeamLog.OrganizeFolderWithTidyDetails + + public init(swift: TeamLog.OrganizeFolderWithTidyDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible MemberSetProfilePhotoType struct +/// Objective-C compatible OrganizeFolderWithTidyType struct @objc -public class DBXTeamLogMemberSetProfilePhotoType: NSObject { +public class DBXTeamLogOrganizeFolderWithTidyType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.MemberSetProfilePhotoType(description_: description_) + self.swift = TeamLog.OrganizeFolderWithTidyType(description_: description_) } - let swift: TeamLog.MemberSetProfilePhotoType + let swift: TeamLog.OrganizeFolderWithTidyType - public init(swift: TeamLog.MemberSetProfilePhotoType) { + public init(swift: TeamLog.OrganizeFolderWithTidyType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Set custom member space limit. +/// The origin from which the actor performed the action. @objc -public class DBXTeamLogMemberSpaceLimitsAddCustomQuotaDetails: NSObject { - /// New custom quota value in bytes. +public class DBXTeamLogOriginLogInfo: NSObject { + /// Geographic location details. @objc - public var newValue: NSNumber { swift.newValue as NSNumber } + public var geoLocation: DBXTeamLogGeoLocationLogInfo? { guard let swift = swift.geoLocation else { return nil }; return DBXTeamLogGeoLocationLogInfo(swift: swift) } + /// The method that was used to perform the action. + @objc + public var accessMethod: DBXTeamLogAccessMethodLogInfo { DBXTeamLogAccessMethodLogInfo(swift: swift.accessMethod) } @objc - public init(newValue: NSNumber) { - self.swift = TeamLog.MemberSpaceLimitsAddCustomQuotaDetails(newValue: newValue.uint64Value) + public init(accessMethod: DBXTeamLogAccessMethodLogInfo, geoLocation: DBXTeamLogGeoLocationLogInfo?) { + self.swift = TeamLog.OriginLogInfo(accessMethod: accessMethod.swift, geoLocation: geoLocation?.swift) } - let swift: TeamLog.MemberSpaceLimitsAddCustomQuotaDetails + let swift: TeamLog.OriginLogInfo - public init(swift: TeamLog.MemberSpaceLimitsAddCustomQuotaDetails) { + public init(swift: TeamLog.OriginLogInfo) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible MemberSpaceLimitsAddCustomQuotaType struct +/// Report created: Views of old links. @objc -public class DBXTeamLogMemberSpaceLimitsAddCustomQuotaType: NSObject { - /// (no description) +public class DBXTeamLogOutdatedLinkViewCreateReportDetails: NSObject { + /// Report start date. @objc - public var description_: String { swift.description_ } + public var startDate: Date { swift.startDate } + /// Report end date. + @objc + public var endDate: Date { swift.endDate } @objc - public init(description_: String) { - self.swift = TeamLog.MemberSpaceLimitsAddCustomQuotaType(description_: description_) + public init(startDate: Date, endDate: Date) { + self.swift = TeamLog.OutdatedLinkViewCreateReportDetails(startDate: startDate, endDate: endDate) } - let swift: TeamLog.MemberSpaceLimitsAddCustomQuotaType + let swift: TeamLog.OutdatedLinkViewCreateReportDetails - public init(swift: TeamLog.MemberSpaceLimitsAddCustomQuotaType) { + public init(swift: TeamLog.OutdatedLinkViewCreateReportDetails) { self.swift = swift } - @objc - public override var description: String { swift.description } -} - -/// Added members to member space limit exception list. -@objc -public class DBXTeamLogMemberSpaceLimitsAddExceptionDetails: NSObject { - let swift: TeamLog.MemberSpaceLimitsAddExceptionDetails - - public init(swift: TeamLog.MemberSpaceLimitsAddExceptionDetails) { - self.swift = swift - } @objc public override var description: String { swift.description } } -/// Objective-C compatible MemberSpaceLimitsAddExceptionType struct +/// Objective-C compatible OutdatedLinkViewCreateReportType struct @objc -public class DBXTeamLogMemberSpaceLimitsAddExceptionType: NSObject { +public class DBXTeamLogOutdatedLinkViewCreateReportType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.MemberSpaceLimitsAddExceptionType(description_: description_) + self.swift = TeamLog.OutdatedLinkViewCreateReportType(description_: description_) } - let swift: TeamLog.MemberSpaceLimitsAddExceptionType + let swift: TeamLog.OutdatedLinkViewCreateReportType - public init(swift: TeamLog.MemberSpaceLimitsAddExceptionType) { + public init(swift: TeamLog.OutdatedLinkViewCreateReportType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Changed member space limit type for team. +/// Couldn't create report: Views of old links. @objc -public class DBXTeamLogMemberSpaceLimitsChangeCapsTypePolicyDetails: NSObject { - /// Previous space limit type. - @objc - public var previousValue: DBXTeamLogSpaceCapsType { DBXTeamLogSpaceCapsType(swift: swift.previousValue) } - /// New space limit type. +public class DBXTeamLogOutdatedLinkViewReportFailedDetails: NSObject { + /// Failure reason. @objc - public var newValue: DBXTeamLogSpaceCapsType { DBXTeamLogSpaceCapsType(swift: swift.newValue) } + public var failureReason: DBXTeamTeamReportFailureReason { DBXTeamTeamReportFailureReason(swift: swift.failureReason) } @objc - public init(previousValue: DBXTeamLogSpaceCapsType, newValue: DBXTeamLogSpaceCapsType) { - self.swift = TeamLog.MemberSpaceLimitsChangeCapsTypePolicyDetails(previousValue: previousValue.swift, newValue: newValue.swift) + public init(failureReason: DBXTeamTeamReportFailureReason) { + self.swift = TeamLog.OutdatedLinkViewReportFailedDetails(failureReason: failureReason.swift) } - let swift: TeamLog.MemberSpaceLimitsChangeCapsTypePolicyDetails + let swift: TeamLog.OutdatedLinkViewReportFailedDetails - public init(swift: TeamLog.MemberSpaceLimitsChangeCapsTypePolicyDetails) { + public init(swift: TeamLog.OutdatedLinkViewReportFailedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible MemberSpaceLimitsChangeCapsTypePolicyType struct +/// Objective-C compatible OutdatedLinkViewReportFailedType struct @objc -public class DBXTeamLogMemberSpaceLimitsChangeCapsTypePolicyType: NSObject { +public class DBXTeamLogOutdatedLinkViewReportFailedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.MemberSpaceLimitsChangeCapsTypePolicyType(description_: description_) + self.swift = TeamLog.OutdatedLinkViewReportFailedType(description_: description_) } - let swift: TeamLog.MemberSpaceLimitsChangeCapsTypePolicyType + let swift: TeamLog.OutdatedLinkViewReportFailedType - public init(swift: TeamLog.MemberSpaceLimitsChangeCapsTypePolicyType) { + public init(swift: TeamLog.OutdatedLinkViewReportFailedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Changed custom member space limit. +/// Objective-C compatible PaperAccessType union @objc -public class DBXTeamLogMemberSpaceLimitsChangeCustomQuotaDetails: NSObject { - /// Previous custom quota value in bytes. - @objc - public var previousValue: NSNumber { swift.previousValue as NSNumber } - /// New custom quota value in bytes. - @objc - public var newValue: NSNumber { swift.newValue as NSNumber } +public class DBXTeamLogPaperAccessType: NSObject { + let swift: TeamLog.PaperAccessType - @objc - public init(previousValue: NSNumber, newValue: NSNumber) { - self.swift = TeamLog.MemberSpaceLimitsChangeCustomQuotaDetails(previousValue: previousValue.uint64Value, newValue: newValue.uint64Value) + public init(swift: TeamLog.PaperAccessType) { + self.swift = swift } - let swift: TeamLog.MemberSpaceLimitsChangeCustomQuotaDetails - - public init(swift: TeamLog.MemberSpaceLimitsChangeCustomQuotaDetails) { - self.swift = swift + public static func factory(swift: TeamLog.PaperAccessType) -> DBXTeamLogPaperAccessType { + switch swift { + case .commenter: + return DBXTeamLogPaperAccessTypeCommenter() + case .editor: + return DBXTeamLogPaperAccessTypeEditor() + case .viewer: + return DBXTeamLogPaperAccessTypeViewer() + case .other: + return DBXTeamLogPaperAccessTypeOther() + } } @objc public override var description: String { swift.description } -} -/// Objective-C compatible MemberSpaceLimitsChangeCustomQuotaType struct -@objc -public class DBXTeamLogMemberSpaceLimitsChangeCustomQuotaType: NSObject { - /// (no description) @objc - public var description_: String { swift.description_ } + public var asCommenter: DBXTeamLogPaperAccessTypeCommenter? { + return self as? DBXTeamLogPaperAccessTypeCommenter + } @objc - public init(description_: String) { - self.swift = TeamLog.MemberSpaceLimitsChangeCustomQuotaType(description_: description_) + public var asEditor: DBXTeamLogPaperAccessTypeEditor? { + return self as? DBXTeamLogPaperAccessTypeEditor } - let swift: TeamLog.MemberSpaceLimitsChangeCustomQuotaType + @objc + public var asViewer: DBXTeamLogPaperAccessTypeViewer? { + return self as? DBXTeamLogPaperAccessTypeViewer + } - public init(swift: TeamLog.MemberSpaceLimitsChangeCustomQuotaType) { - self.swift = swift + @objc + public var asOther: DBXTeamLogPaperAccessTypeOther? { + return self as? DBXTeamLogPaperAccessTypeOther } +} +/// An unspecified error. +@objc +public class DBXTeamLogPaperAccessTypeCommenter: DBXTeamLogPaperAccessType { @objc - public override var description: String { swift.description } + public init() { + let swift = TeamLog.PaperAccessType.commenter + super.init(swift: swift) + } } -/// Changed team default member space limit. +/// An unspecified error. @objc -public class DBXTeamLogMemberSpaceLimitsChangePolicyDetails: NSObject { - /// Previous team default limit value in bytes. Might be missing due to historical data gap. +public class DBXTeamLogPaperAccessTypeEditor: DBXTeamLogPaperAccessType { @objc - public var previousValue: NSNumber? { swift.previousValue as NSNumber? } - /// New team default limit value in bytes. Might be missing due to historical data gap. + public init() { + let swift = TeamLog.PaperAccessType.editor + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogPaperAccessTypeViewer: DBXTeamLogPaperAccessType { @objc - public var newValue: NSNumber? { swift.newValue as NSNumber? } + public init() { + let swift = TeamLog.PaperAccessType.viewer + super.init(swift: swift) + } +} +/// An unspecified error. +@objc +public class DBXTeamLogPaperAccessTypeOther: DBXTeamLogPaperAccessType { @objc - public init(previousValue: NSNumber?, newValue: NSNumber?) { - self.swift = TeamLog.MemberSpaceLimitsChangePolicyDetails(previousValue: previousValue?.uint64Value, newValue: newValue?.uint64Value) + public init() { + let swift = TeamLog.PaperAccessType.other + super.init(swift: swift) } +} - let swift: TeamLog.MemberSpaceLimitsChangePolicyDetails +/// Exported all team Paper docs. +@objc +public class DBXTeamLogPaperAdminExportStartDetails: NSObject { - public init(swift: TeamLog.MemberSpaceLimitsChangePolicyDetails) { + let swift: TeamLog.PaperAdminExportStartDetails + + public init(swift: TeamLog.PaperAdminExportStartDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible MemberSpaceLimitsChangePolicyType struct +/// Objective-C compatible PaperAdminExportStartType struct @objc -public class DBXTeamLogMemberSpaceLimitsChangePolicyType: NSObject { +public class DBXTeamLogPaperAdminExportStartType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.MemberSpaceLimitsChangePolicyType(description_: description_) + self.swift = TeamLog.PaperAdminExportStartType(description_: description_) } - let swift: TeamLog.MemberSpaceLimitsChangePolicyType + let swift: TeamLog.PaperAdminExportStartType - public init(swift: TeamLog.MemberSpaceLimitsChangePolicyType) { + public init(swift: TeamLog.PaperAdminExportStartType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Changed space limit status. +/// Changed whether Dropbox Paper, when enabled, is deployed to all members or to specific members. @objc -public class DBXTeamLogMemberSpaceLimitsChangeStatusDetails: NSObject { - /// Previous storage quota status. +public class DBXTeamLogPaperChangeDeploymentPolicyDetails: NSObject { + /// New Dropbox Paper deployment policy. @objc - public var previousValue: DBXTeamLogSpaceLimitsStatus { DBXTeamLogSpaceLimitsStatus(swift: swift.previousValue) } - /// New storage quota status. + public var newValue: DBXTeamPoliciesPaperDeploymentPolicy { DBXTeamPoliciesPaperDeploymentPolicy(swift: swift.newValue) } + /// Previous Dropbox Paper deployment policy. Might be missing due to historical data gap. @objc - public var newValue: DBXTeamLogSpaceLimitsStatus { DBXTeamLogSpaceLimitsStatus(swift: swift.newValue) } + public var previousValue: DBXTeamPoliciesPaperDeploymentPolicy? { guard let swift = swift.previousValue else { return nil }; return DBXTeamPoliciesPaperDeploymentPolicy(swift: swift) } @objc - public init(previousValue: DBXTeamLogSpaceLimitsStatus, newValue: DBXTeamLogSpaceLimitsStatus) { - self.swift = TeamLog.MemberSpaceLimitsChangeStatusDetails(previousValue: previousValue.swift, newValue: newValue.swift) + public init(newValue: DBXTeamPoliciesPaperDeploymentPolicy, previousValue: DBXTeamPoliciesPaperDeploymentPolicy?) { + self.swift = TeamLog.PaperChangeDeploymentPolicyDetails(newValue: newValue.swift, previousValue: previousValue?.swift) } - let swift: TeamLog.MemberSpaceLimitsChangeStatusDetails + let swift: TeamLog.PaperChangeDeploymentPolicyDetails - public init(swift: TeamLog.MemberSpaceLimitsChangeStatusDetails) { + public init(swift: TeamLog.PaperChangeDeploymentPolicyDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible MemberSpaceLimitsChangeStatusType struct +/// Objective-C compatible PaperChangeDeploymentPolicyType struct @objc -public class DBXTeamLogMemberSpaceLimitsChangeStatusType: NSObject { +public class DBXTeamLogPaperChangeDeploymentPolicyType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.MemberSpaceLimitsChangeStatusType(description_: description_) + self.swift = TeamLog.PaperChangeDeploymentPolicyType(description_: description_) } - let swift: TeamLog.MemberSpaceLimitsChangeStatusType + let swift: TeamLog.PaperChangeDeploymentPolicyType - public init(swift: TeamLog.MemberSpaceLimitsChangeStatusType) { + public init(swift: TeamLog.PaperChangeDeploymentPolicyType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Removed custom member space limit. +/// Changed whether non-members can view Paper docs with link. @objc -public class DBXTeamLogMemberSpaceLimitsRemoveCustomQuotaDetails: NSObject { - let swift: TeamLog.MemberSpaceLimitsRemoveCustomQuotaDetails +public class DBXTeamLogPaperChangeMemberLinkPolicyDetails: NSObject { + /// New paper external link accessibility policy. + @objc + public var newValue: DBXTeamLogPaperMemberPolicy { DBXTeamLogPaperMemberPolicy(swift: swift.newValue) } - public init(swift: TeamLog.MemberSpaceLimitsRemoveCustomQuotaDetails) { + @objc + public init(newValue: DBXTeamLogPaperMemberPolicy) { + self.swift = TeamLog.PaperChangeMemberLinkPolicyDetails(newValue: newValue.swift) + } + + let swift: TeamLog.PaperChangeMemberLinkPolicyDetails + + public init(swift: TeamLog.PaperChangeMemberLinkPolicyDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible MemberSpaceLimitsRemoveCustomQuotaType struct +/// Objective-C compatible PaperChangeMemberLinkPolicyType struct @objc -public class DBXTeamLogMemberSpaceLimitsRemoveCustomQuotaType: NSObject { +public class DBXTeamLogPaperChangeMemberLinkPolicyType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.MemberSpaceLimitsRemoveCustomQuotaType(description_: description_) + self.swift = TeamLog.PaperChangeMemberLinkPolicyType(description_: description_) } - let swift: TeamLog.MemberSpaceLimitsRemoveCustomQuotaType + let swift: TeamLog.PaperChangeMemberLinkPolicyType - public init(swift: TeamLog.MemberSpaceLimitsRemoveCustomQuotaType) { + public init(swift: TeamLog.PaperChangeMemberLinkPolicyType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Removed members from member space limit exception list. +/// Changed whether members can share Paper docs outside team, and if docs are accessible only by team members or +/// anyone by default. @objc -public class DBXTeamLogMemberSpaceLimitsRemoveExceptionDetails: NSObject { - let swift: TeamLog.MemberSpaceLimitsRemoveExceptionDetails +public class DBXTeamLogPaperChangeMemberPolicyDetails: NSObject { + /// New paper external accessibility policy. + @objc + public var newValue: DBXTeamLogPaperMemberPolicy { DBXTeamLogPaperMemberPolicy(swift: swift.newValue) } + /// Previous paper external accessibility policy. Might be missing due to historical data gap. + @objc + public var previousValue: DBXTeamLogPaperMemberPolicy? { guard let swift = swift.previousValue else { return nil }; return DBXTeamLogPaperMemberPolicy(swift: swift) } - public init(swift: TeamLog.MemberSpaceLimitsRemoveExceptionDetails) { + @objc + public init(newValue: DBXTeamLogPaperMemberPolicy, previousValue: DBXTeamLogPaperMemberPolicy?) { + self.swift = TeamLog.PaperChangeMemberPolicyDetails(newValue: newValue.swift, previousValue: previousValue?.swift) + } + + let swift: TeamLog.PaperChangeMemberPolicyDetails + + public init(swift: TeamLog.PaperChangeMemberPolicyDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible MemberSpaceLimitsRemoveExceptionType struct +/// Objective-C compatible PaperChangeMemberPolicyType struct @objc -public class DBXTeamLogMemberSpaceLimitsRemoveExceptionType: NSObject { +public class DBXTeamLogPaperChangeMemberPolicyType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.MemberSpaceLimitsRemoveExceptionType(description_: description_) + self.swift = TeamLog.PaperChangeMemberPolicyType(description_: description_) } - let swift: TeamLog.MemberSpaceLimitsRemoveExceptionType + let swift: TeamLog.PaperChangeMemberPolicyType - public init(swift: TeamLog.MemberSpaceLimitsRemoveExceptionType) { + public init(swift: TeamLog.PaperChangeMemberPolicyType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible MemberStatus union +/// Enabled/disabled Dropbox Paper for team. @objc -public class DBXTeamLogMemberStatus: NSObject { - let swift: TeamLog.MemberStatus - - public init(swift: TeamLog.MemberStatus) { - self.swift = swift - } - - public static func factory(swift: TeamLog.MemberStatus) -> DBXTeamLogMemberStatus { - switch swift { - case .active: - return DBXTeamLogMemberStatusActive() - case .invited: - return DBXTeamLogMemberStatusInvited() - case .movedToAnotherTeam: - return DBXTeamLogMemberStatusMovedToAnotherTeam() - case .notJoined: - return DBXTeamLogMemberStatusNotJoined() - case .removed: - return DBXTeamLogMemberStatusRemoved() - case .suspended: - return DBXTeamLogMemberStatusSuspended() - case .other: - return DBXTeamLogMemberStatusOther() - } - } - - @objc - public override var description: String { swift.description } - - @objc - public var asActive: DBXTeamLogMemberStatusActive? { - self as? DBXTeamLogMemberStatusActive - } - +public class DBXTeamLogPaperChangePolicyDetails: NSObject { + /// New Dropbox Paper policy. @objc - public var asInvited: DBXTeamLogMemberStatusInvited? { - self as? DBXTeamLogMemberStatusInvited - } - + public var newValue: DBXTeamPoliciesPaperEnabledPolicy { DBXTeamPoliciesPaperEnabledPolicy(swift: swift.newValue) } + /// Previous Dropbox Paper policy. Might be missing due to historical data gap. @objc - public var asMovedToAnotherTeam: DBXTeamLogMemberStatusMovedToAnotherTeam? { - self as? DBXTeamLogMemberStatusMovedToAnotherTeam - } + public var previousValue: DBXTeamPoliciesPaperEnabledPolicy? { guard let swift = swift.previousValue else { return nil }; return DBXTeamPoliciesPaperEnabledPolicy(swift: swift) } @objc - public var asNotJoined: DBXTeamLogMemberStatusNotJoined? { - self as? DBXTeamLogMemberStatusNotJoined + public init(newValue: DBXTeamPoliciesPaperEnabledPolicy, previousValue: DBXTeamPoliciesPaperEnabledPolicy?) { + self.swift = TeamLog.PaperChangePolicyDetails(newValue: newValue.swift, previousValue: previousValue?.swift) } - @objc - public var asRemoved: DBXTeamLogMemberStatusRemoved? { - self as? DBXTeamLogMemberStatusRemoved - } + let swift: TeamLog.PaperChangePolicyDetails - @objc - public var asSuspended: DBXTeamLogMemberStatusSuspended? { - self as? DBXTeamLogMemberStatusSuspended + public init(swift: TeamLog.PaperChangePolicyDetails) { + self.swift = swift } - @objc - public var asOther: DBXTeamLogMemberStatusOther? { - self as? DBXTeamLogMemberStatusOther - } -} -/// An unspecified error. -@objc -public class DBXTeamLogMemberStatusActive: DBXTeamLogMemberStatus { @objc - public init() { - let swift = TeamLog.MemberStatus.active - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// An unspecified error. +/// Objective-C compatible PaperChangePolicyType struct @objc -public class DBXTeamLogMemberStatusInvited: DBXTeamLogMemberStatus { +public class DBXTeamLogPaperChangePolicyType: NSObject { + /// (no description) @objc - public init() { - let swift = TeamLog.MemberStatus.invited - super.init(swift: swift) - } -} + public var description_: String { swift.description_ } -/// An unspecified error. -@objc -public class DBXTeamLogMemberStatusMovedToAnotherTeam: DBXTeamLogMemberStatus { @objc - public init() { - let swift = TeamLog.MemberStatus.movedToAnotherTeam - super.init(swift: swift) + public init(description_: String) { + self.swift = TeamLog.PaperChangePolicyType(description_: description_) } -} -/// An unspecified error. -@objc -public class DBXTeamLogMemberStatusNotJoined: DBXTeamLogMemberStatus { - @objc - public init() { - let swift = TeamLog.MemberStatus.notJoined - super.init(swift: swift) - } -} + let swift: TeamLog.PaperChangePolicyType -/// An unspecified error. -@objc -public class DBXTeamLogMemberStatusRemoved: DBXTeamLogMemberStatus { - @objc - public init() { - let swift = TeamLog.MemberStatus.removed - super.init(swift: swift) + public init(swift: TeamLog.PaperChangePolicyType) { + self.swift = swift } -} -/// An unspecified error. -@objc -public class DBXTeamLogMemberStatusSuspended: DBXTeamLogMemberStatus { - @objc - public init() { - let swift = TeamLog.MemberStatus.suspended - super.init(swift: swift) - } -} -/// An unspecified error. -@objc -public class DBXTeamLogMemberStatusOther: DBXTeamLogMemberStatus { @objc - public init() { - let swift = TeamLog.MemberStatus.other - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// Suggested person to add to team. +/// Added users and/or groups to Paper doc/folder. @objc -public class DBXTeamLogMemberSuggestDetails: NSObject { - /// suggested users emails. +public class DBXTeamLogPaperContentAddMemberDetails: NSObject { + /// Event unique identifier. @objc - public var suggestedMembers: [String] { swift.suggestedMembers } + public var eventUuid: String { swift.eventUuid } @objc - public init(suggestedMembers: [String]) { - self.swift = TeamLog.MemberSuggestDetails(suggestedMembers: suggestedMembers) + public init(eventUuid: String) { + self.swift = TeamLog.PaperContentAddMemberDetails(eventUuid: eventUuid) } - let swift: TeamLog.MemberSuggestDetails + let swift: TeamLog.PaperContentAddMemberDetails - public init(swift: TeamLog.MemberSuggestDetails) { + public init(swift: TeamLog.PaperContentAddMemberDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible MemberSuggestType struct +/// Objective-C compatible PaperContentAddMemberType struct @objc -public class DBXTeamLogMemberSuggestType: NSObject { +public class DBXTeamLogPaperContentAddMemberType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.MemberSuggestType(description_: description_) + self.swift = TeamLog.PaperContentAddMemberType(description_: description_) } - let swift: TeamLog.MemberSuggestType + let swift: TeamLog.PaperContentAddMemberType - public init(swift: TeamLog.MemberSuggestType) { + public init(swift: TeamLog.PaperContentAddMemberType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Enabled/disabled option for team members to suggest people to add to team. +/// Added Paper doc/folder to folder. @objc -public class DBXTeamLogMemberSuggestionsChangePolicyDetails: NSObject { - /// New team member suggestions policy. +public class DBXTeamLogPaperContentAddToFolderDetails: NSObject { + /// Event unique identifier. @objc - public var newValue: DBXTeamLogMemberSuggestionsPolicy { DBXTeamLogMemberSuggestionsPolicy(swift: swift.newValue) } - /// Previous team member suggestions policy. Might be missing due to historical data gap. + public var eventUuid: String { swift.eventUuid } + /// Target asset position in the Assets list. @objc - public var previousValue: DBXTeamLogMemberSuggestionsPolicy? { guard let swift = swift.previousValue else { return nil } - return DBXTeamLogMemberSuggestionsPolicy(swift: swift) - } + public var targetAssetIndex: NSNumber { swift.targetAssetIndex as NSNumber } + /// Parent asset position in the Assets list. + @objc + public var parentAssetIndex: NSNumber { swift.parentAssetIndex as NSNumber } @objc - public init(newValue: DBXTeamLogMemberSuggestionsPolicy, previousValue: DBXTeamLogMemberSuggestionsPolicy?) { - self.swift = TeamLog.MemberSuggestionsChangePolicyDetails(newValue: newValue.swift, previousValue: previousValue?.swift) + public init(eventUuid: String, targetAssetIndex: NSNumber, parentAssetIndex: NSNumber) { + self.swift = TeamLog.PaperContentAddToFolderDetails(eventUuid: eventUuid, targetAssetIndex: targetAssetIndex.uint64Value, parentAssetIndex: parentAssetIndex.uint64Value) } - let swift: TeamLog.MemberSuggestionsChangePolicyDetails + let swift: TeamLog.PaperContentAddToFolderDetails - public init(swift: TeamLog.MemberSuggestionsChangePolicyDetails) { + public init(swift: TeamLog.PaperContentAddToFolderDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible MemberSuggestionsChangePolicyType struct +/// Objective-C compatible PaperContentAddToFolderType struct @objc -public class DBXTeamLogMemberSuggestionsChangePolicyType: NSObject { +public class DBXTeamLogPaperContentAddToFolderType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.MemberSuggestionsChangePolicyType(description_: description_) + self.swift = TeamLog.PaperContentAddToFolderType(description_: description_) } - let swift: TeamLog.MemberSuggestionsChangePolicyType + let swift: TeamLog.PaperContentAddToFolderType - public init(swift: TeamLog.MemberSuggestionsChangePolicyType) { + public init(swift: TeamLog.PaperContentAddToFolderType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Member suggestions policy +/// Archived Paper doc/folder. @objc -public class DBXTeamLogMemberSuggestionsPolicy: NSObject { - let swift: TeamLog.MemberSuggestionsPolicy - - public init(swift: TeamLog.MemberSuggestionsPolicy) { - self.swift = swift - } - - public static func factory(swift: TeamLog.MemberSuggestionsPolicy) -> DBXTeamLogMemberSuggestionsPolicy { - switch swift { - case .disabled: - return DBXTeamLogMemberSuggestionsPolicyDisabled() - case .enabled: - return DBXTeamLogMemberSuggestionsPolicyEnabled() - case .other: - return DBXTeamLogMemberSuggestionsPolicyOther() - } - } - +public class DBXTeamLogPaperContentArchiveDetails: NSObject { + /// Event unique identifier. @objc - public override var description: String { swift.description } + public var eventUuid: String { swift.eventUuid } @objc - public var asDisabled: DBXTeamLogMemberSuggestionsPolicyDisabled? { - self as? DBXTeamLogMemberSuggestionsPolicyDisabled + public init(eventUuid: String) { + self.swift = TeamLog.PaperContentArchiveDetails(eventUuid: eventUuid) } - @objc - public var asEnabled: DBXTeamLogMemberSuggestionsPolicyEnabled? { - self as? DBXTeamLogMemberSuggestionsPolicyEnabled - } + let swift: TeamLog.PaperContentArchiveDetails - @objc - public var asOther: DBXTeamLogMemberSuggestionsPolicyOther? { - self as? DBXTeamLogMemberSuggestionsPolicyOther + public init(swift: TeamLog.PaperContentArchiveDetails) { + self.swift = swift } -} -/// An unspecified error. -@objc -public class DBXTeamLogMemberSuggestionsPolicyDisabled: DBXTeamLogMemberSuggestionsPolicy { + @objc - public init() { - let swift = TeamLog.MemberSuggestionsPolicy.disabled - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// An unspecified error. +/// Objective-C compatible PaperContentArchiveType struct @objc -public class DBXTeamLogMemberSuggestionsPolicyEnabled: DBXTeamLogMemberSuggestionsPolicy { +public class DBXTeamLogPaperContentArchiveType: NSObject { + /// (no description) @objc - public init() { - let swift = TeamLog.MemberSuggestionsPolicy.enabled - super.init(swift: swift) - } -} + public var description_: String { swift.description_ } -/// An unspecified error. -@objc -public class DBXTeamLogMemberSuggestionsPolicyOther: DBXTeamLogMemberSuggestionsPolicy { @objc - public init() { - let swift = TeamLog.MemberSuggestionsPolicy.other - super.init(swift: swift) + public init(description_: String) { + self.swift = TeamLog.PaperContentArchiveType(description_: description_) } -} -/// Transferred contents of deleted member account to another member. -@objc -public class DBXTeamLogMemberTransferAccountContentsDetails: NSObject { - let swift: TeamLog.MemberTransferAccountContentsDetails + let swift: TeamLog.PaperContentArchiveType - public init(swift: TeamLog.MemberTransferAccountContentsDetails) { + public init(swift: TeamLog.PaperContentArchiveType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible MemberTransferAccountContentsType struct +/// Created Paper doc/folder. @objc -public class DBXTeamLogMemberTransferAccountContentsType: NSObject { - /// (no description) +public class DBXTeamLogPaperContentCreateDetails: NSObject { + /// Event unique identifier. @objc - public var description_: String { swift.description_ } + public var eventUuid: String { swift.eventUuid } @objc - public init(description_: String) { - self.swift = TeamLog.MemberTransferAccountContentsType(description_: description_) + public init(eventUuid: String) { + self.swift = TeamLog.PaperContentCreateDetails(eventUuid: eventUuid) } - let swift: TeamLog.MemberTransferAccountContentsType + let swift: TeamLog.PaperContentCreateDetails - public init(swift: TeamLog.MemberTransferAccountContentsType) { + public init(swift: TeamLog.PaperContentCreateDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Internal only - fields for target team computations +/// Objective-C compatible PaperContentCreateType struct @objc -public class DBXTeamLogMemberTransferredInternalFields: NSObject { - /// Internal only - team user was moved from. - @objc - public var sourceTeamId: String { swift.sourceTeamId } - /// Internal only - team user was moved to. +public class DBXTeamLogPaperContentCreateType: NSObject { + /// (no description) @objc - public var targetTeamId: String { swift.targetTeamId } + public var description_: String { swift.description_ } @objc - public init(sourceTeamId: String, targetTeamId: String) { - self.swift = TeamLog.MemberTransferredInternalFields(sourceTeamId: sourceTeamId, targetTeamId: targetTeamId) + public init(description_: String) { + self.swift = TeamLog.PaperContentCreateType(description_: description_) } - let swift: TeamLog.MemberTransferredInternalFields + let swift: TeamLog.PaperContentCreateType - public init(swift: TeamLog.MemberTransferredInternalFields) { + public init(swift: TeamLog.PaperContentCreateType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Enabled/disabled Microsoft Office add-in. +/// Permanently deleted Paper doc/folder. @objc -public class DBXTeamLogMicrosoftOfficeAddinChangePolicyDetails: NSObject { - /// New Microsoft Office addin policy. - @objc - public var newValue: DBXTeamLogMicrosoftOfficeAddinPolicy { DBXTeamLogMicrosoftOfficeAddinPolicy(swift: swift.newValue) } - /// Previous Microsoft Office addin policy. Might be missing due to historical data gap. +public class DBXTeamLogPaperContentPermanentlyDeleteDetails: NSObject { + /// Event unique identifier. @objc - public var previousValue: DBXTeamLogMicrosoftOfficeAddinPolicy? { guard let swift = swift.previousValue else { return nil } - return DBXTeamLogMicrosoftOfficeAddinPolicy(swift: swift) - } + public var eventUuid: String { swift.eventUuid } @objc - public init(newValue: DBXTeamLogMicrosoftOfficeAddinPolicy, previousValue: DBXTeamLogMicrosoftOfficeAddinPolicy?) { - self.swift = TeamLog.MicrosoftOfficeAddinChangePolicyDetails(newValue: newValue.swift, previousValue: previousValue?.swift) + public init(eventUuid: String) { + self.swift = TeamLog.PaperContentPermanentlyDeleteDetails(eventUuid: eventUuid) } - let swift: TeamLog.MicrosoftOfficeAddinChangePolicyDetails + let swift: TeamLog.PaperContentPermanentlyDeleteDetails - public init(swift: TeamLog.MicrosoftOfficeAddinChangePolicyDetails) { + public init(swift: TeamLog.PaperContentPermanentlyDeleteDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible MicrosoftOfficeAddinChangePolicyType struct +/// Objective-C compatible PaperContentPermanentlyDeleteType struct @objc -public class DBXTeamLogMicrosoftOfficeAddinChangePolicyType: NSObject { +public class DBXTeamLogPaperContentPermanentlyDeleteType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.MicrosoftOfficeAddinChangePolicyType(description_: description_) + self.swift = TeamLog.PaperContentPermanentlyDeleteType(description_: description_) } - let swift: TeamLog.MicrosoftOfficeAddinChangePolicyType + let swift: TeamLog.PaperContentPermanentlyDeleteType - public init(swift: TeamLog.MicrosoftOfficeAddinChangePolicyType) { + public init(swift: TeamLog.PaperContentPermanentlyDeleteType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Microsoft Office addin policy +/// Removed Paper doc/folder from folder. @objc -public class DBXTeamLogMicrosoftOfficeAddinPolicy: NSObject { - let swift: TeamLog.MicrosoftOfficeAddinPolicy - - public init(swift: TeamLog.MicrosoftOfficeAddinPolicy) { - self.swift = swift - } - - public static func factory(swift: TeamLog.MicrosoftOfficeAddinPolicy) -> DBXTeamLogMicrosoftOfficeAddinPolicy { - switch swift { - case .disabled: - return DBXTeamLogMicrosoftOfficeAddinPolicyDisabled() - case .enabled: - return DBXTeamLogMicrosoftOfficeAddinPolicyEnabled() - case .other: - return DBXTeamLogMicrosoftOfficeAddinPolicyOther() - } - } - +public class DBXTeamLogPaperContentRemoveFromFolderDetails: NSObject { + /// Event unique identifier. @objc - public override var description: String { swift.description } - + public var eventUuid: String { swift.eventUuid } + /// Target asset position in the Assets list. @objc - public var asDisabled: DBXTeamLogMicrosoftOfficeAddinPolicyDisabled? { - self as? DBXTeamLogMicrosoftOfficeAddinPolicyDisabled - } - + public var targetAssetIndex: NSNumber? { swift.targetAssetIndex as NSNumber? } + /// Parent asset position in the Assets list. @objc - public var asEnabled: DBXTeamLogMicrosoftOfficeAddinPolicyEnabled? { - self as? DBXTeamLogMicrosoftOfficeAddinPolicyEnabled - } + public var parentAssetIndex: NSNumber? { swift.parentAssetIndex as NSNumber? } @objc - public var asOther: DBXTeamLogMicrosoftOfficeAddinPolicyOther? { - self as? DBXTeamLogMicrosoftOfficeAddinPolicyOther + public init(eventUuid: String, targetAssetIndex: NSNumber?, parentAssetIndex: NSNumber?) { + self.swift = TeamLog.PaperContentRemoveFromFolderDetails(eventUuid: eventUuid, targetAssetIndex: targetAssetIndex?.uint64Value, parentAssetIndex: parentAssetIndex?.uint64Value) } -} -/// An unspecified error. -@objc -public class DBXTeamLogMicrosoftOfficeAddinPolicyDisabled: DBXTeamLogMicrosoftOfficeAddinPolicy { - @objc - public init() { - let swift = TeamLog.MicrosoftOfficeAddinPolicy.disabled - super.init(swift: swift) - } -} + let swift: TeamLog.PaperContentRemoveFromFolderDetails -/// An unspecified error. -@objc -public class DBXTeamLogMicrosoftOfficeAddinPolicyEnabled: DBXTeamLogMicrosoftOfficeAddinPolicy { - @objc - public init() { - let swift = TeamLog.MicrosoftOfficeAddinPolicy.enabled - super.init(swift: swift) + public init(swift: TeamLog.PaperContentRemoveFromFolderDetails) { + self.swift = swift } -} -/// An unspecified error. -@objc -public class DBXTeamLogMicrosoftOfficeAddinPolicyOther: DBXTeamLogMicrosoftOfficeAddinPolicy { + @objc - public init() { - let swift = TeamLog.MicrosoftOfficeAddinPolicy.other - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// An indication that an error occurred while retrieving the event. Some attributes of the event may be omitted as -/// a result. +/// Objective-C compatible PaperContentRemoveFromFolderType struct @objc -public class DBXTeamLogMissingDetails: NSObject { - /// All the data that could be retrieved and converted from the source event. +public class DBXTeamLogPaperContentRemoveFromFolderType: NSObject { + /// (no description) @objc - public var sourceEventFields: String? { swift.sourceEventFields } + public var description_: String { swift.description_ } @objc - public init(sourceEventFields: String?) { - self.swift = TeamLog.MissingDetails(sourceEventFields: sourceEventFields) + public init(description_: String) { + self.swift = TeamLog.PaperContentRemoveFromFolderType(description_: description_) } - let swift: TeamLog.MissingDetails + let swift: TeamLog.PaperContentRemoveFromFolderType - public init(swift: TeamLog.MissingDetails) { + public init(swift: TeamLog.PaperContentRemoveFromFolderType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Information about linked Dropbox mobile client sessions +/// Removed users and/or groups from Paper doc/folder. @objc -public class DBXTeamLogMobileDeviceSessionLogInfo: DBXTeamLogDeviceSessionLogInfo { - /// Mobile session unique id. +public class DBXTeamLogPaperContentRemoveMemberDetails: NSObject { + /// Event unique identifier. @objc - public var sessionInfo: DBXTeamLogMobileSessionLogInfo? { guard let swift = subSwift.sessionInfo else { return nil } - return DBXTeamLogMobileSessionLogInfo(swift: swift) - } + public var eventUuid: String { swift.eventUuid } - /// The device name. - @objc - public var deviceName: String { subSwift.deviceName } - /// The mobile application type. - @objc - public var clientType: DBXTeamMobileClientPlatform { DBXTeamMobileClientPlatform(swift: subSwift.clientType) } - /// The Dropbox client version. @objc - public var clientVersion: String? { subSwift.clientVersion } - /// The hosting OS version. + public init(eventUuid: String) { + self.swift = TeamLog.PaperContentRemoveMemberDetails(eventUuid: eventUuid) + } + + let swift: TeamLog.PaperContentRemoveMemberDetails + + public init(swift: TeamLog.PaperContentRemoveMemberDetails) { + self.swift = swift + } + + @objc - public var osVersion: String? { subSwift.osVersion } - /// last carrier used by the device. + public override var description: String { swift.description } +} + +/// Objective-C compatible PaperContentRemoveMemberType struct +@objc +public class DBXTeamLogPaperContentRemoveMemberType: NSObject { + /// (no description) @objc - public var lastCarrier: String? { subSwift.lastCarrier } + public var description_: String { swift.description_ } @objc - public init( - deviceName: String, - clientType: DBXTeamMobileClientPlatform, - ipAddress: String?, - created: Date?, - updated: Date?, - sessionInfo: DBXTeamLogMobileSessionLogInfo?, - clientVersion: String?, - osVersion: String?, - lastCarrier: String? - ) { - let swift = TeamLog.MobileDeviceSessionLogInfo( - deviceName: deviceName, - clientType: clientType.swift, - ipAddress: ipAddress, - created: created, - updated: updated, - sessionInfo: sessionInfo?.subSwift, - clientVersion: clientVersion, - osVersion: osVersion, - lastCarrier: lastCarrier - ) - self.subSwift = swift - super.init(swift: swift) + public init(description_: String) { + self.swift = TeamLog.PaperContentRemoveMemberType(description_: description_) } - let subSwift: TeamLog.MobileDeviceSessionLogInfo + let swift: TeamLog.PaperContentRemoveMemberType - public init(swift: TeamLog.MobileDeviceSessionLogInfo) { - self.subSwift = swift - super.init(swift: swift) + public init(swift: TeamLog.PaperContentRemoveMemberType) { + self.swift = swift } + @objc - public override var description: String { subSwift.description } + public override var description: String { swift.description } } -/// Mobile session. +/// Renamed Paper doc/folder. @objc -public class DBXTeamLogMobileSessionLogInfo: DBXTeamLogSessionLogInfo { - let subSwift: TeamLog.MobileSessionLogInfo +public class DBXTeamLogPaperContentRenameDetails: NSObject { + /// Event unique identifier. + @objc + public var eventUuid: String { swift.eventUuid } - public init(swift: TeamLog.MobileSessionLogInfo) { - self.subSwift = swift - super.init(swift: swift) + @objc + public init(eventUuid: String) { + self.swift = TeamLog.PaperContentRenameDetails(eventUuid: eventUuid) } + let swift: TeamLog.PaperContentRenameDetails + + public init(swift: TeamLog.PaperContentRenameDetails) { + self.swift = swift + } + + @objc - public override var description: String { subSwift.description } + public override var description: String { swift.description } } -/// Namespace relative path details. +/// Objective-C compatible PaperContentRenameType struct @objc -public class DBXTeamLogNamespaceRelativePathLogInfo: NSObject { - /// Namespace ID. - @objc - public var nsId: String? { swift.nsId } - /// A path relative to the specified namespace ID. - @objc - public var relativePath: String? { swift.relativePath } - /// True if the namespace is shared. +public class DBXTeamLogPaperContentRenameType: NSObject { + /// (no description) @objc - public var isSharedNamespace: NSNumber? { swift.isSharedNamespace as NSNumber? } + public var description_: String { swift.description_ } @objc - public init(nsId: String?, relativePath: String?, isSharedNamespace: NSNumber?) { - self.swift = TeamLog.NamespaceRelativePathLogInfo(nsId: nsId, relativePath: relativePath, isSharedNamespace: isSharedNamespace?.boolValue) + public init(description_: String) { + self.swift = TeamLog.PaperContentRenameType(description_: description_) } - let swift: TeamLog.NamespaceRelativePathLogInfo + let swift: TeamLog.PaperContentRenameType - public init(swift: TeamLog.NamespaceRelativePathLogInfo) { + public init(swift: TeamLog.PaperContentRenameType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Enabled/disabled network control. +/// Restored archived Paper doc/folder. @objc -public class DBXTeamLogNetworkControlChangePolicyDetails: NSObject { - /// New network control policy. - @objc - public var newValue: DBXTeamLogNetworkControlPolicy { DBXTeamLogNetworkControlPolicy(swift: swift.newValue) } - /// Previous network control policy. Might be missing due to historical data gap. +public class DBXTeamLogPaperContentRestoreDetails: NSObject { + /// Event unique identifier. @objc - public var previousValue: DBXTeamLogNetworkControlPolicy? { guard let swift = swift.previousValue else { return nil } - return DBXTeamLogNetworkControlPolicy(swift: swift) - } + public var eventUuid: String { swift.eventUuid } @objc - public init(newValue: DBXTeamLogNetworkControlPolicy, previousValue: DBXTeamLogNetworkControlPolicy?) { - self.swift = TeamLog.NetworkControlChangePolicyDetails(newValue: newValue.swift, previousValue: previousValue?.swift) + public init(eventUuid: String) { + self.swift = TeamLog.PaperContentRestoreDetails(eventUuid: eventUuid) } - let swift: TeamLog.NetworkControlChangePolicyDetails + let swift: TeamLog.PaperContentRestoreDetails - public init(swift: TeamLog.NetworkControlChangePolicyDetails) { + public init(swift: TeamLog.PaperContentRestoreDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible NetworkControlChangePolicyType struct +/// Objective-C compatible PaperContentRestoreType struct @objc -public class DBXTeamLogNetworkControlChangePolicyType: NSObject { +public class DBXTeamLogPaperContentRestoreType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.NetworkControlChangePolicyType(description_: description_) + self.swift = TeamLog.PaperContentRestoreType(description_: description_) } - let swift: TeamLog.NetworkControlChangePolicyType + let swift: TeamLog.PaperContentRestoreType - public init(swift: TeamLog.NetworkControlChangePolicyType) { + public init(swift: TeamLog.PaperContentRestoreType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Network control policy +/// Policy to set default access for newly created Paper folders. @objc -public class DBXTeamLogNetworkControlPolicy: NSObject { - let swift: TeamLog.NetworkControlPolicy +public class DBXTeamLogPaperDefaultFolderPolicy: NSObject { + let swift: TeamLog.PaperDefaultFolderPolicy - public init(swift: TeamLog.NetworkControlPolicy) { + public init(swift: TeamLog.PaperDefaultFolderPolicy) { self.swift = swift } - public static func factory(swift: TeamLog.NetworkControlPolicy) -> DBXTeamLogNetworkControlPolicy { + public static func factory(swift: TeamLog.PaperDefaultFolderPolicy) -> DBXTeamLogPaperDefaultFolderPolicy { switch swift { - case .disabled: - return DBXTeamLogNetworkControlPolicyDisabled() - case .enabled: - return DBXTeamLogNetworkControlPolicyEnabled() + case .everyoneInTeam: + return DBXTeamLogPaperDefaultFolderPolicyEveryoneInTeam() + case .inviteOnly: + return DBXTeamLogPaperDefaultFolderPolicyInviteOnly() case .other: - return DBXTeamLogNetworkControlPolicyOther() + return DBXTeamLogPaperDefaultFolderPolicyOther() } } @@ -48804,1803 +63318,1801 @@ public class DBXTeamLogNetworkControlPolicy: NSObject { public override var description: String { swift.description } @objc - public var asDisabled: DBXTeamLogNetworkControlPolicyDisabled? { - self as? DBXTeamLogNetworkControlPolicyDisabled + public var asEveryoneInTeam: DBXTeamLogPaperDefaultFolderPolicyEveryoneInTeam? { + return self as? DBXTeamLogPaperDefaultFolderPolicyEveryoneInTeam } @objc - public var asEnabled: DBXTeamLogNetworkControlPolicyEnabled? { - self as? DBXTeamLogNetworkControlPolicyEnabled + public var asInviteOnly: DBXTeamLogPaperDefaultFolderPolicyInviteOnly? { + return self as? DBXTeamLogPaperDefaultFolderPolicyInviteOnly } @objc - public var asOther: DBXTeamLogNetworkControlPolicyOther? { - self as? DBXTeamLogNetworkControlPolicyOther + public var asOther: DBXTeamLogPaperDefaultFolderPolicyOther? { + return self as? DBXTeamLogPaperDefaultFolderPolicyOther } } /// An unspecified error. @objc -public class DBXTeamLogNetworkControlPolicyDisabled: DBXTeamLogNetworkControlPolicy { +public class DBXTeamLogPaperDefaultFolderPolicyEveryoneInTeam: DBXTeamLogPaperDefaultFolderPolicy { @objc public init() { - let swift = TeamLog.NetworkControlPolicy.disabled + let swift = TeamLog.PaperDefaultFolderPolicy.everyoneInTeam super.init(swift: swift) } } /// An unspecified error. @objc -public class DBXTeamLogNetworkControlPolicyEnabled: DBXTeamLogNetworkControlPolicy { +public class DBXTeamLogPaperDefaultFolderPolicyInviteOnly: DBXTeamLogPaperDefaultFolderPolicy { @objc public init() { - let swift = TeamLog.NetworkControlPolicy.enabled + let swift = TeamLog.PaperDefaultFolderPolicy.inviteOnly super.init(swift: swift) } } /// An unspecified error. @objc -public class DBXTeamLogNetworkControlPolicyOther: DBXTeamLogNetworkControlPolicy { +public class DBXTeamLogPaperDefaultFolderPolicyOther: DBXTeamLogPaperDefaultFolderPolicy { @objc public init() { - let swift = TeamLog.NetworkControlPolicy.other + let swift = TeamLog.PaperDefaultFolderPolicy.other super.init(swift: swift) } } -/// Report created: Links created with no expiration. +/// Changed Paper Default Folder Policy setting for team. @objc -public class DBXTeamLogNoExpirationLinkGenCreateReportDetails: NSObject { - /// Report start date. +public class DBXTeamLogPaperDefaultFolderPolicyChangedDetails: NSObject { + /// New Paper Default Folder Policy. @objc - public var startDate: Date { swift.startDate } - /// Report end date. + public var newValue: DBXTeamLogPaperDefaultFolderPolicy { DBXTeamLogPaperDefaultFolderPolicy(swift: swift.newValue) } + /// Previous Paper Default Folder Policy. @objc - public var endDate: Date { swift.endDate } + public var previousValue: DBXTeamLogPaperDefaultFolderPolicy { DBXTeamLogPaperDefaultFolderPolicy(swift: swift.previousValue) } @objc - public init(startDate: Date, endDate: Date) { - self.swift = TeamLog.NoExpirationLinkGenCreateReportDetails(startDate: startDate, endDate: endDate) + public init(newValue: DBXTeamLogPaperDefaultFolderPolicy, previousValue: DBXTeamLogPaperDefaultFolderPolicy) { + self.swift = TeamLog.PaperDefaultFolderPolicyChangedDetails(newValue: newValue.swift, previousValue: previousValue.swift) } - let swift: TeamLog.NoExpirationLinkGenCreateReportDetails + let swift: TeamLog.PaperDefaultFolderPolicyChangedDetails - public init(swift: TeamLog.NoExpirationLinkGenCreateReportDetails) { + public init(swift: TeamLog.PaperDefaultFolderPolicyChangedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible NoExpirationLinkGenCreateReportType struct +/// Objective-C compatible PaperDefaultFolderPolicyChangedType struct @objc -public class DBXTeamLogNoExpirationLinkGenCreateReportType: NSObject { +public class DBXTeamLogPaperDefaultFolderPolicyChangedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.NoExpirationLinkGenCreateReportType(description_: description_) + self.swift = TeamLog.PaperDefaultFolderPolicyChangedType(description_: description_) } - let swift: TeamLog.NoExpirationLinkGenCreateReportType + let swift: TeamLog.PaperDefaultFolderPolicyChangedType - public init(swift: TeamLog.NoExpirationLinkGenCreateReportType) { + public init(swift: TeamLog.PaperDefaultFolderPolicyChangedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Couldn't create report: Links created with no expiration. +/// Policy for controlling if team members can use Paper Desktop @objc -public class DBXTeamLogNoExpirationLinkGenReportFailedDetails: NSObject { - /// Failure reason. - @objc - public var failureReason: DBXTeamTeamReportFailureReason { DBXTeamTeamReportFailureReason(swift: swift.failureReason) } +public class DBXTeamLogPaperDesktopPolicy: NSObject { + let swift: TeamLog.PaperDesktopPolicy - @objc - public init(failureReason: DBXTeamTeamReportFailureReason) { - self.swift = TeamLog.NoExpirationLinkGenReportFailedDetails(failureReason: failureReason.swift) + public init(swift: TeamLog.PaperDesktopPolicy) { + self.swift = swift } - let swift: TeamLog.NoExpirationLinkGenReportFailedDetails - - public init(swift: TeamLog.NoExpirationLinkGenReportFailedDetails) { - self.swift = swift + public static func factory(swift: TeamLog.PaperDesktopPolicy) -> DBXTeamLogPaperDesktopPolicy { + switch swift { + case .disabled: + return DBXTeamLogPaperDesktopPolicyDisabled() + case .enabled: + return DBXTeamLogPaperDesktopPolicyEnabled() + case .other: + return DBXTeamLogPaperDesktopPolicyOther() + } } @objc public override var description: String { swift.description } -} -/// Objective-C compatible NoExpirationLinkGenReportFailedType struct -@objc -public class DBXTeamLogNoExpirationLinkGenReportFailedType: NSObject { - /// (no description) @objc - public var description_: String { swift.description_ } + public var asDisabled: DBXTeamLogPaperDesktopPolicyDisabled? { + return self as? DBXTeamLogPaperDesktopPolicyDisabled + } @objc - public init(description_: String) { - self.swift = TeamLog.NoExpirationLinkGenReportFailedType(description_: description_) + public var asEnabled: DBXTeamLogPaperDesktopPolicyEnabled? { + return self as? DBXTeamLogPaperDesktopPolicyEnabled } - let swift: TeamLog.NoExpirationLinkGenReportFailedType + @objc + public var asOther: DBXTeamLogPaperDesktopPolicyOther? { + return self as? DBXTeamLogPaperDesktopPolicyOther + } +} - public init(swift: TeamLog.NoExpirationLinkGenReportFailedType) { - self.swift = swift +/// An unspecified error. +@objc +public class DBXTeamLogPaperDesktopPolicyDisabled: DBXTeamLogPaperDesktopPolicy { + @objc + public init() { + let swift = TeamLog.PaperDesktopPolicy.disabled + super.init(swift: swift) } +} +/// An unspecified error. +@objc +public class DBXTeamLogPaperDesktopPolicyEnabled: DBXTeamLogPaperDesktopPolicy { @objc - public override var description: String { swift.description } + public init() { + let swift = TeamLog.PaperDesktopPolicy.enabled + super.init(swift: swift) + } } -/// Report created: Links created without passwords. +/// An unspecified error. @objc -public class DBXTeamLogNoPasswordLinkGenCreateReportDetails: NSObject { - /// Report start date. +public class DBXTeamLogPaperDesktopPolicyOther: DBXTeamLogPaperDesktopPolicy { @objc - public var startDate: Date { swift.startDate } - /// Report end date. + public init() { + let swift = TeamLog.PaperDesktopPolicy.other + super.init(swift: swift) + } +} + +/// Enabled/disabled Paper Desktop for team. +@objc +public class DBXTeamLogPaperDesktopPolicyChangedDetails: NSObject { + /// New Paper Desktop policy. @objc - public var endDate: Date { swift.endDate } + public var newValue: DBXTeamLogPaperDesktopPolicy { DBXTeamLogPaperDesktopPolicy(swift: swift.newValue) } + /// Previous Paper Desktop policy. + @objc + public var previousValue: DBXTeamLogPaperDesktopPolicy { DBXTeamLogPaperDesktopPolicy(swift: swift.previousValue) } @objc - public init(startDate: Date, endDate: Date) { - self.swift = TeamLog.NoPasswordLinkGenCreateReportDetails(startDate: startDate, endDate: endDate) + public init(newValue: DBXTeamLogPaperDesktopPolicy, previousValue: DBXTeamLogPaperDesktopPolicy) { + self.swift = TeamLog.PaperDesktopPolicyChangedDetails(newValue: newValue.swift, previousValue: previousValue.swift) } - let swift: TeamLog.NoPasswordLinkGenCreateReportDetails + let swift: TeamLog.PaperDesktopPolicyChangedDetails - public init(swift: TeamLog.NoPasswordLinkGenCreateReportDetails) { + public init(swift: TeamLog.PaperDesktopPolicyChangedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible NoPasswordLinkGenCreateReportType struct +/// Objective-C compatible PaperDesktopPolicyChangedType struct @objc -public class DBXTeamLogNoPasswordLinkGenCreateReportType: NSObject { +public class DBXTeamLogPaperDesktopPolicyChangedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.NoPasswordLinkGenCreateReportType(description_: description_) + self.swift = TeamLog.PaperDesktopPolicyChangedType(description_: description_) } - let swift: TeamLog.NoPasswordLinkGenCreateReportType + let swift: TeamLog.PaperDesktopPolicyChangedType - public init(swift: TeamLog.NoPasswordLinkGenCreateReportType) { + public init(swift: TeamLog.PaperDesktopPolicyChangedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Couldn't create report: Links created without passwords. +/// Added Paper doc comment. @objc -public class DBXTeamLogNoPasswordLinkGenReportFailedDetails: NSObject { - /// Failure reason. +public class DBXTeamLogPaperDocAddCommentDetails: NSObject { + /// Event unique identifier. @objc - public var failureReason: DBXTeamTeamReportFailureReason { DBXTeamTeamReportFailureReason(swift: swift.failureReason) } + public var eventUuid: String { swift.eventUuid } + /// Comment text. + @objc + public var commentText: String? { swift.commentText } @objc - public init(failureReason: DBXTeamTeamReportFailureReason) { - self.swift = TeamLog.NoPasswordLinkGenReportFailedDetails(failureReason: failureReason.swift) + public init(eventUuid: String, commentText: String?) { + self.swift = TeamLog.PaperDocAddCommentDetails(eventUuid: eventUuid, commentText: commentText) } - let swift: TeamLog.NoPasswordLinkGenReportFailedDetails + let swift: TeamLog.PaperDocAddCommentDetails - public init(swift: TeamLog.NoPasswordLinkGenReportFailedDetails) { + public init(swift: TeamLog.PaperDocAddCommentDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible NoPasswordLinkGenReportFailedType struct +/// Objective-C compatible PaperDocAddCommentType struct @objc -public class DBXTeamLogNoPasswordLinkGenReportFailedType: NSObject { +public class DBXTeamLogPaperDocAddCommentType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.NoPasswordLinkGenReportFailedType(description_: description_) + self.swift = TeamLog.PaperDocAddCommentType(description_: description_) } - let swift: TeamLog.NoPasswordLinkGenReportFailedType + let swift: TeamLog.PaperDocAddCommentType - public init(swift: TeamLog.NoPasswordLinkGenReportFailedType) { + public init(swift: TeamLog.PaperDocAddCommentType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Report created: Views of links without passwords. +/// Changed member permissions for Paper doc. @objc -public class DBXTeamLogNoPasswordLinkViewCreateReportDetails: NSObject { - /// Report start date. +public class DBXTeamLogPaperDocChangeMemberRoleDetails: NSObject { + /// Event unique identifier. @objc - public var startDate: Date { swift.startDate } - /// Report end date. + public var eventUuid: String { swift.eventUuid } + /// Paper doc access type. @objc - public var endDate: Date { swift.endDate } + public var accessType: DBXTeamLogPaperAccessType { DBXTeamLogPaperAccessType(swift: swift.accessType) } @objc - public init(startDate: Date, endDate: Date) { - self.swift = TeamLog.NoPasswordLinkViewCreateReportDetails(startDate: startDate, endDate: endDate) + public init(eventUuid: String, accessType: DBXTeamLogPaperAccessType) { + self.swift = TeamLog.PaperDocChangeMemberRoleDetails(eventUuid: eventUuid, accessType: accessType.swift) } - let swift: TeamLog.NoPasswordLinkViewCreateReportDetails + let swift: TeamLog.PaperDocChangeMemberRoleDetails - public init(swift: TeamLog.NoPasswordLinkViewCreateReportDetails) { + public init(swift: TeamLog.PaperDocChangeMemberRoleDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible NoPasswordLinkViewCreateReportType struct +/// Objective-C compatible PaperDocChangeMemberRoleType struct @objc -public class DBXTeamLogNoPasswordLinkViewCreateReportType: NSObject { +public class DBXTeamLogPaperDocChangeMemberRoleType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.NoPasswordLinkViewCreateReportType(description_: description_) + self.swift = TeamLog.PaperDocChangeMemberRoleType(description_: description_) } - let swift: TeamLog.NoPasswordLinkViewCreateReportType + let swift: TeamLog.PaperDocChangeMemberRoleType - public init(swift: TeamLog.NoPasswordLinkViewCreateReportType) { + public init(swift: TeamLog.PaperDocChangeMemberRoleType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Couldn't create report: Views of links without passwords. +/// Changed sharing setting for Paper doc. @objc -public class DBXTeamLogNoPasswordLinkViewReportFailedDetails: NSObject { - /// Failure reason. +public class DBXTeamLogPaperDocChangeSharingPolicyDetails: NSObject { + /// Event unique identifier. @objc - public var failureReason: DBXTeamTeamReportFailureReason { DBXTeamTeamReportFailureReason(swift: swift.failureReason) } + public var eventUuid: String { swift.eventUuid } + /// Sharing policy with external users. + @objc + public var publicSharingPolicy: String? { swift.publicSharingPolicy } + /// Sharing policy with team. + @objc + public var teamSharingPolicy: String? { swift.teamSharingPolicy } @objc - public init(failureReason: DBXTeamTeamReportFailureReason) { - self.swift = TeamLog.NoPasswordLinkViewReportFailedDetails(failureReason: failureReason.swift) + public init(eventUuid: String, publicSharingPolicy: String?, teamSharingPolicy: String?) { + self.swift = TeamLog.PaperDocChangeSharingPolicyDetails(eventUuid: eventUuid, publicSharingPolicy: publicSharingPolicy, teamSharingPolicy: teamSharingPolicy) } - let swift: TeamLog.NoPasswordLinkViewReportFailedDetails + let swift: TeamLog.PaperDocChangeSharingPolicyDetails - public init(swift: TeamLog.NoPasswordLinkViewReportFailedDetails) { + public init(swift: TeamLog.PaperDocChangeSharingPolicyDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible NoPasswordLinkViewReportFailedType struct +/// Objective-C compatible PaperDocChangeSharingPolicyType struct @objc -public class DBXTeamLogNoPasswordLinkViewReportFailedType: NSObject { +public class DBXTeamLogPaperDocChangeSharingPolicyType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.NoPasswordLinkViewReportFailedType(description_: description_) + self.swift = TeamLog.PaperDocChangeSharingPolicyType(description_: description_) } - let swift: TeamLog.NoPasswordLinkViewReportFailedType + let swift: TeamLog.PaperDocChangeSharingPolicyType - public init(swift: TeamLog.NoPasswordLinkViewReportFailedType) { + public init(swift: TeamLog.PaperDocChangeSharingPolicyType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// User's logged information. +/// Followed/unfollowed Paper doc. @objc -public class DBXTeamLogUserLogInfo: NSObject { - /// User unique ID. +public class DBXTeamLogPaperDocChangeSubscriptionDetails: NSObject { + /// Event unique identifier. @objc - public var accountId: String? { swift.accountId } - /// User display name. + public var eventUuid: String { swift.eventUuid } + /// New doc subscription level. @objc - public var displayName: String? { swift.displayName } - /// User email address. + public var newSubscriptionLevel: String { swift.newSubscriptionLevel } + /// Previous doc subscription level. Might be missing due to historical data gap. @objc - public var email: String? { swift.email } + public var previousSubscriptionLevel: String? { swift.previousSubscriptionLevel } @objc - public init(accountId: String?, displayName: String?, email: String?) { - self.swift = TeamLog.UserLogInfo(accountId: accountId, displayName: displayName, email: email) + public init(eventUuid: String, newSubscriptionLevel: String, previousSubscriptionLevel: String?) { + self.swift = TeamLog.PaperDocChangeSubscriptionDetails(eventUuid: eventUuid, newSubscriptionLevel: newSubscriptionLevel, previousSubscriptionLevel: previousSubscriptionLevel) } - let swift: TeamLog.UserLogInfo + let swift: TeamLog.PaperDocChangeSubscriptionDetails - public init(swift: TeamLog.UserLogInfo) { + public init(swift: TeamLog.PaperDocChangeSubscriptionDetails) { self.swift = swift } - public static func wrapPreservingSubtypes(swift: TeamLog.UserLogInfo) -> DBXTeamLogUserLogInfo { - switch swift { - case let teamMemberLogInfo as TeamLog.TeamMemberLogInfo: - return DBXTeamLogTeamMemberLogInfo(swift: teamMemberLogInfo) - case let trustedNonTeamMemberLogInfo as TeamLog.TrustedNonTeamMemberLogInfo: - return DBXTeamLogTrustedNonTeamMemberLogInfo(swift: trustedNonTeamMemberLogInfo) - case let nonTeamMemberLogInfo as TeamLog.NonTeamMemberLogInfo: - return DBXTeamLogNonTeamMemberLogInfo(swift: nonTeamMemberLogInfo) - default: - return DBXTeamLogUserLogInfo(swift: swift) - } - } @objc public override var description: String { swift.description } } -/// Non team member's logged information. -@objc -public class DBXTeamLogNonTeamMemberLogInfo: DBXTeamLogUserLogInfo { - let subSwift: TeamLog.NonTeamMemberLogInfo - - public init(swift: TeamLog.NonTeamMemberLogInfo) { - self.subSwift = swift - super.init(swift: swift) - } - - @objc - public override var description: String { subSwift.description } -} - -/// The email to which the request was sent +/// Objective-C compatible PaperDocChangeSubscriptionType struct @objc -public class DBXTeamLogNonTrustedTeamDetails: NSObject { - /// The email to which the request was sent. +public class DBXTeamLogPaperDocChangeSubscriptionType: NSObject { + /// (no description) @objc - public var team: String { swift.team } + public var description_: String { swift.description_ } @objc - public init(team: String) { - self.swift = TeamLog.NonTrustedTeamDetails(team: team) + public init(description_: String) { + self.swift = TeamLog.PaperDocChangeSubscriptionType(description_: description_) } - let swift: TeamLog.NonTrustedTeamDetails + let swift: TeamLog.PaperDocChangeSubscriptionType - public init(swift: TeamLog.NonTrustedTeamDetails) { + public init(swift: TeamLog.PaperDocChangeSubscriptionType) { self.swift = swift } - @objc - public override var description: String { swift.description } -} - -/// Changed Paper doc to invite-only. -@objc -public class DBXTeamLogNoteAclInviteOnlyDetails: NSObject { - let swift: TeamLog.NoteAclInviteOnlyDetails - - public init(swift: TeamLog.NoteAclInviteOnlyDetails) { - self.swift = swift - } @objc public override var description: String { swift.description } } -/// Objective-C compatible NoteAclInviteOnlyType struct +/// Deleted Paper doc comment. @objc -public class DBXTeamLogNoteAclInviteOnlyType: NSObject { - /// (no description) +public class DBXTeamLogPaperDocDeleteCommentDetails: NSObject { + /// Event unique identifier. @objc - public var description_: String { swift.description_ } + public var eventUuid: String { swift.eventUuid } + /// Comment text. + @objc + public var commentText: String? { swift.commentText } @objc - public init(description_: String) { - self.swift = TeamLog.NoteAclInviteOnlyType(description_: description_) + public init(eventUuid: String, commentText: String?) { + self.swift = TeamLog.PaperDocDeleteCommentDetails(eventUuid: eventUuid, commentText: commentText) } - let swift: TeamLog.NoteAclInviteOnlyType + let swift: TeamLog.PaperDocDeleteCommentDetails - public init(swift: TeamLog.NoteAclInviteOnlyType) { + public init(swift: TeamLog.PaperDocDeleteCommentDetails) { self.swift = swift } - @objc - public override var description: String { swift.description } -} - -/// Changed Paper doc to link-accessible. -@objc -public class DBXTeamLogNoteAclLinkDetails: NSObject { - let swift: TeamLog.NoteAclLinkDetails - - public init(swift: TeamLog.NoteAclLinkDetails) { - self.swift = swift - } @objc public override var description: String { swift.description } } -/// Objective-C compatible NoteAclLinkType struct +/// Objective-C compatible PaperDocDeleteCommentType struct @objc -public class DBXTeamLogNoteAclLinkType: NSObject { +public class DBXTeamLogPaperDocDeleteCommentType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.NoteAclLinkType(description_: description_) + self.swift = TeamLog.PaperDocDeleteCommentType(description_: description_) } - let swift: TeamLog.NoteAclLinkType + let swift: TeamLog.PaperDocDeleteCommentType - public init(swift: TeamLog.NoteAclLinkType) { + public init(swift: TeamLog.PaperDocDeleteCommentType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Changed Paper doc to link-accessible for team. +/// Archived Paper doc. @objc -public class DBXTeamLogNoteAclTeamLinkDetails: NSObject { - let swift: TeamLog.NoteAclTeamLinkDetails +public class DBXTeamLogPaperDocDeletedDetails: NSObject { + /// Event unique identifier. + @objc + public var eventUuid: String { swift.eventUuid } - public init(swift: TeamLog.NoteAclTeamLinkDetails) { + @objc + public init(eventUuid: String) { + self.swift = TeamLog.PaperDocDeletedDetails(eventUuid: eventUuid) + } + + let swift: TeamLog.PaperDocDeletedDetails + + public init(swift: TeamLog.PaperDocDeletedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible NoteAclTeamLinkType struct +/// Objective-C compatible PaperDocDeletedType struct @objc -public class DBXTeamLogNoteAclTeamLinkType: NSObject { +public class DBXTeamLogPaperDocDeletedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.NoteAclTeamLinkType(description_: description_) + self.swift = TeamLog.PaperDocDeletedType(description_: description_) } - let swift: TeamLog.NoteAclTeamLinkType + let swift: TeamLog.PaperDocDeletedType - public init(swift: TeamLog.NoteAclTeamLinkType) { + public init(swift: TeamLog.PaperDocDeletedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Shared received Paper doc. +/// Downloaded Paper doc in specific format. @objc -public class DBXTeamLogNoteShareReceiveDetails: NSObject { - let swift: TeamLog.NoteShareReceiveDetails +public class DBXTeamLogPaperDocDownloadDetails: NSObject { + /// Event unique identifier. + @objc + public var eventUuid: String { swift.eventUuid } + /// Export file format. + @objc + public var exportFileFormat: DBXTeamLogPaperDownloadFormat { DBXTeamLogPaperDownloadFormat(swift: swift.exportFileFormat) } - public init(swift: TeamLog.NoteShareReceiveDetails) { + @objc + public init(eventUuid: String, exportFileFormat: DBXTeamLogPaperDownloadFormat) { + self.swift = TeamLog.PaperDocDownloadDetails(eventUuid: eventUuid, exportFileFormat: exportFileFormat.swift) + } + + let swift: TeamLog.PaperDocDownloadDetails + + public init(swift: TeamLog.PaperDocDownloadDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible NoteShareReceiveType struct +/// Objective-C compatible PaperDocDownloadType struct @objc -public class DBXTeamLogNoteShareReceiveType: NSObject { +public class DBXTeamLogPaperDocDownloadType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.NoteShareReceiveType(description_: description_) + self.swift = TeamLog.PaperDocDownloadType(description_: description_) } - let swift: TeamLog.NoteShareReceiveType + let swift: TeamLog.PaperDocDownloadType - public init(swift: TeamLog.NoteShareReceiveType) { + public init(swift: TeamLog.PaperDocDownloadType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Shared Paper doc. +/// Edited Paper doc comment. @objc -public class DBXTeamLogNoteSharedDetails: NSObject { - let swift: TeamLog.NoteSharedDetails +public class DBXTeamLogPaperDocEditCommentDetails: NSObject { + /// Event unique identifier. + @objc + public var eventUuid: String { swift.eventUuid } + /// Comment text. + @objc + public var commentText: String? { swift.commentText } - public init(swift: TeamLog.NoteSharedDetails) { + @objc + public init(eventUuid: String, commentText: String?) { + self.swift = TeamLog.PaperDocEditCommentDetails(eventUuid: eventUuid, commentText: commentText) + } + + let swift: TeamLog.PaperDocEditCommentDetails + + public init(swift: TeamLog.PaperDocEditCommentDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible NoteSharedType struct +/// Objective-C compatible PaperDocEditCommentType struct @objc -public class DBXTeamLogNoteSharedType: NSObject { +public class DBXTeamLogPaperDocEditCommentType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.NoteSharedType(description_: description_) + self.swift = TeamLog.PaperDocEditCommentType(description_: description_) } - let swift: TeamLog.NoteSharedType + let swift: TeamLog.PaperDocEditCommentType - public init(swift: TeamLog.NoteSharedType) { + public init(swift: TeamLog.PaperDocEditCommentType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Added a label. +/// Edited Paper doc. @objc -public class DBXTeamLogObjectLabelAddedDetails: NSObject { - /// Labels mark a file or folder. +public class DBXTeamLogPaperDocEditDetails: NSObject { + /// Event unique identifier. @objc - public var labelType: DBXTeamLogLabelType { DBXTeamLogLabelType(swift: swift.labelType) } + public var eventUuid: String { swift.eventUuid } @objc - public init(labelType: DBXTeamLogLabelType) { - self.swift = TeamLog.ObjectLabelAddedDetails(labelType: labelType.swift) + public init(eventUuid: String) { + self.swift = TeamLog.PaperDocEditDetails(eventUuid: eventUuid) } - let swift: TeamLog.ObjectLabelAddedDetails + let swift: TeamLog.PaperDocEditDetails - public init(swift: TeamLog.ObjectLabelAddedDetails) { + public init(swift: TeamLog.PaperDocEditDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible ObjectLabelAddedType struct +/// Objective-C compatible PaperDocEditType struct @objc -public class DBXTeamLogObjectLabelAddedType: NSObject { +public class DBXTeamLogPaperDocEditType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.ObjectLabelAddedType(description_: description_) + self.swift = TeamLog.PaperDocEditType(description_: description_) } - let swift: TeamLog.ObjectLabelAddedType + let swift: TeamLog.PaperDocEditType - public init(swift: TeamLog.ObjectLabelAddedType) { + public init(swift: TeamLog.PaperDocEditType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Removed a label. +/// Followed Paper doc. @objc -public class DBXTeamLogObjectLabelRemovedDetails: NSObject { - /// Labels mark a file or folder. +public class DBXTeamLogPaperDocFollowedDetails: NSObject { + /// Event unique identifier. @objc - public var labelType: DBXTeamLogLabelType { DBXTeamLogLabelType(swift: swift.labelType) } + public var eventUuid: String { swift.eventUuid } @objc - public init(labelType: DBXTeamLogLabelType) { - self.swift = TeamLog.ObjectLabelRemovedDetails(labelType: labelType.swift) + public init(eventUuid: String) { + self.swift = TeamLog.PaperDocFollowedDetails(eventUuid: eventUuid) } - let swift: TeamLog.ObjectLabelRemovedDetails + let swift: TeamLog.PaperDocFollowedDetails - public init(swift: TeamLog.ObjectLabelRemovedDetails) { + public init(swift: TeamLog.PaperDocFollowedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible ObjectLabelRemovedType struct +/// Objective-C compatible PaperDocFollowedType struct @objc -public class DBXTeamLogObjectLabelRemovedType: NSObject { +public class DBXTeamLogPaperDocFollowedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.ObjectLabelRemovedType(description_: description_) + self.swift = TeamLog.PaperDocFollowedType(description_: description_) } - let swift: TeamLog.ObjectLabelRemovedType + let swift: TeamLog.PaperDocFollowedType - public init(swift: TeamLog.ObjectLabelRemovedType) { + public init(swift: TeamLog.PaperDocFollowedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Updated a label's value. +/// Mentioned user in Paper doc. @objc -public class DBXTeamLogObjectLabelUpdatedValueDetails: NSObject { - /// Labels mark a file or folder. +public class DBXTeamLogPaperDocMentionDetails: NSObject { + /// Event unique identifier. @objc - public var labelType: DBXTeamLogLabelType { DBXTeamLogLabelType(swift: swift.labelType) } + public var eventUuid: String { swift.eventUuid } @objc - public init(labelType: DBXTeamLogLabelType) { - self.swift = TeamLog.ObjectLabelUpdatedValueDetails(labelType: labelType.swift) + public init(eventUuid: String) { + self.swift = TeamLog.PaperDocMentionDetails(eventUuid: eventUuid) } - let swift: TeamLog.ObjectLabelUpdatedValueDetails + let swift: TeamLog.PaperDocMentionDetails - public init(swift: TeamLog.ObjectLabelUpdatedValueDetails) { + public init(swift: TeamLog.PaperDocMentionDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible ObjectLabelUpdatedValueType struct +/// Objective-C compatible PaperDocMentionType struct @objc -public class DBXTeamLogObjectLabelUpdatedValueType: NSObject { +public class DBXTeamLogPaperDocMentionType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.ObjectLabelUpdatedValueType(description_: description_) + self.swift = TeamLog.PaperDocMentionType(description_: description_) } - let swift: TeamLog.ObjectLabelUpdatedValueType + let swift: TeamLog.PaperDocMentionType - public init(swift: TeamLog.ObjectLabelUpdatedValueType) { + public init(swift: TeamLog.PaperDocMentionType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Opened shared Paper doc. +/// Transferred ownership of Paper doc. @objc -public class DBXTeamLogOpenNoteSharedDetails: NSObject { - let swift: TeamLog.OpenNoteSharedDetails +public class DBXTeamLogPaperDocOwnershipChangedDetails: NSObject { + /// Event unique identifier. + @objc + public var eventUuid: String { swift.eventUuid } + /// Previous owner. + @objc + public var oldOwnerUserId: String? { swift.oldOwnerUserId } + /// New owner. + @objc + public var newOwnerUserId: String { swift.newOwnerUserId } - public init(swift: TeamLog.OpenNoteSharedDetails) { + @objc + public init(eventUuid: String, newOwnerUserId: String, oldOwnerUserId: String?) { + self.swift = TeamLog.PaperDocOwnershipChangedDetails(eventUuid: eventUuid, newOwnerUserId: newOwnerUserId, oldOwnerUserId: oldOwnerUserId) + } + + let swift: TeamLog.PaperDocOwnershipChangedDetails + + public init(swift: TeamLog.PaperDocOwnershipChangedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible OpenNoteSharedType struct +/// Objective-C compatible PaperDocOwnershipChangedType struct @objc -public class DBXTeamLogOpenNoteSharedType: NSObject { +public class DBXTeamLogPaperDocOwnershipChangedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.OpenNoteSharedType(description_: description_) + self.swift = TeamLog.PaperDocOwnershipChangedType(description_: description_) } - let swift: TeamLog.OpenNoteSharedType + let swift: TeamLog.PaperDocOwnershipChangedType - public init(swift: TeamLog.OpenNoteSharedType) { + public init(swift: TeamLog.PaperDocOwnershipChangedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// More details about the organization. +/// Requested access to Paper doc. @objc -public class DBXTeamLogOrganizationDetails: NSObject { - /// The name of the organization. +public class DBXTeamLogPaperDocRequestAccessDetails: NSObject { + /// Event unique identifier. @objc - public var organization: String { swift.organization } + public var eventUuid: String { swift.eventUuid } @objc - public init(organization: String) { - self.swift = TeamLog.OrganizationDetails(organization: organization) + public init(eventUuid: String) { + self.swift = TeamLog.PaperDocRequestAccessDetails(eventUuid: eventUuid) } - let swift: TeamLog.OrganizationDetails + let swift: TeamLog.PaperDocRequestAccessDetails - public init(swift: TeamLog.OrganizationDetails) { + public init(swift: TeamLog.PaperDocRequestAccessDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// The name of the organization +/// Objective-C compatible PaperDocRequestAccessType struct @objc -public class DBXTeamLogOrganizationName: NSObject { - /// The name of the organization. +public class DBXTeamLogPaperDocRequestAccessType: NSObject { + /// (no description) @objc - public var organization: String { swift.organization } + public var description_: String { swift.description_ } @objc - public init(organization: String) { - self.swift = TeamLog.OrganizationName(organization: organization) + public init(description_: String) { + self.swift = TeamLog.PaperDocRequestAccessType(description_: description_) } - let swift: TeamLog.OrganizationName + let swift: TeamLog.PaperDocRequestAccessType - public init(swift: TeamLog.OrganizationName) { + public init(swift: TeamLog.PaperDocRequestAccessType) { self.swift = swift } - @objc - public override var description: String { swift.description } -} - -/// Organized a folder with multi-file organize. -@objc -public class DBXTeamLogOrganizeFolderWithTidyDetails: NSObject { - let swift: TeamLog.OrganizeFolderWithTidyDetails - - public init(swift: TeamLog.OrganizeFolderWithTidyDetails) { - self.swift = swift - } @objc public override var description: String { swift.description } } -/// Objective-C compatible OrganizeFolderWithTidyType struct +/// Resolved Paper doc comment. @objc -public class DBXTeamLogOrganizeFolderWithTidyType: NSObject { - /// (no description) +public class DBXTeamLogPaperDocResolveCommentDetails: NSObject { + /// Event unique identifier. @objc - public var description_: String { swift.description_ } + public var eventUuid: String { swift.eventUuid } + /// Comment text. + @objc + public var commentText: String? { swift.commentText } @objc - public init(description_: String) { - self.swift = TeamLog.OrganizeFolderWithTidyType(description_: description_) + public init(eventUuid: String, commentText: String?) { + self.swift = TeamLog.PaperDocResolveCommentDetails(eventUuid: eventUuid, commentText: commentText) } - let swift: TeamLog.OrganizeFolderWithTidyType + let swift: TeamLog.PaperDocResolveCommentDetails - public init(swift: TeamLog.OrganizeFolderWithTidyType) { + public init(swift: TeamLog.PaperDocResolveCommentDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// The origin from which the actor performed the action. +/// Objective-C compatible PaperDocResolveCommentType struct @objc -public class DBXTeamLogOriginLogInfo: NSObject { - /// Geographic location details. - @objc - public var geoLocation: DBXTeamLogGeoLocationLogInfo? { guard let swift = swift.geoLocation else { return nil } - return DBXTeamLogGeoLocationLogInfo(swift: swift) - } - - /// The method that was used to perform the action. +public class DBXTeamLogPaperDocResolveCommentType: NSObject { + /// (no description) @objc - public var accessMethod: DBXTeamLogAccessMethodLogInfo { DBXTeamLogAccessMethodLogInfo(swift: swift.accessMethod) } + public var description_: String { swift.description_ } @objc - public init(accessMethod: DBXTeamLogAccessMethodLogInfo, geoLocation: DBXTeamLogGeoLocationLogInfo?) { - self.swift = TeamLog.OriginLogInfo(accessMethod: accessMethod.swift, geoLocation: geoLocation?.swift) + public init(description_: String) { + self.swift = TeamLog.PaperDocResolveCommentType(description_: description_) } - let swift: TeamLog.OriginLogInfo + let swift: TeamLog.PaperDocResolveCommentType - public init(swift: TeamLog.OriginLogInfo) { + public init(swift: TeamLog.PaperDocResolveCommentType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Report created: Views of old links. +/// Restored Paper doc to previous version. @objc -public class DBXTeamLogOutdatedLinkViewCreateReportDetails: NSObject { - /// Report start date. - @objc - public var startDate: Date { swift.startDate } - /// Report end date. +public class DBXTeamLogPaperDocRevertDetails: NSObject { + /// Event unique identifier. @objc - public var endDate: Date { swift.endDate } + public var eventUuid: String { swift.eventUuid } @objc - public init(startDate: Date, endDate: Date) { - self.swift = TeamLog.OutdatedLinkViewCreateReportDetails(startDate: startDate, endDate: endDate) + public init(eventUuid: String) { + self.swift = TeamLog.PaperDocRevertDetails(eventUuid: eventUuid) } - let swift: TeamLog.OutdatedLinkViewCreateReportDetails + let swift: TeamLog.PaperDocRevertDetails - public init(swift: TeamLog.OutdatedLinkViewCreateReportDetails) { + public init(swift: TeamLog.PaperDocRevertDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible OutdatedLinkViewCreateReportType struct +/// Objective-C compatible PaperDocRevertType struct @objc -public class DBXTeamLogOutdatedLinkViewCreateReportType: NSObject { +public class DBXTeamLogPaperDocRevertType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.OutdatedLinkViewCreateReportType(description_: description_) + self.swift = TeamLog.PaperDocRevertType(description_: description_) } - let swift: TeamLog.OutdatedLinkViewCreateReportType + let swift: TeamLog.PaperDocRevertType - public init(swift: TeamLog.OutdatedLinkViewCreateReportType) { + public init(swift: TeamLog.PaperDocRevertType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Couldn't create report: Views of old links. +/// Shared Paper doc via Slack. @objc -public class DBXTeamLogOutdatedLinkViewReportFailedDetails: NSObject { - /// Failure reason. +public class DBXTeamLogPaperDocSlackShareDetails: NSObject { + /// Event unique identifier. @objc - public var failureReason: DBXTeamTeamReportFailureReason { DBXTeamTeamReportFailureReason(swift: swift.failureReason) } + public var eventUuid: String { swift.eventUuid } @objc - public init(failureReason: DBXTeamTeamReportFailureReason) { - self.swift = TeamLog.OutdatedLinkViewReportFailedDetails(failureReason: failureReason.swift) + public init(eventUuid: String) { + self.swift = TeamLog.PaperDocSlackShareDetails(eventUuid: eventUuid) } - let swift: TeamLog.OutdatedLinkViewReportFailedDetails + let swift: TeamLog.PaperDocSlackShareDetails - public init(swift: TeamLog.OutdatedLinkViewReportFailedDetails) { + public init(swift: TeamLog.PaperDocSlackShareDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible OutdatedLinkViewReportFailedType struct +/// Objective-C compatible PaperDocSlackShareType struct @objc -public class DBXTeamLogOutdatedLinkViewReportFailedType: NSObject { +public class DBXTeamLogPaperDocSlackShareType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.OutdatedLinkViewReportFailedType(description_: description_) + self.swift = TeamLog.PaperDocSlackShareType(description_: description_) } - let swift: TeamLog.OutdatedLinkViewReportFailedType + let swift: TeamLog.PaperDocSlackShareType - public init(swift: TeamLog.OutdatedLinkViewReportFailedType) { + public init(swift: TeamLog.PaperDocSlackShareType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible PaperAccessType union +/// Shared Paper doc with users and/or groups. @objc -public class DBXTeamLogPaperAccessType: NSObject { - let swift: TeamLog.PaperAccessType +public class DBXTeamLogPaperDocTeamInviteDetails: NSObject { + /// Event unique identifier. + @objc + public var eventUuid: String { swift.eventUuid } - public init(swift: TeamLog.PaperAccessType) { - self.swift = swift + @objc + public init(eventUuid: String) { + self.swift = TeamLog.PaperDocTeamInviteDetails(eventUuid: eventUuid) } - public static func factory(swift: TeamLog.PaperAccessType) -> DBXTeamLogPaperAccessType { - switch swift { - case .commenter: - return DBXTeamLogPaperAccessTypeCommenter() - case .editor: - return DBXTeamLogPaperAccessTypeEditor() - case .viewer: - return DBXTeamLogPaperAccessTypeViewer() - case .other: - return DBXTeamLogPaperAccessTypeOther() - } + let swift: TeamLog.PaperDocTeamInviteDetails + + public init(swift: TeamLog.PaperDocTeamInviteDetails) { + self.swift = swift } + @objc public override var description: String { swift.description } +} +/// Objective-C compatible PaperDocTeamInviteType struct +@objc +public class DBXTeamLogPaperDocTeamInviteType: NSObject { + /// (no description) @objc - public var asCommenter: DBXTeamLogPaperAccessTypeCommenter? { - self as? DBXTeamLogPaperAccessTypeCommenter - } + public var description_: String { swift.description_ } @objc - public var asEditor: DBXTeamLogPaperAccessTypeEditor? { - self as? DBXTeamLogPaperAccessTypeEditor + public init(description_: String) { + self.swift = TeamLog.PaperDocTeamInviteType(description_: description_) } - @objc - public var asViewer: DBXTeamLogPaperAccessTypeViewer? { - self as? DBXTeamLogPaperAccessTypeViewer - } + let swift: TeamLog.PaperDocTeamInviteType - @objc - public var asOther: DBXTeamLogPaperAccessTypeOther? { - self as? DBXTeamLogPaperAccessTypeOther + public init(swift: TeamLog.PaperDocTeamInviteType) { + self.swift = swift } -} -/// An unspecified error. -@objc -public class DBXTeamLogPaperAccessTypeCommenter: DBXTeamLogPaperAccessType { - @objc - public init() { - let swift = TeamLog.PaperAccessType.commenter - super.init(swift: swift) - } -} -/// An unspecified error. -@objc -public class DBXTeamLogPaperAccessTypeEditor: DBXTeamLogPaperAccessType { @objc - public init() { - let swift = TeamLog.PaperAccessType.editor - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// An unspecified error. +/// Deleted Paper doc. @objc -public class DBXTeamLogPaperAccessTypeViewer: DBXTeamLogPaperAccessType { +public class DBXTeamLogPaperDocTrashedDetails: NSObject { + /// Event unique identifier. @objc - public init() { - let swift = TeamLog.PaperAccessType.viewer - super.init(swift: swift) - } -} + public var eventUuid: String { swift.eventUuid } -/// An unspecified error. -@objc -public class DBXTeamLogPaperAccessTypeOther: DBXTeamLogPaperAccessType { @objc - public init() { - let swift = TeamLog.PaperAccessType.other - super.init(swift: swift) + public init(eventUuid: String) { + self.swift = TeamLog.PaperDocTrashedDetails(eventUuid: eventUuid) } -} -/// Exported all team Paper docs. -@objc -public class DBXTeamLogPaperAdminExportStartDetails: NSObject { - let swift: TeamLog.PaperAdminExportStartDetails + let swift: TeamLog.PaperDocTrashedDetails - public init(swift: TeamLog.PaperAdminExportStartDetails) { + public init(swift: TeamLog.PaperDocTrashedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible PaperAdminExportStartType struct +/// Objective-C compatible PaperDocTrashedType struct @objc -public class DBXTeamLogPaperAdminExportStartType: NSObject { +public class DBXTeamLogPaperDocTrashedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.PaperAdminExportStartType(description_: description_) + self.swift = TeamLog.PaperDocTrashedType(description_: description_) } - let swift: TeamLog.PaperAdminExportStartType + let swift: TeamLog.PaperDocTrashedType - public init(swift: TeamLog.PaperAdminExportStartType) { + public init(swift: TeamLog.PaperDocTrashedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Changed whether Dropbox Paper, when enabled, is deployed to all members or to specific members. +/// Unresolved Paper doc comment. @objc -public class DBXTeamLogPaperChangeDeploymentPolicyDetails: NSObject { - /// New Dropbox Paper deployment policy. +public class DBXTeamLogPaperDocUnresolveCommentDetails: NSObject { + /// Event unique identifier. @objc - public var newValue: DBXTeamPoliciesPaperDeploymentPolicy { DBXTeamPoliciesPaperDeploymentPolicy(swift: swift.newValue) } - /// Previous Dropbox Paper deployment policy. Might be missing due to historical data gap. + public var eventUuid: String { swift.eventUuid } + /// Comment text. @objc - public var previousValue: DBXTeamPoliciesPaperDeploymentPolicy? { guard let swift = swift.previousValue else { return nil } - return DBXTeamPoliciesPaperDeploymentPolicy(swift: swift) - } + public var commentText: String? { swift.commentText } @objc - public init(newValue: DBXTeamPoliciesPaperDeploymentPolicy, previousValue: DBXTeamPoliciesPaperDeploymentPolicy?) { - self.swift = TeamLog.PaperChangeDeploymentPolicyDetails(newValue: newValue.swift, previousValue: previousValue?.swift) + public init(eventUuid: String, commentText: String?) { + self.swift = TeamLog.PaperDocUnresolveCommentDetails(eventUuid: eventUuid, commentText: commentText) } - let swift: TeamLog.PaperChangeDeploymentPolicyDetails + let swift: TeamLog.PaperDocUnresolveCommentDetails - public init(swift: TeamLog.PaperChangeDeploymentPolicyDetails) { + public init(swift: TeamLog.PaperDocUnresolveCommentDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible PaperChangeDeploymentPolicyType struct +/// Objective-C compatible PaperDocUnresolveCommentType struct @objc -public class DBXTeamLogPaperChangeDeploymentPolicyType: NSObject { +public class DBXTeamLogPaperDocUnresolveCommentType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.PaperChangeDeploymentPolicyType(description_: description_) + self.swift = TeamLog.PaperDocUnresolveCommentType(description_: description_) } - let swift: TeamLog.PaperChangeDeploymentPolicyType + let swift: TeamLog.PaperDocUnresolveCommentType - public init(swift: TeamLog.PaperChangeDeploymentPolicyType) { + public init(swift: TeamLog.PaperDocUnresolveCommentType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Changed whether non-members can view Paper docs with link. +/// Restored Paper doc. @objc -public class DBXTeamLogPaperChangeMemberLinkPolicyDetails: NSObject { - /// New paper external link accessibility policy. +public class DBXTeamLogPaperDocUntrashedDetails: NSObject { + /// Event unique identifier. @objc - public var newValue: DBXTeamLogPaperMemberPolicy { DBXTeamLogPaperMemberPolicy(swift: swift.newValue) } + public var eventUuid: String { swift.eventUuid } @objc - public init(newValue: DBXTeamLogPaperMemberPolicy) { - self.swift = TeamLog.PaperChangeMemberLinkPolicyDetails(newValue: newValue.swift) + public init(eventUuid: String) { + self.swift = TeamLog.PaperDocUntrashedDetails(eventUuid: eventUuid) } - let swift: TeamLog.PaperChangeMemberLinkPolicyDetails + let swift: TeamLog.PaperDocUntrashedDetails - public init(swift: TeamLog.PaperChangeMemberLinkPolicyDetails) { + public init(swift: TeamLog.PaperDocUntrashedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible PaperChangeMemberLinkPolicyType struct +/// Objective-C compatible PaperDocUntrashedType struct @objc -public class DBXTeamLogPaperChangeMemberLinkPolicyType: NSObject { +public class DBXTeamLogPaperDocUntrashedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.PaperChangeMemberLinkPolicyType(description_: description_) + self.swift = TeamLog.PaperDocUntrashedType(description_: description_) } - let swift: TeamLog.PaperChangeMemberLinkPolicyType + let swift: TeamLog.PaperDocUntrashedType - public init(swift: TeamLog.PaperChangeMemberLinkPolicyType) { + public init(swift: TeamLog.PaperDocUntrashedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Changed whether members can share Paper docs outside team, and if docs are accessible only by team members or -/// anyone by default. +/// Viewed Paper doc. @objc -public class DBXTeamLogPaperChangeMemberPolicyDetails: NSObject { - /// New paper external accessibility policy. - @objc - public var newValue: DBXTeamLogPaperMemberPolicy { DBXTeamLogPaperMemberPolicy(swift: swift.newValue) } - /// Previous paper external accessibility policy. Might be missing due to historical data gap. +public class DBXTeamLogPaperDocViewDetails: NSObject { + /// Event unique identifier. @objc - public var previousValue: DBXTeamLogPaperMemberPolicy? { guard let swift = swift.previousValue else { return nil } - return DBXTeamLogPaperMemberPolicy(swift: swift) - } + public var eventUuid: String { swift.eventUuid } @objc - public init(newValue: DBXTeamLogPaperMemberPolicy, previousValue: DBXTeamLogPaperMemberPolicy?) { - self.swift = TeamLog.PaperChangeMemberPolicyDetails(newValue: newValue.swift, previousValue: previousValue?.swift) + public init(eventUuid: String) { + self.swift = TeamLog.PaperDocViewDetails(eventUuid: eventUuid) } - let swift: TeamLog.PaperChangeMemberPolicyDetails + let swift: TeamLog.PaperDocViewDetails - public init(swift: TeamLog.PaperChangeMemberPolicyDetails) { + public init(swift: TeamLog.PaperDocViewDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible PaperChangeMemberPolicyType struct +/// Objective-C compatible PaperDocViewType struct @objc -public class DBXTeamLogPaperChangeMemberPolicyType: NSObject { +public class DBXTeamLogPaperDocViewType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.PaperChangeMemberPolicyType(description_: description_) + self.swift = TeamLog.PaperDocViewType(description_: description_) } - let swift: TeamLog.PaperChangeMemberPolicyType + let swift: TeamLog.PaperDocViewType - public init(swift: TeamLog.PaperChangeMemberPolicyType) { + public init(swift: TeamLog.PaperDocViewType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Enabled/disabled Dropbox Paper for team. +/// Paper document's logged information. @objc -public class DBXTeamLogPaperChangePolicyDetails: NSObject { - /// New Dropbox Paper policy. +public class DBXTeamLogPaperDocumentLogInfo: NSObject { + /// Papers document Id. @objc - public var newValue: DBXTeamPoliciesPaperEnabledPolicy { DBXTeamPoliciesPaperEnabledPolicy(swift: swift.newValue) } - /// Previous Dropbox Paper policy. Might be missing due to historical data gap. + public var docId: String { swift.docId } + /// Paper document title. @objc - public var previousValue: DBXTeamPoliciesPaperEnabledPolicy? { guard let swift = swift.previousValue else { return nil } - return DBXTeamPoliciesPaperEnabledPolicy(swift: swift) - } + public var docTitle: String { swift.docTitle } @objc - public init(newValue: DBXTeamPoliciesPaperEnabledPolicy, previousValue: DBXTeamPoliciesPaperEnabledPolicy?) { - self.swift = TeamLog.PaperChangePolicyDetails(newValue: newValue.swift, previousValue: previousValue?.swift) + public init(docId: String, docTitle: String) { + self.swift = TeamLog.PaperDocumentLogInfo(docId: docId, docTitle: docTitle) } - let swift: TeamLog.PaperChangePolicyDetails + let swift: TeamLog.PaperDocumentLogInfo - public init(swift: TeamLog.PaperChangePolicyDetails) { + public init(swift: TeamLog.PaperDocumentLogInfo) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible PaperChangePolicyType struct +/// Objective-C compatible PaperDownloadFormat union @objc -public class DBXTeamLogPaperChangePolicyType: NSObject { - /// (no description) - @objc - public var description_: String { swift.description_ } +public class DBXTeamLogPaperDownloadFormat: NSObject { + let swift: TeamLog.PaperDownloadFormat - @objc - public init(description_: String) { - self.swift = TeamLog.PaperChangePolicyType(description_: description_) + public init(swift: TeamLog.PaperDownloadFormat) { + self.swift = swift } - let swift: TeamLog.PaperChangePolicyType - - public init(swift: TeamLog.PaperChangePolicyType) { - self.swift = swift + public static func factory(swift: TeamLog.PaperDownloadFormat) -> DBXTeamLogPaperDownloadFormat { + switch swift { + case .docx: + return DBXTeamLogPaperDownloadFormatDocx() + case .html: + return DBXTeamLogPaperDownloadFormatHtml() + case .markdown: + return DBXTeamLogPaperDownloadFormatMarkdown() + case .pdf: + return DBXTeamLogPaperDownloadFormatPdf() + case .other: + return DBXTeamLogPaperDownloadFormatOther() + } } @objc public override var description: String { swift.description } -} -/// Added users and/or groups to Paper doc/folder. -@objc -public class DBXTeamLogPaperContentAddMemberDetails: NSObject { - /// Event unique identifier. @objc - public var eventUuid: String { swift.eventUuid } + public var asDocx: DBXTeamLogPaperDownloadFormatDocx? { + return self as? DBXTeamLogPaperDownloadFormatDocx + } @objc - public init(eventUuid: String) { - self.swift = TeamLog.PaperContentAddMemberDetails(eventUuid: eventUuid) + public var asHtml: DBXTeamLogPaperDownloadFormatHtml? { + return self as? DBXTeamLogPaperDownloadFormatHtml } - let swift: TeamLog.PaperContentAddMemberDetails + @objc + public var asMarkdown: DBXTeamLogPaperDownloadFormatMarkdown? { + return self as? DBXTeamLogPaperDownloadFormatMarkdown + } - public init(swift: TeamLog.PaperContentAddMemberDetails) { - self.swift = swift + @objc + public var asPdf: DBXTeamLogPaperDownloadFormatPdf? { + return self as? DBXTeamLogPaperDownloadFormatPdf } @objc - public override var description: String { swift.description } + public var asOther: DBXTeamLogPaperDownloadFormatOther? { + return self as? DBXTeamLogPaperDownloadFormatOther + } } -/// Objective-C compatible PaperContentAddMemberType struct +/// An unspecified error. @objc -public class DBXTeamLogPaperContentAddMemberType: NSObject { - /// (no description) - @objc - public var description_: String { swift.description_ } - +public class DBXTeamLogPaperDownloadFormatDocx: DBXTeamLogPaperDownloadFormat { @objc - public init(description_: String) { - self.swift = TeamLog.PaperContentAddMemberType(description_: description_) + public init() { + let swift = TeamLog.PaperDownloadFormat.docx + super.init(swift: swift) } +} - let swift: TeamLog.PaperContentAddMemberType - - public init(swift: TeamLog.PaperContentAddMemberType) { - self.swift = swift +/// An unspecified error. +@objc +public class DBXTeamLogPaperDownloadFormatHtml: DBXTeamLogPaperDownloadFormat { + @objc + public init() { + let swift = TeamLog.PaperDownloadFormat.html + super.init(swift: swift) } +} +/// An unspecified error. +@objc +public class DBXTeamLogPaperDownloadFormatMarkdown: DBXTeamLogPaperDownloadFormat { @objc - public override var description: String { swift.description } + public init() { + let swift = TeamLog.PaperDownloadFormat.markdown + super.init(swift: swift) + } } -/// Added Paper doc/folder to folder. +/// An unspecified error. @objc -public class DBXTeamLogPaperContentAddToFolderDetails: NSObject { - /// Event unique identifier. - @objc - public var eventUuid: String { swift.eventUuid } - /// Target asset position in the Assets list. - @objc - public var targetAssetIndex: NSNumber { swift.targetAssetIndex as NSNumber } - /// Parent asset position in the Assets list. +public class DBXTeamLogPaperDownloadFormatPdf: DBXTeamLogPaperDownloadFormat { @objc - public var parentAssetIndex: NSNumber { swift.parentAssetIndex as NSNumber } + public init() { + let swift = TeamLog.PaperDownloadFormat.pdf + super.init(swift: swift) + } +} +/// An unspecified error. +@objc +public class DBXTeamLogPaperDownloadFormatOther: DBXTeamLogPaperDownloadFormat { @objc - public init(eventUuid: String, targetAssetIndex: NSNumber, parentAssetIndex: NSNumber) { - self.swift = TeamLog.PaperContentAddToFolderDetails( - eventUuid: eventUuid, - targetAssetIndex: targetAssetIndex.uint64Value, - parentAssetIndex: parentAssetIndex.uint64Value - ) + public init() { + let swift = TeamLog.PaperDownloadFormat.other + super.init(swift: swift) } +} - let swift: TeamLog.PaperContentAddToFolderDetails +/// Added users to Paper-enabled users list. +@objc +public class DBXTeamLogPaperEnabledUsersGroupAdditionDetails: NSObject { - public init(swift: TeamLog.PaperContentAddToFolderDetails) { + let swift: TeamLog.PaperEnabledUsersGroupAdditionDetails + + public init(swift: TeamLog.PaperEnabledUsersGroupAdditionDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible PaperContentAddToFolderType struct +/// Objective-C compatible PaperEnabledUsersGroupAdditionType struct @objc -public class DBXTeamLogPaperContentAddToFolderType: NSObject { +public class DBXTeamLogPaperEnabledUsersGroupAdditionType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.PaperContentAddToFolderType(description_: description_) + self.swift = TeamLog.PaperEnabledUsersGroupAdditionType(description_: description_) } - let swift: TeamLog.PaperContentAddToFolderType + let swift: TeamLog.PaperEnabledUsersGroupAdditionType - public init(swift: TeamLog.PaperContentAddToFolderType) { + public init(swift: TeamLog.PaperEnabledUsersGroupAdditionType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Archived Paper doc/folder. +/// Removed users from Paper-enabled users list. @objc -public class DBXTeamLogPaperContentArchiveDetails: NSObject { - /// Event unique identifier. - @objc - public var eventUuid: String { swift.eventUuid } - - @objc - public init(eventUuid: String) { - self.swift = TeamLog.PaperContentArchiveDetails(eventUuid: eventUuid) - } +public class DBXTeamLogPaperEnabledUsersGroupRemovalDetails: NSObject { - let swift: TeamLog.PaperContentArchiveDetails + let swift: TeamLog.PaperEnabledUsersGroupRemovalDetails - public init(swift: TeamLog.PaperContentArchiveDetails) { + public init(swift: TeamLog.PaperEnabledUsersGroupRemovalDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible PaperContentArchiveType struct +/// Objective-C compatible PaperEnabledUsersGroupRemovalType struct @objc -public class DBXTeamLogPaperContentArchiveType: NSObject { +public class DBXTeamLogPaperEnabledUsersGroupRemovalType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.PaperContentArchiveType(description_: description_) + self.swift = TeamLog.PaperEnabledUsersGroupRemovalType(description_: description_) } - let swift: TeamLog.PaperContentArchiveType + let swift: TeamLog.PaperEnabledUsersGroupRemovalType - public init(swift: TeamLog.PaperContentArchiveType) { + public init(swift: TeamLog.PaperEnabledUsersGroupRemovalType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Created Paper doc/folder. +/// Changed Paper external sharing setting to anyone. @objc -public class DBXTeamLogPaperContentCreateDetails: NSObject { +public class DBXTeamLogPaperExternalViewAllowDetails: NSObject { /// Event unique identifier. @objc public var eventUuid: String { swift.eventUuid } @objc public init(eventUuid: String) { - self.swift = TeamLog.PaperContentCreateDetails(eventUuid: eventUuid) + self.swift = TeamLog.PaperExternalViewAllowDetails(eventUuid: eventUuid) } - let swift: TeamLog.PaperContentCreateDetails + let swift: TeamLog.PaperExternalViewAllowDetails - public init(swift: TeamLog.PaperContentCreateDetails) { + public init(swift: TeamLog.PaperExternalViewAllowDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible PaperContentCreateType struct +/// Objective-C compatible PaperExternalViewAllowType struct @objc -public class DBXTeamLogPaperContentCreateType: NSObject { +public class DBXTeamLogPaperExternalViewAllowType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.PaperContentCreateType(description_: description_) + self.swift = TeamLog.PaperExternalViewAllowType(description_: description_) } - let swift: TeamLog.PaperContentCreateType + let swift: TeamLog.PaperExternalViewAllowType - public init(swift: TeamLog.PaperContentCreateType) { + public init(swift: TeamLog.PaperExternalViewAllowType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Permanently deleted Paper doc/folder. +/// Changed Paper external sharing setting to default team. @objc -public class DBXTeamLogPaperContentPermanentlyDeleteDetails: NSObject { +public class DBXTeamLogPaperExternalViewDefaultTeamDetails: NSObject { /// Event unique identifier. @objc public var eventUuid: String { swift.eventUuid } @objc public init(eventUuid: String) { - self.swift = TeamLog.PaperContentPermanentlyDeleteDetails(eventUuid: eventUuid) + self.swift = TeamLog.PaperExternalViewDefaultTeamDetails(eventUuid: eventUuid) } - let swift: TeamLog.PaperContentPermanentlyDeleteDetails + let swift: TeamLog.PaperExternalViewDefaultTeamDetails - public init(swift: TeamLog.PaperContentPermanentlyDeleteDetails) { + public init(swift: TeamLog.PaperExternalViewDefaultTeamDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible PaperContentPermanentlyDeleteType struct +/// Objective-C compatible PaperExternalViewDefaultTeamType struct @objc -public class DBXTeamLogPaperContentPermanentlyDeleteType: NSObject { +public class DBXTeamLogPaperExternalViewDefaultTeamType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.PaperContentPermanentlyDeleteType(description_: description_) + self.swift = TeamLog.PaperExternalViewDefaultTeamType(description_: description_) } - let swift: TeamLog.PaperContentPermanentlyDeleteType + let swift: TeamLog.PaperExternalViewDefaultTeamType - public init(swift: TeamLog.PaperContentPermanentlyDeleteType) { + public init(swift: TeamLog.PaperExternalViewDefaultTeamType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Removed Paper doc/folder from folder. +/// Changed Paper external sharing setting to team-only. @objc -public class DBXTeamLogPaperContentRemoveFromFolderDetails: NSObject { +public class DBXTeamLogPaperExternalViewForbidDetails: NSObject { /// Event unique identifier. @objc public var eventUuid: String { swift.eventUuid } - /// Target asset position in the Assets list. - @objc - public var targetAssetIndex: NSNumber? { swift.targetAssetIndex as NSNumber? } - /// Parent asset position in the Assets list. - @objc - public var parentAssetIndex: NSNumber? { swift.parentAssetIndex as NSNumber? } @objc - public init(eventUuid: String, targetAssetIndex: NSNumber?, parentAssetIndex: NSNumber?) { - self.swift = TeamLog.PaperContentRemoveFromFolderDetails( - eventUuid: eventUuid, - targetAssetIndex: targetAssetIndex?.uint64Value, - parentAssetIndex: parentAssetIndex?.uint64Value - ) + public init(eventUuid: String) { + self.swift = TeamLog.PaperExternalViewForbidDetails(eventUuid: eventUuid) } - let swift: TeamLog.PaperContentRemoveFromFolderDetails + let swift: TeamLog.PaperExternalViewForbidDetails - public init(swift: TeamLog.PaperContentRemoveFromFolderDetails) { + public init(swift: TeamLog.PaperExternalViewForbidDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible PaperContentRemoveFromFolderType struct +/// Objective-C compatible PaperExternalViewForbidType struct @objc -public class DBXTeamLogPaperContentRemoveFromFolderType: NSObject { +public class DBXTeamLogPaperExternalViewForbidType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.PaperContentRemoveFromFolderType(description_: description_) + self.swift = TeamLog.PaperExternalViewForbidType(description_: description_) } - let swift: TeamLog.PaperContentRemoveFromFolderType + let swift: TeamLog.PaperExternalViewForbidType - public init(swift: TeamLog.PaperContentRemoveFromFolderType) { + public init(swift: TeamLog.PaperExternalViewForbidType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Removed users and/or groups from Paper doc/folder. +/// Followed/unfollowed Paper folder. @objc -public class DBXTeamLogPaperContentRemoveMemberDetails: NSObject { +public class DBXTeamLogPaperFolderChangeSubscriptionDetails: NSObject { /// Event unique identifier. @objc public var eventUuid: String { swift.eventUuid } + /// New folder subscription level. + @objc + public var newSubscriptionLevel: String { swift.newSubscriptionLevel } + /// Previous folder subscription level. Might be missing due to historical data gap. + @objc + public var previousSubscriptionLevel: String? { swift.previousSubscriptionLevel } @objc - public init(eventUuid: String) { - self.swift = TeamLog.PaperContentRemoveMemberDetails(eventUuid: eventUuid) + public init(eventUuid: String, newSubscriptionLevel: String, previousSubscriptionLevel: String?) { + self.swift = TeamLog.PaperFolderChangeSubscriptionDetails(eventUuid: eventUuid, newSubscriptionLevel: newSubscriptionLevel, previousSubscriptionLevel: previousSubscriptionLevel) } - let swift: TeamLog.PaperContentRemoveMemberDetails + let swift: TeamLog.PaperFolderChangeSubscriptionDetails - public init(swift: TeamLog.PaperContentRemoveMemberDetails) { + public init(swift: TeamLog.PaperFolderChangeSubscriptionDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible PaperContentRemoveMemberType struct +/// Objective-C compatible PaperFolderChangeSubscriptionType struct @objc -public class DBXTeamLogPaperContentRemoveMemberType: NSObject { +public class DBXTeamLogPaperFolderChangeSubscriptionType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.PaperContentRemoveMemberType(description_: description_) + self.swift = TeamLog.PaperFolderChangeSubscriptionType(description_: description_) } - let swift: TeamLog.PaperContentRemoveMemberType + let swift: TeamLog.PaperFolderChangeSubscriptionType - public init(swift: TeamLog.PaperContentRemoveMemberType) { + public init(swift: TeamLog.PaperFolderChangeSubscriptionType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Renamed Paper doc/folder. +/// Archived Paper folder. @objc -public class DBXTeamLogPaperContentRenameDetails: NSObject { +public class DBXTeamLogPaperFolderDeletedDetails: NSObject { /// Event unique identifier. @objc public var eventUuid: String { swift.eventUuid } @objc public init(eventUuid: String) { - self.swift = TeamLog.PaperContentRenameDetails(eventUuid: eventUuid) + self.swift = TeamLog.PaperFolderDeletedDetails(eventUuid: eventUuid) } - let swift: TeamLog.PaperContentRenameDetails + let swift: TeamLog.PaperFolderDeletedDetails - public init(swift: TeamLog.PaperContentRenameDetails) { + public init(swift: TeamLog.PaperFolderDeletedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible PaperContentRenameType struct +/// Objective-C compatible PaperFolderDeletedType struct @objc -public class DBXTeamLogPaperContentRenameType: NSObject { +public class DBXTeamLogPaperFolderDeletedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.PaperContentRenameType(description_: description_) + self.swift = TeamLog.PaperFolderDeletedType(description_: description_) } - let swift: TeamLog.PaperContentRenameType + let swift: TeamLog.PaperFolderDeletedType - public init(swift: TeamLog.PaperContentRenameType) { + public init(swift: TeamLog.PaperFolderDeletedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Restored archived Paper doc/folder. +/// Followed Paper folder. @objc -public class DBXTeamLogPaperContentRestoreDetails: NSObject { +public class DBXTeamLogPaperFolderFollowedDetails: NSObject { /// Event unique identifier. @objc public var eventUuid: String { swift.eventUuid } @objc public init(eventUuid: String) { - self.swift = TeamLog.PaperContentRestoreDetails(eventUuid: eventUuid) + self.swift = TeamLog.PaperFolderFollowedDetails(eventUuid: eventUuid) } - let swift: TeamLog.PaperContentRestoreDetails + let swift: TeamLog.PaperFolderFollowedDetails - public init(swift: TeamLog.PaperContentRestoreDetails) { + public init(swift: TeamLog.PaperFolderFollowedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible PaperContentRestoreType struct +/// Objective-C compatible PaperFolderFollowedType struct @objc -public class DBXTeamLogPaperContentRestoreType: NSObject { +public class DBXTeamLogPaperFolderFollowedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.PaperContentRestoreType(description_: description_) + self.swift = TeamLog.PaperFolderFollowedType(description_: description_) } - let swift: TeamLog.PaperContentRestoreType + let swift: TeamLog.PaperFolderFollowedType - public init(swift: TeamLog.PaperContentRestoreType) { + public init(swift: TeamLog.PaperFolderFollowedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Policy to set default access for newly created Paper folders. +/// Paper folder's logged information. @objc -public class DBXTeamLogPaperDefaultFolderPolicy: NSObject { - let swift: TeamLog.PaperDefaultFolderPolicy - - public init(swift: TeamLog.PaperDefaultFolderPolicy) { - self.swift = swift - } - - public static func factory(swift: TeamLog.PaperDefaultFolderPolicy) -> DBXTeamLogPaperDefaultFolderPolicy { - switch swift { - case .everyoneInTeam: - return DBXTeamLogPaperDefaultFolderPolicyEveryoneInTeam() - case .inviteOnly: - return DBXTeamLogPaperDefaultFolderPolicyInviteOnly() - case .other: - return DBXTeamLogPaperDefaultFolderPolicyOther() - } - } - +public class DBXTeamLogPaperFolderLogInfo: NSObject { + /// Papers folder Id. @objc - public override var description: String { swift.description } - + public var folderId: String { swift.folderId } + /// Paper folder name. @objc - public var asEveryoneInTeam: DBXTeamLogPaperDefaultFolderPolicyEveryoneInTeam? { - self as? DBXTeamLogPaperDefaultFolderPolicyEveryoneInTeam - } + public var folderName: String { swift.folderName } @objc - public var asInviteOnly: DBXTeamLogPaperDefaultFolderPolicyInviteOnly? { - self as? DBXTeamLogPaperDefaultFolderPolicyInviteOnly + public init(folderId: String, folderName: String) { + self.swift = TeamLog.PaperFolderLogInfo(folderId: folderId, folderName: folderName) } - @objc - public var asOther: DBXTeamLogPaperDefaultFolderPolicyOther? { - self as? DBXTeamLogPaperDefaultFolderPolicyOther - } -} + let swift: TeamLog.PaperFolderLogInfo -/// An unspecified error. -@objc -public class DBXTeamLogPaperDefaultFolderPolicyEveryoneInTeam: DBXTeamLogPaperDefaultFolderPolicy { - @objc - public init() { - let swift = TeamLog.PaperDefaultFolderPolicy.everyoneInTeam - super.init(swift: swift) + public init(swift: TeamLog.PaperFolderLogInfo) { + self.swift = swift } -} -/// An unspecified error. -@objc -public class DBXTeamLogPaperDefaultFolderPolicyInviteOnly: DBXTeamLogPaperDefaultFolderPolicy { - @objc - public init() { - let swift = TeamLog.PaperDefaultFolderPolicy.inviteOnly - super.init(swift: swift) - } -} -/// An unspecified error. -@objc -public class DBXTeamLogPaperDefaultFolderPolicyOther: DBXTeamLogPaperDefaultFolderPolicy { @objc - public init() { - let swift = TeamLog.PaperDefaultFolderPolicy.other - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// Changed Paper Default Folder Policy setting for team. +/// Shared Paper folder with users and/or groups. @objc -public class DBXTeamLogPaperDefaultFolderPolicyChangedDetails: NSObject { - /// New Paper Default Folder Policy. - @objc - public var newValue: DBXTeamLogPaperDefaultFolderPolicy { DBXTeamLogPaperDefaultFolderPolicy(swift: swift.newValue) } - /// Previous Paper Default Folder Policy. +public class DBXTeamLogPaperFolderTeamInviteDetails: NSObject { + /// Event unique identifier. @objc - public var previousValue: DBXTeamLogPaperDefaultFolderPolicy { DBXTeamLogPaperDefaultFolderPolicy(swift: swift.previousValue) } + public var eventUuid: String { swift.eventUuid } @objc - public init(newValue: DBXTeamLogPaperDefaultFolderPolicy, previousValue: DBXTeamLogPaperDefaultFolderPolicy) { - self.swift = TeamLog.PaperDefaultFolderPolicyChangedDetails(newValue: newValue.swift, previousValue: previousValue.swift) + public init(eventUuid: String) { + self.swift = TeamLog.PaperFolderTeamInviteDetails(eventUuid: eventUuid) } - let swift: TeamLog.PaperDefaultFolderPolicyChangedDetails + let swift: TeamLog.PaperFolderTeamInviteDetails - public init(swift: TeamLog.PaperDefaultFolderPolicyChangedDetails) { + public init(swift: TeamLog.PaperFolderTeamInviteDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible PaperDefaultFolderPolicyChangedType struct +/// Objective-C compatible PaperFolderTeamInviteType struct @objc -public class DBXTeamLogPaperDefaultFolderPolicyChangedType: NSObject { +public class DBXTeamLogPaperFolderTeamInviteType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.PaperDefaultFolderPolicyChangedType(description_: description_) + self.swift = TeamLog.PaperFolderTeamInviteType(description_: description_) } - let swift: TeamLog.PaperDefaultFolderPolicyChangedType + let swift: TeamLog.PaperFolderTeamInviteType - public init(swift: TeamLog.PaperDefaultFolderPolicyChangedType) { + public init(swift: TeamLog.PaperFolderTeamInviteType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Policy for controlling if team members can use Paper Desktop +/// Policy for controlling if team members can share Paper documents externally. @objc -public class DBXTeamLogPaperDesktopPolicy: NSObject { - let swift: TeamLog.PaperDesktopPolicy +public class DBXTeamLogPaperMemberPolicy: NSObject { + let swift: TeamLog.PaperMemberPolicy - public init(swift: TeamLog.PaperDesktopPolicy) { + public init(swift: TeamLog.PaperMemberPolicy) { self.swift = swift } - public static func factory(swift: TeamLog.PaperDesktopPolicy) -> DBXTeamLogPaperDesktopPolicy { + public static func factory(swift: TeamLog.PaperMemberPolicy) -> DBXTeamLogPaperMemberPolicy { switch swift { - case .disabled: - return DBXTeamLogPaperDesktopPolicyDisabled() - case .enabled: - return DBXTeamLogPaperDesktopPolicyEnabled() + case .anyoneWithLink: + return DBXTeamLogPaperMemberPolicyAnyoneWithLink() + case .onlyTeam: + return DBXTeamLogPaperMemberPolicyOnlyTeam() + case .teamAndExplicitlyShared: + return DBXTeamLogPaperMemberPolicyTeamAndExplicitlyShared() case .other: - return DBXTeamLogPaperDesktopPolicyOther() + return DBXTeamLogPaperMemberPolicyOther() } } @@ -50608,1629 +65120,1895 @@ public class DBXTeamLogPaperDesktopPolicy: NSObject { public override var description: String { swift.description } @objc - public var asDisabled: DBXTeamLogPaperDesktopPolicyDisabled? { - self as? DBXTeamLogPaperDesktopPolicyDisabled + public var asAnyoneWithLink: DBXTeamLogPaperMemberPolicyAnyoneWithLink? { + return self as? DBXTeamLogPaperMemberPolicyAnyoneWithLink } @objc - public var asEnabled: DBXTeamLogPaperDesktopPolicyEnabled? { - self as? DBXTeamLogPaperDesktopPolicyEnabled + public var asOnlyTeam: DBXTeamLogPaperMemberPolicyOnlyTeam? { + return self as? DBXTeamLogPaperMemberPolicyOnlyTeam } @objc - public var asOther: DBXTeamLogPaperDesktopPolicyOther? { - self as? DBXTeamLogPaperDesktopPolicyOther + public var asTeamAndExplicitlyShared: DBXTeamLogPaperMemberPolicyTeamAndExplicitlyShared? { + return self as? DBXTeamLogPaperMemberPolicyTeamAndExplicitlyShared + } + + @objc + public var asOther: DBXTeamLogPaperMemberPolicyOther? { + return self as? DBXTeamLogPaperMemberPolicyOther } } /// An unspecified error. @objc -public class DBXTeamLogPaperDesktopPolicyDisabled: DBXTeamLogPaperDesktopPolicy { +public class DBXTeamLogPaperMemberPolicyAnyoneWithLink: DBXTeamLogPaperMemberPolicy { @objc public init() { - let swift = TeamLog.PaperDesktopPolicy.disabled + let swift = TeamLog.PaperMemberPolicy.anyoneWithLink super.init(swift: swift) } } /// An unspecified error. @objc -public class DBXTeamLogPaperDesktopPolicyEnabled: DBXTeamLogPaperDesktopPolicy { +public class DBXTeamLogPaperMemberPolicyOnlyTeam: DBXTeamLogPaperMemberPolicy { @objc public init() { - let swift = TeamLog.PaperDesktopPolicy.enabled + let swift = TeamLog.PaperMemberPolicy.onlyTeam super.init(swift: swift) } } /// An unspecified error. @objc -public class DBXTeamLogPaperDesktopPolicyOther: DBXTeamLogPaperDesktopPolicy { +public class DBXTeamLogPaperMemberPolicyTeamAndExplicitlyShared: DBXTeamLogPaperMemberPolicy { @objc public init() { - let swift = TeamLog.PaperDesktopPolicy.other + let swift = TeamLog.PaperMemberPolicy.teamAndExplicitlyShared super.init(swift: swift) } } -/// Enabled/disabled Paper Desktop for team. +/// An unspecified error. @objc -public class DBXTeamLogPaperDesktopPolicyChangedDetails: NSObject { - /// New Paper Desktop policy. +public class DBXTeamLogPaperMemberPolicyOther: DBXTeamLogPaperMemberPolicy { @objc - public var newValue: DBXTeamLogPaperDesktopPolicy { DBXTeamLogPaperDesktopPolicy(swift: swift.newValue) } - /// Previous Paper Desktop policy. + public init() { + let swift = TeamLog.PaperMemberPolicy.other + super.init(swift: swift) + } +} + +/// Changed permissions for published doc. +@objc +public class DBXTeamLogPaperPublishedLinkChangePermissionDetails: NSObject { + /// Event unique identifier. @objc - public var previousValue: DBXTeamLogPaperDesktopPolicy { DBXTeamLogPaperDesktopPolicy(swift: swift.previousValue) } + public var eventUuid: String { swift.eventUuid } + /// New permission level. + @objc + public var newPermissionLevel: String { swift.newPermissionLevel } + /// Previous permission level. + @objc + public var previousPermissionLevel: String { swift.previousPermissionLevel } @objc - public init(newValue: DBXTeamLogPaperDesktopPolicy, previousValue: DBXTeamLogPaperDesktopPolicy) { - self.swift = TeamLog.PaperDesktopPolicyChangedDetails(newValue: newValue.swift, previousValue: previousValue.swift) + public init(eventUuid: String, newPermissionLevel: String, previousPermissionLevel: String) { + self.swift = TeamLog.PaperPublishedLinkChangePermissionDetails(eventUuid: eventUuid, newPermissionLevel: newPermissionLevel, previousPermissionLevel: previousPermissionLevel) } - let swift: TeamLog.PaperDesktopPolicyChangedDetails + let swift: TeamLog.PaperPublishedLinkChangePermissionDetails - public init(swift: TeamLog.PaperDesktopPolicyChangedDetails) { + public init(swift: TeamLog.PaperPublishedLinkChangePermissionDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible PaperDesktopPolicyChangedType struct +/// Objective-C compatible PaperPublishedLinkChangePermissionType struct @objc -public class DBXTeamLogPaperDesktopPolicyChangedType: NSObject { +public class DBXTeamLogPaperPublishedLinkChangePermissionType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.PaperDesktopPolicyChangedType(description_: description_) + self.swift = TeamLog.PaperPublishedLinkChangePermissionType(description_: description_) } - let swift: TeamLog.PaperDesktopPolicyChangedType + let swift: TeamLog.PaperPublishedLinkChangePermissionType - public init(swift: TeamLog.PaperDesktopPolicyChangedType) { + public init(swift: TeamLog.PaperPublishedLinkChangePermissionType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Added Paper doc comment. +/// Published doc. @objc -public class DBXTeamLogPaperDocAddCommentDetails: NSObject { +public class DBXTeamLogPaperPublishedLinkCreateDetails: NSObject { /// Event unique identifier. @objc public var eventUuid: String { swift.eventUuid } - /// Comment text. - @objc - public var commentText: String? { swift.commentText } @objc - public init(eventUuid: String, commentText: String?) { - self.swift = TeamLog.PaperDocAddCommentDetails(eventUuid: eventUuid, commentText: commentText) + public init(eventUuid: String) { + self.swift = TeamLog.PaperPublishedLinkCreateDetails(eventUuid: eventUuid) } - let swift: TeamLog.PaperDocAddCommentDetails + let swift: TeamLog.PaperPublishedLinkCreateDetails - public init(swift: TeamLog.PaperDocAddCommentDetails) { + public init(swift: TeamLog.PaperPublishedLinkCreateDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible PaperDocAddCommentType struct +/// Objective-C compatible PaperPublishedLinkCreateType struct @objc -public class DBXTeamLogPaperDocAddCommentType: NSObject { +public class DBXTeamLogPaperPublishedLinkCreateType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.PaperDocAddCommentType(description_: description_) + self.swift = TeamLog.PaperPublishedLinkCreateType(description_: description_) } - let swift: TeamLog.PaperDocAddCommentType + let swift: TeamLog.PaperPublishedLinkCreateType - public init(swift: TeamLog.PaperDocAddCommentType) { + public init(swift: TeamLog.PaperPublishedLinkCreateType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Changed member permissions for Paper doc. +/// Unpublished doc. @objc -public class DBXTeamLogPaperDocChangeMemberRoleDetails: NSObject { +public class DBXTeamLogPaperPublishedLinkDisabledDetails: NSObject { /// Event unique identifier. @objc public var eventUuid: String { swift.eventUuid } - /// Paper doc access type. - @objc - public var accessType: DBXTeamLogPaperAccessType { DBXTeamLogPaperAccessType(swift: swift.accessType) } @objc - public init(eventUuid: String, accessType: DBXTeamLogPaperAccessType) { - self.swift = TeamLog.PaperDocChangeMemberRoleDetails(eventUuid: eventUuid, accessType: accessType.swift) + public init(eventUuid: String) { + self.swift = TeamLog.PaperPublishedLinkDisabledDetails(eventUuid: eventUuid) } - let swift: TeamLog.PaperDocChangeMemberRoleDetails + let swift: TeamLog.PaperPublishedLinkDisabledDetails - public init(swift: TeamLog.PaperDocChangeMemberRoleDetails) { + public init(swift: TeamLog.PaperPublishedLinkDisabledDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible PaperDocChangeMemberRoleType struct +/// Objective-C compatible PaperPublishedLinkDisabledType struct @objc -public class DBXTeamLogPaperDocChangeMemberRoleType: NSObject { +public class DBXTeamLogPaperPublishedLinkDisabledType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.PaperDocChangeMemberRoleType(description_: description_) + self.swift = TeamLog.PaperPublishedLinkDisabledType(description_: description_) } - let swift: TeamLog.PaperDocChangeMemberRoleType + let swift: TeamLog.PaperPublishedLinkDisabledType - public init(swift: TeamLog.PaperDocChangeMemberRoleType) { + public init(swift: TeamLog.PaperPublishedLinkDisabledType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Changed sharing setting for Paper doc. +/// Viewed published doc. @objc -public class DBXTeamLogPaperDocChangeSharingPolicyDetails: NSObject { +public class DBXTeamLogPaperPublishedLinkViewDetails: NSObject { /// Event unique identifier. @objc public var eventUuid: String { swift.eventUuid } - /// Sharing policy with external users. - @objc - public var publicSharingPolicy: String? { swift.publicSharingPolicy } - /// Sharing policy with team. - @objc - public var teamSharingPolicy: String? { swift.teamSharingPolicy } @objc - public init(eventUuid: String, publicSharingPolicy: String?, teamSharingPolicy: String?) { - self.swift = TeamLog.PaperDocChangeSharingPolicyDetails( - eventUuid: eventUuid, - publicSharingPolicy: publicSharingPolicy, - teamSharingPolicy: teamSharingPolicy - ) + public init(eventUuid: String) { + self.swift = TeamLog.PaperPublishedLinkViewDetails(eventUuid: eventUuid) } - let swift: TeamLog.PaperDocChangeSharingPolicyDetails + let swift: TeamLog.PaperPublishedLinkViewDetails - public init(swift: TeamLog.PaperDocChangeSharingPolicyDetails) { + public init(swift: TeamLog.PaperPublishedLinkViewDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible PaperDocChangeSharingPolicyType struct +/// Objective-C compatible PaperPublishedLinkViewType struct @objc -public class DBXTeamLogPaperDocChangeSharingPolicyType: NSObject { +public class DBXTeamLogPaperPublishedLinkViewType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.PaperDocChangeSharingPolicyType(description_: description_) + self.swift = TeamLog.PaperPublishedLinkViewType(description_: description_) } - let swift: TeamLog.PaperDocChangeSharingPolicyType + let swift: TeamLog.PaperPublishedLinkViewType - public init(swift: TeamLog.PaperDocChangeSharingPolicyType) { + public init(swift: TeamLog.PaperPublishedLinkViewType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Followed/unfollowed Paper doc. +/// A user or group @objc -public class DBXTeamLogPaperDocChangeSubscriptionDetails: NSObject { - /// Event unique identifier. - @objc - public var eventUuid: String { swift.eventUuid } - /// New doc subscription level. - @objc - public var newSubscriptionLevel: String { swift.newSubscriptionLevel } - /// Previous doc subscription level. Might be missing due to historical data gap. - @objc - public var previousSubscriptionLevel: String? { swift.previousSubscriptionLevel } +public class DBXTeamLogParticipantLogInfo: NSObject { + let swift: TeamLog.ParticipantLogInfo - @objc - public init(eventUuid: String, newSubscriptionLevel: String, previousSubscriptionLevel: String?) { - self.swift = TeamLog.PaperDocChangeSubscriptionDetails( - eventUuid: eventUuid, - newSubscriptionLevel: newSubscriptionLevel, - previousSubscriptionLevel: previousSubscriptionLevel - ) + public init(swift: TeamLog.ParticipantLogInfo) { + self.swift = swift } - let swift: TeamLog.PaperDocChangeSubscriptionDetails - - public init(swift: TeamLog.PaperDocChangeSubscriptionDetails) { - self.swift = swift + public static func factory(swift: TeamLog.ParticipantLogInfo) -> DBXTeamLogParticipantLogInfo { + switch swift { + case .group(let swiftArg): + let arg = DBXTeamLogGroupLogInfo(swift: swiftArg) + return DBXTeamLogParticipantLogInfoGroup(arg) + case .user(let swiftArg): + let arg = DBXTeamLogUserLogInfo(swift: swiftArg) + return DBXTeamLogParticipantLogInfoUser(arg) + case .other: + return DBXTeamLogParticipantLogInfoOther() + } } @objc public override var description: String { swift.description } -} -/// Objective-C compatible PaperDocChangeSubscriptionType struct -@objc -public class DBXTeamLogPaperDocChangeSubscriptionType: NSObject { - /// (no description) @objc - public var description_: String { swift.description_ } + public var asGroup: DBXTeamLogParticipantLogInfoGroup? { + return self as? DBXTeamLogParticipantLogInfoGroup + } @objc - public init(description_: String) { - self.swift = TeamLog.PaperDocChangeSubscriptionType(description_: description_) + public var asUser: DBXTeamLogParticipantLogInfoUser? { + return self as? DBXTeamLogParticipantLogInfoUser } - let swift: TeamLog.PaperDocChangeSubscriptionType - - public init(swift: TeamLog.PaperDocChangeSubscriptionType) { - self.swift = swift + @objc + public var asOther: DBXTeamLogParticipantLogInfoOther? { + return self as? DBXTeamLogParticipantLogInfoOther } +} + +/// Group details. +@objc +public class DBXTeamLogParticipantLogInfoGroup: DBXTeamLogParticipantLogInfo { + @objc + public var group: DBXTeamLogGroupLogInfo @objc - public override var description: String { swift.description } + public init(_ arg: DBXTeamLogGroupLogInfo) { + group = arg + let swift = TeamLog.ParticipantLogInfo.group(arg.swift) + super.init(swift: swift) + } } -/// Deleted Paper doc comment. +/// A user with a Dropbox account. @objc -public class DBXTeamLogPaperDocDeleteCommentDetails: NSObject { - /// Event unique identifier. +public class DBXTeamLogParticipantLogInfoUser: DBXTeamLogParticipantLogInfo { @objc - public var eventUuid: String { swift.eventUuid } - /// Comment text. + public var user: DBXTeamLogUserLogInfo + @objc - public var commentText: String? { swift.commentText } + public init(_ arg: DBXTeamLogUserLogInfo) { + user = arg + let swift = TeamLog.ParticipantLogInfo.user(arg.swift) + super.init(swift: swift) + } +} +/// An unspecified error. +@objc +public class DBXTeamLogParticipantLogInfoOther: DBXTeamLogParticipantLogInfo { @objc - public init(eventUuid: String, commentText: String?) { - self.swift = TeamLog.PaperDocDeleteCommentDetails(eventUuid: eventUuid, commentText: commentText) + public init() { + let swift = TeamLog.ParticipantLogInfo.other + super.init(swift: swift) } +} - let swift: TeamLog.PaperDocDeleteCommentDetails +/// Objective-C compatible PassPolicy union +@objc +public class DBXTeamLogPassPolicy: NSObject { + let swift: TeamLog.PassPolicy - public init(swift: TeamLog.PaperDocDeleteCommentDetails) { + public init(swift: TeamLog.PassPolicy) { self.swift = swift } + public static func factory(swift: TeamLog.PassPolicy) -> DBXTeamLogPassPolicy { + switch swift { + case .allow: + return DBXTeamLogPassPolicyAllow() + case .disabled: + return DBXTeamLogPassPolicyDisabled() + case .enabled: + return DBXTeamLogPassPolicyEnabled() + case .other: + return DBXTeamLogPassPolicyOther() + } + } + @objc public override var description: String { swift.description } -} -/// Objective-C compatible PaperDocDeleteCommentType struct -@objc -public class DBXTeamLogPaperDocDeleteCommentType: NSObject { - /// (no description) @objc - public var description_: String { swift.description_ } + public var asAllow: DBXTeamLogPassPolicyAllow? { + return self as? DBXTeamLogPassPolicyAllow + } @objc - public init(description_: String) { - self.swift = TeamLog.PaperDocDeleteCommentType(description_: description_) + public var asDisabled: DBXTeamLogPassPolicyDisabled? { + return self as? DBXTeamLogPassPolicyDisabled } - let swift: TeamLog.PaperDocDeleteCommentType + @objc + public var asEnabled: DBXTeamLogPassPolicyEnabled? { + return self as? DBXTeamLogPassPolicyEnabled + } - public init(swift: TeamLog.PaperDocDeleteCommentType) { - self.swift = swift + @objc + public var asOther: DBXTeamLogPassPolicyOther? { + return self as? DBXTeamLogPassPolicyOther } +} +/// An unspecified error. +@objc +public class DBXTeamLogPassPolicyAllow: DBXTeamLogPassPolicy { @objc - public override var description: String { swift.description } + public init() { + let swift = TeamLog.PassPolicy.allow + super.init(swift: swift) + } } -/// Archived Paper doc. +/// An unspecified error. @objc -public class DBXTeamLogPaperDocDeletedDetails: NSObject { - /// Event unique identifier. +public class DBXTeamLogPassPolicyDisabled: DBXTeamLogPassPolicy { @objc - public var eventUuid: String { swift.eventUuid } + public init() { + let swift = TeamLog.PassPolicy.disabled + super.init(swift: swift) + } +} +/// An unspecified error. +@objc +public class DBXTeamLogPassPolicyEnabled: DBXTeamLogPassPolicy { @objc - public init(eventUuid: String) { - self.swift = TeamLog.PaperDocDeletedDetails(eventUuid: eventUuid) + public init() { + let swift = TeamLog.PassPolicy.enabled + super.init(swift: swift) } +} - let swift: TeamLog.PaperDocDeletedDetails +/// An unspecified error. +@objc +public class DBXTeamLogPassPolicyOther: DBXTeamLogPassPolicy { + @objc + public init() { + let swift = TeamLog.PassPolicy.other + super.init(swift: swift) + } +} - public init(swift: TeamLog.PaperDocDeletedDetails) { +/// Added passkey for login. +@objc +public class DBXTeamLogPasskeyAddDetails: NSObject { + + let swift: TeamLog.PasskeyAddDetails + + public init(swift: TeamLog.PasskeyAddDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible PaperDocDeletedType struct +/// Objective-C compatible PasskeyAddType struct @objc -public class DBXTeamLogPaperDocDeletedType: NSObject { +public class DBXTeamLogPasskeyAddType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.PaperDocDeletedType(description_: description_) + self.swift = TeamLog.PasskeyAddType(description_: description_) } - let swift: TeamLog.PaperDocDeletedType + let swift: TeamLog.PasskeyAddType - public init(swift: TeamLog.PaperDocDeletedType) { + public init(swift: TeamLog.PasskeyAddType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Downloaded Paper doc in specific format. +/// Passkey login policy @objc -public class DBXTeamLogPaperDocDownloadDetails: NSObject { - /// Event unique identifier. - @objc - public var eventUuid: String { swift.eventUuid } - /// Export file format. +public class DBXTeamLogPasskeyLoginPolicy: NSObject { + let swift: TeamLog.PasskeyLoginPolicy + + public init(swift: TeamLog.PasskeyLoginPolicy) { + self.swift = swift + } + + public static func factory(swift: TeamLog.PasskeyLoginPolicy) -> DBXTeamLogPasskeyLoginPolicy { + switch swift { + case .default_: + return DBXTeamLogPasskeyLoginPolicyDefault_() + case .disabled: + return DBXTeamLogPasskeyLoginPolicyDisabled() + case .enabled: + return DBXTeamLogPasskeyLoginPolicyEnabled() + case .other: + return DBXTeamLogPasskeyLoginPolicyOther() + } + } + @objc - public var exportFileFormat: DBXTeamLogPaperDownloadFormat { DBXTeamLogPaperDownloadFormat(swift: swift.exportFileFormat) } + public override var description: String { swift.description } @objc - public init(eventUuid: String, exportFileFormat: DBXTeamLogPaperDownloadFormat) { - self.swift = TeamLog.PaperDocDownloadDetails(eventUuid: eventUuid, exportFileFormat: exportFileFormat.swift) + public var asDefault_: DBXTeamLogPasskeyLoginPolicyDefault_? { + return self as? DBXTeamLogPasskeyLoginPolicyDefault_ } - let swift: TeamLog.PaperDocDownloadDetails + @objc + public var asDisabled: DBXTeamLogPasskeyLoginPolicyDisabled? { + return self as? DBXTeamLogPasskeyLoginPolicyDisabled + } - public init(swift: TeamLog.PaperDocDownloadDetails) { - self.swift = swift + @objc + public var asEnabled: DBXTeamLogPasskeyLoginPolicyEnabled? { + return self as? DBXTeamLogPasskeyLoginPolicyEnabled } @objc - public override var description: String { swift.description } + public var asOther: DBXTeamLogPasskeyLoginPolicyOther? { + return self as? DBXTeamLogPasskeyLoginPolicyOther + } } -/// Objective-C compatible PaperDocDownloadType struct +/// An unspecified error. @objc -public class DBXTeamLogPaperDocDownloadType: NSObject { - /// (no description) +public class DBXTeamLogPasskeyLoginPolicyDefault_: DBXTeamLogPasskeyLoginPolicy { @objc - public var description_: String { swift.description_ } + public init() { + let swift = TeamLog.PasskeyLoginPolicy.default_ + super.init(swift: swift) + } +} +/// An unspecified error. +@objc +public class DBXTeamLogPasskeyLoginPolicyDisabled: DBXTeamLogPasskeyLoginPolicy { @objc - public init(description_: String) { - self.swift = TeamLog.PaperDocDownloadType(description_: description_) + public init() { + let swift = TeamLog.PasskeyLoginPolicy.disabled + super.init(swift: swift) } +} - let swift: TeamLog.PaperDocDownloadType - - public init(swift: TeamLog.PaperDocDownloadType) { - self.swift = swift +/// An unspecified error. +@objc +public class DBXTeamLogPasskeyLoginPolicyEnabled: DBXTeamLogPasskeyLoginPolicy { + @objc + public init() { + let swift = TeamLog.PasskeyLoginPolicy.enabled + super.init(swift: swift) } +} +/// An unspecified error. +@objc +public class DBXTeamLogPasskeyLoginPolicyOther: DBXTeamLogPasskeyLoginPolicy { @objc - public override var description: String { swift.description } + public init() { + let swift = TeamLog.PasskeyLoginPolicy.other + super.init(swift: swift) + } } -/// Edited Paper doc comment. +/// Changed passkey login policy for team. @objc -public class DBXTeamLogPaperDocEditCommentDetails: NSObject { - /// Event unique identifier. +public class DBXTeamLogPasskeyLoginPolicyChangedDetails: NSObject { + /// New passkey login policy. @objc - public var eventUuid: String { swift.eventUuid } - /// Comment text. + public var newValue: DBXTeamLogPasskeyLoginPolicy { DBXTeamLogPasskeyLoginPolicy(swift: swift.newValue) } + /// Previous passkey login policy. Might be missing due to historical data gap. @objc - public var commentText: String? { swift.commentText } + public var previousValue: DBXTeamLogPasskeyLoginPolicy? { guard let swift = swift.previousValue else { return nil }; return DBXTeamLogPasskeyLoginPolicy(swift: swift) } @objc - public init(eventUuid: String, commentText: String?) { - self.swift = TeamLog.PaperDocEditCommentDetails(eventUuid: eventUuid, commentText: commentText) + public init(newValue: DBXTeamLogPasskeyLoginPolicy, previousValue: DBXTeamLogPasskeyLoginPolicy?) { + self.swift = TeamLog.PasskeyLoginPolicyChangedDetails(newValue: newValue.swift, previousValue: previousValue?.swift) } - let swift: TeamLog.PaperDocEditCommentDetails + let swift: TeamLog.PasskeyLoginPolicyChangedDetails - public init(swift: TeamLog.PaperDocEditCommentDetails) { + public init(swift: TeamLog.PasskeyLoginPolicyChangedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible PaperDocEditCommentType struct +/// Objective-C compatible PasskeyLoginPolicyChangedType struct @objc -public class DBXTeamLogPaperDocEditCommentType: NSObject { +public class DBXTeamLogPasskeyLoginPolicyChangedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.PaperDocEditCommentType(description_: description_) + self.swift = TeamLog.PasskeyLoginPolicyChangedType(description_: description_) } - let swift: TeamLog.PaperDocEditCommentType + let swift: TeamLog.PasskeyLoginPolicyChangedType - public init(swift: TeamLog.PaperDocEditCommentType) { + public init(swift: TeamLog.PasskeyLoginPolicyChangedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Edited Paper doc. +/// Removed passkey for login. @objc -public class DBXTeamLogPaperDocEditDetails: NSObject { - /// Event unique identifier. - @objc - public var eventUuid: String { swift.eventUuid } - - @objc - public init(eventUuid: String) { - self.swift = TeamLog.PaperDocEditDetails(eventUuid: eventUuid) - } +public class DBXTeamLogPasskeyRemoveDetails: NSObject { - let swift: TeamLog.PaperDocEditDetails + let swift: TeamLog.PasskeyRemoveDetails - public init(swift: TeamLog.PaperDocEditDetails) { + public init(swift: TeamLog.PasskeyRemoveDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible PaperDocEditType struct +/// Objective-C compatible PasskeyRemoveType struct @objc -public class DBXTeamLogPaperDocEditType: NSObject { +public class DBXTeamLogPasskeyRemoveType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.PaperDocEditType(description_: description_) + self.swift = TeamLog.PasskeyRemoveType(description_: description_) } - let swift: TeamLog.PaperDocEditType + let swift: TeamLog.PasskeyRemoveType - public init(swift: TeamLog.PaperDocEditType) { + public init(swift: TeamLog.PasskeyRemoveType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Followed Paper doc. +/// Changed password. @objc -public class DBXTeamLogPaperDocFollowedDetails: NSObject { - /// Event unique identifier. - @objc - public var eventUuid: String { swift.eventUuid } - - @objc - public init(eventUuid: String) { - self.swift = TeamLog.PaperDocFollowedDetails(eventUuid: eventUuid) - } +public class DBXTeamLogPasswordChangeDetails: NSObject { - let swift: TeamLog.PaperDocFollowedDetails + let swift: TeamLog.PasswordChangeDetails - public init(swift: TeamLog.PaperDocFollowedDetails) { + public init(swift: TeamLog.PasswordChangeDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible PaperDocFollowedType struct +/// Objective-C compatible PasswordChangeType struct @objc -public class DBXTeamLogPaperDocFollowedType: NSObject { +public class DBXTeamLogPasswordChangeType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.PaperDocFollowedType(description_: description_) + self.swift = TeamLog.PasswordChangeType(description_: description_) } - let swift: TeamLog.PaperDocFollowedType + let swift: TeamLog.PasswordChangeType - public init(swift: TeamLog.PaperDocFollowedType) { + public init(swift: TeamLog.PasswordChangeType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Mentioned user in Paper doc. +/// Reset all team member passwords. @objc -public class DBXTeamLogPaperDocMentionDetails: NSObject { - /// Event unique identifier. - @objc - public var eventUuid: String { swift.eventUuid } - - @objc - public init(eventUuid: String) { - self.swift = TeamLog.PaperDocMentionDetails(eventUuid: eventUuid) - } +public class DBXTeamLogPasswordResetAllDetails: NSObject { - let swift: TeamLog.PaperDocMentionDetails + let swift: TeamLog.PasswordResetAllDetails - public init(swift: TeamLog.PaperDocMentionDetails) { + public init(swift: TeamLog.PasswordResetAllDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible PaperDocMentionType struct +/// Objective-C compatible PasswordResetAllType struct @objc -public class DBXTeamLogPaperDocMentionType: NSObject { +public class DBXTeamLogPasswordResetAllType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.PaperDocMentionType(description_: description_) + self.swift = TeamLog.PasswordResetAllType(description_: description_) } - let swift: TeamLog.PaperDocMentionType + let swift: TeamLog.PasswordResetAllType - public init(swift: TeamLog.PaperDocMentionType) { + public init(swift: TeamLog.PasswordResetAllType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Transferred ownership of Paper doc. +/// Reset password. @objc -public class DBXTeamLogPaperDocOwnershipChangedDetails: NSObject { - /// Event unique identifier. - @objc - public var eventUuid: String { swift.eventUuid } - /// Previous owner. - @objc - public var oldOwnerUserId: String? { swift.oldOwnerUserId } - /// New owner. - @objc - public var newOwnerUserId: String { swift.newOwnerUserId } - - @objc - public init(eventUuid: String, newOwnerUserId: String, oldOwnerUserId: String?) { - self.swift = TeamLog.PaperDocOwnershipChangedDetails(eventUuid: eventUuid, newOwnerUserId: newOwnerUserId, oldOwnerUserId: oldOwnerUserId) - } +public class DBXTeamLogPasswordResetDetails: NSObject { - let swift: TeamLog.PaperDocOwnershipChangedDetails + let swift: TeamLog.PasswordResetDetails - public init(swift: TeamLog.PaperDocOwnershipChangedDetails) { + public init(swift: TeamLog.PasswordResetDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible PaperDocOwnershipChangedType struct +/// Objective-C compatible PasswordResetType struct @objc -public class DBXTeamLogPaperDocOwnershipChangedType: NSObject { +public class DBXTeamLogPasswordResetType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.PaperDocOwnershipChangedType(description_: description_) + self.swift = TeamLog.PasswordResetType(description_: description_) } - let swift: TeamLog.PaperDocOwnershipChangedType + let swift: TeamLog.PasswordResetType - public init(swift: TeamLog.PaperDocOwnershipChangedType) { + public init(swift: TeamLog.PasswordResetType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Requested access to Paper doc. +/// Changed team password strength requirements. @objc -public class DBXTeamLogPaperDocRequestAccessDetails: NSObject { - /// Event unique identifier. +public class DBXTeamLogPasswordStrengthRequirementsChangePolicyDetails: NSObject { + /// Old password strength policy. @objc - public var eventUuid: String { swift.eventUuid } + public var previousValue: DBXTeamPoliciesPasswordStrengthPolicy { DBXTeamPoliciesPasswordStrengthPolicy(swift: swift.previousValue) } + /// New password strength policy. + @objc + public var newValue: DBXTeamPoliciesPasswordStrengthPolicy { DBXTeamPoliciesPasswordStrengthPolicy(swift: swift.newValue) } @objc - public init(eventUuid: String) { - self.swift = TeamLog.PaperDocRequestAccessDetails(eventUuid: eventUuid) + public init(previousValue: DBXTeamPoliciesPasswordStrengthPolicy, newValue: DBXTeamPoliciesPasswordStrengthPolicy) { + self.swift = TeamLog.PasswordStrengthRequirementsChangePolicyDetails(previousValue: previousValue.swift, newValue: newValue.swift) } - let swift: TeamLog.PaperDocRequestAccessDetails + let swift: TeamLog.PasswordStrengthRequirementsChangePolicyDetails - public init(swift: TeamLog.PaperDocRequestAccessDetails) { + public init(swift: TeamLog.PasswordStrengthRequirementsChangePolicyDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible PaperDocRequestAccessType struct +/// Objective-C compatible PasswordStrengthRequirementsChangePolicyType struct @objc -public class DBXTeamLogPaperDocRequestAccessType: NSObject { +public class DBXTeamLogPasswordStrengthRequirementsChangePolicyType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.PaperDocRequestAccessType(description_: description_) + self.swift = TeamLog.PasswordStrengthRequirementsChangePolicyType(description_: description_) + } + + let swift: TeamLog.PasswordStrengthRequirementsChangePolicyType + + public init(swift: TeamLog.PasswordStrengthRequirementsChangePolicyType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Path's details. +@objc +public class DBXTeamLogPathLogInfo: NSObject { + /// Fully qualified path relative to event's context. + @objc + public var contextual: String? { swift.contextual } + /// Path relative to the namespace containing the content. + @objc + public var namespaceRelative: DBXTeamLogNamespaceRelativePathLogInfo { DBXTeamLogNamespaceRelativePathLogInfo(swift: swift.namespaceRelative) } + + @objc + public init(namespaceRelative: DBXTeamLogNamespaceRelativePathLogInfo, contextual: String?) { + self.swift = TeamLog.PathLogInfo(namespaceRelative: namespaceRelative.swift, contextual: contextual) } - let swift: TeamLog.PaperDocRequestAccessType + let swift: TeamLog.PathLogInfo - public init(swift: TeamLog.PaperDocRequestAccessType) { + public init(swift: TeamLog.PathLogInfo) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Resolved Paper doc comment. +/// Added pending secondary email. @objc -public class DBXTeamLogPaperDocResolveCommentDetails: NSObject { - /// Event unique identifier. - @objc - public var eventUuid: String { swift.eventUuid } - /// Comment text. +public class DBXTeamLogPendingSecondaryEmailAddedDetails: NSObject { + /// New pending secondary email. @objc - public var commentText: String? { swift.commentText } + public var secondaryEmail: String { swift.secondaryEmail } @objc - public init(eventUuid: String, commentText: String?) { - self.swift = TeamLog.PaperDocResolveCommentDetails(eventUuid: eventUuid, commentText: commentText) + public init(secondaryEmail: String) { + self.swift = TeamLog.PendingSecondaryEmailAddedDetails(secondaryEmail: secondaryEmail) } - let swift: TeamLog.PaperDocResolveCommentDetails + let swift: TeamLog.PendingSecondaryEmailAddedDetails - public init(swift: TeamLog.PaperDocResolveCommentDetails) { + public init(swift: TeamLog.PendingSecondaryEmailAddedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible PaperDocResolveCommentType struct +/// Objective-C compatible PendingSecondaryEmailAddedType struct @objc -public class DBXTeamLogPaperDocResolveCommentType: NSObject { +public class DBXTeamLogPendingSecondaryEmailAddedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.PaperDocResolveCommentType(description_: description_) + self.swift = TeamLog.PendingSecondaryEmailAddedType(description_: description_) } - let swift: TeamLog.PaperDocResolveCommentType + let swift: TeamLog.PendingSecondaryEmailAddedType - public init(swift: TeamLog.PaperDocResolveCommentType) { + public init(swift: TeamLog.PendingSecondaryEmailAddedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Restored Paper doc to previous version. +/// Enabled/disabled ability of team members to permanently delete content. @objc -public class DBXTeamLogPaperDocRevertDetails: NSObject { - /// Event unique identifier. +public class DBXTeamLogPermanentDeleteChangePolicyDetails: NSObject { + /// New permanent delete content policy. @objc - public var eventUuid: String { swift.eventUuid } + public var newValue: DBXTeamLogContentPermanentDeletePolicy { DBXTeamLogContentPermanentDeletePolicy(swift: swift.newValue) } + /// Previous permanent delete content policy. Might be missing due to historical data gap. + @objc + public var previousValue: DBXTeamLogContentPermanentDeletePolicy? { guard let swift = swift.previousValue else { return nil }; return DBXTeamLogContentPermanentDeletePolicy(swift: swift) } @objc - public init(eventUuid: String) { - self.swift = TeamLog.PaperDocRevertDetails(eventUuid: eventUuid) + public init(newValue: DBXTeamLogContentPermanentDeletePolicy, previousValue: DBXTeamLogContentPermanentDeletePolicy?) { + self.swift = TeamLog.PermanentDeleteChangePolicyDetails(newValue: newValue.swift, previousValue: previousValue?.swift) } - let swift: TeamLog.PaperDocRevertDetails + let swift: TeamLog.PermanentDeleteChangePolicyDetails - public init(swift: TeamLog.PaperDocRevertDetails) { + public init(swift: TeamLog.PermanentDeleteChangePolicyDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible PaperDocRevertType struct +/// Objective-C compatible PermanentDeleteChangePolicyType struct @objc -public class DBXTeamLogPaperDocRevertType: NSObject { +public class DBXTeamLogPermanentDeleteChangePolicyType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.PaperDocRevertType(description_: description_) + self.swift = TeamLog.PermanentDeleteChangePolicyType(description_: description_) } - let swift: TeamLog.PaperDocRevertType + let swift: TeamLog.PermanentDeleteChangePolicyType - public init(swift: TeamLog.PaperDocRevertType) { + public init(swift: TeamLog.PermanentDeleteChangePolicyType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Shared Paper doc via Slack. +/// Objective-C compatible PlacementRestriction union @objc -public class DBXTeamLogPaperDocSlackShareDetails: NSObject { - /// Event unique identifier. +public class DBXTeamLogPlacementRestriction: NSObject { + let swift: TeamLog.PlacementRestriction + + public init(swift: TeamLog.PlacementRestriction) { + self.swift = swift + } + + public static func factory(swift: TeamLog.PlacementRestriction) -> DBXTeamLogPlacementRestriction { + switch swift { + case .australiaOnly: + return DBXTeamLogPlacementRestrictionAustraliaOnly() + case .canadaOnly: + return DBXTeamLogPlacementRestrictionCanadaOnly() + case .europeOnly: + return DBXTeamLogPlacementRestrictionEuropeOnly() + case .japanOnly: + return DBXTeamLogPlacementRestrictionJapanOnly() + case .none: + return DBXTeamLogPlacementRestrictionNone() + case .ukOnly: + return DBXTeamLogPlacementRestrictionUkOnly() + case .usS3Only: + return DBXTeamLogPlacementRestrictionUsS3Only() + case .other: + return DBXTeamLogPlacementRestrictionOther() + } + } + @objc - public var eventUuid: String { swift.eventUuid } + public override var description: String { swift.description } @objc - public init(eventUuid: String) { - self.swift = TeamLog.PaperDocSlackShareDetails(eventUuid: eventUuid) + public var asAustraliaOnly: DBXTeamLogPlacementRestrictionAustraliaOnly? { + return self as? DBXTeamLogPlacementRestrictionAustraliaOnly } - let swift: TeamLog.PaperDocSlackShareDetails + @objc + public var asCanadaOnly: DBXTeamLogPlacementRestrictionCanadaOnly? { + return self as? DBXTeamLogPlacementRestrictionCanadaOnly + } - public init(swift: TeamLog.PaperDocSlackShareDetails) { - self.swift = swift + @objc + public var asEuropeOnly: DBXTeamLogPlacementRestrictionEuropeOnly? { + return self as? DBXTeamLogPlacementRestrictionEuropeOnly } @objc - public override var description: String { swift.description } -} + public var asJapanOnly: DBXTeamLogPlacementRestrictionJapanOnly? { + return self as? DBXTeamLogPlacementRestrictionJapanOnly + } -/// Objective-C compatible PaperDocSlackShareType struct -@objc -public class DBXTeamLogPaperDocSlackShareType: NSObject { - /// (no description) @objc - public var description_: String { swift.description_ } + public var asNone: DBXTeamLogPlacementRestrictionNone? { + return self as? DBXTeamLogPlacementRestrictionNone + } @objc - public init(description_: String) { - self.swift = TeamLog.PaperDocSlackShareType(description_: description_) + public var asUkOnly: DBXTeamLogPlacementRestrictionUkOnly? { + return self as? DBXTeamLogPlacementRestrictionUkOnly } - let swift: TeamLog.PaperDocSlackShareType + @objc + public var asUsS3Only: DBXTeamLogPlacementRestrictionUsS3Only? { + return self as? DBXTeamLogPlacementRestrictionUsS3Only + } - public init(swift: TeamLog.PaperDocSlackShareType) { - self.swift = swift + @objc + public var asOther: DBXTeamLogPlacementRestrictionOther? { + return self as? DBXTeamLogPlacementRestrictionOther } +} +/// An unspecified error. +@objc +public class DBXTeamLogPlacementRestrictionAustraliaOnly: DBXTeamLogPlacementRestriction { @objc - public override var description: String { swift.description } + public init() { + let swift = TeamLog.PlacementRestriction.australiaOnly + super.init(swift: swift) + } } -/// Shared Paper doc with users and/or groups. +/// An unspecified error. @objc -public class DBXTeamLogPaperDocTeamInviteDetails: NSObject { - /// Event unique identifier. +public class DBXTeamLogPlacementRestrictionCanadaOnly: DBXTeamLogPlacementRestriction { @objc - public var eventUuid: String { swift.eventUuid } + public init() { + let swift = TeamLog.PlacementRestriction.canadaOnly + super.init(swift: swift) + } +} +/// An unspecified error. +@objc +public class DBXTeamLogPlacementRestrictionEuropeOnly: DBXTeamLogPlacementRestriction { @objc - public init(eventUuid: String) { - self.swift = TeamLog.PaperDocTeamInviteDetails(eventUuid: eventUuid) + public init() { + let swift = TeamLog.PlacementRestriction.europeOnly + super.init(swift: swift) } +} - let swift: TeamLog.PaperDocTeamInviteDetails +/// An unspecified error. +@objc +public class DBXTeamLogPlacementRestrictionJapanOnly: DBXTeamLogPlacementRestriction { + @objc + public init() { + let swift = TeamLog.PlacementRestriction.japanOnly + super.init(swift: swift) + } +} - public init(swift: TeamLog.PaperDocTeamInviteDetails) { - self.swift = swift +/// An unspecified error. +@objc +public class DBXTeamLogPlacementRestrictionNone: DBXTeamLogPlacementRestriction { + @objc + public init() { + let swift = TeamLog.PlacementRestriction.none + super.init(swift: swift) } +} +/// An unspecified error. +@objc +public class DBXTeamLogPlacementRestrictionUkOnly: DBXTeamLogPlacementRestriction { @objc - public override var description: String { swift.description } + public init() { + let swift = TeamLog.PlacementRestriction.ukOnly + super.init(swift: swift) + } } -/// Objective-C compatible PaperDocTeamInviteType struct +/// An unspecified error. @objc -public class DBXTeamLogPaperDocTeamInviteType: NSObject { - /// (no description) +public class DBXTeamLogPlacementRestrictionUsS3Only: DBXTeamLogPlacementRestriction { @objc - public var description_: String { swift.description_ } + public init() { + let swift = TeamLog.PlacementRestriction.usS3Only + super.init(swift: swift) + } +} +/// An unspecified error. +@objc +public class DBXTeamLogPlacementRestrictionOther: DBXTeamLogPlacementRestriction { @objc - public init(description_: String) { - self.swift = TeamLog.PaperDocTeamInviteType(description_: description_) + public init() { + let swift = TeamLog.PlacementRestriction.other + super.init(swift: swift) } +} - let swift: TeamLog.PaperDocTeamInviteType +/// Objective-C compatible PolicyType union +@objc +public class DBXTeamLogPolicyType: NSObject { + let swift: TeamLog.PolicyType - public init(swift: TeamLog.PaperDocTeamInviteType) { + public init(swift: TeamLog.PolicyType) { self.swift = swift } + public static func factory(swift: TeamLog.PolicyType) -> DBXTeamLogPolicyType { + switch swift { + case .disposition: + return DBXTeamLogPolicyTypeDisposition() + case .retention: + return DBXTeamLogPolicyTypeRetention() + case .other: + return DBXTeamLogPolicyTypeOther() + } + } + @objc public override var description: String { swift.description } -} -/// Deleted Paper doc. -@objc -public class DBXTeamLogPaperDocTrashedDetails: NSObject { - /// Event unique identifier. @objc - public var eventUuid: String { swift.eventUuid } + public var asDisposition: DBXTeamLogPolicyTypeDisposition? { + return self as? DBXTeamLogPolicyTypeDisposition + } @objc - public init(eventUuid: String) { - self.swift = TeamLog.PaperDocTrashedDetails(eventUuid: eventUuid) + public var asRetention: DBXTeamLogPolicyTypeRetention? { + return self as? DBXTeamLogPolicyTypeRetention } - let swift: TeamLog.PaperDocTrashedDetails - - public init(swift: TeamLog.PaperDocTrashedDetails) { - self.swift = swift + @objc + public var asOther: DBXTeamLogPolicyTypeOther? { + return self as? DBXTeamLogPolicyTypeOther } +} +/// An unspecified error. +@objc +public class DBXTeamLogPolicyTypeDisposition: DBXTeamLogPolicyType { @objc - public override var description: String { swift.description } + public init() { + let swift = TeamLog.PolicyType.disposition + super.init(swift: swift) + } } -/// Objective-C compatible PaperDocTrashedType struct +/// An unspecified error. @objc -public class DBXTeamLogPaperDocTrashedType: NSObject { - /// (no description) +public class DBXTeamLogPolicyTypeRetention: DBXTeamLogPolicyType { @objc - public var description_: String { swift.description_ } + public init() { + let swift = TeamLog.PolicyType.retention + super.init(swift: swift) + } +} +/// An unspecified error. +@objc +public class DBXTeamLogPolicyTypeOther: DBXTeamLogPolicyType { @objc - public init(description_: String) { - self.swift = TeamLog.PaperDocTrashedType(description_: description_) + public init() { + let swift = TeamLog.PolicyType.other + super.init(swift: swift) } +} - let swift: TeamLog.PaperDocTrashedType +/// Policy for deciding whether team users can use Previews AI +@objc +public class DBXTeamLogPreviewsAiPolicy: NSObject { + let swift: TeamLog.PreviewsAiPolicy - public init(swift: TeamLog.PaperDocTrashedType) { + public init(swift: TeamLog.PreviewsAiPolicy) { self.swift = swift } + public static func factory(swift: TeamLog.PreviewsAiPolicy) -> DBXTeamLogPreviewsAiPolicy { + switch swift { + case .default_: + return DBXTeamLogPreviewsAiPolicyDefault_() + case .disabled: + return DBXTeamLogPreviewsAiPolicyDisabled() + case .enabled: + return DBXTeamLogPreviewsAiPolicyEnabled() + case .other: + return DBXTeamLogPreviewsAiPolicyOther() + } + } + @objc public override var description: String { swift.description } -} -/// Unresolved Paper doc comment. -@objc -public class DBXTeamLogPaperDocUnresolveCommentDetails: NSObject { - /// Event unique identifier. @objc - public var eventUuid: String { swift.eventUuid } - /// Comment text. - @objc - public var commentText: String? { swift.commentText } + public var asDefault_: DBXTeamLogPreviewsAiPolicyDefault_? { + return self as? DBXTeamLogPreviewsAiPolicyDefault_ + } @objc - public init(eventUuid: String, commentText: String?) { - self.swift = TeamLog.PaperDocUnresolveCommentDetails(eventUuid: eventUuid, commentText: commentText) + public var asDisabled: DBXTeamLogPreviewsAiPolicyDisabled? { + return self as? DBXTeamLogPreviewsAiPolicyDisabled } - let swift: TeamLog.PaperDocUnresolveCommentDetails - - public init(swift: TeamLog.PaperDocUnresolveCommentDetails) { - self.swift = swift + @objc + public var asEnabled: DBXTeamLogPreviewsAiPolicyEnabled? { + return self as? DBXTeamLogPreviewsAiPolicyEnabled } @objc - public override var description: String { swift.description } + public var asOther: DBXTeamLogPreviewsAiPolicyOther? { + return self as? DBXTeamLogPreviewsAiPolicyOther + } } -/// Objective-C compatible PaperDocUnresolveCommentType struct +/// An unspecified error. @objc -public class DBXTeamLogPaperDocUnresolveCommentType: NSObject { - /// (no description) +public class DBXTeamLogPreviewsAiPolicyDefault_: DBXTeamLogPreviewsAiPolicy { @objc - public var description_: String { swift.description_ } + public init() { + let swift = TeamLog.PreviewsAiPolicy.default_ + super.init(swift: swift) + } +} +/// An unspecified error. +@objc +public class DBXTeamLogPreviewsAiPolicyDisabled: DBXTeamLogPreviewsAiPolicy { @objc - public init(description_: String) { - self.swift = TeamLog.PaperDocUnresolveCommentType(description_: description_) + public init() { + let swift = TeamLog.PreviewsAiPolicy.disabled + super.init(swift: swift) } +} - let swift: TeamLog.PaperDocUnresolveCommentType - - public init(swift: TeamLog.PaperDocUnresolveCommentType) { - self.swift = swift +/// An unspecified error. +@objc +public class DBXTeamLogPreviewsAiPolicyEnabled: DBXTeamLogPreviewsAiPolicy { + @objc + public init() { + let swift = TeamLog.PreviewsAiPolicy.enabled + super.init(swift: swift) } +} +/// An unspecified error. +@objc +public class DBXTeamLogPreviewsAiPolicyOther: DBXTeamLogPreviewsAiPolicy { @objc - public override var description: String { swift.description } + public init() { + let swift = TeamLog.PreviewsAiPolicy.other + super.init(swift: swift) + } } -/// Restored Paper doc. +/// Changed Dropbox AI policy for team. @objc -public class DBXTeamLogPaperDocUntrashedDetails: NSObject { - /// Event unique identifier. +public class DBXTeamLogPreviewsAiPolicyChangedDetails: NSObject { + /// To. @objc - public var eventUuid: String { swift.eventUuid } + public var newValue: DBXTeamLogPreviewsAiPolicy { DBXTeamLogPreviewsAiPolicy(swift: swift.newValue) } + /// From. + @objc + public var previousValue: DBXTeamLogPreviewsAiPolicy { DBXTeamLogPreviewsAiPolicy(swift: swift.previousValue) } @objc - public init(eventUuid: String) { - self.swift = TeamLog.PaperDocUntrashedDetails(eventUuid: eventUuid) + public init(newValue: DBXTeamLogPreviewsAiPolicy, previousValue: DBXTeamLogPreviewsAiPolicy) { + self.swift = TeamLog.PreviewsAiPolicyChangedDetails(newValue: newValue.swift, previousValue: previousValue.swift) } - let swift: TeamLog.PaperDocUntrashedDetails + let swift: TeamLog.PreviewsAiPolicyChangedDetails - public init(swift: TeamLog.PaperDocUntrashedDetails) { + public init(swift: TeamLog.PreviewsAiPolicyChangedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible PaperDocUntrashedType struct +/// Objective-C compatible PreviewsAiPolicyChangedType struct @objc -public class DBXTeamLogPaperDocUntrashedType: NSObject { +public class DBXTeamLogPreviewsAiPolicyChangedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.PaperDocUntrashedType(description_: description_) + self.swift = TeamLog.PreviewsAiPolicyChangedType(description_: description_) } - let swift: TeamLog.PaperDocUntrashedType + let swift: TeamLog.PreviewsAiPolicyChangedType - public init(swift: TeamLog.PaperDocUntrashedType) { + public init(swift: TeamLog.PreviewsAiPolicyChangedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Viewed Paper doc. +/// Team merge request acceptance details shown to the primary team @objc -public class DBXTeamLogPaperDocViewDetails: NSObject { - /// Event unique identifier. +public class DBXTeamLogPrimaryTeamRequestAcceptedDetails: NSObject { + /// The secondary team name. @objc - public var eventUuid: String { swift.eventUuid } + public var secondaryTeam: String { swift.secondaryTeam } + /// The name of the secondary team admin who sent the request originally. + @objc + public var sentBy: String { swift.sentBy } @objc - public init(eventUuid: String) { - self.swift = TeamLog.PaperDocViewDetails(eventUuid: eventUuid) + public init(secondaryTeam: String, sentBy: String) { + self.swift = TeamLog.PrimaryTeamRequestAcceptedDetails(secondaryTeam: secondaryTeam, sentBy: sentBy) } - let swift: TeamLog.PaperDocViewDetails + let swift: TeamLog.PrimaryTeamRequestAcceptedDetails - public init(swift: TeamLog.PaperDocViewDetails) { + public init(swift: TeamLog.PrimaryTeamRequestAcceptedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible PaperDocViewType struct +/// Team merge request cancellation details shown to the primary team @objc -public class DBXTeamLogPaperDocViewType: NSObject { - /// (no description) +public class DBXTeamLogPrimaryTeamRequestCanceledDetails: NSObject { + /// The secondary team name. @objc - public var description_: String { swift.description_ } + public var secondaryTeam: String { swift.secondaryTeam } + /// The name of the secondary team admin who sent the request originally. + @objc + public var sentBy: String { swift.sentBy } @objc - public init(description_: String) { - self.swift = TeamLog.PaperDocViewType(description_: description_) + public init(secondaryTeam: String, sentBy: String) { + self.swift = TeamLog.PrimaryTeamRequestCanceledDetails(secondaryTeam: secondaryTeam, sentBy: sentBy) } - let swift: TeamLog.PaperDocViewType + let swift: TeamLog.PrimaryTeamRequestCanceledDetails - public init(swift: TeamLog.PaperDocViewType) { + public init(swift: TeamLog.PrimaryTeamRequestCanceledDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Paper document's logged information. +/// Team merge request expiration details shown to the primary team @objc -public class DBXTeamLogPaperDocumentLogInfo: NSObject { - /// Papers document Id. +public class DBXTeamLogPrimaryTeamRequestExpiredDetails: NSObject { + /// The secondary team name. @objc - public var docId: String { swift.docId } - /// Paper document title. + public var secondaryTeam: String { swift.secondaryTeam } + /// The name of the secondary team admin who sent the request originally. @objc - public var docTitle: String { swift.docTitle } + public var sentBy: String { swift.sentBy } @objc - public init(docId: String, docTitle: String) { - self.swift = TeamLog.PaperDocumentLogInfo(docId: docId, docTitle: docTitle) + public init(secondaryTeam: String, sentBy: String) { + self.swift = TeamLog.PrimaryTeamRequestExpiredDetails(secondaryTeam: secondaryTeam, sentBy: sentBy) } - let swift: TeamLog.PaperDocumentLogInfo + let swift: TeamLog.PrimaryTeamRequestExpiredDetails - public init(swift: TeamLog.PaperDocumentLogInfo) { + public init(swift: TeamLog.PrimaryTeamRequestExpiredDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible PaperDownloadFormat union +/// Team merge request reminder details shown to the primary team @objc -public class DBXTeamLogPaperDownloadFormat: NSObject { - let swift: TeamLog.PaperDownloadFormat - - public init(swift: TeamLog.PaperDownloadFormat) { - self.swift = swift - } - - public static func factory(swift: TeamLog.PaperDownloadFormat) -> DBXTeamLogPaperDownloadFormat { - switch swift { - case .docx: - return DBXTeamLogPaperDownloadFormatDocx() - case .html: - return DBXTeamLogPaperDownloadFormatHtml() - case .markdown: - return DBXTeamLogPaperDownloadFormatMarkdown() - case .pdf: - return DBXTeamLogPaperDownloadFormatPdf() - case .other: - return DBXTeamLogPaperDownloadFormatOther() - } - } - +public class DBXTeamLogPrimaryTeamRequestReminderDetails: NSObject { + /// The secondary team name. @objc - public override var description: String { swift.description } - + public var secondaryTeam: String { swift.secondaryTeam } + /// The name of the primary team admin the request was sent to. @objc - public var asDocx: DBXTeamLogPaperDownloadFormatDocx? { - self as? DBXTeamLogPaperDownloadFormatDocx - } + public var sentTo: String { swift.sentTo } @objc - public var asHtml: DBXTeamLogPaperDownloadFormatHtml? { - self as? DBXTeamLogPaperDownloadFormatHtml + public init(secondaryTeam: String, sentTo: String) { + self.swift = TeamLog.PrimaryTeamRequestReminderDetails(secondaryTeam: secondaryTeam, sentTo: sentTo) } - @objc - public var asMarkdown: DBXTeamLogPaperDownloadFormatMarkdown? { - self as? DBXTeamLogPaperDownloadFormatMarkdown - } + let swift: TeamLog.PrimaryTeamRequestReminderDetails - @objc - public var asPdf: DBXTeamLogPaperDownloadFormatPdf? { - self as? DBXTeamLogPaperDownloadFormatPdf + public init(swift: TeamLog.PrimaryTeamRequestReminderDetails) { + self.swift = swift } + @objc - public var asOther: DBXTeamLogPaperDownloadFormatOther? { - self as? DBXTeamLogPaperDownloadFormatOther - } + public override var description: String { swift.description } } -/// An unspecified error. +/// Product assigned to team member. @objc -public class DBXTeamLogPaperDownloadFormatDocx: DBXTeamLogPaperDownloadFormat { +public class DBXTeamLogProductAssignedToMemberDetails: NSObject { + /// User's name. @objc - public init() { - let swift = TeamLog.PaperDownloadFormat.docx - super.init(swift: swift) - } -} + public var userName: DBXTeamLogUserNameLogInfo { DBXTeamLogUserNameLogInfo(swift: swift.userName) } + /// Product name. + @objc + public var productName: DBXTeamLogProductLogInfo { DBXTeamLogProductLogInfo(swift: swift.productName) } -/// An unspecified error. -@objc -public class DBXTeamLogPaperDownloadFormatHtml: DBXTeamLogPaperDownloadFormat { @objc - public init() { - let swift = TeamLog.PaperDownloadFormat.html - super.init(swift: swift) + public init(userName: DBXTeamLogUserNameLogInfo, productName: DBXTeamLogProductLogInfo) { + self.swift = TeamLog.ProductAssignedToMemberDetails(userName: userName.swift, productName: productName.swift) } -} -/// An unspecified error. -@objc -public class DBXTeamLogPaperDownloadFormatMarkdown: DBXTeamLogPaperDownloadFormat { - @objc - public init() { - let swift = TeamLog.PaperDownloadFormat.markdown - super.init(swift: swift) + let swift: TeamLog.ProductAssignedToMemberDetails + + public init(swift: TeamLog.ProductAssignedToMemberDetails) { + self.swift = swift } -} -/// An unspecified error. -@objc -public class DBXTeamLogPaperDownloadFormatPdf: DBXTeamLogPaperDownloadFormat { + @objc - public init() { - let swift = TeamLog.PaperDownloadFormat.pdf - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// An unspecified error. +/// Objective-C compatible ProductAssignedToMemberType struct @objc -public class DBXTeamLogPaperDownloadFormatOther: DBXTeamLogPaperDownloadFormat { +public class DBXTeamLogProductAssignedToMemberType: NSObject { + /// (no description) @objc - public init() { - let swift = TeamLog.PaperDownloadFormat.other - super.init(swift: swift) + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.ProductAssignedToMemberType(description_: description_) } -} -/// Added users to Paper-enabled users list. -@objc -public class DBXTeamLogPaperEnabledUsersGroupAdditionDetails: NSObject { - let swift: TeamLog.PaperEnabledUsersGroupAdditionDetails + let swift: TeamLog.ProductAssignedToMemberType - public init(swift: TeamLog.PaperEnabledUsersGroupAdditionDetails) { + public init(swift: TeamLog.ProductAssignedToMemberType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible PaperEnabledUsersGroupAdditionType struct +/// Product logged information @objc -public class DBXTeamLogPaperEnabledUsersGroupAdditionType: NSObject { - /// (no description) +public class DBXTeamLogProductLogInfo: NSObject { + /// Product name. @objc - public var description_: String { swift.description_ } + public var productName: String { swift.productName } @objc - public init(description_: String) { - self.swift = TeamLog.PaperEnabledUsersGroupAdditionType(description_: description_) + public init(productName: String) { + self.swift = TeamLog.ProductLogInfo(productName: productName) } - let swift: TeamLog.PaperEnabledUsersGroupAdditionType + let swift: TeamLog.ProductLogInfo - public init(swift: TeamLog.PaperEnabledUsersGroupAdditionType) { + public init(swift: TeamLog.ProductLogInfo) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Removed users from Paper-enabled users list. +/// Product removed from team member. @objc -public class DBXTeamLogPaperEnabledUsersGroupRemovalDetails: NSObject { - let swift: TeamLog.PaperEnabledUsersGroupRemovalDetails +public class DBXTeamLogProductRemovedFromMemberDetails: NSObject { + /// User's name. + @objc + public var userName: DBXTeamLogUserNameLogInfo { DBXTeamLogUserNameLogInfo(swift: swift.userName) } + /// Product name. + @objc + public var productName: DBXTeamLogProductLogInfo { DBXTeamLogProductLogInfo(swift: swift.productName) } - public init(swift: TeamLog.PaperEnabledUsersGroupRemovalDetails) { + @objc + public init(userName: DBXTeamLogUserNameLogInfo, productName: DBXTeamLogProductLogInfo) { + self.swift = TeamLog.ProductRemovedFromMemberDetails(userName: userName.swift, productName: productName.swift) + } + + let swift: TeamLog.ProductRemovedFromMemberDetails + + public init(swift: TeamLog.ProductRemovedFromMemberDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible PaperEnabledUsersGroupRemovalType struct +/// Objective-C compatible ProductRemovedFromMemberType struct @objc -public class DBXTeamLogPaperEnabledUsersGroupRemovalType: NSObject { +public class DBXTeamLogProductRemovedFromMemberType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.PaperEnabledUsersGroupRemovalType(description_: description_) + self.swift = TeamLog.ProductRemovedFromMemberType(description_: description_) } - let swift: TeamLog.PaperEnabledUsersGroupRemovalType + let swift: TeamLog.ProductRemovedFromMemberType - public init(swift: TeamLog.PaperEnabledUsersGroupRemovalType) { + public init(swift: TeamLog.ProductRemovedFromMemberType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Changed Paper external sharing setting to anyone. +/// Added collaborators via Dropbox Protect. @objc -public class DBXTeamLogPaperExternalViewAllowDetails: NSObject { - /// Event unique identifier. +public class DBXTeamLogProtectActionAddCollaboratorDetails: NSObject { + /// Action ID. @objc - public var eventUuid: String { swift.eventUuid } + public var actionId: String { swift.actionId } @objc - public init(eventUuid: String) { - self.swift = TeamLog.PaperExternalViewAllowDetails(eventUuid: eventUuid) + public init(actionId: String) { + self.swift = TeamLog.ProtectActionAddCollaboratorDetails(actionId: actionId) } - let swift: TeamLog.PaperExternalViewAllowDetails + let swift: TeamLog.ProtectActionAddCollaboratorDetails - public init(swift: TeamLog.PaperExternalViewAllowDetails) { + public init(swift: TeamLog.ProtectActionAddCollaboratorDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible PaperExternalViewAllowType struct +/// Objective-C compatible ProtectActionAddCollaboratorType struct @objc -public class DBXTeamLogPaperExternalViewAllowType: NSObject { +public class DBXTeamLogProtectActionAddCollaboratorType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.PaperExternalViewAllowType(description_: description_) + self.swift = TeamLog.ProtectActionAddCollaboratorType(description_: description_) } - let swift: TeamLog.PaperExternalViewAllowType + let swift: TeamLog.ProtectActionAddCollaboratorType - public init(swift: TeamLog.PaperExternalViewAllowType) { + public init(swift: TeamLog.ProtectActionAddCollaboratorType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Changed Paper external sharing setting to default team. +/// Added a link via Dropbox Protect. @objc -public class DBXTeamLogPaperExternalViewDefaultTeamDetails: NSObject { - /// Event unique identifier. +public class DBXTeamLogProtectActionAddLinkDetails: NSObject { + /// Action ID. @objc - public var eventUuid: String { swift.eventUuid } + public var actionId: String { swift.actionId } @objc - public init(eventUuid: String) { - self.swift = TeamLog.PaperExternalViewDefaultTeamDetails(eventUuid: eventUuid) + public init(actionId: String) { + self.swift = TeamLog.ProtectActionAddLinkDetails(actionId: actionId) } - let swift: TeamLog.PaperExternalViewDefaultTeamDetails + let swift: TeamLog.ProtectActionAddLinkDetails - public init(swift: TeamLog.PaperExternalViewDefaultTeamDetails) { + public init(swift: TeamLog.ProtectActionAddLinkDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible PaperExternalViewDefaultTeamType struct +/// Objective-C compatible ProtectActionAddLinkType struct @objc -public class DBXTeamLogPaperExternalViewDefaultTeamType: NSObject { +public class DBXTeamLogProtectActionAddLinkType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.PaperExternalViewDefaultTeamType(description_: description_) + self.swift = TeamLog.ProtectActionAddLinkType(description_: description_) } - let swift: TeamLog.PaperExternalViewDefaultTeamType + let swift: TeamLog.ProtectActionAddLinkType - public init(swift: TeamLog.PaperExternalViewDefaultTeamType) { + public init(swift: TeamLog.ProtectActionAddLinkType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Changed Paper external sharing setting to team-only. +/// Deleted content via Dropbox Protect. @objc -public class DBXTeamLogPaperExternalViewForbidDetails: NSObject { - /// Event unique identifier. +public class DBXTeamLogProtectActionDeleteDetails: NSObject { + /// Action ID. @objc - public var eventUuid: String { swift.eventUuid } + public var actionId: String { swift.actionId } @objc - public init(eventUuid: String) { - self.swift = TeamLog.PaperExternalViewForbidDetails(eventUuid: eventUuid) + public init(actionId: String) { + self.swift = TeamLog.ProtectActionDeleteDetails(actionId: actionId) } - let swift: TeamLog.PaperExternalViewForbidDetails + let swift: TeamLog.ProtectActionDeleteDetails - public init(swift: TeamLog.PaperExternalViewForbidDetails) { + public init(swift: TeamLog.ProtectActionDeleteDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible PaperExternalViewForbidType struct +/// Objective-C compatible ProtectActionDeleteType struct @objc -public class DBXTeamLogPaperExternalViewForbidType: NSObject { +public class DBXTeamLogProtectActionDeleteType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.PaperExternalViewForbidType(description_: description_) + self.swift = TeamLog.ProtectActionDeleteType(description_: description_) } - let swift: TeamLog.PaperExternalViewForbidType + let swift: TeamLog.ProtectActionDeleteType - public init(swift: TeamLog.PaperExternalViewForbidType) { + public init(swift: TeamLog.ProtectActionDeleteType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Followed/unfollowed Paper folder. +/// Exported content via Dropbox Protect. @objc -public class DBXTeamLogPaperFolderChangeSubscriptionDetails: NSObject { - /// Event unique identifier. - @objc - public var eventUuid: String { swift.eventUuid } - /// New folder subscription level. - @objc - public var newSubscriptionLevel: String { swift.newSubscriptionLevel } - /// Previous folder subscription level. Might be missing due to historical data gap. +public class DBXTeamLogProtectActionExportDetails: NSObject { + /// Action ID. @objc - public var previousSubscriptionLevel: String? { swift.previousSubscriptionLevel } + public var actionId: String { swift.actionId } @objc - public init(eventUuid: String, newSubscriptionLevel: String, previousSubscriptionLevel: String?) { - self.swift = TeamLog.PaperFolderChangeSubscriptionDetails( - eventUuid: eventUuid, - newSubscriptionLevel: newSubscriptionLevel, - previousSubscriptionLevel: previousSubscriptionLevel - ) + public init(actionId: String) { + self.swift = TeamLog.ProtectActionExportDetails(actionId: actionId) } - let swift: TeamLog.PaperFolderChangeSubscriptionDetails + let swift: TeamLog.ProtectActionExportDetails - public init(swift: TeamLog.PaperFolderChangeSubscriptionDetails) { + public init(swift: TeamLog.ProtectActionExportDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible PaperFolderChangeSubscriptionType struct +/// Objective-C compatible ProtectActionExportType struct @objc -public class DBXTeamLogPaperFolderChangeSubscriptionType: NSObject { +public class DBXTeamLogProtectActionExportType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.PaperFolderChangeSubscriptionType(description_: description_) + self.swift = TeamLog.ProtectActionExportType(description_: description_) } - let swift: TeamLog.PaperFolderChangeSubscriptionType + let swift: TeamLog.ProtectActionExportType - public init(swift: TeamLog.PaperFolderChangeSubscriptionType) { + public init(swift: TeamLog.ProtectActionExportType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Archived Paper folder. +/// Removed collaborators via Dropbox Protect. @objc -public class DBXTeamLogPaperFolderDeletedDetails: NSObject { - /// Event unique identifier. +public class DBXTeamLogProtectActionRemoveCollaboratorDetails: NSObject { + /// Action ID. @objc - public var eventUuid: String { swift.eventUuid } + public var actionId: String { swift.actionId } @objc - public init(eventUuid: String) { - self.swift = TeamLog.PaperFolderDeletedDetails(eventUuid: eventUuid) + public init(actionId: String) { + self.swift = TeamLog.ProtectActionRemoveCollaboratorDetails(actionId: actionId) } - let swift: TeamLog.PaperFolderDeletedDetails + let swift: TeamLog.ProtectActionRemoveCollaboratorDetails - public init(swift: TeamLog.PaperFolderDeletedDetails) { + public init(swift: TeamLog.ProtectActionRemoveCollaboratorDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible PaperFolderDeletedType struct +/// Objective-C compatible ProtectActionRemoveCollaboratorType struct @objc -public class DBXTeamLogPaperFolderDeletedType: NSObject { +public class DBXTeamLogProtectActionRemoveCollaboratorType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.PaperFolderDeletedType(description_: description_) + self.swift = TeamLog.ProtectActionRemoveCollaboratorType(description_: description_) } - let swift: TeamLog.PaperFolderDeletedType + let swift: TeamLog.ProtectActionRemoveCollaboratorType - public init(swift: TeamLog.PaperFolderDeletedType) { + public init(swift: TeamLog.ProtectActionRemoveCollaboratorType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Followed Paper folder. +/// Removed a link via Dropbox Protect. @objc -public class DBXTeamLogPaperFolderFollowedDetails: NSObject { - /// Event unique identifier. +public class DBXTeamLogProtectActionRemoveLinkDetails: NSObject { + /// Action ID. @objc - public var eventUuid: String { swift.eventUuid } + public var actionId: String { swift.actionId } @objc - public init(eventUuid: String) { - self.swift = TeamLog.PaperFolderFollowedDetails(eventUuid: eventUuid) + public init(actionId: String) { + self.swift = TeamLog.ProtectActionRemoveLinkDetails(actionId: actionId) } - let swift: TeamLog.PaperFolderFollowedDetails + let swift: TeamLog.ProtectActionRemoveLinkDetails - public init(swift: TeamLog.PaperFolderFollowedDetails) { + public init(swift: TeamLog.ProtectActionRemoveLinkDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible PaperFolderFollowedType struct +/// Objective-C compatible ProtectActionRemoveLinkType struct @objc -public class DBXTeamLogPaperFolderFollowedType: NSObject { +public class DBXTeamLogProtectActionRemoveLinkType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.PaperFolderFollowedType(description_: description_) + self.swift = TeamLog.ProtectActionRemoveLinkType(description_: description_) } - let swift: TeamLog.PaperFolderFollowedType + let swift: TeamLog.ProtectActionRemoveLinkType - public init(swift: TeamLog.PaperFolderFollowedType) { + public init(swift: TeamLog.ProtectActionRemoveLinkType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Paper folder's logged information. +/// Stopped sharing content via Dropbox Protect. @objc -public class DBXTeamLogPaperFolderLogInfo: NSObject { - /// Papers folder Id. +public class DBXTeamLogProtectActionStopSharingDetails: NSObject { + /// Action ID. @objc - public var folderId: String { swift.folderId } - /// Paper folder name. + public var actionId: String { swift.actionId } + @objc - public var folderName: String { swift.folderName } + public init(actionId: String) { + self.swift = TeamLog.ProtectActionStopSharingDetails(actionId: actionId) + } + + let swift: TeamLog.ProtectActionStopSharingDetails + + public init(swift: TeamLog.ProtectActionStopSharingDetails) { + self.swift = swift + } + @objc - public init(folderId: String, folderName: String) { - self.swift = TeamLog.PaperFolderLogInfo(folderId: folderId, folderName: folderName) + public override var description: String { swift.description } +} + +/// Objective-C compatible ProtectActionStopSharingType struct +@objc +public class DBXTeamLogProtectActionStopSharingType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.ProtectActionStopSharingType(description_: description_) } - let swift: TeamLog.PaperFolderLogInfo + let swift: TeamLog.ProtectActionStopSharingType - public init(swift: TeamLog.PaperFolderLogInfo) { + public init(swift: TeamLog.ProtectActionStopSharingType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Shared Paper folder with users and/or groups. +/// Modified Protect internal domains list. @objc -public class DBXTeamLogPaperFolderTeamInviteDetails: NSObject { - /// Event unique identifier. +public class DBXTeamLogProtectInternalDomainsChangedDetails: NSObject { + /// Domains added to the internal domains list. @objc - public var eventUuid: String { swift.eventUuid } + public var domainsAdded: Array? { swift.domainsAdded } + /// Domains removed from the internal domains list. + @objc + public var domainsRemoved: Array? { swift.domainsRemoved } @objc - public init(eventUuid: String) { - self.swift = TeamLog.PaperFolderTeamInviteDetails(eventUuid: eventUuid) + public init(domainsAdded: Array?, domainsRemoved: Array?) { + self.swift = TeamLog.ProtectInternalDomainsChangedDetails(domainsAdded: domainsAdded, domainsRemoved: domainsRemoved) } - let swift: TeamLog.PaperFolderTeamInviteDetails + let swift: TeamLog.ProtectInternalDomainsChangedDetails - public init(swift: TeamLog.PaperFolderTeamInviteDetails) { + public init(swift: TeamLog.ProtectInternalDomainsChangedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible PaperFolderTeamInviteType struct +/// Objective-C compatible ProtectInternalDomainsChangedType struct @objc -public class DBXTeamLogPaperFolderTeamInviteType: NSObject { +public class DBXTeamLogProtectInternalDomainsChangedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.PaperFolderTeamInviteType(description_: description_) + self.swift = TeamLog.ProtectInternalDomainsChangedType(description_: description_) } - let swift: TeamLog.PaperFolderTeamInviteType + let swift: TeamLog.ProtectInternalDomainsChangedType - public init(swift: TeamLog.PaperFolderTeamInviteType) { + public init(swift: TeamLog.ProtectInternalDomainsChangedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Policy for controlling if team members can share Paper documents externally. +/// Quick action type. @objc -public class DBXTeamLogPaperMemberPolicy: NSObject { - let swift: TeamLog.PaperMemberPolicy +public class DBXTeamLogQuickActionType: NSObject { + let swift: TeamLog.QuickActionType - public init(swift: TeamLog.PaperMemberPolicy) { + public init(swift: TeamLog.QuickActionType) { self.swift = swift } - public static func factory(swift: TeamLog.PaperMemberPolicy) -> DBXTeamLogPaperMemberPolicy { + public static func factory(swift: TeamLog.QuickActionType) -> DBXTeamLogQuickActionType { switch swift { - case .anyoneWithLink: - return DBXTeamLogPaperMemberPolicyAnyoneWithLink() - case .onlyTeam: - return DBXTeamLogPaperMemberPolicyOnlyTeam() - case .teamAndExplicitlyShared: - return DBXTeamLogPaperMemberPolicyTeamAndExplicitlyShared() + case .deleteSharedLink: + return DBXTeamLogQuickActionTypeDeleteSharedLink() + case .resetPassword: + return DBXTeamLogQuickActionTypeResetPassword() + case .restoreFileOrFolder: + return DBXTeamLogQuickActionTypeRestoreFileOrFolder() + case .unlinkApp: + return DBXTeamLogQuickActionTypeUnlinkApp() + case .unlinkDevice: + return DBXTeamLogQuickActionTypeUnlinkDevice() + case .unlinkSession: + return DBXTeamLogQuickActionTypeUnlinkSession() case .other: - return DBXTeamLogPaperMemberPolicyOther() + return DBXTeamLogQuickActionTypeOther() } } @@ -52238,350 +67016,367 @@ public class DBXTeamLogPaperMemberPolicy: NSObject { public override var description: String { swift.description } @objc - public var asAnyoneWithLink: DBXTeamLogPaperMemberPolicyAnyoneWithLink? { - self as? DBXTeamLogPaperMemberPolicyAnyoneWithLink + public var asDeleteSharedLink: DBXTeamLogQuickActionTypeDeleteSharedLink? { + return self as? DBXTeamLogQuickActionTypeDeleteSharedLink } @objc - public var asOnlyTeam: DBXTeamLogPaperMemberPolicyOnlyTeam? { - self as? DBXTeamLogPaperMemberPolicyOnlyTeam + public var asResetPassword: DBXTeamLogQuickActionTypeResetPassword? { + return self as? DBXTeamLogQuickActionTypeResetPassword } @objc - public var asTeamAndExplicitlyShared: DBXTeamLogPaperMemberPolicyTeamAndExplicitlyShared? { - self as? DBXTeamLogPaperMemberPolicyTeamAndExplicitlyShared + public var asRestoreFileOrFolder: DBXTeamLogQuickActionTypeRestoreFileOrFolder? { + return self as? DBXTeamLogQuickActionTypeRestoreFileOrFolder } @objc - public var asOther: DBXTeamLogPaperMemberPolicyOther? { - self as? DBXTeamLogPaperMemberPolicyOther + public var asUnlinkApp: DBXTeamLogQuickActionTypeUnlinkApp? { + return self as? DBXTeamLogQuickActionTypeUnlinkApp + } + + @objc + public var asUnlinkDevice: DBXTeamLogQuickActionTypeUnlinkDevice? { + return self as? DBXTeamLogQuickActionTypeUnlinkDevice + } + + @objc + public var asUnlinkSession: DBXTeamLogQuickActionTypeUnlinkSession? { + return self as? DBXTeamLogQuickActionTypeUnlinkSession + } + + @objc + public var asOther: DBXTeamLogQuickActionTypeOther? { + return self as? DBXTeamLogQuickActionTypeOther } } /// An unspecified error. @objc -public class DBXTeamLogPaperMemberPolicyAnyoneWithLink: DBXTeamLogPaperMemberPolicy { +public class DBXTeamLogQuickActionTypeDeleteSharedLink: DBXTeamLogQuickActionType { @objc public init() { - let swift = TeamLog.PaperMemberPolicy.anyoneWithLink + let swift = TeamLog.QuickActionType.deleteSharedLink super.init(swift: swift) } } /// An unspecified error. @objc -public class DBXTeamLogPaperMemberPolicyOnlyTeam: DBXTeamLogPaperMemberPolicy { +public class DBXTeamLogQuickActionTypeResetPassword: DBXTeamLogQuickActionType { @objc public init() { - let swift = TeamLog.PaperMemberPolicy.onlyTeam + let swift = TeamLog.QuickActionType.resetPassword super.init(swift: swift) } } /// An unspecified error. @objc -public class DBXTeamLogPaperMemberPolicyTeamAndExplicitlyShared: DBXTeamLogPaperMemberPolicy { +public class DBXTeamLogQuickActionTypeRestoreFileOrFolder: DBXTeamLogQuickActionType { @objc public init() { - let swift = TeamLog.PaperMemberPolicy.teamAndExplicitlyShared + let swift = TeamLog.QuickActionType.restoreFileOrFolder super.init(swift: swift) } } /// An unspecified error. @objc -public class DBXTeamLogPaperMemberPolicyOther: DBXTeamLogPaperMemberPolicy { +public class DBXTeamLogQuickActionTypeUnlinkApp: DBXTeamLogQuickActionType { @objc public init() { - let swift = TeamLog.PaperMemberPolicy.other + let swift = TeamLog.QuickActionType.unlinkApp super.init(swift: swift) } } -/// Changed permissions for published doc. +/// An unspecified error. @objc -public class DBXTeamLogPaperPublishedLinkChangePermissionDetails: NSObject { - /// Event unique identifier. - @objc - public var eventUuid: String { swift.eventUuid } - /// New permission level. +public class DBXTeamLogQuickActionTypeUnlinkDevice: DBXTeamLogQuickActionType { @objc - public var newPermissionLevel: String { swift.newPermissionLevel } - /// Previous permission level. + public init() { + let swift = TeamLog.QuickActionType.unlinkDevice + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogQuickActionTypeUnlinkSession: DBXTeamLogQuickActionType { @objc - public var previousPermissionLevel: String { swift.previousPermissionLevel } + public init() { + let swift = TeamLog.QuickActionType.unlinkSession + super.init(swift: swift) + } +} +/// An unspecified error. +@objc +public class DBXTeamLogQuickActionTypeOther: DBXTeamLogQuickActionType { @objc - public init(eventUuid: String, newPermissionLevel: String, previousPermissionLevel: String) { - self.swift = TeamLog.PaperPublishedLinkChangePermissionDetails( - eventUuid: eventUuid, - newPermissionLevel: newPermissionLevel, - previousPermissionLevel: previousPermissionLevel - ) + public init() { + let swift = TeamLog.QuickActionType.other + super.init(swift: swift) } +} - let swift: TeamLog.PaperPublishedLinkChangePermissionDetails +/// Created ransomware report. +@objc +public class DBXTeamLogRansomwareAlertCreateReportDetails: NSObject { - public init(swift: TeamLog.PaperPublishedLinkChangePermissionDetails) { + let swift: TeamLog.RansomwareAlertCreateReportDetails + + public init(swift: TeamLog.RansomwareAlertCreateReportDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible PaperPublishedLinkChangePermissionType struct +/// Couldn't generate ransomware report. @objc -public class DBXTeamLogPaperPublishedLinkChangePermissionType: NSObject { - /// (no description) +public class DBXTeamLogRansomwareAlertCreateReportFailedDetails: NSObject { + /// Failure reason. @objc - public var description_: String { swift.description_ } + public var failureReason: DBXTeamTeamReportFailureReason { DBXTeamTeamReportFailureReason(swift: swift.failureReason) } @objc - public init(description_: String) { - self.swift = TeamLog.PaperPublishedLinkChangePermissionType(description_: description_) + public init(failureReason: DBXTeamTeamReportFailureReason) { + self.swift = TeamLog.RansomwareAlertCreateReportFailedDetails(failureReason: failureReason.swift) } - let swift: TeamLog.PaperPublishedLinkChangePermissionType + let swift: TeamLog.RansomwareAlertCreateReportFailedDetails - public init(swift: TeamLog.PaperPublishedLinkChangePermissionType) { + public init(swift: TeamLog.RansomwareAlertCreateReportFailedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Published doc. +/// Objective-C compatible RansomwareAlertCreateReportFailedType struct @objc -public class DBXTeamLogPaperPublishedLinkCreateDetails: NSObject { - /// Event unique identifier. +public class DBXTeamLogRansomwareAlertCreateReportFailedType: NSObject { + /// (no description) @objc - public var eventUuid: String { swift.eventUuid } + public var description_: String { swift.description_ } @objc - public init(eventUuid: String) { - self.swift = TeamLog.PaperPublishedLinkCreateDetails(eventUuid: eventUuid) + public init(description_: String) { + self.swift = TeamLog.RansomwareAlertCreateReportFailedType(description_: description_) } - let swift: TeamLog.PaperPublishedLinkCreateDetails + let swift: TeamLog.RansomwareAlertCreateReportFailedType - public init(swift: TeamLog.PaperPublishedLinkCreateDetails) { + public init(swift: TeamLog.RansomwareAlertCreateReportFailedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible PaperPublishedLinkCreateType struct +/// Objective-C compatible RansomwareAlertCreateReportType struct @objc -public class DBXTeamLogPaperPublishedLinkCreateType: NSObject { +public class DBXTeamLogRansomwareAlertCreateReportType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.PaperPublishedLinkCreateType(description_: description_) + self.swift = TeamLog.RansomwareAlertCreateReportType(description_: description_) } - let swift: TeamLog.PaperPublishedLinkCreateType + let swift: TeamLog.RansomwareAlertCreateReportType - public init(swift: TeamLog.PaperPublishedLinkCreateType) { + public init(swift: TeamLog.RansomwareAlertCreateReportType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Unpublished doc. +/// Completed ransomware restore process. @objc -public class DBXTeamLogPaperPublishedLinkDisabledDetails: NSObject { - /// Event unique identifier. +public class DBXTeamLogRansomwareRestoreProcessCompletedDetails: NSObject { + /// The status of the restore process. @objc - public var eventUuid: String { swift.eventUuid } + public var status: String { swift.status } + /// Restored files count. + @objc + public var restoredFilesCount: NSNumber { swift.restoredFilesCount as NSNumber } + /// Restored files failed count. + @objc + public var restoredFilesFailedCount: NSNumber { swift.restoredFilesFailedCount as NSNumber } @objc - public init(eventUuid: String) { - self.swift = TeamLog.PaperPublishedLinkDisabledDetails(eventUuid: eventUuid) + public init(status: String, restoredFilesCount: NSNumber, restoredFilesFailedCount: NSNumber) { + self.swift = TeamLog.RansomwareRestoreProcessCompletedDetails(status: status, restoredFilesCount: restoredFilesCount.int64Value, restoredFilesFailedCount: restoredFilesFailedCount.int64Value) } - let swift: TeamLog.PaperPublishedLinkDisabledDetails + let swift: TeamLog.RansomwareRestoreProcessCompletedDetails - public init(swift: TeamLog.PaperPublishedLinkDisabledDetails) { + public init(swift: TeamLog.RansomwareRestoreProcessCompletedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible PaperPublishedLinkDisabledType struct +/// Objective-C compatible RansomwareRestoreProcessCompletedType struct @objc -public class DBXTeamLogPaperPublishedLinkDisabledType: NSObject { +public class DBXTeamLogRansomwareRestoreProcessCompletedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.PaperPublishedLinkDisabledType(description_: description_) + self.swift = TeamLog.RansomwareRestoreProcessCompletedType(description_: description_) } - let swift: TeamLog.PaperPublishedLinkDisabledType + let swift: TeamLog.RansomwareRestoreProcessCompletedType - public init(swift: TeamLog.PaperPublishedLinkDisabledType) { + public init(swift: TeamLog.RansomwareRestoreProcessCompletedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Viewed published doc. +/// Started ransomware restore process. @objc -public class DBXTeamLogPaperPublishedLinkViewDetails: NSObject { - /// Event unique identifier. +public class DBXTeamLogRansomwareRestoreProcessStartedDetails: NSObject { + /// Ransomware filename extension. @objc - public var eventUuid: String { swift.eventUuid } + public var extension_: String { swift.extension_ } @objc - public init(eventUuid: String) { - self.swift = TeamLog.PaperPublishedLinkViewDetails(eventUuid: eventUuid) + public init(extension_: String) { + self.swift = TeamLog.RansomwareRestoreProcessStartedDetails(extension_: extension_) } - let swift: TeamLog.PaperPublishedLinkViewDetails + let swift: TeamLog.RansomwareRestoreProcessStartedDetails - public init(swift: TeamLog.PaperPublishedLinkViewDetails) { + public init(swift: TeamLog.RansomwareRestoreProcessStartedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible PaperPublishedLinkViewType struct +/// Objective-C compatible RansomwareRestoreProcessStartedType struct @objc -public class DBXTeamLogPaperPublishedLinkViewType: NSObject { +public class DBXTeamLogRansomwareRestoreProcessStartedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.PaperPublishedLinkViewType(description_: description_) + self.swift = TeamLog.RansomwareRestoreProcessStartedType(description_: description_) } - let swift: TeamLog.PaperPublishedLinkViewType + let swift: TeamLog.RansomwareRestoreProcessStartedType - public init(swift: TeamLog.PaperPublishedLinkViewType) { + public init(swift: TeamLog.RansomwareRestoreProcessStartedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// A user or group +/// Recipients Configuration @objc -public class DBXTeamLogParticipantLogInfo: NSObject { - let swift: TeamLog.ParticipantLogInfo - - public init(swift: TeamLog.ParticipantLogInfo) { - self.swift = swift - } - - public static func factory(swift: TeamLog.ParticipantLogInfo) -> DBXTeamLogParticipantLogInfo { - switch swift { - case .group(let swiftArg): - let arg = DBXTeamLogGroupLogInfo(swift: swiftArg) - return DBXTeamLogParticipantLogInfoGroup(arg) - case .user(let swiftArg): - let arg = DBXTeamLogUserLogInfo(swift: swiftArg) - return DBXTeamLogParticipantLogInfoUser(arg) - case .other: - return DBXTeamLogParticipantLogInfoOther() - } - } - +public class DBXTeamLogRecipientsConfiguration: NSObject { + /// Recipients setting type. @objc - public override var description: String { swift.description } + public var recipientSettingType: DBXTeamLogAlertRecipientsSettingType? { guard let swift = swift.recipientSettingType else { return nil }; return DBXTeamLogAlertRecipientsSettingType(swift: swift) } + /// A list of user emails to notify. + @objc + public var emails: Array? { swift.emails } + /// A list of groups to notify. + @objc + public var groups: Array? { swift.groups } @objc - public var asGroup: DBXTeamLogParticipantLogInfoGroup? { - self as? DBXTeamLogParticipantLogInfoGroup + public init(recipientSettingType: DBXTeamLogAlertRecipientsSettingType?, emails: Array?, groups: Array?) { + self.swift = TeamLog.RecipientsConfiguration(recipientSettingType: recipientSettingType?.swift, emails: emails, groups: groups) } - @objc - public var asUser: DBXTeamLogParticipantLogInfoUser? { - self as? DBXTeamLogParticipantLogInfoUser + let swift: TeamLog.RecipientsConfiguration + + public init(swift: TeamLog.RecipientsConfiguration) { + self.swift = swift } + @objc - public var asOther: DBXTeamLogParticipantLogInfoOther? { - self as? DBXTeamLogParticipantLogInfoOther - } + public override var description: String { swift.description } } -/// Group details. +/// Provides the indices of the source asset and the destination asset for a relocate action. @objc -public class DBXTeamLogParticipantLogInfoGroup: DBXTeamLogParticipantLogInfo { +public class DBXTeamLogRelocateAssetReferencesLogInfo: NSObject { + /// Source asset position in the Assets list. @objc - public var group: DBXTeamLogGroupLogInfo + public var srcAssetIndex: NSNumber { swift.srcAssetIndex as NSNumber } + /// Destination asset position in the Assets list. + @objc + public var destAssetIndex: NSNumber { swift.destAssetIndex as NSNumber } @objc - public init(_ arg: DBXTeamLogGroupLogInfo) { - self.group = arg - let swift = TeamLog.ParticipantLogInfo.group(arg.swift) - super.init(swift: swift) + public init(srcAssetIndex: NSNumber, destAssetIndex: NSNumber) { + self.swift = TeamLog.RelocateAssetReferencesLogInfo(srcAssetIndex: srcAssetIndex.uint64Value, destAssetIndex: destAssetIndex.uint64Value) } -} -/// A user with a Dropbox account. -@objc -public class DBXTeamLogParticipantLogInfoUser: DBXTeamLogParticipantLogInfo { - @objc - public var user: DBXTeamLogUserLogInfo + let swift: TeamLog.RelocateAssetReferencesLogInfo - @objc - public init(_ arg: DBXTeamLogUserLogInfo) { - self.user = arg - let swift = TeamLog.ParticipantLogInfo.user(arg.swift) - super.init(swift: swift) + public init(swift: TeamLog.RelocateAssetReferencesLogInfo) { + self.swift = swift } -} -/// An unspecified error. -@objc -public class DBXTeamLogParticipantLogInfoOther: DBXTeamLogParticipantLogInfo { + @objc - public init() { - let swift = TeamLog.ParticipantLogInfo.other - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// Objective-C compatible PassPolicy union +/// Policy for deciding who can be added to Replay content @objc -public class DBXTeamLogPassPolicy: NSObject { - let swift: TeamLog.PassPolicy +public class DBXTeamLogReplayAddingPeoplePolicy: NSObject { + let swift: TeamLog.ReplayAddingPeoplePolicy - public init(swift: TeamLog.PassPolicy) { + public init(swift: TeamLog.ReplayAddingPeoplePolicy) { self.swift = swift } - public static func factory(swift: TeamLog.PassPolicy) -> DBXTeamLogPassPolicy { + public static func factory(swift: TeamLog.ReplayAddingPeoplePolicy) -> DBXTeamLogReplayAddingPeoplePolicy { switch swift { - case .allow: - return DBXTeamLogPassPolicyAllow() - case .disabled: - return DBXTeamLogPassPolicyDisabled() - case .enabled: - return DBXTeamLogPassPolicyEnabled() + case .anyone: + return DBXTeamLogReplayAddingPeoplePolicyAnyone() + case .teamAndAllowlist: + return DBXTeamLogReplayAddingPeoplePolicyTeamAndAllowlist() + case .teamOnly: + return DBXTeamLogReplayAddingPeoplePolicyTeamOnly() case .other: - return DBXTeamLogPassPolicyOther() + return DBXTeamLogReplayAddingPeoplePolicyOther() } } @@ -52589,361 +67384,310 @@ public class DBXTeamLogPassPolicy: NSObject { public override var description: String { swift.description } @objc - public var asAllow: DBXTeamLogPassPolicyAllow? { - self as? DBXTeamLogPassPolicyAllow + public var asAnyone: DBXTeamLogReplayAddingPeoplePolicyAnyone? { + return self as? DBXTeamLogReplayAddingPeoplePolicyAnyone } @objc - public var asDisabled: DBXTeamLogPassPolicyDisabled? { - self as? DBXTeamLogPassPolicyDisabled + public var asTeamAndAllowlist: DBXTeamLogReplayAddingPeoplePolicyTeamAndAllowlist? { + return self as? DBXTeamLogReplayAddingPeoplePolicyTeamAndAllowlist } @objc - public var asEnabled: DBXTeamLogPassPolicyEnabled? { - self as? DBXTeamLogPassPolicyEnabled + public var asTeamOnly: DBXTeamLogReplayAddingPeoplePolicyTeamOnly? { + return self as? DBXTeamLogReplayAddingPeoplePolicyTeamOnly } @objc - public var asOther: DBXTeamLogPassPolicyOther? { - self as? DBXTeamLogPassPolicyOther + public var asOther: DBXTeamLogReplayAddingPeoplePolicyOther? { + return self as? DBXTeamLogReplayAddingPeoplePolicyOther } } /// An unspecified error. @objc -public class DBXTeamLogPassPolicyAllow: DBXTeamLogPassPolicy { +public class DBXTeamLogReplayAddingPeoplePolicyAnyone: DBXTeamLogReplayAddingPeoplePolicy { @objc public init() { - let swift = TeamLog.PassPolicy.allow + let swift = TeamLog.ReplayAddingPeoplePolicy.anyone super.init(swift: swift) } } /// An unspecified error. @objc -public class DBXTeamLogPassPolicyDisabled: DBXTeamLogPassPolicy { +public class DBXTeamLogReplayAddingPeoplePolicyTeamAndAllowlist: DBXTeamLogReplayAddingPeoplePolicy { @objc public init() { - let swift = TeamLog.PassPolicy.disabled + let swift = TeamLog.ReplayAddingPeoplePolicy.teamAndAllowlist super.init(swift: swift) } } /// An unspecified error. @objc -public class DBXTeamLogPassPolicyEnabled: DBXTeamLogPassPolicy { +public class DBXTeamLogReplayAddingPeoplePolicyTeamOnly: DBXTeamLogReplayAddingPeoplePolicy { @objc public init() { - let swift = TeamLog.PassPolicy.enabled + let swift = TeamLog.ReplayAddingPeoplePolicy.teamOnly super.init(swift: swift) } } /// An unspecified error. @objc -public class DBXTeamLogPassPolicyOther: DBXTeamLogPassPolicy { +public class DBXTeamLogReplayAddingPeoplePolicyOther: DBXTeamLogReplayAddingPeoplePolicy { @objc public init() { - let swift = TeamLog.PassPolicy.other + let swift = TeamLog.ReplayAddingPeoplePolicy.other super.init(swift: swift) } } -/// Changed password. -@objc -public class DBXTeamLogPasswordChangeDetails: NSObject { - let swift: TeamLog.PasswordChangeDetails - - public init(swift: TeamLog.PasswordChangeDetails) { - self.swift = swift - } - - @objc - public override var description: String { swift.description } -} - -/// Objective-C compatible PasswordChangeType struct +/// Changed the policy for adding people to Replay content. @objc -public class DBXTeamLogPasswordChangeType: NSObject { - /// (no description) - @objc - public var description_: String { swift.description_ } - +public class DBXTeamLogReplayAddingPeoplePolicyChangedDetails: NSObject { + /// To. @objc - public init(description_: String) { - self.swift = TeamLog.PasswordChangeType(description_: description_) - } - - let swift: TeamLog.PasswordChangeType - - public init(swift: TeamLog.PasswordChangeType) { - self.swift = swift - } + public var newValue: DBXTeamLogReplayAddingPeoplePolicy { DBXTeamLogReplayAddingPeoplePolicy(swift: swift.newValue) } + /// From. + @objc + public var previousValue: DBXTeamLogReplayAddingPeoplePolicy { DBXTeamLogReplayAddingPeoplePolicy(swift: swift.previousValue) } @objc - public override var description: String { swift.description } -} + public init(newValue: DBXTeamLogReplayAddingPeoplePolicy, previousValue: DBXTeamLogReplayAddingPeoplePolicy) { + self.swift = TeamLog.ReplayAddingPeoplePolicyChangedDetails(newValue: newValue.swift, previousValue: previousValue.swift) + } -/// Reset all team member passwords. -@objc -public class DBXTeamLogPasswordResetAllDetails: NSObject { - let swift: TeamLog.PasswordResetAllDetails + let swift: TeamLog.ReplayAddingPeoplePolicyChangedDetails - public init(swift: TeamLog.PasswordResetAllDetails) { + public init(swift: TeamLog.ReplayAddingPeoplePolicyChangedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible PasswordResetAllType struct +/// Objective-C compatible ReplayAddingPeoplePolicyChangedType struct @objc -public class DBXTeamLogPasswordResetAllType: NSObject { +public class DBXTeamLogReplayAddingPeoplePolicyChangedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.PasswordResetAllType(description_: description_) + self.swift = TeamLog.ReplayAddingPeoplePolicyChangedType(description_: description_) } - let swift: TeamLog.PasswordResetAllType + let swift: TeamLog.ReplayAddingPeoplePolicyChangedType - public init(swift: TeamLog.PasswordResetAllType) { + public init(swift: TeamLog.ReplayAddingPeoplePolicyChangedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Reset password. +/// Deleted files in Replay. @objc -public class DBXTeamLogPasswordResetDetails: NSObject { - let swift: TeamLog.PasswordResetDetails +public class DBXTeamLogReplayFileDeleteDetails: NSObject { - public init(swift: TeamLog.PasswordResetDetails) { + let swift: TeamLog.ReplayFileDeleteDetails + + public init(swift: TeamLog.ReplayFileDeleteDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible PasswordResetType struct +/// Objective-C compatible ReplayFileDeleteType struct @objc -public class DBXTeamLogPasswordResetType: NSObject { +public class DBXTeamLogReplayFileDeleteType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.PasswordResetType(description_: description_) + self.swift = TeamLog.ReplayFileDeleteType(description_: description_) } - let swift: TeamLog.PasswordResetType + let swift: TeamLog.ReplayFileDeleteType - public init(swift: TeamLog.PasswordResetType) { + public init(swift: TeamLog.ReplayFileDeleteType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Changed team password strength requirements. +/// Downloaded files in Replay. @objc -public class DBXTeamLogPasswordStrengthRequirementsChangePolicyDetails: NSObject { - /// Old password strength policy. - @objc - public var previousValue: DBXTeamPoliciesPasswordStrengthPolicy { DBXTeamPoliciesPasswordStrengthPolicy(swift: swift.previousValue) } - /// New password strength policy. - @objc - public var newValue: DBXTeamPoliciesPasswordStrengthPolicy { DBXTeamPoliciesPasswordStrengthPolicy(swift: swift.newValue) } - - @objc - public init(previousValue: DBXTeamPoliciesPasswordStrengthPolicy, newValue: DBXTeamPoliciesPasswordStrengthPolicy) { - self.swift = TeamLog.PasswordStrengthRequirementsChangePolicyDetails(previousValue: previousValue.swift, newValue: newValue.swift) - } +public class DBXTeamLogReplayFileDownloadedDetails: NSObject { - let swift: TeamLog.PasswordStrengthRequirementsChangePolicyDetails + let swift: TeamLog.ReplayFileDownloadedDetails - public init(swift: TeamLog.PasswordStrengthRequirementsChangePolicyDetails) { + public init(swift: TeamLog.ReplayFileDownloadedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible PasswordStrengthRequirementsChangePolicyType struct +/// Objective-C compatible ReplayFileDownloadedType struct @objc -public class DBXTeamLogPasswordStrengthRequirementsChangePolicyType: NSObject { +public class DBXTeamLogReplayFileDownloadedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.PasswordStrengthRequirementsChangePolicyType(description_: description_) + self.swift = TeamLog.ReplayFileDownloadedType(description_: description_) } - let swift: TeamLog.PasswordStrengthRequirementsChangePolicyType + let swift: TeamLog.ReplayFileDownloadedType - public init(swift: TeamLog.PasswordStrengthRequirementsChangePolicyType) { + public init(swift: TeamLog.ReplayFileDownloadedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Path's details. +/// Created shared link in Replay. @objc -public class DBXTeamLogPathLogInfo: NSObject { - /// Fully qualified path relative to event's context. +public class DBXTeamLogReplayFileSharedLinkCreatedDetails: NSObject { + /// Indicates whether it was a watermark share link. @objc - public var contextual: String? { swift.contextual } - /// Path relative to the namespace containing the content. + public var isWatermarked: NSNumber? { swift.isWatermarked as NSNumber? } + /// The Replay sharing policy in place when the link was created. Might be missing due to historical data gap. @objc - public var namespaceRelative: DBXTeamLogNamespaceRelativePathLogInfo { DBXTeamLogNamespaceRelativePathLogInfo(swift: swift.namespaceRelative) } + public var access: DBXTeamLogReplayLinkAccess? { guard let swift = swift.access else { return nil }; return DBXTeamLogReplayLinkAccess(swift: swift) } @objc - public init(namespaceRelative: DBXTeamLogNamespaceRelativePathLogInfo, contextual: String?) { - self.swift = TeamLog.PathLogInfo(namespaceRelative: namespaceRelative.swift, contextual: contextual) + public init(isWatermarked: NSNumber?, access: DBXTeamLogReplayLinkAccess?) { + self.swift = TeamLog.ReplayFileSharedLinkCreatedDetails(isWatermarked: isWatermarked?.boolValue, access: access?.swift) } - let swift: TeamLog.PathLogInfo + let swift: TeamLog.ReplayFileSharedLinkCreatedDetails - public init(swift: TeamLog.PathLogInfo) { + public init(swift: TeamLog.ReplayFileSharedLinkCreatedDetails) { self.swift = swift } - @objc - public override var description: String { swift.description } -} - -/// Added pending secondary email. -@objc -public class DBXTeamLogPendingSecondaryEmailAddedDetails: NSObject { - /// New pending secondary email. - @objc - public var secondaryEmail: String { swift.secondaryEmail } - - @objc - public init(secondaryEmail: String) { - self.swift = TeamLog.PendingSecondaryEmailAddedDetails(secondaryEmail: secondaryEmail) - } - - let swift: TeamLog.PendingSecondaryEmailAddedDetails - - public init(swift: TeamLog.PendingSecondaryEmailAddedDetails) { - self.swift = swift - } @objc public override var description: String { swift.description } } -/// Objective-C compatible PendingSecondaryEmailAddedType struct +/// Objective-C compatible ReplayFileSharedLinkCreatedType struct @objc -public class DBXTeamLogPendingSecondaryEmailAddedType: NSObject { +public class DBXTeamLogReplayFileSharedLinkCreatedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.PendingSecondaryEmailAddedType(description_: description_) + self.swift = TeamLog.ReplayFileSharedLinkCreatedType(description_: description_) } - let swift: TeamLog.PendingSecondaryEmailAddedType + let swift: TeamLog.ReplayFileSharedLinkCreatedType - public init(swift: TeamLog.PendingSecondaryEmailAddedType) { + public init(swift: TeamLog.ReplayFileSharedLinkCreatedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Enabled/disabled ability of team members to permanently delete content. +/// Changed shared link in Replay. @objc -public class DBXTeamLogPermanentDeleteChangePolicyDetails: NSObject { - /// New permanent delete content policy. +public class DBXTeamLogReplayFileSharedLinkModifiedDetails: NSObject { + /// Indicates whether it was a watermark share link. @objc - public var newValue: DBXTeamLogContentPermanentDeletePolicy { DBXTeamLogContentPermanentDeletePolicy(swift: swift.newValue) } - /// Previous permanent delete content policy. Might be missing due to historical data gap. + public var isWatermarked: NSNumber? { swift.isWatermarked as NSNumber? } + /// The Replay sharing policy in place when the link was modified. Might be missing due to historical data gap. @objc - public var previousValue: DBXTeamLogContentPermanentDeletePolicy? { guard let swift = swift.previousValue else { return nil } - return DBXTeamLogContentPermanentDeletePolicy(swift: swift) - } + public var access: DBXTeamLogReplayLinkAccess? { guard let swift = swift.access else { return nil }; return DBXTeamLogReplayLinkAccess(swift: swift) } @objc - public init(newValue: DBXTeamLogContentPermanentDeletePolicy, previousValue: DBXTeamLogContentPermanentDeletePolicy?) { - self.swift = TeamLog.PermanentDeleteChangePolicyDetails(newValue: newValue.swift, previousValue: previousValue?.swift) + public init(isWatermarked: NSNumber?, access: DBXTeamLogReplayLinkAccess?) { + self.swift = TeamLog.ReplayFileSharedLinkModifiedDetails(isWatermarked: isWatermarked?.boolValue, access: access?.swift) } - let swift: TeamLog.PermanentDeleteChangePolicyDetails + let swift: TeamLog.ReplayFileSharedLinkModifiedDetails - public init(swift: TeamLog.PermanentDeleteChangePolicyDetails) { + public init(swift: TeamLog.ReplayFileSharedLinkModifiedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible PermanentDeleteChangePolicyType struct +/// Objective-C compatible ReplayFileSharedLinkModifiedType struct @objc -public class DBXTeamLogPermanentDeleteChangePolicyType: NSObject { +public class DBXTeamLogReplayFileSharedLinkModifiedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.PermanentDeleteChangePolicyType(description_: description_) + self.swift = TeamLog.ReplayFileSharedLinkModifiedType(description_: description_) } - let swift: TeamLog.PermanentDeleteChangePolicyType + let swift: TeamLog.ReplayFileSharedLinkModifiedType - public init(swift: TeamLog.PermanentDeleteChangePolicyType) { + public init(swift: TeamLog.ReplayFileSharedLinkModifiedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible PlacementRestriction union +/// Who can access this Replay link @objc -public class DBXTeamLogPlacementRestriction: NSObject { - let swift: TeamLog.PlacementRestriction +public class DBXTeamLogReplayLinkAccess: NSObject { + let swift: TeamLog.ReplayLinkAccess - public init(swift: TeamLog.PlacementRestriction) { + public init(swift: TeamLog.ReplayLinkAccess) { self.swift = swift } - public static func factory(swift: TeamLog.PlacementRestriction) -> DBXTeamLogPlacementRestriction { + public static func factory(swift: TeamLog.ReplayLinkAccess) -> DBXTeamLogReplayLinkAccess { switch swift { - case .australiaOnly: - return DBXTeamLogPlacementRestrictionAustraliaOnly() - case .europeOnly: - return DBXTeamLogPlacementRestrictionEuropeOnly() - case .japanOnly: - return DBXTeamLogPlacementRestrictionJapanOnly() - case .none: - return DBXTeamLogPlacementRestrictionNone() - case .ukOnly: - return DBXTeamLogPlacementRestrictionUkOnly() - case .usS3Only: - return DBXTeamLogPlacementRestrictionUsS3Only() + case .anyoneLoggedIn: + return DBXTeamLogReplayLinkAccessAnyoneLoggedIn() + case .noLoginRequired: + return DBXTeamLogReplayLinkAccessNoLoginRequired() + case .teamAndApproved: + return DBXTeamLogReplayLinkAccessTeamAndApproved() + case .teamOnly: + return DBXTeamLogReplayLinkAccessTeamOnly() case .other: - return DBXTeamLogPlacementRestrictionOther() + return DBXTeamLogReplayLinkAccessOther() } } @@ -52951,128 +67695,176 @@ public class DBXTeamLogPlacementRestriction: NSObject { public override var description: String { swift.description } @objc - public var asAustraliaOnly: DBXTeamLogPlacementRestrictionAustraliaOnly? { - self as? DBXTeamLogPlacementRestrictionAustraliaOnly - } - - @objc - public var asEuropeOnly: DBXTeamLogPlacementRestrictionEuropeOnly? { - self as? DBXTeamLogPlacementRestrictionEuropeOnly - } - - @objc - public var asJapanOnly: DBXTeamLogPlacementRestrictionJapanOnly? { - self as? DBXTeamLogPlacementRestrictionJapanOnly + public var asAnyoneLoggedIn: DBXTeamLogReplayLinkAccessAnyoneLoggedIn? { + return self as? DBXTeamLogReplayLinkAccessAnyoneLoggedIn } @objc - public var asNone: DBXTeamLogPlacementRestrictionNone? { - self as? DBXTeamLogPlacementRestrictionNone + public var asNoLoginRequired: DBXTeamLogReplayLinkAccessNoLoginRequired? { + return self as? DBXTeamLogReplayLinkAccessNoLoginRequired } @objc - public var asUkOnly: DBXTeamLogPlacementRestrictionUkOnly? { - self as? DBXTeamLogPlacementRestrictionUkOnly + public var asTeamAndApproved: DBXTeamLogReplayLinkAccessTeamAndApproved? { + return self as? DBXTeamLogReplayLinkAccessTeamAndApproved } @objc - public var asUsS3Only: DBXTeamLogPlacementRestrictionUsS3Only? { - self as? DBXTeamLogPlacementRestrictionUsS3Only + public var asTeamOnly: DBXTeamLogReplayLinkAccessTeamOnly? { + return self as? DBXTeamLogReplayLinkAccessTeamOnly } @objc - public var asOther: DBXTeamLogPlacementRestrictionOther? { - self as? DBXTeamLogPlacementRestrictionOther + public var asOther: DBXTeamLogReplayLinkAccessOther? { + return self as? DBXTeamLogReplayLinkAccessOther } } /// An unspecified error. @objc -public class DBXTeamLogPlacementRestrictionAustraliaOnly: DBXTeamLogPlacementRestriction { +public class DBXTeamLogReplayLinkAccessAnyoneLoggedIn: DBXTeamLogReplayLinkAccess { @objc public init() { - let swift = TeamLog.PlacementRestriction.australiaOnly + let swift = TeamLog.ReplayLinkAccess.anyoneLoggedIn super.init(swift: swift) } } /// An unspecified error. @objc -public class DBXTeamLogPlacementRestrictionEuropeOnly: DBXTeamLogPlacementRestriction { +public class DBXTeamLogReplayLinkAccessNoLoginRequired: DBXTeamLogReplayLinkAccess { @objc public init() { - let swift = TeamLog.PlacementRestriction.europeOnly + let swift = TeamLog.ReplayLinkAccess.noLoginRequired super.init(swift: swift) } } /// An unspecified error. @objc -public class DBXTeamLogPlacementRestrictionJapanOnly: DBXTeamLogPlacementRestriction { +public class DBXTeamLogReplayLinkAccessTeamAndApproved: DBXTeamLogReplayLinkAccess { @objc public init() { - let swift = TeamLog.PlacementRestriction.japanOnly + let swift = TeamLog.ReplayLinkAccess.teamAndApproved super.init(swift: swift) } } /// An unspecified error. @objc -public class DBXTeamLogPlacementRestrictionNone: DBXTeamLogPlacementRestriction { +public class DBXTeamLogReplayLinkAccessTeamOnly: DBXTeamLogReplayLinkAccess { @objc public init() { - let swift = TeamLog.PlacementRestriction.none + let swift = TeamLog.ReplayLinkAccess.teamOnly super.init(swift: swift) } } /// An unspecified error. @objc -public class DBXTeamLogPlacementRestrictionUkOnly: DBXTeamLogPlacementRestriction { +public class DBXTeamLogReplayLinkAccessOther: DBXTeamLogReplayLinkAccess { @objc public init() { - let swift = TeamLog.PlacementRestriction.ukOnly + let swift = TeamLog.ReplayLinkAccess.other super.init(swift: swift) } } -/// An unspecified error. +/// Added member to Replay Project. @objc -public class DBXTeamLogPlacementRestrictionUsS3Only: DBXTeamLogPlacementRestriction { +public class DBXTeamLogReplayProjectTeamAddDetails: NSObject { + + let swift: TeamLog.ReplayProjectTeamAddDetails + + public init(swift: TeamLog.ReplayProjectTeamAddDetails) { + self.swift = swift + } + + @objc - public init() { - let swift = TeamLog.PlacementRestriction.usS3Only - super.init(swift: swift) + public override var description: String { swift.description } +} + +/// Objective-C compatible ReplayProjectTeamAddType struct +@objc +public class DBXTeamLogReplayProjectTeamAddType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.ReplayProjectTeamAddType(description_: description_) + } + + let swift: TeamLog.ReplayProjectTeamAddType + + public init(swift: TeamLog.ReplayProjectTeamAddType) { + self.swift = swift } + + + @objc + public override var description: String { swift.description } } -/// An unspecified error. +/// Removed member from Replay Project. @objc -public class DBXTeamLogPlacementRestrictionOther: DBXTeamLogPlacementRestriction { +public class DBXTeamLogReplayProjectTeamDeleteDetails: NSObject { + + let swift: TeamLog.ReplayProjectTeamDeleteDetails + + public init(swift: TeamLog.ReplayProjectTeamDeleteDetails) { + self.swift = swift + } + + @objc - public init() { - let swift = TeamLog.PlacementRestriction.other - super.init(swift: swift) + public override var description: String { swift.description } +} + +/// Objective-C compatible ReplayProjectTeamDeleteType struct +@objc +public class DBXTeamLogReplayProjectTeamDeleteType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.ReplayProjectTeamDeleteType(description_: description_) + } + + let swift: TeamLog.ReplayProjectTeamDeleteType + + public init(swift: TeamLog.ReplayProjectTeamDeleteType) { + self.swift = swift } + + + @objc + public override var description: String { swift.description } } -/// Objective-C compatible PolicyType union +/// Policy for deciding who Replay content can be shared with through links @objc -public class DBXTeamLogPolicyType: NSObject { - let swift: TeamLog.PolicyType +public class DBXTeamLogReplaySharingPolicy: NSObject { + let swift: TeamLog.ReplaySharingPolicy - public init(swift: TeamLog.PolicyType) { + public init(swift: TeamLog.ReplaySharingPolicy) { self.swift = swift } - public static func factory(swift: TeamLog.PolicyType) -> DBXTeamLogPolicyType { + public static func factory(swift: TeamLog.ReplaySharingPolicy) -> DBXTeamLogReplaySharingPolicy { switch swift { - case .disposition: - return DBXTeamLogPolicyTypeDisposition() - case .retention: - return DBXTeamLogPolicyTypeRetention() + case .anyone: + return DBXTeamLogReplaySharingPolicyAnyone() + case .teamAndAllowlist: + return DBXTeamLogReplaySharingPolicyTeamAndAllowlist() + case .teamOnly: + return DBXTeamLogReplaySharingPolicyTeamOnly() case .other: - return DBXTeamLogPolicyTypeOther() + return DBXTeamLogReplaySharingPolicyOther() } } @@ -53080,738 +67872,775 @@ public class DBXTeamLogPolicyType: NSObject { public override var description: String { swift.description } @objc - public var asDisposition: DBXTeamLogPolicyTypeDisposition? { - self as? DBXTeamLogPolicyTypeDisposition + public var asAnyone: DBXTeamLogReplaySharingPolicyAnyone? { + return self as? DBXTeamLogReplaySharingPolicyAnyone } @objc - public var asRetention: DBXTeamLogPolicyTypeRetention? { - self as? DBXTeamLogPolicyTypeRetention + public var asTeamAndAllowlist: DBXTeamLogReplaySharingPolicyTeamAndAllowlist? { + return self as? DBXTeamLogReplaySharingPolicyTeamAndAllowlist } @objc - public var asOther: DBXTeamLogPolicyTypeOther? { - self as? DBXTeamLogPolicyTypeOther + public var asTeamOnly: DBXTeamLogReplaySharingPolicyTeamOnly? { + return self as? DBXTeamLogReplaySharingPolicyTeamOnly + } + + @objc + public var asOther: DBXTeamLogReplaySharingPolicyOther? { + return self as? DBXTeamLogReplaySharingPolicyOther } } /// An unspecified error. @objc -public class DBXTeamLogPolicyTypeDisposition: DBXTeamLogPolicyType { +public class DBXTeamLogReplaySharingPolicyAnyone: DBXTeamLogReplaySharingPolicy { @objc public init() { - let swift = TeamLog.PolicyType.disposition + let swift = TeamLog.ReplaySharingPolicy.anyone super.init(swift: swift) } } /// An unspecified error. @objc -public class DBXTeamLogPolicyTypeRetention: DBXTeamLogPolicyType { +public class DBXTeamLogReplaySharingPolicyTeamAndAllowlist: DBXTeamLogReplaySharingPolicy { @objc public init() { - let swift = TeamLog.PolicyType.retention + let swift = TeamLog.ReplaySharingPolicy.teamAndAllowlist super.init(swift: swift) } } /// An unspecified error. @objc -public class DBXTeamLogPolicyTypeOther: DBXTeamLogPolicyType { +public class DBXTeamLogReplaySharingPolicyTeamOnly: DBXTeamLogReplaySharingPolicy { @objc public init() { - let swift = TeamLog.PolicyType.other + let swift = TeamLog.ReplaySharingPolicy.teamOnly super.init(swift: swift) } } -/// Team merge request acceptance details shown to the primary team +/// An unspecified error. @objc -public class DBXTeamLogPrimaryTeamRequestAcceptedDetails: NSObject { - /// The secondary team name. +public class DBXTeamLogReplaySharingPolicyOther: DBXTeamLogReplaySharingPolicy { @objc - public var secondaryTeam: String { swift.secondaryTeam } - /// The name of the secondary team admin who sent the request originally. + public init() { + let swift = TeamLog.ReplaySharingPolicy.other + super.init(swift: swift) + } +} + +/// Changed the policy for sharing Replay content. +@objc +public class DBXTeamLogReplaySharingPolicyChangedDetails: NSObject { + /// To. @objc - public var sentBy: String { swift.sentBy } + public var newValue: DBXTeamLogReplaySharingPolicy { DBXTeamLogReplaySharingPolicy(swift: swift.newValue) } + /// From. + @objc + public var previousValue: DBXTeamLogReplaySharingPolicy { DBXTeamLogReplaySharingPolicy(swift: swift.previousValue) } @objc - public init(secondaryTeam: String, sentBy: String) { - self.swift = TeamLog.PrimaryTeamRequestAcceptedDetails(secondaryTeam: secondaryTeam, sentBy: sentBy) + public init(newValue: DBXTeamLogReplaySharingPolicy, previousValue: DBXTeamLogReplaySharingPolicy) { + self.swift = TeamLog.ReplaySharingPolicyChangedDetails(newValue: newValue.swift, previousValue: previousValue.swift) } - let swift: TeamLog.PrimaryTeamRequestAcceptedDetails + let swift: TeamLog.ReplaySharingPolicyChangedDetails - public init(swift: TeamLog.PrimaryTeamRequestAcceptedDetails) { + public init(swift: TeamLog.ReplaySharingPolicyChangedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Team merge request cancellation details shown to the primary team +/// Objective-C compatible ReplaySharingPolicyChangedType struct @objc -public class DBXTeamLogPrimaryTeamRequestCanceledDetails: NSObject { - /// The secondary team name. - @objc - public var secondaryTeam: String { swift.secondaryTeam } - /// The name of the secondary team admin who sent the request originally. +public class DBXTeamLogReplaySharingPolicyChangedType: NSObject { + /// (no description) @objc - public var sentBy: String { swift.sentBy } + public var description_: String { swift.description_ } @objc - public init(secondaryTeam: String, sentBy: String) { - self.swift = TeamLog.PrimaryTeamRequestCanceledDetails(secondaryTeam: secondaryTeam, sentBy: sentBy) + public init(description_: String) { + self.swift = TeamLog.ReplaySharingPolicyChangedType(description_: description_) } - let swift: TeamLog.PrimaryTeamRequestCanceledDetails + let swift: TeamLog.ReplaySharingPolicyChangedType - public init(swift: TeamLog.PrimaryTeamRequestCanceledDetails) { + public init(swift: TeamLog.ReplaySharingPolicyChangedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Team merge request expiration details shown to the primary team +/// Created a team project in Replay. @objc -public class DBXTeamLogPrimaryTeamRequestExpiredDetails: NSObject { - /// The secondary team name. - @objc - public var secondaryTeam: String { swift.secondaryTeam } - /// The name of the secondary team admin who sent the request originally. +public class DBXTeamLogReplayTeamProjectCreatedDetails: NSObject { + /// Name of the newly created team project. @objc - public var sentBy: String { swift.sentBy } + public var name: String { swift.name } @objc - public init(secondaryTeam: String, sentBy: String) { - self.swift = TeamLog.PrimaryTeamRequestExpiredDetails(secondaryTeam: secondaryTeam, sentBy: sentBy) + public init(name: String) { + self.swift = TeamLog.ReplayTeamProjectCreatedDetails(name: name) } - let swift: TeamLog.PrimaryTeamRequestExpiredDetails + let swift: TeamLog.ReplayTeamProjectCreatedDetails - public init(swift: TeamLog.PrimaryTeamRequestExpiredDetails) { + public init(swift: TeamLog.ReplayTeamProjectCreatedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Team merge request reminder details shown to the primary team +/// Objective-C compatible ReplayTeamProjectCreatedType struct @objc -public class DBXTeamLogPrimaryTeamRequestReminderDetails: NSObject { - /// The secondary team name. - @objc - public var secondaryTeam: String { swift.secondaryTeam } - /// The name of the primary team admin the request was sent to. +public class DBXTeamLogReplayTeamProjectCreatedType: NSObject { + /// (no description) @objc - public var sentTo: String { swift.sentTo } + public var description_: String { swift.description_ } @objc - public init(secondaryTeam: String, sentTo: String) { - self.swift = TeamLog.PrimaryTeamRequestReminderDetails(secondaryTeam: secondaryTeam, sentTo: sentTo) + public init(description_: String) { + self.swift = TeamLog.ReplayTeamProjectCreatedType(description_: description_) } - let swift: TeamLog.PrimaryTeamRequestReminderDetails + let swift: TeamLog.ReplayTeamProjectCreatedType - public init(swift: TeamLog.PrimaryTeamRequestReminderDetails) { + public init(swift: TeamLog.ReplayTeamProjectCreatedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Quick action type. +/// Reseller information. @objc -public class DBXTeamLogQuickActionType: NSObject { - let swift: TeamLog.QuickActionType +public class DBXTeamLogResellerLogInfo: NSObject { + /// Reseller name. + @objc + public var resellerName: String { swift.resellerName } + /// Reseller email. + @objc + public var resellerEmail: String { swift.resellerEmail } - public init(swift: TeamLog.QuickActionType) { - self.swift = swift + @objc + public init(resellerName: String, resellerEmail: String) { + self.swift = TeamLog.ResellerLogInfo(resellerName: resellerName, resellerEmail: resellerEmail) } - public static func factory(swift: TeamLog.QuickActionType) -> DBXTeamLogQuickActionType { - switch swift { - case .deleteSharedLink: - return DBXTeamLogQuickActionTypeDeleteSharedLink() - case .resetPassword: - return DBXTeamLogQuickActionTypeResetPassword() - case .restoreFileOrFolder: - return DBXTeamLogQuickActionTypeRestoreFileOrFolder() - case .unlinkApp: - return DBXTeamLogQuickActionTypeUnlinkApp() - case .unlinkDevice: - return DBXTeamLogQuickActionTypeUnlinkDevice() - case .unlinkSession: - return DBXTeamLogQuickActionTypeUnlinkSession() - case .other: - return DBXTeamLogQuickActionTypeOther() - } + let swift: TeamLog.ResellerLogInfo + + public init(swift: TeamLog.ResellerLogInfo) { + self.swift = swift } + @objc public override var description: String { swift.description } +} - @objc - public var asDeleteSharedLink: DBXTeamLogQuickActionTypeDeleteSharedLink? { - self as? DBXTeamLogQuickActionTypeDeleteSharedLink - } +/// Objective-C compatible ResellerRole union +@objc +public class DBXTeamLogResellerRole: NSObject { + let swift: TeamLog.ResellerRole - @objc - public var asResetPassword: DBXTeamLogQuickActionTypeResetPassword? { - self as? DBXTeamLogQuickActionTypeResetPassword + public init(swift: TeamLog.ResellerRole) { + self.swift = swift } - @objc - public var asRestoreFileOrFolder: DBXTeamLogQuickActionTypeRestoreFileOrFolder? { - self as? DBXTeamLogQuickActionTypeRestoreFileOrFolder + public static func factory(swift: TeamLog.ResellerRole) -> DBXTeamLogResellerRole { + switch swift { + case .notReseller: + return DBXTeamLogResellerRoleNotReseller() + case .resellerAdmin: + return DBXTeamLogResellerRoleResellerAdmin() + case .other: + return DBXTeamLogResellerRoleOther() + } } @objc - public var asUnlinkApp: DBXTeamLogQuickActionTypeUnlinkApp? { - self as? DBXTeamLogQuickActionTypeUnlinkApp - } + public override var description: String { swift.description } @objc - public var asUnlinkDevice: DBXTeamLogQuickActionTypeUnlinkDevice? { - self as? DBXTeamLogQuickActionTypeUnlinkDevice + public var asNotReseller: DBXTeamLogResellerRoleNotReseller? { + return self as? DBXTeamLogResellerRoleNotReseller } @objc - public var asUnlinkSession: DBXTeamLogQuickActionTypeUnlinkSession? { - self as? DBXTeamLogQuickActionTypeUnlinkSession + public var asResellerAdmin: DBXTeamLogResellerRoleResellerAdmin? { + return self as? DBXTeamLogResellerRoleResellerAdmin } @objc - public var asOther: DBXTeamLogQuickActionTypeOther? { - self as? DBXTeamLogQuickActionTypeOther + public var asOther: DBXTeamLogResellerRoleOther? { + return self as? DBXTeamLogResellerRoleOther } } /// An unspecified error. @objc -public class DBXTeamLogQuickActionTypeDeleteSharedLink: DBXTeamLogQuickActionType { +public class DBXTeamLogResellerRoleNotReseller: DBXTeamLogResellerRole { @objc public init() { - let swift = TeamLog.QuickActionType.deleteSharedLink + let swift = TeamLog.ResellerRole.notReseller super.init(swift: swift) } } /// An unspecified error. @objc -public class DBXTeamLogQuickActionTypeResetPassword: DBXTeamLogQuickActionType { +public class DBXTeamLogResellerRoleResellerAdmin: DBXTeamLogResellerRole { @objc public init() { - let swift = TeamLog.QuickActionType.resetPassword + let swift = TeamLog.ResellerRole.resellerAdmin super.init(swift: swift) } } /// An unspecified error. @objc -public class DBXTeamLogQuickActionTypeRestoreFileOrFolder: DBXTeamLogQuickActionType { +public class DBXTeamLogResellerRoleOther: DBXTeamLogResellerRole { @objc public init() { - let swift = TeamLog.QuickActionType.restoreFileOrFolder + let swift = TeamLog.ResellerRole.other super.init(swift: swift) } } -/// An unspecified error. +/// Enabled/disabled reseller support. @objc -public class DBXTeamLogQuickActionTypeUnlinkApp: DBXTeamLogQuickActionType { +public class DBXTeamLogResellerSupportChangePolicyDetails: NSObject { + /// New Reseller support policy. @objc - public init() { - let swift = TeamLog.QuickActionType.unlinkApp - super.init(swift: swift) + public var newValue: DBXTeamLogResellerSupportPolicy { DBXTeamLogResellerSupportPolicy(swift: swift.newValue) } + /// Previous Reseller support policy. + @objc + public var previousValue: DBXTeamLogResellerSupportPolicy { DBXTeamLogResellerSupportPolicy(swift: swift.previousValue) } + + @objc + public init(newValue: DBXTeamLogResellerSupportPolicy, previousValue: DBXTeamLogResellerSupportPolicy) { + self.swift = TeamLog.ResellerSupportChangePolicyDetails(newValue: newValue.swift, previousValue: previousValue.swift) + } + + let swift: TeamLog.ResellerSupportChangePolicyDetails + + public init(swift: TeamLog.ResellerSupportChangePolicyDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible ResellerSupportChangePolicyType struct +@objc +public class DBXTeamLogResellerSupportChangePolicyType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.ResellerSupportChangePolicyType(description_: description_) + } + + let swift: TeamLog.ResellerSupportChangePolicyType + + public init(swift: TeamLog.ResellerSupportChangePolicyType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Policy for controlling if reseller can access the admin console as administrator +@objc +public class DBXTeamLogResellerSupportPolicy: NSObject { + let swift: TeamLog.ResellerSupportPolicy + + public init(swift: TeamLog.ResellerSupportPolicy) { + self.swift = swift + } + + public static func factory(swift: TeamLog.ResellerSupportPolicy) -> DBXTeamLogResellerSupportPolicy { + switch swift { + case .disabled: + return DBXTeamLogResellerSupportPolicyDisabled() + case .enabled: + return DBXTeamLogResellerSupportPolicyEnabled() + case .other: + return DBXTeamLogResellerSupportPolicyOther() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asDisabled: DBXTeamLogResellerSupportPolicyDisabled? { + return self as? DBXTeamLogResellerSupportPolicyDisabled + } + + @objc + public var asEnabled: DBXTeamLogResellerSupportPolicyEnabled? { + return self as? DBXTeamLogResellerSupportPolicyEnabled + } + + @objc + public var asOther: DBXTeamLogResellerSupportPolicyOther? { + return self as? DBXTeamLogResellerSupportPolicyOther } } /// An unspecified error. @objc -public class DBXTeamLogQuickActionTypeUnlinkDevice: DBXTeamLogQuickActionType { +public class DBXTeamLogResellerSupportPolicyDisabled: DBXTeamLogResellerSupportPolicy { @objc public init() { - let swift = TeamLog.QuickActionType.unlinkDevice + let swift = TeamLog.ResellerSupportPolicy.disabled super.init(swift: swift) } } /// An unspecified error. @objc -public class DBXTeamLogQuickActionTypeUnlinkSession: DBXTeamLogQuickActionType { +public class DBXTeamLogResellerSupportPolicyEnabled: DBXTeamLogResellerSupportPolicy { @objc public init() { - let swift = TeamLog.QuickActionType.unlinkSession + let swift = TeamLog.ResellerSupportPolicy.enabled super.init(swift: swift) } } /// An unspecified error. @objc -public class DBXTeamLogQuickActionTypeOther: DBXTeamLogQuickActionType { +public class DBXTeamLogResellerSupportPolicyOther: DBXTeamLogResellerSupportPolicy { @objc public init() { - let swift = TeamLog.QuickActionType.other + let swift = TeamLog.ResellerSupportPolicy.other super.init(swift: swift) } } -/// Created ransomware report. +/// Ended reseller support session. @objc -public class DBXTeamLogRansomwareAlertCreateReportDetails: NSObject { - let swift: TeamLog.RansomwareAlertCreateReportDetails +public class DBXTeamLogResellerSupportSessionEndDetails: NSObject { - public init(swift: TeamLog.RansomwareAlertCreateReportDetails) { + let swift: TeamLog.ResellerSupportSessionEndDetails + + public init(swift: TeamLog.ResellerSupportSessionEndDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Couldn't generate ransomware report. +/// Objective-C compatible ResellerSupportSessionEndType struct @objc -public class DBXTeamLogRansomwareAlertCreateReportFailedDetails: NSObject { - /// Failure reason. +public class DBXTeamLogResellerSupportSessionEndType: NSObject { + /// (no description) @objc - public var failureReason: DBXTeamTeamReportFailureReason { DBXTeamTeamReportFailureReason(swift: swift.failureReason) } + public var description_: String { swift.description_ } @objc - public init(failureReason: DBXTeamTeamReportFailureReason) { - self.swift = TeamLog.RansomwareAlertCreateReportFailedDetails(failureReason: failureReason.swift) + public init(description_: String) { + self.swift = TeamLog.ResellerSupportSessionEndType(description_: description_) } - let swift: TeamLog.RansomwareAlertCreateReportFailedDetails + let swift: TeamLog.ResellerSupportSessionEndType - public init(swift: TeamLog.RansomwareAlertCreateReportFailedDetails) { + public init(swift: TeamLog.ResellerSupportSessionEndType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible RansomwareAlertCreateReportFailedType struct +/// Started reseller support session. @objc -public class DBXTeamLogRansomwareAlertCreateReportFailedType: NSObject { - /// (no description) - @objc - public var description_: String { swift.description_ } - - @objc - public init(description_: String) { - self.swift = TeamLog.RansomwareAlertCreateReportFailedType(description_: description_) - } +public class DBXTeamLogResellerSupportSessionStartDetails: NSObject { - let swift: TeamLog.RansomwareAlertCreateReportFailedType + let swift: TeamLog.ResellerSupportSessionStartDetails - public init(swift: TeamLog.RansomwareAlertCreateReportFailedType) { + public init(swift: TeamLog.ResellerSupportSessionStartDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible RansomwareAlertCreateReportType struct +/// Objective-C compatible ResellerSupportSessionStartType struct @objc -public class DBXTeamLogRansomwareAlertCreateReportType: NSObject { +public class DBXTeamLogResellerSupportSessionStartType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.RansomwareAlertCreateReportType(description_: description_) + self.swift = TeamLog.ResellerSupportSessionStartType(description_: description_) } - let swift: TeamLog.RansomwareAlertCreateReportType + let swift: TeamLog.ResellerSupportSessionStartType - public init(swift: TeamLog.RansomwareAlertCreateReportType) { + public init(swift: TeamLog.ResellerSupportSessionStartType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Completed ransomware restore process. +/// Rewound a folder. @objc -public class DBXTeamLogRansomwareRestoreProcessCompletedDetails: NSObject { - /// The status of the restore process. - @objc - public var status: String { swift.status } - /// Restored files count. - @objc - public var restoredFilesCount: NSNumber { swift.restoredFilesCount as NSNumber } - /// Restored files failed count. +public class DBXTeamLogRewindFolderDetails: NSObject { + /// Folder was Rewound to this date. @objc - public var restoredFilesFailedCount: NSNumber { swift.restoredFilesFailedCount as NSNumber } + public var rewindFolderTargetTsMs: Date { swift.rewindFolderTargetTsMs } @objc - public init(status: String, restoredFilesCount: NSNumber, restoredFilesFailedCount: NSNumber) { - self.swift = TeamLog.RansomwareRestoreProcessCompletedDetails( - status: status, - restoredFilesCount: restoredFilesCount.int64Value, - restoredFilesFailedCount: restoredFilesFailedCount.int64Value - ) + public init(rewindFolderTargetTsMs: Date) { + self.swift = TeamLog.RewindFolderDetails(rewindFolderTargetTsMs: rewindFolderTargetTsMs) } - let swift: TeamLog.RansomwareRestoreProcessCompletedDetails + let swift: TeamLog.RewindFolderDetails - public init(swift: TeamLog.RansomwareRestoreProcessCompletedDetails) { + public init(swift: TeamLog.RewindFolderDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible RansomwareRestoreProcessCompletedType struct +/// Objective-C compatible RewindFolderType struct @objc -public class DBXTeamLogRansomwareRestoreProcessCompletedType: NSObject { +public class DBXTeamLogRewindFolderType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.RansomwareRestoreProcessCompletedType(description_: description_) + self.swift = TeamLog.RewindFolderType(description_: description_) } - let swift: TeamLog.RansomwareRestoreProcessCompletedType + let swift: TeamLog.RewindFolderType - public init(swift: TeamLog.RansomwareRestoreProcessCompletedType) { + public init(swift: TeamLog.RewindFolderType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Started ransomware restore process. +/// Policy for controlling whether team members can rewind @objc -public class DBXTeamLogRansomwareRestoreProcessStartedDetails: NSObject { - /// Ransomware filename extension. - @objc - public var extension_: String { swift.extension_ } +public class DBXTeamLogRewindPolicy: NSObject { + let swift: TeamLog.RewindPolicy - @objc - public init(extension_: String) { - self.swift = TeamLog.RansomwareRestoreProcessStartedDetails(extension_: extension_) + public init(swift: TeamLog.RewindPolicy) { + self.swift = swift } - let swift: TeamLog.RansomwareRestoreProcessStartedDetails - - public init(swift: TeamLog.RansomwareRestoreProcessStartedDetails) { - self.swift = swift + public static func factory(swift: TeamLog.RewindPolicy) -> DBXTeamLogRewindPolicy { + switch swift { + case .adminsOnly: + return DBXTeamLogRewindPolicyAdminsOnly() + case .everyone: + return DBXTeamLogRewindPolicyEveryone() + case .other: + return DBXTeamLogRewindPolicyOther() + } } @objc public override var description: String { swift.description } -} - -/// Objective-C compatible RansomwareRestoreProcessStartedType struct -@objc -public class DBXTeamLogRansomwareRestoreProcessStartedType: NSObject { - /// (no description) - @objc - public var description_: String { swift.description_ } @objc - public init(description_: String) { - self.swift = TeamLog.RansomwareRestoreProcessStartedType(description_: description_) + public var asAdminsOnly: DBXTeamLogRewindPolicyAdminsOnly? { + return self as? DBXTeamLogRewindPolicyAdminsOnly } - let swift: TeamLog.RansomwareRestoreProcessStartedType - - public init(swift: TeamLog.RansomwareRestoreProcessStartedType) { - self.swift = swift + @objc + public var asEveryone: DBXTeamLogRewindPolicyEveryone? { + return self as? DBXTeamLogRewindPolicyEveryone } @objc - public override var description: String { swift.description } + public var asOther: DBXTeamLogRewindPolicyOther? { + return self as? DBXTeamLogRewindPolicyOther + } } -/// Recipients Configuration +/// An unspecified error. @objc -public class DBXTeamLogRecipientsConfiguration: NSObject { - /// Recipients setting type. +public class DBXTeamLogRewindPolicyAdminsOnly: DBXTeamLogRewindPolicy { @objc - public var recipientSettingType: DBXTeamLogAlertRecipientsSettingType? { guard let swift = swift.recipientSettingType else { return nil } - return DBXTeamLogAlertRecipientsSettingType(swift: swift) + public init() { + let swift = TeamLog.RewindPolicy.adminsOnly + super.init(swift: swift) } +} - /// A list of user emails to notify. - @objc - public var emails: [String]? { swift.emails } - /// A list of groups to notify. - @objc - public var groups: [String]? { swift.groups } - +/// An unspecified error. +@objc +public class DBXTeamLogRewindPolicyEveryone: DBXTeamLogRewindPolicy { @objc - public init(recipientSettingType: DBXTeamLogAlertRecipientsSettingType?, emails: [String]?, groups: [String]?) { - self.swift = TeamLog.RecipientsConfiguration(recipientSettingType: recipientSettingType?.swift, emails: emails, groups: groups) - } - - let swift: TeamLog.RecipientsConfiguration - - public init(swift: TeamLog.RecipientsConfiguration) { - self.swift = swift + public init() { + let swift = TeamLog.RewindPolicy.everyone + super.init(swift: swift) } +} +/// An unspecified error. +@objc +public class DBXTeamLogRewindPolicyOther: DBXTeamLogRewindPolicy { @objc - public override var description: String { swift.description } + public init() { + let swift = TeamLog.RewindPolicy.other + super.init(swift: swift) + } } -/// Provides the indices of the source asset and the destination asset for a relocate action. +/// Changed Rewind policy for team. @objc -public class DBXTeamLogRelocateAssetReferencesLogInfo: NSObject { - /// Source asset position in the Assets list. +public class DBXTeamLogRewindPolicyChangedDetails: NSObject { + /// New Dropbox Rewind policy. @objc - public var srcAssetIndex: NSNumber { swift.srcAssetIndex as NSNumber } - /// Destination asset position in the Assets list. + public var newValue: DBXTeamLogRewindPolicy { DBXTeamLogRewindPolicy(swift: swift.newValue) } + /// Previous Dropbox Rewind policy. @objc - public var destAssetIndex: NSNumber { swift.destAssetIndex as NSNumber } + public var previousValue: DBXTeamLogRewindPolicy { DBXTeamLogRewindPolicy(swift: swift.previousValue) } @objc - public init(srcAssetIndex: NSNumber, destAssetIndex: NSNumber) { - self.swift = TeamLog.RelocateAssetReferencesLogInfo(srcAssetIndex: srcAssetIndex.uint64Value, destAssetIndex: destAssetIndex.uint64Value) + public init(newValue: DBXTeamLogRewindPolicy, previousValue: DBXTeamLogRewindPolicy) { + self.swift = TeamLog.RewindPolicyChangedDetails(newValue: newValue.swift, previousValue: previousValue.swift) } - let swift: TeamLog.RelocateAssetReferencesLogInfo + let swift: TeamLog.RewindPolicyChangedDetails - public init(swift: TeamLog.RelocateAssetReferencesLogInfo) { + public init(swift: TeamLog.RewindPolicyChangedDetails) { self.swift = swift } - @objc - public override var description: String { swift.description } -} - -/// Deleted files in Replay. -@objc -public class DBXTeamLogReplayFileDeleteDetails: NSObject { - let swift: TeamLog.ReplayFileDeleteDetails - - public init(swift: TeamLog.ReplayFileDeleteDetails) { - self.swift = swift - } @objc public override var description: String { swift.description } } -/// Objective-C compatible ReplayFileDeleteType struct +/// Objective-C compatible RewindPolicyChangedType struct @objc -public class DBXTeamLogReplayFileDeleteType: NSObject { +public class DBXTeamLogRewindPolicyChangedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.ReplayFileDeleteType(description_: description_) + self.swift = TeamLog.RewindPolicyChangedType(description_: description_) } - let swift: TeamLog.ReplayFileDeleteType + let swift: TeamLog.RewindPolicyChangedType - public init(swift: TeamLog.ReplayFileDeleteType) { + public init(swift: TeamLog.RewindPolicyChangedType) { self.swift = swift } - @objc - public override var description: String { swift.description } -} - -/// Created shared link in Replay. -@objc -public class DBXTeamLogReplayFileSharedLinkCreatedDetails: NSObject { - let swift: TeamLog.ReplayFileSharedLinkCreatedDetails - - public init(swift: TeamLog.ReplayFileSharedLinkCreatedDetails) { - self.swift = swift - } @objc public override var description: String { swift.description } } -/// Objective-C compatible ReplayFileSharedLinkCreatedType struct +/// RISC security event received from external provider. @objc -public class DBXTeamLogReplayFileSharedLinkCreatedType: NSObject { - /// (no description) +public class DBXTeamLogRiscSecurityEventDetails: NSObject { + /// RISC event type (e.g., account-disabled, token-revoked). @objc - public var description_: String { swift.description_ } + public var eventType: String { swift.eventType } + /// Reason for the RISC event. + @objc + public var reason: String { swift.reason } + /// Identity provider issuer (e.g., https://accounts.google.com). + @objc + public var issuer: String { swift.issuer } @objc - public init(description_: String) { - self.swift = TeamLog.ReplayFileSharedLinkCreatedType(description_: description_) + public init(eventType: String, reason: String, issuer: String) { + self.swift = TeamLog.RiscSecurityEventDetails(eventType: eventType, reason: reason, issuer: issuer) } - let swift: TeamLog.ReplayFileSharedLinkCreatedType + let swift: TeamLog.RiscSecurityEventDetails - public init(swift: TeamLog.ReplayFileSharedLinkCreatedType) { + public init(swift: TeamLog.RiscSecurityEventDetails) { self.swift = swift } - @objc - public override var description: String { swift.description } -} - -/// Modified shared link in Replay. -@objc -public class DBXTeamLogReplayFileSharedLinkModifiedDetails: NSObject { - let swift: TeamLog.ReplayFileSharedLinkModifiedDetails - - public init(swift: TeamLog.ReplayFileSharedLinkModifiedDetails) { - self.swift = swift - } @objc public override var description: String { swift.description } } -/// Objective-C compatible ReplayFileSharedLinkModifiedType struct +/// Objective-C compatible RiscSecurityEventType struct @objc -public class DBXTeamLogReplayFileSharedLinkModifiedType: NSObject { +public class DBXTeamLogRiscSecurityEventType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.ReplayFileSharedLinkModifiedType(description_: description_) + self.swift = TeamLog.RiscSecurityEventType(description_: description_) } - let swift: TeamLog.ReplayFileSharedLinkModifiedType + let swift: TeamLog.RiscSecurityEventType - public init(swift: TeamLog.ReplayFileSharedLinkModifiedType) { + public init(swift: TeamLog.RiscSecurityEventType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Added member to Replay Project. +/// Deleted secondary email. @objc -public class DBXTeamLogReplayProjectTeamAddDetails: NSObject { - let swift: TeamLog.ReplayProjectTeamAddDetails +public class DBXTeamLogSecondaryEmailDeletedDetails: NSObject { + /// Deleted secondary email. + @objc + public var secondaryEmail: String { swift.secondaryEmail } - public init(swift: TeamLog.ReplayProjectTeamAddDetails) { + @objc + public init(secondaryEmail: String) { + self.swift = TeamLog.SecondaryEmailDeletedDetails(secondaryEmail: secondaryEmail) + } + + let swift: TeamLog.SecondaryEmailDeletedDetails + + public init(swift: TeamLog.SecondaryEmailDeletedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible ReplayProjectTeamAddType struct +/// Objective-C compatible SecondaryEmailDeletedType struct @objc -public class DBXTeamLogReplayProjectTeamAddType: NSObject { +public class DBXTeamLogSecondaryEmailDeletedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.ReplayProjectTeamAddType(description_: description_) + self.swift = TeamLog.SecondaryEmailDeletedType(description_: description_) } - let swift: TeamLog.ReplayProjectTeamAddType + let swift: TeamLog.SecondaryEmailDeletedType - public init(swift: TeamLog.ReplayProjectTeamAddType) { + public init(swift: TeamLog.SecondaryEmailDeletedType) { self.swift = swift } - @objc - public override var description: String { swift.description } -} - -/// Removed member from Replay Project. -@objc -public class DBXTeamLogReplayProjectTeamDeleteDetails: NSObject { - let swift: TeamLog.ReplayProjectTeamDeleteDetails - - public init(swift: TeamLog.ReplayProjectTeamDeleteDetails) { - self.swift = swift - } @objc public override var description: String { swift.description } } -/// Objective-C compatible ReplayProjectTeamDeleteType struct +/// Verified secondary email. @objc -public class DBXTeamLogReplayProjectTeamDeleteType: NSObject { - /// (no description) +public class DBXTeamLogSecondaryEmailVerifiedDetails: NSObject { + /// Verified secondary email. @objc - public var description_: String { swift.description_ } + public var secondaryEmail: String { swift.secondaryEmail } @objc - public init(description_: String) { - self.swift = TeamLog.ReplayProjectTeamDeleteType(description_: description_) + public init(secondaryEmail: String) { + self.swift = TeamLog.SecondaryEmailVerifiedDetails(secondaryEmail: secondaryEmail) } - let swift: TeamLog.ReplayProjectTeamDeleteType + let swift: TeamLog.SecondaryEmailVerifiedDetails - public init(swift: TeamLog.ReplayProjectTeamDeleteType) { + public init(swift: TeamLog.SecondaryEmailVerifiedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Reseller information. +/// Objective-C compatible SecondaryEmailVerifiedType struct @objc -public class DBXTeamLogResellerLogInfo: NSObject { - /// Reseller name. - @objc - public var resellerName: String { swift.resellerName } - /// Reseller email. +public class DBXTeamLogSecondaryEmailVerifiedType: NSObject { + /// (no description) @objc - public var resellerEmail: String { swift.resellerEmail } + public var description_: String { swift.description_ } @objc - public init(resellerName: String, resellerEmail: String) { - self.swift = TeamLog.ResellerLogInfo(resellerName: resellerName, resellerEmail: resellerEmail) + public init(description_: String) { + self.swift = TeamLog.SecondaryEmailVerifiedType(description_: description_) } - let swift: TeamLog.ResellerLogInfo + let swift: TeamLog.SecondaryEmailVerifiedType - public init(swift: TeamLog.ResellerLogInfo) { + public init(swift: TeamLog.SecondaryEmailVerifiedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible ResellerRole union +/// Objective-C compatible SecondaryMailsPolicy union @objc -public class DBXTeamLogResellerRole: NSObject { - let swift: TeamLog.ResellerRole +public class DBXTeamLogSecondaryMailsPolicy: NSObject { + let swift: TeamLog.SecondaryMailsPolicy - public init(swift: TeamLog.ResellerRole) { + public init(swift: TeamLog.SecondaryMailsPolicy) { self.swift = swift } - public static func factory(swift: TeamLog.ResellerRole) -> DBXTeamLogResellerRole { + public static func factory(swift: TeamLog.SecondaryMailsPolicy) -> DBXTeamLogSecondaryMailsPolicy { switch swift { - case .notReseller: - return DBXTeamLogResellerRoleNotReseller() - case .resellerAdmin: - return DBXTeamLogResellerRoleResellerAdmin() + case .disabled: + return DBXTeamLogSecondaryMailsPolicyDisabled() + case .enabled: + return DBXTeamLogSecondaryMailsPolicyEnabled() case .other: - return DBXTeamLogResellerRoleOther() + return DBXTeamLogSecondaryMailsPolicyOther() } } @@ -53819,502 +68648,532 @@ public class DBXTeamLogResellerRole: NSObject { public override var description: String { swift.description } @objc - public var asNotReseller: DBXTeamLogResellerRoleNotReseller? { - self as? DBXTeamLogResellerRoleNotReseller + public var asDisabled: DBXTeamLogSecondaryMailsPolicyDisabled? { + return self as? DBXTeamLogSecondaryMailsPolicyDisabled } @objc - public var asResellerAdmin: DBXTeamLogResellerRoleResellerAdmin? { - self as? DBXTeamLogResellerRoleResellerAdmin + public var asEnabled: DBXTeamLogSecondaryMailsPolicyEnabled? { + return self as? DBXTeamLogSecondaryMailsPolicyEnabled } @objc - public var asOther: DBXTeamLogResellerRoleOther? { - self as? DBXTeamLogResellerRoleOther + public var asOther: DBXTeamLogSecondaryMailsPolicyOther? { + return self as? DBXTeamLogSecondaryMailsPolicyOther } } /// An unspecified error. @objc -public class DBXTeamLogResellerRoleNotReseller: DBXTeamLogResellerRole { +public class DBXTeamLogSecondaryMailsPolicyDisabled: DBXTeamLogSecondaryMailsPolicy { @objc public init() { - let swift = TeamLog.ResellerRole.notReseller + let swift = TeamLog.SecondaryMailsPolicy.disabled super.init(swift: swift) } } /// An unspecified error. @objc -public class DBXTeamLogResellerRoleResellerAdmin: DBXTeamLogResellerRole { +public class DBXTeamLogSecondaryMailsPolicyEnabled: DBXTeamLogSecondaryMailsPolicy { @objc public init() { - let swift = TeamLog.ResellerRole.resellerAdmin + let swift = TeamLog.SecondaryMailsPolicy.enabled super.init(swift: swift) } } /// An unspecified error. @objc -public class DBXTeamLogResellerRoleOther: DBXTeamLogResellerRole { +public class DBXTeamLogSecondaryMailsPolicyOther: DBXTeamLogSecondaryMailsPolicy { @objc public init() { - let swift = TeamLog.ResellerRole.other + let swift = TeamLog.SecondaryMailsPolicy.other super.init(swift: swift) } } -/// Enabled/disabled reseller support. +/// Secondary mails policy changed. @objc -public class DBXTeamLogResellerSupportChangePolicyDetails: NSObject { - /// New Reseller support policy. +public class DBXTeamLogSecondaryMailsPolicyChangedDetails: NSObject { + /// Previous secondary mails policy. @objc - public var newValue: DBXTeamLogResellerSupportPolicy { DBXTeamLogResellerSupportPolicy(swift: swift.newValue) } - /// Previous Reseller support policy. + public var previousValue: DBXTeamLogSecondaryMailsPolicy { DBXTeamLogSecondaryMailsPolicy(swift: swift.previousValue) } + /// New secondary mails policy. @objc - public var previousValue: DBXTeamLogResellerSupportPolicy { DBXTeamLogResellerSupportPolicy(swift: swift.previousValue) } + public var newValue: DBXTeamLogSecondaryMailsPolicy { DBXTeamLogSecondaryMailsPolicy(swift: swift.newValue) } @objc - public init(newValue: DBXTeamLogResellerSupportPolicy, previousValue: DBXTeamLogResellerSupportPolicy) { - self.swift = TeamLog.ResellerSupportChangePolicyDetails(newValue: newValue.swift, previousValue: previousValue.swift) + public init(previousValue: DBXTeamLogSecondaryMailsPolicy, newValue: DBXTeamLogSecondaryMailsPolicy) { + self.swift = TeamLog.SecondaryMailsPolicyChangedDetails(previousValue: previousValue.swift, newValue: newValue.swift) } - let swift: TeamLog.ResellerSupportChangePolicyDetails + let swift: TeamLog.SecondaryMailsPolicyChangedDetails - public init(swift: TeamLog.ResellerSupportChangePolicyDetails) { + public init(swift: TeamLog.SecondaryMailsPolicyChangedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible ResellerSupportChangePolicyType struct +/// Objective-C compatible SecondaryMailsPolicyChangedType struct @objc -public class DBXTeamLogResellerSupportChangePolicyType: NSObject { +public class DBXTeamLogSecondaryMailsPolicyChangedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.ResellerSupportChangePolicyType(description_: description_) + self.swift = TeamLog.SecondaryMailsPolicyChangedType(description_: description_) } - let swift: TeamLog.ResellerSupportChangePolicyType + let swift: TeamLog.SecondaryMailsPolicyChangedType - public init(swift: TeamLog.ResellerSupportChangePolicyType) { + public init(swift: TeamLog.SecondaryMailsPolicyChangedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Policy for controlling if reseller can access the admin console as administrator +/// Team merge request acceptance details shown to the secondary team @objc -public class DBXTeamLogResellerSupportPolicy: NSObject { - let swift: TeamLog.ResellerSupportPolicy +public class DBXTeamLogSecondaryTeamRequestAcceptedDetails: NSObject { + /// The primary team name. + @objc + public var primaryTeam: String { swift.primaryTeam } + /// The name of the secondary team admin who sent the request originally. + @objc + public var sentBy: String { swift.sentBy } - public init(swift: TeamLog.ResellerSupportPolicy) { - self.swift = swift + @objc + public init(primaryTeam: String, sentBy: String) { + self.swift = TeamLog.SecondaryTeamRequestAcceptedDetails(primaryTeam: primaryTeam, sentBy: sentBy) } - public static func factory(swift: TeamLog.ResellerSupportPolicy) -> DBXTeamLogResellerSupportPolicy { - switch swift { - case .disabled: - return DBXTeamLogResellerSupportPolicyDisabled() - case .enabled: - return DBXTeamLogResellerSupportPolicyEnabled() - case .other: - return DBXTeamLogResellerSupportPolicyOther() - } + let swift: TeamLog.SecondaryTeamRequestAcceptedDetails + + public init(swift: TeamLog.SecondaryTeamRequestAcceptedDetails) { + self.swift = swift } + @objc public override var description: String { swift.description } +} +/// Team merge request cancellation details shown to the secondary team +@objc +public class DBXTeamLogSecondaryTeamRequestCanceledDetails: NSObject { + /// The email of the primary team admin that the request was sent to. @objc - public var asDisabled: DBXTeamLogResellerSupportPolicyDisabled? { - self as? DBXTeamLogResellerSupportPolicyDisabled - } + public var sentTo: String { swift.sentTo } + /// The name of the secondary team admin who sent the request originally. + @objc + public var sentBy: String { swift.sentBy } @objc - public var asEnabled: DBXTeamLogResellerSupportPolicyEnabled? { - self as? DBXTeamLogResellerSupportPolicyEnabled + public init(sentTo: String, sentBy: String) { + self.swift = TeamLog.SecondaryTeamRequestCanceledDetails(sentTo: sentTo, sentBy: sentBy) } - @objc - public var asOther: DBXTeamLogResellerSupportPolicyOther? { - self as? DBXTeamLogResellerSupportPolicyOther + let swift: TeamLog.SecondaryTeamRequestCanceledDetails + + public init(swift: TeamLog.SecondaryTeamRequestCanceledDetails) { + self.swift = swift } -} -/// An unspecified error. -@objc -public class DBXTeamLogResellerSupportPolicyDisabled: DBXTeamLogResellerSupportPolicy { + @objc - public init() { - let swift = TeamLog.ResellerSupportPolicy.disabled - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// An unspecified error. +/// Team merge request expiration details shown to the secondary team @objc -public class DBXTeamLogResellerSupportPolicyEnabled: DBXTeamLogResellerSupportPolicy { +public class DBXTeamLogSecondaryTeamRequestExpiredDetails: NSObject { + /// The email of the primary team admin the request was sent to. @objc - public init() { - let swift = TeamLog.ResellerSupportPolicy.enabled - super.init(swift: swift) + public var sentTo: String { swift.sentTo } + + @objc + public init(sentTo: String) { + self.swift = TeamLog.SecondaryTeamRequestExpiredDetails(sentTo: sentTo) + } + + let swift: TeamLog.SecondaryTeamRequestExpiredDetails + + public init(swift: TeamLog.SecondaryTeamRequestExpiredDetails) { + self.swift = swift } + + + @objc + public override var description: String { swift.description } } -/// An unspecified error. +/// Team merge request reminder details shown to the secondary team @objc -public class DBXTeamLogResellerSupportPolicyOther: DBXTeamLogResellerSupportPolicy { +public class DBXTeamLogSecondaryTeamRequestReminderDetails: NSObject { + /// The email of the primary team admin the request was sent to. @objc - public init() { - let swift = TeamLog.ResellerSupportPolicy.other - super.init(swift: swift) + public var sentTo: String { swift.sentTo } + + @objc + public init(sentTo: String) { + self.swift = TeamLog.SecondaryTeamRequestReminderDetails(sentTo: sentTo) + } + + let swift: TeamLog.SecondaryTeamRequestReminderDetails + + public init(swift: TeamLog.SecondaryTeamRequestReminderDetails) { + self.swift = swift } + + + @objc + public override var description: String { swift.description } } -/// Ended reseller support session. -@objc -public class DBXTeamLogResellerSupportSessionEndDetails: NSObject { - let swift: TeamLog.ResellerSupportSessionEndDetails +/// File added to Send and Track. +@objc +public class DBXTeamLogSendAndTrackFileAddedDetails: NSObject { - public init(swift: TeamLog.ResellerSupportSessionEndDetails) { + let swift: TeamLog.SendAndTrackFileAddedDetails + + public init(swift: TeamLog.SendAndTrackFileAddedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible ResellerSupportSessionEndType struct +/// Objective-C compatible SendAndTrackFileAddedType struct @objc -public class DBXTeamLogResellerSupportSessionEndType: NSObject { +public class DBXTeamLogSendAndTrackFileAddedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.ResellerSupportSessionEndType(description_: description_) + self.swift = TeamLog.SendAndTrackFileAddedType(description_: description_) } - let swift: TeamLog.ResellerSupportSessionEndType + let swift: TeamLog.SendAndTrackFileAddedType - public init(swift: TeamLog.ResellerSupportSessionEndType) { + public init(swift: TeamLog.SendAndTrackFileAddedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Started reseller support session. +/// File renamed in Send and Track. @objc -public class DBXTeamLogResellerSupportSessionStartDetails: NSObject { - let swift: TeamLog.ResellerSupportSessionStartDetails +public class DBXTeamLogSendAndTrackFileRenamedDetails: NSObject { + /// Previous file name. + @objc + public var previousValue: String? { swift.previousValue } - public init(swift: TeamLog.ResellerSupportSessionStartDetails) { + @objc + public init(previousValue: String?) { + self.swift = TeamLog.SendAndTrackFileRenamedDetails(previousValue: previousValue) + } + + let swift: TeamLog.SendAndTrackFileRenamedDetails + + public init(swift: TeamLog.SendAndTrackFileRenamedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible ResellerSupportSessionStartType struct +/// Objective-C compatible SendAndTrackFileRenamedType struct @objc -public class DBXTeamLogResellerSupportSessionStartType: NSObject { +public class DBXTeamLogSendAndTrackFileRenamedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.ResellerSupportSessionStartType(description_: description_) + self.swift = TeamLog.SendAndTrackFileRenamedType(description_: description_) } - let swift: TeamLog.ResellerSupportSessionStartType + let swift: TeamLog.SendAndTrackFileRenamedType - public init(swift: TeamLog.ResellerSupportSessionStartType) { + public init(swift: TeamLog.SendAndTrackFileRenamedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Rewound a folder. +/// File updated in Send and Track. @objc -public class DBXTeamLogRewindFolderDetails: NSObject { - /// Folder was Rewound to this date. - @objc - public var rewindFolderTargetTsMs: Date { swift.rewindFolderTargetTsMs } +public class DBXTeamLogSendAndTrackFileUpdatedDetails: NSObject { - @objc - public init(rewindFolderTargetTsMs: Date) { - self.swift = TeamLog.RewindFolderDetails(rewindFolderTargetTsMs: rewindFolderTargetTsMs) - } + let swift: TeamLog.SendAndTrackFileUpdatedDetails - let swift: TeamLog.RewindFolderDetails - - public init(swift: TeamLog.RewindFolderDetails) { + public init(swift: TeamLog.SendAndTrackFileUpdatedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible RewindFolderType struct +/// Objective-C compatible SendAndTrackFileUpdatedType struct @objc -public class DBXTeamLogRewindFolderType: NSObject { +public class DBXTeamLogSendAndTrackFileUpdatedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.RewindFolderType(description_: description_) + self.swift = TeamLog.SendAndTrackFileUpdatedType(description_: description_) } - let swift: TeamLog.RewindFolderType + let swift: TeamLog.SendAndTrackFileUpdatedType - public init(swift: TeamLog.RewindFolderType) { + public init(swift: TeamLog.SendAndTrackFileUpdatedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Policy for controlling whether team members can rewind +/// Link created in Send and Track. @objc -public class DBXTeamLogRewindPolicy: NSObject { - let swift: TeamLog.RewindPolicy +public class DBXTeamLogSendAndTrackLinkCreatedDetails: NSObject { + /// Link Settings. + @objc + public var linkSettings: DBXTeamLogLinkSettingsLogInfo { DBXTeamLogLinkSettingsLogInfo(swift: swift.linkSettings) } - public init(swift: TeamLog.RewindPolicy) { - self.swift = swift + @objc + public init(linkSettings: DBXTeamLogLinkSettingsLogInfo) { + self.swift = TeamLog.SendAndTrackLinkCreatedDetails(linkSettings: linkSettings.swift) } - public static func factory(swift: TeamLog.RewindPolicy) -> DBXTeamLogRewindPolicy { - switch swift { - case .adminsOnly: - return DBXTeamLogRewindPolicyAdminsOnly() - case .everyone: - return DBXTeamLogRewindPolicyEveryone() - case .other: - return DBXTeamLogRewindPolicyOther() - } + let swift: TeamLog.SendAndTrackLinkCreatedDetails + + public init(swift: TeamLog.SendAndTrackLinkCreatedDetails) { + self.swift = swift } + @objc public override var description: String { swift.description } +} +/// Objective-C compatible SendAndTrackLinkCreatedType struct +@objc +public class DBXTeamLogSendAndTrackLinkCreatedType: NSObject { + /// (no description) @objc - public var asAdminsOnly: DBXTeamLogRewindPolicyAdminsOnly? { - self as? DBXTeamLogRewindPolicyAdminsOnly - } + public var description_: String { swift.description_ } @objc - public var asEveryone: DBXTeamLogRewindPolicyEveryone? { - self as? DBXTeamLogRewindPolicyEveryone + public init(description_: String) { + self.swift = TeamLog.SendAndTrackLinkCreatedType(description_: description_) } - @objc - public var asOther: DBXTeamLogRewindPolicyOther? { - self as? DBXTeamLogRewindPolicyOther - } -} + let swift: TeamLog.SendAndTrackLinkCreatedType -/// An unspecified error. -@objc -public class DBXTeamLogRewindPolicyAdminsOnly: DBXTeamLogRewindPolicy { - @objc - public init() { - let swift = TeamLog.RewindPolicy.adminsOnly - super.init(swift: swift) + public init(swift: TeamLog.SendAndTrackLinkCreatedType) { + self.swift = swift } -} -/// An unspecified error. -@objc -public class DBXTeamLogRewindPolicyEveryone: DBXTeamLogRewindPolicy { - @objc - public init() { - let swift = TeamLog.RewindPolicy.everyone - super.init(swift: swift) - } -} -/// An unspecified error. -@objc -public class DBXTeamLogRewindPolicyOther: DBXTeamLogRewindPolicy { @objc - public init() { - let swift = TeamLog.RewindPolicy.other - super.init(swift: swift) - } + public override var description: String { swift.description } } -/// Changed Rewind policy for team. +/// Link deleted in Send and Track. @objc -public class DBXTeamLogRewindPolicyChangedDetails: NSObject { - /// New Dropbox Rewind policy. - @objc - public var newValue: DBXTeamLogRewindPolicy { DBXTeamLogRewindPolicy(swift: swift.newValue) } - /// Previous Dropbox Rewind policy. +public class DBXTeamLogSendAndTrackLinkDeletedDetails: NSObject { + /// Shared content link. @objc - public var previousValue: DBXTeamLogRewindPolicy { DBXTeamLogRewindPolicy(swift: swift.previousValue) } + public var sharedContentLink: String { swift.sharedContentLink } @objc - public init(newValue: DBXTeamLogRewindPolicy, previousValue: DBXTeamLogRewindPolicy) { - self.swift = TeamLog.RewindPolicyChangedDetails(newValue: newValue.swift, previousValue: previousValue.swift) + public init(sharedContentLink: String) { + self.swift = TeamLog.SendAndTrackLinkDeletedDetails(sharedContentLink: sharedContentLink) } - let swift: TeamLog.RewindPolicyChangedDetails + let swift: TeamLog.SendAndTrackLinkDeletedDetails - public init(swift: TeamLog.RewindPolicyChangedDetails) { + public init(swift: TeamLog.SendAndTrackLinkDeletedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible RewindPolicyChangedType struct +/// Objective-C compatible SendAndTrackLinkDeletedType struct @objc -public class DBXTeamLogRewindPolicyChangedType: NSObject { +public class DBXTeamLogSendAndTrackLinkDeletedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.RewindPolicyChangedType(description_: description_) + self.swift = TeamLog.SendAndTrackLinkDeletedType(description_: description_) } - let swift: TeamLog.RewindPolicyChangedType + let swift: TeamLog.SendAndTrackLinkDeletedType - public init(swift: TeamLog.RewindPolicyChangedType) { + public init(swift: TeamLog.SendAndTrackLinkDeletedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Deleted secondary email. +/// Send and Track Link Updated. @objc -public class DBXTeamLogSecondaryEmailDeletedDetails: NSObject { - /// Deleted secondary email. +public class DBXTeamLogSendAndTrackLinkUpdatedDetails: NSObject { + /// Link Settings. @objc - public var secondaryEmail: String { swift.secondaryEmail } + public var linkSettings: DBXTeamLogLinkSettingsLogInfo { DBXTeamLogLinkSettingsLogInfo(swift: swift.linkSettings) } + /// Previous link name. + @objc + public var previousLinkName: String? { swift.previousLinkName } @objc - public init(secondaryEmail: String) { - self.swift = TeamLog.SecondaryEmailDeletedDetails(secondaryEmail: secondaryEmail) + public init(linkSettings: DBXTeamLogLinkSettingsLogInfo, previousLinkName: String?) { + self.swift = TeamLog.SendAndTrackLinkUpdatedDetails(linkSettings: linkSettings.swift, previousLinkName: previousLinkName) } - let swift: TeamLog.SecondaryEmailDeletedDetails + let swift: TeamLog.SendAndTrackLinkUpdatedDetails - public init(swift: TeamLog.SecondaryEmailDeletedDetails) { + public init(swift: TeamLog.SendAndTrackLinkUpdatedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible SecondaryEmailDeletedType struct +/// Objective-C compatible SendAndTrackLinkUpdatedType struct @objc -public class DBXTeamLogSecondaryEmailDeletedType: NSObject { +public class DBXTeamLogSendAndTrackLinkUpdatedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.SecondaryEmailDeletedType(description_: description_) + self.swift = TeamLog.SendAndTrackLinkUpdatedType(description_: description_) } - let swift: TeamLog.SecondaryEmailDeletedType + let swift: TeamLog.SendAndTrackLinkUpdatedType - public init(swift: TeamLog.SecondaryEmailDeletedType) { + public init(swift: TeamLog.SendAndTrackLinkUpdatedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Verified secondary email. +/// Send and Track Link Visited. @objc -public class DBXTeamLogSecondaryEmailVerifiedDetails: NSObject { - /// Verified secondary email. +public class DBXTeamLogSendAndTrackLinkViewedDetails: NSObject { + /// Link Settings. @objc - public var secondaryEmail: String { swift.secondaryEmail } + public var linkSettings: DBXTeamLogLinkSettingsLogInfo { DBXTeamLogLinkSettingsLogInfo(swift: swift.linkSettings) } + /// Visitor Email address. + @objc + public var emailAddress: String? { swift.emailAddress } + /// Link Owner. + @objc + public var linkOwner: String? { swift.linkOwner } @objc - public init(secondaryEmail: String) { - self.swift = TeamLog.SecondaryEmailVerifiedDetails(secondaryEmail: secondaryEmail) + public init(linkSettings: DBXTeamLogLinkSettingsLogInfo, emailAddress: String?, linkOwner: String?) { + self.swift = TeamLog.SendAndTrackLinkViewedDetails(linkSettings: linkSettings.swift, emailAddress: emailAddress, linkOwner: linkOwner) } - let swift: TeamLog.SecondaryEmailVerifiedDetails + let swift: TeamLog.SendAndTrackLinkViewedDetails - public init(swift: TeamLog.SecondaryEmailVerifiedDetails) { + public init(swift: TeamLog.SendAndTrackLinkViewedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible SecondaryEmailVerifiedType struct +/// Objective-C compatible SendAndTrackLinkViewedType struct @objc -public class DBXTeamLogSecondaryEmailVerifiedType: NSObject { +public class DBXTeamLogSendAndTrackLinkViewedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.SecondaryEmailVerifiedType(description_: description_) + self.swift = TeamLog.SendAndTrackLinkViewedType(description_: description_) } - let swift: TeamLog.SecondaryEmailVerifiedType + let swift: TeamLog.SendAndTrackLinkViewedType - public init(swift: TeamLog.SecondaryEmailVerifiedType) { + public init(swift: TeamLog.SendAndTrackLinkViewedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible SecondaryMailsPolicy union +/// Policy for deciding whether team users can use Send and Track @objc -public class DBXTeamLogSecondaryMailsPolicy: NSObject { - let swift: TeamLog.SecondaryMailsPolicy +public class DBXTeamLogSendAndTrackPolicy: NSObject { + let swift: TeamLog.SendAndTrackPolicy - public init(swift: TeamLog.SecondaryMailsPolicy) { + public init(swift: TeamLog.SendAndTrackPolicy) { self.swift = swift } - public static func factory(swift: TeamLog.SecondaryMailsPolicy) -> DBXTeamLogSecondaryMailsPolicy { + public static func factory(swift: TeamLog.SendAndTrackPolicy) -> DBXTeamLogSendAndTrackPolicy { switch swift { + case .default_: + return DBXTeamLogSendAndTrackPolicyDefault_() case .disabled: - return DBXTeamLogSecondaryMailsPolicyDisabled() + return DBXTeamLogSendAndTrackPolicyDisabled() case .enabled: - return DBXTeamLogSecondaryMailsPolicyEnabled() + return DBXTeamLogSendAndTrackPolicyEnabled() case .other: - return DBXTeamLogSecondaryMailsPolicyOther() + return DBXTeamLogSendAndTrackPolicyOther() } } @@ -54322,188 +69181,284 @@ public class DBXTeamLogSecondaryMailsPolicy: NSObject { public override var description: String { swift.description } @objc - public var asDisabled: DBXTeamLogSecondaryMailsPolicyDisabled? { - self as? DBXTeamLogSecondaryMailsPolicyDisabled + public var asDefault_: DBXTeamLogSendAndTrackPolicyDefault_? { + return self as? DBXTeamLogSendAndTrackPolicyDefault_ } @objc - public var asEnabled: DBXTeamLogSecondaryMailsPolicyEnabled? { - self as? DBXTeamLogSecondaryMailsPolicyEnabled + public var asDisabled: DBXTeamLogSendAndTrackPolicyDisabled? { + return self as? DBXTeamLogSendAndTrackPolicyDisabled } @objc - public var asOther: DBXTeamLogSecondaryMailsPolicyOther? { - self as? DBXTeamLogSecondaryMailsPolicyOther + public var asEnabled: DBXTeamLogSendAndTrackPolicyEnabled? { + return self as? DBXTeamLogSendAndTrackPolicyEnabled + } + + @objc + public var asOther: DBXTeamLogSendAndTrackPolicyOther? { + return self as? DBXTeamLogSendAndTrackPolicyOther } } /// An unspecified error. @objc -public class DBXTeamLogSecondaryMailsPolicyDisabled: DBXTeamLogSecondaryMailsPolicy { +public class DBXTeamLogSendAndTrackPolicyDefault_: DBXTeamLogSendAndTrackPolicy { @objc public init() { - let swift = TeamLog.SecondaryMailsPolicy.disabled + let swift = TeamLog.SendAndTrackPolicy.default_ super.init(swift: swift) } } /// An unspecified error. @objc -public class DBXTeamLogSecondaryMailsPolicyEnabled: DBXTeamLogSecondaryMailsPolicy { +public class DBXTeamLogSendAndTrackPolicyDisabled: DBXTeamLogSendAndTrackPolicy { @objc public init() { - let swift = TeamLog.SecondaryMailsPolicy.enabled + let swift = TeamLog.SendAndTrackPolicy.disabled super.init(swift: swift) } } /// An unspecified error. @objc -public class DBXTeamLogSecondaryMailsPolicyOther: DBXTeamLogSecondaryMailsPolicy { +public class DBXTeamLogSendAndTrackPolicyEnabled: DBXTeamLogSendAndTrackPolicy { @objc public init() { - let swift = TeamLog.SecondaryMailsPolicy.other + let swift = TeamLog.SendAndTrackPolicy.enabled super.init(swift: swift) } } -/// Secondary mails policy changed. +/// An unspecified error. @objc -public class DBXTeamLogSecondaryMailsPolicyChangedDetails: NSObject { - /// Previous secondary mails policy. +public class DBXTeamLogSendAndTrackPolicyOther: DBXTeamLogSendAndTrackPolicy { @objc - public var previousValue: DBXTeamLogSecondaryMailsPolicy { DBXTeamLogSecondaryMailsPolicy(swift: swift.previousValue) } - /// New secondary mails policy. + public init() { + let swift = TeamLog.SendAndTrackPolicy.other + super.init(swift: swift) + } +} + +/// Changed “Send and track” policy for team. +@objc +public class DBXTeamLogSendAndTrackPolicyChangedDetails: NSObject { + /// To. @objc - public var newValue: DBXTeamLogSecondaryMailsPolicy { DBXTeamLogSecondaryMailsPolicy(swift: swift.newValue) } + public var newValue: DBXTeamLogSendAndTrackPolicy { DBXTeamLogSendAndTrackPolicy(swift: swift.newValue) } + /// From. + @objc + public var previousValue: DBXTeamLogSendAndTrackPolicy { DBXTeamLogSendAndTrackPolicy(swift: swift.previousValue) } @objc - public init(previousValue: DBXTeamLogSecondaryMailsPolicy, newValue: DBXTeamLogSecondaryMailsPolicy) { - self.swift = TeamLog.SecondaryMailsPolicyChangedDetails(previousValue: previousValue.swift, newValue: newValue.swift) + public init(newValue: DBXTeamLogSendAndTrackPolicy, previousValue: DBXTeamLogSendAndTrackPolicy) { + self.swift = TeamLog.SendAndTrackPolicyChangedDetails(newValue: newValue.swift, previousValue: previousValue.swift) } - let swift: TeamLog.SecondaryMailsPolicyChangedDetails + let swift: TeamLog.SendAndTrackPolicyChangedDetails - public init(swift: TeamLog.SecondaryMailsPolicyChangedDetails) { + public init(swift: TeamLog.SendAndTrackPolicyChangedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Objective-C compatible SecondaryMailsPolicyChangedType struct +/// Objective-C compatible SendAndTrackPolicyChangedType struct @objc -public class DBXTeamLogSecondaryMailsPolicyChangedType: NSObject { +public class DBXTeamLogSendAndTrackPolicyChangedType: NSObject { /// (no description) @objc public var description_: String { swift.description_ } @objc public init(description_: String) { - self.swift = TeamLog.SecondaryMailsPolicyChangedType(description_: description_) + self.swift = TeamLog.SendAndTrackPolicyChangedType(description_: description_) } - let swift: TeamLog.SecondaryMailsPolicyChangedType + let swift: TeamLog.SendAndTrackPolicyChangedType - public init(swift: TeamLog.SecondaryMailsPolicyChangedType) { + public init(swift: TeamLog.SendAndTrackPolicyChangedType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Team merge request acceptance details shown to the secondary team +/// Send and Track file and associated links deleted. @objc -public class DBXTeamLogSecondaryTeamRequestAcceptedDetails: NSObject { - /// The primary team name. +public class DBXTeamLogSendAndTrackRemovedFileAndAssociatedLinksDetails: NSObject { + + let swift: TeamLog.SendAndTrackRemovedFileAndAssociatedLinksDetails + + public init(swift: TeamLog.SendAndTrackRemovedFileAndAssociatedLinksDetails) { + self.swift = swift + } + + @objc - public var primaryTeam: String { swift.primaryTeam } - /// The name of the secondary team admin who sent the request originally. + public override var description: String { swift.description } +} + +/// Objective-C compatible SendAndTrackRemovedFileAndAssociatedLinksType struct +@objc +public class DBXTeamLogSendAndTrackRemovedFileAndAssociatedLinksType: NSObject { + /// (no description) @objc - public var sentBy: String { swift.sentBy } + public var description_: String { swift.description_ } @objc - public init(primaryTeam: String, sentBy: String) { - self.swift = TeamLog.SecondaryTeamRequestAcceptedDetails(primaryTeam: primaryTeam, sentBy: sentBy) + public init(description_: String) { + self.swift = TeamLog.SendAndTrackRemovedFileAndAssociatedLinksType(description_: description_) } - let swift: TeamLog.SecondaryTeamRequestAcceptedDetails + let swift: TeamLog.SendAndTrackRemovedFileAndAssociatedLinksType - public init(swift: TeamLog.SecondaryTeamRequestAcceptedDetails) { + public init(swift: TeamLog.SendAndTrackRemovedFileAndAssociatedLinksType) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Team merge request cancellation details shown to the secondary team +/// Policy for deciding whether team users can share Send content externally @objc -public class DBXTeamLogSecondaryTeamRequestCanceledDetails: NSObject { - /// The email of the primary team admin that the request was sent to. +public class DBXTeamLogSendExternalSharingPolicy: NSObject { + let swift: TeamLog.SendExternalSharingPolicy + + public init(swift: TeamLog.SendExternalSharingPolicy) { + self.swift = swift + } + + public static func factory(swift: TeamLog.SendExternalSharingPolicy) -> DBXTeamLogSendExternalSharingPolicy { + switch swift { + case .default_: + return DBXTeamLogSendExternalSharingPolicyDefault_() + case .disabled: + return DBXTeamLogSendExternalSharingPolicyDisabled() + case .enabled: + return DBXTeamLogSendExternalSharingPolicyEnabled() + case .other: + return DBXTeamLogSendExternalSharingPolicyOther() + } + } + @objc - public var sentTo: String { swift.sentTo } - /// The name of the secondary team admin who sent the request originally. + public override var description: String { swift.description } + @objc - public var sentBy: String { swift.sentBy } + public var asDefault_: DBXTeamLogSendExternalSharingPolicyDefault_? { + return self as? DBXTeamLogSendExternalSharingPolicyDefault_ + } @objc - public init(sentTo: String, sentBy: String) { - self.swift = TeamLog.SecondaryTeamRequestCanceledDetails(sentTo: sentTo, sentBy: sentBy) + public var asDisabled: DBXTeamLogSendExternalSharingPolicyDisabled? { + return self as? DBXTeamLogSendExternalSharingPolicyDisabled } - let swift: TeamLog.SecondaryTeamRequestCanceledDetails + @objc + public var asEnabled: DBXTeamLogSendExternalSharingPolicyEnabled? { + return self as? DBXTeamLogSendExternalSharingPolicyEnabled + } - public init(swift: TeamLog.SecondaryTeamRequestCanceledDetails) { - self.swift = swift + @objc + public var asOther: DBXTeamLogSendExternalSharingPolicyOther? { + return self as? DBXTeamLogSendExternalSharingPolicyOther } +} +/// An unspecified error. +@objc +public class DBXTeamLogSendExternalSharingPolicyDefault_: DBXTeamLogSendExternalSharingPolicy { @objc - public override var description: String { swift.description } + public init() { + let swift = TeamLog.SendExternalSharingPolicy.default_ + super.init(swift: swift) + } } -/// Team merge request expiration details shown to the secondary team +/// An unspecified error. @objc -public class DBXTeamLogSecondaryTeamRequestExpiredDetails: NSObject { - /// The email of the primary team admin the request was sent to. +public class DBXTeamLogSendExternalSharingPolicyDisabled: DBXTeamLogSendExternalSharingPolicy { @objc - public var sentTo: String { swift.sentTo } + public init() { + let swift = TeamLog.SendExternalSharingPolicy.disabled + super.init(swift: swift) + } +} +/// An unspecified error. +@objc +public class DBXTeamLogSendExternalSharingPolicyEnabled: DBXTeamLogSendExternalSharingPolicy { @objc - public init(sentTo: String) { - self.swift = TeamLog.SecondaryTeamRequestExpiredDetails(sentTo: sentTo) + public init() { + let swift = TeamLog.SendExternalSharingPolicy.enabled + super.init(swift: swift) } +} - let swift: TeamLog.SecondaryTeamRequestExpiredDetails +/// An unspecified error. +@objc +public class DBXTeamLogSendExternalSharingPolicyOther: DBXTeamLogSendExternalSharingPolicy { + @objc + public init() { + let swift = TeamLog.SendExternalSharingPolicy.other + super.init(swift: swift) + } +} - public init(swift: TeamLog.SecondaryTeamRequestExpiredDetails) { +/// Changed “Send and track” external sharing policy for team. +@objc +public class DBXTeamLogSendExternalSharingPolicyChangedDetails: NSObject { + /// To. + @objc + public var newValue: DBXTeamLogSendExternalSharingPolicy { DBXTeamLogSendExternalSharingPolicy(swift: swift.newValue) } + /// From. + @objc + public var previousValue: DBXTeamLogSendExternalSharingPolicy { DBXTeamLogSendExternalSharingPolicy(swift: swift.previousValue) } + + @objc + public init(newValue: DBXTeamLogSendExternalSharingPolicy, previousValue: DBXTeamLogSendExternalSharingPolicy) { + self.swift = TeamLog.SendExternalSharingPolicyChangedDetails(newValue: newValue.swift, previousValue: previousValue.swift) + } + + let swift: TeamLog.SendExternalSharingPolicyChangedDetails + + public init(swift: TeamLog.SendExternalSharingPolicyChangedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Team merge request reminder details shown to the secondary team +/// Objective-C compatible SendExternalSharingPolicyChangedType struct @objc -public class DBXTeamLogSecondaryTeamRequestReminderDetails: NSObject { - /// The email of the primary team admin the request was sent to. +public class DBXTeamLogSendExternalSharingPolicyChangedType: NSObject { + /// (no description) @objc - public var sentTo: String { swift.sentTo } + public var description_: String { swift.description_ } @objc - public init(sentTo: String) { - self.swift = TeamLog.SecondaryTeamRequestReminderDetails(sentTo: sentTo) + public init(description_: String) { + self.swift = TeamLog.SendExternalSharingPolicyChangedType(description_: description_) } - let swift: TeamLog.SecondaryTeamRequestReminderDetails + let swift: TeamLog.SendExternalSharingPolicyChangedType - public init(swift: TeamLog.SecondaryTeamRequestReminderDetails) { + public init(swift: TeamLog.SendExternalSharingPolicyChangedType) { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -54533,17 +69488,17 @@ public class DBXTeamLogSendForSignaturePolicy: NSObject { @objc public var asDisabled: DBXTeamLogSendForSignaturePolicyDisabled? { - self as? DBXTeamLogSendForSignaturePolicyDisabled + return self as? DBXTeamLogSendForSignaturePolicyDisabled } @objc public var asEnabled: DBXTeamLogSendForSignaturePolicyEnabled? { - self as? DBXTeamLogSendForSignaturePolicyEnabled + return self as? DBXTeamLogSendForSignaturePolicyEnabled } @objc public var asOther: DBXTeamLogSendForSignaturePolicyOther? { - self as? DBXTeamLogSendForSignaturePolicyOther + return self as? DBXTeamLogSendForSignaturePolicyOther } } @@ -54598,6 +69553,7 @@ public class DBXTeamLogSendForSignaturePolicyChangedDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -54620,6 +69576,7 @@ public class DBXTeamLogSendForSignaturePolicyChangedType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -54642,12 +69599,7 @@ public class DBXTeamLogSfAddGroupDetails: NSObject { @objc public init(targetAssetIndex: NSNumber, originalFolderName: String, teamName: String, sharingPermission: String?) { - self.swift = TeamLog.SfAddGroupDetails( - targetAssetIndex: targetAssetIndex.uint64Value, - originalFolderName: originalFolderName, - teamName: teamName, - sharingPermission: sharingPermission - ) + self.swift = TeamLog.SfAddGroupDetails(targetAssetIndex: targetAssetIndex.uint64Value, originalFolderName: originalFolderName, teamName: teamName, sharingPermission: sharingPermission) } let swift: TeamLog.SfAddGroupDetails @@ -54656,6 +69608,7 @@ public class DBXTeamLogSfAddGroupDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -54678,6 +69631,7 @@ public class DBXTeamLogSfAddGroupType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -54697,11 +69651,7 @@ public class DBXTeamLogSfAllowNonMembersToViewSharedLinksDetails: NSObject { @objc public init(targetAssetIndex: NSNumber, originalFolderName: String, sharedFolderType: String?) { - self.swift = TeamLog.SfAllowNonMembersToViewSharedLinksDetails( - targetAssetIndex: targetAssetIndex.uint64Value, - originalFolderName: originalFolderName, - sharedFolderType: sharedFolderType - ) + self.swift = TeamLog.SfAllowNonMembersToViewSharedLinksDetails(targetAssetIndex: targetAssetIndex.uint64Value, originalFolderName: originalFolderName, sharedFolderType: sharedFolderType) } let swift: TeamLog.SfAllowNonMembersToViewSharedLinksDetails @@ -54710,6 +69660,7 @@ public class DBXTeamLogSfAllowNonMembersToViewSharedLinksDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -54732,6 +69683,7 @@ public class DBXTeamLogSfAllowNonMembersToViewSharedLinksType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -54754,12 +69706,7 @@ public class DBXTeamLogSfExternalInviteWarnDetails: NSObject { @objc public init(targetAssetIndex: NSNumber, originalFolderName: String, newSharingPermission: String?, previousSharingPermission: String?) { - self.swift = TeamLog.SfExternalInviteWarnDetails( - targetAssetIndex: targetAssetIndex.uint64Value, - originalFolderName: originalFolderName, - newSharingPermission: newSharingPermission, - previousSharingPermission: previousSharingPermission - ) + self.swift = TeamLog.SfExternalInviteWarnDetails(targetAssetIndex: targetAssetIndex.uint64Value, originalFolderName: originalFolderName, newSharingPermission: newSharingPermission, previousSharingPermission: previousSharingPermission) } let swift: TeamLog.SfExternalInviteWarnDetails @@ -54768,6 +69715,7 @@ public class DBXTeamLogSfExternalInviteWarnDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -54790,6 +69738,7 @@ public class DBXTeamLogSfExternalInviteWarnType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -54812,12 +69761,7 @@ public class DBXTeamLogSfFbInviteChangeRoleDetails: NSObject { @objc public init(targetAssetIndex: NSNumber, originalFolderName: String, previousSharingPermission: String?, newSharingPermission: String?) { - self.swift = TeamLog.SfFbInviteChangeRoleDetails( - targetAssetIndex: targetAssetIndex.uint64Value, - originalFolderName: originalFolderName, - previousSharingPermission: previousSharingPermission, - newSharingPermission: newSharingPermission - ) + self.swift = TeamLog.SfFbInviteChangeRoleDetails(targetAssetIndex: targetAssetIndex.uint64Value, originalFolderName: originalFolderName, previousSharingPermission: previousSharingPermission, newSharingPermission: newSharingPermission) } let swift: TeamLog.SfFbInviteChangeRoleDetails @@ -54826,6 +69770,7 @@ public class DBXTeamLogSfFbInviteChangeRoleDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -54848,6 +69793,7 @@ public class DBXTeamLogSfFbInviteChangeRoleType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -54867,11 +69813,7 @@ public class DBXTeamLogSfFbInviteDetails: NSObject { @objc public init(targetAssetIndex: NSNumber, originalFolderName: String, sharingPermission: String?) { - self.swift = TeamLog.SfFbInviteDetails( - targetAssetIndex: targetAssetIndex.uint64Value, - originalFolderName: originalFolderName, - sharingPermission: sharingPermission - ) + self.swift = TeamLog.SfFbInviteDetails(targetAssetIndex: targetAssetIndex.uint64Value, originalFolderName: originalFolderName, sharingPermission: sharingPermission) } let swift: TeamLog.SfFbInviteDetails @@ -54880,6 +69822,7 @@ public class DBXTeamLogSfFbInviteDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -54902,6 +69845,7 @@ public class DBXTeamLogSfFbInviteType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -54927,6 +69871,7 @@ public class DBXTeamLogSfFbUninviteDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -54949,6 +69894,7 @@ public class DBXTeamLogSfFbUninviteType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -54971,6 +69917,7 @@ public class DBXTeamLogSfInviteGroupDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -54993,6 +69940,7 @@ public class DBXTeamLogSfInviteGroupType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -55018,6 +69966,7 @@ public class DBXTeamLogSfTeamGrantAccessDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -55040,6 +69989,7 @@ public class DBXTeamLogSfTeamGrantAccessType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -55062,12 +70012,7 @@ public class DBXTeamLogSfTeamInviteChangeRoleDetails: NSObject { @objc public init(targetAssetIndex: NSNumber, originalFolderName: String, newSharingPermission: String?, previousSharingPermission: String?) { - self.swift = TeamLog.SfTeamInviteChangeRoleDetails( - targetAssetIndex: targetAssetIndex.uint64Value, - originalFolderName: originalFolderName, - newSharingPermission: newSharingPermission, - previousSharingPermission: previousSharingPermission - ) + self.swift = TeamLog.SfTeamInviteChangeRoleDetails(targetAssetIndex: targetAssetIndex.uint64Value, originalFolderName: originalFolderName, newSharingPermission: newSharingPermission, previousSharingPermission: previousSharingPermission) } let swift: TeamLog.SfTeamInviteChangeRoleDetails @@ -55076,6 +70021,7 @@ public class DBXTeamLogSfTeamInviteChangeRoleDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -55098,6 +70044,7 @@ public class DBXTeamLogSfTeamInviteChangeRoleType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -55117,11 +70064,7 @@ public class DBXTeamLogSfTeamInviteDetails: NSObject { @objc public init(targetAssetIndex: NSNumber, originalFolderName: String, sharingPermission: String?) { - self.swift = TeamLog.SfTeamInviteDetails( - targetAssetIndex: targetAssetIndex.uint64Value, - originalFolderName: originalFolderName, - sharingPermission: sharingPermission - ) + self.swift = TeamLog.SfTeamInviteDetails(targetAssetIndex: targetAssetIndex.uint64Value, originalFolderName: originalFolderName, sharingPermission: sharingPermission) } let swift: TeamLog.SfTeamInviteDetails @@ -55130,6 +70073,7 @@ public class DBXTeamLogSfTeamInviteDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -55152,6 +70096,7 @@ public class DBXTeamLogSfTeamInviteType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -55177,6 +70122,7 @@ public class DBXTeamLogSfTeamJoinDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -55199,12 +70145,7 @@ public class DBXTeamLogSfTeamJoinFromOobLinkDetails: NSObject { @objc public init(targetAssetIndex: NSNumber, originalFolderName: String, tokenKey: String?, sharingPermission: String?) { - self.swift = TeamLog.SfTeamJoinFromOobLinkDetails( - targetAssetIndex: targetAssetIndex.uint64Value, - originalFolderName: originalFolderName, - tokenKey: tokenKey, - sharingPermission: sharingPermission - ) + self.swift = TeamLog.SfTeamJoinFromOobLinkDetails(targetAssetIndex: targetAssetIndex.uint64Value, originalFolderName: originalFolderName, tokenKey: tokenKey, sharingPermission: sharingPermission) } let swift: TeamLog.SfTeamJoinFromOobLinkDetails @@ -55213,6 +70154,7 @@ public class DBXTeamLogSfTeamJoinFromOobLinkDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -55235,6 +70177,7 @@ public class DBXTeamLogSfTeamJoinFromOobLinkType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -55257,6 +70200,7 @@ public class DBXTeamLogSfTeamJoinType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -55282,6 +70226,7 @@ public class DBXTeamLogSfTeamUninviteDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -55304,6 +70249,7 @@ public class DBXTeamLogSfTeamUninviteType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -55316,10 +70262,10 @@ public class DBXTeamLogSharedContentAddInviteesDetails: NSObject { public var sharedContentAccessLevel: DBXSharingAccessLevel { DBXSharingAccessLevel(swift: swift.sharedContentAccessLevel) } /// A list of invitees. @objc - public var invitees: [String] { swift.invitees } + public var invitees: Array { swift.invitees } @objc - public init(sharedContentAccessLevel: DBXSharingAccessLevel, invitees: [String]) { + public init(sharedContentAccessLevel: DBXSharingAccessLevel, invitees: Array) { self.swift = TeamLog.SharedContentAddInviteesDetails(sharedContentAccessLevel: sharedContentAccessLevel.swift, invitees: invitees) } @@ -55329,6 +70275,7 @@ public class DBXTeamLogSharedContentAddInviteesDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -55351,6 +70298,7 @@ public class DBXTeamLogSharedContentAddInviteesType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -55373,6 +70321,7 @@ public class DBXTeamLogSharedContentAddLinkExpiryDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -55395,6 +70344,7 @@ public class DBXTeamLogSharedContentAddLinkExpiryType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -55402,12 +70352,14 @@ public class DBXTeamLogSharedContentAddLinkExpiryType: NSObject { /// Added password to link for shared file/folder. @objc public class DBXTeamLogSharedContentAddLinkPasswordDetails: NSObject { + let swift: TeamLog.SharedContentAddLinkPasswordDetails public init(swift: TeamLog.SharedContentAddLinkPasswordDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -55430,6 +70382,7 @@ public class DBXTeamLogSharedContentAddLinkPasswordType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -55452,6 +70405,7 @@ public class DBXTeamLogSharedContentAddMemberDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -55474,6 +70428,7 @@ public class DBXTeamLogSharedContentAddMemberType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -55486,9 +70441,7 @@ public class DBXTeamLogSharedContentChangeDownloadsPolicyDetails: NSObject { public var newValue: DBXTeamLogDownloadPolicyType { DBXTeamLogDownloadPolicyType(swift: swift.newValue) } /// Previous downloads policy. Might be missing due to historical data gap. @objc - public var previousValue: DBXTeamLogDownloadPolicyType? { guard let swift = swift.previousValue else { return nil } - return DBXTeamLogDownloadPolicyType(swift: swift) - } + public var previousValue: DBXTeamLogDownloadPolicyType? { guard let swift = swift.previousValue else { return nil }; return DBXTeamLogDownloadPolicyType(swift: swift) } @objc public init(newValue: DBXTeamLogDownloadPolicyType, previousValue: DBXTeamLogDownloadPolicyType?) { @@ -55501,6 +70454,7 @@ public class DBXTeamLogSharedContentChangeDownloadsPolicyDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -55523,6 +70477,7 @@ public class DBXTeamLogSharedContentChangeDownloadsPolicyType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -55532,10 +70487,7 @@ public class DBXTeamLogSharedContentChangeDownloadsPolicyType: NSObject { public class DBXTeamLogSharedContentChangeInviteeRoleDetails: NSObject { /// Previous access level. Might be missing due to historical data gap. @objc - public var previousAccessLevel: DBXSharingAccessLevel? { guard let swift = swift.previousAccessLevel else { return nil } - return DBXSharingAccessLevel(swift: swift) - } - + public var previousAccessLevel: DBXSharingAccessLevel? { guard let swift = swift.previousAccessLevel else { return nil }; return DBXSharingAccessLevel(swift: swift) } /// New access level. @objc public var newAccessLevel: DBXSharingAccessLevel { DBXSharingAccessLevel(swift: swift.newAccessLevel) } @@ -55545,11 +70497,7 @@ public class DBXTeamLogSharedContentChangeInviteeRoleDetails: NSObject { @objc public init(newAccessLevel: DBXSharingAccessLevel, invitee: String, previousAccessLevel: DBXSharingAccessLevel?) { - self.swift = TeamLog.SharedContentChangeInviteeRoleDetails( - newAccessLevel: newAccessLevel.swift, - invitee: invitee, - previousAccessLevel: previousAccessLevel?.swift - ) + self.swift = TeamLog.SharedContentChangeInviteeRoleDetails(newAccessLevel: newAccessLevel.swift, invitee: invitee, previousAccessLevel: previousAccessLevel?.swift) } let swift: TeamLog.SharedContentChangeInviteeRoleDetails @@ -55558,6 +70506,7 @@ public class DBXTeamLogSharedContentChangeInviteeRoleDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -55580,6 +70529,7 @@ public class DBXTeamLogSharedContentChangeInviteeRoleType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -55592,9 +70542,7 @@ public class DBXTeamLogSharedContentChangeLinkAudienceDetails: NSObject { public var newValue: DBXSharingLinkAudience { DBXSharingLinkAudience(swift: swift.newValue) } /// Previous link audience value. @objc - public var previousValue: DBXSharingLinkAudience? { guard let swift = swift.previousValue else { return nil } - return DBXSharingLinkAudience(swift: swift) - } + public var previousValue: DBXSharingLinkAudience? { guard let swift = swift.previousValue else { return nil }; return DBXSharingLinkAudience(swift: swift) } @objc public init(newValue: DBXSharingLinkAudience, previousValue: DBXSharingLinkAudience?) { @@ -55607,6 +70555,7 @@ public class DBXTeamLogSharedContentChangeLinkAudienceDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -55629,6 +70578,7 @@ public class DBXTeamLogSharedContentChangeLinkAudienceType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -55654,6 +70604,7 @@ public class DBXTeamLogSharedContentChangeLinkExpiryDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -55676,6 +70627,7 @@ public class DBXTeamLogSharedContentChangeLinkExpiryType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -55683,12 +70635,14 @@ public class DBXTeamLogSharedContentChangeLinkExpiryType: NSObject { /// Changed link password of shared file/folder. @objc public class DBXTeamLogSharedContentChangeLinkPasswordDetails: NSObject { + let swift: TeamLog.SharedContentChangeLinkPasswordDetails public init(swift: TeamLog.SharedContentChangeLinkPasswordDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -55711,6 +70665,7 @@ public class DBXTeamLogSharedContentChangeLinkPasswordType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -55720,10 +70675,7 @@ public class DBXTeamLogSharedContentChangeLinkPasswordType: NSObject { public class DBXTeamLogSharedContentChangeMemberRoleDetails: NSObject { /// Previous access level. Might be missing due to historical data gap. @objc - public var previousAccessLevel: DBXSharingAccessLevel? { guard let swift = swift.previousAccessLevel else { return nil } - return DBXSharingAccessLevel(swift: swift) - } - + public var previousAccessLevel: DBXSharingAccessLevel? { guard let swift = swift.previousAccessLevel else { return nil }; return DBXSharingAccessLevel(swift: swift) } /// New access level. @objc public var newAccessLevel: DBXSharingAccessLevel { DBXSharingAccessLevel(swift: swift.newAccessLevel) } @@ -55739,6 +70691,7 @@ public class DBXTeamLogSharedContentChangeMemberRoleDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -55761,6 +70714,7 @@ public class DBXTeamLogSharedContentChangeMemberRoleType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -55773,9 +70727,7 @@ public class DBXTeamLogSharedContentChangeViewerInfoPolicyDetails: NSObject { public var newValue: DBXSharingViewerInfoPolicy { DBXSharingViewerInfoPolicy(swift: swift.newValue) } /// Previous view info policy. @objc - public var previousValue: DBXSharingViewerInfoPolicy? { guard let swift = swift.previousValue else { return nil } - return DBXSharingViewerInfoPolicy(swift: swift) - } + public var previousValue: DBXSharingViewerInfoPolicy? { guard let swift = swift.previousValue else { return nil }; return DBXSharingViewerInfoPolicy(swift: swift) } @objc public init(newValue: DBXSharingViewerInfoPolicy, previousValue: DBXSharingViewerInfoPolicy?) { @@ -55788,6 +70740,7 @@ public class DBXTeamLogSharedContentChangeViewerInfoPolicyDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -55810,6 +70763,7 @@ public class DBXTeamLogSharedContentChangeViewerInfoPolicyType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -55832,6 +70786,7 @@ public class DBXTeamLogSharedContentClaimInvitationDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -55854,6 +70809,7 @@ public class DBXTeamLogSharedContentClaimInvitationType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -55866,10 +70822,7 @@ public class DBXTeamLogSharedContentCopyDetails: NSObject { public var sharedContentLink: String { swift.sharedContentLink } /// The shared content owner. @objc - public var sharedContentOwner: DBXTeamLogUserLogInfo? { guard let swift = swift.sharedContentOwner else { return nil } - return DBXTeamLogUserLogInfo(swift: swift) - } - + public var sharedContentOwner: DBXTeamLogUserLogInfo? { guard let swift = swift.sharedContentOwner else { return nil }; return DBXTeamLogUserLogInfo(swift: swift) } /// Shared content access level. @objc public var sharedContentAccessLevel: DBXSharingAccessLevel { DBXSharingAccessLevel(swift: swift.sharedContentAccessLevel) } @@ -55878,18 +70831,8 @@ public class DBXTeamLogSharedContentCopyDetails: NSObject { public var destinationPath: String { swift.destinationPath } @objc - public init( - sharedContentLink: String, - sharedContentAccessLevel: DBXSharingAccessLevel, - destinationPath: String, - sharedContentOwner: DBXTeamLogUserLogInfo? - ) { - self.swift = TeamLog.SharedContentCopyDetails( - sharedContentLink: sharedContentLink, - sharedContentAccessLevel: sharedContentAccessLevel.swift, - destinationPath: destinationPath, - sharedContentOwner: sharedContentOwner?.swift - ) + public init(sharedContentLink: String, sharedContentAccessLevel: DBXSharingAccessLevel, destinationPath: String, sharedContentOwner: DBXTeamLogUserLogInfo?) { + self.swift = TeamLog.SharedContentCopyDetails(sharedContentLink: sharedContentLink, sharedContentAccessLevel: sharedContentAccessLevel.swift, destinationPath: destinationPath, sharedContentOwner: sharedContentOwner?.swift) } let swift: TeamLog.SharedContentCopyDetails @@ -55898,6 +70841,7 @@ public class DBXTeamLogSharedContentCopyDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -55920,6 +70864,7 @@ public class DBXTeamLogSharedContentCopyType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -55932,21 +70877,14 @@ public class DBXTeamLogSharedContentDownloadDetails: NSObject { public var sharedContentLink: String { swift.sharedContentLink } /// The shared content owner. @objc - public var sharedContentOwner: DBXTeamLogUserLogInfo? { guard let swift = swift.sharedContentOwner else { return nil } - return DBXTeamLogUserLogInfo(swift: swift) - } - + public var sharedContentOwner: DBXTeamLogUserLogInfo? { guard let swift = swift.sharedContentOwner else { return nil }; return DBXTeamLogUserLogInfo(swift: swift) } /// Shared content access level. @objc public var sharedContentAccessLevel: DBXSharingAccessLevel { DBXSharingAccessLevel(swift: swift.sharedContentAccessLevel) } @objc public init(sharedContentLink: String, sharedContentAccessLevel: DBXSharingAccessLevel, sharedContentOwner: DBXTeamLogUserLogInfo?) { - self.swift = TeamLog.SharedContentDownloadDetails( - sharedContentLink: sharedContentLink, - sharedContentAccessLevel: sharedContentAccessLevel.swift, - sharedContentOwner: sharedContentOwner?.swift - ) + self.swift = TeamLog.SharedContentDownloadDetails(sharedContentLink: sharedContentLink, sharedContentAccessLevel: sharedContentAccessLevel.swift, sharedContentOwner: sharedContentOwner?.swift) } let swift: TeamLog.SharedContentDownloadDetails @@ -55955,6 +70893,7 @@ public class DBXTeamLogSharedContentDownloadDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -55977,6 +70916,7 @@ public class DBXTeamLogSharedContentDownloadType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -55984,12 +70924,14 @@ public class DBXTeamLogSharedContentDownloadType: NSObject { /// Left shared file/folder. @objc public class DBXTeamLogSharedContentRelinquishMembershipDetails: NSObject { + let swift: TeamLog.SharedContentRelinquishMembershipDetails public init(swift: TeamLog.SharedContentRelinquishMembershipDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -56012,6 +70954,7 @@ public class DBXTeamLogSharedContentRelinquishMembershipType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -56021,10 +70964,10 @@ public class DBXTeamLogSharedContentRelinquishMembershipType: NSObject { public class DBXTeamLogSharedContentRemoveInviteesDetails: NSObject { /// A list of invitees. @objc - public var invitees: [String] { swift.invitees } + public var invitees: Array { swift.invitees } @objc - public init(invitees: [String]) { + public init(invitees: Array) { self.swift = TeamLog.SharedContentRemoveInviteesDetails(invitees: invitees) } @@ -56034,6 +70977,7 @@ public class DBXTeamLogSharedContentRemoveInviteesDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -56056,6 +71000,7 @@ public class DBXTeamLogSharedContentRemoveInviteesType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -56078,6 +71023,7 @@ public class DBXTeamLogSharedContentRemoveLinkExpiryDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -56100,6 +71046,7 @@ public class DBXTeamLogSharedContentRemoveLinkExpiryType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -56107,12 +71054,14 @@ public class DBXTeamLogSharedContentRemoveLinkExpiryType: NSObject { /// Removed link password of shared file/folder. @objc public class DBXTeamLogSharedContentRemoveLinkPasswordDetails: NSObject { + let swift: TeamLog.SharedContentRemoveLinkPasswordDetails public init(swift: TeamLog.SharedContentRemoveLinkPasswordDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -56135,6 +71084,7 @@ public class DBXTeamLogSharedContentRemoveLinkPasswordType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -56144,9 +71094,7 @@ public class DBXTeamLogSharedContentRemoveLinkPasswordType: NSObject { public class DBXTeamLogSharedContentRemoveMemberDetails: NSObject { /// Shared content access level. @objc - public var sharedContentAccessLevel: DBXSharingAccessLevel? { guard let swift = swift.sharedContentAccessLevel else { return nil } - return DBXSharingAccessLevel(swift: swift) - } + public var sharedContentAccessLevel: DBXSharingAccessLevel? { guard let swift = swift.sharedContentAccessLevel else { return nil }; return DBXSharingAccessLevel(swift: swift) } @objc public init(sharedContentAccessLevel: DBXSharingAccessLevel?) { @@ -56159,6 +71107,7 @@ public class DBXTeamLogSharedContentRemoveMemberDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -56181,6 +71130,7 @@ public class DBXTeamLogSharedContentRemoveMemberType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -56203,6 +71153,7 @@ public class DBXTeamLogSharedContentRequestAccessDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -56225,6 +71176,7 @@ public class DBXTeamLogSharedContentRequestAccessType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -56237,10 +71189,10 @@ public class DBXTeamLogSharedContentRestoreInviteesDetails: NSObject { public var sharedContentAccessLevel: DBXSharingAccessLevel { DBXSharingAccessLevel(swift: swift.sharedContentAccessLevel) } /// A list of invitees. @objc - public var invitees: [String] { swift.invitees } + public var invitees: Array { swift.invitees } @objc - public init(sharedContentAccessLevel: DBXSharingAccessLevel, invitees: [String]) { + public init(sharedContentAccessLevel: DBXSharingAccessLevel, invitees: Array) { self.swift = TeamLog.SharedContentRestoreInviteesDetails(sharedContentAccessLevel: sharedContentAccessLevel.swift, invitees: invitees) } @@ -56250,6 +71202,7 @@ public class DBXTeamLogSharedContentRestoreInviteesDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -56272,6 +71225,7 @@ public class DBXTeamLogSharedContentRestoreInviteesType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -56294,6 +71248,7 @@ public class DBXTeamLogSharedContentRestoreMemberDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -56316,6 +71271,7 @@ public class DBXTeamLogSharedContentRestoreMemberType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -56323,12 +71279,14 @@ public class DBXTeamLogSharedContentRestoreMemberType: NSObject { /// Unshared file/folder by clearing membership. @objc public class DBXTeamLogSharedContentUnshareDetails: NSObject { + let swift: TeamLog.SharedContentUnshareDetails public init(swift: TeamLog.SharedContentUnshareDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -56351,6 +71309,7 @@ public class DBXTeamLogSharedContentUnshareType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -56363,21 +71322,14 @@ public class DBXTeamLogSharedContentViewDetails: NSObject { public var sharedContentLink: String { swift.sharedContentLink } /// The shared content owner. @objc - public var sharedContentOwner: DBXTeamLogUserLogInfo? { guard let swift = swift.sharedContentOwner else { return nil } - return DBXTeamLogUserLogInfo(swift: swift) - } - + public var sharedContentOwner: DBXTeamLogUserLogInfo? { guard let swift = swift.sharedContentOwner else { return nil }; return DBXTeamLogUserLogInfo(swift: swift) } /// Shared content access level. @objc public var sharedContentAccessLevel: DBXSharingAccessLevel { DBXSharingAccessLevel(swift: swift.sharedContentAccessLevel) } @objc public init(sharedContentLink: String, sharedContentAccessLevel: DBXSharingAccessLevel, sharedContentOwner: DBXTeamLogUserLogInfo?) { - self.swift = TeamLog.SharedContentViewDetails( - sharedContentLink: sharedContentLink, - sharedContentAccessLevel: sharedContentAccessLevel.swift, - sharedContentOwner: sharedContentOwner?.swift - ) + self.swift = TeamLog.SharedContentViewDetails(sharedContentLink: sharedContentLink, sharedContentAccessLevel: sharedContentAccessLevel.swift, sharedContentOwner: sharedContentOwner?.swift) } let swift: TeamLog.SharedContentViewDetails @@ -56386,6 +71338,7 @@ public class DBXTeamLogSharedContentViewDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -56408,6 +71361,7 @@ public class DBXTeamLogSharedContentViewType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -56420,9 +71374,7 @@ public class DBXTeamLogSharedFolderChangeLinkPolicyDetails: NSObject { public var newValue: DBXSharingSharedLinkPolicy { DBXSharingSharedLinkPolicy(swift: swift.newValue) } /// Previous shared folder link policy. Might be missing due to historical data gap. @objc - public var previousValue: DBXSharingSharedLinkPolicy? { guard let swift = swift.previousValue else { return nil } - return DBXSharingSharedLinkPolicy(swift: swift) - } + public var previousValue: DBXSharingSharedLinkPolicy? { guard let swift = swift.previousValue else { return nil }; return DBXSharingSharedLinkPolicy(swift: swift) } @objc public init(newValue: DBXSharingSharedLinkPolicy, previousValue: DBXSharingSharedLinkPolicy?) { @@ -56435,6 +71387,7 @@ public class DBXTeamLogSharedFolderChangeLinkPolicyDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -56457,6 +71410,7 @@ public class DBXTeamLogSharedFolderChangeLinkPolicyType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -56469,9 +71423,7 @@ public class DBXTeamLogSharedFolderChangeMembersInheritancePolicyDetails: NSObje public var newValue: DBXTeamLogSharedFolderMembersInheritancePolicy { DBXTeamLogSharedFolderMembersInheritancePolicy(swift: swift.newValue) } /// Previous member inheritance policy. Might be missing due to historical data gap. @objc - public var previousValue: DBXTeamLogSharedFolderMembersInheritancePolicy? { guard let swift = swift.previousValue else { return nil } - return DBXTeamLogSharedFolderMembersInheritancePolicy(swift: swift) - } + public var previousValue: DBXTeamLogSharedFolderMembersInheritancePolicy? { guard let swift = swift.previousValue else { return nil }; return DBXTeamLogSharedFolderMembersInheritancePolicy(swift: swift) } @objc public init(newValue: DBXTeamLogSharedFolderMembersInheritancePolicy, previousValue: DBXTeamLogSharedFolderMembersInheritancePolicy?) { @@ -56484,6 +71436,7 @@ public class DBXTeamLogSharedFolderChangeMembersInheritancePolicyDetails: NSObje self.swift = swift } + @objc public override var description: String { swift.description } } @@ -56506,6 +71459,7 @@ public class DBXTeamLogSharedFolderChangeMembersInheritancePolicyType: NSObject self.swift = swift } + @objc public override var description: String { swift.description } } @@ -56518,9 +71472,7 @@ public class DBXTeamLogSharedFolderChangeMembersManagementPolicyDetails: NSObjec public var newValue: DBXSharingAclUpdatePolicy { DBXSharingAclUpdatePolicy(swift: swift.newValue) } /// Previous members management policy. Might be missing due to historical data gap. @objc - public var previousValue: DBXSharingAclUpdatePolicy? { guard let swift = swift.previousValue else { return nil } - return DBXSharingAclUpdatePolicy(swift: swift) - } + public var previousValue: DBXSharingAclUpdatePolicy? { guard let swift = swift.previousValue else { return nil }; return DBXSharingAclUpdatePolicy(swift: swift) } @objc public init(newValue: DBXSharingAclUpdatePolicy, previousValue: DBXSharingAclUpdatePolicy?) { @@ -56533,6 +71485,7 @@ public class DBXTeamLogSharedFolderChangeMembersManagementPolicyDetails: NSObjec self.swift = swift } + @objc public override var description: String { swift.description } } @@ -56555,6 +71508,7 @@ public class DBXTeamLogSharedFolderChangeMembersManagementPolicyType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -56567,9 +71521,7 @@ public class DBXTeamLogSharedFolderChangeMembersPolicyDetails: NSObject { public var newValue: DBXSharingMemberPolicy { DBXSharingMemberPolicy(swift: swift.newValue) } /// Previous external invite policy. Might be missing due to historical data gap. @objc - public var previousValue: DBXSharingMemberPolicy? { guard let swift = swift.previousValue else { return nil } - return DBXSharingMemberPolicy(swift: swift) - } + public var previousValue: DBXSharingMemberPolicy? { guard let swift = swift.previousValue else { return nil }; return DBXSharingMemberPolicy(swift: swift) } @objc public init(newValue: DBXSharingMemberPolicy, previousValue: DBXSharingMemberPolicy?) { @@ -56582,6 +71534,7 @@ public class DBXTeamLogSharedFolderChangeMembersPolicyDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -56604,6 +71557,7 @@ public class DBXTeamLogSharedFolderChangeMembersPolicyType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -56626,6 +71580,7 @@ public class DBXTeamLogSharedFolderCreateDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -56648,6 +71603,7 @@ public class DBXTeamLogSharedFolderCreateType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -56655,12 +71611,14 @@ public class DBXTeamLogSharedFolderCreateType: NSObject { /// Declined team member's invite to shared folder. @objc public class DBXTeamLogSharedFolderDeclineInvitationDetails: NSObject { + let swift: TeamLog.SharedFolderDeclineInvitationDetails public init(swift: TeamLog.SharedFolderDeclineInvitationDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -56683,6 +71641,7 @@ public class DBXTeamLogSharedFolderDeclineInvitationType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -56712,17 +71671,17 @@ public class DBXTeamLogSharedFolderMembersInheritancePolicy: NSObject { @objc public var asDontInheritMembers: DBXTeamLogSharedFolderMembersInheritancePolicyDontInheritMembers? { - self as? DBXTeamLogSharedFolderMembersInheritancePolicyDontInheritMembers + return self as? DBXTeamLogSharedFolderMembersInheritancePolicyDontInheritMembers } @objc public var asInheritMembers: DBXTeamLogSharedFolderMembersInheritancePolicyInheritMembers? { - self as? DBXTeamLogSharedFolderMembersInheritancePolicyInheritMembers + return self as? DBXTeamLogSharedFolderMembersInheritancePolicyInheritMembers } @objc public var asOther: DBXTeamLogSharedFolderMembersInheritancePolicyOther? { - self as? DBXTeamLogSharedFolderMembersInheritancePolicyOther + return self as? DBXTeamLogSharedFolderMembersInheritancePolicyOther } } @@ -56759,12 +71718,14 @@ public class DBXTeamLogSharedFolderMembersInheritancePolicyOther: DBXTeamLogShar /// Added shared folder to own Dropbox. @objc public class DBXTeamLogSharedFolderMountDetails: NSObject { + let swift: TeamLog.SharedFolderMountDetails public init(swift: TeamLog.SharedFolderMountDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -56787,6 +71748,7 @@ public class DBXTeamLogSharedFolderMountType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -56809,12 +71771,7 @@ public class DBXTeamLogSharedFolderNestDetails: NSObject { @objc public init(previousParentNsId: String?, newParentNsId: String?, previousNsPath: String?, newNsPath: String?) { - self.swift = TeamLog.SharedFolderNestDetails( - previousParentNsId: previousParentNsId, - newParentNsId: newParentNsId, - previousNsPath: previousNsPath, - newNsPath: newNsPath - ) + self.swift = TeamLog.SharedFolderNestDetails(previousParentNsId: previousParentNsId, newParentNsId: newParentNsId, previousNsPath: previousNsPath, newNsPath: newNsPath) } let swift: TeamLog.SharedFolderNestDetails @@ -56823,6 +71780,7 @@ public class DBXTeamLogSharedFolderNestDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -56845,6 +71803,7 @@ public class DBXTeamLogSharedFolderNestType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -56870,6 +71829,7 @@ public class DBXTeamLogSharedFolderTransferOwnershipDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -56892,6 +71852,7 @@ public class DBXTeamLogSharedFolderTransferOwnershipType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -56899,12 +71860,14 @@ public class DBXTeamLogSharedFolderTransferOwnershipType: NSObject { /// Deleted shared folder from Dropbox. @objc public class DBXTeamLogSharedFolderUnmountDetails: NSObject { + let swift: TeamLog.SharedFolderUnmountDetails public init(swift: TeamLog.SharedFolderUnmountDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -56927,6 +71890,91 @@ public class DBXTeamLogSharedFolderUnmountType: NSObject { self.swift = swift } + + @objc + public override var description: String { swift.description } +} + +/// Created shared folders report. +@objc +public class DBXTeamLogSharedFoldersCreateReportDetails: NSObject { + + let swift: TeamLog.SharedFoldersCreateReportDetails + + public init(swift: TeamLog.SharedFoldersCreateReportDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Couldn't generate shared folders report. +@objc +public class DBXTeamLogSharedFoldersCreateReportFailedDetails: NSObject { + /// Failure reason. + @objc + public var failureReason: DBXTeamTeamReportFailureReason { DBXTeamTeamReportFailureReason(swift: swift.failureReason) } + + @objc + public init(failureReason: DBXTeamTeamReportFailureReason) { + self.swift = TeamLog.SharedFoldersCreateReportFailedDetails(failureReason: failureReason.swift) + } + + let swift: TeamLog.SharedFoldersCreateReportFailedDetails + + public init(swift: TeamLog.SharedFoldersCreateReportFailedDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible SharedFoldersCreateReportFailedType struct +@objc +public class DBXTeamLogSharedFoldersCreateReportFailedType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.SharedFoldersCreateReportFailedType(description_: description_) + } + + let swift: TeamLog.SharedFoldersCreateReportFailedType + + public init(swift: TeamLog.SharedFoldersCreateReportFailedType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible SharedFoldersCreateReportType struct +@objc +public class DBXTeamLogSharedFoldersCreateReportType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.SharedFoldersCreateReportType(description_: description_) + } + + let swift: TeamLog.SharedFoldersCreateReportType + + public init(swift: TeamLog.SharedFoldersCreateReportType) { + self.swift = swift + } + + @objc public override var description: String { swift.description } } @@ -56958,22 +72006,22 @@ public class DBXTeamLogSharedLinkAccessLevel: NSObject { @objc public var asNone: DBXTeamLogSharedLinkAccessLevelNone? { - self as? DBXTeamLogSharedLinkAccessLevelNone + return self as? DBXTeamLogSharedLinkAccessLevelNone } @objc public var asReader: DBXTeamLogSharedLinkAccessLevelReader? { - self as? DBXTeamLogSharedLinkAccessLevelReader + return self as? DBXTeamLogSharedLinkAccessLevelReader } @objc public var asWriter: DBXTeamLogSharedLinkAccessLevelWriter? { - self as? DBXTeamLogSharedLinkAccessLevelWriter + return self as? DBXTeamLogSharedLinkAccessLevelWriter } @objc public var asOther: DBXTeamLogSharedLinkAccessLevelOther? { - self as? DBXTeamLogSharedLinkAccessLevelOther + return self as? DBXTeamLogSharedLinkAccessLevelOther } } @@ -57023,10 +72071,13 @@ public class DBXTeamLogSharedLinkAddExpiryDetails: NSObject { /// New shared link expiration date. @objc public var newValue: Date { swift.newValue } + /// Indicates whether this was a consolidation action by system. + @objc + public var isConsolidationAction: NSNumber? { swift.isConsolidationAction as NSNumber? } @objc - public init(newValue: Date) { - self.swift = TeamLog.SharedLinkAddExpiryDetails(newValue: newValue) + public init(newValue: Date, isConsolidationAction: NSNumber?) { + self.swift = TeamLog.SharedLinkAddExpiryDetails(newValue: newValue, isConsolidationAction: isConsolidationAction?.boolValue) } let swift: TeamLog.SharedLinkAddExpiryDetails @@ -57035,6 +72086,7 @@ public class DBXTeamLogSharedLinkAddExpiryDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -57057,6 +72109,7 @@ public class DBXTeamLogSharedLinkAddExpiryType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -57070,10 +72123,13 @@ public class DBXTeamLogSharedLinkChangeExpiryDetails: NSObject { /// Previous shared link expiration date. Might be missing due to historical data gap. @objc public var previousValue: Date? { swift.previousValue } + /// Indicates whether this was a consolidation action by system. + @objc + public var isConsolidationAction: NSNumber? { swift.isConsolidationAction as NSNumber? } @objc - public init(newValue: Date?, previousValue: Date?) { - self.swift = TeamLog.SharedLinkChangeExpiryDetails(newValue: newValue, previousValue: previousValue) + public init(newValue: Date?, previousValue: Date?, isConsolidationAction: NSNumber?) { + self.swift = TeamLog.SharedLinkChangeExpiryDetails(newValue: newValue, previousValue: previousValue, isConsolidationAction: isConsolidationAction?.boolValue) } let swift: TeamLog.SharedLinkChangeExpiryDetails @@ -57082,6 +72138,7 @@ public class DBXTeamLogSharedLinkChangeExpiryDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -57104,6 +72161,7 @@ public class DBXTeamLogSharedLinkChangeExpiryType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -57116,13 +72174,14 @@ public class DBXTeamLogSharedLinkChangeVisibilityDetails: NSObject { public var newValue: DBXTeamLogSharedLinkVisibility { DBXTeamLogSharedLinkVisibility(swift: swift.newValue) } /// Previous shared link visibility. Might be missing due to historical data gap. @objc - public var previousValue: DBXTeamLogSharedLinkVisibility? { guard let swift = swift.previousValue else { return nil } - return DBXTeamLogSharedLinkVisibility(swift: swift) - } + public var previousValue: DBXTeamLogSharedLinkVisibility? { guard let swift = swift.previousValue else { return nil }; return DBXTeamLogSharedLinkVisibility(swift: swift) } + /// Indicates whether this was a consolidation action by system. + @objc + public var isConsolidationAction: NSNumber? { swift.isConsolidationAction as NSNumber? } @objc - public init(newValue: DBXTeamLogSharedLinkVisibility, previousValue: DBXTeamLogSharedLinkVisibility?) { - self.swift = TeamLog.SharedLinkChangeVisibilityDetails(newValue: newValue.swift, previousValue: previousValue?.swift) + public init(newValue: DBXTeamLogSharedLinkVisibility, previousValue: DBXTeamLogSharedLinkVisibility?, isConsolidationAction: NSNumber?) { + self.swift = TeamLog.SharedLinkChangeVisibilityDetails(newValue: newValue.swift, previousValue: previousValue?.swift, isConsolidationAction: isConsolidationAction?.boolValue) } let swift: TeamLog.SharedLinkChangeVisibilityDetails @@ -57131,6 +72190,7 @@ public class DBXTeamLogSharedLinkChangeVisibilityDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -57153,6 +72213,7 @@ public class DBXTeamLogSharedLinkChangeVisibilityType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -57162,9 +72223,7 @@ public class DBXTeamLogSharedLinkChangeVisibilityType: NSObject { public class DBXTeamLogSharedLinkCopyDetails: NSObject { /// Shared link owner details. Might be missing due to historical data gap. @objc - public var sharedLinkOwner: DBXTeamLogUserLogInfo? { guard let swift = swift.sharedLinkOwner else { return nil } - return DBXTeamLogUserLogInfo(swift: swift) - } + public var sharedLinkOwner: DBXTeamLogUserLogInfo? { guard let swift = swift.sharedLinkOwner else { return nil }; return DBXTeamLogUserLogInfo(swift: swift) } @objc public init(sharedLinkOwner: DBXTeamLogUserLogInfo?) { @@ -57177,6 +72236,7 @@ public class DBXTeamLogSharedLinkCopyDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -57199,6 +72259,7 @@ public class DBXTeamLogSharedLinkCopyType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -57208,9 +72269,7 @@ public class DBXTeamLogSharedLinkCopyType: NSObject { public class DBXTeamLogSharedLinkCreateDetails: NSObject { /// Defines who can access the shared link. Might be missing due to historical data gap. @objc - public var sharedLinkAccessLevel: DBXTeamLogSharedLinkAccessLevel? { guard let swift = swift.sharedLinkAccessLevel else { return nil } - return DBXTeamLogSharedLinkAccessLevel(swift: swift) - } + public var sharedLinkAccessLevel: DBXTeamLogSharedLinkAccessLevel? { guard let swift = swift.sharedLinkAccessLevel else { return nil }; return DBXTeamLogSharedLinkAccessLevel(swift: swift) } @objc public init(sharedLinkAccessLevel: DBXTeamLogSharedLinkAccessLevel?) { @@ -57223,6 +72282,7 @@ public class DBXTeamLogSharedLinkCreateDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -57245,6 +72305,142 @@ public class DBXTeamLogSharedLinkCreateType: NSObject { self.swift = swift } + + @objc + public override var description: String { swift.description } +} + +/// Policy for deciding the default permissions granted through shared links +@objc +public class DBXTeamLogSharedLinkDefaultPermissionsPolicy: NSObject { + let swift: TeamLog.SharedLinkDefaultPermissionsPolicy + + public init(swift: TeamLog.SharedLinkDefaultPermissionsPolicy) { + self.swift = swift + } + + public static func factory(swift: TeamLog.SharedLinkDefaultPermissionsPolicy) -> DBXTeamLogSharedLinkDefaultPermissionsPolicy { + switch swift { + case .default_: + return DBXTeamLogSharedLinkDefaultPermissionsPolicyDefault_() + case .edit: + return DBXTeamLogSharedLinkDefaultPermissionsPolicyEdit() + case .view: + return DBXTeamLogSharedLinkDefaultPermissionsPolicyView() + case .other: + return DBXTeamLogSharedLinkDefaultPermissionsPolicyOther() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asDefault_: DBXTeamLogSharedLinkDefaultPermissionsPolicyDefault_? { + return self as? DBXTeamLogSharedLinkDefaultPermissionsPolicyDefault_ + } + + @objc + public var asEdit: DBXTeamLogSharedLinkDefaultPermissionsPolicyEdit? { + return self as? DBXTeamLogSharedLinkDefaultPermissionsPolicyEdit + } + + @objc + public var asView: DBXTeamLogSharedLinkDefaultPermissionsPolicyView? { + return self as? DBXTeamLogSharedLinkDefaultPermissionsPolicyView + } + + @objc + public var asOther: DBXTeamLogSharedLinkDefaultPermissionsPolicyOther? { + return self as? DBXTeamLogSharedLinkDefaultPermissionsPolicyOther + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogSharedLinkDefaultPermissionsPolicyDefault_: DBXTeamLogSharedLinkDefaultPermissionsPolicy { + @objc + public init() { + let swift = TeamLog.SharedLinkDefaultPermissionsPolicy.default_ + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogSharedLinkDefaultPermissionsPolicyEdit: DBXTeamLogSharedLinkDefaultPermissionsPolicy { + @objc + public init() { + let swift = TeamLog.SharedLinkDefaultPermissionsPolicy.edit + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogSharedLinkDefaultPermissionsPolicyView: DBXTeamLogSharedLinkDefaultPermissionsPolicy { + @objc + public init() { + let swift = TeamLog.SharedLinkDefaultPermissionsPolicy.view + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogSharedLinkDefaultPermissionsPolicyOther: DBXTeamLogSharedLinkDefaultPermissionsPolicy { + @objc + public init() { + let swift = TeamLog.SharedLinkDefaultPermissionsPolicy.other + super.init(swift: swift) + } +} + +/// Changed shared link default permissions policy for team. +@objc +public class DBXTeamLogSharedLinkDefaultPermissionsPolicyChangedDetails: NSObject { + /// To. + @objc + public var newValue: DBXTeamLogSharedLinkDefaultPermissionsPolicy { DBXTeamLogSharedLinkDefaultPermissionsPolicy(swift: swift.newValue) } + /// From. + @objc + public var previousValue: DBXTeamLogSharedLinkDefaultPermissionsPolicy { DBXTeamLogSharedLinkDefaultPermissionsPolicy(swift: swift.previousValue) } + + @objc + public init(newValue: DBXTeamLogSharedLinkDefaultPermissionsPolicy, previousValue: DBXTeamLogSharedLinkDefaultPermissionsPolicy) { + self.swift = TeamLog.SharedLinkDefaultPermissionsPolicyChangedDetails(newValue: newValue.swift, previousValue: previousValue.swift) + } + + let swift: TeamLog.SharedLinkDefaultPermissionsPolicyChangedDetails + + public init(swift: TeamLog.SharedLinkDefaultPermissionsPolicyChangedDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible SharedLinkDefaultPermissionsPolicyChangedType struct +@objc +public class DBXTeamLogSharedLinkDefaultPermissionsPolicyChangedType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.SharedLinkDefaultPermissionsPolicyChangedType(description_: description_) + } + + let swift: TeamLog.SharedLinkDefaultPermissionsPolicyChangedType + + public init(swift: TeamLog.SharedLinkDefaultPermissionsPolicyChangedType) { + self.swift = swift + } + + @objc public override var description: String { swift.description } } @@ -57254,9 +72450,7 @@ public class DBXTeamLogSharedLinkCreateType: NSObject { public class DBXTeamLogSharedLinkDisableDetails: NSObject { /// Shared link owner details. Might be missing due to historical data gap. @objc - public var sharedLinkOwner: DBXTeamLogUserLogInfo? { guard let swift = swift.sharedLinkOwner else { return nil } - return DBXTeamLogUserLogInfo(swift: swift) - } + public var sharedLinkOwner: DBXTeamLogUserLogInfo? { guard let swift = swift.sharedLinkOwner else { return nil }; return DBXTeamLogUserLogInfo(swift: swift) } @objc public init(sharedLinkOwner: DBXTeamLogUserLogInfo?) { @@ -57269,6 +72463,7 @@ public class DBXTeamLogSharedLinkDisableDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -57291,6 +72486,7 @@ public class DBXTeamLogSharedLinkDisableType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -57300,9 +72496,7 @@ public class DBXTeamLogSharedLinkDisableType: NSObject { public class DBXTeamLogSharedLinkDownloadDetails: NSObject { /// Shared link owner details. Might be missing due to historical data gap. @objc - public var sharedLinkOwner: DBXTeamLogUserLogInfo? { guard let swift = swift.sharedLinkOwner else { return nil } - return DBXTeamLogUserLogInfo(swift: swift) - } + public var sharedLinkOwner: DBXTeamLogUserLogInfo? { guard let swift = swift.sharedLinkOwner else { return nil }; return DBXTeamLogUserLogInfo(swift: swift) } @objc public init(sharedLinkOwner: DBXTeamLogUserLogInfo?) { @@ -57315,6 +72509,7 @@ public class DBXTeamLogSharedLinkDownloadDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -57337,6 +72532,7 @@ public class DBXTeamLogSharedLinkDownloadType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -57359,6 +72555,7 @@ public class DBXTeamLogSharedLinkRemoveExpiryDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -57381,6 +72578,45 @@ public class DBXTeamLogSharedLinkRemoveExpiryType: NSObject { self.swift = swift } + + @objc + public override var description: String { swift.description } +} + +/// Removed link visitor. +@objc +public class DBXTeamLogSharedLinkRemoveVisitorDetails: NSObject { + + let swift: TeamLog.SharedLinkRemoveVisitorDetails + + public init(swift: TeamLog.SharedLinkRemoveVisitorDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible SharedLinkRemoveVisitorType struct +@objc +public class DBXTeamLogSharedLinkRemoveVisitorType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.SharedLinkRemoveVisitorType(description_: description_) + } + + let swift: TeamLog.SharedLinkRemoveVisitorType + + public init(swift: TeamLog.SharedLinkRemoveVisitorType) { + self.swift = swift + } + + @objc public override var description: String { swift.description } } @@ -57400,11 +72636,7 @@ public class DBXTeamLogSharedLinkSettingsAddExpirationDetails: NSObject { @objc public init(sharedContentAccessLevel: DBXSharingAccessLevel, sharedContentLink: String?, newValue: Date?) { - self.swift = TeamLog.SharedLinkSettingsAddExpirationDetails( - sharedContentAccessLevel: sharedContentAccessLevel.swift, - sharedContentLink: sharedContentLink, - newValue: newValue - ) + self.swift = TeamLog.SharedLinkSettingsAddExpirationDetails(sharedContentAccessLevel: sharedContentAccessLevel.swift, sharedContentLink: sharedContentLink, newValue: newValue) } let swift: TeamLog.SharedLinkSettingsAddExpirationDetails @@ -57413,6 +72645,7 @@ public class DBXTeamLogSharedLinkSettingsAddExpirationDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -57435,6 +72668,7 @@ public class DBXTeamLogSharedLinkSettingsAddExpirationType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -57451,10 +72685,7 @@ public class DBXTeamLogSharedLinkSettingsAddPasswordDetails: NSObject { @objc public init(sharedContentAccessLevel: DBXSharingAccessLevel, sharedContentLink: String?) { - self.swift = TeamLog.SharedLinkSettingsAddPasswordDetails( - sharedContentAccessLevel: sharedContentAccessLevel.swift, - sharedContentLink: sharedContentLink - ) + self.swift = TeamLog.SharedLinkSettingsAddPasswordDetails(sharedContentAccessLevel: sharedContentAccessLevel.swift, sharedContentLink: sharedContentLink) } let swift: TeamLog.SharedLinkSettingsAddPasswordDetails @@ -57463,6 +72694,7 @@ public class DBXTeamLogSharedLinkSettingsAddPasswordDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -57485,6 +72717,7 @@ public class DBXTeamLogSharedLinkSettingsAddPasswordType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -57501,10 +72734,7 @@ public class DBXTeamLogSharedLinkSettingsAllowDownloadDisabledDetails: NSObject @objc public init(sharedContentAccessLevel: DBXSharingAccessLevel, sharedContentLink: String?) { - self.swift = TeamLog.SharedLinkSettingsAllowDownloadDisabledDetails( - sharedContentAccessLevel: sharedContentAccessLevel.swift, - sharedContentLink: sharedContentLink - ) + self.swift = TeamLog.SharedLinkSettingsAllowDownloadDisabledDetails(sharedContentAccessLevel: sharedContentAccessLevel.swift, sharedContentLink: sharedContentLink) } let swift: TeamLog.SharedLinkSettingsAllowDownloadDisabledDetails @@ -57513,6 +72743,7 @@ public class DBXTeamLogSharedLinkSettingsAllowDownloadDisabledDetails: NSObject self.swift = swift } + @objc public override var description: String { swift.description } } @@ -57535,6 +72766,7 @@ public class DBXTeamLogSharedLinkSettingsAllowDownloadDisabledType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -57551,10 +72783,7 @@ public class DBXTeamLogSharedLinkSettingsAllowDownloadEnabledDetails: NSObject { @objc public init(sharedContentAccessLevel: DBXSharingAccessLevel, sharedContentLink: String?) { - self.swift = TeamLog.SharedLinkSettingsAllowDownloadEnabledDetails( - sharedContentAccessLevel: sharedContentAccessLevel.swift, - sharedContentLink: sharedContentLink - ) + self.swift = TeamLog.SharedLinkSettingsAllowDownloadEnabledDetails(sharedContentAccessLevel: sharedContentAccessLevel.swift, sharedContentLink: sharedContentLink) } let swift: TeamLog.SharedLinkSettingsAllowDownloadEnabledDetails @@ -57563,6 +72792,7 @@ public class DBXTeamLogSharedLinkSettingsAllowDownloadEnabledDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -57585,6 +72815,7 @@ public class DBXTeamLogSharedLinkSettingsAllowDownloadEnabledType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -57603,23 +72834,11 @@ public class DBXTeamLogSharedLinkSettingsChangeAudienceDetails: NSObject { public var newValue: DBXSharingLinkAudience { DBXSharingLinkAudience(swift: swift.newValue) } /// Previous link audience value. @objc - public var previousValue: DBXSharingLinkAudience? { guard let swift = swift.previousValue else { return nil } - return DBXSharingLinkAudience(swift: swift) - } + public var previousValue: DBXSharingLinkAudience? { guard let swift = swift.previousValue else { return nil }; return DBXSharingLinkAudience(swift: swift) } @objc - public init( - sharedContentAccessLevel: DBXSharingAccessLevel, - newValue: DBXSharingLinkAudience, - sharedContentLink: String?, - previousValue: DBXSharingLinkAudience? - ) { - self.swift = TeamLog.SharedLinkSettingsChangeAudienceDetails( - sharedContentAccessLevel: sharedContentAccessLevel.swift, - newValue: newValue.swift, - sharedContentLink: sharedContentLink, - previousValue: previousValue?.swift - ) + public init(sharedContentAccessLevel: DBXSharingAccessLevel, newValue: DBXSharingLinkAudience, sharedContentLink: String?, previousValue: DBXSharingLinkAudience?) { + self.swift = TeamLog.SharedLinkSettingsChangeAudienceDetails(sharedContentAccessLevel: sharedContentAccessLevel.swift, newValue: newValue.swift, sharedContentLink: sharedContentLink, previousValue: previousValue?.swift) } let swift: TeamLog.SharedLinkSettingsChangeAudienceDetails @@ -57628,6 +72847,7 @@ public class DBXTeamLogSharedLinkSettingsChangeAudienceDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -57650,6 +72870,7 @@ public class DBXTeamLogSharedLinkSettingsChangeAudienceType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -57672,12 +72893,7 @@ public class DBXTeamLogSharedLinkSettingsChangeExpirationDetails: NSObject { @objc public init(sharedContentAccessLevel: DBXSharingAccessLevel, sharedContentLink: String?, newValue: Date?, previousValue: Date?) { - self.swift = TeamLog.SharedLinkSettingsChangeExpirationDetails( - sharedContentAccessLevel: sharedContentAccessLevel.swift, - sharedContentLink: sharedContentLink, - newValue: newValue, - previousValue: previousValue - ) + self.swift = TeamLog.SharedLinkSettingsChangeExpirationDetails(sharedContentAccessLevel: sharedContentAccessLevel.swift, sharedContentLink: sharedContentLink, newValue: newValue, previousValue: previousValue) } let swift: TeamLog.SharedLinkSettingsChangeExpirationDetails @@ -57686,6 +72902,7 @@ public class DBXTeamLogSharedLinkSettingsChangeExpirationDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -57708,6 +72925,7 @@ public class DBXTeamLogSharedLinkSettingsChangeExpirationType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -57724,10 +72942,7 @@ public class DBXTeamLogSharedLinkSettingsChangePasswordDetails: NSObject { @objc public init(sharedContentAccessLevel: DBXSharingAccessLevel, sharedContentLink: String?) { - self.swift = TeamLog.SharedLinkSettingsChangePasswordDetails( - sharedContentAccessLevel: sharedContentAccessLevel.swift, - sharedContentLink: sharedContentLink - ) + self.swift = TeamLog.SharedLinkSettingsChangePasswordDetails(sharedContentAccessLevel: sharedContentAccessLevel.swift, sharedContentLink: sharedContentLink) } let swift: TeamLog.SharedLinkSettingsChangePasswordDetails @@ -57736,6 +72951,7 @@ public class DBXTeamLogSharedLinkSettingsChangePasswordDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -57758,6 +72974,7 @@ public class DBXTeamLogSharedLinkSettingsChangePasswordType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -57777,11 +72994,7 @@ public class DBXTeamLogSharedLinkSettingsRemoveExpirationDetails: NSObject { @objc public init(sharedContentAccessLevel: DBXSharingAccessLevel, sharedContentLink: String?, previousValue: Date?) { - self.swift = TeamLog.SharedLinkSettingsRemoveExpirationDetails( - sharedContentAccessLevel: sharedContentAccessLevel.swift, - sharedContentLink: sharedContentLink, - previousValue: previousValue - ) + self.swift = TeamLog.SharedLinkSettingsRemoveExpirationDetails(sharedContentAccessLevel: sharedContentAccessLevel.swift, sharedContentLink: sharedContentLink, previousValue: previousValue) } let swift: TeamLog.SharedLinkSettingsRemoveExpirationDetails @@ -57790,6 +73003,7 @@ public class DBXTeamLogSharedLinkSettingsRemoveExpirationDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -57812,6 +73026,7 @@ public class DBXTeamLogSharedLinkSettingsRemoveExpirationType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -57828,10 +73043,7 @@ public class DBXTeamLogSharedLinkSettingsRemovePasswordDetails: NSObject { @objc public init(sharedContentAccessLevel: DBXSharingAccessLevel, sharedContentLink: String?) { - self.swift = TeamLog.SharedLinkSettingsRemovePasswordDetails( - sharedContentAccessLevel: sharedContentAccessLevel.swift, - sharedContentLink: sharedContentLink - ) + self.swift = TeamLog.SharedLinkSettingsRemovePasswordDetails(sharedContentAccessLevel: sharedContentAccessLevel.swift, sharedContentLink: sharedContentLink) } let swift: TeamLog.SharedLinkSettingsRemovePasswordDetails @@ -57840,6 +73052,7 @@ public class DBXTeamLogSharedLinkSettingsRemovePasswordDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -57862,6 +73075,7 @@ public class DBXTeamLogSharedLinkSettingsRemovePasswordType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -57871,17 +73085,14 @@ public class DBXTeamLogSharedLinkSettingsRemovePasswordType: NSObject { public class DBXTeamLogSharedLinkShareDetails: NSObject { /// Shared link owner details. Might be missing due to historical data gap. @objc - public var sharedLinkOwner: DBXTeamLogUserLogInfo? { guard let swift = swift.sharedLinkOwner else { return nil } - return DBXTeamLogUserLogInfo(swift: swift) - } - + public var sharedLinkOwner: DBXTeamLogUserLogInfo? { guard let swift = swift.sharedLinkOwner else { return nil }; return DBXTeamLogUserLogInfo(swift: swift) } /// Users without a Dropbox account that were added as shared link audience. @objc - public var externalUsers: [DBXTeamLogExternalUserLogInfo]? { swift.externalUsers?.map { DBXTeamLogExternalUserLogInfo(swift: $0) } } + public var externalUsers: Array? { swift.externalUsers?.map { DBXTeamLogExternalUserLogInfo(swift: $0) } } @objc - public init(sharedLinkOwner: DBXTeamLogUserLogInfo?, externalUsers: [DBXTeamLogExternalUserLogInfo]?) { - self.swift = TeamLog.SharedLinkShareDetails(sharedLinkOwner: sharedLinkOwner?.swift, externalUsers: externalUsers?.map(\.swift)) + public init(sharedLinkOwner: DBXTeamLogUserLogInfo?, externalUsers: Array?) { + self.swift = TeamLog.SharedLinkShareDetails(sharedLinkOwner: sharedLinkOwner?.swift, externalUsers: externalUsers?.map { $0.swift }) } let swift: TeamLog.SharedLinkShareDetails @@ -57890,6 +73101,7 @@ public class DBXTeamLogSharedLinkShareDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -57912,6 +73124,7 @@ public class DBXTeamLogSharedLinkShareType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -57921,9 +73134,7 @@ public class DBXTeamLogSharedLinkShareType: NSObject { public class DBXTeamLogSharedLinkViewDetails: NSObject { /// Shared link owner details. Might be missing due to historical data gap. @objc - public var sharedLinkOwner: DBXTeamLogUserLogInfo? { guard let swift = swift.sharedLinkOwner else { return nil } - return DBXTeamLogUserLogInfo(swift: swift) - } + public var sharedLinkOwner: DBXTeamLogUserLogInfo? { guard let swift = swift.sharedLinkOwner else { return nil }; return DBXTeamLogUserLogInfo(swift: swift) } @objc public init(sharedLinkOwner: DBXTeamLogUserLogInfo?) { @@ -57936,6 +73147,7 @@ public class DBXTeamLogSharedLinkViewDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -57958,6 +73170,7 @@ public class DBXTeamLogSharedLinkViewType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -57991,27 +73204,27 @@ public class DBXTeamLogSharedLinkVisibility: NSObject { @objc public var asNoOne: DBXTeamLogSharedLinkVisibilityNoOne? { - self as? DBXTeamLogSharedLinkVisibilityNoOne + return self as? DBXTeamLogSharedLinkVisibilityNoOne } @objc public var asPassword: DBXTeamLogSharedLinkVisibilityPassword? { - self as? DBXTeamLogSharedLinkVisibilityPassword + return self as? DBXTeamLogSharedLinkVisibilityPassword } @objc public var asPublic_: DBXTeamLogSharedLinkVisibilityPublic_? { - self as? DBXTeamLogSharedLinkVisibilityPublic_ + return self as? DBXTeamLogSharedLinkVisibilityPublic_ } @objc public var asTeamOnly: DBXTeamLogSharedLinkVisibilityTeamOnly? { - self as? DBXTeamLogSharedLinkVisibilityTeamOnly + return self as? DBXTeamLogSharedLinkVisibilityTeamOnly } @objc public var asOther: DBXTeamLogSharedLinkVisibilityOther? { - self as? DBXTeamLogSharedLinkVisibilityOther + return self as? DBXTeamLogSharedLinkVisibilityOther } } @@ -58068,12 +73281,14 @@ public class DBXTeamLogSharedLinkVisibilityOther: DBXTeamLogSharedLinkVisibility /// Opened shared Paper doc. @objc public class DBXTeamLogSharedNoteOpenedDetails: NSObject { + let swift: TeamLog.SharedNoteOpenedDetails public init(swift: TeamLog.SharedNoteOpenedDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -58096,6 +73311,7 @@ public class DBXTeamLogSharedNoteOpenedType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -58108,9 +73324,7 @@ public class DBXTeamLogSharingChangeFolderJoinPolicyDetails: NSObject { public var newValue: DBXTeamLogSharingFolderJoinPolicy { DBXTeamLogSharingFolderJoinPolicy(swift: swift.newValue) } /// Previous external join policy. Might be missing due to historical data gap. @objc - public var previousValue: DBXTeamLogSharingFolderJoinPolicy? { guard let swift = swift.previousValue else { return nil } - return DBXTeamLogSharingFolderJoinPolicy(swift: swift) - } + public var previousValue: DBXTeamLogSharingFolderJoinPolicy? { guard let swift = swift.previousValue else { return nil }; return DBXTeamLogSharingFolderJoinPolicy(swift: swift) } @objc public init(newValue: DBXTeamLogSharingFolderJoinPolicy, previousValue: DBXTeamLogSharingFolderJoinPolicy?) { @@ -58123,6 +73337,7 @@ public class DBXTeamLogSharingChangeFolderJoinPolicyDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -58145,6 +73360,7 @@ public class DBXTeamLogSharingChangeFolderJoinPolicyType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -58157,9 +73373,7 @@ public class DBXTeamLogSharingChangeLinkAllowChangeExpirationPolicyDetails: NSOb public var newValue: DBXTeamLogEnforceLinkPasswordPolicy { DBXTeamLogEnforceLinkPasswordPolicy(swift: swift.newValue) } /// From. @objc - public var previousValue: DBXTeamLogEnforceLinkPasswordPolicy? { guard let swift = swift.previousValue else { return nil } - return DBXTeamLogEnforceLinkPasswordPolicy(swift: swift) - } + public var previousValue: DBXTeamLogEnforceLinkPasswordPolicy? { guard let swift = swift.previousValue else { return nil }; return DBXTeamLogEnforceLinkPasswordPolicy(swift: swift) } @objc public init(newValue: DBXTeamLogEnforceLinkPasswordPolicy, previousValue: DBXTeamLogEnforceLinkPasswordPolicy?) { @@ -58172,6 +73386,7 @@ public class DBXTeamLogSharingChangeLinkAllowChangeExpirationPolicyDetails: NSOb self.swift = swift } + @objc public override var description: String { swift.description } } @@ -58194,6 +73409,7 @@ public class DBXTeamLogSharingChangeLinkAllowChangeExpirationPolicyType: NSObjec self.swift = swift } + @objc public override var description: String { swift.description } } @@ -58206,9 +73422,7 @@ public class DBXTeamLogSharingChangeLinkDefaultExpirationPolicyDetails: NSObject public var newValue: DBXTeamLogDefaultLinkExpirationDaysPolicy { DBXTeamLogDefaultLinkExpirationDaysPolicy(swift: swift.newValue) } /// From. @objc - public var previousValue: DBXTeamLogDefaultLinkExpirationDaysPolicy? { guard let swift = swift.previousValue else { return nil } - return DBXTeamLogDefaultLinkExpirationDaysPolicy(swift: swift) - } + public var previousValue: DBXTeamLogDefaultLinkExpirationDaysPolicy? { guard let swift = swift.previousValue else { return nil }; return DBXTeamLogDefaultLinkExpirationDaysPolicy(swift: swift) } @objc public init(newValue: DBXTeamLogDefaultLinkExpirationDaysPolicy, previousValue: DBXTeamLogDefaultLinkExpirationDaysPolicy?) { @@ -58221,6 +73435,7 @@ public class DBXTeamLogSharingChangeLinkDefaultExpirationPolicyDetails: NSObject self.swift = swift } + @objc public override var description: String { swift.description } } @@ -58243,6 +73458,7 @@ public class DBXTeamLogSharingChangeLinkDefaultExpirationPolicyType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -58255,9 +73471,7 @@ public class DBXTeamLogSharingChangeLinkEnforcePasswordPolicyDetails: NSObject { public var newValue: DBXTeamLogChangeLinkExpirationPolicy { DBXTeamLogChangeLinkExpirationPolicy(swift: swift.newValue) } /// From. @objc - public var previousValue: DBXTeamLogChangeLinkExpirationPolicy? { guard let swift = swift.previousValue else { return nil } - return DBXTeamLogChangeLinkExpirationPolicy(swift: swift) - } + public var previousValue: DBXTeamLogChangeLinkExpirationPolicy? { guard let swift = swift.previousValue else { return nil }; return DBXTeamLogChangeLinkExpirationPolicy(swift: swift) } @objc public init(newValue: DBXTeamLogChangeLinkExpirationPolicy, previousValue: DBXTeamLogChangeLinkExpirationPolicy?) { @@ -58270,6 +73484,7 @@ public class DBXTeamLogSharingChangeLinkEnforcePasswordPolicyDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -58292,6 +73507,7 @@ public class DBXTeamLogSharingChangeLinkEnforcePasswordPolicyType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -58305,9 +73521,7 @@ public class DBXTeamLogSharingChangeLinkPolicyDetails: NSObject { public var newValue: DBXTeamLogSharingLinkPolicy { DBXTeamLogSharingLinkPolicy(swift: swift.newValue) } /// Previous external link accessibility policy. Might be missing due to historical data gap. @objc - public var previousValue: DBXTeamLogSharingLinkPolicy? { guard let swift = swift.previousValue else { return nil } - return DBXTeamLogSharingLinkPolicy(swift: swift) - } + public var previousValue: DBXTeamLogSharingLinkPolicy? { guard let swift = swift.previousValue else { return nil }; return DBXTeamLogSharingLinkPolicy(swift: swift) } @objc public init(newValue: DBXTeamLogSharingLinkPolicy, previousValue: DBXTeamLogSharingLinkPolicy?) { @@ -58320,6 +73534,7 @@ public class DBXTeamLogSharingChangeLinkPolicyDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -58342,6 +73557,7 @@ public class DBXTeamLogSharingChangeLinkPolicyType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -58354,9 +73570,7 @@ public class DBXTeamLogSharingChangeMemberPolicyDetails: NSObject { public var newValue: DBXTeamLogSharingMemberPolicy { DBXTeamLogSharingMemberPolicy(swift: swift.newValue) } /// Previous external invite policy. Might be missing due to historical data gap. @objc - public var previousValue: DBXTeamLogSharingMemberPolicy? { guard let swift = swift.previousValue else { return nil } - return DBXTeamLogSharingMemberPolicy(swift: swift) - } + public var previousValue: DBXTeamLogSharingMemberPolicy? { guard let swift = swift.previousValue else { return nil }; return DBXTeamLogSharingMemberPolicy(swift: swift) } @objc public init(newValue: DBXTeamLogSharingMemberPolicy, previousValue: DBXTeamLogSharingMemberPolicy?) { @@ -58369,6 +73583,7 @@ public class DBXTeamLogSharingChangeMemberPolicyDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -58391,6 +73606,7 @@ public class DBXTeamLogSharingChangeMemberPolicyType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -58420,17 +73636,17 @@ public class DBXTeamLogSharingFolderJoinPolicy: NSObject { @objc public var asFromAnyone: DBXTeamLogSharingFolderJoinPolicyFromAnyone? { - self as? DBXTeamLogSharingFolderJoinPolicyFromAnyone + return self as? DBXTeamLogSharingFolderJoinPolicyFromAnyone } @objc public var asFromTeamOnly: DBXTeamLogSharingFolderJoinPolicyFromTeamOnly? { - self as? DBXTeamLogSharingFolderJoinPolicyFromTeamOnly + return self as? DBXTeamLogSharingFolderJoinPolicyFromTeamOnly } @objc public var asOther: DBXTeamLogSharingFolderJoinPolicyOther? { - self as? DBXTeamLogSharingFolderJoinPolicyOther + return self as? DBXTeamLogSharingFolderJoinPolicyOther } } @@ -58493,27 +73709,27 @@ public class DBXTeamLogSharingLinkPolicy: NSObject { @objc public var asDefaultNoOne: DBXTeamLogSharingLinkPolicyDefaultNoOne? { - self as? DBXTeamLogSharingLinkPolicyDefaultNoOne + return self as? DBXTeamLogSharingLinkPolicyDefaultNoOne } @objc public var asDefaultPrivate: DBXTeamLogSharingLinkPolicyDefaultPrivate? { - self as? DBXTeamLogSharingLinkPolicyDefaultPrivate + return self as? DBXTeamLogSharingLinkPolicyDefaultPrivate } @objc public var asDefaultPublic: DBXTeamLogSharingLinkPolicyDefaultPublic? { - self as? DBXTeamLogSharingLinkPolicyDefaultPublic + return self as? DBXTeamLogSharingLinkPolicyDefaultPublic } @objc public var asOnlyPrivate: DBXTeamLogSharingLinkPolicyOnlyPrivate? { - self as? DBXTeamLogSharingLinkPolicyOnlyPrivate + return self as? DBXTeamLogSharingLinkPolicyOnlyPrivate } @objc public var asOther: DBXTeamLogSharingLinkPolicyOther? { - self as? DBXTeamLogSharingLinkPolicyOther + return self as? DBXTeamLogSharingLinkPolicyOther } } @@ -58594,22 +73810,22 @@ public class DBXTeamLogSharingMemberPolicy: NSObject { @objc public var asAllow: DBXTeamLogSharingMemberPolicyAllow? { - self as? DBXTeamLogSharingMemberPolicyAllow + return self as? DBXTeamLogSharingMemberPolicyAllow } @objc public var asForbid: DBXTeamLogSharingMemberPolicyForbid? { - self as? DBXTeamLogSharingMemberPolicyForbid + return self as? DBXTeamLogSharingMemberPolicyForbid } @objc public var asForbidWithExclusions: DBXTeamLogSharingMemberPolicyForbidWithExclusions? { - self as? DBXTeamLogSharingMemberPolicyForbidWithExclusions + return self as? DBXTeamLogSharingMemberPolicyForbidWithExclusions } @objc public var asOther: DBXTeamLogSharingMemberPolicyOther? { - self as? DBXTeamLogSharingMemberPolicyOther + return self as? DBXTeamLogSharingMemberPolicyOther } } @@ -58658,9 +73874,7 @@ public class DBXTeamLogSharingMemberPolicyOther: DBXTeamLogSharingMemberPolicy { public class DBXTeamLogShmodelDisableDownloadsDetails: NSObject { /// Shared link owner details. Might be missing due to historical data gap. @objc - public var sharedLinkOwner: DBXTeamLogUserLogInfo? { guard let swift = swift.sharedLinkOwner else { return nil } - return DBXTeamLogUserLogInfo(swift: swift) - } + public var sharedLinkOwner: DBXTeamLogUserLogInfo? { guard let swift = swift.sharedLinkOwner else { return nil }; return DBXTeamLogUserLogInfo(swift: swift) } @objc public init(sharedLinkOwner: DBXTeamLogUserLogInfo?) { @@ -58673,6 +73887,7 @@ public class DBXTeamLogShmodelDisableDownloadsDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -58695,6 +73910,7 @@ public class DBXTeamLogShmodelDisableDownloadsType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -58704,9 +73920,7 @@ public class DBXTeamLogShmodelDisableDownloadsType: NSObject { public class DBXTeamLogShmodelEnableDownloadsDetails: NSObject { /// Shared link owner details. Might be missing due to historical data gap. @objc - public var sharedLinkOwner: DBXTeamLogUserLogInfo? { guard let swift = swift.sharedLinkOwner else { return nil } - return DBXTeamLogUserLogInfo(swift: swift) - } + public var sharedLinkOwner: DBXTeamLogUserLogInfo? { guard let swift = swift.sharedLinkOwner else { return nil }; return DBXTeamLogUserLogInfo(swift: swift) } @objc public init(sharedLinkOwner: DBXTeamLogUserLogInfo?) { @@ -58719,6 +73933,7 @@ public class DBXTeamLogShmodelEnableDownloadsDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -58741,6 +73956,7 @@ public class DBXTeamLogShmodelEnableDownloadsType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -58748,12 +73964,14 @@ public class DBXTeamLogShmodelEnableDownloadsType: NSObject { /// Shared link with group. @objc public class DBXTeamLogShmodelGroupShareDetails: NSObject { + let swift: TeamLog.ShmodelGroupShareDetails public init(swift: TeamLog.ShmodelGroupShareDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -58776,6 +73994,7 @@ public class DBXTeamLogShmodelGroupShareType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -58798,6 +74017,7 @@ public class DBXTeamLogShowcaseAccessGrantedDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -58820,6 +74040,7 @@ public class DBXTeamLogShowcaseAccessGrantedType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -58842,6 +74063,7 @@ public class DBXTeamLogShowcaseAddMemberDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -58864,6 +74086,7 @@ public class DBXTeamLogShowcaseAddMemberType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -58886,6 +74109,7 @@ public class DBXTeamLogShowcaseArchivedDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -58908,6 +74132,7 @@ public class DBXTeamLogShowcaseArchivedType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -58933,6 +74158,7 @@ public class DBXTeamLogShowcaseChangeDownloadPolicyDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -58955,6 +74181,7 @@ public class DBXTeamLogShowcaseChangeDownloadPolicyType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -58980,6 +74207,7 @@ public class DBXTeamLogShowcaseChangeEnabledPolicyDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -59002,6 +74230,7 @@ public class DBXTeamLogShowcaseChangeEnabledPolicyType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -59027,6 +74256,7 @@ public class DBXTeamLogShowcaseChangeExternalSharingPolicyDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -59049,6 +74279,7 @@ public class DBXTeamLogShowcaseChangeExternalSharingPolicyType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -59071,6 +74302,7 @@ public class DBXTeamLogShowcaseCreatedDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -59093,6 +74325,7 @@ public class DBXTeamLogShowcaseCreatedType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -59118,6 +74351,7 @@ public class DBXTeamLogShowcaseDeleteCommentDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -59140,6 +74374,7 @@ public class DBXTeamLogShowcaseDeleteCommentType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -59165,6 +74400,7 @@ public class DBXTeamLogShowcaseDocumentLogInfo: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -59194,17 +74430,17 @@ public class DBXTeamLogShowcaseDownloadPolicy: NSObject { @objc public var asDisabled: DBXTeamLogShowcaseDownloadPolicyDisabled? { - self as? DBXTeamLogShowcaseDownloadPolicyDisabled + return self as? DBXTeamLogShowcaseDownloadPolicyDisabled } @objc public var asEnabled: DBXTeamLogShowcaseDownloadPolicyEnabled? { - self as? DBXTeamLogShowcaseDownloadPolicyEnabled + return self as? DBXTeamLogShowcaseDownloadPolicyEnabled } @objc public var asOther: DBXTeamLogShowcaseDownloadPolicyOther? { - self as? DBXTeamLogShowcaseDownloadPolicyOther + return self as? DBXTeamLogShowcaseDownloadPolicyOther } } @@ -59259,6 +74495,7 @@ public class DBXTeamLogShowcaseEditCommentDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -59281,6 +74518,7 @@ public class DBXTeamLogShowcaseEditCommentType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -59303,6 +74541,7 @@ public class DBXTeamLogShowcaseEditedDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -59325,6 +74564,7 @@ public class DBXTeamLogShowcaseEditedType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -59354,17 +74594,17 @@ public class DBXTeamLogShowcaseEnabledPolicy: NSObject { @objc public var asDisabled: DBXTeamLogShowcaseEnabledPolicyDisabled? { - self as? DBXTeamLogShowcaseEnabledPolicyDisabled + return self as? DBXTeamLogShowcaseEnabledPolicyDisabled } @objc public var asEnabled: DBXTeamLogShowcaseEnabledPolicyEnabled? { - self as? DBXTeamLogShowcaseEnabledPolicyEnabled + return self as? DBXTeamLogShowcaseEnabledPolicyEnabled } @objc public var asOther: DBXTeamLogShowcaseEnabledPolicyOther? { - self as? DBXTeamLogShowcaseEnabledPolicyOther + return self as? DBXTeamLogShowcaseEnabledPolicyOther } } @@ -59423,17 +74663,17 @@ public class DBXTeamLogShowcaseExternalSharingPolicy: NSObject { @objc public var asDisabled: DBXTeamLogShowcaseExternalSharingPolicyDisabled? { - self as? DBXTeamLogShowcaseExternalSharingPolicyDisabled + return self as? DBXTeamLogShowcaseExternalSharingPolicyDisabled } @objc public var asEnabled: DBXTeamLogShowcaseExternalSharingPolicyEnabled? { - self as? DBXTeamLogShowcaseExternalSharingPolicyEnabled + return self as? DBXTeamLogShowcaseExternalSharingPolicyEnabled } @objc public var asOther: DBXTeamLogShowcaseExternalSharingPolicyOther? { - self as? DBXTeamLogShowcaseExternalSharingPolicyOther + return self as? DBXTeamLogShowcaseExternalSharingPolicyOther } } @@ -59485,6 +74725,7 @@ public class DBXTeamLogShowcaseFileAddedDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -59507,6 +74748,7 @@ public class DBXTeamLogShowcaseFileAddedType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -59532,6 +74774,7 @@ public class DBXTeamLogShowcaseFileDownloadDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -59554,6 +74797,7 @@ public class DBXTeamLogShowcaseFileDownloadType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -59576,6 +74820,7 @@ public class DBXTeamLogShowcaseFileRemovedDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -59598,6 +74843,7 @@ public class DBXTeamLogShowcaseFileRemovedType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -59620,6 +74866,7 @@ public class DBXTeamLogShowcaseFileViewDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -59642,6 +74889,7 @@ public class DBXTeamLogShowcaseFileViewType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -59664,6 +74912,7 @@ public class DBXTeamLogShowcasePermanentlyDeletedDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -59686,6 +74935,7 @@ public class DBXTeamLogShowcasePermanentlyDeletedType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -59711,6 +74961,7 @@ public class DBXTeamLogShowcasePostCommentDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -59733,6 +74984,7 @@ public class DBXTeamLogShowcasePostCommentType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -59755,6 +75007,7 @@ public class DBXTeamLogShowcaseRemoveMemberDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -59777,6 +75030,7 @@ public class DBXTeamLogShowcaseRemoveMemberType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -59799,6 +75053,7 @@ public class DBXTeamLogShowcaseRenamedDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -59821,6 +75076,7 @@ public class DBXTeamLogShowcaseRenamedType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -59843,6 +75099,7 @@ public class DBXTeamLogShowcaseRequestAccessDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -59865,6 +75122,7 @@ public class DBXTeamLogShowcaseRequestAccessType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -59890,6 +75148,7 @@ public class DBXTeamLogShowcaseResolveCommentDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -59912,6 +75171,7 @@ public class DBXTeamLogShowcaseResolveCommentType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -59934,6 +75194,7 @@ public class DBXTeamLogShowcaseRestoredDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -59956,6 +75217,7 @@ public class DBXTeamLogShowcaseRestoredType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -59978,6 +75240,7 @@ public class DBXTeamLogShowcaseTrashedDeprecatedDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -60000,6 +75263,7 @@ public class DBXTeamLogShowcaseTrashedDeprecatedType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -60022,6 +75286,7 @@ public class DBXTeamLogShowcaseTrashedDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -60044,6 +75309,7 @@ public class DBXTeamLogShowcaseTrashedType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -60069,6 +75335,7 @@ public class DBXTeamLogShowcaseUnresolveCommentDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -60091,6 +75358,7 @@ public class DBXTeamLogShowcaseUnresolveCommentType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -60113,6 +75381,7 @@ public class DBXTeamLogShowcaseUntrashedDeprecatedDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -60135,6 +75404,7 @@ public class DBXTeamLogShowcaseUntrashedDeprecatedType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -60157,6 +75427,7 @@ public class DBXTeamLogShowcaseUntrashedDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -60179,6 +75450,7 @@ public class DBXTeamLogShowcaseUntrashedType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -60201,6 +75473,7 @@ public class DBXTeamLogShowcaseViewDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -60223,6 +75496,142 @@ public class DBXTeamLogShowcaseViewType: NSObject { self.swift = swift } + + @objc + public override var description: String { swift.description } +} + +/// Policy for deciding whether team users can share Sign content externally +@objc +public class DBXTeamLogSignExternalSharingPolicy: NSObject { + let swift: TeamLog.SignExternalSharingPolicy + + public init(swift: TeamLog.SignExternalSharingPolicy) { + self.swift = swift + } + + public static func factory(swift: TeamLog.SignExternalSharingPolicy) -> DBXTeamLogSignExternalSharingPolicy { + switch swift { + case .default_: + return DBXTeamLogSignExternalSharingPolicyDefault_() + case .disabled: + return DBXTeamLogSignExternalSharingPolicyDisabled() + case .enabled: + return DBXTeamLogSignExternalSharingPolicyEnabled() + case .other: + return DBXTeamLogSignExternalSharingPolicyOther() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asDefault_: DBXTeamLogSignExternalSharingPolicyDefault_? { + return self as? DBXTeamLogSignExternalSharingPolicyDefault_ + } + + @objc + public var asDisabled: DBXTeamLogSignExternalSharingPolicyDisabled? { + return self as? DBXTeamLogSignExternalSharingPolicyDisabled + } + + @objc + public var asEnabled: DBXTeamLogSignExternalSharingPolicyEnabled? { + return self as? DBXTeamLogSignExternalSharingPolicyEnabled + } + + @objc + public var asOther: DBXTeamLogSignExternalSharingPolicyOther? { + return self as? DBXTeamLogSignExternalSharingPolicyOther + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogSignExternalSharingPolicyDefault_: DBXTeamLogSignExternalSharingPolicy { + @objc + public init() { + let swift = TeamLog.SignExternalSharingPolicy.default_ + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogSignExternalSharingPolicyDisabled: DBXTeamLogSignExternalSharingPolicy { + @objc + public init() { + let swift = TeamLog.SignExternalSharingPolicy.disabled + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogSignExternalSharingPolicyEnabled: DBXTeamLogSignExternalSharingPolicy { + @objc + public init() { + let swift = TeamLog.SignExternalSharingPolicy.enabled + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogSignExternalSharingPolicyOther: DBXTeamLogSignExternalSharingPolicy { + @objc + public init() { + let swift = TeamLog.SignExternalSharingPolicy.other + super.init(swift: swift) + } +} + +/// Changed Signatures external sharing policy for team. +@objc +public class DBXTeamLogSignExternalSharingPolicyChangedDetails: NSObject { + /// To. + @objc + public var newValue: DBXTeamLogSignExternalSharingPolicy { DBXTeamLogSignExternalSharingPolicy(swift: swift.newValue) } + /// From. + @objc + public var previousValue: DBXTeamLogSignExternalSharingPolicy { DBXTeamLogSignExternalSharingPolicy(swift: swift.previousValue) } + + @objc + public init(newValue: DBXTeamLogSignExternalSharingPolicy, previousValue: DBXTeamLogSignExternalSharingPolicy) { + self.swift = TeamLog.SignExternalSharingPolicyChangedDetails(newValue: newValue.swift, previousValue: previousValue.swift) + } + + let swift: TeamLog.SignExternalSharingPolicyChangedDetails + + public init(swift: TeamLog.SignExternalSharingPolicyChangedDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible SignExternalSharingPolicyChangedType struct +@objc +public class DBXTeamLogSignExternalSharingPolicyChangedType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.SignExternalSharingPolicyChangedType(description_: description_) + } + + let swift: TeamLog.SignExternalSharingPolicyChangedType + + public init(swift: TeamLog.SignExternalSharingPolicyChangedType) { + self.swift = swift + } + + @objc public override var description: String { swift.description } } @@ -60230,12 +75639,14 @@ public class DBXTeamLogShowcaseViewType: NSObject { /// Ended admin sign-in-as session. @objc public class DBXTeamLogSignInAsSessionEndDetails: NSObject { + let swift: TeamLog.SignInAsSessionEndDetails public init(swift: TeamLog.SignInAsSessionEndDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -60258,6 +75669,7 @@ public class DBXTeamLogSignInAsSessionEndType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -60265,12 +75677,14 @@ public class DBXTeamLogSignInAsSessionEndType: NSObject { /// Started admin sign-in-as session. @objc public class DBXTeamLogSignInAsSessionStartDetails: NSObject { + let swift: TeamLog.SignInAsSessionStartDetails public init(swift: TeamLog.SignInAsSessionStartDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -60293,6 +75707,517 @@ public class DBXTeamLogSignInAsSessionStartType: NSObject { self.swift = swift } + + @objc + public override var description: String { swift.description } +} + +/// Canceled signature request. +@objc +public class DBXTeamLogSignSignatureRequestCanceledDetails: NSObject { + /// The recipient of the signature request. + @objc + public var recipient: String { swift.recipient } + /// The name of the related file. + @objc + public var fileName: String { swift.fileName } + + @objc + public init(recipient: String, fileName: String) { + self.swift = TeamLog.SignSignatureRequestCanceledDetails(recipient: recipient, fileName: fileName) + } + + let swift: TeamLog.SignSignatureRequestCanceledDetails + + public init(swift: TeamLog.SignSignatureRequestCanceledDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible SignSignatureRequestCanceledType struct +@objc +public class DBXTeamLogSignSignatureRequestCanceledType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.SignSignatureRequestCanceledType(description_: description_) + } + + let swift: TeamLog.SignSignatureRequestCanceledType + + public init(swift: TeamLog.SignSignatureRequestCanceledType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Completed signature request. +@objc +public class DBXTeamLogSignSignatureRequestCompletedDetails: NSObject { + /// The recipient of the signature request. + @objc + public var recipient: String { swift.recipient } + /// The name of the related file. + @objc + public var fileName: String { swift.fileName } + + @objc + public init(recipient: String, fileName: String) { + self.swift = TeamLog.SignSignatureRequestCompletedDetails(recipient: recipient, fileName: fileName) + } + + let swift: TeamLog.SignSignatureRequestCompletedDetails + + public init(swift: TeamLog.SignSignatureRequestCompletedDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible SignSignatureRequestCompletedType struct +@objc +public class DBXTeamLogSignSignatureRequestCompletedType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.SignSignatureRequestCompletedType(description_: description_) + } + + let swift: TeamLog.SignSignatureRequestCompletedType + + public init(swift: TeamLog.SignSignatureRequestCompletedType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Declined signature request. +@objc +public class DBXTeamLogSignSignatureRequestDeclinedDetails: NSObject { + /// The recipient of the signature request. + @objc + public var recipient: String { swift.recipient } + /// The name of the related file. + @objc + public var fileName: String { swift.fileName } + + @objc + public init(recipient: String, fileName: String) { + self.swift = TeamLog.SignSignatureRequestDeclinedDetails(recipient: recipient, fileName: fileName) + } + + let swift: TeamLog.SignSignatureRequestDeclinedDetails + + public init(swift: TeamLog.SignSignatureRequestDeclinedDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible SignSignatureRequestDeclinedType struct +@objc +public class DBXTeamLogSignSignatureRequestDeclinedType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.SignSignatureRequestDeclinedType(description_: description_) + } + + let swift: TeamLog.SignSignatureRequestDeclinedType + + public init(swift: TeamLog.SignSignatureRequestDeclinedType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Opened signature request. +@objc +public class DBXTeamLogSignSignatureRequestOpenedDetails: NSObject { + /// The recipient of the signature request. + @objc + public var recipient: String { swift.recipient } + /// The name of the related file. + @objc + public var fileName: String { swift.fileName } + + @objc + public init(recipient: String, fileName: String) { + self.swift = TeamLog.SignSignatureRequestOpenedDetails(recipient: recipient, fileName: fileName) + } + + let swift: TeamLog.SignSignatureRequestOpenedDetails + + public init(swift: TeamLog.SignSignatureRequestOpenedDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible SignSignatureRequestOpenedType struct +@objc +public class DBXTeamLogSignSignatureRequestOpenedType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.SignSignatureRequestOpenedType(description_: description_) + } + + let swift: TeamLog.SignSignatureRequestOpenedType + + public init(swift: TeamLog.SignSignatureRequestOpenedType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Sent signature request reminder. +@objc +public class DBXTeamLogSignSignatureRequestReminderSentDetails: NSObject { + /// The recipient of the signature request. + @objc + public var recipient: String { swift.recipient } + /// The name of the related file. + @objc + public var fileName: String { swift.fileName } + + @objc + public init(recipient: String, fileName: String) { + self.swift = TeamLog.SignSignatureRequestReminderSentDetails(recipient: recipient, fileName: fileName) + } + + let swift: TeamLog.SignSignatureRequestReminderSentDetails + + public init(swift: TeamLog.SignSignatureRequestReminderSentDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible SignSignatureRequestReminderSentType struct +@objc +public class DBXTeamLogSignSignatureRequestReminderSentType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.SignSignatureRequestReminderSentType(description_: description_) + } + + let swift: TeamLog.SignSignatureRequestReminderSentType + + public init(swift: TeamLog.SignSignatureRequestReminderSentType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Sent signature request. +@objc +public class DBXTeamLogSignSignatureRequestSentDetails: NSObject { + /// The recipient of the signature request. + @objc + public var recipient: String { swift.recipient } + /// The name of the related file. + @objc + public var fileName: String { swift.fileName } + + @objc + public init(recipient: String, fileName: String) { + self.swift = TeamLog.SignSignatureRequestSentDetails(recipient: recipient, fileName: fileName) + } + + let swift: TeamLog.SignSignatureRequestSentDetails + + public init(swift: TeamLog.SignSignatureRequestSentDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible SignSignatureRequestSentType struct +@objc +public class DBXTeamLogSignSignatureRequestSentType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.SignSignatureRequestSentType(description_: description_) + } + + let swift: TeamLog.SignSignatureRequestSentType + + public init(swift: TeamLog.SignSignatureRequestSentType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Created template. +@objc +public class DBXTeamLogSignTemplateCreatedDetails: NSObject { + /// The access level of the template. + @objc + public var accessLevel: String { swift.accessLevel } + /// The name of the related file. + @objc + public var fileName: String { swift.fileName } + + @objc + public init(accessLevel: String, fileName: String) { + self.swift = TeamLog.SignTemplateCreatedDetails(accessLevel: accessLevel, fileName: fileName) + } + + let swift: TeamLog.SignTemplateCreatedDetails + + public init(swift: TeamLog.SignTemplateCreatedDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible SignTemplateCreatedType struct +@objc +public class DBXTeamLogSignTemplateCreatedType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.SignTemplateCreatedType(description_: description_) + } + + let swift: TeamLog.SignTemplateCreatedType + + public init(swift: TeamLog.SignTemplateCreatedType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Changed template creation permission. +@objc +public class DBXTeamLogSignTemplateCreationPermissionChangedDetails: NSObject { + /// New template creation permission policy. + @objc + public var newValue: DBXTeamLogSignTemplateCreationPermissionPolicy { DBXTeamLogSignTemplateCreationPermissionPolicy(swift: swift.newValue) } + /// Previous template creation permission policy. + @objc + public var previousValue: DBXTeamLogSignTemplateCreationPermissionPolicy { DBXTeamLogSignTemplateCreationPermissionPolicy(swift: swift.previousValue) } + + @objc + public init(newValue: DBXTeamLogSignTemplateCreationPermissionPolicy, previousValue: DBXTeamLogSignTemplateCreationPermissionPolicy) { + self.swift = TeamLog.SignTemplateCreationPermissionChangedDetails(newValue: newValue.swift, previousValue: previousValue.swift) + } + + let swift: TeamLog.SignTemplateCreationPermissionChangedDetails + + public init(swift: TeamLog.SignTemplateCreationPermissionChangedDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible SignTemplateCreationPermissionChangedType struct +@objc +public class DBXTeamLogSignTemplateCreationPermissionChangedType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.SignTemplateCreationPermissionChangedType(description_: description_) + } + + let swift: TeamLog.SignTemplateCreationPermissionChangedType + + public init(swift: TeamLog.SignTemplateCreationPermissionChangedType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Policy for controlling if team members can create templates +@objc +public class DBXTeamLogSignTemplateCreationPermissionPolicy: NSObject { + let swift: TeamLog.SignTemplateCreationPermissionPolicy + + public init(swift: TeamLog.SignTemplateCreationPermissionPolicy) { + self.swift = swift + } + + public static func factory(swift: TeamLog.SignTemplateCreationPermissionPolicy) -> DBXTeamLogSignTemplateCreationPermissionPolicy { + switch swift { + case .disabled: + return DBXTeamLogSignTemplateCreationPermissionPolicyDisabled() + case .enabled: + return DBXTeamLogSignTemplateCreationPermissionPolicyEnabled() + case .other: + return DBXTeamLogSignTemplateCreationPermissionPolicyOther() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asDisabled: DBXTeamLogSignTemplateCreationPermissionPolicyDisabled? { + return self as? DBXTeamLogSignTemplateCreationPermissionPolicyDisabled + } + + @objc + public var asEnabled: DBXTeamLogSignTemplateCreationPermissionPolicyEnabled? { + return self as? DBXTeamLogSignTemplateCreationPermissionPolicyEnabled + } + + @objc + public var asOther: DBXTeamLogSignTemplateCreationPermissionPolicyOther? { + return self as? DBXTeamLogSignTemplateCreationPermissionPolicyOther + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogSignTemplateCreationPermissionPolicyDisabled: DBXTeamLogSignTemplateCreationPermissionPolicy { + @objc + public init() { + let swift = TeamLog.SignTemplateCreationPermissionPolicy.disabled + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogSignTemplateCreationPermissionPolicyEnabled: DBXTeamLogSignTemplateCreationPermissionPolicy { + @objc + public init() { + let swift = TeamLog.SignTemplateCreationPermissionPolicy.enabled + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogSignTemplateCreationPermissionPolicyOther: DBXTeamLogSignTemplateCreationPermissionPolicy { + @objc + public init() { + let swift = TeamLog.SignTemplateCreationPermissionPolicy.other + super.init(swift: swift) + } +} + +/// Shared template. +@objc +public class DBXTeamLogSignTemplateSharedDetails: NSObject { + /// The access level of the template. + @objc + public var accessLevel: String { swift.accessLevel } + /// The name of the related file. + @objc + public var fileName: String { swift.fileName } + + @objc + public init(accessLevel: String, fileName: String) { + self.swift = TeamLog.SignTemplateSharedDetails(accessLevel: accessLevel, fileName: fileName) + } + + let swift: TeamLog.SignTemplateSharedDetails + + public init(swift: TeamLog.SignTemplateSharedDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible SignTemplateSharedType struct +@objc +public class DBXTeamLogSignTemplateSharedType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.SignTemplateSharedType(description_: description_) + } + + let swift: TeamLog.SignTemplateSharedType + + public init(swift: TeamLog.SignTemplateSharedType) { + self.swift = swift + } + + @objc public override var description: String { swift.description } } @@ -60302,15 +76227,10 @@ public class DBXTeamLogSignInAsSessionStartType: NSObject { public class DBXTeamLogSmartSyncChangePolicyDetails: NSObject { /// New smart sync policy. @objc - public var newValue: DBXTeamPoliciesSmartSyncPolicy? { guard let swift = swift.newValue else { return nil } - return DBXTeamPoliciesSmartSyncPolicy(swift: swift) - } - + public var newValue: DBXTeamPoliciesSmartSyncPolicy? { guard let swift = swift.newValue else { return nil }; return DBXTeamPoliciesSmartSyncPolicy(swift: swift) } /// Previous smart sync policy. @objc - public var previousValue: DBXTeamPoliciesSmartSyncPolicy? { guard let swift = swift.previousValue else { return nil } - return DBXTeamPoliciesSmartSyncPolicy(swift: swift) - } + public var previousValue: DBXTeamPoliciesSmartSyncPolicy? { guard let swift = swift.previousValue else { return nil }; return DBXTeamPoliciesSmartSyncPolicy(swift: swift) } @objc public init(newValue: DBXTeamPoliciesSmartSyncPolicy?, previousValue: DBXTeamPoliciesSmartSyncPolicy?) { @@ -60323,6 +76243,7 @@ public class DBXTeamLogSmartSyncChangePolicyDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -60345,6 +76266,7 @@ public class DBXTeamLogSmartSyncChangePolicyType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -60352,12 +76274,14 @@ public class DBXTeamLogSmartSyncChangePolicyType: NSObject { /// Created Smart Sync non-admin devices report. @objc public class DBXTeamLogSmartSyncCreateAdminPrivilegeReportDetails: NSObject { + let swift: TeamLog.SmartSyncCreateAdminPrivilegeReportDetails public init(swift: TeamLog.SmartSyncCreateAdminPrivilegeReportDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -60380,6 +76304,7 @@ public class DBXTeamLogSmartSyncCreateAdminPrivilegeReportType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -60405,6 +76330,7 @@ public class DBXTeamLogSmartSyncNotOptOutDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -60427,6 +76353,7 @@ public class DBXTeamLogSmartSyncNotOptOutType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -60452,6 +76379,7 @@ public class DBXTeamLogSmartSyncOptOutDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -60481,17 +76409,17 @@ public class DBXTeamLogSmartSyncOptOutPolicy: NSObject { @objc public var asDefault_: DBXTeamLogSmartSyncOptOutPolicyDefault_? { - self as? DBXTeamLogSmartSyncOptOutPolicyDefault_ + return self as? DBXTeamLogSmartSyncOptOutPolicyDefault_ } @objc public var asOptedOut: DBXTeamLogSmartSyncOptOutPolicyOptedOut? { - self as? DBXTeamLogSmartSyncOptOutPolicyOptedOut + return self as? DBXTeamLogSmartSyncOptOutPolicyOptedOut } @objc public var asOther: DBXTeamLogSmartSyncOptOutPolicyOther? { - self as? DBXTeamLogSmartSyncOptOutPolicyOther + return self as? DBXTeamLogSmartSyncOptOutPolicyOther } } @@ -60543,6 +76471,7 @@ public class DBXTeamLogSmartSyncOptOutType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -60568,6 +76497,7 @@ public class DBXTeamLogSmarterSmartSyncPolicyChangedDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -60590,6 +76520,7 @@ public class DBXTeamLogSmarterSmartSyncPolicyChangedType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -60621,22 +76552,22 @@ public class DBXTeamLogSpaceCapsType: NSObject { @objc public var asHard: DBXTeamLogSpaceCapsTypeHard? { - self as? DBXTeamLogSpaceCapsTypeHard + return self as? DBXTeamLogSpaceCapsTypeHard } @objc public var asOff: DBXTeamLogSpaceCapsTypeOff? { - self as? DBXTeamLogSpaceCapsTypeOff + return self as? DBXTeamLogSpaceCapsTypeOff } @objc public var asSoft: DBXTeamLogSpaceCapsTypeSoft? { - self as? DBXTeamLogSpaceCapsTypeSoft + return self as? DBXTeamLogSpaceCapsTypeSoft } @objc public var asOther: DBXTeamLogSpaceCapsTypeOther? { - self as? DBXTeamLogSpaceCapsTypeOther + return self as? DBXTeamLogSpaceCapsTypeOther } } @@ -60707,22 +76638,22 @@ public class DBXTeamLogSpaceLimitsStatus: NSObject { @objc public var asNearQuota: DBXTeamLogSpaceLimitsStatusNearQuota? { - self as? DBXTeamLogSpaceLimitsStatusNearQuota + return self as? DBXTeamLogSpaceLimitsStatusNearQuota } @objc public var asOverQuota: DBXTeamLogSpaceLimitsStatusOverQuota? { - self as? DBXTeamLogSpaceLimitsStatusOverQuota + return self as? DBXTeamLogSpaceLimitsStatusOverQuota } @objc public var asWithinQuota: DBXTeamLogSpaceLimitsStatusWithinQuota? { - self as? DBXTeamLogSpaceLimitsStatusWithinQuota + return self as? DBXTeamLogSpaceLimitsStatusWithinQuota } @objc public var asOther: DBXTeamLogSpaceLimitsStatusOther? { - self as? DBXTeamLogSpaceLimitsStatusOther + return self as? DBXTeamLogSpaceLimitsStatusOther } } @@ -60784,6 +76715,7 @@ public class DBXTeamLogSsoAddCertDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -60806,6 +76738,7 @@ public class DBXTeamLogSsoAddCertType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -60828,6 +76761,7 @@ public class DBXTeamLogSsoAddLoginUrlDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -60850,6 +76784,7 @@ public class DBXTeamLogSsoAddLoginUrlType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -60872,6 +76807,7 @@ public class DBXTeamLogSsoAddLogoutUrlDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -60894,6 +76830,7 @@ public class DBXTeamLogSsoAddLogoutUrlType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -60903,20 +76840,14 @@ public class DBXTeamLogSsoAddLogoutUrlType: NSObject { public class DBXTeamLogSsoChangeCertDetails: NSObject { /// Previous SSO certificate details. Might be missing due to historical data gap. @objc - public var previousCertificateDetails: DBXTeamLogCertificate? { guard let swift = swift.previousCertificateDetails else { return nil } - return DBXTeamLogCertificate(swift: swift) - } - + public var previousCertificateDetails: DBXTeamLogCertificate? { guard let swift = swift.previousCertificateDetails else { return nil }; return DBXTeamLogCertificate(swift: swift) } /// New SSO certificate details. @objc public var newCertificateDetails: DBXTeamLogCertificate { DBXTeamLogCertificate(swift: swift.newCertificateDetails) } @objc public init(newCertificateDetails: DBXTeamLogCertificate, previousCertificateDetails: DBXTeamLogCertificate?) { - self.swift = TeamLog.SsoChangeCertDetails( - newCertificateDetails: newCertificateDetails.swift, - previousCertificateDetails: previousCertificateDetails?.swift - ) + self.swift = TeamLog.SsoChangeCertDetails(newCertificateDetails: newCertificateDetails.swift, previousCertificateDetails: previousCertificateDetails?.swift) } let swift: TeamLog.SsoChangeCertDetails @@ -60925,6 +76856,7 @@ public class DBXTeamLogSsoChangeCertDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -60947,6 +76879,7 @@ public class DBXTeamLogSsoChangeCertType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -60972,6 +76905,7 @@ public class DBXTeamLogSsoChangeLoginUrlDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -60994,6 +76928,7 @@ public class DBXTeamLogSsoChangeLoginUrlType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -61019,6 +76954,7 @@ public class DBXTeamLogSsoChangeLogoutUrlDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -61041,6 +76977,7 @@ public class DBXTeamLogSsoChangeLogoutUrlType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -61053,9 +76990,7 @@ public class DBXTeamLogSsoChangePolicyDetails: NSObject { public var newValue: DBXTeamPoliciesSsoPolicy { DBXTeamPoliciesSsoPolicy(swift: swift.newValue) } /// Previous single sign-on policy. Might be missing due to historical data gap. @objc - public var previousValue: DBXTeamPoliciesSsoPolicy? { guard let swift = swift.previousValue else { return nil } - return DBXTeamPoliciesSsoPolicy(swift: swift) - } + public var previousValue: DBXTeamPoliciesSsoPolicy? { guard let swift = swift.previousValue else { return nil }; return DBXTeamPoliciesSsoPolicy(swift: swift) } @objc public init(newValue: DBXTeamPoliciesSsoPolicy, previousValue: DBXTeamPoliciesSsoPolicy?) { @@ -61068,6 +77003,7 @@ public class DBXTeamLogSsoChangePolicyDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -61090,6 +77026,7 @@ public class DBXTeamLogSsoChangePolicyType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -61115,6 +77052,7 @@ public class DBXTeamLogSsoChangeSamlIdentityModeDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -61137,6 +77075,7 @@ public class DBXTeamLogSsoChangeSamlIdentityModeType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -61159,6 +77098,7 @@ public class DBXTeamLogSsoErrorDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -61181,6 +77121,7 @@ public class DBXTeamLogSsoErrorType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -61188,12 +77129,14 @@ public class DBXTeamLogSsoErrorType: NSObject { /// Removed X.509 certificate for SSO. @objc public class DBXTeamLogSsoRemoveCertDetails: NSObject { + let swift: TeamLog.SsoRemoveCertDetails public init(swift: TeamLog.SsoRemoveCertDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -61216,6 +77159,7 @@ public class DBXTeamLogSsoRemoveCertType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -61238,6 +77182,7 @@ public class DBXTeamLogSsoRemoveLoginUrlDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -61260,6 +77205,7 @@ public class DBXTeamLogSsoRemoveLoginUrlType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -61282,6 +77228,7 @@ public class DBXTeamLogSsoRemoveLogoutUrlDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -61304,6 +77251,142 @@ public class DBXTeamLogSsoRemoveLogoutUrlType: NSObject { self.swift = swift } + + @objc + public override var description: String { swift.description } +} + +/// Policy for whether a team's content can be reached via Stacks owned by other teams +@objc +public class DBXTeamLogStackCrossTeamAccessPolicy: NSObject { + let swift: TeamLog.StackCrossTeamAccessPolicy + + public init(swift: TeamLog.StackCrossTeamAccessPolicy) { + self.swift = swift + } + + public static func factory(swift: TeamLog.StackCrossTeamAccessPolicy) -> DBXTeamLogStackCrossTeamAccessPolicy { + switch swift { + case .allowed: + return DBXTeamLogStackCrossTeamAccessPolicyAllowed() + case .default_: + return DBXTeamLogStackCrossTeamAccessPolicyDefault_() + case .disallowed: + return DBXTeamLogStackCrossTeamAccessPolicyDisallowed() + case .other: + return DBXTeamLogStackCrossTeamAccessPolicyOther() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asAllowed: DBXTeamLogStackCrossTeamAccessPolicyAllowed? { + return self as? DBXTeamLogStackCrossTeamAccessPolicyAllowed + } + + @objc + public var asDefault_: DBXTeamLogStackCrossTeamAccessPolicyDefault_? { + return self as? DBXTeamLogStackCrossTeamAccessPolicyDefault_ + } + + @objc + public var asDisallowed: DBXTeamLogStackCrossTeamAccessPolicyDisallowed? { + return self as? DBXTeamLogStackCrossTeamAccessPolicyDisallowed + } + + @objc + public var asOther: DBXTeamLogStackCrossTeamAccessPolicyOther? { + return self as? DBXTeamLogStackCrossTeamAccessPolicyOther + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogStackCrossTeamAccessPolicyAllowed: DBXTeamLogStackCrossTeamAccessPolicy { + @objc + public init() { + let swift = TeamLog.StackCrossTeamAccessPolicy.allowed + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogStackCrossTeamAccessPolicyDefault_: DBXTeamLogStackCrossTeamAccessPolicy { + @objc + public init() { + let swift = TeamLog.StackCrossTeamAccessPolicy.default_ + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogStackCrossTeamAccessPolicyDisallowed: DBXTeamLogStackCrossTeamAccessPolicy { + @objc + public init() { + let swift = TeamLog.StackCrossTeamAccessPolicy.disallowed + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogStackCrossTeamAccessPolicyOther: DBXTeamLogStackCrossTeamAccessPolicy { + @objc + public init() { + let swift = TeamLog.StackCrossTeamAccessPolicy.other + super.init(swift: swift) + } +} + +/// Changed cross-team Stack access policy for team. +@objc +public class DBXTeamLogStackCrossTeamAccessPolicyChangedDetails: NSObject { + /// New cross-team Stack access policy. + @objc + public var newValue: DBXTeamLogStackCrossTeamAccessPolicy { DBXTeamLogStackCrossTeamAccessPolicy(swift: swift.newValue) } + /// Previous cross-team Stack access policy. Might be missing due to historical data gap. + @objc + public var previousValue: DBXTeamLogStackCrossTeamAccessPolicy? { guard let swift = swift.previousValue else { return nil }; return DBXTeamLogStackCrossTeamAccessPolicy(swift: swift) } + + @objc + public init(newValue: DBXTeamLogStackCrossTeamAccessPolicy, previousValue: DBXTeamLogStackCrossTeamAccessPolicy?) { + self.swift = TeamLog.StackCrossTeamAccessPolicyChangedDetails(newValue: newValue.swift, previousValue: previousValue?.swift) + } + + let swift: TeamLog.StackCrossTeamAccessPolicyChangedDetails + + public init(swift: TeamLog.StackCrossTeamAccessPolicyChangedDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible StackCrossTeamAccessPolicyChangedType struct +@objc +public class DBXTeamLogStackCrossTeamAccessPolicyChangedType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.StackCrossTeamAccessPolicyChangedType(description_: description_) + } + + let swift: TeamLog.StackCrossTeamAccessPolicyChangedType + + public init(swift: TeamLog.StackCrossTeamAccessPolicyChangedType) { + self.swift = swift + } + + @objc public override var description: String { swift.description } } @@ -61326,6 +77409,7 @@ public class DBXTeamLogStartedEnterpriseAdminSessionDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -61348,6 +77432,7 @@ public class DBXTeamLogStartedEnterpriseAdminSessionType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -61373,6 +77458,7 @@ public class DBXTeamLogTeamActivityCreateReportDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -61395,6 +77481,7 @@ public class DBXTeamLogTeamActivityCreateReportFailDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -61417,6 +77504,7 @@ public class DBXTeamLogTeamActivityCreateReportFailType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -61439,6 +77527,7 @@ public class DBXTeamLogTeamActivityCreateReportType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -61468,17 +77557,17 @@ public class DBXTeamLogTeamBrandingPolicy: NSObject { @objc public var asDisabled: DBXTeamLogTeamBrandingPolicyDisabled? { - self as? DBXTeamLogTeamBrandingPolicyDisabled + return self as? DBXTeamLogTeamBrandingPolicyDisabled } @objc public var asEnabled: DBXTeamLogTeamBrandingPolicyEnabled? { - self as? DBXTeamLogTeamBrandingPolicyEnabled + return self as? DBXTeamLogTeamBrandingPolicyEnabled } @objc public var asOther: DBXTeamLogTeamBrandingPolicyOther? { - self as? DBXTeamLogTeamBrandingPolicyOther + return self as? DBXTeamLogTeamBrandingPolicyOther } } @@ -61533,6 +77622,7 @@ public class DBXTeamLogTeamBrandingPolicyChangedDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -61555,6 +77645,7 @@ public class DBXTeamLogTeamBrandingPolicyChangedType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -61577,6 +77668,53 @@ public class DBXTeamLogTeamDetails: NSObject { self.swift = swift } + + @objc + public override var description: String { swift.description } +} + +/// Activated team encryption key. +@objc +public class DBXTeamLogTeamEncryptionKeyActivateKeyDetails: NSObject { + /// Type of key management. + @objc + public var keyManagementType: String { swift.keyManagementType } + + @objc + public init(keyManagementType: String) { + self.swift = TeamLog.TeamEncryptionKeyActivateKeyDetails(keyManagementType: keyManagementType) + } + + let swift: TeamLog.TeamEncryptionKeyActivateKeyDetails + + public init(swift: TeamLog.TeamEncryptionKeyActivateKeyDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible TeamEncryptionKeyActivateKeyType struct +@objc +public class DBXTeamLogTeamEncryptionKeyActivateKeyType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.TeamEncryptionKeyActivateKeyType(description_: description_) + } + + let swift: TeamLog.TeamEncryptionKeyActivateKeyType + + public init(swift: TeamLog.TeamEncryptionKeyActivateKeyType) { + self.swift = swift + } + + @objc public override var description: String { swift.description } } @@ -61584,12 +77722,14 @@ public class DBXTeamLogTeamDetails: NSObject { /// Canceled team encryption key deletion. @objc public class DBXTeamLogTeamEncryptionKeyCancelKeyDeletionDetails: NSObject { + let swift: TeamLog.TeamEncryptionKeyCancelKeyDeletionDetails public init(swift: TeamLog.TeamEncryptionKeyCancelKeyDeletionDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -61612,6 +77752,7 @@ public class DBXTeamLogTeamEncryptionKeyCancelKeyDeletionType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -61619,12 +77760,14 @@ public class DBXTeamLogTeamEncryptionKeyCancelKeyDeletionType: NSObject { /// Created team encryption key. @objc public class DBXTeamLogTeamEncryptionKeyCreateKeyDetails: NSObject { + let swift: TeamLog.TeamEncryptionKeyCreateKeyDetails public init(swift: TeamLog.TeamEncryptionKeyCreateKeyDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -61647,6 +77790,45 @@ public class DBXTeamLogTeamEncryptionKeyCreateKeyType: NSObject { self.swift = swift } + + @objc + public override var description: String { swift.description } +} + +/// Deactivated team encryption key. +@objc +public class DBXTeamLogTeamEncryptionKeyDeactivateKeyDetails: NSObject { + + let swift: TeamLog.TeamEncryptionKeyDeactivateKeyDetails + + public init(swift: TeamLog.TeamEncryptionKeyDeactivateKeyDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible TeamEncryptionKeyDeactivateKeyType struct +@objc +public class DBXTeamLogTeamEncryptionKeyDeactivateKeyType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.TeamEncryptionKeyDeactivateKeyType(description_: description_) + } + + let swift: TeamLog.TeamEncryptionKeyDeactivateKeyType + + public init(swift: TeamLog.TeamEncryptionKeyDeactivateKeyType) { + self.swift = swift + } + + @objc public override var description: String { swift.description } } @@ -61654,12 +77836,14 @@ public class DBXTeamLogTeamEncryptionKeyCreateKeyType: NSObject { /// Deleted team encryption key. @objc public class DBXTeamLogTeamEncryptionKeyDeleteKeyDetails: NSObject { + let swift: TeamLog.TeamEncryptionKeyDeleteKeyDetails public init(swift: TeamLog.TeamEncryptionKeyDeleteKeyDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -61682,6 +77866,7 @@ public class DBXTeamLogTeamEncryptionKeyDeleteKeyType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -61689,12 +77874,14 @@ public class DBXTeamLogTeamEncryptionKeyDeleteKeyType: NSObject { /// Disabled team encryption key. @objc public class DBXTeamLogTeamEncryptionKeyDisableKeyDetails: NSObject { + let swift: TeamLog.TeamEncryptionKeyDisableKeyDetails public init(swift: TeamLog.TeamEncryptionKeyDisableKeyDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -61717,6 +77904,7 @@ public class DBXTeamLogTeamEncryptionKeyDisableKeyType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -61724,12 +77912,14 @@ public class DBXTeamLogTeamEncryptionKeyDisableKeyType: NSObject { /// Enabled team encryption key. @objc public class DBXTeamLogTeamEncryptionKeyEnableKeyDetails: NSObject { + let swift: TeamLog.TeamEncryptionKeyEnableKeyDetails public init(swift: TeamLog.TeamEncryptionKeyEnableKeyDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -61752,6 +77942,7 @@ public class DBXTeamLogTeamEncryptionKeyEnableKeyType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -61759,12 +77950,14 @@ public class DBXTeamLogTeamEncryptionKeyEnableKeyType: NSObject { /// Rotated team encryption key. @objc public class DBXTeamLogTeamEncryptionKeyRotateKeyDetails: NSObject { + let swift: TeamLog.TeamEncryptionKeyRotateKeyDetails public init(swift: TeamLog.TeamEncryptionKeyRotateKeyDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -61787,6 +77980,7 @@ public class DBXTeamLogTeamEncryptionKeyRotateKeyType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -61794,12 +77988,14 @@ public class DBXTeamLogTeamEncryptionKeyRotateKeyType: NSObject { /// Scheduled encryption key deletion. @objc public class DBXTeamLogTeamEncryptionKeyScheduleKeyDeletionDetails: NSObject { + let swift: TeamLog.TeamEncryptionKeyScheduleKeyDeletionDetails public init(swift: TeamLog.TeamEncryptionKeyScheduleKeyDeletionDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -61822,6 +78018,7 @@ public class DBXTeamLogTeamEncryptionKeyScheduleKeyDeletionType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -61835,39 +78032,28 @@ public class DBXTeamLogTeamEvent: NSObject { /// The category that this type of action belongs to. @objc public var eventCategory: DBXTeamLogEventCategory { DBXTeamLogEventCategory(swift: swift.eventCategory) } - /// The entity who actually performed the action. Might be missing due to historical data gap. + /// The entity who actually performed the action. @objc - public var actor: DBXTeamLogActorLogInfo? { guard let swift = swift.actor else { return nil } - return DBXTeamLogActorLogInfo(swift: swift) - } - + public var actor: DBXTeamLogActorLogInfo? { guard let swift = swift.actor else { return nil }; return DBXTeamLogActorLogInfo(swift: swift) } /// The origin from which the actor performed the action including information about host, ip address, location, /// session, etc. If the action was performed programmatically via the API the origin represents the API /// client. @objc - public var origin: DBXTeamLogOriginLogInfo? { guard let swift = swift.origin else { return nil } - return DBXTeamLogOriginLogInfo(swift: swift) - } - - /// True if the action involved a non team member either as the actor or as one of the affected users. Might be - /// missing due to historical data gap. + public var origin: DBXTeamLogOriginLogInfo? { guard let swift = swift.origin else { return nil }; return DBXTeamLogOriginLogInfo(swift: swift) } + /// True if the action involved a non team member either as the actor or as one of the affected users. @objc public var involveNonTeamMember: NSNumber? { swift.involveNonTeamMember as NSNumber? } - /// The user or team on whose behalf the actor performed the action. Might be missing due to historical data - /// gap. + /// The user or team on whose behalf the actor performed the action. @objc - public var context: DBXTeamLogContextLogInfo? { guard let swift = swift.context else { return nil } - return DBXTeamLogContextLogInfo(swift: swift) - } - + public var context: DBXTeamLogContextLogInfo? { guard let swift = swift.context else { return nil }; return DBXTeamLogContextLogInfo(swift: swift) } /// Zero or more users and/or groups that are affected by the action. Note that this list doesn't include any /// actors or users in context. @objc - public var participants: [DBXTeamLogParticipantLogInfo]? { swift.participants?.map { DBXTeamLogParticipantLogInfo(swift: $0) } } + public var participants: Array? { swift.participants?.map { DBXTeamLogParticipantLogInfo(swift: $0) } } /// Zero or more content assets involved in the action. Currently these include Dropbox files and folders but in /// the future we might add other asset types such as Paper documents, folders, projects, etc. @objc - public var assets: [DBXTeamLogAssetLogInfo]? { swift.assets?.map { DBXTeamLogAssetLogInfo(swift: $0) } } + public var assets: Array? { swift.assets?.map { DBXTeamLogAssetLogInfo(swift: $0) } } /// The particular type of action taken. @objc public var eventType: DBXTeamLogEventType { DBXTeamLogEventType(swift: swift.eventType) } @@ -61877,30 +78063,8 @@ public class DBXTeamLogTeamEvent: NSObject { public var details: DBXTeamLogEventDetails { DBXTeamLogEventDetails(swift: swift.details) } @objc - public init( - timestamp_: Date, - eventCategory: DBXTeamLogEventCategory, - eventType: DBXTeamLogEventType, - details: DBXTeamLogEventDetails, - actor: DBXTeamLogActorLogInfo?, - origin: DBXTeamLogOriginLogInfo?, - involveNonTeamMember: NSNumber?, - context: DBXTeamLogContextLogInfo?, - participants: [DBXTeamLogParticipantLogInfo]?, - assets: [DBXTeamLogAssetLogInfo]? - ) { - self.swift = TeamLog.TeamEvent( - timestamp_: timestamp_, - eventCategory: eventCategory.swift, - eventType: eventType.swift, - details: details.swift, - actor: actor?.swift, - origin: origin?.swift, - involveNonTeamMember: involveNonTeamMember?.boolValue, - context: context?.swift, - participants: participants?.map(\.swift), - assets: assets?.map(\.swift) - ) + public init(timestamp_: Date, eventCategory: DBXTeamLogEventCategory, eventType: DBXTeamLogEventType, details: DBXTeamLogEventDetails, actor: DBXTeamLogActorLogInfo?, origin: DBXTeamLogOriginLogInfo?, involveNonTeamMember: NSNumber?, context: DBXTeamLogContextLogInfo?, participants: Array?, assets: Array?) { + self.swift = TeamLog.TeamEvent(timestamp_: timestamp_, eventCategory: eventCategory.swift, eventType: eventType.swift, details: details.swift, actor: actor?.swift, origin: origin?.swift, involveNonTeamMember: involveNonTeamMember?.boolValue, context: context?.swift, participants: participants?.map { $0.swift }, assets: assets?.map { $0.swift }) } let swift: TeamLog.TeamEvent @@ -61909,6 +78073,7 @@ public class DBXTeamLogTeamEvent: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -61938,17 +78103,17 @@ public class DBXTeamLogTeamExtensionsPolicy: NSObject { @objc public var asDisabled: DBXTeamLogTeamExtensionsPolicyDisabled? { - self as? DBXTeamLogTeamExtensionsPolicyDisabled + return self as? DBXTeamLogTeamExtensionsPolicyDisabled } @objc public var asEnabled: DBXTeamLogTeamExtensionsPolicyEnabled? { - self as? DBXTeamLogTeamExtensionsPolicyEnabled + return self as? DBXTeamLogTeamExtensionsPolicyEnabled } @objc public var asOther: DBXTeamLogTeamExtensionsPolicyOther? { - self as? DBXTeamLogTeamExtensionsPolicyOther + return self as? DBXTeamLogTeamExtensionsPolicyOther } } @@ -62003,6 +78168,7 @@ public class DBXTeamLogTeamExtensionsPolicyChangedDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -62025,6 +78191,7 @@ public class DBXTeamLogTeamExtensionsPolicyChangedType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -62037,9 +78204,7 @@ public class DBXTeamLogTeamFolderChangeStatusDetails: NSObject { public var newValue: DBXTeamTeamFolderStatus { DBXTeamTeamFolderStatus(swift: swift.newValue) } /// Previous team folder status. Might be missing due to historical data gap. @objc - public var previousValue: DBXTeamTeamFolderStatus? { guard let swift = swift.previousValue else { return nil } - return DBXTeamTeamFolderStatus(swift: swift) - } + public var previousValue: DBXTeamTeamFolderStatus? { guard let swift = swift.previousValue else { return nil }; return DBXTeamTeamFolderStatus(swift: swift) } @objc public init(newValue: DBXTeamTeamFolderStatus, previousValue: DBXTeamTeamFolderStatus?) { @@ -62052,6 +78217,7 @@ public class DBXTeamLogTeamFolderChangeStatusDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -62074,6 +78240,7 @@ public class DBXTeamLogTeamFolderChangeStatusType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -62081,12 +78248,14 @@ public class DBXTeamLogTeamFolderChangeStatusType: NSObject { /// Created team folder in active status. @objc public class DBXTeamLogTeamFolderCreateDetails: NSObject { + let swift: TeamLog.TeamFolderCreateDetails public init(swift: TeamLog.TeamFolderCreateDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -62109,6 +78278,7 @@ public class DBXTeamLogTeamFolderCreateType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -62131,6 +78301,7 @@ public class DBXTeamLogTeamFolderDowngradeDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -62153,19 +78324,125 @@ public class DBXTeamLogTeamFolderDowngradeType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } +/// Team folder space limit notification target +@objc +public class DBXTeamLogTeamFolderNotificationTarget: NSObject { + let swift: TeamLog.TeamFolderNotificationTarget + + public init(swift: TeamLog.TeamFolderNotificationTarget) { + self.swift = swift + } + + public static func factory(swift: TeamLog.TeamFolderNotificationTarget) -> DBXTeamLogTeamFolderNotificationTarget { + switch swift { + case .admins: + return DBXTeamLogTeamFolderNotificationTargetAdmins() + case .both: + return DBXTeamLogTeamFolderNotificationTargetBoth() + case .editors: + return DBXTeamLogTeamFolderNotificationTargetEditors() + case .silent: + return DBXTeamLogTeamFolderNotificationTargetSilent() + case .other: + return DBXTeamLogTeamFolderNotificationTargetOther() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asAdmins: DBXTeamLogTeamFolderNotificationTargetAdmins? { + return self as? DBXTeamLogTeamFolderNotificationTargetAdmins + } + + @objc + public var asBoth: DBXTeamLogTeamFolderNotificationTargetBoth? { + return self as? DBXTeamLogTeamFolderNotificationTargetBoth + } + + @objc + public var asEditors: DBXTeamLogTeamFolderNotificationTargetEditors? { + return self as? DBXTeamLogTeamFolderNotificationTargetEditors + } + + @objc + public var asSilent: DBXTeamLogTeamFolderNotificationTargetSilent? { + return self as? DBXTeamLogTeamFolderNotificationTargetSilent + } + + @objc + public var asOther: DBXTeamLogTeamFolderNotificationTargetOther? { + return self as? DBXTeamLogTeamFolderNotificationTargetOther + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogTeamFolderNotificationTargetAdmins: DBXTeamLogTeamFolderNotificationTarget { + @objc + public init() { + let swift = TeamLog.TeamFolderNotificationTarget.admins + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogTeamFolderNotificationTargetBoth: DBXTeamLogTeamFolderNotificationTarget { + @objc + public init() { + let swift = TeamLog.TeamFolderNotificationTarget.both + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogTeamFolderNotificationTargetEditors: DBXTeamLogTeamFolderNotificationTarget { + @objc + public init() { + let swift = TeamLog.TeamFolderNotificationTarget.editors + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogTeamFolderNotificationTargetSilent: DBXTeamLogTeamFolderNotificationTarget { + @objc + public init() { + let swift = TeamLog.TeamFolderNotificationTarget.silent + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogTeamFolderNotificationTargetOther: DBXTeamLogTeamFolderNotificationTarget { + @objc + public init() { + let swift = TeamLog.TeamFolderNotificationTarget.other + super.init(swift: swift) + } +} + /// Permanently deleted archived team folder. @objc public class DBXTeamLogTeamFolderPermanentlyDeleteDetails: NSObject { + let swift: TeamLog.TeamFolderPermanentlyDeleteDetails public init(swift: TeamLog.TeamFolderPermanentlyDeleteDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -62188,6 +78465,7 @@ public class DBXTeamLogTeamFolderPermanentlyDeleteType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -62213,6 +78491,7 @@ public class DBXTeamLogTeamFolderRenameDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -62235,6 +78514,324 @@ public class DBXTeamLogTeamFolderRenameType: NSObject { self.swift = swift } + + @objc + public override var description: String { swift.description } +} + +/// Team folder space limit enforcement type +@objc +public class DBXTeamLogTeamFolderSpaceCapsType: NSObject { + let swift: TeamLog.TeamFolderSpaceCapsType + + public init(swift: TeamLog.TeamFolderSpaceCapsType) { + self.swift = swift + } + + public static func factory(swift: TeamLog.TeamFolderSpaceCapsType) -> DBXTeamLogTeamFolderSpaceCapsType { + switch swift { + case .hard: + return DBXTeamLogTeamFolderSpaceCapsTypeHard() + case .off: + return DBXTeamLogTeamFolderSpaceCapsTypeOff() + case .soft: + return DBXTeamLogTeamFolderSpaceCapsTypeSoft() + case .other: + return DBXTeamLogTeamFolderSpaceCapsTypeOther() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asHard: DBXTeamLogTeamFolderSpaceCapsTypeHard? { + return self as? DBXTeamLogTeamFolderSpaceCapsTypeHard + } + + @objc + public var asOff: DBXTeamLogTeamFolderSpaceCapsTypeOff? { + return self as? DBXTeamLogTeamFolderSpaceCapsTypeOff + } + + @objc + public var asSoft: DBXTeamLogTeamFolderSpaceCapsTypeSoft? { + return self as? DBXTeamLogTeamFolderSpaceCapsTypeSoft + } + + @objc + public var asOther: DBXTeamLogTeamFolderSpaceCapsTypeOther? { + return self as? DBXTeamLogTeamFolderSpaceCapsTypeOther + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogTeamFolderSpaceCapsTypeHard: DBXTeamLogTeamFolderSpaceCapsType { + @objc + public init() { + let swift = TeamLog.TeamFolderSpaceCapsType.hard + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogTeamFolderSpaceCapsTypeOff: DBXTeamLogTeamFolderSpaceCapsType { + @objc + public init() { + let swift = TeamLog.TeamFolderSpaceCapsType.off + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogTeamFolderSpaceCapsTypeSoft: DBXTeamLogTeamFolderSpaceCapsType { + @objc + public init() { + let swift = TeamLog.TeamFolderSpaceCapsType.soft + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogTeamFolderSpaceCapsTypeOther: DBXTeamLogTeamFolderSpaceCapsType { + @objc + public init() { + let swift = TeamLog.TeamFolderSpaceCapsType.other + super.init(swift: swift) + } +} + +/// Changed team folder space limit enforcement type. +@objc +public class DBXTeamLogTeamFolderSpaceLimitsChangeCapsTypeDetails: NSObject { + /// Previous enforcement type. + @objc + public var previousCapsType: DBXTeamLogTeamFolderSpaceCapsType? { guard let swift = swift.previousCapsType else { return nil }; return DBXTeamLogTeamFolderSpaceCapsType(swift: swift) } + /// New enforcement type. + @objc + public var newCapsType: DBXTeamLogTeamFolderSpaceCapsType { DBXTeamLogTeamFolderSpaceCapsType(swift: swift.newCapsType) } + + @objc + public init(newCapsType: DBXTeamLogTeamFolderSpaceCapsType, previousCapsType: DBXTeamLogTeamFolderSpaceCapsType?) { + self.swift = TeamLog.TeamFolderSpaceLimitsChangeCapsTypeDetails(newCapsType: newCapsType.swift, previousCapsType: previousCapsType?.swift) + } + + let swift: TeamLog.TeamFolderSpaceLimitsChangeCapsTypeDetails + + public init(swift: TeamLog.TeamFolderSpaceLimitsChangeCapsTypeDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible TeamFolderSpaceLimitsChangeCapsTypeType struct +@objc +public class DBXTeamLogTeamFolderSpaceLimitsChangeCapsTypeType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.TeamFolderSpaceLimitsChangeCapsTypeType(description_: description_) + } + + let swift: TeamLog.TeamFolderSpaceLimitsChangeCapsTypeType + + public init(swift: TeamLog.TeamFolderSpaceLimitsChangeCapsTypeType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Changed team folder space limit. +@objc +public class DBXTeamLogTeamFolderSpaceLimitsChangeLimitDetails: NSObject { + /// Previous limit in bytes. + @objc + public var previousLimitBytes: NSNumber? { swift.previousLimitBytes as NSNumber? } + /// New limit in bytes. + @objc + public var newLimitBytes: NSNumber { swift.newLimitBytes as NSNumber } + + @objc + public init(newLimitBytes: NSNumber, previousLimitBytes: NSNumber?) { + self.swift = TeamLog.TeamFolderSpaceLimitsChangeLimitDetails(newLimitBytes: newLimitBytes.int64Value, previousLimitBytes: previousLimitBytes?.int64Value) + } + + let swift: TeamLog.TeamFolderSpaceLimitsChangeLimitDetails + + public init(swift: TeamLog.TeamFolderSpaceLimitsChangeLimitDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible TeamFolderSpaceLimitsChangeLimitType struct +@objc +public class DBXTeamLogTeamFolderSpaceLimitsChangeLimitType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.TeamFolderSpaceLimitsChangeLimitType(description_: description_) + } + + let swift: TeamLog.TeamFolderSpaceLimitsChangeLimitType + + public init(swift: TeamLog.TeamFolderSpaceLimitsChangeLimitType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Changed team folder space limit notification target. +@objc +public class DBXTeamLogTeamFolderSpaceLimitsChangeNotificationTargetDetails: NSObject { + /// Previous notification target. + @objc + public var previousTarget: DBXTeamLogTeamFolderNotificationTarget? { guard let swift = swift.previousTarget else { return nil }; return DBXTeamLogTeamFolderNotificationTarget(swift: swift) } + /// New notification target. + @objc + public var newTarget: DBXTeamLogTeamFolderNotificationTarget { DBXTeamLogTeamFolderNotificationTarget(swift: swift.newTarget) } + + @objc + public init(newTarget: DBXTeamLogTeamFolderNotificationTarget, previousTarget: DBXTeamLogTeamFolderNotificationTarget?) { + self.swift = TeamLog.TeamFolderSpaceLimitsChangeNotificationTargetDetails(newTarget: newTarget.swift, previousTarget: previousTarget?.swift) + } + + let swift: TeamLog.TeamFolderSpaceLimitsChangeNotificationTargetDetails + + public init(swift: TeamLog.TeamFolderSpaceLimitsChangeNotificationTargetDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible TeamFolderSpaceLimitsChangeNotificationTargetType struct +@objc +public class DBXTeamLogTeamFolderSpaceLimitsChangeNotificationTargetType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.TeamFolderSpaceLimitsChangeNotificationTargetType(description_: description_) + } + + let swift: TeamLog.TeamFolderSpaceLimitsChangeNotificationTargetType + + public init(swift: TeamLog.TeamFolderSpaceLimitsChangeNotificationTargetType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Created team folders report. +@objc +public class DBXTeamLogTeamFoldersCreateReportDetails: NSObject { + + let swift: TeamLog.TeamFoldersCreateReportDetails + + public init(swift: TeamLog.TeamFoldersCreateReportDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Couldn't generate team folders report. +@objc +public class DBXTeamLogTeamFoldersCreateReportFailedDetails: NSObject { + /// Failure reason. + @objc + public var failureReason: DBXTeamTeamReportFailureReason { DBXTeamTeamReportFailureReason(swift: swift.failureReason) } + + @objc + public init(failureReason: DBXTeamTeamReportFailureReason) { + self.swift = TeamLog.TeamFoldersCreateReportFailedDetails(failureReason: failureReason.swift) + } + + let swift: TeamLog.TeamFoldersCreateReportFailedDetails + + public init(swift: TeamLog.TeamFoldersCreateReportFailedDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible TeamFoldersCreateReportFailedType struct +@objc +public class DBXTeamLogTeamFoldersCreateReportFailedType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.TeamFoldersCreateReportFailedType(description_: description_) + } + + let swift: TeamLog.TeamFoldersCreateReportFailedType + + public init(swift: TeamLog.TeamFoldersCreateReportFailedType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible TeamFoldersCreateReportType struct +@objc +public class DBXTeamLogTeamFoldersCreateReportType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.TeamFoldersCreateReportType(description_: description_) + } + + let swift: TeamLog.TeamFoldersCreateReportType + + public init(swift: TeamLog.TeamFoldersCreateReportType) { + self.swift = swift + } + + @objc public override var description: String { swift.description } } @@ -62260,6 +78857,7 @@ public class DBXTeamLogTeamInviteDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -62267,6 +78865,7 @@ public class DBXTeamLogTeamInviteDetails: NSObject { /// Team linked app @objc public class DBXTeamLogTeamLinkedAppLogInfo: DBXTeamLogAppLogInfo { + let subSwift: TeamLog.TeamLinkedAppLogInfo public init(swift: TeamLog.TeamLinkedAppLogInfo) { @@ -62274,6 +78873,7 @@ public class DBXTeamLogTeamLinkedAppLogInfo: DBXTeamLogAppLogInfo { super.init(swift: swift) } + @objc public override var description: String { subSwift.description } } @@ -62296,6 +78896,7 @@ public class DBXTeamLogTeamLogInfo: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -62311,20 +78912,11 @@ public class DBXTeamLogTeamMemberLogInfo: DBXTeamLogUserLogInfo { public var memberExternalId: String? { subSwift.memberExternalId } /// Details about this user’s team for enterprise event. @objc - public var team: DBXTeamLogTeamLogInfo? { guard let swift = subSwift.team else { return nil } - return DBXTeamLogTeamLogInfo(swift: swift) - } + public var team: DBXTeamLogTeamLogInfo? { guard let swift = subSwift.team else { return nil }; return DBXTeamLogTeamLogInfo(swift: swift) } @objc public init(accountId: String?, displayName: String?, email: String?, teamMemberId: String?, memberExternalId: String?, team: DBXTeamLogTeamLogInfo?) { - let swift = TeamLog.TeamMemberLogInfo( - accountId: accountId, - displayName: displayName, - email: email, - teamMemberId: teamMemberId, - memberExternalId: memberExternalId, - team: team?.swift - ) + let swift = TeamLog.TeamMemberLogInfo(accountId: accountId, displayName: displayName, email: email, teamMemberId: teamMemberId, memberExternalId: memberExternalId, team: team?.swift) self.subSwift = swift super.init(swift: swift) } @@ -62336,10 +78928,146 @@ public class DBXTeamLogTeamMemberLogInfo: DBXTeamLogUserLogInfo { super.init(swift: swift) } + @objc public override var description: String { subSwift.description } } +/// Policy for deciding whether team members can request increased storage limits from admins +@objc +public class DBXTeamLogTeamMemberStorageRequestPolicy: NSObject { + let swift: TeamLog.TeamMemberStorageRequestPolicy + + public init(swift: TeamLog.TeamMemberStorageRequestPolicy) { + self.swift = swift + } + + public static func factory(swift: TeamLog.TeamMemberStorageRequestPolicy) -> DBXTeamLogTeamMemberStorageRequestPolicy { + switch swift { + case .default_: + return DBXTeamLogTeamMemberStorageRequestPolicyDefault_() + case .disabled: + return DBXTeamLogTeamMemberStorageRequestPolicyDisabled() + case .enabled: + return DBXTeamLogTeamMemberStorageRequestPolicyEnabled() + case .other: + return DBXTeamLogTeamMemberStorageRequestPolicyOther() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asDefault_: DBXTeamLogTeamMemberStorageRequestPolicyDefault_? { + return self as? DBXTeamLogTeamMemberStorageRequestPolicyDefault_ + } + + @objc + public var asDisabled: DBXTeamLogTeamMemberStorageRequestPolicyDisabled? { + return self as? DBXTeamLogTeamMemberStorageRequestPolicyDisabled + } + + @objc + public var asEnabled: DBXTeamLogTeamMemberStorageRequestPolicyEnabled? { + return self as? DBXTeamLogTeamMemberStorageRequestPolicyEnabled + } + + @objc + public var asOther: DBXTeamLogTeamMemberStorageRequestPolicyOther? { + return self as? DBXTeamLogTeamMemberStorageRequestPolicyOther + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogTeamMemberStorageRequestPolicyDefault_: DBXTeamLogTeamMemberStorageRequestPolicy { + @objc + public init() { + let swift = TeamLog.TeamMemberStorageRequestPolicy.default_ + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogTeamMemberStorageRequestPolicyDisabled: DBXTeamLogTeamMemberStorageRequestPolicy { + @objc + public init() { + let swift = TeamLog.TeamMemberStorageRequestPolicy.disabled + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogTeamMemberStorageRequestPolicyEnabled: DBXTeamLogTeamMemberStorageRequestPolicy { + @objc + public init() { + let swift = TeamLog.TeamMemberStorageRequestPolicy.enabled + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogTeamMemberStorageRequestPolicyOther: DBXTeamLogTeamMemberStorageRequestPolicy { + @objc + public init() { + let swift = TeamLog.TeamMemberStorageRequestPolicy.other + super.init(swift: swift) + } +} + +/// Changed team member storage request policy for team. +@objc +public class DBXTeamLogTeamMemberStorageRequestPolicyChangedDetails: NSObject { + /// New team member storage request policy. + @objc + public var newValue: DBXTeamLogTeamMemberStorageRequestPolicy { DBXTeamLogTeamMemberStorageRequestPolicy(swift: swift.newValue) } + /// Previous team member storage request policy. Might be missing due to historical data gap. + @objc + public var previousValue: DBXTeamLogTeamMemberStorageRequestPolicy? { guard let swift = swift.previousValue else { return nil }; return DBXTeamLogTeamMemberStorageRequestPolicy(swift: swift) } + + @objc + public init(newValue: DBXTeamLogTeamMemberStorageRequestPolicy, previousValue: DBXTeamLogTeamMemberStorageRequestPolicy?) { + self.swift = TeamLog.TeamMemberStorageRequestPolicyChangedDetails(newValue: newValue.swift, previousValue: previousValue?.swift) + } + + let swift: TeamLog.TeamMemberStorageRequestPolicyChangedDetails + + public init(swift: TeamLog.TeamMemberStorageRequestPolicyChangedDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible TeamMemberStorageRequestPolicyChangedType struct +@objc +public class DBXTeamLogTeamMemberStorageRequestPolicyChangedType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.TeamMemberStorageRequestPolicyChangedType(description_: description_) + } + + let swift: TeamLog.TeamMemberStorageRequestPolicyChangedType + + public init(swift: TeamLog.TeamMemberStorageRequestPolicyChangedType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + /// Objective-C compatible TeamMembershipType union @objc public class DBXTeamLogTeamMembershipType: NSObject { @@ -62367,22 +79095,22 @@ public class DBXTeamLogTeamMembershipType: NSObject { @objc public var asFree: DBXTeamLogTeamMembershipTypeFree? { - self as? DBXTeamLogTeamMembershipTypeFree + return self as? DBXTeamLogTeamMembershipTypeFree } @objc public var asFull: DBXTeamLogTeamMembershipTypeFull? { - self as? DBXTeamLogTeamMembershipTypeFull + return self as? DBXTeamLogTeamMembershipTypeFull } @objc public var asGuest: DBXTeamLogTeamMembershipTypeGuest? { - self as? DBXTeamLogTeamMembershipTypeGuest + return self as? DBXTeamLogTeamMembershipTypeGuest } @objc public var asOther: DBXTeamLogTeamMembershipTypeOther? { - self as? DBXTeamLogTeamMembershipTypeOther + return self as? DBXTeamLogTeamMembershipTypeOther } } @@ -62444,6 +79172,7 @@ public class DBXTeamLogTeamMergeFromDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -62466,6 +79195,7 @@ public class DBXTeamLogTeamMergeFromType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -62475,9 +79205,7 @@ public class DBXTeamLogTeamMergeFromType: NSObject { public class DBXTeamLogTeamMergeRequestAcceptedDetails: NSObject { /// Team merge request acceptance details. @objc - public var requestAcceptedDetails: DBXTeamLogTeamMergeRequestAcceptedExtraDetails { - DBXTeamLogTeamMergeRequestAcceptedExtraDetails(swift: swift.requestAcceptedDetails) - } + public var requestAcceptedDetails: DBXTeamLogTeamMergeRequestAcceptedExtraDetails { DBXTeamLogTeamMergeRequestAcceptedExtraDetails(swift: swift.requestAcceptedDetails) } @objc public init(requestAcceptedDetails: DBXTeamLogTeamMergeRequestAcceptedExtraDetails) { @@ -62490,6 +79218,7 @@ public class DBXTeamLogTeamMergeRequestAcceptedDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -62521,21 +79250,21 @@ public class DBXTeamLogTeamMergeRequestAcceptedExtraDetails: NSObject { @objc public var asPrimaryTeam: DBXTeamLogTeamMergeRequestAcceptedExtraDetailsPrimaryTeam? { - self as? DBXTeamLogTeamMergeRequestAcceptedExtraDetailsPrimaryTeam + return self as? DBXTeamLogTeamMergeRequestAcceptedExtraDetailsPrimaryTeam } @objc public var asSecondaryTeam: DBXTeamLogTeamMergeRequestAcceptedExtraDetailsSecondaryTeam? { - self as? DBXTeamLogTeamMergeRequestAcceptedExtraDetailsSecondaryTeam + return self as? DBXTeamLogTeamMergeRequestAcceptedExtraDetailsSecondaryTeam } @objc public var asOther: DBXTeamLogTeamMergeRequestAcceptedExtraDetailsOther? { - self as? DBXTeamLogTeamMergeRequestAcceptedExtraDetailsOther + return self as? DBXTeamLogTeamMergeRequestAcceptedExtraDetailsOther } } -/// Team merge request accepted details shown to the primary team. +/// Team merge request accepted details shown to the primary team @objc public class DBXTeamLogTeamMergeRequestAcceptedExtraDetailsPrimaryTeam: DBXTeamLogTeamMergeRequestAcceptedExtraDetails { @objc @@ -62543,13 +79272,13 @@ public class DBXTeamLogTeamMergeRequestAcceptedExtraDetailsPrimaryTeam: DBXTeamL @objc public init(_ arg: DBXTeamLogPrimaryTeamRequestAcceptedDetails) { - self.primaryTeam = arg + primaryTeam = arg let swift = TeamLog.TeamMergeRequestAcceptedExtraDetails.primaryTeam(arg.swift) super.init(swift: swift) } } -/// Team merge request accepted details shown to the secondary team. +/// Team merge request accepted details shown to the secondary team @objc public class DBXTeamLogTeamMergeRequestAcceptedExtraDetailsSecondaryTeam: DBXTeamLogTeamMergeRequestAcceptedExtraDetails { @objc @@ -62557,7 +79286,7 @@ public class DBXTeamLogTeamMergeRequestAcceptedExtraDetailsSecondaryTeam: DBXTea @objc public init(_ arg: DBXTeamLogSecondaryTeamRequestAcceptedDetails) { - self.secondaryTeam = arg + secondaryTeam = arg let swift = TeamLog.TeamMergeRequestAcceptedExtraDetails.secondaryTeam(arg.swift) super.init(swift: swift) } @@ -62594,6 +79323,7 @@ public class DBXTeamLogTeamMergeRequestAcceptedShownToPrimaryTeamDetails: NSObje self.swift = swift } + @objc public override var description: String { swift.description } } @@ -62616,6 +79346,7 @@ public class DBXTeamLogTeamMergeRequestAcceptedShownToPrimaryTeamType: NSObject self.swift = swift } + @objc public override var description: String { swift.description } } @@ -62641,6 +79372,7 @@ public class DBXTeamLogTeamMergeRequestAcceptedShownToSecondaryTeamDetails: NSOb self.swift = swift } + @objc public override var description: String { swift.description } } @@ -62663,6 +79395,7 @@ public class DBXTeamLogTeamMergeRequestAcceptedShownToSecondaryTeamType: NSObjec self.swift = swift } + @objc public override var description: String { swift.description } } @@ -62685,6 +79418,7 @@ public class DBXTeamLogTeamMergeRequestAcceptedType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -62707,6 +79441,7 @@ public class DBXTeamLogTeamMergeRequestAutoCanceledDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -62729,6 +79464,7 @@ public class DBXTeamLogTeamMergeRequestAutoCanceledType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -62738,9 +79474,7 @@ public class DBXTeamLogTeamMergeRequestAutoCanceledType: NSObject { public class DBXTeamLogTeamMergeRequestCanceledDetails: NSObject { /// Team merge request cancellation details. @objc - public var requestCanceledDetails: DBXTeamLogTeamMergeRequestCanceledExtraDetails { - DBXTeamLogTeamMergeRequestCanceledExtraDetails(swift: swift.requestCanceledDetails) - } + public var requestCanceledDetails: DBXTeamLogTeamMergeRequestCanceledExtraDetails { DBXTeamLogTeamMergeRequestCanceledExtraDetails(swift: swift.requestCanceledDetails) } @objc public init(requestCanceledDetails: DBXTeamLogTeamMergeRequestCanceledExtraDetails) { @@ -62753,6 +79487,7 @@ public class DBXTeamLogTeamMergeRequestCanceledDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -62784,21 +79519,21 @@ public class DBXTeamLogTeamMergeRequestCanceledExtraDetails: NSObject { @objc public var asPrimaryTeam: DBXTeamLogTeamMergeRequestCanceledExtraDetailsPrimaryTeam? { - self as? DBXTeamLogTeamMergeRequestCanceledExtraDetailsPrimaryTeam + return self as? DBXTeamLogTeamMergeRequestCanceledExtraDetailsPrimaryTeam } @objc public var asSecondaryTeam: DBXTeamLogTeamMergeRequestCanceledExtraDetailsSecondaryTeam? { - self as? DBXTeamLogTeamMergeRequestCanceledExtraDetailsSecondaryTeam + return self as? DBXTeamLogTeamMergeRequestCanceledExtraDetailsSecondaryTeam } @objc public var asOther: DBXTeamLogTeamMergeRequestCanceledExtraDetailsOther? { - self as? DBXTeamLogTeamMergeRequestCanceledExtraDetailsOther + return self as? DBXTeamLogTeamMergeRequestCanceledExtraDetailsOther } } -/// Team merge request cancellation details shown to the primary team. +/// Team merge request cancellation details shown to the primary team @objc public class DBXTeamLogTeamMergeRequestCanceledExtraDetailsPrimaryTeam: DBXTeamLogTeamMergeRequestCanceledExtraDetails { @objc @@ -62806,13 +79541,13 @@ public class DBXTeamLogTeamMergeRequestCanceledExtraDetailsPrimaryTeam: DBXTeamL @objc public init(_ arg: DBXTeamLogPrimaryTeamRequestCanceledDetails) { - self.primaryTeam = arg + primaryTeam = arg let swift = TeamLog.TeamMergeRequestCanceledExtraDetails.primaryTeam(arg.swift) super.init(swift: swift) } } -/// Team merge request cancellation details shown to the secondary team. +/// Team merge request cancellation details shown to the secondary team @objc public class DBXTeamLogTeamMergeRequestCanceledExtraDetailsSecondaryTeam: DBXTeamLogTeamMergeRequestCanceledExtraDetails { @objc @@ -62820,7 +79555,7 @@ public class DBXTeamLogTeamMergeRequestCanceledExtraDetailsSecondaryTeam: DBXTea @objc public init(_ arg: DBXTeamLogSecondaryTeamRequestCanceledDetails) { - self.secondaryTeam = arg + secondaryTeam = arg let swift = TeamLog.TeamMergeRequestCanceledExtraDetails.secondaryTeam(arg.swift) super.init(swift: swift) } @@ -62857,6 +79592,7 @@ public class DBXTeamLogTeamMergeRequestCanceledShownToPrimaryTeamDetails: NSObje self.swift = swift } + @objc public override var description: String { swift.description } } @@ -62879,6 +79615,7 @@ public class DBXTeamLogTeamMergeRequestCanceledShownToPrimaryTeamType: NSObject self.swift = swift } + @objc public override var description: String { swift.description } } @@ -62904,6 +79641,7 @@ public class DBXTeamLogTeamMergeRequestCanceledShownToSecondaryTeamDetails: NSOb self.swift = swift } + @objc public override var description: String { swift.description } } @@ -62926,6 +79664,7 @@ public class DBXTeamLogTeamMergeRequestCanceledShownToSecondaryTeamType: NSObjec self.swift = swift } + @objc public override var description: String { swift.description } } @@ -62948,6 +79687,7 @@ public class DBXTeamLogTeamMergeRequestCanceledType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -62957,9 +79697,7 @@ public class DBXTeamLogTeamMergeRequestCanceledType: NSObject { public class DBXTeamLogTeamMergeRequestExpiredDetails: NSObject { /// Team merge request expiration details. @objc - public var requestExpiredDetails: DBXTeamLogTeamMergeRequestExpiredExtraDetails { - DBXTeamLogTeamMergeRequestExpiredExtraDetails(swift: swift.requestExpiredDetails) - } + public var requestExpiredDetails: DBXTeamLogTeamMergeRequestExpiredExtraDetails { DBXTeamLogTeamMergeRequestExpiredExtraDetails(swift: swift.requestExpiredDetails) } @objc public init(requestExpiredDetails: DBXTeamLogTeamMergeRequestExpiredExtraDetails) { @@ -62972,6 +79710,7 @@ public class DBXTeamLogTeamMergeRequestExpiredDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -63003,21 +79742,21 @@ public class DBXTeamLogTeamMergeRequestExpiredExtraDetails: NSObject { @objc public var asPrimaryTeam: DBXTeamLogTeamMergeRequestExpiredExtraDetailsPrimaryTeam? { - self as? DBXTeamLogTeamMergeRequestExpiredExtraDetailsPrimaryTeam + return self as? DBXTeamLogTeamMergeRequestExpiredExtraDetailsPrimaryTeam } @objc public var asSecondaryTeam: DBXTeamLogTeamMergeRequestExpiredExtraDetailsSecondaryTeam? { - self as? DBXTeamLogTeamMergeRequestExpiredExtraDetailsSecondaryTeam + return self as? DBXTeamLogTeamMergeRequestExpiredExtraDetailsSecondaryTeam } @objc public var asOther: DBXTeamLogTeamMergeRequestExpiredExtraDetailsOther? { - self as? DBXTeamLogTeamMergeRequestExpiredExtraDetailsOther + return self as? DBXTeamLogTeamMergeRequestExpiredExtraDetailsOther } } -/// Team merge request canceled details shown to the primary team. +/// Team merge request canceled details shown to the primary team @objc public class DBXTeamLogTeamMergeRequestExpiredExtraDetailsPrimaryTeam: DBXTeamLogTeamMergeRequestExpiredExtraDetails { @objc @@ -63025,13 +79764,13 @@ public class DBXTeamLogTeamMergeRequestExpiredExtraDetailsPrimaryTeam: DBXTeamLo @objc public init(_ arg: DBXTeamLogPrimaryTeamRequestExpiredDetails) { - self.primaryTeam = arg + primaryTeam = arg let swift = TeamLog.TeamMergeRequestExpiredExtraDetails.primaryTeam(arg.swift) super.init(swift: swift) } } -/// Team merge request canceled details shown to the secondary team. +/// Team merge request canceled details shown to the secondary team @objc public class DBXTeamLogTeamMergeRequestExpiredExtraDetailsSecondaryTeam: DBXTeamLogTeamMergeRequestExpiredExtraDetails { @objc @@ -63039,7 +79778,7 @@ public class DBXTeamLogTeamMergeRequestExpiredExtraDetailsSecondaryTeam: DBXTeam @objc public init(_ arg: DBXTeamLogSecondaryTeamRequestExpiredDetails) { - self.secondaryTeam = arg + secondaryTeam = arg let swift = TeamLog.TeamMergeRequestExpiredExtraDetails.secondaryTeam(arg.swift) super.init(swift: swift) } @@ -63076,6 +79815,7 @@ public class DBXTeamLogTeamMergeRequestExpiredShownToPrimaryTeamDetails: NSObjec self.swift = swift } + @objc public override var description: String { swift.description } } @@ -63098,6 +79838,7 @@ public class DBXTeamLogTeamMergeRequestExpiredShownToPrimaryTeamType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -63120,6 +79861,7 @@ public class DBXTeamLogTeamMergeRequestExpiredShownToSecondaryTeamDetails: NSObj self.swift = swift } + @objc public override var description: String { swift.description } } @@ -63142,6 +79884,7 @@ public class DBXTeamLogTeamMergeRequestExpiredShownToSecondaryTeamType: NSObject self.swift = swift } + @objc public override var description: String { swift.description } } @@ -63164,6 +79907,7 @@ public class DBXTeamLogTeamMergeRequestExpiredType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -63189,6 +79933,7 @@ public class DBXTeamLogTeamMergeRequestRejectedShownToPrimaryTeamDetails: NSObje self.swift = swift } + @objc public override var description: String { swift.description } } @@ -63211,6 +79956,7 @@ public class DBXTeamLogTeamMergeRequestRejectedShownToPrimaryTeamType: NSObject self.swift = swift } + @objc public override var description: String { swift.description } } @@ -63233,6 +79979,7 @@ public class DBXTeamLogTeamMergeRequestRejectedShownToSecondaryTeamDetails: NSOb self.swift = swift } + @objc public override var description: String { swift.description } } @@ -63255,6 +80002,7 @@ public class DBXTeamLogTeamMergeRequestRejectedShownToSecondaryTeamType: NSObjec self.swift = swift } + @objc public override var description: String { swift.description } } @@ -63264,9 +80012,7 @@ public class DBXTeamLogTeamMergeRequestRejectedShownToSecondaryTeamType: NSObjec public class DBXTeamLogTeamMergeRequestReminderDetails: NSObject { /// Team merge request reminder details. @objc - public var requestReminderDetails: DBXTeamLogTeamMergeRequestReminderExtraDetails { - DBXTeamLogTeamMergeRequestReminderExtraDetails(swift: swift.requestReminderDetails) - } + public var requestReminderDetails: DBXTeamLogTeamMergeRequestReminderExtraDetails { DBXTeamLogTeamMergeRequestReminderExtraDetails(swift: swift.requestReminderDetails) } @objc public init(requestReminderDetails: DBXTeamLogTeamMergeRequestReminderExtraDetails) { @@ -63279,6 +80025,7 @@ public class DBXTeamLogTeamMergeRequestReminderDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -63310,21 +80057,21 @@ public class DBXTeamLogTeamMergeRequestReminderExtraDetails: NSObject { @objc public var asPrimaryTeam: DBXTeamLogTeamMergeRequestReminderExtraDetailsPrimaryTeam? { - self as? DBXTeamLogTeamMergeRequestReminderExtraDetailsPrimaryTeam + return self as? DBXTeamLogTeamMergeRequestReminderExtraDetailsPrimaryTeam } @objc public var asSecondaryTeam: DBXTeamLogTeamMergeRequestReminderExtraDetailsSecondaryTeam? { - self as? DBXTeamLogTeamMergeRequestReminderExtraDetailsSecondaryTeam + return self as? DBXTeamLogTeamMergeRequestReminderExtraDetailsSecondaryTeam } @objc public var asOther: DBXTeamLogTeamMergeRequestReminderExtraDetailsOther? { - self as? DBXTeamLogTeamMergeRequestReminderExtraDetailsOther + return self as? DBXTeamLogTeamMergeRequestReminderExtraDetailsOther } } -/// Team merge request reminder details shown to the primary team. +/// Team merge request reminder details shown to the primary team @objc public class DBXTeamLogTeamMergeRequestReminderExtraDetailsPrimaryTeam: DBXTeamLogTeamMergeRequestReminderExtraDetails { @objc @@ -63332,13 +80079,13 @@ public class DBXTeamLogTeamMergeRequestReminderExtraDetailsPrimaryTeam: DBXTeamL @objc public init(_ arg: DBXTeamLogPrimaryTeamRequestReminderDetails) { - self.primaryTeam = arg + primaryTeam = arg let swift = TeamLog.TeamMergeRequestReminderExtraDetails.primaryTeam(arg.swift) super.init(swift: swift) } } -/// Team merge request reminder details shown to the secondary team. +/// Team merge request reminder details shown to the secondary team @objc public class DBXTeamLogTeamMergeRequestReminderExtraDetailsSecondaryTeam: DBXTeamLogTeamMergeRequestReminderExtraDetails { @objc @@ -63346,7 +80093,7 @@ public class DBXTeamLogTeamMergeRequestReminderExtraDetailsSecondaryTeam: DBXTea @objc public init(_ arg: DBXTeamLogSecondaryTeamRequestReminderDetails) { - self.secondaryTeam = arg + secondaryTeam = arg let swift = TeamLog.TeamMergeRequestReminderExtraDetails.secondaryTeam(arg.swift) super.init(swift: swift) } @@ -63383,6 +80130,7 @@ public class DBXTeamLogTeamMergeRequestReminderShownToPrimaryTeamDetails: NSObje self.swift = swift } + @objc public override var description: String { swift.description } } @@ -63405,6 +80153,7 @@ public class DBXTeamLogTeamMergeRequestReminderShownToPrimaryTeamType: NSObject self.swift = swift } + @objc public override var description: String { swift.description } } @@ -63427,6 +80176,7 @@ public class DBXTeamLogTeamMergeRequestReminderShownToSecondaryTeamDetails: NSOb self.swift = swift } + @objc public override var description: String { swift.description } } @@ -63449,6 +80199,7 @@ public class DBXTeamLogTeamMergeRequestReminderShownToSecondaryTeamType: NSObjec self.swift = swift } + @objc public override var description: String { swift.description } } @@ -63471,6 +80222,7 @@ public class DBXTeamLogTeamMergeRequestReminderType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -63493,6 +80245,7 @@ public class DBXTeamLogTeamMergeRequestRevokedDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -63515,6 +80268,7 @@ public class DBXTeamLogTeamMergeRequestRevokedType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -63540,6 +80294,7 @@ public class DBXTeamLogTeamMergeRequestSentShownToPrimaryTeamDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -63562,6 +80317,7 @@ public class DBXTeamLogTeamMergeRequestSentShownToPrimaryTeamType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -63584,6 +80340,7 @@ public class DBXTeamLogTeamMergeRequestSentShownToSecondaryTeamDetails: NSObject self.swift = swift } + @objc public override var description: String { swift.description } } @@ -63606,6 +80363,7 @@ public class DBXTeamLogTeamMergeRequestSentShownToSecondaryTeamType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -63628,6 +80386,7 @@ public class DBXTeamLogTeamMergeToDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -63650,6 +80409,7 @@ public class DBXTeamLogTeamMergeToType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -63675,6 +80435,7 @@ public class DBXTeamLogTeamName: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -63682,12 +80443,14 @@ public class DBXTeamLogTeamName: NSObject { /// Added team background to display on shared link headers. @objc public class DBXTeamLogTeamProfileAddBackgroundDetails: NSObject { + let swift: TeamLog.TeamProfileAddBackgroundDetails public init(swift: TeamLog.TeamProfileAddBackgroundDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -63710,6 +80473,7 @@ public class DBXTeamLogTeamProfileAddBackgroundType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -63717,12 +80481,14 @@ public class DBXTeamLogTeamProfileAddBackgroundType: NSObject { /// Added team logo to display on shared link headers. @objc public class DBXTeamLogTeamProfileAddLogoDetails: NSObject { + let swift: TeamLog.TeamProfileAddLogoDetails public init(swift: TeamLog.TeamProfileAddLogoDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -63745,6 +80511,7 @@ public class DBXTeamLogTeamProfileAddLogoType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -63752,12 +80519,14 @@ public class DBXTeamLogTeamProfileAddLogoType: NSObject { /// Changed team background displayed on shared link headers. @objc public class DBXTeamLogTeamProfileChangeBackgroundDetails: NSObject { + let swift: TeamLog.TeamProfileChangeBackgroundDetails public init(swift: TeamLog.TeamProfileChangeBackgroundDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -63780,6 +80549,7 @@ public class DBXTeamLogTeamProfileChangeBackgroundType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -63805,6 +80575,7 @@ public class DBXTeamLogTeamProfileChangeDefaultLanguageDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -63827,6 +80598,7 @@ public class DBXTeamLogTeamProfileChangeDefaultLanguageType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -63834,12 +80606,14 @@ public class DBXTeamLogTeamProfileChangeDefaultLanguageType: NSObject { /// Changed team logo displayed on shared link headers. @objc public class DBXTeamLogTeamProfileChangeLogoDetails: NSObject { + let swift: TeamLog.TeamProfileChangeLogoDetails public init(swift: TeamLog.TeamProfileChangeLogoDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -63862,6 +80636,7 @@ public class DBXTeamLogTeamProfileChangeLogoType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -63871,10 +80646,7 @@ public class DBXTeamLogTeamProfileChangeLogoType: NSObject { public class DBXTeamLogTeamProfileChangeNameDetails: NSObject { /// Previous teams name. Might be missing due to historical data gap. @objc - public var previousValue: DBXTeamLogTeamName? { guard let swift = swift.previousValue else { return nil } - return DBXTeamLogTeamName(swift: swift) - } - + public var previousValue: DBXTeamLogTeamName? { guard let swift = swift.previousValue else { return nil }; return DBXTeamLogTeamName(swift: swift) } /// New team name. @objc public var newValue: DBXTeamLogTeamName { DBXTeamLogTeamName(swift: swift.newValue) } @@ -63890,6 +80662,7 @@ public class DBXTeamLogTeamProfileChangeNameDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -63912,6 +80685,7 @@ public class DBXTeamLogTeamProfileChangeNameType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -63919,12 +80693,14 @@ public class DBXTeamLogTeamProfileChangeNameType: NSObject { /// Removed team background displayed on shared link headers. @objc public class DBXTeamLogTeamProfileRemoveBackgroundDetails: NSObject { + let swift: TeamLog.TeamProfileRemoveBackgroundDetails public init(swift: TeamLog.TeamProfileRemoveBackgroundDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -63947,6 +80723,7 @@ public class DBXTeamLogTeamProfileRemoveBackgroundType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -63954,12 +80731,14 @@ public class DBXTeamLogTeamProfileRemoveBackgroundType: NSObject { /// Removed team logo displayed on shared link headers. @objc public class DBXTeamLogTeamProfileRemoveLogoDetails: NSObject { + let swift: TeamLog.TeamProfileRemoveLogoDetails public init(swift: TeamLog.TeamProfileRemoveLogoDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -63982,6 +80761,7 @@ public class DBXTeamLogTeamProfileRemoveLogoType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -64011,17 +80791,17 @@ public class DBXTeamLogTeamSelectiveSyncPolicy: NSObject { @objc public var asDisabled: DBXTeamLogTeamSelectiveSyncPolicyDisabled? { - self as? DBXTeamLogTeamSelectiveSyncPolicyDisabled + return self as? DBXTeamLogTeamSelectiveSyncPolicyDisabled } @objc public var asEnabled: DBXTeamLogTeamSelectiveSyncPolicyEnabled? { - self as? DBXTeamLogTeamSelectiveSyncPolicyEnabled + return self as? DBXTeamLogTeamSelectiveSyncPolicyEnabled } @objc public var asOther: DBXTeamLogTeamSelectiveSyncPolicyOther? { - self as? DBXTeamLogTeamSelectiveSyncPolicyOther + return self as? DBXTeamLogTeamSelectiveSyncPolicyOther } } @@ -64076,6 +80856,7 @@ public class DBXTeamLogTeamSelectiveSyncPolicyChangedDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -64098,6 +80879,7 @@ public class DBXTeamLogTeamSelectiveSyncPolicyChangedType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -64123,6 +80905,7 @@ public class DBXTeamLogTeamSelectiveSyncSettingsChangedDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -64145,6 +80928,7 @@ public class DBXTeamLogTeamSelectiveSyncSettingsChangedType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -64154,17 +80938,14 @@ public class DBXTeamLogTeamSelectiveSyncSettingsChangedType: NSObject { public class DBXTeamLogTeamSharingWhitelistSubjectsChangedDetails: NSObject { /// Domains or emails added to the approved list for sharing externally. @objc - public var addedWhitelistSubjects: [String] { swift.addedWhitelistSubjects } + public var addedWhitelistSubjects: Array { swift.addedWhitelistSubjects } /// Domains or emails removed from the approved list for sharing externally. @objc - public var removedWhitelistSubjects: [String] { swift.removedWhitelistSubjects } + public var removedWhitelistSubjects: Array { swift.removedWhitelistSubjects } @objc - public init(addedWhitelistSubjects: [String], removedWhitelistSubjects: [String]) { - self.swift = TeamLog.TeamSharingWhitelistSubjectsChangedDetails( - addedWhitelistSubjects: addedWhitelistSubjects, - removedWhitelistSubjects: removedWhitelistSubjects - ) + public init(addedWhitelistSubjects: Array, removedWhitelistSubjects: Array) { + self.swift = TeamLog.TeamSharingWhitelistSubjectsChangedDetails(addedWhitelistSubjects: addedWhitelistSubjects, removedWhitelistSubjects: removedWhitelistSubjects) } let swift: TeamLog.TeamSharingWhitelistSubjectsChangedDetails @@ -64173,6 +80954,7 @@ public class DBXTeamLogTeamSharingWhitelistSubjectsChangedDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -64195,19 +80977,106 @@ public class DBXTeamLogTeamSharingWhitelistSubjectsChangedType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Added backup phone for two-step verification. +/// Created team storage report. +@objc +public class DBXTeamLogTeamStorageCreateReportDetails: NSObject { + + let swift: TeamLog.TeamStorageCreateReportDetails + + public init(swift: TeamLog.TeamStorageCreateReportDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Couldn't generate team storage report. +@objc +public class DBXTeamLogTeamStorageCreateReportFailedDetails: NSObject { + /// Failure reason. + @objc + public var failureReason: DBXTeamTeamReportFailureReason { DBXTeamTeamReportFailureReason(swift: swift.failureReason) } + + @objc + public init(failureReason: DBXTeamTeamReportFailureReason) { + self.swift = TeamLog.TeamStorageCreateReportFailedDetails(failureReason: failureReason.swift) + } + + let swift: TeamLog.TeamStorageCreateReportFailedDetails + + public init(swift: TeamLog.TeamStorageCreateReportFailedDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible TeamStorageCreateReportFailedType struct +@objc +public class DBXTeamLogTeamStorageCreateReportFailedType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.TeamStorageCreateReportFailedType(description_: description_) + } + + let swift: TeamLog.TeamStorageCreateReportFailedType + + public init(swift: TeamLog.TeamStorageCreateReportFailedType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible TeamStorageCreateReportType struct +@objc +public class DBXTeamLogTeamStorageCreateReportType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.TeamStorageCreateReportType(description_: description_) + } + + let swift: TeamLog.TeamStorageCreateReportType + + public init(swift: TeamLog.TeamStorageCreateReportType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Added backup phone for two-factor authentication. @objc public class DBXTeamLogTfaAddBackupPhoneDetails: NSObject { + let swift: TeamLog.TfaAddBackupPhoneDetails public init(swift: TeamLog.TfaAddBackupPhoneDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -64230,6 +81099,7 @@ public class DBXTeamLogTfaAddBackupPhoneType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -64237,12 +81107,14 @@ public class DBXTeamLogTfaAddBackupPhoneType: NSObject { /// Added members to two factor authentication exception list. @objc public class DBXTeamLogTfaAddExceptionDetails: NSObject { + let swift: TeamLog.TfaAddExceptionDetails public init(swift: TeamLog.TfaAddExceptionDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -64265,19 +81137,22 @@ public class DBXTeamLogTfaAddExceptionType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Added security key for two-step verification. +/// Added security key for two-factor authentication. @objc public class DBXTeamLogTfaAddSecurityKeyDetails: NSObject { + let swift: TeamLog.TfaAddSecurityKeyDetails public init(swift: TeamLog.TfaAddSecurityKeyDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -64300,19 +81175,22 @@ public class DBXTeamLogTfaAddSecurityKeyType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Changed backup phone for two-step verification. +/// Changed backup phone for two-factor authentication. @objc public class DBXTeamLogTfaChangeBackupPhoneDetails: NSObject { + let swift: TeamLog.TfaChangeBackupPhoneDetails public init(swift: TeamLog.TfaChangeBackupPhoneDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -64335,11 +81213,12 @@ public class DBXTeamLogTfaChangeBackupPhoneType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Changed two-step verification setting for team. +/// Changed two-factor authentication setting for team. @objc public class DBXTeamLogTfaChangePolicyDetails: NSObject { /// New change policy. @@ -64347,9 +81226,7 @@ public class DBXTeamLogTfaChangePolicyDetails: NSObject { public var newValue: DBXTeamPoliciesTwoStepVerificationPolicy { DBXTeamPoliciesTwoStepVerificationPolicy(swift: swift.newValue) } /// Previous change policy. Might be missing due to historical data gap. @objc - public var previousValue: DBXTeamPoliciesTwoStepVerificationPolicy? { guard let swift = swift.previousValue else { return nil } - return DBXTeamPoliciesTwoStepVerificationPolicy(swift: swift) - } + public var previousValue: DBXTeamPoliciesTwoStepVerificationPolicy? { guard let swift = swift.previousValue else { return nil }; return DBXTeamPoliciesTwoStepVerificationPolicy(swift: swift) } @objc public init(newValue: DBXTeamPoliciesTwoStepVerificationPolicy, previousValue: DBXTeamPoliciesTwoStepVerificationPolicy?) { @@ -64362,6 +81239,7 @@ public class DBXTeamLogTfaChangePolicyDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -64384,11 +81262,12 @@ public class DBXTeamLogTfaChangePolicyType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Enabled/disabled/changed two-step verification setting. +/// Enabled/disabled/changed two-factor authentication setting. @objc public class DBXTeamLogTfaChangeStatusDetails: NSObject { /// The new two factor authentication configuration. @@ -64396,10 +81275,7 @@ public class DBXTeamLogTfaChangeStatusDetails: NSObject { public var newValue: DBXTeamLogTfaConfiguration { DBXTeamLogTfaConfiguration(swift: swift.newValue) } /// The previous two factor authentication configuration. Might be missing due to historical data gap. @objc - public var previousValue: DBXTeamLogTfaConfiguration? { guard let swift = swift.previousValue else { return nil } - return DBXTeamLogTfaConfiguration(swift: swift) - } - + public var previousValue: DBXTeamLogTfaConfiguration? { guard let swift = swift.previousValue else { return nil }; return DBXTeamLogTfaConfiguration(swift: swift) } /// Used two factor authentication rescue code. This flag is relevant when the two factor authentication /// configuration is disabled. @objc @@ -64416,6 +81292,7 @@ public class DBXTeamLogTfaChangeStatusDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -64438,6 +81315,7 @@ public class DBXTeamLogTfaChangeStatusType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -64471,27 +81349,27 @@ public class DBXTeamLogTfaConfiguration: NSObject { @objc public var asAuthenticator: DBXTeamLogTfaConfigurationAuthenticator? { - self as? DBXTeamLogTfaConfigurationAuthenticator + return self as? DBXTeamLogTfaConfigurationAuthenticator } @objc public var asDisabled: DBXTeamLogTfaConfigurationDisabled? { - self as? DBXTeamLogTfaConfigurationDisabled + return self as? DBXTeamLogTfaConfigurationDisabled } @objc public var asEnabled: DBXTeamLogTfaConfigurationEnabled? { - self as? DBXTeamLogTfaConfigurationEnabled + return self as? DBXTeamLogTfaConfigurationEnabled } @objc public var asSms: DBXTeamLogTfaConfigurationSms? { - self as? DBXTeamLogTfaConfigurationSms + return self as? DBXTeamLogTfaConfigurationSms } @objc public var asOther: DBXTeamLogTfaConfigurationOther? { - self as? DBXTeamLogTfaConfigurationOther + return self as? DBXTeamLogTfaConfigurationOther } } @@ -64545,15 +81423,17 @@ public class DBXTeamLogTfaConfigurationOther: DBXTeamLogTfaConfiguration { } } -/// Removed backup phone for two-step verification. +/// Removed backup phone for two-factor authentication. @objc public class DBXTeamLogTfaRemoveBackupPhoneDetails: NSObject { + let swift: TeamLog.TfaRemoveBackupPhoneDetails public init(swift: TeamLog.TfaRemoveBackupPhoneDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -64576,6 +81456,7 @@ public class DBXTeamLogTfaRemoveBackupPhoneType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -64583,12 +81464,14 @@ public class DBXTeamLogTfaRemoveBackupPhoneType: NSObject { /// Removed members from two factor authentication exception list. @objc public class DBXTeamLogTfaRemoveExceptionDetails: NSObject { + let swift: TeamLog.TfaRemoveExceptionDetails public init(swift: TeamLog.TfaRemoveExceptionDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -64611,19 +81494,22 @@ public class DBXTeamLogTfaRemoveExceptionType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Removed security key for two-step verification. +/// Removed security key for two-factor authentication. @objc public class DBXTeamLogTfaRemoveSecurityKeyDetails: NSObject { + let swift: TeamLog.TfaRemoveSecurityKeyDetails public init(swift: TeamLog.TfaRemoveSecurityKeyDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -64646,19 +81532,22 @@ public class DBXTeamLogTfaRemoveSecurityKeyType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } -/// Reset two-step verification for team member. +/// Reset two-factor authentication for team member. @objc public class DBXTeamLogTfaResetDetails: NSObject { + let swift: TeamLog.TfaResetDetails public init(swift: TeamLog.TfaResetDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -64681,6 +81570,7 @@ public class DBXTeamLogTfaResetType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -64722,47 +81612,47 @@ public class DBXTeamLogTimeUnit: NSObject { @objc public var asDays: DBXTeamLogTimeUnitDays? { - self as? DBXTeamLogTimeUnitDays + return self as? DBXTeamLogTimeUnitDays } @objc public var asHours: DBXTeamLogTimeUnitHours? { - self as? DBXTeamLogTimeUnitHours + return self as? DBXTeamLogTimeUnitHours } @objc public var asMilliseconds: DBXTeamLogTimeUnitMilliseconds? { - self as? DBXTeamLogTimeUnitMilliseconds + return self as? DBXTeamLogTimeUnitMilliseconds } @objc public var asMinutes: DBXTeamLogTimeUnitMinutes? { - self as? DBXTeamLogTimeUnitMinutes + return self as? DBXTeamLogTimeUnitMinutes } @objc public var asMonths: DBXTeamLogTimeUnitMonths? { - self as? DBXTeamLogTimeUnitMonths + return self as? DBXTeamLogTimeUnitMonths } @objc public var asSeconds: DBXTeamLogTimeUnitSeconds? { - self as? DBXTeamLogTimeUnitSeconds + return self as? DBXTeamLogTimeUnitSeconds } @objc public var asWeeks: DBXTeamLogTimeUnitWeeks? { - self as? DBXTeamLogTimeUnitWeeks + return self as? DBXTeamLogTimeUnitWeeks } @objc public var asYears: DBXTeamLogTimeUnitYears? { - self as? DBXTeamLogTimeUnitYears + return self as? DBXTeamLogTimeUnitYears } @objc public var asOther: DBXTeamLogTimeUnitOther? { - self as? DBXTeamLogTimeUnitOther + return self as? DBXTeamLogTimeUnitOther } } @@ -64856,6 +81746,124 @@ public class DBXTeamLogTimeUnitOther: DBXTeamLogTimeUnit { } } +/// Policy for deciding whether members can edit team folders at the top level of the team space +@objc +public class DBXTeamLogTopLevelContentPolicy: NSObject { + let swift: TeamLog.TopLevelContentPolicy + + public init(swift: TeamLog.TopLevelContentPolicy) { + self.swift = swift + } + + public static func factory(swift: TeamLog.TopLevelContentPolicy) -> DBXTeamLogTopLevelContentPolicy { + switch swift { + case .adminsOnly: + return DBXTeamLogTopLevelContentPolicyAdminsOnly() + case .everyone: + return DBXTeamLogTopLevelContentPolicyEveryone() + case .other: + return DBXTeamLogTopLevelContentPolicyOther() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asAdminsOnly: DBXTeamLogTopLevelContentPolicyAdminsOnly? { + return self as? DBXTeamLogTopLevelContentPolicyAdminsOnly + } + + @objc + public var asEveryone: DBXTeamLogTopLevelContentPolicyEveryone? { + return self as? DBXTeamLogTopLevelContentPolicyEveryone + } + + @objc + public var asOther: DBXTeamLogTopLevelContentPolicyOther? { + return self as? DBXTeamLogTopLevelContentPolicyOther + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogTopLevelContentPolicyAdminsOnly: DBXTeamLogTopLevelContentPolicy { + @objc + public init() { + let swift = TeamLog.TopLevelContentPolicy.adminsOnly + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogTopLevelContentPolicyEveryone: DBXTeamLogTopLevelContentPolicy { + @objc + public init() { + let swift = TeamLog.TopLevelContentPolicy.everyone + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamLogTopLevelContentPolicyOther: DBXTeamLogTopLevelContentPolicy { + @objc + public init() { + let swift = TeamLog.TopLevelContentPolicy.other + super.init(swift: swift) + } +} + +/// Changed top level content setting for team. +@objc +public class DBXTeamLogTopLevelContentPolicyChangedDetails: NSObject { + /// To. + @objc + public var newValue: DBXTeamLogTopLevelContentPolicy { DBXTeamLogTopLevelContentPolicy(swift: swift.newValue) } + /// From. + @objc + public var previousValue: DBXTeamLogTopLevelContentPolicy { DBXTeamLogTopLevelContentPolicy(swift: swift.previousValue) } + + @objc + public init(newValue: DBXTeamLogTopLevelContentPolicy, previousValue: DBXTeamLogTopLevelContentPolicy) { + self.swift = TeamLog.TopLevelContentPolicyChangedDetails(newValue: newValue.swift, previousValue: previousValue.swift) + } + + let swift: TeamLog.TopLevelContentPolicyChangedDetails + + public init(swift: TeamLog.TopLevelContentPolicyChangedDetails) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + +/// Objective-C compatible TopLevelContentPolicyChangedType struct +@objc +public class DBXTeamLogTopLevelContentPolicyChangedType: NSObject { + /// (no description) + @objc + public var description_: String { swift.description_ } + + @objc + public init(description_: String) { + self.swift = TeamLog.TopLevelContentPolicyChangedType(description_: description_) + } + + let swift: TeamLog.TopLevelContentPolicyChangedType + + public init(swift: TeamLog.TopLevelContentPolicyChangedType) { + self.swift = swift + } + + + @objc + public override var description: String { swift.description } +} + /// User that is not a member of the team but considered trusted. @objc public class DBXTeamLogTrustedNonTeamMemberLogInfo: DBXTeamLogUserLogInfo { @@ -64864,25 +81872,11 @@ public class DBXTeamLogTrustedNonTeamMemberLogInfo: DBXTeamLogUserLogInfo { public var trustedNonTeamMemberType: DBXTeamLogTrustedNonTeamMemberType { DBXTeamLogTrustedNonTeamMemberType(swift: subSwift.trustedNonTeamMemberType) } /// Details about this user's trusted team. @objc - public var team: DBXTeamLogTeamLogInfo? { guard let swift = subSwift.team else { return nil } - return DBXTeamLogTeamLogInfo(swift: swift) - } - - @objc - public init( - trustedNonTeamMemberType: DBXTeamLogTrustedNonTeamMemberType, - accountId: String?, - displayName: String?, - email: String?, - team: DBXTeamLogTeamLogInfo? - ) { - let swift = TeamLog.TrustedNonTeamMemberLogInfo( - trustedNonTeamMemberType: trustedNonTeamMemberType.swift, - accountId: accountId, - displayName: displayName, - email: email, - team: team?.swift - ) + public var team: DBXTeamLogTeamLogInfo? { guard let swift = subSwift.team else { return nil }; return DBXTeamLogTeamLogInfo(swift: swift) } + + @objc + public init(trustedNonTeamMemberType: DBXTeamLogTrustedNonTeamMemberType, accountId: String?, displayName: String?, email: String?, team: DBXTeamLogTeamLogInfo?) { + let swift = TeamLog.TrustedNonTeamMemberLogInfo(trustedNonTeamMemberType: trustedNonTeamMemberType.swift, accountId: accountId, displayName: displayName, email: email, team: team?.swift) self.subSwift = swift super.init(swift: swift) } @@ -64894,6 +81888,7 @@ public class DBXTeamLogTrustedNonTeamMemberLogInfo: DBXTeamLogUserLogInfo { super.init(swift: swift) } + @objc public override var description: String { subSwift.description } } @@ -64923,17 +81918,17 @@ public class DBXTeamLogTrustedNonTeamMemberType: NSObject { @objc public var asEnterpriseAdmin: DBXTeamLogTrustedNonTeamMemberTypeEnterpriseAdmin? { - self as? DBXTeamLogTrustedNonTeamMemberTypeEnterpriseAdmin + return self as? DBXTeamLogTrustedNonTeamMemberTypeEnterpriseAdmin } @objc public var asMultiInstanceAdmin: DBXTeamLogTrustedNonTeamMemberTypeMultiInstanceAdmin? { - self as? DBXTeamLogTrustedNonTeamMemberTypeMultiInstanceAdmin + return self as? DBXTeamLogTrustedNonTeamMemberTypeMultiInstanceAdmin } @objc public var asOther: DBXTeamLogTrustedNonTeamMemberTypeOther? { - self as? DBXTeamLogTrustedNonTeamMemberTypeOther + return self as? DBXTeamLogTrustedNonTeamMemberTypeOther } } @@ -64998,32 +81993,32 @@ public class DBXTeamLogTrustedTeamsRequestAction: NSObject { @objc public var asAccepted: DBXTeamLogTrustedTeamsRequestActionAccepted? { - self as? DBXTeamLogTrustedTeamsRequestActionAccepted + return self as? DBXTeamLogTrustedTeamsRequestActionAccepted } @objc public var asDeclined: DBXTeamLogTrustedTeamsRequestActionDeclined? { - self as? DBXTeamLogTrustedTeamsRequestActionDeclined + return self as? DBXTeamLogTrustedTeamsRequestActionDeclined } @objc public var asExpired: DBXTeamLogTrustedTeamsRequestActionExpired? { - self as? DBXTeamLogTrustedTeamsRequestActionExpired + return self as? DBXTeamLogTrustedTeamsRequestActionExpired } @objc public var asInvited: DBXTeamLogTrustedTeamsRequestActionInvited? { - self as? DBXTeamLogTrustedTeamsRequestActionInvited + return self as? DBXTeamLogTrustedTeamsRequestActionInvited } @objc public var asRevoked: DBXTeamLogTrustedTeamsRequestActionRevoked? { - self as? DBXTeamLogTrustedTeamsRequestActionRevoked + return self as? DBXTeamLogTrustedTeamsRequestActionRevoked } @objc public var asOther: DBXTeamLogTrustedTeamsRequestActionOther? { - self as? DBXTeamLogTrustedTeamsRequestActionOther + return self as? DBXTeamLogTrustedTeamsRequestActionOther } } @@ -65114,22 +82109,22 @@ public class DBXTeamLogTrustedTeamsRequestState: NSObject { @objc public var asInvited: DBXTeamLogTrustedTeamsRequestStateInvited? { - self as? DBXTeamLogTrustedTeamsRequestStateInvited + return self as? DBXTeamLogTrustedTeamsRequestStateInvited } @objc public var asLinked: DBXTeamLogTrustedTeamsRequestStateLinked? { - self as? DBXTeamLogTrustedTeamsRequestStateLinked + return self as? DBXTeamLogTrustedTeamsRequestStateLinked } @objc public var asUnlinked: DBXTeamLogTrustedTeamsRequestStateUnlinked? { - self as? DBXTeamLogTrustedTeamsRequestStateUnlinked + return self as? DBXTeamLogTrustedTeamsRequestStateUnlinked } @objc public var asOther: DBXTeamLogTrustedTeamsRequestStateOther? { - self as? DBXTeamLogTrustedTeamsRequestStateOther + return self as? DBXTeamLogTrustedTeamsRequestStateOther } } @@ -65181,9 +82176,7 @@ public class DBXTeamLogTwoAccountChangePolicyDetails: NSObject { public var newValue: DBXTeamLogTwoAccountPolicy { DBXTeamLogTwoAccountPolicy(swift: swift.newValue) } /// Previous two account policy. Might be missing due to historical data gap. @objc - public var previousValue: DBXTeamLogTwoAccountPolicy? { guard let swift = swift.previousValue else { return nil } - return DBXTeamLogTwoAccountPolicy(swift: swift) - } + public var previousValue: DBXTeamLogTwoAccountPolicy? { guard let swift = swift.previousValue else { return nil }; return DBXTeamLogTwoAccountPolicy(swift: swift) } @objc public init(newValue: DBXTeamLogTwoAccountPolicy, previousValue: DBXTeamLogTwoAccountPolicy?) { @@ -65196,6 +82189,7 @@ public class DBXTeamLogTwoAccountChangePolicyDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -65218,6 +82212,7 @@ public class DBXTeamLogTwoAccountChangePolicyType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -65247,17 +82242,17 @@ public class DBXTeamLogTwoAccountPolicy: NSObject { @objc public var asDisabled: DBXTeamLogTwoAccountPolicyDisabled? { - self as? DBXTeamLogTwoAccountPolicyDisabled + return self as? DBXTeamLogTwoAccountPolicyDisabled } @objc public var asEnabled: DBXTeamLogTwoAccountPolicyEnabled? { - self as? DBXTeamLogTwoAccountPolicyEnabled + return self as? DBXTeamLogTwoAccountPolicyEnabled } @objc public var asOther: DBXTeamLogTwoAccountPolicyOther? { - self as? DBXTeamLogTwoAccountPolicyOther + return self as? DBXTeamLogTwoAccountPolicyOther } } @@ -65294,12 +82289,14 @@ public class DBXTeamLogTwoAccountPolicyOther: DBXTeamLogTwoAccountPolicy { /// Reverted naming convention. @objc public class DBXTeamLogUndoNamingConventionDetails: NSObject { + let swift: TeamLog.UndoNamingConventionDetails public init(swift: TeamLog.UndoNamingConventionDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -65322,6 +82319,7 @@ public class DBXTeamLogUndoNamingConventionType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -65329,12 +82327,14 @@ public class DBXTeamLogUndoNamingConventionType: NSObject { /// Removed multi-file organize. @objc public class DBXTeamLogUndoOrganizeFolderWithTidyDetails: NSObject { + let swift: TeamLog.UndoOrganizeFolderWithTidyDetails public init(swift: TeamLog.UndoOrganizeFolderWithTidyDetails) { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -65357,6 +82357,7 @@ public class DBXTeamLogUndoOrganizeFolderWithTidyType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -65364,6 +82365,7 @@ public class DBXTeamLogUndoOrganizeFolderWithTidyType: NSObject { /// User linked app @objc public class DBXTeamLogUserLinkedAppLogInfo: DBXTeamLogAppLogInfo { + let subSwift: TeamLog.UserLinkedAppLogInfo public init(swift: TeamLog.UserLinkedAppLogInfo) { @@ -65371,6 +82373,7 @@ public class DBXTeamLogUserLinkedAppLogInfo: DBXTeamLogAppLogInfo { super.init(swift: swift) } + @objc public override var description: String { subSwift.description } } @@ -65399,6 +82402,7 @@ public class DBXTeamLogUserNameLogInfo: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -65406,6 +82410,7 @@ public class DBXTeamLogUserNameLogInfo: NSObject { /// User or team linked app. Used when linked type is missing due to historical data gap. @objc public class DBXTeamLogUserOrTeamLinkedAppLogInfo: DBXTeamLogAppLogInfo { + let subSwift: TeamLog.UserOrTeamLinkedAppLogInfo public init(swift: TeamLog.UserOrTeamLinkedAppLogInfo) { @@ -65413,6 +82418,7 @@ public class DBXTeamLogUserOrTeamLinkedAppLogInfo: DBXTeamLogAppLogInfo { super.init(swift: swift) } + @objc public override var description: String { subSwift.description } } @@ -65422,10 +82428,10 @@ public class DBXTeamLogUserOrTeamLinkedAppLogInfo: DBXTeamLogAppLogInfo { public class DBXTeamLogUserTagsAddedDetails: NSObject { /// values. @objc - public var values: [String] { swift.values } + public var values: Array { swift.values } @objc - public init(values: [String]) { + public init(values: Array) { self.swift = TeamLog.UserTagsAddedDetails(values: values) } @@ -65435,6 +82441,7 @@ public class DBXTeamLogUserTagsAddedDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -65457,6 +82464,7 @@ public class DBXTeamLogUserTagsAddedType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -65466,10 +82474,10 @@ public class DBXTeamLogUserTagsAddedType: NSObject { public class DBXTeamLogUserTagsRemovedDetails: NSObject { /// values. @objc - public var values: [String] { swift.values } + public var values: Array { swift.values } @objc - public init(values: [String]) { + public init(values: Array) { self.swift = TeamLog.UserTagsRemovedDetails(values: values) } @@ -65479,6 +82487,7 @@ public class DBXTeamLogUserTagsRemovedDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -65501,6 +82510,7 @@ public class DBXTeamLogUserTagsRemovedType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -65526,6 +82536,7 @@ public class DBXTeamLogViewerInfoPolicyChangedDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -65548,6 +82559,7 @@ public class DBXTeamLogViewerInfoPolicyChangedType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -65577,17 +82589,17 @@ public class DBXTeamLogWatermarkingPolicy: NSObject { @objc public var asDisabled: DBXTeamLogWatermarkingPolicyDisabled? { - self as? DBXTeamLogWatermarkingPolicyDisabled + return self as? DBXTeamLogWatermarkingPolicyDisabled } @objc public var asEnabled: DBXTeamLogWatermarkingPolicyEnabled? { - self as? DBXTeamLogWatermarkingPolicyEnabled + return self as? DBXTeamLogWatermarkingPolicyEnabled } @objc public var asOther: DBXTeamLogWatermarkingPolicyOther? { - self as? DBXTeamLogWatermarkingPolicyOther + return self as? DBXTeamLogWatermarkingPolicyOther } } @@ -65642,6 +82654,7 @@ public class DBXTeamLogWatermarkingPolicyChangedDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -65664,6 +82677,7 @@ public class DBXTeamLogWatermarkingPolicyChangedType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -65673,10 +82687,7 @@ public class DBXTeamLogWatermarkingPolicyChangedType: NSObject { public class DBXTeamLogWebDeviceSessionLogInfo: DBXTeamLogDeviceSessionLogInfo { /// Web session unique id. @objc - public var sessionInfo: DBXTeamLogWebSessionLogInfo? { guard let swift = subSwift.sessionInfo else { return nil } - return DBXTeamLogWebSessionLogInfo(swift: swift) - } - + public var sessionInfo: DBXTeamLogWebSessionLogInfo? { guard let swift = subSwift.sessionInfo else { return nil }; return DBXTeamLogWebSessionLogInfo(swift: swift) } /// Information on the hosting device. @objc public var userAgent: String { subSwift.userAgent } @@ -65689,15 +82700,7 @@ public class DBXTeamLogWebDeviceSessionLogInfo: DBXTeamLogDeviceSessionLogInfo { @objc public init(userAgent: String, os: String, browser: String, ipAddress: String?, created: Date?, updated: Date?, sessionInfo: DBXTeamLogWebSessionLogInfo?) { - let swift = TeamLog.WebDeviceSessionLogInfo( - userAgent: userAgent, - os: os, - browser: browser, - ipAddress: ipAddress, - created: created, - updated: updated, - sessionInfo: sessionInfo?.subSwift - ) + let swift = TeamLog.WebDeviceSessionLogInfo(userAgent: userAgent, os: os, browser: browser, ipAddress: ipAddress, created: created, updated: updated, sessionInfo: sessionInfo?.subSwift) self.subSwift = swift super.init(swift: swift) } @@ -65709,6 +82712,7 @@ public class DBXTeamLogWebDeviceSessionLogInfo: DBXTeamLogDeviceSessionLogInfo { super.init(swift: swift) } + @objc public override var description: String { subSwift.description } } @@ -65716,6 +82720,7 @@ public class DBXTeamLogWebDeviceSessionLogInfo: DBXTeamLogDeviceSessionLogInfo { /// Web session. @objc public class DBXTeamLogWebSessionLogInfo: DBXTeamLogSessionLogInfo { + let subSwift: TeamLog.WebSessionLogInfo public init(swift: TeamLog.WebSessionLogInfo) { @@ -65723,6 +82728,7 @@ public class DBXTeamLogWebSessionLogInfo: DBXTeamLogSessionLogInfo { super.init(swift: swift) } + @objc public override var description: String { subSwift.description } } @@ -65748,6 +82754,7 @@ public class DBXTeamLogWebSessionsChangeActiveSessionLimitDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -65770,6 +82777,7 @@ public class DBXTeamLogWebSessionsChangeActiveSessionLimitType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -65779,15 +82787,10 @@ public class DBXTeamLogWebSessionsChangeActiveSessionLimitType: NSObject { public class DBXTeamLogWebSessionsChangeFixedLengthPolicyDetails: NSObject { /// New session length policy. Might be missing due to historical data gap. @objc - public var newValue: DBXTeamLogWebSessionsFixedLengthPolicy? { guard let swift = swift.newValue else { return nil } - return DBXTeamLogWebSessionsFixedLengthPolicy(swift: swift) - } - + public var newValue: DBXTeamLogWebSessionsFixedLengthPolicy? { guard let swift = swift.newValue else { return nil }; return DBXTeamLogWebSessionsFixedLengthPolicy(swift: swift) } /// Previous session length policy. Might be missing due to historical data gap. @objc - public var previousValue: DBXTeamLogWebSessionsFixedLengthPolicy? { guard let swift = swift.previousValue else { return nil } - return DBXTeamLogWebSessionsFixedLengthPolicy(swift: swift) - } + public var previousValue: DBXTeamLogWebSessionsFixedLengthPolicy? { guard let swift = swift.previousValue else { return nil }; return DBXTeamLogWebSessionsFixedLengthPolicy(swift: swift) } @objc public init(newValue: DBXTeamLogWebSessionsFixedLengthPolicy?, previousValue: DBXTeamLogWebSessionsFixedLengthPolicy?) { @@ -65800,6 +82803,7 @@ public class DBXTeamLogWebSessionsChangeFixedLengthPolicyDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -65822,6 +82826,7 @@ public class DBXTeamLogWebSessionsChangeFixedLengthPolicyType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -65831,15 +82836,10 @@ public class DBXTeamLogWebSessionsChangeFixedLengthPolicyType: NSObject { public class DBXTeamLogWebSessionsChangeIdleLengthPolicyDetails: NSObject { /// New idle length policy. Might be missing due to historical data gap. @objc - public var newValue: DBXTeamLogWebSessionsIdleLengthPolicy? { guard let swift = swift.newValue else { return nil } - return DBXTeamLogWebSessionsIdleLengthPolicy(swift: swift) - } - + public var newValue: DBXTeamLogWebSessionsIdleLengthPolicy? { guard let swift = swift.newValue else { return nil }; return DBXTeamLogWebSessionsIdleLengthPolicy(swift: swift) } /// Previous idle length policy. Might be missing due to historical data gap. @objc - public var previousValue: DBXTeamLogWebSessionsIdleLengthPolicy? { guard let swift = swift.previousValue else { return nil } - return DBXTeamLogWebSessionsIdleLengthPolicy(swift: swift) - } + public var previousValue: DBXTeamLogWebSessionsIdleLengthPolicy? { guard let swift = swift.previousValue else { return nil }; return DBXTeamLogWebSessionsIdleLengthPolicy(swift: swift) } @objc public init(newValue: DBXTeamLogWebSessionsIdleLengthPolicy?, previousValue: DBXTeamLogWebSessionsIdleLengthPolicy?) { @@ -65852,6 +82852,7 @@ public class DBXTeamLogWebSessionsChangeIdleLengthPolicyDetails: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -65874,6 +82875,7 @@ public class DBXTeamLogWebSessionsChangeIdleLengthPolicyType: NSObject { self.swift = swift } + @objc public override var description: String { swift.description } } @@ -65904,17 +82906,17 @@ public class DBXTeamLogWebSessionsFixedLengthPolicy: NSObject { @objc public var asDefined: DBXTeamLogWebSessionsFixedLengthPolicyDefined? { - self as? DBXTeamLogWebSessionsFixedLengthPolicyDefined + return self as? DBXTeamLogWebSessionsFixedLengthPolicyDefined } @objc public var asUndefined: DBXTeamLogWebSessionsFixedLengthPolicyUndefined? { - self as? DBXTeamLogWebSessionsFixedLengthPolicyUndefined + return self as? DBXTeamLogWebSessionsFixedLengthPolicyUndefined } @objc public var asOther: DBXTeamLogWebSessionsFixedLengthPolicyOther? { - self as? DBXTeamLogWebSessionsFixedLengthPolicyOther + return self as? DBXTeamLogWebSessionsFixedLengthPolicyOther } } @@ -65926,7 +82928,7 @@ public class DBXTeamLogWebSessionsFixedLengthPolicyDefined: DBXTeamLogWebSession @objc public init(_ arg: DBXTeamLogDurationLogInfo) { - self.defined = arg + defined = arg let swift = TeamLog.WebSessionsFixedLengthPolicy.defined(arg.swift) super.init(swift: swift) } @@ -65978,17 +82980,17 @@ public class DBXTeamLogWebSessionsIdleLengthPolicy: NSObject { @objc public var asDefined: DBXTeamLogWebSessionsIdleLengthPolicyDefined? { - self as? DBXTeamLogWebSessionsIdleLengthPolicyDefined + return self as? DBXTeamLogWebSessionsIdleLengthPolicyDefined } @objc public var asUndefined: DBXTeamLogWebSessionsIdleLengthPolicyUndefined? { - self as? DBXTeamLogWebSessionsIdleLengthPolicyUndefined + return self as? DBXTeamLogWebSessionsIdleLengthPolicyUndefined } @objc public var asOther: DBXTeamLogWebSessionsIdleLengthPolicyOther? { - self as? DBXTeamLogWebSessionsIdleLengthPolicyOther + return self as? DBXTeamLogWebSessionsIdleLengthPolicyOther } } @@ -66000,7 +83002,7 @@ public class DBXTeamLogWebSessionsIdleLengthPolicyDefined: DBXTeamLogWebSessions @objc public init(_ arg: DBXTeamLogDurationLogInfo) { - self.defined = arg + defined = arg let swift = TeamLog.WebSessionsIdleLengthPolicy.defined(arg.swift) super.init(swift: swift) } @@ -66025,3 +83027,4 @@ public class DBXTeamLogWebSessionsIdleLengthPolicyOther: DBXTeamLogWebSessionsId super.init(swift: swift) } } + diff --git a/Source/SwiftyDropboxObjC/Shared/Generated/DBXTeamLogRoutes.swift b/Source/SwiftyDropboxObjC/Shared/Generated/DBXTeamLogRoutes.swift index 7670b6da..5be0fca2 100644 --- a/Source/SwiftyDropboxObjC/Shared/Generated/DBXTeamLogRoutes.swift +++ b/Source/SwiftyDropboxObjC/Shared/Generated/DBXTeamLogRoutes.swift @@ -120,7 +120,7 @@ public class DBXTeamLogGetEventsRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXTeamLogGetTeamEventsResult? + var objc: DBXTeamLogGetTeamEventsResult? = nil if let swift = result { objc = DBXTeamLogGetTeamEventsResult(swift: swift) } @@ -187,7 +187,7 @@ public class DBXTeamLogGetEventsContinueRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXTeamLogGetTeamEventsResult? + var objc: DBXTeamLogGetTeamEventsResult? = nil if let swift = result { objc = DBXTeamLogGetTeamEventsResult(swift: swift) } diff --git a/Source/SwiftyDropboxObjC/Shared/Generated/DBXTeamPolicies.swift b/Source/SwiftyDropboxObjC/Shared/Generated/DBXTeamPolicies.swift index 75ffee5f..9aba0253 100644 --- a/Source/SwiftyDropboxObjC/Shared/Generated/DBXTeamPolicies.swift +++ b/Source/SwiftyDropboxObjC/Shared/Generated/DBXTeamPolicies.swift @@ -165,6 +165,177 @@ public class DBXTeamPoliciesComputerBackupPolicyStateOther: DBXTeamPoliciesCompu } } +/// Policy governing default expiration date for new links shared outside the team. +@objc +public class DBXTeamPoliciesDefaultLinkExpirationDaysPolicy: NSObject { + let swift: TeamPolicies.DefaultLinkExpirationDaysPolicy + + public init(swift: TeamPolicies.DefaultLinkExpirationDaysPolicy) { + self.swift = swift + } + + public static func factory(swift: TeamPolicies.DefaultLinkExpirationDaysPolicy) -> DBXTeamPoliciesDefaultLinkExpirationDaysPolicy { + switch swift { + case .none: + return DBXTeamPoliciesDefaultLinkExpirationDaysPolicyNone() + case .day1: + return DBXTeamPoliciesDefaultLinkExpirationDaysPolicyDay1() + case .day3: + return DBXTeamPoliciesDefaultLinkExpirationDaysPolicyDay3() + case .day7: + return DBXTeamPoliciesDefaultLinkExpirationDaysPolicyDay7() + case .day30: + return DBXTeamPoliciesDefaultLinkExpirationDaysPolicyDay30() + case .day90: + return DBXTeamPoliciesDefaultLinkExpirationDaysPolicyDay90() + case .day180: + return DBXTeamPoliciesDefaultLinkExpirationDaysPolicyDay180() + case .year1: + return DBXTeamPoliciesDefaultLinkExpirationDaysPolicyYear1() + case .other: + return DBXTeamPoliciesDefaultLinkExpirationDaysPolicyOther() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asNone: DBXTeamPoliciesDefaultLinkExpirationDaysPolicyNone? { + self as? DBXTeamPoliciesDefaultLinkExpirationDaysPolicyNone + } + + @objc + public var asDay1: DBXTeamPoliciesDefaultLinkExpirationDaysPolicyDay1? { + self as? DBXTeamPoliciesDefaultLinkExpirationDaysPolicyDay1 + } + + @objc + public var asDay3: DBXTeamPoliciesDefaultLinkExpirationDaysPolicyDay3? { + self as? DBXTeamPoliciesDefaultLinkExpirationDaysPolicyDay3 + } + + @objc + public var asDay7: DBXTeamPoliciesDefaultLinkExpirationDaysPolicyDay7? { + self as? DBXTeamPoliciesDefaultLinkExpirationDaysPolicyDay7 + } + + @objc + public var asDay30: DBXTeamPoliciesDefaultLinkExpirationDaysPolicyDay30? { + self as? DBXTeamPoliciesDefaultLinkExpirationDaysPolicyDay30 + } + + @objc + public var asDay90: DBXTeamPoliciesDefaultLinkExpirationDaysPolicyDay90? { + self as? DBXTeamPoliciesDefaultLinkExpirationDaysPolicyDay90 + } + + @objc + public var asDay180: DBXTeamPoliciesDefaultLinkExpirationDaysPolicyDay180? { + self as? DBXTeamPoliciesDefaultLinkExpirationDaysPolicyDay180 + } + + @objc + public var asYear1: DBXTeamPoliciesDefaultLinkExpirationDaysPolicyYear1? { + self as? DBXTeamPoliciesDefaultLinkExpirationDaysPolicyYear1 + } + + @objc + public var asOther: DBXTeamPoliciesDefaultLinkExpirationDaysPolicyOther? { + self as? DBXTeamPoliciesDefaultLinkExpirationDaysPolicyOther + } +} + +/// New links shared outside the team default to no expiration date. +@objc +public class DBXTeamPoliciesDefaultLinkExpirationDaysPolicyNone: DBXTeamPoliciesDefaultLinkExpirationDaysPolicy { + @objc + public init() { + let swift = TeamPolicies.DefaultLinkExpirationDaysPolicy.none + super.init(swift: swift) + } +} + +/// New links shared outside the team default to expire in one day. +@objc +public class DBXTeamPoliciesDefaultLinkExpirationDaysPolicyDay1: DBXTeamPoliciesDefaultLinkExpirationDaysPolicy { + @objc + public init() { + let swift = TeamPolicies.DefaultLinkExpirationDaysPolicy.day1 + super.init(swift: swift) + } +} + +/// New links shared outside the team default to expire in three days. +@objc +public class DBXTeamPoliciesDefaultLinkExpirationDaysPolicyDay3: DBXTeamPoliciesDefaultLinkExpirationDaysPolicy { + @objc + public init() { + let swift = TeamPolicies.DefaultLinkExpirationDaysPolicy.day3 + super.init(swift: swift) + } +} + +/// New links shared outside the team default to expire in seven days. +@objc +public class DBXTeamPoliciesDefaultLinkExpirationDaysPolicyDay7: DBXTeamPoliciesDefaultLinkExpirationDaysPolicy { + @objc + public init() { + let swift = TeamPolicies.DefaultLinkExpirationDaysPolicy.day7 + super.init(swift: swift) + } +} + +/// New links shared outside the team default to expire in 30 days. +@objc +public class DBXTeamPoliciesDefaultLinkExpirationDaysPolicyDay30: DBXTeamPoliciesDefaultLinkExpirationDaysPolicy { + @objc + public init() { + let swift = TeamPolicies.DefaultLinkExpirationDaysPolicy.day30 + super.init(swift: swift) + } +} + +/// New links shared outside the team default to expire in 90 days. +@objc +public class DBXTeamPoliciesDefaultLinkExpirationDaysPolicyDay90: DBXTeamPoliciesDefaultLinkExpirationDaysPolicy { + @objc + public init() { + let swift = TeamPolicies.DefaultLinkExpirationDaysPolicy.day90 + super.init(swift: swift) + } +} + +/// New links shared outside the team default to expire in 180 days. +@objc +public class DBXTeamPoliciesDefaultLinkExpirationDaysPolicyDay180: DBXTeamPoliciesDefaultLinkExpirationDaysPolicy { + @objc + public init() { + let swift = TeamPolicies.DefaultLinkExpirationDaysPolicy.day180 + super.init(swift: swift) + } +} + +/// New links shared outside the team default to expire in 365 days. +@objc +public class DBXTeamPoliciesDefaultLinkExpirationDaysPolicyYear1: DBXTeamPoliciesDefaultLinkExpirationDaysPolicy { + @objc + public init() { + let swift = TeamPolicies.DefaultLinkExpirationDaysPolicy.year1 + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamPoliciesDefaultLinkExpirationDaysPolicyOther: DBXTeamPoliciesDefaultLinkExpirationDaysPolicy { + @objc + public init() { + let swift = TeamPolicies.DefaultLinkExpirationDaysPolicy.other + super.init(swift: swift) + } +} + /// Objective-C compatible EmmState union @objc public class DBXTeamPoliciesEmmState: NSObject { @@ -251,6 +422,75 @@ public class DBXTeamPoliciesEmmStateOther: DBXTeamPoliciesEmmState { } } +/// Policy governing whether new links shared outside the team require passwords. +@objc +public class DBXTeamPoliciesEnforceLinkPasswordPolicy: NSObject { + let swift: TeamPolicies.EnforceLinkPasswordPolicy + + public init(swift: TeamPolicies.EnforceLinkPasswordPolicy) { + self.swift = swift + } + + public static func factory(swift: TeamPolicies.EnforceLinkPasswordPolicy) -> DBXTeamPoliciesEnforceLinkPasswordPolicy { + switch swift { + case .optional: + return DBXTeamPoliciesEnforceLinkPasswordPolicyOptional() + case .required: + return DBXTeamPoliciesEnforceLinkPasswordPolicyRequired() + case .other: + return DBXTeamPoliciesEnforceLinkPasswordPolicyOther() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asOptional: DBXTeamPoliciesEnforceLinkPasswordPolicyOptional? { + self as? DBXTeamPoliciesEnforceLinkPasswordPolicyOptional + } + + @objc + public var asRequired: DBXTeamPoliciesEnforceLinkPasswordPolicyRequired? { + self as? DBXTeamPoliciesEnforceLinkPasswordPolicyRequired + } + + @objc + public var asOther: DBXTeamPoliciesEnforceLinkPasswordPolicyOther? { + self as? DBXTeamPoliciesEnforceLinkPasswordPolicyOther + } +} + +/// New links shared outside the team do not require passwords. +@objc +public class DBXTeamPoliciesEnforceLinkPasswordPolicyOptional: DBXTeamPoliciesEnforceLinkPasswordPolicy { + @objc + public init() { + let swift = TeamPolicies.EnforceLinkPasswordPolicy.optional + super.init(swift: swift) + } +} + +/// New links shared outside the team require passwords. +@objc +public class DBXTeamPoliciesEnforceLinkPasswordPolicyRequired: DBXTeamPoliciesEnforceLinkPasswordPolicy { + @objc + public init() { + let swift = TeamPolicies.EnforceLinkPasswordPolicy.required + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamPoliciesEnforceLinkPasswordPolicyOther: DBXTeamPoliciesEnforceLinkPasswordPolicy { + @objc + public init() { + let swift = TeamPolicies.EnforceLinkPasswordPolicy.other + super.init(swift: swift) + } +} + /// Objective-C compatible ExternalDriveBackupPolicyState union @objc public class DBXTeamPoliciesExternalDriveBackupPolicyState: NSObject { @@ -423,6 +663,8 @@ public class DBXTeamPoliciesFileProviderMigrationPolicyState: NSObject { return DBXTeamPoliciesFileProviderMigrationPolicyStateEnabled() case .default_: return DBXTeamPoliciesFileProviderMigrationPolicyStateDefault_() + case .immediate: + return DBXTeamPoliciesFileProviderMigrationPolicyStateImmediate() case .other: return DBXTeamPoliciesFileProviderMigrationPolicyStateOther() } @@ -446,6 +688,11 @@ public class DBXTeamPoliciesFileProviderMigrationPolicyState: NSObject { self as? DBXTeamPoliciesFileProviderMigrationPolicyStateDefault_ } + @objc + public var asImmediate: DBXTeamPoliciesFileProviderMigrationPolicyStateImmediate? { + self as? DBXTeamPoliciesFileProviderMigrationPolicyStateImmediate + } + @objc public var asOther: DBXTeamPoliciesFileProviderMigrationPolicyStateOther? { self as? DBXTeamPoliciesFileProviderMigrationPolicyStateOther @@ -482,6 +729,16 @@ public class DBXTeamPoliciesFileProviderMigrationPolicyStateDefault_: DBXTeamPol } } +/// Team admin has chosen to do File Provider Migration immediately for the team. +@objc +public class DBXTeamPoliciesFileProviderMigrationPolicyStateImmediate: DBXTeamPoliciesFileProviderMigrationPolicyState { + @objc + public init() { + let swift = TeamPolicies.FileProviderMigrationPolicyState.immediate + super.init(swift: swift) + } +} + /// An unspecified error. @objc public class DBXTeamPoliciesFileProviderMigrationPolicyStateOther: DBXTeamPoliciesFileProviderMigrationPolicyState { @@ -1022,7 +1279,7 @@ public class DBXTeamPoliciesPasswordStrengthPolicy: NSObject { } } -/// User passwords will adhere to the minimal password strength policy. +/// User passwords will not adhere to a password strength policy. @objc public class DBXTeamPoliciesPasswordStrengthPolicyMinimalRequirements: DBXTeamPoliciesPasswordStrengthPolicy { @objc @@ -1032,7 +1289,8 @@ public class DBXTeamPoliciesPasswordStrengthPolicyMinimalRequirements: DBXTeamPo } } -/// User passwords will adhere to the moderate password strength policy. +/// User passwords will adhere to the strong password strength policy. Note that product surfaces refer to this +/// as the strong policy but the value must be kept as is for backwards compatability. @objc public class DBXTeamPoliciesPasswordStrengthPolicyModeratePassword: DBXTeamPoliciesPasswordStrengthPolicy { @objc @@ -1042,7 +1300,8 @@ public class DBXTeamPoliciesPasswordStrengthPolicyModeratePassword: DBXTeamPolic } } -/// User passwords will adhere to the very strong password strength policy. +/// User passwords will adhere to the very strong password strength policy. Note that product surfaces refer to +/// this as the very strong policy but the value must be kept as is for backwards compatability. @objc public class DBXTeamPoliciesPasswordStrengthPolicyStrongPassword: DBXTeamPoliciesPasswordStrengthPolicy { @objc @@ -1284,6 +1543,8 @@ public class DBXTeamPoliciesSharedFolderMemberPolicy: NSObject { return DBXTeamPoliciesSharedFolderMemberPolicyTeam() case .anyone: return DBXTeamPoliciesSharedFolderMemberPolicyAnyone() + case .teamAndApproved: + return DBXTeamPoliciesSharedFolderMemberPolicyTeamAndApproved() case .other: return DBXTeamPoliciesSharedFolderMemberPolicyOther() } @@ -1302,6 +1563,11 @@ public class DBXTeamPoliciesSharedFolderMemberPolicy: NSObject { self as? DBXTeamPoliciesSharedFolderMemberPolicyAnyone } + @objc + public var asTeamAndApproved: DBXTeamPoliciesSharedFolderMemberPolicyTeamAndApproved? { + self as? DBXTeamPoliciesSharedFolderMemberPolicyTeamAndApproved + } + @objc public var asOther: DBXTeamPoliciesSharedFolderMemberPolicyOther? { self as? DBXTeamPoliciesSharedFolderMemberPolicyOther @@ -1328,6 +1594,16 @@ public class DBXTeamPoliciesSharedFolderMemberPolicyAnyone: DBXTeamPoliciesShare } } +/// Only a teammate and approved people can be a member of a folder shared by a team member. +@objc +public class DBXTeamPoliciesSharedFolderMemberPolicyTeamAndApproved: DBXTeamPoliciesSharedFolderMemberPolicy { + @objc + public init() { + let swift = TeamPolicies.SharedFolderMemberPolicy.teamAndApproved + super.init(swift: swift) + } +} + /// An unspecified error. @objc public class DBXTeamPoliciesSharedFolderMemberPolicyOther: DBXTeamPoliciesSharedFolderMemberPolicy { @@ -1446,6 +1722,92 @@ public class DBXTeamPoliciesSharedLinkCreatePolicyOther: DBXTeamPoliciesSharedLi } } +/// Objective-C compatible SharedLinkDefaultPermissionsPolicy union +@objc +public class DBXTeamPoliciesSharedLinkDefaultPermissionsPolicy: NSObject { + let swift: TeamPolicies.SharedLinkDefaultPermissionsPolicy + + public init(swift: TeamPolicies.SharedLinkDefaultPermissionsPolicy) { + self.swift = swift + } + + public static func factory(swift: TeamPolicies.SharedLinkDefaultPermissionsPolicy) -> DBXTeamPoliciesSharedLinkDefaultPermissionsPolicy { + switch swift { + case .default_: + return DBXTeamPoliciesSharedLinkDefaultPermissionsPolicyDefault_() + case .edit: + return DBXTeamPoliciesSharedLinkDefaultPermissionsPolicyEdit() + case .view: + return DBXTeamPoliciesSharedLinkDefaultPermissionsPolicyView() + case .other: + return DBXTeamPoliciesSharedLinkDefaultPermissionsPolicyOther() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asDefault_: DBXTeamPoliciesSharedLinkDefaultPermissionsPolicyDefault_? { + self as? DBXTeamPoliciesSharedLinkDefaultPermissionsPolicyDefault_ + } + + @objc + public var asEdit: DBXTeamPoliciesSharedLinkDefaultPermissionsPolicyEdit? { + self as? DBXTeamPoliciesSharedLinkDefaultPermissionsPolicyEdit + } + + @objc + public var asView: DBXTeamPoliciesSharedLinkDefaultPermissionsPolicyView? { + self as? DBXTeamPoliciesSharedLinkDefaultPermissionsPolicyView + } + + @objc + public var asOther: DBXTeamPoliciesSharedLinkDefaultPermissionsPolicyOther? { + self as? DBXTeamPoliciesSharedLinkDefaultPermissionsPolicyOther + } +} + +/// No team default. Member defaults used instead. +@objc +public class DBXTeamPoliciesSharedLinkDefaultPermissionsPolicyDefault_: DBXTeamPoliciesSharedLinkDefaultPermissionsPolicy { + @objc + public init() { + let swift = TeamPolicies.SharedLinkDefaultPermissionsPolicy.default_ + super.init(swift: swift) + } +} + +/// Default to edit when creating new sharing links +@objc +public class DBXTeamPoliciesSharedLinkDefaultPermissionsPolicyEdit: DBXTeamPoliciesSharedLinkDefaultPermissionsPolicy { + @objc + public init() { + let swift = TeamPolicies.SharedLinkDefaultPermissionsPolicy.edit + super.init(swift: swift) + } +} + +/// Default to view-only when creating new sharing links +@objc +public class DBXTeamPoliciesSharedLinkDefaultPermissionsPolicyView: DBXTeamPoliciesSharedLinkDefaultPermissionsPolicy { + @objc + public init() { + let swift = TeamPolicies.SharedLinkDefaultPermissionsPolicy.view + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamPoliciesSharedLinkDefaultPermissionsPolicyOther: DBXTeamPoliciesSharedLinkDefaultPermissionsPolicy { + @objc + public init() { + let swift = TeamPolicies.SharedLinkDefaultPermissionsPolicy.other + super.init(swift: swift) + } +} + /// Objective-C compatible ShowcaseDownloadPolicy union @objc public class DBXTeamPoliciesShowcaseDownloadPolicy: NSObject { @@ -1964,19 +2326,24 @@ public class DBXTeamPoliciesTeamMemberPolicies: NSObject { /// The team policy on if teammembers are allowed to suggest users for admins to invite to the team. @objc public var suggestMembersPolicy: DBXTeamPoliciesSuggestMembersPolicy { DBXTeamPoliciesSuggestMembersPolicy(swift: swift.suggestMembersPolicy) } + /// Policy for deciding whether members can edit team folders at the top level of the team space. + @objc + public var topLevelContentPolicy: DBXTeamPoliciesTopLevelContentPolicy { DBXTeamPoliciesTopLevelContentPolicy(swift: swift.topLevelContentPolicy) } @objc public init( sharing: DBXTeamPoliciesTeamSharingPolicies, emmState: DBXTeamPoliciesEmmState, officeAddin: DBXTeamPoliciesOfficeAddInPolicy, - suggestMembersPolicy: DBXTeamPoliciesSuggestMembersPolicy + suggestMembersPolicy: DBXTeamPoliciesSuggestMembersPolicy, + topLevelContentPolicy: DBXTeamPoliciesTopLevelContentPolicy ) { self.swift = TeamPolicies.TeamMemberPolicies( sharing: sharing.swift, emmState: emmState.swift, officeAddin: officeAddin.swift, - suggestMembersPolicy: suggestMembersPolicy.swift + suggestMembersPolicy: suggestMembersPolicy.swift, + topLevelContentPolicy: topLevelContentPolicy.swift ) } @@ -1995,10 +2362,7 @@ public class DBXTeamPoliciesTeamMemberPolicies: NSObject { public class DBXTeamPoliciesTeamSharingPolicies: NSObject { /// Who can join folders shared by team members. @objc - public var sharedFolderMemberPolicy: DBXTeamPoliciesSharedFolderMemberPolicy { - DBXTeamPoliciesSharedFolderMemberPolicy(swift: swift.sharedFolderMemberPolicy) - } - + public var sharedFolderMemberPolicy: DBXTeamPoliciesSharedFolderMemberPolicy { DBXTeamPoliciesSharedFolderMemberPolicy(swift: swift.sharedFolderMemberPolicy) } /// Which shared folders team members can join. @objc public var sharedFolderJoinPolicy: DBXTeamPoliciesSharedFolderJoinPolicy { DBXTeamPoliciesSharedFolderJoinPolicy(swift: swift.sharedFolderJoinPolicy) } @@ -2010,9 +2374,24 @@ public class DBXTeamPoliciesTeamSharingPolicies: NSObject { public var groupCreationPolicy: DBXTeamPoliciesGroupCreation { DBXTeamPoliciesGroupCreation(swift: swift.groupCreationPolicy) } /// Who can view links to content in shared folders. @objc - public var sharedFolderLinkRestrictionPolicy: DBXTeamPoliciesSharedFolderBlanketLinkRestrictionPolicy { - DBXTeamPoliciesSharedFolderBlanketLinkRestrictionPolicy(swift: swift.sharedFolderLinkRestrictionPolicy) - } + public var sharedFolderLinkRestrictionPolicy: DBXTeamPoliciesSharedFolderBlanketLinkRestrictionPolicy { DBXTeamPoliciesSharedFolderBlanketLinkRestrictionPolicy( + swift: swift.sharedFolderLinkRestrictionPolicy + ) } + /// If passwords are required for new links shared outside the team. + @objc + public var enforceLinkPasswordPolicy: DBXTeamPoliciesEnforceLinkPasswordPolicy { DBXTeamPoliciesEnforceLinkPasswordPolicy( + swift: swift.enforceLinkPasswordPolicy + ) } + /// Default expiration date for new links shared outside the team. + @objc + public var defaultLinkExpirationDaysPolicy: DBXTeamPoliciesDefaultLinkExpirationDaysPolicy { DBXTeamPoliciesDefaultLinkExpirationDaysPolicy( + swift: swift.defaultLinkExpirationDaysPolicy + ) } + /// Default access level for new links shared by team members. + @objc + public var sharedLinkDefaultPermissionsPolicy: DBXTeamPoliciesSharedLinkDefaultPermissionsPolicy { DBXTeamPoliciesSharedLinkDefaultPermissionsPolicy( + swift: swift.sharedLinkDefaultPermissionsPolicy + ) } @objc public init( @@ -2020,14 +2399,20 @@ public class DBXTeamPoliciesTeamSharingPolicies: NSObject { sharedFolderJoinPolicy: DBXTeamPoliciesSharedFolderJoinPolicy, sharedLinkCreatePolicy: DBXTeamPoliciesSharedLinkCreatePolicy, groupCreationPolicy: DBXTeamPoliciesGroupCreation, - sharedFolderLinkRestrictionPolicy: DBXTeamPoliciesSharedFolderBlanketLinkRestrictionPolicy + sharedFolderLinkRestrictionPolicy: DBXTeamPoliciesSharedFolderBlanketLinkRestrictionPolicy, + enforceLinkPasswordPolicy: DBXTeamPoliciesEnforceLinkPasswordPolicy, + defaultLinkExpirationDaysPolicy: DBXTeamPoliciesDefaultLinkExpirationDaysPolicy, + sharedLinkDefaultPermissionsPolicy: DBXTeamPoliciesSharedLinkDefaultPermissionsPolicy ) { self.swift = TeamPolicies.TeamSharingPolicies( sharedFolderMemberPolicy: sharedFolderMemberPolicy.swift, sharedFolderJoinPolicy: sharedFolderJoinPolicy.swift, sharedLinkCreatePolicy: sharedLinkCreatePolicy.swift, groupCreationPolicy: groupCreationPolicy.swift, - sharedFolderLinkRestrictionPolicy: sharedFolderLinkRestrictionPolicy.swift + sharedFolderLinkRestrictionPolicy: sharedFolderLinkRestrictionPolicy.swift, + enforceLinkPasswordPolicy: enforceLinkPasswordPolicy.swift, + defaultLinkExpirationDaysPolicy: defaultLinkExpirationDaysPolicy.swift, + sharedLinkDefaultPermissionsPolicy: sharedLinkDefaultPermissionsPolicy.swift ) } @@ -2041,6 +2426,75 @@ public class DBXTeamPoliciesTeamSharingPolicies: NSObject { public override var description: String { swift.description } } +/// Objective-C compatible TopLevelContentPolicy union +@objc +public class DBXTeamPoliciesTopLevelContentPolicy: NSObject { + let swift: TeamPolicies.TopLevelContentPolicy + + public init(swift: TeamPolicies.TopLevelContentPolicy) { + self.swift = swift + } + + public static func factory(swift: TeamPolicies.TopLevelContentPolicy) -> DBXTeamPoliciesTopLevelContentPolicy { + switch swift { + case .adminOnly: + return DBXTeamPoliciesTopLevelContentPolicyAdminOnly() + case .everyone: + return DBXTeamPoliciesTopLevelContentPolicyEveryone() + case .other: + return DBXTeamPoliciesTopLevelContentPolicyOther() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asAdminOnly: DBXTeamPoliciesTopLevelContentPolicyAdminOnly? { + self as? DBXTeamPoliciesTopLevelContentPolicyAdminOnly + } + + @objc + public var asEveryone: DBXTeamPoliciesTopLevelContentPolicyEveryone? { + self as? DBXTeamPoliciesTopLevelContentPolicyEveryone + } + + @objc + public var asOther: DBXTeamPoliciesTopLevelContentPolicyOther? { + self as? DBXTeamPoliciesTopLevelContentPolicyOther + } +} + +/// Only admins can edit team folders at the top level of the team space. +@objc +public class DBXTeamPoliciesTopLevelContentPolicyAdminOnly: DBXTeamPoliciesTopLevelContentPolicy { + @objc + public init() { + let swift = TeamPolicies.TopLevelContentPolicy.adminOnly + super.init(swift: swift) + } +} + +/// Everyone on the team can edit team folders at the top level of the team space. +@objc +public class DBXTeamPoliciesTopLevelContentPolicyEveryone: DBXTeamPoliciesTopLevelContentPolicy { + @objc + public init() { + let swift = TeamPolicies.TopLevelContentPolicy.everyone + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXTeamPoliciesTopLevelContentPolicyOther: DBXTeamPoliciesTopLevelContentPolicy { + @objc + public init() { + let swift = TeamPolicies.TopLevelContentPolicy.other + super.init(swift: swift) + } +} + /// Objective-C compatible TwoStepVerificationPolicy union @objc public class DBXTeamPoliciesTwoStepVerificationPolicy: NSObject { diff --git a/Source/SwiftyDropboxObjC/Shared/Generated/DBXTeamRoutes.swift b/Source/SwiftyDropboxObjC/Shared/Generated/DBXTeamRoutes.swift index 5d380c50..734d3abb 100644 --- a/Source/SwiftyDropboxObjC/Shared/Generated/DBXTeamRoutes.swift +++ b/Source/SwiftyDropboxObjC/Shared/Generated/DBXTeamRoutes.swift @@ -108,8 +108,7 @@ public class DBXTeamRoutes: NSObject { /// - returns: Through the response callback, the caller will receive a `Void` object on success or a /// `Team.RevokeDeviceSessionError` object on failure. @objc - @discardableResult public func devicesRevokeDeviceSession(revokeDeviceSessionArg: DBXTeamRevokeDeviceSessionArg) - -> DBXTeamDevicesRevokeDeviceSessionRpcRequest { + @discardableResult public func devicesRevokeDeviceSession(revokeDeviceSessionArg: DBXTeamRevokeDeviceSessionArg) -> DBXTeamDevicesRevokeDeviceSessionRpcRequest { let swift = swift.devicesRevokeDeviceSession(revokeDeviceSessionArg: revokeDeviceSessionArg.swift) return DBXTeamDevicesRevokeDeviceSessionRpcRequest(swift: swift) } @@ -122,13 +121,12 @@ public class DBXTeamRoutes: NSObject { /// - returns: Through the response callback, the caller will receive a `Team.RevokeDeviceSessionBatchResult` object /// on success or a `Team.RevokeDeviceSessionBatchError` object on failure. @objc - @discardableResult public func devicesRevokeDeviceSessionBatch(revokeDevices: [DBXTeamRevokeDeviceSessionArg]) - -> DBXTeamDevicesRevokeDeviceSessionBatchRpcRequest { + @discardableResult public func devicesRevokeDeviceSessionBatch(revokeDevices: [DBXTeamRevokeDeviceSessionArg]) -> DBXTeamDevicesRevokeDeviceSessionBatchRpcRequest { let swift = swift.devicesRevokeDeviceSessionBatch(revokeDevices: revokeDevices.map(\.swift)) return DBXTeamDevicesRevokeDeviceSessionBatchRpcRequest(swift: swift) } - /// Get the values for one or more featues. This route allows you to check your account's capability for what + /// Get the values for one or more features. This route allows you to check your account's capability for what /// feature you can access or what value you have for certain features. Permission : Team information. /// /// - scope: team_info.read @@ -212,7 +210,7 @@ public class DBXTeamRoutes: NSObject { return DBXTeamGroupsDeleteRpcRequest(swift: swift) } - /// Retrieves information about one or more groups. Note that the optional field members in GroupFullInfo is not + /// Retrieves information about one or more groups. Note that the optional field members in GroupFullInfo is not /// returned for system-managed groups. Permission : Team Information. /// /// - scope: groups.read @@ -297,11 +295,7 @@ public class DBXTeamRoutes: NSObject { /// - returns: Through the response callback, the caller will receive a `Team.GroupMembersChangeResult` object on /// success or a `Team.GroupMembersAddError` object on failure. @objc - @discardableResult public func groupsMembersAdd( - group: DBXTeamGroupSelector, - members: [DBXTeamMemberAccess], - returnMembers: NSNumber - ) -> DBXTeamGroupsMembersAddRpcRequest { + @discardableResult public func groupsMembersAdd(group: DBXTeamGroupSelector, members: [DBXTeamMemberAccess], returnMembers: NSNumber) -> DBXTeamGroupsMembersAddRpcRequest { let swift = swift.groupsMembersAdd(group: group.swift, members: members.map(\.swift), returnMembers: returnMembers.boolValue) return DBXTeamGroupsMembersAddRpcRequest(swift: swift) } @@ -375,11 +369,7 @@ public class DBXTeamRoutes: NSObject { /// - returns: Through the response callback, the caller will receive a `Team.GroupMembersChangeResult` object on /// success or a `Team.GroupMembersRemoveError` object on failure. @objc - @discardableResult public func groupsMembersRemove( - group: DBXTeamGroupSelector, - users: [DBXTeamUserSelectorArg], - returnMembers: NSNumber - ) -> DBXTeamGroupsMembersRemoveRpcRequest { + @discardableResult public func groupsMembersRemove(group: DBXTeamGroupSelector, users: [DBXTeamUserSelectorArg], returnMembers: NSNumber) -> DBXTeamGroupsMembersRemoveRpcRequest { let swift = swift.groupsMembersRemove(group: group.swift, users: users.map(\.swift), returnMembers: returnMembers.boolValue) return DBXTeamGroupsMembersRemoveRpcRequest(swift: swift) } @@ -404,8 +394,8 @@ public class DBXTeamRoutes: NSObject { /// - scope: groups.write /// /// - parameter accessType: New group access type the user will have. - /// - parameter returnMembers: Whether to return the list of members in the group. Note that the default value will - /// cause all the group members to be returned in the response. This may take a long time for large groups. + /// - parameter returnMembers: Whether to return the list of members in the group. Note that the default value will + /// cause all the group members to be returned in the response. This may take a long time for large groups. /// /// - returns: Through the response callback, the caller will receive a `Array` object on /// success or a `Team.GroupMemberSetAccessTypeError` object on failure. @@ -427,11 +417,7 @@ public class DBXTeamRoutes: NSObject { /// - returns: Through the response callback, the caller will receive a `Array` object on /// success or a `Team.GroupMemberSetAccessTypeError` object on failure. @objc - @discardableResult public func groupsMembersSetAccessType( - group: DBXTeamGroupSelector, - user: DBXTeamUserSelectorArg, - accessType: DBXTeamGroupAccessType - ) -> DBXTeamGroupsMembersSetAccessTypeRpcRequest { + @discardableResult public func groupsMembersSetAccessType(group: DBXTeamGroupSelector, user: DBXTeamUserSelectorArg, accessType: DBXTeamGroupAccessType) -> DBXTeamGroupsMembersSetAccessTypeRpcRequest { let swift = swift.groupsMembersSetAccessType(group: group.swift, user: user.swift, accessType: accessType.swift) return DBXTeamGroupsMembersSetAccessTypeRpcRequest(swift: swift) } @@ -492,13 +478,7 @@ public class DBXTeamRoutes: NSObject { /// - returns: Through the response callback, the caller will receive a `Team.LegalHoldPolicy` object on success or /// a `Team.LegalHoldsPolicyCreateError` object on failure. @objc - @discardableResult public func legalHoldsCreatePolicy( - name: String, - members: [String], - description_: String?, - startDate: Date?, - endDate: Date? - ) -> DBXTeamLegalHoldsCreatePolicyRpcRequest { + @discardableResult public func legalHoldsCreatePolicy(name: String, members: [String], description_: String?, startDate: Date?, endDate: Date?) -> DBXTeamLegalHoldsCreatePolicyRpcRequest { let swift = swift.legalHoldsCreatePolicy(name: name, members: members, description_: description_, startDate: startDate, endDate: endDate) return DBXTeamLegalHoldsCreatePolicyRpcRequest(swift: swift) } @@ -632,12 +612,7 @@ public class DBXTeamRoutes: NSObject { /// - returns: Through the response callback, the caller will receive a `Team.LegalHoldPolicy` object on success or /// a `Team.LegalHoldsPolicyUpdateError` object on failure. @objc - @discardableResult public func legalHoldsUpdatePolicy( - id: String, - name: String?, - description_: String?, - members: [String]? - ) -> DBXTeamLegalHoldsUpdatePolicyRpcRequest { + @discardableResult public func legalHoldsUpdatePolicy(id: String, name: String?, description_: String?, members: [String]?) -> DBXTeamLegalHoldsUpdatePolicyRpcRequest { let swift = swift.legalHoldsUpdatePolicy(id: id, name: name, description_: description_, members: members) return DBXTeamLegalHoldsUpdatePolicyRpcRequest(swift: swift) } @@ -705,17 +680,13 @@ public class DBXTeamRoutes: NSObject { /// /// - parameter appId: The application's unique id. /// - parameter teamMemberId: The unique id of the member owning the device. - /// - parameter keepAppFolder: This flag is not longer supported, the application dedicated folder (in case the - /// application uses one) will be kept. + /// - parameter keepAppFolder: Field is deprecated. This flag is not longer supported, the application dedicated + /// folder (in case the application uses one) will be kept. /// /// - returns: Through the response callback, the caller will receive a `Void` object on success or a /// `Team.RevokeLinkedAppError` object on failure. @objc - @discardableResult public func linkedAppsRevokeLinkedApp( - appId: String, - teamMemberId: String, - keepAppFolder: NSNumber - ) -> DBXTeamLinkedAppsRevokeLinkedAppRpcRequest { + @discardableResult public func linkedAppsRevokeLinkedApp(appId: String, teamMemberId: String, keepAppFolder: NSNumber) -> DBXTeamLinkedAppsRevokeLinkedAppRpcRequest { let swift = swift.linkedAppsRevokeLinkedApp(appId: appId, teamMemberId: teamMemberId, keepAppFolder: keepAppFolder.boolValue) return DBXTeamLinkedAppsRevokeLinkedAppRpcRequest(swift: swift) } @@ -740,8 +711,7 @@ public class DBXTeamRoutes: NSObject { /// - returns: Through the response callback, the caller will receive a `Team.RevokeLinkedAppBatchResult` object on /// success or a `Team.RevokeLinkedAppBatchError` object on failure. @objc - @discardableResult public func linkedAppsRevokeLinkedAppBatch(revokeLinkedApp: [DBXTeamRevokeLinkedApiAppArg]) - -> DBXTeamLinkedAppsRevokeLinkedAppBatchRpcRequest { + @discardableResult public func linkedAppsRevokeLinkedAppBatch(revokeLinkedApp: [DBXTeamRevokeLinkedApiAppArg]) -> DBXTeamLinkedAppsRevokeLinkedAppBatchRpcRequest { let swift = swift.linkedAppsRevokeLinkedAppBatch(revokeLinkedApp: revokeLinkedApp.map(\.swift)) return DBXTeamLinkedAppsRevokeLinkedAppBatchRpcRequest(swift: swift) } @@ -821,8 +791,7 @@ public class DBXTeamRoutes: NSObject { /// - returns: Through the response callback, the caller will receive a `Team.ExcludedUsersUpdateResult` object on /// success or a `Team.ExcludedUsersUpdateError` object on failure. @objc - @discardableResult public func memberSpaceLimitsExcludedUsersRemove(users: [DBXTeamUserSelectorArg]?) - -> DBXTeamMemberSpaceLimitsExcludedUsersRemoveRpcRequest { + @discardableResult public func memberSpaceLimitsExcludedUsersRemove(users: [DBXTeamUserSelectorArg]?) -> DBXTeamMemberSpaceLimitsExcludedUsersRemoveRpcRequest { let swift = swift.memberSpaceLimitsExcludedUsersRemove(users: users?.map(\.swift)) return DBXTeamMemberSpaceLimitsExcludedUsersRemoveRpcRequest(swift: swift) } @@ -871,7 +840,7 @@ public class DBXTeamRoutes: NSObject { return DBXTeamMemberSpaceLimitsRemoveCustomQuotaRpcRequest(swift: swift) } - /// Set users custom quota. Custom quota has to be at least 15GB. A maximum of 1000 members can be specified in a + /// Set users custom quota. Custom quota has to be at least 2GB. A maximum of 1000 members can be specified in a /// single call. Note: to apply a custom space limit, a team admin needs to set a member space limit for the /// team first. (the team admin can check the settings here: https://www.dropbox.com/team/admin/settings/space). /// @@ -882,8 +851,7 @@ public class DBXTeamRoutes: NSObject { /// - returns: Through the response callback, the caller will receive a `Array` object on /// success or a `Team.SetCustomQuotaError` object on failure. @objc - @discardableResult public func memberSpaceLimitsSetCustomQuota(usersAndQuotas: [DBXTeamUserCustomQuotaArg]) - -> DBXTeamMemberSpaceLimitsSetCustomQuotaRpcRequest { + @discardableResult public func memberSpaceLimitsSetCustomQuota(usersAndQuotas: [DBXTeamUserCustomQuotaArg]) -> DBXTeamMemberSpaceLimitsSetCustomQuotaRpcRequest { let swift = swift.memberSpaceLimitsSetCustomQuota(usersAndQuotas: usersAndQuotas.map(\.swift)) return DBXTeamMemberSpaceLimitsSetCustomQuotaRpcRequest(swift: swift) } @@ -931,8 +899,7 @@ public class DBXTeamRoutes: NSObject { /// with the given email address, and that account will be invited to the team. If a personal Dropbox account /// exists with the email address specified in the call, this call will create a placeholder Dropbox account for /// the user on the team and send an email inviting the user to migrate their existing personal account onto the - /// team. Team member management apps are required to set an initial given_name and surname for a user to use in - /// the team invitation and for 'Perform as team member' actions taken on the user before they become 'active'. + /// team. /// /// - scope: members.write /// @@ -951,8 +918,7 @@ public class DBXTeamRoutes: NSObject { /// with the given email address, and that account will be invited to the team. If a personal Dropbox account /// exists with the email address specified in the call, this call will create a placeholder Dropbox account for /// the user on the team and send an email inviting the user to migrate their existing personal account onto the - /// team. Team member management apps are required to set an initial given_name and surname for a user to use in - /// the team invitation and for 'Perform as team member' actions taken on the user before they become 'active'. + /// team. /// /// - scope: members.write /// @@ -996,6 +962,52 @@ public class DBXTeamRoutes: NSObject { return DBXTeamMembersAddJobStatusGetRpcRequestV2(swift: swift) } + /// Launch a bulk suspend job. The server enforces a maximum of 500 members. + /// + /// - scope: members.write + /// + /// - parameter members: Must contain between 1 and 500 targets. The launch handler also rejects duplicate client + /// item IDs and duplicate member selectors. + /// + /// - returns: Through the response callback, the caller will receive a `Async.LaunchResultBase` object on success + /// or a `Team.BulkSuspendError` object on failure. + @objc + @discardableResult public func membersBulkSuspend(members: [DBXTeamBulkSuspendMemberTarget]) -> DBXTeamMembersBulkSuspendRpcRequest { + let swift = swift.membersBulkSuspend(members: members.map(\.swift)) + return DBXTeamMembersBulkSuspendRpcRequest(swift: swift) + } + + /// Poll a previously launched bulk suspend job. + /// + /// - scope: members.write + /// + /// - parameter asyncJobId: Id of the asynchronous job. This is the value of a response returned from the method + /// that launched the job. + /// + /// - returns: Through the response callback, the caller will receive a `Team.BulkSuspendJobStatus` object on + /// success or a `Async.PollError` object on failure. + @objc + @discardableResult public func membersBulkSuspendJobStatusCheck(asyncJobId: String) -> DBXTeamMembersBulkSuspendJobStatusCheckRpcRequest { + let swift = swift.membersBulkSuspendJobStatusCheck(asyncJobId: asyncJobId) + return DBXTeamMembersBulkSuspendJobStatusCheckRpcRequest(swift: swift) + } + + /// Permanently delete the files of a user who has been removed from the team. After permanent deletion, those files + /// will not be available to be transferred to another team member. Permission : Team member management Exactly + /// one of team_member_id, email, or external_id must be provided to identify the user account. + /// + /// - scope: members.write + /// + /// - parameter user: Identity of user whose files will be permanently deleted. + /// + /// - returns: Through the response callback, the caller will receive a `Void` object on success or a + /// `Team.MembersDeleteFormerMemberFilesError` object on failure. + @objc + @discardableResult public func membersDeleteFormerMemberFiles(user: DBXTeamUserSelectorArg) -> DBXTeamMembersDeleteFormerMemberFilesRpcRequest { + let swift = swift.membersDeleteFormerMemberFiles(user: user.swift) + return DBXTeamMembersDeleteFormerMemberFilesRpcRequest(swift: swift) + } + /// Deletes a team member's profile photo. Permission : Team member management. /// /// - scope: members.write @@ -1184,8 +1196,7 @@ public class DBXTeamRoutes: NSObject { /// - returns: Through the response callback, the caller will receive a `Async.PollEmptyResult` object on success or /// a `Async.PollError` object on failure. @objc - @discardableResult public func membersMoveFormerMemberFilesJobStatusCheck(asyncJobId: String) - -> DBXTeamMembersMoveFormerMemberFilesJobStatusCheckRpcRequest { + @discardableResult public func membersMoveFormerMemberFilesJobStatusCheck(asyncJobId: String) -> DBXTeamMembersMoveFormerMemberFilesJobStatusCheckRpcRequest { let swift = swift.membersMoveFormerMemberFilesJobStatusCheck(asyncJobId: asyncJobId) return DBXTeamMembersMoveFormerMemberFilesJobStatusCheckRpcRequest(swift: swift) } @@ -1210,9 +1221,10 @@ public class DBXTeamRoutes: NSObject { /// a 7 day period or until the account has been permanently deleted or transferred to another account /// (whichever comes first). Calling membersAdd while a user is still recoverable on your team will return with /// userAlreadyOnTeam in MemberAddResult. Accounts can have their files transferred via the admin console for a - /// limited time, based on the version history length associated with the team (180 days for most teams). This - /// endpoint may initiate an asynchronous job. To obtain the final result of the job, the client should - /// periodically poll membersRemoveJobStatusGet. + /// limited time, based on the version history length associated with the team (180 days for most teams). + /// Accounts can have their stacks transferred through the admin console. This only transfers stacks that they + /// have created. This endpoint may initiate an asynchronous job. To obtain the final result of the job, the + /// client should periodically poll membersRemoveJobStatusGet. /// /// - scope: members.delete /// @@ -1220,12 +1232,14 @@ public class DBXTeamRoutes: NSObject { /// - parameter transferAdminId: If provided, errors during the transfer process will be sent via email to this /// user. If the transfer_dest_id argument was provided, then this argument must be provided as well. /// - parameter keepAccount: Downgrade the member to a Basic account. The user will retain the email address - /// associated with their Dropbox account and data in their account that is not restricted to team members. In + /// associated with their Dropbox account and data in their account that is not restricted to team members. In /// order to keep the account the argument wipeData should be set to false. /// - parameter retainTeamShares: If provided, allows removed users to keep access to Dropbox folders (not Dropbox /// Paper folders) already explicitly shared with them (not via a group) when they are downgraded to a Basic /// account. Users will not retain access to folders that do not allow external sharing. In order to keep the /// sharing relationships, the arguments wipeData should be set to false and keepAccount should be set to true. + /// - parameter permanentlyDeleteFiles: Permanently delete the data in the deleted member's account. After permanent + /// deletion, the data is no longer available to be transferred to a different user. /// /// - returns: Through the response callback, the caller will receive a `Async.LaunchEmptyResult` object on success /// or a `Team.MembersRemoveError` object on failure. @@ -1236,7 +1250,8 @@ public class DBXTeamRoutes: NSObject { transferDestId: DBXTeamUserSelectorArg?, transferAdminId: DBXTeamUserSelectorArg?, keepAccount: NSNumber, - retainTeamShares: NSNumber + retainTeamShares: NSNumber, + permanentlyDeleteFiles: NSNumber ) -> DBXTeamMembersRemoveRpcRequest { let swift = swift.membersRemove( user: user.swift, @@ -1244,7 +1259,8 @@ public class DBXTeamRoutes: NSObject { transferDestId: transferDestId?.swift, transferAdminId: transferAdminId?.swift, keepAccount: keepAccount.boolValue, - retainTeamShares: retainTeamShares.boolValue + retainTeamShares: retainTeamShares.boolValue, + permanentlyDeleteFiles: permanentlyDeleteFiles.boolValue ) return DBXTeamMembersRemoveRpcRequest(swift: swift) } @@ -1254,9 +1270,10 @@ public class DBXTeamRoutes: NSObject { /// a 7 day period or until the account has been permanently deleted or transferred to another account /// (whichever comes first). Calling membersAdd while a user is still recoverable on your team will return with /// userAlreadyOnTeam in MemberAddResult. Accounts can have their files transferred via the admin console for a - /// limited time, based on the version history length associated with the team (180 days for most teams). This - /// endpoint may initiate an asynchronous job. To obtain the final result of the job, the client should - /// periodically poll membersRemoveJobStatusGet. + /// limited time, based on the version history length associated with the team (180 days for most teams). + /// Accounts can have their stacks transferred through the admin console. This only transfers stacks that they + /// have created. This endpoint may initiate an asynchronous job. To obtain the final result of the job, the + /// client should periodically poll membersRemoveJobStatusGet. /// /// - scope: members.delete /// @@ -1294,8 +1311,7 @@ public class DBXTeamRoutes: NSObject { /// - returns: Through the response callback, the caller will receive a `Team.AddSecondaryEmailsResult` object on /// success or a `Team.AddSecondaryEmailsError` object on failure. @objc - @discardableResult public func membersSecondaryEmailsAdd(newSecondaryEmails: [DBXTeamUserSecondaryEmailsArg]) - -> DBXTeamMembersSecondaryEmailsAddRpcRequest { + @discardableResult public func membersSecondaryEmailsAdd(newSecondaryEmails: [DBXTeamUserSecondaryEmailsArg]) -> DBXTeamMembersSecondaryEmailsAddRpcRequest { let swift = swift.membersSecondaryEmailsAdd(newSecondaryEmails: newSecondaryEmails.map(\.swift)) return DBXTeamMembersSecondaryEmailsAddRpcRequest(swift: swift) } @@ -1310,8 +1326,7 @@ public class DBXTeamRoutes: NSObject { /// - returns: Through the response callback, the caller will receive a `Team.DeleteSecondaryEmailsResult` object on /// success or a `Void` object on failure. @objc - @discardableResult public func membersSecondaryEmailsDelete(emailsToDelete: [DBXTeamUserSecondaryEmailsArg]) - -> DBXTeamMembersSecondaryEmailsDeleteRpcRequest { + @discardableResult public func membersSecondaryEmailsDelete(emailsToDelete: [DBXTeamUserSecondaryEmailsArg]) -> DBXTeamMembersSecondaryEmailsDeleteRpcRequest { let swift = swift.membersSecondaryEmailsDelete(emailsToDelete: emailsToDelete.map(\.swift)) return DBXTeamMembersSecondaryEmailsDeleteRpcRequest(swift: swift) } @@ -1325,8 +1340,7 @@ public class DBXTeamRoutes: NSObject { /// - returns: Through the response callback, the caller will receive a `Team.ResendVerificationEmailResult` object /// on success or a `Void` object on failure. @objc - @discardableResult public func membersSecondaryEmailsResendVerificationEmails(emailsToResend: [DBXTeamUserSecondaryEmailsArg]) - -> DBXTeamMembersSecondaryEmailsResendVerificationEmailsRpcRequest { + @discardableResult public func membersSecondaryEmailsResendVerificationEmails(emailsToResend: [DBXTeamUserSecondaryEmailsArg]) -> DBXTeamMembersSecondaryEmailsResendVerificationEmailsRpcRequest { let swift = swift.membersSecondaryEmailsResendVerificationEmails(emailsToResend: emailsToResend.map(\.swift)) return DBXTeamMembersSecondaryEmailsResendVerificationEmailsRpcRequest(swift: swift) } @@ -1357,10 +1371,7 @@ public class DBXTeamRoutes: NSObject { /// - returns: Through the response callback, the caller will receive a `Team.MembersSetPermissionsResult` object on /// success or a `Team.MembersSetPermissionsError` object on failure. @objc - @discardableResult public func membersSetAdminPermissions( - user: DBXTeamUserSelectorArg, - newRole: DBXTeamAdminTier - ) -> DBXTeamMembersSetAdminPermissionsRpcRequest { + @discardableResult public func membersSetAdminPermissions(user: DBXTeamUserSelectorArg, newRole: DBXTeamAdminTier) -> DBXTeamMembersSetAdminPermissionsRpcRequest { let swift = swift.membersSetAdminPermissions(user: user.swift, newRole: newRole.swift) return DBXTeamMembersSetAdminPermissionsRpcRequest(swift: swift) } @@ -1376,10 +1387,7 @@ public class DBXTeamRoutes: NSObject { /// - returns: Through the response callback, the caller will receive a `Team.MembersSetPermissions2Result` object /// on success or a `Team.MembersSetPermissions2Error` object on failure. @objc - @discardableResult public func membersSetAdminPermissionsV2( - user: DBXTeamUserSelectorArg, - newRoles: [String]? - ) -> DBXTeamMembersSetAdminPermissionsRpcRequestV2 { + @discardableResult public func membersSetAdminPermissionsV2(user: DBXTeamUserSelectorArg, newRoles: [String]?) -> DBXTeamMembersSetAdminPermissionsRpcRequestV2 { let swift = swift.membersSetAdminPermissionsV2(user: user.swift, newRoles: newRoles) return DBXTeamMembersSetAdminPermissionsRpcRequestV2(swift: swift) } @@ -1504,10 +1512,7 @@ public class DBXTeamRoutes: NSObject { /// - returns: Through the response callback, the caller will receive a `Team.TeamMemberInfo` object on success or a /// `Team.MembersSetProfilePhotoError` object on failure. @objc - @discardableResult public func membersSetProfilePhoto( - user: DBXTeamUserSelectorArg, - photo: DBXAccountPhotoSourceArg - ) -> DBXTeamMembersSetProfilePhotoRpcRequest { + @discardableResult public func membersSetProfilePhoto(user: DBXTeamUserSelectorArg, photo: DBXAccountPhotoSourceArg) -> DBXTeamMembersSetProfilePhotoRpcRequest { let swift = swift.membersSetProfilePhoto(user: user.swift, photo: photo.swift) return DBXTeamMembersSetProfilePhotoRpcRequest(swift: swift) } @@ -1522,10 +1527,7 @@ public class DBXTeamRoutes: NSObject { /// - returns: Through the response callback, the caller will receive a `Team.TeamMemberInfoV2Result` object on /// success or a `Team.MembersSetProfilePhotoError` object on failure. @objc - @discardableResult public func membersSetProfilePhotoV2( - user: DBXTeamUserSelectorArg, - photo: DBXAccountPhotoSourceArg - ) -> DBXTeamMembersSetProfilePhotoRpcRequestV2 { + @discardableResult public func membersSetProfilePhotoV2(user: DBXTeamUserSelectorArg, photo: DBXAccountPhotoSourceArg) -> DBXTeamMembersSetProfilePhotoRpcRequestV2 { let swift = swift.membersSetProfilePhotoV2(user: user.swift, photo: photo.swift) return DBXTeamMembersSetProfilePhotoRpcRequestV2(swift: swift) } @@ -1580,7 +1582,7 @@ public class DBXTeamRoutes: NSObject { /// /// - scope: team_data.member /// - /// - parameter limit: Specifying a value here has no effect. + /// - parameter limit: Field is deprecated. Specifying a value here has no effect. /// /// - returns: Through the response callback, the caller will receive a `Team.TeamNamespacesListResult` object on /// success or a `Team.TeamNamespacesListError` object on failure. @@ -1746,7 +1748,9 @@ public class DBXTeamRoutes: NSObject { } /// Sets an active team folder's status to archived and removes all folder and file members. This endpoint cannot be - /// used for teams that have a shared team space. Permission : Team member file access. + /// used for teams that have a shared team space. This route will either finish synchronously, or return a job + /// ID and do the async archive job in background. Please use team_folder/archive/check to check the job status. + /// Permission : Team member file access. /// /// - scope: team_data.content.write /// @@ -1761,7 +1765,9 @@ public class DBXTeamRoutes: NSObject { } /// Sets an active team folder's status to archived and removes all folder and file members. This endpoint cannot be - /// used for teams that have a shared team space. Permission : Team member file access. + /// used for teams that have a shared team space. This route will either finish synchronously, or return a job + /// ID and do the async archive job in background. Please use team_folder/archive/check to check the job status. + /// Permission : Team member file access. /// /// - scope: team_data.content.write /// @@ -1773,7 +1779,10 @@ public class DBXTeamRoutes: NSObject { return DBXTeamTeamFolderArchiveRpcRequest(swift: swift) } - /// Returns the status of an asynchronous job for archiving a team folder. Permission : Team member file access. + /// Returns the status of an asynchronous job for archiving a team folder. The job may show '.tag' as complete, but + /// the team folder could still be in the process of archiving (indicated by status in TeamFolderMetadata with + /// 'archive_in_progress'). To confirm that the team folder is fully archived, check the field status in + /// TeamFolderMetadata in the response for the value 'archived'. Permission : Team member file access. /// /// - scope: team_data.content.write /// @@ -1902,6 +1911,20 @@ public class DBXTeamRoutes: NSObject { return DBXTeamTeamFolderRenameRpcRequest(swift: swift) } + /// Sets an inactive team folder's status to active. Permission: Team member file access. + /// + /// - scope: team_data.content.write + /// + /// - parameter teamFolderId: The ID of the team folder. + /// + /// - returns: Through the response callback, the caller will receive a `Team.TeamFolderMetadata` object on success + /// or a `Team.TeamFolderRestoreError` object on failure. + @objc + @discardableResult public func teamFolderRestore(teamFolderId: String) -> DBXTeamTeamFolderRestoreRpcRequest { + let swift = swift.teamFolderRestore(teamFolderId: teamFolderId) + return DBXTeamTeamFolderRestoreRpcRequest(swift: swift) + } + /// Updates the sync settings on a team folder or its contents. Use of this endpoint requires that the team has /// team selective sync enabled. /// @@ -1986,7 +2009,7 @@ public class DBXTeamDevicesListMemberDevicesRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXTeamListMemberDevicesResult? + var objc: DBXTeamListMemberDevicesResult? = nil if let swift = result { objc = DBXTeamListMemberDevicesResult(swift: swift) } @@ -2053,7 +2076,7 @@ public class DBXTeamDevicesListMembersDevicesRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXTeamListMembersDevicesResult? + var objc: DBXTeamListMembersDevicesResult? = nil if let swift = result { objc = DBXTeamListMembersDevicesResult(swift: swift) } @@ -2120,7 +2143,7 @@ public class DBXTeamDevicesListTeamDevicesRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXTeamListTeamDevicesResult? + var objc: DBXTeamListTeamDevicesResult? = nil if let swift = result { objc = DBXTeamListTeamDevicesResult(swift: swift) } @@ -2250,7 +2273,7 @@ public class DBXTeamDevicesRevokeDeviceSessionBatchRpcRequest: NSObject, DBXRequ callError = error?.objc } - var objc: DBXTeamRevokeDeviceSessionBatchResult? + var objc: DBXTeamRevokeDeviceSessionBatchResult? = nil if let swift = result { objc = DBXTeamRevokeDeviceSessionBatchResult(swift: swift) } @@ -2317,7 +2340,7 @@ public class DBXTeamFeaturesGetValuesRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXTeamFeaturesGetValuesBatchResult? + var objc: DBXTeamFeaturesGetValuesBatchResult? = nil if let swift = result { objc = DBXTeamFeaturesGetValuesBatchResult(swift: swift) } @@ -2373,7 +2396,7 @@ public class DBXTeamGetInfoRpcRequest: NSObject, DBXRequest { completionHandler: @escaping (DBXTeamTeamGetInfoResult?, DBXCallError?) -> Void ) -> Self { swift.response(queue: queue) { result, error in - var objc: DBXTeamTeamGetInfoResult? + var objc: DBXTeamTeamGetInfoResult? = nil if let swift = result { objc = DBXTeamTeamGetInfoResult(swift: swift) } @@ -2440,7 +2463,7 @@ public class DBXTeamGroupsCreateRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXTeamGroupFullInfo? + var objc: DBXTeamGroupFullInfo? = nil if let swift = result { objc = DBXTeamGroupFullInfo(swift: swift) } @@ -2507,7 +2530,7 @@ public class DBXTeamGroupsDeleteRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXAsyncLaunchEmptyResult? + var objc: DBXAsyncLaunchEmptyResult? = nil if let swift = result { objc = DBXAsyncLaunchEmptyResult.factory(swift: swift) } @@ -2574,7 +2597,7 @@ public class DBXTeamGroupsGetInfoRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: [DBXTeamGroupsGetInfoItem]? + var objc: [DBXTeamGroupsGetInfoItem]? = nil if let swift = result { objc = swift.map { DBXTeamGroupsGetInfoItem.factory(swift: $0) } } @@ -2641,7 +2664,7 @@ public class DBXTeamGroupsJobStatusGetRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXAsyncPollEmptyResult? + var objc: DBXAsyncPollEmptyResult? = nil if let swift = result { objc = DBXAsyncPollEmptyResult.factory(swift: swift) } @@ -2697,7 +2720,7 @@ public class DBXTeamGroupsListRpcRequest: NSObject, DBXRequest { completionHandler: @escaping (DBXTeamGroupsListResult?, DBXCallError?) -> Void ) -> Self { swift.response(queue: queue) { result, error in - var objc: DBXTeamGroupsListResult? + var objc: DBXTeamGroupsListResult? = nil if let swift = result { objc = DBXTeamGroupsListResult(swift: swift) } @@ -2764,7 +2787,7 @@ public class DBXTeamGroupsListContinueRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXTeamGroupsListResult? + var objc: DBXTeamGroupsListResult? = nil if let swift = result { objc = DBXTeamGroupsListResult(swift: swift) } @@ -2831,7 +2854,7 @@ public class DBXTeamGroupsMembersAddRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXTeamGroupMembersChangeResult? + var objc: DBXTeamGroupMembersChangeResult? = nil if let swift = result { objc = DBXTeamGroupMembersChangeResult(swift: swift) } @@ -2898,7 +2921,7 @@ public class DBXTeamGroupsMembersListRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXTeamGroupsMembersListResult? + var objc: DBXTeamGroupsMembersListResult? = nil if let swift = result { objc = DBXTeamGroupsMembersListResult(swift: swift) } @@ -2965,7 +2988,7 @@ public class DBXTeamGroupsMembersListContinueRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXTeamGroupsMembersListResult? + var objc: DBXTeamGroupsMembersListResult? = nil if let swift = result { objc = DBXTeamGroupsMembersListResult(swift: swift) } @@ -3032,7 +3055,7 @@ public class DBXTeamGroupsMembersRemoveRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXTeamGroupMembersChangeResult? + var objc: DBXTeamGroupMembersChangeResult? = nil if let swift = result { objc = DBXTeamGroupMembersChangeResult(swift: swift) } @@ -3099,7 +3122,7 @@ public class DBXTeamGroupsMembersSetAccessTypeRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: [DBXTeamGroupsGetInfoItem]? + var objc: [DBXTeamGroupsGetInfoItem]? = nil if let swift = result { objc = swift.map { DBXTeamGroupsGetInfoItem.factory(swift: $0) } } @@ -3166,7 +3189,7 @@ public class DBXTeamGroupsUpdateRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXTeamGroupFullInfo? + var objc: DBXTeamGroupFullInfo? = nil if let swift = result { objc = DBXTeamGroupFullInfo(swift: swift) } @@ -3233,7 +3256,7 @@ public class DBXTeamLegalHoldsCreatePolicyRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXTeamLegalHoldPolicy? + var objc: DBXTeamLegalHoldPolicy? = nil if let swift = result { objc = DBXTeamLegalHoldPolicy(swift: swift) } @@ -3300,7 +3323,7 @@ public class DBXTeamLegalHoldsGetPolicyRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXTeamLegalHoldPolicy? + var objc: DBXTeamLegalHoldPolicy? = nil if let swift = result { objc = DBXTeamLegalHoldPolicy(swift: swift) } @@ -3367,7 +3390,7 @@ public class DBXTeamLegalHoldsListHeldRevisionsRpcRequest: NSObject, DBXRequest callError = error?.objc } - var objc: DBXTeamLegalHoldsListHeldRevisionResult? + var objc: DBXTeamLegalHoldsListHeldRevisionResult? = nil if let swift = result { objc = DBXTeamLegalHoldsListHeldRevisionResult(swift: swift) } @@ -3434,7 +3457,7 @@ public class DBXTeamLegalHoldsListHeldRevisionsContinueRpcRequest: NSObject, DBX callError = error?.objc } - var objc: DBXTeamLegalHoldsListHeldRevisionResult? + var objc: DBXTeamLegalHoldsListHeldRevisionResult? = nil if let swift = result { objc = DBXTeamLegalHoldsListHeldRevisionResult(swift: swift) } @@ -3501,7 +3524,7 @@ public class DBXTeamLegalHoldsListPoliciesRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXTeamLegalHoldsListPoliciesResult? + var objc: DBXTeamLegalHoldsListPoliciesResult? = nil if let swift = result { objc = DBXTeamLegalHoldsListPoliciesResult(swift: swift) } @@ -3631,7 +3654,7 @@ public class DBXTeamLegalHoldsUpdatePolicyRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXTeamLegalHoldPolicy? + var objc: DBXTeamLegalHoldPolicy? = nil if let swift = result { objc = DBXTeamLegalHoldPolicy(swift: swift) } @@ -3698,7 +3721,7 @@ public class DBXTeamLinkedAppsListMemberLinkedAppsRpcRequest: NSObject, DBXReque callError = error?.objc } - var objc: DBXTeamListMemberAppsResult? + var objc: DBXTeamListMemberAppsResult? = nil if let swift = result { objc = DBXTeamListMemberAppsResult(swift: swift) } @@ -3765,7 +3788,7 @@ public class DBXTeamLinkedAppsListMembersLinkedAppsRpcRequest: NSObject, DBXRequ callError = error?.objc } - var objc: DBXTeamListMembersAppsResult? + var objc: DBXTeamListMembersAppsResult? = nil if let swift = result { objc = DBXTeamListMembersAppsResult(swift: swift) } @@ -3832,7 +3855,7 @@ public class DBXTeamLinkedAppsListTeamLinkedAppsRpcRequest: NSObject, DBXRequest callError = error?.objc } - var objc: DBXTeamListTeamAppsResult? + var objc: DBXTeamListTeamAppsResult? = nil if let swift = result { objc = DBXTeamListTeamAppsResult(swift: swift) } @@ -3962,7 +3985,7 @@ public class DBXTeamLinkedAppsRevokeLinkedAppBatchRpcRequest: NSObject, DBXReque callError = error?.objc } - var objc: DBXTeamRevokeLinkedAppBatchResult? + var objc: DBXTeamRevokeLinkedAppBatchResult? = nil if let swift = result { objc = DBXTeamRevokeLinkedAppBatchResult(swift: swift) } @@ -4029,7 +4052,7 @@ public class DBXTeamMemberSpaceLimitsExcludedUsersAddRpcRequest: NSObject, DBXRe callError = error?.objc } - var objc: DBXTeamExcludedUsersUpdateResult? + var objc: DBXTeamExcludedUsersUpdateResult? = nil if let swift = result { objc = DBXTeamExcludedUsersUpdateResult(swift: swift) } @@ -4096,7 +4119,7 @@ public class DBXTeamMemberSpaceLimitsExcludedUsersListRpcRequest: NSObject, DBXR callError = error?.objc } - var objc: DBXTeamExcludedUsersListResult? + var objc: DBXTeamExcludedUsersListResult? = nil if let swift = result { objc = DBXTeamExcludedUsersListResult(swift: swift) } @@ -4163,7 +4186,7 @@ public class DBXTeamMemberSpaceLimitsExcludedUsersListContinueRpcRequest: NSObje callError = error?.objc } - var objc: DBXTeamExcludedUsersListResult? + var objc: DBXTeamExcludedUsersListResult? = nil if let swift = result { objc = DBXTeamExcludedUsersListResult(swift: swift) } @@ -4230,7 +4253,7 @@ public class DBXTeamMemberSpaceLimitsExcludedUsersRemoveRpcRequest: NSObject, DB callError = error?.objc } - var objc: DBXTeamExcludedUsersUpdateResult? + var objc: DBXTeamExcludedUsersUpdateResult? = nil if let swift = result { objc = DBXTeamExcludedUsersUpdateResult(swift: swift) } @@ -4297,7 +4320,7 @@ public class DBXTeamMemberSpaceLimitsGetCustomQuotaRpcRequest: NSObject, DBXRequ callError = error?.objc } - var objc: [DBXTeamCustomQuotaResult]? + var objc: [DBXTeamCustomQuotaResult]? = nil if let swift = result { objc = swift.map { DBXTeamCustomQuotaResult.factory(swift: $0) } } @@ -4364,7 +4387,7 @@ public class DBXTeamMemberSpaceLimitsRemoveCustomQuotaRpcRequest: NSObject, DBXR callError = error?.objc } - var objc: [DBXTeamRemoveCustomQuotaResult]? + var objc: [DBXTeamRemoveCustomQuotaResult]? = nil if let swift = result { objc = swift.map { DBXTeamRemoveCustomQuotaResult.factory(swift: $0) } } @@ -4431,7 +4454,7 @@ public class DBXTeamMemberSpaceLimitsSetCustomQuotaRpcRequest: NSObject, DBXRequ callError = error?.objc } - var objc: [DBXTeamCustomQuotaResult]? + var objc: [DBXTeamCustomQuotaResult]? = nil if let swift = result { objc = swift.map { DBXTeamCustomQuotaResult.factory(swift: $0) } } @@ -4487,7 +4510,7 @@ public class DBXTeamMembersAddRpcRequest: NSObject, DBXRequest { completionHandler: @escaping (DBXTeamMembersAddLaunch?, DBXCallError?) -> Void ) -> Self { swift.response(queue: queue) { result, error in - var objc: DBXTeamMembersAddLaunch? + var objc: DBXTeamMembersAddLaunch? = nil if let swift = result { objc = DBXTeamMembersAddLaunch.factory(swift: swift) } @@ -4543,7 +4566,7 @@ public class DBXTeamMembersAddRpcRequestV2: NSObject, DBXRequest { completionHandler: @escaping (DBXTeamMembersAddLaunchV2Result?, DBXCallError?) -> Void ) -> Self { swift.response(queue: queue) { result, error in - var objc: DBXTeamMembersAddLaunchV2Result? + var objc: DBXTeamMembersAddLaunchV2Result? = nil if let swift = result { objc = DBXTeamMembersAddLaunchV2Result.factory(swift: swift) } @@ -4610,7 +4633,7 @@ public class DBXTeamMembersAddJobStatusGetRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXTeamMembersAddJobStatus? + var objc: DBXTeamMembersAddJobStatus? = nil if let swift = result { objc = DBXTeamMembersAddJobStatus.factory(swift: swift) } @@ -4677,7 +4700,7 @@ public class DBXTeamMembersAddJobStatusGetRpcRequestV2: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXTeamMembersAddJobStatusV2Result? + var objc: DBXTeamMembersAddJobStatusV2Result? = nil if let swift = result { objc = DBXTeamMembersAddJobStatusV2Result.factory(swift: swift) } @@ -4712,6 +4735,203 @@ public class DBXTeamMembersAddJobStatusGetRpcRequestV2: NSObject, DBXRequest { } } +@objc +public class DBXTeamMembersBulkSuspendRpcRequest: NSObject, DBXRequest { + var swift: RpcRequest + + init(swift: RpcRequest) { + self.swift = swift + } + + @objc + @discardableResult public func response( + completionHandler: @escaping (DBXAsyncLaunchResultBase?, DBXTeamBulkSuspendError?, DBXCallError?) -> Void + ) -> Self { + response(queue: nil, completionHandler: completionHandler) + } + + @objc + @discardableResult public func response( + queue: DispatchQueue?, + completionHandler: @escaping (DBXAsyncLaunchResultBase?, DBXTeamBulkSuspendError?, DBXCallError?) -> Void + ) -> Self { + swift.response(queue: queue) { result, error in + var routeError: DBXTeamBulkSuspendError? + var callError: DBXCallError? + switch error { + case .routeError(let box, _, _, _): + routeError = DBXTeamBulkSuspendError(swift: box.unboxed) + callError = nil + default: + routeError = nil + callError = error?.objc + } + + var objc: DBXAsyncLaunchResultBase? = nil + if let swift = result { + objc = DBXAsyncLaunchResultBase.factory(swift: swift) + } + completionHandler(objc, routeError, callError) + } + return self + } + + @objc + public var clientPersistedString: String? { swift.clientPersistedString } + + @available(iOS 13.0, macOS 10.13, *) + @objc + public var earliestBeginDate: Date? { swift.earliestBeginDate } + + @objc + public func persistingString(string: String?) -> Self { + swift.persistingString(string: string) + return self + } + + @available(iOS 13.0, macOS 10.13, *) + @objc + public func settingEarliestBeginDate(date: Date?) -> Self { + swift.settingEarliestBeginDate(date: date) + return self + } + + @objc + public func cancel() { + swift.cancel() + } +} + +@objc +public class DBXTeamMembersBulkSuspendJobStatusCheckRpcRequest: NSObject, DBXRequest { + var swift: RpcRequest + + init(swift: RpcRequest) { + self.swift = swift + } + + @objc + @discardableResult public func response( + completionHandler: @escaping (DBXTeamBulkSuspendJobStatus?, DBXAsyncPollError?, DBXCallError?) -> Void + ) -> Self { + response(queue: nil, completionHandler: completionHandler) + } + + @objc + @discardableResult public func response( + queue: DispatchQueue?, + completionHandler: @escaping (DBXTeamBulkSuspendJobStatus?, DBXAsyncPollError?, DBXCallError?) -> Void + ) -> Self { + swift.response(queue: queue) { result, error in + var routeError: DBXAsyncPollError? + var callError: DBXCallError? + switch error { + case .routeError(let box, _, _, _): + routeError = DBXAsyncPollError(swift: box.unboxed) + callError = nil + default: + routeError = nil + callError = error?.objc + } + + var objc: DBXTeamBulkSuspendJobStatus? = nil + if let swift = result { + objc = DBXTeamBulkSuspendJobStatus.factory(swift: swift) + } + completionHandler(objc, routeError, callError) + } + return self + } + + @objc + public var clientPersistedString: String? { swift.clientPersistedString } + + @available(iOS 13.0, macOS 10.13, *) + @objc + public var earliestBeginDate: Date? { swift.earliestBeginDate } + + @objc + public func persistingString(string: String?) -> Self { + swift.persistingString(string: string) + return self + } + + @available(iOS 13.0, macOS 10.13, *) + @objc + public func settingEarliestBeginDate(date: Date?) -> Self { + swift.settingEarliestBeginDate(date: date) + return self + } + + @objc + public func cancel() { + swift.cancel() + } +} + +@objc +public class DBXTeamMembersDeleteFormerMemberFilesRpcRequest: NSObject, DBXRequest { + var swift: RpcRequest + + init(swift: RpcRequest) { + self.swift = swift + } + + @objc + @discardableResult public func response( + completionHandler: @escaping (DBXTeamMembersDeleteFormerMemberFilesError?, DBXCallError?) -> Void + ) -> Self { + response(queue: nil, completionHandler: completionHandler) + } + + @objc + @discardableResult public func response( + queue: DispatchQueue?, + completionHandler: @escaping (DBXTeamMembersDeleteFormerMemberFilesError?, DBXCallError?) -> Void + ) -> Self { + swift.response(queue: queue) { _, error in + var routeError: DBXTeamMembersDeleteFormerMemberFilesError? + var callError: DBXCallError? + switch error { + case .routeError(let box, _, _, _): + routeError = DBXTeamMembersDeleteFormerMemberFilesError(swift: box.unboxed) + callError = nil + default: + routeError = nil + callError = error?.objc + } + + completionHandler(routeError, callError) + } + return self + } + + @objc + public var clientPersistedString: String? { swift.clientPersistedString } + + @available(iOS 13.0, macOS 10.13, *) + @objc + public var earliestBeginDate: Date? { swift.earliestBeginDate } + + @objc + public func persistingString(string: String?) -> Self { + swift.persistingString(string: string) + return self + } + + @available(iOS 13.0, macOS 10.13, *) + @objc + public func settingEarliestBeginDate(date: Date?) -> Self { + swift.settingEarliestBeginDate(date: date) + return self + } + + @objc + public func cancel() { + swift.cancel() + } +} + @objc public class DBXTeamMembersDeleteProfilePhotoRpcRequest: NSObject, DBXRequest { var swift: RpcRequest @@ -4744,7 +4964,7 @@ public class DBXTeamMembersDeleteProfilePhotoRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXTeamTeamMemberInfo? + var objc: DBXTeamTeamMemberInfo? = nil if let swift = result { objc = DBXTeamTeamMemberInfo(swift: swift) } @@ -4811,7 +5031,7 @@ public class DBXTeamMembersDeleteProfilePhotoRpcRequestV2: NSObject, DBXRequest callError = error?.objc } - var objc: DBXTeamTeamMemberInfoV2Result? + var objc: DBXTeamTeamMemberInfoV2Result? = nil if let swift = result { objc = DBXTeamTeamMemberInfoV2Result(swift: swift) } @@ -4867,7 +5087,7 @@ public class DBXTeamMembersGetAvailableTeamMemberRolesRpcRequest: NSObject, DBXR completionHandler: @escaping (DBXTeamMembersGetAvailableTeamMemberRolesResult?, DBXCallError?) -> Void ) -> Self { swift.response(queue: queue) { result, error in - var objc: DBXTeamMembersGetAvailableTeamMemberRolesResult? + var objc: DBXTeamMembersGetAvailableTeamMemberRolesResult? = nil if let swift = result { objc = DBXTeamMembersGetAvailableTeamMemberRolesResult(swift: swift) } @@ -4934,7 +5154,7 @@ public class DBXTeamMembersGetInfoRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: [DBXTeamMembersGetInfoItem]? + var objc: [DBXTeamMembersGetInfoItem]? = nil if let swift = result { objc = swift.map { DBXTeamMembersGetInfoItem.factory(swift: $0) } } @@ -5001,7 +5221,7 @@ public class DBXTeamMembersGetInfoRpcRequestV2: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXTeamMembersGetInfoV2Result? + var objc: DBXTeamMembersGetInfoV2Result? = nil if let swift = result { objc = DBXTeamMembersGetInfoV2Result(swift: swift) } @@ -5068,7 +5288,7 @@ public class DBXTeamMembersListRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXTeamMembersListResult? + var objc: DBXTeamMembersListResult? = nil if let swift = result { objc = DBXTeamMembersListResult(swift: swift) } @@ -5135,7 +5355,7 @@ public class DBXTeamMembersListRpcRequestV2: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXTeamMembersListV2Result? + var objc: DBXTeamMembersListV2Result? = nil if let swift = result { objc = DBXTeamMembersListV2Result(swift: swift) } @@ -5202,7 +5422,7 @@ public class DBXTeamMembersListContinueRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXTeamMembersListResult? + var objc: DBXTeamMembersListResult? = nil if let swift = result { objc = DBXTeamMembersListResult(swift: swift) } @@ -5269,7 +5489,7 @@ public class DBXTeamMembersListContinueRpcRequestV2: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXTeamMembersListV2Result? + var objc: DBXTeamMembersListV2Result? = nil if let swift = result { objc = DBXTeamMembersListV2Result(swift: swift) } @@ -5336,7 +5556,7 @@ public class DBXTeamMembersMoveFormerMemberFilesRpcRequest: NSObject, DBXRequest callError = error?.objc } - var objc: DBXAsyncLaunchEmptyResult? + var objc: DBXAsyncLaunchEmptyResult? = nil if let swift = result { objc = DBXAsyncLaunchEmptyResult.factory(swift: swift) } @@ -5403,7 +5623,7 @@ public class DBXTeamMembersMoveFormerMemberFilesJobStatusCheckRpcRequest: NSObje callError = error?.objc } - var objc: DBXAsyncPollEmptyResult? + var objc: DBXAsyncPollEmptyResult? = nil if let swift = result { objc = DBXAsyncPollEmptyResult.factory(swift: swift) } @@ -5533,7 +5753,7 @@ public class DBXTeamMembersRemoveRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXAsyncLaunchEmptyResult? + var objc: DBXAsyncLaunchEmptyResult? = nil if let swift = result { objc = DBXAsyncLaunchEmptyResult.factory(swift: swift) } @@ -5600,7 +5820,7 @@ public class DBXTeamMembersRemoveJobStatusGetRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXAsyncPollEmptyResult? + var objc: DBXAsyncPollEmptyResult? = nil if let swift = result { objc = DBXAsyncPollEmptyResult.factory(swift: swift) } @@ -5667,7 +5887,7 @@ public class DBXTeamMembersSecondaryEmailsAddRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXTeamAddSecondaryEmailsResult? + var objc: DBXTeamAddSecondaryEmailsResult? = nil if let swift = result { objc = DBXTeamAddSecondaryEmailsResult(swift: swift) } @@ -5723,7 +5943,7 @@ public class DBXTeamMembersSecondaryEmailsDeleteRpcRequest: NSObject, DBXRequest completionHandler: @escaping (DBXTeamDeleteSecondaryEmailsResult?, DBXCallError?) -> Void ) -> Self { swift.response(queue: queue) { result, error in - var objc: DBXTeamDeleteSecondaryEmailsResult? + var objc: DBXTeamDeleteSecondaryEmailsResult? = nil if let swift = result { objc = DBXTeamDeleteSecondaryEmailsResult(swift: swift) } @@ -5779,7 +5999,7 @@ public class DBXTeamMembersSecondaryEmailsResendVerificationEmailsRpcRequest: NS completionHandler: @escaping (DBXTeamResendVerificationEmailResult?, DBXCallError?) -> Void ) -> Self { swift.response(queue: queue) { result, error in - var objc: DBXTeamResendVerificationEmailResult? + var objc: DBXTeamResendVerificationEmailResult? = nil if let swift = result { objc = DBXTeamResendVerificationEmailResult(swift: swift) } @@ -5909,7 +6129,7 @@ public class DBXTeamMembersSetAdminPermissionsRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXTeamMembersSetPermissionsResult? + var objc: DBXTeamMembersSetPermissionsResult? = nil if let swift = result { objc = DBXTeamMembersSetPermissionsResult(swift: swift) } @@ -5976,7 +6196,7 @@ public class DBXTeamMembersSetAdminPermissionsRpcRequestV2: NSObject, DBXRequest callError = error?.objc } - var objc: DBXTeamMembersSetPermissions2Result? + var objc: DBXTeamMembersSetPermissions2Result? = nil if let swift = result { objc = DBXTeamMembersSetPermissions2Result(swift: swift) } @@ -6043,7 +6263,7 @@ public class DBXTeamMembersSetProfileRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXTeamTeamMemberInfo? + var objc: DBXTeamTeamMemberInfo? = nil if let swift = result { objc = DBXTeamTeamMemberInfo(swift: swift) } @@ -6110,7 +6330,7 @@ public class DBXTeamMembersSetProfileRpcRequestV2: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXTeamTeamMemberInfoV2Result? + var objc: DBXTeamTeamMemberInfoV2Result? = nil if let swift = result { objc = DBXTeamTeamMemberInfoV2Result(swift: swift) } @@ -6177,7 +6397,7 @@ public class DBXTeamMembersSetProfilePhotoRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXTeamTeamMemberInfo? + var objc: DBXTeamTeamMemberInfo? = nil if let swift = result { objc = DBXTeamTeamMemberInfo(swift: swift) } @@ -6244,7 +6464,7 @@ public class DBXTeamMembersSetProfilePhotoRpcRequestV2: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXTeamTeamMemberInfoV2Result? + var objc: DBXTeamTeamMemberInfoV2Result? = nil if let swift = result { objc = DBXTeamTeamMemberInfoV2Result(swift: swift) } @@ -6437,7 +6657,7 @@ public class DBXTeamNamespacesListRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXTeamTeamNamespacesListResult? + var objc: DBXTeamTeamNamespacesListResult? = nil if let swift = result { objc = DBXTeamTeamNamespacesListResult(swift: swift) } @@ -6504,7 +6724,7 @@ public class DBXTeamNamespacesListContinueRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXTeamTeamNamespacesListResult? + var objc: DBXTeamTeamNamespacesListResult? = nil if let swift = result { objc = DBXTeamTeamNamespacesListResult(swift: swift) } @@ -6571,7 +6791,7 @@ public class DBXTeamPropertiesTemplateAddRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFilePropertiesAddTemplateResult? + var objc: DBXFilePropertiesAddTemplateResult? = nil if let swift = result { objc = DBXFilePropertiesAddTemplateResult(swift: swift) } @@ -6638,7 +6858,7 @@ public class DBXTeamPropertiesTemplateGetRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXFilePropertiesGetTemplateResult? + var objc: DBXFilePropertiesGetTemplateResult? = nil if let swift = result { objc = DBXFilePropertiesGetTemplateResult(swift: swift) } @@ -6673,140 +6893,6 @@ public class DBXTeamPropertiesTemplateGetRpcRequest: NSObject, DBXRequest { } } -@objc -public class DBXTeamPropertiesTemplateListRpcRequest: NSObject, DBXRequest { - var swift: RpcRequest - - init(swift: RpcRequest) { - self.swift = swift - } - - @objc - @discardableResult public func response( - completionHandler: @escaping (DBXFilePropertiesListTemplateResult?, DBXFilePropertiesTemplateError?, DBXCallError?) -> Void - ) -> Self { - response(queue: nil, completionHandler: completionHandler) - } - - @objc - @discardableResult public func response( - queue: DispatchQueue?, - completionHandler: @escaping (DBXFilePropertiesListTemplateResult?, DBXFilePropertiesTemplateError?, DBXCallError?) -> Void - ) -> Self { - swift.response(queue: queue) { result, error in - var routeError: DBXFilePropertiesTemplateError? - var callError: DBXCallError? - switch error { - case .routeError(let box, _, _, _): - routeError = DBXFilePropertiesTemplateError(swift: box.unboxed) - callError = nil - default: - routeError = nil - callError = error?.objc - } - - var objc: DBXFilePropertiesListTemplateResult? - if let swift = result { - objc = DBXFilePropertiesListTemplateResult(swift: swift) - } - completionHandler(objc, routeError, callError) - } - return self - } - - @objc - public var clientPersistedString: String? { swift.clientPersistedString } - - @available(iOS 13.0, macOS 10.13, *) - @objc - public var earliestBeginDate: Date? { swift.earliestBeginDate } - - @objc - public func persistingString(string: String?) -> Self { - swift.persistingString(string: string) - return self - } - - @available(iOS 13.0, macOS 10.13, *) - @objc - public func settingEarliestBeginDate(date: Date?) -> Self { - swift.settingEarliestBeginDate(date: date) - return self - } - - @objc - public func cancel() { - swift.cancel() - } -} - -@objc -public class DBXTeamPropertiesTemplateUpdateRpcRequest: NSObject, DBXRequest { - var swift: RpcRequest - - init(swift: RpcRequest) { - self.swift = swift - } - - @objc - @discardableResult public func response( - completionHandler: @escaping (DBXFilePropertiesUpdateTemplateResult?, DBXFilePropertiesModifyTemplateError?, DBXCallError?) -> Void - ) -> Self { - response(queue: nil, completionHandler: completionHandler) - } - - @objc - @discardableResult public func response( - queue: DispatchQueue?, - completionHandler: @escaping (DBXFilePropertiesUpdateTemplateResult?, DBXFilePropertiesModifyTemplateError?, DBXCallError?) -> Void - ) -> Self { - swift.response(queue: queue) { result, error in - var routeError: DBXFilePropertiesModifyTemplateError? - var callError: DBXCallError? - switch error { - case .routeError(let box, _, _, _): - routeError = DBXFilePropertiesModifyTemplateError(swift: box.unboxed) - callError = nil - default: - routeError = nil - callError = error?.objc - } - - var objc: DBXFilePropertiesUpdateTemplateResult? - if let swift = result { - objc = DBXFilePropertiesUpdateTemplateResult(swift: swift) - } - completionHandler(objc, routeError, callError) - } - return self - } - - @objc - public var clientPersistedString: String? { swift.clientPersistedString } - - @available(iOS 13.0, macOS 10.13, *) - @objc - public var earliestBeginDate: Date? { swift.earliestBeginDate } - - @objc - public func persistingString(string: String?) -> Self { - swift.persistingString(string: string) - return self - } - - @available(iOS 13.0, macOS 10.13, *) - @objc - public func settingEarliestBeginDate(date: Date?) -> Self { - swift.settingEarliestBeginDate(date: date) - return self - } - - @objc - public func cancel() { - swift.cancel() - } -} - @objc public class DBXTeamReportsGetActivityRpcRequest: NSObject, DBXRequest { var swift: RpcRequest @@ -6839,7 +6925,7 @@ public class DBXTeamReportsGetActivityRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXTeamGetActivityReport? + var objc: DBXTeamGetActivityReport? = nil if let swift = result { objc = DBXTeamGetActivityReport(swift: swift) } @@ -6906,7 +6992,7 @@ public class DBXTeamReportsGetDevicesRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXTeamGetDevicesReport? + var objc: DBXTeamGetDevicesReport? = nil if let swift = result { objc = DBXTeamGetDevicesReport(swift: swift) } @@ -6973,7 +7059,7 @@ public class DBXTeamReportsGetMembershipRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXTeamGetMembershipReport? + var objc: DBXTeamGetMembershipReport? = nil if let swift = result { objc = DBXTeamGetMembershipReport(swift: swift) } @@ -7040,7 +7126,7 @@ public class DBXTeamReportsGetStorageRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXTeamGetStorageReport? + var objc: DBXTeamGetStorageReport? = nil if let swift = result { objc = DBXTeamGetStorageReport(swift: swift) } @@ -7107,7 +7193,7 @@ public class DBXTeamSharingAllowlistAddRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXTeamSharingAllowlistAddResponse? + var objc: DBXTeamSharingAllowlistAddResponse? = nil if let swift = result { objc = DBXTeamSharingAllowlistAddResponse(swift: swift) } @@ -7174,7 +7260,7 @@ public class DBXTeamSharingAllowlistListRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXTeamSharingAllowlistListResponse? + var objc: DBXTeamSharingAllowlistListResponse? = nil if let swift = result { objc = DBXTeamSharingAllowlistListResponse(swift: swift) } @@ -7241,7 +7327,7 @@ public class DBXTeamSharingAllowlistListContinueRpcRequest: NSObject, DBXRequest callError = error?.objc } - var objc: DBXTeamSharingAllowlistListResponse? + var objc: DBXTeamSharingAllowlistListResponse? = nil if let swift = result { objc = DBXTeamSharingAllowlistListResponse(swift: swift) } @@ -7308,7 +7394,7 @@ public class DBXTeamSharingAllowlistRemoveRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXTeamSharingAllowlistRemoveResponse? + var objc: DBXTeamSharingAllowlistRemoveResponse? = nil if let swift = result { objc = DBXTeamSharingAllowlistRemoveResponse(swift: swift) } @@ -7375,7 +7461,7 @@ public class DBXTeamTeamFolderActivateRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXTeamTeamFolderMetadata? + var objc: DBXTeamTeamFolderMetadata? = nil if let swift = result { objc = DBXTeamTeamFolderMetadata(swift: swift) } @@ -7442,7 +7528,7 @@ public class DBXTeamTeamFolderArchiveRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXTeamTeamFolderArchiveLaunch? + var objc: DBXTeamTeamFolderArchiveLaunch? = nil if let swift = result { objc = DBXTeamTeamFolderArchiveLaunch.factory(swift: swift) } @@ -7509,7 +7595,7 @@ public class DBXTeamTeamFolderArchiveCheckRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXTeamTeamFolderArchiveJobStatus? + var objc: DBXTeamTeamFolderArchiveJobStatus? = nil if let swift = result { objc = DBXTeamTeamFolderArchiveJobStatus.factory(swift: swift) } @@ -7576,7 +7662,7 @@ public class DBXTeamTeamFolderCreateRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXTeamTeamFolderMetadata? + var objc: DBXTeamTeamFolderMetadata? = nil if let swift = result { objc = DBXTeamTeamFolderMetadata(swift: swift) } @@ -7632,7 +7718,7 @@ public class DBXTeamTeamFolderGetInfoRpcRequest: NSObject, DBXRequest { completionHandler: @escaping ([DBXTeamTeamFolderGetInfoItem]?, DBXCallError?) -> Void ) -> Self { swift.response(queue: queue) { result, error in - var objc: [DBXTeamTeamFolderGetInfoItem]? + var objc: [DBXTeamTeamFolderGetInfoItem]? = nil if let swift = result { objc = swift.map { DBXTeamTeamFolderGetInfoItem.factory(swift: $0) } } @@ -7699,7 +7785,7 @@ public class DBXTeamTeamFolderListRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXTeamTeamFolderListResult? + var objc: DBXTeamTeamFolderListResult? = nil if let swift = result { objc = DBXTeamTeamFolderListResult(swift: swift) } @@ -7766,7 +7852,7 @@ public class DBXTeamTeamFolderListContinueRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXTeamTeamFolderListResult? + var objc: DBXTeamTeamFolderListResult? = nil if let swift = result { objc = DBXTeamTeamFolderListResult(swift: swift) } @@ -7896,7 +7982,74 @@ public class DBXTeamTeamFolderRenameRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXTeamTeamFolderMetadata? + var objc: DBXTeamTeamFolderMetadata? = nil + if let swift = result { + objc = DBXTeamTeamFolderMetadata(swift: swift) + } + completionHandler(objc, routeError, callError) + } + return self + } + + @objc + public var clientPersistedString: String? { swift.clientPersistedString } + + @available(iOS 13.0, macOS 10.13, *) + @objc + public var earliestBeginDate: Date? { swift.earliestBeginDate } + + @objc + public func persistingString(string: String?) -> Self { + swift.persistingString(string: string) + return self + } + + @available(iOS 13.0, macOS 10.13, *) + @objc + public func settingEarliestBeginDate(date: Date?) -> Self { + swift.settingEarliestBeginDate(date: date) + return self + } + + @objc + public func cancel() { + swift.cancel() + } +} + +@objc +public class DBXTeamTeamFolderRestoreRpcRequest: NSObject, DBXRequest { + var swift: RpcRequest + + init(swift: RpcRequest) { + self.swift = swift + } + + @objc + @discardableResult public func response( + completionHandler: @escaping (DBXTeamTeamFolderMetadata?, DBXTeamTeamFolderRestoreError?, DBXCallError?) -> Void + ) -> Self { + response(queue: nil, completionHandler: completionHandler) + } + + @objc + @discardableResult public func response( + queue: DispatchQueue?, + completionHandler: @escaping (DBXTeamTeamFolderMetadata?, DBXTeamTeamFolderRestoreError?, DBXCallError?) -> Void + ) -> Self { + swift.response(queue: queue) { result, error in + var routeError: DBXTeamTeamFolderRestoreError? + var callError: DBXCallError? + switch error { + case .routeError(let box, _, _, _): + routeError = DBXTeamTeamFolderRestoreError(swift: box.unboxed) + callError = nil + default: + routeError = nil + callError = error?.objc + } + + var objc: DBXTeamTeamFolderMetadata? = nil if let swift = result { objc = DBXTeamTeamFolderMetadata(swift: swift) } @@ -7963,7 +8116,7 @@ public class DBXTeamTeamFolderUpdateSyncSettingsRpcRequest: NSObject, DBXRequest callError = error?.objc } - var objc: DBXTeamTeamFolderMetadata? + var objc: DBXTeamTeamFolderMetadata? = nil if let swift = result { objc = DBXTeamTeamFolderMetadata(swift: swift) } @@ -8030,7 +8183,7 @@ public class DBXTeamTokenGetAuthenticatedAdminRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXTeamTokenGetAuthenticatedAdminResult? + var objc: DBXTeamTokenGetAuthenticatedAdminResult? = nil if let swift = result { objc = DBXTeamTokenGetAuthenticatedAdminResult(swift: swift) } diff --git a/Source/SwiftyDropboxObjC/Shared/Generated/DBXUsers.swift b/Source/SwiftyDropboxObjC/Shared/Generated/DBXUsers.swift index 006c66e4..6d12ffe5 100644 --- a/Source/SwiftyDropboxObjC/Shared/Generated/DBXUsers.swift +++ b/Source/SwiftyDropboxObjC/Shared/Generated/DBXUsers.swift @@ -103,6 +103,64 @@ public class DBXUsersBasicAccount: DBXUsersAccount { public override var description: String { subSwift.description } } +/// The value for distinctMemberHome in UserFeature. +@objc +public class DBXUsersDistinctMemberHomeValue: NSObject { + let swift: Users.DistinctMemberHomeValue + + public init(swift: Users.DistinctMemberHomeValue) { + self.swift = swift + } + + public static func factory(swift: Users.DistinctMemberHomeValue) -> DBXUsersDistinctMemberHomeValue { + switch swift { + case .enabled(let swiftArg): + let arg = NSNumber(value: swiftArg) + return DBXUsersDistinctMemberHomeValueEnabled(arg) + case .other: + return DBXUsersDistinctMemberHomeValueOther() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asEnabled: DBXUsersDistinctMemberHomeValueEnabled? { + self as? DBXUsersDistinctMemberHomeValueEnabled + } + + @objc + public var asOther: DBXUsersDistinctMemberHomeValueOther? { + self as? DBXUsersDistinctMemberHomeValueOther + } +} + +/// When this value is True, the user have distinct home and root ns. When the value is False the user's home ns +/// and root ns are the same. +@objc +public class DBXUsersDistinctMemberHomeValueEnabled: DBXUsersDistinctMemberHomeValue { + @objc + public var enabled: NSNumber + + @objc + public init(_ arg: NSNumber) { + self.enabled = arg + let swift = Users.DistinctMemberHomeValue.enabled(arg.boolValue) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXUsersDistinctMemberHomeValueOther: DBXUsersDistinctMemberHomeValue { + @objc + public init() { + let swift = Users.DistinctMemberHomeValue.other + super.init(swift: swift) + } +} + /// The value for fileLocking in UserFeature. @objc public class DBXUsersFileLockingValue: NSObject { @@ -279,10 +337,25 @@ public class DBXUsersFullTeam: DBXUsersTeam { /// Team policy governing the use of the Office Add-In. @objc public var officeAddinPolicy: DBXTeamPoliciesOfficeAddInPolicy { DBXTeamPoliciesOfficeAddInPolicy(swift: subSwift.officeAddinPolicy) } + /// Team policy governing whether members can edit team folders at the top level of the team space. + @objc + public var topLevelContentPolicy: DBXTeamPoliciesTopLevelContentPolicy { DBXTeamPoliciesTopLevelContentPolicy(swift: subSwift.topLevelContentPolicy) } @objc - public init(id: String, name: String, sharingPolicies: DBXTeamPoliciesTeamSharingPolicies, officeAddinPolicy: DBXTeamPoliciesOfficeAddInPolicy) { - let swift = Users.FullTeam(id: id, name: name, sharingPolicies: sharingPolicies.swift, officeAddinPolicy: officeAddinPolicy.swift) + public init( + id: String, + name: String, + sharingPolicies: DBXTeamPoliciesTeamSharingPolicies, + officeAddinPolicy: DBXTeamPoliciesOfficeAddInPolicy, + topLevelContentPolicy: DBXTeamPoliciesTopLevelContentPolicy + ) { + let swift = Users.FullTeam( + id: id, + name: name, + sharingPolicies: sharingPolicies.swift, + officeAddinPolicy: officeAddinPolicy.swift, + topLevelContentPolicy: topLevelContentPolicy.swift + ) self.subSwift = swift super.init(swift: swift) } @@ -671,6 +744,64 @@ public class DBXUsersSpaceUsage: NSObject { public override var description: String { swift.description } } +/// The value for teamSharedDropbox in UserFeature. +@objc +public class DBXUsersTeamSharedDropboxValue: NSObject { + let swift: Users.TeamSharedDropboxValue + + public init(swift: Users.TeamSharedDropboxValue) { + self.swift = swift + } + + public static func factory(swift: Users.TeamSharedDropboxValue) -> DBXUsersTeamSharedDropboxValue { + switch swift { + case .enabled(let swiftArg): + let arg = NSNumber(value: swiftArg) + return DBXUsersTeamSharedDropboxValueEnabled(arg) + case .other: + return DBXUsersTeamSharedDropboxValueOther() + } + } + + @objc + public override var description: String { swift.description } + + @objc + public var asEnabled: DBXUsersTeamSharedDropboxValueEnabled? { + self as? DBXUsersTeamSharedDropboxValueEnabled + } + + @objc + public var asOther: DBXUsersTeamSharedDropboxValueOther? { + self as? DBXUsersTeamSharedDropboxValueOther + } +} + +/// When this value is True, the user have a shared team root. When the value is False the user have distinct +/// root. +@objc +public class DBXUsersTeamSharedDropboxValueEnabled: DBXUsersTeamSharedDropboxValue { + @objc + public var enabled: NSNumber + + @objc + public init(_ arg: NSNumber) { + self.enabled = arg + let swift = Users.TeamSharedDropboxValue.enabled(arg.boolValue) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXUsersTeamSharedDropboxValueOther: DBXUsersTeamSharedDropboxValue { + @objc + public init() { + let swift = Users.TeamSharedDropboxValue.other + super.init(swift: swift) + } +} + /// Objective-C compatible TeamSpaceAllocation struct @objc public class DBXUsersTeamSpaceAllocation: NSObject { @@ -733,6 +864,10 @@ public class DBXUsersUserFeature: NSObject { return DBXUsersUserFeaturePaperAsFiles() case .fileLocking: return DBXUsersUserFeatureFileLocking() + case .teamSharedDropbox: + return DBXUsersUserFeatureTeamSharedDropbox() + case .distinctMemberHome: + return DBXUsersUserFeatureDistinctMemberHome() case .other: return DBXUsersUserFeatureOther() } @@ -751,6 +886,16 @@ public class DBXUsersUserFeature: NSObject { self as? DBXUsersUserFeatureFileLocking } + @objc + public var asTeamSharedDropbox: DBXUsersUserFeatureTeamSharedDropbox? { + self as? DBXUsersUserFeatureTeamSharedDropbox + } + + @objc + public var asDistinctMemberHome: DBXUsersUserFeatureDistinctMemberHome? { + self as? DBXUsersUserFeatureDistinctMemberHome + } + @objc public var asOther: DBXUsersUserFeatureOther? { self as? DBXUsersUserFeatureOther @@ -777,6 +922,27 @@ public class DBXUsersUserFeatureFileLocking: DBXUsersUserFeature { } } +/// This feature contains information about whether or not the user is part of a team with a shared team root. +@objc +public class DBXUsersUserFeatureTeamSharedDropbox: DBXUsersUserFeature { + @objc + public init() { + let swift = Users.UserFeature.teamSharedDropbox + super.init(swift: swift) + } +} + +/// This feature contains information about whether or not the user's home namespace is distinct from their root +/// namespace. +@objc +public class DBXUsersUserFeatureDistinctMemberHome: DBXUsersUserFeature { + @objc + public init() { + let swift = Users.UserFeature.distinctMemberHome + super.init(swift: swift) + } +} + /// An unspecified error. @objc public class DBXUsersUserFeatureOther: DBXUsersUserFeature { @@ -804,6 +970,12 @@ public class DBXUsersUserFeatureValue: NSObject { case .fileLocking(let swiftArg): let arg = DBXUsersFileLockingValue(swift: swiftArg) return DBXUsersUserFeatureValueFileLocking(arg) + case .teamSharedDropbox(let swiftArg): + let arg = DBXUsersTeamSharedDropboxValue(swift: swiftArg) + return DBXUsersUserFeatureValueTeamSharedDropbox(arg) + case .distinctMemberHome(let swiftArg): + let arg = DBXUsersDistinctMemberHomeValue(swift: swiftArg) + return DBXUsersUserFeatureValueDistinctMemberHome(arg) case .other: return DBXUsersUserFeatureValueOther() } @@ -822,6 +994,16 @@ public class DBXUsersUserFeatureValue: NSObject { self as? DBXUsersUserFeatureValueFileLocking } + @objc + public var asTeamSharedDropbox: DBXUsersUserFeatureValueTeamSharedDropbox? { + self as? DBXUsersUserFeatureValueTeamSharedDropbox + } + + @objc + public var asDistinctMemberHome: DBXUsersUserFeatureValueDistinctMemberHome? { + self as? DBXUsersUserFeatureValueDistinctMemberHome + } + @objc public var asOther: DBXUsersUserFeatureValueOther? { self as? DBXUsersUserFeatureValueOther @@ -856,6 +1038,34 @@ public class DBXUsersUserFeatureValueFileLocking: DBXUsersUserFeatureValue { } } +/// An unspecified error. +@objc +public class DBXUsersUserFeatureValueTeamSharedDropbox: DBXUsersUserFeatureValue { + @objc + public var teamSharedDropbox: DBXUsersTeamSharedDropboxValue + + @objc + public init(_ arg: DBXUsersTeamSharedDropboxValue) { + self.teamSharedDropbox = arg + let swift = Users.UserFeatureValue.teamSharedDropbox(arg.swift) + super.init(swift: swift) + } +} + +/// An unspecified error. +@objc +public class DBXUsersUserFeatureValueDistinctMemberHome: DBXUsersUserFeatureValue { + @objc + public var distinctMemberHome: DBXUsersDistinctMemberHomeValue + + @objc + public init(_ arg: DBXUsersDistinctMemberHomeValue) { + self.distinctMemberHome = arg + let swift = Users.UserFeatureValue.distinctMemberHome(arg.swift) + super.init(swift: swift) + } +} + /// An unspecified error. @objc public class DBXUsersUserFeatureValueOther: DBXUsersUserFeatureValue { diff --git a/Source/SwiftyDropboxObjC/Shared/Generated/DBXUsersRoutes.swift b/Source/SwiftyDropboxObjC/Shared/Generated/DBXUsersRoutes.swift index 9fd65a61..fa1f9be8 100644 --- a/Source/SwiftyDropboxObjC/Shared/Generated/DBXUsersRoutes.swift +++ b/Source/SwiftyDropboxObjC/Shared/Generated/DBXUsersRoutes.swift @@ -48,7 +48,7 @@ public class DBXUsersRoutes: NSObject { return DBXUsersGetAccountRpcRequest(swift: swift) } - /// Get information about multiple user accounts. At most 300 accounts may be queried per request. + /// Get information about multiple user accounts. At most 300 accounts may be queried per request. /// /// - scope: sharing.read /// @@ -121,7 +121,7 @@ public class DBXUsersFeaturesGetValuesRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXUsersUserFeaturesGetValuesBatchResult? + var objc: DBXUsersUserFeaturesGetValuesBatchResult? = nil if let swift = result { objc = DBXUsersUserFeaturesGetValuesBatchResult(swift: swift) } @@ -188,7 +188,7 @@ public class DBXUsersGetAccountRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: DBXUsersBasicAccount? + var objc: DBXUsersBasicAccount? = nil if let swift = result { objc = DBXUsersBasicAccount(swift: swift) } @@ -255,7 +255,7 @@ public class DBXUsersGetAccountBatchRpcRequest: NSObject, DBXRequest { callError = error?.objc } - var objc: [DBXUsersBasicAccount]? + var objc: [DBXUsersBasicAccount]? = nil if let swift = result { objc = swift.map { DBXUsersBasicAccount(swift: $0) } } @@ -311,7 +311,7 @@ public class DBXUsersGetCurrentAccountRpcRequest: NSObject, DBXRequest { completionHandler: @escaping (DBXUsersFullAccount?, DBXCallError?) -> Void ) -> Self { swift.response(queue: queue) { result, error in - var objc: DBXUsersFullAccount? + var objc: DBXUsersFullAccount? = nil if let swift = result { objc = DBXUsersFullAccount(swift: swift) } @@ -367,7 +367,7 @@ public class DBXUsersGetSpaceUsageRpcRequest: NSObject, DBXRequest { completionHandler: @escaping (DBXUsersSpaceUsage?, DBXCallError?) -> Void ) -> Self { swift.response(queue: queue) { result, error in - var objc: DBXUsersSpaceUsage? + var objc: DBXUsersSpaceUsage? = nil if let swift = result { objc = DBXUsersSpaceUsage(swift: swift) } diff --git a/spec b/spec index c8364404..f1b5fa6f 160000 --- a/spec +++ b/spec @@ -1 +1 @@ -Subproject commit c8364404953d875801d496a81f786c5545f78223 +Subproject commit f1b5fa6f96526401bfee0a90171bd5bd19678062 diff --git a/stone b/stone index 7a087d2d..f32aedf7 160000 --- a/stone +++ b/stone @@ -1 +1 @@ -Subproject commit 7a087d2d592bcc4500511b15109eeffa6ba29259 +Subproject commit f32aedf70f3152ae91ae0b6226f0906312ba29ea diff --git a/swiftformat_linux.zip b/swiftformat_linux.zip new file mode 100644 index 0000000000000000000000000000000000000000..8f1f16636a567b6f4952d2011ace938b01e1607b GIT binary patch literal 24172705 zcmZsB2{@E*+rEA5LxgN&r0n~a-OLbDNJVyq?8&~bW2?y6lQ3kh5XPFdghn#S7D8FF zB>OU!ng28Tz3=@_#iZ~q_$GIFYAN;0z3KQh|D z)*~Y)2gG*X+T7IC^SzH$Ln{K_N4+}=g;e1?&0-y{QH$S+?U8w^<>9#xUcVi z{N9eH-Yjx*Q-cSDOobY-&BY>DPCS{b}WtnO~uhl(JuV&FXEw~W%9F08jqR%6O3MzzYAg2|E}X~jO;4Z|TDoWC z{9655t6C?baFZ?&r1{N*b3emVKoCldV#a!LCDq zOsM!JoE+_aG;Vn2H9M59R|=9kaW$DBELFfNzU`aK&T!2UPtpU4SF9G#i+jeQhMI;J zC*BN=GM%K0d46^``$n@~fhi$)XAb1Q#V#U;-Oa!KT(89F4q7=G#$0uY(M)`MKeJNU zE3-0$AZA5mdgWmeY3alhlcaTnCXD(MG5b~ng-bj?S5$1=E01LpdVd_#2@7%TR)dF2 z?EOSZYbQe_e2HxCau!_$in0>dR63Luu_|W8AJpI1k-PByeeItTChZ*6jFpiDUwXj>b&hctFf*?h%~YL%Un_&00UIxQ<#!)WqfVpcnIpXy46I3}-tD>M5xWn5i*LG!&2)Kk76 z`PSrpytg{cVtnI_dc64@7u+S#N@m6;OQI?pS(Dv_Xn zX%hMkIK%#W#blQ~K| z+Lj-@LNp1K;GoD>2vet~MiAtaupVf=4w|+2Ur``7H~1!ekg_GYsMwH`JSk%;+WU?b?Po zPFU1ihq9;@arEC;pK`_*I;~x?0yD;R`LPQjnCIWmI$-9!P0M3m3%f96Ak-Wia8gUr zF#X8*J#A4(^;XE8|d-RaWmLW+q_%9>D7&;pJsoMoGNl~NbS$e$SC`#bioON=d7 z{BWQs$Y_bm0kVK*d0EI155;R7o^eC7#S2sgmPm5GECd$ZJ;`i1^Y{RVFx!BAf~~~SyHJ9=BlJ~75-u(wpK2abK0=>U zXE|YArTc)RYLj8CNDv`Ccg_I|gWg1NG9qfT2~pgn6^~*GQEp3Q(%q0!-kUIn9oT%? zYw$cwMF9rs-uY@I5_4}ud&gM<@~Dt5kv~O}{=!R1WA-Emk%nF%r)Q8|A z(LUug2}#im6NLRrG1!=TI4&He$z;)yz{O={^5v&<- z>S68k3J7sOZRMSJGTj}$2MO?U8qTIWw1T0oTEz(2o6&5RXf|~j+Ux6IIrNddA~B}r zQQR(Zwi_|v_^$SXHQG%SRRxM^!Gwv~C4oHgC`uD)ErJv)rxf;sYjN=(Ql&xJwhGzB z&@|kI=Ty<0VfI?uJOXrb0^loX-j`kE*Ko}Dxni1-J0M4x6uY);2JGx`G}{FF#-cP7 z(y~FGNI`sb&o*VDTrE`+!^kDyjSC@A0gVGNcQ%XY4B6ji6zN zD>ij9Ay~c}=L%5QqRFsmW+0V&oF#bDpiFX5&{iSsl|l;c!m}-14DVTdV>M$K`{LC_ zV$X;qxINHjYeN6$`6`}q|NrwDFfierD3IV|S4ai;H|21@AFr!mG2)+-x>QI_dKxD$ zNPy#vz_}p-HXnii+U0wDtt&)rB_QLTbuy*e)#jU!{Sy-aCME9Hg!M(6mPeZbF*x4w zGl(+Sgn48(Cg8z)G9CUG;D3&t3yY>->7F^ zCN#sLJ#7*3TBrb@PvPn3(9{!XwvbNB6MJ6gN$t;f8z|W&_l$+Lx&Lz$1jLa5Wi1p; zUq}UnKQE3-YAHsOE2pcdzDN=;~ z^GaR78u3rpU4$LAmF8h|HxX8_i|YK{OiB8G zzs@5xDO^aWOWF#}Tl4@67)Y>S6WR;2Q2|THKK%(=Y7{2;2=MQbWj)Qy*&gGD!`w1da_s0r^o7&AoTzNVTA2`eC6>F#oTPd_`mT%=i9Qm zew0FAv|xGEWtX_W*mS}^!E~DBk9I#99%bFcp2IL5z}0F&vdiC|%%LovGkYh^_o zBOi`I^G(5LrT=e943dXNKLT9O2A0D6)?znj91*X)zpaC5{PT5>M-vz51fm zMWWpvL@~6W!SMoePn6)m0;=$X6p$EX4BmB>>^TO$zV$Q`m>z6AWiC zK#`L|5&#S!VO>DVjGZhxgxCfIZ?U%O=~hTE{x@NfEN6`&2vXtt?@(3ViQxpe*q-lg zPW_mheNi5LNT8zq2No%1s8Z8!3nwCV^rQcS$u7}KOR@YLz)Ql1n_olzb?X14mi?0e z#`Y%ybf(aMpoLUw0BBpHINfP}?;(tIXh8)(p3wt!EXQ3dG2v!kJRCLSkcm*dgr>9p zr;-479+tJLop@s=yyO&ifr>bR1|4=i@XllUpC=3i&;X9SZI<%L7sK}x`kyEN1+_IC z^=X-Dj%z^ty{o?m#H3mXI=sV@^veRA7)PZauaFoV-2giU4rE(0S2yxi;pk%AZN16? z%AN^Jt3Zd!0gyq;=tONHRg2Q_M10|U3wNH_@#OjjMv>TyOEHgn4epSo<+^#Q;D)W; zePL>T(L9ItWbvK*RQ+KuM>$R$D$hzOU2#*)MsFEC}M4-0R zMZ4=qCx!}Xt!HVZoz^l8D2_%gt@vG4D^94l&@5YlGT>9%AbudQxL|1|Mq+b!Xn(4f zg8;|}G6JX*c|cN-64kb%UKb`oD!czclzdQEd%6-_>=av}8QLm0kw9UhcFk85gm6Rm z-zyd|PS}(EJQ_{pO+0Z))Oab{J+DFj45+ zdLqvxwE_PfIZ6xG0avn$qKHh}ryE(DMc#Q6X_$+K{3N`+yaW5R!JSG^jiUx4ao}AUfya$JU8FcGAFgKA+8+DIrF+bb`EP zcLf263AAn#iTdeHSoRa?k~i2c+;|-#yD=9cOO?uIAr&-N4vOzGieL|}!TH>8TZ%5H zn%Joe`2mD@8sP>nz-sd5ccVaON>PNE_PCvj-6Ga2ksr4{I|q~C`m~&oiapu+oCP=u zx`t5&hvHa(C!m=CNQhIFdd*om8{07RCZ8qmN(Wr(Cb7zP2kywd)|R*zLyFj+ea0lR zG`_rB#P}RXfmp^Y+@0{Jmer4PbjdTANy~yWDIh>x7Q>)#CbU4|*~#<>>_eU@kH6@W z08PvtP&c6fpkr+|o?PT^@Rvw|%g=J(@5Phw*(Gk={b_rPZFl7dufEeLLVaCN7-i(@k7MFP~ z&2a1D-;DM1iu3Gm)`l0dq?y%REhpm)Dr|lvOWt$R4H0CfQC>eY*hhCYh;a#UTCb5SPD+{kDgx}-ZgC_aqyTgpXH#wpl}+X z1~9u&9Q9+?>?C+zc2Sc^x6vpQJvx-rzwI*V_-uwx3-xSl%vc4_L?Ps7fII=Z$Ta$c ziFl;ry_F}ZAN{vjk0W-N0OskYd4~}J5#lXn#Aq97^~VW{#L<^Wmk!=m(&4`oY=<*0 z_&QVUG<)+aU$N~Qh|_l{PwPBq`X~&n6JfwpNEY&NBsBn5pMvjVXtS&7fH-KnfFRvr z*LYtNuh9b^aMtJ|=a(S>;t9_cfo-b^&@#~ppfPj^oaWUwmTf+75i;R_@iLYKIeq@S z)kvcJUuB;pyk{VmVt2nQcR5Yg+!pq272mPzm)^NRm$cjLseG*F@OA|`SIyK zizG{?u9ZQ${#;d&)DZ8G;LuAg6B?T8(rOitM9Vw+TA8hFn?bUM~T7WyAxs zH%2%bS4GU(5PRAoNa-~|JD8;jmE46v72qI+%0i>W*UsOe;3DqZnm3U^=Sk(wyb?#T zQB|_G`k*|9gVbA`s7<1RWF6-ei*FTIF%46HF=}A-gAHHKVvtR_&QJPCN}YrVS#QWF z-(hE$pMrm}wle=%cL@C4r9z#s_mqFSdF{46jh$*k&s6?d|q5aEaE+|Ey;T;LgZeBJsbTXH(hME z_l8&G!3}=ZLP*i{1&B}QCUZD>xXA}Ug-zz1KMvnW{G0592{lPV$cY4c+;zkRMI{a- z8@|J)6W(15^rmR)L+Ap_uJ-5N9m$Ls9&1~mnbs^c7Wg64pCIQ#1HPnHBEblQYk4Og zC9N@Bn2j|8s?K={$YF;)LE1uj1Mf0po{>QBLL<%2SZk9~W7Bc(d&<{r6XwcUrI%!la}XbUUwF#m|>{lRj9 zmHGPRm5Y+9BhY7El$SFQ#W2}n7$6Jvx-!es*39t=QeJ_s`C(yveo>r1UsOO|3am0F zkP-nEA(wQRFz|@i2n>R0XF*NpQvq)gXAy@CARfu<5OOX#vZDYQj9xPl z{}|zjP;9a%E8-kt7K!KJY8i)~xo5(>a$m4Op{x)3yg1L~Nh1QHsqbd}lf^)}&bIiR z3GE2VFh3ph2!kAE$O{^}JIWakC2~w;{9vgdH80Gh7~qOpGUO8^sYs^;9$X{8OxYJJ zNa};*?j&|3IcbCY-9<}zHMO6Gi-#wVX*2vm{<*Mo{woPHuO%lns+ zleeXZ!t~!8>hl;F8ZNz^T-GbKGMF?t>dG<1m+UZ9aNezUI>|A*AQ{75es4l|!oY0` z_V$4Tzh~E+!DD@SCwiM8#fs}#IsGF?74<_^Q;}G=K4EEB%@f0Cx)TUXooB77O7Kkw z36LeE%!6%}OtUX2M$Wi)dSG7bgZdyYFt;!8y7EngnvP~~Kn$?6R!1m% z0b&%(*UOq2+VXyY)M)FdVnRNEW716gW~6yjTb{j5rvUCN9uAw(b;H!1=+89_8L0yz z6y2e~RzbG_^;V&;Fwj~4n*7AD7HYxY-TGc>rKsays)iey_1V8VRfN}2VCa&t@>eg} zd(+Ox!Q&joK*cG+(Q4qrQG1d4HXtr(mJfdTG7RWYptc|)9@wcW0MuLsHAMJDb{NzA z&KKe0R6UWDG1#B%VjK;B;;w8!Av^a&Vbcb(i3i|IeSz;;y2C#lo6va9Ua-~uW+bC| z7mqWH_$1pPJ|9iuplONwHCAkW$8 z@yM?cB5?sf2Qqfy(wdCSTi*dR>dgVlITMY*p;i(ba0N>-p?4L;>U))c<7}j+lH~Q!@pq`F6-B9QLf&IOk091C3I17S66C{nYU*3a5ZYkH+EN&zGcqw@54v(J?Vo;; z$!qr6J!JXCYl3_Nl1ESQMjkAc@i%r5(?q320EyXuuzxTCdCJf}Of^cSCVe|gJ||Sx z_wd0ZQAHEi654CQO-b+%4Sd&9l+WFUG@5>0!EdxqhHkml0yF1?D-<**)@v4 zv3*1~85sQ_&^Z}^46Hui`G!iHWp73mbRVWE!9l|^-}NR!HCHKQIdMuN#82rZtsx(m80%6sgCppQv(fbrerH^jGPHTV`pZ#+cjPs$a%+7Ml@kaMTN4_% z=m}6){DobFa`#2Hgy+16jFw#>*)gCui(;5!(Z~)iFeB7gAZ9T*`|;GH<|zgHt=4bK(4qayFM&sFWFDVf?GvMjdd? zVHl5N+Kizp<44Xq4-sf}>@fNFSxVvHFY+$(KnVM#kHIG>Q?uW+*(bJM9TI#17Z$QM zRx?;TCjr@l=C=9_0r2WmnxH=?<)jXyyM)d;Rx$0m74Us;Bk} zP#qp30ITGkDHaB3c0kM?F;CpYUTRABq+Lca$T~@^^EaF;ey6Px?l0XR$K7YqrHbeY zAGYaw8fPS9mIeyW#GJ#L*GS=Pb=3rZL`;xL;^=^zEC(gRxaXseymlnJZ++!2M@n(U zj)O!gnU`X_N0O-fA`^Y;lg^e$#O}t}CRV&yFQiLS+_|F>PNsnx?^K1I#lT-9!)c$p zyYh5booD`=f6bB3IXKW-GG_n!p|gflAum9_Xau||*W#2Cy=&K?i?S2s=jKkbx`OoC(4M^5GxGH{CrO%u`!IM$H#m!c zLCBbj)D(^#7}CHBVtE6T^xAkXnsq}fiKy!{It7kgXXmqXvw=2 z6j;{|2u8{xpnoZ%WXj`jEx>?qBLV_p-lLM*3>X2m6Yx+D1@41oN!dx#q{-q1wj>)s z?Am7meGE|jlK2n#?n3`9>7Q$@{WR&p)0Y5f;rEtkAVO;;8YUD{58kurbRc*H_~<+7 zfYN_Sd6KFYy>5qTOs_>zuN}F7Tmd2@&4@UDwWAS~$cZuoY%l<8{}kn+z-Muc-vO32 zHqK9CGgLM}Oxj?mRV$Pe{GKXoYwS@jA&YHCc~qf?;VV)1xMFusJRnPPv0#_61PtKj zfUz_WPf}E&)8isroq7>hAtx}2I0a5@C-wa$LAxw*Qfr~lvz@vQt6e>C9F+{6l_3g`fn@jJ>m zf_jtm(l^sNPh?lAn{l80&bl)A$)s@pPQ^e}`?le)v)5=eG6tX>?A(Q%wSCg@fXqaW z-ARY|4_!`W)WsPRWON|T*5U8=E>v6eY>@c$gK#4vTyTNLzyWkyYF;i+&yx8Xz59v?K}?2qJTAaye20l`$M5PA$2^AX&R1yQ^iWMfkZL zx$pWD682$3 zjTjJcxE-&R72XRJgX>Pvob zH7WoFP=>8R0cOSdKm;DFL=VE))LdtTdvN$8NGL+;HLO1d#i;}0DPXvLsZ)N${+A2_ z)LRS3+y~I@SO7%Bl>FiRf0ePK>LR1R9R~opDi}7vX8^pQy;sVQ0Be}UGxR^*$#H$n za3GMk-1oQ~sgQ+1Vdz>M35q)x0HY@(noZsQ(|3^}0SI>?Wh)C&ZYXNp1*je#shltajZp!}?*oj1;1|0Av^vO8#_oxsJK;Z(K8}h__V+b4|?O;au z7Sn4rz?3}@xET4OFaFGfXr6e1Wn&DKD8ySJ|v*0tL=2LbZ44s%>(V{9WuG~;xT4AZJr>3Lw+o5u>`0~%SnL`ejtk0h&R_5F0)RXneG zD9Z;+x>G0QUsgd@M_pac0)plr7mVbiY*}Q1MN!l?R^}5)o*C-^|EBC&-H~L6 z^Z99STXj#D+N_)QhKhTBYnzYeN!oW6-a$emvuV=GtWl~kBJg#){<^Dw9A`+ix&uaCkBiJXphBZHpC2H$=!T= z#mdmKq%ua`>p9WuKJRR_2fk4uu&Q@m9uBK}r6;dW`n|-4PShR5Z{?}U#D>_*x@>^vr z#zk5YFsn!d%_bLzn{sP0^bY_6^0|!9gz|o(p@oxSv_xV%Y8UVzsXW zY<+26VShIx#n&P&diA;p*-@u^BoF8XB_Dav_)Qwz(RPqP9)Ug-sT6 z3rgSNo-&CL_16ZEJJ+f|&?Y#&@)*E@YI0tA1kc89^)LHwM2B-s#u5h3d&ZILH^sQR z#KZIl0pW@))x4^<{=IlDi_XaY2XqucYy3LO!%IvWJdBpBtsSA{e9!S_bG z0VohqNx*aBv`|le!Aau)6X;;61!x0$Xp~ALNQ*1daZ;OP9sSD|=_|=I+2uSe7;eg{ zVfwJ5d=igdQC&nDZFCCgEPPQmp_QDCyCc$`zxCJslv(_GSwH^Nah~pMK(d#|D{a8r zc~kH^Y(mEm+hYLrJcBxk@}E%&Lfvmr7WoB}1M?MRA3Td3h(&4>8h;$csT|Nu0x^6vz&le&+k&?DE~%tU^Qyp{g`eL+z=1IrNK03Qdx<0^ zJ(|uZ`{qPE_G3rokQqhlg$!z8o$sGp_su3&^xt;1XKd5@NiU4k=&r19Gjx8IEsHw& z5URGSKhZBM$Q{O;ZQU()snnlU{JdlwEI0`&8S`$L;9##g50jeLR&s=0bktTYhKUtx zZ}|~tsxBhZ4z0}aZz(p5Yn+kCYGZXLk*jXP_5B@pE=X$hM^2|jHs;b)tgHv+c6J^6 zn^2CJP-|?hyPZFdG_<;6N%4WzC-mmTmBJi{Ah!9BGYTSw%&p9B=%S?UU*9tu*hQku zHsHfPha5mDyV6CMCqrwnj~m+wR$UgDyO_16p*>OEV+sjEb3S^AzrUSQC$$s{s5MH8 zG&VSjb8f%=BsWuxRoYkd-O=1H1@c>cR3Z!voooWX*p7;WSI|6;YHOHEh9WMlWtp8a zORJq2ORJ%GmR2PA8kT%nzd)=XU4-(*mgl;idt2WSq#sAHa`((Jbn}$7pE7fQMFvrr zhFf0!=9Cea|MuhgO3~_iCh6+>4`#y?FaK23`)m6uitfO>ko65sBlQjJeK8awNYG5v zcQdoMmz!2c6Gs!q5}yl?(dzYc|A>)ViU>&Fcqikh-f?*c-sqlO9(q5S%fsfpX=5cT zFl2EJ$MmN`@h+L5o%Q*j6Jv?(kyWhJYGa9V<&=Z{?m9j0?m8b=-F1Me0cYWbX`Ax^ zsLgPv(&AA^i`>_#B_XCX>M|lksXr%*fRRvyYn5|SvaRaQ8y`nj-vUu)NUJ6sey-$HL7fF_ zRdSa68hLzA_e-x74k!{Y08^$O=0HLtIiSErMC)o2;Y0JPh8SJN=YRu z_Q&1b69yGCf9W9(fz$4+B)hPL%TRqOf(5mokBCv~()L4&B)PGCN3nht*b=~FXnw?K zs;}~55ub`_u5*qFOcZkMr}i8-0W!<)Zkp?4MoTd;kt4dVv*hOsVK;@8Xr*r!=+Uw$=1U%Y_-EhF_e!Y#{^!YFD0`-m!aZ6)N&0$E_IZ{GK!UH z^)7mn$l0TQ9-YAtOoF}~{mn7EryOGAUaGA@&Nrra%;#{=uJQQXZgl6?nc&5u7C)Dy z2rQ&96|oBX^60QOLDwu-qRNAZnfUvfs$dxHtNh{QwtX%6EztX#Ycb?~&C#vLG_tKx zwUPH!P(WoA@nES?R!r2vH=b>*`TSTEMA`VYV?<)L>)#?%GD};M6YQ*Cj5p^hpli@w zKDP}M#YBVC{*-zZ0&;nX${g9Vm8T%=7%q!uv?D)6%5f^{*eV`g9uG_}^wqyksDn8o zv=}w%u6eu<82wc+kAU9%7u`o%kpOr`eTiby9xIlZX_aOU5v^Hm%-j zpwwA&W5Jv3aj$+EQ0@4jpsBGH%7v0I%8gZMZh42|1-q=B%k09_JqFo zYF(5_)S((^?mKh}g<50*G&Vp?<(s8G(q&EsWC#l8QwlWfm*Aq6Tnh|p&hfsZL$HLm z028^p5R;^ziZ102oB)TCr4L zg3nU?9ew;m#5`P7A%=DE5T@w|-%-f`0sesVnYDy&U%*X(-J$4@#%#N&30)1K<1Sa-{EL!#NMHz9C9ciI+ln`Q$2q>fam7_8F8JY>YWgZLT2e9M09crQbr6)KB z1Pk#s0hz>7FJwrEc?up;97KDa=XA<`nq{KbGlh-Pg`G0YH4bV{qXA|GpZkX6Eta=O80?9c=VA%`L}wQP+J2KsK zCP9e0$-y4Y7xIcwQHGK~Ohth+G$cNT^@*nZ3Qz*GTl5 z2{m(R`mam67c&g20v_EL=`Yl(zN6x60p5Lb*H~(m?CiD+<#@Goj!6Ke|F62wk$1my z;7Td7I#BJgZZ6bg*D!3{UiT~>8$gL>Wg>BMc!C+-T1(z|-aK;q{vo?h)(v1{m2Ydk zBpKBZbDMfu%yfy$>ui5y)PlOc)+jCzT=&HPH5gDLm{muPuJv$~CC2^NQ15twbCUMT zHX#s6UufNa{_j*{%=qpws07E@WNjgQxB5A@d(TsiZ>BP2!} zmKP!bP)3SpXtq|C=G;q;+T;qm>EP6Y8fonb)|J>o2Ogcckbsh}#Jm zvifnaiIqTM-t|OpfCv|LnI5k?YWt)#R0n-aR%dhLj3j6`s`*~r1`lG zF9o9IwzMLVcZT4Bo?a&+gf-V)76RPcS-rxfaQEeXIM$|LV>5B1*AC<=pW}%PyZ1SI zxNqGj?+*}J$8GH^(9f}|+vF03oU9UWz4S?cI8zqJhYu8&jErP0@1G)Z6~{%#QV^cs|2$XuO$MyqVFyp~B#3tM<0( zz$?W-x9OL`*^B%GVAqJ-+YtjDxMP>ZT!%}h$;m3vuWb`t%ASLkcXnQeTzpd*l3^VB zd3{o1(V|!V+RNv>dW(m@t%Q@fJ(IBB4_-dgd(y^SpZrUf$bh|(&k=7ppoKiXhIMGB z3bMwhXUHD;@J+u~&s9~U!W4fpMz(&f^;EjH?@)Y)*w3u*9&rsd+c9&wp>P-#b zeAXUCOO3^__f;Es4%|ME*l-IQQFfcD>D{2lR#2c=4Weq+KV4Qic&1!c>B|!b?An1m zHX(P}ywzer8nby$xY01~PW^I!v(N ztM|y}$K;DN{PxIk|AuhJdhu@uth4F*%;vxg-c@%oiW^Kp@eSXN%{V@Wm{<59i1w{w zcCd()t&)RKEa#6l?5~Dnp*v5#e+9npCls&r_Qu~UnoQQ z*p>UJ{I;_D$v1%B)ld^Aou)mzD8KlF-mSO(WdG`AR{uWV7scm9h6OGp# znCY3r)Ho43GH&p1?yvW09_ZW8@TaVs;vF*jQ=C2RLxbjP-U_}URJ-Gcz7JCOln3Y4 zJZ_bIX{}dDeCiO9KOBbWBe+HI_o!hatY2NtFId01V7ei<@bG{SyHK+lur}_L^{{(j z?mf%V{d%8ZkCWUj&DQJ9>hYRYt^EsH`5%qnW~~pkempy_$6M7&xFuO#otgd0q42nG z^?qFn{bnV0TVXH&pOU?m{)3*kz|`AUUFZh_J7*JJ!-v!pZ+uHJ=ke4bsK^JBUpn>J z?sY4ta`lgv%^a+ng4c(E)#iK0mJ7*2g@PsWP2ZbZ)%weDCDcV8Z}|7a8)?9CP% z?CQ^S{wbbW_Tv^dy@1J@Qg{~pbWAQNFIaNhV|MEPY%&(4464dK+%#IqABbLU=AUYP z^1C}l#OpmMqp{DS-beVpt=;GkJJITQpv-K~y%|KGu`K_qR1Hg?jiQ^rk$8{=hw_%KUJ`G8+h#3P4$JXcIUz^ zo#Sfk+y;E%%YooRYEaD}#=Xwwb#` zR4?{#3VIUKDe8D0V|-fdUgLM44ZeSo-_UMWa852V%giXUA@g-6!*0dk?LoFznQAw- z>vxh{3ovejoco~CC$lHHuU8{(i8tQZ&faX`SZ&Fz_Zgbgt2oMisok9L2fXKCoIJ$u znZF8ri{V%emKwnh;EwkXnyxS6GtKV5T)eT-TK0M@G=H=~1ncy~^bbYlbM+^qNpkl> z>V3RS@Bb0;3^xk>e27s>VaVS1T~t48-}J4Vy68#ZmbBxSUeI_kBDY%a^YK}Mo{f!h z!c4(P^_iaJjMW*|@^#1a8#%8=ymyH&21l*)m9YfY=>oRf1YOJKnV*~0R9fO$^Kxcv zFNf=Rj;)V%^bW$8tFBZj-wL<=S@uIu?Oj25rq+^{FgC3sg<-B~D?H-_togktGLUU` ztl=Z_+4}o%B1Y4;?R948^=-3(M%U?hNaRq+(fzOa%FgZtneAdltHB#pBQ|Ati7INt z+{)eqvC1hS>@5oqHN5B$)?h{!+oWFp-Q1>B>jjf*qwW4h&-?;Ysep`@NPv#K9L@Kh zFH0Kw^TKi_Ji0f<^v~lXiW}jWG6V54t-(LT6RNiEgYpx{V3+<@yX{*CPkJk}BXiCE z_+_P@q-@AG?6=RZ3snt;Jz1<%=%9ccrEECg&m8tI6l-K8CMyksy$91r*M1L=`l_$- zhD?Q6@qIn)DIKWu)Q!EajD2cXy1Qlw9h~8`#5iNMP6opU1{D?y6tBE>uA;p6L9*eVV=E1apr~5b8=~j2&5~sDB**zoht%Bm0N3*x=+6kr@`!-_yAr zW|4wd*MdY^1*`s1D%hUmujDV-`iSwpjkidlYDeVOeIb5-wv)p{In#XY{oqZ_v&6zJ zWc|BD`Ht*YyEDWqGjT-AV4(&1%z_7xQo~I{B=C4_Z-4c8X37g9@ufP2^v#Ip0n^1{ z(A{hi<2%z%_jp8Zcs7tn-p0q(6OL9>H6w3xxo4XH*j@BFXJ@qFAVPF>vR6|Qx7$i2 zMuZhJ9f)He|6%QUl^N~5`)uoB%EQ$4NWD?k$gi)7vc$I59WT+DSH~in=wp`q<-VJZ z7~#u!_!e6R#PahcbIsi2kJ!NUf}$``enptrYVND!j|+sOz~$BQ4imiFfcdPl_~5HM z$Kr!kn=^BUgPnYfyOh&K>U8TS{3&lUdxsCI`HCku?<{NyBa24-ubq!5-MV<3faN>* zh6UG2ZDRN5Ze$D=eZIM%2HBg*%{|hs*>YR4uswVGerCgzMB@>*^w(S$?wK)cU?PUOo!j`+a~=9;ULLUljJ?Mf7pp ze6L8sK8i@N38C1vE)VNLkamBvs?si604EG!U(B~mRrUxG@_i@^+#8|^pKi5NNt@bQ zUQF^?&{IlG4HaCrZ8gI`8HqlYe08$Fe*OfJW3~{wVV<$xZKpVvy`^zaV?Hz!@_r3m zE*n))6&Aw_#yZP+J=$_T@LRaC`8d<~-Pg><>w^*tk_Tt8fgVoBB6fO&g~i$iYV4;n zE$R2Y9&a?OOWpS0CS>Vy`6}HmIFgcP$lxg(kms1eC?426Nv-MiKkB$uz$n3Xx!BE^ z+UZ4R_RqP@x92F?HiE%4E8H(uCTi0*%dnnS92-{`wJh-T*zr#h)uqgJk)qp7Yfoz= zkNF*`!?&ATl)n#-r|xeWOup-Y@FAug4+{rWcZi+ zY<+#Se!YF$=+5t3)B1!-tgyFjuz7Qx)W+|7tZPAE!)P!QGtBr+jd@5m(sJ@ehLg$q zz3p>co?&Kq=Fi|o-+1Z~!lsng-1=5^!ZF5kJ0%>SW0aGfnG!Cu;o&N}>n92c>+Ud4 zN=jXc(z|&y=KQT;)>ExEV*lXCEMnyk>x`CkPWi|!g0?;J%8MsP+vB&fo5{x&mTjey z5==Y3s@qR9nzkPSYggSsK%R|IiyvOzKE zxX<`#t8=fwf@f(aFHk1p*4t58j{Nf-9`5$fpKVJ|a|dZQQOy*G{Tc0S$g3Zjnf_V% zV=j=t|6A2zb^hEw^GKx1yq5{TArGYFYX9g)yY*GO(Hw^og^gq1`xPA>zb9k%Bk?M& z3b@EymG6SSgwbHP8lO6>5IUQDr`Dt)9g?j?>??{BbJMe2UU5N|Zuh))8ZhQH3c{d)9b-IJP0iX&s8c2nBE#55AJU_SQfZfjpfVRyb5O4^v~F{ zev#Qf8kV&vzu7g~dEC(X`?63C((&8BVF4#VuVgaz!~M4ylc3y zD5sD6E|Z8V^Z8%zF1$M!KIYG8VHPiFmfQF~uh43T_xbFqc})KJr2LmA@uc9mZ?5L} z^H)!AYrcNjSChvCjMzrrvh0(7+g5|O_wW(Kj?B<|x9)$aB!tT2Egrqilx`V`BsN@{ zZ@OU6Ed3zmX`Rb{Hi+xNyFM!@Y9>VN)2;Y>)J(PqvrJ$=H5c?Z6KQ*M*p6CPaF)^8^~shL^b>m}ASP&je`+Ipq@bVE7#EhziT; z+pUvfAP?EGH;Zcak15xOczXr{tM;Y$q*s^BR@;XPY%aPJd;%HH3DHTdh! zhlM^lzfQk%CL8y~w#c~>vI%QNZv$({CUo}*hE z0htBiyys`K=0uC7dvANZfUeBIzvvm8#VVFYg*p4#WV@Y2TEtLyYR`8=kL#~ya`M721+_Kj6W z&fq}ouhsUA%`ZCBg7wByHta!r>jK1pusrGGV~cCk$uF&&l{$6=x4+9TIC1n}y|~__ z+M_G6)lnd>Mdza?KiDcw>7W-;ny$5N$m*ALyOR*k;q(=O?J-pnE&d&sp&>TY%(&d! z9q>3bE%bQZ_DRw%A7Njz-%lRCp78D{Q^e0R>CY%^Ma~1NX^hjc&B{%4#jkPCYtx5Q%hvFE6_{hE`Uw8ktU#g81Gk3jTdkA`+ zlP%MI-ITlC-4^Ye7yS8~>z67)Z1HvDQNtfK9(OmpeI)LRb_+fnx!rxQ?zvvSN~C4C zlt6&AEW$lE!fQuxP4g#1!63qxujc>p^xk1f_5c6)eYdPEO}$ggm0FqQ%sr_rt=mVn^4YJnz1HHNWrVgKv4Awi>rc# zS4Eu&!8@&<2M~Se@Hfq{9}_#eDJ)kl$0jMfHPH_eTQBkOJg2>xv)%T zGioljmPTdY(dh#Lrbmikc~Lg9F<)81H>T+=`hLA>31z#=5jEt%+k&6#%OWYtoP79LdCXuSelX4 z8cz#qSw8QzqPpYzzBEd5-g*NzYX||O-a90G*A(MPoJugq=xg%Lg9 z?023rAtUF8##m0cY?yMCcKfCHcEDNGg|pUX?+G7L95h}yxT83R5R za{~+9MtIh-MV+m#ZIO1Sa(UQcVGuvNhdw9KSJ)FiaXf<=mQl}A~#=; z@K&@L98zsb|GLTShFo(pc{r-AI$BEKnR=4z*7{pzXQ}+d#M?tE8SY_}VZMlLMrbix zji@do^ePzerXckqiTSVIoQpNINpGfxAZr}W^TF*ryU`^xka!#4wC*+%Su=NQsqrr7 z;FtlDvdZjf6nZ0{ySU*~>KR@e zfw2xykr%f0A(JglkoPi{hlh%3&aGS`GMnDQA4z)?R7yEIz^%VXv~Bak#V8&@%^{k# zp}!5xG<^G^(ORI8oH%9Vjx16}i}n|2u=E)>sPx9~D#T|*p*0W_ zq4!lfB}nhaRRMh61G>FZUmQXPp4bm;@4i}@RUN%y@vM5f^$?iQD@(q=3-T|6m!fCo zzQD*!yW)_3i>Q~;GT5r=ahBZn?>KuN^ST}Zwio#H214YiHht{<#(54qs=c?fkAeDt z%6qj_Ed2}46-q_Tz{~>?O>CzJ`drSrn&aYIr&F_b4=L7>%%*Yv_vyEqfmXP^-eq5hImoaD>D`Dfp%bJJg!-%@NvA7 zbr!hsmoQOMj5KPrd(gQx8DpX%p}gjp`W$<6dSNS~E4|aevoJVg@*xA|kFGQOEA6*y z_(QRPmg`-#i3Jket|4@*H9xzrBM%YpDX)78kOFpr$-`|qu+AeSX8hw0RM*o%|?%D`$vuXHyTw<7`=Hzez&ODEezPrB&$xhqY&Vq0-9sXTfQ^=aZ!6 zJ4ixn%vFCyb+^D~OI+Lug#dj7&zrV^xp=L?X0LN$ZP`Dw?hfC}_e^Fgy?m)Jo==2Q zziFP2UBwGv7rJTpk~+&H;HeBeTbdH-1D^)^XJ8F@Lpz=(T${y;g<9ta44=9oW&5^| zArS>Ud389HKCL#3NdUVN{3Ej&#=HRDe9OG?cxX%!k?TDv7dx{`(s336(}>Ztnc6j| zzA=-5Zx@e-KIduqS5O{SB(uwLSOcLnwB0zH)3x;khrdhF>DG0Hz2e8Wdr@1%3mM*H z^!rcsKD-7@fH>GmmeXI{Wk4ppva_H)Yhm<@_GZ|p#D9v`ZnLdYXwE&8)mh(nQhA#{ zaDxQFa!+d?6lXdH)gGfam5vo*gx3U}HVezgIBgxKdNE?w3%BDFWd?>cWaBPC(NoRk zTdE|E-map2mz7KbFRp|?R<1N3b?R-^5Q0lX_ zPp=~cHxKO8YmHX5geoJgq8xGxYjDM^rc%kn(^|yRl z?X~S}u#E9?b*fOQeRO0qfN6yrA47WND|~y(ZM%kMEeKI}x_~2$#t)fxJJo_&vNA)b zy$`J&xA+NXLC^EvH_hJHS*z2jqVcQ6Crj*L!xr-7RV_!QOJ70>r8NxI?b)E6FjWKD-o2z2y{%H$ zJ=5PqM&s?ttA6}D4R<`y5*aZ?H@b9XhE~P1H^Tnvcfn*Cr_3zx9Ne{wZU|MBbDLdP zk$bernp2clk6Y-lS)B|(c1D)jh+No?weWXR?BTK1vMNqEe)$0mf1$$SU&5%RGjq*I zq>*sLgNdEjqEo5bC2H zci`wjONR*O>$5bB;uf*Ssl+%{q7+S-9FWq7n!v|Q1JXB;MYIDfNriMH&*9}jRQ}~y zJxe#|IR$u@9!`7p3A)$pc}#6fTC>-xlKdY1Xuz+mxng+ z7-_rzsn7g))CfENDrR6O_Ca0YWSICq?4_=e1jg%+(an9(WW{O~5bAD*hb(eh_P~_V zo)X=EM3^1Q93=4eF9d*OiJFbGf60rnX5_a@=}Y^+^IuC}wsNd>fekbEkQ;ie%GQr- zIY%&+le@PF9%Tjwn%;Jq_Yz{9gN#|YBO1k}XuEk3|x9|FiXyS=H1*9fhs;jEO9>a{B!m>s4%WhZ}` zwEBroP%Hp^}N^?M{yEw(=ntO(t0ZTgloBK2u&5lzunEUP;iV5hk~L!@%<_$`vfS4t{Rk&j zM~zfRcT`7Ta`zKssQhbQS$YlkhHmvY-bLkospj3X!eVvZIT>_&dK}c{h+w;c=oM)__6tHSWN=3GydpL6g-6{D2S32f)o}XWmWL(N*KRmepY#ML ztneVZE+AoM!D)_Pz5%0d3j#r<#>vfx~T|!ib7Hg_84w0<5XxA1V%cKG4u3J zr;U5^bOa96jEu)8Kith z2ntV&(smASxe;!GJO@7pOX2hRhehEa)(bNsRcbpNAXVCz#8XLE`kGcH%~e8LXNbBU zfNJc3nyih(38t6T==t51nZxAIH-_!domazc!{XQVK?Lcc&uQZ)5?@R@WK2eZ;!X^G zO*<*oku|B6F=+`xYZL@Y4V{hE5#9R9WQ@~!>gTj`C%C+l!vWPFOBiYAHf27Yy@wR5}5`l&absXf zwc4PLwh4|Z@^prW0#fML7mrM{y0vZtijhT{gM?~sV5!y17fsB zK@1ngyVX3cGqi@^f=?WF^H|%NK-5gdR%}H~o8Dbb3!At3{&e%7jX$Bs{RD38gaJZ&+tW|9 zEe<#tOd6ai>@4Wx5Y^m(7=iQpzKqG9ArCkxQg%%jj$Uo4n~xI_0q(Ksddi)DC!y`y z&bKTd6n-%sp-J^SZ648yH?nN0yd%$TOw(&wKZ1GjuTc&wt-Y`)0fjE(9c#)wxdiyE z0rlNWFHkKng$ZQ5W1VA~MheFcZQ%l&3**YZwk+m7qTCciYReFPqy*gwKlHcKVV^c6VJMNdNCo)hzR(q&e_;9kJ6FtCj@_5 zW@8K}{ORe1h$+^gr1~sT(NQMUT~7F>0ktq!mh0E7aqPmV=SjYI*{8cI0q!-%{cgB3 zU9qbeq_VnxgybI7_Gbi;>lU4)^0lcfctbwKb}4f2YO_QP8!`FFQ5L&iaOnk-A}NUK z2#qs|0laC(1|P7VPRsWgLl*0|Mm8h}6N~jG7A#1|bWO@3&NzBuX-_;SIv8`)??2-w za|FHt(ko-5)PBwp^F@1a*E>~D`kqDBVkCRjq-X8I8CvyN4lAW^*B@owoOGA&2cb1< z{7|7PGMN9i5S~1kOOEqg@5MKZE-6FLY5fRzbe$wl{ux%6T^+KcJ28egI{`jxB zjU$`r=NWwi5GNX1+_X_pn$(oc+j}*607R3?;%BUah=-wIX)y!LwdG|Fo0=KGL^Us(o?CX*fdU9&vjWkTkRPdihL?gF@+^zV~h<0Qnqz zkVO}?^7v?=!t>mF<+Dq(@3KZawxlUP%bpi%0_kqug^N`<1$q^(&{2G8D2Z=PA=4A{ z3FTCHzk1hM8+lipI6XCQ8Gkgsg?g%qw`Ltx*KcycxyP5<>C*P$@^bkqT;klUQ*k{m zwaxv%+nXZwMprzV;Rp4Am?$@nNGZkt%W$)Fff!U&cS@lhA;=Jp_|=N70QhML?Sw_cOBa6Y^KIs6EZ*A)?iLNHV|kXflJ6$dKRGK)mSA-o^H+e-c;X(s#TtRMfgk zrLQdV2`F27I#{Zd@dXYj368AyqrcV@T+=dn%AL%31}D7PxaPl9i|mvn7_rF9$#*_> zrkW4s#Vs09t#L7b=Rz#+C$(P4?wQV4h?i8p)o!lM1}}At?9hOWQCI_9XnvjF5WSz4 zQ#yS;Ynhwb9fFQkj0qDIP#ePpx_IC(Xf2iSQ1F%N{9tp8M=K$Q2|iQDOWZ?I*O(nf zXdC9a65R<=R2DZxUu8l{fR!BA65v~o1737At_1iI@`VZ*we-(p&Y6{9Lj^W?!Wi!f z9{W)F6G!-!x$&7Q{K+e#0v`y9se5KT8$5}~Q^K;~j>x=Gh zO5sb|DNO%~A*iTK`Pco0e$M0vVlPcxVQ_RB_Jw-L+Pjv}DTjZLQeWjj^oinrl$SoO z%D4TVvlh8PNpRSRuTQ14{S!I5F@Sx6wBtBT&>VS#vrl&{e6=eB zi}hM+qmtQf6v#Jwju!6}Wt3i>H$*Z9-?ctPdSmHl-FUZxA-nNpbtn?G~bkOBI=W(A2cse5(ClWb$S%B_Ys10^p$kyH$a`-yF(V8YeTj_Y0)&O@xAamXfu!h#5MRJtexZgn%c*Xsd4yI0HDkv z#K{&EPAeDPlwa{&Qj>tmzC?R(^&CfZKT4LjZn^|b>~jIzwV-{D2_z^jPdor}@vNF| zYe5SY{BX|dU)CV)c}GvS`r92;73UH3SVVCY>^_h-G4UPh6cM6;dN*P8S}@nZGYx88 zywNB|vdB+$Xiag5OLb5=R&0%Xk`%Q?IvJsPqJLk($)@Q9rAuFT+TEE!?9YA3hR2`K zsFg93b7osCFeBH&uf+?i$yUjC#zg07EJ8&0HwwyB=rLsv&2#f(X5x}+aN6et`l$7n zTLCO-M#8-gG3ma6mK;PCK&C(JAuR5lu>79}lO7^AvI8!>83f5C9S$c1XC!uv=cW6@ zZ^j#RD)njg-p1}c!*mOBoPRIW?juA77E@nwg0#%^KWE?Tj|A6R7Vrq;<~J7Xwvbav zCBK2$$n4HW9NznkZU5$c=>kDV0==S=Yd3eS(FSH57I0)4uT$upM(5{fFGaZE= z`Wt)qXuf9h3-{vP|I)L`&7e>@zKedoV#f-j~EL zdYgCGh)+pbLy)Pj=I_B1A5vSRGX*!cNRW#A=nJ=FsB`BtIifb+)ffCIZWZmuIlyTA z?tB|Ow0mXth*h|Agy*Ohs^@++CcD!4uv1SU<9Jh+pdrIe)kB~z|xr8~)hc)SqxT2EHrSri3 zG8FpEVn>%c;V@Z@N`Kn!V1;NjC4`?ZAma^j+TxlT zr0;_!*>diCt(DKCqG8IGf`Z(*OUP$&J=lnic>g-p0y#$Mmmmk)ngndO!$V+oDu}}M zw5vX_=K>3yW#TuW;5WXdGQ5pK1a=EV+4%-phn@Kj7tGO5V}+XE*G!jx zKBn*MQ#~IYq{P-lH9r#SgIaI2LGrw-aoX=@yv(dW#`T9ijrj747wNKZl_V}X@puxW{+Z^W^ z;8TsVD`d6~;9ZOezbt`FX?(3AcxW2r6La#&zT?4KOYbik0sOKPS1;bo=s#lWkSkpe6DxOL)^~u zC!Le;qyo;6>S@Q;xfEIo&|o{tx-0*S!EgA*F@8kezZ8?BmA2!W)A#CqP?D&>A$E4% z8UyAI!fK(f-%3OJ_n=K;=iN45>5IgC7V+PlkhotIE+uYpRC|{=Q;HdAYWp6yA1mD? z$%-JK_88A`XbXonUJMabtOax8P8|7;UEgU;qajR`ywBRU@E_qKoDZWU=yN!T&p3^X zl!r(dzRpH8%nU-SF95Ho9EMIMmN7e?am~^@ue&_l~AbA;-Y z?5?w!9@;=%gP&Tx9+ut^Lyk;dq2)SIg=2EUEx@&bbRdJ=#bOONQG6})?j9?84oXYD3-&AsF#gaU^Q}D?eh(2GN6I5dz2J{gr&);QH6N7Uvk=+ z(_7$Bm!N^D*iO0lte>(Q@YtVM=Xkfi6Ek*}_`_PM!1tYMQ^Jv5DyxST@EZ^!C4vQN zRcQyXE0?v;1FBRe z1&!2yQ*Hp5;Qd40V`f{G#D$_Vr9 z_LT@-MMa6wlX9UA_D!z)q}G;N|GLf89|;VYN6NbqJajJY_E zbvqh(R7E{o%3w_X6BfPDzIm&EikJQ!+iVll!%p*X2gmanEc}wuyeCa;;tsrVO<}`} z{{L#IQ?R1;xUcNO#FB>yo`p?o!e*-y+?|sPIJVTteJcc?dEeOIg>#>`rr3)#g&DB_ z&~bUFZ+&pIMU-f*k^ZyeLmW51>wd0rrvK0ICX*pqnoap2e{pTsxy!3D(=ev&v zzxaN6%dnUcS_N%zr%*LZ?3Ma@l2ok=2IpoDvg0JrP%j+J@S^wjP#1GYS_-r^G52jMuE2*1ruDA7yU`fqM4 zI>;9#?^&R@=7Ko7Ss4BS;1aX`NY)n3&{-86AO%N42i~AAOxOTIijmhrC;(d|NBPTC z*S1sT+aUu)y3Yfd{?dn5)$_hMBL9lK@b26YV>+MK+ZxJeD58jqmcMWLHF;&X(0k$) zpui2**2Crr*T zq>%1?=7p*bA%+-@cZc%O{3kCNx3mC2LD#fko|~$;!7^P6aT@@`mtHuil%C+ttel}g zmwCpTMXDSow^Gfr$Ul>R4NiXne4Ckv2_x+i2AMOLZ~+;8w8iZ*olJzNYK&Jy37>EA zn=WQ^?}6+sdy0%y*=9a}Lga$PU`#uNZYc+p?kIvMmpIwFE|v?dkbpt1*G2%tBn{P# zMT*qr$56Jgf2>V!H3PDv7^Y^J7K?4zyu5VMKVeT<&!-iy&Rt#2G`o-)6mm#JFi_tJ zi~b`W7Vz&lIapduaEp z&tKF7H}JY#AXfA{Tamva=!p%9AIYj5)@RHvLaI}OVX|2uH7$3SKz~I_SNgGPBy5~- z;P{X~#e^ehDkcnaiHa%EcmeLZ*=?WaPGGUhd3oe!oc-f!#x)U9GRNy~zGZCv#xei} z2NodiS$aW!L50Y>utoY=3M0;XG=G{tlqU()&GeyIi|i@8ixga9B(uFs0c_lOax0cn zACF)JLvL5WDd4Zxm3(;OcGaj-k<;D<=z62j88cvYPXRgj^E(NvxF}ftD+azJj~&X* zBY0gkgTB6zq#xZkAOf?~PD20kh^4&U`cf;$rU4~ork^CdspFMzcBMXJ^;)IwTkB8| z{#6Lk*=TLDh^#j5QfmD9LC%xcK;I)XTH$J$=AhhWV?%wbh3$ELUbm_+$$b>t!;UQj z$kv0VD`fit<4BkYja}+cTG5Ew$9nvHc=_&}FmfLD=vuWr=TS(YNJ!bn8`-=?u@LFw z!QY9ctY2(%rr+sClSYFrFQ%WDK<5KQ_a)%|oIN=|{zydeWu0&6M0s)hdu`A~#_75% z0txoFdHu^ml2re-Xtb%Pyh#zaZ&0vSd&}{uwF&7e(^u)61k-N=ZJRTf0raoXZQKPe z|4qsYxj@Pk&UL0>sx`qFc>Rpg`Nz7%7s6|80hw^2;_uCDv4-X)+7o9tzjWujepwBBSZ!+C5htC6(uZD?-J8kD{zS;#G(&#$M(|`=!6RbKB(kune6Ktucpyl8-cK zHZh8uOT3srM5~f*C6;F8zCd~_RqsNT^rHad9ORBcR{azwv58u0C`_ehhY5fKo0r|{r zMD}}D4%p8^i+5w*9GL+{Fk)vqZEw91s5Tu3-pJ$$Qno+J@s_n##`8qBvs=?IavpAq z1=ykz*eE?`E?)WUK_beWnNJc zq(j2Hx%hznf;Pq@UK&H9epsska44_!`hg0S^U=zCjf}zSL!Hkc_~m~YCR3H;oCq0_ z;Qy+n8z%>;2*^{xjONpn6yh}=$@zWs@k^ci&{;(gqOb!k_uJ0lh(AZTdF}!q`EgvK zOSTI~x^o=r{G8#7TP7<hL_kwrz)Bqsz_s7ladjE zD0ePu z?l^n8_?DU2eyk#s=XYzpI=F4WAnpW3Bf?=`2_qVZLE<}D{U_vWuM~^E^T=$D!o)j@ z^-Oz=SaBkmo(clmdUw2Ku(dh{jmc={;JMrsyh+XA6hPey$`QK`rwl#ishurdj{z<6(Insr%=WOM|B9M!0H~ zV_$s*z}xjA+CQ#{xPO|*LaTGtW^Y}N;9k*Q(_`Ui#Vnn?ji0>ZOfSkm!qz$4 z-AmeNCAe#JlZwwbh~v5GuH(9iKzZ@w!r0T*Q#tme2v-Vqk)T-^FxdHMXp9l^fbVCm zv1OuwMW?e-N_LN%>c!~3IMzeI(IF(Rvww95ASwU5P~`kcA}e(o1`ZDqCY{x7TcT-C z=gA<{jo;5x`2k^BH^McL(xB-y{Nkj__MBa#kOh5jA}!2d)YM`IXo)Wsg>AO^B>l6B zhXFcNAO%fST5;wjFe}O-OSJ!7J->!r=oMyS9mBclX|!x%-}radGa1PgLLyH_XcSL` z`D+2BI(4L4GjewF5FQPQ!+d0B!fE`*;~&EH1<_<>qyOM>%&#pZz*|mkiAfmhR)O_=8yOMvze#~ME0ONsT+dMYm1-Vj*VCa{Qw_uFetz1Hs) zDp4ar0V&U0bA9YMWkLTuAw7M?A{Vj|B0`V!oK(#(|I8Z z;yVzjI`VF|Ln3k{j|A|<7)#mb6aLTw)u#7JSp?H(iP9piuT}>0`wJ0S!cq;L+FK=9 zL^X#V17Qf#Zl$u6~L^blyt37}!Ze-}q6`&IbEg2?}JChEK zsq{gb@iJr|k@zblbo4jdFv4rZ!c6Y0Co6170&bZxa=ZDfov z{cys_%n(NxI1ZmAH^KwG^^ENsk16V2Bf)D>mp{X;>L5yU!F2dR2X2nMCXxAoZSIy6 zSNO0u9ygnntwb^3dl=#AjtlBiMAe<$l%b(7vxO_avUBXye*=!qh?ih>LqKb%PqjOZu7111M1+Z&O;Ka}j2iMl zxvI^V>0$(c{FSX-B``2jY2>V^q84q|kbAyv_g57x;dxQ1%~467f{?$1&G^F=_b*X-M9w0@*{lKmfbEdr;)MmDn z)B|PSGyse>C{!Ewi&D30(kf5bPm-)|V4Ed#`Q8+&_Lx{AGNNN5bDtA%J!YdGM6sb-o?h-JCbpeeZxcH+{4jX}vNomAbqzD9cjF9Vo5eb1o>YfnJ8?Of;gu2WU4Ok^3Q5 zSx(k?05kUkMFJ=3_PcEkLW7ha9y0pQH-~*5O+4?3w{o${4JHW+S5nn73k~=~_1)7V zDIDS1moLg#cuTJrJLM{oQT5xOq=_^|Jb|}+~(Qu>Zru)X}y$hny?gIm| z!k}%j!-lP;ai^DcT^rSxe~M5cuiDP7W&N1C)7Nc6kJs-x;aZveN9^41aLVJ16BN`O+E`-pFnpdlv_ zAJ)_LHeD!c+{u1is`XNd4P?8x=R&`X)|_3MRYusMdcd~6E_w}rFUDu!i>}MGjdeiL zCkBPZKJ_gzPoOnAvEYQaH$*!!z3Jsi3w%ugd>nW30c!rsyfADuGcTu5L?(Q*ktfb4 zOQzBSX2sMqPhn6S;>u_ZEu5PR!TEys?w!ZK|K1Qv8j&1_{bwZb_ed`nfR~(mvo9i^ zi5NRI!6ycttx5^l+K)Tl=?*!z5qqgsH25J^^13`&Gy9D%_#yz68BoMfXV>Do*q7L- zpapDuYw;kmEV<%ZnPM;|+a_aZOxu90|*$k78&AOn+ARWBnsp1eD3wl=7a|KJ0>CX14Z#j_fA0;1nS zH8$=VjnLs_Gg+F;5Ni`~HuheJwLbBdb!Fnl-Epu;W-5i=s++%6M1-b!Z9cr0JYG(W_oj4ULk?7QE`~A!!G}fcX_+K~5 zQFcyI#+S0}KS0G%e{*u#M=5Jt9r?tCDqLyXuJ)a|G`Z4<9`GGMLi=nT?@yjBWr&WxpxY;W zq1$f7`}X>(Z4dE%l5$RV z*%Fj<>O0{9!FV6yyZt`wABnczWJBi(OB<#SKEqI#*y+R!#{d6zjyqGxi%!h{qnvmb zMT!O8ah@`sCT^w!Bf;>kH(MuVBiB=74Ag7|5_e$N8lP_mJPI0MaJ4s8+chFz+9qx6 zZjoVhZqK)0mek9%pu#x8SL;cN1AnhQfslun*K~;OWknR8hWn zec>Q7MzUTwD5O5Cmbvz!$>zh*{}a@R*?f?(5zK-72cEF7PhrN1QDP863D&dIvyEr* z<2>(MpXtp=JNe@n*%ve5A;Lim^~|HLSkS6>7UAm!_rHf{8l5_&{R7F(s;tl;S!_=6 zaNLm~1DlDUCCg$_fOB?+!#KPS0Fci<`-RR0}=s;B;L<*M4DYl*kTYOX)CI z%e19T({~Elw4Y0)n0gVqCz6L3z%5dAi3M>rUVe=D5to{V^vIrg4~SGyZ9aB1TT&BY zCwPvFmN-Z)f7yD0fDyst)!bmbZ{dLoz<_bNNb)67?~_aQHUtwp?U>ni^xn#EaeoQV zzK1sKcF|4i>$%NQk3@2M?zR3=mdXZn3!p80LCx_h_7Lf*VJ%d^F-?(o65%^3<6maG zj(oKSOTFOBRYU3A^nyd1J zN-@EZ9^&A*l7CtCltmCi4^}gE2ivyoLt%6(R73YgICfWiLhUY+e%`tlbI$gN`o>~+ zq`C^ACduw0Do$Hyd)|HADm8I7EPn`HIXG$wY=Z{-y%9BrPM@OM)*n(B=BTTjYZHXG zP-T=;vu4HRm$)FllWTB18eVn_agAdP&Fo`3bNq_!@g)A$`{B53Me(kwnD?hvRIo9P zZjW~Q1ZWd|E@nn!iBvH27T0{)`N$moYJ3tSSMC>9MD~=5jQ8Jbtq%h=IK`jx?TOI6 zJ}DAf<83ziG{>a3#^<2*_>6|c9@BpIX=GH&0$gJK49!liHtYzev(dQgnB11;=)Q^? z$WyA(|ENqn`%E`l-^lbQ$Xfn8{VX5LYNtkP$;S<@>x1;a8cAO831-6xx4=7Be_KUg~PJowlteX1VDH04HMAbWofG*G8szke7)!p{;r z;HVKz1t3} zjBWs(WV3cYo*MlDi{b8-+WV3At`?+xhgW1%jP?&yegjJjP;WsTl#3vRuKT3qI!`#y zj(Gw*%&mQD^Pf7VbVghvWbSG}`+?lJXK@Cj93(JOMNh&9yKrkhIM_U~B^P40*z(!> z1uXUmw3?j5{Bz#%?CcG6p+4Au6SZiI=pNicJ zN&hwOlKN>!7JyIf;H!vWFW{;_z+Gbz^Ogr}$6J<;pVFWuWS?F#9qMjk3u1nhi_Lv7 z6Tf_7hiWmFZ+5!aM45kMQlYlZU2S!ei==i*kgYsoUJDMj$#wb}q`X5inp#T|wplZ4 z0ZA+sk04cPR!8Bq_7{Vbp|6&2dyhTFRBp~24qrPRWqMrZ4filRyaQf#bB1M}Ww0+& z+SKXKo=Q*>ky^ifKz*GsBfvZZerH#Go&`3ZT!BQ_aB6p*Q&#t7OEZrZ%(VslXOhuk z^k+~&Ds_F&&R<<-BP7LE7Am#y8Ggk;@UCh3-Z5zXc|YiDJN(s79XyFGpVsT4jHE-LWMce&XiaS+&37`^-~RO<(0>wCUDdfFK4<5mVmr zGVH%_EqDW7;rbGG|0`#6*W~oW&A)P4|Kt`I{^T6-fmtkE>Y21VsJ0p6BUnkC)h((f zTWb`F_ME8KKUX;~tHW@Lx=;QCi|-hW3Py$p&zm^!e)N;5rr%bns>TaF_b+%0;tlrR zsXXNES!@wsy?k=2_M}5I{NyuiXn$JXrjL`|x=BjHF~#-CLggiPgegqYe76b_!`qDH zwV;^MA6V}`M*n#edk3$Gk=<($->7n*d_^9~?dfM4g!@TY|HmGA^od;BUqj$0*{b&l zFvi}(2Os0QBTJ0Zcr-}L-u$Q$r0k&Q!Red((Q4au5WO`Au{PN#j(5OEG+?Pzm2?tZ zNGj}ZTeR|E>J=ZJKFfG><#EpZ#qZ7Y*YT%M*SpN9ZnqqPNm*VsFu593{X6{*UJ1ec};+!RT3?~^TxgUSf@_RyWw^^A9Cj0UKN79!-L;ZgLSCZ@@WDf}uS+X;g zP!uVjWUs8*#?II#grtmpkEB9Gb~0wNj(w0V%Zzo#5;Mj!GiLkG_y0R*?s?BS_kHHf zectz(d(WNc^?H$_p>-8)r8hfJMfx?&#~Fc!;@{8wWXoyPBRb#AEkQ7+YBvd}j2^Lr?pO2|Z%@unY}YVbssAGK~Z1}T~u zDRM`Z+rTQz)*%Tr1(8+~(pvw8J8eCqdR|h=cQysD+*QPiJgYi8Vr=yZo;n;UfKs1Q zt7Va1E?>TZpjd@a#{#H4`c=r(>oV8nmLt^8{p>HA(pIVOH(Zv%bkmX|yUc}mQ)C

1+~v5z}w{XwxQ9>_*Y&D+l?v8lFfOY2C8%a1{tea)nmOOH%H zA>pEqWp=!kH{Q&|Ka(&l+M<%hI<_cwOsxeS(YbFDl0f{|3#1x zEC(97YNt0bUcIu5{hZ?jIJl#bKwT%$xeAGjOZWAASSPN(QW-mODxziTA< zZlscI`+b{gS^k#4w5q$Q+EOMS6WH>R4VFe${>OSlUIz8wNNXH?;}DrZzZ}d#y0)*} zyE1MlJvRP1b*5)5K-|83`$Hq~mtE-d`Zb~?0+-s&aMkvL5zq zo2iYnV(~h-mp4>IAG$wTbIF9=C|x2P1o^@^woWoBdQE$vGcA;xq46h6!p|UMaM9LY`**-qXX0+r!ap0+9>9X0RBb!{O!icsjuB=v2FX~ht*x@f>lWRy)IkNl&-$I z=Juk7iMe^(E+Ia$c!uYN)MR9-*$1{(Z;Zr=TFIv-_qVz+I}~KLWaF;vx6p$RBR07l z`CG*UM4LV=$!GNol{EwV1N9f z@42_s80hHu+M77H@(4p7gB6 z414EMeCzqEfczQ|CSid)^bI!4r|aV~y9#Z~w4UC;Vqoivvz{ApjS^YDgAaU&hSZ9` z0PcmLJI!-D>wof%9-GF!iVaRp?Y!{mlyC5_9E zt{DX^2#)ps(1x?`LcU%z5eHr6{vqINw^|C5+(fh4b-tB{D|T4S!Pn61{COc(LXiTj z5H{6NMg7}%fF#WhWj#NzfX_}S=eL`w#xKQh&$2%hk%j*e-q`{E2!?I~lS1r$q?Ut6 zZZ5x|j(K-UkA%b?Ucrpba^1|*Z5(=ZfBCYSbMyR|oz&{zXR14|N9DXKJT!#kanHYb z-g|jfs(9o9odz!W^NFE>5r0#m{)dcA&38x>-9C*;7}0k^^)0PBU8oD1u(%M}8ZR71 z9?S3#d%v^!85H}yLr)|I>3%D>VvG03cg-m@IR}PhRy!QW;uu-Z@RD?xy(5O8_oRAn5j-y9EoJW z3bRK=M3?JbI;Zu^N(DgS`tk8UIFFn zChj*>+-J{ts8+2M5~0@iwp~y!ab$Ekbc9o7O+sC@x3ko(Hg0TfQ6z%{IOyswmGw3n(i)g}L#K1-|6mD=QLL+C;~7t1AO zk56WgF83mrb>fyoFhRZTg5rw(S7svgFTR-Y)jumfEY4jrw(oF!$=JXqe281HXC?SW zYt*~48NFjw)^~=%Gp*-B4CPQeYw=Qi#fmyk_?UPcA6201e!Kv)(uIdmC^a+Q#via) z4xMdl?bn=rM%UVraKCqcb@%aX@x1J)>&$(Yv+NWvbrE_mpnjRZYk?JaDm-)nrtqi$ z_LgpXfAiuoU>W>SOP7^ug$clikCZKQjv$6dnitFTAb5Ws_^qhWs|&<5zODT8{=^eX zaaSI9sNv3$h86A@D3*5T`1(THVc}Nc*NN(Ql$sLvIOWpfw+Ww^zvZZv=I1Avty2+j zQ{06i;!aH-*Fs%f>fKmpUAV*x!DyG0BAw|G*5z}UJ9ul46QSw^Q18|E@^@j@k}b@@ zkmufn);l|u2Fle{|Gwyat-p`p+Xi{F%hP2T&&H~>kK)1yCW8y7*C-uj2mpFMtP2j;S&Xx6@TrCw1yW#^CuZ?fEJb6Jm*P_ivxP^H>C&|MzF{fe-KFPXt zFzdelP=8K|FiEhaH{0lX!y%|Eyl3*z&bC+dgsj z8avmp{0D|Kw{_0<9H2j0n3b7}jh;PPkUmvILk9=%P`;9RgM=`?2OrLo}vl*RY&UoN_!&eQb|#Zj^y6BW@EvB5NS zsulUp&cO%a0lgocdrPqYzh63E6jm0qAe%c)eFNMS zMK-4S6`MI;v&b_6%$y{t3%#J!G@Or30P(kF7W8jzJQZQhQ%{a_ar@RD|M2NwR-l_C zH~r?pJ-lA^gM@?p>hW3dy8_tYP&10RyYwuCf4A`_x*?BxerL3tekORH@!RYMawtjl zxsl$V^2s0JY#pygd|E|}PYMcwdxSuAl(a+WJVRpRHdqS_Jhwi$Z1dp*>v@ZK<-xCY z;lWM203wIWFNc7y%nijj%j8l!?GtU;5tdMYxpccM#loLD*xA&tpfSf2JPr(_;yw`x>MTCCy{n0Al0G>|72i$ zah`J^?AO3va?Nj(FnPBWmlJro;`t8FhD#sbA3y86qh%>uely|1fT@q0t?a+ahyCLW z%fHX1`bp^%3`>!isKE0L8lobj9k#b;sxl@}$U6gRUT!hz8@FaEGbX}uis{qdZXsc} z#oYu&MLvGLajxOzhnhDSQ)#8~0m2s7zJl?ODMKl@(RBA6H+jSFq75M*-p}x~-qLcB zEw7JIaobmEuo<}O<)(?UeC_+j)D)(mJVf`;r%n;=T28wIBQCbeJ?9PP(|O%~$soP} z2JB1&u|;SGE9zu}D$c92B;S~QT_>zn=U#i(rN@y~a_~X$<*t$GZjXd}J-0K)Of%?L z@zcwOg}^6UCzQL!!?a~?!!RQ|p9(`U?j!b{(AW9}4qfslRDt-8--Cseyvt*zWvylb zH+2@}Mq4=z2LpR$(j0N47b6cgG|aZ!r52}tvN3i6Q>I=RiqBo$dmJ zuUy3Y3OiUNI=3w2+5=AMd~zs7xF$O1FQ5N8TMY@mdS|_K85}2eSKNo^(>lmF=KA6B z`C6exHq_zu^0}_9c{${}5-7VFVf#dkcP7F^7TAJ1~U%$#L_*-Q6?%_@vrQi)A6ZiZQIwUt-B0WaL13|z>2T1kMTPyv|XJ<1#gRoOYuia zq(#1Rk~LXM6)e7{)xww#@>#dbp@{$l+cA+gHnR-S0= zT{KN82x1kV$~;Fne4xxGXQH3AK8SaQ~G%fnx} zug2itaQ#C%*Of{%Z4^lj-;8QT)S{`xuz=tWFf4IWgq`oWfYm5i<~&8F+oll{{hls#R zj=tS8;x68uJGk8t@@DCGWJs=w!h!pjo$u$PAZa-$ey2ivuFyit1qjS1NcM0Onx+Jf znt0)P>xod|Bin60?Wy{Hqq|LEW5n}k^WqZ3ea0F)XntcSQ;)2SwJl{+?>xKe)}x7g zeqU)@%I#+1&9HeE(xbKlD_1^k*~JoJ3l`k;7siF|J$J*%qVF^PA9_--(SUMn+_Vtm}(!2r?rXWuvSmCBk zjotB+B+)DWY6jOh=v^yI8-p83qSpgA+V(E7BPdG@qdnq#ZZK~xAPL<>C}MIi=qsK8 zZASAVg9ESYYj=}T-(tgK8+x0EBA0P~qqukBvVQr!Uq8cERt@EqfwQyItAYU!-q4~@ z)d-7%iq7&6Ii3OrXPixl#F0h5d#SlbT1>RWSSqD^$7-IELho2NmaU0OgD#%nJc+rH zQ9We=J~_Cc9SEJ$?Ifq-RaT~#QqH$vviRy-nO-VO@0#U&Yf7wDducE0OR?iPS)YG_ zku)}o#Y_&z#-6^L#~Vrr=ybj|IXi|N_TRGwuv=m{1rRmlJnK!fguho3*-RF`pj|N| z8GibxG(8j*&4sXcs$*iWzm)c?i5@gqQjRCiz_*6}9LMrK##(oL83iH5wpCZB@j^PQ zO`T2$YQV-`5i`T@7cA=<5ptLPfAscsDXp-Cj$t!~tAHE7X=8K4f8ad_1=++4X@L$a zsH0=|`II)GoIgKCO0yMk++4Tp=lKsr5WeJ{+EXLJ-fiUMP6rA^8~J>sVGNl#g020%1>ZW8{7YNBxqmD5 zQbk4n+M!f{Z{icte;^NOq(RCbC<0Oc*$q3$Z1Pnu|&Oauf#-D;mcWI6iGqyKlZ)>zCQh5m=o%*@f ze`^nCLd>pFZfq!BmAVWzHo8a8bX;HUT&Jxwu7WL5mZ%3RSKwwUuRAo!Dn4(~A@cC8 z8}nARv4zF0vuD41Dlg8|73Z2#jv_9lX?Vj@W6)d?Wm+<2X+|>EOn2cwpaHepVJhdOiQHY5W$l`NY7w#AaMmi+K z=x-v$Lg1c)WD|l9J{nH&AU~`)d1!T5WQi|IBNn9{6-jPtOKfRN%q%aeZbv!n8r?Ut zq^CLFp~pkBpgE4`ajy;y&&`}XETUxUN?2eYW5QBRN7xjqF`Sfo;D!D+_~EexC8B1y z{CGW+v7QNIRXGwfBTlsW(M!hit0a#+fbHPd?vYN#kU7A+gJtnRm10$A2d)2o5_x*uk|ynFsyvzd`Mp;Gf|x9uo_o!Gb8R#_qS#pE zWbuXO(D{&8h=)^YY|GED^%&HB?LcHML_mrlU0n#Y0Ga?5 zvkZAPY-`9>x?hU*>xZ7t11YJg&bcqe+zkcaQ+ZRp{c%_k2N{9Hn|%x?rM`#n1^<_gH49>GXBpxMwX2mk<`!I52P$K3mIR_)j6M@oyT4vU zpr0t%r(F)ZK|ZIBaJk)HpmG%c^~88NMde89bDMXN4=*+>F{^wq`zIpZ_ zNt?9SdLod}5NqpR(K8Y}usp)|%k|ux+%tYlQ*En7 zg)3KmZ-vNJhef)&EW9cWml#@n4NBhG9Ttfr8H^}>CrVfydUo~nH`Dd-*5dNZ|IS5` zKN{VfLgeS|{FLml5wRt%a3vpABJ4YP5xO;qH}c#$aywUeVsFov&CwDaW+ zZ`|z@{{5@j?KaTc;LgQq5#& zub&ZDfPJ)O^LnFXf4=Z|malc^ewV#8gqf!7)GG(RTw=@Wa}Ut#bL)~9Kk;gJhUeRE zjwhP~)TU(fTN5!`RuX=mjV_XA^Edt`4`*@-mJ^jK)ZGCej688J{lSt)#Z933VI5Dt zWSOv9BU1yPkJ<&eTDIq?FE?;eCGQ*)Bd@0JI6!wyI+7e&0oQ6@OI^(CVqe{;)UbAZ z0Fp93vDx1f!s$7VzeKxmW_U?lp(0Mea@oL@VUuC-Z>=W7+L1^7q_+ovCU@S@=zul!qsMxu;QYGA5N%F5D& zif+o7o|J{hc>QxdD5j=4W^}*YsHa>qw{1Y!@Y;RHq(k;>#%a>Mq)tEN=MjrC)bU6h zFt6n(j%|BQfBF^1@|L}oqCO9gpo=81(jWh+@ipGKIJZ%ggQ1|n*5Wi!VLvU$Hqbpg#io#s& z{VGIlDIbqFF0Oe?qRsTVkVyWZf74@v#UxGR(1`i2lIv4x3 z(?O6(C+dZ?gy9hy&r#8i^64WZ)!Kd#USsv3xx{B-TiuQc+YW7<=~`ZiaU`+B_! zMG5ic*FR&!`s+huI`0{CwHTcMsp!(brH5oe@r?ke9~t{e8|=4;6e(>OwM0> z%+*|f7$i4oaV3V2@I$aJf%tm|sY4uu_&3jNc{Es-u8m{5|2+L`Yz+nk@=WG+5p|-G zhNm_b|NcFJkqr9rx2GiOD%Vry@u$d=g!4hl%t=^Sgu{;*+Vo|=S8ollaV_WWQ;s^^ z{Q6FCwP=OCMu7GJe5+ft8&PAy12B^qDM-P;2NqCnzdak z-1Mkss*3x!^QTod0#m2#fp+tQ%_zO5x&*YDT__Los*UV!LeWMv@0dx+TE$1?zR(k~ z+#U-{U1Bo(W0WaLcQ7k)&iNj)ykYc6?cxD*OUUJyD%9q$Sc~a_{4Qfa`+cJCk*glX z)puoL#jh8EtTcql9fNw02GG{fOIy3WlysD^`$tkA2&`k`YS6)hS|g;{-Rz^CCmu&x zT7bL9_w?OFhDv&k6hWEwzKl(;%KxnFY2Omob&Z6v3H+_13x`hoW^cK_!Wwe7!3ofJ z#TK!UVk^{bx)ec@z!$_yW^0=$18)-1XZ$lLQ}Tx1b;VMbp0yxXI(d)`U$glmiOxW^ zfnd!`w9V}1J>%>nPzF#Oy#n0Cg3Vi1}Klan%7p7g&VxNp1S^gzV0L)D38b# zSpN8Dm)5!d3i2*5w(~5_D?37eGWngSG|fLEtw+NNBE9>OCkV$HLwTiB)lV*YexVub z5p-TRQ`{J4(fYL?gnm_a6eO`~zUAb2Kx9=vik06OjjOv?VnfQ*5hjm>LeF82!{oxR zhRdSO_qOxArWvLH;(Nc-{u_w`_hF0hh>s{F#>vYk$GzT9MAp6Qq`{?@s+kW zR8Qn7`=RvCHdNNyZOgQ>Z-exbLbpoAZ)!%)Xv@7QX+zen7;)4O=VT*vc@YlyB7e>N zJb^odFw;}Nnkv90$Z~+YnGfQTy>7p{ZFXtff8UMChb>Godi*@F9kQrbWUz8^R*7ebONYEoN2lyzQVXWvOYyz8WME z3-J-1KM1u2F7nRtP*!x3vDM+O&H!=1A8M?;a`imyx|WewrP`z^t)$Pv3*nah%jJ$E z+h3s*qDQIeV#eC>ug2N(x^id${FkhULp>&(zAGS#6i zuKCS(GKEyjv|CqGnmS6$Qg$kqXTK(QfPtWz1UK!Cn1ucM<`mK z9ULC87_=Br{a>4$-Z)T~**K`=xE+~7Jp!GwW&6~Fv@v2$N(YXkS!&726| z+I;ga=0PFph%B5uqN7I2x%Lu4Vx7K@&ZMOG48B<3TlZfdTUUX1x3*0Q-rw7J473fp zq5D?+9#6o2j!Ld-1~S9J@g?2TXonyDzzD}5e9RC*s)eo#tX~th&4gruFH6bUro-jI z#&o6jY{v&GGPuxve}bhj*c`RD3K^8jNH<8JJuSM> z(V|wG@ozOt1@!l5edyGDvYvj?4)<4*lp;+&C@0m&G1qA#l1thw({)gGpnR}ruzX-& zWxw2MRbYU(=ek+VuHKM$vlW;!wYHeHqOzM7`pPVGI5y+{m^3yk91jafIB2VfM9;a` ztf?Ic6Yl5L=ONrAt67}VAkk2YcFMv{Sfk7$*Bcc#3|5!1}#4XZydY7KnmT;=D%2DkQ5&f$n3D zHUpJ@3p?KMIcJWgfdsE}mJZWZbK2kMZg7C~azN7QC#U-EJ}P3Vd>{!qu^tf`8pakr zT(_;PmAmL-thS`!aZ4Y2$Xi82KM~`x)}3B|+7P5$f%V~+gp>5L>a58p1$D^T^n?F3 z5Gok@$eKyQF#Xa4ic@%yHsQy5K#)t&6%dzhO0ju~)tDSk8u(@HCEwRl&VV#Vam(6i z^SXd`K!n7SmA@5_9Iw3U*W+S&sZLbT#Xdx)>wvN2kd;hDhQ^?-3L4@U7AV&ota=23 z<)NY_j*u zIQw@6CTe7xScN`D)}($q?~@Tx0{=Tu=9mxmNvG=oRsqLB@LT7%mxnU6tSPw9q~UcP zg1WcW`J7jeB3ZuTzCjZdF|6JU&39WpXpJWil*k-8@YEsbEj2+K4`G7-#V3|)RONT% zlXs!<6kfen)O|H~CX6MAEZvtq8Rj^KxNXjOza5#HyYn!JWjg29R&-6V<uonebp-#ebBB<<)F(1StXv z4U!CI`rw%8gwnruyFvcTVbl#zh&_llp8xL{$_^-3ODeuIcG)v4cra=JojE)hs)9hI z;XkSV@NuQ3CthMWwA!$q?G#XgnMfj6UX84x%jddhq8B=bOrHj`-G#Yb@jaUYFE=jby$LOaB`Q7qWv z#ept*iDG!|Dbx>+oj+)2{Yj4Ai|j=T*Trk}ZLv(m?#Bo0#3b7NB-6W4DgDhv-p7wT zk^7;mcoSuvnEv zltipx+8nmnQ>)KCy>SIYdny@RT6O1FETZNmoEAk}?L>vQU)^m5`23*U34T~qU0;uX z2CDGB5G}PR-~Z@jzwFkRZAP7AJE8l12lw=Upg)IB>7 zN$C|kf2(VC;L(!%M|82v^>%hm-TA8Gx*plt8#>}>a<|sU88LqSxl``=$lFk;@9c}k zerb)m>NHmmuKGUyj1?Mn48)7W;i0ny2%K&ynh1(TQlLl*vABox01_$x0G2GkbpV#a zawt!I-(h?tUC(clc(suZ?)({%+UMYVA=jM=Y5uY3hjD^0jC2IH7PLk)EvU61eAZtB z$DJ&0$fJ8sJm{=#fv(K=5plJjL8&tzU*lI;w_799Gi9D~wV0$M4 zHOw5F3uLYH5ie)fb38-2ksW=~xUgjCG!KYZZ#`yK8u!TsWLBO%KM^seGD6tr{iosq1mwq%=Y$S)3vf zG^M+)gGpa=`=EP{kHQR#X=}s+-OS?x-N(#p!*Rh{@t<`c)hTbQG_#7Lk$Tmp6XEYC zwh@a4JS7Xl5hDV*Hu}B~UVXyu-nxpS_k2@j9w9SoNIQ$cr)@=HNI6ryI~oipV2BQn zR^jjh$_ryS;f3)E_Np5!>+E4zMM?VTQbWal{PIu!<^Nyn%yz27k-KL(5Y{#wUFCK7 z!=<%QwWvm1GUk0lP=rld=u;lZkhR+ezEV8#e{VC;n?+fYH{~0Dh<9Bx`<5g7Y$M-$ z>RS#(u~mblroG0N9x0hs4ynyuXuCcDN1by?dz4dN-IXV6 zv(biHUTC>9-4a^WC62Wc8wvCW-awFT5_HE#xiLDk+WBkIZA{Pnx!~e(t^75|iRWp- zAg1>#(<{vMLVq#68$4^!-WSEe;{Bks9-Rv6#3HblF#%S=5xxuSldipc@Kkq%C@_1v zsE7sG2>ucxp`B+thmUzeVh@($i|$@D;}X{<@;O-LQ;J=GIJVluB!qnYZc=1mzNslF zk-lQzn+Q<3@e*g=8M~|QOD=|}9d<@&BGrN2qW;;tz6ObCJ093xHHIMBDH8EO$A_ugetp61w8|?Uo+ofgl)8$#D<8g8J@tuT(_ppo0Vz5!S9wts_M@nf99|{^Q z^S}Rd&{>pky)*Z~<Rv)=bow~4Bf^H=jC_y#%wbD(v_A3 zBVa{gzYpc~58DsZ2j_W2QhlpiWBJzYee3V|aP@1Q#pG;s#;N+uUAm}s4nw+=yOrNQI)E=7zas2d=ESBHueNTk*-`%>5n4>>CYo(jkR1jc@f|jnTSxM8O&e&G|6E_ zJ_jHXtDm(?wMNrk0w8e}t2hMwA=#|E15cC#Im!)zHKuksy1*hZM=~JUr5pV~|9~lA ziqf52o9DH9Oqazsk~To;6GJYinL0hf)Ue`Fm$=ei7faL*?>zJZj1O*ba9BeCu!Du+ z2Ed>9$pR|}`>j1bIgHa0KMti}CS(dOsH6WLV`V3Yp+wT6cC9;or|#m#%4(GQb&bi8 zo?*Pp8>>fj?+6XLRzw>Ce%b{BNP!Y)tN<4l^gDoP?ETR!m+rjblf=@ebj^sa}bs{q4^HQFd)oSJOAlIM9UtP0d1B$);;gc2O~%gDSgAK;EHbq|WLJsbLB zKFd|_gu9>M2p^2gR{QWe5$rX0o58_n52RFFI~|X(!4ZsMqmh7a+uf*aeSy zs9-FIBoCk_LZ5mAYFpw^MiOj`o>gFD99^0Qw?)fex%!6~^$38BuS>^SyPX?j4B~;F zCnXj()zl2U8+A?o+!$D!%G5-xsXH11%gyc5jFJo-9wQm>->R#5p2zMAU|A>&+<@@_ z$za0UmjM>2fDP4T90IMW7C>ik#GYZCa%A%UG{vqEVp4nrSg;IVk~P&`osk2OEJ<-G zN&JRoctvp2qd~Db1mf9tCqB}jtIY3FjW?(E5sFnefQc?V#}TE7N-P7nQn%{D0r`(E zfj@bUrcN9%LP>g50@Z{}uPPPp(p~`;T+(3(_vEcW3V+jG$WN9*BsR(82sj*rU0c@G zh(QW3e50yFh||p@QdYGMN5BzP1_uxJgYkQpA=O@URK_Kvq~q3!(kmN)Q-DPHS;-$% z;C%{dqu^sJ?#Y5IQ*3$j#R0=E!sXm-6~1w(l+`5;4%w}|zkin$-DWUrie#`YV_#JW z{x8>-4y72^K&bbtw#x~UGrG}L-dI(pc?KjQyy$-o?_ zYRq8Wvi?5sc?ayG-vQZr1WaXZ;Qf#Os{6$P<_05&f$qP-*e^}SJ*Ji}v*S^|82GCG zo+rI0YPtHNY9g^+B%yEJxuzwLO^3J|lhkJ@1V6>Q(Ya}(S(N#G^*X+YELmsT(^#V( zf;uIIq}(+}y+n7O$3=8)geL>b+KG{lz|R#Wgtpj(Jx}nGRnaR_0+qrUA%C!MXG7l` z*4PZAV)1g7VFD{hq{#`C0&@!T>qL>P&o&}EpMwTk0L(~O3$6t@dPc9+8g7Mlszl#Q z{V0B!FGxJz9kVdJWbPPieC34QpeRV%WmG%j%>Ko>hkfX{a7+X6b)N!V51K$E6dk^a zjskJ4tdhC7%TU6b+{|bEQ;q5Vo`kTr zvgxnOd$uMM3Qgoy2dH-03xc_w;pu+)dSX)%Q}(-5`NBB5upXOXyrtO_MWv}Wx=_gg zMP_K*pc($A6yjFvu!u$%`C7@Ze7@g{vBp$K=tFbcDx37<_{-*hB;@fyp1<$^9^0D* zygaEb^^}n?&tymV(f+6`Ldamw{`lqem~RBz0i3_(;lA1OC_dq5=Di}c{Ep}N?nn6s z39jn^+M;i>bhH;4w?>i+7Fu%aOZ~4CxndFFat3{v-RUg4Qnk*wbX{yCFy>7dU@MTu zzI&eVVXd&@AIP4Ew~HZEn96u~crjKa^~|)tG*$f|_PX9_^nsTkO!yIb?90dm$m;Kb zCZ96|AhG)a-?ln&em2@b#;=%S!YammDYSD0_NqzwkSum$!UTME~Z(Hz!Y63!m zE<(RBPYcPYBavTF*-2Kv@7R=ZQ27F^|MGY%I0Ws|>*B&S!kup~ycH}H+)UlPf9RfC z_vH$9el7b9@EgjvDRWLaL`+Y3DaEoZMA>Em5UoU?*i?U6KEAQpS=rQ?FxfEf?1J5M zC-1wM_~7>2=@ebl(W=xZPo2Fl+y{BxYz1||PX~BL2k9+? z%{~!uk?}q8nB>-@k7w|I=r2u7Lo}XWO2fShVLckFf9Q{_M;JbyFE80_?Y%m9V!JPy z*1-~B&0BxN+%|2V(WS}{e`j8^6v+?~?WU-XpD$qfsnE=bvgl8NHgEQki(Q5mAMfTq z2Bw2(=OW+#>e~!4s4Hvu2RALBhfvKk|$pnH7(U>Fb%z0IL6bA12j! z0xFuFxCUl;9hZ_!`AcPnk(7GU-lvaH-iH1SO}Qr zsAn~W6>n9#{EQuE1HDAQwlFOc5mnMDo;s)sw{l3Ed4#iz&LPzciq*T9UyDiXEdche-%|d>j?FSRO5hb_7KOxJe zy+q|KkMt#D(<8I`%sLU{G6s-xpGS7N@vPfa;6)0cr6Nz+D1^@Da$49a2b)^)J%ZC9 zt8LTZrG-MZ@Eol&3Bd=DIWmiM#65$d%SHk9y97OOTqkVycSp}(Mj1h@1bn-EpX(=A z!S^L)l1OywL_l=vxQc<51^5+Fz*+wKqa7*dM6h_IV)hYauR9np|HkO;)knC(^@6&+ zyu0I)M@ID|W{pKArcRmnAo+%H*53^|qj$Z#)oJwB@c55xW+Kv~bjF@oHRaLTr*@<7 zjDkrVt1e~tdtp#SxDoB_1k_02Acb0BNXioh)A0=K~`X0;UK?hT0UV8bIg<17qMql}`8+pRqjvjzM zQTP&qY(`XL{abhB3Yc7TmEl-_m(EX2kIt?8kA|nsssAyxzG$@Cgt~0{_lUReY=2|V zx6ZrB2K(3QG2$S}o$c(ql^#hRL~J{MTXt`iQ-7S%VB34&h~BpKOUZfCU_~ ztW+vHpnW@*9!KyV+|qn7CLl)?52bSg%%ZQ)rx`(lx?84y2E7ns2qgS3PVn2U(V)7D59Bi{SrEhe`*CGzM3ln3L zJ<2T{B+lVDEu=|OF538c3kCJA!epGsV1CJ=DPN zKKLv5O7%r#eS}!(F|r{~qa=(+9dZ{fcNKf){&(k#M=cG8Z|=c8s>opB;fyYrGy;)~ z0Yoc1+MN8A4K|gSoget4o^^1Rbm>1UBh_}Tp0#Pcm)EnM8mGvr&<}0Vu|Zk1XKMCo z*yfJt1H$YkQ){tX-Lq;90L_d{oiN?Len)!^WKUQ|VvjZ+EJ(4tB!P>YAPngc_L5|4 za@0qC&~@a2B(v;k59UAqZlk{|U2N55WENhZU0PNh!C;LnpWW^JHqPw3`To5n;o%9E z8#LUw2ekl-%B(sD<1fxBt@gNFDNVrBO%Ana(IQKCJ1;z=Jzzd)oV<#t{ElTV_?vxf z8&#q=aPzCa|EzJPBb&kdtHhISFL-q9#C{yIZe zs%>|_{I2LR;pNLJ7SlKbP!+Loe3?8Q`T%@m?LI{|1sD%3yI2{fdcozkV^jQGn0c{x ztK3|;%hPSY|7HOV&_1CZCJzMzpIk4g^(=am%0|DwcKI5@B_+JFE!tTIob{L~^Cjut zuIE20?V_ceqkgl;SyhcdK7S;6JNT{1XO%xN|6xzCZWhYevqlwi_S&5k8?~Vc=GC z2mEc@5xvV>i9FI{-WefAEnFRKpyEwQ&wuGL4u1M|h1)Y@vog|N`RFBAU#?ES=6sen zIVHDj)y|0d>B~;yXyH^`%R)|)N?+q|g6dt)$T`IRFO4P1(nk>jN6^wz>Sovy1hWdd z@bEVvHlGn+w8KtyDNDwKQ~FoQ%%cEFYwC5_tsR$$hWBc6#`_Y4_V@4AOb91rfQ7S& zYmiNKp#E#dIpxAR=?(B1#x5%??A)IzvJ@S2yVXZ4GKz_kNjzRHO2tednNpfG71C2` z`9vehtgK>xF|~gM(7#iw8OlhOytoX1H?s;fLoyr4rKH$6)FwteY1VaeYM)oq%y7c~ z<%jIyKT}vWs3;RA;}Gpd>#6H9QA%+St_?8nYh3pGW9aN;W{?q4Y!8bd-CoU_IO>%$ z*8T)37n_JZmRRv7NA9&bsy@t%4Wye;uj0zban|i924Bt&j+rnYJ+QChtSV5Y6VF!} zACf*X5=`&G6{WwU1@SkipC_7f9zbQMB_TKQ4qIAM%)SMXn3^;M{bW-Wsfc&o(jv~L z#tjD=Hx(U}o*v@(uMRxEAvzoe9$huY!UJ^c1P!eo>@6KtN2<&hA;V_RSv@-1#>@AZ zK=}0U>1KOFf?25yuc);)*w8NqBRW0ZOZ$gO8|Kd4JN7!*FDa?#N-^Ay3A?+Xc-=+##$}n%Yf1CAIXr;IfbLEQ(DFz0RT0StE z-EE~%C~K{VwN7Ci_6SxR?1Xj1>dl54VWW-cUjTALYSp*G`3@d73DUH#?P#}$YYS8u zsV4IVNosZ%O=Hhm~`U(epU@^G;d$Pgee}nss^Y$YV`ZTK(ad*cQ z@S8c_vH~w*A%@5inJrLkK>pV|lIbK7Y`Vlqth-Fp4N=@MO7)kpzZW7b9NySt-{vy-QX7 z08$O~;B86COKKM3ZM!IUR91ZkJW9s!NUZS1h&-LUDTg#Wq4(0eKJ33e>9&8#*olw5 zH2zUp4C^2m_2TP6_>(W54BOupDa^+GRIr}+}(My#wyhq;|7p-F3*U$zX z4{xHcR~M67C)Rp-%RcmWrs+*+Ph1JPT)dCFdXwI@HYi_c7O55XBBzki-E*%_9z9rO zKrO<%_ey@-tJ1C_OBv*oqC+H(A})N8+be^25G~~P1HYqI@TntUph?~ZsrR*4_DrXQ zJ4Gbqk>_dxa!#n8h4kA-*6mi|A`a!-G5n}|Co&P(YoWA+)CA@|ut?zc)V z<+5_gHJ9W*n;FS zvv|3_+6}-DgEYf|UB@aW(DW^=_;o4Zp)_f8>$Z#9>h3!ic~38 z6Fqte3EIk_lj5aw&ZQ?k!J4yI4BgABlz!M20N*MbThE->Iq6dQ8?%YhnaVdD^-@mb z`AX^r6c76fPj=j!=OxHW^G>!WGLGAANOKQ-KE3-+oerN)c5S`#nMbr)lJ-BdfZV=j zpLw>jyaqAW^p+(M=~j#I1slg+uZ}!`%RGvZUbST3v)i5C`QzaUPM_>=QW&(~xkNV{ ztWrh#ZW_}&8>!hvaH{c~$gIkgOD{Aww|gl}F>-s$;z{|QWZK%7-}W#WJ`yOQR2436 zDx)2Y8#$!U`^d&xZA2|}udFE?1Rs{oCg{E17Rp8+Te#i+M`S#qAx7aR1KiKNu_w&? z4T5NsDV7BD#8FLRNf1H6M4n`%WLC;&DlE4#az_RKP)5ytMfetMjrgJm0nk!ekMfn< z6a2bA9T#aA1&A-l?hZ5qD|RGzl0S0CbLBywchzWWd4Oy@Eq)hgLMm1-^|tD?L;nrS z^O+-qzOjWSrQ!lm3j5ujt6W2s5G`XTKsVQgz69tg%c$Jmhx0kTU4DV&<_K75rsF;=mkZ z@Xx`EqJ>EzxzZIGeH^M@eOB-z(XHDIU6@h%w+VQs68uPW*i#8JJXnknhcKFqF8ICn zBPtm^#AZ8InEqfmZ(q^{LW7WmPNyaf-qf>4J_ri5)*Yso$rGEoHsdoE{l~xJYvsQD2Oo=^Uru$E`ZtnRxqY*5&F3Il!YJ&OUob@FdSk9~EJACcQ*7XRr8{j3K5 zC_;E1(q_|>`?7KcOjNG1+8Vn{&Kec(F^w^hZjsYEi#+JZEq%bVidd3%wV08A(%Fug z?uLuM<~}dXZMsF1XDlBX@qZFW&cxxnE$XlJw%|(m#X-8Ops)j|r4YKwnM$PHIwE!P zTl*jNi}BlPV>X`XxDCXx#~s*+5>g0y4F;0G#g6-PnhdyVmCTP~H?kgcB>@kk!!(VJ ztXX3vJ%ps3kA@|>OVwwf9u@C-kX8)g_H)C)@`h{K@S{ZokuG)%wr{pTI(DD?h<-OH zv3R%gZ`(^}vu*7`UTNexXn9+Qji3m=?{w zu+&-2Tz7fJ8D#GU_yX6iFwYY|Xi&r%UC@&bDmB+>Hmxx2#)Hn~Be`|m%kOsnd-6b$ zayDG~iB_}4e4luHV*d)xsiMkJ1E#XW47<2Ldwq>Xfx@idvZJIKbRBtZVppgE<0ULDK@3oL)XbG<7*P@+dQ|Tu2`4xo3!o}Zk)hb5t z?jmO2@k}k7S>Aq_{%te>h4|c#&?Rw4>MpltR!uGC=PVy|zOAS_v2xd=XD~|F@Pl4W zu=XbXeuztLe3Wh7X{MM1t&HmCB-w24&y#EZp}O|`Nj6!ZnzdAywPikEZkn)N5axUHm~zO~PB6FLNblt_+#`s?#i)CL8klTwLOPz!ixQF zW<}>!%rv_0>Mgo9Z_D*k;#YKm)-j2dEZjco^JXB@Caeclc?%Qf|?=#**ItY4nN4mey zFYA-Dx%44tJMjC2!S*5G3@5rwv=6y%J+LS2dJP?Qw{o%5_nUfR$nVBoMlaQkTz5V3 zT>vz$`AD#0`G7q z53av|qIsifMPf#ItH+HIF#)WN6MhY8)-T)W$gsg2ax!x$0V87^yCiHUe_jY-PjBdO zHXNS6iJ)ouzB`GyShVLLPy6BX2tWgz?aXCp^5ZwyA@Q@IcbH|?#tPjEOfyO5CmGbx z!gthut321;GkLyrw$EmlcYz;jm}bC=rApIB)nIl}Pd}I~x+JoQ<#rgx5w=c^qC(pk zPPhUpFdGmfTg`xntDL{yObg_Xpcb_lrDZ(Crpw!{hVy5;mmp6oL40wc{~=h+Ch;^Q zi}pI>M$k+3s!V4%FN(wjw4(A^|5N*dM=ggM|9EV#_yU;i%&5nekz8S=E1)sy(y~!U z?F#%skVVvE;+Kb)iWw$9qk!j+t=ZB~n-KMUPS)z1zfS=lK%%EPHA(Dmecd!blMAH^ z@oJs^hH}epm2vvwtG!)08mEVHmdiJD49C$2|1)!tXQm8iG$G1^BMLdiwe&Thg_LZt z`U&Q?qks?VOM}D!=AE+m9iYoXp-eWbAI&za7)eFk!^lumYxdFAx$>|R1}~ckMA98< zgQH??lvRTU+9m^7^ZLt7-Mv0u=2uBB-_W5k#rOKcMyF*J9g3t7hqNhkpv;Z4+}uC6 zJl!rsjsWS+`L*|uh;HToA33#KgLv1=^Ptg!{-=;CEb!fEt_aejQ?32w*WM+ws*zMo zJx1s|*lejjRGqsYl?yAO3WY%HZjn7WPOT|*F=1V$;^l*SG*Y?ket);cGd!C^5+SBNGjPyj*&*6%~JLL&YBfn0mH=q;!8}XNA_)>-0JfgbMZuE>~bbOdT+Sd^Skb! zU+JA1yR>O`digueQXz@HLb)u1QG&-ZfFJku5Hj~}u)IxrtQHakLU;-rc&@bgt1tCq z0(dx5DU`QM623|CM#EH$uXh67rT48e0pz_Uj^o$lR`}Q4Jja(Mbsrb|6dlwMD?$}3 zU{XgvUHM`@3{oQA!#=To7Cn=MkMlXgJ0yRTjpGC7(CgL75HjU=W)%xT&F--rrp50_ zy6oov2^tUeT-KP6g*3R1$^CBpTZ)I-x$>Z1Tq-K9(8<=EZ=^l= z+IVIa-%}Z0ijvSeO=$EL(B*enPeP)4m7qeo_;|GT@=@LaV~ZifQ6ciw>oBBzALwkK zv?@ODt2(#nA7ms^g?hFLFK-g%4<}0Oo4E8`k9IHj*uSsjDV*hh(V{@xWxKo90GKf9 zUhiPw>-Hzzk7alz{~%=VJ1w`erLP+;Q{@>CWO#z)GVNZc0y3mqIvEm&WF;j+VcA>9 zwWC>Y_U1@~Jyx!K-ct#~>=}Su7SK`=Byo4-;9j&0>~b$udA)d{gQ%DS6@iM>#Tlw| z9cN??B{sfzu6I#fe}NJ!zDkOZ%=_g$c{Ev z81i4`;AqRJ{T~ybxxVE?29+SgHfimtze1IUuF?R7bqPH$l80UR^!-0)^ z#&oTe3$G?qB*tWO+YtF@?3&gdkfVGZFSWlnHT8;Cz=!cK2X{0s(}YQDq@eY8HptX@LFhrK5WtpwoN+Il`gz00 z@Aw{g?u}P(TVDOQAGICC75AII8athm*$v){uUJg9@TkQ_VSh`2d=Rvy`)LS5cJwL_ z5g+(w$Mb;cby_)Tf;vI{kFTv%h>P;wMN&d3YO=@8Z=0GNY zdpF7;jw?w(64lOe%^04obDC*({B-KYExIWqs5g~ZLiM;^1k4YZvZcbEL^bFoh@{XD z!efhnAZG!4jaTTVODliQ3~2YXPq5Sh36yNg-isCu?gqtZgQ`e<(91hS*k9K=!C{V@ z^7KvRwDGV~O|En+Y{l*~e>M2QTbT91e!9W@zeiJB&zPn)05gkD=r!*lqxb=rRhggp zU$`;1kUYKi!}H1SKt5 za4Fs^{?id6fNpU5otoXRYvSRO|IQd&n{X2b@`B}DugXzAlKu!+ByKY$KdSqd^W}ys z*warxA7aIGM9$8MWX1sEBsJm6E@+=hz(O^{{!8>^?iT}JTXrYmel6v`u@(nPn?kH` zUDcU|0|FDZnRiDX{T{Tk0dKCLEj&rH^TJB?U`VsUPc0Ccu(7!rben{Y>Gv_BxiPe zQDt$0#}G%95&(ygA~uU)7f_U|#Q&tT6}B5GGU&Ga$Z=AATF%Wu>HTfjmf{P)FWKDR zGE18*ftr`$!5O>XX{Brpd#)x>59rxJqVDIvRAg`N&eIhBzVD+cFDs>y2``adxjwxA z$>u^bKonZa5Trh2cRH=77llSEF7%pWHoWQW+nBp@!Mnw*QOZr@JzVbm8VOM1^+oj) zyV=j42kvJun{l^drZl<6Y#mcMv@I={7)5$SebS4JcSNtF0a+gybfPnHntG!b8KZ`i zZpg?k3gsMgGk2M~NoNUTF7rhuVfQ1(B5_RC=I<89d>P)I6V+LRmE>CsYaL#BW~%k8 z=6%kKi}%6Tv6*k+va9oy`i*OSNzDE4XV&X;hO=9!Y*CmY4PXi3&3L%RhaL&mm$zUa z*+i;f)Z4wk|%HDD1(~MNDM0%Nj}EUrAOv^I5){ z6XVl)Uo3Y;0AOCCZYcTr^luNlfjx}}oZ#KYuh1s7!yv5jy7td}SXgn{IQ(KZPm{_?23m*m zLT6x67p9@Ymo^^tZ?w&JM?y06hE`HfA|^(R2l8L0j;IDIVud*r#e{qJv~ ze;@m8vC8WDud`j$AzfuVawND7csekisv(0AKuhJM+%fsddCoBYMP{{vs>0ildddw> zU&-%+puz?zg>Y=+{8@(j9t4cC$p)eXoAWoF?NM`y@Aq`pXm-C70lPgd-#LI^9yQl` zr?4tdfv7vZvV)w9PAbQ1nw?eY2zQ**i9A9a82 z80JzpGY*lVi-;$iKkG*vU8rK5bJ-m1oE?0O>F0#@6C{B)v_zs6HA-+U+MC4aR>8np z9v1L@RAfBh&@*~Ae~_~(2u0J&6hP~ClYQVnWf>s<3hy2x4}^a9*YAR`Yjx{fKrVaj zKi3k*_3)r7R)iL~w}bcwT9jLL4<)P=ONk6!21(YvutE;R18h+zw4*ihnZK^|{veK* zYahW_(wrEo;aPxaYudAL@$+%JPw&BWVfwV2zl3_1;j9ZzGeE`3$Gw)MHwXad@jG%5 za=x3MgI|yVpQQ)T!tRYQk4fgT)-R~`he;#vq4sMtqk$$h$|-}KT~~TPeWKpKH;ed& z_YkMX8Q}phgmF1u zsXnH(&9)j~jewOSEe!kPzw=m>J(Kh-IW@tunvsdaQNmi*UPU6K)M2_cV$Mv-zV03B z531ejX?dDx;*R>oggk}2>Rz2vyiA+l0X?ZBI++}kRmc!{?4}W*%)bW@1tUa}-Li_O zxRQT_Jc}%alX)^T=^381Tt(5Xlz_~3LJKG0xg7099?u&R)r`%*iM$iC#e_i<9C0m~ z?S1d!ma-^X&aH5)f_v0|2n{zuVB-3##fi@usb5n;ts+Gc(<9Oz!$X+Eb|}+wop0=B zy46X&Udb+D;zxzQ(yOd%b&N)DCib|8^Uswvgc|p#_gO-$`i43Caqa0&=061w3BEEfztBzl((p{hD5PwoasaXOQ$8DCJdpMGmm_dET?=#{_QrFu3;kpm?B zL`@xfSFk3ee(GL&(fUIi&OO_ykz5(E(I~;?Uy{Iz28mOAM9r35%tT0)ltN?KaDTEZCqphT=bE3&92pB zMakUg`Kv{pt6K$G)Ns$-z>Pon*QIU~Pt?@on3RqpK8F1dVdC-t&u*0zKl{7YH0%mY z2N8x^Gs4T0)RJU}Rk^3y-{;NWgFZ?$&5bR>S$r~G?|*6dDnNMkI$NX0Et;}w9z5%s z5?{F&Z)KK8Px*9HzTLolA*;zHBy0U^6=h%kLsPj^+_SKU1GWJX+%iG!_B>cFcS$?o zh#BOcoZaR{&l20B#b60^7EI4VCgzbMSw{Egu z^kdBd`;p*hh&;gYat57b`-N9e@-bVs>rzfO5e#7FbM}4;EA&6h{Je!ayr3Dai!(EX zo(LeB*9*$+GPiR{X7%l2EYrVFTYH*43sd;?_!kqNn;efVms%5%`lC;>_FPuvE5YY; zclRKXtGtNHmEjso!}^E!mI;R_iHfH{7PM+&A~EDyKyNg0bKZ8-wL$vvLhzMZ<@!RW z{30-Rxucw|SLs(SkMM?5^%9$e7plm%B=4iCO`2$>B2kkh{d4HUMTfG2#%1VfxC4p}w7F8l4=Q%*$sfM0el8X>*BJN`k(?#@UlZwZhmKbC<# zwS9Vk3Bpo9<7v{f2|SXa5(JmRq%vZ{enwbFYZFs{{b6ESYTR?pF2jqF#LxA5c`f8Ob;6-yqIXduZ~=#u;koKPGgHOT16wwH#8kXK z`d3T}lRN#;-t7eYfXj2`h)Hj~(5lV3@B5y|R;|O8*|%-z2fcVtK_39L;yW!CDjA|wiC^D@ z<>=hX+RXo(bG}Z4M-<67@6W$fI{AotiJa3V=~};afAvTH3U@v+0=@!uYQcGKcGl=N zDGkQe#l(ByQq-`yUF?RVP4i9+fk4~0G9lOze7E(}kA$jlWZ<_>igArCRcI%AmvWSF z&?L4@6QsS2dtZ987t&?oZqFA6vuDZvJ^a0zXiR*h!<1ObKvpmlOj{t)p$$2v)u6D- zSM)P^fSONt`eg8Nx!sV)|554Rpkz-Mv~9cfmJn&w8_oAC!*yUPFj>E5t(3ti=?lO| zUQdf^7}q24F~O6G`U4MomphXK!`(V?hubF60PF7@xDrQhf{?t4CpnBP?A_HJjvyTz96TJ@^J^w`l zXI%f^P8;D4wNs}$X>rF3Vx&Mi$dJ9E-~cN`@#4W^6nj`a3Xp(21h`8Gi*7>k4i1*E ze^9D+GTsVWbqgKKr6(7A*f=$75MslmWyK^BxDi?G!-k_J?5+C1nyz!aWB(5P_J51C zcHx({78FwAw6q^Cln?y%0pq*M8?L7SVl%N84U=(IfLo?(4e;;1qte7 zBbjSrrmnQx5#Xcfl9&1&8kP$yPfnD8yQHCX7qH1vr&VhOA@{zCKRqZqVEQU+XPnp9yidYQaJ3@(X;`Ii@z7dsu6t(9!Rcf&Kqh&q(Del-!viP3VTNJE7)UtIU>Uk#@4JtB8;?*blVmTtK} zm}tSrkB+;b!<@*S6MIbm)%zlveGeCG7Ms3`=A=$k2elKUeu*YizhWv_@zkdJPN%Z> z$mC&MGPv@&5WK=^Ql=8Dr!-P<$XzJU=RhWqyVR*5A zh7`{yuI4W>aBCT}Yqkf0iI6HvN7P{@bLQ!Np*moUa14BnTf_5w5#b{acW#zUsu(uMK~aO+MYzMIe<%Ov8xUC@Y7N(VF$e3Anuv6A z=6AYiSAkQ0B*s{>NPIS_(4M01-6icly}Uv27^PWf*owgJ($cBtoQx++!++*)EGopU zJHigmzl+B|hl`?wC$%0C962YIuDEETXqlmI z!h_+lv|GJ~-Bb1RF5#caGF073t!b)66P%d>gQ%R}=V!~d;!o)8@$!M>Si^q$YizWA z^b$)l+M~Q;&0@!G6bfuyfF*(4a647k(NlHG7mJLkd+o2u zr<90*(^RVINfQ0^PZ!hz$HS&Hw0Dfe03HCO1H~kODeNWg6$+Sx@Sm|pv`>rrtO0UF z8_N9dNtmExOL0Hk)qk~;lc{_FdRBOXbsd>SDUY|O6hmP6AGP@J^qxuMnp@$eWMm8- zn~%Q2b3~nRBmAq6L=%_yl)56&vgnN|3C)?MmZ*IPB;-hS z?7!0uBvNQorn9*e+`6jUSHZ%oQ_{h5;;NtrtE~4v@Sl=(DkJ%uhi`(D`a@UNWDfwl z>f*yXKmGPuvU*|o?-Qnarxr-dt`BRn65u;7x~98n zh2^*mucoSkRQ803Nt(Sns0TV+-}x)Z9u4C~iv(s<#~jyDM;y}ch*xs3(21WolcKF< z`w4=I(n89&=su5ib4v>K%WjEy+EzI;YNEPm%h${$!(2rEGD_O)+HD1gkE?vjpS;IT zUgk^@5VmX2^p_b}7(^**sXi2!|F-*u85Q(BSV_FIFJf^3qL?gsO)_Xm8&|Sq(!3nC zEVr`U(S)xcOa(>gW1bbltFdMf%fE}Q0c|bljWNnI^QPzN_*fqKwk)m z^>*Khng|gAU2!or_5VKNh`U$sV4ndrJ$^i0UmYHpgWf0Fd&Zv0|5a0uRxAYLx$@&D zLeA7WTbU3=5!`y?f6k4M;ISkAZQHK4i)WtNIEJFhn1BzbdOm$n3HSLUw~8F?qUEr@ zr0_1ok;I#|dNoaNWOza_Ll=1C8P@>1S=-9(4*5!+?JkFK0E~OkYCZfTmFYLQC9!s5 z?j90zgZJ6L6w;Nej=r-8d?I<=fJ8E4+e`RGr$qRbBs$*W_2uG|Opfsk5Z8&q7j++s zRWaYQM|#7Y47>DXD14L5L9Z?E!As+5$KkJ?kVa^#kt*zvwsDfRm#zj>oKGg#mO;3LCz zvqQJuz2;W7GKP2Ib^*Uh_2WJb=KP77g`t9Cx9r83{~7M46bz~N*M7~OtM*LJCQGBI ztQ%kG&?ktNXuiEl_)x3)ziYsFpyM(^aYMYZUZ59q2D5h64DaDzRd6<0ZR0G;$=^_X zLEI#6-HwK(_VdWUx}7KXHkALz(wHn|5R5YX>jj-kH7w!0vYb|9#x{jtk3kSo_`qGz z;4VmxQUE^Z{XL>f2OzP)7fi2@DVA6uBGd2SBnP^Bsau&J9LQiAw-)QK4ZJg3mYV`b z>Irq{WPxlc^*JB+F|PQMrxYDtNfFFpr=INRV-lvu7HzVlr^rAmy+<7%@%zwBCm z68J?z7EfnJi1Kz@zV;(qF?=Ans1!TvG5qIZd!FeR!0*|uJB;%j&HaYnPj@Tl0h#i;i7iTAr-QPNk9jnmh;FILPl>h{KXe34Q9 z6F81m#mpvwQg%On`5dgZOF$HqA;G^_YJDV|Zlhre`I8_RmerTuHC zMHz4>i$1JpXB+05>Rl&n^nSUeqTo2D&c~Fb%L>hiaow##t zu{6E3pRTF}Ljd%hZ=>}~>r~C0XR5}R>G@|7r~c~RQ_6|F`dO6W*Y-B`PSIUFusf_P zQi~oc?7fhx)G)Vv^7^99wCt6~QJWoi)`~*$UMkQF2HfKJNSfoJCuRme|4oA<&}n7` z5a<=j@gi#Z{8TG*TbQJFBe&JHl=VhwvUCzh4IPgoa#Q-Sj>JSh%evN>OD#bxF-jIn z%hpTM2{!oXF1>SjS*5Mw$c48N;};jNA=%b%xAzTMHUXtU*CO%sHZJPVG;)n(OYj5~ zm*1?mh(qQ?t>%QhV_f|yib?yrKRcj--_T<0f~2aJ)SVuv7Dg?;_Fc8*(MRHfMUfJ^ znKciiu9Sw^ptsx7_US{8#N-fc z=N6xFtd}C>Wa}H|SB=kMSl1#=V3z}#isg$ng8OIlcziXn`22+1_l5`{8%{WE6gWZ&IZ@L$6ZW2IV_KC_)QYoq#%sS=w%XV24GifGZX zYeT2j_Y_v|?3q+Z?rE?757HpDs-YFoNCvc@!hW+GyJU$-m-u*(GQZlc_P4WXNQTe4 z+d8DK78mp$am&@72j3-JqL3QlUupG`a6!zC`nR&J!}bTBF0}_QPD8!M>!_T1ocL-mq!os@?ZfBsLpbjm4DPX1 z!UX^C^W6liyU*Bl<_=J*q#Xq?zXDbs)u+3OHDU1;7dwuxrUn% zB;JJNoic^>A_^0;R@(}mg`Yr4Y}An*u^f^&)jp*z5t4m@+dXS%RAQCqgH<3#ry%3# z*g?_?pQrrxhXf_YM|0r@%)BxRlfAZ*NL()4;7k^W%bK?Q>;$y?nX-+-&!FV_IRHAz zkLb@&O`@!IOb@w9(#KfB8-fH8Nk`M;a1WEQp{`bq6ypP>Lkz^#mNk8!&R zw==(YFa@x8V$o!aIpXE!Fr~W#Q-Z}XZ0mod(7Q~CaNx5dH1Qn)EQ+~NP&$>R%~YWB z(w<)PiIQu8mlZj;rx;*a?zrfpJr@x=2?iR+!)m6a5dhRdhh2p|pCVB*Cw>XyVOkr;+x!4k7dSBbwB1iKO-6p zu{E4$_=0F?k%aT+nJtW05%c?lR+wZ~1>n&OU^^kC2;U;MVBU@w0cyI@GP@V>61|e-@>-&v)m;t)HY4+YQAC(7oc@c}vOAGsikn|8hGJC6;6Lde^GAkf*Ot3WF z^R-6jK_$ybe*NZ*`uWRcj$P(A>#jzlyDwQrR@_1yfPc(uFV-`RydQM~y5$7{YbWI5 zLf!L2qr#8#*RpHsPhFK_@6NOl3eK0k$w* zQz5t#KbHIY56n0RD<_vcLoiO6I@90`J1PGdwR7-8p#5N>Ogog+f-of(=;*Q=V1iQI z_#Cc;+P82R8Gbt*`UOmiB9+Tz#;)*Vo%s}DoOJ4vo^nP58BNuv7V=dN5FWb*m=gio zzz%H);^WFS7q&zqRI~jgOs#2x)GMvQuNH&4en2-wycGlEazlVKHzP0n1%dBT?qH`R z8;|!qwntYJ?<{r5E1C_X(qLAPC$`Q~3rm4#pxFbm3L5w>bFKff?m z!p-WP*Q!zBSIC8othxiB>Tp$9sHQhIZX)=$H#IQ)Peraw^}^zUASBV-J<8H-$5;Z0 zlQp}I_C^##+5NV4R#f$Ih{r+-D{&0tu8AMdv5`ccK}#Z#Pu66Mc4o7CGJn)vEC0T= z@3}nZ)ML){V9-${RTSU8DKqf*tlQVjR>RTjJ)Ml3%#2Xr+A?Ioq&jW6UTlZEbqQ4f zJ6-Y=L>Q5#y0rQNnJC_OSjDU@MyeI%2yFLy8LW_g>fy0McZG5f|M{Z5CY*Az?EK{i zlJce&1Pe8q(wL*lT@hgy<5bn(vvk_$WBZe zxM$}W+>`&UAf_A(+-RidT8FPfPY6!1rZc;2FDa3fpMo%eM&cO1W@wY~#%(Vc4@Zfk z3%14otb)VuuZ`(m+$Vkto`h*cY)oeYUUM`Fe({m7cdu+;@^?*ZCJBGQF|^pOHLGE- zx5|$H<{8g|i)-t8pr@>#dlndhj+ZRp;5T*!|He^EEKPUNj=O@Ut{LE!4U6rgx^m;t zQI6BB6r{5*ZjkPH{X0#K`}nzTXKDz=uZ6Fcre}*vBGY`o;W&ZXzwB?i%Gt zyB39lRCZM0fc8{Iz{lkt{aZ|5=?8HG4FwLfz&OJ$`VH2^mU+lMH>GIHnYz}uxrYg7 z*B#kMOoiN@Wh~Y$lyKEyub8COsrfmp3Hmvgiz%j7r5t?Z3@_;`a{JaJUbRb0Dd%VB zVb?3{`;T~yMY{z4-+}JWK-m64W+k`VHbRc($GCNa&#gP|i01C%UzZlJX zTZ~Qj#q%=?P@rbZk46Gq020sJ-;_kqam;0I6S|#A#e7>HjSsF3tDqpPTSn8z65NGoW;%ZlQzR=hu7`^r|1GB zls+g{4e;>kA-c`ZT8uFE8srs4$M{8ParvnFlTDwZJ$o#$>stPp(9cY^$*2T7=y}~w zanXA_Rxx4SLEeZGKeZ&zyK<#*^xcfy>cYD3VeoOtI|cEZo$7>4#(w)uPWPk43PYN! z?;+hgK?UEZVneei$0kQfm6ji$ZBBg1y~`_XO~zspo_8lihqB zRYQetc&;&~mu>GKAV;fiRMd8Tp?%#enR%)G1m}RU%50R?Mpk5VSk9()K&aEo)w#g7 zycP}m2~;-c^vuiM4{OO0O5#@$@sTB(y>@LK#DhIkAFXay_p$BwGD(|-kYelc!wpzm zQ7Bwc>3XEG>5d#e@RyKe0_9rnU9QB}w7j6_g7PnV%@!+p>-;LW#-pQ+Lm}YQNU28c zo=yb0?Bw&zCzk%u&5+jt%#+Y?p5VfM+2K?E3DGkVPU%+E!{dUbuI0;x4wLkr1I3j+ zlGLy@K7{1DR{tgmU_K?qGx@oq#q2a{R*t4Vpu=}Jd`t<|3&8j~OjjP;@7n{uhf+?TgQHxNoRk;&aG|8hxzI`09%l%(aR#~K|Kmy%Kpz73I)WM zpIbNtc*RoYr!_Q*id1vz-QKPLTw+>qvg$<#>SFO|+|Hur<7nXGe)!L~oZ!T}zx}S% ze>Val&|0yq+YxO)qi$_{3@osZXzB8!HWIuG9G53o0RJ5M=$eJkco+dft}Ux>&N)7ze^lX~il%0hb~7o}QVpWXo}D zc>(zF)|1+VMh$sO_N|LC7ji$O_Xrht^tS|j<3#jyvoeCfFCuo&8(Ykb2k4B*R5JDF zcmx`8x(W#r!kp?mWObMJ?w(tF6yRDF19%uo3-b4BOMxB?P=gC>d?we$BV!7`sUDu# zJLqN&YbmYd@;d@-o~w~vbKukNl6zW)f3bL5)KI62ka&AOk%QQfq3Ob9gL%&rhv^sC z=+B{;DXQ1ub?yTk)Ppf72KHXVWMt~F^(@$dIJz!bHsA{@s|Vr4OihBuYW2qIJPJ_% z{g&mx!2a6!ys<6z9IP4v6^eo7&jSp`IadEdUI)7VHooF?JJ~F>j1+Kj^AkDqOQ+b^pGm{|Y)@s% z1-8Rx&WEVXU5&6ayB|N1kZnUsC31I)X6z?VA_ZHR* zi#;J6^1?tCzRtgoaIUWPCmb|MhRClRq9~c zBEY|==Q~%|NgiJF8b6!#x>?K6ss0}zE`B(>?7k`dr44*7G%C$hcFezCX&U^S>CtnH z>?l_wgbD8mWZRys)m72xy~M4*>+~$8Q*3%es>FpxSE$*K$i(&l4V@IZtfsb+3ZKQ! zp}-UQs~b&QarK4uU!vAo%AGxKpVG=ygfwyZi{Fy(DyxctXWSbYBq3*uXh*sAq#o$g zdi$ZRNu%}K>};W}Ug$#|TC|wK0DFDh@!xH>R9pxNV3@}!gzC;6$z;Vgo9nkD0KOGw6#6JP9 zR9rHK;4Z_65>th@VaKU0CvLOtR(KfB!;^>^_j2kAMQ?~Fs0bXR;`fJNCwOUj9LBuR8W!xnq^aY%)Rv?XH$jw@RahjL@mHgGL-!ll>D+mS zk{8=>U>nPyoO^@=u7Ys+wb}0j+&t_E33>iPEic)H_fF4HRelQLB=f&jXNZ?B%b||u z?6uB%r<-@ZDEQk<)i7TocI0cIyP4Qs8;4vQV4Lvh;~JG8M}5J5#ia*IIQ70x zcCmr3>OtT|FB2#YFVFdL271E#HUgW+>;C3mA_Ptb_dfVYAo_SH{!gm06y?uj#6%DK z`onRui-xaqe5kja4xjHQHZa;sugjUr9X~8;!0=@2monu|4;Zw)Seq5{;-*r}XI^1} z4e-_YofGUM+*6N)#o%HNlGS?Q2f6U^0Wq|2j`-l5J2=5Q!zw+Ha%FN*<=`%xv}9G9 z=3X+_RDWFu8V4ctHsyXz4V!KQJULK3;(;4iQ#v>#%Vjn~nbpRN4HS^5J6_kv8?ChRSC$!#!l5r)_IG$7^5JrRaC zzpm>^QvX(G;50nPQ7^0;NviB6_|#9fvCbPq8>JfQ(cezBxn1M{7pM2JOa3P*zDp*a zJ+kC*{!f(G7je80GJj{6q-iT_HO+H$(G)Xwz4Un|iY^Y<;% zToiInoc}P&DJWd$zL8oq3|k*NUpg918ACxI=i?VG6>itAk@$x%DqGY>D~RRX{ewnS zZ1pPWu2Fx8snXRJhgc|!+v9U)H-u&*jZKTFxh5uVf^XS-UU zJ1x?Nnr6f%wYT(@3H$g@!}D|Z?VW`0Q+_?$$J&uv6HgBD@?Ho0Op^PC`LF&aTS}R5 zQ2Dnh+IvV4MO90K!7b8EfgN-1n@>L11p*9)l0;s&wPGg+T;{&Fj3gyvA-YZ)e8mIo zPkN0HFpxXn@treQKhlCrQtz$P|Mir8K^Yn+)hNu1!Ag*)6qpav^K#BGK~7$GGBNn? zQ(isK7m*i!Jz|$wprtK_0@*fk{c{0b-@_J?d+ehG~*h!+W0@E`suZeL}$m(0B!KTUy-8Gt?SWYqq`@Ll> z>GcYO5a6Hxa7k0&vw)#5G|Mm2T+*BRF2fKP^6RO)xY=|<_YNabeA4D09C>9$Z)($( zp(Yl3l$Z3H(kk^Mkq4)r*h`1)gMP&WqcK-Co(!*~8$8sJ?bjKxVkd}saUp1ZNu7-7 zg*+Zk)vI-(?*y{#1Ty%a4jY&GixZuI>7#0j^J+-K6rJDV>b%IPF{nPs`663Cdr18) zLZ{!OOx47N5?0fDq2W#*3UDte+dchPN*L)u;5Ohr-8B z0F}Io?hIknn`74%PuEKOsdmb);r1GAe;sL-&i^Liu1r7Sb$)27A{7NVLm~S*2r1}0 z89eE7zge#xcOCaYbKSq%kev*i=A?cztGMh%c&Hhe4`oyI8oWTAI>EhC5*;N@=u1Lg*qBID;94m2gm9FLWV!-8?*9OJK!(5J`x*H! zC%Qd3t}+HJeZpZa!xm$KPuSCP>65e74l4wHx!Rt#1a?;54@F0+jd33)rpK6gd?&W{ z3481c{1ry5)JNj|pD?aVhM#Qs5r)6o@D~~W62td3{Ml+_erfn4hJV8Fn+$)S;ddJQ zw7c5H-?0I~NAE~nMPdPVYV4JYD zbMI)*ryU@^n)D#}I&7JdcMEA=urO@)aeLkZ@@^pgti1n8`iL>^rovKzHW=jvhW z|M)A6SgDJ|`_IMBZ+j8jU4orR;9B&!y}n0a$uM8i6OFWH($>HxC~vh<*Msrth_5H z@f$1c`+k6W9g*uf+WDBhoR!3`G|CCW-+(PK$~m)v{zLw7$|-!zo_3V9RG7SvoBWtD zw>FNU)J4qpIW+#@WA1r}x|gd_^XZB5PXRbG-7@5eT>+tM;)&C^N-qN&)|#MK8M1W_@hQ_JAS(n z+l(*qdyLph{7NI%i7)ZFMrVqsG1Ka^oJ(PP>0*r_p|VFom5r34b@1y2I%I z`0+-pe21CDuh`*k&HNni(mKW*<32~G-#~3290MKA{f)}a4dWW^ZdVbBQBG;C3na>j`p~4!;#_s1CewyJ= zzh+z`{$Tgd{lVV9#IG`9Ha%<+4^4R1 zsAB6bGN+-B#%!nmVrz|OITuYkT)!(|JNJ!yV=>dly*DF0$Vgviq|d%<+-Tyt~-kXsg?d4_jBYtJvFY>mhm;cOI=NNv5;U^k?jNz{|{2;S@V}E5B zzPvMLE8p;aK47oE_pSEyNuzyzhQGVR9$#+wg@&JD_=$!e)8XlZqP4U)g!5$mm0s3} zleOTL?jAV5ZuKFp8GcOO@0@#{b3Shpd5=diuVEWcUL&+qd6s_-8(6kDoUD{nyw`Kch(Brg2MoW_@S|@x&NIVb zKIhMmpEC(w*1sh^+t@gRWCDM119s-wV{(_A3bEIz}-3uOu%@)|xM@Zj5 z`dN9WlJpTH{S@gdNIwQ2$Br85eWd%Xalf}I?{_vE?>ja|+uK)T_+^HlXZXd2zxxim z-;!XQPuJMDKWO;P#y!>DhJQA}%XWQOvYLI*IyDCKS#7^|OfkonwQdM@{w8}lDYx0{ z6=(R7x7o*_Eo`?S)*iFWsJoxxUk)qPmYWM+$?``;#hwc8D;h#4A zUc>J&{8q!SH~cEYFERXV!%s2%IKz)L{7}OWFnn*r-?zbjy!RNsbGb2hH_{sozsB(W zjQfBgMtMsNKgF0E58Yt*`)}}Eo5lP&uW~s*XCJilDf)3DeEdOo?s>izcIrX<^>kp3 zmlXm(0x!;YSe-_C8|hx8?}aCk-teHkPAk4>TsI=@{!!!o|B$Qgev1)bXZRI{ztPwy z8AkcXmKpPXBYmHd?q`&DIl}H|<{Q^J!;dihga2XAZyD()@{Ijs_({gxJJ#?I81aj@ z82LYK_hSwJ)K;U98tuLOX=6QDXpi?d{8^*C3x+>t_!kX-)bLjs^*vW+_s=dh)-r}4 zY0OL7jr5h7c7KnN?%&~=|A}Sed#!X>;eR*EdCsU;m$9FW^nN4#g5h@=>7O#j&ZEYf?iY6dyy2fV{DxbN{q?M|b}{@zhQHVFs|>%; z@Z%3NHs%-PQJ3@(Xi|tZmyjZ_e4a&B}2)i=5WOStU9?NjdkHWI0RjD$LF) zgBB;`l;#vzCHb2ly1i&SWt8NUmE4wFlH*JPks+(_!R=WO=1_Ja|4XV>R9r%l+o)w> z{Qxgv6loLjR>*nm}><&;`)D$0I@ zGII*8;_aIX@;AdbKO~!^89C0vtOD2WD0b$TW|ibv^J@FIDTh*X?#^;j%oh6T`czeSA`6YSlq!J7NHWy@V+xCA?wu;!T&iw4`oWl1hT*`kqKeyz* zyB11tW)<^?Cq2KA8We8MdH>x1Gu^Dh=Ax~|+iB(hmOmjsH)r!Bo8{=(Yc%iQol}xm zl&#t`2i!Yo&T;LHxxeR2o^uzD@xoDe{o{yR**WBMW=U7!@7%2I1tqSC6n9Uw{iFP% z&G{VG>^lle^PNS7Tj>~I$XRGtZlP6}wN-kA^xC|ff?_MDENg3V0b6!%FT95e-BVcL z*$vtG+p;zl zUz)RRp$W9FASZ6#DaqMdJYVC@c~TsCot!VX&pEDv!F`^)a=Ol)q^y!WD}USF9Ok)Q z=s5|U^VPFTH<}2ae`L_Kd=e|_q-lFZ!%{j^Lh7}dM%5}BXzP}3c zAIztql%nLEtx^lwR-zQ@+UPb_i0famv#6wKb5X(Vw3FsB5J=&hojD~r^Cz~m&lKj;++vqUEm67AGSgW9dUwkR4W3RI<r>_8rx;e z+{_MN|36N!g`_*mii-+mtBf}JTeAx8bQWzdmP_KM{K72fBMWZP<`R{dms7Uzx9eXn z&5&){sp>y-oAH!Tl)tSc$#n)5CghZu@pRh!;`<8OtJ$7iK_Oh-@=NZ`DabYBC(a*yImzeF`JAk6#K@_CSKLDRS#yUcEwm6#7`EyAgS$TsFn)>{`c@_7{iJ zN1Z~lZav4{y2o4a?^}=Ynj0>JLi^9D`_viK6Fp$|4O zF3)%BQxBuJAJ#W8iQsX7?z-PydO_>efeOL{nc&yZ4lGPAWVu#4Sx#+jAm+yEp3IbmbSuIOWVU&Nn6VwF9^_esr_(6 z!qqp!ah*=++JzD~J7W1u{^CWqkWC-!1>oDy{3NSfz!fuIso#xc~H}u_P;#fOh5$o@_s)ay&D%n>h zb_G0ep-EXnOWA}SooVOv@LvCq)HSuGVC+$kRSUOtO6||d0280*U9a1i@m3Q%1rs*3 zrW@Mgz%HUt;s6X$}#EFR6KlaY+SpY!sQ!R%yY&f(TYwRVEgh1Ey^~RJ(#hjs6*DqUsu9BI z^`r6w8+4LZ1eli~zG9Qw36;Gmbsb5!5G|!UvnfA-?57D;ggHCh@q)X3CnKF<51F;vWMO79iG9mW#*4T~9fzwZr5GBoGo3=bhqyB6 zldxvk8JxGWGhN>u!DZAhFK(uQ3n@6Texa}=wEl4JqNPlsC+WgGnZOE%c4!m{5zmd< zekI9UHSBTHTrSp=<_`R+@DY-(K@ki2Y)ZouztH6LCL6n=uwo~t76djnk;>;w|G=S`tunx?NHl(C{ZVs3{e=*nopxa}*`attr8u?o%gIy+}kT~A_ zffk%@G4rAM)zv3Vg;!2(>eTxOkEifJG0Mh+KNR%xgxBAuWTso=qRM5O!9Sk(q!y_H zf`3FekxYz(>g|ErtxLhum&{jyae6D7!lXqbY zhJ%qmJ!z8695CW$+9hajr_e(sgK0N|Ql13K(PaLnZy1}H%nXuGxDbRsGO$D`iA5Ir zgI9C#9hmK$E|R09I1+Hd9;@xGTKv(Jh0?l|BrOsN#kFc%MJ}DsZSpukxpyO$o;oYG z4az7JFl2S#xW79K$O`c11Nz4lER)R)x;=U9wAPEvmJX(oGf;z)CLH5WM&hXrYsu@zztCS8=ip_V^@?L4SFv7kL3RT1uu8?mO{9QSC^8N%X#*u9j?} zfo30Qo=ZF>RBEXiO58)u;ka4Ymw>C@ zE|G^@0!nGa?u1@7!{Hs6<8>9I6GmMIJD|sA&I*msF08!>Y>I7^DJF4BfjJ%5&9v(5 zoSP~VQSQfKt{{wWfq4iAMIc;Ano>b{VytbyR)+sSC0_~ree3mXeWf$sOCIBkcD|Rq zq=INCB+mKH@|F$jo*L&m&UL&A^=?hTB|qM|6O3ZVT&*B?1dy;uv>|v^7BA8zx*T+Mk3D%#Kr^3cA?=KLj zLV*I&7;pPiMo^y)|Kh~|CQ)>uY0+r)1N{f4#<*9QoVQa7)(v1C(p2&a%XlXm*8d_W~Oq6+@1lPx6NJDTMUuuMU5sF zXt3U*nlETR_w~)ZNp&o+!WH%#nr<4Z)-|Z$b^d-m5I*CnDg~Rj$9C&A)i$mFxZqb? zbW*5wrdm#G4`f#~Jxp>pWD=??$oi{=2>uDa*6Ve!H%c=^?IM|TJ=IV* z-jht*s7L1wf?Q9@McxU;4^(}mPm%!QSm|j|2}udoH4?Ba>JnmHIl5p=>BmoYBOvKi zCW}f;qPoh8tfV#KO*f+I$MYIQo0NB8U37TXVKF3r!S=qGM$RNbegMVCSj$W#Dl0t8 ztYv}CEpPagJUO@lQbZM{T-L-Q1Co!vjGp~6nMnsUE0d$d_fS- zqgZ0E>WDq_CU9SHN(yk^QmN)|R!K|x+G%QL@v^E{kv9XOvMx=GutLq$wxv8Fc`o1> zJ5k(AEle3}%~#l~;h$iey!=+iOYHK1lJC|^V-5fOQncn}BE!DO;$`><(^I%=8TRp& zvs@Nm4~Ua{H&l#>Y?S&GiD*zX!=nWHztcyI7J{r>KL-kGRP88SLOb!<{11FQM%DskiHPB zEy6OJH<&(b*rG5+lh&zPaRPr4R2~!gh@yq8`6Oh?8!{-3N$}x_0qi5pB?(yifkQXi zQEuZV#YG{pQfhfUs(Rk?Upt>con>z@)}nmX;BW6xjkNO0&xJALqG;ku;b;oeVD?IomA&KOt+q5fWdZyxn$i{jIZc^9%ccm|y4_ zcHY6WC&(B|&>dnDGB)lojTp=p-B5M0JdR(yXu&lai+hAzXyPOWkP}&U!UCVSjTp6x zn}ot)f-qWKKV{d*c1{CU9Ck;Yd7evRyrOhpXh@#+gEKzoRo zHowKZ2`-kldtowBZRAf=P6jp-MhrH2cs~VZ0o-)KFUk~bT=84%7G}2a!=LYy-BdrY zXGAGN$@6HzIW*-tVdBdKeU3}wUY{CO9Qda^{P4<02!{R?)=NM1SID*`ZD-eBNv7yNNfr69H*9&58e<17z*o?^Tgm`)hgMpjygd<<-4;Ea1Z z=Tw0URqevtRzBY^{qfpG@bq%#)N%rw^r(+|-4b`qMLNHL`6uInX5&vnC zo5OMO4~mzgqs3!!tYa$~W%zNtrw#@qX0DZoX))8A!Op^yZa$f#190I(<(^uXTtnl2 zGh>J`qsEvq)R-~Mm@(X#F~XQJ(wH&Ih!MAmqq0vFFJj&d1!K}1ov3u6*a4h2yw1U+ z92&Wm`%|n~=o+mU2AQF{Qg*irNmBt$@3=I^5=zX8Q)aBY2o!-p%}B{iJP&LXOX^_L zi^Yn`Oy%`As)I--F%}c4#p80!U#&Vf_ohb`BoqS(&ZLP4ImCpd=cLowJo1FL(FwKS zMxu3%jZhBke-J&MwN?KFtO^^0H6~RyKTypzy6QkH3OzO3O(WS&IkaKm%=pVer&n)I zI)^-JL1tlE2ZgC8F?3@lS1jH{g=-IwPmpx?({ly>(6bwP zUmqVAp=*~C*Qzcf7ceKmVqDDFByA_XBHqj-VE0il=z5$JhhBjq)?sS?WEYOhxWWBJ zSPpM$hJFWqBS8blyGl}QLluGtGGmxitp=eORVm?KqSF{#bs)`B`k=CJUcp&|oIZ z&NN~@PInJ-F*rxae#=QEpw-lMn`ogFm~)9Ai579_&|OQ1hL?ty0|aC-lO(TiPtuu$ zI*;a~GL*!twGqBh%8c?iVkMO-1Z06AZ8>SuF;E`e$-HYV3f&V4j8$o8=+9R;p+L59 z;p@(|C%bXI$-9#kdAfkWmtT`Ul9 zF)mq%a@HVh$Wtxlbv;lf&jp*&c+zv>;!NWRSV-t?wE5534$Pa zX=cWKx@={N`c9DbBw;Edek+Ebx7N<*9a{Se ztrBK>)@43X`^zU&wD7m(oopW0>rOk~+nwj#V1Z9|l%{9VMVTh9M>r?23o}ahjG;d% zE#HL4wBa#VqP3{?&+k(H&|aFFK;;SBM9Z?1fkg|J4ZPXfh?;q1e1gk6+&~HZrNH!>CHXqp_*6V`^1=ZKQ6(xc1gbE%jC6w?x|->Key3Hs}Gq zSO3KNQJ27JwQ2}YPZi_GcpCtnsE%TJH4D6A8YVtHFMj>gP>5-wMfwvrNz^k1URr#$ zSp4J_6MH6qAtBpaL)Dt+)`1^t{-Sy;tWusrZ7ePbyvJRBLJ}*?%+@34LMJYyTdP)F z;*x>5I?|7kCTZw^KSml@%{nGFGnwp7*rkdZ=^TD?FhtBw3*#2cd0(k4ijeGZdeFm5 z(Xuo(`lJ92k&_hzaQe}zfqeSa!vxCXg`Zrp)LMQj1_%$!nFsxvwT7Ez7^|x zV$~2@{wf9v=Pw*6)}1GPGCSjUApI|qO~P8pb9TMgvFTXH9||NzpoCzjip_!p1q8vC>zg@6zrcF_6 zrap<H$b2nY^JT+vT9H8h)}I;CYi^Lt8_8v(eDf+R)NrG(_9$#v2W= z&cM8-uLTM*aW08}D%bq!HNRvqx{ zsBM}65hg{a8VwCo8l&JjrM}@V8Ijmi^+K#lcSH+AFNF-FtSmgv+LNVRF$cr0Giuy!m^Qww1y zwM06w?pj*wqKz1s!a!X$&@Ys3%GgOwSi06oODp?LEJrS=Pk40_-7NCwGUy!Ys73PH2FX;HP0qTVp$V!FPMZvEZ-1k7=l*3V@t8wBtac7RW4*TZko+GY~kLECRfu z)QcZ!)Y1W1bWk)B>jn^uw;UZ@Mem#Du)cbWrq@m1NmAR-(|ed>`7)Ck+ZX18}ALy)OLiKY=KVsv3={3 z)Ls}0^$W?^AAM+ld&goadsazthq1k57^=OPNoBLS)=oMJ&aX8*lCK^ZK)0z^fF0f|5HDRO9h3>NXxns|*&QxGsrWawNKf;`V8xobaAE_$!`{$@!QAS=JzH`l!z#K@RGA$Nr@^69$+i^og80Cabq?tG(n9_ue^EN z!Ap5^xyi%3NnRf!8Fil`mP?W%EFX=yl%6Oq7^I&{IwoSpvn`u);-&H)9>{j6PI}a8 z#l=y1_w_UqyienSAr5be>nx%CgnuQf9-ig4?zidZfj>Rt<)sRD^iDRqr^iRZ4v8_L zA4eTX(CZ+y_jY|TPEk~X!&Iv@J_*z_bf~=cJ|~$iYk&Dr=V3A0?&3)$F8iV!gIjF} z_sR`@cAO;Vq4A;ct#S?$9zP0CDl8QOD11F^vJ=VL5-V?nN}w7Kb=El3WlgbuGpBZ< z1jB9|%iYc^V3+ z?UBN<)oCY?RrDm>#f*0q1N|W&EPZ2P&KRH7S2*^s<5S~~Y!GRn{!amA*Af8jM_`CV z#%;=Gdy6@LV9Q@mp^)pyW}EFysXfWeXGp%!CNU>vL=!%wq2XsHndr#!tsDIiEiXhn zvMp$uft5i#Wo!ehAxdj(d(zF}1)@;@!3wQYl@=)$dT>>Y`(h=;2fe-Px%4*+`dckb z9_><&aR24{tjAd{35`lR8`bc2Y}_~yhVi83S+NAL3+X^z9cXxs!fV zVR)3+)Mt|}S|z~R;tN1-z1kLp^PkDKCG%;A@8zLUQ=4w`czE3Gu<{751<8clZ1*|o zVp`$dP#(e^gc+bZJbms`YHhW4!jmhO;U{Hae4;vD_4u;2;oV6X4+Wo^!~;HuD8y4J zA=mKj$!XNtRQ;FZ_2!rMY05&i-6}@REyB8oT${6g51<=>uNI5>?HVrxC*`_TSxbn!`kHD{TvaeW?`#UgbB z?waAMsTdYwP((m(ClbDhgZAz*QooB4PbUrhUCQrg@&9B+#BA=ab;>&#QbnOZ#h=2o z5=o&fy(BYO)v8LcnkQx4EA`s>@Gu)FCw^WM>0&|M3yjf8g{W`G3O$%5gZ*MfL*vgX z?yG%C5}i)EcoiUT=m!Vo`_&j;5ccoJg#Idr_moVab$AALwa+F^Ng!PIGJX2cUj=>s zz+Z*?4}rdm@+Ur_M_#hLSALiMTw}e#dJ9q5P1nJ^WlW-9I>s|5F+k0(N%+%*GLcF2 zi$A`TzNq|0Ju83JIt8fnRDw!nkewRjgS!k=^2H<&;)xe$s}^N7{E6y6lQJ;fu^)Y+ zANM-;=1hO$4ipDuqNODQk0KeJ6a#)^$Ry(Ohec zt2H`mjka2&q1HIA)|gsru*6U%W@NTgGw{X$&JHe5;jGt0(}g(IA*ME&tmVL#G~`tu z@S{x2;tkebCza(dn962xBvJPa5WeU@IR{u{Vb7(+~0<)J~#zp%=$R{;rXL`ESc!NucKgjIDc$iOpP3yoP z-t1=z4Q|}d!E&oE|?E%uofYtC;4VAVK3Fjj40d&|G4h)szr=#f~gS2-P>F_$uEOc#0%sMgn!O#hqpevcKXfpVnZ&s#-4J zZ+`LK5#r}Dn9D1Zb**)mQzr9@6?CCYD)gd_93CXljF7q(n8j@v-AOlW(&ENp(#w~W z3_ev`+vds>vafZX7Z&)t@N0cW$(TvD$a<*D$xUKbm4^-P6#SWr2G6G8&s6ejNOTi& zDt`b@eXvgs>f66y~QDOL|Cqhk zwTk?;V~^grnCf_e2<%?zufl#rZQi6P>Kc13v>OztZY(v)xMU&BiqfBt zrV5G3d05?85@7Hu8Vt`Z$QaCUU0~e`;?)6|@$>4Uatb87GQZZ2-A59j@#&9oWNF7#1$=Itp%q+*Zl(T<`$GYN5@spa6EY-o* z3Dp?gaCq#*en`rZAGTL|B3-7$TRPfZ@qo#IYG*W|zqPM-{%k-!Bj(+P;uBHh`|FFt zo~gSCQH(XJDhaI`I-O5q6{@QOIkdx0CHt#k~i z+-<31zU;!gLPp}WAd$gaGP%>n_EN~6j(jsBTI})=@*PjIb=R&`7T7Mj_g>5yJ$9;# z?!x0oJ$mBDq+I#c1<`7%bRQw+T}Y_c@22|t@bt>2XVD8L`WCSVAeIn9f92uZK%DvtL1U_dDn_8^PzEHo8Y+~B zPpC6aN(EU*`O!wBhKJo>gzI>H<9iVZA2y&6qEfy7D_dNMg$+WilU_^Mf`peP>BceN zCIt0fFA0VBZA>s;H6b6Whi(mr>nCuaRTm5!li{m5n_=6loMa#aS#!Xo)R!_Ctpa)d zflaB$_-=t_p_&k}G(WkBGo%bOwvLPwAU*9^QMzGxc+Y%vQ0>BZHljt9@)Z>efn1mD zJHp~gvP`gcJjbsl-&FBKcoogVd*M}cm5;GlB?E6X9{uf6p*(#~s9F$}epP&qZGlGB zg-|C!eWig7VUqSzM^Cos+IXTUS=G}ogpr~8PYGk>%8{Gb+m&1O?n>4|wf3z|_SiF= zviYuDz8t)P7UqLu-i>s&W=36#?mYYMK>CDJw=wlNe2Nr<2^m>qXi^fkfg4tq`hZ`M zUNNIySN1}c#2`bAt!b-F(fL;ljrfsu#F(?r&@h1G=9G~~Qp+N2 zADOJh#g|Iye?bhq>(!Ks){f3UF&>v;06)x1qgkUyP%WM!=yX2Z2`tch0(YdtV zP$}E3(zt&3@&@+s7`;OKck+E+G~ATWcIVY0d@Pn#VN|2S2!!>hm5o?KP1E^Dv*#H@ zZleK8Ng<&BNVR$$43D0m8Yha=ExOcguxar&J(`PiI2|W5vAldLd+kZonW2NA+>GJ) zGm>pe@Chy*Ys9?Gyn3g1tetl7{f;c!{~<0?VZ7552TzoyV~-$PN@%W>+sCuT;Tov@ zi?$YkGeiAf*U7}Xgfe_$#^{5N*zp5d3j7$U1smyw17GMu{A@b9RJ4&WSfKi2j`mi$ zE9dqxL>Dt;a>GU5Thj-We6}QbcnU@& z1k?=F`mbR7Z`qKY73FFr1qIL95Im)i<%^jns7$^rCv%>5;26X!gm@bC{xaEEwV^0I zB*c-KK)O{}2qWRO4UXfs7fC~&^HV@|DdsQG3S}`o-)Z=Ee!({Ir=crd*E7&E4-UL8 z)M`V6HY`k17EY-Tu=xqRI#0q6=mI6(VjElcL9JiIn@d@55VtR6bjSbm_v>=oA?8{5 zh~Z-uYMmE<-|6Wbgvw8YE}LoXYGZod+)Ta3aog;oE1&+P&E9xAAqtLx3d#YFR5aL$ zmf+Hwo6IT`?DBW#5_-6$=I(jl95RWXa^EtBH!q%WK_Xdj^FAjcc6f^Bpc8UCrxHNcsEMp zPPr!Ad_j~pr^-PyiPt~ygp{dPECAqxLpj{P+_r025JWv%!o=<@QFjjN+p22C^?_!DrVMGrlV)IgMwpeNa9d&<&Pu2X!! z_7}xMvggDGbd#Af>$*0ne9#qUW!);QaHZ8PGRV2yFSv^H1UaY+e_6dUcrV#%ao|ohRGvb}osS{0P zwtc*qW5NJ(z(jQ_<_x{72kUbmXx;r;H&V$*feP~JHJcVeOs%BV3t@tKrP zM^Y1^S^O>qB{WL-CLEddz<1*e*sA8q>}Nq)o-xFhhk~slvlNpPm zB$}gE?5zH$cDw6}BQIN^zC9-wM_#JK@AG&rrkMgCBB}POwhv&e3uIP9;KwY_ypKnvf|-hHB;V<(emr1 zs%#Qxk~5=3tjt=9p>_HSqfQ%P`oL36XRxw+qihwbF+)AfcS7IOT;p-f`+q*7ndgDf z-?U;1CZ0OzRgh@CU3NbtXbvVc8I<9v0$`5v4elHDg(&Fd;Li>frL|C zjOIGFVT5<`OY|eP8KapmCR3ltXi+QDo2ryiBkx1CiL$=K2>w+K6Dyw*W91WKOrP}1 zr^NM}r?sqpuPM7cdzGi;YU}5BSzp)dt}tJ_l`q}L+rsv|ETUF|HtqY;<$@&6si=dfAJ*!-A>Y!?65WNlsZO{MwDn`vlx0WYs) z7`!7!>n(h`AUAnf!c6xq;WG-XXb()A{kav8>(t%Kyd=_kHDc&^uCcvAE(L+(a^+ zjjSb10^0+RSgHiF6TmmDg+R*b%-i`=)%(95{VE|6**Hn^tCawcQAAWzkpjt*qzWD?qND_j-?7FMlv74c0}M5jVzOdmR2yMJx4EJ!X-!%CB%2ZLzs7o`wdDmbNw z399<4R^hmRL+j6pM*meXJ!~TB_7<`^-;2&VtKZ+&^T+r9gF)4OV2wgLJ0nn8>7whz zt0j(NeoJM{f&w&)CG*%dhfr##Wy7Js%@V6aXa4Yjcu*Jkk}P1e3qf; zkKf)>k149s7Bfmt3+2j`@Lx+d(~_J?EPW#DzXMkcK4&3M!m)2Hol&S*I>rx=jl#Bb zVNXSG90mVq6Wi=bELcgWF{9|v>12{0YlYo=hvt+VHhF2&R~&kFA(Dyrkm6nns#F~K z*bKddghFmK8KAr6ZGtT8w&?kTsLm`LZmG#V(9ryfp7sZE##aiG;ac%}JcLsfHB$=( z`3RE5MnU8Al~beijx7%&&(=|)urbx`0s|d^D+K&j5();%!iYcW=+sZ%-ZW+zP>l`K zi_Q$(ZWk15M?#s&w6t6o8%HgJWuIQTXW z{mI!#qbDQE(0MhA!XOtg*C~_w^>iaobWd3K)Eh31zC~<$;1;isA;+lB%C$cSMn)dz zSw@v@f#kkfU0|5Dd#@X2!WY8u#GhVZP52{}*uG+1F=P zH{Lvkxm&$qs?|E-Z<&*EgzxJgEx zf>P0Wd}g>J@D2v5=!N=&yf@7e++a7<-YQ3FRK~Zo=f~%zr!KTgbmGca@kLv2o~N;{ z)~Y!7pFGQob)5-s{b}=FQ)AiAhnLO0)2O)rXZ4dtzf&7g8Lq3GAj5d{l) zVfpbqXo~T?*~u%0^mf=*l<37HZ_)QB6TG|YiZsNPSNvQlf0dEKe}$?eh5ypwk>bz; z;;c=rdZjB${xm;$)e!M6i|g%y4Hm_jt0LMXSuKdGs@BIz@8c)6!uN0R{T8Z~u?h)2 zR14_gTQu)@oXgEGDLZbI4tMz73s1W*ndzpb7kfuNze`F}Bl5$^#x&l0FBjhvQqEaC zm0Wyg4mI?Z8{ha-i~^2{T5_Wds3GOzYtEXYu8+qPSdWBFV*Vr-gMVdupl_Z}<-6#l zV1?4#I}%`rqzl!Sgd2koj##4Bpda-zPCSLeU;6Fnf#Hv@{ouL?BLe4A8Pz2=6DqR+ zy-%!W5U)QfA8B3YdhvnlT!9)IuZlX36okG>d7_g`Q&&e{i86iY9@}leB^e)>SDY8N zIa$TfNV-ZrkDhS#Tw|TSVvd!78u6(i9^D#!#7NdFU>Q$ksfcB~YQ;)Hu;>vjXW{-; z%qXJ`-g@f>t=5wmHQ}aOSO%h9*Yqb#Vgu;g35_T3D3OZDhCz6aaPfsCZtXgLng>Qs zy?%EI|2l1-cTh{Ea9tJeFA`_lLY1PP?V~PDs>=S0m+CdoI8Gqm;sKQqe)Am$GmV32 zk_51Em)R&%ap5vGAP467jZ4#<@1Vjq`}c7CVJz>0u}YZ=?#)*&nZTlHO&-}%i=h7w zBwvyW{CT)$yN@|ec{os%0n@^lq{y6}PzDw|isa{Ka}GKQpyzpsy6KvMh*|emtleRC-qx^d2S}kZsZ~*J>6O{ ze8%og)_Df8TwjDgjjRjgwC8hM)D<~AE?2hKAVF|-2jzW`&$Z!^AIp+x2-iSdw$~P# z-U}}afY}>ikbFfmXi0_e0D3@$zs2IoWN*@Y1-QtqPlm;*4`FN4pSre-nR2>|WlH5L z@gQETr&o};d>45t-;`jsjlYEfC9{d_PoLuLRYX8agAeYM-`QaMKUmiy_rNP+{Q468 zsbgC|D!t(oaCHPo%XOczXxPcs&ab@#V0`8;!y8S!RX}>Wv@2FB(7Hh+A|j(#osH`H zcf!O-Rf$TgW^*!JzgbUyq}hd$Nd~)g)$t7zX^sXNYFIS$w`Zitt$ITDUF2_-rV&lQ z_kVmokvX9wyB;%$AJ&^a0uRm5C12D;3d|h-M8aYLxdO3HgFiH1z|N;o5D7ouT25%+ zWD`hIHOd8Yx_Q7t`SL^kTg?I0=Cifo%jdJTg{JweEP#J>n(T7*DJ?Yr2JW9jca?Kw zGGR*Q@B+0-6$5)87-crF>8eV(e*IS_k<)N-F0H&iGchq^iE<-#mMr2vQexll zYyau{+ROU3_OQOMy{SO^HUI~mPgbxhRk6PQEB2*mV?j4wk_o!eR+mlFBrjXlR56_q z!5RI1m-PapXJ~f;^Pu694Qw?h&vfv@W`P}Zi|AY2$suVB<8=#_% z4;Og)h8_ojlahKQSL_jR^JBrtHVE$=>rtzVwCGT=td2Ac)L$C5Aw`x)NR&LO8=+tY zwO2^{$75Ay;0t7^G3`_{5E|oqjmV2=cc$!AuE!qAU>K0jp#EAqOP~O(G^?{EGW=EO zDdy>;3pOVBas}S0!wgb`9I0*+HV^OaT zZ!BnPoqh%5cAAcKRTbc0;C)BbUsRUY(e_hEwwCl zHfK2TqR|=84IgF1Q;EE;N?cVp82{EwKUn+YtFRKXNw?gfN|)3d0Ay{gTp8OSeeAF*X-2cAAhtvOV{C0a zaH3F8bfFbI$#7^FK7>4UIH}drcg;}x_KoDZWEGF(na}|nS_P)LFYVb+#j8TmLNaHB z?(KzRxWG_>?1WC)sw`Z4RRi=TT8H+6Gctk5 z+Nyno&NPNNV7APi_Z2F+Cf9e@U(Rm&{i{kx`QH5_hp$mdgHvPoQcil2@1`yBFu!x<&i}wHn2|L4DvO?^;n{Bt(AT<@d zO(}1d7jwCQTT72$r>{@)3-6%=pPnwa4OplE7RfZ?xg)=0FPs*0UM%eF6b(vL&6Zna zqDrJR0*FS&^{#qWyMp(<-|H)v!j^fYoI(MwnL6F9Dx50uIW=AkqbGA5=z{4wd`aFY z0{73B4N)D6#6_wGRb2)0_dV?itD8>hl&m4F5a9Deg;~CUN_#{&k0Pv63OOPd+HvUb-vUA+9CX2o+D7OqQ5H$7xU6YV{a;xKGlAwl}37XiCuV}}ublj-eX>Mdw&Th(Z)uqNDP(?KhOmDC~_4nH6c5w z*vmr3a{WJOM_KPwi{_%07RpBCyMG8{5?BWcBhO zq4BmW2%~*$-LNsEM^bni-`eOeR=EGA|FJlDY^AGZ8opVKTFLHM-J$dFd&j37=%n26tg14Z>hEi)LRAZ)im%}V+n#k?pTk1~r-1u&G10>| zqtq%%y}3y@!$m$FGqWs>^J>FY@55v9+c-8p=_a;_)m=3=U}Z*Copuq%v$-3SjqHEr zY{$D&r|!h1z1whfzs|qrrtZ?gKj?ikJ&6-0UcjDcJu^NU}0F?_r6aKX|?bO4+KStq+Ys!k97*%WfU-^AO zyrJU6r|Q+K{rS(zP7Kt&@87(xwlFHwoBTbR%3r1NaGm>T9uIBMx?Vu&LJKL1^OPZg zqzL%b$}ZO93Nj>IlrOQ?t$y(m%~B*K0AHzXhMgH|G=#>x7zu6df)U%8;mG{(2LEXp zN1<=cP?z$rzPT96WvKHeSL_`|v|`Kn58zw47WDZgfS>GyPYeUKfaz*UM4H>0L&fv! zsY=)~dYGg}C=fq{s~De)vQe_nC(#f)6<2pp0+ znVuv*7MZ9mMR4iD8zp*t5mhSgBH<{xpl8!k@F+70syfl1r$3E6iA}N=|K2>kLYeS% zf$-0>z+OiebrPi5r@oE-jO8}!oe9Y9w|Tx=MN|2b9ce0QcU5>fhD+keTkK+}F|Tgee4AvU zr`M9HU?S{h>p+=zK2dL5MB zb)mbC>Mm38g;;u=wYSqqcN*QDMxoQlbsEV|V^*h8>ZDAeY!3KsOx=~_U8SE4?sz`y zJG7mjE=`RM(I(7}@Lf6l3+aD&>Po&G&AKO|Dq2{@JwoWhHuoY8>C)~d z=UIm84qg())~|PfJ+Vs_6?(({!3(6`IS7@f{CSH^R%|5T(HnC8e3RZ8TDjuga@pfSwtUE6W%;rHSID+NKTo=a)_eqtgQtX~A*%V)8$d-issa9Z zd6k0LdU(J6Gi!N$!=Q`vYsEVmb>+6w^Kck{?RY0s)=;7NW%zQNPuQe%QW89op|6k@ zG+mM?KdMlFML8-N$Il>@8F*XQ`A&uNo3eXXUcQs`h&6py$}08eP)dnxl68Nl7oB`k z)S&U&0a-`KKFAtqN^fv2`lXGD_0cd5{n<0*5^hT{oEug}#TgNj319G|^D8?QKEEng zTvg%A^jGo0m^x9nTOVE4;GbWg-Zl8Pynho@!^M7+$xtrseiqHerC z_N2cBFH9nt?o_tZxAc&3(7c)A)8t~PW-NghytUXmAhS9Fb2_=Kj3TnZ6Zl&ndkA8j zQoX~Fb8?~rOW2fu`M01j}g^x0D^)29LrleG_<&psdk`K`kq_y6Oldwm=y_;(}l3K@M{J~<$Z$u$a z(`V%3-Xd>IgSA(ElTj=enPIe$g=P_a4NYG+6BfflDoI~-HA9kR+EHpG2$_m%oeH)> zbRL-EU1ov;u-PW0(3wPjJONwH484#QvPPw^pT0&XnroxZK=$ynYM9d>7Rq0mXfqo4 z3*y-x5Be#!Q~$e_AGhOrpo^Gk2W@}iqZL>{GCx5TQm4seMW|mj3uSoD0#z~5!4@*I z8I&~?(>B+c_UB<*yXw>gZs)yAiRy|XJy>m{B7CqEXZ zaXk+$=wPEF5k7HG_ z13EkGgeZWrl_xieMW&V1-b_pNxO6WYSHOIa8!(F(u$NcaKAt@Fre31qm0VUav62G( zhpic*@+>lW=9u(Px-cW<;dkp=G^C3y8JM3l5qbJf1;F^7$sUIU zYkGXovs!!!z%yHWF(bK)dTzShPOtaTZa1uyZIJ!W?9BQi8?oeeWqy(#(4>hyn7&qv zE?VZ2b+k!BdbYA^OX{I)PosxkQ4Sq^%Xrq-9z1@f85F6P+1K+hH08qx%W0u`;`E%8 zmC~yAr>!XJh@e@&rmx{KdUN;+e`pc)&7uU$6E>QH!m6^cG~PUmVt$1M>f6oJUePAY zGWCitBHoZ5DkaI5OCtr3i^CF~Amc*~hK-8M5jhk-l1Vh_{$71&N_9aJc@<8x6^K_i ze3pZxn|zU;KF25R9Dnf&FAR|43WDVgGDlt*SpDe&hWDY2!DX^|`K^ts5nND3h!9>e zlRc)f1Advq$k8!LpiQN{+L&3UzLzHPVzLhk0~G-UZpNnyi@A<$3yG%01NOA?#h$Im z168*d=ULq<_$q+P3ZeE_(cU01)o3D@3>MlMyxYw?gtFL%cEQ2Z=z!7ediD>LJ^WM& z4bNwi*&<5dis~UgdfP4OMb&Q)E518;Wkuwj^`1!E2&WKt^={gkm7OO;-3h!NY><)})UmW@BvB-a zs~|tN)M?|B!9dHkkG1iNL&5Ha+Rt=D0Hd?Vc6!}nFW!>LWz*TNELvRaNjnIf6g}Y9 zEp&=Kq4%MnzuI`uCejJJqHZN(#Y`xC5mqG(km|H4bHMobrfmdiyor&|_9oHfE%2^x zn()97k&uAihl&GR^D9(?QN46Qb6Nr?+_ZaXxV{!(X*@qn9TLDQo z(hJNWY%gJ2HxjT4W=nR^L|C%B1nC5;GYMIBQB^fnO555SRj>ic=DRVE-6^{pS^+cI z4eTBQU~>vRHu6KsUZcA>4aM;ed}OAmQbrrdV>n4M~~ds5Kf^zw%AFlewm z$kkH=_u3Bl0LVbI+5n-WV8Y&?@@dVFSDEUyOLk8aM1ln(>-J!LEj(;@?F_vS#cT`s z;60??p6s+Qw=#%B0Mp$in zpc5Fbl*fe`CJL)#5^>p5Hr<(J%L&x+-BK!Ba9ZqcXaN^y7(0&pLpzo2MhH_EG)e(l z1hNbO#naqR#Pia#YGoF|OV$47rDp)(7v6U3d0dS|0 z5Sc*us%n}w^Yh}QWaQhEk5swUih=`ZJG>Z`sO$8O1wYFt-E*Iw5?T?A}$zw~U=oS4Km_H>rMFC4PtMoK^6X zRA(F5Y zY+z9+$@{s`pObKFNsP0j5E9dNNIzpiyQ{21_9GN!HRxdsj|j-teDL z@Y;d~NyHbh`hSF}uiA)=9~Z6!@@=g53M+0dF;9S=w3wXD^lB1*dA&+q8jP~hbNLg` zYUcm(^f^a)sM8PCXpY2lGv5X4C0%k4{qc#eouZRG9{$;`0&KFSZ@Z$W(!u-0viP!p ztUAFJGjvOvTuG?wAljO{m8W zj}vdQeQVAJvzRsbl#3i{l80)@NYGhpI62!pQJ}q{T7&{?T)@6*x|0mm)#Gq?=s*YS z-{qYFDrNG<*)}g) z!YAiL(ysLh?+qH}adA&hTLNW3DEL>kKC4`?QT3_Nbs@ak!d1PWqc}pXLS~><&4g>8jt3`1_KH%^4Xao{U?|dNec}%2zbWV1Ed`npEb8hvel7{_ps>> z;bPm=lSSSi4K~{sUbZLWS$v*QRRnXHP?g$w9X=n>SD&|M;x>X#2fgPwp!@J~M6|~y zy_7(HR1r~b+i8>HRsi3u6;8rN%KD#bcHHG-?L?FqMy^-6>j+;Pz^^O)VCW#d=5@41 z8GTizOoFo#?5%a&A9?&$n{U*7RBe2Q$M@RmuTrOvPwQ>xl~5mHy)Y^EISQfE)6P;g z4P#BQKAgX4y?!lJ$N*2jO5*RNoI;7_V#q;f5ke^uoL7D%SU@2eC#B>sZB^zS)t~E* znILNunLBX(W9GF4TlF@nZ>Xhv1m^h8My+4#1+TQpQfp1s`e(c)T|H}P;t@Os>Sxm6S%GduOU9COxrM3W<5?Ken*2rYZ zq&l9B(35oZ207XT%{$z}^v*eNXj|25^}#=7Jru^GT;|byI$3F)oHPRX58RAm=*QKVInV#w`YW&b~m`ZbP`62YZJ<}Y z94vd7o@bgk5J;%BDV2Mjex4-?vyurp;0~ql<2}XYDtPW}l7k3q^oXlPS75FdzeUq{ zR_~J5g#=)#fver9^7V%wlM8Zzgq?`NQK{T4d0&%*%M|MGo$X%@v^x<6B4Ea>rRz>47{y^j?$N;Q}2v+PM!J-^zZ^`4E@@t(q^_Nc6m z4_0F%S0AZc`TbCZFRS&+!TtK-2`3_k;tgmJT$MYr+4^KsE77-qAJ`i|^?0QOSa)AH z8gi;SGM%Jm?ZCIyaxM*~o5sgBuzhJ2TO+Fq!9%w{u zLKxP=7{*!xzvx1UF_#FfB}^d}jTXlFac-wLcSxLT$aOQjqS0Z!$x;l0lK;37bfc(X zSaXvO4!H)2>jiS{Ca$IA+DTmZk!u^O8FX(Vb#x8+Zvd{EnmE4; zg@X;UGlGmmKxV8Jk5$D2rEa3I_%Tjr>SL7eSag^}<(N+HD3#<0g+r8e2)SCYkWfzq zA^c7pW+YoZiCHCZkCOL#u@!wxOvgaXmzH8a8YLf(FXdVu;y*QxRXoNswNN`mY8*bI z!%+tp8+L1qJ_dR=zgimYtf_HaPaD1fBqFu=QwRU*qtQsRdwjGr(ui3zzI|#}E?sA8 z5lWI$j7Ab&;~=&1P+aSyN550~hORxu?^KExA6+X=!)kam*rvBWTCGhlel*yon_^7s z9QvJ!$w0q3ja<&7+|F+;L06nz8m0Xo#s00+nztmFivht9KzRYt+86w-1BjrtGlsDS z!Y@)dl_*4q+1`!~EP@ z9&Tt^IH0=X5u|$F5;eBZSi)ob(?@vhK^uMX2vr`=N9cS9oshe0Dds>3Kcaw*7mN1b zBvmsyQG&w2wx1Sox=~G|dDSE96VkAvkLWcO9R>3yDv|~2$@ev^=N?hB<4*L|Su>jM zp}37{e%T#1Yh4f}+FeuQ!l$rpL~nh=8qti*F}FU9X=Hfjv95kN&@ZBn)+JzFdRQxo z^&GgU-&>0x#yYO4fweSc^DQO4bk>bt$jd5(G^`q=YrXTZtUIu58P=1WRQDDT7OE| z?>J}H^$)3@I01dE?Ih<%kZVhE9YU^6#PtlhzI=#X50mQ!aotU>|A=e#VqQh8Ex?0k zte9otw_$BSAu&Am@`i_a#-RM5$MA=!+Z)!+NWGKD1ZZ$)-iO>zqB$e>M|13m`_btNooe?CqrTpJc{?|xKHl=&9 zxGpB#h2lDgT<3}Fw1qS?LCyy+QoLC&`ML0AQ`lY!`x>~2S+rh(FU3Z}{7<14c-RMg zEYKK8*h3aFjZs9~vCbpk(n9LX*o(KoM6foYKiwBa;*{9Vsfn#*PRbC zM{K>lP{s~?zqpXb&SeyG?t^OV-p*mIg$pqi^!cm!+$z*Ae9&88W`Wo6u6#Bfi_{J+ zWDB^~Sj|K+7DnN`;QK|;57tScUE`%Tiemo(eyvL$WKZj6@;gG(e{TWqBuW$F3_ zICys^o&?TmD4!;?sV|5-VS(&G))I>9gVHz^X;a<1*b2CDur?t~FQ;dHIUij~alJR6 z$CLGw2YGe3HsJKEsDxNW;jx~g^`+?0D2}_ADArIKvCHRk_yZ;U1LEGxE1$LFgVZ~& z5zO=j9;RynVa^lGY9I41V~T=V;bWd<%<+O*?qe1)CL);oe9Uc(*;g<(_?Rmhv$Gvnyl931$Z$vl(Ls3uYr9^Tm9^Y$F(KXTiM5m^Jq^<`p0F6k}cz%u*jSpD_yr zbGMJVi80p-=2{=~XU5DG%pZKrxr~`9m@|FMDU3NmFhw6TjWKnCiTju-jJX3b)}{|| z&F?JX>ilq{Ih-k&8XvO{W8S!rF}ux|c~aav_#rprkar7aBOmj{1BAIkFsmN$>zgsZ z6wE6=<|)Qx1+&!0%xBCb!QAa*Zeq+~g1Oem{FyO(2<8ty=3K@M5X_lA<`l-fcdyj9 zkD11p<${U(m?@08LogG4%vi=;CYYn7EzT47C@&;32Zq&3{%YDWCrXJk(|jlJFIRKqYM_-#(cU(6TwM_dM@om$Q(%@?^6%{Rw@&%^VTwCX;= zAtVYo4sn&n@8_u_Sx?TV^_sbT^QaW0Wt~nl^fn9Bs=L(!rnAWcp=|B|;bz6A^ie$e z;Q5pNIB)z-oE6fJc1pON7chsgGo`Yf%v&^Hn!TCRsl7xlhWY%8@`)`Gb(jMBu0&sQ zTFbF^t>yVeP}4sxDr+D&Qv484?*qb|jJs z`i}NGcwYm*M~=mJDq(lXJ57xam-f5R;+RBFYAAv|0VRy)Vbe~>x-#8q*b@fR?;8&G zhfK-J6U$-EL0-&!avIf~xdg-X4>b8>K(r}jQvN!)zr|d)vT*gQ&aEnO4^J*HC~kL?ubP=sxE+j zg*|u5OvAiZ#*_I|@*HQFgL3S{JBHU5bKdJH?^7iZ)XPFuUyEs{_Avb}q2HyrV<2wl zR&w7?zjrM5_~Wa{<8O}%wh;^t9Vno;B_~wO0De13^T)Tanv{$KJY!hyc{sFI2C~F&}Wlp51hBfFRzjb$d zNabrw+S_g=yI}JnwFl{6j6JxM$Ernv-j%ZBNDjB*@P!i*LX3&Es@uL$ zu4`t}s6g7=KP3B(?H=M*+l~_JmzrHieSOX&rAOm_n$!84niqoalKRb<5$fz0EG9~Vf56OD)FN%&~XLDG|+jXZ)-mIr6 zgn2R2wCIo2_j&yCP*0HrO z`l&Xa%>_Thw#RY2!)Z7hUV5rOvhT)_<~BdWygo@IVYf%r2s7UVB#f}_NV>QK{gPad z%EQznA)B_hV{;U#qeE8aYpuG5Vy}Qp-uig)l+c%ZLq}WNqDWHHIQ2JjYnjp`Rl8-obo+rz2&A~u9w^t z`%8%^Km3Tu!5-mW6oO{_Ov-)X(&KOh{N*ejqp&_k&EJw^9QB=;^)Y0z5Q#JZKt1V~6?M8~@S5gz;+)f>PINO@IbSeJrNB;r+xxd*m}_0pr1CKgK5sn=EC%&RnWE#(p}-K)1$)^$)oB!sD?`C!M8wF>u~@E#-a5(u|sm|4q@X z*XYb^1=AqN`W7hndX7@w!xY9Zt zerFZphFN!x@aaPzSF`GG&cXg>{_-5Z_8neptrd8JYR)@{xwhNSp|P{*uP4$fVqC>= zG(qc?Wh#F!EmK_n3!dL{{IZ^0CiBrUjZ>hq-n=ZMNjUFbrrJv#Hc*~|e`b8H*V0IX z#BP-TJd?u>NAqq_X(Pz2TfuL`*5!ViPgqVlHV4dQj-qZkub`*R zU0X{fmnlwSCcm-oeGGwr#?RnC!+5^GzkeqPj^B^L_jd4Y!uNyl{pdIS z{nj>=(j=AAhAO2xufcFBHFpGulJOt21pQgS?(;vM)T$2*Wh4aQ$@_Y)<( z0&Wm$4`@fiK~u#a4>T3)D_9pk2Bq#%J82H9nhf36;ZM=%K|0our--|=c6>b4>ZGqg z=js@2lc#vChR<&>vmQa=x?s(;o_s8rn@>qYU;t8}S;x_GL2E3>gP0eGV%|wHm*7m} z&|E{|yx3OsX{uieHSTF?ho_lyvZZdug=n(ALTM?j1yVP5ux_jg&mi4q`knbA{(eNW zSnrFRMlbojKz^|owHcho(MFWQ4qghJbNaOISQ=y?*~((y0j?>R)T^<_?@mHbNN zS0{dTUrp_Y)}Jo39w{19RvzGDT>iPlYzhI-lK z6dKRTt=~};>pTqU%`lwKbM%{}uuFyVyp`y8AN@{vR7!NyN-5D8<#Y5>@!6MR&t2)s zCZg8QSMoTpPF_j5+cuoLVH5}X6Ke{EwI;6AbGMw%^#{JA(cDkb+>L48yCg*OC5rPA z@DkQnT;fml5;K*zUl%H`yiQbRg{l03sNgxibq|HLZhu|R*%-oK{JNI2a}~`qnC3oV znhg|ZGScj1n#aFhma{is6DlvgMpRyYBt)g3IN7a`%3T!Jy7jd(Dt}Z|<}#H(hN;}a z{4ntQR)(o`ms9!bRiU!#Rie@nrs5KnGmy$-6xLe&Y8jP(C@OztDqDo93??c^A(h!o z;4hhHkA@=rzOYNqn$Lm?^yhziOrte-QL zQ*|oV)wG+w??tVaZh28?Ui%`^{B4-#%@k(=>;tW{D6Dn*i)A_6=LMlM@CBmM5~h+S zDyJcpFPsShFwLY!WTtlbt*S@dO z%m~+HC7&XiD;I`nZbUS9K$^7_);jE|veNFZsO-R0{v4(lO-TG1TEG(UeZL~{p?@ zmT7Jtph`I99iY_y2X;h6(ke3zFH7UVP}dn7*qHeg|$kH^%U-; z)B6*2nr({aIHvixFwKP&=b8CHb8n_OaB*4LEk$Jwogi49VJfE+l?#x{Q*_v1EnTGN zY!AZUyhzL0Rf~k?rA%{+FwMaf=P0B(i)p%x%5v7TP^iS{T*6v3KSbpXI*VHK08lxc zPgO=N)N^(w;Y$x{IZHh#G~*BQ`WL2o0mZ@ddFyBjYmIrZEN8naD%&xYgTqvsiAoHq zd`w4I);kNzs64hns4QH->)!+6^^d6RgjB9%Dwpb1tgGp4?DPd%`3j0=FVp;OnC8tC z2hZoN@k}!kpcy6nAf4upisqI~^XM?m7{!^6G~ea($rbaiLcU0Pq7B=4ljX zF4Fwu0iHh}D9hQh2ZYMv2YCGpQyD{4CLooon95~373-P%Xy0;;g#OlqjZ`FD4KgP&3u^VT#9oA(){K=qPhCMveM4KPpI5^ zA5l3dOl1O5IRUBso~g{$saUJ%WS(?~JbBHJe0j}5@Avml{1_w9*?gZmvG-)e@sGXu zX8!|x-a27EL2LD=D5X37zQC!p^$Pjka1YC|mXqslaV_|icMZ877T3k( zdPZF5kn0U`okp%t#WkH=8_Z)@oLpOpYZAG36W2I$4HnlJavdhF1Ig7Wu7Tv5EUqod zl@ymrE>~QuKA}1g*9vl-C$9gH>ke@(CRg@ecHK#?Q^j>XxqcL%CY;+jgXm&7%JTsQyWmv{1S_rpO`~^bo8gebaPfo)hx-_9q!{c`a zPQyFy;`7=!DMaPd@OKGkHryqreTPe&ZU2-Y+3`UH&4|K}7JP@`Q;a`C;fD+Uw}QWp z@naNzh~S?P{JV@Fq3{Q(^e>b237Rzuzn@B9@F~U*R`|VD`hvfX@%tL30m<-%+J6_!Q#@D*U!8eZgPH_?;B~M=E{6zsvaT6n-<6{$C`0g638V zzp+YR@F~V`uJ9YG^aXz%<2O-wL!~eHcNxEt!hdzAq<^^|uYbTkmviV71^(`G=}|*R zs(aPYp=wKk7ptj%ogy)AQ89)O3&dFa8`fGsDbe}t zpS_bxbfx6$d4aDB+~o>}dlNKo#L(tKMe81+wY`KoSYQ{2zEg#}Ny42g_^TLyyTboN z@Q(_9CF5^a_`eH&iz^ww4?*(=g}+MhErRc2{Iv>yxk_K~S26x-h5wUEU+^m#e}%&T zQKkP^NuQv3nZo~0r7!p{#$T-P=d1Jue-+~|QuuRK`hs7{_zM*NY?c01emwJfZn+;{ zRk^NfuVPxqT~)cRXAAz1S5>a-`?Yv5KG?NDg}O^ZeZ~HZIn)+clWUa<^|pi>c{Qii z!uUw1MWE8jG2qUjVFa`ls~KqCw!HW zb8<5e-sXM(VqSx8B#P$Z$aFSQOaaeg?o0XYH2f2oo|5@0Me(%*G^zh(n`R+AWXUW^ zNv-?cQ>J+MLPMKRR=lpc~b!jeMcDm@ynD;CrO^bc0Tz}Yt%e51^cHTm@9J@Ca?3dIV zPFTjg($~}i-HbEcVfg)6+YlTPqwXH*a!Fp!v z?=(`Zxs=N*IF~YSovN49eCHXZ7dL2|EYDEZUfZag?6D1{Yrgja_tKrVS+723y+UcM zk~D63LG=M??XYfHdy-5J0n;E?NhaUD;t8gX5^OO{*NocucGeFXh(^E$2CqyNHbub?=48*GJ-(>gzv~=R>H&0S@%$e_>?$eQ3 zi!{rCXw676dO?~kG}7FHKX3YB)$PTIU0c9dLnxM~2>7kSmxr#F6XXfsQ)AmF8oJDG z#@-9)Q1a?Vv*N(_)E@Xf8cT0somlS-K{ndJ_KNWIj|Zv z;483aS&wtiqx>sqSaqC3nm4mjcXWlqvZ)R(R(0^Pw1>IiV`)9>C=T!0B)NLGY``YT zZeD$FN3_n{jcXTS$(k#!HM?X*kNksOycN)T4Zp3lgh5z#C;24s)NeprH&A?~`}P;2 zP$v{FAlDJ#;!8V+!IyvU_3K?#PH*1DuScGrVpcbVwa$i592PzoZ5>54-@T8f1E7rp`gHa;_cv#2vw1J~ z*yo=-4g35Z)@v3E8akfxx z_w}G)k9$wb^64Pe*l1S);P)KOsVlv;?9bDU#-XOEIp3sSc4@O8)-dm&E6b4BC+2R_ZY9g95RSk zuBC$6O+wDw+soUwm3rP~5`OjGiqbiIQ@@8_>*KwtrB5cGC-)Bb#kj;>zBi{8rEp93 z)_dMj5@z1sYG&&jXVeZcjM|#2(v%(SIk=naGp6H>h8s7UV`3!3teZRs@1ga~p}u-e zghH8rA&9%G+r{Sw&u5MJeB}9Dd=mRyaFY0xa(Gj6O1cB)*!_|Ipd;p}-dQPsG#ft| zn?w7!BMzBO)J70QpUVJan05gvMK_+qJ=EOFM&GMvzz8yv^gDSg&PVH3k`JgE*u)h( z)l<6B)Wlh^g59};D*fh2Q*j{XZj{&3;rM&)p>w1!Rmre<-wvGG9Xm*BebZy`KS`?c zbZ;cO8;98PAW3hOJdzRZm^drii6IjZZh9hyp%)C{(032OE1L@Bmr&UL0ap?PdcATx!;|Rz zTVa~fb(e&nuY4zv{9AnA7xaL@bu`K|xDA7ATQ zYoD`wpV!{|K!l_6z%Oa~dbBWo66(?;#Ow4o%m&x_tNYnR%bz2g{9pcH$;geV7dSm7 zAiV^+fXdAx5AxZH1ZMh#EG?<_(WCYW+kfCY?6yJa#Tp3q?_r?kT0Z}KAZqPxjvH2vm;Gvi!bHcjU^6U5MurVy!d)_4woETDoo9XjF zJk)j}Y?iTz3H)jSaGoscpZe#5`Y2&WV&xk_)Xl)P){no5*e+i5UmO015UUgE`TBnF zH~o|Z2C`~}Y4VSE$FDp%?yVVwZw{R{ORp7w|hifWBGv=dH`(40>C7 z?Stu(E26*3f2AQn=E#z%{Sp(vFR<{WRPOF*;p(yTS)*-0hO$EML(&XoYl~YAwG2Ja zIf2rKa8Y&l>-18RMOFL^Y!}cGQeYgZr+=eVTUN{jJ#ho zVb8gZr&7f1p?hxC;;}QDc2rX?^U#pBcNNK}S(+^!6e%4m)16`JM8*@Dso({6?tcQU`kz4i6?t=NwaOHGH!C<7hOKyk zGr*V)IFfpB(9O-o^Nmnb{OeOA)l&g4$=KrCC7qP}w}e6@8y_qR*nPU|myl-bQm;?d zLr^UwG4CzTL`QjdKDS6PzPoh2yr`GDS5s)C9HR^Cm!Up*QiPI&7<*)AQBYj`6F;0^ zJp6HW2(WKnGFnHbZ*VQ)JGM0u9kE{j2;8EcgjKYKJr=-*h`!Ai5jn^;sk`yWyZi(v zhe>$S%-YT&Idq_h?|ydNpp*50{6VDFt}CH*detJ}&C$pY#^1e3&R$iAPpbMzNnf$L zb-)xcr91hO>8yqyU(8r_a4|_!A~r&)XBc~&-#O%buF_q4Qp!BaKC8}L!+6;IR z!RQv*_@~p?0=n3I-KW|HUg;NldQZ|x6M zL-f7g7*n-G)<$T-wgxO`@r;9R(J&yH;0>=~c&CZw zb3UMNMnJbzCGP{)*I&HpfU_XA-8VPK-E+uG)x+S7e7`{|g_B@yJ=?_UP@B-{{PLvtqi6}}y0l9(X_na{wyvV&txjG9bp5$^7DIOTTq zl3gb>G*KdQa1fRm>nQ*O{8^-a#;l;)lPbPw$$*)?TtKn3?o}A_OLd-`hS^ya6`8k3 z?yVkw1GsJ-+y6JT>crT(?Y#ZXUL`p~I-==`BD-=(SpN>_;`uL^c(LsJMbjmGuxQc- z;noA;{qqA~^sqe!05jsAwatBu65)CVG+!FSdoX|#DUvLAi%#n(D1(U+sW4|nfhBqP z>4ao)P+apKP|da^)&kr)N07d4xPDI;axfz+l(6F~R`f5h$;d}T4t$~4=goipiRk{t zJ%Fvm3ol#P2!T=kiC_KUWCy_p_{!WRpT}fPEns9pCnN9EfXE%`s4npBAzdI9yCN;47dmCRc+!FH2u{%l+X&T1 zV&CyKNo@Y>o^FcN<*$PvmL)EF?yfayvQ<}17jW1x4@M;^f(X)x+qQ!<-N0RcRIvV- z0pp4%_s8&|5KYRz?W1~=>d9x0)%joq=fVJxAi`iiV%t~Lli41>j2;t`ZdEPPV0m~C zUtvHJ!CLY~z3M#5!w3u?$;>shgTiVc5p;ZWt;KOYAJT3DU&UHsIbFp#*_rEZ>f5Px z9M@VgVMRnFOr2^5LqNROI20=;;&^u3stHrJ+pF|@W5Xb&wvksa$S`=FJrbq(P+Y*XDL9r#|>{-TjV578wzdNh)Sh_VqDnAlQAIH=AkZy5l@Ckgj z7=g5f-#lFx(S`rOaKvI{c58rvJ>vKG`O-vY)=y;bkRQ1&d`Mjm#A%=~i26SDfwI^= zwv$OeQ!tC0BE%VEj1*x90g(wlzAIUJ2b~lvcV+4M>%Rxa=*M#+LEuAfa30j)odlBD zIg!qOviL)v$MVV7v%9$It^65=h-kxdVIFi-2u8F1jr&=8l!D2xk>&kg38?s>e!f(w z@?k$_JR|2pC`=y12hi^Zgvj-s1)A)fHKj!B6km1by}>?A;1jyA;knElb6cX<+bPcm zTKW69Rh%aczP&cRB8x>*p1W_;0ngT#Sbs>9pv5`<>;?E0ugtjQk5M}FS}c!i-#sd( zJ)zOv<)^nE8djIevAcqUd5D!B_F+f3Q0S%w51vaQ>;~(2^6%+;h$#j-s-uzdn0&tS z2w=YAL6hW+QH&!Qm4BNCsy0iT3GkX?L*(%V%S%<}tp_x~F0fEq@GXo-?$g(hM_Z0+ z%Q@17*;3>;3!+R|l^NU%!<7VqBXe;8;!U9XJ+~;L{75CL4NpX0pJZabSnZ0$qCmjG zGyZQ;wFds$(G)K{vZ~w6w+-mxu6*o7+(%Ywv;C@rF!r*B`UQCSBp2pPR`tU5Z@bZp z-a_A7y1Eu*ynh1?Q{pY`j9a4n8*TvM!bqU-{R!g^*&a=~ zXzWw|BX%8ROMepa+I&^{M>PuRhU64+~WWlOcE@H+X@W`C{Sj z!PP&jcdBEhbS=tZ)|d_W59qK0H&gL*rhfFvf1LJBgWX~P)(k51!~SKL{R@spOL=+j z0R6Qc#wt1D2Q02wbN3(iFP(h*I*{d|AjA(+i#bY(P=uu6KeYajQX~d|v?*3+In5nq z6Z-2;@}3)hD=P5eE(3EyZ3ZJqOpm4n^K_Aj6oYD_PS4i29iMR4K&vF(Ca>ojk4<^WF}E zJ|+nANQy{@6=QY0JynMQ@E%O^KZn$b$XxiRa(2*JLmb za5D)~E(9pzJg@>%VPKp#b+{Bp9x37{EcHJ%%7D3IqF%l}V%QK{e=_V>pyH)?&Co6O z*c#Su4u8tVN6&Fe9kN}y(wpu2%l<*HY8E%p6yAyfBx%YRaWjUr;w%}%WiTS}B~2{a zN6?djcyt4O@b6bf>5qpey$N5Xs{ilkO6>5wl))#S2}=PGQ_bxTcO4+1t#UO>juN3LJ>0lIci!d?{%NOxpbOC{kGo z-4KcqVNwhD=c<1>Msaw8*}-!v0O3-Ou7CC~VYH_mvo}xq#yFWDfNS#l)ET0eHkF2E zpES$(zAZv7WMV*<@oX_SUksw16d(XV({)=Bcoqca#5<6`(6(@n=l+a2BhB^OOwYgFAhz z=9L_+>k8D>3W_PD=VZOU#{iNc;$Y@D(;gZ7*oi8-&I$Y4MSu2B{>OfcEX|xQ-Mlg- zFP((_ax-|jBdlW%Hvj}1|Bw{H77{oba?k&V zKj~~ZjW_`(FeG0rYBESA@IR|lt<~4T-hr0K>}oQa`>zP2c77nSpfOEr2Ev8YjjB&r zz+3-pSrOhDn**C;T9+__Phj-pJCTXX!<8`tFt;(UaUU{ZwW1WsI%39wV^j#mzUx}g zJJPduZMat~GPC-Tcy$qTrF)KtCZH1WUp8tz%j=zikmfx7&{tu5c(8t70Rv$Mv$}PY zcaLDYa8@a!P20-EsdKDO#$d@Xpi?U}UPtc~q!U;HZ1|?l3 zs7->tO`z&?Vd_}KUrMbu=lAwGTmHX%8;g<4tqmp&(ZS4RsZzAiumBXhGZ*u#2HN3E zW>t&uUeB)I8$;4~ul@T_%7OnyR()nebKvL`DCWx0oFjDr6d}#xMq^!Rdq}o^-v;~t zBbDv{kqYKMoy8m>6HWE#z45_#?3vr3xwkt*X2HPx-W=Ahq^n^3w!G@(tp|lbbTEc# z&Bk}leioz!SLsurxi3Nlzd7}Q^m&HU;Xfq87_g4H|BEL6b5w#d9%LGYdVvWfbE9)l zV~>be^KjI7y_x&Gqg)l>FZx_ybJAx>w1iMQ@?SfhNtwd|G>c<9Mrn~JsTh@HzA>;? z%uy;tB#aHy<-1)|Im{IESbe-LRcBr?kcd(=saiz9yAFZAA4zLhn?t_!MebA4z7^P9 zUZgA9Nmb7Z2s3vGV4_m0XZf$~)&su7R&gHMVLLUGRmuQby_JR8FfGbH>KlsBAblMx^YtJ=rc- z{nGWDT2W9Rq6)=ETlNjqv!K<_RZ~iAfbyiA7 zMx%#VA$}7kUp*px8uOopl+~qEGIx0vRoV9aCV}U93d^AN{;u#)m`&7yJ^6Cfk4ZPr z31=#Ig3y=S#tB;AhjnJ3u%3&#(%hTeU+tMZcC&r-=Ugr4!$6z|2*v^!ut0o@T5;iw zMWhTD2aoRr7{gnb6UpQ-9-w7VE*u{cTFk{IA_9m!&>S}+>7YTlg|IZ| zl9`akdZX+VpO&ZvU1qCJRcm>+4{rQxlQ)?YG634QS{f-XVIO{xN~)IAl(a_4E);8u z0oEj(gbG5X-+zo({OGGL&yni-d#&ot4O{e%FS(*_QB%dDdv|!H6lS4&qWRq#g$}MG z#!M_8f;h4G*Op_S?s%90$lu#}&Ir~Q{{GV^&k$(On|>M4-439+5*3JTAkI+~v|hX7 zB<5*Th3Pe~J5w32!bCgi?ZZ#}$^_p!NB3WVJfD)IZ<+KS<$15@pQ}aFfpMn~0L!28=FLAgMCei6I@ZDG&|nhtLH8zN=b=m+zH zRXW8VAaB0hcWPh<;XURc!6#OToA#GPJMFPz$5ZvZ>!Jl}zgnm#zKz*Ags+@W&zI3H zP#tmiS`wY&HC^2+z2m&&D7t4sa(`GGfp&x+FRpIUolvzGJ&gG=Ajbkto3r%u?|EH>^9XX@`SGwj)mlKn2H95Jaz9e4|3(OvIsOS^A>6?KFj zWbBl3<$7*>E}KkKQ}ZVM%4ir~)ia^23##hK^vJ`zBnc!Z-JJ+}=(j%%JM#)tyqDWn zD6Nk3v-zn(A3HEDn!BK~tsc7lE$-FD-L&Abe(B07WAmzk)FNFgnY3bF_*hV$<6pb; z?Z10!%0F_#*xCP%QSOFkh^+Zs*5~3>hs8;c7Okq0i;Jo7$OR{ozAN&U zMBy>byITUAPK%8QZy4|PsBhkCwmtjNu-}l~eWUO24Nkz$bHqIf67@;$A;?`WW3R7g zA*O1sFxfhW=F^#YV39yZg!TfK!R@ek+gH~jq8<~)Gvlm7s|8v&lfQS^qalrtnp^vo zzC5deE--r6p0})d+i^j8fBSYPRW63!8BNp(Ap%B_qNJ6}VWSg}acs>9}0U;@$q*6yGF447;*W+YZ3*rv2*17P8yVfJIjs zZrn&zQZP^VDqpfVdib1fcI5{qy8uZ(ly>%+5Kf}#xBI-u?V{JPsTgu7v1@#?wYdS|6 zr(luWV#7X1zTZ)UNwSrEF(_lSll`Y{(^1QO)3f0hyhL9ahuOcLbayzouzB&-bfgoR z>R1K;;oG2e`i(OdP>1IbzZ!qgI8#CsEs!KeRFa|ia>sarIN7qJh9MyeANSQG!z#Yx zB@g+9AUV#L)f^7}f~Hp%kD-oDN97=)!_}0!)~=>ZrV+xkJH|#{C*LOV0|pW7`0>mJ z5~DZ2oqy$YUQ!=1E@^r7FWf41w5pE)1_@F#)!r}NIZZeM;Zj(1$|THluccH14F|*7 z)nOyQ{Fso^H<2|Vn9d6wQdyoMIcal3)AMKAFUku}=a$?Qg=RDd@@;<&+t?C5SaXc4 zN{lPvM>uGIj`)dI4XKcJu}j{ufZ2DuYl8t_82x|kAlC@}cP9q#X|A~^S(+=OABF6T zIjv@`jzgOzU9ro*tU7_P-VR*|N{tK9ze#!g?Eh^M!}HExNp478n+rC@hT z(~#w_+lSDntEN}qX*)?qGIOekyr*MhJ5Q>9ASB#HQSpqVp|^nQ?erX`pESrbdIA2j zhA#y~auVbVo#S<`img`87>fg_&KEVw0dG;Su(c$fz4|-rcH&rf)2n+H!@fbag*935 z_k8OXC7P9g?P*U%9q2Yk#8pX1q}|-}T3ncW=i3_a7_yuJN035uM$0 zm5Hs?pF^DTX?oGz<>aPD>@98Do_>Y@eJD)*srtVUmE@*o|M$V6aQ7ejkF-|^g=Vo& zz-(1)qTW@%`*qjEV2~VukM{kE>H~Svt`g?{mDA_XHqU^WeW6{;Qiq4COg zG(3UNTavI$UHBwZarz}taADL3y%1?JppIK%?*=P-;$Fd1%#Uj3XQB&#?g$LSVZ}fo zYbAp>PG2k1I=G!JTsk@!u=)%PmWP6ln(MBU8fP)E>2BzDRdFrp`tOt|t*Xr+%oSf{13 zBRK)6f2xoBu%}=J{E~nBkEwP~x)y;74;r&rz3;ujhsc3pr4a;dxCH@p=4?>o_zJS~XnGZrw0E17Qs3>!Cd(QTA6>cko&j}pNj(XwrUSAW%a zcyA2}z?1xv@3$j4JYRyXI(kich%S|hO)+=^0&DQ5U(FT&R|%oY;(bVlB?4`Hf5ECT zjBzr%S2CRAJsqxNGk^?|i}X1I+mlzqPFK5BUS;?L5kp1zi-k@_FYWYTLbN(U61UkI`^;V@3^?A4cy&l2xH4)QqbS2k)jY3(Z3*1Cr7$g)d=Ks~!F`!n%CN;NoZ_TP=?-I27x z_3&6n$%m`_XQ3Ym?suL!XwZ--&da_4jQ`zA7RYv*aCZG=%9gv47-l(OG4|bUWL&m^ zax2x|U0SBKyXBd!qicdwJh#W|V`)nXz(efJxsr;?;03rfiFL&G$3qP^f@TWZCnu=e+SGA3f}Z!c zN92pSu)S^0=}H3ixeBx=r(_!+cGmJ{3kifWT?2e81`C^?Lq`T$tsW+E0|bJ*?;`$d zTT#3WI2$E*6g;*&lx?$9!ld4F;saE1Q1v8OJ+REBS*OLbSfu@oX)Ky`*=$|D4LSKxYbO4$Dol}xJ2QWd_fq!v&T^S_NLvLXN}VSm3?sC zjdO4B0hys;brGms)JzeZmBRIR zRO$Z7&f~V=2`K_s=3rpYpuxGx$?7bS5Ann6n0RW1ElaVwVG;DnMr#Kn)OaXcbdHX0 zCUeg~PUJA*s%_wayf5&hIX!-sRk>kS)0akJuMF}1pV_#mrs(D7yv-F_t#t15CI*EZ z$LQs`Op*!h*DJ|mw%LZdTSC^azB(;LMWnnPMkS`l8^Qvel+P>)g>UkCTGAd8dhyc% z#7zfsI1%x-?n_ihx~GSOl9oNqP4e%X!Fh9aZ-yquwWgIcN5{LcjOyOuQ_dLc5}m-& z{V3^aRuyO8$yR=K1<3gd4BREj2E{>b4{-KdAAgzXNI8dntb0Cw^7^us9qAGeo#USo z-du?f_Q_w(+4Zselk;3{^1*_-e)?xbN%=K(d~m^TV@9z4#EFGUQ1SyQo)>v*@V)3X z{B;_!O^MH~3mP45V`J*w$Qd{kXT9z6q!dgv+%UrlH?A=YH8*kQ!HBhNf5M#!WR!6| zOf~O{xFUFfKVxs=Fa&6&YshI-mPs5xZS-P$SU3DWj}cbn-8XQ2Yx!T|o%Zhv- zzGd(bd3oQrX>AI9vM}5Rk^J1o_NIJDys51n(eWY-hExohRL6aA4jJmb?rsFtxW>S& zv22q_@s1+%R%BQat>*{%<_l*|tMbh>Rm8@pI4|r>tB4m_^f-F)RnD!Qn{fj2o4+W? z*0tLN2?GM4DMA#?P<<&VO91W6zWl$PGDu8fmrG0(hRmfrb?x;Rb4ORiz<_UTLu#4n z8~evET^lAp4{$PzH7e%z6I6Z!-j*)yqwqQ^t{WK*VhgUM9)yT`riLN9Jmxvt!Jdei z3Oq%~_FTG~uA59LM9F)wmTocSrVf|r?6?ru_DO|Z#n#b%i*LTr-FM|bi1Ujye)_|b zAskv1$J$_3sq{jQPyok|D(xpTcV%aMBNZZdqt1EreK)CGkq z25Y<(pMpq@RgQnmeHYwJnzWFoOi~ZjR5ke$g!Rpt)kA=YCMK3kt)!sAKwV5aRQshv zp_h2jvueWBO0D+}cgzN^$IO2e9Djq3-v*r{6m^lu?@`?M-GMp}x_TlPRU37;yC<8j zGe7c#5L#vJZ-P~i7$4uva(8jC(e(`I%8t|h!Im7P5%Lj#YG;?yXcEqDB%x(Qm;KJq z5E##Mu>*>$cf2$z{l-xgFiEOHWn6u($}IdVHYv0ObB_W4Qxphf^LV3yP76Mjgib3h z-aSKAa1nL>n~LqSuD5E-$Ht8)nYfIKAc%>JoFbx=ZfmgBRaZayO~Tw4Pe0H5Nlo3E zg}=s|bPPIXKR*Ff^%_szU{d80M6~t(@L##RlqiSH4EI+> z93@PZCj-dhcbs>rE??Z)HsGHsDLa8sJCj57G5oBkq; zVbeM;-)(G*Whw9PY@lerlr2W3EAp8O^CRl%2|oH|pOUTO8lmj?VnQ4=v0${eE1%O2 z+N1_D+2=rxEaHcPV(Rx%WFKgPSw14ZIjHvw^FxPKS|a*>zX;fhq-y2t+Y2T&Hmx>) z3Ivlz%;~^CW1!z(d_rc`hVg9E`^|ZW%CuhMj@xc*`|=nis}!d5s{aF<1t0p)W~iNcF8$%cNNP zLk?$2)4nm;n{ZFf44!_H5l_IF4ACnJ%zS!-0bsU|-z^oD3w-;7&_Jh| z)i2yYzm>i&yo3cOlhan4=Qal+J=k%QUwJ!td6m9V_5svviM!Y$7P5b#`}n1{Fz`Tt zV`i{92L;GJ%e^Nmw|iW>bvm7#8{4;KvLoP}DuAanz611u1l;j%Lb0edj4tAfGmKjk zUydowkbx%YuUIA|_HD{4<1}Rch=NH7?FgsFw^I9Cu4xt;e`A(&=60q}^2IlglrVyw zq}^yo2cG3|RZhEee}Xw|aa~I7uNX!9)u^e_1ti;xy^Me^@1>V6=T6Tq=Hzl2(+#hK z{9@Jpzwi4A_eD$gAMm#mj}{&RPA^#VN|(D|+xc2Er%z6BO^9FBeE6Nxtu-lNHq7?n zi*&cq1AUR-9L*Bm1P$WLzNp!r(tc0*?UKh*Ce9CY$sN@M-VXDYtf+;rcHjuwig9h9 zybscom0zJ|LuFzoYKNRAEuw?fym>RxJ5wzh&bFvEwe5G1S)=Rh!yx@#KK3bWXxDWH zs!dfmqYP@PR2Fr-Go+7vb7wdUEcK4kmn^;hnz)m}Mt{+k^s6^m%qKLF7n?%oE44;0Lm-*m86m6aewc3{0i5UBsG}L(G?77|ueq>g+s3VWNy1&K_w7>mJ z&{@GnhdiJrTq|23xYi6g>m=tBN`Q`Hbj!^< zl$e{ruwZ}|k7!QdGS!gn=t+%#St++oL%hkG0Dq$`pC(P?t;Q92%(>T#?eaUDCFRAE z@2@)QOtKEE?L_C>@P!bR(-ad`$HBNmHCw863MOIFBFSUrJW(&uxZ971Y@w%VHx^w0 zV_8GPJJ9gjT%xV)+BFM$c$8SCZnpjTenPcw=1i1Ixd5bibif!KwKL*q-sN?k zy&BW=q6=*uXnfpKc#!rA@UM4`Mxo8*cQj1jk*w20Sp% z{+$8x>(?>5)|D%Qq1!hHwcrB%Ey5spj4O1JR;k?U?+_vesa>CF$rw^7PzjCHd#D-Y zD_fx|DG#AeN$vyaij2nEw0~Tco8dX8 z`=D|PtxBaSqXNq}=wMq)(<_;9aQ-1QX0So}FLW&!V0}n}{4c z#V;r_70uZ5_&!w*knr<5UjnJR7zLo5vUnr?JFEK5`RO8h5z{u8nF zJTqj=^Z_R|c(v{U{JA-uKD~v1Et@UkOd`$?Saf}uIVnG2q{XR!m|$$yj3oK^GKu?7OtzkYzn1l=kvLpgeK_-5f9N*5J;l6kG4tltwM3gAZ@mEF z#wXPtLo#z&T%#1u(3#tMmmcW@#^Jt!{!wB(mnRq{~OlCw(;v$KF{s z`l)a7Z7#$IullA^3px(X+JF`#l22Y!yZgT=S|$BtS3OE}{O9b0ljCh^@I&DxlImwj z9aYjI%hJeY(DU_EM$D`Jor+o8`1^#1=uQ3EJAwYqS&q2ulea=ecRvKN3`fkyV*)E8}zu+cYe0JmUf7{ohD+z5ifU*5V-3o zZH`|4i{8(Z`(T25^|JHCtD|AxYkd~QUO-mAllzFxUDITS^8D&(R9p#Pd3HREXEwj( z;K>b{u9Y3o2L0l>7|rr)c)#cG`BmH_y9q-_{0OkMv|082jZ^~NK!1S6<#v5mYZcV! zLfqp?B8BeI<_s&;xV>of(%V>Tg)r-9p4Y*_r^l*Jyx!!%u;7{AQ%7W!k`bV-;=Eq?JzH2VXt^Zh7o1DP5##E_y_8C?-*^ z8?^sCNVwjqtHNmQi)X_sg?Lr&T{b(cX&_`8_++ zwml|jSEecT?}Pb2PPe?%PN@ZP;6d6H{_CYUFV7LvgGq^M`o~`6l+le>_X_+1MEhxG z))i6UGD63{61o@b5GDL^qn#zSS|fW9ISL)mp)5gkeW+wlBA_doj@ciFO1xO%BV1p??y4R-BU1f{NG^JpHFw zWd(Y7d}Gfz+PcgV*bPN2o|jLCLW-1MI&$0P1xfs+n&o2GU4Hg9F}6e9&O(X?Ue-@C zZB9DfzOwEn0fc>x@G}S$W&-qnSW^4gVGA+$@Wl|cWk2xxXstPRY8vvdOZ=8wI~P?k z)N=gW`n0xpiZbhMFNNs!vA9NA`K$0M+kdW6!Jwj5oxK~uJ1L|oYc0q5(Ce}bpWUy> zzPq-9nqn#!(~}1$6IPo!%5Q#WKd)$lJlJne+Kh#tM@+vnSec!jcX_Jt#Ef)=(oeI7 zelpOG>ADJPrBc+YbdZ&k6OKCt4J2CJBT8^guf>t0pTBziu?%zGoCLzrjo2fPB~2j@ zZ$^Lgkv&wfJ@3a!oyQyz-GNh{1*HYi@j_>`09GUKr7w3PNdV7xCOQFsytGB_PqLs2 zJvt2sApxEZ9!3l*c%K=}k&x&QPk|c8%(~Ho)UR9(M1tS>(QG7@;J_mOQqTBNchMuL zW9g=PKO-cA#BT|om|wp)>k2bcx;UJ?eVS)HWb(2!tMLwm_%gFn?7Q40)`NO?rkuU9 zJ!a`274n(^z0Ao34e=IS_5ERWpUd(i`0-(3!3SA)1-@^a?dJ}JTyj@)joh4OiDo-X zCoTV~pH^&pmCi6Go62&UQ)O2IqDPWm!6jDM{I(U_z|G%Hii24^qP+N8Msjku47rdb zEy5JC;i(Tw`$b^bRzQZ*5r*1`Q!vd%=Rsd|8Vl%dA?~W`eu6r*PVReKQC!~HrmJvU z^p-!u`d1_M*|vP8cE_V_)}KRbJ^!;Z^I+M#tX*rrX*=4{T+baUp1C_3J#6M%iaib{N%9UEOKTH~PR-D=O6j#~LEnY~(mrV7f z4FYv7OSzhzWRuErXuy}$uqcK(U|e9>;r@rC44I+G3tCK`%AB5~(hKU5vaX!|D6xTh zx+)2Ch|LCZwVW12Z&(cm5?*E9Zr{*T%>*2^xE4KV8<@!j$c|%0ZhKPMfw3)E`(8q7|zA=t&^$6(?(2Zcve;h8ttj_g{&G-BpTZ}I=t1Q+&K(lDM>PrO&$uZHc|FOCGa{nzSD%^h)ugtH z5wK2Ixgb?+OtJ_TaP(tGM5OcVM8V7V>yCvK)&!8WxJ*cyrpNg=AqvYOK`Z4ufUS>j|3qIEShEf>d*XVrvQF(m9TCS{+;ktmPCM9Mg zXyiiVjm+2r0pE=0FcHH}|83YxbcyF_;NKdNw|@r)HVN=885g6;uB5Jc9B)s&Y6PfD z{?OgcG!YCf;Po}C7iP(Q6t(W|0?Wm8iz}w4s!|ork;ZK&eeTyFN&e|MP)0p1v+;C} zDD4Dv@WYEsCpzOMxu1N7rZpvK_?#{Z@=4WFfXi94G*PNzz}hU7ocQ_-!K6E*nh}tZ;H)DOn} z`ai7T&pE}1Bs4zN?SPEfD8PBN);nNeA?PB6O{~Uyh2Ab3l6CP=d%KNg-j7n;j50Sq zr8?$kXo>ukUP+)unyK)U7ZRMs_cHbrE6cL-9`1JR)#$1>ev{e??h(t99XAQ|?L`Ty z$}V3{yj~4hMn;Sq4Y0RF=s;J_tgoHXxIUSrm140T=McZV{Hwf?YW*TssGQ>Se=inA zBd!zY`Z(A-PxG=jZ6ofm4=M<5nax!SI-9$Y zkJ+sM+@_J$2ua)fUG*Cf%ap1HTPi&Z^g5=VIsH-&VK|vMdXHcE%z6`DW9AEChTlp} z8TfwhDBHQt_X;2~Y#g`(d>&z*-8j^~Plp1lGT8mZ_o??}9D!6-uXQr8t?h@FYXd*Z z3ew~-bC8Bf#p1Zl6@NuBDd-?Gb%yewZ@m2fGl0$yn_E4oTl~i zDmaDvQJ0-&U+eQO(BntH%3c#Sea&zFVB9OV$&Op!o0u{H2$tw~=oDEa-Pao}ZUXSqWp*_pdElKsjGty9nQO_iDt*Bw(C|7MEOFIEh&%Y4`7v6Q5(H65Z8fT}3q*;Jc= zjCRzH(F@8i`)9HqJ=2vt@0#g9VVydjTswH?-ukXQe&#}j@$&LO33MXUo=vZD#s86d zdbT4SX0jD@5!F8Pl<*vkTR~vCqs?KY)qMFU{o8e^Pp@{gfTGD<+s6PDmc70;$Okbk z#z_kt8q6j=z<)4isZrf6`^EQt@Z8iX|1FLO&J=TBZw=GFH`~N$`iZM>N^NF@3y$34 zi}^BIFUuOkpjq(e%?UDg*LKWfZTAtiG*8m2gcgHiHZSB8JM zzY|lfjc9xcljgZ|N&Kyc=eG*U?Osi3ht=pUTm@D0%L%l&Kc`J7lRr>~T|Vu}gdM3Y zLayTK-BorLc+csHt*2GPI=IroZsqCjts%_X5-tiJgH|ecUS#VC!(mIY=Ur`PyS*@eK;LTjul92}!-*tZFLM>7ivHk~vNAP@2Kr zAXV&DtI$|-S=bj>zV^tuGJXHa@%dEy8=DvYIG(ARm?Jg0)i1g{HGEQNq`C5xLqP}C zJ&I487nD)Ik>8Rl+X8l}9do+YlD`JVmr6A1hLDI;lY^h}s)A5JzZ~;axN=HsY3rCc_7u5SZ`|y=$%dy>YymJ~P9k|2fL9GpI*^NS1$v7x%=2%b&7Y=YRQnJD>+ zY7mEH%7w|`v&MqfNU|CpO~E8Ns`dGkVo$FrF5PJHpSxOcM`u=q3gf}Kzv_~ioq}HU zL=FnYie5Tt7}fiveeW2k@1US3TT(2}%qcBkSyi0riU{tPW7V49lGI-zQ*3Le>d)@L zRu(N~@&T562zu4(@k-0)u;{weNif=5$3@mwy|8l7!L5G(+c4HV1b*j;R{-k$vBlX> zK6?K?drVwnjCo(8+F3KS1;1MmV)l*!*Kn>#>tGSH@$*76ZNsc)!Yq}bTU-wVk>*@6 zBTHkFiRqV==y$FXIZFjZZgi4@Tow|g4x5z`m+$H1=i-PAxI6g}+pKVlj$h>R^1dEAh z9VoaeMk=!Re9X3e7NN-r5G^%0Ss^ug+aA}om*%o2&iIx8w^@&mkg`GJ?iPL-Lg(nw zenVK1*Jk>I$Ur--cSVeWFH6#{d_(X%P9 z5wlqjwMr(r@0%;L3mpmk+3M=hGH@3f)!fttAvHI+ z|8*$GbU;`QC3UE`b>j0Gpz_p(mBSSSI8+wk&$t67J&j7=azRbtJXdO(*t99;gIdVm zCwRQUxdcPgUDAAVYjEQNYuzN9_|re8QJZZ_<%mykM1368PYqRnp2|`6L87UuCwQdW zl^U3Fh=w|m##-kT_>1|2Sk?M;nvDLk=CKp`KAg^aPp?mdZ9F-ha-5RRJ`b-i)*)5a+eoC6H5t29M@+pn#X@*2A~^S`p2 zq@rKtwNCvTdvLCKjU7FxHIZ}+yR6>>`!3U(UA6#zoNG-V%Cu&AjhR0F5A)VS@Ou*c z9=aHQf9c%>=e@B9Yw#OF`g!RL;!{;^K;L;1SabiT3e<}u%qrR{JI2=yHP*RK#Iquk zla54JXY#V7udtBDX0^sZbuFo&S87ot)+$F zX+GW74x12X%(y|t^1TmDQU4O`C+|a**zGjKP6E@kq(=8X z>;uoOcgR}DEfS`;z~`;7xJhD-h0)#m^;<~q?b=eqD?TN@;0fJFF6G#72>c#Uw;hN% z?-rI{>w!FDA@~#ZyrL_oa~M#~e~0S1)gYSb*~~y?=KF)V1_=7qD@QnoACTX6##GOL z@cgk5z58RzeI!ZXDCe(t4s5nP=?Xl_0^7HTv5vrI?g`4-uQCK{0qpp0#=aXs*c`z=1=dHf zgTTJtCH5S!dcigU%iATb=K3{UKSKpR0;p_jh?3P<^LQo$)#(>20DlwLJC`+O(Uo>t06s ztM*a~Q{m>oZ3%bF9&)ST_Jn(KH*5{Kqv1xweQy`JwQw`we)%rBE8&iVdjs74JE7e^ ze2q)kW+TJF0;danP2jfzd%VuDP~akge-?PfCWcu8|5xC8fu9TP{076j1^!Opy81h9^R4FI<1UB=RZO%*H-Sb|_3fPK7^v8#bC z5iAl|U%?u42s`nPtRDhfEZ6~HIfCs3rUcsv>;=~AatdZ`4o<=7rSNMKuIqs<{gAQ6 zInc_g;27!HP4KHY#u~H)wEGbP^U9$<>n6?K=2N?JWEN@7<#ZP+i*8GvS>maVQYxzM zV>2)C`*4TeUj)wwL8<%H4cQQbJqhj(4{?{Z}= zt-FJ)zBsr&;o8W>I=v^?7kGg5u{^vYc=DB%XB7%PH$P4)Q zXaCeZ%hKqR$LV7XQw3i@QziP{F0UDYQwv@Gobd$)@r6*6CVI+z#k97bVEi-ew)kqd zdqVT!Y>DJgNqGxP%3P%sGu|GL|BhH;9Yvw3WMn2wl(6a9IOGtEjbLC?A16shb@?Rw zh5590M$&&gU!<=bUx+T&lk>%@)A#4|czr)8yk`(SoFtc<56Lxq&sMV2?kaT~x;Ny- z6f@)f@f5FUrAo>K{W_gflUmWmXa3LW{guCg#=86&hM9o+^a$7%lGdEO=B<_k6jE1md(t0_kbW})^ZaI|ltjlv zN{XsHRh5~3pSzOw+1)2BvqIu<-J(igaCSMMH)7JFzU<-B<$=d22T(!%@w zA3C6ny8+emmbKw5hp!}5*M%K^vE|TtA*XdWpvt8jo1%Uz)VBb2(+KS2F*mGLK9>-k z7ZD8J(KdV$(-#4%AEIil7XjG1-zxt9Uc|hU-EZve#Z2wJSf~>Tdt0b`1%6`r!V3RP zsGXi*C&mlR#IuWVEIaz=LNnf@O6Q2N!$y)q3%U1FWepbiKKGl5|sV6 z%OJ~POPKnYz&8c{i$f)Fs2+c0YN5bI0{;xCx^bvWmooKsK-K5cT5DGz^u9po-2{@n znol9rDugrIJO6I%7i|Ky5pEX>7jjQwYiOMW8@2HcPHMj@U-nB1un#Bws1^J^7VO7+ zE^-#hx8JA+%AI=5-A-_Z_7c3$QtxxJE+R<(DB9=b^)$#rvm!+|mBHm2*oW4Js7{W_a5(>`zP$n8_$?VT9*6Z{K6 zlVkEQcado`m1>@0D&(bUo6S)**5R(GqJ<%Pqnq|MoxTgd4bfQPuQ<=K!UNfLG}+Oc zvS(#;Uob>d)ENxny?4v+Xw>Eh zZ9sad=R&2TKSH}3=GWiegM+k`A5zgfEuX)M4}I^ZZ<;Sjj{OERyi?$KKzcJs*WZKj zL9e<;)~EDJ`T~x89(xmEX$5`O<+Z_;w{@VaTB4~uxV31l2dMt^1WFg}nA@-H(yBca zM#Y%$^1z;lULJK94#rF2G|CpZDF5!9zn%bWqRZN`nAwW*7!BO1at&sTk3x4j;?jBe z+s`2B7ZAU}#i=y_TQ1mYV0D761U3!s!!8KZ%r7qM#PbV4b>#Be;OQXzOOeXdvlaL5 zNv3Dt5B@fC-_#9bEbG}ZjwuBFs_F`8YCQy4(G{Y%cV|;BuzT#|!k&sh`|S6#9OD8{ zssA>cOY@e%-2yM|&+vAE_X>O-&^j5vMyM|fd_&;dRwz3Ey|7hC8z~#eA)XfacR=02 zO)_?kl@`|jhMP#X^Z$n=cN%^_y17nH5=I*Cb2qnceZp<+cw6^89bpQfg=4SUsdu}{ zz}K7HL2bB!eXV;1-2olC&dp7X{|9?bNGYzL&ioNA^uC~G`flQ2&p20U$$jp^z>Rgf zYCQ8u5cA6Mp?k{up7G$*NmSj6OKSnd6iA)YZkIt%`5Jp7PZ^+FvEv=$Y_0Ip13xIHhoZ zanM>P`A0^Res)EN*ual8b*9$0?Yi2)%(~!u3Ke}lthE*Fe}v*tyU-dNUoqP(raeSk8kbfWCQo2HsYNM9 ztuw8JibAI|B9!JQf<7{Vq;-_sj12!I)o3^}WzWvAQ+baAi)d<@*)m2kPlJgE%B90Z zpY>W1N$n14kNPUmsm)zEkpGkN>U^f5hs%5%8j=-$#my1|Rw; z^#}FCbv!=o1LnDwvF+ofC996eh1$CP%h0yIaiWYjO;I`q<)Iz3Ct^ah+0CG%!oTUAgGxw3-f-Krhrts>izPf2M&+vqCt z&-IvARatRHztIyaV5b<@Y5Y?LPMvd%> zb1Y%n;f=3=b=UI7I^th}5T25@qdB&Hc;cm6a&$vhppBqbMgwB~~t-gQ(B!yO&(gAoN%D z!6d_jav4nBVH~5e27rc==#8eo{-S#sg4CA}rBGC=($WWUWPR_Y2+Rf8|E<^jKu z)seqQ{9nyt7&|L2WJP0vQ1=S_tH3d{Le80A9;5SWJc%%0 zwnQ`6b5F8+CYF23Ow*$|+JQeB8uL*SHDQE^pz*=WFb&v*KQS{-HG+l3$8^ z7pjMDJ5SB_N|9Y#<7&J~grZ zlZ?VuhbSF6>$b2D`Nj1kcV~HX{l8Z#Uk1(%+YruH2gFHy1vsJA!-?jT_a54V+tF}O zl?&A|koG5NbW+FJ|39Q%d3@AGmQNLGKxL3&7=HL-}iof zkVA0(==%O%RlTbE)%ogG{a%-n+pmONKb{xCO@z;Ia`iFHH&gNaEuQD%`3Rnu;rSq* zH{tm!Jb#Ag&r5ON3NHNh0fZu7s=LdlLVs9}T~>lfMQQCEH3k@Ne5g-Q02Jh6lJD$-X?Z)~9j3hlcILiKcJZ zVI2zkP3oJO=(j7=tbV%(z4Qo;AAG$s2z2)}i{3LBazueece>Z&jHM8LvzPB(&P}Cw zj#TJH%K3(@ic75s*{oeSvSw0^a#qFti5Ft4bD=6utG2gsx8-<@0}#~A*`dknvN z{T`$u-}bSkWb??+YJwH27h`)!nl8vxzPz+3>kgXnR2@u2UuGW1EuO-nD}o#j;h<18 zZxX%3pmMpR{#_yI=!}2QWa#Zp$B7EoDfOT}4(JmdR=p%r4Uarq|vUZyo zI7L+NIfyPOg4CrCdLoORnFnr{Zt%2RMjxH(k!jJNiX=~K_xnEs`$8i4?d^;if{zNm zBlx3WuO!A?pxTrTxnn-4^U=}GVm{X-@I5H0JubMIL%k+dKbd&ZPA|zxv6CvS@7(D| z*^MF6@XQq6*-{2Ri+WUiR|&2Y{0C4!hIIE&3?>wa{y}1#5RAHmvAy6Gf>!}m!9;4O zv z!WWsI8ZgFs!#74-?~*ne^Ymzx^IeJGGQU+GwQ!VhYd1>NdsJA7t{)XFQI}Da_DfDH z*KXERAo?{30lv;s6Y?B| zC^v^cEnF`MRslm3=pFsdKy7~X5~bE=S#?yC#r;82m?=10@JXN^58X(fBdjjQI6`%i z6>Oa;!q;+ox--(58=lUrU^)?V|6{huxj#w`9v-aWWUi$}!%_BBrn)nA=mFICAIvXm zc9fn0t$&}fyzBIWS~!+=w4KdJpgYB*;kSAm$4Dbech2MecOp^HW%tXIn<8QV#Os`8 zCO9?SaEAS>uTFw*Hu*yD-3N5$INqa%xVysN7Qs#X z3z=HO)Kj2X>r&1k4{=BlQ^kJECPyJXx%61}A4e45IXRw#J71IWK4yM%dh~B|MN3df zIs)q1@II9j;Vr%gEng3OO$z$soaX#`V{>ktGllVLFHW2e__=knbI`i{{{SduIn5oa z$y5+jwmOl^F1_bXznpfca;if5o0y@&3^-RE4GuffsikyWDnG+CG47H1aTm_R3v!hH z>|UP=F7Lg@$nq}VgHV`C8pAn1Pn^yS^*K#I>To*u+(kHH&VYnsizMwEW>|NQ{sKDo0djZY{J;AH zT!J}fu7E{HdKF!Zu%~9pxzqjhMkF{!>F%?AVU{1AdbF#VR%)p$QY&Rra3Q^(u5b}0 zS?UL^ps$n0B{3EpU$;5iO4J+GEw0fzH&ICb)m5Jwa%KU)m>Pf)^vVj#Qhw&~z~6qS(p~HyZ9X zNdC{jwOcz~pOaox#ZDlJJ45Xr!aBLyessDr$Es3cI!##OYlzS>oVc|1gJM9|`qJVexR>{B|z zvsAb{!EZlyEX&~f;SPe^VWjL!eG~a?gwG{IHJWv6M2+IqFr$V2mXW;IW}ds(>JrIp z=?p~XOX@}9oV|bu^g>mgLHh^}?beGW!Z*#5(vpT`*{v;#A;P_0xXaLohTlytwV9D9 zU{}!@@lW&m{%q{ZKOt#A4I3dkYEXeO!Iu8tEcA=@W6)>DNN?#eT=rUOJ{W#8qJqEH zoZ{ElXUhqwonq^vY|-7T4r3r!{3e%Wu_1yF3BE1(onVhV#=e4+1z#3y1nMs*&^XH1&aSBi{;MFW3X913|8`#Ui&+-~F1s z(=6R{Ao>#Fi%iebUtcA@e-NB$g$8f`O&-A^g@X4BJ_N)GRgIK;W+>b_2Is@WUaqjt zUdc!2EDXD`KxZ9n5v{d)w8gtJoWt*Cok{5LC{x{eMfr4vX;@ClRCkHZ=1LwA6KAvc zPaM!cAthmO>VV`_dwi@D>ANScdDD5MrQp2;yz zr>!ujkaqR^k<#Hx^!psMe!7a&==0Gi)vubzkN&t4(jI;9{30Ks>AFf3?pG_q?{n~dhQ}-U`{PRaCePsrJA;a@f?QB_&JC2{IaV6NJ6Bojn}=iS zew8dCG`&PCKN6a{sd*7w=m2m3-{r5PsFjt!WM%+!a@gvO1{vS z<1KWD->TMg7KlBHMT~YdyGt*xA^+`DNVY=7W_N>)zo#E|2H$`XX;0$<}&ri$8DGqCkoC7 zsyUq6xo4YiORRT+zxL+AX3k^DN-mG2*=r7=wk^RO+qD&K-1~_gLKcI3PM=>awtXC^@9C0z=puQK8RUkTF_|EUllkKn48|h5AgI~ct-&e$* z0_K}Up$PqI?(5v{HpH}Z7~Li9g-6{R{(abArBgjQi)jhvbL9(rpP5ENlv+_4Z$c15 z#NlPW;xeChnOux4X4N;29CR{y&WZ}-yaJq@1;^>Zj8U<1%qi(bGi!*mah=RAWCy+) z?{}&?Xc6!P`<$$%H$GL(wR8&9w?Z8U^(9j(@Fwdg|Bjwi|B7g3bRFufUg{bCdV^5! zfqFygv*%x+D}}p~T*wHec*+f(QRwAMd4658G0CSd@m8REZd;2Z=>H|wwR!e7 zM$q}%R}`D9-QK729($K&m3GT5sh}s7z^~UWr_X%eBDdHF0YLTUkc1T!QWYN3XWNBJ z23Hb??po7aGMMuYm8v&Nb!LTiCop9L_AwhmHL7AZR0RJM=8qe!^AOyEJBHZR8{3!- zT9LDYOHxqIinH4W^p8nSNp-~A2isCo2gjz^QWD}~6B81WV;nKDkh5AHL3ZSlic@?v zL@dW=G)opgld+|i~_i9W{(hXZ! zQyAJaR2XE6TClKgZsiOEU6}&+FgCL z5hL>Mr|l6kOxXI^OooBI#MK!257&rZqVHl-GFjjL$8bJlS31A}dp| zF*(zw73HCRO^F<D}C~JK&m`Ers-`3^`t>Ohu5XXL`E}y3GSK2W<e&(cXhH})*s!p271x87>yXS`dUMTed&1dT3^V9 zu@&dUnqZtLeP9jN%{6kLpD6X&M=Wa`Uc=|yN5A1y?0{gGql`BT4ip?NSS|6gnbtLu zjz{Qfjb|Myzyej34$*O?gXlbIkg7yz339g%Ymx=>#$u=d-j{d9Jfi#62Vo1e-r$- zXvUF(PXkpRb3ZG-?+Z2v{#Eeu_Kc~54+_2|_;;X+<CwiliL$+ z8rbgnL@f~N7^pm<4uFakYA>kIB$a*d@Ci&y=vVU&bF6w$ z*@tB|d*@kx*B_tdF+(FzorIf>x{2l1`S?YScj-bI|AMmw*9m?D)R`M8m*ev8NuVy1 z5)9ZV_K3sK`bS;c#$U3Pb2ZYcu_J9 z&eFoM26hpu`URi{)bVjtl%53oW(ge&DjjYYE}qWZ z!8Mc#-(fpAW)i40p`v$KyEyi5s*_!uwsU?v+T3YjXHs;AWxjzse4#Jo(7NTP+v-^f zS<}3wyrZ_h)uHeH+Tw|`fhV-r4>6Lw@TY-19)PO$6xHx`r`jq*Jf|m0-C;S!rUcce zt#b`juKon=*}X1U-)-*mCY{1QZh*JcK^quf=yogFYNi{P1F1y14E?N#dau))nCths zQ~1yLbT<5Q<7{Q6Zl~8%=*}PMCMndE+1fqneLLh90%pSz_2`FQy17+=)c4fGUV1(B z%-eZ%K5(i+tQX{Lr>|`K!)EvB?G$t0&ftkg$X+6i9le{m^`!0AI9R=tbBow9;an$Y z7tR`5tL^^%t%}BHx!9-CHR4ovZkdM#`H0P^d?DO>7k?p~j4y4Q+msAGNh$KU6v6-H z%icvZLZ8!Nvk2KM8wfdN7tKeV+w7-_5q*T!nsnkq`S`Vam)OKb-Y(7?NMkP&U3w6Q z)0-8T(PMtz0<$g}--4)C(OG8V3>Lpu&^g(pm2ZAd6E~6G%E%Wrw=0}yrtA6b&hs4U zLPkogEn@JhL*rmNI6y z`v%kNu>#Mkqj8{rYJeSV9t#&Z)(=yP`bfhsuZByasYVtWmu|XwOU;OL=EgYUgPK0F z&{gWoDe(>GyIfAM^*5}#!)|MijmDe%8+h(L))2O`n*G9@B;GGSkz{Epzr19AP_k&E zXXS`)>pfdudk440)AriiC}sKrsFq#aR_-mWx_06S{U0dae>!H^(p|r_=B}qV)&oDJ z_T7)S50D$7vt)Z}(@bwBePG>1)ILnpeBEgm)?v`$Y(CaL>81~xua8H`Pw(9sJjLCK zN1cLFZ`>K7Qw&7Ue+xC!wLO*3My`JKBN~YnjTC=DBc02W9Q7FJIiRC}em$enlKaX) zdm4kePHSXKGpRf7Knwi0;9mvrs%M-pc==AoQ9wPqk;>p|Y{Np3EzV`F&IQFeC2rPx zmPV}ACV!*{I{_Kczj68p_fq?OtggHNr$O@)x)a z$9=@{6yiJs4(hL?DUM}PArPJMIch2ovD|xk%nze>R=tTm0|9sK73)H@lQ`T^750BY zKU*~)i2l!ZgINCuRDlnwTGCawzldYq3H(>jB4tlox{r!kwlCN-OYkWE?tNl+WgpLF zI^R6d=ry~^E&G~%Wv?82s%U5U&~sEm-EALi@f$zu%OLs+`OkZ*tb1DeAg8N4N%nX2gnhEJtF?T3kPnT+<(ALytT>A-A8o~Xo_v}cAJBfw zpW1a_*!cY?Z`U4IRkf{|(>z2PW{Ma{J`jNvK@k^c}YGf6#)sAhrmv-hu7mP z^LWq$;MRbE%vWk2^KjSr##noAElIk+d;gi=`o?^X zIp&yi%{ABBbL()haWdA!z#=5BKiB|{b1ZQd&9}Q@mu;}i=0i3+7|)xCQL7G#tyBw% zrT?J6g7j(M!nUV4Wx}^+%1e||mm$pwPV*I~d7qeC_KgwVeCCIG%8(ikaHEF!{=ucx zJg0LdUFlV&)S{=3%9HV5&kYp6RYixX=HX>%e;K!*5YMlWMwZFREbz5HW&Hf3dzVRX z_#joFdzgf5oSNdY9bkdq%e#)*W@tl)s+11xC~0>R8Ii^Hzx?dsz;7cf6+Z9 zs#NUtlWDI3(7M8IiNoCLBV}?9URi^CbxsZKH?Awg{_D}zy#Bgt8MkT>5bKrHQiu6# zD&(pU$#mgy-eF86rrIBc7w#+M5}Z~r_66#3u($`1tB3wtvWL;2hP_Y3V8BGc#`5g`2~g0`pb<39?FPnZpx$Mr@?YWd^$siUe^&PQ&0yPvZ3EkA zwV#WGOTEx)j=(iYv5-@!gj1M1bb;0J>qpbS)VwOHQm?b(e;=$jo|6<&g}k@eIo@Oa zqh0a0t+(`Wy%H_HZWW8(IeReQF9q`i-vg>$m1NBVD}^Bl$54pp0mNZ6zH7b7+NYl9 zQalzj#sYOwCDlEL>()(emb-S6fUy!!k3c(f%0KqaUflK4KO3jKzN;n~IWl^A@+0e!t3gO7?qI=FYd?T*c3h z_H^s3a?RiFffsQ;6VlKDL$?GUD0rst;RT9VB&uxA=~RkHM!=05bF&!G#Uzw{OZ&>%o1J6=BguG#I~RBR%PzwH{<>` ze?t|QWBUPBxZ`iD9OO?2mf71oZtB#xmybBlq~qN;9A)FNxB1JI>N396~d#)vl-#s3s~nx z=W!dK6Z}l@7r~%>#wP?{6+9+*&n(7ag8wD>q2M_|zo!@{3BDxwjo_V6Gd?VsC-|P= z4}u+@VH^w8+cE2RJtyB6p2K}l*apl_Nitu%pZo28(p;q2B`GXmM}?g|OJ%tjGTj_E zQoi4)i5F!42Xhe?3bvE;${y*~v;1bl3vm&W(iu9sh>nE$s?Mv3{}%)7gs?NDfqGk5 zHP{+qhrp%@I{@}LGvj&mlVPw?uTL4L3%(|JT(I>{#*u>a1V0x1S+Lt@jLCv83mz71 zzKd~);M0O12>vM8`SW4snEj+}k;DHCGO9iVDW&!Kpmf2jeCBl}06$^WX%M`X5?6j~Qtk-?a_JhR77s)E6oWp%3><@6&9{48hk0 z%LUtf&p1kOf#9ctmw|fQUo5!e66UM4o;*S~g7p!$-e5cqwuCh59(duA;i&6@p@e!j zmDAY!l3qi(R9pyJ9Td(bJ^{S#^94IP8)ay33e|jAG@%E|TN=sb?Gtnw#n@LcOYlvg zw%$p0Y2SnGQVbR%EWm{=NoZf6_!3i=-ZIy9m^EDH6dmb8+IaVEG9qPr|N--GI%A6h{vm2YSf?Z-8<;2%muh{X-V z`*;4rSgq(+)WqSx5*PO4aWET*6BsBxziS^qVg$5!0jLuCQP}~_E#^P>(C@6f7!=~VQo`@9cH+h#CYLq~45$01#hTT>X>K%7m z%%>aPqyK0E)vWuwT4;aQ2;pB~fvy&L&qJKo)$0C%qW7MM@2lvc zlJ{BQpZO|!w3+iZzl!c9HGT}#^Ib8{Nnfp6kjFM@K`m}-gcG$hU55>#2O?buOPp~f z`4!ijp|Y3VLnSP~$HM#CwOcv=1)vUYNohh5_G!s; zWY39q_p%@TXw0#(nOP~a&CL5T4W^8hV&Cicak)Z z-!JYkt_|&8JV)B~ks|bFLrT88E{y&E7WIZsqAiR`^v?UOR@;9^t2Lrk(;-EC zM*YjJs4I;tXjfs`>Ne+esAR1KfK8Pp6s;` z(N|jy8S7i-#_gc@WM3m6mGDd((I76TcMhgi`qz}8q$d)y6O)X|E+;Onw=o+|Ny{@X zax7Df3)~SmQeAX5n~rEh8b%_FGQvN9S( z-o)9fm9Q__k=9cIoOYj}Q+LK;K{-uY$c$GgeNC(GKIPn`p%6!A#&(!}C>#XkNwq?N`n} z`nseuJWbDT3;&9~&T-EPE)_gxrp4JXr6N6LO6ksQ@v!g-_Px*v`V4V>*2BW*m4WAj z(`bQQTRnJ`)PNOB+-a~q9;WA(5vNtMF@r?K6!EvgT|CX1On3FP-&=hht|RDLM|yIp zkzfNorPRjFCfXgjl_%@l66~U>p-LmIbTdz~K%>evJTxsMDI2~#QGaU`7@RphIc!jH zM#{|Gn_@q>F_yI2=s~knR^rTzi8rQw&P+Q*(uNw&h$E_V=(nydq3?Rwd4tW)%nLna zhPdNWG~W+^=nv!GA6JC)HH*wI8ceTy6sgG1o{nQbnkr&=Df`rbCA?H3&`zNm&X3acUPYNC#N_pXHq5C&4Zi zj2RVni`P59D$+MiDb18kI#D^BJCS8G*|Pc#u#KH;-ck}B%lDUGgJMnYx(Z;M@O^lGv+*xHX2Q|B=9!o)E*jc8QI(TiV(QHtrP5 zapMIi3%+Hhg^f3f^aE2$Hm>L_zP_Rpe0_`$*?gQ2S-DlGTdxuf78XXqpxoSBts^{9 zikFW$Mws92!#(K+R^M6fbDc4Mgekk5@TA}` zK$&NXQQ8u-v|r6QTG#vfVm-_jz%1$o$rW!4f5$MM-!Qg-)ap%p5Y2q;dl2^zFt!809)ftVFA@cEw7r)n%|$q*afKEA2)Z6YaVOZ;x|1r>-oOq zVa|SNpC5ae>~?5B+inN7?KIkU$=70jc~I-iPXd$gjVB%ANC$n;m!BuLQfk}pE?4?t z&yC)$v&fLGM@ruFlNy)$I_$4Z^OJo#qral!#RKk|$R6MtO%feNY1E|&(r3>>swyYg zJV1x|VgJOB?>C4y?l&=v!vrS*#Saot<~p;?WHXNZpxU3uCx2~j^~d^;Edr#L7eji) z-y9#rX|**b5k5ke+vktby&owL_}eV{nLk_9>3i0zuV9v79uWQPl2~Lvg^=UPJ|&ab zK5HS-&JR#qc1@DD9D`JCnPj)m8Gl%&dnMN}MKD8fL8XIbTB5WZv$W?c9W1kEcj{w_AqF?tqE}OC$iPZ z?rf_&Mj+?;$qnqk1_$4~|7zp(_pp3G+^ye1^tw6s4gY$(zB^gvdJ69@7lNH7h9~nS z-7$W<%j{Tk>{02d|4!kaIt+<1-vHIt6kFfmIr{PL=pWbbIMqwRd+Q*5QHdk@kG6_(oI`+y;7 zImS~@?u{?CjC`cqAlA*edbp>>_LWSpp6u`6@8Wi~``oncsHtpQ4@h(?(piO0HRmsu zp6P-2N>kb1WW9?$C|yf4-D96SS})^suH|)GEkRPtVJ>eoa(kM&%UN20TAEJ9{y9=y zO_LPIIfYNK^g!oew32qZ)&-N5<9e{omxB!uwgjvo*qlw7&khz3TTsh-ehSp@Qt8TV zIz8=Ooc5a)^RZg9H6_!yHGiq&{9o0Lv9II4qf&HPFg)>RNzv^`#$>@wKRS3~`w+^p zKZJDa%DU;@V0%JrYvX_UjU^o~Qd*@l99Em>5Tg#IJ3L9X^B*g^ew5C-j)0`z`Q8V{ z+I4m7&Ew?(jvFdCN^pglmb6^dM{IvG1T(Yhi}xvgNzcbaSnKP3sMqRpd3>J*TPDm3 z7A340?0OEfJzzV8Z39~*Y$I5>up+Rg!j^#T&X)NEY>u!QU;~9EaeXtG#dCea!ol)| zg@W}F)}LCfw$E$m{_uyVc>ej5L+hRYu?qcOMm?n>8`9%e?+NRj-$5C8p7NcCHSH!y zRLnewZ&2Ew|025KvLi}iASTgI2*vx5H={7JCO zCdLVZD+Iq1{L5y>hXkJ#d`GZK@cwrg9~Jz&;Fp5`5$ydgV}{`Cg5`p3-V^%@E)e`w z@Umd{EsRqH*9w*Z^}7$zh}xdXBWfMkOkvBxLWIo+yO_ajCfF8XX<(Vc62Jn4MS|6( zGaCrDQCJVKRA%yBnvWr)cN=bq>z~Cbox!Z4%hdtIUJ+IY7AfomSTkW21MsXdQGGe5 zi2q&V2usw~Ih^8?0oWHC(BMj-XJ6YHkH0&R^BTx$JG=OIbKd$aOFFGGIdf)4!}(Ry zMdtSrdi6l#mc;*4vU4C>sTbNrPWpY4sgA4AZnf%tezM&#ke_Y}5nJ&RTV*BKAz}Go zuLzq4mM-jZu>QiLz+8ldfgN4REEsHqun@47!rZ}9gt>qP3%iECSHjMKeZ4~Z7c5cO zA+SJZ_TP`IT`xGyr4PO^4kI8}a1&5%UygaQV^lzeU<}1>;np%GpBm+aiSC z)M7rvQZ3)Y-{MpV?hxF&obj~qX~;R}f7tsA_$Zp@VHB+%*`1wP&t^C7iYB;AaMuTY zaCdhL?jdL(Awfe376=kNSdbvW9YSz-Cn2YLb~l7a&ikJ8efQq~J@@h>+to7NJuPKj zT_gWqlArHYyk9S>%5T=Ac)v~~hg!$96sFbbPrqdsLQ}&+5U5(FCOucc6^xNC)kB6N zE|%-bUuVmOa-CK^fPDYD>o1s$lFJNPXnzOVqgXj@4E>cYj1%Q}s{HFrM~F<=YF)*d z6(|j^u|&rI^6xu3R^){I8!P_~k$>yRzn=2%C%KN(^6x77cZB@gK>n5F-z@8l@7ik} z>({n0V4rQiY~d1Hc+M6o_FKbBws5#D++qtK+d_{6*06;wjIf2rZQ)N_Sn8lP>~9O# z*}}WF(41-w8`{EYw(y`W{A>%09I~xvTNq~xui8TGVQW~^7LK=tyKLcWTNrS}_WrhT zi7h;53l&Fg?{5o-+rllj@Ua{+Ma$D2J8pq>|9Z=@g|?W39D8Jo@p9~kE%v3HEaNP+ z#-7QsKwIomxjg+7lOgB)Vaquz$NJb}+vV6qTP$9VMcHCea%{6LHdBs0vBvCLqGkYag{ECjU(wazKt#8>N^g zwC>m@lOxynUCJ9%fEkwbDI zCFYk;04A!PEF+~@SHdTn#|&w2t-&7p=JnD0S8L|BR!sx*hqaXLZd)VUGq%v`S&li} z#$H2e9+Z{`ZMQ?#`>k|Y(K~gf_SS)?@V#~vmc6UZOtJDMj33RntwVfo_xAR&b!L-zF2 zc^w62jhxb;oo)RvW8`?Ot=6e>tV6r}F9GDuE;<8s+U4y(xqh2g`({UZ22*#_G8*e! z=C`V~t(_n3Y%@}JaHkP==PzADLQ8b*G^%f}9zBOP>ogqMyf8{lyX>KLb!so`==NCg z5MA3*d-Cmaxz>JpquNCt$8PQA_ptsWT?#IzzQ4(j2QhN^K@REcHjwL{9K77hr_0Y) zwLZ&)%6S=ut$Dt3USVqtHpeQs{K%O7u^-5Xmm?y_hm9fSq%CR@L z*bq6kxU4nSO^zj%TW*s%Y?pkg+a0@I70T18-Q>Oa))odGvW8xVt)bHqYp6eJ4TWRY z5YnvSS6diz+#2?@g&j{=!=<+Hye&L=${OCYh3nI8aa-tg+8Q>tg)?m7N?Ukc4&@c` z4QKe*{cSm&I2Kw?c^KmvYw5ajNbgf;7o@{L{R$MT)@ew$e4bQtmCbFX=h(tywlLck zmN;t-``W^_w(zzsG@Y}C^=;u4TR1ku8t$-#FKwaUd29HmEnH*^H_0LSqlo+t2d%LI z*4SHHnV<`{@wJ6ZZQ*%aC|tCLRczr%Te$U-HGFCdy)N6Hw}t2BkPHfuTVt+RQ_IOA zSwU0DxRB-SfAqe9{FLq4@wRZ6EqrYY1Fl-b_O@`BExc}s{-L#0fk!lCSa~OmE4JLGPnJ_jKWhv0%UMjFHu+A)a+Mb!S)UglTSK46 z*4C`w;96u$J!16J*lDNvHL*?J{0oFbim)or2 zZ);~tA?w}`E!IK4M`FGFU#3IVX3ZN8=-N#_H~T#=G=yd%EFUqGA#zRBD(REljwIK= zNB(t{e@PJi{UQI#c*!P{W9vu!?Qgl&SANSx`h+ayy(qq%&Hq)jV|BeyNk8YTwX#%`0n5G}RBTFWtOEeGUUUdX>wtvTi(IcJ3ZAz3Q7 zj!h%^H?6R>{&sRKLH?a8|5mfsu+>^aqMTOLn$|biK7tpmxu@k^KG@dB{WP@$A+|oy z($?>?Q@WVd8P|mU4>YpIzFP48d%D=C&s9dv;!pzLk)|2&9a?Tq$=Y|!Qf1L}- z;~@Wz%Ceun6Q+>0zcgJwZyQZnl)tXxVj#$t@vOSJ+_6$4!Se}+9!3C{+Q(-yAdRb$h zG{$_JVdVj zD|ZI>qmQ*W-qw&Q+{r2-m6S`h475HID94uBxa3hYtTM$QIiyc-m*)@ru|b{z<_nc1 zN$fqFoE+RilZrzjhX!5VCb&WLZQKEmReu(~c z1!<2<3>`HPkzKBGc}eS>U$%wnQZxkUIQVBSfpZYT2Eotl?4LjJ|IeSf@;~^?zwEF0 z4+~{~wU+s7zU{I9_4J>#8`;@^P5)2N{nz=n7yN6w(i-GuTmR+dXa7rm|CauLwLky6 z|NYzi{jJPTx?cRnqP`xFb^!#}r$H0}<)pvwR9`uK03 zrxSC1nYBMJ`&h%DH|_5bl=lwnpIY;lKevXx-_bG(d`scCHBZB(pRHx0zu4>fHIECv zTJz3(=Gxv}2bD2HER-v!mn&=y$J;``TGp__AJ#Cttu@^8r~UaL`5ij8v!-wA^s8Rl zp=q71=}h-qx^GA8T0K7Iq(L4UY}@`?IA++4?cX)~+pVGv6A9&;R=~ z6&Bh1rkDGCZjrTY zOssUkHueXtq1$7cFM&5W{cTM?C`9YA ztc#BS_(9cq#==v3TQGfQyW}38cj8I0bgz?ZrjI%IG^O~E-8~&E735#f>!Pl{>)7H! zVH5eP=QfWi9_ey*?!DM67aw{BB;B~a=;`R_s)|0N?v-jK)5gkyj1@HZsC zO)b=HoR`;>(<37WUU<_l;NcqYN>|vd;^vWoM$bN4$8&M72j4eOVoRJzzP@_&kPgG) zltOI6pC|YUpdxo)Qot+VQP~iua=BlGwam$fy2z^alLNzdmB=u z&#DD{#2nW#g$92<>>arC!aE=st`r^&P-WBR41pfSVc})M3DNioG zy{>**Y~aHmuj7Nye)YT1XUP1f!+KOdEnXP^*1v#I@_};dhW+|A{n`weZT@k;_UxN+ zA1hROv0~s#BLuu_Zi*Jr`4P6R)gdBXcS8tovd&CKF#guGw+r6Gpe_ITiC0h z|IU)x!OE&9yfRy-jW4>kV9LpqH~f@pKVwT22yCYx9{*vLzuSb8+s$4v^Q7c4{dVS_ zW!L?2a@`l+;mord4JVJ|4_+HI<>9s>8_T{J)brKB0U!6Qc)hsK9ln0)rdwP?TJ{-G z>$2z0*SG4eN`6`CSgqriR*qfz%>BdZta2fXOO@$(E2_9>x=-E81GC!pRkkcyoPT=Y zbDbBjF5eTx6&;G5OWNV+>@s8GyyCrjR|pE3&}LD57(4Xf-AX4PoT>NX{FY;L=9N!8 z`J&qXdBUv`Cl|Y9RMYirv3p2F^oquj&&Hph(!w%r&|=l8wa0(ft#fQhgC=`2dGomw z8MBAY8QQ<6@7jIK`UQ49MYbe1T^}}lOz?X#F>O*O&1Da-%>kygl?!hExaqO_e3O&M z3>%ha`95r_%Nc4~dxw8;e`NG6pF7DnI$R4jtR`(s-XgtUuRXP?Ol933ZO+ce%AWyG z+(vb8HSxvdB7;BeJ)FJIp+)qmij(&I+5Kwv(GkPao0d8}!877`Pyc7r8%=#&Fk?{c z?qeVSoV2!1#hq8~D~@#utY7opxtr@7KkIfXy7YlK-JC0l&r^%$ysq}p@lX+|?6g6u zf^DWw*pfN_O62QDJ*%#Fh#cKoj2;o%WJ&C_;g!wnBPJ?xN|yUEbGl+FFKd$sY48HcQ>+%dyQfH*Mfc`&4V^(cS%i_eDKA5T;}IcYkPdlR{g5KW+@Y zHuJ}>?xQ`MCVl)-rFW%!k*Z$8$S-@`FPFRVV?meTj>D54H`|sxH0DGx$GRgb+&X^F z|Mj*?nPXQUUU|cz_v^6_&tCD^c5_=~^in7pUSq=kQ70?icN`r2(%rM}#CN>KEAv^; z2{FwBf83qgE_F=+bMX4&NAHWToN@W~+H0>2(xcVa&;EI?diCftjXr+cTzZOnXq#)` zZaNNUcHfw$YIN>d3CGeo?MCXh8W;L3I^o@Jfyrk~-{OV+6%k2i-$x8J%#3Ni`eu!u zld?+QsA1R~Ja_46-MkwmqyNZ_E+bwo>U62st)I$et$t+HTXA}@GR-Ht!o@AS=H_-W z_8yWp_C(Eq;7X;E7u4~_ z*idt8gMwU<$AQHct421zJ|XvD&#reJGH*=1#*gmOdR5UaFWn#St8sHk_r{5-eM?U) zHmpb4YUlj-23LLhYQk-YZQU#h{$;21^Q+d%zk7){)t0?kRxj)8tvlnxhBf`+a*-!V zlIy}^?y1d!z2{ziF!cq~{q3`9LmG}tZXe3tQlxHeHYim6(5ZCRrT$$L_}g&{bX%%# zk2n%>hxcgZFs<&w=w@wFhu!FO6;3Gs>K<{$v1pTbvmkDHTUwT z{=+lBYxaci9e#b<^<7oCms`9iFTCNuHnso9^^gC2H7_D3V#njdWoI9H*k;!8DpO~v zn^t+%cgn2bfgZOD9No}8 zRR3{#`Pv^Yty+Hdp0u?2s?XC(e;Je-Uijsd(dxk~GdDcE6HqHfmwP0o;mIk9!!8^j z@uuFTksF)3fADMbX3?f)BWl%k|G-6tKPxn)LEoV8xa6E(`tN(v&Ma@~8S_bBruUqs zPJDwmHEZv$Q}@TjHy^53nR=j6Lc)7;oNVnZO;0^psc}a0s1w)Io}aB*U`LZivszVc z0PNzq{%_ws4i+0WX#KS5#*zUC$wYHp)5#wXPFhrQ;n?Y9aRYIZW6{G-d~%XPTsORkK~UOy!LSUl_GU(az=tr*n1T2jfOMi3!Gja|0W6c)Cto zWP!ou&-qEWTBRO#y<7ZxmAJa@izC~+RjzqCc1765S1U3-V@?I9^qSIU4HJ>($Q)YH zdHwMk<1e^2dh)X7so}F$6sq07toDu1`1YAC_|D1UrD{$TXJ(BIs{ZH*+rnb_dfHsC z=f)P##?QGsH#~RW%+%DGPG18SZAp)=wEF9^>OGj;eyv_axHVi-q<`#~lb>>)?E3ts z5`V2m$yy_NY)h~GxMSy$!|r#jU1Xu}#2LQzUzWLd{PLHAxflD_t8*vHGN}t$ncSXl zWt@E8^N;k5&c#1QPd~Z&zSF#Cdz;S)I#KIE?nb|>5#5gO%kV3a(kGTAy~|$fH)HXn z1ZnM+*Qdm%f2{YvbbL&^w~g6#p7E|+;>&qkKGphgu;;+^>*H<*{t;g)cg4#44+mtO zD)~5V*Sba?+n+St=UJ=M;T`w(>`*N5ee&dc@ZBxz3VNG8Rs=|nOMgxYF0ik|py%^f zG~5*R=ta8E&Gd&U307OT%BR3^Y&fe z+w_ipv$*SvW}}b!gdT8NwSsL}_4?7Wr$VZH9-ycdH6yJ5u6G9;yHC5DZMk^XxGJec z)*tQEzVG6a3NP(9c)+aV($n6)?b}qUv%c5$>MM>f+ur0=#|#&Jxqy-j zx~+YAJ9bsoE?s~4RvN~U*6K+un=jT!KPk|^)apZlx!<}Z-o3qkU~y6!HY@h|L^o{^ zx1n^}&D^c`$JF^$XJvMe`@4r7s1?2#JE^AmECM?I_~MW1>M|>OW(9lXoSc5UZ_lBbeO%&#&NnLB<_WWCN@SlJ z?LP0U|7W~oRB#uCi_&FIgR5K232kSdoBH^6mD8!di@OK9d|Kmi460w+(xg7VpMDCE_`z5Q@+TA56b)(brz9q8m)cM+ey<)+N zBUMTS%^Z2RWbXZ zAS8Oh#AQwiHN|F1-yfHKdi^nN&5qNBR(#zS5nS#1UB8GME8Dgz8j#x7a^GUox60VV zrZG#0ow}EOc)?SH+I>QU%$-d_9#uVa_r&$#t=Dg^*r)QrA~$1~eOg#}{=EJbXZek+ z5!wEYZq>3Gulg7Le%v$dNh3P5*3LkF*(Elb3cKiZpcJ zHoTsXZQ{d?y!_xnWmEfBFC*&gZXCMB`Ni;gqk0~wbaLmbLjAhj8XMwP zYU`N^x;>?;YM!O;9Ney@`)1a;Pgv&6%i1TkU8H%crJ46fge_~iaYQAfQrG*nw9xv>YL`>GEA-w+o!%>-)ZHz+#q9sRU%^DVXY?%AOCvk(Mvr>6;(Uc=@mDk>% z;-x6HtgNQXr+rr~!#1YQsq^`9Q?JZwwMt2%%fu70Zy1Ay6MSS$Vk}m96 zb;{>St=s7XX81*3T*y8sQGZTA(uHA}ZKf3V4*Irxude-^Cc8@2PMiB`XREJ)(aFiL z3S2!JzJ0~>(mM-yxeS$F+)?T?_cvH}ExtvYBNgWMZ18c*rqBCUjkZiaTebG%sbbTl zm)l$yhVE`~$GNNjqYGllB1iyod@{*XdBmf zMA&skY}o6YzVz^t`V~nbHP;l>Nx6~Z2KexX=}d^&Q;q8%wNKguZXmu53nqfbQMni6_{K$k{Us?6RoU3?N0`=)5m zQ}e57^*v2~Psd)XzvB6pCaY?l+fp-Us%BEo6E5BCRCidrGH0hS@dKuuS>SPJDVaKH?G-n%j&nL^dajn-fz0!K=x($R=N0i zRjttuyNApv_GrhtCvOJz(0ykf&AQrRVBDaZRW=UX*YI|OqaAME8$7UCdhv|ZM!UZ? zOLyv;;3C0*Dg$pUuY7C&k{5+)R4b`>OZ@qL>*{sso?P|f6LMAB^+!!Vg$m{Bj;vU! zM{RM8|Ggv6`WbUFQ>u3Ouwcx2pXtLEk7_f0T+!_-oi3KUa3Sn@u|>1iRNax3Rm3H+ z)3|vZA51yaWq0~+zq2b=9xB^Z-}uzMj|X}tRX*-NU{6)AYF~fe`m%1rpWBZ)*6%iC zah(?BDzvT~Rxjdf*ZUpbrj<~!Ur#hX?&-8<;vaMS*7+D;&uvizvu$}`#ftYL);|AS zPn||0>gO~aAQbp>+@VW35o5hpUHKTj>|q&?NgqN}r|f*@JMTrsx&?0z>N|7t%iV99 zTwXkU&A2mdlxK7)IWJ8+HsqwuD(SwXVV{-Z<@l*<*VLKs>~r$&)dPRB`)5>hx#$;M zCArqy@*!cFiKk!RDKuf!(6e(RYOi$*9}xKc<-AtzUkj}~a%@r6lJ0%V9R4})MC^!> z&&#%~?$>+&*?>ZYX3cHmSz(*{Me12g|A={UkEOP?=Dc0EdE1OjFF8$0jh&sL_!ITf5J$*Ciw}(Cx0n>NOi)bc=8@ z&Zt}J+u(kyo}ZqVc`9;9FW)z%+LtqT3ktb#WOVI8+xv|Ealh-ESFXj5o*fbp(MnZl z^@U=o2Wwnt7J2LW>@}C$c-KwtP~Wq8?LF7xW^OJ!wQqy?enXeMJ9G7VXJ>`#`|haO zXRbcV-jj5Gd&ru^C#_4~J3jQoo@dMAC!KEQ)^f@5sYi|{6>VR5;Zc_jmf7weEr)f@ z%_v>QbNtAUpU)2Z_VmCk_d;RsyFDLz_qbw?+ucct8r8PvlO}w6QGH+4sIIlzESu(W ztit*NV?IXZUKvzp+5BBgQv8QDTj^7^NP`LsPv{>cxWmojy(We3DfMAwx%RhexAOiv zc9P?oOWv=B)zQ5)efP~S^Wmj?kCt1@75esUv}?b|OC#o8Cc@DR1CNz|@>}ocS$UXP)YKcEl9(tr3CBq94v@oSB{& z-`G(kcdjeaj^^rCmf5&!-)ORBN7UUtAJ>GqEgQ6BiZR!a>T5I~tTr#P^y5}%`(<^z zX;j~87P`Cju<-*rO)GqQ_MEzno~LXXP&%qg6VmFr=c}Bxxwl67I&W&^`XR_=)<)K{ z`qQT-%d4yFRH~-$(CocWudHst{cWYcQEPH7gOHMe)slV=a!FYl}!{ZU;a ziLE=Ney`3iYVV!>JnGPeic5{!N+r%F?ugv7>0Qm?qr<+{nt7*VM^k$k71Lqgl&&T&P%G@!Cd8s%bY+RUf(y3uaaAuyHk1X#E-rq`od4X zovC*9c$VpH)*yXm>H1f9u4vos@{GOvSMOQbddkjSgZdvWxMFs0%N0Ezjk{1NadFKS zpTC|t`hL*kp_4sNj96SfyoZaUL&B-C>XZ?!2W#&Jy4O6h^?}zR@3DjHZkVyK-J|y{ z%BgObXg)jk(T|p9PtPpv&w~e--M+q|?45TdS{-^^ds{Ep)LWZBPp(m6sHXj_dM)bp zsJ62kN1s(^#vebj{m9-A&1QX!JK-~{>$Zx86K}BJmTtcHw7T}?`{Byl zP9Lt`N`5@6(7qRM57*mq)i>eEtPTc9WYjD)ghu-&IWPF_3T<5Wvvbo_-5(u3A5N~i@ATqt!K%#Wd}@yXOM~T* zP_?X;mr8c)zq&`KF0al^ z>o(+S!qKu#4xK+UFg>}+;i~H<!bR2AM|2l)!T(9j3}^Ye$(fMZ>3p^m1YZ zSEYVS=T=)+Z%O+yLAT@eOW&?{nC{Ca?U+QJQl;XRSQZujjcj%n7XxFXK-3#8`zHV%q(Dd58$JyDF zU-nmKhgW!!Tk%b|Huo2>vl^@lI~qS|N9uyXp8```7mT|0@J34gYV2Oa@We7ZPF;RE z`PTYJT}{6G7j;P6;5p!Z)h}TS-JWZQef}6+;pmg@=94W~S1w>|T`#3wmE6z6N_JTA zvC4{mwf$X!=XHs1Duu;`HErL$)y`SNXZ`6@^jh`f)uJW`_6$1xX;Iaoqc)#^KQfGc zLW*S6i&xcYY~ae5+*75;)3E4>X8kvYHm!QY_wy!a;phg-FLe)1Gn-~;Bch*- zetos*pNT8ecUN7x|K05elUwIJdRT4riJfbXe!JMj;fTvC|Il57A5^S2rgg!J+qkGZ zQU2@eoG$A-GV$WoSxj2_+izOeYJcS5iLebWE#B>Yu(8>|3*qV|neG2P(LXL?T6Num za?vlLTlMLNnuU8#HrHPF$zj>~p2Y{bz4F!F-L|dri9t^X%|5v9%-VyeTBdv4eKGCD z!rtANc3aS_cN@2H15axowo4m5XLA>GVwnPGn;*Pdr}C~ti+{8z@FTPS#`PsawnlgT zIanyQ6eXIm#b&fU~xm}7zW zs2~;xTt^o?~66ATjn>?Uv?<* zwOLZ1k=f1Dmajkjqj3+*=_xsnclre^OUdoHe4To%>xaWPieGVdZL(p@1f^f%$n+CO z-!0i(c-hP8ZWnZ{a$U_u{hn;9Q}g5S=k;^X&5evR)@o75T<+N8vu$s<=c-(5$9*fd z=5yaoAMOtL+Hzl!k&Wtn=-;|X5xz~w$bdfwmR&#QSZ7USL`dr#(~-@pug~AVnNZ-v z-KkQ!OU21^_e{?hA&Eh?=Jb4(*vF7?(IKZ>@YA){uh=`IWizk# zrz?Lsup~JP3f4d55jR(Jgq%!`?7paI|A#(vC^Qdbf|K+fMEt z_h(=Av?9s3+?Pd-Y*8_;!g$x7g?+r9?s<9DRqhlrKd5BQ&*K`b zDBjW>^!7=K4`)tCWk~JkByF72*?C-#55i>eH<#-}X|d z%D>HA#}Q=`x>epO_Dg9WqB}OyY|$En>VCh|tkwB%onLZwIu@Ls+Ur%*gqjU@Txi!l zvOv?VU6bFK;vW=k+0x$}Gp9k$G7rz)pFVeNk&@|mrg@i3+anqUT#0iSSMU6ZhCVx- zTQ`}u##kt*NXewt1#8DOZZq@1?nT^z?~%Rg|8d;0re^6EZHwn#o0nyrJp8rkk5OAQ zCk=IY^5=k!0iUj1E57X6o(&(CS{5H)x@qJVzi+ML+NSR9cz1D3+7;1l;!pPI#*1%8 zpC5dw@1IL0{`&ZYu%_xs-MJS>jeWtd z%;+^G59EArTr91W!%NS5OHw;sX{715=TkiM^|-M2k#^LfjRr0~Fns)X=kK~kk9({N zKXj~M(c+_zEZMt#b)U+Uwl(0Z`ZfyQxAfll^m+@ltuBp8dvR|?Zh2MbC5cPFF84e4 zOt`Y=dd>mo*KMNPHtPn?(YL#*YHAWYH{BFH)}!F_pNCGqKjWIQImJnouDl&LE{=cJ z{%I1E?qAov<-5cceSO-F?vdPZ+=9((w);*QRqEBefm|^~=Ay`%tHSz}8awAn$nY0c zK94?ma(J@Va&~g`qu{zuozEoBANKjitaCTVzUX7=v+BLzz9M*U^+gG$_FbCZdA_EE z)b8BGI$ug|{W0X(Va-*2VCoIyI&D}&!EGnC{-xb`-$z%XBA%u!@6mC4PvyLtcTAhd z{Cu_L(47mW+9%$+vB_m(TTkocxF(}UfM1(E=QG;18ylc=?c6rI(eo+SPt{gv9-PWd zFLh=A{i3hu9&mrTr_$3&w_XRg8_7&>G=J2v57&CPKRVre`ney8lNVJPzw}5FJ5kZ8 zzt}sW%$BwlSCuRpxi=x^>zAm6@iqDl;kU&8jP-xoc*B)~rk_qh$zgM^WoZrsZ!ECR z`*@dBzFt$+)X@iaw+&0{f4GpMctqi+#Y#l(o{{T%zfIXYv&o!Aujcfaw`=+Qkz%8I zjulN^uZ;}MomVowUfrNZRhoPVtb3TYEI&~?g(xiwE-nYJNEn6cfkd(fQ4xiK|J1tkklD~|zq7?BJD*Z}xCr0Q6&`Y(Nkio(RLPnSQYg^8IA>t#H$X|~N=w&iKk=PRD zwg_M6R~cubhj@&|6aE7s8%UFU{c=99C z+grA$pTOt|qP~?sojzZnO#bK9L~kGl0l--s_$xh>1j2TVZ70%H1`gs3z-3~=seDfi zm@t=7#4uzbqyIH9xw*vQ8=ua+)W8W-fRlk?Tq$7^PeKVvxZX?!u4Db=_`N#}-X7+2Rmjg9F%K>5i-)I5}Bi3+n|g#=pS^*y{-RCrt6jwlC=H^&8+c_TV&8 z++g7XzO_BwX(cCoR>OL3H)h}Cg|BLO%3o93o_Waw{t4*bpdEr-a93mBLz2J83V0p6&AT-7b-XEW9DN zh#Z%kx034wP7zmIJIz#|82EEL^K0IDfha@(J@5ScdidXw{s(CQy#adj14snXY~T=rU*YL2O z)LX?vE-_!{U=QQ`frE>T<7*C{FuG?POl6HvI9Sg5f8}5nr^AwKIMXQ(Qn)F3eJ~ej zoXbEO(dIA^$#nX`z&pm*`rg6B3q}Hrv?Q=_mN>_=5YF(iEV;oLm$LAJ>G}KKb`pGk z+uKU5B`=;!wD2dupV9*YJ?0Txnsk{s%wpgP3A4s6D~a(Zfn!98OXxI_7Bg^_G`Hg^ zKwMHtS?(|RL-;MO;5Gk!KCKh?ol0={t&GSU^7T6a8Ur*I7qc)zjAS8(M3HC~jxw4E z7RTB!hlK}BM_buWuoWNNN;J6+aEXZD9pEhyKRLi|X517LoMc0$nIMu2Cm31ICn_-Z zSS@5Yz!Z(|@|InNRmlOi5Az`T+D%PUOj8Tsec z!}8OGTvCr3Wma~atb#})WeNCJhD-qt6HEs{ zaGKx2Q2RpT9RcPGGl_lv3j-9U^Izs5$s2zMelT(B{A(T2cgUq3C)!wwnSHJJ0Q>;_ z^p&B6hi#5HUdlH|sxHPQ1cp_}t7Eh=hakGweIRgzw2;%>;Rg2V2BXhZz%yno-FKYk zq5`71i_EXKXJGma(iv&Pb5g|m+z8>B0zMGoi2`PF6yC!Lj}&m2+n4v8;HoYPfv&bX z;t{XMbA=z`UgQF;`R>X>;AhQO4G<8+j%c2TGt2e4N|20Jx7X$6Q4=az%L)~wMo`NJ zyDAHSj}?~Uh&q|ThCF;YRE-@Em!oo7v$hKO6}6330lrMWu@YSQg5c$0-TOV9F0*i) zxL##p9m`*2VIy0~J~t{Kem)_AgY)4lABaXcn&`6S?fIR-anT}th|zpy;4Bknf2WZ; zEI6I`=Z)(jBqWEFC8i<$P};_%sMrR|maxKAU4}v1!nXdJksrywAI;jrzv7)pOTcAZ zLqIgySb3QzEe~VfQbw7;LlPs*=HUz@Oy}V;gVjxBwFu5*v6Z82t(g@4DOd0$f>%cI zWHBEEaDZ2y;mI-HDIe{pyv?71y9mS*ehVS1NpL4ES*rTYsBUMlO~mf)kHx-5}!u^z$^lIe{EtEJAr@fTvrQi!4Z%;s!ycle6AUy1mP zg{h1&lZC5{b!s z9ag#UTinTGm(B=BxOtv(hdXZGaqbZ1&Lh0sJ?yvlaEEIcyGAs-SVZK8O)R7^+6^qE zG1Kz#j!LahzBT9sJpg)0=?u_oc#lc_6b6!+g4S^f)TS{|a*dsb5IXVwp}TDlv{Ckg zPFC2zC;y#=eoc|VBEBzJxR2BnmN1>Zvapb?h*{^^ig{~3(0er0u3_6>LMQ~eS$T1b ziJwJ?GtPb}1xg{u-Gc)8-p>sv2AfHQEEeVyI>cWX0cR(d8D_1|St<&C9yVBC0)jnk zJkxP3dz|R6<4lspdAPz;oalrS@B6EJ>Mjw4M zC}!(hJ-#nAE^38q@;#uQ4Gz$^gi9V*+hZtK}p@S@i zuuTWMl@G~w9XwSzZPvj9(J@{JYt+g_9c)+E#+1bxHNsKa0vmO3RVyMqTgR`$igbB& z$OK~n#`1{_93^}L11G7sGPz$h_?Ex=S(X$dXlwI_2HX6A z0#|~lp00(rl4YtEcB}mn&eHHX8uD0E>Nj~4-(An==L_|v9i9=`OpGrG?&PZfPzL!O z4Im#>hevU`VfkPEKpItqpGHXWw!hM7*{%Rx`8Yy)Rs5}NWqutY)qDT8UjEXKgdG9= z<4@<8GpRg09ALPxG*2GRB`u83hd3yRo4tq-LTz1 zyK$fyV({-zTs(6HTX&jrCMT>7h+b|~s5v&K6-WU}tpd6><)%}_urZ#l=K zyg%I5c1?hqYGe`G7}pc%+aa${|D3J~)uGH&UppGw)Uo$pThg$YKr?MPflhV)HBHtR zt-}{sM`|vox+i`SL*_AFzmJ6m5OF%DgQgqGDd?)eg?8&)_4P~3GlDNG8K-bX_^XFv9+UAaELQ~ z5g?1Ji0Q}qIb^X4rYRjUBU$P6Nr0!yGI1(M6a-pS5U|imVWho{Fr*%Ue-*+7c+Qmm zsf0UhD8k9y0+OwSYrG>Sg)1DtD`BUi&{P3tC|G{s9AV#5kYD{ipp& z#V(IW3`}7xw-|_F9L_PYh3O-gcWIpEDJw~TMP@!7}F9uhi;3I zYBNUMSI?Lc)^`~z#xq!lWeJ1G$%J_R3bC(!hoT}1u4Rp@aN(L35a{31hMNJGBmQ|@ zr_xk8E6-3xd`qCN5oc);F(Ij1PxACOj@3m(TMZqb5|oooHwYxz^J03D4k$62#H+a4H2Gl!Zi_Q@#VjYaD^A{i13QH+!En|(tJgP z~+Wm+##Ek?R6hUe@l?WK0YxN67^`D`db1YPH+|NQM5!YiM4_uBji7A1q6V34~ zd?ThcEOO!|T!I@I%~XnT1x(LmguS>}nbFpI+=}q;=~ggKr6Xwi%s?Vz`pDpNXlKPW zW!zD)_#;nO)E1Cg#=q%gi-6Kx7etAiPpkkLoC|LMcbw^#5*G8C8%o&5``kmU!G~e) z3I*cPr;1{j5UmUWNLTU;@fjtLR7%NXfg8%+cDzIN6HbQ(sG&<1V7%XY0sGP*MnG{w zw@iRU)-X$ez3do(om}7y0d8|=u|tVU3ZGZz@z@T4=(d9i`SKyvkd5C({;=WBKi!eT z9<|qAP8H_9gg}St_W7vX%(#q)A;D2R+#^B^4^K&*RXiMJ%B$<50aaAt?p+T*!c_FX}ySs>SSgJ%>OPHgC z8;mhW0c%+I2qipZr;^tSn8AC!RKR+E1|vUH-$oN1=POah7v?G97Gn%o!VI?XLM5cJ z+Mf!z%PO)J_&idI6`c58fqNJ+2<+pfM+%5gP_@Yt#R97ySLY$TCeW5g+|hBBO)q4U zRg9(|grbI*ROlXJTdzda{LTa7#;c-UPe}c)`T0EwHen|>G3qQPzuZ>O#-bKL9`-7s zdbw$A$YEq_*(Rq%c*0vwi13p~elu0Ej3B$aLbErQN5)C8yr5BhNV#CjaCLqiAq|S1-_! zQ#@6+-&R(S)WJ$24&j61dJeN=b?S{ea!{u}qa*3Mkl*=*IARk{eGfQeKXv<@A(C;~ zqeXPjY*Y8qMV4D&=< z>a95Zq%#~;*IMZeX`0}3&hSiIc%3uc)=gqDJKUjfx-*-9Y z?F>tt)CjM3Iw!9SSvQL#UsPT3H#rcFVC)D{?-Iy4LiLDqSoJ}HEM>Rwzt%)A(n(%a z<~173FA%4JA8ha1JpkR>COlR`68u!Ma}t!enHOC$o+x zbg+S?vT7=;K`Awjb9t+UOzssHJEO3?*1{)+<(U@ND7(GaLb@P4(ZW-~@ro951ghzu zC{~@XgAB1D=Eh1cm$YzP(jC^q6$xqjJarq)e5U@uSl6(>teg?HP-dYEZmriuy_O;0 zNojy>j5>`W2blb482-=%po#G+2mQs194sIWZgG%F4q|PwoY!Rz4shk|WsQK9ls4cB z@1&oLsHu1!FEtQgV9_r;@4%Hus?ELQnBsNhVh9@#-<*H46B zPRB|>EnaZ*KegdqQW*F82eOJ-xr#M z*l0dQF7t@~5`h(@jxFs0rad6~1gg!orq#i>0sPY;F*r&rcN8#<@qep8`3dF9JB%Yz ziuVlSyaTM`Ed^Yp#CRvCyP-g0tWH-zv_g-CHz?Zv;x&*fDxe<+&GciSi?wgdkkJLG ztyzf74db+2hl`8PLbS#>MCf5TYy6H#k9GR0gWGJqY#p5795Z$Bg3~$zi>~~FW18-(U`8o zRbkw%gU6DvQV+Y;!FP1DAFAV=7-E8IGF}=DLps5~# z&i1vX1(dYH93vQLdB#rv17Ik?P^ZZp@_$VM?h?&67GB7@gSE`i2P`aQ^JEz#;J6nv z&L+@KKNI;^>%NJZ!jd11ETZVsL!rIn?oe1x_%or9Of`?fk(o776_adJh3Jay-2ya7zjM;Pbx&&-pe;K>{)}Z?w3bT#Ed#uAK-3x^sM#poZ zu-_qgYbZ=Nl{_B;56t|gPDg=&sW08eE6#VX+Ms|h51OLE@#b8zdGTV?4$iE38 z+X4mLt9t_514IS!3q#4vAbxfz*&57G4ked@UFa(o5Wa@OmV*5EP{=5_h^)bS3PoZo zABq(G7z(?K@;gFdT8IIQMui+=^5H=1{FwiO*J2(r1jWGHlt44Oxz%7XYd(SEEi1eT zgWa5AVKq3#(W9~)g=$_kcqZ`Ms=*{xB!iK45`Q=hQYGPC7%Wq-Bbc;6%g?U{JGDH* zQ*`39Fu0(T5Pql&cohcQ4g8ldIBeWZi%vB2Db--Vr4Yi4oP<+haMY>n=`fh)T>EGk zymTr5DGWBcmVOfk;ciBRx4L=l#F8Eqp5|%XUJbT-dL6@hylBcoFM9I$#hbqqM$Y>1 zSHj3K|NcM1AUOa@;?Dpc!O4Lr0m0G&{G%|4Er7G}QU>o8=2OGqQDIEjQG|jEifRso z!GWTcKZL>lQ2uNfc~xu$_bm+Ol*YQQm*x?CP=QYigQpenp_GaT7=#y8>G>oK)>Lh= zxEjQUiTlDJAuO5vrpL=K?@|4kj_*PW@k2;`z7J_8bjc_8m=XUY+fIb33{nuoSAt?o zt-L&|NsBOufGoiJUxgcDV`>!I{d?yt??3P}tSl4j*WK zkWYu3|Ln#fpD~LO1S**(K+`6+zC|j@G^LGfmRe8~(umus8Yt%bt*rr58Rw}rAdYc< zTpdyvw-eRj5@T9j9oDn@q-rpSiy(``kU#79z6v~2@(I<*bERfQHS$F%MpYvd1#wB!8G?s`e za8TnhvkL6iZeu>wfLwi_Ta_W(pwFoYXN=~}72&?I6z*gPX=Mf2?VydU0LL8=XRbBz zSo*#xaA|djcXUAbgJbdARbZ>xVRi*LYDU_ZWA=Vr1>!8yq$-eTshUy+axKEw%4D6B zXI2$RbCSZVz$02#Oy1vID2!Sw=tu9t(O1u65rwXk%) z609z&JW`${7FF&oPqr3SCYL8EMU@-Mlfy-otILxYMaAq2y ztU#882)8Scln^nxJRA-Qy;&aKhfq0rN-^&{6(PQubh83%Emm$n_PChvx;$A}TsU8j zoG;#YT6s8E(*0*Scu`V1RSrIvEOn@6i6E=SIk60*yZ@Y4M@mxCi^eB;Z(qcYO> zvhcP{sVU`PM_J*0S(08>cwUx7mJ?#jk!R(E&*jLwa@UXwovbKasYuROq^hP%m4rK$ z$g4`?w@PGYWpQz35?@)fqcS;GS-gaB6(Ok#IZ;KpT!qZ2DqgQf7F5;D#RXhdoQey$ zs+d!iY_BSQs!9%26(3b4C#s6Cs*(#;#XD8WmN3ovYGhxS=2{pzP)&8R8rfQ1lUkiz ztS;WIPTo})bE=cb8shRAB)Nv>a1C;;hURe%@~}qD{QR>8a6N=d(FCeUNN?MT$Qkvh z{h#w3pdBC!g(CY1%|SF)zN%lbhvgFpoxN*47j+X##klc))Ujfa)>@Rae>EF@4G z*FqynIJ33Du zXy6^kXKCOeFI?2XH{Ot@f%S?ZnHrd>@ja@6O`1m5x?2OHpZ4Nj9(sCSG<7 z7u!7e6IUn+P?C=%q!K@akXn2=A&vQwq%}YAciSp@Ha?y352?m>s5PxD=>Pi_5bkQGS zV8|Pif1ODcAjoP`W@C1#*N%?2a9p2JbQ$7v9J z#gzm5{8IT{|A^qyKuK`4*AoKK#Dt9emc04x0Z4x<>gNd10QbXsBJ2<#l}NJ$xI;8K zNRb)iS0xg{k`t-kBOq4^%UI(_q|2=Cy%H|7p;+=HCrlOKJ}16aLJD7VvH(*Ql_CUq ztZ4OF2?v$4ZSPiFmZS7ZJk)J3w{;EWej=^s;XV=9Qr&=V1rH0DLhE=~#0ndDl#(^E zIHg?ZHXa^xx)>flaU*Qwqy|t6o?x=>M-AYHuT&M8yb0y(<6Bgg!=%qVL=xd6k8iDc z!^1vuhM-t}h82GBaFb1Q3LVH4oIg2X{`oU z3w*8`5(FHFV}h8YhP#5}S2bh{9*@zuRUCrGz?A$!@pl$CuBSrv_Zc z1-12{tiKH(n)x=QJm2&eKAgf5q#3xn@y~fnAYy)xRe?xQT&D)Wd*bocABV|rUmzrL z!q)(}&FLQpzz`^xFd9hCy@NAKn=(NB!V{F<_4$d^L7n;t#JJbd&vHwaIeO5B8YE1b?_; za*XkZ*QU}70wB>*!1OFf-3&k2=`K9;CD+__-+bYjyO`n!x$cfD{7}3upXd*lJUkcs zLAHmG9nbUQ@_@KS=i$Ui*{V-uz>K^2VFL>rXEF2y^|& z6CeJvKl$v#pYbO%eEDU8B+8ecA4pdD3Nr&qqVIg%9ee$SWBz1CfRGqK?gk1kgUO3P z;dU_j5h$JsCUb+tW5HxokoYi|91hZ44klNF#Qj(%NV7JWga?b8g2{qlaYry&9^5Lw zEJ*nuilULMuVY9g=??Ij@NvJ6T=L7vuFL4@vVIN&kMhaL_4ongPrgUK`8Pl&LlvIJ z7c9JE=H%@qJ)FSw6O1K->S@E|G+z|GKXACvw4XTG${4?M@QD==-ohCla&U-~&#YtI ziHW)s)fs9-F=Z7}PuYev)#qQkTG>8C+D;&Ju^q4cX2Vz5Fd8Z~lHmkO1c8!-SS>7K zB;-!^FfMO2u!NQFXy6oUxTS$foc4x>8rDD6KniC;&gKGFHd_O`d6!p+Diu<)1|};d z#HqWKhAkR+qttHFK%`*0tbw(HB|`%T1%Kp(=Bom+{8yD>1M)zkB_8V({dZ|#u_P?l zz&^>aMgwOgOPmHCOO_poztuvt2GZ3ptT?42&Ig?naieQZ{dL1MfCCUo3lz?o~Y$$%T5!gpCC!pWTP zOibta=?0j?YrpFunzw8)z)`;JYy)KT;}D*%bj9+?$|D3L3st)JdRVP;L-@R^`DZ<> z6{pgSL3aQA1FY2xSm`GH7VCV) ztYyej25<#-SErk)rNK@!a>_!488V6U6f-Pm*o9`;&S)2#;WlH&lphSg%@JZ*=h==( zhD!iEXIV^+;>1KpvWnA8Gm|YG;=D(k%QQz=$XAMXgbVbt#S%r`G)LH{l%_bsIi)bk z5#B0=a7UOSIG=EYSt@;&2@+Lhw>!cjvGpSp%$C@bCRi=$kDDMxs`9`Dk!tpg2@=%$ zbQ5H#-7-y(qYnFNg2~z@=S=WY+w;5$X6cPPO>jW3d18WldgD4wF;q@5!CQlIs|n^B zy|L!!M&nu&%y1Cbo5*vM_}N50n#KaWbriE5$x^fCh?&HjYyB>d2wo1Ap}40NF6rC` z8hZYHy?gLQ!Pl1Vg%rl$*PdPxd<)yttAT&$-=5VL7UGcaP){S!%Wg9x1oLg7NEIu; z@{ss5vgN$BXZUwOW5)?e!?sQoiwANf6-q&v0uKsXMeT1{ROL` zDOJ7qhR&|GIHj}taWKO9ALAPNS`Ss#k9Ph=lm1%A?{O`R1{huG1VM`JlZUV9@&7c^ z5oMjnG&Nt^plJ;9;y(YNZ=zjv8Kwut7YZ_ikdd@=FMI z+5q><)I3ZzT*WI3a0bO zGZn;eCGV-=GG|FZbjAf|s9+Ia@xBV4@cNZ1Sf})eQ^8R|k15v$VVjD)68JI^M87#BKQ^h$7i(i zeJSZFfx6p%*#iA@J+^0CLyf?HtM`9vo^*ov!TC z9sw7$mXXdA@0kp|v&RKFXHlCc2b8M^*ZhUYs6NXfk-*q0 zzvkVE_xx?%e;>ntm^YL&n)G=^5X1fByit2wx1P}1*|x9fH~%b%Slb(q5*Ro>uN_&( z(HlCs*>G<3zv5`R+EH!p@x{LJ~D*dzXhN{%syTWnE*)M{G*}hF-ujKBp=# z<0C2%HT}=)?7vyt|IJ$dhjGlC`~Pk&Bd+qVm`CIC=QWW{X$+Z4YUFobi8#z~Pzi5H zKoYeHGej%l0uwM>39DJddj)J~10E<~DrdT+fMuNi2)!*=9kI0v!e5_)9zZjf(!i05aMFM1S@-7f2qc1h3l$Y>Y9l&1o{v6LzbS$c9pjKbN!t9Cn# zb*SmCh}TZoq=$Vv{RZSjb<%1*+|*GO$wGs$#z0~W`E6ecz#jmAG+e+^D~YKr+@vSot zP!_H8hdr%1ti}?niMUik=`(|kl~DQ$T_V9VK4_5y^A(x}l&!HKgYrb-hzv@$!XaFO zB%%Bz5po3GIT4Pl1WdW5lJMEbs>{T-F0CfZ>=yzH3Dqgez8Uyp#NwM@rp!OD^NEa< zG`IE8!R@Rb#<=gpv0*1pH>8uWJXd30}AXzJ5nHySK z!)l$+aUC4fW!Pzv0TL8|e-oL*0<0Ix{K9$Pc)-7j%t8UaEAypWZLBOv-mj4d{4bnM z_o`z{C~LjDrE2Jg{B!R-ePo!dD>mhD(8ThBgPtf{9wdG@IGD${U*=#FqsgFG)tgPC z>RZpV9Hg?AgB(0zElC{wWY^jITLi8UdPmOrzJSHe_XNmb&T{}Ol=@55g4cLZfOkq= zk^tetFxxYZKBmnal*+*^y`441aBzanyI0VqRF!Q?m_^)XDv@&+5xz~laul$Zar&X4 zlY%Md=#}*~Bf$MmL=)ZCQ#M zUbmy$afmR7h3SO-N)L^^A2Z146{5JxZv(yFlWbk@J~sOYuQ(Rc2+r?EV%SbE6==7y zkicxV&yDCWy&w>BE-zj|ie{kJV|!dLn{Gza=WG>ZGv;Y3 zc*c5W3$TXMWC?JK)9e%A3#WZ6zyV%+QGi^Ymf4{QcrPGJsktn`N~QL-09%xZgYGMZ z0|E-+niK)|jdqU!$%4(sSS{;rk^io0z4y@$5~vXn3BD@A4o0^~grf`!_A}Vv<05S0 zbYE0(o@=yLgcUq4)la-}j|kHhh!eLdbW=o}UK8fMR8Vbdw9*-clv%lt%|IPVICTf}!;AiQNYse!PB6AlEzcJ3s> z$aRJ1+CVs{bczauIKgRhAUqd5KL@~86)l>ka(Wg3k)r4A0JtGKWdy()$@xeCWJxr4 zf!b+x09;c$EeL?k8ppZ*@K)pa$q$ZboihF5i`Fy4A9m_23I6a>XSw4C2?lXrAY3pQ zlLO#^!3p4p!T81><{EMS4;vjYFUP34?gxua`eZ*yGdW!HgWHbo*wQ_-!xBG;u!Jr0 zgYy;?u2wo}X86G}XFVp|bhfJR7+%&WN z;JBOnXMcF^CL#RE4e{b;cbc5)ZbcZYqxaNI*b4?Ez|Da8*K zdeyw<3y-}@Zu5m??_L?c5aUBz@+rE@7pD5A@L=a3k)IB9p3A_W^m57!qWei;E79Gg zS0TGt%T$H|00Ro2(8Ft`B~1@=g;GcL@JI^AlymA}oC%>t#C%i%$;7+|@hUMV zDc~!qjOlwBbG!mRGv*it#IYqYq z{Dw8}l-;P%bS}?-gD)&csT=3K>c_O=QVRd%}sqZw&i5b_Q6 z%*zP$GS49}p@cQBXF2l$B{W7FI>x+D0Wrjk%<_I>Mym4>yR3xeOqH`r$Yjh5l@QLF zrzv4QTNzWHvt}edvpMriWWBjiOnJhYGm!!3%~uq#fv<%rA9?d>1b1zK!ks=t@3DHBY;L` zq&400_`5c;p3eN7+J50a+J`$t3F!nG-nYbzuQ-hvi@jvc-<8Ns7_*g#y3`0C;AWGb zD68z@~&81 zI!&O`%Di)jK&c57v+~0Sh|FB;PddPBMqFY<3T2#bgjKBmlYx2@`e1--^cul5WJ8Rw zfz!P+ploG%V}Scyjc6mJ@Gi(uX7ObZPExqtG{9+v{KnB_+Jq`hwUVc}}ic?u7ymJgTn9wObR{(MT>)(4CO7-x9H!e(N) z$HH}@Pp95440ovoitaWGM;P5rl)V|}^DMk!Oy@A2)tzA>p6!sgHm!D$riCmVplv)Q zn)%d>1&1+#(ad9!%HzVg$!O-%Gu}MCv!g5r3;R$qVWcArY-eKr(GE~>G1P#9R=s!s z5-u+#Xh;=!vzeL`)$ov$E=lm6)8|U?gO`p=uu$RnRDzjG>6k=W)5j8|D$UO&c%}5Y zFToC#uuXymqI5)pt)lB82~LZMmR3vrLkSWj{vOIJ5`R#_F}B~uGy^>cn?szZFvyAN zKT(n0Zs#8WD1(e}oT1BC<@YB?`up^JVd zy)|n2!N5hLf62gfrVHjhXPV~mZ1mE}2U6xO6<*uOX&aeX;(g5vCNpkVykHuu-0p>& zN_ou_ZgM=Phx48zvOe;W!U6^#*e@2|<^>O>#_PS{ zwAyWv7d%mGCV9bbjmJ7Kh|sF8c)}j7;}K8D)oQT(PMtX26K?3-HhaP+ohHT;PU=N0 z8E$a9?FIV`v=dhiZtp$dy+L!&0|}3aHC!|*@u|1QDsw#HfP)g-I_03mr#?6o-R*_k zf$oe4EOOLf4|h6xT=jrUj)=h%%(`1h&CJ!8c*0bt-DEztFRm}38E{C%~RYwPI$m-xAp+x?yko?;huY~14tn0eGuyyQo9i6Ay7{23e~II@ENuJ zFM{&wz&w4vTD}S@4260XY`i)W`!2?pEDS?70PZrvYifaIL>wEz3iCPK1nyL%F(Y`2 zwcd{`0n`}&CJ|0>@QfI5QmiUG=U@SYXyiC!M7njIq3(?Cv1UyE%+4gX^<}+FT3{Ii z$B9D}12<$BTUMFxK5pgvoDoURM{dtAA08#87Es0NpG7F5Xaps!zL9h#s7I2qhV}G< zsJzEx8j$M#>S;Wb>oS{1s_UFhalYXd2P>Gi-#Pfsp!68WI)10r!woanan5sjxX7u0 zawL*hZ{o@Fe9m}e9BTBdod4{{MQ8v%m8`I@p+1zb^~+aV2SN+l#+XtDZ&d?`s(i^{f8Ja{jU(Hpg9br%Fqy&A1|# zLBeFA7uadS%e?!~-pF=QzZA>`Li+Nj2uUE)4MLJh(R}(ORRw7)fm&njaTn+h(BJZm zfpv`b1@*I}eS*DUirMn5_tqVc5a>(qA&zTpZHwBp(akRnfwJlagw#NxakzRGA(Q@c zuh;<87HKIFf3he;zWX)b{!(`csRMQ&8TEd%Tc;OmCdtA_7Q0r^(GZU zkD;BWun<9SJ*{J$5MLc+`rF%-&-bdE#z8CXKx5cMNM?&MRD{og6?BMa+#9I=|}O@#EcL?L5ZhI)!qpC;re`OWV} zOhr;$zH6Xf!a^yB7#16eU`e|^^cJfJMjunlkTXm<1mjrsUY2ZNe_wOODuk_OVZ5{w z*9S4gv9N+VX!}G|)Gn2gcCt84CHJ$)fV&>X6t-R78Zh&I`Td%jz!kt%3WET3IZ{L2 znl#D(UJY!OCAu;Y$5}mhSEDvxkGay^}cDfulm*KsiQJ*}!uK2QOLsK6fN)PrfUu&i5rPgs#8s zn~yBupDBxj8C+kxT!v};S?MHIRRvMcJ?2{+Oy&AmpYie(Rx{95T+G0D-82T~6Wtf8 z8rC6KkVXbt*QmQx9D@FRjsA6gX#hEmZk7dzw}XD+0V^$WL_+a~%+1r$7n09#EIA6~ zyK!G^Bhn8AydqTL^@-4nrQaBRloDpLYdG5;rioLC9#P*4(qswsZ&A^{zw2vWF)%_z zG`5-uh|)Gtm!8%1yoI-O+sP&!PYb76Y9L)=Vv zNqPGkr=D9^GbZdr5^IQ4Kq{v}Q8Szu<}1itUYMyMi+M!DCwS>2k}rNxep{&~q>ikF z(l6kko_;Qe*wTWsR6G%9a)<^@_bKNa7KJdQLoWCfLoHocVIoHsvBEc&tYU?CEJk3CW2Ao3DmczI#*`%-vMcFa zHw2UDZTz=@{8fMi zLGw(29rEG6&0iB$LK|l1yX)gD<5d$%yJcG;wOT^NU9`(3f6-ccMkpc984^X(sOyR@ zM_HK5+I`*l%4hb@+ZpJlU(3L->QuV1L^5!m=qEC8kMy*bTW__y^~q7=Vl_Nc<3@0M zpvEC|zMzJ0#63d|TN%YPHSA?IpHLoPTOLruMozpVp*UA}20q0j0o~3!-;z+8EBr-5 z&f4t;iV})aSrSUFZp+n>tTacd;hNIt{+ZNy53_Ecs&cdFe>rxKu80xyM6OD(7D##)CXArr?b{ieN5@Jj$R2lc@bO zO`paEZsuVJS3H4-XPgP)9Bw4o_U9-hb&lJq)K|(@Z&4dAXg`ah4EHZQN@oknH|kcY z><_BwtosR*_*x%$c+K1HVblO*O7TyaE8zHdo+nUS{@DVo=G;+gf6EPs6W|l?hywmB z1-5fYVZ!9g)Wt`vQukE}o0PNi-mAQPrde_k2W^mD-%Zq!9Apqf1og+|gd1}%gDmw1 zCJd8Tv0B_jhgj`I>Q=6;o!%Hdi~piG?MTxq(nB8VIRbR-fNzsQ)VFyulX1SuBcceR z$H|7%JmSKR*KvGUe|neJ5y9h}8rQcqtu8{<`88vbvvY7NdZI1d`XfHFs6Uiej zN*_*Vw8)!!UeH1`JMg&{=5tQzTHM=bd5mljU9M_T`gJ{tMI|?c&q?azTG**}i`Bvf zHFkEMM%b?zf%Oh zbb&3(!r`v4NT~nV1wIO;pSr*vmE#>3*ek}9pDvIoX);~lym~Fa))hV)EUR5%ii7mr z1>zixlU(74Ljb0~HR*4;K&m5!XPSpibA{QKRtP_}2v}2!lS`HhTz3*~xInnGJHor2 z_317skb0iMHk~z?KGEfU-db=2oF)AGPM#^?3ni566`IQm*r}*v%eS82wLl?j36&U5 zGC|o?uepk`tq-buRyTy=MQr6M5nsbiViJ@PuP8yCQD_z@;jzN%KUZ+ogg}tZJ|I|M z3(9)i>Y=ihZXmQOX`?N&za*4A`#E}Q9TCNoe+{}BmfIe>-4?LGB_)yrO{p)9+&-{GNqa2Ah@ zN6}0kj*=P(KW4P&d6fA5&e2msF_SvKXoU01d12;B&X`W`w-h+TLkurq<{IAqKIQGM zwO*?rmX!RUf{WxnrtDx(u^5R`>R+m0gVJzQ1^blPsZYvv1XE&EBW$>*uvi&NyV}N# z`VcZ8f7pVbOQ5Y?Kjdq3ZKI3jAe^DtG>*|Cwz$a{UQ%b^8CKd$`Eq*xZN9{iKWVRC z68;jC5AXb2{SLC;*8!(#0-s1(iW+vlgxb9o=?abQwnqj4gX9Npf4B9r@-;f-W4)CfyMG~G3_m*dB;KyWA|Y#_z1nB zfYo2CP!DCt#c4XT|14i>G6!&3{1^uQ?HgS z|D->mX0WXds|z6Wa_Y6Nf$dqVZ&%YTYQMiQ?^z$44I}mVoJFLsv}Wlu)k;Vo8Q8{H z^^++3h=Ix^h7_5}{EoZLR-1d|XG0MYbula=Ftkb@FG}5jXpzXZ7-TQsr=GA$32nm3 zW`X)x-=L)a>|>NT6XG0dY1Ckc5=AA$EG10gbTgC?&56^L)TP1{YLKX#q=W~Y7_Nkg zyy2$;X|FC@L0uSqSHN6_^hyCM6(x31#zD6Hvhs_RU*}_(U;N@`VlxJ_TysV4jtXy= zdCwSE_`o~PbcGoT>S^_;phpsMNw}^6*r+pJc7aH}bDAq8>W#Zx;hWz1y$dWb7$3O6 zS_Ad0y3xTo)dh|@7`M8>RfjmN|D(w{#s%g&8t1scJxAv+&hX9A_|zHF%+8mb;jYOrry4$V7{DJh>r>rrGK z*N9%@*Cyb8C3GLpW!(xVT8{?mKsMKV&M+c zAPL!G)@BdrP{j~|b4DE&cJ#oFKHfk7KDJC{pu7Gvf#DnNd#4TG13K7js6%xt2sAXt z;*K`vcFxk#mb)}7n zx_VZ+Okf?|1~jdv%{{7kQ3WrE*EMRlu!=daf?a&sb1Dc|@(Ax#7C)nc1wvpt^C7RaI3B)yUEzQTHcqb3L5$il{P-pGR==G>77zsFU;lFRwoR+&7eHEAsSyp^!> zc|?ez%(KH{4&D4u+Yn7sqtT)Lk-%InI;P7a^(o-7EXZp1PyS(VuK!~PV5Y1dF zKWk=FD}T*Q>hIgiCkdh2aZtGl*zN)2%BiAlp06)u3J9qxD7KNI9+wQKRPdT!gxbm) z4&!QMGmuw{6byS+uwPK#R>66p(p{8>RRgSbdl*JQ(Y7|(jGmoZVyJ0dpsjALryg-} zJv~bGZCl%MM>Fa-uu~qNB9zs3gj!Y`P@%eZ05lD;^|hdK6e-py|G0a}zQ{GZc^ISL z%H!+mxA5?t=r{2w793`6@}TU)D4K;P^kW)r^^q(L5N1=eL;qFy%XqC|abXu-!=emT z)mm>=`R;`wNeQC_11Bmy<40`bqDd3%HEPMnq!=+*ES4@1?&x{*-Ku@}^;Y2!ht zN>)7zI$C88b)b4Ilri;#`ZnMEZG>OyEic1v~qBPCI$d zJdO)6otVxF5JQZo1)LV?q5#*4bX|Z4gesE48S#w(TN&|{07n=Rb0@QR$V~x}v+Aw@ zn-onhV^O8yHnlG^Vs^AJ+Wt-xWL>K1lM>1}zEwg4%?l+i4jskUL{U|OPqu-@+vr&pE##ybkcM?m@0&M5U(i#S$=;)jv(r$X_tEHbYlXg)&)X`Sf zRE+xFY^i&Nf?2(A`f02lw*7(IsI?}6fyKnQpF!LfcADDFjI}-I7-o1%ptlYMotdO~ z6a)K7-Z!8Ge`!2~bh69f$mn{gR}xa$G74H0p$Z}OQbHn0{xd%MouR=1gIy=mgSK+H z1a1-a7eb~m>ZJ^cWPZc(MSy-3>K36~&uqr=7BydVxIrE5I$WdvydAEvu$FbW#6k*N z*7i&-n|+h!F8yYK<^fM>Y7&n$)q=b7G-Jx(A(OEjLUhFnn7f)a9OU6VOLyxdPFPO; zCB#_eo06n}ue6LoWQ~Gs2Q^}Z5l*)#4NzYqB!*O@p4`+g33*Ox|Mkv`1Ml*ipNHS# zgGl$A#Qm;F{TtA`nT%<-3brtgxK@ucruE2&Fv3a|`N{}ORb&C%1yjDUrWXQAhlL;E z3gJ8sBvAN<$Ir6rJL^4%X^?-s|AFuA^K>0#z6S{^{Qusg>|iBjq&@8&T?Rfnqo- z>@mV7>IC&ID{eE=k2541;UK8=Wj9>wf=8wi9tmeKd7Bh; z)(AHwL^+$)iql3osdk_30FTtjz(#5muZ^%q<1^C%p33kHtzx3vb%3uj{6Mc+ zVT8B(wX6-FS@kLU^8|6QgN;t$dvtWTirlYok-&UHZ=GzGuf^{qvTc{_PZPPy1|sgk z9z_l?^y@je2lo+S3q$S@Llkwe*+2i8qr0{Q6tvz`@hWYY$3R^JvJk_>%?wO1#!+`8 zW|UcXkvYVMQ|T7t3xcl|FV>OoqzEX(HZ;Cwp$Gk*%t+xOHU6caEm=YgH(5v^mecf# zi}V#Y4l$fUVUp+ zRBAG8SWG{5qMydXTQWM8nwP}bX;@XOJ<4SU{tz-4=qez|9U`PLFo_s%FtCUij>-lv zI~YhMhGbcC?n8fNI(NC?>l#Q(E0kvy)yg=nD?;{)}a4JmS%55Qbd6OE2 z@cGXt4l=um@F@^inD^Wu_)Hug1j0-=tAdeu=&|5h z-gF}XuJL+&^aXD?76{uE=63;bLV?5dRpFW%2pg38iGi>~kfMU%jNp)huu58hu*#AY z2oF@cgg|(&GOh@ODWWbq5VA$b#ewiuIzrY5!CkHIrXYyaX_g1U1)cGGAgs|>-4X=Z z2Hy{Xu+nIZ3xZQdO=KWkHM-3Xgu@P+nSpTLaj~w4XVIy@*E+pcrBhp;@X&i@Wx+dlQ_IH`$w>#EF)ODep z?f$fnvMdDKU_Yrm6!o;>Tvxsf@$&k&`y*Dptg*h;Cx+eDLFfPt>~ZR&-Pi;w`Tt9K zdQK(wf))Y)QeOU^U4Lj3_%Ctl2i@2dD*IdUm#>^4E+bRBJa>y^oL;M7^Dm zjeoHz5xn^#5Ma}b`SZn~fa^cdJH&0(1jJ1B9G|c-uFxA6HWJ|#3+q|o1&dNn^M8D% zcr^{u=*9vP=fgz3mxr^Y>V6)vjDVuYJyv~;M?tvuab&kS;Rp|tW$O<4ov29!+X5;S zw&^HjQ%gk2)g5rQTYj_BcIuyyDscHfN!8!(_xJ$)2G@MTAK*};b5G@v;i2lEFRW=F z2eUc5k4C}GwE>i-`Zao9RLJ8D553(^@F?OsEal-6ahT1+9>(tiA{Lf1ZyC>24J_pJ2Q=`B*B;lvC53U122q3eJ2e~?8tv0SimK&R zHM|t{N7RraiPzQSF!eSDcQj(UmORn)`OA4#0pvr=7q`Me+7?jiAK-lJ+HQBI*-9^! zs#h_PLu%*oLcjZku>ifEFqx5da&Uq1*~`HP=CPgsmG497+S&D(LNjqNw6oea=tqet zk0lTd(&!zel1=`lcf7@Ddh8IC*Pi*eZy~tCTqWS2@CrF_CGz-tltu(kD{XeG`bNSz zf~>Co47CxcP3xFJP#Tc6YkLJ4=dvD!2~rzb{dtW0LIEB!=BWaFXPhPruz+=)DIhZ{ zW+G$H8lwc5!kHH%o5r~<6W|Od%ofOdj(%d`E-zxqISO&20P7Ugb=FRW9%ZX zPZapVkxIAeD5NOYlYIQM{9QQNL_%{?qPI}@NGO(gr%3dJY&#{G!I-y7kiuAQOYo8r z<0M$cUL$8E_{vdtVZ5+}-jQ>NmSDd^kI82gRq1GS#^Un@VW|Ws1;6DItWb@_l+7Z) zULq-?uu>waq7OipDB_bZ#8~nh9`LgIVmit~C*uzK=``wcZYMcP&(^;(ox!SawjQ^5 zPUH|lpU$&CLtMNWxvtHu{+4D5{iRT{hnd47+z*b)O!vj)z=WiZx zo!5NvfJlX9jVB~19OFIVyu!HL6CNpqXivDK^gQMXn+1WU3*NaN5Uwha;0Xs+r4at8 zDgY2CdSdl=MW17sDFr<8fVYzAlLt&uyM6G0m1_Mv4>+V2w|c@&wd*QR_@r)y@La9q zL{E6C9hmG1yYk`8L&j-)@Lg^6m-ZY``*>-TFRL#=s)h19gx85+$!EiBeh#ocNxe_Trvv~hpI zNhaA|NRxx|sO~kr&tjvqKCqdpXs}=O(kNw1pE8=4EX1&y=M?Anw!Wk6pMc(WG3AJe zDU7d0n8KJ|im;S1J{M80Zip-m<9twr1Xj2&k|Y-Q=R?-CO@yzkakU5;oG@R6yPW?@ z5ti|$c_M7)jdMl#!kcD`Fk4}qDZ+7uE9QPwM6z)roEL?gBDpS>`Taet_uGx_Ak3<# zP5o9VZ>_jxK`s?<1Psvu)5O{%;dC*5*+0y{EX8k;MUG~Qw4T7H5yTxJ= z0Xf!Ev+X>yww{2Cu&*>7rQW4IE-kO)Lk;*aPHm^h5}jDnSYBU2!$?Yw~)FvX%=i zFGX@t6J^NdL_+3pGtqu$QRbp|gFZ0YM=VTaYtTD#+6OFLW*gd+5Q$TRt<|O}&4-AmVohK9Q!`3|wOP_YAqt)c$3=o}zAL$B+!|~5}R)8$l@uUEs zSoqP4u!T3K2ylrvAx&JV;8zMHo_^ZmnL__l3Evc& zmz2hePn3|P^h5G^NqLgwe}~E?P0>6IbdKclMG7zHsoWLE!&Sya)u@bl4*f7h=?H3L zqsyVpmkHrRT);|tIBq+?2`p|xk#++8z}o>LoTb`j3QuE&)6{N;W~Q*gd1ddjFxd1^ zF8fq2`%o_Xn4+cv2w$|8r9RL~yGPTLFynF-sXM=bCAs;h@b5a*{}}ftZha~)WZ@uD zPp49I=b0=baA7t}UNdF#kBd&`VUy{XHDAa^RHPx`${VAEC89=jYcL>B0?_2a@Y^ZH5(YX=weEwK{09ES` z9ldS15JPWWZwM*Y7dpHDoql-g!k~!FS5Bb5A(Sp)OE=bl(7=Cy9cx30|10qS%Cr9~ z@c*~8`~Rta{!i<}|1XUHf790gwEq7;X>I&JbzS{Wc;ElY9%w%+Oh8WF)r4ZZcTSnKjb2T5ApHy!2v zzv$qic06`cCmh$4J38T@o;=cR`(2;w4mU7%gB&3V9BgF8cn&VGnk5|EW!u}!=xg#X z7}&~~!>Q3|1KZlFA>dl-sKpuV-Mny)dSq#XuXXC%Q-YNes$b z74z#+Te74Ua|a5gn8i$!aRQ)%P55(SVqa;Q$dDcxvql8!iKzctCnRG z?MUckt=HT_JCT8TM4L3HfWJye8vVLtK7A5U+prbHC5C}L)Wv!@!!KmWRHk5l-A+YPQZ~#J zKC>`fKbfQMIHq#&n1mu6#niz;X86}Ec|?zy&#?SsmRw+4{AwqZ1UBOzvd~|DpQR)P-5dvqWvV4O((i6OF~JVjInx9;S=~(&%;3aDCOFEK zUg`)>cwx08Oi~;pyBy)T{6Xn6f=jF;TvZjAV}d!NF4+W$qBzL}M`ZY>3}?&mB8kGg zBnqFC;kPn8LrvigY6>5b;fFGuEyHmd3MXqQd|rkh%J3vDg_me4oT)9p*#yx#<17nA=oCyx;%?RI-;cOXRW}xs+gA>A+4VvX9_+X&vkwyw987X{5hTj{7PYz_6 zgOF|_8y)x~CbHLo-)kbN4wsnxIxjlTQ|LIG6M2ZWk29uE9&g#n!#e(cUiw$oGE)K3ys!n4{jYiqFj)ZnGks7)l<=C%n|DvC5)=r`>%%u5 z`#_Ds7Ua!!FVdlUuZs$tUt@{_t`fse1-v2VtqPdS)Z9aF44L8-5XoBRP^YLGtl>0k zdCEgLM?d$vh7-T=kjj~E@bH48cG>HBVZDOvf{@m};TS>Ni z=FYMTSh~VM-!}A4h;)*H3uJR1o-1Ybo4%Qc5iW7`8%*@9Zwn(VquSZ#0JB)lA|8_2 zk_&kF$PP=U7ewv;9<29@U28#AyAO6sHeK_4)rMGo^X{W~lYVqKifC6+L!jc+BQ;Ha ziWmTp?6W2-fc-i0He@`nK3}>iq=nMuCjR(EGtNB4u zLOW|2>m75`bNbP*;r4alrELgBtY_Jw@;8=*1ssgzr_ztM1|uDmt-PL*zyx~nT>XTF zeT)f_Z3goyAB~`TTQSccc&N#=PshsX4+sme)kE({30GJc z!k?s8VFAynJEjuUWl11{GZ^&-is4OrSUAD#&ey*D{wG*`|Go59sQ+yiw$Xk+A-)LC zV#Jj!(tiDB77j7n@;yh_4s|3ufNCi=}BTp?m6y;ZC`&%$KJ7pd_fdCk6NqzBY*Kruk>PQoR) zi_JUt6Z{lqpn$inerkV#d~}WceiQ`cR(kM=Ud9A|p#Dg^+i0&9Z|UOc-nBmOV)Zv1 zNBxi@DaTd7XA_(m`#psJl&_UP86eE!pxbUc9$?QXtcg3WsX4Mwtu4fIml~PTX?jD9m@<*E`wCKn1Av3R5cpbcJ8J%$Rh=jwm@Vq(`M?%YH_3;x5;@-RKy94n3r97^DZX${EAI7%>)PtKd|Ks>k!xO#J9A9{1FwXLY1f%bBAGm51!+l|%X(JQi3#sPL7&&1v&hVud*1mefE+^e% zZ%B4_o#YGCT^zH#VY!QOp*I|JDS_};7l&!yu);NxU?j=S>6;haadSm@k-Pq-7uiG)#4eOGKFMjwrw|*&S9hJi-Z#VWK;{km0wC zA=eE#ISTJ#4LNQ|*C{-eGyHIaGctUEGkkM{r96dWdBYbscqqfqc*7?**s7rLPKDuv z8)VDyM5W=K8=O>9_=EB`KhGWRX*8SM;gv?S8at%*Sm+MB^rpG)aMYkV;tugfX`4GN zbkH1fhffaDe0NxEDmNYFG*eeBbIUPoCN^MRKrk}T$^6C*;+-z5tb9*TYJz*0@JFaW z(CK;W-he9|@K3nSAPxDIt_u-X5~#p0Bv5sdZOu8!{)IJb7^vntpPnt_Rv&P}iigGW z{SQ+|_yujx7q@;}7pYtMO$6DM8B9nd2bUOjHivje|C5EOEWK&Fg{9)gcJ}|E?XTnH zHj@8gyjoIgTGD8w(ah}3EU#&8$IQ%joWy}UJDkgfnK_r--P&IBnwgoInVFfHnVFxe zf!%d3_xXIk&+qsAF|TU1UdS40Fuy~GW8z`h|yi{Rf%2h_!np;rR>=rd!V6>+u+B*t#fLab zfz}SP=@xQ$8oAHJu#0$>zX~rV#dI60Ihu?z>4)4LrGr=`$ky!b!td0LYJcb*U9{ZY z)`ein9NK&2s>TSi~uZ8ELXhe1*%sztrzlmS$zGNm(zmP%R+O7~pgrUHAF?A-ZV zGh$G(rz-GM(k#M`{$Z4k=q1X#rFWwI5EZ&Ba6-~^C@ZVGEota(l&~}9JRQJ^td$3G zhSy74$>4AC9KJz7kc2$B{X0@!PIQ-`59Lf~j_g)qttr3ClXgD>A-rjRT|L252MR@V7l}mAn@}_w zbC%y9)rt81dJrx(_Vr}&=7+h@fCCkO!D9{#(L9?Sn4~S$V&B{!{uD}@Z$PyMv9Uwz z&gNbQ<=RCI3lyrioW;IV|EjEPLl4f`rg+pZ&KTro%zr-;``K59J1o>jMoqzPCBp`Z zKa|*3LZK}0yOaN%XFLwMr(@R}z*u+oO!&SI9hvB%vn|Zpr@>H3%-3M7D{hHON-YHX1&> zy;FnBs=i!nVL8R~OWyWwWEA1s2Hci>Ck^DW!6OE;JKrV)uE>D}2FiHf zXagoFf!+ozRnn-UuE1s%Pg`Wb3U2o_DE6wO0T;O0%7D8(@KA?Ns<^4cNY%cmqtN%9 z)M2?AI;g{b)!d`Q8P(jb!%dZZyoZRt-8G3 zrnJ-H^OU<9OlB!(HT(i8do{%EDQh*jFQp&{SS+WE)yM_52hLi>c`V?N;-Es&l{-5H z4oPQ;fZN;|FJQFl^cApMb=nAM;j(YJpqs0W9MglzPGO*~`+~Jsf*-|&h$Z_Rh0Y`# zk;rdxorH7Bvs;4sQZ!$P-o)7;!Q1WPx~$&FnI*w%cjMzwujkB>pxNX2wiU@8_re$j z`m%9yY>XA)CFA;(Rtn)NG{}uX|Fn!gTZeb5EYR^?Sxa?T%bf8zX_$jNDN8bY>nPx< zf4Ssz(qX6MIJx2~9cCz2cRW&QHbsZt{BzVx)mM7zs9g<; zeb4?G2x>_Nc~K#M-H%}RS1R(}oNOcc*MSne)t<;_^XI-%(Y%XxZKx3QH_G*u>R*vP zRnmh~@l`!bhHuMtr1-hlACbG8eOZFVQW$VLidHf^BE9~E9Z;*AggE@ISL54NQF7zt zk%9+M>PyCIj;O6Mnd5@fC<@J(LS@jg4eGz*-0h=V`rl0a(*jJhP<-z~iHAvnQc-Qwcc%}9ca=zo+8JorUddB7x6wCMA zq6%`5nlWGHB>pm_H;&zZ0bVtKygF0?s8VUE1YezrkGW`lq#|!Xqs*AjK=DvvoMH_F zgCuz4d<=gsh~{5+wg%w&uXY9C5>p2R;5JLz9H5A9WJ5!_w?_cxsorh@Ds`6~fU|1m z>;UTF-qrzFD7=sS&`tLuXIiZn=oNs=MrdIG`n$#a08Dd>nRrci!RY~*WTy8EKueE4 zH2{k|dQJd#d#n}#c=Qz$|F_-I%(uUjyOdwlxlOtGotrZ3 zkP6(V6dmT7Nc={`Njk1qm5As=6p`DGnP(_SS)e@G$iyZIPB4MoZiK$-6v~feqU?q#ppz$ovRr7YWxaQTQItRw{VY z6FA?(*;L+#<-2x9Yyl}k!3;|~R z!lz2?5#wW}C;MZGGKkCd?C=lfCzJI4_f(>YBpW8>~4mbw`KE92Gp+rt)@fwmVXn>!^!w(b*{%rKT4Aiq5u* zH}P9){EW_~YLqW&uFj9>Y>__p30y5|^Jk#}VUzwfSvefGfIoY_3NuN}K9qdNiAPeh zfdicHSJ_dHZ*-{2x2tTF`qw|k1-!!F&HFZg_PwZ&m?Hl?f1Yb!WNh)njD1A+&ye3f zF%Fd1`1?=Tm`F|P&5Y$_hmYotONMpWw~kr;WvalELv|74Hu=r}9@A+fqWBVnk3^&n zQH|?Vwd0lCF=0o*VenV@yZDxUTsGg>Pho+^-fgJA1?N%~T``rhk$I^vA~r>e$u{sM z*Yy1cFFhAK?+#;^*b61Mg;CEhIVX%F!Z{p*t1NM22s%i$DV=I?X&8=5Ww(Tp!vq$D zVWnJVeHgkafdOF{tt7S&Lw{aqUKkcr_T?$6c_##;T_p~L;ejh~6R#+YoJ8oWiR*Z( zW*-g1PVJq0VVFrZr(u)9mxtLUV+xxUMvY+zyA?v+z`~6ImVbE&4qIi0gCI-pK|0qAhQ6{ocnUuusNW9ZI0=O;m*$oJXu4bR@rVN5rV|^4+IEZo7Acm9q zCt_cX)^-%g<4>`o^CXl>@tj=$eP92EtXdQOwh9Ybu|Y1tOAm0NL^w{YLgqbOY=+_< z?t%@R=eXEb-UItjs{FFb&Z$rMy!EfkDn%CL5{9VA*#3q9X^YI;s%(hDvs5;cWI_(- zeN@(!BTKo!c^8#k<)8m??myu>Ru*3t8AyEHWvKQYG9t!1$ZRSlr_7RgOPNiRYFv>Z zUjPt2PmRbqfzBLikd#K|+lI5HbW#_IKUUZx$vmdOdWl})S()!s*hBf5^$M&~-p)Vv z0_BVq41V*hCHCN5Mv-K(9N3gI|M~P~9KLjVarn2>hDz4aBIa=xI;+5a_Ag5K&W|eW z5mk-B_pn!CJ7scdQ}|YeEmc~xKlovl_k0acd*6fCDBh-j4pk%Q%Sv9u(HW5rhb4~O z{H&xOH=u(Y+OETHIdzi`Jr%x6XQLG2&%3zTVL+DZn?uERJfjR`uz$xFn+HEvR>2Y!{{ zCt}l0k!E*^UzeZ{netaenrn$EMZV>${JsD4_^$s;|E0yaxtJx~XRwo1{U7@N$m1h( zk`gcSFY?<&8=3Dy(~Ow@X?_9ER?O9#Ui?EYqJsHj(h`dqOBhsjwlnyO&tYsJGqE|2 zLhAF4YdkK~K)tE5Z!?20`3%NT^lzqxpXz@+t~gz`z%Gc6=?l3`D%CboBlbv$=eV#689a6S=d>YOAKJ60!!ap#ewQ}LQhREBgD zOI<_dcD{}3bIx0YeHG@9j&oe)4ss|Xn}f9N{=ZD<(9OI8uG z-IaT9K7$@CW|u1z3HQxF-KSY~suz)bmvWY*P~DScRE|!t2~te9-=WXQ{&iO&Q`Bin zVc9BT>*~LUF}zn=HnsNJ@PRqrhBi309@;QMN*HcauIWKGIrH|l;gPhAweX_qVfMD+ zoKkrm?&hII7TnXw|t`=;w4SR(7z=CrkaMFSi zT5!7s>ojwo1;@1DU<>YQ2=^A~W=9(i>!aBr6uWMHrUk3rpHH`8nHiXF!EQ4Vv5o0; zu%V>~8Ot^gZ)vmL9tVYsM=Z11RVqc4KTi1lsGK~hQ+5IbCL5VOLx(Yv-A0EwQZmAd z{<3{tgYk0OQ4QLuPc7GBh8h@1COEr48Nrj=>9D~??E|jl%^KWskzCHv_ynDG)h@6n zY(hzZO4<+BG8rbbwAGP{8mP7Qla8|Ze2=&jBa(O{?ytUq%Gq>fqD2_L55E~gChxlv z!V&Tr%21hiO<)0+AC-X>KEk?71HS8JVMieS zXjxd85Ex$uwj~tpTLy*(1HH?@tYFbrW#CaTu(%9#4<$}41B=4umD2Da>}yjFmL{65 z%E8V=r$bp7nrxpf2YZwCE9K!rvNNnaj7ceQygal{JEDzU81`m{lcBO(N%E6RUiP*EQ6n@OSIarou!g~Pkc_t{3#b&Yj zlrOk1n~MmJYPfe+#8id#R_Z@7kD|6P<5{Q>&8JhWap9#LmN2s~xwTrSs36E24>@#| zGtYBaEmz;caTHC?wK+z8rF=NgdNSh#l~nnP?uF{rkfT=mE(Q9tz#j5d)ORSbovmgk z6-w>0O@ULgvs{5Yau}eiA`U8Sk|LHWFiUyiNnDT_fxh}48OknU2WbU0u$Fuc_0?pL z^3S1sBE4ht-uskTB_ob5y%jlwG%NQ$Q%Z>u$cv@4&I-(sL<u?Q4UBTZ0?F#+LT((+c0pU2w?>^o4q^XXUSJdUb7zAKu5x3Z3%0At<6UrB?ZEQQ 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ν+C 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�X)SwQ)QyQVMGGCh9^BTjFP&n&|prK%L& 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�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 !Dc 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%0Du1ePL!DAsHv5BvDRMda%i~; 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

<<(c$PS|lLcczX%UXHEhaD<9`8?D{uE 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