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

98 lines
5.7 KiB
Swift

//
// TreasuryAPI.swift
//
// Generated by openapi-generator
// https://openapi-generator.tech
//
import Foundation
open class TreasuryAPI {
/**
Returns the reserve fund's health and the current revenue-share policy for any validated caller.
- parameter apiConfiguration: The configuration for the http request.
- returns: TreasuryReport
*/
@available(macOS 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *)
open class func getTreasury(apiConfiguration: HanzoAPIConfiguration = HanzoAPIConfiguration.shared) async throws(ErrorResponse) -> TreasuryReport {
return try await getTreasuryWithRequestBuilder(apiConfiguration: apiConfiguration).execute().body
}
/**
Returns the reserve fund's health and the current revenue-share policy for any validated caller.
- GET /v1/treasury
- Returns the reserve fund's health and the current revenue-share policy for any validated caller. It is a TRANSPARENCY view — a partner or author can see that the pool backing their payouts is solvent — and NOT per-org money, which is the customer's own commerce balance at /v1/billing/balance. The policy is read-only here; only a SuperAdmin sets it.
- Bearer Token:
- type: http
- name: bearer
- parameter apiConfiguration: The configuration for the http request.
- returns: RequestBuilder<TreasuryReport>
*/
open class func getTreasuryWithRequestBuilder(apiConfiguration: HanzoAPIConfiguration = HanzoAPIConfiguration.shared) -> RequestBuilder<TreasuryReport> {
let localVariablePath = "/v1/treasury"
let localVariableURLString = apiConfiguration.basePath + localVariablePath
let localVariableParameters: [String: any Sendable]? = nil
let localVariableUrlComponents = URLComponents(string: localVariableURLString)
let localVariableNillableHeaders: [String: (any Sendable)?] = [
:
]
let localVariableHeaderParameters = APIHelper.rejectNilHeaders(localVariableNillableHeaders)
let localVariableRequestBuilder: RequestBuilder<TreasuryReport>.Type = apiConfiguration.requestBuilderFactory.getBuilder()
return localVariableRequestBuilder.init(method: "GET", URLString: (localVariableUrlComponents?.string ?? localVariableURLString), parameters: localVariableParameters, headers: localVariableHeaderParameters, requiresAuthentication: true, apiConfiguration: apiConfiguration)
}
/**
Returns the ledger accounts the caller may see, with their balances.
- parameter scope: (query) Scope is \&quot;house\&quot; to read the reserve/revenue/payout house accounts. SuperAdmin only. (optional)
- parameter org: (query) Org names another tenant to read. SuperAdmin only; ignored when scope&#x3D;house. (optional)
- parameter apiConfiguration: The configuration for the http request.
- returns: AccountsOut
*/
@available(macOS 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *)
open class func getTreasuryAccounts(scope: String? = nil, org: String? = nil, apiConfiguration: HanzoAPIConfiguration = HanzoAPIConfiguration.shared) async throws(ErrorResponse) -> AccountsOut {
return try await getTreasuryAccountsWithRequestBuilder(scope: scope, org: org, apiConfiguration: apiConfiguration).execute().body
}
/**
Returns the ledger accounts the caller may see, with their balances.
- GET /v1/treasury/accounts
- Returns the ledger accounts the caller may see, with their balances. It is tenant-isolated SERVER-SIDE: an ordinary caller sees ONLY accounts under its own \"org:<tenant>:\" prefix, never house accounts and never another tenant's. A SuperAdmin may widen with ?scope=house (the reserve, revenue and payout house accounts) or ?org=<tenant> — the only way to cross the tenant boundary, and only for platform sudo. The answer is honestly empty until a tenant has ledger postings.
- Bearer Token:
- type: http
- name: bearer
- parameter scope: (query) Scope is \&quot;house\&quot; to read the reserve/revenue/payout house accounts. SuperAdmin only. (optional)
- parameter org: (query) Org names another tenant to read. SuperAdmin only; ignored when scope&#x3D;house. (optional)
- parameter apiConfiguration: The configuration for the http request.
- returns: RequestBuilder<AccountsOut>
*/
open class func getTreasuryAccountsWithRequestBuilder(scope: String? = nil, org: String? = nil, apiConfiguration: HanzoAPIConfiguration = HanzoAPIConfiguration.shared) -> RequestBuilder<AccountsOut> {
let localVariablePath = "/v1/treasury/accounts"
let localVariableURLString = apiConfiguration.basePath + localVariablePath
let localVariableParameters: [String: any Sendable]? = nil
var localVariableUrlComponents = URLComponents(string: localVariableURLString)
localVariableUrlComponents?.queryItems = APIHelper.mapValuesToQueryItems([
"scope": (wrappedValue: scope?.asParameter(codableHelper: apiConfiguration.codableHelper), isExplode: true),
"org": (wrappedValue: org?.asParameter(codableHelper: apiConfiguration.codableHelper), isExplode: true),
])
let localVariableNillableHeaders: [String: (any Sendable)?] = [
:
]
let localVariableHeaderParameters = APIHelper.rejectNilHeaders(localVariableNillableHeaders)
let localVariableRequestBuilder: RequestBuilder<AccountsOut>.Type = apiConfiguration.requestBuilderFactory.getBuilder()
return localVariableRequestBuilder.init(method: "GET", URLString: (localVariableUrlComponents?.string ?? localVariableURLString), parameters: localVariableParameters, headers: localVariableHeaderParameters, requiresAuthentication: true, apiConfiguration: apiConfiguration)
}
}