@edge-markets/connect 1.4.0 → 1.5.1
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/dist/index.d.mts +93 -108
- package/dist/index.d.ts +93 -108
- package/dist/index.js +22 -5
- package/dist/index.mjs +21 -5
- package/package.json +1 -1
package/dist/index.d.mts
CHANGED
|
@@ -54,8 +54,8 @@ declare const EDGE_SCOPES: {
|
|
|
54
54
|
*/
|
|
55
55
|
readonly BALANCE_READ: "balance.read";
|
|
56
56
|
/**
|
|
57
|
-
* Initiate and
|
|
58
|
-
* Required for: `POST /v1/transfer`, `POST /v1/transfer/:id/
|
|
57
|
+
* Initiate fund transfers and create EDGE-hosted verification sessions.
|
|
58
|
+
* Required for: `POST /v1/transfer`, `POST /v1/transfer/:id/verification-session`, `GET /v1/transfers`
|
|
59
59
|
*/
|
|
60
60
|
readonly TRANSFER_WRITE: "transfer.write";
|
|
61
61
|
};
|
|
@@ -696,7 +696,7 @@ interface paths {
|
|
|
696
696
|
* Use the `idempotencyKey` to safely retry requests. If a transfer with the same key exists, its current status will be returned.
|
|
697
697
|
*
|
|
698
698
|
* **OTP Verification:**
|
|
699
|
-
* After initiating, the transfer will be in `pending_verification` status. Call `POST /transfer/{transferId}/
|
|
699
|
+
* After initiating, the transfer will be in `pending_verification` status. Call `POST /transfer/{transferId}/verification-session` to create an EDGE-hosted verification session and embed the returned `verificationUrl` in your frontend.
|
|
700
700
|
*/
|
|
701
701
|
post: operations['initiateTransfer'];
|
|
702
702
|
delete?: never;
|
|
@@ -745,32 +745,6 @@ interface paths {
|
|
|
745
745
|
patch?: never;
|
|
746
746
|
trace?: never;
|
|
747
747
|
};
|
|
748
|
-
'/v1/transfer/{transferId}/verify': {
|
|
749
|
-
parameters: {
|
|
750
|
-
query?: never;
|
|
751
|
-
header?: never;
|
|
752
|
-
path?: never;
|
|
753
|
-
cookie?: never;
|
|
754
|
-
};
|
|
755
|
-
get?: never;
|
|
756
|
-
put?: never;
|
|
757
|
-
/**
|
|
758
|
-
* Verify transfer with OTP
|
|
759
|
-
* @description Completes a pending transfer by verifying the one-time password.
|
|
760
|
-
*
|
|
761
|
-
* **OTP Methods:**
|
|
762
|
-
* - `sms`: User receives OTP via SMS
|
|
763
|
-
* - `totp`: User generates OTP from authenticator app
|
|
764
|
-
*
|
|
765
|
-
* The OTP method is indicated in the `otpMethod` field of the transfer response.
|
|
766
|
-
*/
|
|
767
|
-
post: operations['verifyTransfer'];
|
|
768
|
-
delete?: never;
|
|
769
|
-
options?: never;
|
|
770
|
-
head?: never;
|
|
771
|
-
patch?: never;
|
|
772
|
-
trace?: never;
|
|
773
|
-
};
|
|
774
748
|
'/v1/consent': {
|
|
775
749
|
parameters: {
|
|
776
750
|
query?: never;
|
|
@@ -1024,6 +998,20 @@ interface components {
|
|
|
1024
998
|
* @example Doe
|
|
1025
999
|
*/
|
|
1026
1000
|
lastName: string;
|
|
1001
|
+
/** @description Street address */
|
|
1002
|
+
address?: string;
|
|
1003
|
+
/** @description City */
|
|
1004
|
+
city?: string;
|
|
1005
|
+
/** @description US state code */
|
|
1006
|
+
state?: string;
|
|
1007
|
+
/** @description Postal code */
|
|
1008
|
+
zip?: string;
|
|
1009
|
+
/** @description Phone number */
|
|
1010
|
+
phone?: string;
|
|
1011
|
+
/** @description Date of birth */
|
|
1012
|
+
dateOfBirth?: string;
|
|
1013
|
+
/** @description Whether the user has completed KYC verification */
|
|
1014
|
+
verified: boolean;
|
|
1027
1015
|
/**
|
|
1028
1016
|
* Format: date-time
|
|
1029
1017
|
* @description Account creation timestamp
|
|
@@ -1038,7 +1026,12 @@ interface components {
|
|
|
1038
1026
|
*/
|
|
1039
1027
|
userId: string;
|
|
1040
1028
|
/**
|
|
1041
|
-
* @description
|
|
1029
|
+
* @description Current total balance in USD (includes pending holds)
|
|
1030
|
+
* @example 1250.5
|
|
1031
|
+
*/
|
|
1032
|
+
currentBalance: number;
|
|
1033
|
+
/**
|
|
1034
|
+
* @description Available balance in USD (funds available for transfer)
|
|
1042
1035
|
* @example 1250.5
|
|
1043
1036
|
*/
|
|
1044
1037
|
availableBalance: number;
|
|
@@ -1135,13 +1128,6 @@ interface components {
|
|
|
1135
1128
|
*/
|
|
1136
1129
|
total: number;
|
|
1137
1130
|
};
|
|
1138
|
-
VerifyTransferRequestDto: {
|
|
1139
|
-
/**
|
|
1140
|
-
* @description One-time password for verification
|
|
1141
|
-
* @example 123456
|
|
1142
|
-
*/
|
|
1143
|
-
otp: string;
|
|
1144
|
-
};
|
|
1145
1131
|
RevokeConsentResponseDto: {
|
|
1146
1132
|
/**
|
|
1147
1133
|
* @description Whether consent was successfully revoked
|
|
@@ -2016,69 +2002,6 @@ interface operations {
|
|
|
2016
2002
|
};
|
|
2017
2003
|
};
|
|
2018
2004
|
};
|
|
2019
|
-
verifyTransfer: {
|
|
2020
|
-
parameters: {
|
|
2021
|
-
query?: never;
|
|
2022
|
-
header?: never;
|
|
2023
|
-
path: {
|
|
2024
|
-
/** @description The unique transfer identifier */
|
|
2025
|
-
transferId: string;
|
|
2026
|
-
};
|
|
2027
|
-
cookie?: never;
|
|
2028
|
-
};
|
|
2029
|
-
requestBody: {
|
|
2030
|
-
content: {
|
|
2031
|
-
'application/json': components['schemas']['VerifyTransferRequestDto'];
|
|
2032
|
-
};
|
|
2033
|
-
};
|
|
2034
|
-
responses: {
|
|
2035
|
-
/** @description Transfer verified and completed (or failed) */
|
|
2036
|
-
200: {
|
|
2037
|
-
headers: {
|
|
2038
|
-
[name: string]: unknown;
|
|
2039
|
-
};
|
|
2040
|
-
content: {
|
|
2041
|
-
'application/json': components['schemas']['TransferResponseDto'];
|
|
2042
|
-
};
|
|
2043
|
-
};
|
|
2044
|
-
/** @description Invalid OTP or transfer expired */
|
|
2045
|
-
400: {
|
|
2046
|
-
headers: {
|
|
2047
|
-
[name: string]: unknown;
|
|
2048
|
-
};
|
|
2049
|
-
content: {
|
|
2050
|
-
'application/json': components['schemas']['ErrorResponseDto'];
|
|
2051
|
-
};
|
|
2052
|
-
};
|
|
2053
|
-
/** @description Invalid or expired access token */
|
|
2054
|
-
401: {
|
|
2055
|
-
headers: {
|
|
2056
|
-
[name: string]: unknown;
|
|
2057
|
-
};
|
|
2058
|
-
content: {
|
|
2059
|
-
'application/json': components['schemas']['ErrorResponseDto'];
|
|
2060
|
-
};
|
|
2061
|
-
};
|
|
2062
|
-
/** @description User consent required or insufficient scope */
|
|
2063
|
-
403: {
|
|
2064
|
-
headers: {
|
|
2065
|
-
[name: string]: unknown;
|
|
2066
|
-
};
|
|
2067
|
-
content: {
|
|
2068
|
-
'application/json': components['schemas']['ConsentRequiredErrorDto'];
|
|
2069
|
-
};
|
|
2070
|
-
};
|
|
2071
|
-
/** @description Transfer not found */
|
|
2072
|
-
404: {
|
|
2073
|
-
headers: {
|
|
2074
|
-
[name: string]: unknown;
|
|
2075
|
-
};
|
|
2076
|
-
content: {
|
|
2077
|
-
'application/json': components['schemas']['ErrorResponseDto'];
|
|
2078
|
-
};
|
|
2079
|
-
};
|
|
2080
|
-
};
|
|
2081
|
-
};
|
|
2082
2005
|
revokeConsent: {
|
|
2083
2006
|
parameters: {
|
|
2084
2007
|
query?: never;
|
|
@@ -2355,9 +2278,21 @@ interface operations {
|
|
|
2355
2278
|
* ```typescript
|
|
2356
2279
|
* const user: User = await edge.getUser(accessToken)
|
|
2357
2280
|
* console.log(`Welcome, ${user.firstName}!`)
|
|
2281
|
+
* console.log(`Verified: ${user.verified}`)
|
|
2282
|
+
* console.log(`State: ${user.address?.state}`)
|
|
2358
2283
|
* ```
|
|
2359
2284
|
*/
|
|
2360
|
-
|
|
2285
|
+
interface User {
|
|
2286
|
+
id: string;
|
|
2287
|
+
email: string;
|
|
2288
|
+
firstName: string;
|
|
2289
|
+
lastName: string;
|
|
2290
|
+
phone?: string | null;
|
|
2291
|
+
dateOfBirth?: string | null;
|
|
2292
|
+
verified?: boolean;
|
|
2293
|
+
address?: UserAddress | null;
|
|
2294
|
+
createdAt: string;
|
|
2295
|
+
}
|
|
2361
2296
|
/**
|
|
2362
2297
|
* User's EdgeBoost account balance.
|
|
2363
2298
|
*
|
|
@@ -2401,10 +2336,6 @@ type TransferListItem = components['schemas']['TransferListItemDto'];
|
|
|
2401
2336
|
* Paginated list of transfers.
|
|
2402
2337
|
*/
|
|
2403
2338
|
type TransferList = components['schemas']['ListTransfersResponseDto'];
|
|
2404
|
-
/**
|
|
2405
|
-
* Request payload for verifying a transfer with OTP.
|
|
2406
|
-
*/
|
|
2407
|
-
type VerifyTransferRequest = components['schemas']['VerifyTransferRequestDto'];
|
|
2408
2339
|
/**
|
|
2409
2340
|
* Response from revoking user consent.
|
|
2410
2341
|
*/
|
|
@@ -2432,7 +2363,16 @@ type TransferType = 'debit' | 'credit';
|
|
|
2432
2363
|
* - `failed`: Transfer failed (insufficient funds, invalid OTP, etc.)
|
|
2433
2364
|
* - `expired`: OTP verification window expired
|
|
2434
2365
|
*/
|
|
2435
|
-
type TransferStatus = 'pending_verification' | 'completed' | 'failed' | 'expired';
|
|
2366
|
+
type TransferStatus = 'pending_verification' | 'processing' | 'completed' | 'failed' | 'expired';
|
|
2367
|
+
/**
|
|
2368
|
+
* Transaction category for settlement window determination.
|
|
2369
|
+
*
|
|
2370
|
+
* - `sportsbook` / `dfs`: T+1 settlement
|
|
2371
|
+
* - `casino` / `sweepstakes`: T+0 settlement
|
|
2372
|
+
*
|
|
2373
|
+
* When omitted, the partner's default settlement window is used.
|
|
2374
|
+
*/
|
|
2375
|
+
type TransferCategory = 'sportsbook' | 'casino' | 'dfs' | 'sweepstakes';
|
|
2436
2376
|
/**
|
|
2437
2377
|
* OTP delivery method for transfer verification.
|
|
2438
2378
|
*
|
|
@@ -2506,6 +2446,47 @@ interface VerifyIdentityResult {
|
|
|
2506
2446
|
verified: true;
|
|
2507
2447
|
scores: VerifyIdentityScores;
|
|
2508
2448
|
}
|
|
2449
|
+
/**
|
|
2450
|
+
* Geolocation data collected by the SDK from the browser or device.
|
|
2451
|
+
*
|
|
2452
|
+
* Passed to the server during transfer verification for cross-referencing
|
|
2453
|
+
* against IP-based geolocation. Collection is always optional — the SDK
|
|
2454
|
+
* returns `null` if the user denies permission or the API is unavailable.
|
|
2455
|
+
*
|
|
2456
|
+
* @example
|
|
2457
|
+
* ```typescript
|
|
2458
|
+
* import { collectGeolocation } from '@edge-markets/connect-link'
|
|
2459
|
+
*
|
|
2460
|
+
* const geo = await collectGeolocation()
|
|
2461
|
+
* // geo: { latitude: 30.267, longitude: -97.743, accuracy: 25, timestamp: '2026-...' }
|
|
2462
|
+
* ```
|
|
2463
|
+
*/
|
|
2464
|
+
interface SdkGeolocation {
|
|
2465
|
+
/** Latitude in decimal degrees */
|
|
2466
|
+
latitude: number;
|
|
2467
|
+
/** Longitude in decimal degrees */
|
|
2468
|
+
longitude: number;
|
|
2469
|
+
/** Accuracy of the position in meters */
|
|
2470
|
+
accuracy?: number;
|
|
2471
|
+
/** ISO 8601 timestamp of when the position was captured */
|
|
2472
|
+
timestamp: string;
|
|
2473
|
+
}
|
|
2474
|
+
/**
|
|
2475
|
+
* User's address on file with EdgeBoost.
|
|
2476
|
+
* All fields are nullable — only populated fields are returned.
|
|
2477
|
+
*/
|
|
2478
|
+
interface UserAddress {
|
|
2479
|
+
/** Street address line 1 */
|
|
2480
|
+
address1?: string | null;
|
|
2481
|
+
/** Street address line 2 (apartment, suite, etc.) */
|
|
2482
|
+
address2?: string | null;
|
|
2483
|
+
/** City */
|
|
2484
|
+
city?: string | null;
|
|
2485
|
+
/** US state code (e.g. "TX") */
|
|
2486
|
+
state?: string | null;
|
|
2487
|
+
/** ZIP / postal code */
|
|
2488
|
+
zip?: string | null;
|
|
2489
|
+
}
|
|
2509
2490
|
/**
|
|
2510
2491
|
* Request payload for creating a hosted verification session.
|
|
2511
2492
|
*/
|
|
@@ -2545,11 +2526,15 @@ declare const TRANSFER_TYPES: readonly ["debit", "credit"];
|
|
|
2545
2526
|
* All possible transfer statuses.
|
|
2546
2527
|
* Use for filtering or status display.
|
|
2547
2528
|
*/
|
|
2548
|
-
declare const TRANSFER_STATUSES: readonly ["pending_verification", "completed", "failed", "expired"];
|
|
2529
|
+
declare const TRANSFER_STATUSES: readonly ["pending_verification", "processing", "completed", "failed", "expired"];
|
|
2549
2530
|
/**
|
|
2550
2531
|
* All possible OTP methods.
|
|
2551
2532
|
*/
|
|
2552
2533
|
declare const OTP_METHODS: readonly ["sms", "totp", "email"];
|
|
2534
|
+
/**
|
|
2535
|
+
* All possible transfer categories.
|
|
2536
|
+
*/
|
|
2537
|
+
declare const TRANSFER_CATEGORIES: readonly ["sportsbook", "casino", "dfs", "sweepstakes"];
|
|
2553
2538
|
|
|
2554
2539
|
/**
|
|
2555
2540
|
* EDGE Connect SDK Types
|
|
@@ -3054,4 +3039,4 @@ declare const SDK_VERSION = "1.0.0";
|
|
|
3054
3039
|
*/
|
|
3055
3040
|
declare const SDK_NAME = "@edge-markets/connect";
|
|
3056
3041
|
|
|
3057
|
-
export { ALL_EDGE_SCOPES, type ApiError, type Balance, type ConsentRequiredError, type CreateVerificationSessionRequest, EDGE_ENVIRONMENTS, EDGE_SCOPES, EdgeApiError, EdgeAuthenticationError, EdgeConsentRequiredError, type EdgeEnvironment, type EdgeEnvironmentConfig, EdgeError, EdgeIdentityVerificationError, EdgeInsufficientScopeError, type EdgeLinkConfigBase, type EdgeLinkEvent, type EdgeLinkEventName, type EdgeLinkExit, type EdgeLinkSuccess, EdgeNetworkError, EdgeNotFoundError, EdgePopupBlockedError, EdgePopupClosedError, type EdgeScope, EdgeStateMismatchError, EdgeTokenExchangeError, type EdgeTokens, EdgeValidationError, type InitiateTransferRequest, type ListTransfersParams, OTP_METHODS, type OtpMethod, type PKCEPair, type RevokeConsentResponse, SCOPE_DESCRIPTIONS, SCOPE_ICONS, SDK_NAME, SDK_VERSION, TRANSFER_STATUSES, TRANSFER_TYPES, type Transfer, type TransferList, type TransferListItem, type TransferStatus, type TransferType, type User, type VerificationSession, type VerificationSessionStatus, type VerificationSessionStatusResponse, type VerifyIdentityAddress, type VerifyIdentityOptions, type VerifyIdentityResult, type VerifyIdentityScores, type
|
|
3042
|
+
export { ALL_EDGE_SCOPES, type ApiError, type Balance, type ConsentRequiredError, type CreateVerificationSessionRequest, EDGE_ENVIRONMENTS, EDGE_SCOPES, EdgeApiError, EdgeAuthenticationError, EdgeConsentRequiredError, type EdgeEnvironment, type EdgeEnvironmentConfig, EdgeError, EdgeIdentityVerificationError, EdgeInsufficientScopeError, type EdgeLinkConfigBase, type EdgeLinkEvent, type EdgeLinkEventName, type EdgeLinkExit, type EdgeLinkSuccess, EdgeNetworkError, EdgeNotFoundError, EdgePopupBlockedError, EdgePopupClosedError, type EdgeScope, EdgeStateMismatchError, EdgeTokenExchangeError, type EdgeTokens, EdgeValidationError, type InitiateTransferRequest, type ListTransfersParams, OTP_METHODS, type OtpMethod, type PKCEPair, type RevokeConsentResponse, SCOPE_DESCRIPTIONS, SCOPE_ICONS, SDK_NAME, SDK_VERSION, type SdkGeolocation, TRANSFER_CATEGORIES, TRANSFER_STATUSES, TRANSFER_TYPES, type Transfer, type TransferCategory, type TransferList, type TransferListItem, type TransferStatus, type TransferType, type User, type UserAddress, type VerificationSession, type VerificationSessionStatus, type VerificationSessionStatusResponse, type VerifyIdentityAddress, type VerifyIdentityOptions, type VerifyIdentityResult, type VerifyIdentityScores, type components, formatScopeForEnvironment, formatScopesForEnvironment, getAvailableEnvironments, getEnvironmentConfig, isApiError, isAuthenticationError, isConsentRequiredError, isEdgeError, isIdentityVerificationError, isNetworkError, isProductionEnvironment, isValidScope, type operations, parseScope, type paths };
|
package/dist/index.d.ts
CHANGED
|
@@ -54,8 +54,8 @@ declare const EDGE_SCOPES: {
|
|
|
54
54
|
*/
|
|
55
55
|
readonly BALANCE_READ: "balance.read";
|
|
56
56
|
/**
|
|
57
|
-
* Initiate and
|
|
58
|
-
* Required for: `POST /v1/transfer`, `POST /v1/transfer/:id/
|
|
57
|
+
* Initiate fund transfers and create EDGE-hosted verification sessions.
|
|
58
|
+
* Required for: `POST /v1/transfer`, `POST /v1/transfer/:id/verification-session`, `GET /v1/transfers`
|
|
59
59
|
*/
|
|
60
60
|
readonly TRANSFER_WRITE: "transfer.write";
|
|
61
61
|
};
|
|
@@ -696,7 +696,7 @@ interface paths {
|
|
|
696
696
|
* Use the `idempotencyKey` to safely retry requests. If a transfer with the same key exists, its current status will be returned.
|
|
697
697
|
*
|
|
698
698
|
* **OTP Verification:**
|
|
699
|
-
* After initiating, the transfer will be in `pending_verification` status. Call `POST /transfer/{transferId}/
|
|
699
|
+
* After initiating, the transfer will be in `pending_verification` status. Call `POST /transfer/{transferId}/verification-session` to create an EDGE-hosted verification session and embed the returned `verificationUrl` in your frontend.
|
|
700
700
|
*/
|
|
701
701
|
post: operations['initiateTransfer'];
|
|
702
702
|
delete?: never;
|
|
@@ -745,32 +745,6 @@ interface paths {
|
|
|
745
745
|
patch?: never;
|
|
746
746
|
trace?: never;
|
|
747
747
|
};
|
|
748
|
-
'/v1/transfer/{transferId}/verify': {
|
|
749
|
-
parameters: {
|
|
750
|
-
query?: never;
|
|
751
|
-
header?: never;
|
|
752
|
-
path?: never;
|
|
753
|
-
cookie?: never;
|
|
754
|
-
};
|
|
755
|
-
get?: never;
|
|
756
|
-
put?: never;
|
|
757
|
-
/**
|
|
758
|
-
* Verify transfer with OTP
|
|
759
|
-
* @description Completes a pending transfer by verifying the one-time password.
|
|
760
|
-
*
|
|
761
|
-
* **OTP Methods:**
|
|
762
|
-
* - `sms`: User receives OTP via SMS
|
|
763
|
-
* - `totp`: User generates OTP from authenticator app
|
|
764
|
-
*
|
|
765
|
-
* The OTP method is indicated in the `otpMethod` field of the transfer response.
|
|
766
|
-
*/
|
|
767
|
-
post: operations['verifyTransfer'];
|
|
768
|
-
delete?: never;
|
|
769
|
-
options?: never;
|
|
770
|
-
head?: never;
|
|
771
|
-
patch?: never;
|
|
772
|
-
trace?: never;
|
|
773
|
-
};
|
|
774
748
|
'/v1/consent': {
|
|
775
749
|
parameters: {
|
|
776
750
|
query?: never;
|
|
@@ -1024,6 +998,20 @@ interface components {
|
|
|
1024
998
|
* @example Doe
|
|
1025
999
|
*/
|
|
1026
1000
|
lastName: string;
|
|
1001
|
+
/** @description Street address */
|
|
1002
|
+
address?: string;
|
|
1003
|
+
/** @description City */
|
|
1004
|
+
city?: string;
|
|
1005
|
+
/** @description US state code */
|
|
1006
|
+
state?: string;
|
|
1007
|
+
/** @description Postal code */
|
|
1008
|
+
zip?: string;
|
|
1009
|
+
/** @description Phone number */
|
|
1010
|
+
phone?: string;
|
|
1011
|
+
/** @description Date of birth */
|
|
1012
|
+
dateOfBirth?: string;
|
|
1013
|
+
/** @description Whether the user has completed KYC verification */
|
|
1014
|
+
verified: boolean;
|
|
1027
1015
|
/**
|
|
1028
1016
|
* Format: date-time
|
|
1029
1017
|
* @description Account creation timestamp
|
|
@@ -1038,7 +1026,12 @@ interface components {
|
|
|
1038
1026
|
*/
|
|
1039
1027
|
userId: string;
|
|
1040
1028
|
/**
|
|
1041
|
-
* @description
|
|
1029
|
+
* @description Current total balance in USD (includes pending holds)
|
|
1030
|
+
* @example 1250.5
|
|
1031
|
+
*/
|
|
1032
|
+
currentBalance: number;
|
|
1033
|
+
/**
|
|
1034
|
+
* @description Available balance in USD (funds available for transfer)
|
|
1042
1035
|
* @example 1250.5
|
|
1043
1036
|
*/
|
|
1044
1037
|
availableBalance: number;
|
|
@@ -1135,13 +1128,6 @@ interface components {
|
|
|
1135
1128
|
*/
|
|
1136
1129
|
total: number;
|
|
1137
1130
|
};
|
|
1138
|
-
VerifyTransferRequestDto: {
|
|
1139
|
-
/**
|
|
1140
|
-
* @description One-time password for verification
|
|
1141
|
-
* @example 123456
|
|
1142
|
-
*/
|
|
1143
|
-
otp: string;
|
|
1144
|
-
};
|
|
1145
1131
|
RevokeConsentResponseDto: {
|
|
1146
1132
|
/**
|
|
1147
1133
|
* @description Whether consent was successfully revoked
|
|
@@ -2016,69 +2002,6 @@ interface operations {
|
|
|
2016
2002
|
};
|
|
2017
2003
|
};
|
|
2018
2004
|
};
|
|
2019
|
-
verifyTransfer: {
|
|
2020
|
-
parameters: {
|
|
2021
|
-
query?: never;
|
|
2022
|
-
header?: never;
|
|
2023
|
-
path: {
|
|
2024
|
-
/** @description The unique transfer identifier */
|
|
2025
|
-
transferId: string;
|
|
2026
|
-
};
|
|
2027
|
-
cookie?: never;
|
|
2028
|
-
};
|
|
2029
|
-
requestBody: {
|
|
2030
|
-
content: {
|
|
2031
|
-
'application/json': components['schemas']['VerifyTransferRequestDto'];
|
|
2032
|
-
};
|
|
2033
|
-
};
|
|
2034
|
-
responses: {
|
|
2035
|
-
/** @description Transfer verified and completed (or failed) */
|
|
2036
|
-
200: {
|
|
2037
|
-
headers: {
|
|
2038
|
-
[name: string]: unknown;
|
|
2039
|
-
};
|
|
2040
|
-
content: {
|
|
2041
|
-
'application/json': components['schemas']['TransferResponseDto'];
|
|
2042
|
-
};
|
|
2043
|
-
};
|
|
2044
|
-
/** @description Invalid OTP or transfer expired */
|
|
2045
|
-
400: {
|
|
2046
|
-
headers: {
|
|
2047
|
-
[name: string]: unknown;
|
|
2048
|
-
};
|
|
2049
|
-
content: {
|
|
2050
|
-
'application/json': components['schemas']['ErrorResponseDto'];
|
|
2051
|
-
};
|
|
2052
|
-
};
|
|
2053
|
-
/** @description Invalid or expired access token */
|
|
2054
|
-
401: {
|
|
2055
|
-
headers: {
|
|
2056
|
-
[name: string]: unknown;
|
|
2057
|
-
};
|
|
2058
|
-
content: {
|
|
2059
|
-
'application/json': components['schemas']['ErrorResponseDto'];
|
|
2060
|
-
};
|
|
2061
|
-
};
|
|
2062
|
-
/** @description User consent required or insufficient scope */
|
|
2063
|
-
403: {
|
|
2064
|
-
headers: {
|
|
2065
|
-
[name: string]: unknown;
|
|
2066
|
-
};
|
|
2067
|
-
content: {
|
|
2068
|
-
'application/json': components['schemas']['ConsentRequiredErrorDto'];
|
|
2069
|
-
};
|
|
2070
|
-
};
|
|
2071
|
-
/** @description Transfer not found */
|
|
2072
|
-
404: {
|
|
2073
|
-
headers: {
|
|
2074
|
-
[name: string]: unknown;
|
|
2075
|
-
};
|
|
2076
|
-
content: {
|
|
2077
|
-
'application/json': components['schemas']['ErrorResponseDto'];
|
|
2078
|
-
};
|
|
2079
|
-
};
|
|
2080
|
-
};
|
|
2081
|
-
};
|
|
2082
2005
|
revokeConsent: {
|
|
2083
2006
|
parameters: {
|
|
2084
2007
|
query?: never;
|
|
@@ -2355,9 +2278,21 @@ interface operations {
|
|
|
2355
2278
|
* ```typescript
|
|
2356
2279
|
* const user: User = await edge.getUser(accessToken)
|
|
2357
2280
|
* console.log(`Welcome, ${user.firstName}!`)
|
|
2281
|
+
* console.log(`Verified: ${user.verified}`)
|
|
2282
|
+
* console.log(`State: ${user.address?.state}`)
|
|
2358
2283
|
* ```
|
|
2359
2284
|
*/
|
|
2360
|
-
|
|
2285
|
+
interface User {
|
|
2286
|
+
id: string;
|
|
2287
|
+
email: string;
|
|
2288
|
+
firstName: string;
|
|
2289
|
+
lastName: string;
|
|
2290
|
+
phone?: string | null;
|
|
2291
|
+
dateOfBirth?: string | null;
|
|
2292
|
+
verified?: boolean;
|
|
2293
|
+
address?: UserAddress | null;
|
|
2294
|
+
createdAt: string;
|
|
2295
|
+
}
|
|
2361
2296
|
/**
|
|
2362
2297
|
* User's EdgeBoost account balance.
|
|
2363
2298
|
*
|
|
@@ -2401,10 +2336,6 @@ type TransferListItem = components['schemas']['TransferListItemDto'];
|
|
|
2401
2336
|
* Paginated list of transfers.
|
|
2402
2337
|
*/
|
|
2403
2338
|
type TransferList = components['schemas']['ListTransfersResponseDto'];
|
|
2404
|
-
/**
|
|
2405
|
-
* Request payload for verifying a transfer with OTP.
|
|
2406
|
-
*/
|
|
2407
|
-
type VerifyTransferRequest = components['schemas']['VerifyTransferRequestDto'];
|
|
2408
2339
|
/**
|
|
2409
2340
|
* Response from revoking user consent.
|
|
2410
2341
|
*/
|
|
@@ -2432,7 +2363,16 @@ type TransferType = 'debit' | 'credit';
|
|
|
2432
2363
|
* - `failed`: Transfer failed (insufficient funds, invalid OTP, etc.)
|
|
2433
2364
|
* - `expired`: OTP verification window expired
|
|
2434
2365
|
*/
|
|
2435
|
-
type TransferStatus = 'pending_verification' | 'completed' | 'failed' | 'expired';
|
|
2366
|
+
type TransferStatus = 'pending_verification' | 'processing' | 'completed' | 'failed' | 'expired';
|
|
2367
|
+
/**
|
|
2368
|
+
* Transaction category for settlement window determination.
|
|
2369
|
+
*
|
|
2370
|
+
* - `sportsbook` / `dfs`: T+1 settlement
|
|
2371
|
+
* - `casino` / `sweepstakes`: T+0 settlement
|
|
2372
|
+
*
|
|
2373
|
+
* When omitted, the partner's default settlement window is used.
|
|
2374
|
+
*/
|
|
2375
|
+
type TransferCategory = 'sportsbook' | 'casino' | 'dfs' | 'sweepstakes';
|
|
2436
2376
|
/**
|
|
2437
2377
|
* OTP delivery method for transfer verification.
|
|
2438
2378
|
*
|
|
@@ -2506,6 +2446,47 @@ interface VerifyIdentityResult {
|
|
|
2506
2446
|
verified: true;
|
|
2507
2447
|
scores: VerifyIdentityScores;
|
|
2508
2448
|
}
|
|
2449
|
+
/**
|
|
2450
|
+
* Geolocation data collected by the SDK from the browser or device.
|
|
2451
|
+
*
|
|
2452
|
+
* Passed to the server during transfer verification for cross-referencing
|
|
2453
|
+
* against IP-based geolocation. Collection is always optional — the SDK
|
|
2454
|
+
* returns `null` if the user denies permission or the API is unavailable.
|
|
2455
|
+
*
|
|
2456
|
+
* @example
|
|
2457
|
+
* ```typescript
|
|
2458
|
+
* import { collectGeolocation } from '@edge-markets/connect-link'
|
|
2459
|
+
*
|
|
2460
|
+
* const geo = await collectGeolocation()
|
|
2461
|
+
* // geo: { latitude: 30.267, longitude: -97.743, accuracy: 25, timestamp: '2026-...' }
|
|
2462
|
+
* ```
|
|
2463
|
+
*/
|
|
2464
|
+
interface SdkGeolocation {
|
|
2465
|
+
/** Latitude in decimal degrees */
|
|
2466
|
+
latitude: number;
|
|
2467
|
+
/** Longitude in decimal degrees */
|
|
2468
|
+
longitude: number;
|
|
2469
|
+
/** Accuracy of the position in meters */
|
|
2470
|
+
accuracy?: number;
|
|
2471
|
+
/** ISO 8601 timestamp of when the position was captured */
|
|
2472
|
+
timestamp: string;
|
|
2473
|
+
}
|
|
2474
|
+
/**
|
|
2475
|
+
* User's address on file with EdgeBoost.
|
|
2476
|
+
* All fields are nullable — only populated fields are returned.
|
|
2477
|
+
*/
|
|
2478
|
+
interface UserAddress {
|
|
2479
|
+
/** Street address line 1 */
|
|
2480
|
+
address1?: string | null;
|
|
2481
|
+
/** Street address line 2 (apartment, suite, etc.) */
|
|
2482
|
+
address2?: string | null;
|
|
2483
|
+
/** City */
|
|
2484
|
+
city?: string | null;
|
|
2485
|
+
/** US state code (e.g. "TX") */
|
|
2486
|
+
state?: string | null;
|
|
2487
|
+
/** ZIP / postal code */
|
|
2488
|
+
zip?: string | null;
|
|
2489
|
+
}
|
|
2509
2490
|
/**
|
|
2510
2491
|
* Request payload for creating a hosted verification session.
|
|
2511
2492
|
*/
|
|
@@ -2545,11 +2526,15 @@ declare const TRANSFER_TYPES: readonly ["debit", "credit"];
|
|
|
2545
2526
|
* All possible transfer statuses.
|
|
2546
2527
|
* Use for filtering or status display.
|
|
2547
2528
|
*/
|
|
2548
|
-
declare const TRANSFER_STATUSES: readonly ["pending_verification", "completed", "failed", "expired"];
|
|
2529
|
+
declare const TRANSFER_STATUSES: readonly ["pending_verification", "processing", "completed", "failed", "expired"];
|
|
2549
2530
|
/**
|
|
2550
2531
|
* All possible OTP methods.
|
|
2551
2532
|
*/
|
|
2552
2533
|
declare const OTP_METHODS: readonly ["sms", "totp", "email"];
|
|
2534
|
+
/**
|
|
2535
|
+
* All possible transfer categories.
|
|
2536
|
+
*/
|
|
2537
|
+
declare const TRANSFER_CATEGORIES: readonly ["sportsbook", "casino", "dfs", "sweepstakes"];
|
|
2553
2538
|
|
|
2554
2539
|
/**
|
|
2555
2540
|
* EDGE Connect SDK Types
|
|
@@ -3054,4 +3039,4 @@ declare const SDK_VERSION = "1.0.0";
|
|
|
3054
3039
|
*/
|
|
3055
3040
|
declare const SDK_NAME = "@edge-markets/connect";
|
|
3056
3041
|
|
|
3057
|
-
export { ALL_EDGE_SCOPES, type ApiError, type Balance, type ConsentRequiredError, type CreateVerificationSessionRequest, EDGE_ENVIRONMENTS, EDGE_SCOPES, EdgeApiError, EdgeAuthenticationError, EdgeConsentRequiredError, type EdgeEnvironment, type EdgeEnvironmentConfig, EdgeError, EdgeIdentityVerificationError, EdgeInsufficientScopeError, type EdgeLinkConfigBase, type EdgeLinkEvent, type EdgeLinkEventName, type EdgeLinkExit, type EdgeLinkSuccess, EdgeNetworkError, EdgeNotFoundError, EdgePopupBlockedError, EdgePopupClosedError, type EdgeScope, EdgeStateMismatchError, EdgeTokenExchangeError, type EdgeTokens, EdgeValidationError, type InitiateTransferRequest, type ListTransfersParams, OTP_METHODS, type OtpMethod, type PKCEPair, type RevokeConsentResponse, SCOPE_DESCRIPTIONS, SCOPE_ICONS, SDK_NAME, SDK_VERSION, TRANSFER_STATUSES, TRANSFER_TYPES, type Transfer, type TransferList, type TransferListItem, type TransferStatus, type TransferType, type User, type VerificationSession, type VerificationSessionStatus, type VerificationSessionStatusResponse, type VerifyIdentityAddress, type VerifyIdentityOptions, type VerifyIdentityResult, type VerifyIdentityScores, type
|
|
3042
|
+
export { ALL_EDGE_SCOPES, type ApiError, type Balance, type ConsentRequiredError, type CreateVerificationSessionRequest, EDGE_ENVIRONMENTS, EDGE_SCOPES, EdgeApiError, EdgeAuthenticationError, EdgeConsentRequiredError, type EdgeEnvironment, type EdgeEnvironmentConfig, EdgeError, EdgeIdentityVerificationError, EdgeInsufficientScopeError, type EdgeLinkConfigBase, type EdgeLinkEvent, type EdgeLinkEventName, type EdgeLinkExit, type EdgeLinkSuccess, EdgeNetworkError, EdgeNotFoundError, EdgePopupBlockedError, EdgePopupClosedError, type EdgeScope, EdgeStateMismatchError, EdgeTokenExchangeError, type EdgeTokens, EdgeValidationError, type InitiateTransferRequest, type ListTransfersParams, OTP_METHODS, type OtpMethod, type PKCEPair, type RevokeConsentResponse, SCOPE_DESCRIPTIONS, SCOPE_ICONS, SDK_NAME, SDK_VERSION, type SdkGeolocation, TRANSFER_CATEGORIES, TRANSFER_STATUSES, TRANSFER_TYPES, type Transfer, type TransferCategory, type TransferList, type TransferListItem, type TransferStatus, type TransferType, type User, type UserAddress, type VerificationSession, type VerificationSessionStatus, type VerificationSessionStatusResponse, type VerifyIdentityAddress, type VerifyIdentityOptions, type VerifyIdentityResult, type VerifyIdentityScores, type components, formatScopeForEnvironment, formatScopesForEnvironment, getAvailableEnvironments, getEnvironmentConfig, isApiError, isAuthenticationError, isConsentRequiredError, isEdgeError, isIdentityVerificationError, isNetworkError, isProductionEnvironment, isValidScope, type operations, parseScope, type paths };
|
package/dist/index.js
CHANGED
|
@@ -41,6 +41,7 @@ __export(index_exports, {
|
|
|
41
41
|
SCOPE_ICONS: () => SCOPE_ICONS,
|
|
42
42
|
SDK_NAME: () => SDK_NAME,
|
|
43
43
|
SDK_VERSION: () => SDK_VERSION,
|
|
44
|
+
TRANSFER_CATEGORIES: () => TRANSFER_CATEGORIES,
|
|
44
45
|
TRANSFER_STATUSES: () => TRANSFER_STATUSES,
|
|
45
46
|
TRANSFER_TYPES: () => TRANSFER_TYPES,
|
|
46
47
|
formatScopeForEnvironment: () => formatScopeForEnvironment,
|
|
@@ -63,11 +64,18 @@ module.exports = __toCommonJS(index_exports);
|
|
|
63
64
|
var TRANSFER_TYPES = ["debit", "credit"];
|
|
64
65
|
var TRANSFER_STATUSES = [
|
|
65
66
|
"pending_verification",
|
|
67
|
+
"processing",
|
|
66
68
|
"completed",
|
|
67
69
|
"failed",
|
|
68
70
|
"expired"
|
|
69
71
|
];
|
|
70
72
|
var OTP_METHODS = ["sms", "totp", "email"];
|
|
73
|
+
var TRANSFER_CATEGORIES = [
|
|
74
|
+
"sportsbook",
|
|
75
|
+
"casino",
|
|
76
|
+
"dfs",
|
|
77
|
+
"sweepstakes"
|
|
78
|
+
];
|
|
71
79
|
|
|
72
80
|
// src/config/environments.ts
|
|
73
81
|
var EDGE_ENVIRONMENTS = {
|
|
@@ -81,9 +89,17 @@ var EDGE_ENVIRONMENTS = {
|
|
|
81
89
|
},
|
|
82
90
|
staging: {
|
|
83
91
|
cognitoDomain: "https://edge-connect-staging.auth.us-east-1.amazoncognito.com",
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
92
|
+
// Staging partner API — mTLS-enforced. Requires a partner client
|
|
93
|
+
// certificate on every request. Routed through API Gateway → VPC Link →
|
|
94
|
+
// internal ALB → ECS. Direct routes to the backend (e.g.
|
|
95
|
+
// backend.connect-staging.edgeboost.io) no longer exist.
|
|
96
|
+
apiBaseUrl: "https://connect-staging.edgeboost.io/connect/v1",
|
|
97
|
+
// OAuth token exchange — partner-facing, also mTLS-enforced.
|
|
98
|
+
oauthBaseUrl: "https://connect-staging.edgeboost.io/connect/oauth",
|
|
99
|
+
// User-facing captive frame for the Link SDK enrollment and transfer
|
|
100
|
+
// verification flows. Served from the edge-connect-oauth Vite app
|
|
101
|
+
// deployed on Amplify. No mTLS — browser traffic.
|
|
102
|
+
userClientUrl: "https://oauth.staging-app.edgeboost.bet",
|
|
87
103
|
displayName: "Staging",
|
|
88
104
|
isProduction: false
|
|
89
105
|
},
|
|
@@ -137,8 +153,8 @@ var EDGE_SCOPES = {
|
|
|
137
153
|
*/
|
|
138
154
|
BALANCE_READ: "balance.read",
|
|
139
155
|
/**
|
|
140
|
-
* Initiate and
|
|
141
|
-
* Required for: `POST /v1/transfer`, `POST /v1/transfer/:id/
|
|
156
|
+
* Initiate fund transfers and create EDGE-hosted verification sessions.
|
|
157
|
+
* Required for: `POST /v1/transfer`, `POST /v1/transfer/:id/verification-session`, `GET /v1/transfers`
|
|
142
158
|
*/
|
|
143
159
|
TRANSFER_WRITE: "transfer.write"
|
|
144
160
|
};
|
|
@@ -335,6 +351,7 @@ var SDK_NAME = "@edge-markets/connect";
|
|
|
335
351
|
SCOPE_ICONS,
|
|
336
352
|
SDK_NAME,
|
|
337
353
|
SDK_VERSION,
|
|
354
|
+
TRANSFER_CATEGORIES,
|
|
338
355
|
TRANSFER_STATUSES,
|
|
339
356
|
TRANSFER_TYPES,
|
|
340
357
|
formatScopeForEnvironment,
|
package/dist/index.mjs
CHANGED
|
@@ -2,11 +2,18 @@
|
|
|
2
2
|
var TRANSFER_TYPES = ["debit", "credit"];
|
|
3
3
|
var TRANSFER_STATUSES = [
|
|
4
4
|
"pending_verification",
|
|
5
|
+
"processing",
|
|
5
6
|
"completed",
|
|
6
7
|
"failed",
|
|
7
8
|
"expired"
|
|
8
9
|
];
|
|
9
10
|
var OTP_METHODS = ["sms", "totp", "email"];
|
|
11
|
+
var TRANSFER_CATEGORIES = [
|
|
12
|
+
"sportsbook",
|
|
13
|
+
"casino",
|
|
14
|
+
"dfs",
|
|
15
|
+
"sweepstakes"
|
|
16
|
+
];
|
|
10
17
|
|
|
11
18
|
// src/config/environments.ts
|
|
12
19
|
var EDGE_ENVIRONMENTS = {
|
|
@@ -20,9 +27,17 @@ var EDGE_ENVIRONMENTS = {
|
|
|
20
27
|
},
|
|
21
28
|
staging: {
|
|
22
29
|
cognitoDomain: "https://edge-connect-staging.auth.us-east-1.amazoncognito.com",
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
30
|
+
// Staging partner API — mTLS-enforced. Requires a partner client
|
|
31
|
+
// certificate on every request. Routed through API Gateway → VPC Link →
|
|
32
|
+
// internal ALB → ECS. Direct routes to the backend (e.g.
|
|
33
|
+
// backend.connect-staging.edgeboost.io) no longer exist.
|
|
34
|
+
apiBaseUrl: "https://connect-staging.edgeboost.io/connect/v1",
|
|
35
|
+
// OAuth token exchange — partner-facing, also mTLS-enforced.
|
|
36
|
+
oauthBaseUrl: "https://connect-staging.edgeboost.io/connect/oauth",
|
|
37
|
+
// User-facing captive frame for the Link SDK enrollment and transfer
|
|
38
|
+
// verification flows. Served from the edge-connect-oauth Vite app
|
|
39
|
+
// deployed on Amplify. No mTLS — browser traffic.
|
|
40
|
+
userClientUrl: "https://oauth.staging-app.edgeboost.bet",
|
|
26
41
|
displayName: "Staging",
|
|
27
42
|
isProduction: false
|
|
28
43
|
},
|
|
@@ -76,8 +91,8 @@ var EDGE_SCOPES = {
|
|
|
76
91
|
*/
|
|
77
92
|
BALANCE_READ: "balance.read",
|
|
78
93
|
/**
|
|
79
|
-
* Initiate and
|
|
80
|
-
* Required for: `POST /v1/transfer`, `POST /v1/transfer/:id/
|
|
94
|
+
* Initiate fund transfers and create EDGE-hosted verification sessions.
|
|
95
|
+
* Required for: `POST /v1/transfer`, `POST /v1/transfer/:id/verification-session`, `GET /v1/transfers`
|
|
81
96
|
*/
|
|
82
97
|
TRANSFER_WRITE: "transfer.write"
|
|
83
98
|
};
|
|
@@ -273,6 +288,7 @@ export {
|
|
|
273
288
|
SCOPE_ICONS,
|
|
274
289
|
SDK_NAME,
|
|
275
290
|
SDK_VERSION,
|
|
291
|
+
TRANSFER_CATEGORIES,
|
|
276
292
|
TRANSFER_STATUSES,
|
|
277
293
|
TRANSFER_TYPES,
|
|
278
294
|
formatScopeForEnvironment,
|