Class VersionedArvoContract<TContract, TVersion>

Implements a version-specific view of an ArvoContract with type-safe schema validation and JSON Schema generation capabilities.

Type Parameters

Constructors

Properties

_accepts: ArvoContractRecord<TContract["type"], TContract["versions"][TVersion]["accepts"]>
_contract: TContract
_emitList: {
    [K in string]: ArvoContractRecord<K, TContract["versions"][TVersion]["emits"][K]>
}[keyof TContract["versions"][TVersion]["emits"] & string][]
_emits: TContract["versions"][TVersion]["emits"]
_version: TVersion

Accessors

Methods

  • Converts the contract to JSON Schema format

    Returns VersionedArvoContractJSONSchema

    Contract specification in JSON Schema format for documentation/serialization