@ottochain/sdk 1.0.3 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (153) hide show
  1. package/dist/cjs/generated/index.js +11 -1
  2. package/dist/cjs/metakit/drop-nulls.js +50 -0
  3. package/dist/cjs/metakit/normalize.js +147 -0
  4. package/dist/cjs/ottochain/metagraph-client.js +147 -0
  5. package/dist/cjs/validation.js +1 -1
  6. package/dist/esm/generated/index.js +11 -1
  7. package/dist/esm/metakit/drop-nulls.js +46 -0
  8. package/dist/esm/metakit/normalize.js +140 -0
  9. package/dist/esm/ottochain/metagraph-client.js +147 -0
  10. package/dist/esm/validation.js +1 -1
  11. package/dist/types/generated/index.d.ts +11 -1
  12. package/dist/types/metakit/drop-nulls.d.ts +29 -0
  13. package/dist/types/metakit/normalize.d.ts +67 -0
  14. package/dist/types/ottochain/index.d.ts +1 -1
  15. package/dist/types/ottochain/metagraph-client.d.ts +90 -0
  16. package/package.json +12 -12
  17. package/dist/apps/contracts/index.d.ts +0 -21
  18. package/dist/apps/contracts/index.js +0 -39
  19. package/dist/apps/contracts/types.d.ts +0 -24
  20. package/dist/apps/contracts/types.js +0 -48
  21. package/dist/apps/identity/index.d.ts +0 -22
  22. package/dist/apps/identity/index.js +0 -40
  23. package/dist/apps/identity/types.d.ts +0 -30
  24. package/dist/apps/identity/types.js +0 -53
  25. package/dist/apps/index.d.ts +0 -29
  26. package/dist/apps/index.js +0 -60
  27. package/dist/apps/markets/index.d.ts +0 -26
  28. package/dist/apps/markets/index.js +0 -46
  29. package/dist/apps/markets/types.d.ts +0 -185
  30. package/dist/apps/markets/types.js +0 -252
  31. package/dist/apps/oracles/index.d.ts +0 -26
  32. package/dist/apps/oracles/index.js +0 -46
  33. package/dist/apps/oracles/types.d.ts +0 -211
  34. package/dist/apps/oracles/types.js +0 -306
  35. package/dist/cjs/apps/contracts/types.js +0 -48
  36. package/dist/cjs/apps/corporate/types.js +0 -44
  37. package/dist/cjs/apps/governance/types.js +0 -42
  38. package/dist/cjs/apps/identity/types.js +0 -53
  39. package/dist/cjs/apps/markets/types.js +0 -219
  40. package/dist/cjs/apps/oracles/types.js +0 -282
  41. package/dist/cjs/generated/ottochain/apps/contracts/v1/contract_pb.js +0 -100
  42. package/dist/cjs/generated/ottochain/apps/corporate/v1/corporate_pb.js +0 -392
  43. package/dist/cjs/generated/ottochain/apps/governance/v1/governance_pb.js +0 -235
  44. package/dist/cjs/generated/ottochain/apps/identity/v1/agent_pb.js +0 -116
  45. package/dist/cjs/generated/ottochain/apps/identity/v1/attestation_pb.js +0 -79
  46. package/dist/cjs/generated/ottochain/apps/markets/v1/market_pb.js +0 -151
  47. package/dist/cjs/generated/ottochain/apps/oracles/v1/oracle_pb.js +0 -109
  48. package/dist/cjs/generated/ottochain/v1/common_pb.js +0 -37
  49. package/dist/cjs/generated/ottochain/v1/fiber_pb.js +0 -86
  50. package/dist/cjs/generated/ottochain/v1/messages_pb.js +0 -44
  51. package/dist/cjs/generated/ottochain/v1/records_pb.js +0 -44
  52. package/dist/errors.d.ts +0 -221
  53. package/dist/errors.js +0 -293
  54. package/dist/esm/apps/contracts/types.js +0 -44
  55. package/dist/esm/apps/corporate/types.js +0 -38
  56. package/dist/esm/apps/governance/types.js +0 -35
  57. package/dist/esm/apps/identity/types.js +0 -50
  58. package/dist/esm/apps/markets/types.js +0 -206
  59. package/dist/esm/apps/oracles/types.js +0 -267
  60. package/dist/esm/generated/ottochain/apps/contracts/v1/contract_pb.js +0 -97
  61. package/dist/esm/generated/ottochain/apps/corporate/v1/corporate_pb.js +0 -389
  62. package/dist/esm/generated/ottochain/apps/governance/v1/governance_pb.js +0 -232
  63. package/dist/esm/generated/ottochain/apps/identity/v1/agent_pb.js +0 -113
  64. package/dist/esm/generated/ottochain/apps/identity/v1/attestation_pb.js +0 -76
  65. package/dist/esm/generated/ottochain/apps/markets/v1/market_pb.js +0 -148
  66. package/dist/esm/generated/ottochain/apps/oracles/v1/oracle_pb.js +0 -106
  67. package/dist/esm/generated/ottochain/v1/common_pb.js +0 -34
  68. package/dist/esm/generated/ottochain/v1/fiber_pb.js +0 -83
  69. package/dist/esm/generated/ottochain/v1/messages_pb.js +0 -41
  70. package/dist/esm/generated/ottochain/v1/records_pb.js +0 -41
  71. package/dist/generated/index.d.ts +0 -15
  72. package/dist/generated/index.js +0 -34
  73. package/dist/generated/ottochain/apps/contracts/v1/contract_pb.d.ts +0 -274
  74. package/dist/generated/ottochain/apps/contracts/v1/contract_pb.js +0 -100
  75. package/dist/generated/ottochain/apps/identity/v1/agent_pb.d.ts +0 -211
  76. package/dist/generated/ottochain/apps/identity/v1/agent_pb.js +0 -116
  77. package/dist/generated/ottochain/apps/identity/v1/attestation_pb.d.ts +0 -238
  78. package/dist/generated/ottochain/apps/identity/v1/attestation_pb.js +0 -79
  79. package/dist/generated/ottochain/apps/markets/v1/market_pb.d.ts +0 -436
  80. package/dist/generated/ottochain/apps/markets/v1/market_pb.js +0 -151
  81. package/dist/generated/ottochain/apps/oracles/v1/oracle_pb.d.ts +0 -393
  82. package/dist/generated/ottochain/apps/oracles/v1/oracle_pb.js +0 -109
  83. package/dist/generated/ottochain/v1/common_pb.d.ts +0 -86
  84. package/dist/generated/ottochain/v1/common_pb.js +0 -37
  85. package/dist/generated/ottochain/v1/fiber_pb.d.ts +0 -292
  86. package/dist/generated/ottochain/v1/fiber_pb.js +0 -86
  87. package/dist/generated/ottochain/v1/messages_pb.d.ts +0 -190
  88. package/dist/generated/ottochain/v1/messages_pb.js +0 -44
  89. package/dist/generated/ottochain/v1/records_pb.d.ts +0 -221
  90. package/dist/generated/ottochain/v1/records_pb.js +0 -44
  91. package/dist/index.d.ts +0 -21
  92. package/dist/index.js +0 -77
  93. package/dist/metakit/binary.d.ts +0 -38
  94. package/dist/metakit/binary.js +0 -58
  95. package/dist/metakit/canonicalize.d.ts +0 -26
  96. package/dist/metakit/canonicalize.js +0 -40
  97. package/dist/metakit/codec.d.ts +0 -16
  98. package/dist/metakit/codec.js +0 -45
  99. package/dist/metakit/currency-transaction.d.ts +0 -157
  100. package/dist/metakit/currency-transaction.js +0 -319
  101. package/dist/metakit/currency-types.d.ts +0 -55
  102. package/dist/metakit/currency-types.js +0 -13
  103. package/dist/metakit/hash.d.ts +0 -50
  104. package/dist/metakit/hash.js +0 -84
  105. package/dist/metakit/index.d.ts +0 -23
  106. package/dist/metakit/index.js +0 -74
  107. package/dist/metakit/network/client.d.ts +0 -23
  108. package/dist/metakit/network/client.js +0 -78
  109. package/dist/metakit/network/currency-l1-client.d.ts +0 -71
  110. package/dist/metakit/network/currency-l1-client.js +0 -101
  111. package/dist/metakit/network/data-l1-client.d.ts +0 -57
  112. package/dist/metakit/network/data-l1-client.js +0 -76
  113. package/dist/metakit/network/index.d.ts +0 -10
  114. package/dist/metakit/network/index.js +0 -16
  115. package/dist/metakit/network/types.d.ts +0 -74
  116. package/dist/metakit/network/types.js +0 -20
  117. package/dist/metakit/sign.d.ts +0 -65
  118. package/dist/metakit/sign.js +0 -120
  119. package/dist/metakit/signed-object.d.ts +0 -66
  120. package/dist/metakit/signed-object.js +0 -100
  121. package/dist/metakit/types.d.ts +0 -67
  122. package/dist/metakit/types.js +0 -14
  123. package/dist/metakit/verify.d.ts +0 -55
  124. package/dist/metakit/verify.js +0 -217
  125. package/dist/metakit/wallet.d.ts +0 -70
  126. package/dist/metakit/wallet.js +0 -127
  127. package/dist/ottochain/index.d.ts +0 -13
  128. package/dist/ottochain/index.js +0 -45
  129. package/dist/ottochain/metagraph-client.d.ts +0 -111
  130. package/dist/ottochain/metagraph-client.js +0 -157
  131. package/dist/ottochain/snapshot.d.ts +0 -86
  132. package/dist/ottochain/snapshot.js +0 -110
  133. package/dist/ottochain/types.d.ts +0 -278
  134. package/dist/ottochain/types.js +0 -11
  135. package/dist/types/apps/contracts/types.d.ts +0 -24
  136. package/dist/types/apps/corporate/types.d.ts +0 -9861
  137. package/dist/types/apps/governance/types.d.ts +0 -344
  138. package/dist/types/apps/identity/types.d.ts +0 -30
  139. package/dist/types/apps/markets/types.d.ts +0 -155
  140. package/dist/types/apps/oracles/types.d.ts +0 -193
  141. package/dist/types/generated/ottochain/apps/contracts/v1/contract_pb.d.ts +0 -274
  142. package/dist/types/generated/ottochain/apps/corporate/v1/corporate_pb.d.ts +0 -1172
  143. package/dist/types/generated/ottochain/apps/governance/v1/governance_pb.d.ts +0 -772
  144. package/dist/types/generated/ottochain/apps/identity/v1/agent_pb.d.ts +0 -211
  145. package/dist/types/generated/ottochain/apps/identity/v1/attestation_pb.d.ts +0 -238
  146. package/dist/types/generated/ottochain/apps/markets/v1/market_pb.d.ts +0 -436
  147. package/dist/types/generated/ottochain/apps/oracles/v1/oracle_pb.d.ts +0 -393
  148. package/dist/types/generated/ottochain/v1/common_pb.d.ts +0 -86
  149. package/dist/types/generated/ottochain/v1/fiber_pb.d.ts +0 -292
  150. package/dist/types/generated/ottochain/v1/messages_pb.d.ts +0 -190
  151. package/dist/types/generated/ottochain/v1/records_pb.d.ts +0 -221
  152. package/dist/validation.d.ts +0 -449
  153. package/dist/validation.js +0 -312
@@ -1,267 +0,0 @@
1
- /**
2
- * Oracles Application Types
3
- *
4
- * Constants, types, and utilities for the Oracle system on OttoChain.
5
- * Oracles provide truth resolution for markets and disputes.
6
- *
7
- * Core types (OracleState, Oracle, etc.) are exported from proto-generated
8
- * types in index.ts.
9
- *
10
- * @packageDocumentation
11
- */
12
- import { OracleState } from '../../generated/ottochain/apps/oracles/v1/oracle_pb.js';
13
- /**
14
- * Types of oracle resolutions
15
- */
16
- export var ResolutionType;
17
- (function (ResolutionType) {
18
- ResolutionType[ResolutionType["UNSPECIFIED"] = 0] = "UNSPECIFIED";
19
- /** Binary yes/no outcome */
20
- ResolutionType[ResolutionType["BINARY"] = 1] = "BINARY";
21
- /** One of multiple predefined outcomes */
22
- ResolutionType[ResolutionType["MULTI_CHOICE"] = 2] = "MULTI_CHOICE";
23
- /** Numeric value (e.g., price) */
24
- ResolutionType[ResolutionType["NUMERIC"] = 3] = "NUMERIC";
25
- /** Free-form attestation */
26
- ResolutionType[ResolutionType["ATTESTATION"] = 4] = "ATTESTATION";
27
- })(ResolutionType || (ResolutionType = {}));
28
- /**
29
- * Reasons for slashing oracle stake
30
- */
31
- export var SlashingReason;
32
- (function (SlashingReason) {
33
- SlashingReason[SlashingReason["UNSPECIFIED"] = 0] = "UNSPECIFIED";
34
- /** Failed to submit resolution in time */
35
- SlashingReason[SlashingReason["TIMEOUT"] = 1] = "TIMEOUT";
36
- /** Resolution overturned by dispute */
37
- SlashingReason[SlashingReason["INCORRECT_RESOLUTION"] = 2] = "INCORRECT_RESOLUTION";
38
- /** Evidence of collusion or manipulation */
39
- SlashingReason[SlashingReason["COLLUSION"] = 3] = "COLLUSION";
40
- /** Violation of oracle protocol */
41
- SlashingReason[SlashingReason["PROTOCOL_VIOLATION"] = 4] = "PROTOCOL_VIOLATION";
42
- })(SlashingReason || (SlashingReason = {}));
43
- /**
44
- * Default oracle configuration
45
- */
46
- export const DEFAULT_ORACLE_CONFIG = {
47
- minStake: 10000n,
48
- timeoutSlashPercent: 0.05,
49
- incorrectSlashPercent: 0.25,
50
- collusionSlashPercent: 1.0,
51
- violationSlashPercent: 0.10,
52
- cooldownEpochs: 48,
53
- baseReputation: 50,
54
- highValueThreshold: 100,
55
- resolutionWindowEpochs: 12,
56
- challengeWindowEpochs: 6,
57
- oracleRewardPercent: 0.01,
58
- };
59
- /**
60
- * Slashing percentages by reason
61
- */
62
- export const SLASHING_PERCENTAGES = {
63
- [SlashingReason.UNSPECIFIED]: 0,
64
- [SlashingReason.TIMEOUT]: DEFAULT_ORACLE_CONFIG.timeoutSlashPercent,
65
- [SlashingReason.INCORRECT_RESOLUTION]: DEFAULT_ORACLE_CONFIG.incorrectSlashPercent,
66
- [SlashingReason.COLLUSION]: DEFAULT_ORACLE_CONFIG.collusionSlashPercent,
67
- [SlashingReason.PROTOCOL_VIOLATION]: DEFAULT_ORACLE_CONFIG.violationSlashPercent,
68
- };
69
- // ---------------------------------------------------------------------------
70
- // State Machine Transitions
71
- // ---------------------------------------------------------------------------
72
- /**
73
- * Valid transitions for each oracle state (aligned with proto OracleState enum)
74
- */
75
- export const ORACLE_TRANSITIONS = {
76
- [OracleState.UNSPECIFIED]: [],
77
- [OracleState.UNREGISTERED]: ['register'],
78
- [OracleState.REGISTERED]: ['activate', 'withdraw'],
79
- [OracleState.ACTIVE]: ['add_stake', 'record_resolution', 'slash', 'withdraw'],
80
- [OracleState.SLASHED]: ['reactivate', 'withdraw'],
81
- [OracleState.WITHDRAWN]: [], // Terminal state
82
- };
83
- /**
84
- * Check if an oracle state is terminal
85
- */
86
- export function isTerminalOracleState(state) {
87
- return state === OracleState.WITHDRAWN;
88
- }
89
- /**
90
- * Check if an oracle can accept new assignments
91
- */
92
- export function canAcceptAssignment(state) {
93
- return state === OracleState.ACTIVE;
94
- }
95
- // ---------------------------------------------------------------------------
96
- // Reputation Calculations
97
- // ---------------------------------------------------------------------------
98
- /**
99
- * Reputation update factors
100
- */
101
- export const REPUTATION_DELTAS = {
102
- /** Successfully resolved market without challenge */
103
- successfulResolution: 5,
104
- /** Resolution upheld after challenge */
105
- upheldChallenge: 10,
106
- /** Resolution overturned (negative) */
107
- overturnedResolution: -25,
108
- /** Timeout on assigned market (negative) */
109
- timeout: -15,
110
- /** Collusion detected (negative) */
111
- collusion: -100,
112
- /** Protocol violation (negative) */
113
- violation: -20,
114
- /** Bonus for high-value market resolution */
115
- highValueBonus: 3,
116
- };
117
- /**
118
- * Calculate new reputation after an event
119
- *
120
- * @param currentReputation - Current reputation score
121
- * @param delta - Reputation change (positive or negative)
122
- * @param minReputation - Minimum reputation floor (default 0)
123
- * @returns New reputation score
124
- */
125
- export function calculateReputation(currentReputation, delta, minReputation = 0) {
126
- return Math.max(minReputation, currentReputation + delta);
127
- }
128
- /**
129
- * Calculate weighted reputation considering history
130
- *
131
- * @param baseReputation - Current base reputation
132
- * @param successCount - Number of successful resolutions
133
- * @param failureCount - Number of failed/overturned resolutions
134
- * @returns Weighted reputation score
135
- */
136
- export function calculateWeightedReputation(baseReputation, successCount, failureCount) {
137
- const totalAttempts = successCount + failureCount;
138
- if (totalAttempts === 0)
139
- return baseReputation;
140
- const successRate = successCount / totalAttempts;
141
- const experienceMultiplier = Math.min(1 + Math.log10(totalAttempts + 1) * 0.2, 1.5);
142
- return Math.round(baseReputation * successRate * experienceMultiplier);
143
- }
144
- /**
145
- * Check if oracle qualifies for high-value markets
146
- */
147
- export function qualifiesForHighValue(reputation, stake, threshold = DEFAULT_ORACLE_CONFIG.highValueThreshold, minStakeMultiplier = 5) {
148
- return (reputation >= threshold &&
149
- stake >= DEFAULT_ORACLE_CONFIG.minStake * BigInt(minStakeMultiplier));
150
- }
151
- /**
152
- * Predefined slashing conditions
153
- */
154
- export const SLASHING_CONDITIONS = {
155
- [SlashingReason.UNSPECIFIED]: {
156
- reason: SlashingReason.UNSPECIFIED,
157
- slashPercent: 0,
158
- description: 'No slashing',
159
- appealable: false,
160
- suspensionEpochs: 0,
161
- },
162
- [SlashingReason.TIMEOUT]: {
163
- reason: SlashingReason.TIMEOUT,
164
- slashPercent: DEFAULT_ORACLE_CONFIG.timeoutSlashPercent,
165
- description: 'Failed to submit resolution within deadline',
166
- appealable: true,
167
- suspensionEpochs: 12,
168
- },
169
- [SlashingReason.INCORRECT_RESOLUTION]: {
170
- reason: SlashingReason.INCORRECT_RESOLUTION,
171
- slashPercent: DEFAULT_ORACLE_CONFIG.incorrectSlashPercent,
172
- description: 'Resolution overturned by dispute process',
173
- appealable: true,
174
- suspensionEpochs: 48,
175
- },
176
- [SlashingReason.COLLUSION]: {
177
- reason: SlashingReason.COLLUSION,
178
- slashPercent: DEFAULT_ORACLE_CONFIG.collusionSlashPercent,
179
- description: 'Evidence of collusion or market manipulation',
180
- appealable: false,
181
- suspensionEpochs: -1, // Permanent
182
- },
183
- [SlashingReason.PROTOCOL_VIOLATION]: {
184
- reason: SlashingReason.PROTOCOL_VIOLATION,
185
- slashPercent: DEFAULT_ORACLE_CONFIG.violationSlashPercent,
186
- description: 'Violation of oracle operating protocol',
187
- appealable: true,
188
- suspensionEpochs: 24,
189
- },
190
- };
191
- /**
192
- * Calculate slash amount for a given stake and reason
193
- *
194
- * @param stake - Oracle's current stake
195
- * @param reason - Reason for slashing
196
- * @returns Amount to be slashed
197
- */
198
- export function calculateSlashAmount(stake, reason) {
199
- const condition = SLASHING_CONDITIONS[reason];
200
- return (stake * BigInt(Math.floor(condition.slashPercent * 10000))) / 10000n;
201
- }
202
- /**
203
- * Calculate remaining stake after slashing
204
- */
205
- export function calculateStakeAfterSlash(stake, reason) {
206
- return stake - calculateSlashAmount(stake, reason);
207
- }
208
- /**
209
- * Calculate oracle selection score
210
- * Higher score = more likely to be selected
211
- *
212
- * @param candidate - Oracle candidate details
213
- * @param marketValue - Value of market to resolve (affects weight for high-value markets)
214
- * @returns Selection score
215
- */
216
- export function calculateSelectionScore(candidate, marketValue = 0n) {
217
- const reputationWeight = 0.4;
218
- const stakeWeight = 0.3;
219
- const successWeight = 0.2;
220
- const loadWeight = 0.1;
221
- // Normalize stake to 0-100 range (assuming 1M max)
222
- const normalizedStake = Math.min(Number(candidate.stake / 10000n), 100);
223
- // Load penalty (fewer active = better)
224
- const loadScore = Math.max(0, 100 - candidate.activeAssignments * 20);
225
- // High-value market bonus for qualified oracles
226
- const highValueBonus = marketValue > 100000n &&
227
- qualifiesForHighValue(candidate.reputation, candidate.stake) ? 10 : 0;
228
- return (candidate.reputation * reputationWeight +
229
- normalizedStake * stakeWeight +
230
- candidate.successRate * 100 * successWeight +
231
- loadScore * loadWeight +
232
- highValueBonus);
233
- }
234
- // ---------------------------------------------------------------------------
235
- // Reward Calculations
236
- // ---------------------------------------------------------------------------
237
- /**
238
- * Calculate oracle reward for successful resolution
239
- *
240
- * @param marketFees - Total fees collected from market
241
- * @param rewardPercent - Oracle's reward percentage (default from config)
242
- * @returns Oracle reward amount
243
- */
244
- export function calculateOracleReward(marketFees, rewardPercent = DEFAULT_ORACLE_CONFIG.oracleRewardPercent) {
245
- return (marketFees * BigInt(Math.floor(rewardPercent * 10000))) / 10000n;
246
- }
247
- // ---------------------------------------------------------------------------
248
- // Type Guards
249
- // ---------------------------------------------------------------------------
250
- /**
251
- * Check if a value is a valid OracleState
252
- */
253
- export function isOracleState(value) {
254
- return typeof value === 'number' && value in OracleState;
255
- }
256
- /**
257
- * Check if a value is a valid SlashingReason
258
- */
259
- export function isSlashingReason(value) {
260
- return typeof value === 'number' && value in SlashingReason;
261
- }
262
- /**
263
- * Check if a value is a valid ResolutionType
264
- */
265
- export function isResolutionType(value) {
266
- return typeof value === 'number' && value in ResolutionType;
267
- }
@@ -1,97 +0,0 @@
1
- // @generated by protoc-gen-es v2.2.0 with parameter "target=ts,import_extension=.js"
2
- // @generated from file ottochain/apps/contracts/v1/contract.proto (package ottochain.apps.contracts.v1, syntax proto3)
3
- /* eslint-disable */
4
- import { enumDesc, fileDesc, messageDesc } from "@bufbuild/protobuf/codegenv1";
5
- import { file_ottochain_v1_common } from "../../../v1/common_pb.js";
6
- import { file_google_protobuf_struct, file_google_protobuf_timestamp } from "@bufbuild/protobuf/wkt";
7
- /**
8
- * Describes the file ottochain/apps/contracts/v1/contract.proto.
9
- */
10
- export const file_ottochain_apps_contracts_v1_contract = /*@__PURE__*/ fileDesc("CipvdHRvY2hhaW4vYXBwcy9jb250cmFjdHMvdjEvY29udHJhY3QucHJvdG8SG290dG9jaGFpbi5hcHBzLmNvbnRyYWN0cy52MSKSAwoIQ29udHJhY3QSCgoCaWQYASABKAkSEwoLY29udHJhY3RfaWQYAiABKAkSJwoIcHJvcG9zZXIYAyABKAsyFS5vdHRvY2hhaW4udjEuQWRkcmVzcxIrCgxjb3VudGVycGFydHkYBCABKAsyFS5vdHRvY2hhaW4udjEuQWRkcmVzcxI5CgVzdGF0ZRgFIAEoDjIqLm90dG9jaGFpbi5hcHBzLmNvbnRyYWN0cy52MS5Db250cmFjdFN0YXRlEiYKBXRlcm1zGAYgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIvCgtwcm9wb3NlZF9hdBgHIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASLwoLYWNjZXB0ZWRfYXQYCCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEjAKDGNvbXBsZXRlZF9hdBgJIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASGAoQY29tcGxldGlvbl9wcm9vZhgKIAEoCSKrAQoWUHJvcG9zZUNvbnRyYWN0UmVxdWVzdBInCghwcm9wb3NlchgBIAEoCzIVLm90dG9jaGFpbi52MS5BZGRyZXNzEisKDGNvdW50ZXJwYXJ0eRgCIAEoCzIVLm90dG9jaGFpbi52MS5BZGRyZXNzEiYKBXRlcm1zGAMgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBITCgtkZXNjcmlwdGlvbhgEIAEoCSJVChVBY2NlcHRDb250cmFjdFJlcXVlc3QSEwoLY29udHJhY3RfaWQYASABKAkSJwoIYWNjZXB0b3IYAiABKAsyFS5vdHRvY2hhaW4udjEuQWRkcmVzcyJnChdDb21wbGV0ZUNvbnRyYWN0UmVxdWVzdBITCgtjb250cmFjdF9pZBgBIAEoCRIoCgljb21wbGV0ZXIYAiABKAsyFS5vdHRvY2hhaW4udjEuQWRkcmVzcxINCgVwcm9vZhgDIAEoCSJlChVSZWplY3RDb250cmFjdFJlcXVlc3QSEwoLY29udHJhY3RfaWQYASABKAkSJwoIcmVqZWN0b3IYAiABKAsyFS5vdHRvY2hhaW4udjEuQWRkcmVzcxIOCgZyZWFzb24YAyABKAkieQoWRGlzcHV0ZUNvbnRyYWN0UmVxdWVzdBITCgtjb250cmFjdF9pZBgBIAEoCRIoCglkaXNwdXRhbnQYAiABKAsyFS5vdHRvY2hhaW4udjEuQWRkcmVzcxIQCghldmlkZW5jZRgDIAEoCRIOCgZyZWFzb24YBCABKAkiVAoSQ29udHJhY3REZWZpbml0aW9uEh8KF3JlcXVpcmVfYm90aF9zaWduYXR1cmVzGAEgASgIEh0KFWRpc3B1dGVfd2luZG93X2Vwb2NocxgCIAEoBSrdAQoNQ29udHJhY3RTdGF0ZRIeChpDT05UUkFDVF9TVEFURV9VTlNQRUNJRklFRBAAEhsKF0NPTlRSQUNUX1NUQVRFX1BST1BPU0VEEAESGQoVQ09OVFJBQ1RfU1RBVEVfQUNUSVZFEAISHAoYQ09OVFJBQ1RfU1RBVEVfQ09NUExFVEVEEAMSGwoXQ09OVFJBQ1RfU1RBVEVfUkVKRUNURUQQBBIbChdDT05UUkFDVF9TVEFURV9ESVNQVVRFRBAFEhwKGENPTlRSQUNUX1NUQVRFX0NBTkNFTExFRBAGQr8BCh9jb20ub3R0b2NoYWluLmFwcHMuY29udHJhY3RzLnYxQg1Db250cmFjdFByb3RvUAGiAgNPQUOqAhtPdHRvY2hhaW4uQXBwcy5Db250cmFjdHMuVjHKAhtPdHRvY2hhaW5cQXBwc1xDb250cmFjdHNcVjHiAidPdHRvY2hhaW5cQXBwc1xDb250cmFjdHNcVjFcR1BCTWV0YWRhdGHqAh5PdHRvY2hhaW46OkFwcHM6OkNvbnRyYWN0czo6VjFiBnByb3RvMw", [file_ottochain_v1_common, file_google_protobuf_struct, file_google_protobuf_timestamp]);
11
- /**
12
- * Describes the message ottochain.apps.contracts.v1.Contract.
13
- * Use `create(ContractSchema)` to create a new message.
14
- */
15
- export const ContractSchema = /*@__PURE__*/ messageDesc(file_ottochain_apps_contracts_v1_contract, 0);
16
- /**
17
- * Describes the message ottochain.apps.contracts.v1.ProposeContractRequest.
18
- * Use `create(ProposeContractRequestSchema)` to create a new message.
19
- */
20
- export const ProposeContractRequestSchema = /*@__PURE__*/ messageDesc(file_ottochain_apps_contracts_v1_contract, 1);
21
- /**
22
- * Describes the message ottochain.apps.contracts.v1.AcceptContractRequest.
23
- * Use `create(AcceptContractRequestSchema)` to create a new message.
24
- */
25
- export const AcceptContractRequestSchema = /*@__PURE__*/ messageDesc(file_ottochain_apps_contracts_v1_contract, 2);
26
- /**
27
- * Describes the message ottochain.apps.contracts.v1.CompleteContractRequest.
28
- * Use `create(CompleteContractRequestSchema)` to create a new message.
29
- */
30
- export const CompleteContractRequestSchema = /*@__PURE__*/ messageDesc(file_ottochain_apps_contracts_v1_contract, 3);
31
- /**
32
- * Describes the message ottochain.apps.contracts.v1.RejectContractRequest.
33
- * Use `create(RejectContractRequestSchema)` to create a new message.
34
- */
35
- export const RejectContractRequestSchema = /*@__PURE__*/ messageDesc(file_ottochain_apps_contracts_v1_contract, 4);
36
- /**
37
- * Describes the message ottochain.apps.contracts.v1.DisputeContractRequest.
38
- * Use `create(DisputeContractRequestSchema)` to create a new message.
39
- */
40
- export const DisputeContractRequestSchema = /*@__PURE__*/ messageDesc(file_ottochain_apps_contracts_v1_contract, 5);
41
- /**
42
- * Describes the message ottochain.apps.contracts.v1.ContractDefinition.
43
- * Use `create(ContractDefinitionSchema)` to create a new message.
44
- */
45
- export const ContractDefinitionSchema = /*@__PURE__*/ messageDesc(file_ottochain_apps_contracts_v1_contract, 6);
46
- /**
47
- * Contract lifecycle states
48
- *
49
- * @generated from enum ottochain.apps.contracts.v1.ContractState
50
- */
51
- export var ContractState;
52
- (function (ContractState) {
53
- /**
54
- * @generated from enum value: CONTRACT_STATE_UNSPECIFIED = 0;
55
- */
56
- ContractState[ContractState["UNSPECIFIED"] = 0] = "UNSPECIFIED";
57
- /**
58
- * Awaiting counterparty acceptance
59
- *
60
- * @generated from enum value: CONTRACT_STATE_PROPOSED = 1;
61
- */
62
- ContractState[ContractState["PROPOSED"] = 1] = "PROPOSED";
63
- /**
64
- * Both parties agreed, in progress
65
- *
66
- * @generated from enum value: CONTRACT_STATE_ACTIVE = 2;
67
- */
68
- ContractState[ContractState["ACTIVE"] = 2] = "ACTIVE";
69
- /**
70
- * Successfully fulfilled (terminal)
71
- *
72
- * @generated from enum value: CONTRACT_STATE_COMPLETED = 3;
73
- */
74
- ContractState[ContractState["COMPLETED"] = 3] = "COMPLETED";
75
- /**
76
- * Counterparty declined (terminal)
77
- *
78
- * @generated from enum value: CONTRACT_STATE_REJECTED = 4;
79
- */
80
- ContractState[ContractState["REJECTED"] = 4] = "REJECTED";
81
- /**
82
- * Under dispute resolution
83
- *
84
- * @generated from enum value: CONTRACT_STATE_DISPUTED = 5;
85
- */
86
- ContractState[ContractState["DISPUTED"] = 5] = "DISPUTED";
87
- /**
88
- * Cancelled by proposer before acceptance (terminal)
89
- *
90
- * @generated from enum value: CONTRACT_STATE_CANCELLED = 6;
91
- */
92
- ContractState[ContractState["CANCELLED"] = 6] = "CANCELLED";
93
- })(ContractState || (ContractState = {}));
94
- /**
95
- * Describes the enum ottochain.apps.contracts.v1.ContractState.
96
- */
97
- export const ContractStateSchema = /*@__PURE__*/ enumDesc(file_ottochain_apps_contracts_v1_contract, 0);