zkcloudworker 0.18.9 → 0.18.10
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/dist/ts/mina/token/FungibleTokenAdmin.d.ts +1 -6
- package/dist/ts/mina/token/FungibleTokenAdmin.js.map +1 -1
- package/dist/ts/mina/token/FungibleTokenContract.d.ts +520 -0
- package/dist/ts/mina/token/FungibleTokenContract.js +290 -0
- package/dist/ts/mina/token/FungibleTokenContract.js.map +1 -0
- package/dist/ts/mina/token/FungibleTokenWhitelistedAdmin.d.ts +33 -0
- package/dist/ts/mina/token/FungibleTokenWhitelistedAdmin.js +119 -0
- package/dist/ts/mina/token/FungibleTokenWhitelistedAdmin.js.map +1 -0
- package/dist/ts/mina/token/api.d.ts +1 -1
- package/dist/ts/mina/token/bid.d.ts +24 -0
- package/dist/ts/mina/token/bid.js +167 -0
- package/dist/ts/mina/token/bid.js.map +1 -0
- package/dist/ts/mina/token/build.d.ts +64 -0
- package/dist/ts/mina/token/build.js +437 -0
- package/dist/ts/mina/token/build.js.map +1 -0
- package/dist/ts/mina/token/fee.d.ts +2 -0
- package/dist/ts/mina/token/fee.js +3 -0
- package/dist/ts/mina/token/fee.js.map +1 -0
- package/dist/ts/mina/token/index.d.ts +5 -2
- package/dist/ts/mina/token/index.js +5 -2
- package/dist/ts/mina/token/index.js.map +1 -1
- package/dist/ts/mina/token/offer.d.ts +25 -0
- package/dist/ts/mina/token/offer.js +175 -0
- package/dist/ts/mina/token/offer.js.map +1 -0
- package/dist/ts/mina/token/token.d.ts +426 -0
- package/dist/ts/mina/token/token.js +87 -0
- package/dist/ts/mina/token/token.js.map +1 -0
- package/dist/tsconfig.web.tsbuildinfo +1 -1
- package/dist/web/mina/token/FungibleTokenAdmin.d.ts +1 -6
- package/dist/web/mina/token/FungibleTokenAdmin.js.map +1 -1
- package/dist/web/mina/token/FungibleTokenContract.d.ts +520 -0
- package/dist/web/mina/token/FungibleTokenContract.js +290 -0
- package/dist/web/mina/token/FungibleTokenContract.js.map +1 -0
- package/dist/web/mina/token/FungibleTokenWhitelistedAdmin.d.ts +33 -0
- package/dist/web/mina/token/FungibleTokenWhitelistedAdmin.js +119 -0
- package/dist/web/mina/token/FungibleTokenWhitelistedAdmin.js.map +1 -0
- package/dist/web/mina/token/api.d.ts +1 -1
- package/dist/web/mina/token/bid.d.ts +24 -0
- package/dist/web/mina/token/bid.js +167 -0
- package/dist/web/mina/token/bid.js.map +1 -0
- package/dist/web/mina/token/build.d.ts +64 -0
- package/dist/web/mina/token/build.js +437 -0
- package/dist/web/mina/token/build.js.map +1 -0
- package/dist/web/mina/token/fee.d.ts +2 -0
- package/dist/web/mina/token/fee.js +3 -0
- package/dist/web/mina/token/fee.js.map +1 -0
- package/dist/web/mina/token/index.d.ts +5 -2
- package/dist/web/mina/token/index.js +5 -2
- package/dist/web/mina/token/index.js.map +1 -1
- package/dist/web/mina/token/offer.d.ts +25 -0
- package/dist/web/mina/token/offer.js +175 -0
- package/dist/web/mina/token/offer.js.map +1 -0
- package/dist/web/mina/token/token.d.ts +426 -0
- package/dist/web/mina/token/token.js +87 -0
- package/dist/web/mina/token/token.js.map +1 -0
- package/package.json +1 -1
- package/src/mina/token/FungibleTokenAdmin.ts +1 -7
- package/src/mina/token/FungibleTokenContract.ts +327 -0
- package/src/mina/token/FungibleTokenWhitelistedAdmin.ts +112 -0
- package/src/mina/token/api.ts +1 -1
- package/src/mina/token/bid.ts +173 -0
- package/src/mina/token/build.ts +610 -0
- package/src/mina/token/fee.ts +2 -0
- package/src/mina/token/index.ts +5 -2
- package/src/mina/token/offer.ts +174 -0
- package/src/mina/token/token.ts +127 -0
- package/src/mina/token/FungibleToken.ts +0 -316
@@ -0,0 +1,175 @@
|
|
1
|
+
import { __decorate, __metadata } from "tslib";
|
2
|
+
import { AccountUpdate, method, Permissions, PublicKey, State, state, UInt64, SmartContract, Bool, assert, Field, Mina, } from "o1js";
|
3
|
+
import { Whitelist } from "./whitelist.js";
|
4
|
+
import { FungibleToken, tokenVerificationKeys } from "./token.js";
|
5
|
+
export class FungibleTokenOfferContract extends SmartContract {
|
6
|
+
constructor() {
|
7
|
+
super(...arguments);
|
8
|
+
this.price = State();
|
9
|
+
this.seller = State();
|
10
|
+
this.token = State();
|
11
|
+
this.whitelist = State();
|
12
|
+
this.events = {
|
13
|
+
offer: UInt64,
|
14
|
+
withdraw: UInt64,
|
15
|
+
buy: UInt64,
|
16
|
+
updateWhitelist: Whitelist,
|
17
|
+
};
|
18
|
+
}
|
19
|
+
async deploy(args) {
|
20
|
+
await super.deploy(args);
|
21
|
+
const verificationKey = args?.verificationKey ?? FungibleTokenOfferContract._verificationKey;
|
22
|
+
assert(verificationKey !== undefined);
|
23
|
+
const hash = typeof verificationKey.hash === "string"
|
24
|
+
? verificationKey.hash
|
25
|
+
: verificationKey.hash.toJSON();
|
26
|
+
const networkId = Mina.getNetworkId();
|
27
|
+
assert(networkId === "mainnet" || networkId === "testnet");
|
28
|
+
assert(hash ===
|
29
|
+
tokenVerificationKeys[networkId].vk.FungibleTokenOfferContract.hash);
|
30
|
+
assert(verificationKey.data ===
|
31
|
+
tokenVerificationKeys[networkId].vk.FungibleTokenOfferContract.data);
|
32
|
+
this.whitelist.set(args.whitelist);
|
33
|
+
this.account.permissions.set({
|
34
|
+
...Permissions.default(),
|
35
|
+
send: Permissions.proof(),
|
36
|
+
setVerificationKey: Permissions.VerificationKey.impossibleDuringCurrentVersion(),
|
37
|
+
setPermissions: Permissions.impossible(),
|
38
|
+
});
|
39
|
+
}
|
40
|
+
async initialize(seller, // we are short of AccountUpdates here, so we use this parameter instead of this.sender.getUnconstrained()
|
41
|
+
token, amount, price) {
|
42
|
+
this.account.provedState.requireEquals(Bool(false));
|
43
|
+
const tokenContract = new FungibleToken(token);
|
44
|
+
const tokenId = tokenContract.deriveTokenId();
|
45
|
+
tokenId.assertEquals(this.tokenId);
|
46
|
+
await tokenContract.transfer(seller, this.address, amount);
|
47
|
+
this.seller.set(seller);
|
48
|
+
this.price.set(price);
|
49
|
+
this.token.set(token);
|
50
|
+
this.emitEvent("offer", amount);
|
51
|
+
}
|
52
|
+
async offer(amount, price) {
|
53
|
+
const seller = this.seller.getAndRequireEquals();
|
54
|
+
const token = this.token.getAndRequireEquals();
|
55
|
+
const tokenContract = new FungibleToken(token);
|
56
|
+
const tokenId = tokenContract.deriveTokenId();
|
57
|
+
tokenId.assertEquals(this.tokenId);
|
58
|
+
const balance = this.account.balance.getAndRequireEquals();
|
59
|
+
const oldPrice = this.price.getAndRequireEquals();
|
60
|
+
// Price can be changed only when the balance is 0
|
61
|
+
price
|
62
|
+
.equals(oldPrice)
|
63
|
+
.or(balance.equals(UInt64.from(0)))
|
64
|
+
.assertTrue();
|
65
|
+
this.price.set(price);
|
66
|
+
const sender = this.sender.getUnconstrained();
|
67
|
+
const senderUpdate = AccountUpdate.createSigned(sender);
|
68
|
+
senderUpdate.body.useFullCommitment = Bool(true);
|
69
|
+
sender.assertEquals(seller);
|
70
|
+
await tokenContract.transfer(sender, this.address, amount);
|
71
|
+
this.emitEvent("offer", amount);
|
72
|
+
}
|
73
|
+
async withdraw(amount) {
|
74
|
+
amount.equals(UInt64.from(0)).assertFalse();
|
75
|
+
this.account.balance.requireBetween(amount, UInt64.MAXINT());
|
76
|
+
const seller = this.seller.getAndRequireEquals();
|
77
|
+
const token = this.token.getAndRequireEquals();
|
78
|
+
const tokenContract = new FungibleToken(token);
|
79
|
+
const tokenId = tokenContract.deriveTokenId();
|
80
|
+
tokenId.assertEquals(this.tokenId);
|
81
|
+
const sender = this.sender.getUnconstrained();
|
82
|
+
const senderUpdate = AccountUpdate.createSigned(sender, tokenId);
|
83
|
+
senderUpdate.body.useFullCommitment = Bool(true);
|
84
|
+
sender.assertEquals(seller);
|
85
|
+
let offerUpdate = this.send({ to: senderUpdate, amount });
|
86
|
+
offerUpdate.body.mayUseToken = AccountUpdate.MayUseToken.InheritFromParent;
|
87
|
+
offerUpdate.body.useFullCommitment = Bool(true);
|
88
|
+
this.emitEvent("withdraw", amount);
|
89
|
+
}
|
90
|
+
async buy(amount) {
|
91
|
+
amount.equals(UInt64.from(0)).assertFalse();
|
92
|
+
this.account.balance.requireBetween(amount, UInt64.MAXINT());
|
93
|
+
const seller = this.seller.getAndRequireEquals();
|
94
|
+
const token = this.token.getAndRequireEquals();
|
95
|
+
const tokenContract = new FungibleToken(token);
|
96
|
+
const tokenId = tokenContract.deriveTokenId();
|
97
|
+
tokenId.assertEquals(this.tokenId);
|
98
|
+
const price = this.price.getAndRequireEquals();
|
99
|
+
const totalPriceField = price.value
|
100
|
+
.mul(amount.value)
|
101
|
+
.div(Field(1_000_000_000));
|
102
|
+
totalPriceField.assertLessThan(UInt64.MAXINT().value, "totalPrice overflow");
|
103
|
+
const totalPrice = UInt64.Unsafe.fromField(totalPriceField);
|
104
|
+
const buyer = this.sender.getUnconstrained();
|
105
|
+
const buyerUpdate = AccountUpdate.createSigned(buyer);
|
106
|
+
buyerUpdate.send({ to: seller, amount: totalPrice });
|
107
|
+
buyerUpdate.body.useFullCommitment = Bool(true);
|
108
|
+
let offerUpdate = this.send({ to: buyer, amount });
|
109
|
+
offerUpdate.body.mayUseToken = AccountUpdate.MayUseToken.InheritFromParent;
|
110
|
+
offerUpdate.body.useFullCommitment = Bool(true);
|
111
|
+
const whitelist = this.whitelist.getAndRequireEquals();
|
112
|
+
const whitelistedAmount = await whitelist.getWhitelistedAmount(buyer);
|
113
|
+
amount.assertLessThanOrEqual(whitelistedAmount.assertSome());
|
114
|
+
this.emitEvent("buy", amount);
|
115
|
+
}
|
116
|
+
async updateWhitelist(whitelist) {
|
117
|
+
const seller = this.seller.getAndRequireEquals();
|
118
|
+
const sender = this.sender.getUnconstrained();
|
119
|
+
const senderUpdate = AccountUpdate.createSigned(sender);
|
120
|
+
senderUpdate.body.useFullCommitment = Bool(true);
|
121
|
+
sender.assertEquals(seller);
|
122
|
+
this.whitelist.set(whitelist);
|
123
|
+
this.emitEvent("updateWhitelist", whitelist);
|
124
|
+
}
|
125
|
+
}
|
126
|
+
__decorate([
|
127
|
+
state(UInt64),
|
128
|
+
__metadata("design:type", Object)
|
129
|
+
], FungibleTokenOfferContract.prototype, "price", void 0);
|
130
|
+
__decorate([
|
131
|
+
state(PublicKey),
|
132
|
+
__metadata("design:type", Object)
|
133
|
+
], FungibleTokenOfferContract.prototype, "seller", void 0);
|
134
|
+
__decorate([
|
135
|
+
state(PublicKey),
|
136
|
+
__metadata("design:type", Object)
|
137
|
+
], FungibleTokenOfferContract.prototype, "token", void 0);
|
138
|
+
__decorate([
|
139
|
+
state(Whitelist),
|
140
|
+
__metadata("design:type", Object)
|
141
|
+
], FungibleTokenOfferContract.prototype, "whitelist", void 0);
|
142
|
+
__decorate([
|
143
|
+
method,
|
144
|
+
__metadata("design:type", Function),
|
145
|
+
__metadata("design:paramtypes", [PublicKey,
|
146
|
+
PublicKey,
|
147
|
+
UInt64,
|
148
|
+
UInt64]),
|
149
|
+
__metadata("design:returntype", Promise)
|
150
|
+
], FungibleTokenOfferContract.prototype, "initialize", null);
|
151
|
+
__decorate([
|
152
|
+
method,
|
153
|
+
__metadata("design:type", Function),
|
154
|
+
__metadata("design:paramtypes", [UInt64, UInt64]),
|
155
|
+
__metadata("design:returntype", Promise)
|
156
|
+
], FungibleTokenOfferContract.prototype, "offer", null);
|
157
|
+
__decorate([
|
158
|
+
method,
|
159
|
+
__metadata("design:type", Function),
|
160
|
+
__metadata("design:paramtypes", [UInt64]),
|
161
|
+
__metadata("design:returntype", Promise)
|
162
|
+
], FungibleTokenOfferContract.prototype, "withdraw", null);
|
163
|
+
__decorate([
|
164
|
+
method,
|
165
|
+
__metadata("design:type", Function),
|
166
|
+
__metadata("design:paramtypes", [UInt64]),
|
167
|
+
__metadata("design:returntype", Promise)
|
168
|
+
], FungibleTokenOfferContract.prototype, "buy", null);
|
169
|
+
__decorate([
|
170
|
+
method,
|
171
|
+
__metadata("design:type", Function),
|
172
|
+
__metadata("design:paramtypes", [Whitelist]),
|
173
|
+
__metadata("design:returntype", Promise)
|
174
|
+
], FungibleTokenOfferContract.prototype, "updateWhitelist", null);
|
175
|
+
//# sourceMappingURL=offer.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"offer.js","sourceRoot":"","sources":["../../../../src/mina/token/offer.ts"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,426 @@
|
|
1
|
+
import { FungibleTokenAdminBase } from "./FungibleTokenContract.js";
|
2
|
+
import { FungibleTokenAdmin, FungibleTokenAdminDeployProps } from "./FungibleTokenAdmin.js";
|
3
|
+
import { FungibleTokenWhitelistedAdmin, FungibleTokenWhitelistedAdminDeployProps } from "./FungibleTokenWhitelistedAdmin.js";
|
4
|
+
import { FungibleTokenBidContract, FungibleTokenBidContractDeployProps } from "./bid.js";
|
5
|
+
import { FungibleTokenOfferContract, FungibleTokenOfferContractDeployProps } from "./offer.js";
|
6
|
+
export { FungibleToken, WhitelistedFungibleToken, FungibleTokenAdmin, FungibleTokenWhitelistedAdmin, FungibleTokenAdminBase, FungibleTokenBidContract, FungibleTokenOfferContract, FungibleTokenBidContractDeployProps, FungibleTokenOfferContractDeployProps, FungibleTokenAdminDeployProps, FungibleTokenWhitelistedAdminDeployProps, tokenVerificationKeys, };
|
7
|
+
declare const FungibleToken: {
|
8
|
+
new (address: import("o1js").PublicKey, tokenId?: import("o1js").Field): {
|
9
|
+
decimals: import("o1js").State<import("o1js").UInt8>;
|
10
|
+
admin: import("o1js").State<import("o1js").PublicKey>;
|
11
|
+
paused: import("o1js").State<import("node_modules/o1js/dist/node/lib/provable/bool.js").Bool>;
|
12
|
+
readonly events: {
|
13
|
+
SetAdmin: typeof import("./FungibleTokenContract.js").SetAdminEvent;
|
14
|
+
Pause: typeof import("./FungibleTokenContract.js").PauseEvent;
|
15
|
+
Mint: typeof import("./FungibleTokenContract.js").MintEvent;
|
16
|
+
Burn: typeof import("./FungibleTokenContract.js").BurnEvent;
|
17
|
+
BalanceChange: typeof import("./FungibleTokenContract.js").BalanceChangeEvent;
|
18
|
+
};
|
19
|
+
deploy(props: import("./FungibleTokenContract.js").FungibleTokenDeployProps): Promise<void>;
|
20
|
+
updateVerificationKey(vk: import("o1js").VerificationKey): Promise<void>;
|
21
|
+
initialize(admin: import("o1js").PublicKey, decimals: import("o1js").UInt8, startPaused: import("o1js").Bool): Promise<void>;
|
22
|
+
getAdminContract(): Promise<FungibleTokenAdminBase>;
|
23
|
+
setAdmin(admin: import("o1js").PublicKey): Promise<void>;
|
24
|
+
mint(recipient: import("o1js").PublicKey, amount: import("o1js").UInt64): Promise<import("o1js").AccountUpdate>;
|
25
|
+
burn(from: import("o1js").PublicKey, amount: import("o1js").UInt64): Promise<import("o1js").AccountUpdate>;
|
26
|
+
pause(): Promise<void>;
|
27
|
+
resume(): Promise<void>;
|
28
|
+
transfer(from: import("o1js").PublicKey, to: import("o1js").PublicKey, amount: import("o1js").UInt64): Promise<void>;
|
29
|
+
checkPermissionsUpdate(update: import("o1js").AccountUpdate): void;
|
30
|
+
approveBase(updates: import("o1js").AccountUpdateForest): Promise<void>;
|
31
|
+
getBalanceOf(address: import("o1js").PublicKey): Promise<import("o1js").UInt64>;
|
32
|
+
getCirculating(): Promise<import("o1js").UInt64>;
|
33
|
+
getDecimals(): Promise<import("o1js").UInt8>;
|
34
|
+
deriveTokenId(): import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
|
35
|
+
readonly internal: {
|
36
|
+
mint({ address, amount, }: {
|
37
|
+
address: import("o1js").PublicKey | import("o1js").AccountUpdate | import("o1js").SmartContract;
|
38
|
+
amount: number | bigint | import("o1js").UInt64;
|
39
|
+
}): import("o1js").AccountUpdate;
|
40
|
+
burn({ address, amount, }: {
|
41
|
+
address: import("o1js").PublicKey | import("o1js").AccountUpdate | import("o1js").SmartContract;
|
42
|
+
amount: number | bigint | import("o1js").UInt64;
|
43
|
+
}): import("o1js").AccountUpdate;
|
44
|
+
send({ from, to, amount, }: {
|
45
|
+
from: import("o1js").PublicKey | import("o1js").AccountUpdate | import("o1js").SmartContract;
|
46
|
+
to: import("o1js").PublicKey | import("o1js").AccountUpdate | import("o1js").SmartContract;
|
47
|
+
amount: number | bigint | import("o1js").UInt64;
|
48
|
+
}): import("o1js").AccountUpdate;
|
49
|
+
};
|
50
|
+
forEachUpdate(updates: import("o1js").AccountUpdateForest, callback: (update: import("o1js").AccountUpdate, usesToken: import("o1js").Bool) => void): void;
|
51
|
+
checkZeroBalanceChange(updates: import("o1js").AccountUpdateForest): void;
|
52
|
+
approveAccountUpdate(accountUpdate: import("o1js").AccountUpdate | import("o1js").AccountUpdateTree): Promise<void>;
|
53
|
+
approveAccountUpdates(accountUpdates: (import("o1js").AccountUpdate | import("o1js").AccountUpdateTree)[]): Promise<void>;
|
54
|
+
"__#3@#private": any;
|
55
|
+
address: import("o1js").PublicKey;
|
56
|
+
tokenId: import("o1js").Field;
|
57
|
+
init(): void;
|
58
|
+
requireSignature(): void;
|
59
|
+
skipAuthorization(): void;
|
60
|
+
readonly self: import("o1js").AccountUpdate;
|
61
|
+
newSelf(methodName?: string): import("o1js").AccountUpdate;
|
62
|
+
sender: {
|
63
|
+
self: import("o1js").SmartContract;
|
64
|
+
getUnconstrained(): import("o1js").PublicKey;
|
65
|
+
getAndRequireSignature(): import("o1js").PublicKey;
|
66
|
+
};
|
67
|
+
readonly account: import("node_modules/o1js/dist/node/lib/mina/precondition.js").Account;
|
68
|
+
readonly network: import("node_modules/o1js/dist/node/lib/mina/precondition.js").Network;
|
69
|
+
readonly currentSlot: import("node_modules/o1js/dist/node/lib/mina/precondition.js").CurrentSlot;
|
70
|
+
approve(update: import("o1js").AccountUpdate | import("o1js").AccountUpdateTree | import("o1js").AccountUpdateForest): void;
|
71
|
+
send(args: {
|
72
|
+
to: import("o1js").PublicKey | import("o1js").AccountUpdate | import("o1js").SmartContract;
|
73
|
+
amount: number | bigint | import("o1js").UInt64;
|
74
|
+
}): import("o1js").AccountUpdate;
|
75
|
+
readonly balance: {
|
76
|
+
addInPlace(x: string | number | bigint | import("o1js").UInt64 | import("o1js").UInt32 | import("o1js").Int64): void;
|
77
|
+
subInPlace(x: string | number | bigint | import("o1js").UInt64 | import("o1js").UInt32 | import("o1js").Int64): void;
|
78
|
+
};
|
79
|
+
emitEventIf<K extends "SetAdmin" | "Pause" | "Mint" | "Burn" | "BalanceChange">(condition: import("o1js").Bool, type: K, event: any): void;
|
80
|
+
emitEvent<K extends "SetAdmin" | "Pause" | "Mint" | "Burn" | "BalanceChange">(type: K, event: any): void;
|
81
|
+
fetchEvents(start?: import("o1js").UInt32, end?: import("o1js").UInt32): Promise<{
|
82
|
+
type: string;
|
83
|
+
event: {
|
84
|
+
data: import("o1js").ProvablePure<any>;
|
85
|
+
transactionInfo: {
|
86
|
+
transactionHash: string;
|
87
|
+
transactionStatus: string;
|
88
|
+
transactionMemo: string;
|
89
|
+
};
|
90
|
+
};
|
91
|
+
blockHeight: import("o1js").UInt32;
|
92
|
+
blockHash: string;
|
93
|
+
parentBlockHash: string;
|
94
|
+
globalSlot: import("o1js").UInt32;
|
95
|
+
chainStatus: string;
|
96
|
+
}[]>;
|
97
|
+
};
|
98
|
+
MAX_ACCOUNT_UPDATES: number;
|
99
|
+
_methods?: import("node_modules/o1js/dist/node/lib/proof-system/zkprogram.js").MethodInterface[];
|
100
|
+
_methodMetadata?: Record<string, {
|
101
|
+
actions: number;
|
102
|
+
rows: number;
|
103
|
+
digest: string;
|
104
|
+
gates: import("node_modules/o1js/dist/node/snarky.js").Gate[];
|
105
|
+
}>;
|
106
|
+
_provers?: import("node_modules/o1js/dist/node/snarky.js").Pickles.Prover[];
|
107
|
+
_maxProofsVerified?: 0 | 1 | 2;
|
108
|
+
_verificationKey?: {
|
109
|
+
data: string;
|
110
|
+
hash: import("o1js").Field;
|
111
|
+
};
|
112
|
+
Proof(): {
|
113
|
+
new ({ proof, publicInput, publicOutput, maxProofsVerified, }: {
|
114
|
+
proof: unknown;
|
115
|
+
publicInput: import("o1js").ZkappPublicInput;
|
116
|
+
publicOutput: undefined;
|
117
|
+
maxProofsVerified: 0 | 2 | 1;
|
118
|
+
}): {
|
119
|
+
verify(): void;
|
120
|
+
verifyIf(condition: import("node_modules/o1js/dist/node/lib/provable/bool.js").Bool): void;
|
121
|
+
publicInput: import("o1js").ZkappPublicInput;
|
122
|
+
publicOutput: undefined;
|
123
|
+
proof: unknown;
|
124
|
+
maxProofsVerified: 0 | 2 | 1;
|
125
|
+
shouldVerify: import("node_modules/o1js/dist/node/lib/provable/bool.js").Bool;
|
126
|
+
toJSON(): import("o1js").JsonProof;
|
127
|
+
publicFields(): {
|
128
|
+
input: import("node_modules/o1js/dist/node/lib/provable/field.js").Field[];
|
129
|
+
output: import("node_modules/o1js/dist/node/lib/provable/field.js").Field[];
|
130
|
+
};
|
131
|
+
};
|
132
|
+
publicInputType: Omit<import("node_modules/o1js/dist/node/lib/provable/types/provable-intf.js").Provable<{
|
133
|
+
accountUpdate: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
|
134
|
+
calls: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
|
135
|
+
}, {
|
136
|
+
accountUpdate: bigint;
|
137
|
+
calls: bigint;
|
138
|
+
}>, "fromFields"> & {
|
139
|
+
fromFields: (fields: import("node_modules/o1js/dist/node/lib/provable/field.js").Field[]) => {
|
140
|
+
accountUpdate: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
|
141
|
+
calls: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
|
142
|
+
};
|
143
|
+
} & {
|
144
|
+
toInput: (x: {
|
145
|
+
accountUpdate: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
|
146
|
+
calls: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
|
147
|
+
}) => {
|
148
|
+
fields?: import("node_modules/o1js/dist/node/lib/provable/field.js").Field[] | undefined;
|
149
|
+
packed?: [import("node_modules/o1js/dist/node/lib/provable/field.js").Field, number][] | undefined;
|
150
|
+
};
|
151
|
+
toJSON: (x: {
|
152
|
+
accountUpdate: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
|
153
|
+
calls: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
|
154
|
+
}) => {
|
155
|
+
accountUpdate: string;
|
156
|
+
calls: string;
|
157
|
+
};
|
158
|
+
fromJSON: (x: {
|
159
|
+
accountUpdate: string;
|
160
|
+
calls: string;
|
161
|
+
}) => {
|
162
|
+
accountUpdate: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
|
163
|
+
calls: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
|
164
|
+
};
|
165
|
+
empty: () => {
|
166
|
+
accountUpdate: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
|
167
|
+
calls: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
|
168
|
+
};
|
169
|
+
};
|
170
|
+
publicOutputType: import("node_modules/o1js/dist/node/lib/provable/types/struct.js").ProvablePureExtended<undefined, undefined, null>;
|
171
|
+
tag: () => typeof import("o1js").SmartContract;
|
172
|
+
fromJSON<S extends import("node_modules/o1js/dist/node/lib/util/types.js").Subclass<typeof import("o1js").Proof>>(this: S, { maxProofsVerified, proof: proofString, publicInput: publicInputJson, publicOutput: publicOutputJson, }: import("o1js").JsonProof): Promise<import("o1js").Proof<import("o1js").InferProvable<S["publicInputType"]>, import("o1js").InferProvable<S["publicOutputType"]>>>;
|
173
|
+
dummy<Input, OutPut>(publicInput: Input, publicOutput: OutPut, maxProofsVerified: 0 | 2 | 1, domainLog2?: number): Promise<import("o1js").Proof<Input, OutPut>>;
|
174
|
+
readonly provable: {
|
175
|
+
toFields: (value: import("o1js").Proof<any, any>) => import("node_modules/o1js/dist/node/lib/provable/field.js").Field[];
|
176
|
+
toAuxiliary: (value?: import("o1js").Proof<any, any> | undefined) => any[];
|
177
|
+
fromFields: (fields: import("node_modules/o1js/dist/node/lib/provable/field.js").Field[], aux: any[]) => import("o1js").Proof<any, any>;
|
178
|
+
sizeInFields(): number;
|
179
|
+
check: (value: import("o1js").Proof<any, any>) => void;
|
180
|
+
toValue: (x: import("o1js").Proof<any, any>) => import("node_modules/o1js/dist/node/lib/proof-system/proof.js").ProofValue<any, any>;
|
181
|
+
fromValue: (x: import("o1js").Proof<any, any> | import("node_modules/o1js/dist/node/lib/proof-system/proof.js").ProofValue<any, any>) => import("o1js").Proof<any, any>;
|
182
|
+
toCanonical?: ((x: import("o1js").Proof<any, any>) => import("o1js").Proof<any, any>) | undefined;
|
183
|
+
};
|
184
|
+
publicFields(value: import("o1js").ProofBase<any, any>): {
|
185
|
+
input: import("node_modules/o1js/dist/node/lib/provable/field.js").Field[];
|
186
|
+
output: import("node_modules/o1js/dist/node/lib/provable/field.js").Field[];
|
187
|
+
};
|
188
|
+
};
|
189
|
+
compile({ cache, forceRecompile, }?: {
|
190
|
+
cache?: import("o1js").Cache | undefined;
|
191
|
+
forceRecompile?: boolean | undefined;
|
192
|
+
}): Promise<{
|
193
|
+
verificationKey: {
|
194
|
+
data: string;
|
195
|
+
hash: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
|
196
|
+
};
|
197
|
+
provers: import("node_modules/o1js/dist/node/snarky.js").Pickles.Prover[];
|
198
|
+
verify: (statement: import("node_modules/o1js/dist/node/snarky.js").Pickles.Statement<import("node_modules/o1js/dist/node/lib/provable/core/fieldvar.js").FieldConst>, proof: unknown) => Promise<boolean>;
|
199
|
+
}>;
|
200
|
+
digest(): Promise<string>;
|
201
|
+
runOutsideCircuit(run: () => void): void;
|
202
|
+
analyzeMethods({ printSummary }?: {
|
203
|
+
printSummary?: boolean | undefined;
|
204
|
+
}): Promise<Record<string, {
|
205
|
+
actions: number;
|
206
|
+
rows: number;
|
207
|
+
digest: string;
|
208
|
+
gates: import("node_modules/o1js/dist/node/snarky.js").Gate[];
|
209
|
+
}>>;
|
210
|
+
};
|
211
|
+
declare const WhitelistedFungibleToken: {
|
212
|
+
new (address: import("o1js").PublicKey, tokenId?: import("o1js").Field): {
|
213
|
+
decimals: import("o1js").State<import("o1js").UInt8>;
|
214
|
+
admin: import("o1js").State<import("o1js").PublicKey>;
|
215
|
+
paused: import("o1js").State<import("node_modules/o1js/dist/node/lib/provable/bool.js").Bool>;
|
216
|
+
readonly events: {
|
217
|
+
SetAdmin: typeof import("./FungibleTokenContract.js").SetAdminEvent;
|
218
|
+
Pause: typeof import("./FungibleTokenContract.js").PauseEvent;
|
219
|
+
Mint: typeof import("./FungibleTokenContract.js").MintEvent;
|
220
|
+
Burn: typeof import("./FungibleTokenContract.js").BurnEvent;
|
221
|
+
BalanceChange: typeof import("./FungibleTokenContract.js").BalanceChangeEvent;
|
222
|
+
};
|
223
|
+
deploy(props: import("./FungibleTokenContract.js").FungibleTokenDeployProps): Promise<void>;
|
224
|
+
updateVerificationKey(vk: import("o1js").VerificationKey): Promise<void>;
|
225
|
+
initialize(admin: import("o1js").PublicKey, decimals: import("o1js").UInt8, startPaused: import("o1js").Bool): Promise<void>;
|
226
|
+
getAdminContract(): Promise<FungibleTokenAdminBase>;
|
227
|
+
setAdmin(admin: import("o1js").PublicKey): Promise<void>;
|
228
|
+
mint(recipient: import("o1js").PublicKey, amount: import("o1js").UInt64): Promise<import("o1js").AccountUpdate>;
|
229
|
+
burn(from: import("o1js").PublicKey, amount: import("o1js").UInt64): Promise<import("o1js").AccountUpdate>;
|
230
|
+
pause(): Promise<void>;
|
231
|
+
resume(): Promise<void>;
|
232
|
+
transfer(from: import("o1js").PublicKey, to: import("o1js").PublicKey, amount: import("o1js").UInt64): Promise<void>;
|
233
|
+
checkPermissionsUpdate(update: import("o1js").AccountUpdate): void;
|
234
|
+
approveBase(updates: import("o1js").AccountUpdateForest): Promise<void>;
|
235
|
+
getBalanceOf(address: import("o1js").PublicKey): Promise<import("o1js").UInt64>;
|
236
|
+
getCirculating(): Promise<import("o1js").UInt64>;
|
237
|
+
getDecimals(): Promise<import("o1js").UInt8>;
|
238
|
+
deriveTokenId(): import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
|
239
|
+
readonly internal: {
|
240
|
+
mint({ address, amount, }: {
|
241
|
+
address: import("o1js").PublicKey | import("o1js").AccountUpdate | import("o1js").SmartContract;
|
242
|
+
amount: number | bigint | import("o1js").UInt64;
|
243
|
+
}): import("o1js").AccountUpdate;
|
244
|
+
burn({ address, amount, }: {
|
245
|
+
address: import("o1js").PublicKey | import("o1js").AccountUpdate | import("o1js").SmartContract;
|
246
|
+
amount: number | bigint | import("o1js").UInt64;
|
247
|
+
}): import("o1js").AccountUpdate;
|
248
|
+
send({ from, to, amount, }: {
|
249
|
+
from: import("o1js").PublicKey | import("o1js").AccountUpdate | import("o1js").SmartContract;
|
250
|
+
to: import("o1js").PublicKey | import("o1js").AccountUpdate | import("o1js").SmartContract;
|
251
|
+
amount: number | bigint | import("o1js").UInt64;
|
252
|
+
}): import("o1js").AccountUpdate;
|
253
|
+
};
|
254
|
+
forEachUpdate(updates: import("o1js").AccountUpdateForest, callback: (update: import("o1js").AccountUpdate, usesToken: import("o1js").Bool) => void): void;
|
255
|
+
checkZeroBalanceChange(updates: import("o1js").AccountUpdateForest): void;
|
256
|
+
approveAccountUpdate(accountUpdate: import("o1js").AccountUpdate | import("o1js").AccountUpdateTree): Promise<void>;
|
257
|
+
approveAccountUpdates(accountUpdates: (import("o1js").AccountUpdate | import("o1js").AccountUpdateTree)[]): Promise<void>;
|
258
|
+
"__#3@#private": any;
|
259
|
+
address: import("o1js").PublicKey;
|
260
|
+
tokenId: import("o1js").Field;
|
261
|
+
init(): void;
|
262
|
+
requireSignature(): void;
|
263
|
+
skipAuthorization(): void;
|
264
|
+
readonly self: import("o1js").AccountUpdate;
|
265
|
+
newSelf(methodName?: string): import("o1js").AccountUpdate;
|
266
|
+
sender: {
|
267
|
+
self: import("o1js").SmartContract;
|
268
|
+
getUnconstrained(): import("o1js").PublicKey;
|
269
|
+
getAndRequireSignature(): import("o1js").PublicKey;
|
270
|
+
};
|
271
|
+
readonly account: import("node_modules/o1js/dist/node/lib/mina/precondition.js").Account;
|
272
|
+
readonly network: import("node_modules/o1js/dist/node/lib/mina/precondition.js").Network;
|
273
|
+
readonly currentSlot: import("node_modules/o1js/dist/node/lib/mina/precondition.js").CurrentSlot;
|
274
|
+
approve(update: import("o1js").AccountUpdate | import("o1js").AccountUpdateTree | import("o1js").AccountUpdateForest): void;
|
275
|
+
send(args: {
|
276
|
+
to: import("o1js").PublicKey | import("o1js").AccountUpdate | import("o1js").SmartContract;
|
277
|
+
amount: number | bigint | import("o1js").UInt64;
|
278
|
+
}): import("o1js").AccountUpdate;
|
279
|
+
readonly balance: {
|
280
|
+
addInPlace(x: string | number | bigint | import("o1js").UInt64 | import("o1js").UInt32 | import("o1js").Int64): void;
|
281
|
+
subInPlace(x: string | number | bigint | import("o1js").UInt64 | import("o1js").UInt32 | import("o1js").Int64): void;
|
282
|
+
};
|
283
|
+
emitEventIf<K extends "SetAdmin" | "Pause" | "Mint" | "Burn" | "BalanceChange">(condition: import("o1js").Bool, type: K, event: any): void;
|
284
|
+
emitEvent<K extends "SetAdmin" | "Pause" | "Mint" | "Burn" | "BalanceChange">(type: K, event: any): void;
|
285
|
+
fetchEvents(start?: import("o1js").UInt32, end?: import("o1js").UInt32): Promise<{
|
286
|
+
type: string;
|
287
|
+
event: {
|
288
|
+
data: import("o1js").ProvablePure<any>;
|
289
|
+
transactionInfo: {
|
290
|
+
transactionHash: string;
|
291
|
+
transactionStatus: string;
|
292
|
+
transactionMemo: string;
|
293
|
+
};
|
294
|
+
};
|
295
|
+
blockHeight: import("o1js").UInt32;
|
296
|
+
blockHash: string;
|
297
|
+
parentBlockHash: string;
|
298
|
+
globalSlot: import("o1js").UInt32;
|
299
|
+
chainStatus: string;
|
300
|
+
}[]>;
|
301
|
+
};
|
302
|
+
MAX_ACCOUNT_UPDATES: number;
|
303
|
+
_methods?: import("node_modules/o1js/dist/node/lib/proof-system/zkprogram.js").MethodInterface[];
|
304
|
+
_methodMetadata?: Record<string, {
|
305
|
+
actions: number;
|
306
|
+
rows: number;
|
307
|
+
digest: string;
|
308
|
+
gates: import("node_modules/o1js/dist/node/snarky.js").Gate[];
|
309
|
+
}>;
|
310
|
+
_provers?: import("node_modules/o1js/dist/node/snarky.js").Pickles.Prover[];
|
311
|
+
_maxProofsVerified?: 0 | 1 | 2;
|
312
|
+
_verificationKey?: {
|
313
|
+
data: string;
|
314
|
+
hash: import("o1js").Field;
|
315
|
+
};
|
316
|
+
Proof(): {
|
317
|
+
new ({ proof, publicInput, publicOutput, maxProofsVerified, }: {
|
318
|
+
proof: unknown;
|
319
|
+
publicInput: import("o1js").ZkappPublicInput;
|
320
|
+
publicOutput: undefined;
|
321
|
+
maxProofsVerified: 0 | 2 | 1;
|
322
|
+
}): {
|
323
|
+
verify(): void;
|
324
|
+
verifyIf(condition: import("node_modules/o1js/dist/node/lib/provable/bool.js").Bool): void;
|
325
|
+
publicInput: import("o1js").ZkappPublicInput;
|
326
|
+
publicOutput: undefined;
|
327
|
+
proof: unknown;
|
328
|
+
maxProofsVerified: 0 | 2 | 1;
|
329
|
+
shouldVerify: import("node_modules/o1js/dist/node/lib/provable/bool.js").Bool;
|
330
|
+
toJSON(): import("o1js").JsonProof;
|
331
|
+
publicFields(): {
|
332
|
+
input: import("node_modules/o1js/dist/node/lib/provable/field.js").Field[];
|
333
|
+
output: import("node_modules/o1js/dist/node/lib/provable/field.js").Field[];
|
334
|
+
};
|
335
|
+
};
|
336
|
+
publicInputType: Omit<import("node_modules/o1js/dist/node/lib/provable/types/provable-intf.js").Provable<{
|
337
|
+
accountUpdate: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
|
338
|
+
calls: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
|
339
|
+
}, {
|
340
|
+
accountUpdate: bigint;
|
341
|
+
calls: bigint;
|
342
|
+
}>, "fromFields"> & {
|
343
|
+
fromFields: (fields: import("node_modules/o1js/dist/node/lib/provable/field.js").Field[]) => {
|
344
|
+
accountUpdate: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
|
345
|
+
calls: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
|
346
|
+
};
|
347
|
+
} & {
|
348
|
+
toInput: (x: {
|
349
|
+
accountUpdate: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
|
350
|
+
calls: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
|
351
|
+
}) => {
|
352
|
+
fields?: import("node_modules/o1js/dist/node/lib/provable/field.js").Field[] | undefined;
|
353
|
+
packed?: [import("node_modules/o1js/dist/node/lib/provable/field.js").Field, number][] | undefined;
|
354
|
+
};
|
355
|
+
toJSON: (x: {
|
356
|
+
accountUpdate: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
|
357
|
+
calls: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
|
358
|
+
}) => {
|
359
|
+
accountUpdate: string;
|
360
|
+
calls: string;
|
361
|
+
};
|
362
|
+
fromJSON: (x: {
|
363
|
+
accountUpdate: string;
|
364
|
+
calls: string;
|
365
|
+
}) => {
|
366
|
+
accountUpdate: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
|
367
|
+
calls: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
|
368
|
+
};
|
369
|
+
empty: () => {
|
370
|
+
accountUpdate: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
|
371
|
+
calls: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
|
372
|
+
};
|
373
|
+
};
|
374
|
+
publicOutputType: import("node_modules/o1js/dist/node/lib/provable/types/struct.js").ProvablePureExtended<undefined, undefined, null>;
|
375
|
+
tag: () => typeof import("o1js").SmartContract;
|
376
|
+
fromJSON<S extends import("node_modules/o1js/dist/node/lib/util/types.js").Subclass<typeof import("o1js").Proof>>(this: S, { maxProofsVerified, proof: proofString, publicInput: publicInputJson, publicOutput: publicOutputJson, }: import("o1js").JsonProof): Promise<import("o1js").Proof<import("o1js").InferProvable<S["publicInputType"]>, import("o1js").InferProvable<S["publicOutputType"]>>>;
|
377
|
+
dummy<Input, OutPut>(publicInput: Input, publicOutput: OutPut, maxProofsVerified: 0 | 2 | 1, domainLog2?: number): Promise<import("o1js").Proof<Input, OutPut>>;
|
378
|
+
readonly provable: {
|
379
|
+
toFields: (value: import("o1js").Proof<any, any>) => import("node_modules/o1js/dist/node/lib/provable/field.js").Field[];
|
380
|
+
toAuxiliary: (value?: import("o1js").Proof<any, any> | undefined) => any[];
|
381
|
+
fromFields: (fields: import("node_modules/o1js/dist/node/lib/provable/field.js").Field[], aux: any[]) => import("o1js").Proof<any, any>;
|
382
|
+
sizeInFields(): number;
|
383
|
+
check: (value: import("o1js").Proof<any, any>) => void;
|
384
|
+
toValue: (x: import("o1js").Proof<any, any>) => import("node_modules/o1js/dist/node/lib/proof-system/proof.js").ProofValue<any, any>;
|
385
|
+
fromValue: (x: import("o1js").Proof<any, any> | import("node_modules/o1js/dist/node/lib/proof-system/proof.js").ProofValue<any, any>) => import("o1js").Proof<any, any>;
|
386
|
+
toCanonical?: ((x: import("o1js").Proof<any, any>) => import("o1js").Proof<any, any>) | undefined;
|
387
|
+
};
|
388
|
+
publicFields(value: import("o1js").ProofBase<any, any>): {
|
389
|
+
input: import("node_modules/o1js/dist/node/lib/provable/field.js").Field[];
|
390
|
+
output: import("node_modules/o1js/dist/node/lib/provable/field.js").Field[];
|
391
|
+
};
|
392
|
+
};
|
393
|
+
compile({ cache, forceRecompile, }?: {
|
394
|
+
cache?: import("o1js").Cache | undefined;
|
395
|
+
forceRecompile?: boolean | undefined;
|
396
|
+
}): Promise<{
|
397
|
+
verificationKey: {
|
398
|
+
data: string;
|
399
|
+
hash: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
|
400
|
+
};
|
401
|
+
provers: import("node_modules/o1js/dist/node/snarky.js").Pickles.Prover[];
|
402
|
+
verify: (statement: import("node_modules/o1js/dist/node/snarky.js").Pickles.Statement<import("node_modules/o1js/dist/node/lib/provable/core/fieldvar.js").FieldConst>, proof: unknown) => Promise<boolean>;
|
403
|
+
}>;
|
404
|
+
digest(): Promise<string>;
|
405
|
+
runOutsideCircuit(run: () => void): void;
|
406
|
+
analyzeMethods({ printSummary }?: {
|
407
|
+
printSummary?: boolean | undefined;
|
408
|
+
}): Promise<Record<string, {
|
409
|
+
actions: number;
|
410
|
+
rows: number;
|
411
|
+
digest: string;
|
412
|
+
gates: import("node_modules/o1js/dist/node/snarky.js").Gate[];
|
413
|
+
}>>;
|
414
|
+
};
|
415
|
+
declare const tokenVerificationKeys: {
|
416
|
+
[key in "mainnet" | "testnet"]: {
|
417
|
+
o1js: string;
|
418
|
+
zkcloudworker: string;
|
419
|
+
vk: {
|
420
|
+
[key: string]: {
|
421
|
+
hash: string;
|
422
|
+
data: string;
|
423
|
+
};
|
424
|
+
};
|
425
|
+
};
|
426
|
+
};
|