@oma3/omatrust 0.1.0-alpha.10 → 0.1.0-alpha.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. package/dist/identity/index.cjs +543 -0
  2. package/dist/identity/index.cjs.map +1 -1
  3. package/dist/identity/index.d.cts +2 -1
  4. package/dist/identity/index.d.ts +2 -1
  5. package/dist/identity/index.js +527 -1
  6. package/dist/identity/index.js.map +1 -1
  7. package/dist/index-BOvk-7Ku.d.cts +235 -0
  8. package/dist/index-C2w5EvFH.d.ts +329 -0
  9. package/dist/index-QueRiudB.d.cts +329 -0
  10. package/dist/index-R78TpAhN.d.ts +235 -0
  11. package/dist/index.cjs +1475 -165
  12. package/dist/index.cjs.map +1 -1
  13. package/dist/index.d.cts +4 -3
  14. package/dist/index.d.ts +4 -3
  15. package/dist/index.js +1476 -166
  16. package/dist/index.js.map +1 -1
  17. package/dist/reputation/index.browser.cjs +943 -66
  18. package/dist/reputation/index.browser.cjs.map +1 -1
  19. package/dist/reputation/index.browser.d.cts +2 -2
  20. package/dist/reputation/index.browser.d.ts +2 -2
  21. package/dist/reputation/index.browser.js +941 -66
  22. package/dist/reputation/index.browser.js.map +1 -1
  23. package/dist/reputation/index.cjs +1393 -217
  24. package/dist/reputation/index.cjs.map +1 -1
  25. package/dist/reputation/index.d.cts +3 -2
  26. package/dist/reputation/index.d.ts +3 -2
  27. package/dist/reputation/index.js +1378 -217
  28. package/dist/reputation/index.js.map +1 -1
  29. package/dist/{subject-ownership-CXvzEjpH.d.cts → subject-ownership-B7cFlm8c.d.cts} +256 -26
  30. package/dist/{subject-ownership-CXvzEjpH.d.ts → subject-ownership-B7cFlm8c.d.ts} +256 -26
  31. package/dist/types-dpYxRq8N.d.cts +281 -0
  32. package/dist/types-dpYxRq8N.d.ts +281 -0
  33. package/dist/widgets/index.cjs +70 -27
  34. package/dist/widgets/index.cjs.map +1 -1
  35. package/dist/widgets/index.d.cts +42 -18
  36. package/dist/widgets/index.d.ts +42 -18
  37. package/dist/widgets/index.js +67 -26
  38. package/dist/widgets/index.js.map +1 -1
  39. package/package.json +3 -2
  40. package/dist/index-B9KW02US.d.cts +0 -119
  41. package/dist/index-DXrwBex9.d.ts +0 -119
  42. package/dist/index-QZDExA4I.d.cts +0 -90
  43. package/dist/index-QZDExA4I.d.ts +0 -90
@@ -169,10 +169,23 @@ type SubmitDelegatedAttestationParams = {
169
169
  signature: Hex | string;
170
170
  attester?: Hex;
171
171
  };
172
+ type RelayMetadata = {
173
+ blockNumber?: number;
174
+ chain?: string;
175
+ success?: boolean;
176
+ [key: string]: unknown;
177
+ };
178
+ type RelayErrorDetails = {
179
+ httpStatus: number;
180
+ code?: string;
181
+ error?: string;
182
+ payload?: Record<string, unknown>;
183
+ };
172
184
  type SubmitDelegatedAttestationResult = {
173
185
  uid: Hex;
174
186
  txHash?: Hex;
175
187
  status: "submitted" | "confirmed";
188
+ relay?: RelayMetadata;
176
189
  };
177
190
  type GetAttestationParams = {
178
191
  uid: Hex;
@@ -181,7 +194,7 @@ type GetAttestationParams = {
181
194
  schema?: SchemaField[] | string;
182
195
  };
183
196
  type ListAttestationsParams = {
184
- did: Did;
197
+ subjectDid: Did;
185
198
  provider: unknown;
186
199
  easContractAddress: Hex;
187
200
  schemas?: Hex[];
@@ -227,14 +240,111 @@ type CallControllerWitnessResult = {
227
240
  type VerifyProofParams = {
228
241
  proof: ProofWrapper;
229
242
  provider?: unknown;
230
- expectedSubject?: Did;
231
- expectedController?: Did;
243
+ expectedSubjectDid?: Did;
244
+ expectedControllerDid?: Did;
232
245
  };
233
246
  type VerifyProofResult = {
234
247
  valid: boolean;
235
248
  proofType: ProofType;
236
249
  reason?: string;
237
250
  };
251
+ type RequestControllerWitnessParams = {
252
+ /** Subject DID (e.g., did:web:example.com) */
253
+ subjectDid: Did;
254
+ /** Controller DID (e.g., did:pkh:eip155:66238:0xabc...) */
255
+ controllerDid: Did;
256
+ /** Override the default controller witness API URL. If omitted, uses the OMATrust production endpoint. */
257
+ gatewayUrl?: string;
258
+ /** Optional chain ID — defaults to the API's active chain if omitted */
259
+ chainId?: number;
260
+ /** Request timeout in milliseconds (default: 15000) */
261
+ timeoutMs?: number;
262
+ };
263
+ type RequestControllerWitnessResult = {
264
+ success: boolean;
265
+ uid: string | null;
266
+ txHash: string;
267
+ blockNumber: number;
268
+ observedAt: number;
269
+ method: string;
270
+ };
271
+ type W3CKeyPurpose = "authentication" | "assertionMethod" | "keyAgreement";
272
+ type GetControllerAuthorizationParams = {
273
+ /**
274
+ * Controller identifier. Can be:
275
+ * - An EVM wallet address (Hex) for did:pkh controllers
276
+ * - A did:pkh DID string
277
+ * - A did:jwk DID string
278
+ */
279
+ controllerDid: string;
280
+ /** Subject DID the controller claims to control */
281
+ subjectDid: Did;
282
+ /** ethers v6 Provider for on-chain reads */
283
+ provider: unknown;
284
+ /** CAIP-2 chain identifier. Defaults to "eip155:6623" (OMAChain). */
285
+ chain?: string;
286
+ /** EAS contract address. If omitted, resolved from trust anchors. */
287
+ easContractAddress?: Hex;
288
+ /** How far back to scan for controller witnesses. Defaults to 0 (full history). */
289
+ fromBlock?: number;
290
+ /** DNS resolution function for did:web live check */
291
+ resolveTxt?: (host: string) => Promise<string[][]>;
292
+ /** DID document fetcher for did:web live check */
293
+ fetchDidDocument?: (domain: string) => Promise<Record<string, unknown>>;
294
+ /**
295
+ * W3C DID verification relationship purposes to require.
296
+ * Key bindings are only considered valid if their keyPurpose includes all requested purposes.
297
+ * Defaults to ["authentication", "assertionMethod"].
298
+ */
299
+ purpose?: W3CKeyPurpose[];
300
+ };
301
+ type ControllerWitnessEvidence = {
302
+ /** Attestation UID */
303
+ uid: Hex;
304
+ /** Timestamp when the controller witness was issued (unix seconds) */
305
+ issuedAt: bigint;
306
+ /** EAS-level attester address (typically the OMA3 server wallet) */
307
+ attester: string;
308
+ /** Verification method used by the witness service */
309
+ method?: "dns" | "did-document" | "manual" | "other";
310
+ };
311
+ type ControllerAuthorizationResult = {
312
+ /** Whether the controller has any authorization for this subject */
313
+ authorized: boolean;
314
+ /**
315
+ * Earliest timestamp of durable authorization evidence, usually the first
316
+ * Controller Witness. Null when authorization is only currently verified
317
+ * by live DNS/did.json.
318
+ */
319
+ anchoredFrom: bigint | null;
320
+ /**
321
+ * End of the authorization window. Set when a relevant key binding revocation
322
+ * closes the window. Null if the window is still open.
323
+ */
324
+ until: bigint | null;
325
+ /** Whether live DNS/did.json or contract ownership currently confirms control */
326
+ currentlyVerified: boolean;
327
+ /** Verification method for live check */
328
+ liveMethod: "dns" | "did-document" | "contract-ownership" | null;
329
+ /** Controller witness attestations found (oldest first) */
330
+ controllerWitnesses: ControllerWitnessEvidence[];
331
+ /** Key binding attestation UID if one exists */
332
+ keyBindingUid: Hex | null;
333
+ /**
334
+ * Whether the key binding's keyPurpose matched the requested purposes.
335
+ * - "matched": key binding exists and its purposes satisfy the request
336
+ * - "unknown": key binding exists but has no keyPurpose field
337
+ * - "mismatch": key binding exists but does not satisfy the requested purposes
338
+ * - "not-required": no key binding exists or no purpose filter was applied
339
+ */
340
+ keyPurposeStatus: "matched" | "unknown" | "mismatch" | "not-required";
341
+ /**
342
+ * Whether the key binding includes a verified transfer proof.
343
+ * Only relevant for did:pkh subjects where the controller is authorized
344
+ * via a key binding backed by a deterministic native transfer.
345
+ */
346
+ transferProofVerified?: boolean;
347
+ };
238
348
 
239
349
  declare function submitAttestation(params: SubmitAttestationParams): Promise<SubmitAttestationResult>;
240
350
 
@@ -295,6 +405,96 @@ declare function formatSchemaUid(schemaUid: string): Hex;
295
405
 
296
406
  declare function callControllerWitness(params: CallControllerWitnessParams): Promise<CallControllerWitnessResult>;
297
407
 
408
+ /**
409
+ * Request a controller witness attestation from the OMATrust backend.
410
+ *
411
+ * This is the recommended function for requesting controller witnesses.
412
+ * It makes a single API call with the subject and controller DIDs.
413
+ * The backend handles evidence discovery, attestation submission, and
414
+ * write quota deduction.
415
+ *
416
+ * Requires an authenticated session (cookie-based for web clients).
417
+ * Future versions will support x402 and OAuth DCR 2.0 for agents.
418
+ *
419
+ * @deprecated callControllerWitness — use requestControllerWitness instead.
420
+ * callControllerWitness uses the legacy multi-call pattern and will be
421
+ * removed in a future SDK version.
422
+ */
423
+ declare function requestControllerWitness(params: RequestControllerWitnessParams): Promise<RequestControllerWitnessResult>;
424
+
425
+ /**
426
+ * Contract Ownership — shared primitives for discovering contract owners
427
+ * and verifying transfer proofs.
428
+ *
429
+ * Used by:
430
+ * - subject-ownership.ts (full ownership verification flow)
431
+ * - attester-authorization.ts (authorization checks for did:pkh subjects)
432
+ */
433
+
434
+ /**
435
+ * Minimal provider interface for contract ownership reads.
436
+ * Compatible with ethers v6 providers — consumers can pass their provider directly.
437
+ */
438
+ interface ContractOwnershipProvider {
439
+ call(transaction: {
440
+ to: string;
441
+ data: string;
442
+ }): Promise<string>;
443
+ getCode(address: string): Promise<string>;
444
+ getStorage(address: string, slot: string): Promise<string>;
445
+ getTransaction(hash: string): Promise<{
446
+ from?: string | null;
447
+ to?: string | null;
448
+ value?: bigint | string | number | null;
449
+ blockNumber?: number | null;
450
+ } | null>;
451
+ }
452
+ declare const EIP1967_ADMIN_SLOT: "0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103";
453
+ declare const OWNERSHIP_PATTERNS: readonly [{
454
+ readonly method: "owner";
455
+ readonly signature: "function owner() view returns (address)";
456
+ }, {
457
+ readonly method: "admin";
458
+ readonly signature: "function admin() view returns (address)";
459
+ }, {
460
+ readonly method: "getOwner";
461
+ readonly signature: "function getOwner() view returns (address)";
462
+ }];
463
+ /**
464
+ * Read a single address-returning function from a contract.
465
+ * Returns the checksummed address or null if the call fails or returns zero.
466
+ */
467
+ declare function readOwnerFromContract(provider: ContractOwnershipProvider, contractAddress: string, signature: string, method: string): Promise<string | null>;
468
+ /**
469
+ * Discover the controlling wallet address of a contract.
470
+ *
471
+ * Tries, in order:
472
+ * 1. `owner()` — OpenZeppelin Ownable
473
+ * 2. `admin()` — common admin pattern
474
+ * 3. `getOwner()` — alternative naming
475
+ * 4. EIP-1967 admin storage slot
476
+ *
477
+ * Returns the checksummed owner address, or null if not discoverable.
478
+ */
479
+ declare function discoverContractOwner(provider: ContractOwnershipProvider, contractAddress: string): Promise<string | null>;
480
+ /**
481
+ * Discover the controlling wallet and return it as a did:pkh DID.
482
+ * Convenience wrapper over discoverContractOwner for DID-based flows.
483
+ */
484
+ declare function discoverControllingWalletDid(provider: ContractOwnershipProvider, contractAddress: string, chainId: number): Promise<Did | null>;
485
+ /**
486
+ * Verify a transfer proof transaction.
487
+ *
488
+ * Checks:
489
+ * - Transaction exists and has from/to
490
+ * - Recipient matches the expected attester address
491
+ * - Transfer amount matches the deterministic proof amount for the subject-attester pair
492
+ *
493
+ * Does NOT verify the sender is the current contract owner — that's a separate
494
+ * concern (the sender may have been the owner at the time of transfer but not now).
495
+ */
496
+ declare function verifyTransferProof(provider: ContractOwnershipProvider, txHash: Hex, subjectDid: Did, attesterAddress: string, chainId: number): Promise<boolean>;
497
+
298
498
  declare function getSupportedChainIds(): number[];
299
499
  declare function isChainSupported(chainId: number): boolean;
300
500
  declare function getChainConstants(chainId: number, purpose: ProofPurpose): ChainConstants;
@@ -336,18 +536,65 @@ declare function createX402OfferProof(offer: Record<string, unknown>): X402Offer
336
536
 
337
537
  declare function createEvidencePointerProof(url: string): EvidencePointerProof;
338
538
 
339
- declare function parseDnsTxtRecord(record: string): {
539
+ interface VerifyDnsTxtControllerDidOptions {
540
+ resolveTxt?: (host: string) => Promise<string[][]>;
541
+ recordPrefix?: string;
542
+ }
543
+
544
+ interface DnsTxtRecordResult {
340
545
  version?: string;
546
+ /**
547
+ * @deprecated Use `controllers` instead. This field only returns the first
548
+ * controller value and will be removed in a future release.
549
+ */
341
550
  controller?: Did;
342
- [key: string]: string | undefined;
343
- };
551
+ /**
552
+ * All controller DIDs found in the record.
553
+ * A DNS TXT record may contain multiple controller= entries.
554
+ */
555
+ controllers: Did[];
556
+ }
557
+ declare function parseDnsTxtRecord(record: string): DnsTxtRecordResult;
344
558
  declare function buildDnsTxtRecord(controllerDid: Did): string;
345
559
 
560
+ /**
561
+ * DID Document Fetching — shared utility
562
+ *
563
+ * Fetches did:web DID documents from the well-known endpoint.
564
+ * Used by identity/resolve-key and reputation/proof/did-json.
565
+ */
566
+ /**
567
+ * Fetch a DID document for a did:web domain.
568
+ *
569
+ * Resolves `https://<domain>/.well-known/did.json` and returns the parsed JSON.
570
+ *
571
+ * @param domain - The domain to fetch the DID document from
572
+ * @returns The parsed DID document
573
+ * @throws OmaTrustError with code NETWORK_ERROR if fetch fails
574
+ */
346
575
  declare function fetchDidDocument(domain: string): Promise<Record<string, unknown>>;
576
+
347
577
  interface VerifyDidJsonControllerDidOptions {
348
578
  fetchDidDocument?: (domain: string) => Promise<Record<string, unknown>>;
349
579
  }
350
- declare function extractAddressesFromDidDocument(didDocument: Record<string, unknown>): string[];
580
+ /**
581
+ * Extract EVM addresses from a DID document's verification methods.
582
+ * Looks at blockchainAccountId and publicKeyHex fields.
583
+ */
584
+ declare function extractEvmAddressesFromDidDocument(didDocument: Record<string, unknown>): string[];
585
+ /**
586
+ * Extract public JWKs from a DID document's verification methods.
587
+ */
588
+ declare function extractJwksFromDidDocument(didDocument: Record<string, unknown>): Array<Record<string, unknown>>;
589
+ /**
590
+ * Verify that a controller DID is present in a DID document.
591
+ *
592
+ * Matching strategies:
593
+ * - did:pkh (EVM): extract address and compare against blockchainAccountId / publicKeyHex
594
+ * in verification methods. Chain ID is ignored (same address across all EVM chains).
595
+ * - did:jwk: decode the JWK from the DID and compare against publicKeyJwk fields
596
+ * in verification methods.
597
+ */
351
598
  declare function verifyDidDocumentControllerDid(didDocument: Record<string, unknown>, expectedControllerDid: Did): {
352
599
  valid: boolean;
353
600
  reason?: string;
@@ -379,11 +626,6 @@ declare function verifyEip712Signature(typedData: {
379
626
  signer?: string;
380
627
  };
381
628
 
382
- interface VerifyDnsTxtControllerDidOptions {
383
- resolveTxt?: (host: string) => Promise<string[][]>;
384
- recordPrefix?: string;
385
- }
386
-
387
629
  type SubjectOwnershipVerificationMethod = "dns" | "did-document" | "wallet" | "contract" | "minting-wallet" | "transfer";
388
630
  interface SubjectOwnershipVerificationResult {
389
631
  valid: boolean;
@@ -394,19 +636,7 @@ interface SubjectOwnershipVerificationResult {
394
636
  connectedWalletDid: Did;
395
637
  controllingWalletDid?: Did;
396
638
  }
397
- interface EvmOwnershipProvider {
398
- call(transaction: {
399
- to: string;
400
- data: string;
401
- }): Promise<string>;
402
- getCode(address: string): Promise<string>;
403
- getStorage(address: string, slot: string): Promise<string>;
404
- getTransaction(hash: string): Promise<{
405
- from?: string | null;
406
- to?: string | null;
407
- value?: bigint | string | number | null;
408
- blockNumber?: number | null;
409
- } | null>;
639
+ interface EvmOwnershipProvider extends ContractOwnershipProvider {
410
640
  getTransactionReceipt(hash: string): Promise<{
411
641
  blockNumber: number;
412
642
  } | null>;
@@ -431,4 +661,4 @@ declare function verifyDidWebOwnership(params: VerifyDidWebOwnershipParams): Pro
431
661
  declare function verifyDidPkhOwnership(params: VerifyDidPkhOwnershipParams): Promise<SubjectOwnershipVerificationResult>;
432
662
  declare function verifySubjectOwnership(params: VerifySubjectOwnershipParams): Promise<SubjectOwnershipVerificationResult>;
433
663
 
434
- export { createEvidencePointerProof as $, type AttestationQueryResult as A, type BuildDelegatedTypedDataFromEncodedParams as B, type CallControllerWitnessParams as C, type Did as D, type EvidencePointerProof as E, type VerifyProofParams as F, type GetAttestationParams as G, type Hex as H, type VerifyProofResult as I, type VerifySubjectOwnershipParams as J, type X402ReceiptProof as K, type ListAttestationsParams as L, buildDelegatedAttestationTypedData as M, buildDelegatedTypedDataFromEncoded as N, buildDnsTxtRecord as O, type PopEip712Proof as P, buildEip712Domain as Q, type RevokeAttestationParams as R, type SchemaField as S, type TxEncodedValueProof as T, calculateAverageUserReviewRating as U, type VerifyAttestationParams as V, calculateTransferAmount as W, type X402OfferProof as X, calculateTransferAmountFromAddresses as Y, callControllerWitness as Z, constructSeed as _, type AttestationValidationError as a, createPopEip712Proof as a0, createPopJwsProof as a1, createTxEncodedValueProof as a2, createTxInteractionProof as a3, createX402OfferProof as a4, createX402ReceiptProof as a5, decodeAttestationData as a6, deduplicateReviews as a7, encodeAttestationData as a8, extractAddressesFromDidDocument as a9, validateAttestationData as aA, verifyAttestation as aB, verifyDidDocumentControllerDid as aC, verifyDidJsonControllerDid as aD, verifyDidPkhOwnership as aE, verifyDidWebOwnership as aF, verifyEip712Signature as aG, verifyProof as aH, verifySchemaExists as aI, verifySubjectOwnership as aJ, extractExpirationTime as aa, fetchDidDocument as ab, formatSchemaUid as ac, formatTransferAmount as ad, getAttestation as ae, getAttestationsByAttester as af, getAttestationsForDid as ag, getChainConstants as ah, getExplorerAddressUrl as ai, getExplorerTxUrl as aj, getLatestAttestations as ak, getMajorVersion as al, getOmaTrustProofEip712Types as am, getSchemaDetails as an, getSupportedChainIds as ao, hashSeed as ap, isChainSupported as aq, listAttestations as ar, normalizeSchema as as, parseDnsTxtRecord as at, prepareDelegatedAttestation as au, revokeAttestation as av, schemaToString as aw, splitSignature as ax, submitAttestation as ay, submitDelegatedAttestation as az, type CallControllerWitnessResult as b, type ChainConstants as c, type CreatePopEip712ProofParams as d, type CreatePopJwsProofParams as e, type EvmOwnershipProvider as f, type GetAttestationsByAttesterParams as g, type GetLatestAttestationsParams as h, type PopJwsProof as i, type PrepareDelegatedAttestationParams as j, type PrepareDelegatedAttestationResult as k, type ProofPurpose as l, type ProofType as m, type ProofWrapper as n, type RevokeAttestationResult as o, type SubjectOwnershipVerificationMethod as p, type SubjectOwnershipVerificationResult as q, type SubmitAttestationParams as r, type SubmitAttestationResult as s, type SubmitDelegatedAttestationParams as t, type SubmitDelegatedAttestationResult as u, type TxInteractionProof as v, type VerifyAttestationResult as w, type VerifyDidJsonControllerDidOptions as x, type VerifyDidPkhOwnershipParams as y, type VerifyDidWebOwnershipParams as z };
664
+ export { buildDelegatedAttestationTypedData as $, type AttestationQueryResult as A, type BuildDelegatedTypedDataFromEncodedParams as B, type CallControllerWitnessParams as C, type Did as D, type EvidencePointerProof as E, type SubmitAttestationResult as F, type GetAttestationParams as G, type Hex as H, type SubmitDelegatedAttestationParams as I, type SubmitDelegatedAttestationResult as J, type TxInteractionProof as K, type ListAttestationsParams as L, type VerifyAttestationResult as M, type VerifyDidJsonControllerDidOptions as N, type VerifyDidPkhOwnershipParams as O, type PopEip712Proof as P, type VerifyDidWebOwnershipParams as Q, type RelayErrorDetails as R, type SchemaField as S, type TxEncodedValueProof as T, type VerifyProofParams as U, type VerifyAttestationParams as V, type VerifyProofResult as W, type VerifySubjectOwnershipParams as X, type W3CKeyPurpose as Y, type X402OfferProof as Z, type X402ReceiptProof as _, type AttestationValidationError as a, readOwnerFromContract as a$, buildDelegatedTypedDataFromEncoded as a0, buildDnsTxtRecord as a1, buildEip712Domain as a2, calculateAverageUserReviewRating as a3, calculateTransferAmount as a4, calculateTransferAmountFromAddresses as a5, callControllerWitness as a6, constructSeed as a7, createEvidencePointerProof as a8, createPopEip712Proof as a9, isChainSupported as aA, listAttestations as aB, normalizeSchema as aC, parseDnsTxtRecord as aD, prepareDelegatedAttestation as aE, requestControllerWitness as aF, revokeAttestation as aG, schemaToString as aH, splitSignature as aI, submitAttestation as aJ, submitDelegatedAttestation as aK, validateAttestationData as aL, verifyAttestation as aM, verifyDidDocumentControllerDid as aN, verifyDidJsonControllerDid as aO, verifyDidPkhOwnership as aP, verifyDidWebOwnership as aQ, verifyEip712Signature as aR, verifyProof as aS, verifySchemaExists as aT, verifySubjectOwnership as aU, type VerifyDnsTxtControllerDidOptions as aV, type ContractOwnershipProvider as aW, EIP1967_ADMIN_SLOT as aX, OWNERSHIP_PATTERNS as aY, discoverContractOwner as aZ, discoverControllingWalletDid as a_, createPopJwsProof as aa, createTxEncodedValueProof as ab, createTxInteractionProof as ac, createX402OfferProof as ad, createX402ReceiptProof as ae, decodeAttestationData as af, deduplicateReviews as ag, encodeAttestationData as ah, extractEvmAddressesFromDidDocument as ai, extractExpirationTime as aj, extractJwksFromDidDocument as ak, fetchDidDocument as al, formatSchemaUid as am, formatTransferAmount as an, getAttestation as ao, getAttestationsByAttester as ap, getAttestationsForDid as aq, getChainConstants as ar, getExplorerAddressUrl as as, getExplorerTxUrl as at, getLatestAttestations as au, getMajorVersion as av, getOmaTrustProofEip712Types as aw, getSchemaDetails as ax, getSupportedChainIds as ay, hashSeed as az, type CallControllerWitnessResult as b, verifyTransferProof as b0, type ChainConstants as c, type ControllerAuthorizationResult as d, type ControllerWitnessEvidence as e, type CreatePopEip712ProofParams as f, type CreatePopJwsProofParams as g, type DnsTxtRecordResult as h, type EvmOwnershipProvider as i, type GetAttestationsByAttesterParams as j, type GetControllerAuthorizationParams as k, type GetLatestAttestationsParams as l, type PopJwsProof as m, type PrepareDelegatedAttestationParams as n, type PrepareDelegatedAttestationResult as o, type ProofPurpose as p, type ProofType as q, type ProofWrapper as r, type RelayMetadata as s, type RequestControllerWitnessParams as t, type RequestControllerWitnessResult as u, type RevokeAttestationParams as v, type RevokeAttestationResult as w, type SubjectOwnershipVerificationMethod as x, type SubjectOwnershipVerificationResult as y, type SubmitAttestationParams as z };