@ghostspeak/sdk 2.0.7 → 2.0.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +145 -2
- package/dist/.tsbuildinfo +1 -0
- package/dist/{GhostSpeakClient-CWmGaM9Q.d.ts → GhostSpeakClient-qdLGyuDp.d.ts} +11 -7
- package/dist/{StakingModule-C5rzuOWb.d.ts → StakingModule-CPhp_ZY0.d.ts} +263 -343
- package/dist/{agent-5YLZ7DAC.js → agent-S42FIMR7.js} +3 -3
- package/dist/{agent-5YLZ7DAC.js.map → agent-S42FIMR7.js.map} +1 -1
- package/dist/browser-D1TpjbjZ.d.ts +234 -0
- package/dist/browser.d.ts +4 -64
- package/dist/browser.js +9 -9
- package/dist/{chunk-SFTSZ3LC.js → chunk-46QWY3MG.js} +3 -3
- package/dist/{chunk-SFTSZ3LC.js.map → chunk-46QWY3MG.js.map} +1 -1
- package/dist/{chunk-IHVDQ4YI.js → chunk-5QZVFUXB.js} +201 -256
- package/dist/chunk-5QZVFUXB.js.map +1 -0
- package/dist/{chunk-E3FD2CNY.js → chunk-5SS3OL4B.js} +20 -24
- package/dist/chunk-5SS3OL4B.js.map +1 -0
- package/dist/{chunk-SZGFSCNU.js → chunk-63A7F2YP.js} +504 -326
- package/dist/chunk-63A7F2YP.js.map +1 -0
- package/dist/{chunk-JV2SWONF.js → chunk-A7ALCVUI.js} +3 -3
- package/dist/{chunk-JV2SWONF.js.map → chunk-A7ALCVUI.js.map} +1 -1
- package/dist/{chunk-AL3HQN73.js → chunk-AWMGX3OX.js} +172 -112
- package/dist/chunk-AWMGX3OX.js.map +1 -0
- package/dist/{chunk-G7S6B6WB.js → chunk-EU6PHSM5.js} +7 -7
- package/dist/{chunk-G7S6B6WB.js.map → chunk-EU6PHSM5.js.map} +1 -1
- package/dist/{chunk-C5CDA3WX.js → chunk-HIDBANFS.js} +529 -4
- package/dist/chunk-HIDBANFS.js.map +1 -0
- package/dist/{chunk-S74EH3KD.js → chunk-IQM5RASO.js} +637 -25
- package/dist/chunk-IQM5RASO.js.map +1 -0
- package/dist/{chunk-KB6CKIUK.js → chunk-QLRWUHN2.js} +3 -3
- package/dist/{chunk-KB6CKIUK.js.map → chunk-QLRWUHN2.js.map} +1 -1
- package/dist/{chunk-BQDGRTVP.js → chunk-QWQTPTZ4.js} +39 -51
- package/dist/chunk-QWQTPTZ4.js.map +1 -0
- package/dist/client.d.ts +3 -4
- package/dist/client.js +10 -10
- package/dist/{createAgentAuthorization-ULG47ZJI.js → createAgentAuthorization-KGZNXZBT.js} +4 -4
- package/dist/{createAgentAuthorization-ULG47ZJI.js.map → createAgentAuthorization-KGZNXZBT.js.map} +1 -1
- package/dist/generated-QJREJQ2C.js +9 -0
- package/dist/{generated-EG5USUFG.js.map → generated-QJREJQ2C.js.map} +1 -1
- package/dist/index.d.ts +345 -236
- package/dist/index.js +372 -537
- package/dist/index.js.map +1 -1
- package/dist/metafile-esm.json +1 -1
- package/dist/minimal/core-minimal.d.ts +266 -189
- package/dist/minimal/core-minimal.js +6 -6
- package/dist/minimal/core-minimal.js.map +1 -1
- package/dist/{revokeAuthorization-OK7E7OK3.js → revokeAuthorization-2ZRO6GUZ.js} +4 -4
- package/dist/{revokeAuthorization-OK7E7OK3.js.map → revokeAuthorization-2ZRO6GUZ.js.map} +1 -1
- package/dist/{signature-verification-DGxR4aYQ.d.ts → signature-verification-BDzoR1MG.d.ts} +0 -5
- package/dist/{updateReputationWithAuth-Y4ONEVSP.js → updateReputationWithAuth-PCEUOCFV.js} +4 -4
- package/dist/{updateReputationWithAuth-Y4ONEVSP.js.map → updateReputationWithAuth-PCEUOCFV.js.map} +1 -1
- package/dist/utils.d.ts +143 -2
- package/dist/utils.js +10 -10
- package/dist/utils.js.map +1 -1
- package/package.json +5 -3
- package/dist/chunk-AL3HQN73.js.map +0 -1
- package/dist/chunk-BQDGRTVP.js.map +0 -1
- package/dist/chunk-C5CDA3WX.js.map +0 -1
- package/dist/chunk-E3FD2CNY.js.map +0 -1
- package/dist/chunk-IHVDQ4YI.js.map +0 -1
- package/dist/chunk-S74EH3KD.js.map +0 -1
- package/dist/chunk-SZGFSCNU.js.map +0 -1
- package/dist/generated-EG5USUFG.js +0 -9
package/dist/index.d.ts
CHANGED
|
@@ -1,23 +1,24 @@
|
|
|
1
|
-
import { P as PrivacyMode, R as ReputationTier, S as ScoreRange, a as PrivacySettings, M as MetricVisibility, V as VisibleReputation
|
|
2
|
-
export { j as ApplyPresetParams, G as GhostSpeakClient, h as GrantAccessParams, I as InitializePrivacyParams, n as IssuedCredentialResult, e as PRIVACY_CONSTANTS, b as PrivacyModule, f as PrivacyPreset, d as PrivacyPresets, i as RevokeAccessParams, g as SetMetricVisibilityParams, m as UnifiedCredentialConfig, k as UnifiedCredentialService, U as UpdatePrivacyModeParams, c as VisibilityLevel, G as default, l as lamportsToSol, s as sol } from './GhostSpeakClient-
|
|
3
|
-
import { Address, ReadonlyUint8Array, Option, Decoder, TransactionSigner, AccountMeta, Instruction, InstructionWithData, InstructionWithAccounts, WritableAccount, ReadonlySignerAccount, AccountSignerMeta, ReadonlyAccount,
|
|
1
|
+
import { P as PrivacyMode, R as ReputationTier, S as ScoreRange, a as PrivacySettings, M as MetricVisibility, V as VisibleReputation } from './GhostSpeakClient-qdLGyuDp.js';
|
|
2
|
+
export { j as ApplyPresetParams, A as AuthorizationModule, G as GhostSpeakClient, h as GrantAccessParams, I as InitializePrivacyParams, n as IssuedCredentialResult, e as PRIVACY_CONSTANTS, b as PrivacyModule, f as PrivacyPreset, d as PrivacyPresets, i as RevokeAccessParams, g as SetMetricVisibilityParams, m as UnifiedCredentialConfig, k as UnifiedCredentialService, U as UpdatePrivacyModeParams, c as VisibilityLevel, G as default, l as lamportsToSol, s as sol } from './GhostSpeakClient-qdLGyuDp.js';
|
|
3
|
+
import { Address, ReadonlyUint8Array, Option, Decoder, TransactionSigner, AccountMeta, Instruction, InstructionWithData, InstructionWithAccounts, WritableAccount, ReadonlySignerAccount, AccountSignerMeta, ReadonlyAccount, OptionOrNullable, WritableSignerAccount, Slot, Lamports, Epoch, Base58EncodedBytes, Base64EncodedBytes, TransactionError, Base64EncodedWireTransaction, Signature, TransactionMessageBytesBase64, Commitment as Commitment$1, KeyPairSigner } from '@solana/kit';
|
|
4
4
|
export { TransactionSigner, address, createKeyPairSignerFromBytes, createSolanaRpc, generateKeyPairSigner } from '@solana/kit';
|
|
5
5
|
export { AddressOf, Agent, AgentCreationParams, AgentEvent, AgentMetadata, AgentType, Attachment, Channel, ChannelCreationParams, ChannelEvent, ChannelType, CommunicationMessage, CommunicationSession, ConfidentialBalance, ConfidentialTransfer, CreateCommunicationSessionParams, DeepPartial, ErrorCode, Escrow, EscrowCreationParams, EscrowEvent, Event, FilterOptions, Message, MessageType, Milestone, PaginationOptions, ParticipantStatus, ParticipantType, QueryResult, Rating, Reaction, Reputation, Result, SDKError, SendCommunicationMessageParams, SimulationResult, Transaction, TransferProof, UpdateParticipantStatusParams, WithAddress, isError, isSuccess, unwrap } from './types.js';
|
|
6
6
|
export { AccountNotFoundError, ErrorFactory, ErrorHandler, InsufficientBalanceError, InvalidInputError, NetworkError, SimulationFailedError, TimeoutError, TransactionFailedError, ValidationError } from './errors.js';
|
|
7
|
-
import {
|
|
8
|
-
export {
|
|
7
|
+
import { c as AccessTier, d as GHOSTSPEAK_MARKETPLACE_PROGRAM_ADDRESS, P as PricingModelArgs, E as ExtendedRpcApi, B as BaseModule } from './StakingModule-CPhp_ZY0.js';
|
|
8
|
+
export { a8 as AgentAccount, A as AgentModule, a7 as AgentRegistrationData, a6 as AgentWithAddress, e as CacheConfig, C as CacheManager, f as ClaimGhostParams, am as Commitment, a0 as CreateDidDocumentParams, j as CreateProposalParams, p as Credential, n as CredentialKind, m as CredentialModule, o as CredentialStatus, q as CredentialTemplate, a2 as DeactivateDidDocumentParams, X as DidDocument, t as DidError, u as DidErrorClass, D as DidModule, _ as DidResolutionMetadata, al as EmergencyConfig, l as ExecutionParams, a as GhostModule, G as GhostSpeakConfig, aa as GhostSpeakError, b as GovernanceModule, i as InitializeStakingConfigParams, I as InstructionBuilder, M as MultisigModule, N as Network, a5 as PayAIReputationRecordInput, g as PreparedClaimResult, a9 as PricingModel, k as ProposalType, ab as RegisterAgentParams, a4 as ReputationData, R as ReputationModule, a3 as ResolveDidDocumentParams, an as RetryConfig, ad as RpcAccountInfo, ag as RpcAccountInfoResponse, ao as RpcApi, ah as RpcMultipleAccountsResponse, ae as RpcProgramAccount, af as RpcProgramAccountsResponse, ac as RpcResponse, ap as RpcSubscriptionApi, Z as ServiceEndpoint, s as ServiceEndpointType, aj as SimulatedTransactionResponse, ak as SolanaRpcClient, h as StakeParams, aq as StakingAccount, ar as StakingConfig, S as StakingModule, ai as TransactionResponse, U as UnstakeParams, a1 as UpdateDidDocumentParams, Y as VerificationMethod, V as VerificationMethodType, r as VerificationRelationship, $ as W3CDidDocument, W as W3CVerifiableCredential, L as canPerformAction, F as createEd25519VerificationMethod, H as createServiceEndpoint, at as decodeAgent, v as deriveDidDocumentPda, O as didDocumentToJson, z as exportAsW3CDidDocument, au as fetchAgent, av as fetchMaybeAgent, w as generateDidString, as as getAgentDecoder, T as getIdentifierFromDid, K as getMethodsForRelationship, Q as getNetworkFromDid, aw as getStakingAccountDecoder, ax as getStakingConfigDecoder, J as isDidActive, y as parseDidString, x as validateDidString } from './StakingModule-CPhp_ZY0.js';
|
|
9
|
+
import * as gill from 'gill';
|
|
10
|
+
import { SolanaClient } from 'gill';
|
|
9
11
|
import { Address as Address$1 } from '@solana/addresses';
|
|
10
|
-
export { l as AuthorizationFilter, p as AuthorizationInvalidReason, q as AuthorizationMessage, n as AuthorizationMetadata, o as AuthorizationProof, u as AuthorizationRevocation, A as AuthorizationStatus, t as AuthorizationUsage, k as AuthorizationWithStatus, B as BatchAuthorizationVerification, C as CreateAuthorizationParams, R as ReputationAuthorization, m as SolanaNetwork, V as VerificationDetails, r as VerifyAuthorizationParams, c as createAuthorizationMessage, b as createSignedAuthorization, e as deserializeAuthorization, g as generateNonce, f as getAuthorizationId, h as isAuthorizationExhausted, i as isAuthorizationExpired, d as serializeAuthorization, a as signAuthorizationMessage, j as validateAuthorizationNetwork, v as verifyAuthorizationSignature } from './signature-verification-
|
|
12
|
+
export { l as AuthorizationFilter, p as AuthorizationInvalidReason, q as AuthorizationMessage, n as AuthorizationMetadata, o as AuthorizationProof, u as AuthorizationRevocation, A as AuthorizationStatus, t as AuthorizationUsage, k as AuthorizationWithStatus, B as BatchAuthorizationVerification, C as CreateAuthorizationParams, R as ReputationAuthorization, m as SolanaNetwork, V as VerificationDetails, r as VerifyAuthorizationParams, c as createAuthorizationMessage, b as createSignedAuthorization, e as deserializeAuthorization, g as generateNonce, f as getAuthorizationId, h as isAuthorizationExhausted, i as isAuthorizationExpired, d as serializeAuthorization, a as signAuthorizationMessage, j as validateAuthorizationNetwork, v as verifyAuthorizationSignature } from './signature-verification-BDzoR1MG.js';
|
|
13
|
+
export { h as ASSOCIATED_TOKEN_PROGRAM_ADDRESS, A as ATTESTATION_SEED, d as AttestationPDAResult, C as CREDENTIAL_SEED, e as CreateAttestationConfig, f as GHOSTSPEAK_PROGRAM_ID, c as GhostOwnershipAttestationData, G as GhostSpeakCredentialConfig, N as NATIVE_MINT_ADDRESS, S as SASAttestationHelper, a as SAS_PROGRAM_ID, b as SCHEMA_SEED, g as TOKEN_2022_PROGRAM_ADDRESS, T as TOKEN_PROGRAM_ADDRESS } from './browser-D1TpjbjZ.js';
|
|
11
14
|
import { I as IPFSClient, C as ClientEncryptionService } from './feature-flags-B1g0DCPe.js';
|
|
12
15
|
export { A as AccountInspectionResult, a5 as AssociatedTokenAccount, K as BatchDiagnosticReport, af as ClientEncryptionOptions, a7 as ConfidentialTransferConfig, J as DiagnosticReport, D as DiscriminatorValidationResult, ad as EncryptedData, ai as FeatureFlagManager, aj as FeatureFlags, G as GhostSpeakSDKError, a8 as InterestBearingConfig, L as LegacyAgentData, M as MigrationPlan, x as MigrationResult, ae as PrivateMetadata, R as ReputationTagEngine, _ as TokenExtension, T as TokenProgram, a6 as TransferFeeConfig, m as createDiscriminatorErrorMessage, c as createErrorContext, o as createMigrationPlan, q as createMigrationReport, d as deriveAssociatedTokenAddress, a9 as deriveMultisigPda, aa as deriveProposalPda, S as deriveSplTokenAssociatedTokenAddress, U as deriveToken2022AssociatedTokenAddress, a as detectTokenProgram, B as diagnoseAccountFromChain, F as diagnoseBatchFromChain, e as enhanceTransactionError, H as exportDiagnosticReport, Q as extractInstructionName, u as extractLegacyData, f as formatTokenAmount, ab as generateLocalPrivacyProof, W as getAllAssociatedTokenAddresses, V as getAssociatedTokenAccount, a3 as getConfidentialTransferConfig, ag as getFeatureFlags, a4 as getInterestBearingConfig, t as getMigrationInstructions, Y as getTokenProgramAddress, Z as getTokenProgramFromAddress, g as getTokenProgramType, a2 as getTransferFeeConfig, a0 as hasConfidentialTransferExtension, a1 as hasInterestBearingExtension, $ as hasTransferFeeExtension, n as inspectAccountData, ah as isFeatureEnabled, i as isToken2022Mint, O as logEnhancedError, p as parseTokenAmount, y as runAccountDiagnostics, z as runBatchDiagnostics, s as safeDecodeAgent, r as simulateMigration, v as validateAccountDiscriminator, X as validateAssociatedTokenAddress, P as validatePreconditions, ac as verifyLocalPrivacyProof, w as withEnhancedErrors, N as withEnhancedErrorsSync } from './feature-flags-B1g0DCPe.js';
|
|
13
16
|
import { Rpc, GetSignaturesForAddressApi, GetTransactionApi, GetAccountInfoApi } from '@solana/rpc';
|
|
14
17
|
import { I as IPFSConfig, g as IPFSUploadOptions, C as ContentStorageResult, m as IPFSContentMetadata, h as IPFSOperationResult, r as IPFSError } from './reputation-types-Yebf0Rm_.js';
|
|
15
18
|
export { B as BadgeType, t as BehaviorTag, A as BulkTagUpdateRequest, o as CategoryReputation, u as ComplianceTag, D as DEFAULT_TAG_DECAY, K as FlexibleContent, l as IPFSPinResult, H as IPFSProviderConfig, j as IPFSRetrievalOptions, k as IPFSRetrievalResult, i as IPFSUploadResult, J as JobPerformance, F as ProposalStatus, s as REPUTATION_CONSTANTS, a as ReputationCalculationResult, p as ReputationTier, S as SkillTag, v as TAG_CONSTANTS, q as TagCategory, w as TagConfidenceLevel, x as TagCriteria, T as TagDecayConfig, y as TagEvaluation, d as TagFilters, e as TagQueryResult, b as TagReputationMetrics, c as TagScoreType, z as TagUpdateRequest } from './reputation-types-Yebf0Rm_.js';
|
|
16
19
|
export { CrossmintClientOptions, CredentialType as CrossmintCredentialType, IssuedCredential as CrossmintIssuedCredential, CrossmintVCClient, GHOSTSPEAK_CREDENTIAL_TYPES } from './credentials.js';
|
|
17
|
-
import { EventEmitter } from 'node:events';
|
|
18
20
|
export { ElGamalCiphertext, ElGamalKeypair, TransferProof as ElGamalTransferProof, WasmModule, WithdrawProof, decrypt, elgamal, encrypt, generateKeypair, generateTransferProof, generateWithdrawProof, isWasmAvailable, loadWasmModule, wasmBridge } from './crypto.js';
|
|
19
21
|
export { d as deriveAgentPda, b as deriveAgentVerificationPda, a as deriveUserRegistryPda, f as findProgramDerivedAddress } from './pda-Ce7VYg4T.js';
|
|
20
|
-
export { ASSOCIATED_TOKEN_PROGRAM_ADDRESS, GHOSTSPEAK_PROGRAM_ID, NATIVE_MINT_ADDRESS, TOKEN_2022_PROGRAM_ADDRESS, TOKEN_PROGRAM_ADDRESS } from './browser.js';
|
|
21
22
|
|
|
22
23
|
/**
|
|
23
24
|
* This code was AUTOGENERATED using the Codama library.
|
|
@@ -454,6 +455,52 @@ declare function getArbitrateDisputeInstruction<TAccountEscrow extends string, T
|
|
|
454
455
|
programAddress?: TProgramAddress;
|
|
455
456
|
}): ArbitrateDisputeInstruction<TProgramAddress, TAccountEscrow, TAccountEscrowVault, TAccountAgentTokenAccount, TAccountClientTokenAccount, TAccountAgentStaking, TAccountArbitrator, TAccountTokenProgram>;
|
|
456
457
|
|
|
458
|
+
/**
|
|
459
|
+
* This code was AUTOGENERATED using the Codama library.
|
|
460
|
+
* Please DO NOT EDIT THIS FILE, instead use visitors
|
|
461
|
+
* to add features, then rerun Codama to update it.
|
|
462
|
+
*
|
|
463
|
+
* @see https://github.com/codama-idl/codama
|
|
464
|
+
*/
|
|
465
|
+
|
|
466
|
+
type ClaimGhostInstruction<TProgram extends string = typeof GHOSTSPEAK_MARKETPLACE_PROGRAM_ADDRESS, TAccountAgentAccount extends string | AccountMeta<string> = string, TAccountDidDocument extends string | AccountMeta<string> = string, TAccountSasAttestation extends string | AccountMeta<string> = string, TAccountClaimer extends string | AccountMeta<string> = string, TAccountSystemProgram extends string | AccountMeta<string> = "11111111111111111111111111111111", TRemainingAccounts extends readonly AccountMeta<string>[] = []> = Instruction<TProgram> & InstructionWithData<ReadonlyUint8Array> & InstructionWithAccounts<[
|
|
467
|
+
TAccountAgentAccount extends string ? WritableAccount<TAccountAgentAccount> : TAccountAgentAccount,
|
|
468
|
+
TAccountDidDocument extends string ? WritableAccount<TAccountDidDocument> : TAccountDidDocument,
|
|
469
|
+
TAccountSasAttestation extends string ? ReadonlyAccount<TAccountSasAttestation> : TAccountSasAttestation,
|
|
470
|
+
TAccountClaimer extends string ? WritableSignerAccount<TAccountClaimer> & AccountSignerMeta<TAccountClaimer> : TAccountClaimer,
|
|
471
|
+
TAccountSystemProgram extends string ? ReadonlyAccount<TAccountSystemProgram> : TAccountSystemProgram,
|
|
472
|
+
...TRemainingAccounts
|
|
473
|
+
]>;
|
|
474
|
+
type ClaimGhostInstructionDataArgs = {
|
|
475
|
+
sasCredential: Address;
|
|
476
|
+
sasSchema: Address;
|
|
477
|
+
ipfsMetadataUri: OptionOrNullable<string>;
|
|
478
|
+
network: string;
|
|
479
|
+
};
|
|
480
|
+
type ClaimGhostInput<TAccountAgentAccount extends string = string, TAccountDidDocument extends string = string, TAccountSasAttestation extends string = string, TAccountClaimer extends string = string, TAccountSystemProgram extends string = string> = {
|
|
481
|
+
agentAccount: Address<TAccountAgentAccount>;
|
|
482
|
+
/**
|
|
483
|
+
* DID document to create for this Ghost
|
|
484
|
+
* Seeds: [b"did_document", agent_account.x402_payment_address.as_ref()]
|
|
485
|
+
*/
|
|
486
|
+
didDocument: Address<TAccountDidDocument>;
|
|
487
|
+
/**
|
|
488
|
+
* SAS Attestation proving ownership of x402_payment_address
|
|
489
|
+
* PDA: [b"attestation", sas_credential, sas_schema, x402_payment_address]
|
|
490
|
+
*/
|
|
491
|
+
sasAttestation: Address<TAccountSasAttestation>;
|
|
492
|
+
/** The claimer must have created a SAS attestation proving they own x402_payment_address */
|
|
493
|
+
claimer: TransactionSigner<TAccountClaimer>;
|
|
494
|
+
systemProgram?: Address<TAccountSystemProgram>;
|
|
495
|
+
sasCredential: ClaimGhostInstructionDataArgs["sasCredential"];
|
|
496
|
+
sasSchema: ClaimGhostInstructionDataArgs["sasSchema"];
|
|
497
|
+
ipfsMetadataUri: ClaimGhostInstructionDataArgs["ipfsMetadataUri"];
|
|
498
|
+
network: ClaimGhostInstructionDataArgs["network"];
|
|
499
|
+
};
|
|
500
|
+
declare function getClaimGhostInstruction<TAccountAgentAccount extends string, TAccountDidDocument extends string, TAccountSasAttestation extends string, TAccountClaimer extends string, TAccountSystemProgram extends string, TProgramAddress extends Address = typeof GHOSTSPEAK_MARKETPLACE_PROGRAM_ADDRESS>(input: ClaimGhostInput<TAccountAgentAccount, TAccountDidDocument, TAccountSasAttestation, TAccountClaimer, TAccountSystemProgram>, config?: {
|
|
501
|
+
programAddress?: TProgramAddress;
|
|
502
|
+
}): ClaimGhostInstruction<TProgramAddress, TAccountAgentAccount, TAccountDidDocument, TAccountSasAttestation, TAccountClaimer, TAccountSystemProgram>;
|
|
503
|
+
|
|
457
504
|
/**
|
|
458
505
|
* This code was AUTOGENERATED using the Codama library.
|
|
459
506
|
* Please DO NOT EDIT THIS FILE, instead use visitors
|
|
@@ -995,6 +1042,70 @@ interface SendTransactionOptions {
|
|
|
995
1042
|
minContextSlot?: Slot;
|
|
996
1043
|
}
|
|
997
1044
|
|
|
1045
|
+
/**
|
|
1046
|
+
* API Response Types for GhostSpeak Public API
|
|
1047
|
+
*
|
|
1048
|
+
* These types match the REST API responses from packages/api
|
|
1049
|
+
*/
|
|
1050
|
+
interface ApiGhost {
|
|
1051
|
+
address: string;
|
|
1052
|
+
owner: string | null;
|
|
1053
|
+
status: string;
|
|
1054
|
+
firstTxSignature: string;
|
|
1055
|
+
firstSeenTimestamp: number;
|
|
1056
|
+
discoverySource: string;
|
|
1057
|
+
claimedAt: number | null;
|
|
1058
|
+
agentId: string;
|
|
1059
|
+
name: string;
|
|
1060
|
+
description: string;
|
|
1061
|
+
metadataUri: string;
|
|
1062
|
+
serviceEndpoint: string;
|
|
1063
|
+
externalIdentifiers: Array<{
|
|
1064
|
+
platform: string;
|
|
1065
|
+
externalId: string;
|
|
1066
|
+
verified: boolean;
|
|
1067
|
+
verifiedAt: number;
|
|
1068
|
+
}>;
|
|
1069
|
+
ghostScore: number;
|
|
1070
|
+
reputationScore: number;
|
|
1071
|
+
reputationComponents: Array<{
|
|
1072
|
+
source: string;
|
|
1073
|
+
score: number;
|
|
1074
|
+
weight: number;
|
|
1075
|
+
lastUpdated: number;
|
|
1076
|
+
}>;
|
|
1077
|
+
didAddress: string | null;
|
|
1078
|
+
credentials: string[];
|
|
1079
|
+
isActive: boolean;
|
|
1080
|
+
isVerified: boolean;
|
|
1081
|
+
verificationTimestamp: number;
|
|
1082
|
+
createdAt: number;
|
|
1083
|
+
updatedAt: number;
|
|
1084
|
+
}
|
|
1085
|
+
interface ApiGhostScore {
|
|
1086
|
+
address: string;
|
|
1087
|
+
score: number;
|
|
1088
|
+
maxScore: number;
|
|
1089
|
+
components: Array<{
|
|
1090
|
+
source: string;
|
|
1091
|
+
score: number;
|
|
1092
|
+
weight: number;
|
|
1093
|
+
lastUpdated: number;
|
|
1094
|
+
}>;
|
|
1095
|
+
lastUpdated: number;
|
|
1096
|
+
}
|
|
1097
|
+
interface ApiExternalIdLookup {
|
|
1098
|
+
mapping: {
|
|
1099
|
+
platform: string;
|
|
1100
|
+
externalId: string;
|
|
1101
|
+
ghostAddress: string;
|
|
1102
|
+
verified: boolean;
|
|
1103
|
+
verifiedAt: number | null;
|
|
1104
|
+
createdAt: number;
|
|
1105
|
+
};
|
|
1106
|
+
ghost: ApiGhost | null;
|
|
1107
|
+
}
|
|
1108
|
+
|
|
998
1109
|
/**
|
|
999
1110
|
* Calculate visible score based on privacy settings
|
|
1000
1111
|
*
|
|
@@ -1094,16 +1205,23 @@ interface RpcClientConfig {
|
|
|
1094
1205
|
/**
|
|
1095
1206
|
* Unified RPC client with all features consolidated from multiple implementations.
|
|
1096
1207
|
* This is the single source of truth for all RPC operations.
|
|
1208
|
+
*
|
|
1209
|
+
* Now powered by Gill for simplified client management while maintaining
|
|
1210
|
+
* full backward compatibility with the existing API.
|
|
1097
1211
|
*/
|
|
1098
1212
|
declare class RpcClient {
|
|
1099
|
-
private
|
|
1100
|
-
private rpcSubscriptions?;
|
|
1213
|
+
private client;
|
|
1101
1214
|
private commitment;
|
|
1102
1215
|
private endpoint;
|
|
1103
1216
|
private maxRetries;
|
|
1104
1217
|
private retryDelay;
|
|
1105
1218
|
private timeout;
|
|
1106
1219
|
constructor(config: RpcClientConfig);
|
|
1220
|
+
/**
|
|
1221
|
+
* Get the underlying RPC client for direct access
|
|
1222
|
+
* This provides access to Gill's rpc object for advanced operations
|
|
1223
|
+
*/
|
|
1224
|
+
get rpc(): gill.Rpc<(gill.GetAccountInfoApi & gill.GetBalanceApi & gill.GetBlockApi & gill.GetBlockCommitmentApi & gill.GetBlockHeightApi & gill.GetBlockProductionApi & gill.GetBlocksApi & gill.GetBlocksWithLimitApi & gill.GetBlockTimeApi & gill.GetClusterNodesApi & gill.GetEpochInfoApi & gill.GetEpochScheduleApi & gill.GetFeeForMessageApi & gill.GetFirstAvailableBlockApi & gill.GetGenesisHashApi & gill.GetHealthApi & gill.GetHighestSnapshotSlotApi & gill.GetIdentityApi & gill.GetInflationGovernorApi & gill.GetInflationRateApi & gill.GetInflationRewardApi & gill.GetLargestAccountsApi & gill.GetLatestBlockhashApi & gill.GetLeaderScheduleApi & gill.GetMaxRetransmitSlotApi & gill.GetMaxShredInsertSlotApi & gill.GetMinimumBalanceForRentExemptionApi & gill.GetMultipleAccountsApi & gill.GetProgramAccountsApi & gill.GetRecentPerformanceSamplesApi & gill.GetRecentPrioritizationFeesApi & gill.GetSignaturesForAddressApi & gill.GetSignatureStatusesApi & gill.GetSlotApi & gill.GetSlotLeaderApi & gill.GetSlotLeadersApi & gill.GetStakeMinimumDelegationApi & gill.GetSupplyApi & gill.GetTokenAccountBalanceApi & gill.GetTokenAccountsByDelegateApi & gill.GetTokenAccountsByOwnerApi & gill.GetTokenLargestAccountsApi & gill.GetTokenSupplyApi & gill.GetTransactionApi & gill.GetTransactionCountApi & gill.GetVersionApi & gill.GetVoteAccountsApi & gill.IsBlockhashValidApi & gill.MinimumLedgerSlotApi & gill.SendTransactionApi & gill.SimulateTransactionApi) | (gill.RequestAirdropApi & gill.GetAccountInfoApi & gill.GetBalanceApi & gill.GetBlockApi & gill.GetBlockCommitmentApi & gill.GetBlockHeightApi & gill.GetBlockProductionApi & gill.GetBlocksApi & gill.GetBlocksWithLimitApi & gill.GetBlockTimeApi & gill.GetClusterNodesApi & gill.GetEpochInfoApi & gill.GetEpochScheduleApi & gill.GetFeeForMessageApi & gill.GetFirstAvailableBlockApi & gill.GetGenesisHashApi & gill.GetHealthApi & gill.GetHighestSnapshotSlotApi & gill.GetIdentityApi & gill.GetInflationGovernorApi & gill.GetInflationRateApi & gill.GetInflationRewardApi & gill.GetLargestAccountsApi & gill.GetLatestBlockhashApi & gill.GetLeaderScheduleApi & gill.GetMaxRetransmitSlotApi & gill.GetMaxShredInsertSlotApi & gill.GetMinimumBalanceForRentExemptionApi & gill.GetMultipleAccountsApi & gill.GetProgramAccountsApi & gill.GetRecentPerformanceSamplesApi & gill.GetRecentPrioritizationFeesApi & gill.GetSignaturesForAddressApi & gill.GetSignatureStatusesApi & gill.GetSlotApi & gill.GetSlotLeaderApi & gill.GetSlotLeadersApi & gill.GetStakeMinimumDelegationApi & gill.GetSupplyApi & gill.GetTokenAccountBalanceApi & gill.GetTokenAccountsByDelegateApi & gill.GetTokenAccountsByOwnerApi & gill.GetTokenLargestAccountsApi & gill.GetTokenSupplyApi & gill.GetTransactionApi & gill.GetTransactionCountApi & gill.GetVersionApi & gill.GetVoteAccountsApi & gill.IsBlockhashValidApi & gill.MinimumLedgerSlotApi & gill.SendTransactionApi & gill.SimulateTransactionApi)> | gill.RpcDevnet<(gill.GetAccountInfoApi & gill.GetBalanceApi & gill.GetBlockApi & gill.GetBlockCommitmentApi & gill.GetBlockHeightApi & gill.GetBlockProductionApi & gill.GetBlocksApi & gill.GetBlocksWithLimitApi & gill.GetBlockTimeApi & gill.GetClusterNodesApi & gill.GetEpochInfoApi & gill.GetEpochScheduleApi & gill.GetFeeForMessageApi & gill.GetFirstAvailableBlockApi & gill.GetGenesisHashApi & gill.GetHealthApi & gill.GetHighestSnapshotSlotApi & gill.GetIdentityApi & gill.GetInflationGovernorApi & gill.GetInflationRateApi & gill.GetInflationRewardApi & gill.GetLargestAccountsApi & gill.GetLatestBlockhashApi & gill.GetLeaderScheduleApi & gill.GetMaxRetransmitSlotApi & gill.GetMaxShredInsertSlotApi & gill.GetMinimumBalanceForRentExemptionApi & gill.GetMultipleAccountsApi & gill.GetProgramAccountsApi & gill.GetRecentPerformanceSamplesApi & gill.GetRecentPrioritizationFeesApi & gill.GetSignaturesForAddressApi & gill.GetSignatureStatusesApi & gill.GetSlotApi & gill.GetSlotLeaderApi & gill.GetSlotLeadersApi & gill.GetStakeMinimumDelegationApi & gill.GetSupplyApi & gill.GetTokenAccountBalanceApi & gill.GetTokenAccountsByDelegateApi & gill.GetTokenAccountsByOwnerApi & gill.GetTokenLargestAccountsApi & gill.GetTokenSupplyApi & gill.GetTransactionApi & gill.GetTransactionCountApi & gill.GetVersionApi & gill.GetVoteAccountsApi & gill.IsBlockhashValidApi & gill.MinimumLedgerSlotApi & gill.SendTransactionApi & gill.SimulateTransactionApi) | (gill.RequestAirdropApi & gill.GetAccountInfoApi & gill.GetBalanceApi & gill.GetBlockApi & gill.GetBlockCommitmentApi & gill.GetBlockHeightApi & gill.GetBlockProductionApi & gill.GetBlocksApi & gill.GetBlocksWithLimitApi & gill.GetBlockTimeApi & gill.GetClusterNodesApi & gill.GetEpochInfoApi & gill.GetEpochScheduleApi & gill.GetFeeForMessageApi & gill.GetFirstAvailableBlockApi & gill.GetGenesisHashApi & gill.GetHealthApi & gill.GetHighestSnapshotSlotApi & gill.GetIdentityApi & gill.GetInflationGovernorApi & gill.GetInflationRateApi & gill.GetInflationRewardApi & gill.GetLargestAccountsApi & gill.GetLatestBlockhashApi & gill.GetLeaderScheduleApi & gill.GetMaxRetransmitSlotApi & gill.GetMaxShredInsertSlotApi & gill.GetMinimumBalanceForRentExemptionApi & gill.GetMultipleAccountsApi & gill.GetProgramAccountsApi & gill.GetRecentPerformanceSamplesApi & gill.GetRecentPrioritizationFeesApi & gill.GetSignaturesForAddressApi & gill.GetSignatureStatusesApi & gill.GetSlotApi & gill.GetSlotLeaderApi & gill.GetSlotLeadersApi & gill.GetStakeMinimumDelegationApi & gill.GetSupplyApi & gill.GetTokenAccountBalanceApi & gill.GetTokenAccountsByDelegateApi & gill.GetTokenAccountsByOwnerApi & gill.GetTokenLargestAccountsApi & gill.GetTokenSupplyApi & gill.GetTransactionApi & gill.GetTransactionCountApi & gill.GetVersionApi & gill.GetVoteAccountsApi & gill.IsBlockhashValidApi & gill.MinimumLedgerSlotApi & gill.SendTransactionApi & gill.SimulateTransactionApi)> | gill.RpcTestnet<(gill.GetAccountInfoApi & gill.GetBalanceApi & gill.GetBlockApi & gill.GetBlockCommitmentApi & gill.GetBlockHeightApi & gill.GetBlockProductionApi & gill.GetBlocksApi & gill.GetBlocksWithLimitApi & gill.GetBlockTimeApi & gill.GetClusterNodesApi & gill.GetEpochInfoApi & gill.GetEpochScheduleApi & gill.GetFeeForMessageApi & gill.GetFirstAvailableBlockApi & gill.GetGenesisHashApi & gill.GetHealthApi & gill.GetHighestSnapshotSlotApi & gill.GetIdentityApi & gill.GetInflationGovernorApi & gill.GetInflationRateApi & gill.GetInflationRewardApi & gill.GetLargestAccountsApi & gill.GetLatestBlockhashApi & gill.GetLeaderScheduleApi & gill.GetMaxRetransmitSlotApi & gill.GetMaxShredInsertSlotApi & gill.GetMinimumBalanceForRentExemptionApi & gill.GetMultipleAccountsApi & gill.GetProgramAccountsApi & gill.GetRecentPerformanceSamplesApi & gill.GetRecentPrioritizationFeesApi & gill.GetSignaturesForAddressApi & gill.GetSignatureStatusesApi & gill.GetSlotApi & gill.GetSlotLeaderApi & gill.GetSlotLeadersApi & gill.GetStakeMinimumDelegationApi & gill.GetSupplyApi & gill.GetTokenAccountBalanceApi & gill.GetTokenAccountsByDelegateApi & gill.GetTokenAccountsByOwnerApi & gill.GetTokenLargestAccountsApi & gill.GetTokenSupplyApi & gill.GetTransactionApi & gill.GetTransactionCountApi & gill.GetVersionApi & gill.GetVoteAccountsApi & gill.IsBlockhashValidApi & gill.MinimumLedgerSlotApi & gill.SendTransactionApi & gill.SimulateTransactionApi) | (gill.RequestAirdropApi & gill.GetAccountInfoApi & gill.GetBalanceApi & gill.GetBlockApi & gill.GetBlockCommitmentApi & gill.GetBlockHeightApi & gill.GetBlockProductionApi & gill.GetBlocksApi & gill.GetBlocksWithLimitApi & gill.GetBlockTimeApi & gill.GetClusterNodesApi & gill.GetEpochInfoApi & gill.GetEpochScheduleApi & gill.GetFeeForMessageApi & gill.GetFirstAvailableBlockApi & gill.GetGenesisHashApi & gill.GetHealthApi & gill.GetHighestSnapshotSlotApi & gill.GetIdentityApi & gill.GetInflationGovernorApi & gill.GetInflationRateApi & gill.GetInflationRewardApi & gill.GetLargestAccountsApi & gill.GetLatestBlockhashApi & gill.GetLeaderScheduleApi & gill.GetMaxRetransmitSlotApi & gill.GetMaxShredInsertSlotApi & gill.GetMinimumBalanceForRentExemptionApi & gill.GetMultipleAccountsApi & gill.GetProgramAccountsApi & gill.GetRecentPerformanceSamplesApi & gill.GetRecentPrioritizationFeesApi & gill.GetSignaturesForAddressApi & gill.GetSignatureStatusesApi & gill.GetSlotApi & gill.GetSlotLeaderApi & gill.GetSlotLeadersApi & gill.GetStakeMinimumDelegationApi & gill.GetSupplyApi & gill.GetTokenAccountBalanceApi & gill.GetTokenAccountsByDelegateApi & gill.GetTokenAccountsByOwnerApi & gill.GetTokenLargestAccountsApi & gill.GetTokenSupplyApi & gill.GetTransactionApi & gill.GetTransactionCountApi & gill.GetVersionApi & gill.GetVoteAccountsApi & gill.IsBlockhashValidApi & gill.MinimumLedgerSlotApi & gill.SendTransactionApi & gill.SimulateTransactionApi)> | gill.RpcMainnet<(gill.GetAccountInfoApi & gill.GetBalanceApi & gill.GetBlockApi & gill.GetBlockCommitmentApi & gill.GetBlockHeightApi & gill.GetBlockProductionApi & gill.GetBlocksApi & gill.GetBlocksWithLimitApi & gill.GetBlockTimeApi & gill.GetClusterNodesApi & gill.GetEpochInfoApi & gill.GetEpochScheduleApi & gill.GetFeeForMessageApi & gill.GetFirstAvailableBlockApi & gill.GetGenesisHashApi & gill.GetHealthApi & gill.GetHighestSnapshotSlotApi & gill.GetIdentityApi & gill.GetInflationGovernorApi & gill.GetInflationRateApi & gill.GetInflationRewardApi & gill.GetLargestAccountsApi & gill.GetLatestBlockhashApi & gill.GetLeaderScheduleApi & gill.GetMaxRetransmitSlotApi & gill.GetMaxShredInsertSlotApi & gill.GetMinimumBalanceForRentExemptionApi & gill.GetMultipleAccountsApi & gill.GetProgramAccountsApi & gill.GetRecentPerformanceSamplesApi & gill.GetRecentPrioritizationFeesApi & gill.GetSignaturesForAddressApi & gill.GetSignatureStatusesApi & gill.GetSlotApi & gill.GetSlotLeaderApi & gill.GetSlotLeadersApi & gill.GetStakeMinimumDelegationApi & gill.GetSupplyApi & gill.GetTokenAccountBalanceApi & gill.GetTokenAccountsByDelegateApi & gill.GetTokenAccountsByOwnerApi & gill.GetTokenLargestAccountsApi & gill.GetTokenSupplyApi & gill.GetTransactionApi & gill.GetTransactionCountApi & gill.GetVersionApi & gill.GetVoteAccountsApi & gill.IsBlockhashValidApi & gill.MinimumLedgerSlotApi & gill.SendTransactionApi & gill.SimulateTransactionApi) | (gill.RequestAirdropApi & gill.GetAccountInfoApi & gill.GetBalanceApi & gill.GetBlockApi & gill.GetBlockCommitmentApi & gill.GetBlockHeightApi & gill.GetBlockProductionApi & gill.GetBlocksApi & gill.GetBlocksWithLimitApi & gill.GetBlockTimeApi & gill.GetClusterNodesApi & gill.GetEpochInfoApi & gill.GetEpochScheduleApi & gill.GetFeeForMessageApi & gill.GetFirstAvailableBlockApi & gill.GetGenesisHashApi & gill.GetHealthApi & gill.GetHighestSnapshotSlotApi & gill.GetIdentityApi & gill.GetInflationGovernorApi & gill.GetInflationRateApi & gill.GetInflationRewardApi & gill.GetLargestAccountsApi & gill.GetLatestBlockhashApi & gill.GetLeaderScheduleApi & gill.GetMaxRetransmitSlotApi & gill.GetMaxShredInsertSlotApi & gill.GetMinimumBalanceForRentExemptionApi & gill.GetMultipleAccountsApi & gill.GetProgramAccountsApi & gill.GetRecentPerformanceSamplesApi & gill.GetRecentPrioritizationFeesApi & gill.GetSignaturesForAddressApi & gill.GetSignatureStatusesApi & gill.GetSlotApi & gill.GetSlotLeaderApi & gill.GetSlotLeadersApi & gill.GetStakeMinimumDelegationApi & gill.GetSupplyApi & gill.GetTokenAccountBalanceApi & gill.GetTokenAccountsByDelegateApi & gill.GetTokenAccountsByOwnerApi & gill.GetTokenLargestAccountsApi & gill.GetTokenSupplyApi & gill.GetTransactionApi & gill.GetTransactionCountApi & gill.GetVersionApi & gill.GetVoteAccountsApi & gill.IsBlockhashValidApi & gill.MinimumLedgerSlotApi & gill.SendTransactionApi & gill.SimulateTransactionApi)>;
|
|
1107
1225
|
/**
|
|
1108
1226
|
* Get account information with automatic retries
|
|
1109
1227
|
*/
|
|
@@ -1159,9 +1277,19 @@ declare class RpcClient {
|
|
|
1159
1277
|
}>;
|
|
1160
1278
|
/**
|
|
1161
1279
|
* Subscribe to account changes (WebSocket)
|
|
1162
|
-
*
|
|
1280
|
+
*
|
|
1281
|
+
* Note: This is a polling-based implementation for backward compatibility.
|
|
1282
|
+
* For production use with real-time subscriptions, access the rpcSubscriptions
|
|
1283
|
+
* directly via client.rpcSubscriptions from Gill.
|
|
1163
1284
|
*/
|
|
1164
1285
|
subscribeToAccount(address: Address$1, callback: (accountInfo: AccountInfo$2 | null) => void): Promise<() => void>;
|
|
1286
|
+
/**
|
|
1287
|
+
* Get the underlying Gill client for advanced operations
|
|
1288
|
+
* This provides direct access to Gill's SolanaClient for features like:
|
|
1289
|
+
* - rpcSubscriptions for WebSocket subscriptions
|
|
1290
|
+
* - sendAndConfirmTransaction for transaction handling
|
|
1291
|
+
*/
|
|
1292
|
+
getGillClient(): SolanaClient<any>;
|
|
1165
1293
|
private withRetry;
|
|
1166
1294
|
private parseAccountInfo;
|
|
1167
1295
|
}
|
|
@@ -1313,6 +1441,207 @@ declare function createBatchFetcher(rpc: ExtendedRpcApi, defaultConfig?: BatchFe
|
|
|
1313
1441
|
getWithRetry: <T>(addresses: Address$1[], config?: BatchFetchConfig, maxRetries?: number) => Promise<(T | null)[]>;
|
|
1314
1442
|
};
|
|
1315
1443
|
|
|
1444
|
+
/**
|
|
1445
|
+
* ExternalIdResolver - Cross-Platform Identity Lookup
|
|
1446
|
+
*
|
|
1447
|
+
* Resolves platform-specific IDs (PayAI, ElizaOS, etc.) to Ghost addresses
|
|
1448
|
+
* Uses GhostSpeak Public API for fast lookups
|
|
1449
|
+
*/
|
|
1450
|
+
|
|
1451
|
+
interface ApiResolverConfig {
|
|
1452
|
+
apiUrl?: string;
|
|
1453
|
+
cluster?: 'mainnet-beta' | 'devnet' | 'testnet' | 'localnet';
|
|
1454
|
+
}
|
|
1455
|
+
declare class ExternalIdResolver {
|
|
1456
|
+
private apiUrl;
|
|
1457
|
+
constructor(config?: ApiResolverConfig);
|
|
1458
|
+
/**
|
|
1459
|
+
* Resolve external ID to Ghost address
|
|
1460
|
+
*
|
|
1461
|
+
* @example
|
|
1462
|
+
* const address = await resolver.resolve('payai', 'agent-123');
|
|
1463
|
+
*/
|
|
1464
|
+
resolve(platform: string, externalId: string): Promise<Address$1>;
|
|
1465
|
+
/**
|
|
1466
|
+
* Lookup external ID with full Ghost data
|
|
1467
|
+
*
|
|
1468
|
+
* @example
|
|
1469
|
+
* const { mapping, ghost } = await resolver.lookup('payai', 'agent-123');
|
|
1470
|
+
*/
|
|
1471
|
+
lookup(platform: string, externalId: string): Promise<ApiExternalIdLookup>;
|
|
1472
|
+
/**
|
|
1473
|
+
* Get Ghost by Solana address via API
|
|
1474
|
+
*
|
|
1475
|
+
* Faster than on-chain lookup for read operations
|
|
1476
|
+
*/
|
|
1477
|
+
getGhost(ghostAddress: Address$1 | string): Promise<ApiGhost>;
|
|
1478
|
+
/**
|
|
1479
|
+
* Get Ghost Score via API
|
|
1480
|
+
*/
|
|
1481
|
+
getGhostScore(ghostAddress: Address$1 | string): Promise<ApiGhostScore>;
|
|
1482
|
+
/**
|
|
1483
|
+
* Get detailed reputation breakdown via API
|
|
1484
|
+
*/
|
|
1485
|
+
getGhostReputation(ghostAddress: Address$1 | string): Promise<any>;
|
|
1486
|
+
/**
|
|
1487
|
+
* Batch resolve multiple external IDs
|
|
1488
|
+
*/
|
|
1489
|
+
resolveBatch(identifiers: Array<{
|
|
1490
|
+
platform: string;
|
|
1491
|
+
externalId: string;
|
|
1492
|
+
}>): Promise<Array<Address$1 | null>>;
|
|
1493
|
+
/**
|
|
1494
|
+
* Check if external ID exists
|
|
1495
|
+
*/
|
|
1496
|
+
exists(platform: string, externalId: string): Promise<boolean>;
|
|
1497
|
+
/**
|
|
1498
|
+
* Get all external IDs for a Ghost
|
|
1499
|
+
*
|
|
1500
|
+
* Fetches Ghost data and returns external identifiers
|
|
1501
|
+
*/
|
|
1502
|
+
getExternalIds(ghostAddress: Address$1 | string): Promise<Array<{
|
|
1503
|
+
platform: string;
|
|
1504
|
+
externalId: string;
|
|
1505
|
+
verified: boolean;
|
|
1506
|
+
verifiedAt: number;
|
|
1507
|
+
}>>;
|
|
1508
|
+
/**
|
|
1509
|
+
* Search for Ghost by partial platform ID
|
|
1510
|
+
*
|
|
1511
|
+
* Note: This is a client-side filter, not server-side search
|
|
1512
|
+
* For production, implement server-side search endpoint
|
|
1513
|
+
*/
|
|
1514
|
+
searchByExternalId(platform: string, partialId: string): Promise<ApiExternalIdLookup[]>;
|
|
1515
|
+
/**
|
|
1516
|
+
* Set custom API URL
|
|
1517
|
+
*/
|
|
1518
|
+
setApiUrl(apiUrl: string): void;
|
|
1519
|
+
/**
|
|
1520
|
+
* Get current API URL
|
|
1521
|
+
*/
|
|
1522
|
+
getApiUrl(): string;
|
|
1523
|
+
/**
|
|
1524
|
+
* Check API health
|
|
1525
|
+
*/
|
|
1526
|
+
checkHealth(): Promise<{
|
|
1527
|
+
status: string;
|
|
1528
|
+
network: string;
|
|
1529
|
+
rpc: {
|
|
1530
|
+
connected: boolean;
|
|
1531
|
+
latency: number;
|
|
1532
|
+
};
|
|
1533
|
+
}>;
|
|
1534
|
+
}
|
|
1535
|
+
|
|
1536
|
+
interface CreateEscrowParams {
|
|
1537
|
+
/** Agent providing the service */
|
|
1538
|
+
agent: Address$1;
|
|
1539
|
+
/** Client's token account for payment */
|
|
1540
|
+
clientTokenAccount: Address$1;
|
|
1541
|
+
/** Vault to hold escrowed funds */
|
|
1542
|
+
escrowVault: Address$1;
|
|
1543
|
+
/** Token mint (e.g., USDC, GHOST) */
|
|
1544
|
+
tokenMint: Address$1;
|
|
1545
|
+
/** Client who is paying */
|
|
1546
|
+
client: TransactionSigner;
|
|
1547
|
+
/** Unique escrow identifier */
|
|
1548
|
+
escrowId: bigint;
|
|
1549
|
+
/** Amount to escrow */
|
|
1550
|
+
amount: bigint;
|
|
1551
|
+
/** Description of the job/service */
|
|
1552
|
+
jobDescription: string;
|
|
1553
|
+
/** Deadline timestamp (unix seconds) */
|
|
1554
|
+
deadline: bigint;
|
|
1555
|
+
}
|
|
1556
|
+
interface SubmitDeliveryParams {
|
|
1557
|
+
/** Escrow account */
|
|
1558
|
+
escrow: Address$1;
|
|
1559
|
+
/** Agent account address */
|
|
1560
|
+
agent: Address$1;
|
|
1561
|
+
/** Agent owner signer */
|
|
1562
|
+
agentOwner: TransactionSigner;
|
|
1563
|
+
/** Proof of work (IPFS hash, URL, etc.) */
|
|
1564
|
+
deliveryProof: string;
|
|
1565
|
+
}
|
|
1566
|
+
interface ApproveDeliveryParams {
|
|
1567
|
+
/** Escrow account */
|
|
1568
|
+
escrow: Address$1;
|
|
1569
|
+
/** Vault holding escrowed funds */
|
|
1570
|
+
escrowVault: Address$1;
|
|
1571
|
+
/** Agent's token account to receive payment */
|
|
1572
|
+
agentTokenAccount: Address$1;
|
|
1573
|
+
/** Client approving the delivery */
|
|
1574
|
+
client: TransactionSigner;
|
|
1575
|
+
}
|
|
1576
|
+
interface FileDisputeParams {
|
|
1577
|
+
/** Escrow account */
|
|
1578
|
+
escrow: Address$1;
|
|
1579
|
+
/** Client filing the dispute */
|
|
1580
|
+
client: TransactionSigner;
|
|
1581
|
+
/** Reason for dispute */
|
|
1582
|
+
reason: string;
|
|
1583
|
+
}
|
|
1584
|
+
interface ArbitrateDisputeParams {
|
|
1585
|
+
/** Escrow account */
|
|
1586
|
+
escrow: Address$1;
|
|
1587
|
+
/** Vault holding escrowed funds */
|
|
1588
|
+
escrowVault: Address$1;
|
|
1589
|
+
/** Client's token account (for refund) */
|
|
1590
|
+
clientTokenAccount: Address$1;
|
|
1591
|
+
/** Agent's token account (for payment) */
|
|
1592
|
+
agentTokenAccount: Address$1;
|
|
1593
|
+
/** Agent's staking account (for potential slashing) */
|
|
1594
|
+
agentStaking: Address$1;
|
|
1595
|
+
/** Arbitrator making the decision */
|
|
1596
|
+
arbitrator: TransactionSigner;
|
|
1597
|
+
/** Decision: FavorClient, FavorAgent, Split, or Invalid */
|
|
1598
|
+
decision: ArbitratorDecision;
|
|
1599
|
+
}
|
|
1600
|
+
declare class EscrowModule extends BaseModule {
|
|
1601
|
+
/**
|
|
1602
|
+
* Create a new escrow for a service agreement
|
|
1603
|
+
*
|
|
1604
|
+
* @param params - Escrow creation parameters
|
|
1605
|
+
* @returns Transaction signature
|
|
1606
|
+
*/
|
|
1607
|
+
createEscrow(params: CreateEscrowParams): Promise<string>;
|
|
1608
|
+
/**
|
|
1609
|
+
* Submit proof of delivery for an escrow
|
|
1610
|
+
*
|
|
1611
|
+
* @param params - Delivery submission parameters
|
|
1612
|
+
* @returns Transaction signature
|
|
1613
|
+
*/
|
|
1614
|
+
submitDelivery(params: SubmitDeliveryParams): Promise<string>;
|
|
1615
|
+
/**
|
|
1616
|
+
* Approve delivery and release funds to agent
|
|
1617
|
+
*
|
|
1618
|
+
* @param params - Approval parameters
|
|
1619
|
+
* @returns Transaction signature
|
|
1620
|
+
*/
|
|
1621
|
+
approveDelivery(params: ApproveDeliveryParams): Promise<string>;
|
|
1622
|
+
/**
|
|
1623
|
+
* File a dispute for an escrow
|
|
1624
|
+
*
|
|
1625
|
+
* @param params - Dispute filing parameters
|
|
1626
|
+
* @returns Transaction signature
|
|
1627
|
+
*/
|
|
1628
|
+
fileDispute(params: FileDisputeParams): Promise<string>;
|
|
1629
|
+
/**
|
|
1630
|
+
* Arbitrate a disputed escrow
|
|
1631
|
+
*
|
|
1632
|
+
* @param params - Arbitration parameters
|
|
1633
|
+
* @returns Transaction signature
|
|
1634
|
+
*/
|
|
1635
|
+
arbitrateDispute(params: ArbitrateDisputeParams): Promise<string>;
|
|
1636
|
+
/**
|
|
1637
|
+
* Get escrow account data
|
|
1638
|
+
*
|
|
1639
|
+
* @param escrowAddress - The escrow account address
|
|
1640
|
+
* @returns Escrow data or null if not found
|
|
1641
|
+
*/
|
|
1642
|
+
getEscrow(escrowAddress: Address$1): Promise<GhostProtectEscrow | null>;
|
|
1643
|
+
}
|
|
1644
|
+
|
|
1316
1645
|
/**
|
|
1317
1646
|
* X402 Transaction Indexer
|
|
1318
1647
|
*
|
|
@@ -1417,9 +1746,12 @@ declare class X402TransactionIndexer {
|
|
|
1417
1746
|
* Check if transaction is an x402 payment
|
|
1418
1747
|
*
|
|
1419
1748
|
* x402 payments are characterized by:
|
|
1420
|
-
* - SPL token transfer (TokenProgram or Token2022Program)
|
|
1749
|
+
* - SPL token transfer (TokenProgram or Token2022Program) for USDC
|
|
1750
|
+
* - Native SOL transfer (System Program)
|
|
1421
1751
|
* - Transfer TO the facilitator address
|
|
1422
1752
|
* - Optional memo instruction with payment metadata
|
|
1753
|
+
*
|
|
1754
|
+
* Supports both devnet and mainnet for all payment types
|
|
1423
1755
|
*/
|
|
1424
1756
|
private isX402Payment;
|
|
1425
1757
|
/**
|
|
@@ -1708,229 +2040,6 @@ declare class MultiSourceAggregator {
|
|
|
1708
2040
|
isSourceEnabled(source: ReputationSource): boolean;
|
|
1709
2041
|
}
|
|
1710
2042
|
|
|
1711
|
-
/**
|
|
1712
|
-
* PayAI Webhook Handler
|
|
1713
|
-
*
|
|
1714
|
-
* Handles incoming webhooks from PayAI facilitator for payment events.
|
|
1715
|
-
* Converts payment data to reputation records for GhostSpeak's
|
|
1716
|
-
* reputation system.
|
|
1717
|
-
*
|
|
1718
|
-
* @module payai/PayAIWebhookHandler
|
|
1719
|
-
* @see https://docs.payai.network/x402/introduction
|
|
1720
|
-
*/
|
|
1721
|
-
|
|
1722
|
-
/**
|
|
1723
|
-
* PayAI Webhook Handler
|
|
1724
|
-
*
|
|
1725
|
-
* Processes incoming PayAI webhooks and converts payment events
|
|
1726
|
-
* to reputation records for the GhostSpeak reputation system.
|
|
1727
|
-
*
|
|
1728
|
-
* @example
|
|
1729
|
-
* ```typescript
|
|
1730
|
-
* const handler = new PayAIWebhookHandler({
|
|
1731
|
-
* webhookSecret: process.env.PAYAI_WEBHOOK_SECRET,
|
|
1732
|
-
* onRecordReputation: async (record) => {
|
|
1733
|
-
* await reputationModule.recordPayAIPayment(record);
|
|
1734
|
-
* }
|
|
1735
|
-
* });
|
|
1736
|
-
*
|
|
1737
|
-
* // In your API route
|
|
1738
|
-
* const result = await handler.handleWebhook(request);
|
|
1739
|
-
* ```
|
|
1740
|
-
*/
|
|
1741
|
-
declare class PayAIWebhookHandler extends EventEmitter {
|
|
1742
|
-
private readonly options;
|
|
1743
|
-
private readonly verifySignatures;
|
|
1744
|
-
private readonly authorizationModule?;
|
|
1745
|
-
private readonly payAIFacilitatorAddress?;
|
|
1746
|
-
constructor(options?: PayAIWebhookHandlerOptions, authorizationModule?: AuthorizationModule, payAIFacilitatorAddress?: Address$1);
|
|
1747
|
-
/**
|
|
1748
|
-
* Handle an incoming webhook request
|
|
1749
|
-
*
|
|
1750
|
-
* @param request - The incoming HTTP request (must have headers and body)
|
|
1751
|
-
* @returns Processing result
|
|
1752
|
-
*/
|
|
1753
|
-
handleWebhook(request: {
|
|
1754
|
-
headers: Headers | Record<string, string | undefined>;
|
|
1755
|
-
body: string | PayAIWebhookPayload;
|
|
1756
|
-
}): Promise<PayAIWebhookResult>;
|
|
1757
|
-
/**
|
|
1758
|
-
* Verify webhook signature
|
|
1759
|
-
*/
|
|
1760
|
-
verifySignature(headers: Headers | Record<string, string | undefined>, body: string): Promise<PayAIWebhookVerification>;
|
|
1761
|
-
/**
|
|
1762
|
-
* Convert a PayAI payment to a reputation record
|
|
1763
|
-
*/
|
|
1764
|
-
paymentToReputationRecord(data: PayAIPaymentData): PayAIReputationRecord;
|
|
1765
|
-
/**
|
|
1766
|
-
* Process a verified webhook payload
|
|
1767
|
-
*/
|
|
1768
|
-
private processPayload;
|
|
1769
|
-
/**
|
|
1770
|
-
* Verify on-chain authorization for an agent
|
|
1771
|
-
*
|
|
1772
|
-
* Checks if the agent has pre-authorized the PayAI facilitator
|
|
1773
|
-
* to update their reputation on-chain.
|
|
1774
|
-
*/
|
|
1775
|
-
private verifyOnChainAuthorization;
|
|
1776
|
-
/**
|
|
1777
|
-
* Compute HMAC-SHA256 signature for a webhook payload
|
|
1778
|
-
*/
|
|
1779
|
-
private computeSignature;
|
|
1780
|
-
}
|
|
1781
|
-
/**
|
|
1782
|
-
* Create a new PayAI webhook handler
|
|
1783
|
-
*
|
|
1784
|
-
* @param options - Handler configuration
|
|
1785
|
-
* @returns Configured webhook handler
|
|
1786
|
-
*/
|
|
1787
|
-
declare function createPayAIWebhookHandler(options?: PayAIWebhookHandlerOptions): PayAIWebhookHandler;
|
|
1788
|
-
/**
|
|
1789
|
-
* Generate a webhook signature for testing
|
|
1790
|
-
* (Useful for local development and testing)
|
|
1791
|
-
*/
|
|
1792
|
-
declare function generateTestWebhookSignature(body: string, secret: string, timestamp?: number): {
|
|
1793
|
-
signature: string;
|
|
1794
|
-
timestamp: string;
|
|
1795
|
-
};
|
|
1796
|
-
/**
|
|
1797
|
-
* Create a mock PayAI webhook payload for testing
|
|
1798
|
-
*/
|
|
1799
|
-
declare function createMockPayAIWebhook(overrides?: Partial<PayAIPaymentData>): PayAIWebhookPayload;
|
|
1800
|
-
|
|
1801
|
-
/**
|
|
1802
|
-
* PayAI Agent Sync
|
|
1803
|
-
*
|
|
1804
|
-
* Utility for syncing GhostSpeak agents with PayAI marketplace.
|
|
1805
|
-
* Allows agents registered in GhostSpeak to be discovered via
|
|
1806
|
-
* PayAI's facilitator network.
|
|
1807
|
-
*
|
|
1808
|
-
* @module payai/PayAIAgentSync
|
|
1809
|
-
*/
|
|
1810
|
-
|
|
1811
|
-
/**
|
|
1812
|
-
* Agent sync configuration
|
|
1813
|
-
*/
|
|
1814
|
-
interface PayAIAgentSyncConfig {
|
|
1815
|
-
/** PayAI marketplace API URL */
|
|
1816
|
-
marketplaceUrl?: string;
|
|
1817
|
-
/** API key for PayAI marketplace (if required) */
|
|
1818
|
-
apiKey?: string;
|
|
1819
|
-
/** Network to register agents on */
|
|
1820
|
-
network?: PayAINetwork;
|
|
1821
|
-
/** Request timeout in milliseconds */
|
|
1822
|
-
timeout?: number;
|
|
1823
|
-
}
|
|
1824
|
-
/**
|
|
1825
|
-
* Agent sync result
|
|
1826
|
-
*/
|
|
1827
|
-
interface AgentSyncResult {
|
|
1828
|
-
success: boolean;
|
|
1829
|
-
agentId?: string;
|
|
1830
|
-
marketplaceUrl?: string;
|
|
1831
|
-
error?: string;
|
|
1832
|
-
}
|
|
1833
|
-
/**
|
|
1834
|
-
* Agent data from GhostSpeak
|
|
1835
|
-
*/
|
|
1836
|
-
interface GhostSpeakAgentData {
|
|
1837
|
-
/** Agent's Solana address */
|
|
1838
|
-
address: Address$1;
|
|
1839
|
-
/** Agent name */
|
|
1840
|
-
name: string;
|
|
1841
|
-
/** Agent description */
|
|
1842
|
-
description?: string;
|
|
1843
|
-
/** Service capabilities/tags */
|
|
1844
|
-
capabilities: string[];
|
|
1845
|
-
/** x402-enabled service endpoint */
|
|
1846
|
-
serviceEndpoint: string;
|
|
1847
|
-
/** Accepted payment tokens (e.g., USDC, SOL) */
|
|
1848
|
-
acceptedTokens: string[];
|
|
1849
|
-
/** Pricing in USDC (min, max) */
|
|
1850
|
-
pricing?: {
|
|
1851
|
-
minPrice: string;
|
|
1852
|
-
maxPrice: string;
|
|
1853
|
-
currency: string;
|
|
1854
|
-
};
|
|
1855
|
-
/** Agent logo URL */
|
|
1856
|
-
logo?: string;
|
|
1857
|
-
/** Agent website */
|
|
1858
|
-
website?: string;
|
|
1859
|
-
/** Reputation score (0-10000) */
|
|
1860
|
-
reputationScore?: number;
|
|
1861
|
-
}
|
|
1862
|
-
/**
|
|
1863
|
-
* PayAI Agent Sync Manager
|
|
1864
|
-
*
|
|
1865
|
-
* Synchronizes GhostSpeak agents with PayAI marketplace for discovery.
|
|
1866
|
-
*/
|
|
1867
|
-
declare class PayAIAgentSync extends EventEmitter {
|
|
1868
|
-
private readonly config;
|
|
1869
|
-
constructor(config?: PayAIAgentSyncConfig);
|
|
1870
|
-
/**
|
|
1871
|
-
* Register a GhostSpeak agent with PayAI marketplace
|
|
1872
|
-
*
|
|
1873
|
-
* @param agent - Agent data from GhostSpeak
|
|
1874
|
-
* @returns Registration result
|
|
1875
|
-
*/
|
|
1876
|
-
registerAgent(agent: GhostSpeakAgentData): Promise<AgentSyncResult>;
|
|
1877
|
-
/**
|
|
1878
|
-
* Update an agent's registration on PayAI marketplace
|
|
1879
|
-
*
|
|
1880
|
-
* @param agentId - PayAI agent ID
|
|
1881
|
-
* @param agent - Updated agent data
|
|
1882
|
-
* @returns Update result
|
|
1883
|
-
*/
|
|
1884
|
-
updateAgent(agentId: string, agent: Partial<GhostSpeakAgentData>): Promise<AgentSyncResult>;
|
|
1885
|
-
/**
|
|
1886
|
-
* Remove an agent from PayAI marketplace
|
|
1887
|
-
*
|
|
1888
|
-
* @param agentId - PayAI agent ID
|
|
1889
|
-
* @returns Removal result
|
|
1890
|
-
*/
|
|
1891
|
-
removeAgent(agentId: string): Promise<AgentSyncResult>;
|
|
1892
|
-
/**
|
|
1893
|
-
* Check if an agent is registered on PayAI marketplace
|
|
1894
|
-
*
|
|
1895
|
-
* @param agentAddress - Agent's Solana address
|
|
1896
|
-
* @returns Whether agent is registered
|
|
1897
|
-
*/
|
|
1898
|
-
isAgentRegistered(agentAddress: Address$1): Promise<boolean>;
|
|
1899
|
-
/**
|
|
1900
|
-
* Get agent's PayAI marketplace listing
|
|
1901
|
-
*
|
|
1902
|
-
* @param agentAddress - Agent's Solana address
|
|
1903
|
-
* @returns Agent listing or null
|
|
1904
|
-
*/
|
|
1905
|
-
getAgentListing(agentAddress: Address$1): Promise<PayAIAgentRegistration | null>;
|
|
1906
|
-
/**
|
|
1907
|
-
* Sync reputation score to PayAI marketplace
|
|
1908
|
-
*
|
|
1909
|
-
* Updates the agent's reputation score on PayAI based on
|
|
1910
|
-
* GhostSpeak reputation calculations.
|
|
1911
|
-
*
|
|
1912
|
-
* @param agentId - PayAI agent ID
|
|
1913
|
-
* @param reputationScore - New reputation score (0-10000)
|
|
1914
|
-
* @returns Update result
|
|
1915
|
-
*/
|
|
1916
|
-
syncReputationScore(agentId: string, reputationScore: number): Promise<AgentSyncResult>;
|
|
1917
|
-
/**
|
|
1918
|
-
* Convert GhostSpeak agent data to PayAI registration format
|
|
1919
|
-
*/
|
|
1920
|
-
private toPayAIRegistration;
|
|
1921
|
-
/**
|
|
1922
|
-
* Make an authenticated request to PayAI marketplace
|
|
1923
|
-
*/
|
|
1924
|
-
private makeRequest;
|
|
1925
|
-
}
|
|
1926
|
-
/**
|
|
1927
|
-
* Create a PayAI agent sync manager
|
|
1928
|
-
*
|
|
1929
|
-
* @param config - Sync configuration
|
|
1930
|
-
* @returns Configured sync manager
|
|
1931
|
-
*/
|
|
1932
|
-
declare function createPayAIAgentSync(config?: PayAIAgentSyncConfig): PayAIAgentSync;
|
|
1933
|
-
|
|
1934
2043
|
/**
|
|
1935
2044
|
* This file is auto-generated by scripts/generate-mappings.ts
|
|
1936
2045
|
* Do not edit this file manually.
|
|
@@ -2605,4 +2714,4 @@ declare function checkFeatureGate(rpc: Rpc<GetAccountInfoApi>, featureGate: Addr
|
|
|
2605
2714
|
*/
|
|
2606
2715
|
declare function clearFeatureGateCache(): void;
|
|
2607
2716
|
|
|
2608
|
-
export { type
|
|
2717
|
+
export { type AggregatedReputation, type ApiResolverConfig, type ApproveDeliveryParams, type ArbitrateDisputeParams, type ArbitratorDecision, BaseModule, BaseReputationAdapter, type BatchFetchConfig, type BatchProgressCallback, CircuitBreaker, ClientEncryptionService, ContentStorageResult, type CreateEscrowParams, DEFAULT_IPFS_CONFIG, DEFAULT_RETRY_CONFIG, type DeliverySubmittedEvent, type DisputeFiledEvent, type DisputeResolvedEvent, type EscrowCompletedEvent, type EscrowCreatedEvent, EscrowModule, EscrowStatus, ExtendedRpcApi, ExternalIdResolver, FEATURE_GATES, FallbackHandler, type FeatureStatus, type FileDisputeParams, type FundingResult, type FundingStrategyOptions, GHOSTSPEAK_MARKETPLACE_PROGRAM_ADDRESS, type GhostProtectEscrow, type GhostSlashedEvent, type GhostStakedEvent, type GhostUnstakedEvent, INSTRUCTION_MAPPINGS, IPFSClient, IPFSConfig, IPFSContentMetadata, IPFSError, IPFSErrorHandler, IPFSOperationError, IPFSOperationResult, IPFSProvider, IPFSUploadOptions, IPFSUtils, InstructionValidationError, LocalStorageProvider, MetricVisibility, MultiSourceAggregator, type PrivacyManifest, PrivacyMode, PrivacySettings, PrivateDataQuery, type PrivateDataReference, PrivateMetadataStorage, ReputationSource, type ReputationSourceAdapter, type ReputationSourceConfig, type ReputationTagsUpdatedEvent, RetryHandler, RpcClient, ScoreRange, type SignatureInfo, SlashReason, type SourceReputationData, type SourceScoreBreakdown, type StorageProvider, type StoredPrivateData, type SubmitDeliveryParams, TEST_IPFS_CONFIG, type TagDecayAppliedEvent, type TagScore, VisibleReputation, WalletFundingService, type X402IndexerConfig, type X402PaymentData, X402TransactionIndexer, batchGetAccounts, batchGetAccountsWithRetry, batchGetAndMap, batchGetExistingAccounts, calculateVisibleScore, canViewerAccess, checkFeatureGate, clearFeatureGateCache, createAccountMismatchError, createBatchFetcher, createIPFSErrorHandler, createIPFSUtils, createMetadataUri, createPrivacyManifest, createTestIPFSConfig, debugInstructionCall, defaultFundingService, determineStorageMethod, enhanceErrorMessage, ensureMinimumBalance, estimateStorageCost, filterMetricsByVisibility, fundWallet, generateAccountValidationError, getAccountRequirements, getApproveDeliveryInstruction, getArbitrateDisputeInstruction, getClaimGhostInstruction, getCreateDidDocumentInstructionAsync, getCreateEscrowInstructionAsync, getDeactivateDidDocumentInstructionAsync, getDefaultMetricVisibility, getFileDisputeInstruction, getGhostProtectEscrowDecoder, getInitializeStakingConfigInstructionAsync, getInstructionMapping, getPDAAccounts, getRangeDisplayString, getRegisterAgentInstructionAsync, getReputationTier, getRequiredSigners, getResolveDidDocumentInstructionAsync, getScoreRange, getSlashStakeInstructionAsync, getStakeGhostInstructionAsync, getSubmitDeliveryInstruction, getTierDisplayName, getUnstakeGhostInstructionAsync, getUpdateDidDocumentInstructionAsync, getUpdateReputationTagsInstructionAsync, getWritableAccounts, isIPFSError, isKnownInstruction, validateInstructionAccounts, validatePrivacySettings, withIPFSErrorHandling };
|