import { BaseClient, WebacyClientConfig } from '@webacy-xyz/sdk-core'; import { AddressesResource } from './resources/addresses'; import { ContractsResource } from './resources/contracts'; import { UrlResource } from './resources/url'; import { WalletsResource } from './resources/wallets'; import { LedgerResource } from './resources/ledger'; import { AccountTraceResource } from './resources/account-trace'; import { UsageResource } from './resources/usage'; import { TransactionsResource } from './resources/transactions'; import { ScanResource } from './resources/scan'; import { BatchResource } from './resources/batch'; import { RwaResource } from './resources/rwa'; import { VaultsResource } from './resources/vaults'; /** * Webacy Threat SDK Client * * Provides access to threat and risk analysis including address risk, * sanctions screening, contract security, URL safety, and more. * * @example * ```typescript * import { ThreatClient, Chain, RiskModule } from '@webacy-xyz/sdk-threat'; * * const client = new ThreatClient({ * apiKey: process.env.WEBACY_API_KEY!, * }); * * // Address risk analysis * const risk = await client.addresses.analyze('0x...', { chain: 'eth' }); * * // Sanctions screening * const sanctioned = await client.addresses.checkSanctioned('0x...', { chain: 'eth' }); * * // URL safety check * const urlRisk = await client.url.check('https://suspicious-site.com'); * ``` */ export declare class ThreatClient extends BaseClient { /** * Addresses resource * * Comprehensive security analysis for blockchain addresses including * risk scoring, sanctions screening, and address poisoning detection. */ readonly addresses: AddressesResource; /** * Contracts resource * * Smart contract security analysis including vulnerability detection, * source code analysis, and tax detection. */ readonly contracts: ContractsResource; /** * URL resource * * URL safety analysis to identify phishing sites and malicious domains. */ readonly url: UrlResource; /** * Wallets resource * * Wallet activity analysis including transaction risks and token approvals. */ readonly wallets: WalletsResource; /** * Ledger resource * * Hardware wallet transaction scanning for secure signing. */ readonly ledger: LedgerResource; /** * Account trace resource * * Fund flow tracing to identify connections to risky entities. */ readonly accountTrace: AccountTraceResource; /** * Usage resource * * API usage statistics and quota management. */ readonly usage: UsageResource; /** * Transactions resource * * Transaction risk analysis for blockchain transactions. */ readonly transactions: TransactionsResource; /** * Scan resource * * Pre-signing security analysis for transactions and EIP-712 messages. * Also provides wallet risk scanning methods. */ readonly scan: ScanResource; /** * Batch resource * * Batch risk analysis for multiple addresses, contracts, or transactions. */ readonly batch: BatchResource; /** * RWA resource * * Depeg risk monitoring for pegged tokens including stablecoins, * tokenized gold, yield-bearing tokens, and bridged assets. */ readonly rwa: RwaResource; /** * Vaults resource * * DeFi vault risk analysis for ERC-4626 vaults including risk scoring, * looping detection, TVL analysis, and underlying asset risk. */ readonly vaults: VaultsResource; /** * Create a new ThreatClient instance * * @param config - Client configuration * @throws AuthenticationError if API key is not provided * * @example * ```typescript * // Basic setup * const client = new ThreatClient({ * apiKey: 'your-api-key', * }); * * // With default chain (omit chain in API calls) * const client = new ThreatClient({ * apiKey: 'your-api-key', * defaultChain: Chain.ETH, * }); * * // With custom configuration * const client = new ThreatClient({ * apiKey: 'your-api-key', * timeout: 60000, * retry: { * maxRetries: 5, * }, * }); * ``` */ constructor(config: WebacyClientConfig); } //# sourceMappingURL=client.d.ts.map