Files
zeekay 1df3ddf6bd Regenerate against the document the deployment answers for
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.
2026-09-05 18:55:38 -07:00

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 {}