@mikashboks/react-native-agent-sdk 0.1.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/dist/cjs/agent-sdk.d.ts +114 -0
- package/dist/cjs/agent-sdk.d.ts.map +1 -0
- package/dist/cjs/agent-sdk.js +384 -0
- package/dist/cjs/agent-sdk.js.map +1 -0
- package/dist/cjs/constants.d.ts +2 -0
- package/dist/cjs/constants.d.ts.map +1 -0
- package/dist/cjs/constants.js +7 -0
- package/dist/cjs/constants.js.map +1 -0
- package/dist/cjs/errors.d.ts +21 -0
- package/dist/cjs/errors.d.ts.map +1 -0
- package/dist/cjs/errors.js +50 -0
- package/dist/cjs/errors.js.map +1 -0
- package/dist/cjs/http-client.d.ts +47 -0
- package/dist/cjs/http-client.d.ts.map +1 -0
- package/dist/cjs/http-client.js +264 -0
- package/dist/cjs/http-client.js.map +1 -0
- package/dist/cjs/index.d.ts +7 -0
- package/dist/cjs/index.d.ts.map +1 -0
- package/dist/cjs/index.js +25 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/package.json +3 -0
- package/dist/cjs/types.d.ts +256 -0
- package/dist/cjs/types.d.ts.map +1 -0
- package/dist/cjs/types.js +3 -0
- package/dist/cjs/types.js.map +1 -0
- package/dist/cjs/utils/phone.d.ts +2 -0
- package/dist/cjs/utils/phone.d.ts.map +1 -0
- package/dist/cjs/utils/phone.js +72 -0
- package/dist/cjs/utils/phone.js.map +1 -0
- package/dist/esm/agent-sdk.d.ts +114 -0
- package/dist/esm/agent-sdk.d.ts.map +1 -0
- package/dist/esm/agent-sdk.js +380 -0
- package/dist/esm/agent-sdk.js.map +1 -0
- package/dist/esm/constants.d.ts +2 -0
- package/dist/esm/constants.d.ts.map +1 -0
- package/dist/esm/constants.js +2 -0
- package/dist/esm/constants.js.map +1 -0
- package/dist/esm/errors.d.ts +21 -0
- package/dist/esm/errors.d.ts.map +1 -0
- package/dist/esm/errors.js +41 -0
- package/dist/esm/errors.js.map +1 -0
- package/dist/esm/http-client.d.ts +47 -0
- package/dist/esm/http-client.d.ts.map +1 -0
- package/dist/esm/http-client.js +260 -0
- package/dist/esm/http-client.js.map +1 -0
- package/dist/esm/index.d.ts +7 -0
- package/dist/esm/index.d.ts.map +1 -0
- package/dist/esm/index.js +5 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/types.d.ts +256 -0
- package/dist/esm/types.d.ts.map +1 -0
- package/dist/esm/types.js +2 -0
- package/dist/esm/types.js.map +1 -0
- package/dist/esm/utils/phone.d.ts +2 -0
- package/dist/esm/utils/phone.d.ts.map +1 -0
- package/dist/esm/utils/phone.js +68 -0
- package/dist/esm/utils/phone.js.map +1 -0
- package/package.json +55 -0
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
export interface HttpClientConfig {
|
|
2
|
+
baseUrl: string;
|
|
3
|
+
projectId: string;
|
|
4
|
+
fetchFn: typeof globalThis.fetch;
|
|
5
|
+
timeoutMs: number;
|
|
6
|
+
getAccessToken: () => string | null;
|
|
7
|
+
refreshAuth?: () => Promise<boolean>;
|
|
8
|
+
onAuthFailure?: () => void;
|
|
9
|
+
}
|
|
10
|
+
interface RequestOptions {
|
|
11
|
+
token?: string;
|
|
12
|
+
headers?: Record<string, string>;
|
|
13
|
+
projectId?: string | null;
|
|
14
|
+
suppressAuthFailure?: boolean;
|
|
15
|
+
timeoutMs?: number;
|
|
16
|
+
onUploadProgress?: (progress: {
|
|
17
|
+
loaded: number;
|
|
18
|
+
total: number | null;
|
|
19
|
+
}) => void;
|
|
20
|
+
}
|
|
21
|
+
export declare class HttpClient {
|
|
22
|
+
private readonly config;
|
|
23
|
+
constructor(config: HttpClientConfig);
|
|
24
|
+
get<T>(path: string, options?: RequestOptions): Promise<T>;
|
|
25
|
+
post<T>(path: string, body?: unknown, options?: RequestOptions): Promise<T>;
|
|
26
|
+
patch<T>(path: string, body?: unknown, options?: RequestOptions): Promise<T>;
|
|
27
|
+
put<T>(path: string, body?: unknown, options?: RequestOptions): Promise<T>;
|
|
28
|
+
postFormData<T>(path: string, formData: FormData, options?: RequestOptions, hasRetriedAuth?: boolean): Promise<T>;
|
|
29
|
+
private postFormDataWithXhr;
|
|
30
|
+
private request;
|
|
31
|
+
private buildUrl;
|
|
32
|
+
private buildProjectHeaders;
|
|
33
|
+
private fetchWithTimeout;
|
|
34
|
+
private handleResponse;
|
|
35
|
+
private shouldAttemptRefresh;
|
|
36
|
+
private shouldNotifyAuthFailure;
|
|
37
|
+
private getRequestAuthMode;
|
|
38
|
+
/**
|
|
39
|
+
* True only when the refresh endpoint itself rejected the request (4xx),
|
|
40
|
+
* meaning the refresh token is invalid/expired. NetworkError (no statusCode)
|
|
41
|
+
* and 5xx responses are transient and must not end the session.
|
|
42
|
+
*/
|
|
43
|
+
private isRefreshRejectedByServer;
|
|
44
|
+
private retryOriginalRequest;
|
|
45
|
+
}
|
|
46
|
+
export {};
|
|
47
|
+
//# sourceMappingURL=http-client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"http-client.d.ts","sourceRoot":"","sources":["../../src/http-client.ts"],"names":[],"mappings":"AASA,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,OAAO,UAAU,CAAC,KAAK,CAAC;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,MAAM,GAAG,IAAI,CAAC;IACpC,WAAW,CAAC,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;IACrC,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;CAC5B;AAED,UAAU,cAAc;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gBAAgB,CAAC,EAAE,CAAC,QAAQ,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,KAAK,IAAI,CAAC;CACjF;AAqBD,qBAAa,UAAU;IACT,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAAN,MAAM,EAAE,gBAAgB;IAE/C,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,CAAC,CAAC;IAI1D,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,CAAC,CAAC;IAI3E,KAAK,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,CAAC,CAAC;IAI5E,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,CAAC,CAAC;IAI1E,YAAY,CAAC,CAAC,EAClB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,QAAQ,EAClB,OAAO,CAAC,EAAE,cAAc,EACxB,cAAc,UAAQ,GACrB,OAAO,CAAC,CAAC,CAAC;IAsDb,OAAO,CAAC,mBAAmB;YA4Cb,OAAO;IA6CrB,OAAO,CAAC,QAAQ;IAOhB,OAAO,CAAC,mBAAmB;YAMb,gBAAgB;YA0BhB,cAAc;IA6E5B,OAAO,CAAC,oBAAoB;IAY5B,OAAO,CAAC,uBAAuB;IAO/B,OAAO,CAAC,kBAAkB;IAgB1B;;;;OAIG;IACH,OAAO,CAAC,yBAAyB;YAiBnB,oBAAoB;CAkBnC"}
|
|
@@ -0,0 +1,264 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.HttpClient = void 0;
|
|
4
|
+
const errors_js_1 = require("./errors.js");
|
|
5
|
+
const AUTH_REFRESH_EXCLUDED_PATHS = new Set([
|
|
6
|
+
'/external/agents/login-challenge',
|
|
7
|
+
'/external/agents/login',
|
|
8
|
+
'/external/agents/refresh',
|
|
9
|
+
'/external/agents/logout',
|
|
10
|
+
]);
|
|
11
|
+
class HttpClient {
|
|
12
|
+
config;
|
|
13
|
+
constructor(config) {
|
|
14
|
+
this.config = config;
|
|
15
|
+
}
|
|
16
|
+
async get(path, options) {
|
|
17
|
+
return this.request('GET', path, undefined, options);
|
|
18
|
+
}
|
|
19
|
+
async post(path, body, options) {
|
|
20
|
+
return this.request('POST', path, body, options);
|
|
21
|
+
}
|
|
22
|
+
async patch(path, body, options) {
|
|
23
|
+
return this.request('PATCH', path, body, options);
|
|
24
|
+
}
|
|
25
|
+
async put(path, body, options) {
|
|
26
|
+
return this.request('PUT', path, body, options);
|
|
27
|
+
}
|
|
28
|
+
async postFormData(path, formData, options, hasRetriedAuth = false) {
|
|
29
|
+
const url = this.buildUrl(path);
|
|
30
|
+
const headers = this.buildProjectHeaders(options);
|
|
31
|
+
const token = options?.token ?? this.config.getAccessToken();
|
|
32
|
+
if (token) {
|
|
33
|
+
headers['Authorization'] = `Bearer ${token}`;
|
|
34
|
+
}
|
|
35
|
+
if (options?.onUploadProgress && typeof XMLHttpRequest !== 'undefined') {
|
|
36
|
+
const response = await this.postFormDataWithXhr(url, formData, headers, options);
|
|
37
|
+
return this.handleResponse(response, {
|
|
38
|
+
method: 'POST',
|
|
39
|
+
path,
|
|
40
|
+
body: formData,
|
|
41
|
+
options,
|
|
42
|
+
hasRetriedAuth,
|
|
43
|
+
isFormData: true,
|
|
44
|
+
url,
|
|
45
|
+
}, options?.suppressAuthFailure);
|
|
46
|
+
}
|
|
47
|
+
// Do NOT set Content-Type for FormData — browser/RN sets it with boundary
|
|
48
|
+
const response = await this.fetchWithTimeout(url, {
|
|
49
|
+
method: 'POST',
|
|
50
|
+
headers,
|
|
51
|
+
body: formData,
|
|
52
|
+
}, options?.timeoutMs);
|
|
53
|
+
return this.handleResponse(response, {
|
|
54
|
+
method: 'POST',
|
|
55
|
+
path,
|
|
56
|
+
body: formData,
|
|
57
|
+
options,
|
|
58
|
+
hasRetriedAuth,
|
|
59
|
+
isFormData: true,
|
|
60
|
+
url,
|
|
61
|
+
}, options?.suppressAuthFailure);
|
|
62
|
+
}
|
|
63
|
+
postFormDataWithXhr(url, formData, headers, options) {
|
|
64
|
+
return new Promise((resolve, reject) => {
|
|
65
|
+
const xhr = new XMLHttpRequest();
|
|
66
|
+
const timeoutMs = options?.timeoutMs ?? this.config.timeoutMs;
|
|
67
|
+
xhr.open('POST', url, true);
|
|
68
|
+
xhr.responseType = 'text';
|
|
69
|
+
xhr.timeout = timeoutMs;
|
|
70
|
+
for (const [key, value] of Object.entries(headers)) {
|
|
71
|
+
xhr.setRequestHeader(key, value);
|
|
72
|
+
}
|
|
73
|
+
xhr.upload.onprogress = event => {
|
|
74
|
+
options?.onUploadProgress?.({
|
|
75
|
+
loaded: event.loaded,
|
|
76
|
+
total: event.lengthComputable ? event.total : null,
|
|
77
|
+
});
|
|
78
|
+
};
|
|
79
|
+
xhr.onload = () => {
|
|
80
|
+
resolve({
|
|
81
|
+
ok: xhr.status >= 200 && xhr.status < 300,
|
|
82
|
+
status: xhr.status,
|
|
83
|
+
text: async () => xhr.responseText,
|
|
84
|
+
});
|
|
85
|
+
};
|
|
86
|
+
xhr.onerror = () => {
|
|
87
|
+
reject(new errors_js_1.NetworkError('Network request failed'));
|
|
88
|
+
};
|
|
89
|
+
xhr.ontimeout = () => {
|
|
90
|
+
reject(new errors_js_1.NetworkError(`Request timed out after ${timeoutMs}ms`));
|
|
91
|
+
};
|
|
92
|
+
xhr.onabort = () => {
|
|
93
|
+
reject(new errors_js_1.NetworkError('Request aborted'));
|
|
94
|
+
};
|
|
95
|
+
xhr.send(formData);
|
|
96
|
+
});
|
|
97
|
+
}
|
|
98
|
+
async request(method, path, body, options, hasRetriedAuth = false) {
|
|
99
|
+
const url = this.buildUrl(path);
|
|
100
|
+
const headers = {
|
|
101
|
+
'Content-Type': 'application/json',
|
|
102
|
+
...this.buildProjectHeaders(options),
|
|
103
|
+
...(options?.headers ?? {}),
|
|
104
|
+
};
|
|
105
|
+
const token = options?.token ?? this.config.getAccessToken();
|
|
106
|
+
if (token) {
|
|
107
|
+
headers['Authorization'] = `Bearer ${token}`;
|
|
108
|
+
}
|
|
109
|
+
const response = await this.fetchWithTimeout(url, {
|
|
110
|
+
method,
|
|
111
|
+
headers,
|
|
112
|
+
body: body !== undefined ? JSON.stringify(body) : undefined,
|
|
113
|
+
}, options?.timeoutMs);
|
|
114
|
+
return this.handleResponse(response, {
|
|
115
|
+
method,
|
|
116
|
+
path,
|
|
117
|
+
body,
|
|
118
|
+
options,
|
|
119
|
+
hasRetriedAuth,
|
|
120
|
+
isFormData: false,
|
|
121
|
+
url,
|
|
122
|
+
}, options?.suppressAuthFailure);
|
|
123
|
+
}
|
|
124
|
+
buildUrl(path) {
|
|
125
|
+
const trimmedBaseUrl = this.config.baseUrl.replace(/\/+$/, '');
|
|
126
|
+
const normalizedPath = path.startsWith('/') ? path : `/${path}`;
|
|
127
|
+
return `${trimmedBaseUrl}${normalizedPath}`;
|
|
128
|
+
}
|
|
129
|
+
buildProjectHeaders(options) {
|
|
130
|
+
const projectId = options?.projectId === undefined ? this.config.projectId : options.projectId;
|
|
131
|
+
return projectId ? { 'x-project-id': projectId } : {};
|
|
132
|
+
}
|
|
133
|
+
async fetchWithTimeout(url, init, timeoutMs = this.config.timeoutMs) {
|
|
134
|
+
const controller = new AbortController();
|
|
135
|
+
const timeoutId = setTimeout(() => controller.abort(), timeoutMs);
|
|
136
|
+
try {
|
|
137
|
+
const response = await this.config.fetchFn(url, {
|
|
138
|
+
...init,
|
|
139
|
+
signal: controller.signal,
|
|
140
|
+
});
|
|
141
|
+
return response;
|
|
142
|
+
}
|
|
143
|
+
catch (error) {
|
|
144
|
+
if (error instanceof Error && error.name === 'AbortError') {
|
|
145
|
+
throw new errors_js_1.NetworkError(`Request timed out after ${timeoutMs}ms`);
|
|
146
|
+
}
|
|
147
|
+
throw new errors_js_1.NetworkError(error instanceof Error ? error.message : 'Network request failed');
|
|
148
|
+
}
|
|
149
|
+
finally {
|
|
150
|
+
clearTimeout(timeoutId);
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
async handleResponse(response, requestContext, suppressAuthFailure = false) {
|
|
154
|
+
let responseBody;
|
|
155
|
+
let rawText = '';
|
|
156
|
+
try {
|
|
157
|
+
rawText = await response.text();
|
|
158
|
+
responseBody = rawText ? JSON.parse(rawText) : undefined;
|
|
159
|
+
}
|
|
160
|
+
catch {
|
|
161
|
+
if (response.ok) {
|
|
162
|
+
console.warn('[AgentSDK] Failed to parse JSON response body', {
|
|
163
|
+
status: response.status,
|
|
164
|
+
url: requestContext.url,
|
|
165
|
+
});
|
|
166
|
+
responseBody = undefined;
|
|
167
|
+
}
|
|
168
|
+
else {
|
|
169
|
+
responseBody = rawText || undefined;
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
if (response.ok) {
|
|
173
|
+
return responseBody;
|
|
174
|
+
}
|
|
175
|
+
const message = typeof responseBody === 'string' && responseBody.trim().length > 0
|
|
176
|
+
? responseBody
|
|
177
|
+
: typeof responseBody === 'object' && responseBody !== null && 'message' in responseBody
|
|
178
|
+
? String(responseBody.message)
|
|
179
|
+
: `HTTP ${response.status}`;
|
|
180
|
+
switch (response.status) {
|
|
181
|
+
case 401:
|
|
182
|
+
if (this.shouldAttemptRefresh(requestContext, suppressAuthFailure)) {
|
|
183
|
+
let refreshed;
|
|
184
|
+
try {
|
|
185
|
+
refreshed = await this.config.refreshAuth?.();
|
|
186
|
+
}
|
|
187
|
+
catch (error) {
|
|
188
|
+
// Only a server-side rejection of the refresh request is a terminal
|
|
189
|
+
// auth failure. Network failures (timeouts, offline) and 5xx refresh
|
|
190
|
+
// responses are retryable: rethrow them WITHOUT onAuthFailure so the
|
|
191
|
+
// caller does not wipe a still-valid session.
|
|
192
|
+
if (this.isRefreshRejectedByServer(error)) {
|
|
193
|
+
this.config.onAuthFailure?.();
|
|
194
|
+
}
|
|
195
|
+
throw error;
|
|
196
|
+
}
|
|
197
|
+
if (refreshed) {
|
|
198
|
+
// The refresh succeeded, so the session is valid. Errors from the
|
|
199
|
+
// retried request (including network failures) propagate untouched;
|
|
200
|
+
// a repeat 401 is handled by the nested handleResponse call.
|
|
201
|
+
return this.retryOriginalRequest(requestContext);
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
if (this.shouldNotifyAuthFailure(requestContext, suppressAuthFailure)) {
|
|
205
|
+
this.config.onAuthFailure?.();
|
|
206
|
+
}
|
|
207
|
+
throw new errors_js_1.AuthenticationError(message, responseBody);
|
|
208
|
+
case 403:
|
|
209
|
+
throw new errors_js_1.ForbiddenError(message, responseBody);
|
|
210
|
+
case 404:
|
|
211
|
+
throw new errors_js_1.NotFoundError(message, responseBody);
|
|
212
|
+
case 409:
|
|
213
|
+
throw new errors_js_1.ConflictError(message, responseBody);
|
|
214
|
+
default:
|
|
215
|
+
throw new errors_js_1.AgentSDKError(message, response.status, responseBody);
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
shouldAttemptRefresh(requestContext, suppressAuthFailure) {
|
|
219
|
+
return (!suppressAuthFailure &&
|
|
220
|
+
!requestContext.hasRetriedAuth &&
|
|
221
|
+
this.getRequestAuthMode(requestContext) === 'agent' &&
|
|
222
|
+
Boolean(this.config.refreshAuth));
|
|
223
|
+
}
|
|
224
|
+
shouldNotifyAuthFailure(requestContext, suppressAuthFailure) {
|
|
225
|
+
return !suppressAuthFailure && this.getRequestAuthMode(requestContext) === 'agent';
|
|
226
|
+
}
|
|
227
|
+
getRequestAuthMode(requestContext) {
|
|
228
|
+
if (AUTH_REFRESH_EXCLUDED_PATHS.has(requestContext.path)) {
|
|
229
|
+
return 'none';
|
|
230
|
+
}
|
|
231
|
+
if (typeof requestContext.options?.token === 'string') {
|
|
232
|
+
return 'explicit';
|
|
233
|
+
}
|
|
234
|
+
if (requestContext.path.startsWith('/external/agents/')) {
|
|
235
|
+
return 'agent';
|
|
236
|
+
}
|
|
237
|
+
return 'none';
|
|
238
|
+
}
|
|
239
|
+
/**
|
|
240
|
+
* True only when the refresh endpoint itself rejected the request (4xx),
|
|
241
|
+
* meaning the refresh token is invalid/expired. NetworkError (no statusCode)
|
|
242
|
+
* and 5xx responses are transient and must not end the session.
|
|
243
|
+
*/
|
|
244
|
+
isRefreshRejectedByServer(error) {
|
|
245
|
+
if (error instanceof errors_js_1.NetworkError) {
|
|
246
|
+
return false;
|
|
247
|
+
}
|
|
248
|
+
if (error instanceof errors_js_1.AuthenticationError) {
|
|
249
|
+
return true;
|
|
250
|
+
}
|
|
251
|
+
return (error instanceof errors_js_1.AgentSDKError &&
|
|
252
|
+
typeof error.statusCode === 'number' &&
|
|
253
|
+
error.statusCode >= 400 &&
|
|
254
|
+
error.statusCode < 500);
|
|
255
|
+
}
|
|
256
|
+
async retryOriginalRequest(requestContext) {
|
|
257
|
+
if (requestContext.isFormData) {
|
|
258
|
+
return this.postFormData(requestContext.path, requestContext.body, requestContext.options, true);
|
|
259
|
+
}
|
|
260
|
+
return this.request(requestContext.method, requestContext.path, requestContext.body, requestContext.options, true);
|
|
261
|
+
}
|
|
262
|
+
}
|
|
263
|
+
exports.HttpClient = HttpClient;
|
|
264
|
+
//# sourceMappingURL=http-client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"http-client.js","sourceRoot":"","sources":["../../src/http-client.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export { AgentSDK } from './agent-sdk.js';
|
|
2
|
+
export type { AgentDeviceAttestationMode, AgentDeviceAttestationPayload, AgentDeviceAttestationPlatform, AgentDeviceAttestationProvider, AgentFlowConfig, AgentFlowStepDefinition, AgentLoginChallenge, AgentLoginChallengeRequest, AgentPromotionConfig, AgentPromotionCtaConfig, AgentPromotionPlacement, AgentPromotionSmsConfig, AgentScreenType, AgentWorkflowLaunchFlowConfig, AgentSDKConfig, AgentStats, AgentProfile, AgentWorkflowDefinitionSummary, ChangePasswordParams, ClientTimingPayload, CreateWorkflowParams, CreateWorkflowResult, CustomerInfo, DocumentMetadata, FlowContext, GeoLocation, ListWorkflowsParams, LoginChallengeParams, LoginChallengeResult, LoginAgentSummary, LoginParams, LoginProjectSelectionResult, LoginRequestOptions, LoginResult, LoginTenantConfig, LoginWithProjectResolutionResult, LogoutParams, PreSubmissionCheckOutcome, PreSubmissionCheckOptions, PushTokenRegistration, PreSubmissionCheckIssue, PreSubmissionCheckResult, RegisterPushTokenParams, ReissueWorkflowTokenResult, RefreshResult, ReactNativeUploadFile, RequestTimeoutOptions, SubmitFlowOptions, UploadDocumentOptions, UploadResult, UploadProgress, UploadDocumentInput, UnregisterPushTokenParams, UnregisterPushTokenResult, WorkflowDetail, WorkflowStatus, WorkflowSummaryPage, WorkflowSummary, } from './types.js';
|
|
3
|
+
export { normalizeInternationalPhoneNumber } from './utils/phone.js';
|
|
4
|
+
export type { AgentCameraFacing, AgentCaptureReasonOption, AgentCaptureReasonStepConfig, AgentCustomerField, AgentCustomerFieldDefinition, AgentCustomerFieldInputType, AgentWorkflowDetail, AgentDocumentCaptureStepConfig, AgentDocumentSelectStepConfig, AgentDocumentTypeOption, AgentWorkflowDefinitionManifest, AgentWorkflowHistoryItem, AgentWorkflowHistoryPage, AgentWorkflowLaunchResult, AgentReviewStepConfig, AgentSelfieCaptureStepConfig, AgentSubmittingStepConfig, AgentCustomerInfoStepConfig, } from '@mikashboks/agent-flow-contract';
|
|
5
|
+
export { AGENT_DEVICE_ATTESTATION_MODES, AGENT_DEVICE_ATTESTATION_PLATFORMS, AGENT_DEVICE_ATTESTATION_PROVIDERS, AGENT_SCREEN_TYPES, DEFAULT_AGENT_WORKFLOW_DEFINITION_ID, SIERRA_LEONE_AGENT_WORKFLOW_DEFINITION_ID, SIERRA_LEONE_AGENT_FLOW_CONFIG, SUPPORTED_AGENT_FLOW_CONFIG_VERSION, normalizeAgentFlowConfig, } from '@mikashboks/agent-flow-contract';
|
|
6
|
+
export { AgentSDKError, AuthenticationError, ConflictError, ForbiddenError, NetworkError, NotFoundError, } from './errors.js';
|
|
7
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,YAAY,EACV,0BAA0B,EAC1B,6BAA6B,EAC7B,8BAA8B,EAC9B,8BAA8B,EAC9B,eAAe,EACf,uBAAuB,EACvB,mBAAmB,EACnB,0BAA0B,EAC1B,oBAAoB,EACpB,uBAAuB,EACvB,uBAAuB,EACvB,uBAAuB,EACvB,eAAe,EACf,6BAA6B,EAC7B,cAAc,EACd,UAAU,EACV,YAAY,EACZ,8BAA8B,EAC9B,oBAAoB,EACpB,mBAAmB,EACnB,oBAAoB,EACpB,oBAAoB,EACpB,YAAY,EACZ,gBAAgB,EAChB,WAAW,EACX,WAAW,EACX,mBAAmB,EACnB,oBAAoB,EACpB,oBAAoB,EACpB,iBAAiB,EACjB,WAAW,EACX,2BAA2B,EAC3B,mBAAmB,EACnB,WAAW,EACX,iBAAiB,EACjB,gCAAgC,EAChC,YAAY,EACZ,yBAAyB,EACzB,yBAAyB,EACzB,qBAAqB,EACrB,uBAAuB,EACvB,wBAAwB,EACxB,uBAAuB,EACvB,0BAA0B,EAC1B,aAAa,EACb,qBAAqB,EACrB,qBAAqB,EACrB,iBAAiB,EACjB,qBAAqB,EACrB,YAAY,EACZ,cAAc,EACd,mBAAmB,EACnB,yBAAyB,EACzB,yBAAyB,EACzB,cAAc,EACd,cAAc,EACd,mBAAmB,EACnB,eAAe,GAChB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,iCAAiC,EAAE,MAAM,kBAAkB,CAAC;AACrE,YAAY,EACV,iBAAiB,EACjB,wBAAwB,EACxB,4BAA4B,EAC5B,kBAAkB,EAClB,4BAA4B,EAC5B,2BAA2B,EAC3B,mBAAmB,EACnB,8BAA8B,EAC9B,6BAA6B,EAC7B,uBAAuB,EACvB,+BAA+B,EAC/B,wBAAwB,EACxB,wBAAwB,EACxB,yBAAyB,EACzB,qBAAqB,EACrB,4BAA4B,EAC5B,yBAAyB,EACzB,2BAA2B,GAC5B,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,8BAA8B,EAC9B,kCAAkC,EAClC,kCAAkC,EAClC,kBAAkB,EAClB,oCAAoC,EACpC,yCAAyC,EACzC,8BAA8B,EAC9B,mCAAmC,EACnC,wBAAwB,GACzB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,aAAa,EACb,mBAAmB,EACnB,aAAa,EACb,cAAc,EACd,YAAY,EACZ,aAAa,GACd,MAAM,aAAa,CAAC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.NotFoundError = exports.NetworkError = exports.ForbiddenError = exports.ConflictError = exports.AuthenticationError = exports.AgentSDKError = exports.normalizeAgentFlowConfig = exports.SUPPORTED_AGENT_FLOW_CONFIG_VERSION = exports.SIERRA_LEONE_AGENT_FLOW_CONFIG = exports.SIERRA_LEONE_AGENT_WORKFLOW_DEFINITION_ID = exports.DEFAULT_AGENT_WORKFLOW_DEFINITION_ID = exports.AGENT_SCREEN_TYPES = exports.AGENT_DEVICE_ATTESTATION_PROVIDERS = exports.AGENT_DEVICE_ATTESTATION_PLATFORMS = exports.AGENT_DEVICE_ATTESTATION_MODES = exports.normalizeInternationalPhoneNumber = exports.AgentSDK = void 0;
|
|
4
|
+
var agent_sdk_js_1 = require("./agent-sdk.js");
|
|
5
|
+
Object.defineProperty(exports, "AgentSDK", { enumerable: true, get: function () { return agent_sdk_js_1.AgentSDK; } });
|
|
6
|
+
var phone_js_1 = require("./utils/phone.js");
|
|
7
|
+
Object.defineProperty(exports, "normalizeInternationalPhoneNumber", { enumerable: true, get: function () { return phone_js_1.normalizeInternationalPhoneNumber; } });
|
|
8
|
+
var agent_flow_contract_1 = require("@mikashboks/agent-flow-contract");
|
|
9
|
+
Object.defineProperty(exports, "AGENT_DEVICE_ATTESTATION_MODES", { enumerable: true, get: function () { return agent_flow_contract_1.AGENT_DEVICE_ATTESTATION_MODES; } });
|
|
10
|
+
Object.defineProperty(exports, "AGENT_DEVICE_ATTESTATION_PLATFORMS", { enumerable: true, get: function () { return agent_flow_contract_1.AGENT_DEVICE_ATTESTATION_PLATFORMS; } });
|
|
11
|
+
Object.defineProperty(exports, "AGENT_DEVICE_ATTESTATION_PROVIDERS", { enumerable: true, get: function () { return agent_flow_contract_1.AGENT_DEVICE_ATTESTATION_PROVIDERS; } });
|
|
12
|
+
Object.defineProperty(exports, "AGENT_SCREEN_TYPES", { enumerable: true, get: function () { return agent_flow_contract_1.AGENT_SCREEN_TYPES; } });
|
|
13
|
+
Object.defineProperty(exports, "DEFAULT_AGENT_WORKFLOW_DEFINITION_ID", { enumerable: true, get: function () { return agent_flow_contract_1.DEFAULT_AGENT_WORKFLOW_DEFINITION_ID; } });
|
|
14
|
+
Object.defineProperty(exports, "SIERRA_LEONE_AGENT_WORKFLOW_DEFINITION_ID", { enumerable: true, get: function () { return agent_flow_contract_1.SIERRA_LEONE_AGENT_WORKFLOW_DEFINITION_ID; } });
|
|
15
|
+
Object.defineProperty(exports, "SIERRA_LEONE_AGENT_FLOW_CONFIG", { enumerable: true, get: function () { return agent_flow_contract_1.SIERRA_LEONE_AGENT_FLOW_CONFIG; } });
|
|
16
|
+
Object.defineProperty(exports, "SUPPORTED_AGENT_FLOW_CONFIG_VERSION", { enumerable: true, get: function () { return agent_flow_contract_1.SUPPORTED_AGENT_FLOW_CONFIG_VERSION; } });
|
|
17
|
+
Object.defineProperty(exports, "normalizeAgentFlowConfig", { enumerable: true, get: function () { return agent_flow_contract_1.normalizeAgentFlowConfig; } });
|
|
18
|
+
var errors_js_1 = require("./errors.js");
|
|
19
|
+
Object.defineProperty(exports, "AgentSDKError", { enumerable: true, get: function () { return errors_js_1.AgentSDKError; } });
|
|
20
|
+
Object.defineProperty(exports, "AuthenticationError", { enumerable: true, get: function () { return errors_js_1.AuthenticationError; } });
|
|
21
|
+
Object.defineProperty(exports, "ConflictError", { enumerable: true, get: function () { return errors_js_1.ConflictError; } });
|
|
22
|
+
Object.defineProperty(exports, "ForbiddenError", { enumerable: true, get: function () { return errors_js_1.ForbiddenError; } });
|
|
23
|
+
Object.defineProperty(exports, "NetworkError", { enumerable: true, get: function () { return errors_js_1.NetworkError; } });
|
|
24
|
+
Object.defineProperty(exports, "NotFoundError", { enumerable: true, get: function () { return errors_js_1.NotFoundError; } });
|
|
25
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;AAAA,+CAA0C;AAAjC,wGAAA,QAAQ,OAAA;AA6DjB,6CAAqE;AAA5D,6HAAA,iCAAiC,OAAA;AAqB1C,uEAUyC;AATvC,qIAAA,8BAA8B,OAAA;AAC9B,yIAAA,kCAAkC,OAAA;AAClC,yIAAA,kCAAkC,OAAA;AAClC,yHAAA,kBAAkB,OAAA;AAClB,2IAAA,oCAAoC,OAAA;AACpC,gJAAA,yCAAyC,OAAA;AACzC,qIAAA,8BAA8B,OAAA;AAC9B,0IAAA,mCAAmC,OAAA;AACnC,+HAAA,wBAAwB,OAAA;AAE1B,yCAOqB;AANnB,0GAAA,aAAa,OAAA;AACb,gHAAA,mBAAmB,OAAA;AACnB,0GAAA,aAAa,OAAA;AACb,2GAAA,cAAc,OAAA;AACd,yGAAA,YAAY,OAAA;AACZ,0GAAA,aAAa,OAAA"}
|
|
@@ -0,0 +1,256 @@
|
|
|
1
|
+
import type { AgentDeviceAttestationMode, AgentDeviceAttestationPayload, AgentDeviceAttestationPlatform, AgentDeviceAttestationProvider, AgentFlowConfig, AgentFlowStepDefinition, AgentLoginChallenge, AgentLoginChallengeRequest, AgentScreenType, AgentWorkflowDetail, AgentWorkflowDefinitionSummary, AgentWorkflowHistoryItem, AgentWorkflowHistoryPage, AgentWorkflowLaunchFlowConfig, AgentWorkflowLaunchResult } from '@mikashboks/agent-flow-contract';
|
|
2
|
+
export interface AgentSDKConfig {
|
|
3
|
+
/** Base URL of the Ballerine API (e.g., "https://api.verify.example.com/api/v1") */
|
|
4
|
+
baseUrl: string;
|
|
5
|
+
/** Project ID sent as x-project-id header */
|
|
6
|
+
projectId: string;
|
|
7
|
+
/** Custom fetch implementation (defaults to globalThis.fetch) */
|
|
8
|
+
fetch?: typeof globalThis.fetch;
|
|
9
|
+
/** Timeout in milliseconds (default: 30000) */
|
|
10
|
+
timeoutMs?: number;
|
|
11
|
+
/** Called when access token is refreshed (persist new tokens) */
|
|
12
|
+
onTokenRefresh?: (tokens: {
|
|
13
|
+
accessToken: string;
|
|
14
|
+
refreshToken: string;
|
|
15
|
+
}) => void;
|
|
16
|
+
/** Called when auth fails irrecoverably (e.g., refresh token expired) */
|
|
17
|
+
onAuthFailure?: () => void;
|
|
18
|
+
}
|
|
19
|
+
export interface LoginParams {
|
|
20
|
+
phone: string;
|
|
21
|
+
password: string;
|
|
22
|
+
deviceId?: string;
|
|
23
|
+
attestation?: AgentDeviceAttestationPayload;
|
|
24
|
+
}
|
|
25
|
+
export interface LoginRequestOptions {
|
|
26
|
+
projectId?: string | null;
|
|
27
|
+
}
|
|
28
|
+
export type LoginChallengeParams = AgentLoginChallengeRequest;
|
|
29
|
+
export type LoginChallengeResult = AgentLoginChallenge;
|
|
30
|
+
/** Slim agent summary returned from login (not the full profile). */
|
|
31
|
+
export interface LoginAgentSummary {
|
|
32
|
+
id: string;
|
|
33
|
+
externalId: string;
|
|
34
|
+
firstName: string;
|
|
35
|
+
lastName: string;
|
|
36
|
+
employerName: string;
|
|
37
|
+
status: 'Active' | 'Suspended' | 'Revoked';
|
|
38
|
+
}
|
|
39
|
+
export interface LoginResult {
|
|
40
|
+
accessToken: string;
|
|
41
|
+
refreshToken: string;
|
|
42
|
+
mustChangePassword: boolean;
|
|
43
|
+
agent: LoginAgentSummary;
|
|
44
|
+
tenantConfig?: LoginTenantConfig;
|
|
45
|
+
}
|
|
46
|
+
export interface LoginTenantConfig {
|
|
47
|
+
tenantAlias: string;
|
|
48
|
+
tenantLabel: string;
|
|
49
|
+
projectId: string;
|
|
50
|
+
projectName?: string;
|
|
51
|
+
workflowDefinitionId: string;
|
|
52
|
+
apiBaseUrl?: string;
|
|
53
|
+
}
|
|
54
|
+
export interface LoginProjectSelectionResult {
|
|
55
|
+
requiresProjectSelection: true;
|
|
56
|
+
projects: LoginTenantConfig[];
|
|
57
|
+
}
|
|
58
|
+
export type LoginWithProjectResolutionResult = LoginResult | LoginProjectSelectionResult;
|
|
59
|
+
export interface RefreshResult {
|
|
60
|
+
accessToken: string;
|
|
61
|
+
refreshToken: string;
|
|
62
|
+
}
|
|
63
|
+
export interface ChangePasswordParams {
|
|
64
|
+
currentPassword: string;
|
|
65
|
+
newPassword: string;
|
|
66
|
+
}
|
|
67
|
+
export interface LogoutParams {
|
|
68
|
+
refreshToken?: string;
|
|
69
|
+
allSessions?: boolean;
|
|
70
|
+
}
|
|
71
|
+
export interface RegisterPushTokenParams {
|
|
72
|
+
expoPushToken: string;
|
|
73
|
+
nativePushToken?: string;
|
|
74
|
+
deviceId?: string;
|
|
75
|
+
platform?: AgentDeviceAttestationPlatform;
|
|
76
|
+
}
|
|
77
|
+
export interface PushTokenRegistration {
|
|
78
|
+
id: string;
|
|
79
|
+
expoPushToken: string;
|
|
80
|
+
nativePushToken?: string;
|
|
81
|
+
deviceId?: string;
|
|
82
|
+
platform?: string;
|
|
83
|
+
enabled: boolean;
|
|
84
|
+
lastRegisteredAt: string;
|
|
85
|
+
}
|
|
86
|
+
export interface UnregisterPushTokenParams {
|
|
87
|
+
expoPushToken?: string;
|
|
88
|
+
deviceId?: string;
|
|
89
|
+
}
|
|
90
|
+
export interface UnregisterPushTokenResult {
|
|
91
|
+
success: boolean;
|
|
92
|
+
}
|
|
93
|
+
export interface AgentProfile {
|
|
94
|
+
id: string;
|
|
95
|
+
externalId: string;
|
|
96
|
+
firstName: string;
|
|
97
|
+
lastName: string;
|
|
98
|
+
phone: string;
|
|
99
|
+
email?: string;
|
|
100
|
+
employerName: string;
|
|
101
|
+
employerCode?: string;
|
|
102
|
+
status: 'Active' | 'Suspended' | 'Revoked';
|
|
103
|
+
location?: string;
|
|
104
|
+
mustChangePassword: boolean;
|
|
105
|
+
availableWorkflows?: AgentWorkflowDefinitionSummary[];
|
|
106
|
+
defaultWorkflowDefinitionId?: string | null;
|
|
107
|
+
dailyCaptureLimit?: number | null;
|
|
108
|
+
agentFlowConfig?: AgentFlowConfig | null;
|
|
109
|
+
promotionConfig?: AgentPromotionConfig | null;
|
|
110
|
+
}
|
|
111
|
+
export type AgentPromotionPlacement = 'kyc_final' | 'kyc_status_card' | 'agent_dashboard' | 'agent_settings';
|
|
112
|
+
export interface AgentPromotionCtaConfig {
|
|
113
|
+
enabled: boolean;
|
|
114
|
+
title: string;
|
|
115
|
+
body: string;
|
|
116
|
+
label: string;
|
|
117
|
+
url: string;
|
|
118
|
+
placements: AgentPromotionPlacement[];
|
|
119
|
+
}
|
|
120
|
+
export interface AgentPromotionSmsConfig {
|
|
121
|
+
poweredByFooterEnabled?: boolean;
|
|
122
|
+
marketingCtaEnabled: false;
|
|
123
|
+
}
|
|
124
|
+
export interface AgentPromotionConfig {
|
|
125
|
+
enabled: boolean;
|
|
126
|
+
poweredByLabel?: string;
|
|
127
|
+
cta?: AgentPromotionCtaConfig;
|
|
128
|
+
sms?: AgentPromotionSmsConfig;
|
|
129
|
+
}
|
|
130
|
+
export interface CustomerInfo {
|
|
131
|
+
firstName?: string;
|
|
132
|
+
lastName?: string;
|
|
133
|
+
phone?: string;
|
|
134
|
+
nationalId?: string;
|
|
135
|
+
email?: string;
|
|
136
|
+
dateOfBirth?: string;
|
|
137
|
+
}
|
|
138
|
+
export interface GeoLocation {
|
|
139
|
+
lat: number;
|
|
140
|
+
lng: number;
|
|
141
|
+
accuracy?: number;
|
|
142
|
+
}
|
|
143
|
+
export interface CreateWorkflowParams {
|
|
144
|
+
customerInfo?: CustomerInfo | null;
|
|
145
|
+
subjectType?: 'individual' | 'business';
|
|
146
|
+
subjectData?: Record<string, unknown> | null;
|
|
147
|
+
externalEntityId?: string;
|
|
148
|
+
workflowDefinitionId: string;
|
|
149
|
+
workflowDefinitionVersion?: number;
|
|
150
|
+
idempotencyKey?: string;
|
|
151
|
+
geoLocation?: GeoLocation;
|
|
152
|
+
captureReason?: string;
|
|
153
|
+
}
|
|
154
|
+
export type CreateWorkflowResult = AgentWorkflowLaunchResult;
|
|
155
|
+
export interface ReissueWorkflowTokenResult {
|
|
156
|
+
workflowId: string;
|
|
157
|
+
workflowToken: string;
|
|
158
|
+
expiresAt: string;
|
|
159
|
+
}
|
|
160
|
+
export type WorkflowSummary = AgentWorkflowHistoryItem;
|
|
161
|
+
export interface ListWorkflowsParams {
|
|
162
|
+
limit?: number;
|
|
163
|
+
cursor?: string | null;
|
|
164
|
+
}
|
|
165
|
+
export type WorkflowSummaryPage = AgentWorkflowHistoryPage;
|
|
166
|
+
export type WorkflowDetail = AgentWorkflowDetail;
|
|
167
|
+
export interface AgentStats {
|
|
168
|
+
todayCount: number;
|
|
169
|
+
last24HoursCount?: number;
|
|
170
|
+
totalCount: number;
|
|
171
|
+
activeCount: number;
|
|
172
|
+
completedCount: number;
|
|
173
|
+
failedCount: number;
|
|
174
|
+
}
|
|
175
|
+
export interface WorkflowStatus {
|
|
176
|
+
id: string;
|
|
177
|
+
status: string;
|
|
178
|
+
state?: string;
|
|
179
|
+
createdAt: string;
|
|
180
|
+
resolvedAt?: string;
|
|
181
|
+
}
|
|
182
|
+
export interface DocumentMetadata {
|
|
183
|
+
type: string;
|
|
184
|
+
side?: 'front' | 'back';
|
|
185
|
+
category?: string;
|
|
186
|
+
issuingCountry?: string;
|
|
187
|
+
issuingVersion?: string | number;
|
|
188
|
+
pageNumber?: number;
|
|
189
|
+
endUserId?: string;
|
|
190
|
+
businessId?: string;
|
|
191
|
+
documentType?: string;
|
|
192
|
+
documentVariant?: 'front' | 'back' | 'other';
|
|
193
|
+
geoLocation?: GeoLocation;
|
|
194
|
+
[key: string]: unknown;
|
|
195
|
+
}
|
|
196
|
+
export interface UploadResult {
|
|
197
|
+
id: string;
|
|
198
|
+
[key: string]: unknown;
|
|
199
|
+
}
|
|
200
|
+
export interface UploadProgress {
|
|
201
|
+
loaded: number;
|
|
202
|
+
total: number | null;
|
|
203
|
+
}
|
|
204
|
+
export interface RequestTimeoutOptions {
|
|
205
|
+
timeoutMs?: number;
|
|
206
|
+
}
|
|
207
|
+
export interface UploadDocumentOptions extends RequestTimeoutOptions {
|
|
208
|
+
onUploadProgress?: (progress: UploadProgress) => void;
|
|
209
|
+
}
|
|
210
|
+
export interface ReactNativeUploadFile {
|
|
211
|
+
uri: string;
|
|
212
|
+
name?: string;
|
|
213
|
+
type?: string;
|
|
214
|
+
}
|
|
215
|
+
export type UploadDocumentInput = Blob | ReactNativeUploadFile;
|
|
216
|
+
export interface FlowContext {
|
|
217
|
+
entity?: Record<string, unknown>;
|
|
218
|
+
documents?: Array<Record<string, unknown>>;
|
|
219
|
+
metadata?: Record<string, unknown>;
|
|
220
|
+
[key: string]: unknown;
|
|
221
|
+
}
|
|
222
|
+
export interface PreSubmissionCheckIssue {
|
|
223
|
+
code: string;
|
|
224
|
+
target: string;
|
|
225
|
+
severity: 'retake' | 'warning';
|
|
226
|
+
message: string;
|
|
227
|
+
[key: string]: unknown;
|
|
228
|
+
}
|
|
229
|
+
export type PreSubmissionCheckOutcome = 'BLOCK_RETAKE' | 'WARN_ALLOW_SUBMIT' | 'UNAVAILABLE_ALLOW_SUBMIT';
|
|
230
|
+
export interface PreSubmissionCheckResult {
|
|
231
|
+
status: 'READY' | 'RETAKE_REQUIRED' | 'CHECK_UNAVAILABLE';
|
|
232
|
+
canSubmit: boolean;
|
|
233
|
+
issues: PreSubmissionCheckIssue[];
|
|
234
|
+
outcome?: PreSubmissionCheckOutcome;
|
|
235
|
+
normalized?: {
|
|
236
|
+
identityDocumentType?: string;
|
|
237
|
+
country?: string;
|
|
238
|
+
[key: string]: unknown;
|
|
239
|
+
};
|
|
240
|
+
preSubmissionCheckId?: string;
|
|
241
|
+
[key: string]: unknown;
|
|
242
|
+
}
|
|
243
|
+
export interface PreSubmissionCheckOptions extends RequestTimeoutOptions {
|
|
244
|
+
}
|
|
245
|
+
export interface SubmitFlowOptions extends RequestTimeoutOptions {
|
|
246
|
+
preSubmissionCheckId?: string;
|
|
247
|
+
}
|
|
248
|
+
export interface ClientTimingPayload {
|
|
249
|
+
eventName: string;
|
|
250
|
+
workflowId?: string | null;
|
|
251
|
+
mode?: string;
|
|
252
|
+
timings?: Record<string, number>;
|
|
253
|
+
[key: string]: unknown;
|
|
254
|
+
}
|
|
255
|
+
export type { AgentDeviceAttestationMode, AgentDeviceAttestationPayload, AgentDeviceAttestationPlatform, AgentDeviceAttestationProvider, AgentFlowConfig, AgentFlowStepDefinition, AgentLoginChallenge, AgentLoginChallengeRequest, AgentScreenType, AgentWorkflowDetail, AgentWorkflowDefinitionSummary, AgentWorkflowLaunchFlowConfig, AgentWorkflowLaunchResult, };
|
|
256
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
|