@kudo-dev/sdk 0.0.0-stage → 0.2.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.
- package/.env.example +86 -0
- package/AGENT.md +201 -0
- package/README.md +123 -2
- package/dist/agent/index.d.ts +94 -0
- package/dist/agent/index.js +867 -0
- package/dist/agent/index.js.map +1 -0
- package/dist/index.cjs +2562 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.cts +1823 -0
- package/dist/index.d.ts +1823 -0
- package/dist/index.js +2520 -0
- package/dist/index.js.map +1 -0
- package/package.json +75 -4
- package/prompts/common.md +128 -0
- package/prompts/settle-due.txt +92 -0
- package/prompts/take-work.txt +43 -0
- package/skills/chain-forensics/SKILL.md +127 -0
- package/skills/kudo/SKILL.md +370 -0
- package/skills/kudo/sponsored-send.mjs +218 -0
- package/skills/kudo-runtime/SKILL.md +275 -0
- package/skills/kudo-validation/SKILL.md +239 -0
- package/skills/twitter/SKILL.md +127 -0
package/dist/index.d.cts
ADDED
|
@@ -0,0 +1,1823 @@
|
|
|
1
|
+
import { Chain, Address, Hex, PublicClient, WalletClient, Abi, ContractFunctionName, ContractFunctionArgs, TransactionReceipt } from 'viem';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Everything the SDK needs to know about one deployment.
|
|
5
|
+
*
|
|
6
|
+
* `statuses` is the contract's status enum in order: the current contract's
|
|
7
|
+
* `0` is Minted. Only the current mainnet contract is listed; older Kudo
|
|
8
|
+
* deployments (mainnet 0xc269…, testnet 0x7021…) use a different enum and
|
|
9
|
+
* are not supported.
|
|
10
|
+
*/
|
|
11
|
+
interface KudoNetwork {
|
|
12
|
+
key: string;
|
|
13
|
+
chain: Chain;
|
|
14
|
+
kudo: Address;
|
|
15
|
+
usdg: Address;
|
|
16
|
+
identityRegistry: Address;
|
|
17
|
+
reputationRegistry?: Address;
|
|
18
|
+
statuses: readonly CovenantStatus[];
|
|
19
|
+
/** Where a covenant card can be opened, `{id}` replaced. */
|
|
20
|
+
covenantUrl?: string;
|
|
21
|
+
explorerUrl: string;
|
|
22
|
+
/** Widest block range the RPC accepts in one `eth_getLogs`. */
|
|
23
|
+
maxLogRange: bigint;
|
|
24
|
+
}
|
|
25
|
+
type CovenantStatus = "MINTED" | "IN_PROGRESS" | "COMPLETED" | "FAILED";
|
|
26
|
+
declare const robinhood: Chain;
|
|
27
|
+
declare const networks: {
|
|
28
|
+
/** Robinhood Chain mainnet, where app.kudo.archi reads and writes. */
|
|
29
|
+
readonly robinhood: {
|
|
30
|
+
readonly key: "robinhood";
|
|
31
|
+
readonly chain: Chain;
|
|
32
|
+
readonly kudo: "0x1930D0FEaB14b024353bF22adE03Db989aD640C7";
|
|
33
|
+
readonly usdg: "0x5fc5360D0400a0Fd4f2af552ADD042D716F1d168";
|
|
34
|
+
readonly identityRegistry: "0x8004A169FB4a3325136EB29fA0ceB6D2e539a432";
|
|
35
|
+
readonly reputationRegistry: "0x8004BAa17C55a88189AE136b182e5fdA19dE9b63";
|
|
36
|
+
readonly statuses: readonly ["MINTED", "IN_PROGRESS", "COMPLETED", "FAILED"];
|
|
37
|
+
readonly covenantUrl: "https://app.kudo.archi/share/{id}";
|
|
38
|
+
readonly explorerUrl: "https://robinhoodchain.blockscout.com";
|
|
39
|
+
readonly maxLogRange: 10000000n;
|
|
40
|
+
};
|
|
41
|
+
};
|
|
42
|
+
type NetworkKey = keyof typeof networks;
|
|
43
|
+
/** Resolves a key or a full config, with any field overridden. */
|
|
44
|
+
declare function resolveNetwork(network?: NetworkKey | KudoNetwork, overrides?: Partial<KudoNetwork>): KudoNetwork;
|
|
45
|
+
|
|
46
|
+
/**
|
|
47
|
+
* The three covenant types. Direction is the order the two legs happen in.
|
|
48
|
+
*
|
|
49
|
+
* | type | ask | promise |
|
|
50
|
+
* |---------|----------------------------|------------------------------|
|
|
51
|
+
* | LOAN | lend me USDG | repay more USDG later |
|
|
52
|
+
* | INVOICE | do the work and bill me | pay for it afterwards |
|
|
53
|
+
* | ADVANCE | pay me up front | deliver the work afterwards |
|
|
54
|
+
*
|
|
55
|
+
* `nftType` cannot be changed after minting, and INVOICE / ADVANCE are easy to
|
|
56
|
+
* swap: an invoice follows completed work, an advance is money before work.
|
|
57
|
+
*/
|
|
58
|
+
declare const COVENANT_TYPES: readonly ["LOAN", "INVOICE", "ADVANCE"];
|
|
59
|
+
type CovenantType = (typeof COVENANT_TYPES)[number];
|
|
60
|
+
/**
|
|
61
|
+
* Where a covenant is in its life, derived from the raw fields.
|
|
62
|
+
*
|
|
63
|
+
* Only the Evaluator moves the contract's `status`: to IN_PROGRESS when it
|
|
64
|
+
* has checked the ask's evidence and accepted it, and to COMPLETED or FAILED
|
|
65
|
+
* when it closes the covenant. Attesting a leg does not move it, so a
|
|
66
|
+
* covenant with both proofs written may still read MINTED. `stage` is what to
|
|
67
|
+
* show a person or act on.
|
|
68
|
+
*
|
|
69
|
+
* - `ask-open` nobody has met the ask yet; anyone can take it
|
|
70
|
+
* - `ask-claimed` someone claimed the ask; the Evaluator has not
|
|
71
|
+
* accepted the claim yet, so nothing is owed
|
|
72
|
+
* - `promise-due` the Evaluator accepted the claim (IN_PROGRESS);
|
|
73
|
+
* the promiser owes the promise now
|
|
74
|
+
* - `awaiting-evaluation` both legs have proof; the Evaluator has not ruled
|
|
75
|
+
* - `completed` the Evaluator closed it as kept
|
|
76
|
+
* - `failed` the Evaluator closed it as broken
|
|
77
|
+
*/
|
|
78
|
+
declare const COVENANT_STAGES: readonly ["ask-open", "ask-claimed", "promise-due", "awaiting-evaluation", "completed", "failed"];
|
|
79
|
+
type CovenantStage = (typeof COVENANT_STAGES)[number];
|
|
80
|
+
interface Covenant {
|
|
81
|
+
id: bigint;
|
|
82
|
+
/** Current holder of the cNFT, where the read returns it. */
|
|
83
|
+
owner?: Address;
|
|
84
|
+
/** The wallet that owes the promise. Only it can link the promise proof. */
|
|
85
|
+
agentWallet: Address;
|
|
86
|
+
/**
|
|
87
|
+
* The ERC-8004 identity the covenant was minted under. The current contract
|
|
88
|
+
* binds a mint to an id the minter controls; on older deployments it is only
|
|
89
|
+
* a claim, so check `ownerOf(agentId) == agentWallet` before relying on it.
|
|
90
|
+
*/
|
|
91
|
+
agentId: bigint;
|
|
92
|
+
status: CovenantStatus;
|
|
93
|
+
stage: CovenantStage;
|
|
94
|
+
type: string;
|
|
95
|
+
ask: string;
|
|
96
|
+
promise: string;
|
|
97
|
+
/** Counterparty's instruction for how to be paid, written when they meet the ask. */
|
|
98
|
+
promiseDetail: string;
|
|
99
|
+
/** Proof the ask was met: a tx hash or a URL. Empty until met. */
|
|
100
|
+
askProof: string;
|
|
101
|
+
/** When the ask was met. The promise's window runs from here, not from the mint. */
|
|
102
|
+
askSettledAt: Date | null;
|
|
103
|
+
/** Proof the promise was kept. Empty until linked. */
|
|
104
|
+
promiseProof: string;
|
|
105
|
+
/** Link to the covenant card, where the network has one. */
|
|
106
|
+
url?: string;
|
|
107
|
+
}
|
|
108
|
+
/** An unsigned transaction. Sign it with any wallet, or pass it to `kudo.send`. */
|
|
109
|
+
interface TxRequest {
|
|
110
|
+
to: Address;
|
|
111
|
+
data: Hex;
|
|
112
|
+
value: bigint;
|
|
113
|
+
chainId: number;
|
|
114
|
+
/** One line saying what the transaction does, for a human or a model to check before signing. */
|
|
115
|
+
description: string;
|
|
116
|
+
}
|
|
117
|
+
interface MintCovenantInput {
|
|
118
|
+
/** ERC-8004 id the covenant is minted under. The sending wallet must control it. */
|
|
119
|
+
agentId: bigint | number | string;
|
|
120
|
+
type: CovenantType;
|
|
121
|
+
/** What the counterparty does. Permanent: state amounts in USDG and say why. */
|
|
122
|
+
ask: string;
|
|
123
|
+
/** What this agent does in return, in an ordinary sentence. Permanent. */
|
|
124
|
+
promise: string;
|
|
125
|
+
}
|
|
126
|
+
interface MeetAskInput {
|
|
127
|
+
/** Proof the ask was performed: a tx hash for a payment, a URL for work. */
|
|
128
|
+
proof: string;
|
|
129
|
+
/**
|
|
130
|
+
* How the promiser should pay you, e.g. "pay: 0xabc…". The promise was
|
|
131
|
+
* written before anyone knew who the counterparty would be, so this is
|
|
132
|
+
* usually where the recipient address arrives.
|
|
133
|
+
*/
|
|
134
|
+
promiseDetail?: string;
|
|
135
|
+
}
|
|
136
|
+
interface RegisterAgentInput {
|
|
137
|
+
/** Display name, stored as `name` metadata. */
|
|
138
|
+
name: string;
|
|
139
|
+
/** Optional token URI pointing at an agent card JSON. */
|
|
140
|
+
uri?: string;
|
|
141
|
+
/** Extra metadata, e.g. `{ endpoint: "https://…" }`. Values are UTF-8 encoded. */
|
|
142
|
+
metadata?: Record<string, string>;
|
|
143
|
+
}
|
|
144
|
+
interface AgentInfo {
|
|
145
|
+
agentId: bigint;
|
|
146
|
+
owner: Address;
|
|
147
|
+
name: string | null;
|
|
148
|
+
teeId: string | null;
|
|
149
|
+
uri: string | null;
|
|
150
|
+
}
|
|
151
|
+
interface AgentRecord extends AgentInfo {
|
|
152
|
+
covenants: {
|
|
153
|
+
total: number;
|
|
154
|
+
kept: number;
|
|
155
|
+
broken: number;
|
|
156
|
+
/** Ask still open, promise due or awaiting evaluation. */
|
|
157
|
+
open: number;
|
|
158
|
+
};
|
|
159
|
+
/** ERC-8004 Reputation Registry summary, where any client has posted feedback. */
|
|
160
|
+
reputation: {
|
|
161
|
+
count: number;
|
|
162
|
+
value: number;
|
|
163
|
+
} | null;
|
|
164
|
+
recent: Covenant[];
|
|
165
|
+
}
|
|
166
|
+
interface CovenantFilter {
|
|
167
|
+
stage?: CovenantStage | CovenantStage[];
|
|
168
|
+
type?: string;
|
|
169
|
+
agentId?: bigint | number | string;
|
|
170
|
+
agentWallet?: Address;
|
|
171
|
+
/** Newest first, at most this many. */
|
|
172
|
+
limit?: number;
|
|
173
|
+
}
|
|
174
|
+
interface OpenAskFilter {
|
|
175
|
+
type?: string;
|
|
176
|
+
agentId?: bigint | number | string;
|
|
177
|
+
/** Leave out covenants minted by this wallet (you cannot be your own counterparty). Defaults to the connected account. */
|
|
178
|
+
excludeWallet?: Address;
|
|
179
|
+
limit?: number;
|
|
180
|
+
}
|
|
181
|
+
|
|
182
|
+
interface KudoOptions {
|
|
183
|
+
/** A network key (`"robinhood"`) or a full config. Defaults to Robinhood mainnet. */
|
|
184
|
+
network?: NetworkKey | KudoNetwork;
|
|
185
|
+
/** Override any address or setting of the network. */
|
|
186
|
+
overrides?: Partial<KudoNetwork>;
|
|
187
|
+
/** RPC URL. Defaults to the chain's public endpoint. */
|
|
188
|
+
rpcUrl?: string;
|
|
189
|
+
/** Bring your own viem public client instead of `rpcUrl`. */
|
|
190
|
+
publicClient?: PublicClient;
|
|
191
|
+
/**
|
|
192
|
+
* A viem wallet client with an account, for signing. The SDK never stores or
|
|
193
|
+
* asks for a key: leave this out and use the `build*` methods to get
|
|
194
|
+
* unsigned transactions for any signer.
|
|
195
|
+
*/
|
|
196
|
+
walletClient?: WalletClient;
|
|
197
|
+
}
|
|
198
|
+
declare class Kudo {
|
|
199
|
+
readonly network: KudoNetwork;
|
|
200
|
+
readonly publicClient: PublicClient;
|
|
201
|
+
readonly walletClient?: WalletClient;
|
|
202
|
+
constructor(options?: KudoOptions);
|
|
203
|
+
/** The connected account's address, if a wallet client was given. */
|
|
204
|
+
get address(): Address | undefined;
|
|
205
|
+
get chainId(): number;
|
|
206
|
+
/** One covenant by id. */
|
|
207
|
+
getCovenant(id: bigint | number | string): Promise<Covenant>;
|
|
208
|
+
/** Every covenant on the contract, newest first, filtered. */
|
|
209
|
+
listCovenants(filter?: CovenantFilter): Promise<Covenant[]>;
|
|
210
|
+
/**
|
|
211
|
+
* Covenants whose ask nobody has met yet: work you can perform and be paid
|
|
212
|
+
* (or repaid) for. First to meet the ask takes it.
|
|
213
|
+
*/
|
|
214
|
+
listOpenAsks(filter?: OpenAskFilter): Promise<Covenant[]>;
|
|
215
|
+
/** Identity facts for one ERC-8004 id. */
|
|
216
|
+
getAgent(agentId: bigint | number | string): Promise<AgentInfo>;
|
|
217
|
+
/** An agent's identity plus its kept-vs-broken covenant record. */
|
|
218
|
+
agentRecord(agentId: bigint | number | string): Promise<AgentRecord>;
|
|
219
|
+
private reputation;
|
|
220
|
+
/**
|
|
221
|
+
* The ERC-8004 ids a wallet owns, oldest first.
|
|
222
|
+
*
|
|
223
|
+
* The registry has no reverse lookup, so this reads `Registered` events
|
|
224
|
+
* filtered on `owner` and `Transfer` events filtered on `to` (ids sent to
|
|
225
|
+
* the wallet), walking back one RPC-sized window at a time until it has
|
|
226
|
+
* found as many currently owned ids as `balanceOf` says exist.
|
|
227
|
+
*/
|
|
228
|
+
findAgentIds(wallet?: Address, options?: {
|
|
229
|
+
maxWindows?: number;
|
|
230
|
+
}): Promise<bigint[]>;
|
|
231
|
+
/** ETH balance (gas) as a decimal string. */
|
|
232
|
+
ethBalance(wallet?: Address): Promise<string>;
|
|
233
|
+
/**
|
|
234
|
+
* The contract's ask cooldown setting, in seconds. Note: on the current
|
|
235
|
+
* mainnet contract it does not stop a second `setAskSettlementData` from
|
|
236
|
+
* replacing an earlier claim (tested on a fork), so never rely on it to
|
|
237
|
+
* protect a claim; `meetAsk` checks before and after instead.
|
|
238
|
+
*/
|
|
239
|
+
getAskCooldown(): Promise<bigint>;
|
|
240
|
+
/**
|
|
241
|
+
* Throws unless a covenant is waiting for its promise proof: the Evaluator
|
|
242
|
+
* has accepted the claim on its ask (status IN_PROGRESS) and no promise
|
|
243
|
+
* proof is linked yet. A claim alone does not make the promise due, and
|
|
244
|
+
* linking twice replaces the first proof.
|
|
245
|
+
*/
|
|
246
|
+
assertPromiseDue(covenant: Covenant): void;
|
|
247
|
+
/** Encodes any call on a Kudo or registry contract as an unsigned transaction. */
|
|
248
|
+
buildTx<const abi extends Abi, functionName extends ContractFunctionName<abi, "nonpayable" | "payable">>(call: {
|
|
249
|
+
address: Address;
|
|
250
|
+
abi: abi;
|
|
251
|
+
functionName: functionName;
|
|
252
|
+
args: ContractFunctionArgs<abi, "nonpayable" | "payable", functionName>;
|
|
253
|
+
value?: bigint;
|
|
254
|
+
description: string;
|
|
255
|
+
}): TxRequest;
|
|
256
|
+
/** The mint transaction. Validates the text first; does not check ownership (see `mintCovenant`). */
|
|
257
|
+
buildMintCovenant(input: MintCovenantInput): TxRequest;
|
|
258
|
+
/** The transaction a counterparty sends after performing a covenant's ask. */
|
|
259
|
+
buildMeetAsk(id: bigint | number | string, input: MeetAskInput): TxRequest;
|
|
260
|
+
/** The transaction the promiser sends after keeping the promise. */
|
|
261
|
+
buildLinkProof(id: bigint | number | string, proof: string): TxRequest;
|
|
262
|
+
/** Registers a new ERC-8004 identity owned by the signer. */
|
|
263
|
+
buildRegisterAgent(input: RegisterAgentInput): TxRequest;
|
|
264
|
+
/** Sets one metadata entry (e.g. `teeId`, `endpoint`, `name`) on an ERC-8004 identity. */
|
|
265
|
+
buildSetAgentMetadata(agentId: bigint | number | string, key: string, value: string): TxRequest;
|
|
266
|
+
private requireWallet;
|
|
267
|
+
/**
|
|
268
|
+
* Simulates, signs, sends and waits for one transaction. Throws a KudoError
|
|
269
|
+
* naming the revert if the simulation or the receipt fails.
|
|
270
|
+
*/
|
|
271
|
+
send(tx: TxRequest): Promise<TransactionReceipt>;
|
|
272
|
+
/**
|
|
273
|
+
* Dry-runs a transaction as `from` without signing anything. Throws a
|
|
274
|
+
* KudoError naming the revert, so a bad mint costs nothing.
|
|
275
|
+
*/
|
|
276
|
+
simulate(tx: TxRequest, from: Address): Promise<void>;
|
|
277
|
+
/** Broadcasts a transaction someone already signed. For agents that sign offline. */
|
|
278
|
+
sendRawTransaction(serialized: Hex): Promise<{
|
|
279
|
+
hash: Hex;
|
|
280
|
+
status: "success" | "reverted";
|
|
281
|
+
}>;
|
|
282
|
+
/**
|
|
283
|
+
* Mints a covenant and returns its id.
|
|
284
|
+
*
|
|
285
|
+
* Checks first that the signer owns `agentId`: the contract refuses a mint
|
|
286
|
+
* under an id the caller does not control, and a mint is permanent — a
|
|
287
|
+
* second attempt adds a duplicate rather than replacing the first.
|
|
288
|
+
*/
|
|
289
|
+
mintCovenant(input: MintCovenantInput): Promise<{
|
|
290
|
+
hash: Hex;
|
|
291
|
+
covenantId: bigint;
|
|
292
|
+
url?: string;
|
|
293
|
+
}>;
|
|
294
|
+
/** Reads the new covenant id out of a mint receipt. */
|
|
295
|
+
mintedId(receipt: TransactionReceipt): bigint;
|
|
296
|
+
/**
|
|
297
|
+
* Meets a covenant's ask: you did the work (or sent the money), now record
|
|
298
|
+
* the proof. Refuses if someone already met it — attesting over them would
|
|
299
|
+
* overwrite their claim (the contract does not prevent that) and restart
|
|
300
|
+
* the promiser's clock. After mining it re-reads the
|
|
301
|
+
* covenant and throws ALREADY_MET if the proof on chain is not yours.
|
|
302
|
+
*/
|
|
303
|
+
meetAsk(id: bigint | number | string, input: MeetAskInput): Promise<{
|
|
304
|
+
hash: Hex;
|
|
305
|
+
}>;
|
|
306
|
+
/**
|
|
307
|
+
* Links proof that you kept your promise. Only the covenant's agentWallet
|
|
308
|
+
* may, only once its ask is met, and only once.
|
|
309
|
+
*/
|
|
310
|
+
linkProof(id: bigint | number | string, proof: string): Promise<{
|
|
311
|
+
hash: Hex;
|
|
312
|
+
}>;
|
|
313
|
+
/**
|
|
314
|
+
* Registers an ERC-8004 identity and returns its id. Refuses if the wallet
|
|
315
|
+
* already has one, because a second registration cannot be undone; pass
|
|
316
|
+
* `allowAnother` to register anyway.
|
|
317
|
+
*/
|
|
318
|
+
registerAgent(input: RegisterAgentInput & {
|
|
319
|
+
allowAnother?: boolean;
|
|
320
|
+
}): Promise<{
|
|
321
|
+
hash: Hex;
|
|
322
|
+
agentId: bigint;
|
|
323
|
+
}>;
|
|
324
|
+
/**
|
|
325
|
+
* Sets one metadata entry on an identity this wallet owns. Refuses an id
|
|
326
|
+
* owned by anyone else before anything is signed.
|
|
327
|
+
*/
|
|
328
|
+
setAgentMetadata(agentId: bigint | number | string, key: string, value: string): Promise<{
|
|
329
|
+
hash: Hex;
|
|
330
|
+
}>;
|
|
331
|
+
/**
|
|
332
|
+
* Resolves when a covenant reaches `until` (default: closed, i.e. completed
|
|
333
|
+
* or failed). Polls, so it works on any RPC.
|
|
334
|
+
*/
|
|
335
|
+
watchSettlement(id: bigint | number | string, options?: {
|
|
336
|
+
until?: CovenantStage[];
|
|
337
|
+
intervalMs?: number;
|
|
338
|
+
timeoutMs?: number;
|
|
339
|
+
signal?: AbortSignal;
|
|
340
|
+
onChange?: (covenant: Covenant) => void;
|
|
341
|
+
}): Promise<Covenant>;
|
|
342
|
+
covenantUrl(id: bigint): string | undefined;
|
|
343
|
+
txUrl(hash: Hex): string;
|
|
344
|
+
private toCovenant;
|
|
345
|
+
}
|
|
346
|
+
/** Creates a Kudo client. With no options it reads Robinhood Chain mainnet. */
|
|
347
|
+
declare function createKudo(options?: KudoOptions): Kudo;
|
|
348
|
+
|
|
349
|
+
declare const DSTACK_SOCKET = "/var/run/dstack.sock";
|
|
350
|
+
/** The key path the Kudo skill uses, so every integration derives the same wallet. */
|
|
351
|
+
declare const DSTACK_KEY_PATH = "kudo/agent";
|
|
352
|
+
interface DstackOptions {
|
|
353
|
+
/** Default /var/run/dstack.sock. */
|
|
354
|
+
socket?: string;
|
|
355
|
+
timeoutMs?: number;
|
|
356
|
+
}
|
|
357
|
+
/** Derives this app's secp256k1 key from dstack. Never log the result. */
|
|
358
|
+
declare function dstackPrivateKey(path?: string, options?: DstackOptions): Promise<`0x${string}`>;
|
|
359
|
+
/** The Phala app id (bare lowercase hex), the id a Trust Center report is published under. */
|
|
360
|
+
declare function dstackAppId(options?: DstackOptions): Promise<string>;
|
|
361
|
+
|
|
362
|
+
/**
|
|
363
|
+
* Revert selectors seen on Kudo deployments, with what each means in practice.
|
|
364
|
+
* Matched by selector because not every error is in the ABI the SDK carries.
|
|
365
|
+
*/
|
|
366
|
+
declare const REVERTS: Record<string, {
|
|
367
|
+
name: string;
|
|
368
|
+
hint: string;
|
|
369
|
+
}>;
|
|
370
|
+
type KudoErrorCode = "NO_WALLET" | "INVALID_INPUT" | "NOT_AGENT_OWNER" | "ALREADY_MET" | "ASK_NOT_MET" | "ALREADY_PROVEN" | "NOT_PROMISER" | "ALREADY_REGISTERED" | "REVERTED" | "TX_FAILED" | "TIMEOUT" | "NOT_FOUND";
|
|
371
|
+
declare class KudoError extends Error {
|
|
372
|
+
readonly code: KudoErrorCode;
|
|
373
|
+
readonly revert?: {
|
|
374
|
+
selector?: Hex;
|
|
375
|
+
name?: string;
|
|
376
|
+
hint?: string;
|
|
377
|
+
};
|
|
378
|
+
constructor(code: KudoErrorCode, message: string, options?: {
|
|
379
|
+
cause?: unknown;
|
|
380
|
+
revert?: KudoError["revert"];
|
|
381
|
+
});
|
|
382
|
+
}
|
|
383
|
+
/** Turns a viem error into a KudoError that names the revert and what to do about it. */
|
|
384
|
+
declare function toKudoError(error: unknown, action: string): KudoError;
|
|
385
|
+
|
|
386
|
+
declare const kudoAbi: readonly [{
|
|
387
|
+
readonly type: "constructor";
|
|
388
|
+
readonly inputs: readonly [{
|
|
389
|
+
readonly name: "admin";
|
|
390
|
+
readonly type: "address";
|
|
391
|
+
readonly internalType: "address";
|
|
392
|
+
}, {
|
|
393
|
+
readonly name: "initialDelay";
|
|
394
|
+
readonly type: "uint48";
|
|
395
|
+
readonly internalType: "uint48";
|
|
396
|
+
}, {
|
|
397
|
+
readonly name: "mintAccessControl";
|
|
398
|
+
readonly type: "bool";
|
|
399
|
+
readonly internalType: "bool";
|
|
400
|
+
}, {
|
|
401
|
+
readonly name: "askCooldown";
|
|
402
|
+
readonly type: "uint256";
|
|
403
|
+
readonly internalType: "uint256";
|
|
404
|
+
}];
|
|
405
|
+
readonly stateMutability: "nonpayable";
|
|
406
|
+
}, {
|
|
407
|
+
readonly type: "function";
|
|
408
|
+
readonly name: "AGENT_ROLE";
|
|
409
|
+
readonly inputs: readonly [];
|
|
410
|
+
readonly outputs: readonly [{
|
|
411
|
+
readonly name: "";
|
|
412
|
+
readonly type: "bytes32";
|
|
413
|
+
readonly internalType: "bytes32";
|
|
414
|
+
}];
|
|
415
|
+
readonly stateMutability: "view";
|
|
416
|
+
}, {
|
|
417
|
+
readonly type: "function";
|
|
418
|
+
readonly name: "DEFAULT_ADMIN_ROLE";
|
|
419
|
+
readonly inputs: readonly [];
|
|
420
|
+
readonly outputs: readonly [{
|
|
421
|
+
readonly name: "";
|
|
422
|
+
readonly type: "bytes32";
|
|
423
|
+
readonly internalType: "bytes32";
|
|
424
|
+
}];
|
|
425
|
+
readonly stateMutability: "view";
|
|
426
|
+
}, {
|
|
427
|
+
readonly type: "function";
|
|
428
|
+
readonly name: "EVALUATOR_CONTRACT_ROLE";
|
|
429
|
+
readonly inputs: readonly [];
|
|
430
|
+
readonly outputs: readonly [{
|
|
431
|
+
readonly name: "";
|
|
432
|
+
readonly type: "bytes32";
|
|
433
|
+
readonly internalType: "bytes32";
|
|
434
|
+
}];
|
|
435
|
+
readonly stateMutability: "view";
|
|
436
|
+
}, {
|
|
437
|
+
readonly type: "function";
|
|
438
|
+
readonly name: "acceptDefaultAdminTransfer";
|
|
439
|
+
readonly inputs: readonly [];
|
|
440
|
+
readonly outputs: readonly [];
|
|
441
|
+
readonly stateMutability: "nonpayable";
|
|
442
|
+
}, {
|
|
443
|
+
readonly type: "function";
|
|
444
|
+
readonly name: "approve";
|
|
445
|
+
readonly inputs: readonly [{
|
|
446
|
+
readonly name: "to";
|
|
447
|
+
readonly type: "address";
|
|
448
|
+
readonly internalType: "address";
|
|
449
|
+
}, {
|
|
450
|
+
readonly name: "tokenId";
|
|
451
|
+
readonly type: "uint256";
|
|
452
|
+
readonly internalType: "uint256";
|
|
453
|
+
}];
|
|
454
|
+
readonly outputs: readonly [];
|
|
455
|
+
readonly stateMutability: "nonpayable";
|
|
456
|
+
}, {
|
|
457
|
+
readonly type: "function";
|
|
458
|
+
readonly name: "balanceOf";
|
|
459
|
+
readonly inputs: readonly [{
|
|
460
|
+
readonly name: "owner";
|
|
461
|
+
readonly type: "address";
|
|
462
|
+
readonly internalType: "address";
|
|
463
|
+
}];
|
|
464
|
+
readonly outputs: readonly [{
|
|
465
|
+
readonly name: "";
|
|
466
|
+
readonly type: "uint256";
|
|
467
|
+
readonly internalType: "uint256";
|
|
468
|
+
}];
|
|
469
|
+
readonly stateMutability: "view";
|
|
470
|
+
}, {
|
|
471
|
+
readonly type: "function";
|
|
472
|
+
readonly name: "beginDefaultAdminTransfer";
|
|
473
|
+
readonly inputs: readonly [{
|
|
474
|
+
readonly name: "newAdmin";
|
|
475
|
+
readonly type: "address";
|
|
476
|
+
readonly internalType: "address";
|
|
477
|
+
}];
|
|
478
|
+
readonly outputs: readonly [];
|
|
479
|
+
readonly stateMutability: "nonpayable";
|
|
480
|
+
}, {
|
|
481
|
+
readonly type: "function";
|
|
482
|
+
readonly name: "cancelDefaultAdminTransfer";
|
|
483
|
+
readonly inputs: readonly [];
|
|
484
|
+
readonly outputs: readonly [];
|
|
485
|
+
readonly stateMutability: "nonpayable";
|
|
486
|
+
}, {
|
|
487
|
+
readonly type: "function";
|
|
488
|
+
readonly name: "changeDefaultAdminDelay";
|
|
489
|
+
readonly inputs: readonly [{
|
|
490
|
+
readonly name: "newDelay";
|
|
491
|
+
readonly type: "uint48";
|
|
492
|
+
readonly internalType: "uint48";
|
|
493
|
+
}];
|
|
494
|
+
readonly outputs: readonly [];
|
|
495
|
+
readonly stateMutability: "nonpayable";
|
|
496
|
+
}, {
|
|
497
|
+
readonly type: "function";
|
|
498
|
+
readonly name: "defaultAdmin";
|
|
499
|
+
readonly inputs: readonly [];
|
|
500
|
+
readonly outputs: readonly [{
|
|
501
|
+
readonly name: "";
|
|
502
|
+
readonly type: "address";
|
|
503
|
+
readonly internalType: "address";
|
|
504
|
+
}];
|
|
505
|
+
readonly stateMutability: "view";
|
|
506
|
+
}, {
|
|
507
|
+
readonly type: "function";
|
|
508
|
+
readonly name: "defaultAdminDelay";
|
|
509
|
+
readonly inputs: readonly [];
|
|
510
|
+
readonly outputs: readonly [{
|
|
511
|
+
readonly name: "";
|
|
512
|
+
readonly type: "uint48";
|
|
513
|
+
readonly internalType: "uint48";
|
|
514
|
+
}];
|
|
515
|
+
readonly stateMutability: "view";
|
|
516
|
+
}, {
|
|
517
|
+
readonly type: "function";
|
|
518
|
+
readonly name: "defaultAdminDelayIncreaseWait";
|
|
519
|
+
readonly inputs: readonly [];
|
|
520
|
+
readonly outputs: readonly [{
|
|
521
|
+
readonly name: "";
|
|
522
|
+
readonly type: "uint48";
|
|
523
|
+
readonly internalType: "uint48";
|
|
524
|
+
}];
|
|
525
|
+
readonly stateMutability: "view";
|
|
526
|
+
}, {
|
|
527
|
+
readonly type: "function";
|
|
528
|
+
readonly name: "getAgentCovenantIds";
|
|
529
|
+
readonly inputs: readonly [{
|
|
530
|
+
readonly name: "agent";
|
|
531
|
+
readonly type: "address";
|
|
532
|
+
readonly internalType: "address";
|
|
533
|
+
}];
|
|
534
|
+
readonly outputs: readonly [{
|
|
535
|
+
readonly name: "";
|
|
536
|
+
readonly type: "uint256[]";
|
|
537
|
+
readonly internalType: "uint256[]";
|
|
538
|
+
}];
|
|
539
|
+
readonly stateMutability: "view";
|
|
540
|
+
}, {
|
|
541
|
+
readonly type: "function";
|
|
542
|
+
readonly name: "getAgentCovenantsData";
|
|
543
|
+
readonly inputs: readonly [{
|
|
544
|
+
readonly name: "agent";
|
|
545
|
+
readonly type: "address";
|
|
546
|
+
readonly internalType: "address";
|
|
547
|
+
}];
|
|
548
|
+
readonly outputs: readonly [{
|
|
549
|
+
readonly name: "";
|
|
550
|
+
readonly type: "tuple[]";
|
|
551
|
+
readonly internalType: "struct Kudo.CovenantData[]";
|
|
552
|
+
readonly components: readonly [{
|
|
553
|
+
readonly name: "agentWallet";
|
|
554
|
+
readonly type: "address";
|
|
555
|
+
readonly internalType: "address";
|
|
556
|
+
}, {
|
|
557
|
+
readonly name: "agentId";
|
|
558
|
+
readonly type: "uint256";
|
|
559
|
+
readonly internalType: "uint256";
|
|
560
|
+
}, {
|
|
561
|
+
readonly name: "status";
|
|
562
|
+
readonly type: "uint8";
|
|
563
|
+
readonly internalType: "enum Kudo.CovenantStatus";
|
|
564
|
+
}, {
|
|
565
|
+
readonly name: "nftType";
|
|
566
|
+
readonly type: "string";
|
|
567
|
+
readonly internalType: "string";
|
|
568
|
+
}, {
|
|
569
|
+
readonly name: "ask";
|
|
570
|
+
readonly type: "string";
|
|
571
|
+
readonly internalType: "string";
|
|
572
|
+
}, {
|
|
573
|
+
readonly name: "covenantPromise";
|
|
574
|
+
readonly type: "string";
|
|
575
|
+
readonly internalType: "string";
|
|
576
|
+
}, {
|
|
577
|
+
readonly name: "promiseDetail";
|
|
578
|
+
readonly type: "string";
|
|
579
|
+
readonly internalType: "string";
|
|
580
|
+
}, {
|
|
581
|
+
readonly name: "askSettlementData";
|
|
582
|
+
readonly type: "string";
|
|
583
|
+
readonly internalType: "string";
|
|
584
|
+
}, {
|
|
585
|
+
readonly name: "askSettledAt";
|
|
586
|
+
readonly type: "uint256";
|
|
587
|
+
readonly internalType: "uint256";
|
|
588
|
+
}, {
|
|
589
|
+
readonly name: "promiseSettlementData";
|
|
590
|
+
readonly type: "string";
|
|
591
|
+
readonly internalType: "string";
|
|
592
|
+
}];
|
|
593
|
+
}];
|
|
594
|
+
readonly stateMutability: "view";
|
|
595
|
+
}, {
|
|
596
|
+
readonly type: "function";
|
|
597
|
+
readonly name: "getApproved";
|
|
598
|
+
readonly inputs: readonly [{
|
|
599
|
+
readonly name: "tokenId";
|
|
600
|
+
readonly type: "uint256";
|
|
601
|
+
readonly internalType: "uint256";
|
|
602
|
+
}];
|
|
603
|
+
readonly outputs: readonly [{
|
|
604
|
+
readonly name: "";
|
|
605
|
+
readonly type: "address";
|
|
606
|
+
readonly internalType: "address";
|
|
607
|
+
}];
|
|
608
|
+
readonly stateMutability: "view";
|
|
609
|
+
}, {
|
|
610
|
+
readonly type: "function";
|
|
611
|
+
readonly name: "getAskCooldown";
|
|
612
|
+
readonly inputs: readonly [];
|
|
613
|
+
readonly outputs: readonly [{
|
|
614
|
+
readonly name: "";
|
|
615
|
+
readonly type: "uint256";
|
|
616
|
+
readonly internalType: "uint256";
|
|
617
|
+
}];
|
|
618
|
+
readonly stateMutability: "view";
|
|
619
|
+
}, {
|
|
620
|
+
readonly type: "function";
|
|
621
|
+
readonly name: "getCovenant";
|
|
622
|
+
readonly inputs: readonly [{
|
|
623
|
+
readonly name: "nftId";
|
|
624
|
+
readonly type: "uint256";
|
|
625
|
+
readonly internalType: "uint256";
|
|
626
|
+
}];
|
|
627
|
+
readonly outputs: readonly [{
|
|
628
|
+
readonly name: "";
|
|
629
|
+
readonly type: "tuple";
|
|
630
|
+
readonly internalType: "struct Kudo.CovenantData";
|
|
631
|
+
readonly components: readonly [{
|
|
632
|
+
readonly name: "agentWallet";
|
|
633
|
+
readonly type: "address";
|
|
634
|
+
readonly internalType: "address";
|
|
635
|
+
}, {
|
|
636
|
+
readonly name: "agentId";
|
|
637
|
+
readonly type: "uint256";
|
|
638
|
+
readonly internalType: "uint256";
|
|
639
|
+
}, {
|
|
640
|
+
readonly name: "status";
|
|
641
|
+
readonly type: "uint8";
|
|
642
|
+
readonly internalType: "enum Kudo.CovenantStatus";
|
|
643
|
+
}, {
|
|
644
|
+
readonly name: "nftType";
|
|
645
|
+
readonly type: "string";
|
|
646
|
+
readonly internalType: "string";
|
|
647
|
+
}, {
|
|
648
|
+
readonly name: "ask";
|
|
649
|
+
readonly type: "string";
|
|
650
|
+
readonly internalType: "string";
|
|
651
|
+
}, {
|
|
652
|
+
readonly name: "covenantPromise";
|
|
653
|
+
readonly type: "string";
|
|
654
|
+
readonly internalType: "string";
|
|
655
|
+
}, {
|
|
656
|
+
readonly name: "promiseDetail";
|
|
657
|
+
readonly type: "string";
|
|
658
|
+
readonly internalType: "string";
|
|
659
|
+
}, {
|
|
660
|
+
readonly name: "askSettlementData";
|
|
661
|
+
readonly type: "string";
|
|
662
|
+
readonly internalType: "string";
|
|
663
|
+
}, {
|
|
664
|
+
readonly name: "askSettledAt";
|
|
665
|
+
readonly type: "uint256";
|
|
666
|
+
readonly internalType: "uint256";
|
|
667
|
+
}, {
|
|
668
|
+
readonly name: "promiseSettlementData";
|
|
669
|
+
readonly type: "string";
|
|
670
|
+
readonly internalType: "string";
|
|
671
|
+
}];
|
|
672
|
+
}];
|
|
673
|
+
readonly stateMutability: "view";
|
|
674
|
+
}, {
|
|
675
|
+
readonly type: "function";
|
|
676
|
+
readonly name: "getCovenantDetails";
|
|
677
|
+
readonly inputs: readonly [{
|
|
678
|
+
readonly name: "nftId";
|
|
679
|
+
readonly type: "uint256";
|
|
680
|
+
readonly internalType: "uint256";
|
|
681
|
+
}];
|
|
682
|
+
readonly outputs: readonly [{
|
|
683
|
+
readonly name: "";
|
|
684
|
+
readonly type: "tuple";
|
|
685
|
+
readonly internalType: "struct Kudo.CovenantDetails";
|
|
686
|
+
readonly components: readonly [{
|
|
687
|
+
readonly name: "nftId";
|
|
688
|
+
readonly type: "uint256";
|
|
689
|
+
readonly internalType: "uint256";
|
|
690
|
+
}, {
|
|
691
|
+
readonly name: "owner";
|
|
692
|
+
readonly type: "address";
|
|
693
|
+
readonly internalType: "address";
|
|
694
|
+
}, {
|
|
695
|
+
readonly name: "covenantData";
|
|
696
|
+
readonly type: "tuple";
|
|
697
|
+
readonly internalType: "struct Kudo.CovenantData";
|
|
698
|
+
readonly components: readonly [{
|
|
699
|
+
readonly name: "agentWallet";
|
|
700
|
+
readonly type: "address";
|
|
701
|
+
readonly internalType: "address";
|
|
702
|
+
}, {
|
|
703
|
+
readonly name: "agentId";
|
|
704
|
+
readonly type: "uint256";
|
|
705
|
+
readonly internalType: "uint256";
|
|
706
|
+
}, {
|
|
707
|
+
readonly name: "status";
|
|
708
|
+
readonly type: "uint8";
|
|
709
|
+
readonly internalType: "enum Kudo.CovenantStatus";
|
|
710
|
+
}, {
|
|
711
|
+
readonly name: "nftType";
|
|
712
|
+
readonly type: "string";
|
|
713
|
+
readonly internalType: "string";
|
|
714
|
+
}, {
|
|
715
|
+
readonly name: "ask";
|
|
716
|
+
readonly type: "string";
|
|
717
|
+
readonly internalType: "string";
|
|
718
|
+
}, {
|
|
719
|
+
readonly name: "covenantPromise";
|
|
720
|
+
readonly type: "string";
|
|
721
|
+
readonly internalType: "string";
|
|
722
|
+
}, {
|
|
723
|
+
readonly name: "promiseDetail";
|
|
724
|
+
readonly type: "string";
|
|
725
|
+
readonly internalType: "string";
|
|
726
|
+
}, {
|
|
727
|
+
readonly name: "askSettlementData";
|
|
728
|
+
readonly type: "string";
|
|
729
|
+
readonly internalType: "string";
|
|
730
|
+
}, {
|
|
731
|
+
readonly name: "askSettledAt";
|
|
732
|
+
readonly type: "uint256";
|
|
733
|
+
readonly internalType: "uint256";
|
|
734
|
+
}, {
|
|
735
|
+
readonly name: "promiseSettlementData";
|
|
736
|
+
readonly type: "string";
|
|
737
|
+
readonly internalType: "string";
|
|
738
|
+
}];
|
|
739
|
+
}];
|
|
740
|
+
}];
|
|
741
|
+
readonly stateMutability: "view";
|
|
742
|
+
}, {
|
|
743
|
+
readonly type: "function";
|
|
744
|
+
readonly name: "getCovenantsDetails";
|
|
745
|
+
readonly inputs: readonly [];
|
|
746
|
+
readonly outputs: readonly [{
|
|
747
|
+
readonly name: "";
|
|
748
|
+
readonly type: "tuple[]";
|
|
749
|
+
readonly internalType: "struct Kudo.CovenantDetails[]";
|
|
750
|
+
readonly components: readonly [{
|
|
751
|
+
readonly name: "nftId";
|
|
752
|
+
readonly type: "uint256";
|
|
753
|
+
readonly internalType: "uint256";
|
|
754
|
+
}, {
|
|
755
|
+
readonly name: "owner";
|
|
756
|
+
readonly type: "address";
|
|
757
|
+
readonly internalType: "address";
|
|
758
|
+
}, {
|
|
759
|
+
readonly name: "covenantData";
|
|
760
|
+
readonly type: "tuple";
|
|
761
|
+
readonly internalType: "struct Kudo.CovenantData";
|
|
762
|
+
readonly components: readonly [{
|
|
763
|
+
readonly name: "agentWallet";
|
|
764
|
+
readonly type: "address";
|
|
765
|
+
readonly internalType: "address";
|
|
766
|
+
}, {
|
|
767
|
+
readonly name: "agentId";
|
|
768
|
+
readonly type: "uint256";
|
|
769
|
+
readonly internalType: "uint256";
|
|
770
|
+
}, {
|
|
771
|
+
readonly name: "status";
|
|
772
|
+
readonly type: "uint8";
|
|
773
|
+
readonly internalType: "enum Kudo.CovenantStatus";
|
|
774
|
+
}, {
|
|
775
|
+
readonly name: "nftType";
|
|
776
|
+
readonly type: "string";
|
|
777
|
+
readonly internalType: "string";
|
|
778
|
+
}, {
|
|
779
|
+
readonly name: "ask";
|
|
780
|
+
readonly type: "string";
|
|
781
|
+
readonly internalType: "string";
|
|
782
|
+
}, {
|
|
783
|
+
readonly name: "covenantPromise";
|
|
784
|
+
readonly type: "string";
|
|
785
|
+
readonly internalType: "string";
|
|
786
|
+
}, {
|
|
787
|
+
readonly name: "promiseDetail";
|
|
788
|
+
readonly type: "string";
|
|
789
|
+
readonly internalType: "string";
|
|
790
|
+
}, {
|
|
791
|
+
readonly name: "askSettlementData";
|
|
792
|
+
readonly type: "string";
|
|
793
|
+
readonly internalType: "string";
|
|
794
|
+
}, {
|
|
795
|
+
readonly name: "askSettledAt";
|
|
796
|
+
readonly type: "uint256";
|
|
797
|
+
readonly internalType: "uint256";
|
|
798
|
+
}, {
|
|
799
|
+
readonly name: "promiseSettlementData";
|
|
800
|
+
readonly type: "string";
|
|
801
|
+
readonly internalType: "string";
|
|
802
|
+
}];
|
|
803
|
+
}];
|
|
804
|
+
}];
|
|
805
|
+
readonly stateMutability: "view";
|
|
806
|
+
}, {
|
|
807
|
+
readonly type: "function";
|
|
808
|
+
readonly name: "getCovenantsWithStatus";
|
|
809
|
+
readonly inputs: readonly [{
|
|
810
|
+
readonly name: "status";
|
|
811
|
+
readonly type: "uint8";
|
|
812
|
+
readonly internalType: "enum Kudo.CovenantStatus";
|
|
813
|
+
}];
|
|
814
|
+
readonly outputs: readonly [{
|
|
815
|
+
readonly name: "";
|
|
816
|
+
readonly type: "tuple[]";
|
|
817
|
+
readonly internalType: "struct Kudo.CovenantData[]";
|
|
818
|
+
readonly components: readonly [{
|
|
819
|
+
readonly name: "agentWallet";
|
|
820
|
+
readonly type: "address";
|
|
821
|
+
readonly internalType: "address";
|
|
822
|
+
}, {
|
|
823
|
+
readonly name: "agentId";
|
|
824
|
+
readonly type: "uint256";
|
|
825
|
+
readonly internalType: "uint256";
|
|
826
|
+
}, {
|
|
827
|
+
readonly name: "status";
|
|
828
|
+
readonly type: "uint8";
|
|
829
|
+
readonly internalType: "enum Kudo.CovenantStatus";
|
|
830
|
+
}, {
|
|
831
|
+
readonly name: "nftType";
|
|
832
|
+
readonly type: "string";
|
|
833
|
+
readonly internalType: "string";
|
|
834
|
+
}, {
|
|
835
|
+
readonly name: "ask";
|
|
836
|
+
readonly type: "string";
|
|
837
|
+
readonly internalType: "string";
|
|
838
|
+
}, {
|
|
839
|
+
readonly name: "covenantPromise";
|
|
840
|
+
readonly type: "string";
|
|
841
|
+
readonly internalType: "string";
|
|
842
|
+
}, {
|
|
843
|
+
readonly name: "promiseDetail";
|
|
844
|
+
readonly type: "string";
|
|
845
|
+
readonly internalType: "string";
|
|
846
|
+
}, {
|
|
847
|
+
readonly name: "askSettlementData";
|
|
848
|
+
readonly type: "string";
|
|
849
|
+
readonly internalType: "string";
|
|
850
|
+
}, {
|
|
851
|
+
readonly name: "askSettledAt";
|
|
852
|
+
readonly type: "uint256";
|
|
853
|
+
readonly internalType: "uint256";
|
|
854
|
+
}, {
|
|
855
|
+
readonly name: "promiseSettlementData";
|
|
856
|
+
readonly type: "string";
|
|
857
|
+
readonly internalType: "string";
|
|
858
|
+
}];
|
|
859
|
+
}];
|
|
860
|
+
readonly stateMutability: "view";
|
|
861
|
+
}, {
|
|
862
|
+
readonly type: "function";
|
|
863
|
+
readonly name: "getRoleAdmin";
|
|
864
|
+
readonly inputs: readonly [{
|
|
865
|
+
readonly name: "role";
|
|
866
|
+
readonly type: "bytes32";
|
|
867
|
+
readonly internalType: "bytes32";
|
|
868
|
+
}];
|
|
869
|
+
readonly outputs: readonly [{
|
|
870
|
+
readonly name: "";
|
|
871
|
+
readonly type: "bytes32";
|
|
872
|
+
readonly internalType: "bytes32";
|
|
873
|
+
}];
|
|
874
|
+
readonly stateMutability: "view";
|
|
875
|
+
}, {
|
|
876
|
+
readonly type: "function";
|
|
877
|
+
readonly name: "getTotalCovenants";
|
|
878
|
+
readonly inputs: readonly [];
|
|
879
|
+
readonly outputs: readonly [{
|
|
880
|
+
readonly name: "";
|
|
881
|
+
readonly type: "uint256";
|
|
882
|
+
readonly internalType: "uint256";
|
|
883
|
+
}];
|
|
884
|
+
readonly stateMutability: "view";
|
|
885
|
+
}, {
|
|
886
|
+
readonly type: "function";
|
|
887
|
+
readonly name: "grantRole";
|
|
888
|
+
readonly inputs: readonly [{
|
|
889
|
+
readonly name: "role";
|
|
890
|
+
readonly type: "bytes32";
|
|
891
|
+
readonly internalType: "bytes32";
|
|
892
|
+
}, {
|
|
893
|
+
readonly name: "account";
|
|
894
|
+
readonly type: "address";
|
|
895
|
+
readonly internalType: "address";
|
|
896
|
+
}];
|
|
897
|
+
readonly outputs: readonly [];
|
|
898
|
+
readonly stateMutability: "nonpayable";
|
|
899
|
+
}, {
|
|
900
|
+
readonly type: "function";
|
|
901
|
+
readonly name: "hasRole";
|
|
902
|
+
readonly inputs: readonly [{
|
|
903
|
+
readonly name: "role";
|
|
904
|
+
readonly type: "bytes32";
|
|
905
|
+
readonly internalType: "bytes32";
|
|
906
|
+
}, {
|
|
907
|
+
readonly name: "account";
|
|
908
|
+
readonly type: "address";
|
|
909
|
+
readonly internalType: "address";
|
|
910
|
+
}];
|
|
911
|
+
readonly outputs: readonly [{
|
|
912
|
+
readonly name: "";
|
|
913
|
+
readonly type: "bool";
|
|
914
|
+
readonly internalType: "bool";
|
|
915
|
+
}];
|
|
916
|
+
readonly stateMutability: "view";
|
|
917
|
+
}, {
|
|
918
|
+
readonly type: "function";
|
|
919
|
+
readonly name: "isApprovedForAll";
|
|
920
|
+
readonly inputs: readonly [{
|
|
921
|
+
readonly name: "owner";
|
|
922
|
+
readonly type: "address";
|
|
923
|
+
readonly internalType: "address";
|
|
924
|
+
}, {
|
|
925
|
+
readonly name: "operator";
|
|
926
|
+
readonly type: "address";
|
|
927
|
+
readonly internalType: "address";
|
|
928
|
+
}];
|
|
929
|
+
readonly outputs: readonly [{
|
|
930
|
+
readonly name: "";
|
|
931
|
+
readonly type: "bool";
|
|
932
|
+
readonly internalType: "bool";
|
|
933
|
+
}];
|
|
934
|
+
readonly stateMutability: "view";
|
|
935
|
+
}, {
|
|
936
|
+
readonly type: "function";
|
|
937
|
+
readonly name: "isAskSettled";
|
|
938
|
+
readonly inputs: readonly [{
|
|
939
|
+
readonly name: "nftId";
|
|
940
|
+
readonly type: "uint256";
|
|
941
|
+
readonly internalType: "uint256";
|
|
942
|
+
}];
|
|
943
|
+
readonly outputs: readonly [{
|
|
944
|
+
readonly name: "";
|
|
945
|
+
readonly type: "bool";
|
|
946
|
+
readonly internalType: "bool";
|
|
947
|
+
}];
|
|
948
|
+
readonly stateMutability: "view";
|
|
949
|
+
}, {
|
|
950
|
+
readonly type: "function";
|
|
951
|
+
readonly name: "isMintAccessControlEnabled";
|
|
952
|
+
readonly inputs: readonly [];
|
|
953
|
+
readonly outputs: readonly [{
|
|
954
|
+
readonly name: "";
|
|
955
|
+
readonly type: "bool";
|
|
956
|
+
readonly internalType: "bool";
|
|
957
|
+
}];
|
|
958
|
+
readonly stateMutability: "view";
|
|
959
|
+
}, {
|
|
960
|
+
readonly type: "function";
|
|
961
|
+
readonly name: "mintCovenant";
|
|
962
|
+
readonly inputs: readonly [{
|
|
963
|
+
readonly name: "agentId";
|
|
964
|
+
readonly type: "uint256";
|
|
965
|
+
readonly internalType: "uint256";
|
|
966
|
+
}, {
|
|
967
|
+
readonly name: "covenantPromise";
|
|
968
|
+
readonly type: "string";
|
|
969
|
+
readonly internalType: "string";
|
|
970
|
+
}, {
|
|
971
|
+
readonly name: "ask";
|
|
972
|
+
readonly type: "string";
|
|
973
|
+
readonly internalType: "string";
|
|
974
|
+
}, {
|
|
975
|
+
readonly name: "nftType";
|
|
976
|
+
readonly type: "string";
|
|
977
|
+
readonly internalType: "string";
|
|
978
|
+
}];
|
|
979
|
+
readonly outputs: readonly [{
|
|
980
|
+
readonly name: "";
|
|
981
|
+
readonly type: "uint256";
|
|
982
|
+
readonly internalType: "uint256";
|
|
983
|
+
}];
|
|
984
|
+
readonly stateMutability: "nonpayable";
|
|
985
|
+
}, {
|
|
986
|
+
readonly type: "function";
|
|
987
|
+
readonly name: "name";
|
|
988
|
+
readonly inputs: readonly [];
|
|
989
|
+
readonly outputs: readonly [{
|
|
990
|
+
readonly name: "";
|
|
991
|
+
readonly type: "string";
|
|
992
|
+
readonly internalType: "string";
|
|
993
|
+
}];
|
|
994
|
+
readonly stateMutability: "view";
|
|
995
|
+
}, {
|
|
996
|
+
readonly type: "function";
|
|
997
|
+
readonly name: "owner";
|
|
998
|
+
readonly inputs: readonly [];
|
|
999
|
+
readonly outputs: readonly [{
|
|
1000
|
+
readonly name: "";
|
|
1001
|
+
readonly type: "address";
|
|
1002
|
+
readonly internalType: "address";
|
|
1003
|
+
}];
|
|
1004
|
+
readonly stateMutability: "view";
|
|
1005
|
+
}, {
|
|
1006
|
+
readonly type: "function";
|
|
1007
|
+
readonly name: "ownerOf";
|
|
1008
|
+
readonly inputs: readonly [{
|
|
1009
|
+
readonly name: "tokenId";
|
|
1010
|
+
readonly type: "uint256";
|
|
1011
|
+
readonly internalType: "uint256";
|
|
1012
|
+
}];
|
|
1013
|
+
readonly outputs: readonly [{
|
|
1014
|
+
readonly name: "";
|
|
1015
|
+
readonly type: "address";
|
|
1016
|
+
readonly internalType: "address";
|
|
1017
|
+
}];
|
|
1018
|
+
readonly stateMutability: "view";
|
|
1019
|
+
}, {
|
|
1020
|
+
readonly type: "function";
|
|
1021
|
+
readonly name: "pendingDefaultAdmin";
|
|
1022
|
+
readonly inputs: readonly [];
|
|
1023
|
+
readonly outputs: readonly [{
|
|
1024
|
+
readonly name: "newAdmin";
|
|
1025
|
+
readonly type: "address";
|
|
1026
|
+
readonly internalType: "address";
|
|
1027
|
+
}, {
|
|
1028
|
+
readonly name: "schedule";
|
|
1029
|
+
readonly type: "uint48";
|
|
1030
|
+
readonly internalType: "uint48";
|
|
1031
|
+
}];
|
|
1032
|
+
readonly stateMutability: "view";
|
|
1033
|
+
}, {
|
|
1034
|
+
readonly type: "function";
|
|
1035
|
+
readonly name: "pendingDefaultAdminDelay";
|
|
1036
|
+
readonly inputs: readonly [];
|
|
1037
|
+
readonly outputs: readonly [{
|
|
1038
|
+
readonly name: "newDelay";
|
|
1039
|
+
readonly type: "uint48";
|
|
1040
|
+
readonly internalType: "uint48";
|
|
1041
|
+
}, {
|
|
1042
|
+
readonly name: "schedule";
|
|
1043
|
+
readonly type: "uint48";
|
|
1044
|
+
readonly internalType: "uint48";
|
|
1045
|
+
}];
|
|
1046
|
+
readonly stateMutability: "view";
|
|
1047
|
+
}, {
|
|
1048
|
+
readonly type: "function";
|
|
1049
|
+
readonly name: "renounceRole";
|
|
1050
|
+
readonly inputs: readonly [{
|
|
1051
|
+
readonly name: "role";
|
|
1052
|
+
readonly type: "bytes32";
|
|
1053
|
+
readonly internalType: "bytes32";
|
|
1054
|
+
}, {
|
|
1055
|
+
readonly name: "account";
|
|
1056
|
+
readonly type: "address";
|
|
1057
|
+
readonly internalType: "address";
|
|
1058
|
+
}];
|
|
1059
|
+
readonly outputs: readonly [];
|
|
1060
|
+
readonly stateMutability: "nonpayable";
|
|
1061
|
+
}, {
|
|
1062
|
+
readonly type: "function";
|
|
1063
|
+
readonly name: "revokeRole";
|
|
1064
|
+
readonly inputs: readonly [{
|
|
1065
|
+
readonly name: "role";
|
|
1066
|
+
readonly type: "bytes32";
|
|
1067
|
+
readonly internalType: "bytes32";
|
|
1068
|
+
}, {
|
|
1069
|
+
readonly name: "account";
|
|
1070
|
+
readonly type: "address";
|
|
1071
|
+
readonly internalType: "address";
|
|
1072
|
+
}];
|
|
1073
|
+
readonly outputs: readonly [];
|
|
1074
|
+
readonly stateMutability: "nonpayable";
|
|
1075
|
+
}, {
|
|
1076
|
+
readonly type: "function";
|
|
1077
|
+
readonly name: "rollbackDefaultAdminDelay";
|
|
1078
|
+
readonly inputs: readonly [];
|
|
1079
|
+
readonly outputs: readonly [];
|
|
1080
|
+
readonly stateMutability: "nonpayable";
|
|
1081
|
+
}, {
|
|
1082
|
+
readonly type: "function";
|
|
1083
|
+
readonly name: "safeTransferFrom";
|
|
1084
|
+
readonly inputs: readonly [{
|
|
1085
|
+
readonly name: "from";
|
|
1086
|
+
readonly type: "address";
|
|
1087
|
+
readonly internalType: "address";
|
|
1088
|
+
}, {
|
|
1089
|
+
readonly name: "to";
|
|
1090
|
+
readonly type: "address";
|
|
1091
|
+
readonly internalType: "address";
|
|
1092
|
+
}, {
|
|
1093
|
+
readonly name: "tokenId";
|
|
1094
|
+
readonly type: "uint256";
|
|
1095
|
+
readonly internalType: "uint256";
|
|
1096
|
+
}];
|
|
1097
|
+
readonly outputs: readonly [];
|
|
1098
|
+
readonly stateMutability: "nonpayable";
|
|
1099
|
+
}, {
|
|
1100
|
+
readonly type: "function";
|
|
1101
|
+
readonly name: "safeTransferFrom";
|
|
1102
|
+
readonly inputs: readonly [{
|
|
1103
|
+
readonly name: "from";
|
|
1104
|
+
readonly type: "address";
|
|
1105
|
+
readonly internalType: "address";
|
|
1106
|
+
}, {
|
|
1107
|
+
readonly name: "to";
|
|
1108
|
+
readonly type: "address";
|
|
1109
|
+
readonly internalType: "address";
|
|
1110
|
+
}, {
|
|
1111
|
+
readonly name: "tokenId";
|
|
1112
|
+
readonly type: "uint256";
|
|
1113
|
+
readonly internalType: "uint256";
|
|
1114
|
+
}, {
|
|
1115
|
+
readonly name: "data";
|
|
1116
|
+
readonly type: "bytes";
|
|
1117
|
+
readonly internalType: "bytes";
|
|
1118
|
+
}];
|
|
1119
|
+
readonly outputs: readonly [];
|
|
1120
|
+
readonly stateMutability: "nonpayable";
|
|
1121
|
+
}, {
|
|
1122
|
+
readonly type: "function";
|
|
1123
|
+
readonly name: "setApprovalForAll";
|
|
1124
|
+
readonly inputs: readonly [{
|
|
1125
|
+
readonly name: "operator";
|
|
1126
|
+
readonly type: "address";
|
|
1127
|
+
readonly internalType: "address";
|
|
1128
|
+
}, {
|
|
1129
|
+
readonly name: "approved";
|
|
1130
|
+
readonly type: "bool";
|
|
1131
|
+
readonly internalType: "bool";
|
|
1132
|
+
}];
|
|
1133
|
+
readonly outputs: readonly [];
|
|
1134
|
+
readonly stateMutability: "nonpayable";
|
|
1135
|
+
}, {
|
|
1136
|
+
readonly type: "function";
|
|
1137
|
+
readonly name: "setAskCooldown";
|
|
1138
|
+
readonly inputs: readonly [{
|
|
1139
|
+
readonly name: "cooldownSeconds";
|
|
1140
|
+
readonly type: "uint256";
|
|
1141
|
+
readonly internalType: "uint256";
|
|
1142
|
+
}];
|
|
1143
|
+
readonly outputs: readonly [];
|
|
1144
|
+
readonly stateMutability: "nonpayable";
|
|
1145
|
+
}, {
|
|
1146
|
+
readonly type: "function";
|
|
1147
|
+
readonly name: "setAskSettlementData";
|
|
1148
|
+
readonly inputs: readonly [{
|
|
1149
|
+
readonly name: "nftId";
|
|
1150
|
+
readonly type: "uint256";
|
|
1151
|
+
readonly internalType: "uint256";
|
|
1152
|
+
}, {
|
|
1153
|
+
readonly name: "settlementData";
|
|
1154
|
+
readonly type: "string";
|
|
1155
|
+
readonly internalType: "string";
|
|
1156
|
+
}, {
|
|
1157
|
+
readonly name: "promiseDetail";
|
|
1158
|
+
readonly type: "string";
|
|
1159
|
+
readonly internalType: "string";
|
|
1160
|
+
}];
|
|
1161
|
+
readonly outputs: readonly [];
|
|
1162
|
+
readonly stateMutability: "nonpayable";
|
|
1163
|
+
}, {
|
|
1164
|
+
readonly type: "function";
|
|
1165
|
+
readonly name: "setCovenantStatus";
|
|
1166
|
+
readonly inputs: readonly [{
|
|
1167
|
+
readonly name: "nftId";
|
|
1168
|
+
readonly type: "uint256";
|
|
1169
|
+
readonly internalType: "uint256";
|
|
1170
|
+
}, {
|
|
1171
|
+
readonly name: "status";
|
|
1172
|
+
readonly type: "uint8";
|
|
1173
|
+
readonly internalType: "enum Kudo.CovenantStatus";
|
|
1174
|
+
}];
|
|
1175
|
+
readonly outputs: readonly [];
|
|
1176
|
+
readonly stateMutability: "nonpayable";
|
|
1177
|
+
}, {
|
|
1178
|
+
readonly type: "function";
|
|
1179
|
+
readonly name: "setMintAccessControl";
|
|
1180
|
+
readonly inputs: readonly [{
|
|
1181
|
+
readonly name: "enabled";
|
|
1182
|
+
readonly type: "bool";
|
|
1183
|
+
readonly internalType: "bool";
|
|
1184
|
+
}];
|
|
1185
|
+
readonly outputs: readonly [];
|
|
1186
|
+
readonly stateMutability: "nonpayable";
|
|
1187
|
+
}, {
|
|
1188
|
+
readonly type: "function";
|
|
1189
|
+
readonly name: "setPromiseSettlementData";
|
|
1190
|
+
readonly inputs: readonly [{
|
|
1191
|
+
readonly name: "nftId";
|
|
1192
|
+
readonly type: "uint256";
|
|
1193
|
+
readonly internalType: "uint256";
|
|
1194
|
+
}, {
|
|
1195
|
+
readonly name: "data";
|
|
1196
|
+
readonly type: "string";
|
|
1197
|
+
readonly internalType: "string";
|
|
1198
|
+
}];
|
|
1199
|
+
readonly outputs: readonly [];
|
|
1200
|
+
readonly stateMutability: "nonpayable";
|
|
1201
|
+
}, {
|
|
1202
|
+
readonly type: "function";
|
|
1203
|
+
readonly name: "supportsInterface";
|
|
1204
|
+
readonly inputs: readonly [{
|
|
1205
|
+
readonly name: "interfaceId";
|
|
1206
|
+
readonly type: "bytes4";
|
|
1207
|
+
readonly internalType: "bytes4";
|
|
1208
|
+
}];
|
|
1209
|
+
readonly outputs: readonly [{
|
|
1210
|
+
readonly name: "";
|
|
1211
|
+
readonly type: "bool";
|
|
1212
|
+
readonly internalType: "bool";
|
|
1213
|
+
}];
|
|
1214
|
+
readonly stateMutability: "view";
|
|
1215
|
+
}, {
|
|
1216
|
+
readonly type: "function";
|
|
1217
|
+
readonly name: "symbol";
|
|
1218
|
+
readonly inputs: readonly [];
|
|
1219
|
+
readonly outputs: readonly [{
|
|
1220
|
+
readonly name: "";
|
|
1221
|
+
readonly type: "string";
|
|
1222
|
+
readonly internalType: "string";
|
|
1223
|
+
}];
|
|
1224
|
+
readonly stateMutability: "view";
|
|
1225
|
+
}, {
|
|
1226
|
+
readonly type: "function";
|
|
1227
|
+
readonly name: "tokenURI";
|
|
1228
|
+
readonly inputs: readonly [{
|
|
1229
|
+
readonly name: "tokenId";
|
|
1230
|
+
readonly type: "uint256";
|
|
1231
|
+
readonly internalType: "uint256";
|
|
1232
|
+
}];
|
|
1233
|
+
readonly outputs: readonly [{
|
|
1234
|
+
readonly name: "";
|
|
1235
|
+
readonly type: "string";
|
|
1236
|
+
readonly internalType: "string";
|
|
1237
|
+
}];
|
|
1238
|
+
readonly stateMutability: "view";
|
|
1239
|
+
}, {
|
|
1240
|
+
readonly type: "function";
|
|
1241
|
+
readonly name: "transferFrom";
|
|
1242
|
+
readonly inputs: readonly [{
|
|
1243
|
+
readonly name: "from";
|
|
1244
|
+
readonly type: "address";
|
|
1245
|
+
readonly internalType: "address";
|
|
1246
|
+
}, {
|
|
1247
|
+
readonly name: "to";
|
|
1248
|
+
readonly type: "address";
|
|
1249
|
+
readonly internalType: "address";
|
|
1250
|
+
}, {
|
|
1251
|
+
readonly name: "tokenId";
|
|
1252
|
+
readonly type: "uint256";
|
|
1253
|
+
readonly internalType: "uint256";
|
|
1254
|
+
}];
|
|
1255
|
+
readonly outputs: readonly [];
|
|
1256
|
+
readonly stateMutability: "nonpayable";
|
|
1257
|
+
}, {
|
|
1258
|
+
readonly type: "event";
|
|
1259
|
+
readonly name: "Approval";
|
|
1260
|
+
readonly inputs: readonly [{
|
|
1261
|
+
readonly name: "owner";
|
|
1262
|
+
readonly type: "address";
|
|
1263
|
+
readonly indexed: true;
|
|
1264
|
+
readonly internalType: "address";
|
|
1265
|
+
}, {
|
|
1266
|
+
readonly name: "approved";
|
|
1267
|
+
readonly type: "address";
|
|
1268
|
+
readonly indexed: true;
|
|
1269
|
+
readonly internalType: "address";
|
|
1270
|
+
}, {
|
|
1271
|
+
readonly name: "tokenId";
|
|
1272
|
+
readonly type: "uint256";
|
|
1273
|
+
readonly indexed: true;
|
|
1274
|
+
readonly internalType: "uint256";
|
|
1275
|
+
}];
|
|
1276
|
+
readonly anonymous: false;
|
|
1277
|
+
}, {
|
|
1278
|
+
readonly type: "event";
|
|
1279
|
+
readonly name: "ApprovalForAll";
|
|
1280
|
+
readonly inputs: readonly [{
|
|
1281
|
+
readonly name: "owner";
|
|
1282
|
+
readonly type: "address";
|
|
1283
|
+
readonly indexed: true;
|
|
1284
|
+
readonly internalType: "address";
|
|
1285
|
+
}, {
|
|
1286
|
+
readonly name: "operator";
|
|
1287
|
+
readonly type: "address";
|
|
1288
|
+
readonly indexed: true;
|
|
1289
|
+
readonly internalType: "address";
|
|
1290
|
+
}, {
|
|
1291
|
+
readonly name: "approved";
|
|
1292
|
+
readonly type: "bool";
|
|
1293
|
+
readonly indexed: false;
|
|
1294
|
+
readonly internalType: "bool";
|
|
1295
|
+
}];
|
|
1296
|
+
readonly anonymous: false;
|
|
1297
|
+
}, {
|
|
1298
|
+
readonly type: "event";
|
|
1299
|
+
readonly name: "AskCooldownSet";
|
|
1300
|
+
readonly inputs: readonly [{
|
|
1301
|
+
readonly name: "cooldownSeconds";
|
|
1302
|
+
readonly type: "uint256";
|
|
1303
|
+
readonly indexed: false;
|
|
1304
|
+
readonly internalType: "uint256";
|
|
1305
|
+
}];
|
|
1306
|
+
readonly anonymous: false;
|
|
1307
|
+
}, {
|
|
1308
|
+
readonly type: "event";
|
|
1309
|
+
readonly name: "AskSettlementSet";
|
|
1310
|
+
readonly inputs: readonly [{
|
|
1311
|
+
readonly name: "nftId";
|
|
1312
|
+
readonly type: "uint256";
|
|
1313
|
+
readonly indexed: false;
|
|
1314
|
+
readonly internalType: "uint256";
|
|
1315
|
+
}, {
|
|
1316
|
+
readonly name: "askSettlement";
|
|
1317
|
+
readonly type: "string";
|
|
1318
|
+
readonly indexed: false;
|
|
1319
|
+
readonly internalType: "string";
|
|
1320
|
+
}, {
|
|
1321
|
+
readonly name: "promiseDetails";
|
|
1322
|
+
readonly type: "string";
|
|
1323
|
+
readonly indexed: false;
|
|
1324
|
+
readonly internalType: "string";
|
|
1325
|
+
}];
|
|
1326
|
+
readonly anonymous: false;
|
|
1327
|
+
}, {
|
|
1328
|
+
readonly type: "event";
|
|
1329
|
+
readonly name: "CovenantMinted";
|
|
1330
|
+
readonly inputs: readonly [{
|
|
1331
|
+
readonly name: "nftId";
|
|
1332
|
+
readonly type: "uint256";
|
|
1333
|
+
readonly indexed: false;
|
|
1334
|
+
readonly internalType: "uint256";
|
|
1335
|
+
}, {
|
|
1336
|
+
readonly name: "agent";
|
|
1337
|
+
readonly type: "address";
|
|
1338
|
+
readonly indexed: true;
|
|
1339
|
+
readonly internalType: "address";
|
|
1340
|
+
}, {
|
|
1341
|
+
readonly name: "nftType";
|
|
1342
|
+
readonly type: "string";
|
|
1343
|
+
readonly indexed: false;
|
|
1344
|
+
readonly internalType: "string";
|
|
1345
|
+
}, {
|
|
1346
|
+
readonly name: "covenantPromise";
|
|
1347
|
+
readonly type: "string";
|
|
1348
|
+
readonly indexed: false;
|
|
1349
|
+
readonly internalType: "string";
|
|
1350
|
+
}, {
|
|
1351
|
+
readonly name: "ask";
|
|
1352
|
+
readonly type: "string";
|
|
1353
|
+
readonly indexed: false;
|
|
1354
|
+
readonly internalType: "string";
|
|
1355
|
+
}];
|
|
1356
|
+
readonly anonymous: false;
|
|
1357
|
+
}, {
|
|
1358
|
+
readonly type: "event";
|
|
1359
|
+
readonly name: "CovenantPromiseSet";
|
|
1360
|
+
readonly inputs: readonly [{
|
|
1361
|
+
readonly name: "nftId";
|
|
1362
|
+
readonly type: "uint256";
|
|
1363
|
+
readonly indexed: true;
|
|
1364
|
+
readonly internalType: "uint256";
|
|
1365
|
+
}, {
|
|
1366
|
+
readonly name: "status";
|
|
1367
|
+
readonly type: "uint8";
|
|
1368
|
+
readonly indexed: false;
|
|
1369
|
+
readonly internalType: "enum Kudo.CovenantStatus";
|
|
1370
|
+
}];
|
|
1371
|
+
readonly anonymous: false;
|
|
1372
|
+
}, {
|
|
1373
|
+
readonly type: "event";
|
|
1374
|
+
readonly name: "DefaultAdminDelayChangeCanceled";
|
|
1375
|
+
readonly inputs: readonly [];
|
|
1376
|
+
readonly anonymous: false;
|
|
1377
|
+
}, {
|
|
1378
|
+
readonly type: "event";
|
|
1379
|
+
readonly name: "DefaultAdminDelayChangeScheduled";
|
|
1380
|
+
readonly inputs: readonly [{
|
|
1381
|
+
readonly name: "newDelay";
|
|
1382
|
+
readonly type: "uint48";
|
|
1383
|
+
readonly indexed: false;
|
|
1384
|
+
readonly internalType: "uint48";
|
|
1385
|
+
}, {
|
|
1386
|
+
readonly name: "effectSchedule";
|
|
1387
|
+
readonly type: "uint48";
|
|
1388
|
+
readonly indexed: false;
|
|
1389
|
+
readonly internalType: "uint48";
|
|
1390
|
+
}];
|
|
1391
|
+
readonly anonymous: false;
|
|
1392
|
+
}, {
|
|
1393
|
+
readonly type: "event";
|
|
1394
|
+
readonly name: "DefaultAdminTransferCanceled";
|
|
1395
|
+
readonly inputs: readonly [];
|
|
1396
|
+
readonly anonymous: false;
|
|
1397
|
+
}, {
|
|
1398
|
+
readonly type: "event";
|
|
1399
|
+
readonly name: "DefaultAdminTransferScheduled";
|
|
1400
|
+
readonly inputs: readonly [{
|
|
1401
|
+
readonly name: "newAdmin";
|
|
1402
|
+
readonly type: "address";
|
|
1403
|
+
readonly indexed: true;
|
|
1404
|
+
readonly internalType: "address";
|
|
1405
|
+
}, {
|
|
1406
|
+
readonly name: "acceptSchedule";
|
|
1407
|
+
readonly type: "uint48";
|
|
1408
|
+
readonly indexed: false;
|
|
1409
|
+
readonly internalType: "uint48";
|
|
1410
|
+
}];
|
|
1411
|
+
readonly anonymous: false;
|
|
1412
|
+
}, {
|
|
1413
|
+
readonly type: "event";
|
|
1414
|
+
readonly name: "MintAccessControlSet";
|
|
1415
|
+
readonly inputs: readonly [{
|
|
1416
|
+
readonly name: "enabled";
|
|
1417
|
+
readonly type: "bool";
|
|
1418
|
+
readonly indexed: false;
|
|
1419
|
+
readonly internalType: "bool";
|
|
1420
|
+
}];
|
|
1421
|
+
readonly anonymous: false;
|
|
1422
|
+
}, {
|
|
1423
|
+
readonly type: "event";
|
|
1424
|
+
readonly name: "PromiseSettlementSet";
|
|
1425
|
+
readonly inputs: readonly [{
|
|
1426
|
+
readonly name: "nftId";
|
|
1427
|
+
readonly type: "uint256";
|
|
1428
|
+
readonly indexed: false;
|
|
1429
|
+
readonly internalType: "uint256";
|
|
1430
|
+
}, {
|
|
1431
|
+
readonly name: "promiseSettlement";
|
|
1432
|
+
readonly type: "string";
|
|
1433
|
+
readonly indexed: false;
|
|
1434
|
+
readonly internalType: "string";
|
|
1435
|
+
}];
|
|
1436
|
+
readonly anonymous: false;
|
|
1437
|
+
}, {
|
|
1438
|
+
readonly type: "event";
|
|
1439
|
+
readonly name: "RoleAdminChanged";
|
|
1440
|
+
readonly inputs: readonly [{
|
|
1441
|
+
readonly name: "role";
|
|
1442
|
+
readonly type: "bytes32";
|
|
1443
|
+
readonly indexed: true;
|
|
1444
|
+
readonly internalType: "bytes32";
|
|
1445
|
+
}, {
|
|
1446
|
+
readonly name: "previousAdminRole";
|
|
1447
|
+
readonly type: "bytes32";
|
|
1448
|
+
readonly indexed: true;
|
|
1449
|
+
readonly internalType: "bytes32";
|
|
1450
|
+
}, {
|
|
1451
|
+
readonly name: "newAdminRole";
|
|
1452
|
+
readonly type: "bytes32";
|
|
1453
|
+
readonly indexed: true;
|
|
1454
|
+
readonly internalType: "bytes32";
|
|
1455
|
+
}];
|
|
1456
|
+
readonly anonymous: false;
|
|
1457
|
+
}, {
|
|
1458
|
+
readonly type: "event";
|
|
1459
|
+
readonly name: "RoleGranted";
|
|
1460
|
+
readonly inputs: readonly [{
|
|
1461
|
+
readonly name: "role";
|
|
1462
|
+
readonly type: "bytes32";
|
|
1463
|
+
readonly indexed: true;
|
|
1464
|
+
readonly internalType: "bytes32";
|
|
1465
|
+
}, {
|
|
1466
|
+
readonly name: "account";
|
|
1467
|
+
readonly type: "address";
|
|
1468
|
+
readonly indexed: true;
|
|
1469
|
+
readonly internalType: "address";
|
|
1470
|
+
}, {
|
|
1471
|
+
readonly name: "sender";
|
|
1472
|
+
readonly type: "address";
|
|
1473
|
+
readonly indexed: true;
|
|
1474
|
+
readonly internalType: "address";
|
|
1475
|
+
}];
|
|
1476
|
+
readonly anonymous: false;
|
|
1477
|
+
}, {
|
|
1478
|
+
readonly type: "event";
|
|
1479
|
+
readonly name: "RoleRevoked";
|
|
1480
|
+
readonly inputs: readonly [{
|
|
1481
|
+
readonly name: "role";
|
|
1482
|
+
readonly type: "bytes32";
|
|
1483
|
+
readonly indexed: true;
|
|
1484
|
+
readonly internalType: "bytes32";
|
|
1485
|
+
}, {
|
|
1486
|
+
readonly name: "account";
|
|
1487
|
+
readonly type: "address";
|
|
1488
|
+
readonly indexed: true;
|
|
1489
|
+
readonly internalType: "address";
|
|
1490
|
+
}, {
|
|
1491
|
+
readonly name: "sender";
|
|
1492
|
+
readonly type: "address";
|
|
1493
|
+
readonly indexed: true;
|
|
1494
|
+
readonly internalType: "address";
|
|
1495
|
+
}];
|
|
1496
|
+
readonly anonymous: false;
|
|
1497
|
+
}, {
|
|
1498
|
+
readonly type: "event";
|
|
1499
|
+
readonly name: "Transfer";
|
|
1500
|
+
readonly inputs: readonly [{
|
|
1501
|
+
readonly name: "from";
|
|
1502
|
+
readonly type: "address";
|
|
1503
|
+
readonly indexed: true;
|
|
1504
|
+
readonly internalType: "address";
|
|
1505
|
+
}, {
|
|
1506
|
+
readonly name: "to";
|
|
1507
|
+
readonly type: "address";
|
|
1508
|
+
readonly indexed: true;
|
|
1509
|
+
readonly internalType: "address";
|
|
1510
|
+
}, {
|
|
1511
|
+
readonly name: "tokenId";
|
|
1512
|
+
readonly type: "uint256";
|
|
1513
|
+
readonly indexed: true;
|
|
1514
|
+
readonly internalType: "uint256";
|
|
1515
|
+
}];
|
|
1516
|
+
readonly anonymous: false;
|
|
1517
|
+
}, {
|
|
1518
|
+
readonly type: "error";
|
|
1519
|
+
readonly name: "AccessControlBadConfirmation";
|
|
1520
|
+
readonly inputs: readonly [];
|
|
1521
|
+
}, {
|
|
1522
|
+
readonly type: "error";
|
|
1523
|
+
readonly name: "AccessControlEnforcedDefaultAdminDelay";
|
|
1524
|
+
readonly inputs: readonly [{
|
|
1525
|
+
readonly name: "schedule";
|
|
1526
|
+
readonly type: "uint48";
|
|
1527
|
+
readonly internalType: "uint48";
|
|
1528
|
+
}];
|
|
1529
|
+
}, {
|
|
1530
|
+
readonly type: "error";
|
|
1531
|
+
readonly name: "AccessControlEnforcedDefaultAdminRules";
|
|
1532
|
+
readonly inputs: readonly [];
|
|
1533
|
+
}, {
|
|
1534
|
+
readonly type: "error";
|
|
1535
|
+
readonly name: "AccessControlInvalidDefaultAdmin";
|
|
1536
|
+
readonly inputs: readonly [{
|
|
1537
|
+
readonly name: "defaultAdmin";
|
|
1538
|
+
readonly type: "address";
|
|
1539
|
+
readonly internalType: "address";
|
|
1540
|
+
}];
|
|
1541
|
+
}, {
|
|
1542
|
+
readonly type: "error";
|
|
1543
|
+
readonly name: "AccessControlUnauthorizedAccount";
|
|
1544
|
+
readonly inputs: readonly [{
|
|
1545
|
+
readonly name: "account";
|
|
1546
|
+
readonly type: "address";
|
|
1547
|
+
readonly internalType: "address";
|
|
1548
|
+
}, {
|
|
1549
|
+
readonly name: "neededRole";
|
|
1550
|
+
readonly type: "bytes32";
|
|
1551
|
+
readonly internalType: "bytes32";
|
|
1552
|
+
}];
|
|
1553
|
+
}, {
|
|
1554
|
+
readonly type: "error";
|
|
1555
|
+
readonly name: "AccessForbidden";
|
|
1556
|
+
readonly inputs: readonly [];
|
|
1557
|
+
}, {
|
|
1558
|
+
readonly type: "error";
|
|
1559
|
+
readonly name: "CovenantNotFound";
|
|
1560
|
+
readonly inputs: readonly [];
|
|
1561
|
+
}, {
|
|
1562
|
+
readonly type: "error";
|
|
1563
|
+
readonly name: "ERC721IncorrectOwner";
|
|
1564
|
+
readonly inputs: readonly [{
|
|
1565
|
+
readonly name: "sender";
|
|
1566
|
+
readonly type: "address";
|
|
1567
|
+
readonly internalType: "address";
|
|
1568
|
+
}, {
|
|
1569
|
+
readonly name: "tokenId";
|
|
1570
|
+
readonly type: "uint256";
|
|
1571
|
+
readonly internalType: "uint256";
|
|
1572
|
+
}, {
|
|
1573
|
+
readonly name: "owner";
|
|
1574
|
+
readonly type: "address";
|
|
1575
|
+
readonly internalType: "address";
|
|
1576
|
+
}];
|
|
1577
|
+
}, {
|
|
1578
|
+
readonly type: "error";
|
|
1579
|
+
readonly name: "ERC721InsufficientApproval";
|
|
1580
|
+
readonly inputs: readonly [{
|
|
1581
|
+
readonly name: "operator";
|
|
1582
|
+
readonly type: "address";
|
|
1583
|
+
readonly internalType: "address";
|
|
1584
|
+
}, {
|
|
1585
|
+
readonly name: "tokenId";
|
|
1586
|
+
readonly type: "uint256";
|
|
1587
|
+
readonly internalType: "uint256";
|
|
1588
|
+
}];
|
|
1589
|
+
}, {
|
|
1590
|
+
readonly type: "error";
|
|
1591
|
+
readonly name: "ERC721InvalidApprover";
|
|
1592
|
+
readonly inputs: readonly [{
|
|
1593
|
+
readonly name: "approver";
|
|
1594
|
+
readonly type: "address";
|
|
1595
|
+
readonly internalType: "address";
|
|
1596
|
+
}];
|
|
1597
|
+
}, {
|
|
1598
|
+
readonly type: "error";
|
|
1599
|
+
readonly name: "ERC721InvalidOperator";
|
|
1600
|
+
readonly inputs: readonly [{
|
|
1601
|
+
readonly name: "operator";
|
|
1602
|
+
readonly type: "address";
|
|
1603
|
+
readonly internalType: "address";
|
|
1604
|
+
}];
|
|
1605
|
+
}, {
|
|
1606
|
+
readonly type: "error";
|
|
1607
|
+
readonly name: "ERC721InvalidOwner";
|
|
1608
|
+
readonly inputs: readonly [{
|
|
1609
|
+
readonly name: "owner";
|
|
1610
|
+
readonly type: "address";
|
|
1611
|
+
readonly internalType: "address";
|
|
1612
|
+
}];
|
|
1613
|
+
}, {
|
|
1614
|
+
readonly type: "error";
|
|
1615
|
+
readonly name: "ERC721InvalidReceiver";
|
|
1616
|
+
readonly inputs: readonly [{
|
|
1617
|
+
readonly name: "receiver";
|
|
1618
|
+
readonly type: "address";
|
|
1619
|
+
readonly internalType: "address";
|
|
1620
|
+
}];
|
|
1621
|
+
}, {
|
|
1622
|
+
readonly type: "error";
|
|
1623
|
+
readonly name: "ERC721InvalidSender";
|
|
1624
|
+
readonly inputs: readonly [{
|
|
1625
|
+
readonly name: "sender";
|
|
1626
|
+
readonly type: "address";
|
|
1627
|
+
readonly internalType: "address";
|
|
1628
|
+
}];
|
|
1629
|
+
}, {
|
|
1630
|
+
readonly type: "error";
|
|
1631
|
+
readonly name: "ERC721NonexistentToken";
|
|
1632
|
+
readonly inputs: readonly [{
|
|
1633
|
+
readonly name: "tokenId";
|
|
1634
|
+
readonly type: "uint256";
|
|
1635
|
+
readonly internalType: "uint256";
|
|
1636
|
+
}];
|
|
1637
|
+
}, {
|
|
1638
|
+
readonly type: "error";
|
|
1639
|
+
readonly name: "SafeCastOverflowedUintDowncast";
|
|
1640
|
+
readonly inputs: readonly [{
|
|
1641
|
+
readonly name: "bits";
|
|
1642
|
+
readonly type: "uint8";
|
|
1643
|
+
readonly internalType: "uint8";
|
|
1644
|
+
}, {
|
|
1645
|
+
readonly name: "value";
|
|
1646
|
+
readonly type: "uint256";
|
|
1647
|
+
readonly internalType: "uint256";
|
|
1648
|
+
}];
|
|
1649
|
+
}];
|
|
1650
|
+
|
|
1651
|
+
/**
|
|
1652
|
+
* The parts of the ERC-8004 registries Kudo uses.
|
|
1653
|
+
*
|
|
1654
|
+
* The Identity Registry is ERC-721 but not Enumerable: there is no
|
|
1655
|
+
* `tokenOfOwnerByIndex` and no reverse lookup, so the only route from a wallet
|
|
1656
|
+
* to its ids is the `Registered` event filtered on its indexed `owner`.
|
|
1657
|
+
*/
|
|
1658
|
+
declare const identityRegistryAbi: readonly [{
|
|
1659
|
+
readonly type: "function";
|
|
1660
|
+
readonly name: "register";
|
|
1661
|
+
readonly inputs: readonly [{
|
|
1662
|
+
readonly name: "agentURI";
|
|
1663
|
+
readonly type: "string";
|
|
1664
|
+
}, {
|
|
1665
|
+
readonly name: "metadata";
|
|
1666
|
+
readonly type: "tuple[]";
|
|
1667
|
+
readonly components: readonly [{
|
|
1668
|
+
readonly name: "metadataKey";
|
|
1669
|
+
readonly type: "string";
|
|
1670
|
+
}, {
|
|
1671
|
+
readonly name: "metadataValue";
|
|
1672
|
+
readonly type: "bytes";
|
|
1673
|
+
}];
|
|
1674
|
+
}];
|
|
1675
|
+
readonly outputs: readonly [{
|
|
1676
|
+
readonly name: "agentId";
|
|
1677
|
+
readonly type: "uint256";
|
|
1678
|
+
}];
|
|
1679
|
+
readonly stateMutability: "nonpayable";
|
|
1680
|
+
}, {
|
|
1681
|
+
readonly type: "function";
|
|
1682
|
+
readonly name: "setMetadata";
|
|
1683
|
+
readonly inputs: readonly [{
|
|
1684
|
+
readonly name: "agentId";
|
|
1685
|
+
readonly type: "uint256";
|
|
1686
|
+
}, {
|
|
1687
|
+
readonly name: "key";
|
|
1688
|
+
readonly type: "string";
|
|
1689
|
+
}, {
|
|
1690
|
+
readonly name: "value";
|
|
1691
|
+
readonly type: "bytes";
|
|
1692
|
+
}];
|
|
1693
|
+
readonly outputs: readonly [];
|
|
1694
|
+
readonly stateMutability: "nonpayable";
|
|
1695
|
+
}, {
|
|
1696
|
+
readonly type: "function";
|
|
1697
|
+
readonly name: "getMetadata";
|
|
1698
|
+
readonly inputs: readonly [{
|
|
1699
|
+
readonly name: "agentId";
|
|
1700
|
+
readonly type: "uint256";
|
|
1701
|
+
}, {
|
|
1702
|
+
readonly name: "key";
|
|
1703
|
+
readonly type: "string";
|
|
1704
|
+
}];
|
|
1705
|
+
readonly outputs: readonly [{
|
|
1706
|
+
readonly name: "";
|
|
1707
|
+
readonly type: "bytes";
|
|
1708
|
+
}];
|
|
1709
|
+
readonly stateMutability: "view";
|
|
1710
|
+
}, {
|
|
1711
|
+
readonly type: "function";
|
|
1712
|
+
readonly name: "ownerOf";
|
|
1713
|
+
readonly inputs: readonly [{
|
|
1714
|
+
readonly name: "tokenId";
|
|
1715
|
+
readonly type: "uint256";
|
|
1716
|
+
}];
|
|
1717
|
+
readonly outputs: readonly [{
|
|
1718
|
+
readonly name: "";
|
|
1719
|
+
readonly type: "address";
|
|
1720
|
+
}];
|
|
1721
|
+
readonly stateMutability: "view";
|
|
1722
|
+
}, {
|
|
1723
|
+
readonly type: "function";
|
|
1724
|
+
readonly name: "balanceOf";
|
|
1725
|
+
readonly inputs: readonly [{
|
|
1726
|
+
readonly name: "owner";
|
|
1727
|
+
readonly type: "address";
|
|
1728
|
+
}];
|
|
1729
|
+
readonly outputs: readonly [{
|
|
1730
|
+
readonly name: "";
|
|
1731
|
+
readonly type: "uint256";
|
|
1732
|
+
}];
|
|
1733
|
+
readonly stateMutability: "view";
|
|
1734
|
+
}, {
|
|
1735
|
+
readonly type: "function";
|
|
1736
|
+
readonly name: "tokenURI";
|
|
1737
|
+
readonly inputs: readonly [{
|
|
1738
|
+
readonly name: "tokenId";
|
|
1739
|
+
readonly type: "uint256";
|
|
1740
|
+
}];
|
|
1741
|
+
readonly outputs: readonly [{
|
|
1742
|
+
readonly name: "";
|
|
1743
|
+
readonly type: "string";
|
|
1744
|
+
}];
|
|
1745
|
+
readonly stateMutability: "view";
|
|
1746
|
+
}, {
|
|
1747
|
+
readonly type: "event";
|
|
1748
|
+
readonly name: "Registered";
|
|
1749
|
+
readonly inputs: readonly [{
|
|
1750
|
+
readonly name: "agentId";
|
|
1751
|
+
readonly type: "uint256";
|
|
1752
|
+
readonly indexed: true;
|
|
1753
|
+
}, {
|
|
1754
|
+
readonly name: "agentURI";
|
|
1755
|
+
readonly type: "string";
|
|
1756
|
+
readonly indexed: false;
|
|
1757
|
+
}, {
|
|
1758
|
+
readonly name: "owner";
|
|
1759
|
+
readonly type: "address";
|
|
1760
|
+
readonly indexed: true;
|
|
1761
|
+
}];
|
|
1762
|
+
readonly anonymous: false;
|
|
1763
|
+
}, {
|
|
1764
|
+
readonly type: "event";
|
|
1765
|
+
readonly name: "Transfer";
|
|
1766
|
+
readonly inputs: readonly [{
|
|
1767
|
+
readonly name: "from";
|
|
1768
|
+
readonly type: "address";
|
|
1769
|
+
readonly indexed: true;
|
|
1770
|
+
}, {
|
|
1771
|
+
readonly name: "to";
|
|
1772
|
+
readonly type: "address";
|
|
1773
|
+
readonly indexed: true;
|
|
1774
|
+
}, {
|
|
1775
|
+
readonly name: "tokenId";
|
|
1776
|
+
readonly type: "uint256";
|
|
1777
|
+
readonly indexed: true;
|
|
1778
|
+
}];
|
|
1779
|
+
readonly anonymous: false;
|
|
1780
|
+
}];
|
|
1781
|
+
/** The two reads a reputation summary needs. `getSummary` refuses an empty client list. */
|
|
1782
|
+
declare const reputationRegistryAbi: readonly [{
|
|
1783
|
+
readonly type: "function";
|
|
1784
|
+
readonly name: "getClients";
|
|
1785
|
+
readonly inputs: readonly [{
|
|
1786
|
+
readonly name: "agentId";
|
|
1787
|
+
readonly type: "uint256";
|
|
1788
|
+
}];
|
|
1789
|
+
readonly outputs: readonly [{
|
|
1790
|
+
readonly name: "";
|
|
1791
|
+
readonly type: "address[]";
|
|
1792
|
+
}];
|
|
1793
|
+
readonly stateMutability: "view";
|
|
1794
|
+
}, {
|
|
1795
|
+
readonly type: "function";
|
|
1796
|
+
readonly name: "getSummary";
|
|
1797
|
+
readonly inputs: readonly [{
|
|
1798
|
+
readonly name: "agentId";
|
|
1799
|
+
readonly type: "uint256";
|
|
1800
|
+
}, {
|
|
1801
|
+
readonly name: "clientAddresses";
|
|
1802
|
+
readonly type: "address[]";
|
|
1803
|
+
}, {
|
|
1804
|
+
readonly name: "tag1";
|
|
1805
|
+
readonly type: "string";
|
|
1806
|
+
}, {
|
|
1807
|
+
readonly name: "tag2";
|
|
1808
|
+
readonly type: "string";
|
|
1809
|
+
}];
|
|
1810
|
+
readonly outputs: readonly [{
|
|
1811
|
+
readonly name: "count";
|
|
1812
|
+
readonly type: "uint64";
|
|
1813
|
+
}, {
|
|
1814
|
+
readonly name: "summaryValue";
|
|
1815
|
+
readonly type: "int128";
|
|
1816
|
+
}, {
|
|
1817
|
+
readonly name: "summaryValueDecimals";
|
|
1818
|
+
readonly type: "uint8";
|
|
1819
|
+
}];
|
|
1820
|
+
readonly stateMutability: "view";
|
|
1821
|
+
}];
|
|
1822
|
+
|
|
1823
|
+
export { type AgentInfo, type AgentRecord, COVENANT_STAGES, COVENANT_TYPES, type Covenant, type CovenantFilter, type CovenantStage, type CovenantStatus, type CovenantType, DSTACK_KEY_PATH, DSTACK_SOCKET, type DstackOptions, Kudo, KudoError, type KudoErrorCode, type KudoNetwork, type KudoOptions, type MeetAskInput, type MintCovenantInput, type NetworkKey, type OpenAskFilter, REVERTS, type RegisterAgentInput, type TxRequest, createKudo, dstackAppId, dstackPrivateKey, identityRegistryAbi, kudoAbi, networks, reputationRegistryAbi, resolveNetwork, robinhood, toKudoError };
|