Files
zeekay 0c2f028a8c Generate the Swift client, which this copy did not carry
The forge tree held the package scaffolding and none of the generated sources —
2,435 files of APIs, Models and Infrastructure, including BaseAPI, were simply
absent, so anything depending on this copy had a package that compiled to
nothing usable.

Generated from the current API document rather than reconciled with the other
copy: a client is a function of the spec, so regenerating answers "which history
wins" without anyone having to choose. .spec-lock records which document, so the
next reader can tell.
2026-08-23 10:04:41 -07:00

74 lines
3.1 KiB
Swift

//
// SyncView.swift
//
// Generated by openapi-generator
// https://openapi-generator.tech
//
import Foundation
public struct SyncView: Sendable, Codable, ParameterConvertible, Hashable {
/** Actor is the identity a reconcile writes AS. It is the loop guard: a change this identity made is one we already have, so it is not synced back. */
public var actor: String?
/** CreatedAt is when the link was first declared, RFC3339 in UTC. */
public var createdAt: String?
/** Direction is which way work flows: \"both\", \"pull\" (target ← source), \"push\" (source → target), or \"off\" — which keeps the link declared and moves nothing. */
public var direction: String?
/** ID is the link's handle, derived from its source and target — which is what makes re-declaring the same pair an update rather than a duplicate. */
public var id: String?
/** Kind is what is being synced. \"git\" today; the field exists so a storage or database link is a value here rather than a second route family. */
public var kind: String?
/** Source is the side read FROM on a pull. */
public var source: EndpointView?
/** Target is the side written TO on a push. */
public var target: EndpointView?
/** Trigger is what starts a reconcile: \"webhook\" (the provider tells us), \"poll\" (we ask on a schedule), or \"manual\" (only an explicit call). */
public var trigger: String?
/** UpdatedAt is bumped by every reconcile, so it reads as the LAST-SYNCED time rather than the last edit. Absent until the first one runs. */
public var updatedAt: String?
public init(actor: String? = nil, createdAt: String? = nil, direction: String? = nil, id: String? = nil, kind: String? = nil, source: EndpointView? = nil, target: EndpointView? = nil, trigger: String? = nil, updatedAt: String? = nil) {
self.actor = actor
self.createdAt = createdAt
self.direction = direction
self.id = id
self.kind = kind
self.source = source
self.target = target
self.trigger = trigger
self.updatedAt = updatedAt
}
public enum CodingKeys: String, CodingKey, CaseIterable {
case actor
case createdAt
case direction
case id
case kind
case source
case target
case trigger
case updatedAt
}
// Encodable protocol methods
public func encode(to encoder: Encoder) throws {
var container = encoder.container(keyedBy: CodingKeys.self)
try container.encodeIfPresent(actor, forKey: .actor)
try container.encodeIfPresent(createdAt, forKey: .createdAt)
try container.encodeIfPresent(direction, forKey: .direction)
try container.encodeIfPresent(id, forKey: .id)
try container.encodeIfPresent(kind, forKey: .kind)
try container.encodeIfPresent(source, forKey: .source)
try container.encodeIfPresent(target, forKey: .target)
try container.encodeIfPresent(trigger, forKey: .trigger)
try container.encodeIfPresent(updatedAt, forKey: .updatedAt)
}
}
@available(iOS 13, tvOS 13, watchOS 6, macOS 10.15, *)
extension SyncView: Identifiable {}