Files
swift-sdk/Sources/Hanzo/Models/CaptableEquityPlan.swift
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

74 lines
3.1 KiB
Swift

//
// CaptableEquityPlan.swift
//
// Generated by openapi-generator
// https://openapi-generator.tech
//
import Foundation
public struct CaptableEquityPlan: Sendable, Codable, ParameterConvertible, Hashable {
/** BoardApprovalDate is the ISO date the board approved the plan. */
public var boardApprovalDate: String?
/** Comments is free-form notes on the plan. */
public var comments: String?
/** CreatedAt is when the plan was recorded, in unix milliseconds. */
public var createdAt: Int64?
/** DefaultCancellatonBehavior is what happens to cancelled grants, RETIRE or RETURN_TO_POOL. The key is spelled as the cap-table wire spells it. */
public var defaultCancellatonBehavior: String?
/** ID is the equity plan id. */
public var id: String?
/** InitialSharesReserved is how many shares the plan reserves. */
public var initialSharesReserved: Int64?
/** Name is the plan name, e.g. \"2026 Stock Option Plan\". */
public var name: String?
/** PlanEffectiveDate is the ISO date the plan takes effect. */
public var planEffectiveDate: String?
/** ShareClassID is the class the reserved shares come from. */
public var shareClassId: String?
public init(boardApprovalDate: String? = nil, comments: String? = nil, createdAt: Int64? = nil, defaultCancellatonBehavior: String? = nil, id: String? = nil, initialSharesReserved: Int64? = nil, name: String? = nil, planEffectiveDate: String? = nil, shareClassId: String? = nil) {
self.boardApprovalDate = boardApprovalDate
self.comments = comments
self.createdAt = createdAt
self.defaultCancellatonBehavior = defaultCancellatonBehavior
self.id = id
self.initialSharesReserved = initialSharesReserved
self.name = name
self.planEffectiveDate = planEffectiveDate
self.shareClassId = shareClassId
}
public enum CodingKeys: String, CodingKey, CaseIterable {
case boardApprovalDate
case comments
case createdAt
case defaultCancellatonBehavior
case id
case initialSharesReserved
case name
case planEffectiveDate
case shareClassId
}
// Encodable protocol methods
public func encode(to encoder: Encoder) throws {
var container = encoder.container(keyedBy: CodingKeys.self)
try container.encodeIfPresent(boardApprovalDate, forKey: .boardApprovalDate)
try container.encodeIfPresent(comments, forKey: .comments)
try container.encodeIfPresent(createdAt, forKey: .createdAt)
try container.encodeIfPresent(defaultCancellatonBehavior, forKey: .defaultCancellatonBehavior)
try container.encodeIfPresent(id, forKey: .id)
try container.encodeIfPresent(initialSharesReserved, forKey: .initialSharesReserved)
try container.encodeIfPresent(name, forKey: .name)
try container.encodeIfPresent(planEffectiveDate, forKey: .planEffectiveDate)
try container.encodeIfPresent(shareClassId, forKey: .shareClassId)
}
}
@available(iOS 13, tvOS 13, watchOS 6, macOS 10.15, *)
extension CaptableEquityPlan: Identifiable {}