@rlajous/sdk-threat 1.0.0
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/LICENSE +21 -0
- package/README.md +288 -0
- package/dist/cjs/client.js +165 -0
- package/dist/cjs/client.js.map +1 -0
- package/dist/cjs/index.js +33 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/package.json +1 -0
- package/dist/cjs/resources/account-trace.js +96 -0
- package/dist/cjs/resources/account-trace.js.map +1 -0
- package/dist/cjs/resources/addresses.js +189 -0
- package/dist/cjs/resources/addresses.js.map +1 -0
- package/dist/cjs/resources/contracts.js +216 -0
- package/dist/cjs/resources/contracts.js.map +1 -0
- package/dist/cjs/resources/index.js +18 -0
- package/dist/cjs/resources/index.js.map +1 -0
- package/dist/cjs/resources/ledger.js +123 -0
- package/dist/cjs/resources/ledger.js.map +1 -0
- package/dist/cjs/resources/url.js +85 -0
- package/dist/cjs/resources/url.js.map +1 -0
- package/dist/cjs/resources/usage.js +124 -0
- package/dist/cjs/resources/usage.js.map +1 -0
- package/dist/cjs/resources/wallets.js +149 -0
- package/dist/cjs/resources/wallets.js.map +1 -0
- package/dist/cjs/types/account-trace.js +3 -0
- package/dist/cjs/types/account-trace.js.map +1 -0
- package/dist/cjs/types/address.js +3 -0
- package/dist/cjs/types/address.js.map +1 -0
- package/dist/cjs/types/contract.js +3 -0
- package/dist/cjs/types/contract.js.map +1 -0
- package/dist/cjs/types/index.js +3 -0
- package/dist/cjs/types/index.js.map +1 -0
- package/dist/cjs/types/ledger.js +3 -0
- package/dist/cjs/types/ledger.js.map +1 -0
- package/dist/cjs/types/url.js +3 -0
- package/dist/cjs/types/url.js.map +1 -0
- package/dist/cjs/types/usage.js +3 -0
- package/dist/cjs/types/usage.js.map +1 -0
- package/dist/cjs/types/wallet.js +3 -0
- package/dist/cjs/types/wallet.js.map +1 -0
- package/dist/esm/client.js +161 -0
- package/dist/esm/client.js.map +1 -0
- package/dist/esm/index.js +7 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/package.json +1 -0
- package/dist/esm/resources/account-trace.js +92 -0
- package/dist/esm/resources/account-trace.js.map +1 -0
- package/dist/esm/resources/addresses.js +185 -0
- package/dist/esm/resources/addresses.js.map +1 -0
- package/dist/esm/resources/contracts.js +212 -0
- package/dist/esm/resources/contracts.js.map +1 -0
- package/dist/esm/resources/index.js +8 -0
- package/dist/esm/resources/index.js.map +1 -0
- package/dist/esm/resources/ledger.js +119 -0
- package/dist/esm/resources/ledger.js.map +1 -0
- package/dist/esm/resources/url.js +81 -0
- package/dist/esm/resources/url.js.map +1 -0
- package/dist/esm/resources/usage.js +120 -0
- package/dist/esm/resources/usage.js.map +1 -0
- package/dist/esm/resources/wallets.js +145 -0
- package/dist/esm/resources/wallets.js.map +1 -0
- package/dist/esm/types/account-trace.js +2 -0
- package/dist/esm/types/account-trace.js.map +1 -0
- package/dist/esm/types/address.js +2 -0
- package/dist/esm/types/address.js.map +1 -0
- package/dist/esm/types/contract.js +2 -0
- package/dist/esm/types/contract.js.map +1 -0
- package/dist/esm/types/index.js +2 -0
- package/dist/esm/types/index.js.map +1 -0
- package/dist/esm/types/ledger.js +2 -0
- package/dist/esm/types/ledger.js.map +1 -0
- package/dist/esm/types/url.js +2 -0
- package/dist/esm/types/url.js.map +1 -0
- package/dist/esm/types/usage.js +2 -0
- package/dist/esm/types/usage.js.map +1 -0
- package/dist/esm/types/wallet.js +2 -0
- package/dist/esm/types/wallet.js.map +1 -0
- package/dist/types/client.d.ts +145 -0
- package/dist/types/client.d.ts.map +1 -0
- package/dist/types/index.d.ts +5 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/resources/account-trace.d.ts +67 -0
- package/dist/types/resources/account-trace.d.ts.map +1 -0
- package/dist/types/resources/addresses.d.ts +131 -0
- package/dist/types/resources/addresses.d.ts.map +1 -0
- package/dist/types/resources/contracts.d.ts +156 -0
- package/dist/types/resources/contracts.d.ts.map +1 -0
- package/dist/types/resources/index.d.ts +8 -0
- package/dist/types/resources/index.d.ts.map +1 -0
- package/dist/types/resources/ledger.d.ts +107 -0
- package/dist/types/resources/ledger.d.ts.map +1 -0
- package/dist/types/resources/url.d.ts +69 -0
- package/dist/types/resources/url.d.ts.map +1 -0
- package/dist/types/resources/usage.d.ts +99 -0
- package/dist/types/resources/usage.d.ts.map +1 -0
- package/dist/types/resources/wallets.d.ts +106 -0
- package/dist/types/resources/wallets.d.ts.map +1 -0
- package/dist/types/types/account-trace.d.ts +68 -0
- package/dist/types/types/account-trace.d.ts.map +1 -0
- package/dist/types/types/address.d.ts +266 -0
- package/dist/types/types/address.d.ts.map +1 -0
- package/dist/types/types/contract.d.ts +169 -0
- package/dist/types/types/contract.d.ts.map +1 -0
- package/dist/types/types/index.d.ts +8 -0
- package/dist/types/types/index.d.ts.map +1 -0
- package/dist/types/types/ledger.d.ts +106 -0
- package/dist/types/types/ledger.d.ts.map +1 -0
- package/dist/types/types/url.d.ts +39 -0
- package/dist/types/types/url.d.ts.map +1 -0
- package/dist/types/types/usage.d.ts +74 -0
- package/dist/types/types/usage.d.ts.map +1 -0
- package/dist/types/types/wallet.d.ts +129 -0
- package/dist/types/types/wallet.d.ts.map +1 -0
- package/package.json +74 -0
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Supported ledger device families
|
|
3
|
+
*/
|
|
4
|
+
export type LedgerFamily = 'ethereum' | 'solana' | 'bitcoin';
|
|
5
|
+
/**
|
|
6
|
+
* Transaction data for ledger scanning
|
|
7
|
+
*/
|
|
8
|
+
export interface LedgerTransactionData {
|
|
9
|
+
/** From address */
|
|
10
|
+
from: string;
|
|
11
|
+
/** Raw transaction data */
|
|
12
|
+
raw: string;
|
|
13
|
+
/** To address (optional) */
|
|
14
|
+
to?: string;
|
|
15
|
+
/** Value in wei (optional) */
|
|
16
|
+
value?: string;
|
|
17
|
+
/** Transaction data (optional) */
|
|
18
|
+
data?: string;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Ledger transaction scan request
|
|
22
|
+
*/
|
|
23
|
+
export interface LedgerScanRequest {
|
|
24
|
+
/** Transaction data */
|
|
25
|
+
tx: LedgerTransactionData;
|
|
26
|
+
/** Chain ID */
|
|
27
|
+
chain: number;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* EIP-712 typed data for signing
|
|
31
|
+
*/
|
|
32
|
+
export interface EIP712TypedData {
|
|
33
|
+
/** Domain data */
|
|
34
|
+
domain: {
|
|
35
|
+
name?: string;
|
|
36
|
+
version?: string;
|
|
37
|
+
chainId?: number;
|
|
38
|
+
verifyingContract?: string;
|
|
39
|
+
salt?: string;
|
|
40
|
+
};
|
|
41
|
+
/** Message data */
|
|
42
|
+
message: Record<string, unknown>;
|
|
43
|
+
/** Primary type */
|
|
44
|
+
primaryType: string;
|
|
45
|
+
/** Type definitions */
|
|
46
|
+
types: Record<string, Array<{
|
|
47
|
+
name: string;
|
|
48
|
+
type: string;
|
|
49
|
+
}>>;
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Ledger EIP-712 scan request
|
|
53
|
+
*/
|
|
54
|
+
export interface LedgerEIP712Request {
|
|
55
|
+
/** Signer address */
|
|
56
|
+
signer: string;
|
|
57
|
+
/** Typed data to sign */
|
|
58
|
+
typedData: EIP712TypedData;
|
|
59
|
+
/** Chain ID */
|
|
60
|
+
chain: number;
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Risk detected in ledger scan
|
|
64
|
+
*/
|
|
65
|
+
export interface LedgerRisk {
|
|
66
|
+
/** Risk type */
|
|
67
|
+
type: string;
|
|
68
|
+
/** Risk level */
|
|
69
|
+
level: 'low' | 'medium' | 'high' | 'critical';
|
|
70
|
+
/** Risk description */
|
|
71
|
+
description: string;
|
|
72
|
+
/** Recommendation */
|
|
73
|
+
recommendation?: string;
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* Ledger scan response
|
|
77
|
+
*/
|
|
78
|
+
export interface LedgerScanResponse {
|
|
79
|
+
/** Whether transaction is safe */
|
|
80
|
+
is_safe: boolean;
|
|
81
|
+
/** Overall risk level */
|
|
82
|
+
risk_level: 'safe' | 'low' | 'medium' | 'high' | 'critical';
|
|
83
|
+
/** Risks detected */
|
|
84
|
+
risks: LedgerRisk[];
|
|
85
|
+
/** Decoded transaction data */
|
|
86
|
+
decoded?: {
|
|
87
|
+
/** Function name if contract call */
|
|
88
|
+
function_name?: string;
|
|
89
|
+
/** Function signature */
|
|
90
|
+
function_signature?: string;
|
|
91
|
+
/** Decoded parameters */
|
|
92
|
+
parameters?: Record<string, unknown>;
|
|
93
|
+
};
|
|
94
|
+
/** Recommendations */
|
|
95
|
+
recommendations?: string[];
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* Options for ledger scan requests
|
|
99
|
+
*/
|
|
100
|
+
export interface LedgerScanOptions {
|
|
101
|
+
/** Request timeout in milliseconds */
|
|
102
|
+
timeout?: number;
|
|
103
|
+
/** Abort signal */
|
|
104
|
+
signal?: AbortSignal;
|
|
105
|
+
}
|
|
106
|
+
//# sourceMappingURL=ledger.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ledger.d.ts","sourceRoot":"","sources":["../../../src/types/ledger.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,UAAU,GAAG,QAAQ,GAAG,SAAS,CAAC;AAE7D;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,mBAAmB;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,2BAA2B;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,4BAA4B;IAC5B,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,8BAA8B;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,kCAAkC;IAClC,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,uBAAuB;IACvB,EAAE,EAAE,qBAAqB,CAAC;IAC1B,eAAe;IACf,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,kBAAkB;IAClB,MAAM,EAAE;QACN,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAC3B,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,CAAC;IACF,mBAAmB;IACnB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,mBAAmB;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,uBAAuB;IACvB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC,CAAC;CAC9D;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,qBAAqB;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,yBAAyB;IACzB,SAAS,EAAE,eAAe,CAAC;IAC3B,eAAe;IACf,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,gBAAgB;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,iBAAiB;IACjB,KAAK,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,UAAU,CAAC;IAC9C,uBAAuB;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,qBAAqB;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,kCAAkC;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,yBAAyB;IACzB,UAAU,EAAE,MAAM,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,UAAU,CAAC;IAC5D,qBAAqB;IACrB,KAAK,EAAE,UAAU,EAAE,CAAC;IACpB,+BAA+B;IAC/B,OAAO,CAAC,EAAE;QACR,qCAAqC;QACrC,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,yBAAyB;QACzB,kBAAkB,CAAC,EAAE,MAAM,CAAC;QAC5B,yBAAyB;QACzB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACtC,CAAC;IACF,sBAAsB;IACtB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;CAC5B;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,sCAAsC;IACtC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,mBAAmB;IACnB,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* URL safety check response
|
|
3
|
+
*/
|
|
4
|
+
export interface UrlRiskResponse {
|
|
5
|
+
/** Blacklist status */
|
|
6
|
+
blacklist: string;
|
|
7
|
+
/** Prediction result (benign/malicious) */
|
|
8
|
+
prediction: string;
|
|
9
|
+
/** Whitelist status */
|
|
10
|
+
whitelist: string;
|
|
11
|
+
/** Additional details */
|
|
12
|
+
details?: {
|
|
13
|
+
/** Confidence score */
|
|
14
|
+
confidence?: number;
|
|
15
|
+
/** Categories */
|
|
16
|
+
categories?: string[];
|
|
17
|
+
/** Threat type */
|
|
18
|
+
threat_type?: string;
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* URL addition response
|
|
23
|
+
*/
|
|
24
|
+
export interface UrlAddResponse {
|
|
25
|
+
/** Whether URL was added successfully */
|
|
26
|
+
success: boolean;
|
|
27
|
+
/** Message */
|
|
28
|
+
message?: string;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Options for URL check requests
|
|
32
|
+
*/
|
|
33
|
+
export interface UrlCheckOptions {
|
|
34
|
+
/** Request timeout in milliseconds */
|
|
35
|
+
timeout?: number;
|
|
36
|
+
/** Abort signal */
|
|
37
|
+
signal?: AbortSignal;
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=url.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"url.d.ts","sourceRoot":"","sources":["../../../src/types/url.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,uBAAuB;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,2CAA2C;IAC3C,UAAU,EAAE,MAAM,CAAC;IACnB,uBAAuB;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,yBAAyB;IACzB,OAAO,CAAC,EAAE;QACR,uBAAuB;QACvB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,iBAAiB;QACjB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;QACtB,kBAAkB;QAClB,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC;CACH;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,yCAAyC;IACzC,OAAO,EAAE,OAAO,CAAC;IACjB,cAAc;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,sCAAsC;IACtC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,mBAAmB;IACnB,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* API usage data
|
|
3
|
+
*/
|
|
4
|
+
export interface UsageData {
|
|
5
|
+
/** Total API calls */
|
|
6
|
+
total_calls: number;
|
|
7
|
+
/** Calls in current period */
|
|
8
|
+
period_calls: number;
|
|
9
|
+
/** Period start date */
|
|
10
|
+
period_start: string;
|
|
11
|
+
/** Period end date */
|
|
12
|
+
period_end: string;
|
|
13
|
+
/** Usage by endpoint */
|
|
14
|
+
by_endpoint?: Record<string, number>;
|
|
15
|
+
/** Usage by date */
|
|
16
|
+
by_date?: Record<string, number>;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Current usage response
|
|
20
|
+
*/
|
|
21
|
+
export interface CurrentUsageResponse {
|
|
22
|
+
/** Current plan name */
|
|
23
|
+
plan: string;
|
|
24
|
+
/** Calls used this period */
|
|
25
|
+
calls_used: number;
|
|
26
|
+
/** Calls remaining */
|
|
27
|
+
calls_remaining: number;
|
|
28
|
+
/** Total calls allowed */
|
|
29
|
+
calls_limit: number;
|
|
30
|
+
/** Period reset date */
|
|
31
|
+
reset_date: string;
|
|
32
|
+
/** Percentage used */
|
|
33
|
+
usage_percentage: number;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Usage plan information
|
|
37
|
+
*/
|
|
38
|
+
export interface UsagePlan {
|
|
39
|
+
/** Plan ID */
|
|
40
|
+
id: string;
|
|
41
|
+
/** Plan name */
|
|
42
|
+
name: string;
|
|
43
|
+
/** Monthly call limit */
|
|
44
|
+
monthly_limit: number;
|
|
45
|
+
/** Rate limit per second */
|
|
46
|
+
rate_limit: number;
|
|
47
|
+
/** Price per month */
|
|
48
|
+
price_monthly?: number;
|
|
49
|
+
/** Features included */
|
|
50
|
+
features: string[];
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Usage plans response
|
|
54
|
+
*/
|
|
55
|
+
export interface UsagePlansResponse {
|
|
56
|
+
/** Available plans */
|
|
57
|
+
plans: UsagePlan[];
|
|
58
|
+
/** Current plan ID */
|
|
59
|
+
current_plan: string;
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Options for usage requests
|
|
63
|
+
*/
|
|
64
|
+
export interface UsageOptions {
|
|
65
|
+
/** Start date for usage data */
|
|
66
|
+
start_date?: string;
|
|
67
|
+
/** End date for usage data */
|
|
68
|
+
end_date?: string;
|
|
69
|
+
/** Request timeout in milliseconds */
|
|
70
|
+
timeout?: number;
|
|
71
|
+
/** Abort signal */
|
|
72
|
+
signal?: AbortSignal;
|
|
73
|
+
}
|
|
74
|
+
//# sourceMappingURL=usage.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"usage.d.ts","sourceRoot":"","sources":["../../../src/types/usage.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,sBAAsB;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,8BAA8B;IAC9B,YAAY,EAAE,MAAM,CAAC;IACrB,wBAAwB;IACxB,YAAY,EAAE,MAAM,CAAC;IACrB,sBAAsB;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,wBAAwB;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrC,oBAAoB;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAClC;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,wBAAwB;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,6BAA6B;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,sBAAsB;IACtB,eAAe,EAAE,MAAM,CAAC;IACxB,0BAA0B;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,wBAAwB;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,sBAAsB;IACtB,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,cAAc;IACd,EAAE,EAAE,MAAM,CAAC;IACX,gBAAgB;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,yBAAyB;IACzB,aAAa,EAAE,MAAM,CAAC;IACtB,4BAA4B;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,sBAAsB;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,wBAAwB;IACxB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,sBAAsB;IACtB,KAAK,EAAE,SAAS,EAAE,CAAC;IACnB,sBAAsB;IACtB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,gCAAgC;IAChC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,8BAA8B;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,sCAAsC;IACtC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,mBAAmB;IACnB,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB"}
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
import { Chain, RiskTag, RiskCategory, TokenStandard } from '@rlajous/sdk-core';
|
|
2
|
+
/**
|
|
3
|
+
* Transaction risk issue
|
|
4
|
+
*/
|
|
5
|
+
export interface TransactionIssue {
|
|
6
|
+
/** Risk score */
|
|
7
|
+
score: number;
|
|
8
|
+
/** Risk tags */
|
|
9
|
+
tags: RiskTag[];
|
|
10
|
+
/** Risk categories */
|
|
11
|
+
categories: Record<string, RiskCategory>;
|
|
12
|
+
/** Transaction details */
|
|
13
|
+
transaction: TransactionDetails;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Transaction details
|
|
17
|
+
*/
|
|
18
|
+
export interface TransactionDetails {
|
|
19
|
+
/** Transaction hash */
|
|
20
|
+
transaction_hash?: string;
|
|
21
|
+
/** Block number */
|
|
22
|
+
block_number?: number;
|
|
23
|
+
/** Timestamp */
|
|
24
|
+
timestamp?: number;
|
|
25
|
+
/** Formatted datetime */
|
|
26
|
+
datetime?: string;
|
|
27
|
+
/** Counterparty address */
|
|
28
|
+
from_to_address?: string;
|
|
29
|
+
/** Transaction direction */
|
|
30
|
+
direction?: 'in' | 'out';
|
|
31
|
+
/** Contract address if applicable */
|
|
32
|
+
contract_address?: string;
|
|
33
|
+
/** Token ID for NFTs */
|
|
34
|
+
token_id?: string;
|
|
35
|
+
/** Token type */
|
|
36
|
+
token_type?: TokenStandard;
|
|
37
|
+
/** Whether counterparty is a contract */
|
|
38
|
+
is_contract?: boolean;
|
|
39
|
+
/** Token name */
|
|
40
|
+
token_name?: string;
|
|
41
|
+
/** Function called */
|
|
42
|
+
function_name?: string;
|
|
43
|
+
/** Whether counterparty is sanctioned */
|
|
44
|
+
sanctioned_address?: boolean;
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Wallet transactions response
|
|
48
|
+
*/
|
|
49
|
+
export interface WalletTransactionsResponse {
|
|
50
|
+
/** Total issue count */
|
|
51
|
+
count: number;
|
|
52
|
+
/** Medium severity count */
|
|
53
|
+
medium: number;
|
|
54
|
+
/** High severity count */
|
|
55
|
+
high: number;
|
|
56
|
+
/** Overall risk score */
|
|
57
|
+
overallRisk?: number;
|
|
58
|
+
/** Transaction issues */
|
|
59
|
+
issues: TransactionIssue[];
|
|
60
|
+
/** Error message */
|
|
61
|
+
error?: string;
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Token approval information
|
|
65
|
+
*/
|
|
66
|
+
export interface TokenApproval {
|
|
67
|
+
/** Spender address */
|
|
68
|
+
spender: string;
|
|
69
|
+
/** Token address */
|
|
70
|
+
token_address: string;
|
|
71
|
+
/** Token name */
|
|
72
|
+
token_name?: string;
|
|
73
|
+
/** Token symbol */
|
|
74
|
+
token_symbol?: string;
|
|
75
|
+
/** Approved amount */
|
|
76
|
+
amount: string;
|
|
77
|
+
/** Whether unlimited approval */
|
|
78
|
+
is_unlimited: boolean;
|
|
79
|
+
/** Approval timestamp */
|
|
80
|
+
approved_at?: string;
|
|
81
|
+
/** Spender risk score */
|
|
82
|
+
spender_risk?: number;
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Wallet approvals response
|
|
86
|
+
*/
|
|
87
|
+
export interface WalletApprovalsResponse {
|
|
88
|
+
/** List of token approvals */
|
|
89
|
+
approvals: TokenApproval[];
|
|
90
|
+
/** Total count */
|
|
91
|
+
count: number;
|
|
92
|
+
/** High risk approval count */
|
|
93
|
+
high_risk_count: number;
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* Options for wallet transaction requests
|
|
97
|
+
*/
|
|
98
|
+
export interface WalletTransactionsOptions {
|
|
99
|
+
/**
|
|
100
|
+
* Target blockchain
|
|
101
|
+
*
|
|
102
|
+
* Optional if `defaultChain` was set in the client configuration.
|
|
103
|
+
*/
|
|
104
|
+
chain?: Chain;
|
|
105
|
+
/** Number of transactions to return */
|
|
106
|
+
limit?: number;
|
|
107
|
+
/** Pagination offset */
|
|
108
|
+
offset?: number;
|
|
109
|
+
/** Request timeout in milliseconds */
|
|
110
|
+
timeout?: number;
|
|
111
|
+
/** Abort signal */
|
|
112
|
+
signal?: AbortSignal;
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* Options for wallet approvals requests
|
|
116
|
+
*/
|
|
117
|
+
export interface WalletApprovalsOptions {
|
|
118
|
+
/**
|
|
119
|
+
* Target blockchain
|
|
120
|
+
*
|
|
121
|
+
* Optional if `defaultChain` was set in the client configuration.
|
|
122
|
+
*/
|
|
123
|
+
chain?: Chain;
|
|
124
|
+
/** Request timeout in milliseconds */
|
|
125
|
+
timeout?: number;
|
|
126
|
+
/** Abort signal */
|
|
127
|
+
signal?: AbortSignal;
|
|
128
|
+
}
|
|
129
|
+
//# sourceMappingURL=wallet.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wallet.d.ts","sourceRoot":"","sources":["../../../src/types/wallet.ts"],"names":[],"mappings":"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"}
|
package/package.json
ADDED
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@rlajous/sdk-threat",
|
|
3
|
+
"version": "1.0.0",
|
|
4
|
+
"description": "Webacy SDK for threat and risk analysis - address risk, sanctions, contracts, URL safety",
|
|
5
|
+
"main": "dist/cjs/index.js",
|
|
6
|
+
"module": "dist/esm/index.js",
|
|
7
|
+
"types": "dist/types/index.d.ts",
|
|
8
|
+
"exports": {
|
|
9
|
+
".": {
|
|
10
|
+
"import": {
|
|
11
|
+
"types": "./dist/types/index.d.ts",
|
|
12
|
+
"default": "./dist/esm/index.js"
|
|
13
|
+
},
|
|
14
|
+
"require": {
|
|
15
|
+
"types": "./dist/types/index.d.ts",
|
|
16
|
+
"default": "./dist/cjs/index.js"
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
},
|
|
20
|
+
"files": [
|
|
21
|
+
"dist",
|
|
22
|
+
"README.md"
|
|
23
|
+
],
|
|
24
|
+
"dependencies": {
|
|
25
|
+
"@rlajous/sdk-core": "1.0.0"
|
|
26
|
+
},
|
|
27
|
+
"devDependencies": {
|
|
28
|
+
"@types/node": "^22.0.0",
|
|
29
|
+
"typescript": "^5.7.0"
|
|
30
|
+
},
|
|
31
|
+
"keywords": [
|
|
32
|
+
"webacy",
|
|
33
|
+
"sdk",
|
|
34
|
+
"threat",
|
|
35
|
+
"risk",
|
|
36
|
+
"security",
|
|
37
|
+
"sanctions",
|
|
38
|
+
"address-risk",
|
|
39
|
+
"contract-analysis",
|
|
40
|
+
"blockchain",
|
|
41
|
+
"crypto"
|
|
42
|
+
],
|
|
43
|
+
"author": "Webacy",
|
|
44
|
+
"license": "MIT",
|
|
45
|
+
"repository": {
|
|
46
|
+
"type": "git",
|
|
47
|
+
"url": "https://github.com/Webacy-Prod/sdk.git",
|
|
48
|
+
"directory": "packages/threat"
|
|
49
|
+
},
|
|
50
|
+
"bugs": {
|
|
51
|
+
"url": "https://github.com/Webacy-Prod/sdk/issues"
|
|
52
|
+
},
|
|
53
|
+
"homepage": "https://github.com/Webacy-Prod/sdk/tree/main/packages/threat#readme",
|
|
54
|
+
"engines": {
|
|
55
|
+
"node": ">=18.0.0"
|
|
56
|
+
},
|
|
57
|
+
"sideEffects": false,
|
|
58
|
+
"publishConfig": {
|
|
59
|
+
"access": "public",
|
|
60
|
+
"registry": "https://registry.npmjs.org/"
|
|
61
|
+
},
|
|
62
|
+
"scripts": {
|
|
63
|
+
"build": "npm run build:esm && npm run build:cjs && npm run build:types && npm run postbuild",
|
|
64
|
+
"build:esm": "tsc -p tsconfig.esm.json",
|
|
65
|
+
"build:cjs": "tsc -p tsconfig.cjs.json",
|
|
66
|
+
"build:types": "tsc -p tsconfig.types.json",
|
|
67
|
+
"postbuild": "echo '{\"type\":\"module\"}' > dist/esm/package.json && echo '{\"type\":\"commonjs\"}' > dist/cjs/package.json",
|
|
68
|
+
"clean": "rm -rf dist",
|
|
69
|
+
"typecheck": "tsc --noEmit",
|
|
70
|
+
"lint": "eslint src --ext .ts",
|
|
71
|
+
"test": "vitest run",
|
|
72
|
+
"test:watch": "vitest watch"
|
|
73
|
+
}
|
|
74
|
+
}
|