mirror of
https://github.com/hanzoai/swift-sdk.git
synced 2026-10-30 18:20:19 +00:00
The projection these were generated from predated the compute migration, so they described /v1/visor — which the API serves at zero paths now. No /v1/visor path survives here.
99 lines
4.3 KiB
Swift
99 lines
4.3 KiB
Swift
//
|
|
// DataroomLink.swift
|
|
//
|
|
// Generated by openapi-generator
|
|
// https://openapi-generator.tech
|
|
//
|
|
|
|
import Foundation
|
|
|
|
public struct DataroomLink: Sendable, Codable, ParameterConvertible, Hashable {
|
|
|
|
/** AllowDownload is whether a visitor may download, rather than only view. */
|
|
public var allowDownload: Bool?
|
|
/** AllowList narrows which addresses pass the email gate. An entry may be a full address, an \"@domain.com\" suffix, or a bare \"domain.com\". An EMPTY list admits everyone. */
|
|
public var allowList: [String]?
|
|
/** CreatedAt is when the link was minted, in unix milliseconds. */
|
|
public var createdAt: Int64?
|
|
/** DataroomId is the room the link opens, null for a single-document link. */
|
|
public var dataroomId: String?
|
|
/** DenyList rejects addresses, in the same three forms as the allow list, and is checked BEFORE it — so deny always wins. */
|
|
public var denyList: [String]?
|
|
/** DocumentId is the document the link opens, null for a room link. */
|
|
public var documentId: String?
|
|
/** EmailProtected is whether a visitor must state an address to enter. */
|
|
public var emailProtected: Bool?
|
|
/** ExpiresAt is when the link closes, in unix milliseconds; null never expires. */
|
|
public var expiresAt: Int64?
|
|
/** HasPassword reports THAT a password is set. The stored form is a bcrypt hash and no route returns it. */
|
|
public var hasPassword: Bool?
|
|
/** ID is the link id — the public token a visitor opens the room with. */
|
|
public var id: String?
|
|
/** IsArchived is whether the link has been retired. */
|
|
public var isArchived: Bool?
|
|
/** LinkType is DATAROOM_LINK or DOCUMENT_LINK. */
|
|
public var linkType: String?
|
|
/** Name is the link's label, null when none was given. */
|
|
public var name: String?
|
|
/** UpdatedAt is when the link last changed, in unix milliseconds. */
|
|
public var updatedAt: Int64?
|
|
|
|
public init(allowDownload: Bool? = nil, allowList: [String]? = nil, createdAt: Int64? = nil, dataroomId: String? = nil, denyList: [String]? = nil, documentId: String? = nil, emailProtected: Bool? = nil, expiresAt: Int64? = nil, hasPassword: Bool? = nil, id: String? = nil, isArchived: Bool? = nil, linkType: String? = nil, name: String? = nil, updatedAt: Int64? = nil) {
|
|
self.allowDownload = allowDownload
|
|
self.allowList = allowList
|
|
self.createdAt = createdAt
|
|
self.dataroomId = dataroomId
|
|
self.denyList = denyList
|
|
self.documentId = documentId
|
|
self.emailProtected = emailProtected
|
|
self.expiresAt = expiresAt
|
|
self.hasPassword = hasPassword
|
|
self.id = id
|
|
self.isArchived = isArchived
|
|
self.linkType = linkType
|
|
self.name = name
|
|
self.updatedAt = updatedAt
|
|
}
|
|
|
|
public enum CodingKeys: String, CodingKey, CaseIterable {
|
|
case allowDownload
|
|
case allowList
|
|
case createdAt
|
|
case dataroomId
|
|
case denyList
|
|
case documentId
|
|
case emailProtected
|
|
case expiresAt
|
|
case hasPassword
|
|
case id
|
|
case isArchived
|
|
case linkType
|
|
case name
|
|
case updatedAt
|
|
}
|
|
|
|
// Encodable protocol methods
|
|
|
|
public func encode(to encoder: Encoder) throws {
|
|
var container = encoder.container(keyedBy: CodingKeys.self)
|
|
try container.encodeIfPresent(allowDownload, forKey: .allowDownload)
|
|
try container.encodeIfPresent(allowList, forKey: .allowList)
|
|
try container.encodeIfPresent(createdAt, forKey: .createdAt)
|
|
try container.encodeIfPresent(dataroomId, forKey: .dataroomId)
|
|
try container.encodeIfPresent(denyList, forKey: .denyList)
|
|
try container.encodeIfPresent(documentId, forKey: .documentId)
|
|
try container.encodeIfPresent(emailProtected, forKey: .emailProtected)
|
|
try container.encodeIfPresent(expiresAt, forKey: .expiresAt)
|
|
try container.encodeIfPresent(hasPassword, forKey: .hasPassword)
|
|
try container.encodeIfPresent(id, forKey: .id)
|
|
try container.encodeIfPresent(isArchived, forKey: .isArchived)
|
|
try container.encodeIfPresent(linkType, forKey: .linkType)
|
|
try container.encodeIfPresent(name, forKey: .name)
|
|
try container.encodeIfPresent(updatedAt, forKey: .updatedAt)
|
|
}
|
|
}
|
|
|
|
|
|
@available(iOS 13, tvOS 13, watchOS 6, macOS 10.15, *)
|
|
extension DataroomLink: Identifiable {}
|