@settlemint/sdk-eas 2.6.4-prffd0842f → 2.6.11-main5328fef
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/README.md +94 -94
- package/dist/eas.cjs +11 -39
- package/dist/eas.cjs.map +1 -1
- package/package.json +4 -4
package/README.md
CHANGED
|
@@ -950,7 +950,7 @@ export { runEASWorkflow, type UserReputationSchema };
|
|
|
950
950
|
|
|
951
951
|
> **createEASClient**(`options`): [`EASClient`](#easclient)
|
|
952
952
|
|
|
953
|
-
Defined in: [sdk/eas/src/eas.ts:716](https://github.com/settlemint/sdk/blob/v2.6.
|
|
953
|
+
Defined in: [sdk/eas/src/eas.ts:716](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/eas.ts#L716)
|
|
954
954
|
|
|
955
955
|
Create an EAS client instance
|
|
956
956
|
|
|
@@ -989,7 +989,7 @@ const deployment = await easClient.deploy("0x1234...deployer-address");
|
|
|
989
989
|
|
|
990
990
|
#### EASClient
|
|
991
991
|
|
|
992
|
-
Defined in: [sdk/eas/src/eas.ts:44](https://github.com/settlemint/sdk/blob/v2.6.
|
|
992
|
+
Defined in: [sdk/eas/src/eas.ts:44](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/eas.ts#L44)
|
|
993
993
|
|
|
994
994
|
Main EAS client class for interacting with Ethereum Attestation Service via Portal
|
|
995
995
|
|
|
@@ -1014,7 +1014,7 @@ console.log("EAS deployed at:", deployment.easAddress);
|
|
|
1014
1014
|
|
|
1015
1015
|
> **new EASClient**(`options`): [`EASClient`](#easclient)
|
|
1016
1016
|
|
|
1017
|
-
Defined in: [sdk/eas/src/eas.ts:55](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1017
|
+
Defined in: [sdk/eas/src/eas.ts:55](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/eas.ts#L55)
|
|
1018
1018
|
|
|
1019
1019
|
Create a new EAS client instance
|
|
1020
1020
|
|
|
@@ -1039,7 +1039,7 @@ Create a new EAS client instance
|
|
|
1039
1039
|
|
|
1040
1040
|
> **attest**(`request`, `fromAddress`, `gasLimit?`): `Promise`\<[`TransactionResult`](#transactionresult)\>
|
|
1041
1041
|
|
|
1042
|
-
Defined in: [sdk/eas/src/eas.ts:295](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1042
|
+
Defined in: [sdk/eas/src/eas.ts:295](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/eas.ts#L295)
|
|
1043
1043
|
|
|
1044
1044
|
Create an attestation
|
|
1045
1045
|
|
|
@@ -1089,7 +1089,7 @@ console.log("Attestation created:", attestationResult.hash);
|
|
|
1089
1089
|
|
|
1090
1090
|
> **deploy**(`deployerAddress`, `forwarderAddress?`, `gasLimit?`): `Promise`\<[`DeploymentResult`](#deploymentresult)\>
|
|
1091
1091
|
|
|
1092
|
-
Defined in: [sdk/eas/src/eas.ts:106](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1092
|
+
Defined in: [sdk/eas/src/eas.ts:106](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/eas.ts#L106)
|
|
1093
1093
|
|
|
1094
1094
|
Deploy EAS contracts via Portal
|
|
1095
1095
|
|
|
@@ -1131,7 +1131,7 @@ console.log("EAS Contract:", deployment.easAddress);
|
|
|
1131
1131
|
|
|
1132
1132
|
> **getAttestation**(`uid`): `Promise`\<[`AttestationInfo`](#attestationinfo)\>
|
|
1133
1133
|
|
|
1134
|
-
Defined in: [sdk/eas/src/eas.ts:549](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1134
|
+
Defined in: [sdk/eas/src/eas.ts:549](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/eas.ts#L549)
|
|
1135
1135
|
|
|
1136
1136
|
Get an attestation by UID
|
|
1137
1137
|
|
|
@@ -1149,7 +1149,7 @@ Get an attestation by UID
|
|
|
1149
1149
|
|
|
1150
1150
|
> **getAttestations**(`_options?`): `Promise`\<[`AttestationInfo`](#attestationinfo)[]\>
|
|
1151
1151
|
|
|
1152
|
-
Defined in: [sdk/eas/src/eas.ts:589](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1152
|
+
Defined in: [sdk/eas/src/eas.ts:589](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/eas.ts#L589)
|
|
1153
1153
|
|
|
1154
1154
|
Get attestations with pagination and filtering
|
|
1155
1155
|
|
|
@@ -1171,7 +1171,7 @@ Consider using getAttestation() for individual attestation lookups.
|
|
|
1171
1171
|
|
|
1172
1172
|
> **getContractAddresses**(): `object`
|
|
1173
1173
|
|
|
1174
|
-
Defined in: [sdk/eas/src/eas.ts:662](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1174
|
+
Defined in: [sdk/eas/src/eas.ts:662](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/eas.ts#L662)
|
|
1175
1175
|
|
|
1176
1176
|
Get current contract addresses
|
|
1177
1177
|
|
|
@@ -1181,14 +1181,14 @@ Get current contract addresses
|
|
|
1181
1181
|
|
|
1182
1182
|
| Name | Type | Defined in |
|
|
1183
1183
|
| ------ | ------ | ------ |
|
|
1184
|
-
| `easAddress?` | `` `0x${string}` `` | [sdk/eas/src/eas.ts:662](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1185
|
-
| `schemaRegistryAddress?` | `` `0x${string}` `` | [sdk/eas/src/eas.ts:662](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1184
|
+
| `easAddress?` | `` `0x${string}` `` | [sdk/eas/src/eas.ts:662](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/eas.ts#L662) |
|
|
1185
|
+
| `schemaRegistryAddress?` | `` `0x${string}` `` | [sdk/eas/src/eas.ts:662](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/eas.ts#L662) |
|
|
1186
1186
|
|
|
1187
1187
|
###### getOptions()
|
|
1188
1188
|
|
|
1189
1189
|
> **getOptions**(): `object`
|
|
1190
1190
|
|
|
1191
|
-
Defined in: [sdk/eas/src/eas.ts:648](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1191
|
+
Defined in: [sdk/eas/src/eas.ts:648](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/eas.ts#L648)
|
|
1192
1192
|
|
|
1193
1193
|
Get client configuration
|
|
1194
1194
|
|
|
@@ -1196,17 +1196,17 @@ Get client configuration
|
|
|
1196
1196
|
|
|
1197
1197
|
| Name | Type | Default value | Description | Defined in |
|
|
1198
1198
|
| ------ | ------ | ------ | ------ | ------ |
|
|
1199
|
-
| `accessToken?` | `string` | - | The application access token | [sdk/eas/src/utils/validation.ts:21](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1200
|
-
| `debug?` | `boolean` | - | Whether to enable debug mode | [sdk/eas/src/utils/validation.ts:33](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1201
|
-
| `easContractAddress?` | `` `0x${string}` `` | - | The EAS contract address | [sdk/eas/src/utils/validation.ts:25](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1202
|
-
| `instance` | `string` | `UrlSchema` | The EAS instance URL | [sdk/eas/src/utils/validation.ts:17](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1203
|
-
| `schemaRegistryContractAddress?` | `` `0x${string}` `` | - | The schema registry contract address | [sdk/eas/src/utils/validation.ts:29](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1199
|
+
| `accessToken?` | `string` | - | The application access token | [sdk/eas/src/utils/validation.ts:21](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/utils/validation.ts#L21) |
|
|
1200
|
+
| `debug?` | `boolean` | - | Whether to enable debug mode | [sdk/eas/src/utils/validation.ts:33](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/utils/validation.ts#L33) |
|
|
1201
|
+
| `easContractAddress?` | `` `0x${string}` `` | - | The EAS contract address | [sdk/eas/src/utils/validation.ts:25](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/utils/validation.ts#L25) |
|
|
1202
|
+
| `instance` | `string` | `UrlSchema` | The EAS instance URL | [sdk/eas/src/utils/validation.ts:17](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/utils/validation.ts#L17) |
|
|
1203
|
+
| `schemaRegistryContractAddress?` | `` `0x${string}` `` | - | The schema registry contract address | [sdk/eas/src/utils/validation.ts:29](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/utils/validation.ts#L29) |
|
|
1204
1204
|
|
|
1205
1205
|
###### getPortalClient()
|
|
1206
1206
|
|
|
1207
1207
|
> **getPortalClient**(): `GraphQLClient`
|
|
1208
1208
|
|
|
1209
|
-
Defined in: [sdk/eas/src/eas.ts:655](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1209
|
+
Defined in: [sdk/eas/src/eas.ts:655](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/eas.ts#L655)
|
|
1210
1210
|
|
|
1211
1211
|
Get the Portal client instance for advanced operations
|
|
1212
1212
|
|
|
@@ -1218,7 +1218,7 @@ Get the Portal client instance for advanced operations
|
|
|
1218
1218
|
|
|
1219
1219
|
> **getSchema**(`uid`): `Promise`\<[`SchemaData`](#schemadata)\>
|
|
1220
1220
|
|
|
1221
|
-
Defined in: [sdk/eas/src/eas.ts:506](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1221
|
+
Defined in: [sdk/eas/src/eas.ts:506](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/eas.ts#L506)
|
|
1222
1222
|
|
|
1223
1223
|
Get a schema by UID
|
|
1224
1224
|
|
|
@@ -1236,7 +1236,7 @@ Get a schema by UID
|
|
|
1236
1236
|
|
|
1237
1237
|
> **getSchemas**(`_options?`): `Promise`\<[`SchemaData`](#schemadata)[]\>
|
|
1238
1238
|
|
|
1239
|
-
Defined in: [sdk/eas/src/eas.ts:540](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1239
|
+
Defined in: [sdk/eas/src/eas.ts:540](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/eas.ts#L540)
|
|
1240
1240
|
|
|
1241
1241
|
Get all schemas with pagination
|
|
1242
1242
|
|
|
@@ -1258,7 +1258,7 @@ Consider using getSchema() for individual schema lookups.
|
|
|
1258
1258
|
|
|
1259
1259
|
> **getTimestamp**(`data`): `Promise`\<`bigint`\>
|
|
1260
1260
|
|
|
1261
|
-
Defined in: [sdk/eas/src/eas.ts:623](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1261
|
+
Defined in: [sdk/eas/src/eas.ts:623](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/eas.ts#L623)
|
|
1262
1262
|
|
|
1263
1263
|
Get the timestamp for specific data
|
|
1264
1264
|
|
|
@@ -1278,7 +1278,7 @@ The timestamp when the data was timestamped
|
|
|
1278
1278
|
|
|
1279
1279
|
> **isValidAttestation**(`uid`): `Promise`\<`boolean`\>
|
|
1280
1280
|
|
|
1281
|
-
Defined in: [sdk/eas/src/eas.ts:598](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1281
|
+
Defined in: [sdk/eas/src/eas.ts:598](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/eas.ts#L598)
|
|
1282
1282
|
|
|
1283
1283
|
Check if an attestation is valid
|
|
1284
1284
|
|
|
@@ -1296,7 +1296,7 @@ Check if an attestation is valid
|
|
|
1296
1296
|
|
|
1297
1297
|
> **multiAttest**(`requests`, `fromAddress`, `gasLimit?`): `Promise`\<[`TransactionResult`](#transactionresult)\>
|
|
1298
1298
|
|
|
1299
|
-
Defined in: [sdk/eas/src/eas.ts:386](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1299
|
+
Defined in: [sdk/eas/src/eas.ts:386](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/eas.ts#L386)
|
|
1300
1300
|
|
|
1301
1301
|
Create multiple attestations in a single transaction
|
|
1302
1302
|
|
|
@@ -1359,7 +1359,7 @@ console.log("Multiple attestations created:", multiAttestResult.hash);
|
|
|
1359
1359
|
|
|
1360
1360
|
> **registerSchema**(`request`, `fromAddress`, `gasLimit?`): `Promise`\<[`TransactionResult`](#transactionresult)\>
|
|
1361
1361
|
|
|
1362
|
-
Defined in: [sdk/eas/src/eas.ts:216](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1362
|
+
Defined in: [sdk/eas/src/eas.ts:216](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/eas.ts#L216)
|
|
1363
1363
|
|
|
1364
1364
|
Register a new schema in the EAS Schema Registry
|
|
1365
1365
|
|
|
@@ -1403,7 +1403,7 @@ console.log("Schema registered:", schemaResult.hash);
|
|
|
1403
1403
|
|
|
1404
1404
|
> **revoke**(`schemaUID`, `attestationUID`, `fromAddress`, `value?`, `gasLimit?`): `Promise`\<[`TransactionResult`](#transactionresult)\>
|
|
1405
1405
|
|
|
1406
|
-
Defined in: [sdk/eas/src/eas.ts:464](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1406
|
+
Defined in: [sdk/eas/src/eas.ts:464](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/eas.ts#L464)
|
|
1407
1407
|
|
|
1408
1408
|
Revoke an existing attestation
|
|
1409
1409
|
|
|
@@ -1447,7 +1447,7 @@ console.log("Attestation revoked:", revokeResult.hash);
|
|
|
1447
1447
|
|
|
1448
1448
|
#### AttestationData
|
|
1449
1449
|
|
|
1450
|
-
Defined in: [sdk/eas/src/schema.ts:63](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1450
|
+
Defined in: [sdk/eas/src/schema.ts:63](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L63)
|
|
1451
1451
|
|
|
1452
1452
|
Attestation data structure
|
|
1453
1453
|
|
|
@@ -1455,18 +1455,18 @@ Attestation data structure
|
|
|
1455
1455
|
|
|
1456
1456
|
| Property | Type | Description | Defined in |
|
|
1457
1457
|
| ------ | ------ | ------ | ------ |
|
|
1458
|
-
| <a id="data"></a> `data` | `` `0x${string}` `` | Encoded attestation data | [sdk/eas/src/schema.ts:73](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1459
|
-
| <a id="expirationtime"></a> `expirationTime` | `bigint` | Expiration time (0 for no expiration) | [sdk/eas/src/schema.ts:67](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1460
|
-
| <a id="recipient"></a> `recipient` | `` `0x${string}` `` | Recipient of the attestation | [sdk/eas/src/schema.ts:65](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1461
|
-
| <a id="refuid"></a> `refUID` | `` `0x${string}` `` | Reference UID (use ZERO_BYTES32 for no reference) | [sdk/eas/src/schema.ts:71](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1462
|
-
| <a id="revocable"></a> `revocable` | `boolean` | Whether this attestation can be revoked | [sdk/eas/src/schema.ts:69](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1463
|
-
| <a id="value"></a> `value` | `bigint` | Value sent with the attestation | [sdk/eas/src/schema.ts:75](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1458
|
+
| <a id="data"></a> `data` | `` `0x${string}` `` | Encoded attestation data | [sdk/eas/src/schema.ts:73](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L73) |
|
|
1459
|
+
| <a id="expirationtime"></a> `expirationTime` | `bigint` | Expiration time (0 for no expiration) | [sdk/eas/src/schema.ts:67](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L67) |
|
|
1460
|
+
| <a id="recipient"></a> `recipient` | `` `0x${string}` `` | Recipient of the attestation | [sdk/eas/src/schema.ts:65](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L65) |
|
|
1461
|
+
| <a id="refuid"></a> `refUID` | `` `0x${string}` `` | Reference UID (use ZERO_BYTES32 for no reference) | [sdk/eas/src/schema.ts:71](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L71) |
|
|
1462
|
+
| <a id="revocable"></a> `revocable` | `boolean` | Whether this attestation can be revoked | [sdk/eas/src/schema.ts:69](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L69) |
|
|
1463
|
+
| <a id="value"></a> `value` | `bigint` | Value sent with the attestation | [sdk/eas/src/schema.ts:75](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L75) |
|
|
1464
1464
|
|
|
1465
1465
|
***
|
|
1466
1466
|
|
|
1467
1467
|
#### AttestationInfo
|
|
1468
1468
|
|
|
1469
|
-
Defined in: [sdk/eas/src/schema.ts:115](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1469
|
+
Defined in: [sdk/eas/src/schema.ts:115](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L115)
|
|
1470
1470
|
|
|
1471
1471
|
Attestation information
|
|
1472
1472
|
|
|
@@ -1474,22 +1474,22 @@ Attestation information
|
|
|
1474
1474
|
|
|
1475
1475
|
| Property | Type | Description | Defined in |
|
|
1476
1476
|
| ------ | ------ | ------ | ------ |
|
|
1477
|
-
| <a id="attester"></a> `attester` | `` `0x${string}` `` | Address that created the attestation | [sdk/eas/src/schema.ts:121](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1478
|
-
| <a id="data-1"></a> `data` | `` `0x${string}` `` | Encoded attestation data | [sdk/eas/src/schema.ts:133](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1479
|
-
| <a id="expirationtime-1"></a> `expirationTime` | `bigint` | Expiration timestamp | [sdk/eas/src/schema.ts:127](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1480
|
-
| <a id="recipient-1"></a> `recipient` | `` `0x${string}` `` | Recipient of the attestation | [sdk/eas/src/schema.ts:123](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1481
|
-
| <a id="refuid-1"></a> `refUID` | `` `0x${string}` `` | Reference UID | [sdk/eas/src/schema.ts:131](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1482
|
-
| <a id="revocable-1"></a> `revocable` | `boolean` | Whether this attestation can be revoked | [sdk/eas/src/schema.ts:129](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1483
|
-
| <a id="schema"></a> `schema` | `` `0x${string}` `` | Schema UID | [sdk/eas/src/schema.ts:119](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1484
|
-
| <a id="time"></a> `time` | `bigint` | Creation timestamp | [sdk/eas/src/schema.ts:125](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1485
|
-
| <a id="uid"></a> `uid` | `` `0x${string}` `` | Attestation UID | [sdk/eas/src/schema.ts:117](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1486
|
-
| <a id="value-1"></a> `value` | `bigint` | Value sent with the attestation | [sdk/eas/src/schema.ts:135](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1477
|
+
| <a id="attester"></a> `attester` | `` `0x${string}` `` | Address that created the attestation | [sdk/eas/src/schema.ts:121](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L121) |
|
|
1478
|
+
| <a id="data-1"></a> `data` | `` `0x${string}` `` | Encoded attestation data | [sdk/eas/src/schema.ts:133](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L133) |
|
|
1479
|
+
| <a id="expirationtime-1"></a> `expirationTime` | `bigint` | Expiration timestamp | [sdk/eas/src/schema.ts:127](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L127) |
|
|
1480
|
+
| <a id="recipient-1"></a> `recipient` | `` `0x${string}` `` | Recipient of the attestation | [sdk/eas/src/schema.ts:123](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L123) |
|
|
1481
|
+
| <a id="refuid-1"></a> `refUID` | `` `0x${string}` `` | Reference UID | [sdk/eas/src/schema.ts:131](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L131) |
|
|
1482
|
+
| <a id="revocable-1"></a> `revocable` | `boolean` | Whether this attestation can be revoked | [sdk/eas/src/schema.ts:129](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L129) |
|
|
1483
|
+
| <a id="schema"></a> `schema` | `` `0x${string}` `` | Schema UID | [sdk/eas/src/schema.ts:119](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L119) |
|
|
1484
|
+
| <a id="time"></a> `time` | `bigint` | Creation timestamp | [sdk/eas/src/schema.ts:125](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L125) |
|
|
1485
|
+
| <a id="uid"></a> `uid` | `` `0x${string}` `` | Attestation UID | [sdk/eas/src/schema.ts:117](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L117) |
|
|
1486
|
+
| <a id="value-1"></a> `value` | `bigint` | Value sent with the attestation | [sdk/eas/src/schema.ts:135](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L135) |
|
|
1487
1487
|
|
|
1488
1488
|
***
|
|
1489
1489
|
|
|
1490
1490
|
#### AttestationRequest
|
|
1491
1491
|
|
|
1492
|
-
Defined in: [sdk/eas/src/schema.ts:81](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1492
|
+
Defined in: [sdk/eas/src/schema.ts:81](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L81)
|
|
1493
1493
|
|
|
1494
1494
|
Attestation request
|
|
1495
1495
|
|
|
@@ -1497,14 +1497,14 @@ Attestation request
|
|
|
1497
1497
|
|
|
1498
1498
|
| Property | Type | Description | Defined in |
|
|
1499
1499
|
| ------ | ------ | ------ | ------ |
|
|
1500
|
-
| <a id="data-2"></a> `data` | [`AttestationData`](#attestationdata) | Attestation data | [sdk/eas/src/schema.ts:85](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1501
|
-
| <a id="schema-1"></a> `schema` | `` `0x${string}` `` | Schema UID to attest against | [sdk/eas/src/schema.ts:83](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1500
|
+
| <a id="data-2"></a> `data` | [`AttestationData`](#attestationdata) | Attestation data | [sdk/eas/src/schema.ts:85](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L85) |
|
|
1501
|
+
| <a id="schema-1"></a> `schema` | `` `0x${string}` `` | Schema UID to attest against | [sdk/eas/src/schema.ts:83](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L83) |
|
|
1502
1502
|
|
|
1503
1503
|
***
|
|
1504
1504
|
|
|
1505
1505
|
#### DeploymentResult
|
|
1506
1506
|
|
|
1507
|
-
Defined in: [sdk/eas/src/schema.ts:167](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1507
|
+
Defined in: [sdk/eas/src/schema.ts:167](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L167)
|
|
1508
1508
|
|
|
1509
1509
|
Contract deployment result
|
|
1510
1510
|
|
|
@@ -1512,16 +1512,16 @@ Contract deployment result
|
|
|
1512
1512
|
|
|
1513
1513
|
| Property | Type | Description | Defined in |
|
|
1514
1514
|
| ------ | ------ | ------ | ------ |
|
|
1515
|
-
| <a id="easaddress"></a> `easAddress` | `` `0x${string}` `` | Deployed EAS contract address | [sdk/eas/src/schema.ts:169](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1516
|
-
| <a id="eastransactionhash"></a> `easTransactionHash?` | `` `0x${string}` `` | EAS deployment transaction hash (when address not immediately available) | [sdk/eas/src/schema.ts:173](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1517
|
-
| <a id="schemaregistryaddress"></a> `schemaRegistryAddress` | `` `0x${string}` `` | Deployed Schema Registry contract address | [sdk/eas/src/schema.ts:171](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1518
|
-
| <a id="schemaregistrytransactionhash"></a> `schemaRegistryTransactionHash?` | `` `0x${string}` `` | Schema Registry deployment transaction hash (when address not immediately available) | [sdk/eas/src/schema.ts:175](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1515
|
+
| <a id="easaddress"></a> `easAddress` | `` `0x${string}` `` | Deployed EAS contract address | [sdk/eas/src/schema.ts:169](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L169) |
|
|
1516
|
+
| <a id="eastransactionhash"></a> `easTransactionHash?` | `` `0x${string}` `` | EAS deployment transaction hash (when address not immediately available) | [sdk/eas/src/schema.ts:173](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L173) |
|
|
1517
|
+
| <a id="schemaregistryaddress"></a> `schemaRegistryAddress` | `` `0x${string}` `` | Deployed Schema Registry contract address | [sdk/eas/src/schema.ts:171](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L171) |
|
|
1518
|
+
| <a id="schemaregistrytransactionhash"></a> `schemaRegistryTransactionHash?` | `` `0x${string}` `` | Schema Registry deployment transaction hash (when address not immediately available) | [sdk/eas/src/schema.ts:175](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L175) |
|
|
1519
1519
|
|
|
1520
1520
|
***
|
|
1521
1521
|
|
|
1522
1522
|
#### GetAttestationsOptions
|
|
1523
1523
|
|
|
1524
|
-
Defined in: [sdk/eas/src/schema.ts:151](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1524
|
+
Defined in: [sdk/eas/src/schema.ts:151](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L151)
|
|
1525
1525
|
|
|
1526
1526
|
Options for retrieving attestations
|
|
1527
1527
|
|
|
@@ -1529,17 +1529,17 @@ Options for retrieving attestations
|
|
|
1529
1529
|
|
|
1530
1530
|
| Property | Type | Description | Defined in |
|
|
1531
1531
|
| ------ | ------ | ------ | ------ |
|
|
1532
|
-
| <a id="attester-1"></a> `attester?` | `` `0x${string}` `` | Filter by attester address | [sdk/eas/src/schema.ts:159](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1533
|
-
| <a id="limit"></a> `limit?` | `number` | Maximum number of attestations to return | [sdk/eas/src/schema.ts:153](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1534
|
-
| <a id="offset"></a> `offset?` | `number` | Number of attestations to skip | [sdk/eas/src/schema.ts:155](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1535
|
-
| <a id="recipient-2"></a> `recipient?` | `` `0x${string}` `` | Filter by recipient address | [sdk/eas/src/schema.ts:161](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1536
|
-
| <a id="schema-2"></a> `schema?` | `` `0x${string}` `` | Filter by schema UID | [sdk/eas/src/schema.ts:157](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1532
|
+
| <a id="attester-1"></a> `attester?` | `` `0x${string}` `` | Filter by attester address | [sdk/eas/src/schema.ts:159](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L159) |
|
|
1533
|
+
| <a id="limit"></a> `limit?` | `number` | Maximum number of attestations to return | [sdk/eas/src/schema.ts:153](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L153) |
|
|
1534
|
+
| <a id="offset"></a> `offset?` | `number` | Number of attestations to skip | [sdk/eas/src/schema.ts:155](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L155) |
|
|
1535
|
+
| <a id="recipient-2"></a> `recipient?` | `` `0x${string}` `` | Filter by recipient address | [sdk/eas/src/schema.ts:161](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L161) |
|
|
1536
|
+
| <a id="schema-2"></a> `schema?` | `` `0x${string}` `` | Filter by schema UID | [sdk/eas/src/schema.ts:157](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L157) |
|
|
1537
1537
|
|
|
1538
1538
|
***
|
|
1539
1539
|
|
|
1540
1540
|
#### GetSchemasOptions
|
|
1541
1541
|
|
|
1542
|
-
Defined in: [sdk/eas/src/schema.ts:141](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1542
|
+
Defined in: [sdk/eas/src/schema.ts:141](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L141)
|
|
1543
1543
|
|
|
1544
1544
|
Options for retrieving schemas
|
|
1545
1545
|
|
|
@@ -1547,14 +1547,14 @@ Options for retrieving schemas
|
|
|
1547
1547
|
|
|
1548
1548
|
| Property | Type | Description | Defined in |
|
|
1549
1549
|
| ------ | ------ | ------ | ------ |
|
|
1550
|
-
| <a id="limit-1"></a> `limit?` | `number` | Maximum number of schemas to return | [sdk/eas/src/schema.ts:143](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1551
|
-
| <a id="offset-1"></a> `offset?` | `number` | Number of schemas to skip | [sdk/eas/src/schema.ts:145](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1550
|
+
| <a id="limit-1"></a> `limit?` | `number` | Maximum number of schemas to return | [sdk/eas/src/schema.ts:143](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L143) |
|
|
1551
|
+
| <a id="offset-1"></a> `offset?` | `number` | Number of schemas to skip | [sdk/eas/src/schema.ts:145](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L145) |
|
|
1552
1552
|
|
|
1553
1553
|
***
|
|
1554
1554
|
|
|
1555
1555
|
#### SchemaData
|
|
1556
1556
|
|
|
1557
|
-
Defined in: [sdk/eas/src/schema.ts:101](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1557
|
+
Defined in: [sdk/eas/src/schema.ts:101](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L101)
|
|
1558
1558
|
|
|
1559
1559
|
Schema information
|
|
1560
1560
|
|
|
@@ -1562,16 +1562,16 @@ Schema information
|
|
|
1562
1562
|
|
|
1563
1563
|
| Property | Type | Description | Defined in |
|
|
1564
1564
|
| ------ | ------ | ------ | ------ |
|
|
1565
|
-
| <a id="resolver"></a> `resolver` | `` `0x${string}` `` | Resolver contract address | [sdk/eas/src/schema.ts:105](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1566
|
-
| <a id="revocable-2"></a> `revocable` | `boolean` | Whether attestations can be revoked | [sdk/eas/src/schema.ts:107](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1567
|
-
| <a id="schema-3"></a> `schema` | `string` | Schema string | [sdk/eas/src/schema.ts:109](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1568
|
-
| <a id="uid-1"></a> `uid` | `` `0x${string}` `` | Schema UID | [sdk/eas/src/schema.ts:103](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1565
|
+
| <a id="resolver"></a> `resolver` | `` `0x${string}` `` | Resolver contract address | [sdk/eas/src/schema.ts:105](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L105) |
|
|
1566
|
+
| <a id="revocable-2"></a> `revocable` | `boolean` | Whether attestations can be revoked | [sdk/eas/src/schema.ts:107](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L107) |
|
|
1567
|
+
| <a id="schema-3"></a> `schema` | `string` | Schema string | [sdk/eas/src/schema.ts:109](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L109) |
|
|
1568
|
+
| <a id="uid-1"></a> `uid` | `` `0x${string}` `` | Schema UID | [sdk/eas/src/schema.ts:103](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L103) |
|
|
1569
1569
|
|
|
1570
1570
|
***
|
|
1571
1571
|
|
|
1572
1572
|
#### SchemaField
|
|
1573
1573
|
|
|
1574
|
-
Defined in: [sdk/eas/src/schema.ts:32](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1574
|
+
Defined in: [sdk/eas/src/schema.ts:32](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L32)
|
|
1575
1575
|
|
|
1576
1576
|
Represents a single field in an EAS schema.
|
|
1577
1577
|
|
|
@@ -1579,15 +1579,15 @@ Represents a single field in an EAS schema.
|
|
|
1579
1579
|
|
|
1580
1580
|
| Property | Type | Description | Defined in |
|
|
1581
1581
|
| ------ | ------ | ------ | ------ |
|
|
1582
|
-
| <a id="description"></a> `description?` | `string` | Optional description of the field's purpose | [sdk/eas/src/schema.ts:38](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1583
|
-
| <a id="name"></a> `name` | `string` | The name of the field | [sdk/eas/src/schema.ts:34](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1584
|
-
| <a id="type"></a> `type` | `"string"` \| `"address"` \| `"bool"` \| `"bytes"` \| `"bytes32"` \| `"uint256"` \| `"int256"` \| `"uint8"` \| `"int8"` | The Solidity type of the field | [sdk/eas/src/schema.ts:36](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1582
|
+
| <a id="description"></a> `description?` | `string` | Optional description of the field's purpose | [sdk/eas/src/schema.ts:38](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L38) |
|
|
1583
|
+
| <a id="name"></a> `name` | `string` | The name of the field | [sdk/eas/src/schema.ts:34](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L34) |
|
|
1584
|
+
| <a id="type"></a> `type` | `"string"` \| `"address"` \| `"bool"` \| `"bytes"` \| `"bytes32"` \| `"uint256"` \| `"int256"` \| `"uint8"` \| `"int8"` | The Solidity type of the field | [sdk/eas/src/schema.ts:36](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L36) |
|
|
1585
1585
|
|
|
1586
1586
|
***
|
|
1587
1587
|
|
|
1588
1588
|
#### SchemaRequest
|
|
1589
1589
|
|
|
1590
|
-
Defined in: [sdk/eas/src/schema.ts:49](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1590
|
+
Defined in: [sdk/eas/src/schema.ts:49](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L49)
|
|
1591
1591
|
|
|
1592
1592
|
Schema registration request
|
|
1593
1593
|
|
|
@@ -1595,16 +1595,16 @@ Schema registration request
|
|
|
1595
1595
|
|
|
1596
1596
|
| Property | Type | Description | Defined in |
|
|
1597
1597
|
| ------ | ------ | ------ | ------ |
|
|
1598
|
-
| <a id="fields"></a> `fields?` | [`SchemaField`](#schemafield)[] | Schema fields (alternative to schema string) | [sdk/eas/src/schema.ts:51](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1599
|
-
| <a id="resolver-1"></a> `resolver` | `` `0x${string}` `` | Resolver contract address (use ZERO_ADDRESS for no resolver) | [sdk/eas/src/schema.ts:55](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1600
|
-
| <a id="revocable-3"></a> `revocable` | `boolean` | Whether attestations using this schema can be revoked | [sdk/eas/src/schema.ts:57](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1601
|
-
| <a id="schema-4"></a> `schema?` | `string` | Raw schema string (alternative to fields) | [sdk/eas/src/schema.ts:53](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1598
|
+
| <a id="fields"></a> `fields?` | [`SchemaField`](#schemafield)[] | Schema fields (alternative to schema string) | [sdk/eas/src/schema.ts:51](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L51) |
|
|
1599
|
+
| <a id="resolver-1"></a> `resolver` | `` `0x${string}` `` | Resolver contract address (use ZERO_ADDRESS for no resolver) | [sdk/eas/src/schema.ts:55](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L55) |
|
|
1600
|
+
| <a id="revocable-3"></a> `revocable` | `boolean` | Whether attestations using this schema can be revoked | [sdk/eas/src/schema.ts:57](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L57) |
|
|
1601
|
+
| <a id="schema-4"></a> `schema?` | `string` | Raw schema string (alternative to fields) | [sdk/eas/src/schema.ts:53](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L53) |
|
|
1602
1602
|
|
|
1603
1603
|
***
|
|
1604
1604
|
|
|
1605
1605
|
#### TransactionResult
|
|
1606
1606
|
|
|
1607
|
-
Defined in: [sdk/eas/src/schema.ts:91](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1607
|
+
Defined in: [sdk/eas/src/schema.ts:91](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L91)
|
|
1608
1608
|
|
|
1609
1609
|
Transaction result
|
|
1610
1610
|
|
|
@@ -1612,8 +1612,8 @@ Transaction result
|
|
|
1612
1612
|
|
|
1613
1613
|
| Property | Type | Description | Defined in |
|
|
1614
1614
|
| ------ | ------ | ------ | ------ |
|
|
1615
|
-
| <a id="hash"></a> `hash` | `` `0x${string}` `` | Transaction hash | [sdk/eas/src/schema.ts:93](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1616
|
-
| <a id="success"></a> `success` | `boolean` | Whether the transaction was successful | [sdk/eas/src/schema.ts:95](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1615
|
+
| <a id="hash"></a> `hash` | `` `0x${string}` `` | Transaction hash | [sdk/eas/src/schema.ts:93](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L93) |
|
|
1616
|
+
| <a id="success"></a> `success` | `boolean` | Whether the transaction was successful | [sdk/eas/src/schema.ts:95](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L95) |
|
|
1617
1617
|
|
|
1618
1618
|
### Type Aliases
|
|
1619
1619
|
|
|
@@ -1621,7 +1621,7 @@ Transaction result
|
|
|
1621
1621
|
|
|
1622
1622
|
> **EASClientOptions** = `object`
|
|
1623
1623
|
|
|
1624
|
-
Defined in: [sdk/eas/src/schema.ts:44](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1624
|
+
Defined in: [sdk/eas/src/schema.ts:44](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L44)
|
|
1625
1625
|
|
|
1626
1626
|
Configuration options for the EAS client
|
|
1627
1627
|
|
|
@@ -1629,11 +1629,11 @@ Configuration options for the EAS client
|
|
|
1629
1629
|
|
|
1630
1630
|
| Name | Type | Default value | Description | Defined in |
|
|
1631
1631
|
| ------ | ------ | ------ | ------ | ------ |
|
|
1632
|
-
| <a id="accesstoken"></a> `accessToken?` | `string` | - | The application access token | [sdk/eas/src/utils/validation.ts:21](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1633
|
-
| <a id="debug"></a> `debug?` | `boolean` | - | Whether to enable debug mode | [sdk/eas/src/utils/validation.ts:33](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1634
|
-
| <a id="eascontractaddress"></a> `easContractAddress?` | `` `0x${string}` `` | - | The EAS contract address | [sdk/eas/src/utils/validation.ts:25](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1635
|
-
| <a id="instance"></a> `instance` | `string` | `UrlSchema` | The EAS instance URL | [sdk/eas/src/utils/validation.ts:17](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1636
|
-
| <a id="schemaregistrycontractaddress"></a> `schemaRegistryContractAddress?` | `` `0x${string}` `` | - | The schema registry contract address | [sdk/eas/src/utils/validation.ts:29](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1632
|
+
| <a id="accesstoken"></a> `accessToken?` | `string` | - | The application access token | [sdk/eas/src/utils/validation.ts:21](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/utils/validation.ts#L21) |
|
|
1633
|
+
| <a id="debug"></a> `debug?` | `boolean` | - | Whether to enable debug mode | [sdk/eas/src/utils/validation.ts:33](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/utils/validation.ts#L33) |
|
|
1634
|
+
| <a id="eascontractaddress"></a> `easContractAddress?` | `` `0x${string}` `` | - | The EAS contract address | [sdk/eas/src/utils/validation.ts:25](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/utils/validation.ts#L25) |
|
|
1635
|
+
| <a id="instance"></a> `instance` | `string` | `UrlSchema` | The EAS instance URL | [sdk/eas/src/utils/validation.ts:17](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/utils/validation.ts#L17) |
|
|
1636
|
+
| <a id="schemaregistrycontractaddress"></a> `schemaRegistryContractAddress?` | `` `0x${string}` `` | - | The schema registry contract address | [sdk/eas/src/utils/validation.ts:29](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/utils/validation.ts#L29) |
|
|
1637
1637
|
|
|
1638
1638
|
### Variables
|
|
1639
1639
|
|
|
@@ -1641,7 +1641,7 @@ Configuration options for the EAS client
|
|
|
1641
1641
|
|
|
1642
1642
|
> `const` **EAS\_FIELD\_TYPES**: `object`
|
|
1643
1643
|
|
|
1644
|
-
Defined in: [sdk/eas/src/schema.ts:15](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1644
|
+
Defined in: [sdk/eas/src/schema.ts:15](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L15)
|
|
1645
1645
|
|
|
1646
1646
|
Supported field types for EAS schema fields.
|
|
1647
1647
|
Maps to the Solidity types that can be used in EAS schemas.
|
|
@@ -1650,15 +1650,15 @@ Maps to the Solidity types that can be used in EAS schemas.
|
|
|
1650
1650
|
|
|
1651
1651
|
| Name | Type | Default value | Defined in |
|
|
1652
1652
|
| ------ | ------ | ------ | ------ |
|
|
1653
|
-
| <a id="address"></a> `address` | `"address"` | `"address"` | [sdk/eas/src/schema.ts:17](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1654
|
-
| <a id="bool"></a> `bool` | `"bool"` | `"bool"` | [sdk/eas/src/schema.ts:18](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1655
|
-
| <a id="bytes"></a> `bytes` | `"bytes"` | `"bytes"` | [sdk/eas/src/schema.ts:19](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1656
|
-
| <a id="bytes32"></a> `bytes32` | `"bytes32"` | `"bytes32"` | [sdk/eas/src/schema.ts:20](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1657
|
-
| <a id="int256"></a> `int256` | `"int256"` | `"int256"` | [sdk/eas/src/schema.ts:22](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1658
|
-
| <a id="int8"></a> `int8` | `"int8"` | `"int8"` | [sdk/eas/src/schema.ts:24](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1659
|
-
| <a id="string"></a> `string` | `"string"` | `"string"` | [sdk/eas/src/schema.ts:16](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1660
|
-
| <a id="uint256"></a> `uint256` | `"uint256"` | `"uint256"` | [sdk/eas/src/schema.ts:21](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1661
|
-
| <a id="uint8"></a> `uint8` | `"uint8"` | `"uint8"` | [sdk/eas/src/schema.ts:23](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1653
|
+
| <a id="address"></a> `address` | `"address"` | `"address"` | [sdk/eas/src/schema.ts:17](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L17) |
|
|
1654
|
+
| <a id="bool"></a> `bool` | `"bool"` | `"bool"` | [sdk/eas/src/schema.ts:18](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L18) |
|
|
1655
|
+
| <a id="bytes"></a> `bytes` | `"bytes"` | `"bytes"` | [sdk/eas/src/schema.ts:19](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L19) |
|
|
1656
|
+
| <a id="bytes32"></a> `bytes32` | `"bytes32"` | `"bytes32"` | [sdk/eas/src/schema.ts:20](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L20) |
|
|
1657
|
+
| <a id="int256"></a> `int256` | `"int256"` | `"int256"` | [sdk/eas/src/schema.ts:22](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L22) |
|
|
1658
|
+
| <a id="int8"></a> `int8` | `"int8"` | `"int8"` | [sdk/eas/src/schema.ts:24](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L24) |
|
|
1659
|
+
| <a id="string"></a> `string` | `"string"` | `"string"` | [sdk/eas/src/schema.ts:16](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L16) |
|
|
1660
|
+
| <a id="uint256"></a> `uint256` | `"uint256"` | `"uint256"` | [sdk/eas/src/schema.ts:21](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L21) |
|
|
1661
|
+
| <a id="uint8"></a> `uint8` | `"uint8"` | `"uint8"` | [sdk/eas/src/schema.ts:23](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L23) |
|
|
1662
1662
|
|
|
1663
1663
|
***
|
|
1664
1664
|
|
|
@@ -1666,7 +1666,7 @@ Maps to the Solidity types that can be used in EAS schemas.
|
|
|
1666
1666
|
|
|
1667
1667
|
> `const` **EASClientOptionsSchema**: `ZodObject`\<[`EASClientOptions`](#easclientoptions)\>
|
|
1668
1668
|
|
|
1669
|
-
Defined in: [sdk/eas/src/utils/validation.ts:13](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1669
|
+
Defined in: [sdk/eas/src/utils/validation.ts:13](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/utils/validation.ts#L13)
|
|
1670
1670
|
|
|
1671
1671
|
Zod schema for EASClientOptions.
|
|
1672
1672
|
|
|
@@ -1676,7 +1676,7 @@ Zod schema for EASClientOptions.
|
|
|
1676
1676
|
|
|
1677
1677
|
> `const` **ZERO\_ADDRESS**: `"0x0000000000000000000000000000000000000000"` = `zeroAddress`
|
|
1678
1678
|
|
|
1679
|
-
Defined in: [sdk/eas/src/schema.ts:8](https://github.com/settlemint/sdk/blob/v2.6.
|
|
1679
|
+
Defined in: [sdk/eas/src/schema.ts:8](https://github.com/settlemint/sdk/blob/v2.6.11/sdk/eas/src/schema.ts#L8)
|
|
1680
1680
|
|
|
1681
1681
|
Common address constants
|
|
1682
1682
|
|
package/dist/eas.cjs
CHANGED
|
@@ -1,37 +1,9 @@
|
|
|
1
1
|
/* SettleMint EAS SDK - Portal Optimized */
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
6
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
7
|
-
var __getProtoOf = Object.getPrototypeOf;
|
|
8
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
9
|
-
var __copyProps = (to, from, except, desc) => {
|
|
10
|
-
if (from && typeof from === "object" || typeof from === "function") for (var keys = __getOwnPropNames(from), i = 0, n = keys.length, key; i < n; i++) {
|
|
11
|
-
key = keys[i];
|
|
12
|
-
if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
13
|
-
get: ((k) => from[k]).bind(null, key),
|
|
14
|
-
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
15
|
-
});
|
|
16
|
-
}
|
|
17
|
-
return to;
|
|
18
|
-
};
|
|
19
|
-
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
|
|
20
|
-
value: mod,
|
|
21
|
-
enumerable: true
|
|
22
|
-
}) : target, mod));
|
|
23
|
-
|
|
24
|
-
//#endregion
|
|
25
|
-
let __settlemint_sdk_portal = require("@settlemint/sdk-portal");
|
|
26
|
-
__settlemint_sdk_portal = __toESM(__settlemint_sdk_portal);
|
|
27
|
-
let __settlemint_sdk_utils_logging = require("@settlemint/sdk-utils/logging");
|
|
28
|
-
__settlemint_sdk_utils_logging = __toESM(__settlemint_sdk_utils_logging);
|
|
29
|
-
let __settlemint_sdk_utils_validation = require("@settlemint/sdk-utils/validation");
|
|
30
|
-
__settlemint_sdk_utils_validation = __toESM(__settlemint_sdk_utils_validation);
|
|
2
|
+
let _settlemint_sdk_portal = require("@settlemint/sdk-portal");
|
|
3
|
+
let _settlemint_sdk_utils_logging = require("@settlemint/sdk-utils/logging");
|
|
4
|
+
let _settlemint_sdk_utils_validation = require("@settlemint/sdk-utils/validation");
|
|
31
5
|
let viem = require("viem");
|
|
32
|
-
viem = __toESM(viem);
|
|
33
6
|
let zod = require("zod");
|
|
34
|
-
zod = __toESM(zod);
|
|
35
7
|
|
|
36
8
|
//#region src/portal/operations.ts
|
|
37
9
|
const GraphQLOperations = {
|
|
@@ -156,8 +128,8 @@ const ethAddressSchema = zod.z.custom((val) => typeof val === "string" && (0, vi
|
|
|
156
128
|
* Zod schema for EASClientOptions.
|
|
157
129
|
*/
|
|
158
130
|
const EASClientOptionsSchema = zod.z.object({
|
|
159
|
-
instance:
|
|
160
|
-
accessToken:
|
|
131
|
+
instance: _settlemint_sdk_utils_validation.UrlSchema,
|
|
132
|
+
accessToken: _settlemint_sdk_utils_validation.ApplicationAccessTokenSchema.optional(),
|
|
161
133
|
easContractAddress: ethAddressSchema.optional(),
|
|
162
134
|
schemaRegistryContractAddress: ethAddressSchema.optional(),
|
|
163
135
|
debug: zod.z.boolean().optional()
|
|
@@ -165,7 +137,7 @@ const EASClientOptionsSchema = zod.z.object({
|
|
|
165
137
|
|
|
166
138
|
//#endregion
|
|
167
139
|
//#region src/eas.ts
|
|
168
|
-
const LOGGER = (0,
|
|
140
|
+
const LOGGER = (0, _settlemint_sdk_utils_logging.createLogger)();
|
|
169
141
|
const DEFAULT_GAS_LIMIT = "0x3d0900";
|
|
170
142
|
/**
|
|
171
143
|
* Main EAS client class for interacting with Ethereum Attestation Service via Portal
|
|
@@ -195,11 +167,11 @@ var EASClient = class {
|
|
|
195
167
|
* @param options - Configuration options for the EAS client
|
|
196
168
|
*/
|
|
197
169
|
constructor(options) {
|
|
198
|
-
this.options = (0,
|
|
199
|
-
const { client: portalClient, graphql: portalGraphql } = (0,
|
|
170
|
+
this.options = (0, _settlemint_sdk_utils_validation.validate)(EASClientOptionsSchema, options);
|
|
171
|
+
const { client: portalClient, graphql: portalGraphql } = (0, _settlemint_sdk_portal.createPortalClient)({
|
|
200
172
|
instance: this.options.instance,
|
|
201
173
|
accessToken: this.options.accessToken
|
|
202
|
-
}, { fetch: (0,
|
|
174
|
+
}, { fetch: (0, _settlemint_sdk_utils_logging.requestLogger)(LOGGER, "portal", fetch) });
|
|
203
175
|
this.portalClient = portalClient;
|
|
204
176
|
this.portalGraphql = portalGraphql;
|
|
205
177
|
}
|
|
@@ -243,7 +215,7 @@ var EASClient = class {
|
|
|
243
215
|
throw new Error("Schema Registry deployment failed - no transaction hash returned");
|
|
244
216
|
}
|
|
245
217
|
const schemaRegistryTxHash = schemaRegistryResponse.DeployContractEASSchemaRegistry.transactionHash;
|
|
246
|
-
const schemaRegistryTransaction = await (0,
|
|
218
|
+
const schemaRegistryTransaction = await (0, _settlemint_sdk_portal.waitForTransactionReceipt)(schemaRegistryTxHash, {
|
|
247
219
|
portalGraphqlEndpoint: this.options.instance,
|
|
248
220
|
accessToken: this.options.accessToken,
|
|
249
221
|
timeout: 6e4
|
|
@@ -264,7 +236,7 @@ var EASClient = class {
|
|
|
264
236
|
throw new Error("EAS deployment failed - no transaction hash returned");
|
|
265
237
|
}
|
|
266
238
|
const easTxHash = easResponse.DeployContractEAS.transactionHash;
|
|
267
|
-
const easTransaction = await (0,
|
|
239
|
+
const easTransaction = await (0, _settlemint_sdk_portal.waitForTransactionReceipt)(easTxHash, {
|
|
268
240
|
portalGraphqlEndpoint: this.options.instance,
|
|
269
241
|
accessToken: this.options.accessToken,
|
|
270
242
|
timeout: 6e4
|
package/dist/eas.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eas.cjs","names":["zeroAddress","z","UrlSchema","ApplicationAccessTokenSchema"],"sources":["../src/portal/operations.ts","../src/schema.ts","../src/utils/validation.ts","../src/eas.ts"],"sourcesContent":["import type { PortalClient } from \"./portal-client.js\";\n\nexport const GraphQLOperations = {\n mutations: {\n deploySchemaRegistry: (graphql: PortalClient[\"graphql\"]) =>\n graphql(`\n mutation DeployContractEASSchemaRegistry(\n $from: String!\n $constructorArguments: DeployContractEASSchemaRegistryInput!\n $gasLimit: String!\n ) {\n DeployContractEASSchemaRegistry(from: $from, constructorArguments: $constructorArguments, gasLimit: $gasLimit) {\n transactionHash\n }\n }`),\n\n deployEAS: (graphql: PortalClient[\"graphql\"]) =>\n graphql(`\n mutation DeployContractEAS($from: String!, $constructorArguments: DeployContractEASInput!, $gasLimit: String!) {\n DeployContractEAS(from: $from, constructorArguments: $constructorArguments, gasLimit: $gasLimit) {\n transactionHash\n }\n }`),\n\n registerSchema: (graphql: PortalClient[\"graphql\"]) =>\n graphql(`\n mutation EASSchemaRegistryRegister(\n $address: String!\n $from: String!\n $input: EASSchemaRegistryRegisterInput!\n $gasLimit: String!\n ) {\n EASSchemaRegistryRegister(address: $address, from: $from, input: $input, gasLimit: $gasLimit) {\n transactionHash\n }\n }`),\n\n attest: (graphql: PortalClient[\"graphql\"]) =>\n graphql(`\n mutation EASAttest($address: String!, $from: String!, $input: EASAttestInput!, $gasLimit: String!) {\n EASAttest(address: $address, from: $from, input: $input, gasLimit: $gasLimit) {\n transactionHash\n }\n }`),\n\n multiAttest: (graphql: PortalClient[\"graphql\"]) =>\n graphql(`\n mutation EASMultiAttest($address: String!, $from: String!, $input: EASMultiAttestInput!, $gasLimit: String!) {\n EASMultiAttest(address: $address, from: $from, input: $input, gasLimit: $gasLimit) {\n transactionHash\n }\n }`),\n\n revoke: (graphql: PortalClient[\"graphql\"]) =>\n graphql(`\n mutation EASRevoke($address: String!, $from: String!, $input: EASRevokeInput!, $gasLimit: String!) {\n EASRevoke(address: $address, from: $from, input: $input, gasLimit: $gasLimit) {\n transactionHash\n }\n }`),\n },\n\n queries: {\n getSchema: (graphql: PortalClient[\"graphql\"]) =>\n graphql(`\n query EASSchemaRegistryGetSchema($address: String!, $uid: String!) {\n EASSchemaRegistry(address: $address) {\n getSchema(uid: $uid) {\n uid\n resolver\n revocable\n schema\n }\n }\n }`),\n\n getAttestation: (graphql: PortalClient[\"graphql\"]) =>\n graphql(`\n query EASGetAttestation($address: String!, $uid: String!) {\n EAS(address: $address) {\n getAttestation(uid: $uid) {\n uid\n schema\n attester\n recipient\n time\n expirationTime\n revocable\n refUID\n data\n revocationTime\n }\n }\n }`),\n\n isAttestationValid: (graphql: PortalClient[\"graphql\"]) =>\n graphql(`\n query EASIsAttestationValid($address: String!, $uid: String!) {\n EAS(address: $address) {\n isAttestationValid(uid: $uid)\n }\n }`),\n\n getTimestamp: (graphql: PortalClient[\"graphql\"]) =>\n graphql(`\n query EASGetTimestamp($address: String!, $data: String!) {\n EAS(address: $address) {\n getTimestamp(data: $data)\n }\n }`),\n },\n};\n","import { type Address, type Hex, zeroAddress } from \"viem\";\nimport type { z } from \"zod\";\nimport type { EASClientOptionsSchema } from \"./utils/validation.js\";\n\n/**\n * Common address constants\n */\nexport const ZERO_ADDRESS = zeroAddress;\nexport const ZERO_BYTES32 = \"0x0000000000000000000000000000000000000000000000000000000000000000\" as Hex;\n\n/**\n * Supported field types for EAS schema fields.\n * Maps to the Solidity types that can be used in EAS schemas.\n */\nexport const EAS_FIELD_TYPES = {\n string: \"string\",\n address: \"address\",\n bool: \"bool\",\n bytes: \"bytes\",\n bytes32: \"bytes32\",\n uint256: \"uint256\",\n int256: \"int256\",\n uint8: \"uint8\",\n int8: \"int8\",\n} as const;\n\nexport type EASFieldType = keyof typeof EAS_FIELD_TYPES;\n\n/**\n * Represents a single field in an EAS schema.\n */\nexport interface SchemaField {\n /** The name of the field */\n name: string;\n /** The Solidity type of the field */\n type: EASFieldType;\n /** Optional description of the field's purpose */\n description?: string;\n}\n\n/**\n * Configuration options for the EAS client\n */\nexport type EASClientOptions = z.infer<typeof EASClientOptionsSchema>;\n\n/**\n * Schema registration request\n */\nexport interface SchemaRequest {\n /** Schema fields (alternative to schema string) */\n fields?: SchemaField[];\n /** Raw schema string (alternative to fields) */\n schema?: string;\n /** Resolver contract address (use ZERO_ADDRESS for no resolver) */\n resolver: Address;\n /** Whether attestations using this schema can be revoked */\n revocable: boolean;\n}\n\n/**\n * Attestation data structure\n */\nexport interface AttestationData {\n /** Recipient of the attestation */\n recipient: Address;\n /** Expiration time (0 for no expiration) */\n expirationTime: bigint;\n /** Whether this attestation can be revoked */\n revocable: boolean;\n /** Reference UID (use ZERO_BYTES32 for no reference) */\n refUID: Hex;\n /** Encoded attestation data */\n data: Hex;\n /** Value sent with the attestation */\n value: bigint;\n}\n\n/**\n * Attestation request\n */\nexport interface AttestationRequest {\n /** Schema UID to attest against */\n schema: Hex;\n /** Attestation data */\n data: AttestationData;\n}\n\n/**\n * Transaction result\n */\nexport interface TransactionResult {\n /** Transaction hash */\n hash: Hex;\n /** Whether the transaction was successful */\n success: boolean;\n}\n\n/**\n * Schema information\n */\nexport interface SchemaData {\n /** Schema UID */\n uid: Hex;\n /** Resolver contract address */\n resolver: Address;\n /** Whether attestations can be revoked */\n revocable: boolean;\n /** Schema string */\n schema: string;\n}\n\n/**\n * Attestation information\n */\nexport interface AttestationInfo {\n /** Attestation UID */\n uid: Hex;\n /** Schema UID */\n schema: Hex;\n /** Address that created the attestation */\n attester: Address;\n /** Recipient of the attestation */\n recipient: Address;\n /** Creation timestamp */\n time: bigint;\n /** Expiration timestamp */\n expirationTime: bigint;\n /** Whether this attestation can be revoked */\n revocable: boolean;\n /** Reference UID */\n refUID: Hex;\n /** Encoded attestation data */\n data: Hex;\n /** Value sent with the attestation */\n value: bigint;\n}\n\n/**\n * Options for retrieving schemas\n */\nexport interface GetSchemasOptions {\n /** Maximum number of schemas to return */\n limit?: number;\n /** Number of schemas to skip */\n offset?: number;\n}\n\n/**\n * Options for retrieving attestations\n */\nexport interface GetAttestationsOptions {\n /** Maximum number of attestations to return */\n limit?: number;\n /** Number of attestations to skip */\n offset?: number;\n /** Filter by schema UID */\n schema?: Hex;\n /** Filter by attester address */\n attester?: Address;\n /** Filter by recipient address */\n recipient?: Address;\n}\n\n/**\n * Contract deployment result\n */\nexport interface DeploymentResult {\n /** Deployed EAS contract address */\n easAddress: Address;\n /** Deployed Schema Registry contract address */\n schemaRegistryAddress: Address;\n /** EAS deployment transaction hash (when address not immediately available) */\n easTransactionHash?: Hex;\n /** Schema Registry deployment transaction hash (when address not immediately available) */\n schemaRegistryTransactionHash?: Hex;\n}\n\n/**\n * @deprecated Use SchemaRequest instead\n * @internal\n */\nexport interface RegisterSchemaOptions extends SchemaRequest {}\n","import { ApplicationAccessTokenSchema, UrlSchema } from \"@settlemint/sdk-utils/validation\";\nimport { type Address, isAddress } from \"viem\";\nimport { z } from \"zod\";\n\nconst ethAddressSchema = z.custom<Address>(\n (val) => typeof val === \"string\" && isAddress(val),\n \"Invalid Ethereum address\",\n);\n\n/**\n * Zod schema for EASClientOptions.\n */\nexport const EASClientOptionsSchema = z.object({\n /**\n * The EAS instance URL\n */\n instance: UrlSchema,\n /**\n * The application access token\n */\n accessToken: ApplicationAccessTokenSchema.optional(),\n /**\n * The EAS contract address\n */\n easContractAddress: ethAddressSchema.optional(),\n /**\n * The schema registry contract address\n */\n schemaRegistryContractAddress: ethAddressSchema.optional(),\n /**\n * Whether to enable debug mode\n */\n debug: z.boolean().optional(),\n});\n","import { createPortalClient, waitForTransactionReceipt } from \"@settlemint/sdk-portal\";\nimport { createLogger, requestLogger } from \"@settlemint/sdk-utils/logging\";\nimport { validate } from \"@settlemint/sdk-utils/validation\";\nimport type { Address, Hex } from \"viem\";\nimport { GraphQLOperations } from \"./portal/operations.js\";\nimport type { PortalClient } from \"./portal/portal-client.js\";\nimport type { introspection } from \"./portal/portal-env.d.ts\";\nimport {\n type AttestationInfo,\n type AttestationRequest,\n type DeploymentResult,\n type EASClientOptions,\n type GetAttestationsOptions,\n type GetSchemasOptions,\n type SchemaData,\n type SchemaField,\n type SchemaRequest,\n type TransactionResult,\n ZERO_ADDRESS,\n} from \"./schema.js\";\nimport { EASClientOptionsSchema } from \"./utils/validation.js\";\n\nconst LOGGER = createLogger();\n\nconst DEFAULT_GAS_LIMIT = \"0x3d0900\";\n\n/**\n * Main EAS client class for interacting with Ethereum Attestation Service via Portal\n *\n * @example\n * ```typescript\n * import { createEASClient } from \"@settlemint/sdk-eas\";\n *\n * const easClient = createEASClient({\n * instance: \"https://your-portal-instance.settlemint.com\",\n * accessToken: \"your-access-token\"\n * });\n *\n * // Deploy EAS contracts\n * const deployment = await easClient.deploy(\"0x1234...deployer-address\");\n * console.log(\"EAS deployed at:\", deployment.easAddress);\n * ```\n */\nexport class EASClient {\n private readonly options: EASClientOptions;\n private readonly portalClient: PortalClient[\"client\"];\n private readonly portalGraphql: PortalClient[\"graphql\"];\n private deployedAddresses?: DeploymentResult;\n\n /**\n * Create a new EAS client instance\n *\n * @param options - Configuration options for the EAS client\n */\n constructor(options: EASClientOptions) {\n this.options = validate(EASClientOptionsSchema, options);\n\n const { client: portalClient, graphql: portalGraphql } = createPortalClient<{\n introspection: introspection;\n disableMasking: true;\n scalars: {\n // Change unknown to the type you are using to store metadata\n JSON: unknown;\n };\n }>(\n {\n instance: this.options.instance,\n accessToken: this.options.accessToken,\n },\n {\n fetch: requestLogger(LOGGER, \"portal\", fetch) as typeof fetch,\n },\n );\n\n this.portalClient = portalClient;\n this.portalGraphql = portalGraphql;\n }\n\n /**\n * Deploy EAS contracts via Portal\n *\n * @param deployerAddress - The address that will deploy the contracts\n * @param forwarderAddress - Optional trusted forwarder address (defaults to zero address)\n * @param gasLimit - Optional gas limit for deployment transactions (defaults to \"0x7a1200\")\n * @returns Promise resolving to deployment result with contract addresses and transaction hashes\n *\n * @example\n * ```typescript\n * import { createEASClient } from \"@settlemint/sdk-eas\";\n *\n * const easClient = createEASClient({\n * instance: \"https://your-portal-instance.settlemint.com\",\n * accessToken: \"your-access-token\"\n * });\n *\n * const deployment = await easClient.deploy(\n * \"0x1234567890123456789012345678901234567890\", // deployer address\n * \"0x0000000000000000000000000000000000000000\", // forwarder (optional)\n * \"0x7a1200\" // gas limit (optional)\n * );\n *\n * console.log(\"Schema Registry:\", deployment.schemaRegistryAddress);\n * console.log(\"EAS Contract:\", deployment.easAddress);\n * ```\n */\n public async deploy(\n deployerAddress: Address,\n forwarderAddress?: Address,\n gasLimit?: string,\n ): Promise<DeploymentResult> {\n const defaultForwarder = forwarderAddress || ZERO_ADDRESS;\n const defaultGasLimit = gasLimit || \"0x7a1200\";\n\n try {\n // Deploy Schema Registry first\n const schemaRegistryResponse = await this.portalClient.request(\n GraphQLOperations.mutations.deploySchemaRegistry(this.portalGraphql),\n {\n from: deployerAddress,\n constructorArguments: {\n forwarder: defaultForwarder,\n },\n gasLimit: defaultGasLimit,\n },\n );\n\n if (!schemaRegistryResponse.DeployContractEASSchemaRegistry?.transactionHash) {\n throw new Error(\"Schema Registry deployment failed - no transaction hash returned\");\n }\n\n const schemaRegistryTxHash = schemaRegistryResponse.DeployContractEASSchemaRegistry.transactionHash;\n\n // Wait for Schema Registry deployment and get contract address\n const schemaRegistryTransaction = await waitForTransactionReceipt(schemaRegistryTxHash as Hex, {\n portalGraphqlEndpoint: this.options.instance,\n accessToken: this.options.accessToken,\n timeout: 60_000,\n });\n\n if (!schemaRegistryTransaction?.receipt?.contractAddress) {\n throw new Error(\"Schema Registry deployment failed - could not get contract address from transaction receipt.\");\n }\n\n const schemaRegistryAddress = schemaRegistryTransaction.receipt.contractAddress;\n\n // Deploy EAS contract with correct Schema Registry address\n const easResponse = await this.portalClient.request(GraphQLOperations.mutations.deployEAS(this.portalGraphql), {\n from: deployerAddress,\n constructorArguments: {\n registry: schemaRegistryAddress,\n forwarder: defaultForwarder,\n },\n gasLimit: defaultGasLimit,\n });\n if (!easResponse.DeployContractEAS?.transactionHash) {\n throw new Error(\"EAS deployment failed - no transaction hash returned\");\n }\n\n const easTxHash = easResponse.DeployContractEAS.transactionHash as Hex;\n\n // Wait for EAS deployment and get contract address\n const easTransaction = await waitForTransactionReceipt(easTxHash, {\n portalGraphqlEndpoint: this.options.instance,\n accessToken: this.options.accessToken,\n timeout: 60_000,\n });\n\n if (!easTransaction?.receipt?.contractAddress) {\n throw new Error(\"EAS deployment failed - could not get contract address from transaction receipt.\");\n }\n const easAddress = easTransaction.receipt.contractAddress;\n\n this.deployedAddresses = {\n easAddress,\n schemaRegistryAddress,\n easTransactionHash: easTxHash as Hex,\n schemaRegistryTransactionHash: schemaRegistryTxHash as Hex,\n };\n\n return this.deployedAddresses;\n } catch (err) {\n const error = err as Error;\n throw new Error(`Failed to deploy EAS contracts: ${error.message}`);\n }\n }\n\n /**\n * Register a new schema in the EAS Schema Registry\n *\n * @param request - Schema registration request containing schema definition\n * @param fromAddress - Address that will register the schema\n * @param gasLimit - Optional gas limit for the transaction (defaults to \"0x3d0900\")\n * @returns Promise resolving to transaction result\n *\n * @example\n * ```typescript\n * import { createEASClient } from \"@settlemint/sdk-eas\";\n *\n * const easClient = createEASClient({\n * instance: \"https://your-portal-instance.settlemint.com\",\n * accessToken: \"your-access-token\"\n * });\n *\n * const schemaResult = await easClient.registerSchema(\n * {\n * schema: \"uint256 eventId, uint8 voteIndex\",\n * resolver: \"0x0000000000000000000000000000000000000000\",\n * revocable: true\n * },\n * \"0x1234567890123456789012345678901234567890\" // from address\n * );\n *\n * console.log(\"Schema registered:\", schemaResult.hash);\n * ```\n */\n public async registerSchema(\n request: SchemaRequest,\n fromAddress: Address,\n gasLimit?: string,\n ): Promise<TransactionResult> {\n const schemaRegistryAddress = this.getSchemaRegistryAddress();\n\n let schemaString = request.schema;\n if (request.fields && !schemaString) {\n schemaString = this.buildSchemaString(request.fields);\n }\n\n if (!schemaString) {\n throw new Error(\"Schema string is required. Provide either 'schema' or 'fields'.\");\n }\n\n try {\n const response = await this.portalClient.request(GraphQLOperations.mutations.registerSchema(this.portalGraphql), {\n address: schemaRegistryAddress,\n from: fromAddress,\n input: {\n schema: schemaString,\n resolver: request.resolver,\n revocable: request.revocable,\n },\n gasLimit: gasLimit || DEFAULT_GAS_LIMIT,\n });\n\n const transactionHash = response.EASSchemaRegistryRegister?.transactionHash;\n\n if (!transactionHash) {\n throw new Error(\"No transaction hash returned from Portal\");\n }\n\n return {\n hash: transactionHash as Hex,\n success: true,\n };\n } catch (err) {\n const error = err as Error;\n throw new Error(`Failed to register schema: ${error.message}`);\n }\n }\n\n /**\n * Create an attestation\n *\n * @param request - Attestation request containing schema and data\n * @param fromAddress - Address that will create the attestation\n * @param gasLimit - Optional gas limit for the transaction (defaults to \"0x3d0900\")\n * @returns Promise resolving to transaction result\n *\n * @example\n * ```typescript\n * import { createEASClient } from \"@settlemint/sdk-eas\";\n *\n * const easClient = createEASClient({\n * instance: \"https://your-portal-instance.settlemint.com\",\n * accessToken: \"your-access-token\"\n * });\n *\n * const attestationResult = await easClient.attest(\n * {\n * schema: \"0x1234567890123456789012345678901234567890123456789012345678901234\",\n * data: {\n * recipient: \"0x1234567890123456789012345678901234567890\",\n * expirationTime: BigInt(0), // No expiration\n * revocable: true,\n * refUID: \"0x0000000000000000000000000000000000000000000000000000000000000000\",\n * data: \"0x1234\", // ABI-encoded data\n * value: BigInt(0)\n * }\n * },\n * \"0x1234567890123456789012345678901234567890\" // from address\n * );\n *\n * console.log(\"Attestation created:\", attestationResult.hash);\n * ```\n */\n public async attest(\n request: AttestationRequest,\n fromAddress: Address,\n gasLimit?: string,\n ): Promise<TransactionResult> {\n const easAddress = this.getEASAddress();\n\n try {\n const response = await this.portalClient.request(GraphQLOperations.mutations.attest(this.portalGraphql), {\n address: easAddress,\n from: fromAddress,\n input: {\n request: {\n schema: request.schema,\n data: {\n recipient: request.data.recipient,\n expirationTime: request.data.expirationTime.toString(),\n revocable: request.data.revocable,\n refUID: request.data.refUID,\n data: request.data.data,\n value: request.data.value?.toString() || \"0\",\n },\n },\n },\n gasLimit: gasLimit || DEFAULT_GAS_LIMIT,\n });\n\n const transactionHash = response.EASAttest?.transactionHash;\n\n if (!transactionHash) {\n throw new Error(\"No transaction hash returned from Portal\");\n }\n\n return {\n hash: transactionHash as Hex,\n success: true,\n };\n } catch (err) {\n const error = err as Error;\n throw new Error(`Failed to create attestation: ${error.message}`);\n }\n }\n\n /**\n * Create multiple attestations in a single transaction\n *\n * @param requests - Array of attestation requests\n * @param fromAddress - Address that will create the attestations\n * @param gasLimit - Optional gas limit for the transaction (defaults to \"0x3d0900\")\n * @returns Promise resolving to transaction result\n *\n * @example\n * ```typescript\n * import { createEASClient } from \"@settlemint/sdk-eas\";\n *\n * const easClient = createEASClient({\n * instance: \"https://your-portal-instance.settlemint.com\",\n * accessToken: \"your-access-token\"\n * });\n *\n * const multiAttestResult = await easClient.multiAttest(\n * [\n * {\n * schema: \"0x1234567890123456789012345678901234567890123456789012345678901234\",\n * data: {\n * recipient: \"0x1234567890123456789012345678901234567890\",\n * expirationTime: BigInt(0),\n * revocable: true,\n * refUID: \"0x0000000000000000000000000000000000000000000000000000000000000000\",\n * data: \"0x1234\",\n * value: BigInt(0)\n * }\n * },\n * {\n * schema: \"0x5678901234567890123456789012345678901234567890123456789012345678\",\n * data: {\n * recipient: \"0x5678901234567890123456789012345678901234\",\n * expirationTime: BigInt(0),\n * revocable: false,\n * refUID: \"0x0000000000000000000000000000000000000000000000000000000000000000\",\n * data: \"0x5678\",\n * value: BigInt(0)\n * }\n * }\n * ],\n * \"0x1234567890123456789012345678901234567890\" // from address\n * );\n *\n * console.log(\"Multiple attestations created:\", multiAttestResult.hash);\n * ```\n */\n public async multiAttest(\n requests: AttestationRequest[],\n fromAddress: Address,\n gasLimit?: string,\n ): Promise<TransactionResult> {\n if (requests.length === 0) {\n throw new Error(\"At least one attestation request is required\");\n }\n\n const easAddress = this.getEASAddress();\n\n try {\n const response = await this.portalClient.request(GraphQLOperations.mutations.multiAttest(this.portalGraphql), {\n address: easAddress,\n from: fromAddress,\n input: {\n multiRequests: requests.map((req) => ({\n schema: req.schema,\n data: [\n {\n recipient: req.data.recipient,\n expirationTime: req.data.expirationTime.toString(),\n revocable: req.data.revocable,\n refUID: req.data.refUID,\n data: req.data.data,\n value: req.data.value?.toString() || \"0\",\n },\n ],\n })),\n },\n gasLimit: gasLimit || DEFAULT_GAS_LIMIT,\n });\n\n const transactionHash = response.EASMultiAttest?.transactionHash;\n\n if (!transactionHash) {\n throw new Error(\"No transaction hash returned from Portal\");\n }\n\n return {\n hash: transactionHash as Hex,\n success: true,\n };\n } catch (err) {\n const error = err as Error;\n throw new Error(`Failed to create multiple attestations: ${error.message}`);\n }\n }\n\n /**\n * Revoke an existing attestation\n *\n * @param schemaUID - UID of the schema used for the attestation\n * @param attestationUID - UID of the attestation to revoke\n * @param fromAddress - Address that will revoke the attestation\n * @param value - Optional ETH value to send with the revocation\n * @param gasLimit - Optional gas limit for the transaction (defaults to \"0x3d0900\")\n * @returns Promise resolving to transaction result\n *\n * @example\n * ```typescript\n * import { createEASClient } from \"@settlemint/sdk-eas\";\n *\n * const easClient = createEASClient({\n * instance: \"https://your-portal-instance.settlemint.com\",\n * accessToken: \"your-access-token\"\n * });\n *\n * const revokeResult = await easClient.revoke(\n * \"0x1234567890123456789012345678901234567890123456789012345678901234\", // schema UID\n * \"0x5678901234567890123456789012345678901234567890123456789012345678\", // attestation UID\n * \"0x1234567890123456789012345678901234567890\", // from address\n * BigInt(0) // value (optional)\n * );\n *\n * console.log(\"Attestation revoked:\", revokeResult.hash);\n * ```\n */\n public async revoke(\n schemaUID: Hex,\n attestationUID: Hex,\n fromAddress: Address,\n value?: bigint,\n gasLimit?: string,\n ): Promise<TransactionResult> {\n try {\n const response = await this.portalClient.request(GraphQLOperations.mutations.revoke(this.portalGraphql), {\n address: this.getEASAddress(),\n from: fromAddress,\n input: {\n request: {\n schema: schemaUID,\n data: {\n uid: attestationUID,\n value: value?.toString() || \"0\",\n },\n },\n },\n gasLimit: gasLimit || DEFAULT_GAS_LIMIT,\n });\n\n const transactionHash = response.EASRevoke?.transactionHash;\n\n if (!transactionHash) {\n throw new Error(\"No transaction hash returned from Portal\");\n }\n\n return {\n hash: transactionHash as Hex,\n success: true,\n };\n } catch (err) {\n const error = err as Error;\n throw new Error(`Failed to revoke attestation: ${error.message}`);\n }\n }\n\n /**\n * Get a schema by UID\n */\n public async getSchema(uid: Hex): Promise<SchemaData> {\n const schemaRegistryAddress = this.getSchemaRegistryAddress();\n\n try {\n const response = await this.portalClient.request(GraphQLOperations.queries.getSchema(this.portalGraphql), {\n address: schemaRegistryAddress,\n uid: uid,\n });\n\n const schemaResult = response.EASSchemaRegistry?.getSchema;\n\n if (!schemaResult) {\n throw new Error(`Schema not found: ${uid}`);\n }\n\n return {\n uid: schemaResult.uid as Hex,\n resolver: schemaResult.resolver as Address,\n revocable: Boolean(schemaResult.revocable),\n schema: schemaResult.schema || \"\",\n };\n } catch (err) {\n const error = err as Error;\n throw new Error(`Failed to get schema: ${error.message}`);\n }\n }\n\n /**\n * Get all schemas with pagination\n *\n * Note: This method requires The Graph subgraph or additional indexing infrastructure\n * as Portal's direct contract queries don't support listing all schemas.\n * Consider using getSchema() for individual schema lookups.\n */\n public async getSchemas(_options?: GetSchemasOptions): Promise<SchemaData[]> {\n throw new Error(\n \"Schema listing not implemented yet. Portal's direct contract queries don't support listing all schemas. Use getSchema() for individual schema lookups or implement The Graph subgraph integration for bulk queries.\",\n );\n }\n\n /**\n * Get an attestation by UID\n */\n public async getAttestation(uid: Hex): Promise<AttestationInfo> {\n const easAddress = this.getEASAddress();\n\n try {\n const response = await this.portalClient.request(GraphQLOperations.queries.getAttestation(this.portalGraphql), {\n address: easAddress,\n uid: uid,\n });\n\n const attestationResult = response.EAS?.getAttestation;\n\n if (!attestationResult) {\n throw new Error(`Attestation not found: ${uid}`);\n }\n\n return {\n uid: attestationResult.uid as Hex,\n schema: attestationResult.schema as Hex,\n attester: attestationResult.attester as Address,\n recipient: attestationResult.recipient as Address,\n time: attestationResult.time ? BigInt(attestationResult.time) : BigInt(0),\n expirationTime: attestationResult.expirationTime ? BigInt(attestationResult.expirationTime) : BigInt(0),\n revocable: Boolean(attestationResult.revocable),\n refUID: attestationResult.refUID as Hex,\n data: attestationResult.data as Hex,\n value: BigInt(0), // Note: Portal schema doesn't include value, defaulting to 0\n };\n } catch (err) {\n const error = err as Error;\n throw new Error(`Failed to get attestation: ${error.message}`);\n }\n }\n\n /**\n * Get attestations with pagination and filtering\n *\n * Note: This method requires The Graph subgraph or additional indexing infrastructure\n * as Portal's direct contract queries don't support listing all attestations.\n * Consider using getAttestation() for individual attestation lookups.\n */\n public async getAttestations(_options?: GetAttestationsOptions): Promise<AttestationInfo[]> {\n throw new Error(\n \"Attestation listing not implemented yet. Portal's direct contract queries don't support listing all attestations. Use getAttestation() for individual attestation lookups or implement The Graph subgraph integration for bulk queries.\",\n );\n }\n\n /**\n * Check if an attestation is valid\n */\n public async isValidAttestation(uid: Hex): Promise<boolean> {\n const easAddress = this.getEASAddress();\n\n try {\n const response = await this.portalClient.request(\n GraphQLOperations.queries.isAttestationValid(this.portalGraphql),\n {\n address: easAddress,\n uid: uid,\n },\n );\n\n return response.EAS?.isAttestationValid ?? false;\n } catch (err) {\n const error = err as Error;\n throw new Error(`Failed to check attestation validity: ${error.message}`);\n }\n }\n\n /**\n * Get the timestamp for specific data\n *\n * @param data - The data to get timestamp for\n * @returns The timestamp when the data was timestamped\n */\n public async getTimestamp(data: Hex): Promise<bigint> {\n const easAddress = this.getEASAddress();\n\n try {\n const response = await this.portalClient.request(GraphQLOperations.queries.getTimestamp(this.portalGraphql), {\n address: easAddress,\n data: data,\n });\n\n const timestampResult = response.EAS?.getTimestamp;\n\n if (timestampResult === undefined || timestampResult === null) {\n throw new Error(`No timestamp found for data: ${data}`);\n }\n\n return BigInt(timestampResult);\n } catch (err) {\n const error = err as Error;\n throw new Error(`Failed to get timestamp: ${error.message}`);\n }\n }\n\n /**\n * Get client configuration\n */\n public getOptions(): EASClientOptions {\n return { ...this.options };\n }\n\n /**\n * Get the Portal client instance for advanced operations\n */\n public getPortalClient(): PortalClient[\"client\"] {\n return this.portalClient;\n }\n\n /**\n * Get current contract addresses\n */\n public getContractAddresses(): { easAddress?: Address; schemaRegistryAddress?: Address } {\n return {\n easAddress: this.options.easContractAddress || this.deployedAddresses?.easAddress,\n schemaRegistryAddress:\n this.options.schemaRegistryContractAddress || this.deployedAddresses?.schemaRegistryAddress,\n };\n }\n\n private getEASAddress(): Address {\n if (this.options.easContractAddress) {\n return this.options.easContractAddress;\n }\n if (this.deployedAddresses?.easAddress) {\n return this.deployedAddresses.easAddress;\n }\n throw new Error(\"EAS contract address not available. Please provide it in options or deploy contracts first.\");\n }\n\n private getSchemaRegistryAddress(): Address {\n if (this.options.schemaRegistryContractAddress) {\n return this.options.schemaRegistryContractAddress;\n }\n if (this.deployedAddresses?.schemaRegistryAddress) {\n return this.deployedAddresses.schemaRegistryAddress;\n }\n throw new Error(\n \"Schema Registry contract address not available. Please provide it in options or deploy contracts first.\",\n );\n }\n\n private buildSchemaString(fields: SchemaField[]): string {\n return fields.map((field) => `${field.type} ${field.name}`).join(\", \");\n }\n}\n\n/**\n * Create an EAS client instance\n *\n * @param options - Configuration options for the EAS client\n * @returns EAS client instance\n *\n * @example\n * ```typescript\n * import { createEASClient } from \"@settlemint/sdk-eas\";\n *\n * const easClient = createEASClient({\n * instance: \"https://your-portal-instance.settlemint.com\",\n * accessToken: \"your-access-token\"\n * });\n *\n * // Use the client\n * const deployment = await easClient.deploy(\"0x1234...deployer-address\");\n * ```\n */\nexport function createEASClient(options: EASClientOptions): EASClient {\n return new EASClient(options);\n}\n\n// Re-export GraphQL operations for advanced usage\nexport { GraphQLOperations } from \"./portal/operations.js\";\n// Re-export types and constants\nexport type {\n AttestationData,\n AttestationInfo,\n AttestationRequest,\n DeploymentResult,\n EASClientOptions,\n EASFieldType,\n GetAttestationsOptions,\n GetSchemasOptions,\n RegisterSchemaOptions,\n SchemaData,\n SchemaField,\n SchemaRequest,\n TransactionResult,\n} from \"./schema.js\";\nexport { EAS_FIELD_TYPES, ZERO_ADDRESS, ZERO_BYTES32 } from \"./schema.js\";\n// Re-export validation utilities\nexport { EASClientOptionsSchema } from \"./utils/validation.js\";\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"eas.cjs","names":["zeroAddress","z","UrlSchema","ApplicationAccessTokenSchema"],"sources":["../src/portal/operations.ts","../src/schema.ts","../src/utils/validation.ts","../src/eas.ts"],"sourcesContent":["import type { PortalClient } from \"./portal-client.js\";\n\nexport const GraphQLOperations = {\n mutations: {\n deploySchemaRegistry: (graphql: PortalClient[\"graphql\"]) =>\n graphql(`\n mutation DeployContractEASSchemaRegistry(\n $from: String!\n $constructorArguments: DeployContractEASSchemaRegistryInput!\n $gasLimit: String!\n ) {\n DeployContractEASSchemaRegistry(from: $from, constructorArguments: $constructorArguments, gasLimit: $gasLimit) {\n transactionHash\n }\n }`),\n\n deployEAS: (graphql: PortalClient[\"graphql\"]) =>\n graphql(`\n mutation DeployContractEAS($from: String!, $constructorArguments: DeployContractEASInput!, $gasLimit: String!) {\n DeployContractEAS(from: $from, constructorArguments: $constructorArguments, gasLimit: $gasLimit) {\n transactionHash\n }\n }`),\n\n registerSchema: (graphql: PortalClient[\"graphql\"]) =>\n graphql(`\n mutation EASSchemaRegistryRegister(\n $address: String!\n $from: String!\n $input: EASSchemaRegistryRegisterInput!\n $gasLimit: String!\n ) {\n EASSchemaRegistryRegister(address: $address, from: $from, input: $input, gasLimit: $gasLimit) {\n transactionHash\n }\n }`),\n\n attest: (graphql: PortalClient[\"graphql\"]) =>\n graphql(`\n mutation EASAttest($address: String!, $from: String!, $input: EASAttestInput!, $gasLimit: String!) {\n EASAttest(address: $address, from: $from, input: $input, gasLimit: $gasLimit) {\n transactionHash\n }\n }`),\n\n multiAttest: (graphql: PortalClient[\"graphql\"]) =>\n graphql(`\n mutation EASMultiAttest($address: String!, $from: String!, $input: EASMultiAttestInput!, $gasLimit: String!) {\n EASMultiAttest(address: $address, from: $from, input: $input, gasLimit: $gasLimit) {\n transactionHash\n }\n }`),\n\n revoke: (graphql: PortalClient[\"graphql\"]) =>\n graphql(`\n mutation EASRevoke($address: String!, $from: String!, $input: EASRevokeInput!, $gasLimit: String!) {\n EASRevoke(address: $address, from: $from, input: $input, gasLimit: $gasLimit) {\n transactionHash\n }\n }`),\n },\n\n queries: {\n getSchema: (graphql: PortalClient[\"graphql\"]) =>\n graphql(`\n query EASSchemaRegistryGetSchema($address: String!, $uid: String!) {\n EASSchemaRegistry(address: $address) {\n getSchema(uid: $uid) {\n uid\n resolver\n revocable\n schema\n }\n }\n }`),\n\n getAttestation: (graphql: PortalClient[\"graphql\"]) =>\n graphql(`\n query EASGetAttestation($address: String!, $uid: String!) {\n EAS(address: $address) {\n getAttestation(uid: $uid) {\n uid\n schema\n attester\n recipient\n time\n expirationTime\n revocable\n refUID\n data\n revocationTime\n }\n }\n }`),\n\n isAttestationValid: (graphql: PortalClient[\"graphql\"]) =>\n graphql(`\n query EASIsAttestationValid($address: String!, $uid: String!) {\n EAS(address: $address) {\n isAttestationValid(uid: $uid)\n }\n }`),\n\n getTimestamp: (graphql: PortalClient[\"graphql\"]) =>\n graphql(`\n query EASGetTimestamp($address: String!, $data: String!) {\n EAS(address: $address) {\n getTimestamp(data: $data)\n }\n }`),\n },\n};\n","import { type Address, type Hex, zeroAddress } from \"viem\";\nimport type { z } from \"zod\";\nimport type { EASClientOptionsSchema } from \"./utils/validation.js\";\n\n/**\n * Common address constants\n */\nexport const ZERO_ADDRESS = zeroAddress;\nexport const ZERO_BYTES32 = \"0x0000000000000000000000000000000000000000000000000000000000000000\" as Hex;\n\n/**\n * Supported field types for EAS schema fields.\n * Maps to the Solidity types that can be used in EAS schemas.\n */\nexport const EAS_FIELD_TYPES = {\n string: \"string\",\n address: \"address\",\n bool: \"bool\",\n bytes: \"bytes\",\n bytes32: \"bytes32\",\n uint256: \"uint256\",\n int256: \"int256\",\n uint8: \"uint8\",\n int8: \"int8\",\n} as const;\n\nexport type EASFieldType = keyof typeof EAS_FIELD_TYPES;\n\n/**\n * Represents a single field in an EAS schema.\n */\nexport interface SchemaField {\n /** The name of the field */\n name: string;\n /** The Solidity type of the field */\n type: EASFieldType;\n /** Optional description of the field's purpose */\n description?: string;\n}\n\n/**\n * Configuration options for the EAS client\n */\nexport type EASClientOptions = z.infer<typeof EASClientOptionsSchema>;\n\n/**\n * Schema registration request\n */\nexport interface SchemaRequest {\n /** Schema fields (alternative to schema string) */\n fields?: SchemaField[];\n /** Raw schema string (alternative to fields) */\n schema?: string;\n /** Resolver contract address (use ZERO_ADDRESS for no resolver) */\n resolver: Address;\n /** Whether attestations using this schema can be revoked */\n revocable: boolean;\n}\n\n/**\n * Attestation data structure\n */\nexport interface AttestationData {\n /** Recipient of the attestation */\n recipient: Address;\n /** Expiration time (0 for no expiration) */\n expirationTime: bigint;\n /** Whether this attestation can be revoked */\n revocable: boolean;\n /** Reference UID (use ZERO_BYTES32 for no reference) */\n refUID: Hex;\n /** Encoded attestation data */\n data: Hex;\n /** Value sent with the attestation */\n value: bigint;\n}\n\n/**\n * Attestation request\n */\nexport interface AttestationRequest {\n /** Schema UID to attest against */\n schema: Hex;\n /** Attestation data */\n data: AttestationData;\n}\n\n/**\n * Transaction result\n */\nexport interface TransactionResult {\n /** Transaction hash */\n hash: Hex;\n /** Whether the transaction was successful */\n success: boolean;\n}\n\n/**\n * Schema information\n */\nexport interface SchemaData {\n /** Schema UID */\n uid: Hex;\n /** Resolver contract address */\n resolver: Address;\n /** Whether attestations can be revoked */\n revocable: boolean;\n /** Schema string */\n schema: string;\n}\n\n/**\n * Attestation information\n */\nexport interface AttestationInfo {\n /** Attestation UID */\n uid: Hex;\n /** Schema UID */\n schema: Hex;\n /** Address that created the attestation */\n attester: Address;\n /** Recipient of the attestation */\n recipient: Address;\n /** Creation timestamp */\n time: bigint;\n /** Expiration timestamp */\n expirationTime: bigint;\n /** Whether this attestation can be revoked */\n revocable: boolean;\n /** Reference UID */\n refUID: Hex;\n /** Encoded attestation data */\n data: Hex;\n /** Value sent with the attestation */\n value: bigint;\n}\n\n/**\n * Options for retrieving schemas\n */\nexport interface GetSchemasOptions {\n /** Maximum number of schemas to return */\n limit?: number;\n /** Number of schemas to skip */\n offset?: number;\n}\n\n/**\n * Options for retrieving attestations\n */\nexport interface GetAttestationsOptions {\n /** Maximum number of attestations to return */\n limit?: number;\n /** Number of attestations to skip */\n offset?: number;\n /** Filter by schema UID */\n schema?: Hex;\n /** Filter by attester address */\n attester?: Address;\n /** Filter by recipient address */\n recipient?: Address;\n}\n\n/**\n * Contract deployment result\n */\nexport interface DeploymentResult {\n /** Deployed EAS contract address */\n easAddress: Address;\n /** Deployed Schema Registry contract address */\n schemaRegistryAddress: Address;\n /** EAS deployment transaction hash (when address not immediately available) */\n easTransactionHash?: Hex;\n /** Schema Registry deployment transaction hash (when address not immediately available) */\n schemaRegistryTransactionHash?: Hex;\n}\n\n/**\n * @deprecated Use SchemaRequest instead\n * @internal\n */\nexport interface RegisterSchemaOptions extends SchemaRequest {}\n","import { ApplicationAccessTokenSchema, UrlSchema } from \"@settlemint/sdk-utils/validation\";\nimport { type Address, isAddress } from \"viem\";\nimport { z } from \"zod\";\n\nconst ethAddressSchema = z.custom<Address>(\n (val) => typeof val === \"string\" && isAddress(val),\n \"Invalid Ethereum address\",\n);\n\n/**\n * Zod schema for EASClientOptions.\n */\nexport const EASClientOptionsSchema = z.object({\n /**\n * The EAS instance URL\n */\n instance: UrlSchema,\n /**\n * The application access token\n */\n accessToken: ApplicationAccessTokenSchema.optional(),\n /**\n * The EAS contract address\n */\n easContractAddress: ethAddressSchema.optional(),\n /**\n * The schema registry contract address\n */\n schemaRegistryContractAddress: ethAddressSchema.optional(),\n /**\n * Whether to enable debug mode\n */\n debug: z.boolean().optional(),\n});\n","import { createPortalClient, waitForTransactionReceipt } from \"@settlemint/sdk-portal\";\nimport { createLogger, requestLogger } from \"@settlemint/sdk-utils/logging\";\nimport { validate } from \"@settlemint/sdk-utils/validation\";\nimport type { Address, Hex } from \"viem\";\nimport { GraphQLOperations } from \"./portal/operations.js\";\nimport type { PortalClient } from \"./portal/portal-client.js\";\nimport type { introspection } from \"./portal/portal-env.d.ts\";\nimport {\n type AttestationInfo,\n type AttestationRequest,\n type DeploymentResult,\n type EASClientOptions,\n type GetAttestationsOptions,\n type GetSchemasOptions,\n type SchemaData,\n type SchemaField,\n type SchemaRequest,\n type TransactionResult,\n ZERO_ADDRESS,\n} from \"./schema.js\";\nimport { EASClientOptionsSchema } from \"./utils/validation.js\";\n\nconst LOGGER = createLogger();\n\nconst DEFAULT_GAS_LIMIT = \"0x3d0900\";\n\n/**\n * Main EAS client class for interacting with Ethereum Attestation Service via Portal\n *\n * @example\n * ```typescript\n * import { createEASClient } from \"@settlemint/sdk-eas\";\n *\n * const easClient = createEASClient({\n * instance: \"https://your-portal-instance.settlemint.com\",\n * accessToken: \"your-access-token\"\n * });\n *\n * // Deploy EAS contracts\n * const deployment = await easClient.deploy(\"0x1234...deployer-address\");\n * console.log(\"EAS deployed at:\", deployment.easAddress);\n * ```\n */\nexport class EASClient {\n private readonly options: EASClientOptions;\n private readonly portalClient: PortalClient[\"client\"];\n private readonly portalGraphql: PortalClient[\"graphql\"];\n private deployedAddresses?: DeploymentResult;\n\n /**\n * Create a new EAS client instance\n *\n * @param options - Configuration options for the EAS client\n */\n constructor(options: EASClientOptions) {\n this.options = validate(EASClientOptionsSchema, options);\n\n const { client: portalClient, graphql: portalGraphql } = createPortalClient<{\n introspection: introspection;\n disableMasking: true;\n scalars: {\n // Change unknown to the type you are using to store metadata\n JSON: unknown;\n };\n }>(\n {\n instance: this.options.instance,\n accessToken: this.options.accessToken,\n },\n {\n fetch: requestLogger(LOGGER, \"portal\", fetch) as typeof fetch,\n },\n );\n\n this.portalClient = portalClient;\n this.portalGraphql = portalGraphql;\n }\n\n /**\n * Deploy EAS contracts via Portal\n *\n * @param deployerAddress - The address that will deploy the contracts\n * @param forwarderAddress - Optional trusted forwarder address (defaults to zero address)\n * @param gasLimit - Optional gas limit for deployment transactions (defaults to \"0x7a1200\")\n * @returns Promise resolving to deployment result with contract addresses and transaction hashes\n *\n * @example\n * ```typescript\n * import { createEASClient } from \"@settlemint/sdk-eas\";\n *\n * const easClient = createEASClient({\n * instance: \"https://your-portal-instance.settlemint.com\",\n * accessToken: \"your-access-token\"\n * });\n *\n * const deployment = await easClient.deploy(\n * \"0x1234567890123456789012345678901234567890\", // deployer address\n * \"0x0000000000000000000000000000000000000000\", // forwarder (optional)\n * \"0x7a1200\" // gas limit (optional)\n * );\n *\n * console.log(\"Schema Registry:\", deployment.schemaRegistryAddress);\n * console.log(\"EAS Contract:\", deployment.easAddress);\n * ```\n */\n public async deploy(\n deployerAddress: Address,\n forwarderAddress?: Address,\n gasLimit?: string,\n ): Promise<DeploymentResult> {\n const defaultForwarder = forwarderAddress || ZERO_ADDRESS;\n const defaultGasLimit = gasLimit || \"0x7a1200\";\n\n try {\n // Deploy Schema Registry first\n const schemaRegistryResponse = await this.portalClient.request(\n GraphQLOperations.mutations.deploySchemaRegistry(this.portalGraphql),\n {\n from: deployerAddress,\n constructorArguments: {\n forwarder: defaultForwarder,\n },\n gasLimit: defaultGasLimit,\n },\n );\n\n if (!schemaRegistryResponse.DeployContractEASSchemaRegistry?.transactionHash) {\n throw new Error(\"Schema Registry deployment failed - no transaction hash returned\");\n }\n\n const schemaRegistryTxHash = schemaRegistryResponse.DeployContractEASSchemaRegistry.transactionHash;\n\n // Wait for Schema Registry deployment and get contract address\n const schemaRegistryTransaction = await waitForTransactionReceipt(schemaRegistryTxHash as Hex, {\n portalGraphqlEndpoint: this.options.instance,\n accessToken: this.options.accessToken,\n timeout: 60_000,\n });\n\n if (!schemaRegistryTransaction?.receipt?.contractAddress) {\n throw new Error(\"Schema Registry deployment failed - could not get contract address from transaction receipt.\");\n }\n\n const schemaRegistryAddress = schemaRegistryTransaction.receipt.contractAddress;\n\n // Deploy EAS contract with correct Schema Registry address\n const easResponse = await this.portalClient.request(GraphQLOperations.mutations.deployEAS(this.portalGraphql), {\n from: deployerAddress,\n constructorArguments: {\n registry: schemaRegistryAddress,\n forwarder: defaultForwarder,\n },\n gasLimit: defaultGasLimit,\n });\n if (!easResponse.DeployContractEAS?.transactionHash) {\n throw new Error(\"EAS deployment failed - no transaction hash returned\");\n }\n\n const easTxHash = easResponse.DeployContractEAS.transactionHash as Hex;\n\n // Wait for EAS deployment and get contract address\n const easTransaction = await waitForTransactionReceipt(easTxHash, {\n portalGraphqlEndpoint: this.options.instance,\n accessToken: this.options.accessToken,\n timeout: 60_000,\n });\n\n if (!easTransaction?.receipt?.contractAddress) {\n throw new Error(\"EAS deployment failed - could not get contract address from transaction receipt.\");\n }\n const easAddress = easTransaction.receipt.contractAddress;\n\n this.deployedAddresses = {\n easAddress,\n schemaRegistryAddress,\n easTransactionHash: easTxHash as Hex,\n schemaRegistryTransactionHash: schemaRegistryTxHash as Hex,\n };\n\n return this.deployedAddresses;\n } catch (err) {\n const error = err as Error;\n throw new Error(`Failed to deploy EAS contracts: ${error.message}`);\n }\n }\n\n /**\n * Register a new schema in the EAS Schema Registry\n *\n * @param request - Schema registration request containing schema definition\n * @param fromAddress - Address that will register the schema\n * @param gasLimit - Optional gas limit for the transaction (defaults to \"0x3d0900\")\n * @returns Promise resolving to transaction result\n *\n * @example\n * ```typescript\n * import { createEASClient } from \"@settlemint/sdk-eas\";\n *\n * const easClient = createEASClient({\n * instance: \"https://your-portal-instance.settlemint.com\",\n * accessToken: \"your-access-token\"\n * });\n *\n * const schemaResult = await easClient.registerSchema(\n * {\n * schema: \"uint256 eventId, uint8 voteIndex\",\n * resolver: \"0x0000000000000000000000000000000000000000\",\n * revocable: true\n * },\n * \"0x1234567890123456789012345678901234567890\" // from address\n * );\n *\n * console.log(\"Schema registered:\", schemaResult.hash);\n * ```\n */\n public async registerSchema(\n request: SchemaRequest,\n fromAddress: Address,\n gasLimit?: string,\n ): Promise<TransactionResult> {\n const schemaRegistryAddress = this.getSchemaRegistryAddress();\n\n let schemaString = request.schema;\n if (request.fields && !schemaString) {\n schemaString = this.buildSchemaString(request.fields);\n }\n\n if (!schemaString) {\n throw new Error(\"Schema string is required. Provide either 'schema' or 'fields'.\");\n }\n\n try {\n const response = await this.portalClient.request(GraphQLOperations.mutations.registerSchema(this.portalGraphql), {\n address: schemaRegistryAddress,\n from: fromAddress,\n input: {\n schema: schemaString,\n resolver: request.resolver,\n revocable: request.revocable,\n },\n gasLimit: gasLimit || DEFAULT_GAS_LIMIT,\n });\n\n const transactionHash = response.EASSchemaRegistryRegister?.transactionHash;\n\n if (!transactionHash) {\n throw new Error(\"No transaction hash returned from Portal\");\n }\n\n return {\n hash: transactionHash as Hex,\n success: true,\n };\n } catch (err) {\n const error = err as Error;\n throw new Error(`Failed to register schema: ${error.message}`);\n }\n }\n\n /**\n * Create an attestation\n *\n * @param request - Attestation request containing schema and data\n * @param fromAddress - Address that will create the attestation\n * @param gasLimit - Optional gas limit for the transaction (defaults to \"0x3d0900\")\n * @returns Promise resolving to transaction result\n *\n * @example\n * ```typescript\n * import { createEASClient } from \"@settlemint/sdk-eas\";\n *\n * const easClient = createEASClient({\n * instance: \"https://your-portal-instance.settlemint.com\",\n * accessToken: \"your-access-token\"\n * });\n *\n * const attestationResult = await easClient.attest(\n * {\n * schema: \"0x1234567890123456789012345678901234567890123456789012345678901234\",\n * data: {\n * recipient: \"0x1234567890123456789012345678901234567890\",\n * expirationTime: BigInt(0), // No expiration\n * revocable: true,\n * refUID: \"0x0000000000000000000000000000000000000000000000000000000000000000\",\n * data: \"0x1234\", // ABI-encoded data\n * value: BigInt(0)\n * }\n * },\n * \"0x1234567890123456789012345678901234567890\" // from address\n * );\n *\n * console.log(\"Attestation created:\", attestationResult.hash);\n * ```\n */\n public async attest(\n request: AttestationRequest,\n fromAddress: Address,\n gasLimit?: string,\n ): Promise<TransactionResult> {\n const easAddress = this.getEASAddress();\n\n try {\n const response = await this.portalClient.request(GraphQLOperations.mutations.attest(this.portalGraphql), {\n address: easAddress,\n from: fromAddress,\n input: {\n request: {\n schema: request.schema,\n data: {\n recipient: request.data.recipient,\n expirationTime: request.data.expirationTime.toString(),\n revocable: request.data.revocable,\n refUID: request.data.refUID,\n data: request.data.data,\n value: request.data.value?.toString() || \"0\",\n },\n },\n },\n gasLimit: gasLimit || DEFAULT_GAS_LIMIT,\n });\n\n const transactionHash = response.EASAttest?.transactionHash;\n\n if (!transactionHash) {\n throw new Error(\"No transaction hash returned from Portal\");\n }\n\n return {\n hash: transactionHash as Hex,\n success: true,\n };\n } catch (err) {\n const error = err as Error;\n throw new Error(`Failed to create attestation: ${error.message}`);\n }\n }\n\n /**\n * Create multiple attestations in a single transaction\n *\n * @param requests - Array of attestation requests\n * @param fromAddress - Address that will create the attestations\n * @param gasLimit - Optional gas limit for the transaction (defaults to \"0x3d0900\")\n * @returns Promise resolving to transaction result\n *\n * @example\n * ```typescript\n * import { createEASClient } from \"@settlemint/sdk-eas\";\n *\n * const easClient = createEASClient({\n * instance: \"https://your-portal-instance.settlemint.com\",\n * accessToken: \"your-access-token\"\n * });\n *\n * const multiAttestResult = await easClient.multiAttest(\n * [\n * {\n * schema: \"0x1234567890123456789012345678901234567890123456789012345678901234\",\n * data: {\n * recipient: \"0x1234567890123456789012345678901234567890\",\n * expirationTime: BigInt(0),\n * revocable: true,\n * refUID: \"0x0000000000000000000000000000000000000000000000000000000000000000\",\n * data: \"0x1234\",\n * value: BigInt(0)\n * }\n * },\n * {\n * schema: \"0x5678901234567890123456789012345678901234567890123456789012345678\",\n * data: {\n * recipient: \"0x5678901234567890123456789012345678901234\",\n * expirationTime: BigInt(0),\n * revocable: false,\n * refUID: \"0x0000000000000000000000000000000000000000000000000000000000000000\",\n * data: \"0x5678\",\n * value: BigInt(0)\n * }\n * }\n * ],\n * \"0x1234567890123456789012345678901234567890\" // from address\n * );\n *\n * console.log(\"Multiple attestations created:\", multiAttestResult.hash);\n * ```\n */\n public async multiAttest(\n requests: AttestationRequest[],\n fromAddress: Address,\n gasLimit?: string,\n ): Promise<TransactionResult> {\n if (requests.length === 0) {\n throw new Error(\"At least one attestation request is required\");\n }\n\n const easAddress = this.getEASAddress();\n\n try {\n const response = await this.portalClient.request(GraphQLOperations.mutations.multiAttest(this.portalGraphql), {\n address: easAddress,\n from: fromAddress,\n input: {\n multiRequests: requests.map((req) => ({\n schema: req.schema,\n data: [\n {\n recipient: req.data.recipient,\n expirationTime: req.data.expirationTime.toString(),\n revocable: req.data.revocable,\n refUID: req.data.refUID,\n data: req.data.data,\n value: req.data.value?.toString() || \"0\",\n },\n ],\n })),\n },\n gasLimit: gasLimit || DEFAULT_GAS_LIMIT,\n });\n\n const transactionHash = response.EASMultiAttest?.transactionHash;\n\n if (!transactionHash) {\n throw new Error(\"No transaction hash returned from Portal\");\n }\n\n return {\n hash: transactionHash as Hex,\n success: true,\n };\n } catch (err) {\n const error = err as Error;\n throw new Error(`Failed to create multiple attestations: ${error.message}`);\n }\n }\n\n /**\n * Revoke an existing attestation\n *\n * @param schemaUID - UID of the schema used for the attestation\n * @param attestationUID - UID of the attestation to revoke\n * @param fromAddress - Address that will revoke the attestation\n * @param value - Optional ETH value to send with the revocation\n * @param gasLimit - Optional gas limit for the transaction (defaults to \"0x3d0900\")\n * @returns Promise resolving to transaction result\n *\n * @example\n * ```typescript\n * import { createEASClient } from \"@settlemint/sdk-eas\";\n *\n * const easClient = createEASClient({\n * instance: \"https://your-portal-instance.settlemint.com\",\n * accessToken: \"your-access-token\"\n * });\n *\n * const revokeResult = await easClient.revoke(\n * \"0x1234567890123456789012345678901234567890123456789012345678901234\", // schema UID\n * \"0x5678901234567890123456789012345678901234567890123456789012345678\", // attestation UID\n * \"0x1234567890123456789012345678901234567890\", // from address\n * BigInt(0) // value (optional)\n * );\n *\n * console.log(\"Attestation revoked:\", revokeResult.hash);\n * ```\n */\n public async revoke(\n schemaUID: Hex,\n attestationUID: Hex,\n fromAddress: Address,\n value?: bigint,\n gasLimit?: string,\n ): Promise<TransactionResult> {\n try {\n const response = await this.portalClient.request(GraphQLOperations.mutations.revoke(this.portalGraphql), {\n address: this.getEASAddress(),\n from: fromAddress,\n input: {\n request: {\n schema: schemaUID,\n data: {\n uid: attestationUID,\n value: value?.toString() || \"0\",\n },\n },\n },\n gasLimit: gasLimit || DEFAULT_GAS_LIMIT,\n });\n\n const transactionHash = response.EASRevoke?.transactionHash;\n\n if (!transactionHash) {\n throw new Error(\"No transaction hash returned from Portal\");\n }\n\n return {\n hash: transactionHash as Hex,\n success: true,\n };\n } catch (err) {\n const error = err as Error;\n throw new Error(`Failed to revoke attestation: ${error.message}`);\n }\n }\n\n /**\n * Get a schema by UID\n */\n public async getSchema(uid: Hex): Promise<SchemaData> {\n const schemaRegistryAddress = this.getSchemaRegistryAddress();\n\n try {\n const response = await this.portalClient.request(GraphQLOperations.queries.getSchema(this.portalGraphql), {\n address: schemaRegistryAddress,\n uid: uid,\n });\n\n const schemaResult = response.EASSchemaRegistry?.getSchema;\n\n if (!schemaResult) {\n throw new Error(`Schema not found: ${uid}`);\n }\n\n return {\n uid: schemaResult.uid as Hex,\n resolver: schemaResult.resolver as Address,\n revocable: Boolean(schemaResult.revocable),\n schema: schemaResult.schema || \"\",\n };\n } catch (err) {\n const error = err as Error;\n throw new Error(`Failed to get schema: ${error.message}`);\n }\n }\n\n /**\n * Get all schemas with pagination\n *\n * Note: This method requires The Graph subgraph or additional indexing infrastructure\n * as Portal's direct contract queries don't support listing all schemas.\n * Consider using getSchema() for individual schema lookups.\n */\n public async getSchemas(_options?: GetSchemasOptions): Promise<SchemaData[]> {\n throw new Error(\n \"Schema listing not implemented yet. Portal's direct contract queries don't support listing all schemas. Use getSchema() for individual schema lookups or implement The Graph subgraph integration for bulk queries.\",\n );\n }\n\n /**\n * Get an attestation by UID\n */\n public async getAttestation(uid: Hex): Promise<AttestationInfo> {\n const easAddress = this.getEASAddress();\n\n try {\n const response = await this.portalClient.request(GraphQLOperations.queries.getAttestation(this.portalGraphql), {\n address: easAddress,\n uid: uid,\n });\n\n const attestationResult = response.EAS?.getAttestation;\n\n if (!attestationResult) {\n throw new Error(`Attestation not found: ${uid}`);\n }\n\n return {\n uid: attestationResult.uid as Hex,\n schema: attestationResult.schema as Hex,\n attester: attestationResult.attester as Address,\n recipient: attestationResult.recipient as Address,\n time: attestationResult.time ? BigInt(attestationResult.time) : BigInt(0),\n expirationTime: attestationResult.expirationTime ? BigInt(attestationResult.expirationTime) : BigInt(0),\n revocable: Boolean(attestationResult.revocable),\n refUID: attestationResult.refUID as Hex,\n data: attestationResult.data as Hex,\n value: BigInt(0), // Note: Portal schema doesn't include value, defaulting to 0\n };\n } catch (err) {\n const error = err as Error;\n throw new Error(`Failed to get attestation: ${error.message}`);\n }\n }\n\n /**\n * Get attestations with pagination and filtering\n *\n * Note: This method requires The Graph subgraph or additional indexing infrastructure\n * as Portal's direct contract queries don't support listing all attestations.\n * Consider using getAttestation() for individual attestation lookups.\n */\n public async getAttestations(_options?: GetAttestationsOptions): Promise<AttestationInfo[]> {\n throw new Error(\n \"Attestation listing not implemented yet. Portal's direct contract queries don't support listing all attestations. Use getAttestation() for individual attestation lookups or implement The Graph subgraph integration for bulk queries.\",\n );\n }\n\n /**\n * Check if an attestation is valid\n */\n public async isValidAttestation(uid: Hex): Promise<boolean> {\n const easAddress = this.getEASAddress();\n\n try {\n const response = await this.portalClient.request(\n GraphQLOperations.queries.isAttestationValid(this.portalGraphql),\n {\n address: easAddress,\n uid: uid,\n },\n );\n\n return response.EAS?.isAttestationValid ?? false;\n } catch (err) {\n const error = err as Error;\n throw new Error(`Failed to check attestation validity: ${error.message}`);\n }\n }\n\n /**\n * Get the timestamp for specific data\n *\n * @param data - The data to get timestamp for\n * @returns The timestamp when the data was timestamped\n */\n public async getTimestamp(data: Hex): Promise<bigint> {\n const easAddress = this.getEASAddress();\n\n try {\n const response = await this.portalClient.request(GraphQLOperations.queries.getTimestamp(this.portalGraphql), {\n address: easAddress,\n data: data,\n });\n\n const timestampResult = response.EAS?.getTimestamp;\n\n if (timestampResult === undefined || timestampResult === null) {\n throw new Error(`No timestamp found for data: ${data}`);\n }\n\n return BigInt(timestampResult);\n } catch (err) {\n const error = err as Error;\n throw new Error(`Failed to get timestamp: ${error.message}`);\n }\n }\n\n /**\n * Get client configuration\n */\n public getOptions(): EASClientOptions {\n return { ...this.options };\n }\n\n /**\n * Get the Portal client instance for advanced operations\n */\n public getPortalClient(): PortalClient[\"client\"] {\n return this.portalClient;\n }\n\n /**\n * Get current contract addresses\n */\n public getContractAddresses(): { easAddress?: Address; schemaRegistryAddress?: Address } {\n return {\n easAddress: this.options.easContractAddress || this.deployedAddresses?.easAddress,\n schemaRegistryAddress:\n this.options.schemaRegistryContractAddress || this.deployedAddresses?.schemaRegistryAddress,\n };\n }\n\n private getEASAddress(): Address {\n if (this.options.easContractAddress) {\n return this.options.easContractAddress;\n }\n if (this.deployedAddresses?.easAddress) {\n return this.deployedAddresses.easAddress;\n }\n throw new Error(\"EAS contract address not available. Please provide it in options or deploy contracts first.\");\n }\n\n private getSchemaRegistryAddress(): Address {\n if (this.options.schemaRegistryContractAddress) {\n return this.options.schemaRegistryContractAddress;\n }\n if (this.deployedAddresses?.schemaRegistryAddress) {\n return this.deployedAddresses.schemaRegistryAddress;\n }\n throw new Error(\n \"Schema Registry contract address not available. Please provide it in options or deploy contracts first.\",\n );\n }\n\n private buildSchemaString(fields: SchemaField[]): string {\n return fields.map((field) => `${field.type} ${field.name}`).join(\", \");\n }\n}\n\n/**\n * Create an EAS client instance\n *\n * @param options - Configuration options for the EAS client\n * @returns EAS client instance\n *\n * @example\n * ```typescript\n * import { createEASClient } from \"@settlemint/sdk-eas\";\n *\n * const easClient = createEASClient({\n * instance: \"https://your-portal-instance.settlemint.com\",\n * accessToken: \"your-access-token\"\n * });\n *\n * // Use the client\n * const deployment = await easClient.deploy(\"0x1234...deployer-address\");\n * ```\n */\nexport function createEASClient(options: EASClientOptions): EASClient {\n return new EASClient(options);\n}\n\n// Re-export GraphQL operations for advanced usage\nexport { GraphQLOperations } from \"./portal/operations.js\";\n// Re-export types and constants\nexport type {\n AttestationData,\n AttestationInfo,\n AttestationRequest,\n DeploymentResult,\n EASClientOptions,\n EASFieldType,\n GetAttestationsOptions,\n GetSchemasOptions,\n RegisterSchemaOptions,\n SchemaData,\n SchemaField,\n SchemaRequest,\n TransactionResult,\n} from \"./schema.js\";\nexport { EAS_FIELD_TYPES, ZERO_ADDRESS, ZERO_BYTES32 } from \"./schema.js\";\n// Re-export validation utilities\nexport { EASClientOptionsSchema } from \"./utils/validation.js\";\n"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@settlemint/sdk-eas",
|
|
3
3
|
"description": "Ethereum Attestation Service (EAS) integration for SettleMint SDK",
|
|
4
|
-
"version": "2.6.
|
|
4
|
+
"version": "2.6.11-main5328fef",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"private": false,
|
|
7
7
|
"license": "FSL-1.1-MIT",
|
|
@@ -45,15 +45,15 @@
|
|
|
45
45
|
"publint": "publint run --strict",
|
|
46
46
|
"attw": "attw --pack .",
|
|
47
47
|
"typecheck": "tsc --noEmit",
|
|
48
|
-
"publish-npm": "
|
|
48
|
+
"publish-npm": "npm publish --provenance --tag ${TAG} --access public",
|
|
49
49
|
"prepack": "cp ../../LICENSE .",
|
|
50
50
|
"codegen": "gql-tada generate-output",
|
|
51
51
|
"docs": "typedoc --options '../../typedoc.config.mjs' --entryPoints src/eas.ts --out ./docs"
|
|
52
52
|
},
|
|
53
53
|
"devDependencies": {},
|
|
54
54
|
"dependencies": {
|
|
55
|
-
"@settlemint/sdk-portal": "2.6.
|
|
56
|
-
"@settlemint/sdk-utils": "2.6.
|
|
55
|
+
"@settlemint/sdk-portal": "2.6.11-main5328fef",
|
|
56
|
+
"@settlemint/sdk-utils": "2.6.11-main5328fef",
|
|
57
57
|
"gql.tada": "^1",
|
|
58
58
|
"viem": "^2",
|
|
59
59
|
"zod": "^4"
|