@silvana-one/nft 0.3.0 → 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (87) hide show
  1. package/README.md +12 -0
  2. package/dist/node/admin/advanced.d.ts +5 -1
  3. package/dist/node/contracts/admin.d.ts +100 -10
  4. package/dist/node/contracts/admin.js +130 -29
  5. package/dist/node/contracts/admin.js.map +1 -1
  6. package/dist/node/contracts/collection.d.ts +56 -35
  7. package/dist/node/contracts/collection.js +162 -71
  8. package/dist/node/contracts/collection.js.map +1 -1
  9. package/dist/node/contracts/nft.js +3 -0
  10. package/dist/node/contracts/nft.js.map +1 -1
  11. package/dist/node/contracts.d.ts +51 -33
  12. package/dist/node/index.cjs +447 -182
  13. package/dist/node/interfaces/collection.d.ts +5 -5
  14. package/dist/node/interfaces/events.d.ts +306 -16
  15. package/dist/node/interfaces/events.js +42 -4
  16. package/dist/node/interfaces/events.js.map +1 -1
  17. package/dist/node/interfaces/ownable.d.ts +7 -7
  18. package/dist/node/interfaces/ownable.js.map +1 -1
  19. package/dist/node/interfaces/pausable.d.ts +3 -3
  20. package/dist/node/interfaces/pausable.js.map +1 -1
  21. package/dist/node/interfaces/types.d.ts +182 -27
  22. package/dist/node/interfaces/types.js +120 -71
  23. package/dist/node/interfaces/types.js.map +1 -1
  24. package/dist/node/marketplace/auction.d.ts +7 -3
  25. package/dist/node/marketplace/auction.js +4 -4
  26. package/dist/node/marketplace/auction.js.map +1 -1
  27. package/dist/node/marketplace/bid.d.ts +5 -1
  28. package/dist/node/marketplace/bid.js +3 -5
  29. package/dist/node/marketplace/bid.js.map +1 -1
  30. package/dist/node/marketplace/nft-shares.d.ts +17 -5
  31. package/dist/node/marketplace/offer.d.ts +5 -1
  32. package/dist/node/util/div.js +10 -5
  33. package/dist/node/util/div.js.map +1 -1
  34. package/dist/node/vk.js +6 -6
  35. package/dist/node/vk.js.map +1 -1
  36. package/dist/node/zkprogram-example/game.d.ts +6 -17
  37. package/dist/node/zkprogram-example/update.d.ts +6 -17
  38. package/dist/tsconfig.node.tsbuildinfo +1 -1
  39. package/dist/tsconfig.web.tsbuildinfo +1 -1
  40. package/dist/web/admin/advanced.d.ts +5 -1
  41. package/dist/web/contracts/admin.d.ts +100 -10
  42. package/dist/web/contracts/admin.js +130 -29
  43. package/dist/web/contracts/admin.js.map +1 -1
  44. package/dist/web/contracts/collection.d.ts +56 -35
  45. package/dist/web/contracts/collection.js +162 -71
  46. package/dist/web/contracts/collection.js.map +1 -1
  47. package/dist/web/contracts/nft.js +3 -0
  48. package/dist/web/contracts/nft.js.map +1 -1
  49. package/dist/web/contracts.d.ts +51 -33
  50. package/dist/web/interfaces/collection.d.ts +5 -5
  51. package/dist/web/interfaces/events.d.ts +306 -16
  52. package/dist/web/interfaces/events.js +42 -4
  53. package/dist/web/interfaces/events.js.map +1 -1
  54. package/dist/web/interfaces/ownable.d.ts +7 -7
  55. package/dist/web/interfaces/ownable.js.map +1 -1
  56. package/dist/web/interfaces/pausable.d.ts +3 -3
  57. package/dist/web/interfaces/pausable.js.map +1 -1
  58. package/dist/web/interfaces/types.d.ts +182 -27
  59. package/dist/web/interfaces/types.js +120 -71
  60. package/dist/web/interfaces/types.js.map +1 -1
  61. package/dist/web/marketplace/auction.d.ts +7 -3
  62. package/dist/web/marketplace/auction.js +4 -4
  63. package/dist/web/marketplace/auction.js.map +1 -1
  64. package/dist/web/marketplace/bid.d.ts +5 -1
  65. package/dist/web/marketplace/bid.js +3 -5
  66. package/dist/web/marketplace/bid.js.map +1 -1
  67. package/dist/web/marketplace/nft-shares.d.ts +17 -5
  68. package/dist/web/marketplace/offer.d.ts +5 -1
  69. package/dist/web/util/div.js +10 -5
  70. package/dist/web/util/div.js.map +1 -1
  71. package/dist/web/vk.js +6 -6
  72. package/dist/web/vk.js.map +1 -1
  73. package/dist/web/zkprogram-example/game.d.ts +6 -17
  74. package/dist/web/zkprogram-example/update.d.ts +6 -17
  75. package/package.json +13 -13
  76. package/src/contracts/admin.ts +137 -24
  77. package/src/contracts/collection.ts +188 -96
  78. package/src/contracts/nft.ts +3 -0
  79. package/src/interfaces/collection.ts +11 -5
  80. package/src/interfaces/events.ts +47 -3
  81. package/src/interfaces/ownable.ts +1 -1
  82. package/src/interfaces/pausable.ts +1 -1
  83. package/src/interfaces/types.ts +152 -78
  84. package/src/marketplace/auction.ts +5 -4
  85. package/src/marketplace/bid.ts +4 -6
  86. package/src/util/div.ts +12 -5
  87. package/src/vk.ts +6 -6
@@ -1,5 +1,5 @@
1
1
  import { PublicKey, TokenContract } from "o1js";
2
- import { TransferParams, NFTStateStruct } from "./types.js";
2
+ import { TransferBySignatureParams, TransferByProofParams, NFTStateStruct } from "./types.js";
3
3
  import { NFTOwnerContractConstructor } from "./owner.js";
4
4
  import { NFTApprovalContractConstructor } from "./approval.js";
5
5
  import { NFTUpdateContractConstructor } from "./update.js";
@@ -15,25 +15,25 @@ type NFTCollectionBase = TokenContract & {
15
15
  *
16
16
  * @param params - The transfer details.
17
17
  */
18
- transferByProof(params: TransferParams): Promise<void>;
18
+ transferByProof(params: TransferByProofParams): Promise<void>;
19
19
  /**
20
20
  * Transfers ownership of an NFT from contract without admin approval.
21
21
  *
22
22
  * @param params - The transfer details.
23
23
  */
24
- transferBySignature(params: TransferParams): Promise<void>;
24
+ transferBySignature(params: TransferBySignatureParams): Promise<void>;
25
25
  /**
26
26
  * Transfers ownership of an NFT from contract without admin approval using a proof.
27
27
  *
28
28
  * @param params - The transfer details.
29
29
  */
30
- approvedTransferByProof(params: TransferParams): Promise<void>;
30
+ adminApprovedTransferByProof(params: TransferByProofParams): Promise<void>;
31
31
  /**
32
32
  * Transfers ownership of an NFT from contract without admin approval.
33
33
  *
34
34
  * @param params - The transfer details.
35
35
  */
36
- approvedTransferBySignature(params: TransferParams): Promise<void>;
36
+ adminApprovedTransferBySignature(params: TransferBySignatureParams): Promise<void>;
37
37
  /**
38
38
  * Returns the state of an NFT.
39
39
  *
@@ -1,18 +1,24 @@
1
- import { PublicKey, UInt32, Field, Bool } from "o1js";
1
+ import { PublicKey, UInt32, Field, Bool, UInt64 } from "o1js";
2
2
  import { Storage } from "@silvana-one/storage";
3
3
  import { NFTStateStruct, UInt64Option } from "./types.js";
4
- export { MintEvent, UpdateEvent, TransferEvent, UpgradeVerificationKeyEvent, UpgradeVerificationKeyData, LimitMintingEvent, PauseNFTEvent, ApproveEvent, };
4
+ export { MintEvent, NFTUpdateEvent, UpdateEvent, TransferEvent, UpgradeVerificationKeyEvent, UpgradeVerificationKeyData, LimitMintingEvent, PauseNFTEvent, ApproveEvent, SetNameEvent, SetBaseURLEvent, SetRoyaltyFeeEvent, SetTransferFeeEvent, SetAdminEvent, };
5
5
  declare const MintEvent_base: (new (value: {
6
6
  initialState: NFTStateStruct;
7
7
  address: PublicKey;
8
+ tokenId: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
9
+ fee: UInt64;
8
10
  }) => {
9
11
  initialState: NFTStateStruct;
10
12
  address: PublicKey;
13
+ tokenId: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
14
+ fee: UInt64;
11
15
  }) & {
12
16
  _isStruct: true;
13
17
  } & Omit<import("node_modules/o1js/dist/node/lib/provable/types/provable-intf.js").Provable<{
14
18
  initialState: NFTStateStruct;
15
19
  address: PublicKey;
20
+ tokenId: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
21
+ fee: UInt64;
16
22
  }, {
17
23
  initialState: {
18
24
  name: bigint;
@@ -31,10 +37,14 @@ declare const MintEvent_base: (new (value: {
31
37
  x: bigint;
32
38
  isOdd: boolean;
33
39
  };
40
+ tokenId: bigint;
41
+ fee: bigint;
34
42
  }>, "fromFields"> & {
35
43
  fromFields: (fields: import("node_modules/o1js/dist/node/lib/provable/field.js").Field[]) => {
36
44
  initialState: NFTStateStruct;
37
45
  address: PublicKey;
46
+ tokenId: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
47
+ fee: UInt64;
38
48
  };
39
49
  } & {
40
50
  fromValue: (value: {
@@ -55,13 +65,19 @@ declare const MintEvent_base: (new (value: {
55
65
  x: Field | bigint;
56
66
  isOdd: Bool | boolean;
57
67
  };
68
+ tokenId: string | number | bigint | import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
69
+ fee: number | bigint | UInt64;
58
70
  }) => {
59
71
  initialState: NFTStateStruct;
60
72
  address: PublicKey;
73
+ tokenId: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
74
+ fee: UInt64;
61
75
  };
62
76
  toInput: (x: {
63
77
  initialState: NFTStateStruct;
64
78
  address: PublicKey;
79
+ tokenId: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
80
+ fee: UInt64;
65
81
  }) => {
66
82
  fields?: Field[] | undefined;
67
83
  packed?: [Field, number][] | undefined;
@@ -69,6 +85,8 @@ declare const MintEvent_base: (new (value: {
69
85
  toJSON: (x: {
70
86
  initialState: NFTStateStruct;
71
87
  address: PublicKey;
88
+ tokenId: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
89
+ fee: UInt64;
72
90
  }) => {
73
91
  initialState: {
74
92
  name: string;
@@ -84,6 +102,8 @@ declare const MintEvent_base: (new (value: {
84
102
  metadataVerificationKeyHash: string;
85
103
  };
86
104
  address: string;
105
+ tokenId: string;
106
+ fee: string;
87
107
  };
88
108
  fromJSON: (x: {
89
109
  initialState: {
@@ -100,13 +120,19 @@ declare const MintEvent_base: (new (value: {
100
120
  metadataVerificationKeyHash: string;
101
121
  };
102
122
  address: string;
123
+ tokenId: string;
124
+ fee: string;
103
125
  }) => {
104
126
  initialState: NFTStateStruct;
105
127
  address: PublicKey;
128
+ tokenId: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
129
+ fee: UInt64;
106
130
  };
107
131
  empty: () => {
108
132
  initialState: NFTStateStruct;
109
133
  address: PublicKey;
134
+ tokenId: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
135
+ fee: UInt64;
110
136
  };
111
137
  };
112
138
  /**
@@ -120,7 +146,7 @@ declare const UpdateEvent_base: (new (value: {
120
146
  storage: Storage;
121
147
  owner: PublicKey;
122
148
  approved: PublicKey;
123
- version: UInt32;
149
+ version: UInt64;
124
150
  isPaused: import("node_modules/o1js/dist/node/lib/provable/bool.js").Bool;
125
151
  metadataVerificationKeyHash: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
126
152
  }) => {
@@ -129,7 +155,7 @@ declare const UpdateEvent_base: (new (value: {
129
155
  storage: Storage;
130
156
  owner: PublicKey;
131
157
  approved: PublicKey;
132
- version: UInt32;
158
+ version: UInt64;
133
159
  isPaused: import("node_modules/o1js/dist/node/lib/provable/bool.js").Bool;
134
160
  metadataVerificationKeyHash: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
135
161
  }) & {
@@ -140,7 +166,7 @@ declare const UpdateEvent_base: (new (value: {
140
166
  storage: Storage;
141
167
  owner: PublicKey;
142
168
  approved: PublicKey;
143
- version: UInt32;
169
+ version: UInt64;
144
170
  isPaused: import("node_modules/o1js/dist/node/lib/provable/bool.js").Bool;
145
171
  metadataVerificationKeyHash: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
146
172
  }, {
@@ -167,7 +193,7 @@ declare const UpdateEvent_base: (new (value: {
167
193
  storage: Storage;
168
194
  owner: PublicKey;
169
195
  approved: PublicKey;
170
- version: UInt32;
196
+ version: UInt64;
171
197
  isPaused: import("node_modules/o1js/dist/node/lib/provable/bool.js").Bool;
172
198
  metadataVerificationKeyHash: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
173
199
  };
@@ -186,7 +212,7 @@ declare const UpdateEvent_base: (new (value: {
186
212
  x: Field | bigint;
187
213
  isOdd: Bool | boolean;
188
214
  };
189
- version: number | bigint | UInt32;
215
+ version: number | bigint | UInt64;
190
216
  isPaused: boolean | import("node_modules/o1js/dist/node/lib/provable/bool.js").Bool;
191
217
  metadataVerificationKeyHash: string | number | bigint | import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
192
218
  }) => {
@@ -195,7 +221,7 @@ declare const UpdateEvent_base: (new (value: {
195
221
  storage: Storage;
196
222
  owner: PublicKey;
197
223
  approved: PublicKey;
198
- version: UInt32;
224
+ version: UInt64;
199
225
  isPaused: import("node_modules/o1js/dist/node/lib/provable/bool.js").Bool;
200
226
  metadataVerificationKeyHash: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
201
227
  };
@@ -205,7 +231,7 @@ declare const UpdateEvent_base: (new (value: {
205
231
  storage: Storage;
206
232
  owner: PublicKey;
207
233
  approved: PublicKey;
208
- version: UInt32;
234
+ version: UInt64;
209
235
  isPaused: import("node_modules/o1js/dist/node/lib/provable/bool.js").Bool;
210
236
  metadataVerificationKeyHash: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
211
237
  }) => {
@@ -218,7 +244,7 @@ declare const UpdateEvent_base: (new (value: {
218
244
  storage: Storage;
219
245
  owner: PublicKey;
220
246
  approved: PublicKey;
221
- version: UInt32;
247
+ version: UInt64;
222
248
  isPaused: import("node_modules/o1js/dist/node/lib/provable/bool.js").Bool;
223
249
  metadataVerificationKeyHash: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
224
250
  }) => {
@@ -250,7 +276,7 @@ declare const UpdateEvent_base: (new (value: {
250
276
  storage: Storage;
251
277
  owner: PublicKey;
252
278
  approved: PublicKey;
253
- version: UInt32;
279
+ version: UInt64;
254
280
  isPaused: import("node_modules/o1js/dist/node/lib/provable/bool.js").Bool;
255
281
  metadataVerificationKeyHash: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
256
282
  };
@@ -260,7 +286,7 @@ declare const UpdateEvent_base: (new (value: {
260
286
  storage: Storage;
261
287
  owner: PublicKey;
262
288
  approved: PublicKey;
263
- version: UInt32;
289
+ version: UInt64;
264
290
  isPaused: import("node_modules/o1js/dist/node/lib/provable/bool.js").Bool;
265
291
  metadataVerificationKeyHash: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
266
292
  };
@@ -422,13 +448,13 @@ declare const TransferEvent_base: (new (value: {
422
448
  x: Field | bigint;
423
449
  isOdd: Bool | boolean;
424
450
  };
425
- fee: bigint | UInt64Option | import("o1js").UInt64 | {
451
+ fee: bigint | UInt64Option | UInt64 | {
426
452
  isSome: boolean | Bool;
427
- value: bigint | import("o1js").UInt64;
453
+ value: bigint | UInt64;
428
454
  } | undefined;
429
- price: bigint | UInt64Option | import("o1js").UInt64 | {
455
+ price: bigint | UInt64Option | UInt64 | {
430
456
  isSome: boolean | Bool;
431
- value: bigint | import("o1js").UInt64;
457
+ value: bigint | UInt64;
432
458
  } | undefined;
433
459
  transferByOwner: boolean | import("node_modules/o1js/dist/node/lib/provable/bool.js").Bool;
434
460
  approved: PublicKey | {
@@ -831,3 +857,267 @@ declare const LimitMintingEvent_base: (new (value: {
831
857
  */
832
858
  declare class LimitMintingEvent extends LimitMintingEvent_base {
833
859
  }
860
+ declare const NFTUpdateEvent_base: (new (value: {
861
+ address: PublicKey;
862
+ }) => {
863
+ address: PublicKey;
864
+ }) & {
865
+ _isStruct: true;
866
+ } & Omit<import("node_modules/o1js/dist/node/lib/provable/types/provable-intf.js").Provable<{
867
+ address: PublicKey;
868
+ }, {
869
+ address: {
870
+ x: bigint;
871
+ isOdd: boolean;
872
+ };
873
+ }>, "fromFields"> & {
874
+ fromFields: (fields: import("node_modules/o1js/dist/node/lib/provable/field.js").Field[]) => {
875
+ address: PublicKey;
876
+ };
877
+ } & {
878
+ fromValue: (value: {
879
+ address: PublicKey | {
880
+ x: Field | bigint;
881
+ isOdd: Bool | boolean;
882
+ };
883
+ }) => {
884
+ address: PublicKey;
885
+ };
886
+ toInput: (x: {
887
+ address: PublicKey;
888
+ }) => {
889
+ fields?: Field[] | undefined;
890
+ packed?: [Field, number][] | undefined;
891
+ };
892
+ toJSON: (x: {
893
+ address: PublicKey;
894
+ }) => {
895
+ address: string;
896
+ };
897
+ fromJSON: (x: {
898
+ address: string;
899
+ }) => {
900
+ address: PublicKey;
901
+ };
902
+ empty: () => {
903
+ address: PublicKey;
904
+ };
905
+ };
906
+ declare class NFTUpdateEvent extends NFTUpdateEvent_base {
907
+ }
908
+ declare const SetNameEvent_base: (new (value: {
909
+ name: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
910
+ }) => {
911
+ name: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
912
+ }) & {
913
+ _isStruct: true;
914
+ } & Omit<import("node_modules/o1js/dist/node/lib/provable/types/provable-intf.js").Provable<{
915
+ name: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
916
+ }, {
917
+ name: bigint;
918
+ }>, "fromFields"> & {
919
+ fromFields: (fields: import("node_modules/o1js/dist/node/lib/provable/field.js").Field[]) => {
920
+ name: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
921
+ };
922
+ } & {
923
+ fromValue: (value: {
924
+ name: string | number | bigint | import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
925
+ }) => {
926
+ name: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
927
+ };
928
+ toInput: (x: {
929
+ name: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
930
+ }) => {
931
+ fields?: Field[] | undefined;
932
+ packed?: [Field, number][] | undefined;
933
+ };
934
+ toJSON: (x: {
935
+ name: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
936
+ }) => {
937
+ name: string;
938
+ };
939
+ fromJSON: (x: {
940
+ name: string;
941
+ }) => {
942
+ name: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
943
+ };
944
+ empty: () => {
945
+ name: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
946
+ };
947
+ };
948
+ declare class SetNameEvent extends SetNameEvent_base {
949
+ }
950
+ declare const SetBaseURLEvent_base: (new (value: {
951
+ baseURL: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
952
+ }) => {
953
+ baseURL: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
954
+ }) & {
955
+ _isStruct: true;
956
+ } & Omit<import("node_modules/o1js/dist/node/lib/provable/types/provable-intf.js").Provable<{
957
+ baseURL: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
958
+ }, {
959
+ baseURL: bigint;
960
+ }>, "fromFields"> & {
961
+ fromFields: (fields: import("node_modules/o1js/dist/node/lib/provable/field.js").Field[]) => {
962
+ baseURL: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
963
+ };
964
+ } & {
965
+ fromValue: (value: {
966
+ baseURL: string | number | bigint | import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
967
+ }) => {
968
+ baseURL: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
969
+ };
970
+ toInput: (x: {
971
+ baseURL: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
972
+ }) => {
973
+ fields?: Field[] | undefined;
974
+ packed?: [Field, number][] | undefined;
975
+ };
976
+ toJSON: (x: {
977
+ baseURL: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
978
+ }) => {
979
+ baseURL: string;
980
+ };
981
+ fromJSON: (x: {
982
+ baseURL: string;
983
+ }) => {
984
+ baseURL: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
985
+ };
986
+ empty: () => {
987
+ baseURL: import("node_modules/o1js/dist/node/lib/provable/field.js").Field;
988
+ };
989
+ };
990
+ declare class SetBaseURLEvent extends SetBaseURLEvent_base {
991
+ }
992
+ declare const SetRoyaltyFeeEvent_base: (new (value: {
993
+ royaltyFee: UInt32;
994
+ }) => {
995
+ royaltyFee: UInt32;
996
+ }) & {
997
+ _isStruct: true;
998
+ } & Omit<import("node_modules/o1js/dist/node/lib/provable/types/provable-intf.js").Provable<{
999
+ royaltyFee: UInt32;
1000
+ }, {
1001
+ royaltyFee: bigint;
1002
+ }>, "fromFields"> & {
1003
+ fromFields: (fields: import("node_modules/o1js/dist/node/lib/provable/field.js").Field[]) => {
1004
+ royaltyFee: UInt32;
1005
+ };
1006
+ } & {
1007
+ fromValue: (value: {
1008
+ royaltyFee: number | bigint | UInt32;
1009
+ }) => {
1010
+ royaltyFee: UInt32;
1011
+ };
1012
+ toInput: (x: {
1013
+ royaltyFee: UInt32;
1014
+ }) => {
1015
+ fields?: Field[] | undefined;
1016
+ packed?: [Field, number][] | undefined;
1017
+ };
1018
+ toJSON: (x: {
1019
+ royaltyFee: UInt32;
1020
+ }) => {
1021
+ royaltyFee: string;
1022
+ };
1023
+ fromJSON: (x: {
1024
+ royaltyFee: string;
1025
+ }) => {
1026
+ royaltyFee: UInt32;
1027
+ };
1028
+ empty: () => {
1029
+ royaltyFee: UInt32;
1030
+ };
1031
+ };
1032
+ declare class SetRoyaltyFeeEvent extends SetRoyaltyFeeEvent_base {
1033
+ }
1034
+ declare const SetTransferFeeEvent_base: (new (value: {
1035
+ transferFee: UInt64;
1036
+ }) => {
1037
+ transferFee: UInt64;
1038
+ }) & {
1039
+ _isStruct: true;
1040
+ } & Omit<import("node_modules/o1js/dist/node/lib/provable/types/provable-intf.js").Provable<{
1041
+ transferFee: UInt64;
1042
+ }, {
1043
+ transferFee: bigint;
1044
+ }>, "fromFields"> & {
1045
+ fromFields: (fields: import("node_modules/o1js/dist/node/lib/provable/field.js").Field[]) => {
1046
+ transferFee: UInt64;
1047
+ };
1048
+ } & {
1049
+ fromValue: (value: {
1050
+ transferFee: number | bigint | UInt64;
1051
+ }) => {
1052
+ transferFee: UInt64;
1053
+ };
1054
+ toInput: (x: {
1055
+ transferFee: UInt64;
1056
+ }) => {
1057
+ fields?: Field[] | undefined;
1058
+ packed?: [Field, number][] | undefined;
1059
+ };
1060
+ toJSON: (x: {
1061
+ transferFee: UInt64;
1062
+ }) => {
1063
+ transferFee: string;
1064
+ };
1065
+ fromJSON: (x: {
1066
+ transferFee: string;
1067
+ }) => {
1068
+ transferFee: UInt64;
1069
+ };
1070
+ empty: () => {
1071
+ transferFee: UInt64;
1072
+ };
1073
+ };
1074
+ declare class SetTransferFeeEvent extends SetTransferFeeEvent_base {
1075
+ }
1076
+ declare const SetAdminEvent_base: (new (value: {
1077
+ admin: PublicKey;
1078
+ }) => {
1079
+ admin: PublicKey;
1080
+ }) & {
1081
+ _isStruct: true;
1082
+ } & Omit<import("node_modules/o1js/dist/node/lib/provable/types/provable-intf.js").Provable<{
1083
+ admin: PublicKey;
1084
+ }, {
1085
+ admin: {
1086
+ x: bigint;
1087
+ isOdd: boolean;
1088
+ };
1089
+ }>, "fromFields"> & {
1090
+ fromFields: (fields: import("node_modules/o1js/dist/node/lib/provable/field.js").Field[]) => {
1091
+ admin: PublicKey;
1092
+ };
1093
+ } & {
1094
+ fromValue: (value: {
1095
+ admin: PublicKey | {
1096
+ x: Field | bigint;
1097
+ isOdd: Bool | boolean;
1098
+ };
1099
+ }) => {
1100
+ admin: PublicKey;
1101
+ };
1102
+ toInput: (x: {
1103
+ admin: PublicKey;
1104
+ }) => {
1105
+ fields?: Field[] | undefined;
1106
+ packed?: [Field, number][] | undefined;
1107
+ };
1108
+ toJSON: (x: {
1109
+ admin: PublicKey;
1110
+ }) => {
1111
+ admin: string;
1112
+ };
1113
+ fromJSON: (x: {
1114
+ admin: string;
1115
+ }) => {
1116
+ admin: PublicKey;
1117
+ };
1118
+ empty: () => {
1119
+ admin: PublicKey;
1120
+ };
1121
+ };
1122
+ declare class SetAdminEvent extends SetAdminEvent_base {
1123
+ }
@@ -1,7 +1,7 @@
1
- import { PublicKey, Struct, UInt32, Field, Bool } from "o1js";
1
+ import { PublicKey, Struct, UInt32, Field, Bool, UInt64 } from "o1js";
2
2
  import { Storage } from "@silvana-one/storage";
3
3
  import { NFTStateStruct, UInt64Option } from "./types.js";
4
- export { MintEvent, UpdateEvent, TransferEvent, UpgradeVerificationKeyEvent, UpgradeVerificationKeyData, LimitMintingEvent, PauseNFTEvent, ApproveEvent, };
4
+ export { MintEvent, NFTUpdateEvent, UpdateEvent, TransferEvent, UpgradeVerificationKeyEvent, UpgradeVerificationKeyData, LimitMintingEvent, PauseNFTEvent, ApproveEvent, SetNameEvent, SetBaseURLEvent, SetRoyaltyFeeEvent, SetTransferFeeEvent, SetAdminEvent, };
5
5
  /**
6
6
  * Emitted when a new NFT is minted in the collection.
7
7
  */
@@ -10,6 +10,14 @@ class MintEvent extends Struct({
10
10
  initialState: NFTStateStruct,
11
11
  /** The public key address of the minted NFT. */
12
12
  address: PublicKey,
13
+ /** The token ID of the minted NFT. */
14
+ tokenId: Field,
15
+ /** The fee paid for the minting.
16
+ * This fee is controlled by the admin contract
17
+ * and is not checked by the Collection contract
18
+ * Please check the admin contract code before using this fee
19
+ */
20
+ fee: UInt64,
13
21
  }) {
14
22
  }
15
23
  /**
@@ -27,7 +35,7 @@ class UpdateEvent extends Struct({
27
35
  /** The approved address of the NFT after the update. */
28
36
  approved: PublicKey,
29
37
  /** The version number of the NFT state. */
30
- version: UInt32,
38
+ version: UInt64,
31
39
  /** Indicates whether the NFT is paused after the update. */
32
40
  isPaused: Bool,
33
41
  /** The hash of the verification key used for metadata proofs. */
@@ -84,7 +92,7 @@ class UpgradeVerificationKeyEvent extends Struct({
84
92
  verificationKeyHash: Field,
85
93
  /** The public key address of the NFT whose verification key is upgraded. */
86
94
  address: PublicKey,
87
- /** The version number of the NFT state after the upgrade. */
95
+ /** The tokenId of the upgraded contract */
88
96
  tokenId: Field,
89
97
  }) {
90
98
  }
@@ -103,4 +111,34 @@ class LimitMintingEvent extends Struct({
103
111
  mintingLimited: Bool,
104
112
  }) {
105
113
  }
114
+ class NFTUpdateEvent extends Struct({
115
+ /** The public key address of the NFT. */
116
+ address: PublicKey,
117
+ }) {
118
+ }
119
+ class SetNameEvent extends Struct({
120
+ /** The updated name of the Collection. */
121
+ name: Field,
122
+ }) {
123
+ }
124
+ class SetBaseURLEvent extends Struct({
125
+ /** The updated base URL of the Collection. */
126
+ baseURL: Field,
127
+ }) {
128
+ }
129
+ class SetRoyaltyFeeEvent extends Struct({
130
+ /** The updated royalty fee of the Collection. */
131
+ royaltyFee: UInt32,
132
+ }) {
133
+ }
134
+ class SetTransferFeeEvent extends Struct({
135
+ /** The updated transfer fee of the Collection. */
136
+ transferFee: UInt64,
137
+ }) {
138
+ }
139
+ class SetAdminEvent extends Struct({
140
+ /** The updated admin contract of the Collection. */
141
+ admin: PublicKey,
142
+ }) {
143
+ }
106
144
  //# sourceMappingURL=events.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"events.js","sourceRoot":"","sources":["../../../src/interfaces/events.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC9D,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE1D,OAAO,EACL,SAAS,EACT,WAAW,EACX,aAAa,EACb,2BAA2B,EAC3B,0BAA0B,EAC1B,iBAAiB,EACjB,aAAa,EACb,YAAY,GACb,CAAC;AAEF;;GAEG;AACH,MAAM,SAAU,SAAQ,MAAM,CAAC;IAC7B,2DAA2D;IAC3D,YAAY,EAAE,cAAc;IAC5B,gDAAgD;IAChD,OAAO,EAAE,SAAS;CACnB,CAAC;CAAG;AAEL;;GAEG;AACH,MAAM,WAAY,SAAQ,MAAM,CAAC;IAC/B,mCAAmC;IACnC,IAAI,EAAE,KAAK;IACX,4CAA4C;IAC5C,QAAQ,EAAE,KAAK;IACf,sDAAsD;IACtD,OAAO,EAAE,OAAO;IAChB,6CAA6C;IAC7C,KAAK,EAAE,SAAS;IAChB,wDAAwD;IACxD,QAAQ,EAAE,SAAS;IACnB,2CAA2C;IAC3C,OAAO,EAAE,MAAM;IACf,4DAA4D;IAC5D,QAAQ,EAAE,IAAI;IACd,iEAAiE;IACjE,2BAA2B,EAAE,KAAK;CACnC,CAAC;CAAG;AAEL;;GAEG;AACH,MAAM,YAAa,SAAQ,MAAM,CAAC;IAChC,yCAAyC;IACzC,UAAU,EAAE,SAAS;IACrB,8CAA8C;IAC9C,QAAQ,EAAE,SAAS;CACpB,CAAC;CAAG;AAEL;;GAEG;AACH,MAAM,aAAc,SAAQ,MAAM,CAAC;IACjC,wEAAwE;IACxE,IAAI,EAAE,SAAS;IACf,sEAAsE;IACtE,EAAE,EAAE,SAAS;IACb,wCAAwC;IACxC,UAAU,EAAE,SAAS;IACrB,2DAA2D;IAC3D,GAAG,EAAE,SAAS;IACd,qCAAqC;IACrC,GAAG,EAAE,YAAY;IACjB,8CAA8C;IAC9C,KAAK,EAAE,YAAY;IACnB,yEAAyE;IACzE,eAAe,EAAE,IAAI;IACrB,8CAA8C;IAC9C,QAAQ,EAAE,SAAS;CACpB,CAAC;CAAG;AAEL;;GAEG;AACH,MAAM,aAAc,SAAQ,MAAM,CAAC;IACjC,yCAAyC;IACzC,OAAO,EAAE,SAAS;IAClB,yEAAyE;IACzE,QAAQ,EAAE,IAAI;CACf,CAAC;CAAG;AAEL;;GAEG;AACH,MAAM,2BAA4B,SAAQ,MAAM,CAAC;IAC/C,4CAA4C;IAC5C,mBAAmB,EAAE,KAAK;IAC1B,4EAA4E;IAC5E,OAAO,EAAE,SAAS;IAClB,6DAA6D;IAC7D,OAAO,EAAE,KAAK;CACf,CAAC;CAAG;AAEL,MAAM,0BAA2B,SAAQ,MAAM,CAAC;IAC9C,4BAA4B;IAC5B,KAAK,EAAE,SAAS;IAChB,wFAAwF;IACxF,uBAAuB,EAAE,IAAI;CAC9B,CAAC;CAAG;AAEL;;GAEG;AACH,MAAM,iBAAkB,SAAQ,MAAM,CAAC;IACrC,sEAAsE;IACtE,cAAc,EAAE,IAAI;CACrB,CAAC;CAAG"}
1
+ {"version":3,"file":"events.js","sourceRoot":"","sources":["../../../src/interfaces/events.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { PublicKey, SmartContract, Field, Bool } from "o1js";
1
+ import { PublicKey, SmartContract } from "o1js";
2
2
  /**
3
3
  * Interface representing ownable functionality for smart contracts.
4
4
  *
@@ -47,12 +47,12 @@ declare const OwnershipChangeEvent_base: (new (value: {
47
47
  } & {
48
48
  fromValue: (value: {
49
49
  from: PublicKey | {
50
- x: Field | bigint;
51
- isOdd: Bool | boolean;
50
+ x: import("o1js").Field | bigint;
51
+ isOdd: import("o1js").Bool | boolean;
52
52
  };
53
53
  to: PublicKey | {
54
- x: Field | bigint;
55
- isOdd: Bool | boolean;
54
+ x: import("o1js").Field | bigint;
55
+ isOdd: import("o1js").Bool | boolean;
56
56
  };
57
57
  }) => {
58
58
  from: PublicKey;
@@ -62,8 +62,8 @@ declare const OwnershipChangeEvent_base: (new (value: {
62
62
  from: PublicKey;
63
63
  to: PublicKey;
64
64
  }) => {
65
- fields?: Field[] | undefined;
66
- packed?: [Field, number][] | undefined;
65
+ fields?: import("o1js").Field[] | undefined;
66
+ packed?: [import("o1js").Field, number][] | undefined;
67
67
  };
68
68
  toJSON: (x: {
69
69
  from: PublicKey;
@@ -1 +1 @@
1
- {"version":3,"file":"ownable.js","sourceRoot":"","sources":["../../../src/interfaces/ownable.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAwB,MAAM,EAAQ,MAAM,MAAM,CAAC;AAuBrE;;;;GAIG;AACH,MAAM,OAAO,oBAAqB,SAAQ,MAAM,CAAC;IAC/C,IAAI,EAAE,SAAS;IACf,EAAE,EAAE,SAAS;CACd,CAAC;CAAG"}
1
+ {"version":3,"file":"ownable.js","sourceRoot":"","sources":["../../../src/interfaces/ownable.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAiB,MAAM,EAAE,MAAM,MAAM,CAAC;AAuBxD;;;;GAIG;AACH,MAAM,OAAO,oBAAqB,SAAQ,MAAM,CAAC;IAC/C,IAAI,EAAE,SAAS;IACf,EAAE,EAAE,SAAS;CACd,CAAC;CAAG"}
@@ -1,4 +1,4 @@
1
- import { SmartContract, Field } from "o1js";
1
+ import { SmartContract } from "o1js";
2
2
  export { PausableContract, PauseEvent };
3
3
  /**
4
4
  * The **PausableContract** interface provides a mechanism to dynamically enable or disable
@@ -49,8 +49,8 @@ declare const PauseEvent_base: (new (value: {
49
49
  toInput: (x: {
50
50
  isPaused: import("node_modules/o1js/dist/node/lib/provable/bool.js").Bool;
51
51
  }) => {
52
- fields?: Field[] | undefined;
53
- packed?: [Field, number][] | undefined;
52
+ fields?: import("o1js").Field[] | undefined;
53
+ packed?: [import("o1js").Field, number][] | undefined;
54
54
  };
55
55
  toJSON: (x: {
56
56
  isPaused: import("node_modules/o1js/dist/node/lib/provable/bool.js").Bool;
@@ -1 +1 @@
1
- {"version":3,"file":"pausable.js","sourceRoot":"","sources":["../../../src/interfaces/pausable.ts"],"names":[],"mappings":"AAAA,OAAO,EAAwB,MAAM,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC1D,OAAO,EAAoB,UAAU,EAAE,CAAC;AA8BxC;;;GAGG;AACH,MAAM,UAAW,SAAQ,MAAM,CAAC;IAC9B;;OAEG;IACH,QAAQ,EAAE,IAAI;CACf,CAAC;CAAG"}
1
+ {"version":3,"file":"pausable.js","sourceRoot":"","sources":["../../../src/interfaces/pausable.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,MAAM,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AACnD,OAAO,EAAoB,UAAU,EAAE,CAAC;AA8BxC;;;GAGG;AACH,MAAM,UAAW,SAAQ,MAAM,CAAC;IAC9B;;OAEG;IACH,QAAQ,EAAE,IAAI;CACf,CAAC;CAAG"}